
:root{font-family:Manrope,sans-serif;--curve:cubic-bezier(.22,1,.36,1);--paper:#f8f0e8;--surface:#eee2da;--ink:#32212a;--muted:#594450;--line:#cdb8c0;--accent:#672d4a;--on:#fff8f1;--focus:#893e63;--nav:rgb(248 240 232 / 93%)}
.forest{color-scheme:dark;--paper:#181818;--surface:#272727;--ink:#fff3dc;--muted:#e1d5bf;--line:#766f60;--accent:#f4d684;--on:#241e15;--focus:#f4d684;--nav:rgb(24 24 24 / 93%)}
.clay{--paper:#fbf1e0;--surface:#efddbe;--ink:#31251d;--muted:#584335;--line:#c3a991;--accent:#833923;--on:#fff8ec;--focus:#833923;--nav:rgb(251 241 224 / 93%)}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper)}html{scroll-padding-top:24px}
h1,h2,h3,p,figure,ul,ol{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}address{font-style:normal}img{max-width:100%;display:block}
.heading-1{font-size:60px;line-height:60px;font-weight:600;letter-spacing:-.045em}
.heading-2{font-size:48px;line-height:48px;font-weight:600;letter-spacing:-.035em}
.heading-3{font-size:36px;line-height:40px;font-weight:600;letter-spacing:-.03em}
.heading-5{font-size:24px;line-height:32px;font-weight:600}
.title-1{font-size:20px;line-height:28px;font-weight:500}
.title-3{font-size:16px;line-height:24px;font-weight:500}
.title-4{font-size:14px;line-height:20px;font-weight:500}
.body-3{font-size:16px;line-height:24px;font-weight:400}
.caption-2{font-size:14px;line-height:20px;font-weight:400}
.caption-3{font-size:12px;line-height:16px;font-weight:600}
.button-md{font-size:16px;line-height:24px;font-weight:600}
.wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}
a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
button{font-family:inherit;cursor:pointer;color:inherit}
.skip{position:absolute;z-index:10;left:16px;top:16px;background:var(--paper);padding:8px 12px;transform:translateY(-160%)}.skip:focus{transform:none}
.header{position:relative;z-index:2;display:flex;align-items:center;gap:32px;width:max-content;max-width:calc(100% - 32px);margin:16px auto 0;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:var(--nav);backdrop-filter:blur(16px)}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none}.nav{display:flex;gap:24px}.nav a{text-decoration:none}.nav a[aria-current]{text-decoration:underline}
.menu-toggle,.menu-close{display:none;background:transparent;border:1px solid var(--line);border-radius:4px;padding:8px;min-height:44px;min-width:44px}
.menu-icon{display:grid;gap:4px;width:16px;margin:auto}.menu-icon span{height:2px;background:currentColor;transition:transform 500ms var(--curve)}[aria-expanded=true] .menu-icon span:first-child{transform:translateY(3px) rotate(45deg)}[aria-expanded=true] .menu-icon span:last-child{transform:translateY(-3px) rotate(-45deg)}
dialog{inset:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:24px;background:var(--nav);backdrop-filter:blur(16px);color:var(--ink)}dialog::backdrop{background:rgb(0 0 0 / 42%)}.menu-top{display:flex;align-items:center;justify-content:space-between}.mobile-links{display:grid;gap:24px;margin-top:48px}.mobile-links a{width:fit-content}.mobile-links a[aria-current]{text-decoration-thickness:2px}
dialog[open] .mobile-links a{animation:arrive 220ms var(--curve) both}dialog[open] .mobile-links a:nth-child(2){animation-delay:60ms}dialog[open] .mobile-links a:nth-child(3){animation-delay:120ms}dialog[open] .mobile-links a:nth-child(4){animation-delay:180ms}
@keyframes arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:48px;padding-block:48px 64px}
.hero-copy{min-width:0}.kicker{color:var(--muted);letter-spacing:.12em;text-transform:uppercase}
.hero .kicker{margin-bottom:16px}.hero h1,.hero .lede{max-width:680px}
.hero h1{background:linear-gradient(90deg,#000,#666);background-clip:text;color:transparent}.forest .hero h1{background-image:linear-gradient(90deg,#fff,#9b9b9b)}
.lede{color:var(--muted);margin:24px 0}.hero .proof{margin-top:12px;color:var(--muted)}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;background:var(--accent);color:var(--on);text-decoration:none;border-radius:8px;transition:transform 500ms var(--curve),opacity 300ms var(--curve)}.cta:hover{opacity:.88}.cta:active{transform:scale(.98)}
.hero-visual{min-width:0;background:var(--surface);border-radius:16px;overflow:hidden}.hero-visual img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 38%}.hero-visual figcaption{color:var(--muted);padding:8px 12px}
.forest .hero{width:100%;gap:0;grid-template-columns:1fr 1fr;align-items:stretch;padding-top:24px}.forest .hero-copy{align-content:center;padding:48px max(32px,calc((100vw - 1200px)/2))}.forest .hero-visual{border-radius:0}.forest .hero-visual img{aspect-ratio:1;object-position:center 34%}
.clay .hero{grid-template-columns:1fr 1fr;gap:0;align-items:stretch}.clay .hero-copy{grid-area:1/2;padding:40px;background:var(--surface);border-radius:0 16px 16px 0;align-content:center}.clay .hero-visual{grid-area:1/1;border-radius:16px 0 0 16px}.clay .hero-visual img{aspect-ratio:1;object-position:center}
.section{padding-block:64px}.section h2{margin:8px 0 24px}.section p{color:var(--muted)}.section .kicker{color:var(--ink)}
.directory{display:grid;gap:12px;margin-top:24px}.directory article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:start;gap:24px;padding:16px;border:1px solid var(--line);border-radius:8px}.forest .directory{grid-template-columns:repeat(3,minmax(0,1fr))}.forest .directory article{display:block;background:var(--surface)}.forest .directory article p{margin-top:8px}.clay .directory article{background:var(--surface)}
.tagline,.local,.final{background:var(--surface)}.tagline h2{max-width:680px;margin-bottom:16px}.tagline .word{opacity:.3;transition:opacity 500ms var(--curve)}.tagline .word.visible{opacity:1}
.journey{display:grid;grid-template-columns:1fr 1fr;gap:48px}.steps{padding-left:24px;display:grid;gap:24px}
.local address{display:grid;gap:8px}.local address a{width:fit-content}.local .sources{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:16px}
.questions{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}.questions h2{margin:0 0 16px}.faq{display:grid;gap:12px}details{border:1px solid var(--line);border-radius:8px;padding:12px 16px}
summary{display:flex;gap:16px;align-items:center;justify-content:space-between;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:"+";font-weight:600}details[open] summary::after{content:"−"}details p{margin-top:8px}
.final p{margin-bottom:24px}.footer{padding-block:24px;display:flex;gap:12px 24px;flex-wrap:wrap;color:var(--muted)}.footer p{flex-basis:100%}
.reveal{transition:opacity 700ms var(--curve),transform 700ms var(--curve)}.reveal.pending{opacity:0;transform:translateY(32px)}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.gallery article{border:1px solid var(--line);border-radius:16px;padding:12px}.gallery img{width:100%;height:auto;border-radius:4px}.gallery .kicker{margin-top:16px}.gallery h2{margin:4px 0 8px}
@media(max-width:900px){.hero{gap:24px}.forest .hero-copy,.clay .hero-copy{padding:24px}}
@media(max-width:767px){.wrap{width:calc(100% - 48px)}.heading-1{font-size:36px;line-height:40px}.heading-2,.heading-3{font-size:30px;line-height:36px}.header{width:calc(100% - 48px);justify-content:space-between}.nav{display:none}.menu-toggle,.menu-close{display:block}.hero,.forest .hero,.clay .hero{width:calc(100% - 48px);grid-template-columns:minmax(0,1fr);gap:24px;padding-block:32px 48px}.forest .hero-copy,.clay .hero-copy{padding:0;background:none;grid-area:auto}.clay .hero-visual,.forest .hero-visual{grid-area:auto;border-radius:16px}.hero-visual img,.forest .hero-visual img,.clay .hero-visual img{aspect-ratio:4/3}.lede{margin-block:16px}.section{padding-block:48px}.journey,.questions,.directory article,.forest .directory,.gallery{grid-template-columns:minmax(0,1fr);gap:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}.tagline .word{opacity:1}}
