/* Kitap Köprüsü: original blue identity, compact layout, readable Manrope. */
:root {
  --paper:#fff; --ink:#101a4b; --blue:#0064f1; --blue-dark:#0053c3;
  --muted:#52678c; --line:#dce9fa; --wash:#f3f8ff; --red:#bc452b;
  --font:'Manrope',Arial,sans-serif; --radius:12px;
}
* {box-sizing:border-box}
html {scroll-behavior:smooth;scroll-padding-top:22px}
body {margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.6 var(--font);-webkit-font-smoothing:antialiased}
a {color:inherit;text-decoration:none}
button,input,select,textarea {font:inherit}
button,a,input,select,textarea {-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button,summary {cursor:pointer}
img {display:block;max-width:100%;height:auto}
h1,h2,h3,p,figure {margin:0}
h1,h2,h3 {line-height:1.25;font-weight:800;letter-spacing:-.65px}
p+p {margin-top:.8em}
[hidden] {display:none!important}
svg.icon {width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.kk-container {width:min(1280px,calc(100% - 96px));margin-inline:auto}
.content-shell {width:min(1100px,calc(100% - 64px));margin:0 auto;padding:32px 0 44px;min-height:60vh}
.content-shell h1 {font:800 clamp(28px,3.5vw,38px)/1.2 var(--font);letter-spacing:-1px}
.content-shell h2 {line-height:1.3}
.content-shell .text-xs {font-size:13px;line-height:1.5}
.content-shell .text-sm {font-size:15px;line-height:1.65}
.content-shell input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.content-shell select,.content-shell textarea {min-height:46px;border-radius:8px;padding:10px 12px;font-size:16px;background:#fff;border:1px solid #bfd3ed;color:var(--ink);max-width:100%}
.content-shell textarea {min-height:105px}
.content-shell button[type=submit] {min-height:46px}
.content-shell input[type=checkbox],.content-shell input[type=radio] {width:20px;height:20px;flex:none;accent-color:var(--blue)}
:focus-visible {outline:3px solid #0064f1;outline-offset:4px}
input:focus-visible,select:focus-visible,textarea:focus-visible {outline-offset:2px}
.skip-link {position:fixed;left:16px;top:-80px;z-index:100;background:var(--ink);color:#fff;padding:12px 20px;border-radius:6px}
.skip-link:focus {top:12px}
/* Shared navigation */
.site-header {background:#fff;border-bottom:1px solid #e8f0fb;position:relative;z-index:20}
.header-inner {display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px}
.brand {display:flex;align-items:center;gap:7px;flex-shrink:0}
.brand-symbol {width:70px;height:auto}
.brand-name {display:block;font:800 22px/1.2 var(--font);letter-spacing:-.9px;white-space:nowrap}
.brand-name>span {color:var(--red)}
.brand-tagline {display:block;font-size:10px;color:var(--muted);margin-top:3px}
.main-nav {display:flex;gap:25px;align-items:center}
.main-nav a {font-size:13px;font-weight:550;min-height:44px;display:flex;align-items:center;position:relative}
.main-nav a:hover,.main-nav a[aria-current=page] {color:var(--blue)}
.main-nav a[aria-current=page]:after {content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--blue)}
.header-actions {display:flex;gap:18px;align-items:center;font-size:13px}
.login-button {white-space:nowrap;min-height:42px;display:flex;align-items:center;padding:8px 16px;border:1px solid var(--line);border-radius:7px}
.button,.kk-button-primary,.kk-button-secondary {display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 20px;border-radius:7px;font-size:14px;font-weight:650;line-height:1.4;border:1px solid transparent;transition:background .16s,transform .16s,box-shadow .16s;text-align:center;text-decoration:none}
.button:hover,.kk-button-primary:hover,.kk-button-secondary:hover {transform:translateY(-1px)}
.button-primary,.kk-button-primary {background:linear-gradient(125deg,#137af8,#0064f1);color:#fff;border-color:#0064f1;box-shadow:0 3px 9px #0879ff18}
.button-primary:hover,.kk-button-primary:hover {background:var(--blue-dark);box-shadow:0 4px 12px #0064f120}
.button-secondary,.button-outline,.kk-button-secondary {border-color:#98bff6;background:#fff;color:#0755c1}
.button-secondary:hover,.button-outline:hover,.kk-button-secondary:hover {background:#f1f7ff}
.header-donate {min-height:42px;font-size:13px;padding:10px 16px}
.mobile-toggle,.mobile-login {display:none!important}
.text-link {display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:650;min-height:40px;color:var(--blue);text-underline-offset:4px}
.text-link:hover {text-decoration:underline}
/* Restore the original illustrated hero */
.hero {background:linear-gradient(180deg,#f5faff,#fff 75%);overflow:hidden}
.hero-layout {display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:20px;min-height:388px;padding-block:24px 14px}
.hero-copy {position:relative;z-index:2;animation:arrive .3s ease-out both}
.eyebrow {font-size:10px;font-weight:750;letter-spacing:1.8px;color:#3e629b;line-height:1.5;margin-bottom:10px}
.hero h1 {font:800 clamp(34px,3.25vw,47px)/1.12 var(--font);letter-spacing:-1.7px;color:#080f4b}
.hero h1 span {display:block}
.hero-description {font-size:15px;color:#4c638e;max-width:520px;margin-top:14px;line-height:1.65}
.hero-actions {display:flex;gap:12px;margin-top:20px}
.hero-actions .button {min-width:174px;min-height:46px}
.hero-principles {display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;margin-top:25px}
.hero-principles>div {display:flex;gap:9px;align-items:flex-start;min-width:0}
.hero-principles>div+div {border-left:1px solid var(--line);padding-left:12px}
.hero-principles .icon {color:var(--blue);width:25px;height:25px}
.hero-principles strong {display:block;font-size:11px;font-weight:750;line-height:1.35}
.hero-principles small {display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:4px}
.hero-art {position:relative;aspect-ratio:610/322;align-self:center;width:calc(100% + 35px);margin-left:-12px}
.hero-art>img {width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.art-note {position:absolute;color:#294d9d;font:500 italic clamp(14px,1.55vw,22px)/1.02 'Caveat','Segoe Print',cursive;text-align:center}
.art-note-left {left:14%;top:10.8%;width:15%;transform:rotate(-10deg)}
.art-note-right {right:2.7%;top:6.7%;width:16%;transform:rotate(7deg)}
.art-note .icon {display:block;width:21px;height:21px;margin:7px auto 0;stroke-width:1.4}
.art-poster {position:absolute;top:35.5%;left:81.4%;width:13.4%;height:24%;display:flex;justify-content:center;align-items:center;color:#3c5879;font:500 clamp(8px,.8vw,11px)/1.5 var(--font);text-align:center}
/* Compact sections */
.section-heading {display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px}
.section-heading h2,.tool-copy h2 {font:800 25px/1.25 var(--font);letter-spacing:-.75px}
.section-heading>p {font-size:13px;line-height:1.6;color:var(--muted);max-width:500px}
.map-section {padding-block:18px 22px}
.map-section .section-heading {margin-bottom:8px}
.how-section {padding-block:26px 22px}
.steps-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.step-card {position:relative;background:#fff;border:1px solid var(--line);padding:19px 18px 19px 67px;border-radius:10px;box-shadow:0 3px 12px #226dba04}
.step-number {position:absolute;left:17px;top:18px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e7f2ff;color:var(--blue);font:750 15px var(--font)}
.step-card h3 {font-size:16px;font-weight:750;letter-spacing:-.35px;margin-bottom:8px}
.step-card p {color:var(--muted);font-size:13px;line-height:1.7}
.explore-section {padding-block:0;margin-block:8px 0}
.explore-section>.kk-container {background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 22px;box-shadow:0 4px 15px #227ac507}
.explore-section .section-heading {margin-bottom:10px}
.listing-tabs {display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;width:fit-content;margin-bottom:16px;background:#f8fbff}
.listing-tabs button {background:none;border:0;border-radius:5px;padding:8px 17px;font-size:13px;color:var(--muted);min-height:40px;font-weight:650}
.listing-tabs button[aria-selected=true] {color:#fff;background:var(--blue)}
.search-form {display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:12px;align-items:end;margin-bottom:16px}
.search-form label,.book-checker label {font-size:12px;font-weight:650;display:block;min-width:0}
.search-form input,.search-form select,.book-checker select {width:100%;min-width:0;background:#fff;border:1px solid #cbdcf1;border-radius:7px;min-height:44px;padding:9px 11px;color:var(--ink);font-size:14px;display:block;margin-top:6px}
.listing-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.listing-card {background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;transition:transform .18s,box-shadow .18s}
.listing-card:hover {transform:translateY(-2px);box-shadow:0 8px 20px #226dba0a}
.listing-card-main {display:flex;gap:14px;flex:1}
.listing-image {width:69px;height:98px;object-fit:cover;border-radius:6px}
.card-image-button {flex:none}
.listing-title {font:750 15px/1.5 var(--font);margin:0 0 6px;letter-spacing:-.25px}
.listing-owner,.listing-description {font-size:12px;color:var(--muted)}
.listing-location {font-size:12px;display:flex;gap:4px;align-items:center;color:var(--muted);margin-top:5px}
.listing-location .icon {width:14px;height:14px}
.listing-description {margin-top:6px}
.listing-footer {border-top:1px solid var(--line);margin-top:12px;padding-top:7px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.listing-footer .text-link {font-size:12px}
.listing-date {font-size:11px;color:var(--muted)}
.empty-state {grid-column:1/-1;background:#f8fbff;border:1px dashed #c8ddf9;border-radius:8px;display:flex;align-items:center;flex-direction:column;justify-content:center;padding:20px;text-align:center}
.empty-state h3 {font:750 17px/1.4 var(--font);letter-spacing:-.35px;margin:0 0 7px}
.empty-state p {font-size:13px;color:var(--muted);max-width:650px}
.empty-state .button {margin-top:12px;min-height:40px;font-size:13px}
.empty-book {display:none}
.sharing-tools {border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.1fr;gap:40px;padding-block:24px;align-items:center}
.tool-copy>p:not(.eyebrow) {max-width:470px;color:var(--muted);font-size:14px;margin-top:13px}
.tool-copy .rule-note {font-size:13px!important;border-left:3px solid #cf684b;padding-left:13px;margin-bottom:8px}
.rule-note strong {color:#a5422a;font-weight:750}
.book-checker {background:#f8fbff;border:1px solid var(--line);padding:20px;border-radius:10px;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}
.book-checker h3 {font-size:16px;letter-spacing:-.4px;margin:0 0 2px;grid-column:1/-1}
.book-checker .button {grid-column:1/-1;width:100%;min-height:43px}
#book-check-result {grid-column:1/-1;padding:12px;border-radius:7px;background:#e9f3ff;font-size:14px}
#book-check-result a {display:inline-block;text-decoration:underline;margin-top:7px}
.book-checker noscript {grid-column:1/-1;font-size:13px}
.shipping-banner {background:#f0f7ff;border:1px solid #e1edfb;border-radius:10px;padding:20px 24px;display:flex;align-items:center;gap:20px}
.shipping-banner>div:nth-child(2) {flex:1}
.shipping-banner h2 {font:750 18px/1.35 var(--font);letter-spacing:-.5px}
.shipping-banner p:not(.eyebrow) {font-size:13px;color:var(--muted);max-width:700px;margin-top:7px}
.shipping-banner .button {white-space:nowrap;font-size:13px;background:#fff;min-height:42px}
.shipping-icon {width:45px;height:45px;background:#dfeeff;border-radius:50%;display:grid;place-items:center;flex:none;color:var(--blue)}
.shipping-icon .icon {width:26px;height:26px}
.home-faq {padding-block:25px}
.home-faq .faq-list {display:grid;grid-template-columns:1fr 1fr;gap:0 30px;border-top:0}
.faq-list {border-top:1px solid var(--line)}
.faq-list details {border-bottom:1px solid var(--line)}
.faq-list summary {position:relative;list-style:none;padding:15px 30px 15px 0;font-size:14px;min-height:50px;font-weight:650}
.faq-list summary::-webkit-details-marker {display:none}
.faq-list summary:before,.faq-list summary:after {content:'';position:absolute;right:4px;top:50%;width:13px;height:1.5px;background:var(--blue);border-radius:2px;transform:translateY(-50%);transition:transform .38s cubic-bezier(.22,1,.36,1),opacity .3s ease}
.faq-list summary:before {transform:translateY(-50%) rotate(90deg)}
.faq-list details[open]:not([data-faq-animated]) summary:before,.faq-list details.is-expanded summary:before {transform:translateY(-50%) rotate(0);opacity:0}
.faq-list details>p,.faq-list details>div {padding:0 26px 17px 0;max-width:850px;color:var(--muted);font-size:14px;line-height:1.8}
.faq-list .faq-answer p+p {margin-top:10px}
.faq-list summary:focus-visible {outline:2px solid var(--blue);outline-offset:3px;border-radius:5px}
/* Footer and content pages */
.site-footer {background:#f8fbff;margin-top:4px;border-top:1px solid var(--line)}
.footer-top {display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-block:26px}
.footer-intro p {font-size:13px;color:var(--muted);margin-top:12px;line-height:1.7}
.footer-note {display:block;color:var(--blue);font-size:12px;margin-top:10px}
.footer-nav {display:flex;flex-direction:column;align-items:flex-start;gap:0}
.footer-nav h2 {font-size:13px;font-weight:750;margin-bottom:8px;letter-spacing:0}
.footer-nav a {font-size:13px;color:var(--muted);min-height:30px;display:flex;align-items:center}
.footer-nav a:hover {text-decoration:underline;color:var(--blue)}
.footer-bottom {border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:13px;font-size:11px;color:var(--muted)}
.footer-legal {display:flex;gap:18px}
.footer-legal a {display:inline-flex;min-height:24px;align-items:center}
.footer-legal a:hover {text-decoration:underline}
.prose-page {max-width:850px;margin-inline:auto}
.page-heading {margin-bottom:24px}
.page-heading>p:not(.eyebrow) {color:var(--muted);font-size:16px;max-width:720px;margin-top:13px}
.prose-page>section {margin-top:26px}
.prose-page h2 {font:750 24px/1.35 var(--font);margin-bottom:12px;letter-spacing:-.6px}
.prose-page h3 {font-size:18px;margin-block:16px 10px}
.prose-page p,.prose-page li {color:var(--muted);line-height:1.8}
.prose-page a:not(.button) {text-decoration:underline;text-underline-offset:4px}
.prose-page ul,.prose-page ol {padding-left:22px;list-style:disc}
.prose-page ol {list-style:decimal}
.prose-page li+li {margin-top:7px}
.info-panel {padding:20px;border-radius:10px;background:var(--wash);border:1px solid var(--line);margin-block:20px}
.info-panel h2 {margin-top:0}
.info-panel p+p {margin-top:10px}
.prose-page figure {margin-block:22px}
.prose-page figure img {width:100%;border-radius:12px;aspect-ratio:3/2;object-fit:cover}
.prose-page figcaption {font-size:12px;color:var(--muted);margin-top:8px}
.prose-page .steps-grid {padding:0;list-style:none;gap:12px}
.prose-page .step-card {padding:20px}
.prose-page .step-card h2 {font-size:19px}
.prose-page .step-number {position:static;margin-bottom:13px}
.prose-page .steps-grid li {margin-top:0}
.checklist {display:grid;gap:10px}
.checklist legend {font-size:16px;font-weight:650;margin-bottom:13px}
.checklist label {display:flex;gap:12px;align-items:flex-start;background:#fff;padding:13px;border:1px solid var(--line);border-radius:8px}
.checklist input {margin-top:4px}
.checklist label:has(input:checked) {background:var(--wash)}
.board-heading {
  display:flex;
  justify-content:space-between;
  gap:25px;
  align-items:center;
  margin-bottom:28px;
}
.board-heading p {
  color:var(--muted);
  margin-top:12px;
}
.board-filters {
  padding:24px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--line);
}
.board-filter-main {
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr;
  gap:16px;
}
.board-filters label {
  display:block;
  font-size:14px;
}
.board-filters input:not([type=checkbox]),.board-filters select {
  display:block;
  width:100%;
  margin-top:6px;
}
.board-filters details {
  margin-top:20px;
  border-top:1px solid var(--line);
  padding-top:8px;
}
.board-filters summary {
  min-height:44px;
  padding-block:10px;
  font-size:14px;
}
.board-filter-more {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  padding-block:14px;
}
.board-filters label.checkbox-label {
  display:flex;
  gap:9px;
  align-items:center;
}
.board-filter-actions {
  display:flex;
  align-items:center;
  gap:20px;
  margin-top:18px;
}
.board-card {
  padding:24px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  display:flex;
  flex-direction:column;
  gap:13px;
}
.board-card h2 {
  font-size:20px;
}
.board-card h2 a:hover {
  text-decoration:underline;
}
.board-card .card-badges {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.badge {
  font-size:12px;
  padding:4px 10px;
  border-radius:30px;
  background:var(--wash);
  color:var(--blue);
}
.badge-need {
  background:#f4e9dc;
  color:#815236;
}
.board-card .location,.board-card .book-summary,.board-card .delivery-info {
  font-size:14px;
  color:var(--muted);
}
.board-card .card-bottom {
  margin-top:auto;
  border-top:1px solid var(--line);
  padding-top:10px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}
.book-remaining {
  font-size:14px;
  font-weight:500;
}
.kk-form-wrap {
  max-width:780px;
  margin:auto;
}
.kk-form-intro p {
  color:var(--muted);
  margin-top:16px;
}
.kk-form-intro {
  margin-bottom:26px;
}
.kk-form-note {
  padding:18px 20px;
  background:var(--wash);
  border-radius:12px;
  color:var(--ink);
  font-size:15px;
  margin-block:18px;
}
.kk-form {
  padding:30px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:20px;
}
.kk-form-progress {
  padding:0;
  list-style:none;
  display:flex;
  gap:12px;
  margin:0 0 30px;
  border-bottom:1px solid var(--line);
}
.kk-form-progress li {
  flex:1;
  padding-bottom:16px;
  font-size:14px;
  color:var(--muted);
  border-bottom:2px solid transparent;
}
.kk-form-progress li[aria-current=step] {
  color:var(--blue);
  border-bottom-color:var(--blue);
  font-weight:600;
}
.kk-form-progress li span {
  margin-right:6px;
}
.kk-form-step {
  border:0;
  margin:0;
  padding:0;
}
.kk-form-step>h2,.kk-form-step>legend {
  font:750 25px/1.3 var(--font);
  margin-bottom:22px;
}
.kk-form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.kk-field {
  margin-bottom:20px;
  min-width:0;
}
.kk-field>label,.kk-field>legend {
  display:block;
  font-size:15px;
  font-weight:500;
  margin-bottom:7px;
}
.kk-field input:not([type=checkbox]):not([type=radio]),.kk-field select,.kk-field textarea {
  width:100%;
}
.kk-field small,.kk-field .helptext {
  display:block;
  color:var(--muted);
  font-size:13px;
  margin-top:6px;
}
.kk-field-error,.errorlist {
  color:#a02821;
  font-size:14px;
  margin-top:6px;
}
.kk-field-invalid input,.kk-field-invalid select {
  border-color:#a02821!important;
}
.kk-form-type {
  margin-bottom:24px;
}
.kk-choice {
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px;
  border:1px solid var(--line);
  border-radius:10px;
  margin-block:8px;
}
.kk-choice input {
  margin-top:4px;
}
.kk-form input[type=radio],.kk-form input[type=checkbox] {
  margin-right:7px;
}
.kk-form-type div label {
  display:inline-flex;
  gap:7px;
  align-items:center;
  padding:12px 20px;
  background:var(--wash);
  border-radius:9px;
  margin:0 10px 10px 0;
}
.kk-item-row {
  padding:20px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#f5f9ff;
  margin-bottom:16px;
}
.kk-remove-row {
  font-size:14px;
  color:#98432e;
  padding:8px;
  min-height:44px;
  text-decoration:underline;
}
.kk-form-details {
  border-block:1px solid var(--line);
  padding:14px 0;
  margin-block:22px;
}
.kk-form-details summary {
  padding:8px 0;
}
.kk-form-review {
  background:var(--wash);
  padding:20px;
  border-radius:14px;
  margin-bottom:20px;
}
.kk-form-review dl {
  margin:0;
}
.kk-form-review dt {
  font-size:13px;
  color:var(--muted);
}
.kk-form-review dd {
  margin:3px 0 14px;
  font-weight:500;
}
.kk-form-actions {
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.kk-form-actions button:only-child {
  margin-left:auto;
}
.kk-form input[type=file] {
  font-size:14px!important;
}
.kk-form-step[aria-label] {
  outline:0;
}
.kk-form fieldset {
  min-width:0;
}
.support-steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin-top:24px;
}
.support-steps p {
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:18px;
  font-size:15px;
}
.support-steps strong {
  display:block;
  color:var(--blue);
  margin-bottom:8px;
}
.contact-link {
  overflow-wrap:anywhere;
}
/* Form details and responsive layouts */
.kk-form-note:empty {display:none}
.kk-form .kk-form-type {display:grid;grid-template-columns:1fr 1fr;gap:12px}
.kk-form-type .kk-choice {margin:0}
.kk-form-intro h1 {max-width:700px}
.content-shell pre,.content-shell .contact-link {overflow-wrap:anywhere}
.content-shell .kk-field label:has(input[type=checkbox]) {display:flex;align-items:flex-start;gap:10px}
.kk-form .kk-field input[type=checkbox] {margin-top:3px}
.kk-form-step:not([hidden]),.listing-grid:not([hidden]) {animation:arrive .2s ease-out both}
html:not(.js-enabled) #book-checker button {display:none}
@keyframes arrive {from {opacity:0;transform:translateY(6px)}to {opacity:1;transform:translateY(0)}}
@media (max-width:1150px) {
  .kk-container {width:calc(100% - 64px)}
  .header-inner {gap:18px}
  .main-nav {gap:17px}
  .main-nav a {font-size:12px}
  .brand-name {font-size:20px}
  .brand-symbol {width:60px}
  .hero h1 {font-size:37px;letter-spacing:-1.5px}
  .hero-principles {gap:8px}
  .hero-principles>div {gap:6px}
  .hero-principles>div+div {padding-left:8px}
  .hero-principles .icon {width:20px;height:20px}
  .hero-art {width:calc(100% + 25px)}
  .hero-layout {min-height:365px}
  .shipping-banner {gap:15px;padding:18px}
  .section-heading h2,.tool-copy h2 {font-size:23px}
  .hero-actions .button {min-width:150px;padding-inline:15px}
}
@media (max-width:950px) {
  .header-inner {min-height:68px}
  .main-nav {display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:12px 24px 18px;border-bottom:1px solid var(--line);box-shadow:0 10px 20px #226dba0a;align-items:stretch}
  .main-nav.is-open {display:flex;flex-direction:column;gap:4px}
  .main-nav a {font-size:15px;padding:8px 0}
  .main-nav a[aria-current=page]:after {display:none}
  .mobile-login {display:flex!important}
  .login-button {display:none}
  .mobile-toggle {display:flex!important;align-items:center;gap:7px;min-height:44px;background:none;border:0;font-size:13px}
  .hero h1 {font-size:32px;letter-spacing:-1.1px}
  .hero-description {font-size:14px}
  .hero-actions {gap:9px}
  .hero-actions .button {font-size:13px;min-width:0;padding-inline:13px}
  .hero-principles {grid-template-columns:1fr 1fr;margin-top:20px;gap:14px 8px}
  .hero-principles>div:last-child {display:none}
  .hero-principles strong {font-size:11px}
  .hero-art {width:calc(100% + 30px);margin-left:-10px}
  .hero-layout {gap:10px;min-height:335px}
  .art-note {font-size:16px}
  .art-poster {font-size:8px}
  .hero .eyebrow {font-size:9px;letter-spacing:1.3px}
  .step-card {padding:18px 16px}
  .step-number {position:static;margin-bottom:12px}
  .listing-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .listing-card:last-child:nth-child(3) {display:none}
  .sharing-tools {gap:25px}
  .book-checker {grid-template-columns:1fr}
  .shipping-banner {flex-wrap:wrap}
  .shipping-banner .button {margin-left:60px}
  .prose-page .steps-grid {grid-template-columns:1fr}
  html:not(.js-enabled) .header-inner {flex-wrap:wrap;padding-block:12px}
  html:not(.js-enabled) .main-nav {display:flex;position:static;flex-wrap:wrap;box-shadow:none;width:100%;order:3;padding:8px 0;gap:12px}
  html:not(.js-enabled) .mobile-toggle {display:none!important}
}
@media (max-width:650px) {
  .kk-container {width:calc(100% - 32px)}
  .content-shell {width:calc(100% - 32px);padding-top:24px;padding-bottom:30px}
  .header-inner {min-height:65px;gap:8px}
  .brand-name {font-size:19px;letter-spacing:-.7px}
  .brand-symbol {width:52px}
  .brand-tagline {font-size:9px}
  .header-actions {gap:10px}
  .header-donate {display:none}
  .hero-layout {grid-template-columns:1fr;padding-block:23px 0;gap:0}
  .hero h1 {font-size:clamp(29px,7.9vw,43px);letter-spacing:-1.25px;line-height:1.15}
  .hero-description {font-size:14px;line-height:1.65;margin-top:12px;max-width:480px}
  .hero .eyebrow {font-size:9px;letter-spacing:1.4px;margin-bottom:9px}
  .hero-actions {margin-top:17px;gap:10px}
  .hero-actions .button {font-size:13px;flex:1;padding:11px 10px;min-height:46px;gap:8px}
  .hero-actions .icon {width:19px;height:19px}
  .hero-art {width:100%;margin:14px 0 0;max-width:500px;justify-self:center}
  .hero-principles {margin-top:18px;grid-template-columns:1fr 1fr;gap:8px}
  .hero-principles strong {font-size:11px}
  .hero-principles small {font-size:10px}
  .hero-principles .icon {width:22px;height:22px}
  .art-note {font-size:clamp(15px,4.2vw,22px)}
  .art-note .icon {width:15px;height:15px;margin-top:5px}
  .art-poster {font-size:clamp(7px,1.9vw,10px)}
  .section-heading {align-items:flex-start;flex-wrap:wrap;gap:5px;margin-bottom:13px}
  .section-heading h2,.tool-copy h2 {font-size:22px;letter-spacing:-.65px}
  .section-heading>p {font-size:12px;margin-top:2px}
  .section-heading .text-link {font-size:12px;min-height:30px}
  .map-section {padding-block:19px 20px}
  .how-section {padding-block:22px 20px}
  .steps-grid {grid-template-columns:1fr;gap:10px}
  .step-card {padding:17px 16px 17px 62px}
  .step-number {position:absolute;left:15px;top:17px;width:32px;height:32px;font-size:14px;margin:0}
  .step-card h3 {font-size:16px;margin-bottom:5px}
  .step-card p {font-size:13px;line-height:1.65}
  .explore-section>.kk-container {padding:17px 14px}
  .explore-section .section-heading {gap:5px}
  .listing-tabs {width:100%;gap:3px;margin-bottom:14px}
  .listing-tabs button {flex:1;font-size:12px;padding:8px 10px;min-height:42px;white-space:nowrap}
  .search-form {grid-template-columns:1fr 1fr;gap:11px 8px;margin-bottom:13px}
  .search-form label:first-of-type {grid-column:1/-1}
  .search-form label {font-size:12px}
  .search-form input,.search-form select {font-size:16px;padding:9px 8px}
  .search-form .button {grid-column:1/-1;min-height:44px}
  .listing-grid {grid-template-columns:1fr;gap:12px}
  .listing-card:last-child:nth-child(3) {display:flex}
  .empty-state {padding:17px 12px}
  .empty-state h3 {font-size:16px}
  .empty-state p {font-size:13px}
  .sharing-tools {grid-template-columns:1fr;gap:17px;padding-block:20px}
  .tool-copy>p:not(.eyebrow) {font-size:14px;margin-top:11px}
  .book-checker {padding:17px;gap:11px}
  .book-checker h3 {font-size:16px}
  .book-checker label {font-size:13px}
  .book-checker select {font-size:16px}
  .shipping-banner {padding:18px;gap:12px;display:grid;grid-template-columns:35px 1fr}
  .shipping-icon {width:35px;height:35px;align-self:start}
  .shipping-icon .icon {width:22px;height:22px}
  .shipping-banner h2 {font-size:17px}
  .shipping-banner p:not(.eyebrow) {font-size:13px}
  .shipping-banner .button {grid-column:1/-1;margin:0;font-size:13px}
  .home-faq {padding-block:22px}
  .home-faq .faq-list {grid-template-columns:1fr}
  .faq-list summary {font-size:14px}
  .faq-list details>p,.faq-list details>div {padding-right:10px;font-size:14px}
  .footer-top {grid-template-columns:1fr 1fr;gap:22px 16px;padding-block:22px}
  .footer-intro {grid-column:1/-1}
  .footer-intro p {font-size:13px;margin-top:10px}
  .footer-nav a {min-height:38px;font-size:13px}
  .footer-nav h2 {font-size:13px;margin-bottom:4px}
  .footer-bottom {flex-wrap:wrap;gap:5px 15px;font-size:11px}
  .footer-legal {order:3;width:100%}
  .footer-legal a {min-height:30px}
  .board-heading {flex-direction:column;align-items:flex-start;gap:15px}
  .board-filter-main,.board-filter-more {grid-template-columns:1fr}
  .board-filters {padding:17px}
  .board-filter-actions {justify-content:space-between}
  .kk-form {padding:20px 16px}
  .kk-form-grid {grid-template-columns:1fr;gap:0}
  .kk-form-progress {gap:8px;margin-bottom:20px}
  .kk-form-progress li {font-size:11px;line-height:1.5}
  .kk-form-step>h2,.kk-form-step>legend {font-size:23px;letter-spacing:-.6px}
  .kk-form-actions .button,.kk-button-primary,.kk-button-secondary {font-size:13px;padding:12px 15px}
  .kk-item-row {padding:16px 12px}
  .support-steps {grid-template-columns:1fr}
  .prose-page h2 {font-size:23px}
  .page-heading>p:not(.eyebrow) {font-size:15px}
  .prose-page .step-card {padding-left:18px}
  .prose-page .step-number {position:static;margin-bottom:13px}
  .info-panel {padding:18px}
}
@media (prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  *,*:before,*:after {animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .button:hover,.listing-card:hover {transform:none}
}
