:root{
  --forest:#1e3226;
  --forest-deep:#12201a;
  --gold:#b08a4e;
  --gold-soft:#d9c08f;
  --sage:#8a9a7e;
  --ivory:#faf6ee;
  --ivory-deep:#f2ead9;
  --ink:#241f1a;
  --muted:#6b6255;
  --line:#e3d9c4;
  color-scheme: light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ivory:#161310;
    --ivory-deep:#1d1915;
    --ink:#f1ebe0;
    --muted:#b8ac99;
    --line:#3a3229;
    color-scheme: dark;
  }
}
:root[data-theme="dark"]{
  --ivory:#161310;
  --ivory-deep:#1d1915;
  --ink:#f1ebe0;
  --muted:#b8ac99;
  --line:#3a3229;
  color-scheme: dark;
}
*{box-sizing:border-box;}
body{
  margin:0;
  background:var(--ivory);
  color:var(--ink);
  font-family:'Source Sans 3', system-ui, -apple-system, sans-serif;
}
h1,h2,h3,.disp{
  font-family:'Cormorant Garamond', Georgia, serif;
  text-wrap:balance;
  letter-spacing:0.01em;
}
.eyebrow{
  font-family:'Source Sans 3', system-ui, sans-serif;
  text-transform:uppercase;
  letter-spacing:0.16em;
  font-size:0.72rem;
  font-weight:600;
  color:var(--gold);
}
a{color:inherit;}
.wrap{max-width:1120px;margin-inline:auto;padding-inline:24px;}

header.site{
  position:sticky;top:env(safe-area-inset-top,0px);
  background:color-mix(in srgb, var(--ivory) 92%, transparent);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
  z-index:10;
}
.nav{display:flex;align-items:center;justify-content:space-between;padding-block:12px;gap:16px;}
.brand{display:flex;align-items:center;gap:10px;font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;text-decoration:none;}
.brand img{height:38px;width:38px;border-radius:50%;display:block;}
nav.links{display:flex;gap:24px;font-size:0.92rem;}
nav.links a{text-decoration:none;opacity:0.85;}
nav.links a:hover,nav.links a[aria-current="page"]{opacity:1;color:var(--gold);}
.cta-btn{
  background:var(--forest);color:#fff;border:none;border-radius:3px;
  padding:11px 20px;font-size:0.88rem;letter-spacing:0.03em;cursor:pointer;
  text-decoration:none;display:inline-block;
}
.cta-btn:hover{background:var(--gold);}
.cta-ghost{
  border:1px solid var(--forest);color:var(--forest);border-radius:3px;
  padding:10px 19px;font-size:0.88rem;text-decoration:none;display:inline-block;
}
:root[data-theme="dark"] .cta-ghost, @media (prefers-color-scheme:dark){ .cta-ghost{color:var(--ink);border-color:var(--line);} }
.mobile-toggle{display:none;background:none;border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-size:0.85rem;color:var(--ink);}
.mobile-menu{display:none;flex-direction:column;gap:2px;border-top:1px solid var(--line);background:var(--ivory);}
.mobile-menu a{padding:14px 24px;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line);}

.hero{
  display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;
  padding-block:56px 48px;
}
.hero h1{font-size:clamp(2rem,3.6vw,3rem);line-height:1.1;margin:10px 0 18px;color:var(--forest);}
:root[data-theme="dark"] .hero h1, @media (prefers-color-scheme:dark){.hero h1{color:var(--gold-soft);}}
.hero p.lede{font-size:1.04rem;color:var(--muted);max-width:48ch;margin:0 0 26px;}
.hero .actions{display:flex;gap:14px;flex-wrap:wrap;}
.hero-photo{position:relative;border-radius:6px;overflow:hidden;box-shadow:0 20px 50px -20px rgba(20,20,10,0.4);}
.hero-photo img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/4;}

.page-hero{padding-block:48px 32px;max-width:760px;}
.page-hero h1{font-size:clamp(1.9rem,3.4vw,2.7rem);color:var(--forest);margin:8px 0 14px;}
:root[data-theme="dark"] .page-hero h1, @media (prefers-color-scheme:dark){.page-hero h1{color:var(--gold-soft);}}
.page-hero p{color:var(--muted);font-size:1rem;max-width:60ch;}

section{padding-block:48px;border-top:1px solid var(--line);}
.section-head{max-width:640px;margin-bottom:30px;}
.section-head h2{font-size:clamp(1.5rem,2.4vw,2rem);margin:8px 0 10px;color:var(--forest);}
:root[data-theme="dark"] .section-head h2, @media (prefers-color-scheme:dark){.section-head h2{color:var(--gold-soft);}}
.section-head p{color:var(--muted);font-size:0.98rem;margin:0;}

.movement-block{background:var(--forest);color:#f4efe3;border-radius:8px;padding:36px 32px;margin-block:8px 0;}
.movement-block p{color:#d9d2c2;font-size:1.02rem;line-height:1.7;margin:0;max-width:70ch;}
.movement-block strong{color:#fff;}

.tiers{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.tier{
  border:1px solid var(--line);border-radius:6px;padding:22px 20px;background:color-mix(in srgb, var(--ivory) 60%, var(--sage) 12%);
  display:flex;flex-direction:column;gap:10px;
}
:root[data-theme="dark"] .tier, @media (prefers-color-scheme:dark){.tier{background:color-mix(in srgb, var(--ivory) 88%, var(--forest) 12%);}}
.tier img{width:100%;border-radius:4px;aspect-ratio:1/1;object-fit:cover;margin-bottom:6px;}
.tier h3{font-size:1.2rem;margin:0;color:var(--forest);}
:root[data-theme="dark"] .tier h3, @media (prefers-color-scheme:dark){.tier h3{color:var(--gold-soft);}}
.tier .tagline{font-size:0.82rem;color:var(--gold);text-transform:uppercase;letter-spacing:0.06em;}
.tier .desc{font-size:0.9rem;color:var(--muted);flex:1;margin:2px 0 6px;}
.tier .cta-btn{align-self:flex-start;}

.product-block{display:grid;grid-template-columns:0.9fr 1.1fr;gap:40px;align-items:start;margin-bottom:48px;}
.product-block img{width:100%;border-radius:6px;box-shadow:0 16px 40px -18px rgba(20,20,10,0.4);}
.product-block h2{font-size:clamp(1.5rem,2.4vw,2.1rem);color:var(--forest);margin:6px 0 4px;}
:root[data-theme="dark"] .product-block h2, @media (prefers-color-scheme:dark){.product-block h2{color:var(--gold-soft);}}
.product-block .tagline{color:var(--gold);font-size:0.9rem;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:12px;display:block;}
.product-block p{color:var(--ink);line-height:1.7;font-size:0.98rem;}
.product-block .actives{color:var(--muted);font-size:0.92rem;margin:14px 0;}
.product-block details{margin-top:16px;border:1px solid var(--line);border-radius:6px;padding:14px 16px;}
.product-block summary{cursor:pointer;font-weight:600;font-size:0.9rem;color:var(--forest);}
:root[data-theme="dark"] .product-block summary, @media (prefers-color-scheme:dark){.product-block summary{color:var(--gold-soft);}}
table.panel{width:100%;border-collapse:collapse;font-size:0.85rem;margin-top:12px;}
table.panel th,table.panel td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);}
table.panel th{color:var(--muted);font-weight:600;font-size:0.78rem;text-transform:uppercase;letter-spacing:0.04em;}

.coming-soon-strip{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.coming-soon-strip span{
  border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:0.85rem;color:var(--muted);
  background:var(--ivory-deep);
}
.coming-soon-note{font-size:0.85rem;color:var(--muted);margin-top:12px;}

.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;}
.founder-quote{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.25rem;line-height:1.55;color:var(--forest);margin:0 0 16px;}
:root[data-theme="dark"] .founder-quote, @media (prefers-color-scheme:dark){.founder-quote{color:var(--gold-soft);}}
.badge-note{
  display:inline-block;background:color-mix(in srgb, var(--sage) 30%, transparent);
  border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:0.76rem;color:var(--muted);
  margin-bottom:16px;
}

.qf-field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;max-width:440px;}
.qf-field label{font-size:0.85rem;font-weight:600;color:var(--ink);}
.qf-field label i{font-weight:400;color:var(--muted);}
.qf-field input[type=text],.qf-field input[type=email],.qf-field textarea{
  font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:var(--ivory);color:var(--ink);
}
.qf-field input:focus,.qf-field textarea:focus{outline:2px solid var(--gold);outline-offset:1px;}
.qf-err{color:#b3261e;font-size:0.8rem;min-height:1.1em;display:block;}
.qf-choice{max-width:520px;}
.qf-choice legend{font-size:0.9rem;font-weight:600;color:var(--ink);margin-bottom:10px;padding:0;}
.qf-choice label{display:flex;align-items:center;gap:8px;font-size:0.92rem;font-weight:400;margin-bottom:8px;cursor:pointer;}
.qf-choice input{accent-color:var(--gold);width:16px;height:16px;}
.qf-status{margin-top:14px;font-size:0.92rem;min-height:1.2em;}
.qf-status.ok{color:var(--forest);font-weight:600;}
:root[data-theme="dark"] .qf-status.ok, @media (prefers-color-scheme:dark){.qf-status.ok{color:var(--gold-soft);}}
.qf-status.bad{color:#b3261e;}

footer{padding-block:28px;text-align:center;font-size:0.82rem;color:var(--muted);}
footer p{margin:6px 0;}
.disclaimer{font-size:0.74rem;color:var(--muted);max-width:70ch;margin:10px auto 0;line-height:1.5;}

@media (max-width:820px){
  .hero{grid-template-columns:1fr;padding-block:36px 28px;}
  nav.links{display:none;}
  .mobile-toggle{display:block;}
  .mobile-menu:not([hidden]){display:flex;}
  .tiers,.product-block,.split{grid-template-columns:1fr;}
  .product-block img{max-width:340px;}
}
