@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:ital,wght@0,500;0,600;0,700;1,600&display=swap');
:root{--paper:#f3ebd7;--paper2:#e5d8bb;--ink:#222a20;--forest:#273b2d;--rust:#a35332;--line:#b7aa8f;--gold:#dcb467}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.55 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--rust);outline-offset:4px}h1,h2,h3,p{margin-top:0}.shell{max-width:1500px;padding-inline:clamp(20px,5vw,78px);margin:auto}
header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;font:700 22px/1 'Fraunces',Georgia,serif;letter-spacing:-.04em}.brand-logo{width:76px;height:76px;object-fit:contain;mix-blend-mode:multiply}.brand small{display:block;font:700 10px/1.6 'DM Sans',sans-serif;letter-spacing:.21em;text-transform:uppercase;color:#6a6b55}.topnav{display:flex;align-items:center;gap:35px;font-size:14px;font-weight:700}.topnav a:hover{color:var(--rust)}.navpill{border:1px solid var(--ink);border-radius:50px;padding:10px 17px}
.hero{min-height:660px;display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(35px,5vw,80px);align-items:center;padding:70px 0 85px}.eyebrow,.kicker{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.18em;color:var(--rust)}.eyebrow{display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';height:1px;width:32px;background:currentColor}h1,h2,h3{font-family:'Fraunces',Georgia,serif;letter-spacing:-.05em}h1{font-size:clamp(58px,6.7vw,102px);line-height:.98;font-weight:600;margin:28px 0}h1 em{font-style:italic;color:var(--rust)}.lead{max-width:520px;color:#505544;font-size:clamp(18px,1.4vw,21px);line-height:1.65;margin-bottom:32px}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:center;padding:0 23px;border-radius:3px;font-size:14px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button.primary{background:var(--forest);color:#fff}.button.primary:hover{background:#3c5942}.button.secondary{border:1px solid var(--forest)}.button.secondary:hover{background:var(--paper2)}
.hero-art{height:545px;position:relative;isolation:isolate;background:#22364b;box-shadow:24px 24px 0 var(--paper2)}.hero-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:61% center}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.45))}.hero-art .stamp{position:absolute;top:24px;left:24px;z-index:1;display:flex;align-items:center;justify-content:center;width:116px;height:116px;border-radius:50%;background:var(--paper);color:var(--forest);text-align:center;font-size:12px;line-height:1.25;font-weight:700;text-transform:uppercase;letter-spacing:.09em;transform:rotate(-11deg);box-shadow:0 5px 15px #0003}.hero-art .caption{position:absolute;left:27px;bottom:23px;z-index:1;color:#fff;font-size:13px;text-transform:uppercase;font-weight:700;letter-spacing:.12em}
.section{padding:88px 0 110px;border-top:1px solid var(--line)}.section-head{display:grid;grid-template-columns:1.1fr .7fr;gap:35px;align-items:end;margin-bottom:36px}.section h2,.social-section h2{font-size:clamp(42px,4.2vw,68px);line-height:1.08;font-weight:600;margin:8px 0 0}.section-head p{color:#666b5b;max-width:390px;margin:0 0 5px;font-size:17px}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.shop-card{min-height:255px;border:1px solid var(--line);padding:26px 27px;display:flex;flex-direction:column;align-items:flex-start;position:relative;background:#faf4e7;transition:transform .2s,background .2s,border-color .2s}.shop-card:hover{transform:translateY(-5px);background:#fffaf0;border-color:var(--rust)}.shop-card .num{font-size:12px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--rust);margin-bottom:auto}.shop-card h3{font-size:clamp(30px,3vw,44px);line-height:1.05;font-weight:600;margin:0 0 8px}.shop-card p{font-size:14px;color:#5e6658;margin:0}.shop-card .out{display:inline-block;margin-top:28px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px;font-size:14px}.shop-card.featured{grid-row:span 2;min-height:522px;background:var(--forest);color:#f8f0db;border-color:var(--forest);overflow:hidden}.shop-card.featured:hover{background:#314d39}.shop-card.featured:after{content:'KLIMBIM';position:absolute;bottom:96px;right:-14px;font:700 clamp(85px,9vw,140px)/1 'Fraunces',Georgia,serif;letter-spacing:-.08em;color:rgba(255,255,255,.045);pointer-events:none}.shop-card.featured .num,.shop-card.featured p{color:#d9dbbe}.shop-card.featured h3{font-size:clamp(47px,5vw,72px)}.shop-card.featured .out{border-color:var(--gold)}
.social-section{background:var(--forest);color:#f7edd8;padding:88px 0 95px;position:relative}.social-section .kicker{color:var(--gold)}.social-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:6vw}.social-copy{font-size:18px;color:#c7cdb9;max-width:400px;margin:21px 0 0}.social-links{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.social-link{min-height:88px;border-bottom:1px solid #6a7b6b;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:20px;font-family:'Fraunces',Georgia,serif;font-weight:600;transition:padding .2s,color .2s}.social-link:hover{padding-left:8px;color:var(--gold)}.social-link small{display:block;font:500 12px/1.4 'DM Sans',sans-serif;color:#b9c3ad;margin-top:4px}.social-link .glyph{font:400 20px/1 'DM Sans',sans-serif}.social-link.whatsapp{grid-column:span 2;color:var(--gold);border-bottom-color:var(--gold)}.social-link.whatsapp:hover{color:#fff}
footer{padding:38px 0 44px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px;color:#59614f}footer strong{font-family:'Fraunces',Georgia,serif;font-size:18px;color:var(--ink)}footer a{font-weight:700}footer a:hover{color:var(--rust)}
@media(max-width:1050px){.hero{grid-template-columns:1fr 1fr}.hero-art{height:450px}.shop-grid{grid-template-columns:repeat(2,1fr)}.social-layout{gap:30px}}
@media(max-width:720px){header{height:82px}.brand-logo{width:57px;height:57px}.topnav{gap:14px}.topnav a:first-child{display:none}.navpill{padding:8px 12px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:55px 0 72px;gap:42px}.hero-art{height:380px;box-shadow:14px 14px 0 var(--paper2)}h1{font-size:clamp(56px,12vw,82px)}.section{padding:65px 0 75px}.section-head{display:block}.section-head p{margin-top:18px}.social-section{padding:65px 0 70px}.social-layout{display:block}.social-links{margin-top:30px}footer{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.brand{font-size:17px;gap:5px}.brand-logo{width:49px;height:49px}.topnav{font-size:13px}.actions .button{width:100%}.hero-art{height:310px}.shop-grid{grid-template-columns:1fr}.shop-card,.shop-card.featured{min-height:225px;grid-row:auto}.shop-card.featured h3{font-size:48px}.social-links{grid-template-columns:1fr}.social-link.whatsapp{grid-column:auto}.section h2,.social-section h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Clear first-screen paths and an editorial book-buying guide. */
h1{font-size:clamp(51px,5.7vw,86px)}.hero{min-height:650px}.quicklinks{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-top:31px;font-size:14px}.quicklinks span{color:#6a6b55}.quicklinks a{font-weight:700;border-bottom:1px solid var(--rust);padding-bottom:2px}.quicklinks a:hover{color:var(--rust)}.bookcheck{background:#e8dcc1;position:relative}.bookcheck .section-head{margin-bottom:43px}.bookcheck h2{font-size:clamp(39px,3.6vw,60px)}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.check-card{padding:35px 28px 38px 0}.check-card+.check-card{border-left:1px solid var(--line);padding-left:28px}.check-num{display:block;font-weight:700;font-size:13px;letter-spacing:.17em;color:var(--rust);margin-bottom:27px}.check-card h3{font-size:clamp(31px,2.8vw,43px);margin:0 0 12px;font-weight:600}.check-card p{color:#525b4b;max-width:350px;margin:0;font-size:16px;line-height:1.65}.check-end{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:29px;font-size:15px;font-weight:700}.check-end p{margin:0}.check-end a{border-bottom:1px solid currentColor;padding-bottom:3px}.check-end a:hover{color:var(--rust)}
@media(max-width:900px){.hero{min-height:0}.check-grid{grid-template-columns:1fr}.check-card,.check-card+.check-card{border-left:0;border-bottom:1px solid var(--line);padding:24px 0}.check-card:last-child{border-bottom:0}.check-num{margin-bottom:9px}.check-card h3{font-size:32px}.topnav a:nth-child(2){display:none}}
@media(max-width:720px){h1{font-size:clamp(49px,10vw,72px)}.quicklinks{margin-top:25px}.check-end{align-items:flex-start;flex-direction:column}.bookcheck h2{font-size:42px}}
@media(max-width:420px){h1{font-size:46px}.quicklinks{gap:8px 12px;font-size:13px}.bookcheck h2{font-size:38px}}
.bookcheck{padding-inline:clamp(22px,3vw,46px);margin-bottom:70px}
/* Two immediate visitor paths. */
.hero{padding-top:53px;padding-bottom:72px}.hero h1{margin:22px 0 20px}.hero .lead{margin-bottom:22px}.entry-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.entry-choice{min-height:136px;padding:16px 17px 15px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s,box-shadow .2s}.entry-choice:hover{transform:translateY(-4px);box-shadow:0 8px 0 #b7aa8f66}.entry-choice.find{background:var(--forest);color:#fff8e9}.entry-choice.give{background:#dfbd78;color:#2b3021}.choice-no{font-size:11px;font-weight:700;letter-spacing:.16em}.entry-choice strong{font:600 clamp(20px,2vw,27px)/1.1 'Fraunces',Georgia,serif;margin:15px 0 8px}.choice-next{font-size:13px;font-weight:700;margin-top:auto}.hero .quicklinks{margin-top:21px}.give-teaser{margin:0 0 67px;padding:41px 45px;background:#d9c8a8;border:1px solid #bea985;display:flex;align-items:end;justify-content:space-between;gap:30px}.give-teaser h2{font-size:clamp(34px,3vw,50px);line-height:1.08;font-weight:600;margin:10px 0 15px}.give-teaser p{color:#4d5748;max-width:610px;margin:0}.give-teaser-link{white-space:nowrap;background:var(--forest);color:#fff;padding:15px 20px;font-weight:700;font-size:14px}.give-teaser-link:hover{background:#3c5942}
@media(max-width:1050px){.hero{gap:30px}.entry-choice{min-height:125px;padding:14px}.entry-choice strong{font-size:22px}.give-teaser{display:block}.give-teaser-link{display:inline-block;margin-top:24px}}
@media(max-width:720px){.hero{padding-top:38px}.hero h1{margin:18px 0}.hero .lead{margin-bottom:20px}.give-teaser{padding:28px 23px;margin-bottom:45px}}
@media(max-width:430px){.entry-choices{grid-template-columns:1fr}.entry-choice{min-height:102px}.entry-choice strong{margin:8px 0 5px}.hero .quicklinks{font-size:12px}}
/* Dedicated local book-drop page. */
.breadcrumb{display:flex;gap:9px;align-items:center;padding:23px 0;font-size:13px;color:#67705e}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.breadcrumb a:hover{color:var(--rust)}.donate-hero{display:grid;grid-template-columns:1fr .8fr;gap:6vw;align-items:center;padding:45px 0 95px}.donate-hero h1{font-size:clamp(55px,5.6vw,86px);line-height:1.02;margin:24px 0 30px}.donate-hero .lead{max-width:580px}.donate-art{height:520px;position:relative;background:#203349;box-shadow:19px 19px 0 var(--paper2)}.donate-art img{width:100%;height:100%;object-fit:cover;object-position:68% center}.donate-art:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#17201dbb)}.donate-art div{position:absolute;z-index:1;bottom:25px;left:28px;font:600 37px/1.05 'Fraunces',Georgia,serif;color:#fff8e9}.donate-steps h2{font-size:clamp(42px,4vw,62px);margin:8px 0 36px}.donate-steps .check-card a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.donate-note{background:#dfbd78;padding:48px;display:flex;justify-content:space-between;gap:35px;align-items:end;margin:0 0 65px}.donate-note h2{font-size:clamp(38px,3.5vw,54px);font-weight:600;margin:10px 0}.donate-note p{max-width:650px;margin:0;color:#3f4a39}.donate-note .button{flex:none}
@media(max-width:850px){.donate-hero{grid-template-columns:1fr;gap:42px;padding:24px 0 80px}.donate-art{height:360px}.donate-note{display:block}.donate-note .button{margin-top:25px}}
@media(max-width:520px){.donate-hero h1{font-size:50px}.donate-art{height:290px}.donate-art div{font-size:30px}.donate-note{padding:30px 23px}.donate-note .button{width:100%}}
/* KlimBim appears where the journey changes, without covering controls. */
.hero-art img{object-position:center center}.hero-art .stamp{left:auto;right:20px;width:105px;height:105px}.shop-card.featured .mascot-peek{position:absolute;width:clamp(155px,14vw,230px);height:auto;top:21px;right:5px;z-index:1;pointer-events:none;filter:drop-shadow(0 8px 8px #18261c55)}.shop-card.featured h3,.shop-card.featured p,.shop-card.featured .out{position:relative;z-index:2}.give-teaser{position:relative;padding-right:clamp(185px,19vw,265px)}.mascot-wave{position:absolute;width:clamp(150px,15vw,225px);height:auto;right:13px;bottom:0;pointer-events:none;filter:drop-shadow(0 6px 5px #4c3d2a33)}.bookcheck{padding-bottom:120px}.mascot-read{position:absolute;width:clamp(155px,16vw,230px);height:auto;right:15px;bottom:-33px;pointer-events:none;filter:drop-shadow(0 8px 5px #4c3d2a33)}.bookcheck .check-end{padding-right:230px}
@media(max-width:900px){.give-teaser{padding-right:190px}.mascot-wave{width:170px}.bookcheck .check-end{padding-right:180px}}
@media(max-width:720px){.shop-card.featured .mascot-peek{width:155px}.give-teaser{padding-right:125px}.mascot-wave{width:125px}.bookcheck{padding-bottom:110px}.mascot-read{width:145px}.bookcheck .check-end{padding-right:130px}}
@media(max-width:520px){.give-teaser{padding-right:23px;padding-bottom:133px}.mascot-wave{width:125px;right:10px;bottom:5px}.bookcheck .check-end{padding-right:0;margin-bottom:93px}.mascot-read{right:0;bottom:-25px;width:135px}.shop-card.featured .mascot-peek{width:130px;right:3px;top:12px}}
/* Compact KlimBim brand lockup. */
header{height:88px}.brand{gap:8px;font:700 26px/1 'DM Sans',sans-serif;letter-spacing:-.055em}.brand-logo{width:66px;height:66px;mix-blend-mode:normal}.brand small{font-size:10px;letter-spacing:.16em;margin-top:3px}
@media(max-width:720px){header{height:78px}.brand-logo{width:54px;height:54px}.brand{font-size:22px}}
@media(max-width:520px){.brand-logo{width:46px;height:46px}.brand{font-size:19px;gap:5px}}
.shop-note{max-width:810px;color:#50594b;font-size:16px;line-height:1.65;margin:26px 0 0}
@media(max-width:420px){.hero h1{font-size:40px}.donate-hero h1{font-size:43px}}
.missing-page{min-height:65vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.65fr);gap:clamp(25px,5vw,70px);align-items:center;padding:70px 0}.missing-page h1{font-size:clamp(42px,5vw,72px)}.missing-page img{width:100%;height:auto;max-width:430px;justify-self:center}.missing-actions{display:flex;flex-wrap:wrap;gap:12px}.missing-help{margin:28px 0 0;color:#505544}.missing-help a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:720px){.missing-page{grid-template-columns:1fr;padding:50px 0}.missing-page img{max-width:230px}.missing-page h1{font-size:clamp(40px,10vw,58px)}}
.shop-note a,.platform-tip a{text-decoration:underline;text-underline-offset:3px;font-weight:700}.platform-intro{padding:50px 0 80px;max-width:870px}.platform-intro h1{font-size:clamp(48px,6vw,84px);line-height:1.04;margin:22px 0}.platform-intro .lead{max-width:800px}.platform-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.platform-card{background:#faf4e7;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;min-height:240px}.platform-card h3{font-size:38px;margin:0 0 12px}.platform-card p{color:#525b4b;max-width:420px}.platform-card a{margin-top:auto;font-weight:700;text-decoration:underline;text-underline-offset:4px}.platform-card a:hover,.platform-tip a:hover{color:var(--rust)}.platform-tip{background:#e8dcc1;padding:45px;margin:0 0 75px}.platform-tip h2{font-size:clamp(36px,4vw,55px);margin:12px 0}.platform-tip p{max-width:760px}.platform-tip a{display:inline-block;margin-top:10px}
@media(max-width:720px){.platform-intro{padding:30px 0 55px}.platform-intro h1{font-size:clamp(41px,8vw,58px)}.platform-grid{grid-template-columns:1fr}.platform-tip{padding:28px 23px}}
.shop-card.payhip-card{grid-column:1/-1;min-height:170px}
.referral-note{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:30px;padding:24px 28px;background:#e8dcc1;border-left:4px solid var(--rust)}
.referral-note p{margin:8px 0 0;max-width:680px;color:#4d5748}
.referral-note a{flex:none;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.referral-note a:hover{color:var(--rust)}
@media(max-width:720px){.referral-note{display:block}.referral-note a{display:inline-block;margin-top:18px}}
