:root {
  --forest: #0b0f0d;
  --forest-2: #29312d;
  --ink: #0b0f0d;
  --moss: #4c5a53;
  --sage: #dfe5dd;
  --paper: #f5f5ee;
  --cream: #eceee8;
  --clay: #087a57;
  --lavender: #7a63ff;
  --line: #cfd4ce;
  --muted: #4f5954;
  --warning: #fff2cb;
  --max: 1180px;
  --radius: 1.35rem;
  --shadow: 0 24px 60px rgba(22, 54, 39, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}
img, svg { display: block; max-width: 100%; }
a { color: var(--forest-2); text-underline-offset: .18em; }
a:hover { color: var(--clay); }
button, input, textarea { font: inherit; }
:focus-visible { outline: 3px solid var(--clay); outline-offset: 4px; }
.skip-link { position: fixed; top: .5rem; left: .5rem; z-index: 99; transform: translateY(-160%); background: white; padding: .65rem 1rem; border-radius: .5rem; }
.skip-link:focus { transform: none; }
.wrap { width: min(calc(100% - 2rem), var(--max)); margin-inline: auto; }
.narrow { width: min(calc(100% - 2rem), 760px); margin-inline: auto; }

.site-header { position: sticky; top: 0; z-index: 30; background: rgba(255,253,247,.94); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(20,61,43,.1); }
.nav { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.brand { display: inline-flex; align-items: center; gap: .6rem; color: var(--forest); text-decoration: none; font-weight: 800; letter-spacing: .08em; font-size: .92rem; }
.brand-mark { width: 28px; height: 34px; }
.nav-links { display: flex; align-items: center; gap: 1.4rem; font-size: .9rem; }
.nav-links a { text-decoration: none; color: var(--ink); }
.nav-links a[aria-current="page"] { color: var(--forest); font-weight: 750; }
.menu-button { display: none; border: 1px solid var(--line); background: white; border-radius: 999px; padding: .55rem .8rem; }

.eyebrow { margin: 0 0 .65rem; color: var(--moss); font-size: .75rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
h1, h2, h3 { margin: 0 0 .75rem; line-height: 1.08; letter-spacing: -.025em; }
h1, h2 { font-family: Inter, "Avenir Next", "Helvetica Neue", ui-sans-serif, system-ui, sans-serif; font-weight: 780; }
h1 { font-size: clamp(2.65rem, 7vw, 5.7rem); }
h2 { font-size: clamp(2rem, 4vw, 3.55rem); }
h3 { font-size: 1.2rem; }
p { margin: 0 0 1rem; }
.lede { color: var(--muted); font-size: clamp(1.08rem, 2vw, 1.32rem); max-width: 62ch; }
.micro { font-size: .82rem; color: var(--muted); }
.muted { color: var(--muted); }
.notice { padding: .72rem 1rem; background: var(--warning); border-bottom: 1px solid #eed99e; text-align: center; font-size: .84rem; color: #65420e; }

.hero { padding: clamp(4rem, 9vw, 8rem) 0 4.5rem; overflow: hidden; }
.hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: clamp(2rem, 7vw, 6rem); }
.hero-copy { position: relative; z-index: 2; }
.hero-copy::before { content: ""; position: absolute; width: 170px; height: 170px; border-radius: 50%; background: var(--sage); filter: blur(1px); left: -85px; top: -48px; z-index: -1; opacity: .7; }
.hero-art { position: relative; }
.hero-art::after { content: ""; position: absolute; inset: 10% 8% 0; background: #dce5d4; border-radius: 50% 50% 40% 42%; z-index: -1; }
.actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.7rem; align-items: center; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; border: 1px solid var(--forest); border-radius: 999px; background: var(--forest); color: white; padding: .78rem 1.15rem; min-height: 46px; font-weight: 750; text-decoration: none; }
.button:hover { background: var(--clay); border-color: var(--clay); color: white; }
.button.secondary { background: transparent; color: var(--forest); }
.button.secondary:hover { background: var(--forest); color: white; }
.button.disabled { background: #e7e9e2; color: #5d625e; border-color: #d4d8d0; cursor: not-allowed; }

.section { padding: clamp(4rem, 8vw, 7rem) 0; }
.section.tint { background: var(--cream); }
.section.forest { background: var(--forest); color: white; }
.section.forest .eyebrow, .section.forest .muted, .section.forest .lede { color: #dce5d5; }
.section-head { display: flex; justify-content: space-between; gap: 2rem; align-items: end; margin-bottom: 2.4rem; }
.section-head > * { max-width: 680px; }
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; }
.grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
.card { background: white; border: 1px solid var(--line); border-radius: var(--radius); padding: 1.2rem; box-shadow: 0 10px 30px rgba(25,55,40,.055); }
.card h3 a { color: var(--ink); text-decoration: none; }
.product-card { display: flex; flex-direction: column; overflow: hidden; padding: 0; }
.product-visual { background: #eef0e8; min-height: 300px; display: grid; place-items: center; padding: 1rem; }
.product-card:nth-child(2) .product-visual { background: #f5e8df; }
.product-card:nth-child(3) .product-visual { background: #e9e6f0; }
.product-body { padding: 1.35rem; display: flex; flex: 1; flex-direction: column; }
.product-body .text-link { margin-top: auto; padding-top: .65rem; font-weight: 800; }
.pill { display: inline-flex; align-items: center; border-radius: 999px; background: var(--sage); color: var(--forest); padding: .28rem .65rem; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.fact { background: white; padding: 1.3rem; }
.fact strong { display: block; font-size: 1.45rem; color: var(--forest); }

.product-hero { padding: 3rem 0 4.5rem; }
.product-hero-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(2rem, 7vw, 6rem); }
.product-shot { min-height: 520px; background: var(--cream); border-radius: 2rem; display: grid; place-items: center; padding: 2rem; overflow: hidden; }
.product-meta { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.2rem 0; }
.price { font-size: 1.5rem; font-weight: 800; }
.prelaunch-box { border: 1px solid #dbc57f; border-radius: 1rem; background: var(--warning); padding: 1.1rem; margin: 1.25rem 0; }
.detail-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(2rem, 7vw, 6rem); }
.toc { position: sticky; top: 100px; align-self: start; border-left: 2px solid var(--sage); padding-left: 1rem; }
.toc a { display: block; padding: .3rem 0; text-decoration: none; font-size: .9rem; }
.prose h2 { margin-top: 2.8rem; font-size: clamp(1.8rem, 3.2vw, 2.7rem); }
.prose h3 { margin-top: 1.8rem; }
.prose ul, .prose ol { padding-left: 1.25rem; }
.prose li { margin-bottom: .55rem; }
.prose table { width: 100%; border-collapse: collapse; margin: 1.25rem 0; }
.prose th, .prose td { text-align: left; border-bottom: 1px solid var(--line); padding: .7rem .35rem; vertical-align: top; }
.callout { border-left: 4px solid var(--moss); background: #f1f4ec; border-radius: 0 1rem 1rem 0; padding: 1.1rem 1.25rem; margin: 1.5rem 0; }
.warning { border-left-color: var(--clay); background: #fff0e9; }
.label-preview { background: white; border: 1px solid var(--line); border-radius: 1rem; padding: 1rem; }
.label-preview img { width: 100%; }
.product-story { position: relative; overflow: hidden; background: #102f22; color: white; padding: clamp(4rem, 9vw, 8rem) 0; }
.product-story.clay { background: #5b2f22; }
.product-story.twilight { background: #25263b; }
.story-stage { min-height: 620px; display: grid; grid-template-columns: .78fr 1.22fr; gap: 3rem; align-items: center; }
.story-stage h2 { font-size: clamp(2.6rem, 6vw, 5rem); }
.story-stage .lede { color: rgba(255,255,255,.78); }
.motion-art { position: relative; min-height: 540px; display: grid; place-items: center; }
.motion-art img { width: min(100%, 680px); filter: drop-shadow(0 30px 35px rgba(0,0,0,.22)); }
.ingredient-stack { display: grid; gap: 1rem; margin: 1.5rem 0; }
.ingredient-row { display: grid; grid-template-columns: minmax(130px,.55fr) 1.45fr; gap: 1.5rem; padding: 1.2rem 0; border-top: 1px solid var(--line); }
.ingredient-row strong { color: var(--forest); }
.source-list { font-size: .9rem; }
.source-list li { margin-bottom: .45rem; }
.faq details { border-top: 1px solid var(--line); padding: 1rem 0; }
.faq summary { cursor: pointer; font-weight: 800; }
.faq details p { margin: .7rem 0 0; }

.story-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(2rem, 8vw, 7rem); align-items: center; }
.quote { font-family: Georgia, serif; font-size: clamp(1.7rem, 4vw, 3.15rem); line-height: 1.15; color: var(--forest); }
.steps { counter-reset: step; display: grid; gap: 1rem; }
.step { position: relative; padding: 1.1rem 1.1rem 1.1rem 4.2rem; border: 1px solid var(--line); border-radius: 1rem; background: white; }
.step::before { counter-increment: step; content: counter(step); position: absolute; left: 1rem; top: 1rem; width: 2.2rem; height: 2.2rem; display: grid; place-items: center; border-radius: 50%; background: var(--forest); color: white; font-weight: 800; }

.contact-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 2rem; }
.form { display: grid; gap: 1rem; }
.field { display: grid; gap: .35rem; }
.field label { font-weight: 750; }
.field input, .field textarea { width: 100%; border: 1px solid #b8c0b8; border-radius: .7rem; background: white; padding: .8rem; }
.field textarea { min-height: 150px; resize: vertical; }

.site-footer { background: #102f22; color: #e6eee7; padding: 3.2rem 0 2rem; }
.consent-banner { position: fixed; z-index: 80; left: 1rem; right: 1rem; bottom: 1rem; width: min(calc(100% - 2rem), 720px); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem; border: 1px solid var(--line); border-radius: 1rem; background: rgba(255,253,247,.98); box-shadow: var(--shadow); }
.consent-banner p { margin: 0; font-size: .88rem; }
.consent-banner > div { display: flex; gap: .55rem; flex: 0 0 auto; }
.consent-banner .button { min-height: 40px; padding: .55rem .8rem; }
.footer-grid { display: grid; grid-template-columns: 1.6fr repeat(3, 1fr); gap: 2rem; }
.site-footer h3 { font-size: .82rem; text-transform: uppercase; letter-spacing: .12em; color: #aebead; }
.site-footer a { color: #f4f6f3; text-decoration: none; }
.site-footer ul { list-style: none; margin: 0; padding: 0; }
.site-footer li { margin: .4rem 0; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; margin-top: 2.5rem; padding-top: 1.3rem; border-top: 1px solid rgba(255,255,255,.13); color: #b9c7bd; font-size: .8rem; }

@media (max-width: 820px) {
  .menu-button { display: inline-flex; }
  .nav-links { display: none; position: absolute; left: 1rem; right: 1rem; top: 72px; padding: 1rem; background: white; border: 1px solid var(--line); border-radius: 1rem; box-shadow: var(--shadow); flex-direction: column; align-items: stretch; }
  .nav-links[data-open="true"] { display: flex; }
  .hero-grid, .product-hero-grid, .detail-grid, .story-grid, .contact-grid { grid-template-columns: 1fr; }
  .story-stage { grid-template-columns: 1fr; min-height: auto; }
  .motion-art { min-height: 400px; order: -1; }
  .ingredient-row { grid-template-columns: 1fr; gap: .25rem; }
  .hero-art { order: -1; max-width: 540px; margin: auto; }
  .product-shot { min-height: 400px; }
  .toc { position: static; }
  .grid-3 { grid-template-columns: 1fr; }
  .grid-2 { grid-template-columns: 1fr; }
  .facts { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 520px) {
  .wrap, .narrow { width: min(calc(100% - 1.25rem), var(--max)); }
  h1 { font-size: 2.75rem; }
  .hero { padding-top: 2.5rem; }
  .product-shot { min-height: 330px; padding: 1rem; }
  .section-head, .footer-bottom { align-items: start; flex-direction: column; }
  .footer-grid { grid-template-columns: 1fr; }
  .actions .button { width: 100%; }
  .consent-banner { align-items: stretch; flex-direction: column; }
  .consent-banner > div .button { flex: 1; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

/* 2026 identity system: Rootline / foundation -> practice -> growth */
.brand-lockup { gap: .7rem; letter-spacing: 0; }
.brand-lockup > img { width: 38px; height: 38px; flex: 0 0 auto; }
.brand-words { display: grid; line-height: .82; letter-spacing: -.045em; font-size: .82rem; font-weight: 900; }
.brand-words b { font-weight: 900; }
.brand-words b:last-child { color: #718078; }
.site-header-dark .brand-words b:last-child, .brand-footer .brand-words b:last-child { color: #c7f36b; }

.brand-home { --signal:#c7f36b; --foundation:#0b0f0d; --practice:#f5f5ee; --ground:#29312d; background:var(--foundation); }
.brand-home .notice-dark { background:#c7f36b; border:0; color:#0b0f0d; font:800 .72rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }
.site-header-dark { top:0; background:rgba(11,15,13,.82); border-color:rgba(255,255,255,.1); color:#fff; }
.site-header-dark .brand, .site-header-dark .nav-links a { color:#f5f5ee; }
.menu-button-dark { border-color:rgba(255,255,255,.26); background:transparent; color:#f5f5ee; }

.brand-hero { position:relative; min-height:calc(100svh - 103px); display:grid; align-items:end; overflow:hidden; background:#0b0f0d; color:#f5f5ee; }
.brand-hero-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; animation:hero-breathe 14s ease-in-out infinite alternate; }
.brand-hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(11,15,13,.97) 0%,rgba(11,15,13,.86) 35%,rgba(11,15,13,.18) 68%,rgba(11,15,13,.28) 100%),linear-gradient(0deg,rgba(11,15,13,.88),transparent 42%); }
.brand-hero-copy { position:relative; z-index:2; padding-block:clamp(4rem,9vw,8rem); }
.brand-hero h1 { max-width:11ch; margin:0; font-size:clamp(3.3rem,8.3vw,8rem); line-height:.84; letter-spacing:-.075em; font-weight:900; }
.brand-hero h1 span { color:#a9b0aa; }
.brand-hero-lede { max-width:34ch; margin:2rem 0 0; color:#e1e4df; font-size:clamp(1.05rem,2vw,1.35rem); line-height:1.45; }
.signal-label,.chapter-index { margin:0 0 1.2rem; font:800 .72rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; color:#c7f36b; letter-spacing:.12em; text-transform:uppercase; }
.button-signal { background:#c7f36b; border-color:#c7f36b; color:#0b0f0d; border-radius:.15rem; padding:.9rem 1.2rem; }
.button-signal:hover { background:#f5f5ee; border-color:#f5f5ee; color:#0b0f0d; }
.button-ghost { background:rgba(11,15,13,.35); border-color:rgba(255,255,255,.5); color:#fff; border-radius:.15rem; backdrop-filter:blur(8px); }
.button-ghost:hover { background:#f5f5ee; color:#0b0f0d; border-color:#f5f5ee; }
.brand-art-note { margin:1.1rem 0 0; color:#aeb5b0; font-size:.72rem; max-width:60ch; }
.hero-scroll { position:absolute; right:2rem; bottom:2rem; z-index:3; display:flex; gap:.7rem; align-items:center; color:#f5f5ee; font:700 .72rem/1 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.12em; text-transform:uppercase; text-decoration:none; }
.hero-scroll span { color:#c7f36b; font-size:1.2rem; }

.return-section { background:#f5f5ee; color:#0b0f0d; padding:clamp(6rem,13vw,12rem) 0; }
.return-grid { display:grid; grid-template-columns:.32fr 1.68fr; gap:clamp(2rem,8vw,8rem); }
.return-section .chapter-index { color:#526057; }
.return-tension { max-width:34ch; margin:0 0 1.7rem; color:#59625d; font-size:clamp(1.1rem,2vw,1.4rem); }
.return-section h2 { max-width:10ch; margin:0; font-size:clamp(4.4rem,11vw,10rem); line-height:.78; letter-spacing:-.09em; font-weight:900; }
.return-copy { max-width:51ch; margin:2.5rem 0 0; font-size:clamp(1.05rem,2vw,1.3rem); color:#3f4944; }

.ritual-panel { min-height:100svh; display:grid; grid-template-columns:1fr 1fr; background:#0b0f0d; color:#f5f5ee; }
.ritual-media { min-width:0; overflow:hidden; background:#101513; }
.ritual-media img { width:100%; height:100%; min-height:100svh; object-fit:cover; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.ritual-panel:hover .ritual-media img { transform:scale(1.025); }
.ritual-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(3rem,7vw,7rem); }
.ritual-copy h2 { max-width:10ch; margin:0 0 1.8rem; font-size:clamp(3.2rem,6.8vw,7rem); line-height:.86; letter-spacing:-.075em; font-weight:900; }
.ritual-copy > p:not(.chapter-index):not(.brand-art-note):not(.hold-note) { max-width:42ch; color:#ced3cf; font-size:clamp(1rem,1.5vw,1.2rem); }
.ritual-matcha { background:#063d2e; }
.ritual-matcha .chapter-index,.ritual-matcha .story-link { color:#f3c84b; }
.ritual-creatine { background:#071431; }
.ritual-creatine .chapter-index,.ritual-creatine .story-link { color:#94adff; }
.ritual-magnesium { background:#17142f; }
.ritual-magnesium .chapter-index,.ritual-magnesium .story-link { color:#bcb0ff; }
.fact-strip { margin:2rem 0; display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid rgba(255,255,255,.2); }
.fact-strip div { min-width:0; padding:1.1rem 1rem 1.1rem 0; }
.fact-strip dt { margin-bottom:.45rem; color:#aeb8b1; font:700 .64rem/1.3 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; text-transform:uppercase; }
.fact-strip dd { margin:0; font-size:clamp(.9rem,1.4vw,1.12rem); font-weight:780; overflow-wrap:anywhere; }
.story-link { display:inline-flex; align-items:center; justify-content:space-between; gap:1rem; border-top:1px solid currentColor; padding-top:1rem; font-weight:850; text-decoration:none; }
.story-link span { font-size:1.4rem; }
.hold-note { margin:1.4rem 0 0; padding:1rem; border:1px solid rgba(148,173,255,.35); color:#c9d4f5; font-size:.78rem; }

.proof-section { padding:clamp(6rem,12vw,11rem) 0; background:#f5f5ee; color:#0b0f0d; }
.proof-grid { display:grid; grid-template-columns:.86fr 1.14fr; gap:clamp(3rem,9vw,9rem); }
.proof-section .chapter-index { color:#4c5a53; }
.proof-section h2 { max-width:9ch; font-size:clamp(3.6rem,7vw,7rem); line-height:.87; letter-spacing:-.075em; }
.proof-list article { display:grid; grid-template-columns:3rem 1fr; gap:1rem; padding:1.6rem 0; border-top:1px solid #b9c0bb; }
.proof-list article > span { color:#087a57; font:800 .78rem ui-monospace,SFMono-Regular,Menlo,monospace; }
.proof-list h3 { margin:0 0 .4rem; font-size:clamp(1.35rem,2vw,1.8rem); }
.proof-list p { margin:0; color:#4c5651; }

.learning-section { padding:clamp(6rem,11vw,10rem) 0; background:#d9ddd8; color:#0b0f0d; }
.learning-head { display:grid; grid-template-columns:.5fr 1.1fr .7fr; gap:2rem; align-items:end; }
.learning-head .chapter-index { color:#4c5a53; }
.learning-head h2 { margin:0; font-size:clamp(3.4rem,7vw,7rem); line-height:.85; letter-spacing:-.075em; }
.learning-head p:last-child { color:#4c5651; }
.learning-rail { display:grid; grid-template-columns:repeat(3,1fr); margin-top:4rem; border-top:1px solid #969f99; }
.learning-rail a { min-height:260px; display:flex; flex-direction:column; padding:1.5rem 1.2rem 1.2rem 0; border-right:1px solid #969f99; color:#0b0f0d; text-decoration:none; }
.learning-rail a + a { padding-left:1.2rem; }
.learning-rail span { color:#526057; font:700 .7rem ui-monospace,SFMono-Regular,Menlo,monospace; text-transform:uppercase; letter-spacing:.1em; }
.learning-rail strong { max-width:14ch; margin-top:auto; font-size:clamp(1.5rem,2.8vw,2.45rem); line-height:1; letter-spacing:-.045em; }
.learning-rail em { margin-top:1.3rem; color:#065c42; font-style:normal; font-weight:800; }

.safe-next { padding:clamp(5rem,10vw,9rem) 0; background:#c7f36b; color:#0b0f0d; }
.safe-next-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,8vw,8rem); align-items:end; }
.safe-next .chapter-index { color:#35413b; }
.safe-next h2 { max-width:8ch; font-size:clamp(3.4rem,7vw,7rem); line-height:.84; letter-spacing:-.075em; }
.safe-next p { max-width:46ch; }
.safe-next .button-signal { background:#0b0f0d; border-color:#0b0f0d; color:#f5f5ee; }
.brand-footer { background:#0b0f0d; }
.brand-footer .micro { color:#a9b0aa; max-width:32ch; margin-top:1rem; }

@keyframes hero-breathe { from{transform:scale(1)} to{transform:scale(1.035)} }

@media (max-width: 820px) {
  .site-header-dark .nav-links { background:#0b0f0d; border-color:#35413b; }
  .return-grid,.proof-grid,.learning-head,.safe-next-grid { grid-template-columns:1fr; }
  .ritual-panel { grid-template-columns:1fr; min-height:auto; }
  .ritual-media img { min-height:62svh; max-height:760px; }
  .ritual-creatine .ritual-media { order:-1; }
  .learning-rail { grid-template-columns:1fr; }
  .learning-rail a,.learning-rail a + a { min-height:180px; padding:1.4rem 0; border-right:0; border-bottom:1px solid #969f99; }
  .hero-scroll { display:none; }
}

@media (max-width: 520px) {
  .brand-home .notice-dark { font-size:.62rem; padding:.55rem .8rem; }
  .brand-hero { min-height:calc(100svh - 95px); }
  .brand-hero-image { object-position:59% center; }
  .brand-hero-shade { background:linear-gradient(0deg,rgba(11,15,13,.98) 0%,rgba(11,15,13,.82) 53%,rgba(11,15,13,.2) 100%); }
  .brand-hero-copy { align-self:end; padding-block:3rem; }
  .brand-hero h1 { font-size:clamp(3.25rem,16vw,4.7rem); max-width:9ch; }
  .brand-hero-lede { margin-top:1.25rem; font-size:1rem; }
  .brand-hero .actions { margin-top:1.1rem; }
  .return-section h2 { font-size:4.4rem; }
  .ritual-media img { min-height:58svh; }
  .ritual-copy { padding:3.4rem .7rem 4rem; }
  .ritual-copy h2 { font-size:3.4rem; }
  .fact-strip { grid-template-columns:1fr; }
  .fact-strip div { border-top:1px solid rgba(255,255,255,.12); }
  .proof-section h2,.learning-head h2,.safe-next h2 { font-size:3.6rem; }
}

@media (max-height: 500px) and (orientation: landscape) {
  .brand-home .notice-dark { padding:.3rem .7rem; }
  .brand-home .nav { min-height:56px; }
  .brand-hero { min-height:calc(100svh - 78px); }
  .brand-hero-copy { padding-block:1.4rem; }
  .brand-hero h1 { max-width:13ch; font-size:3.15rem; line-height:.86; }
  .brand-hero-lede { margin-top:.7rem; font-size:.86rem; }
  .brand-hero .actions { margin-top:.8rem; }
  .brand-hero .button { min-height:38px; padding:.55rem .8rem; font-size:.78rem; width:auto; }
  .brand-art-note { margin-top:.55rem; font-size:.62rem; }
  .ritual-panel { grid-template-columns:1fr 1fr; min-height:auto; }
  .ritual-media img { min-height:100svh; max-height:none; }
  .ritual-copy { padding:2rem; }
  .ritual-copy h2 { font-size:2.9rem; }
  .fact-strip { margin:1rem 0; grid-template-columns:repeat(3,1fr); }
}
