:root{--bg:oklch(.96 .014 82);--surface:oklch(.99 .008 82);--pine:oklch(.42 .07 158);--pine-2:oklch(.34 .07 158);--clay:oklch(.52 .1 46);--clay-2:oklch(.45 .1 46);--ink:oklch(.3 .022 72);--muted:oklch(.49 .022 76);--line:oklch(.88 .016 82);--display:"Bricolage Grotesque",system-ui,sans-serif;--body:"Figtree",system-ui,sans-serif;--maxw:1180px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;overflow-x:hidden}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-weight:300;line-height:1.65;overflow-x:hidden}img{display:block;max-width:100%}h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.08;letter-spacing:-.01em;color:var(--ink)}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--pine);outline-offset:3px;border-radius:5px}.kick{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pine);font-weight:600}.kick--light{color:#abd8b3}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--body);font-weight:600;font-size:.92rem;letter-spacing:.01em;text-decoration:none;padding:.9rem 1.7rem;border-radius:999px;transition:transform .25s,background .25s;border:0;cursor:pointer}.btn-pine{background:var(--pine);color:#f8f5ee}.btn-pine:hover{background:var(--pine-2);transform:translateY(-2px)}.btn-clay{background:var(--clay);color:#fbf8f3}.btn-clay:hover{background:var(--clay-2);transform:translateY(-2px)}.btn-line{background:transparent;color:var(--ink);border:1.5px solid var(--line)}.btn-line:hover{border-color:var(--pine);color:var(--pine)}.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:1.1rem clamp(1.2rem,4vw,3rem);transition:background .3s,box-shadow .3s}.nav.scrolled{background:color-mix(in oklch,var(--bg),transparent 8%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--line)}.brand{font-family:var(--display);font-weight:700;font-size:1.35rem;color:var(--ink);text-decoration:none}.brand span{color:var(--pine)}.nav-links{display:flex;align-items:center;gap:1.7rem}.nav-links a{color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s;padding:.5rem 0}.nav-links a:hover{color:var(--pine)}.navcall{color:var(--pine)!important;font-weight:700!important}@media(max-width:760px){.nav-links a:not(.navcall){display:none}}.hero{display:grid;grid-template-columns:1fr;gap:2.4rem;align-items:center;min-height:auto;padding:7rem clamp(1.2rem,4vw,3rem) clamp(3rem,6vh,5rem);max-width:var(--maxw);margin:0 auto}@media(min-width:900px){.hero{grid-template-columns:1.05fr .95fr;gap:clamp(2.5rem,5vw,4.5rem);min-height:100svh}}.hero-copy .kick{margin-bottom:1.2rem}.hero-copy h1{font-size:clamp(2.6rem,5.6vw,4.4rem);margin-bottom:1.3rem}.lede{max-width:46ch;font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--muted);margin-bottom:2rem}.hero-cta{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:1.4rem}.hero-loc{font-size:.85rem;color:var(--muted)}.hero-fig{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px}@media(min-width:900px){.hero-fig{aspect-ratio:auto;height:78vh}}.hero-fig .ph{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(16px);transform:scale(1.1)}.hero-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}section{padding:clamp(4rem,9vh,7rem) clamp(1.2rem,4vw,3rem)}.help{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr;gap:2.4rem;align-items:start}@media(min-width:820px){.help{grid-template-columns:1fr 1fr;gap:clamp(2.5rem,5vw,5rem)}}.help-head h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem}.help-head p{color:var(--muted);max-width:42ch}.cond{list-style:none;display:grid;grid-template-columns:1fr;gap:0}@media(min-width:520px){.cond{grid-template-columns:1fr 1fr}}.cond li{border-top:1px solid var(--line);font-weight:500;color:var(--ink);position:relative;padding:1rem 0 1rem 1.6rem}.cond li:before{content:"";position:absolute;left:0;top:1.45rem;width:7px;height:7px;border-radius:50%;background:var(--clay)}.how{max-width:var(--maxw);margin:0 auto}.how h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:clamp(2rem,4vw,3rem)}.steps{display:grid;grid-template-columns:1fr;gap:1.6rem}@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr);gap:2.2rem}}.step{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:1.9rem}.snum{font-family:var(--display);font-weight:700;font-size:1.4rem;color:var(--pine);display:block;margin-bottom:.7rem}.step h3{font-size:1.35rem;margin-bottom:.5rem}.step p{color:var(--muted);font-size:.98rem}.feature{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr;gap:2.4rem;align-items:center}@media(min-width:880px){.feature{grid-template-columns:1fr 1fr;gap:clamp(2.4rem,5vw,5rem)}}.feat-fig{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px}.feat-fig .ph{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(16px);transform:scale(1.1)}.feat-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feat-copy .kick{margin-bottom:.8rem}.feat-copy h2{font-size:clamp(1.8rem,3.4vw,2.6rem);margin-bottom:1rem}.feat-copy>p{color:var(--muted);margin-bottom:1.4rem}.reviews{background:var(--pine);color:#f5f1ea;margin:0 clamp(.6rem,2.5vw,1.5rem);border-radius:10px}.rev-head{max-width:var(--maxw);margin:0 auto clamp(2rem,4vw,3rem)}.rev-head h2{color:#f8f5ee;font-size:clamp(2rem,4vw,3rem);margin-top:.6rem}.rev-grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:760px){.rev-grid{grid-template-columns:repeat(3,1fr);gap:2.6rem}}.rev{padding-top:1.5rem;border-top:1px solid color-mix(in oklch,oklch(.96 .01 82),transparent 70%)}.rev p{font-size:1.1rem;line-height:1.55;color:#f8f5ee;margin-bottom:1rem}.rev footer{font-size:.84rem;letter-spacing:.05em;text-transform:uppercase;color:#aedbb6;font-weight:600}.visit{max-width:var(--maxw);margin:0 auto;text-align:center}.visit-inner{max-width:680px;margin:0 auto}.visit-inner h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:.8rem}.visit-inner>p{color:var(--muted);max-width:48ch;margin:0 auto 2.2rem}.visit-rows{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:2rem}@media(min-width:680px){.visit-rows{grid-template-columns:repeat(3,1fr)}}.visit-rows div{background:var(--surface);padding:1.3rem 1rem;display:flex;flex-direction:column;gap:.3rem}.visit-rows span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.visit-rows strong{font-family:var(--display);font-weight:600;font-size:1.02rem;color:var(--ink)}.vl{color:var(--pine);text-decoration:none;font-family:var(--display);font-weight:600;font-size:1.05rem}.vl:hover{text-decoration:underline}.visit-form{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;max-width:560px;margin:0 auto}.visit-form input{flex:1 1 200px;min-width:0;padding:.95rem 1.1rem;border:1px solid var(--line);border-radius:999px;font-family:inherit;font-size:1rem;background:var(--surface);color:var(--ink)}.visit-form input:focus{outline:none;border-color:var(--pine)}.book-ok{max-width:520px;margin:1.3rem auto 0;background:color-mix(in oklch,var(--pine),transparent 90%);border:1px solid color-mix(in oklch,var(--pine),transparent 55%);color:var(--ink);border-radius:8px;padding:1.05rem 1.3rem}.fine{font-size:.84rem;color:var(--muted);margin-top:1.2rem}.footer{max-width:var(--maxw);margin:0 auto;padding:2.4rem clamp(1.2rem,4vw,3rem);display:flex;flex-wrap:wrap;gap:.8rem 2rem;justify-content:space-between;align-items:center;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}.footer .brand{font-size:1.1rem}.footer .brand span{color:var(--pine)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform 1s cubic-bezier(.16,1,.3,1)}.reveal.in{opacity:1;transform:none}.reveal-img{opacity:0;transform:scale(1.03);transition:opacity 1s ease,transform 1.2s cubic-bezier(.16,1,.3,1)}.reveal-img.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal,.reveal-img{opacity:1;transform:none;transition:none}}
