/* Cats in Care · "Chalk and whiskers": daylight photographs with a chalk layer on top */
:root{
  --paper:#F7F2E6; --paper-2:#EEE6D3; --card:#FFFDF8; --chalk:#FBFAF4; --chalk-2:#F4F1E4;
  --ink:#1D2A21; --ink-2:#34463A; --muted:#55665A; --line:rgba(29,42,33,.14);
  --marm:#E0761B; --marm-ink:#9A4A10; --grass:#4F7A43; --slate:#22362B; --slate-2:#2B4334;
  --tape:rgba(232,219,182,.82);
  --serif:"Newsreader", Georgia, "Times New Roman", serif;
  --sans:"Albert Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --hand:"Gaegu", "Comic Sans MS", cursive;
  --gut:clamp(16px, 5vw, 64px);
  --frame:clamp(10px, 1.6vw, 24px);
  --bar-h:68px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 18px/1.6 var(--sans);overflow-x:hidden}
img,svg{display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.04;margin:0;letter-spacing:-.01em}
p{margin:0 0 1em}
.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 var(--gut)}
:focus-visible{outline:3px solid var(--marm-ink);outline-offset:3px;border-radius:2px}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--chalk);padding:10px 16px;border-radius:2px;text-decoration:none}
.skip:focus{top:12px}

/* labels: a chalk number and a small caps line */
.label{display:flex;align-items:center;gap:12px;font:700 13px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:0 0 22px}
.label span{font:700 28px/1 var(--hand);letter-spacing:0;color:var(--marm-ink);text-transform:none}
.label::after{content:"";flex:0 0 56px;height:2px;background:currentColor;opacity:.35}
.label-chalk{color:#D9E2D2}
.label-chalk span{color:#F2B27A}
.lede{font-size:clamp(19px,2vw,22px);line-height:1.5}

/* tape and photo prints: the scrapbook pieces */
.print{position:relative;margin:0;background:#fff;padding:10px;box-shadow:0 1px 2px rgba(40,30,10,.10),0 22px 44px -22px rgba(40,30,10,.45)}
.print img{width:100%;height:auto}
.print::before,.card::before,.board-frame::before,.hero-card::before,.hero-print::before{content:"";position:absolute;z-index:3;top:-13px;left:50%;width:108px;height:26px;margin-left:-54px;background:var(--tape);transform:rotate(-3deg);box-shadow:0 1px 2px rgba(60,40,10,.12);pointer-events:none}
.print-chalk{position:absolute;inset:10px;width:calc(100% - 20px);height:calc(100% - 20px);overflow:visible;filter:drop-shadow(0 1px 1px rgba(60,30,0,.25))}

/* buttons: a square ink block with a chalk arrow, and a chalk-underlined text link */
.btn{position:relative;display:inline-flex;align-items:center;gap:12px;min-height:54px;padding:0 22px 0 24px;border-radius:2px;font:700 16px/1 var(--sans);text-decoration:none}
.btn svg{width:30px;height:15px;transition:transform .25s}
.btn:hover svg{transform:translateX(5px)}
.btn-ink{background:var(--ink);color:var(--chalk);box-shadow:5px 5px 0 rgba(224,118,27,.85)}
.btn-ink:hover{box-shadow:3px 3px 0 rgba(224,118,27,.85);transform:translate(2px,2px)}
.btn-ink{transition:transform .2s, box-shadow .2s}
.btn-text{display:inline-flex;align-items:center;min-height:54px;padding:0 4px;font:700 16px/1 var(--sans);text-decoration:none;color:var(--ink);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 8'%3E%3Cpath d='M1 5c10-4 20 2 30-1s20-2 30 1 20-3 30-1 18 2 28-1' fill='none' stroke='%23E0761B' stroke-width='2.6' stroke-linecap='round'/%3E%3C/svg%3E") left calc(100% - 12px)/120px 8px repeat-x}
.btn-text:hover{background-position-x:24px;color:var(--marm-ink)}
.btn-text{transition:background-position .4s, color .2s}

/* header: a paper strip */
.bar{position:fixed;inset:0 0 auto 0;z-index:50;height:var(--bar-h);display:flex;align-items:center;gap:24px;padding:0 var(--gut);background:rgba(247,242,230,.96);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.bar.is-solid{box-shadow:0 8px 24px -16px rgba(29,42,33,.35)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.brand-mark{width:42px;height:42px}
.brand-word{font:500 23px/1 var(--serif);white-space:nowrap}
.nav{display:flex;gap:26px}
.nav a{font-weight:700;font-size:15px;text-decoration:none;position:relative;padding:6px 0}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 6'%3E%3Cpath d='M1 4c8-3 16 1 24-1s16-2 34 0' fill='none' stroke='%23E0761B' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") 0 0/100% 100% no-repeat;clip-path:inset(0 100% 0 0);transition:clip-path .3s}
.nav a:hover::after,.nav a[aria-current=page]::after{clip-path:inset(0 0 0 0)}
.nav a[aria-current=page]{color:var(--marm-ink)}
.nav-extra{display:none}
.nav .nav-extra a::after{display:none}
.nav .nav-extra .btn{padding:0 22px 0 24px;font-size:16px}
.nav .nav-extra .btn-text{padding:0 4px;font-size:16px}
.bar-donate{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:2px solid var(--ink);border-radius:2px;font-weight:700;font-size:15px;text-decoration:none;background:var(--card);box-shadow:3px 3px 0 rgba(224,118,27,.85);transition:transform .2s,box-shadow .2s}
.bar-donate:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 rgba(224,118,27,.85)}
.menu-btn{display:none;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:2px solid var(--ink);border-radius:2px;background:transparent;color:var(--ink);font:700 14px/1 var(--sans);cursor:pointer}
.menu-lines{position:relative;width:18px;height:12px}
.menu-lines i{position:absolute;left:0;right:0;height:2px;background:currentColor;border-radius:2px;transition:transform .25s}
.menu-lines i:first-child{top:2px}.menu-lines i:last-child{bottom:2px}
.menu-btn[aria-expanded=true] .menu-lines i:first-child{transform:translateY(3px) rotate(45deg)}
.menu-btn[aria-expanded=true] .menu-lines i:last-child{transform:translateY(-3px) rotate(-45deg)}
.bar-call{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--chalk);text-decoration:none;padding:11px 16px;border-radius:2px;font-weight:700;font-size:15px;white-space:nowrap}
.bar-call svg{width:16px;height:16px;fill:currentColor}
@media (max-width:1100px){.bar-call span{display:none}.bar-call{padding:12px}}
@media (max-width:980px){
  .bar{gap:12px}
  .js .menu-btn{display:inline-flex}
  .nav{display:none}
  .js .nav.is-open{display:flex;position:fixed;top:var(--bar-h);left:0;right:0;bottom:0;flex-direction:column;gap:0;padding:18px var(--gut) 40px;background:var(--paper);overflow-y:auto;border-top:1px solid var(--line)}
  .nav.is-open a:not(.btn):not(.btn-text){font:400 34px/1.1 var(--serif);padding:14px 0;border-bottom:1px solid var(--line)}
  .nav.is-open a:not(.btn):not(.btn-text)::after{left:0;right:auto;width:120px;bottom:8px}
  .nav.is-open .nav-extra{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:28px}
  .bar-donate{display:none}
}
@media (max-width:420px){.bar{gap:8px}.brand-word{font-size:20px}.brand-mark{width:36px;height:36px}.menu-word{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.menu-btn{padding:0 11px}}
body.menu-open{overflow:hidden}

/* ================= HERO: a big photograph with the chalk cat drawn on the down */
.hero{position:relative;padding-top:var(--bar-h);background:var(--paper)}
.hero-photo{position:relative;height:56svh;min-height:380px;margin:0 var(--frame);overflow:hidden;border-radius:3px;background:#9DB36F}
.hero-pan{position:absolute;inset:-12% 0 -4% 0;will-change:transform}
.hero-pan-chalk{pointer-events:none}
@media (max-width:899px){ .hero-pan{left:-32%} }
.hero-img,.hero-chalk{position:absolute;inset:0;width:100%;height:100%}
.hero-img{object-fit:cover;object-position:50% 50%}
.hero-chalk{overflow:visible;filter:drop-shadow(0 2px 2px rgba(20,30,10,.35))}
.hero-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(0deg,rgba(14,22,12,.42),rgba(14,22,12,0));pointer-events:none}
.hn-text{font:700 62px/1 var(--hand);letter-spacing:.01em}

/* the chalk cat draws itself */
.hc-line{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.2s .4s cubic-bezier(.6,.1,.3,1) forwards}
.hc-tail .hc-line{animation-delay:2.1s;animation-duration:.8s}
.hc-fill{opacity:0;animation:fillin 1.2s 2.2s ease forwards}
.hc-cut{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1s 2.9s ease forwards}
.hc-tail{transform-box:fill-box;transform-origin:100% 100%;animation:swish 6s 4.2s ease-in-out infinite}
.hn-line{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.1s 3.3s ease forwards}
.hn-text{opacity:0;animation:fillin .9s 3.1s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
@keyframes fillin{to{opacity:1}}
@keyframes swish{0%,70%,100%{transform:rotate(0)}78%{transform:rotate(-10deg)}86%{transform:rotate(6deg)}}

.scroll-cue{display:none}
@keyframes cue{0%,100%{transform:scaleY(.4);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}

.hero-card{position:relative;z-index:4;margin:-56px var(--gut) 0;background:var(--card);padding:30px 24px 26px;box-shadow:0 1px 2px rgba(40,30,10,.1),0 26px 50px -26px rgba(40,30,10,.5);transform:rotate(-.8deg)}
.eyebrow{font:700 12px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.hero h1{font-size:clamp(54px,15vw,124px);font-weight:400;letter-spacing:-.025em;line-height:.92;color:var(--ink)}
.promise{font:400 clamp(19px,2vw,23px)/1.42 var(--sans);max-width:28ch;margin:16px 0 22px;color:var(--ink-2)}
.cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.btn-line{background:var(--card);color:var(--ink);border:2px solid var(--ink);box-shadow:5px 5px 0 rgba(224,118,27,.85);transition:transform .2s, box-shadow .2s}
.btn-line:hover{box-shadow:3px 3px 0 rgba(224,118,27,.85);transform:translate(2px,2px)}
.hero-more{display:flex;flex-wrap:wrap;gap:0 20px;margin:10px 0 0}
.hero-more .btn-text{min-height:44px;font-size:15px}
.hero-print{display:none}

@media (min-width:900px){
  .hero{height:100vh;height:100svh;min-height:660px;max-height:1040px}
  .hero-photo{position:absolute;inset:var(--bar-h) var(--frame) var(--frame);height:auto;min-height:0;margin:0}
  .hero-card{position:absolute;left:calc(var(--frame) + var(--gut) * .7);bottom:calc(var(--frame) + clamp(26px,5vh,60px));width:min(560px,42vw);margin:0;padding:38px 40px 34px}
  .hero h1{font-size:clamp(72px,7.6vw,124px)}
  .scroll-cue{display:flex;position:absolute;z-index:3;left:50%;bottom:22px;margin:0;font:700 23px/1 var(--hand);color:var(--chalk);align-items:center;gap:10px;text-shadow:0 1px 3px rgba(0,0,0,.5)}
  .scroll-cue::before{content:"";width:2px;height:32px;background:var(--chalk);border-radius:2px;animation:cue 2s ease-in-out infinite}
  .hero-print{display:block;position:absolute;z-index:4;right:calc(var(--frame) + 3.2vw);bottom:calc(var(--frame) + clamp(30px,7vh,80px));width:clamp(170px,14vw,220px);margin:0;background:#fff;padding:9px 9px 40px;box-shadow:0 1px 2px rgba(40,30,10,.12),0 22px 44px -20px rgba(20,15,5,.55);transform:translate3d(0,var(--py,0px),0) rotate(3deg);will-change:transform}
  .hero-print img{width:100%;height:auto}
  .hero-print-cap{position:absolute;left:0;right:0;bottom:10px;text-align:center;font:700 clamp(15px,1.35vw,21px)/1 var(--hand);color:var(--ink);white-space:nowrap}
  .hero-print-note{position:absolute;width:190px;height:104px;left:-168px;top:-84px;color:var(--chalk);overflow:visible;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45))}
}
@media (min-width:900px) and (max-height:760px){ .hero-print{width:150px} .hero h1{font-size:clamp(60px,6.4vw,96px)} .hero-card{padding:28px 32px 26px} }

/* ================= WHO */
.who{position:relative;padding:clamp(88px,12vw,150px) 0 clamp(80px,10vw,130px);background:var(--paper)}
.who-grid{position:relative;display:grid;grid-template-columns:1fr 1.12fr;gap:clamp(40px,6vw,90px);align-items:center}
.who h2{font-size:clamp(40px,5vw,66px);margin-bottom:26px;max-width:14ch}
.who-copy p:not(.label):not(.lede){color:var(--ink-2);max-width:52ch}
.who-side{position:relative}
.print-sill{z-index:1;transform:rotate(1.8deg);width:88%;margin:-30px 0 0 auto}
.slate{position:relative;z-index:2;margin:0;width:94%}
.slate-cat{position:absolute;right:clamp(18px,3vw,34px);bottom:22px;width:clamp(76px,8vw,104px);height:auto;z-index:2}
.slate-list .wide dd{max-width:calc(100% - 96px)}
.slate-foot{max-width:calc(100% - 96px)}
.slate-cat .eye{transition:transform .15s ease-out}
.slate-tail{transform-origin:54px 254px;transform-box:view-box;animation:swish 4s ease-in-out infinite}
.slate-board{position:relative;background:linear-gradient(160deg,var(--slate-2),var(--slate));color:var(--chalk-2);border-radius:3px;padding:clamp(24px,3.4vw,40px);box-shadow:0 0 0 8px #fff,0 30px 60px -24px rgba(23,48,31,.55);transform:rotate(-1.4deg)}
.slate-board::after{content:"";position:absolute;inset:0;border-radius:3px;background:radial-gradient(ellipse at 30% 20%, rgba(244,241,228,.08), transparent 60%);pointer-events:none}
.slate-head{font:700 clamp(30px,3.2vw,38px)/1 var(--hand);margin-bottom:20px;color:var(--chalk-2)}
.slate-list{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}
.slate-list div{border-top:2px dashed rgba(244,241,228,.25);padding-top:10px}
.slate-list .wide{grid-column:1/-1}
.slate-list dt{font:700 12px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#B5CDA6;margin-bottom:4px}
.slate-list dd{margin:0;font:700 clamp(23px,2.3vw,29px)/1.15 var(--hand);text-shadow:0 0 1px rgba(244,241,228,.6),1px 0 0 rgba(244,241,228,.15)}
.slate-foot{margin:22px 0 0;font-size:14px;color:#B5CDA6}
.slate-list dd,.slate-head{clip-path:inset(0 100% 0 0);transition:clip-path 1s cubic-bezier(.5,0,.3,1)}
.slate.is-in .slate-head{clip-path:inset(0 0 0 0)}
.slate.is-in .slate-list dd{clip-path:inset(-10% -2% -10% 0)}
.slate.is-in .slate-list div:nth-child(1) dd{transition-delay:.35s}
.slate.is-in .slate-list div:nth-child(2) dd{transition-delay:.6s}
.slate.is-in .slate-list div:nth-child(3) dd{transition-delay:.85s}
.slate.is-in .slate-list div:nth-child(4) dd{transition-delay:1.1s}
.slate.is-in .slate-list div:nth-child(5) dd{transition-delay:1.35s;transition-duration:1.6s}

/* ================= THE LINE HOME: chalk over two photographs */
.line{position:relative;height:420vh;background:var(--paper)}
.line-stick{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}
.line-bg{position:absolute;top:var(--bar-h);left:var(--frame);right:var(--frame);bottom:var(--frame);overflow:hidden;border-radius:3px;background:#2A3A2B}
.lp{position:absolute;left:0;top:-6%;width:100%;height:118%;object-fit:cover;will-change:transform}
.lp-hearth{opacity:0}
.line-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,22,15,.74) 0%,rgba(12,22,15,.5) 30%,rgba(12,22,15,.5) 62%,rgba(12,22,15,.84) 100%)}
.line-inner{position:relative;height:100%;display:grid;grid-template-rows:auto 1fr auto;padding-top:calc(var(--bar-h) + clamp(22px,4.5vh,48px));padding-bottom:calc(var(--frame) + clamp(22px,4.5vh,44px))}
.line-head h2{color:var(--chalk);font-size:clamp(30px,4.2vw,56px);max-width:20ch}
.drawing{width:100%;height:100%;min-height:0;align-self:center;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}
.drawing [data-seg]{stroke-dasharray:1;stroke-dashoffset:1}
.paw{opacity:0;transition:opacity .4s}
.paw.on{opacity:.9}
.beats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.beat{color:rgba(244,241,228,.62);transition:color .5s;border-top:2px solid rgba(244,241,228,.28);padding-top:12px}
.beat strong{display:block;font:400 clamp(19px,1.9vw,26px)/1.15 var(--serif);margin-bottom:6px}
.beat span{font-size:15px;line-height:1.4;display:block}
.beat.is-on{color:var(--chalk);border-top-color:var(--marm)}
.line-meter{display:none}
@media (max-width:760px){
  .beats{grid-template-columns:1fr;position:relative;min-height:96px}
  .beat{position:absolute;inset:0 0 auto 0;opacity:0;transition:opacity .4s;border-top-color:var(--marm)}
  .beat.is-on{opacity:1}
  .line-meter{display:block;height:3px;background:rgba(244,241,228,.22);border-radius:3px;margin-top:10px;overflow:hidden}
  .line-meter i{display:block;height:100%;width:100%;background:var(--marm);transform-origin:left;transform:scaleX(0)}
  .drawing{width:250%!important;max-width:none;height:auto;margin:0!important;will-change:transform}
  .line-inner{padding-left:calc(var(--frame) + 14px);padding-right:calc(var(--frame) + 14px)}
}

/* ================= HOW WE HELP: photo cards with chalk on them */
.help{position:relative;padding:clamp(84px,11vw,140px) 0 clamp(96px,12vw,150px);background:var(--paper-2)}
.help-head{max-width:760px;margin-bottom:clamp(40px,5vw,60px)}
.help h2{font-size:clamp(40px,5vw,66px);margin-bottom:18px}
.help-lede{max-width:46ch;color:var(--ink-2);margin:0}
.cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.2vw,30px)}
.card{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:flex;flex-direction:column;height:100%;padding:10px 10px 22px;background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(40,30,10,.1),0 18px 36px -20px rgba(40,30,10,.45);transition:transform .3s cubic-bezier(.3,1.3,.5,1), box-shadow .3s;transform:rotate(-1.2deg)}
.cards li:nth-child(2) .card{transform:rotate(.9deg) translateY(18px)}
.cards li:nth-child(3) .card{transform:rotate(-.5deg)}
.cards li:nth-child(4) .card{transform:rotate(1.3deg) translateY(18px)}
.cards li:nth-child(2) .card::before{transform:rotate(4deg);left:30%}
.cards li:nth-child(4) .card::before{transform:rotate(-6deg);left:64%}
.card:hover,.card:focus-visible{transform:rotate(0) translateY(-6px)!important;box-shadow:0 1px 2px rgba(40,30,10,.1),0 26px 46px -22px rgba(40,30,10,.5)}
.card:focus-visible{outline:3px solid var(--marm-ink);outline-offset:5px}
.card-photo{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#C9C1AC}
.card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.card-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(16,24,16,.42),rgba(16,24,16,0) 55%);pointer-events:none}
.card-art{position:absolute;z-index:1;inset:0;width:100%;height:100%;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.55))}
.card-art path,.card-art circle{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .9s cubic-bezier(.5,0,.3,1)}
.card.is-drawn .card-art path,.card.is-drawn .card-art circle{stroke-dashoffset:0}
.card.is-drawn .card-art :nth-child(2){transition-delay:.25s}
.card.is-drawn .card-art :nth-child(3){transition-delay:.5s}
.card.is-drawn .card-art :nth-child(4){transition-delay:.75s}
.card.is-drawn .card-art :nth-child(5){transition-delay:1s}
.card.is-reset .card-art path,.card.is-reset .card-art circle{transition:none;stroke-dashoffset:1}
.card-label{font:700 25px/1 var(--hand);fill:#FBFAF4}
.card-copy{display:flex;flex-direction:column;min-width:0;padding:16px 8px 0}
.card-num{font:700 24px/1 var(--hand);color:var(--marm-ink)}
.card-title{font:400 clamp(23px,2vw,28px)/1.1 var(--serif);margin:4px 0 8px}
.card-text{font-size:16px;line-height:1.45;color:var(--ink-2)}
@media (max-width:980px){.cards{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cards{grid-template-columns:1fr;gap:34px}.cards li .card{transform:rotate(-.6deg)}.cards li:nth-child(even) .card{transform:rotate(.6deg)}}

/* ================= WAYS: pick up the chalk */
.ways{position:relative;padding:clamp(84px,11vw,140px) 0;background:var(--paper)}
.ways-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(40px,6vw,84px);align-items:start}
.ways h2{font-size:clamp(46px,6vw,82px);margin-bottom:22px}
.ways .lede{color:var(--ink-2);max-width:40ch}
.ways-list{list-style:none;margin:34px 0;padding:0;counter-reset:w}
.ways-list li{counter-increment:w;display:grid;grid-template-columns:44px 1fr;gap:0 12px;padding:18px 0;border-top:1px solid var(--line)}
.ways-list li::before{content:counter(w);grid-row:span 2;font:700 32px/1 var(--hand);color:var(--marm-ink)}
.ways-list h3{font-size:25px;margin-bottom:6px}
.ways-list h3 a{text-decoration:none;background:linear-gradient(var(--marm),var(--marm)) 0 100%/0 2px no-repeat;transition:background-size .3s}
.ways-list h3 a:hover{background-size:100% 2px;color:var(--marm-ink)}
.card-links{display:flex;flex-wrap:wrap;gap:4px 28px;margin:clamp(40px,5vw,64px) 0 0}
.ways-list p{margin:0;color:var(--ink-2);font-size:17px}
.contact{display:grid;gap:12px}
.contact-row{display:flex;align-items:baseline;gap:18px;padding:18px 22px;border-radius:2px;border:2px solid var(--ink);text-decoration:none;color:var(--ink)}
.contact .k{font:700 12px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;min-width:52px;color:var(--muted)}
.contact .v{font:400 clamp(23px,2.4vw,31px)/1.2 var(--serif);font-style:normal}
.contact div .v{font-size:clamp(19px,2vw,22px)}
a.contact-call{align-items:center;background:var(--ink);color:var(--chalk);box-shadow:5px 5px 0 rgba(224,118,27,.85);transition:transform .2s, box-shadow .2s}
a.contact-call .k{color:#C9D5C3}
a.contact-call:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 rgba(224,118,27,.85)}
.contact-arrow{width:34px;height:17px;margin-left:auto;align-self:center;transition:transform .25s}
a.contact-call:hover .contact-arrow{transform:translateX(5px)}
.board{margin:0;position:sticky;top:calc(var(--bar-h) + 28px)}
.board-frame{position:relative;aspect-ratio:4/3;background:#fff;box-shadow:0 1px 2px rgba(40,30,10,.12),0 26px 50px -24px rgba(40,30,10,.5);transform:rotate(1deg);touch-action:none}
.board-photo{position:absolute;top:12px;left:12px;width:calc(100% - 24px);height:calc(100% - 24px);object-fit:cover;filter:brightness(.78) saturate(.92)}
.board-canvas{position:absolute;top:12px;left:12px;width:calc(100% - 24px);height:calc(100% - 24px);cursor:crosshair}
.board-hint{position:absolute;left:0;right:0;top:44%;text-align:center;margin:0;font:700 36px/1 var(--hand);color:rgba(251,250,244,.86);text-shadow:0 1px 3px rgba(0,0,0,.45);pointer-events:none;transition:opacity .4s}
.board-hint.gone{opacity:0}
.board-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:28px;color:var(--ink-2);font-size:15px}
.board-btns{display:flex;gap:8px}
.chip{font:700 14px/1 var(--sans);color:var(--ink);background:transparent;border:2px solid var(--ink);border-radius:2px;padding:11px 15px;cursor:pointer;transition:background .2s,color .2s}
.chip:hover{background:var(--ink);color:var(--chalk)}

/* ================= PARTNERS: a hill figure cut into a photographed down */
.partners{position:relative;overflow:hidden;background:#6F9152;padding:64px 0 140px}
.down{position:absolute;inset:0;pointer-events:none}
.down-photo{position:absolute;left:0;top:-14%;width:100%;height:128%;object-fit:cover;object-position:50% 62%;will-change:transform}
.cut-layer{width:100%;display:flex;justify-content:center;will-change:transform}
.down::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(247,242,230,.0) 0%,rgba(20,30,18,.08) 60%,rgba(20,30,18,.25) 100%)}
.partners-inner{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.partners .label{background:var(--paper);color:var(--ink-2);padding:12px 18px;border-radius:2px;box-shadow:0 10px 24px -14px rgba(0,0,0,.45);margin:0}
.partners .label::before{content:"";flex:0 0 40px;height:2px;background:currentColor;opacity:.35}
.partners .label::after{flex-basis:40px}
.cut{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;width:min(480px,100%);aspect-ratio:16/9;margin:96px auto 0;padding:0 40px;text-decoration:none;color:var(--ink);transform:rotate(-2deg);transition:transform .35s cubic-bezier(.3,1.4,.5,1);-webkit-tap-highlight-color:transparent;filter:drop-shadow(0 14px 22px rgba(10,20,8,.35))}
.cut:hover{transform:rotate(-2deg) translateY(-3px)}
.cut:focus-visible{outline:3px solid var(--chalk);outline-offset:10px;border-radius:14px}
.cut-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.cut-chalk{fill:#F4F1E4;transition:fill .3s}
.cut:hover .cut-chalk,.cut:focus-visible .cut-chalk{fill:#FBF9F0}
.cut-line{fill:none;stroke:#F8F6EC;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 1;stroke-dashoffset:0}
.cut img{position:relative;width:min(300px,74%);height:auto}
.partner-note{position:relative;font:700 13px/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cut-scuffs,.cut-dust{position:absolute;inset:0;pointer-events:none}
.cut-scuffs b{position:absolute;width:46px;height:14px;margin:-7px 0 0 -23px;border-radius:50%;background:radial-gradient(closest-side,rgba(170,160,128,.38),rgba(170,160,128,0));transform:rotate(var(--r));animation:smudge 1.6s ease-out forwards}
.cut-dust i{position:absolute;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:#FBF9F0;box-shadow:0 0 0 1px rgba(70,96,78,.32);animation:dust .95s cubic-bezier(.2,.7,.4,1) forwards}
@keyframes dust{0%{transform:translate(0,0) scale(var(--s));opacity:1}70%{opacity:.8}100%{transform:translate(var(--dx),calc(var(--dy) + 14px)) scale(calc(var(--s) * .4));opacity:0}}
@keyframes smudge{0%{opacity:0}15%{opacity:1}100%{opacity:0}}
.cut.is-armed .cut-line{stroke-dashoffset:1}
.cut.is-armed .cut-turf,.cut.is-armed .cut-face{opacity:0}
.cut.is-armed img,.cut.is-armed .partner-note{opacity:0;transform:translateY(10px)}
.cut.is-cut .cut-line{stroke-dashoffset:0;transition:stroke-dashoffset 1.7s cubic-bezier(.45,.05,.55,.95) .15s}
.cut.is-cut .cut-turf,.cut.is-cut .cut-face{opacity:1;transition:opacity .7s ease 1.55s}
.cut.is-cut img{opacity:1;transform:none;transition:opacity .7s ease 1.95s,transform .7s cubic-bezier(.2,.8,.3,1) 1.95s}
.cut.is-cut .partner-note{opacity:1;transform:none;transition:opacity .6s ease 2.25s,transform .6s ease 2.25s}
@media (max-width:560px){
  .partners{padding:48px 0 110px}
  .partners .label{font-size:12px;letter-spacing:.12em;padding:10px 14px}
  .partners .label::before,.partners .label::after{flex-basis:20px}
  .cut{width:min(330px,100%);aspect-ratio:3/2;margin-top:80px;gap:12px;padding:0 24px}
  .cut img{width:min(230px,78%)}
  .partner-note{font-size:12px;letter-spacing:.12em}
}

/* ================= FOOTER */
.foot{position:relative;background:var(--ink);color:var(--chalk-2);padding:clamp(64px,8vw,96px) 0 0}
.foot-inner{display:grid;grid-template-columns:minmax(200px,250px) 1fr 1.3fr auto;gap:32px 48px;padding-bottom:48px;align-items:start}
.foot-print{transform:rotate(-3deg);padding:8px 8px 8px}
.foot-print .print-chalk{inset:8px;width:calc(100% - 16px);height:calc(100% - 16px)}
.foot-mark{width:64px;height:64px;margin-bottom:12px}
.foot-name{font:500 30px/1 var(--serif);margin:0 0 6px}
.foot-line{color:#C2D0BC;margin:0}
.foot-legal p{font-size:15px;color:#D5DECF;margin-bottom:10px}
.foot-legal a{color:var(--chalk)}
.foot-nav{display:flex;flex-direction:column;gap:6px;font-size:15px}
.foot-nav a{color:#D5DECF;text-decoration:none}
.foot-nav a:hover{color:var(--chalk);text-decoration:underline}
.foot-nav a[aria-current=page]{color:#F2B27A}
.foot-top{margin-top:8px;font-weight:700}
.foot-k{display:inline-block;min-width:46px;font:700 11px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#B5CDA6}
.foot-small{font-size:14px!important;color:#C2D0BC!important}
.foot-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
.foot-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:2px solid rgba(244,241,228,.6);border-radius:2px;color:var(--chalk);text-decoration:none;font-weight:700;font-size:14px;transition:background .2s,color .2s}
.foot-btn:hover{background:var(--chalk);color:var(--ink)}
.foot :focus-visible{outline-color:#F2B27A}
@media (max-width:1060px){.foot-inner{grid-template-columns:minmax(180px,220px) 1fr 1fr}.foot-nav{grid-column:2/-1;flex-direction:row;flex-wrap:wrap;gap:8px 18px}}
@media (max-width:700px){.foot-inner{grid-template-columns:1fr}.foot-print{width:min(240px,70%)}.foot-nav{grid-column:auto}}

/* ================= responsive */
@media (max-width:900px){
  .who-grid,.ways-grid{grid-template-columns:1fr}
  .board{position:relative;top:0}
  .print-sill{width:94%}
  .slate{width:100%}
}
@media (max-width:560px){
  body{font-size:17px}
  .label{font-size:12px;letter-spacing:.12em}
  .slate-list{grid-template-columns:1fr}
  .btn{min-height:50px;padding:0 18px 0 20px;font-size:15px}
  .btn-text{font-size:15px}
  .board-hint{font-size:30px}
  .board-btns{width:100%}
  .chip{flex:1}
}

/* ================= INNER PAGES: shared pieces */
.sect{position:relative;padding:clamp(76px,10vw,128px) 0;background:var(--paper)}
.sect-kraft{background:var(--paper-2)}
.sect h2{font-size:clamp(36px,4.6vw,60px);margin-bottom:22px;max-width:18ch}
.sect-head{max-width:760px;margin-bottom:clamp(36px,5vw,56px)}
.sect-head .lede{color:var(--ink-2);max-width:56ch;margin:0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:start}
.two-even{align-items:stretch}
.two-copy p:not(.label):not(.lede){color:var(--ink-2);max-width:60ch}
.two-copy .lede{max-width:46ch}
.two-copy .btn{margin-top:10px}
.small{font-size:15px;color:var(--muted)}
.lede a,.two-copy p a:not(.btn):not(.btn-text),.note a,.faq a,.panel p a,.found-steps a,.small a,.policy a,.visit a{color:var(--marm-ink);text-decoration-thickness:2px;text-underline-offset:3px}
.btn-text-chalk{color:var(--chalk)}
.btn-text-chalk:hover{color:#F2B27A}

/* page head: photo, chalk and print at three depths, paper title card overlapping */
.pagehead{position:relative;padding-top:var(--bar-h);background:var(--paper)}
.ph-photo{position:relative;height:46svh;min-height:300px;margin:0 var(--frame);overflow:hidden;border-radius:3px;background:#9DB36F}
.ph-pan{position:absolute;inset:-14% 0 -4% 0;will-change:transform}
.ph-pan-chalk{pointer-events:none}
.ph-pan:first-child::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 55% at 66% 30%,rgba(10,16,8,.32),rgba(10,16,8,0) 70%);pointer-events:none}
.ph-img,.ph-chalk{position:absolute;inset:0;width:100%;height:100%}
.ph-img{object-fit:cover;object-position:50% 50%}
.ph-chalk{overflow:visible;filter:drop-shadow(0 2px 3px rgba(10,16,8,.6))}
.ph-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,22,12,.38),rgba(14,22,12,0) 45%);pointer-events:none}
.ph-hand{font:700 52px/1 var(--hand);opacity:0;animation:fillin .9s 1.3s ease forwards}
.ph-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.3s .35s cubic-bezier(.6,.1,.3,1) forwards}
.ph-draw:nth-child(2){animation-delay:.75s}.ph-draw:nth-child(3){animation-delay:1.05s}
.bunting .ph-draw{animation-duration:.5s}
.bunting .ph-draw:nth-child(1){animation-delay:1s}.bunting .ph-draw:nth-child(2){animation-delay:1.12s}.bunting .ph-draw:nth-child(3){animation-delay:1.24s}.bunting .ph-draw:nth-child(4){animation-delay:1.36s}.bunting .ph-draw:nth-child(5){animation-delay:1.48s}.bunting .ph-draw:nth-child(6){animation-delay:1.6s}.bunting .ph-draw:nth-child(7){animation-delay:1.72s}
.bunting path{stroke:#F7C08F}
.ph-card{position:relative;z-index:4;margin:-48px var(--gut) 0;background:var(--card);padding:26px 24px 26px;box-shadow:0 1px 2px rgba(40,30,10,.1),0 26px 50px -26px rgba(40,30,10,.5);transform:rotate(-.6deg)}
.ph-card::before{content:"";position:absolute;z-index:3;top:-13px;left:50%;width:108px;height:26px;margin-left:-54px;background:var(--tape);transform:rotate(-3deg);box-shadow:0 1px 2px rgba(60,40,10,.12);pointer-events:none}
.ph-card h1{font-size:clamp(44px,11vw,96px);letter-spacing:-.02em;line-height:.95}
.ph-lede{font-size:clamp(18px,1.9vw,22px);line-height:1.45;color:var(--ink-2);max-width:36ch;margin:14px 0 18px}
.ph-card .cta{margin-top:4px}
.crumbs{display:flex;gap:8px;align-items:center;font:700 12px/1.4 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 12px}
.crumbs a{color:var(--muted);text-decoration:none;border-bottom:2px solid rgba(224,118,27,.55)}
.crumbs a:hover{color:var(--marm-ink)}
.ph-print{display:none}
@media (max-width:899px){ .ph-chalk{transform:translateX(-18%)} .ph-adopt .ph-chalk{transform:translateX(-30%)} .ph-hand{font-size:42px} }
@media (min-width:900px){
  .pagehead{height:78vh;height:78svh;min-height:560px;max-height:820px}
  .pagehead-short{height:56vh;height:56svh;min-height:440px;max-height:600px}
  .ph-photo{position:absolute;inset:var(--bar-h) var(--frame) var(--frame);height:auto;min-height:0;margin:0}
  .ph-card{position:absolute;left:calc(var(--frame) + var(--gut) * .7);bottom:calc(var(--frame) + clamp(24px,5vh,56px));width:min(600px,46vw);margin:0;padding:34px 38px 32px}
  .ph-card h1{font-size:clamp(60px,6.2vw,104px)}
  .ph-print{display:block;position:absolute;z-index:4;right:calc(var(--frame) + 4vw);bottom:calc(var(--frame) + clamp(30px,8vh,90px));width:clamp(200px,17vw,270px);margin:0;background:#fff;padding:9px 9px 40px;box-shadow:0 1px 2px rgba(40,30,10,.12),0 22px 44px -20px rgba(20,15,5,.55);transform:translate3d(0,var(--py,0px),0) rotate(3deg);will-change:transform}
  .ph-print::before{content:"";position:absolute;z-index:3;top:-13px;left:50%;width:96px;height:24px;margin-left:-48px;background:var(--tape);transform:rotate(-4deg)}
  .ph-print img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
  .ph-print-cap{position:absolute;left:0;right:0;bottom:10px;text-align:center;font:700 clamp(16px,1.4vw,21px)/1 var(--hand);color:var(--ink);white-space:nowrap}
}

/* jump list on help */
.jump{position:sticky;top:var(--bar-h);z-index:20;background:rgba(247,242,230,.97);border-bottom:1px solid var(--line);margin-top:clamp(24px,4vw,40px)}
.jump-inner{display:flex;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}
.jump-inner::-webkit-scrollbar{display:none}
.jump a{flex:0 0 auto;font:700 14px/1 var(--sans);padding:10px 13px;border:2px solid var(--ink);border-radius:2px;text-decoration:none;white-space:nowrap;transition:background .2s,color .2s}
.jump a:hover,.jump a.is-here{background:var(--ink);color:var(--chalk)}
[id]{scroll-margin-top:calc(var(--bar-h) + 70px)}

/* steps with a scroll-drawn chalk line */
.steps-wrap{position:relative;padding-left:64px}
.steps-line{position:absolute;left:0;top:0;width:60px;height:100%;overflow:visible}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:26px}
.steps li{position:relative;background:var(--card);padding:22px 24px 20px;box-shadow:0 1px 2px rgba(40,30,10,.1),0 18px 36px -24px rgba(40,30,10,.45)}
.steps li:nth-child(odd){transform:rotate(-.6deg)}.steps li:nth-child(even){transform:rotate(.5deg)}
.step-n{position:absolute;left:-58px;top:14px;width:48px;height:48px;display:grid;place-items:center;font:700 30px/1 var(--hand);color:var(--chalk);background:var(--slate);border-radius:50%;box-shadow:0 0 0 4px var(--paper)}
.steps h3{font-size:26px;margin-bottom:6px}
.steps p{margin:0;color:var(--ink-2);font-size:17px}

/* taped notes */
.notes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.2vw,30px)}
.notes-3{grid-template-columns:repeat(3,1fr)}
.note{position:relative;background:var(--card);padding:30px 22px 22px;box-shadow:0 1px 2px rgba(40,30,10,.1),0 18px 36px -22px rgba(40,30,10,.45);transform:rotate(-.8deg)}
.note:nth-child(even){transform:rotate(.9deg) translateY(10px)}
.note::before{content:"";position:absolute;top:-12px;left:50%;width:90px;height:24px;margin-left:-45px;background:var(--tape);transform:rotate(-3deg)}
.note h3{font-size:24px;margin-bottom:8px}
.note h3 a{text-decoration:none}
.note h3 a:hover{color:var(--marm-ink);text-decoration:underline}
.note p{margin:0;color:var(--ink-2);font-size:16.5px}
.aside-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.2vw,30px);margin-top:clamp(40px,5vw,60px)}
.aside{border:2px solid var(--ink);border-radius:2px;padding:22px 24px;background:var(--paper)}
.aside h3{font-size:26px;margin-bottom:6px}
.aside p{margin:0;color:var(--ink-2)}

/* panels */
.panel{position:relative;background:var(--card);padding:clamp(28px,3.4vw,44px);box-shadow:0 1px 2px rgba(40,30,10,.1),0 22px 44px -26px rgba(40,30,10,.5)}
.panel h2{font-size:clamp(32px,3.6vw,46px)}
.panel p{color:var(--ink-2);max-width:56ch}
.panel-slate{background:linear-gradient(160deg,var(--slate-2),var(--slate));color:var(--chalk-2);box-shadow:0 0 0 8px #fff,0 30px 60px -24px rgba(23,48,31,.55);transform:rotate(-.6deg)}
.panel-slate h2{color:var(--chalk)}
.panel-slate p{color:#DCE4D6}
.panel-slate .small{color:#B5CDA6}
.panel-slate p a{color:#F2B27A}
.will-dl{margin:18px 0;display:grid;gap:10px}
.will-dl div{border-top:2px dashed rgba(244,241,228,.25);padding-top:8px}
.will-dl dt{font:700 12px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#B5CDA6}
.will-dl dd{margin:2px 0 0;font:700 clamp(21px,2vw,26px)/1.2 var(--hand);color:var(--chalk)}

/* prints in content */
.print-tilt{transform:rotate(1.6deg)}
.print-tilt-r{transform:rotate(-1.6deg)}
.two-flip{grid-template-columns:1fr 1fr}

/* FAQ: chalk plus */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(36px,6vw,90px);align-items:start}
.faq-grid .lede{color:var(--ink-2)}
.faq{border-top:2px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;position:relative;padding:20px 52px 20px 0;font:400 clamp(21px,2vw,25px)/1.25 var(--serif)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:8px;top:50%;margin-top:-17px;font:700 34px/1 var(--hand);color:var(--marm-ink);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--marm-ink)}
.faq details p{margin:0 0 22px;color:var(--ink-2);max-width:62ch}

/* call band */
.callband{background:var(--ink);color:var(--chalk);padding:clamp(56px,7vw,88px) 0}
.callband-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px}
.callband h2{font-size:clamp(32px,4vw,52px);max-width:18ch;color:var(--chalk)}
.callband .contact-row{border-color:var(--chalk);min-width:min(100%,380px)}
.callband a.contact-call{background:var(--chalk);color:var(--ink)}
.callband a.contact-call .k{color:var(--muted)}

/* about: timeline, quotes, slate, money */
.timeline{list-style:none;margin:0;padding:0 0 0 34px;position:relative}
.timeline::before{content:"";position:absolute;left:8px;top:8px;bottom:8px;width:3px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 40'%3E%3Cpath d='M3 0c-2 10 2 20 0 40' fill='none' stroke='%23E0761B' stroke-width='3'/%3E%3C/svg%3E") 0 0/100% 40px repeat-y;transform-origin:top;transform:scaleY(0);transition:transform 1.6s cubic-bezier(.5,0,.3,1)}
.timeline.is-in::before{transform:scaleY(1)}
.timeline li{position:relative;padding:0 0 34px}
.timeline li::before{content:"";position:absolute;left:-32px;top:6px;width:16px;height:16px;border-radius:50%;background:var(--paper);border:3px solid var(--marm)}
.tl-when{display:block;font:700 28px/1.1 var(--hand);color:var(--marm-ink);margin-bottom:4px}
.tl-what{display:block;font:400 clamp(20px,1.9vw,24px)/1.35 var(--serif);max-width:34ch}
.aims{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(20px,3vw,40px);align-items:start}
.quote-chalk{margin:0;background:linear-gradient(160deg,var(--slate-2),var(--slate));color:var(--chalk-2);padding:clamp(28px,4vw,52px);box-shadow:0 0 0 8px #fff,0 30px 60px -24px rgba(23,48,31,.55);transform:rotate(-.8deg)}
.quote-chalk blockquote{margin:0}
.quote-chalk blockquote p{font:700 clamp(28px,3.2vw,42px)/1.15 var(--hand);margin:0 0 18px}
.quote-chalk figcaption{font-size:14px;color:#B5CDA6}
.quote-paper{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(40,30,10,.1),0 22px 44px -24px rgba(40,30,10,.5);transform:rotate(1deg);margin-top:40px}
.quote-paper blockquote p{font:400 clamp(24px,2.4vw,32px)/1.25 var(--serif)}
.quote-paper figcaption{color:var(--muted)}
.slate-solo{width:100%}
.slate-solo .slate-list .wide dd,.slate-solo .slate-foot{max-width:none}
.money{margin:0;background:var(--card);padding:clamp(26px,3.4vw,42px);box-shadow:0 1px 2px rgba(40,30,10,.1),0 22px 44px -24px rgba(40,30,10,.5);transform:rotate(.6deg)}
.money-cap{font:700 26px/1.1 var(--hand);color:var(--marm-ink);margin-bottom:22px}
.bar-row{display:grid;grid-template-columns:88px 1fr auto;align-items:center;gap:14px;margin-bottom:18px}
.bar-k{font:700 13px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.bar-track{position:relative;height:30px;background:repeating-linear-gradient(90deg,rgba(29,42,33,.06) 0 2px,transparent 2px 10%)}
.bar-fill{position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--slate);border-radius:1px;transform-origin:left;transform:scaleX(0);transition:transform 1.4s cubic-bezier(.5,0,.3,1) .2s;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 10' preserveAspectRatio='none'%3E%3Cpath d='M0 1Q25 0 50 1T100 0V10Q75 9 50 10T0 9Z'/%3E%3C/svg%3E") 0 0/100% 100%;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 10' preserveAspectRatio='none'%3E%3Cpath d='M0 1Q25 0 50 1T100 0V10Q75 9 50 10T0 9Z'/%3E%3C/svg%3E") 0 0/100% 100%}
.bar-fill-2{background:var(--marm);transition-delay:.5s}
.money.is-in .bar-fill{transform:scaleX(1)}
.bar-v{font:400 clamp(22px,2.2vw,28px)/1 var(--serif);min-width:4.4em;text-align:right}
.money-note{margin:18px 0 0;font-size:14px;color:var(--muted)}

/* contact */
.maps{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:26px}
.visit{position:relative;background:linear-gradient(160deg,var(--slate-2),var(--slate));color:var(--chalk-2);padding:clamp(26px,3.4vw,44px);box-shadow:0 0 0 8px #fff,0 30px 60px -24px rgba(23,48,31,.55);transform:rotate(1deg)}
.visit-chalk{width:100%;max-width:340px;height:auto;margin-bottom:12px}
.visit h2{color:var(--chalk);font-size:clamp(30px,3.4vw,44px)}
.visit p{color:#DCE4D6}
.visit a{color:#F2B27A!important}
.visit .small{color:#B5CDA6;margin:0}
.found-board{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,70px);background:linear-gradient(160deg,var(--slate-2),var(--slate));color:var(--chalk-2);padding:clamp(28px,4.4vw,60px);box-shadow:0 0 0 10px #fff,0 30px 60px -24px rgba(23,48,31,.55)}
.found-board h2{color:var(--chalk)}
.found-board .lede{color:#DCE4D6}
.found-board .small{color:#B5CDA6}
.found-board .small a{color:#F2B27A}
.rspca-call{display:inline-flex;align-items:baseline;gap:16px;margin:8px 0 18px;padding:16px 22px;background:var(--chalk);color:var(--ink);text-decoration:none;border-radius:2px;box-shadow:5px 5px 0 rgba(224,118,27,.9);transition:transform .2s,box-shadow .2s}
.rspca-call:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 rgba(224,118,27,.9)}
.rspca-call .k{font:700 12px/1 var(--sans);letter-spacing:.16em;color:var(--muted)}
.rspca-call .v{font:400 clamp(26px,3vw,36px)/1 var(--serif)}
.found-steps{list-style:none;margin:0;padding:0;counter-reset:f}
.found-steps li{counter-increment:f;position:relative;padding:0 0 22px 52px;border-bottom:2px dashed rgba(244,241,228,.2);margin-bottom:22px}
.found-steps li:last-child{border:0;margin:0;padding-bottom:0}
.found-steps li::before{content:counter(f);position:absolute;left:0;top:-4px;font:700 34px/1 var(--hand);color:#F2B27A}
.found-steps h3{color:var(--chalk);font-size:24px;margin-bottom:6px}
.found-steps p{margin:0;color:#DCE4D6;font-size:16.5px}
.found-steps a{color:#F2B27A!important}
.found-more{margin:28px 0 0}

/* home: found a cat strip */
.found-strip{background:var(--paper);padding:0 0 clamp(70px,9vw,110px)}
.found-note{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 32px;border:2px solid var(--ink);border-radius:2px;padding:24px 28px;background:var(--card);box-shadow:6px 6px 0 rgba(224,118,27,.85)}
.found-note h2{font-size:clamp(24px,2.6vw,32px);grid-column:1}
.found-note p{grid-column:1;margin:0;color:var(--ink-2)}
.found-note p a{color:var(--marm-ink);font-weight:700}
.found-note .btn-text{grid-column:2;grid-row:1/span 2}

/* policies */
.policy-grid{display:grid;grid-template-columns:220px 1fr;gap:clamp(30px,5vw,80px);align-items:start}
.policy-toc{position:sticky;top:calc(var(--bar-h) + 28px);display:flex;flex-direction:column;gap:4px;border-left:3px solid var(--marm);padding-left:16px}
.policy-toc a{text-decoration:none;font-weight:700;font-size:15px;padding:6px 0}
.policy-toc a:hover{color:var(--marm-ink);text-decoration:underline}
.policy{max-width:70ch}
.policy section{padding-bottom:40px;margin-bottom:40px;border-bottom:1px solid var(--line)}
.policy section:last-child{border:0}
.policy h2{font-size:clamp(32px,3.6vw,44px);margin-bottom:16px}
.policy p,.policy li{color:var(--ink-2)}
.policy ul{padding-left:22px;margin:0 0 1em}
.policy li{margin-bottom:8px}
.details-dl{margin:0;display:grid;gap:0}
.details-dl div{display:grid;grid-template-columns:230px 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.details-dl dt{font:700 13px/1.5 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.details-dl dd{margin:0}

/* 404 */
.nf-h{font-size:clamp(32px,4vw,48px);margin-bottom:36px}
.nf-links{grid-template-columns:repeat(4,1fr)}

@media (max-width:980px){
  .notes{grid-template-columns:1fr 1fr}
  .notes-3{grid-template-columns:1fr}
  .note:nth-child(even){transform:rotate(.9deg)}
  .aims{grid-template-columns:1fr}
  .quote-paper{margin-top:0}
}
@media (max-width:900px){
  .two,.two-flip,.faq-grid,.found-board,.policy-grid{grid-template-columns:1fr}
  .two-flip .print{order:2}
  .policy-toc{position:relative;top:0;flex-direction:row;flex-wrap:wrap;gap:4px 18px}
}
@media (max-width:640px){
  .notes,.aside-row,.nf-links{grid-template-columns:1fr}
  .found-note{grid-template-columns:1fr;padding:22px 20px}
  .found-note .btn-text{grid-column:1;grid-row:auto}
  .details-dl div{grid-template-columns:1fr;gap:2px}
  .bar-row{grid-template-columns:1fr auto;gap:8px 12px}
  .bar-track{grid-column:1/-1;grid-row:2}
  .steps-wrap{padding-left:56px}
  .step-n{left:-52px;width:42px;height:42px;font-size:26px}
  .callband .contact-row{min-width:0;width:100%}
  .rspca-call{flex-wrap:wrap;gap:6px 14px}
}

/* ================= reduced motion */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hc-line,.hc-cut,.hn-line{stroke-dashoffset:0}
  .hc-fill,.hn-text{opacity:1}
  .slate-list dd,.slate-head{clip-path:none}
  .card-art path,.card-art circle{stroke-dashoffset:0}
  .hero-pan,.lp,[data-speed],[data-pspeed]{transform:none!important}
  .hero-print{transform:rotate(3deg)!important}
  .ph-print{transform:rotate(3deg)!important}
  .ph-draw{stroke-dashoffset:0!important}.ph-hand{opacity:1!important}
  .bar-fill{transform:none!important}
  [data-scrub-path]{stroke-dashoffset:0!important}
  .timeline::before{transform:none!important}
  .menu-lines i{transition:none}
  .line{height:auto}
  .line-stick{position:relative;height:auto;min-height:100vh}
  .line-inner{padding-bottom:70px}
  .drawing [data-seg]{stroke-dashoffset:0}
  .cut-line{stroke-dashoffset:0!important}.cut img,.cut .partner-note,.cut-turf,.cut-face{opacity:1!important}
  .drawing{width:100%!important;transform:none!important}
  .glow{opacity:.85}
  .paw{opacity:.9}
  .beats{grid-template-columns:1fr 1fr;position:static;min-height:0}
  .beat{position:static;opacity:1;color:var(--chalk)}
  .line-meter{display:none}
}

/* ---- Give in crypto: a taped print with chalk lettering ---- */
.crypto-give { margin-top: clamp(40px, 6vw, 72px); padding-top: clamp(28px, 4vw, 44px); border-top: 2px dashed var(--line); }
.crypto-give h3 { font-family: var(--serif); font-weight: 500; font-size: clamp(1.6rem, 3vw, 2.2rem); line-height: 1.1; margin: 0 0 .6rem; color: var(--ink); }
.crypto-note { max-width: 60ch; margin: 0; color: var(--ink-2); }
.crypto-wallets { display: flex; flex-wrap: wrap; gap: 28px; margin-top: 30px; }
.crypto-wallet { position: relative; display: grid; gap: 12px; justify-items: start; width: min(100%, 340px); padding: 26px 22px 22px; background: var(--card); box-shadow: 0 1px 0 rgba(29,42,33,.06), 0 14px 28px -16px rgba(29,42,33,.35); transform: rotate(-1.2deg); }
.crypto-wallet::before { content: ""; position: absolute; top: -12px; left: 50%; width: 96px; height: 26px; margin-left: -48px; background: var(--tape); transform: rotate(2deg); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.crypto-net { margin: 0; font-family: var(--hand); font-size: 1.45rem; line-height: 1; color: var(--marm-ink); }
.crypto-net::after { content: "  scan, or copy \2193"; font-size: 1.05rem; color: var(--muted); }
.crypto-qr { width: 176px; height: 176px; padding: 10px; background: #fff; outline: 1px solid var(--line); }
.crypto-qr svg { display: block; width: 100%; height: 100%; }
.crypto-addr { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .8rem; line-height: 1.5; color: var(--ink-2); overflow-wrap: anywhere; word-break: break-all; }
.crypto-warn { margin: 0; font-family: var(--hand); font-size: 1.15rem; color: var(--grass); }
@media (prefers-reduced-motion: reduce) { .crypto-wallet { transform: none; } }

/* ---- official logo (owner-supplied, 31 Oct 2026): transparent emblem in header and footer ---- */
.brand-mark{width:auto;height:42px}
.foot-mark{width:auto;height:80px}
@media (max-width:420px){.brand-mark{width:auto;height:34px}}

/* ---- partner credits (31 Oct 2026): regulator registration and named partners, text only (logos need permission) ---- */
.partner-more{margin:14px auto 0;max-width:46ch;font-size:.86rem;line-height:1.55;opacity:.92}
.partner-more p{margin:0 0 4px}
.partner-more a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.partners .partner-slip{position:relative;z-index:2;margin:10px auto 0;width:fit-content;max-width:min(92vw,520px);background:var(--paper);color:var(--ink-2);padding:9px 16px;border-radius:2px;box-shadow:0 10px 24px -14px rgba(0,0,0,.45);font-size:.82rem;text-align:center;opacity:1}
