:root{
  --paper:#f5f0e6; --paper-2:#ece4d4; --ink:#1d2622; --muted:#55615b;
  --green:#1f3d33; --green-2:#2b5244; --chalk:#f4efe4; --ochre:#c8862b; --ochre-ink:#8a5711;
  --line:rgba(29,38,34,.14);
  --font-display:'Zodiak',Georgia,serif; --font-body:'Satoshi','Inter',system-ui,sans-serif;
  --text-sm:clamp(.875rem,.85rem + .1vw,.94rem); --text-base:clamp(1rem,.97rem + .15vw,1.0625rem);
  --text-lg:clamp(1.15rem,1.05rem + .4vw,1.35rem); --text-xl:clamp(1.5rem,1.2rem + 1vw,2rem);
  --text-2xl:clamp(1.9rem,1.4rem + 2vw,2.9rem); --text-hero:clamp(2.3rem,1.5rem + 3.6vw,4.2rem);
  --radius:14px; --wrap:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:var(--green-2);text-underline-offset:3px}
a:hover{color:var(--ochre-ink)}
:focus-visible{outline:3px solid var(--ochre);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(1.1rem,4vw,2.5rem)}
.skip{position:absolute;left:-999px;top:0;background:var(--green);color:var(--chalk);padding:.6rem 1rem;z-index:100}
.skip:focus{left:1rem}
h1,h2{font-family:var(--font-display);font-weight:500;line-height:1.08;letter-spacing:-.015em;text-wrap:balance}
h1{font-size:var(--text-hero)} h2{font-size:var(--text-2xl);max-width:22ch}
h3{font-size:var(--text-lg);font-weight:700;line-height:1.25}
p{max-width:65ch}
.eyebrow{font-size:var(--text-sm);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ochre-ink);margin-bottom:.9rem}
section{padding:clamp(3.5rem,8vw,6.5rem) 0}

/* header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,240,230,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:baseline;gap:.55rem;text-decoration:none;color:var(--ink)}
.brand-name{font-family:var(--font-display);font-size:1.4rem;font-weight:700}
.brand-tag{font-size:var(--text-sm);color:var(--muted);font-weight:500}
.nav{display:flex;align-items:center;gap:1.6rem}
.nav a{color:var(--ink);text-decoration:none;font-size:var(--text-sm);font-weight:500}
.nav a:hover{color:var(--ochre-ink)}
.nav .nav-cta{background:var(--green);color:var(--chalk);padding:.55rem 1rem;border-radius:999px}
.nav .nav-cta:hover{background:var(--green-2);color:var(--chalk)}
.menu-toggle{display:none;font:inherit;font-weight:700;font-size:var(--text-sm);background:none;border:1px solid var(--line);border-radius:999px;padding:.45rem .9rem;color:var(--ink);cursor:pointer}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.35rem;border-radius:999px;font-weight:700;font-size:var(--text-base);text-decoration:none;border:2px solid transparent;cursor:pointer;font-family:inherit;transition:background .2s,color .2s,transform .2s}
.btn-primary{background:var(--green);color:var(--chalk)}
.btn-primary:hover{background:var(--green-2);color:var(--chalk);transform:translateY(-1px)}
.btn-ghost{border-color:var(--green);color:var(--green)}
.btn-ghost:hover{background:var(--green);color:var(--chalk)}

/* hero */
.hero{padding-top:clamp(2.5rem,6vw,5rem);padding-bottom:clamp(2.5rem,5vw,4rem)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.lede{font-size:var(--text-lg);color:var(--muted);margin:1.4rem 0 2rem;max-width:44ch}
.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}
.hero-photo{position:relative}
.hero-photo img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%;box-shadow:0 30px 60px -30px rgba(31,61,51,.5)}
.hero-photo::before{content:"";position:absolute;inset:auto -14px -14px auto;width:60%;height:55%;background:var(--ochre);border-radius:var(--radius);z-index:-1;opacity:.85}
.proof{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:clamp(2.5rem,5vw,4rem)}
.proof li{background:var(--paper);padding:1.1rem 1.2rem;font-size:var(--text-sm);color:var(--muted)}
.proof strong{display:block;color:var(--ink);font-size:var(--text-base)}

/* audiences */
.audiences{background:var(--paper-2)}
.aud-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem}
.aud{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem 1.6rem;display:flex;flex-direction:column;gap:.8rem}
.aud-label{font-size:var(--text-sm);font-weight:700;color:var(--ochre-ink)}
.aud p{color:var(--muted);font-size:var(--text-base)}
.ticks{list-style:none;display:grid;gap:.55rem;margin-top:.4rem;padding-top:1rem;border-top:1px solid var(--line)}
.ticks li{position:relative;padding-left:1.6rem;font-size:var(--text-sm)}
.ticks li::before{content:"";position:absolute;left:0;top:.45em;width:.85rem;height:.5rem;border-left:2px solid var(--green-2);border-bottom:2px solid var(--green-2);transform:rotate(-45deg)}

/* band */
.band{background:var(--green);color:var(--chalk)}
.band-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,5vw,4rem);align-items:center}
.band-photo img{border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover;width:100%}
.band-quote p{font-family:var(--font-display);font-size:var(--text-xl);line-height:1.3}
.band-quote footer{margin-top:1.2rem;color:#e7b569;font-weight:700}

/* formats */
.fmt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem}
.fmt{border-top:3px solid var(--green);padding:1.6rem 0 0}
.fmt-feature{border-top-color:var(--ochre)}
.fmt-time{font-size:var(--text-sm);font-weight:700;color:var(--ochre-ink);margin-bottom:.4rem}
.fmt h3{font-family:var(--font-display);font-weight:500;font-size:var(--text-xl);margin-bottom:.6rem}
.fmt p:last-child{color:var(--muted)}
.fmt-note{margin-top:2.5rem;padding:1.1rem 1.3rem;background:var(--paper-2);border-radius:var(--radius);font-size:var(--text-sm);color:var(--muted);max-width:none}

/* steps */
.steps{background:var(--paper-2)}
.steps-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,5vw,4rem)}
.step-list{list-style:none;display:grid;gap:1.4rem}
.step-list li{display:flex;gap:1.1rem;align-items:flex-start}
.step-list .n{flex:none;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--green);color:var(--chalk);display:grid;place-items:center;font-family:var(--font-display);font-size:1.2rem}
.step-list p{color:var(--muted)}

/* about */
.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,5vw,4.5rem);align-items:start}
.about-photo img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;object-position:75% 80%;width:100%}
.about-copy h2{margin-bottom:1.4rem}
.about-copy p{margin-bottom:1rem}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.5rem;margin-top:1.8rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.facts dt{font-size:var(--text-sm);font-weight:700;color:var(--ochre-ink)}
.facts dd{font-size:var(--text-sm)}

/* contact */
.contact{background:var(--green);color:var(--chalk)}
.contact a{color:#f0c683}
.contact .eyebrow{color:#e7b569}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,4.5rem)}
.contact-copy p{margin-top:1rem;color:rgba(244,239,228,.85)}
.contact-line{display:flex;flex-wrap:wrap;gap:.2rem .8rem}
.contact-line span{font-size:var(--text-sm);font-weight:700;min-width:5.5rem;color:var(--chalk)}
.contact-line a{overflow-wrap:anywhere}
.form{background:var(--paper);color:var(--ink);border-radius:var(--radius);padding:clamp(1.4rem,3vw,2.2rem);display:grid;gap:1.1rem}
.field{display:grid;gap:.35rem;border:0}
.field label,.field legend{font-weight:700;font-size:var(--text-sm)}
.opt{font-weight:400;color:var(--muted)}
input,textarea{font:inherit;color:var(--ink);background:#fff;border:1.5px solid rgba(29,38,34,.25);border-radius:10px;padding:.7rem .85rem;width:100%}
input:focus,textarea:focus{outline:none;border-color:var(--green-2);box-shadow:0 0 0 3px rgba(200,134,43,.35)}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.35rem}
.chips label{display:inline-flex;align-items:center;gap:.45rem;border:1.5px solid rgba(29,38,34,.25);border-radius:999px;padding:.45rem .9rem;font-weight:500;cursor:pointer;background:#fff}
.chips input{width:auto;accent-color:var(--green)}
.chips label:has(input:checked){border-color:var(--green);background:#e6efe9}
.hp{position:absolute;left:-9999px}
.form .btn{justify-self:start}
.form-status{font-size:var(--text-sm);font-weight:700;min-height:1.2em}
.form-status.err{color:#a3361b}.form-status.ok{color:var(--green-2)}
.form-small{font-size:var(--text-sm);color:var(--muted)}

.site-footer{background:var(--ink);color:rgba(244,239,228,.8);padding:1.6rem 0;font-size:var(--text-sm)}
.site-footer a{color:#f0c683}
.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem}

/* responsive */
@media (max-width:960px){
  .aud-grid,.fmt-grid{grid-template-columns:1fr}
  .proof{grid-template-columns:1fr 1fr}
  .band-grid,.steps-grid,.contact-grid{grid-template-columns:1fr}
}
@media (max-width:820px){
  .menu-toggle{display:inline-block}
  .nav{position:absolute;top:68px;left:0;right:0;background:var(--paper);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1.2rem 1.2rem;border-bottom:1px solid var(--line);display:none}
  .nav.open{display:flex}
  .nav a{padding:.85rem 0;border-bottom:1px solid var(--line);font-size:var(--text-base)}
  .nav .nav-cta{margin-top:.8rem;text-align:center;border-bottom:0}
  .hero-grid,.about-grid{grid-template-columns:1fr}
  .hero-photo{max-width:440px}
  .about-photo{max-width:420px}
}
@media (max-width:480px){
  .proof{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
  .brand-tag{display:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
