:root {
  --ink: #0b0b0d; --surface: #131315; --paper: #f3f1ed; --gold: #c4a052;
  --gold-bright: var(--gold); --gold-rgb: 196,160,82; --muted: #b0aeaa; --line: rgba(255,255,255,.13);
  --shell: min(1180px, calc(100% - 64px)); --radius: 28px;
}
* { box-sizing: border-box; }
html { background: var(--ink); scroll-behavior: smooth; }
html.lenis,html.lenis body { height: auto; }
html.lenis { scroll-behavior: auto !important; }
.lenis.lenis-stopped { overflow: hidden; }
.lenis [data-lenis-prevent] { overscroll-behavior: contain; }
body { margin: 0; color: var(--paper); background: var(--ink); font: 400 1rem/1.75 "DM Sans", sans-serif; overflow-x: clip; }
img { max-width: 100%; display: block; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
h1,h2,h3,h4,p,figure,blockquote { margin: 0; }
h2 { font: 500 clamp(2.5rem,4.5vw,4.5rem)/1.1 "Manrope",sans-serif; letter-spacing: -.05em; text-wrap: balance; }
h2 em, .statement em, .levels-note em, .sending-bottom em, .foundation-quote em { font-family: "Playfair Display",serif; font-weight: 500; color: var(--gold-bright); letter-spacing: -.035em; }
h3,h4 { font-family: "Manrope",sans-serif; font-weight: 500; line-height: 1.2; letter-spacing: -.035em; }
p { text-wrap: pretty; }
p + p { margin-top: 20px; }
.section-shell { width: var(--shell); margin-inline: auto; }
.section-space { padding-block: clamp(76px,8vw,120px); }
section[id],main[id] { scroll-margin-top: 92px; }
.eyebrow { margin-bottom: 24px; font: 600 .875rem/1.5 "Manrope",sans-serif; text-transform: uppercase; letter-spacing: .14em; color: var(--gold); }
.lead { max-width: 680px; color: #bdb9b2; font-size: clamp(1.06rem,1.5vw,1.2rem); line-height: 1.8; }
.muted { color: var(--muted); }
.display-heading { max-width: 1100px; font-size: clamp(3rem,6.6vw,6.35rem); }
.section-heading { max-width: 900px; }
.section-heading > .lead { margin-top: 30px; }
.index { color: var(--gold); font: 500 .875rem/1.5 "Manrope",sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.skip-link { position: fixed; z-index: 300; top: -90px; left: 20px; padding: 12px 18px; color: #111; background: var(--gold-bright); border-radius: 8px; }
.skip-link:focus { top: 20px; }
:focus-visible { outline: 2px solid var(--gold-bright); outline-offset: 6px; }
.site-header { height: 86px; padding-inline: 32px; position: fixed; inset: 0 0 auto; z-index: 100; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 28px; background: linear-gradient(#0b0b0dcc,transparent); transition: background .3s,height .3s; }
.site-header.scrolled { height: 70px; background: #0b0b0de8; backdrop-filter: blur(16px); border-bottom: 1px solid var(--line); }
.brand { width: 94px; }
.brand img,.site-footer img { object-fit: contain; mix-blend-mode: screen; }
.site-header nav { grid-column: 2; display: flex; gap: 28px; font-size: .875rem; color: #d2cec6; }
.site-header nav a { padding-block: 12px; }
.site-header nav a:hover,.text-link:hover { color: var(--gold-bright); }
.nav-cta { grid-column: 3; justify-self: end; padding: 11px 18px; border: 1px solid rgba(var(--gold-rgb),.5); border-radius: 999px; font-size: .875rem; line-height: 1.4; }
.nav-cta span { margin-left: 8px; color: var(--gold-bright); }
.button { display: inline-flex; justify-content: center; align-items: center; gap: 22px; min-height: 58px; max-width: 100%; padding: 17px 28px; border-radius: 999px; border: 1px solid transparent; font: 600 .94rem/1.5 "Manrope",sans-serif; transition: transform .25s,box-shadow .25s; text-align: center; }
.button-primary { color: var(--ink); background: var(--gold); box-shadow: 0 14px 42px rgba(var(--gold-rgb),.15); }
.button:hover { transform: translateY(-3px); box-shadow: 0 18px 50px rgba(var(--gold-rgb),.25); }
.text-link { display: inline-flex; align-items: center; gap: 28px; font-size: .94rem; padding-block: 12px; white-space: nowrap; }
.text-link span { color: var(--gold-bright); font-size: 1.4rem; }
/* One continuous scroll scene. The document remains in normal flow. */
.hero { position: relative; background: var(--ink); }
.hero-stage { position: relative; min-height: 680px; height: 100svh; overflow: clip; isolation: isolate; display: flex; align-items: center; }
.motion-ready .hero { height: 155svh; }
.motion-ready .hero-stage { position: sticky; top: 0; }
.hero-media { position: absolute; inset: 0; z-index: -2; transform-origin: center; background: var(--ink); -webkit-mask-image: linear-gradient(#000 55%,transparent 100%); mask-image: linear-gradient(#000 55%,transparent 100%); }
.hero-video { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; filter: saturate(.65) brightness(.65); pointer-events: none; }
.hero-media::before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg,#0b0b0d33,#0b0b0d18 30%,#0b0b0d60 72%,var(--ink)),linear-gradient(90deg,#0b0b0d55,transparent 50%,#0b0b0d55); }
.hero-media::after { content: ""; position: absolute; inset: 62% -24px -24px; z-index: 2; backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); -webkit-mask-image: linear-gradient(transparent,#000 75%); mask-image: linear-gradient(transparent,#000 75%); pointer-events: none; }
.hero-rule { position: absolute; inset: 110px 32px auto; height: 1px; background: #ffffff20; }
.hero-content { position: relative; width: 100%; padding: 135px 4vw 125px; text-align: center; }
.hero-eyebrow { margin: 0 auto -6px; font-size: .625rem; letter-spacing: .26em; color: var(--paper); }
.hero-title { position: relative; margin: 0; font: 700 clamp(3rem,7.6vw,8rem)/1.06 "Manrope",sans-serif; letter-spacing: -.055em; word-spacing: .035em; transform-origin: center; }
.hero-title-line { position: relative; display: block; width: fit-content; margin-inline: auto; white-space: nowrap; }
.hero-accent { font-family: "Playfair Display",serif; font-size: 1em; font-weight: 700; color: var(--gold); letter-spacing: -.04em; }
.hero-caption { position: absolute; bottom: 38px; inset-inline: 4vw; display: flex; align-items: center; gap: 32px; color: #b6b1a8; font-size: .875rem; }
.hero-caption p,.hero-caption a { font: 500 .875rem/1.5 "Manrope",sans-serif; }
.hero-caption p { color: #e3dcd1; }
.hero-caption a { margin-left: auto; }
.hero-caption a { padding: 10px 0; }
.hero-caption a span { margin-left: 18px; color: var(--gold); }
.opening { position: relative; z-index: 2; padding-top: clamp(60px,7svh,84px); padding-bottom: 68px; }
.motion-ready .opening { margin-top: -55svh; }
.opening-bottom { display: flex; align-items: flex-end; justify-content: space-between; gap: 50px; margin-top: 48px; }
.video-section { width: min(1600px,calc(100% - 48px)); margin: 0 auto 76px; }
.experience-stage { position: relative; aspect-ratio: 16/9; background: var(--ink); overflow: hidden; border-radius: 0; isolation: isolate; transition: aspect-ratio .6s cubic-bezier(.22,1,.36,1); }
.experience-stage::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none; background: linear-gradient(180deg,var(--ink),transparent 12%,transparent 85%,var(--ink)),linear-gradient(90deg,var(--ink),transparent 5%,transparent 95%,var(--ink)); transition: opacity .6s; }
.experience-stage.is-playing::after { background: linear-gradient(180deg,var(--ink),transparent 9%),linear-gradient(90deg,var(--ink),transparent 3%,transparent 97%,var(--ink)); }
.experience-video { display: block; width: 100%; height: 100%; object-fit: contain; }
.experience-overlay { position: absolute; inset: 0 0 55px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: clamp(22px,3vw,48px); padding: 5vw; text-align: center; background: linear-gradient(#0b0b0d33,#0b0b0d99); transition: opacity .6s ease,visibility .6s; pointer-events: none; }
.experience-stage.is-enhanced .experience-overlay { inset: 0; }
.experience-copy h2 { max-width: 980px; font-size: clamp(2rem,4.6vw,4.8rem); line-height: 1.13; }
.experience-copy .eyebrow { margin-bottom: 24px; color: var(--paper); }
.experience-play { width: clamp(72px,7.4vw,110px); height: clamp(72px,7.4vw,110px); flex: 0 0 auto; display: grid; place-items: center; border-radius: 50%; border: 1px solid #ffffff66; color: white; background: #ffffff12; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); box-shadow: inset 0 1px 1px #ffffff33,0 12px 40px #0003; transition: transform .6s ease,background .6s ease; pointer-events: auto; }
.experience-play[hidden] { display: none; }
.experience-play svg { width: 32px; height: 32px; fill: currentColor; margin-left: -3px; }
.experience-play:hover { transform: scale(1.08); background: #ffffff22; }
.experience-play[aria-busy="true"] { opacity: .65; }
.experience-stage.is-playing .experience-overlay { opacity: 0; visibility: hidden; }
.video-status { position: absolute; bottom: 16px; left: 20px; right: 20px; color: var(--paper); text-align: center; font-size: .875rem; }
.video-status:empty { display: none; }
.diagnosis { background: #111113; border-block: 1px solid var(--line); }
.diagnosis-intro { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; margin: 40px 0 55px; color: var(--muted); max-width: 1040px; }
.diagnosis-intro p + p { margin-top: 0; }
.diagnosis-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; perspective: 1400px; }
.diagnosis-card { padding: 30px 26px 36px; border: 1px solid var(--line); border-top-color: rgba(var(--gold-rgb),.55); border-radius: 18px; background: #1b1b1e; box-shadow: 0 20px 38px #0003; transform-origin: left center; backface-visibility: hidden; }
.diagnosis-card h3 { font-size: 1.6rem; margin: 36px 0 18px; }
.diagnosis-card p { color: var(--muted); font-size: 1rem; }
.diagnosis-close { max-width: 900px; margin: 96px auto 0; text-align: center; }
.statement { font: 500 clamp(2rem,3.7vw,3.7rem)/1.22 "Manrope",sans-serif; letter-spacing: -.045em; }
.diagnosis-close > p:last-child { margin-top: 28px; }
.journey { background: #0d0d0f; }
.journey.section-space { padding-bottom: clamp(56px,6vw,88px); }
.journey-heading { display: grid; grid-template-columns: 1.2fr .8fr; gap: 30px 85px; margin-bottom: 85px; }
.journey-heading > .eyebrow { grid-column: 1/-1; margin-bottom: 0; }
.journey-intro { color: var(--muted); align-self: end; }
.purpose { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; padding-top: 60px; border-top: 1px solid var(--line); margin-bottom: 75px; }
.purpose h2 { font-size: clamp(2.2rem,4vw,4rem); }
.purpose > p { color: var(--muted); font-size: 1.15rem; }
.stack-track { display: grid; gap: 16svh; padding-bottom: 5svh; isolation: isolate; }
.stack-step { position: sticky; top: calc(88px + var(--stack-index) * 22px); z-index: calc(1 + var(--stack-index)); }
.stack-card { position: relative; min-height: 420px; padding: 85px 64px 60px; display: grid; grid-template-columns: 140px minmax(0,1fr); gap: 64px; align-items: center; border: 1px solid #ffffff20; border-radius: 30px; overflow: hidden; box-shadow: 0 -12px 32px #0003,0 32px 65px #0007; transform-origin: center top; }
.card-awaken,.card-strengthen,.card-position,.card-manifest { background: var(--paper); color: var(--ink); border-color: #d5d3ce; }
.card-index { position: absolute; left: 38px; top: 23px; font: 600 .875rem/1.4 "Manrope",sans-serif; text-transform: uppercase; letter-spacing: .13em; color: #55544f; }
.card-copy { position: relative; z-index: 1; }
.card-copy h3 { font-size: clamp(2.5rem,5.6vw,5.5rem); font-weight: 700; letter-spacing: -.06em; }
.card-copy p { font-size: 1.2rem; line-height: 1.7; max-width: 660px; margin-top: 24px; color: #4b4a46; }
.card-word { position: absolute; bottom: -.2em; right: -.01em; font: 600 clamp(4rem,12vw,11rem)/1 "Manrope",sans-serif; letter-spacing: -.07em; opacity: .04; pointer-events: none; }
.card-symbol { width: 126px; height: 126px; display: grid; place-items: center; background: var(--ink); color: var(--gold); border-radius: 50%; border: 1px solid #353536; box-shadow: 0 16px 28px #0002; }
.card-symbol svg { width: 62px; height: 62px; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: square; stroke-linejoin: miter; }
.levels { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 70px; align-items: center; }
.levels.section-space { padding-top: clamp(56px,6vw,88px); }
.levels-intro { margin-top: 26px; color: var(--muted); }
.levels-clarifications { padding: 0; margin: 30px 0 0; list-style: none; }
.levels-clarifications li { padding-block: 16px; border-top: 1px solid var(--line); font: 500 clamp(1.1rem,1.5vw,1.35rem)/1.5 "Manrope",sans-serif; letter-spacing: -.025em; }
.levels-clarifications li:last-child { border-bottom: 1px solid var(--line); }
.seven-unity { --unity-glow:.25; position: relative; width: min(100%,460px); aspect-ratio: 1; margin-inline: auto; isolation: isolate; }
.seven-unity::before { content:""; position:absolute; inset:10%; z-index:-1; border-radius:50%; background:radial-gradient(circle,rgba(var(--gold-rgb),.2),rgba(var(--gold-rgb),.06) 42%,transparent 72%); opacity:var(--unity-glow); transform:scale(calc(.9 + var(--unity-glow)*.12)); filter:blur(14px); }
.seven-circles { display: block; width: 100%; height: 100%; transform-origin: center; filter:drop-shadow(0 0 10px rgba(var(--gold-rgb),.2)); }
.seven-circles circle { fill: rgba(var(--gold-rgb),.07); stroke: rgba(var(--gold-rgb),.8); stroke-width: 1.3; }
.seven-circles .seven-center { fill: rgba(var(--gold-rgb),.18); }
.levels-body { grid-column: 1/-1; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 70px; }
.levels-integration { font: 500 clamp(1.45rem,2.3vw,2.1rem)/1.35 "Manrope",sans-serif; letter-spacing: -.035em; }
.levels-body p + p { margin: 0; }
.levels h2 { font-size: clamp(3.2rem,6vw,6rem); }
.life-motion { position: relative; margin-top: 20px; }
.flow-rail { position: absolute; top: 31px; bottom: 31px; left: 4px; width: 1px; background: var(--line); }
.flow-progress { position: absolute; inset: 0; background: var(--gold); transform-origin: top; box-shadow: 0 0 12px rgba(var(--gold-rgb),.45); }
.life-flow { position: relative; display: grid; gap: 18px; list-style: none; padding: 0; margin: 0; }
.life-flow li { position: relative; display: grid; grid-template-columns: 58px minmax(0,1fr); align-items: center; gap: 16px; min-height: 62px; padding-left: 30px; }
.life-flow li::after { content: ""; position: absolute; left: 0; top: calc(50% - 4px); width: 9px; height: 9px; border-radius: 50%; background: rgba(var(--gold-rgb),var(--node-fill,1)); border: 1px solid var(--gold); box-shadow: 0 0 0 7px var(--ink); }
.flow-number { display: block; font: 500 2.1rem/1 "Manrope",sans-serif; letter-spacing: -.06em; color: var(--gold); }
.life-flow h3 { font-size: clamp(1.45rem,2.5vw,2.4rem); font-weight: 500; }
.levels-note { font: 500 clamp(1.65rem,2.8vw,2.75rem)/1.4 "Manrope",sans-serif; letter-spacing: -.035em; }
.sending { background: var(--paper); color: var(--ink); overflow: clip; }
.sending h2 { max-width: 1000px; }
.sending .eyebrow { color: var(--ink); }
.sending h2 em,.sending-bottom em { color: var(--ink); text-decoration: underline; text-decoration-color: var(--gold); text-decoration-thickness: 2px; text-underline-offset: .16em; }
.sending-intro { margin-top: 40px; max-width: 620px; color: #4b4a46; }
.spheres { display: flex; flex-wrap: wrap; list-style: none; margin: 64px 0; padding: 0; gap: 24px; }
.spheres li { display: flex; align-items: center; gap: 24px; white-space: nowrap; font: 600 clamp(1.6rem,3.4vw,3.4rem)/1.3 "Manrope",sans-serif; letter-spacing: -.045em; }
.spheres li::after { content: ""; width: 9px; height: 9px; flex-shrink: 0; border-radius: 50%; background: var(--gold); }
.sending-progress { display: none; }
.sending.is-horizontal { padding-block: 0; overflow: visible; }
.sending.is-horizontal .sending-viewport { position: relative; height: calc(100svh - 70px); overflow: hidden; }
.sending.is-horizontal .sending-track { width: max-content; height: 100%; margin: 0; padding: 42px max(32px,calc((100vw - 1180px)/2)); display: flex; align-items: center; gap: 8vw; }
.sending.is-horizontal .sending-lead { flex: 0 0 auto; width: min(78vw,1040px); }
.sending.is-horizontal .spheres { flex: 0 0 auto; flex-wrap: nowrap; margin: 0; gap: 8vw; }
.sending.is-horizontal .spheres li { gap: 8vw; }
.sending.is-horizontal .sending-bottom { flex: 0 0 auto; width: min(88vw,1180px); }
.sending.is-horizontal .sending-progress { display: block; position: absolute; bottom: 22px; left: max(32px,calc((100vw - 1180px)/2)); right: max(32px,calc((100vw - 1180px)/2)); height: 1px; background: #0b0b0d30; }
.sending-progress span { display: block; height: 100%; background: var(--gold); transform-origin: left; }
.sending-bottom { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr); align-items: center; gap: clamp(48px,6vw,100px); padding-top: 45px; border-top: 1px solid #0b0b0d30; }
.sending-bottom > span { white-space: nowrap; font: 500 clamp(3rem,6.6vw,6.35rem)/1.06 "Manrope",sans-serif; letter-spacing: -.055em; }
.sending-bottom > p { align-self: center; max-width: 470px; color: #4b4a46; }
.outcomes-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 45px 50px; margin-top: 65px; perspective: 1400px; }
.outcomes-grid article { --accent-scale: 1; position: relative; padding: 28px 22px 32px; border-top: 1px solid var(--line); background: linear-gradient(#ffffff04,transparent); }
.outcomes-grid article::before { content: ""; position: absolute; inset: -1px 0 auto; height: 1px; background: var(--gold); transform: scaleX(var(--accent-scale)); transform-origin: left; }
.outcomes-grid .index { display: inline-block; font-size: 1.4rem; }
.outcomes-grid h3 { font-size: 1.5rem; margin: 20px 0 16px; }
.outcomes-grid p { color: var(--muted); }
.audience { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; padding-block: 75px; border-block: 1px solid var(--line); }
.audience-copy > p:last-child { color: var(--muted); margin-top: 28px; }
.audience-list { list-style: none; margin: 0; padding: 0; align-self: center; }
.audience-list li { padding: 14px 16px; border-bottom: 1px solid var(--line); border-left: 2px solid transparent; font: 500 1.15rem/1.5 "Manrope",sans-serif; transition: color .4s,background .4s,padding .4s,border-color .4s; }
.audience-list li:hover,.audience-list li:focus-visible { color: var(--gold); padding-left: 28px; background: rgba(var(--gold-rgb),.07); border-left-color: var(--gold); }
.formats { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; }
.formats-head > p:last-child { margin-top: 28px; color: var(--muted); }
.format-item { display: grid; grid-template-columns: 45px 1fr; padding: 30px 0; border-top: 1px solid var(--line); gap: 15px; }
.format-item > span { color: var(--gold); font-size: .875rem; }
.format-item h3 { font-size: 1.8rem; }
.format-item p { margin-top: 10px; color: var(--muted); }
.format-note { border-left: 1px solid var(--gold); padding-left: 22px; margin-top: 18px; font-size: .94rem; color: var(--muted); }
.honor { position: relative; isolation: isolate; overflow: clip; background: var(--paper); color: var(--ink); text-align: center; }
.honor::before { content: ""; position: absolute; width: min(76vw,1100px); aspect-ratio: 1; left: 50%; top: -720px; transform: translateX(-50%); z-index: -1; border: 1px solid rgba(var(--gold-rgb),.16); border-radius: 50%; box-shadow: 0 0 0 65px rgba(var(--gold-rgb),.025),0 0 0 130px rgba(var(--gold-rgb),.018); }
.honor-inner { display: flex; flex-direction: column; align-items: center; gap: 28px; }
.honor-head { position: relative; width: 100%; padding-block: 36px 56px; }
.honor-heading-motion { transform-origin: center; }
.honor .eyebrow { color: var(--ink); margin-bottom: 26px; }
.honor-title { max-width: 1100px; margin-inline: auto; color: #a77922; font: 800 clamp(3.4rem,7.5vw,6.5rem)/1.05 "Manrope",sans-serif; letter-spacing: -.065em; text-wrap: balance; }
.honor-title span { white-space: nowrap; }
.honor-body { width: min(100%,960px); min-width: 0; }
.honor-copy { display: grid; justify-items: center; gap: 26px; }
.honor-copy p { max-width: 760px; margin: 0; color: #4b4a46; }
.honor-copy strong { color: var(--ink); font-weight: 700; }
.honor-copy .honor-lead { max-width: 870px; margin-bottom: 8px; color: var(--ink); font: 700 clamp(1.4rem,2.35vw,2.1rem)/1.4 "Manrope",sans-serif; letter-spacing: -.035em; }
.honor-lead strong { font-weight: inherit; }
.honor-verses { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px; margin-top: 48px; }
.honor-verse { position: relative; min-height: 290px; margin: 0; padding: 34px 38px; display: grid; grid-template-rows: auto 1fr auto; justify-items: center; align-items: center; gap: 24px; overflow: hidden; border: 1px solid rgba(var(--gold-rgb),.14); border-radius: 26px; background: var(--ink); color: var(--paper); box-shadow: 0 18px 38px rgba(11,11,13,.13); }
.honor-verse::after { content: ""; position: absolute; width: 220px; height: 220px; left: 50%; bottom: -160px; transform: translateX(-50%); border: 1px solid rgba(var(--gold-rgb),.27); border-radius: 50%; box-shadow: 0 0 0 30px rgba(var(--gold-rgb),.025); }
.honor-verse-index { position: relative; z-index: 1; color: var(--gold); font: 600 .75rem/1 "Manrope",sans-serif; letter-spacing: .18em; }
.honor-verse p { position: relative; z-index: 1; max-width: 380px; font: 500 clamp(1.25rem,1.75vw,1.65rem)/1.45 "Manrope",sans-serif; letter-spacing: -.025em; }
.honor-verse cite { position: relative; z-index: 1; color: var(--gold-bright); font: 600 .78rem/1.2 "Manrope",sans-serif; font-style: normal; letter-spacing: .13em; text-transform: uppercase; }
.honor-closing { display: grid; justify-items: center; gap: 18px; max-width: 850px; margin: 56px auto 0; padding-top: 32px; border-top: 1px solid rgba(11,11,13,.2); }
.honor-closing p { margin: 0; }
.honor-closing p:first-child { font: 700 clamp(1.25rem,2vw,1.8rem)/1.35 "Manrope",sans-serif; letter-spacing: -.03em; }
.honor-closing p:last-child { max-width: 660px; color: #4b4a46; font: italic 500 clamp(1.3rem,2vw,1.85rem)/1.4 "Playfair Display",serif; }
.foundation { --foundation-image-opacity:.414; --foundation-image-shift:0; --foundation-image-blur:0; position: relative; background: #111113; border-block: 1px solid var(--line); overflow: hidden; }
.foundation::before { content:""; position:absolute; inset:0 30% 0 0; background:url("assets/fundamento-biblico.jpg") 3vw center/auto 100% no-repeat; filter:grayscale(1) contrast(1.32) brightness(.62) blur(calc(var(--foundation-image-blur) * 1px)); opacity:var(--foundation-image-opacity); transform:translate3d(calc(var(--foundation-image-shift) * 1%),0,0); transform-origin:left center; -webkit-mask-image:radial-gradient(ellipse 92% 105% at 38% 58%,#000 0 48%,rgba(0,0,0,.96) 62%,rgba(0,0,0,.72) 73%,rgba(0,0,0,.36) 84%,transparent 100%); mask-image:radial-gradient(ellipse 92% 105% at 38% 58%,#000 0 48%,rgba(0,0,0,.96) 62%,rgba(0,0,0,.72) 73%,rgba(0,0,0,.36) 84%,transparent 100%); }
.foundation::after { content:""; position:absolute; inset:0; z-index:0; pointer-events:none; background:linear-gradient(90deg,transparent 0 58%,rgba(17,17,19,.08) 61%,rgba(17,17,19,.26) 64%,rgba(17,17,19,.58) 67%,rgba(17,17,19,.88) 70%,#111113 73%),linear-gradient(90deg,#111113 0 5%,rgba(17,17,19,.84) 8%,rgba(17,17,19,.4) 12%,transparent 16%),radial-gradient(ellipse 22% 82% at 0 28%,#111113 0 28%,rgba(17,17,19,.97) 45%,rgba(17,17,19,.68) 64%,rgba(17,17,19,.24) 82%,transparent 100%),linear-gradient(112deg,transparent 0 34%,rgba(17,17,19,.06) 43%,rgba(17,17,19,.18) 51%,rgba(17,17,19,.42) 60%,rgba(17,17,19,.72) 68%,rgba(17,17,19,.92) 75%,#111113 82%); }
.foundation-inner { position:relative; z-index:1; display:grid; grid-template-columns:.9fr 1.1fr; gap:50px; align-items:center; }
.foundation-quote { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height:500px; padding:55px 0; }
.foundation-quote::after { content:""; position:absolute; inset:10% -10% -8% -25vw; z-index:-1; background:radial-gradient(ellipse 68% 62% at 48% 70%,rgba(17,17,19,.34),transparent 82%); }
.foundation-quote blockquote { max-width:440px; font:500 clamp(3rem,4.5vw,4.8rem)/1.06 "Manrope",sans-serif; letter-spacing:-.055em; }
.foundation-copy h2 { font-size: clamp(2rem,3.3vw,3.2rem); margin-bottom: 30px; }
.foundation-copy > p:not(.eyebrow) { color: var(--muted); }
.impact-transition { padding: 95px max(32px,calc((100% - 1180px)/2)); overflow: clip; background: #0e0e10; border-bottom: 1px solid rgba(var(--gold-rgb),.2); }
.impact-transition p { font: 500 clamp(2.7rem,5.5vw,5.5rem)/1.15 "Manrope",sans-serif; letter-spacing: -.05em; }
.impact-transition em { display: block; font: italic 500 1em/1.2 "Playfair Display",serif; color: var(--gold-bright); margin-top: .1em; }
.about { display: grid; grid-template-columns: .82fr 1.18fr; gap: 95px; align-items: start; }
.about-image { position: sticky; top: 110px; }
.about-image img { width: 100%; height: auto; aspect-ratio: 3/4; object-fit: cover; object-position: 50% 30%; border-radius: 220px 220px 25px 25px; }
.about-copy h2 { font-size: clamp(3.7rem,6vw,6.5rem); line-height:.84; margin-bottom: 34px; }
.about-copy > p:not(.eyebrow) { color: var(--muted); }
.about-copy .about-roles { color: var(--gold) !important; font-size: .94rem; }
.about-copy cite { color: #e4ddcf; font-style: normal; }
.invitation { text-align: center; }
.invitation h2 { margin-inline: auto; }
.invitation > .lead { margin: 38px auto 30px; max-width: 750px; }
.invitation-note { color: #a7a39a; max-width: 640px; margin: 26px auto 0; font-size: .875rem; }
.process { position:relative; margin-top: 82px; text-align: left; padding-top: 40px; border-top: 1px solid var(--line); }
.process > h3 { font-size: 1.7rem; }
.process-line { position:absolute; top:106px; left:0; right:0; height:1px; background:var(--line); }
.process-line span { display:block; width:100%; height:100%; background:var(--gold); transform-origin:left; box-shadow:0 0 10px rgba(var(--gold-rgb),.35); }
.process ol { list-style: none; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 25px; margin: 35px 0 0; padding: 0; }
.process li { --process-focus:1; position:relative; padding-top:24px; opacity:calc(.35 + var(--process-focus)*.65); transform:translateY(calc((1 - var(--process-focus))*18px)); }
.process li::before { content:""; position:absolute; top:-4px; left:0; width:9px; height:9px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 calc(3px + var(--process-focus)*4px) #0b0b0d,0 0 calc(var(--process-focus)*18px) rgba(var(--gold-rgb),.8); }
.process li > span { font: 500 1.75rem/1 "Playfair Display",serif; color: var(--gold); }
.process h4 { font-size: 1.15rem; margin: 22px 0 14px; }
.process p { color: var(--muted); font-size: .94rem; }
.faq { display: grid; grid-template-columns: .7fr 1.3fr; gap: 90px; border-top: 1px solid var(--line); }
.faq-head { align-self: start; position: sticky; top: 115px; }
.faq h2 { font-size: clamp(2.2rem,3.5vw,3.5rem); }
.faq-list { border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 78px; padding: 22px 0; font: 500 1.02rem/1.55 "Manrope",sans-serif; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary:hover { color: var(--gold-bright); }
.faq summary span { color: var(--gold); font-size: 1.5rem; flex: 0 0 auto; transition: transform .25s; }
.faq details[open] summary span { transform: rotate(45deg); }
.faq details p { margin: 0 45px 28px 0; color: var(--muted); }
.closing { text-align: center; background: #111113; border-top: 1px solid rgba(var(--gold-rgb),.2); }
.closing h2 { max-width: 980px; margin: 0 auto; font-size: clamp(2.4rem,4.8vw,4.8rem); }
.closing h2 em { display: inline; }
.closing-copy { max-width: 710px; margin: 40px auto 0; color: var(--muted); }
.closing-signature { margin: 35px auto; color: var(--gold); font: italic 500 1.3rem/1.6 "Playfair Display",serif; }
.closing-meta { margin: 25px auto 0; max-width: 600px; font-size: .875rem; color: var(--muted); }
.site-footer { display: grid; grid-template-columns: 1fr auto 1fr; min-height: 150px; align-items: center; gap: 30px; font-size: .875rem; color: #a8a196; }
.site-footer a { justify-self: end; padding: 10px 0; }
.application-dialog { width: min(920px,calc(100% - 32px)); max-height: calc(100svh - 32px); padding: 64px 56px 40px; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; border-radius: 26px; border: 1px solid rgba(var(--gold-rgb),.4); background: #141416; color: var(--paper); box-shadow: 0 45px 120px #000b; }
.application-dialog::backdrop { background: #000b; backdrop-filter: blur(8px); }
.application-dialog[open] { animation: dialog-in .35s ease both; }
.application-dialog h2 { font-size: clamp(2.25rem,5vw,3.5rem); margin-bottom: 16px; }
.dialog-close { position: absolute; right: 18px; top: 18px; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: #fff; font-size: 1.5rem; }
.application-intro { max-width: 700px; }
.application-intro > p:last-child,.step-support,.application-result > p,.application-success > p { color: var(--muted); }
.application-progress { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; list-style: none; padding: 0; margin: 38px 0 42px; }
.application-progress li { position: relative; display: grid; gap: 7px; padding-top: 16px; border-top: 1px solid var(--line); color: #77736d; }
.application-progress li::before { content: ""; position: absolute; top: -1px; left: 0; width: 0; height: 1px; background: var(--gold); transition: width .3s ease; }
.application-progress li.is-active,.application-progress li.is-complete { color: var(--paper); }
.application-progress li.is-active::before,.application-progress li.is-complete::before { width: 100%; }
.application-progress span { font: 600 .75rem/1 Manrope,sans-serif; color: var(--gold); }
.application-progress small { font: 500 .75rem/1.3 Manrope,sans-serif; }
.application-form fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.application-step legend { display: flex; align-items: center; gap: 16px; padding: 0; margin-bottom: 12px; font: 500 clamp(1.6rem,3vw,2.35rem)/1.15 Manrope,sans-serif; }
.application-step legend span { color: var(--gold); font-size: .85rem; letter-spacing: .12em; }
.step-support { margin-bottom: 28px; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.field { display: grid; gap: 9px; }
.field-wide { grid-column: 1/-1; }
.field > span { font: 600 .78rem/1.4 Manrope,sans-serif; letter-spacing: .04em; color: #d8d3ca; }
.field input,.field select,.field textarea { width: 100%; box-sizing: border-box; border: 1px solid var(--line); border-radius: 12px; background: #1b1b1e; color: var(--paper); padding: 14px 15px; font: inherit; outline: 0; }
.field input:focus,.field select:focus,.field textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(var(--gold-rgb),.12); }
.field textarea { resize: vertical; }
.date-guidance { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: start; padding: 16px 18px; border-left: 2px solid var(--gold); background: rgba(var(--gold-rgb),.065); }
.date-guidance > span { color: var(--gold); font: 600 .72rem/1.4 Manrope,sans-serif; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.date-guidance p { margin: 0; color: var(--muted); font-size: .875rem; line-height: 1.55; }
.field-hint { color: var(--muted); font-size: .76rem; line-height: 1.45; }
.date-field { position: relative; align-content: start; }
.date-field input { cursor: pointer; caret-color: transparent; }
.odce-calendar { position: relative; z-index: 8; margin-top: 2px; padding: 14px; border: 1px solid rgba(var(--gold-rgb),.28); border-radius: 15px; background: #101012; box-shadow: 0 24px 60px #0008; }
.odce-calendar[hidden] { display: none; }
.odce-calendar-head { display: grid; grid-template-columns: 36px 1fr 36px; align-items: center; gap: 8px; margin-bottom: 12px; }
.odce-calendar-head strong { text-align: center; color: var(--paper); font: 600 .84rem/1.4 Manrope,sans-serif; }
.odce-calendar-head button { width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%; color: var(--paper); background: transparent; }
.odce-calendar-head button:hover,.odce-calendar-head button:focus-visible { border-color: var(--gold); color: var(--gold); }
.odce-calendar-weekdays,.odce-calendar-days { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 4px; }
.odce-calendar-weekdays { margin-bottom: 4px; }
.odce-calendar-weekdays span { padding: 5px 0; text-align: center; color: #827d75; font-size: .62rem; text-transform: uppercase; }
.odce-calendar-days > span,.odce-calendar-days button { aspect-ratio: 1; min-width: 0; }
.odce-calendar-days button { position: relative; display: grid; place-items: center; border: 1px solid transparent; border-radius: 9px; color: #ddd8cf; background: transparent; font: 500 .76rem/1 Manrope,sans-serif; }
.odce-calendar-days button:not(:disabled):hover,.odce-calendar-days button:not(:disabled):focus-visible { border-color: rgba(var(--gold-rgb),.65); color: var(--paper); background: rgba(var(--gold-rgb),.08); }
.odce-calendar-days button.is-selected { color: #111113; background: var(--gold); font-weight: 700; }
.odce-calendar-days button.is-today:not(.is-selected) { border-color: rgba(var(--gold-rgb),.42); }
.odce-calendar-days button.is-blocked { color: #625e58; cursor: not-allowed; }
.odce-calendar-days button.is-blocked small { position: absolute; inset: 50% auto auto 50%; color: #a96e68; font-size: 1.1rem; font-weight: 400; transform: translate(-50%,-50%); opacity: .72; }
.odce-calendar-days button.is-blocked span { opacity: .25; }
.odce-calendar-legend { display: flex; align-items: center; gap: 7px; margin: 12px 0 0; padding-top: 10px; border-top: 1px solid var(--line); color: var(--muted); font-size: .68rem; line-height: 1.35; }
.odce-calendar-legend span { color: #b77c75; font-size: 1rem; }
.choice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.choice-grid label,.confirmation-list label { display: flex; align-items: flex-start; gap: 12px; min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: #1b1b1e; }
.choice-grid input { width: auto; flex: 0 0 auto; margin-top: 4px; accent-color: var(--gold); }
.choice-grid label > span { min-width: 0; flex: 1 1 auto; overflow-wrap: anywhere; line-height: 1.45; }
.confirmation-list input { flex: 0 0 auto; margin-top: 4px; accent-color: var(--gold); }
.confirmation-list { display: grid; gap: 10px; }
.dialog-note { border-top: 1px solid var(--line); padding-top: 22px; font-size: .875rem; }
.application-actions { display: flex; align-items: center; gap: 12px; margin-top: 34px; padding-top: 24px; border-top: 1px solid var(--line); }
.application-step-count { margin-right: auto; color: var(--muted); font-size: .85rem; }
.button-secondary { color: var(--paper); background: transparent; border-color: var(--line); }
.application-result h3 { margin-bottom: 14px; font-size: 2rem; }
.application-result pre { white-space: pre-wrap; word-break: break-word; margin: 24px 0; padding: 20px; border: 1px solid var(--line); border-radius: 14px; background: #0f0f11; color: #d7d2ca; font: 400 .9rem/1.65 "DM Sans",sans-serif; }
.application-delivery-steps { list-style: none; margin: 24px 0; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.application-delivery-steps li { display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: start; padding: 16px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(255,255,255,.035); }
.application-delivery-steps li>span { color: var(--gold); font: 600 .72rem/1 var(--font-sans); letter-spacing: .12em; padding-top: 4px; }
.application-delivery-steps p { margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.55; }
.application-delivery-steps strong { display: block; margin-bottom: 3px; color: var(--paper); font-weight: 600; }
.application-result-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.application-result-actions .button[disabled] { cursor: wait; opacity: .72; }
.copy-status { min-height: 1.5em; margin-top: 12px; color: var(--gold); }
.application-privacy-note { margin: 16px 0 0; color: var(--muted); font-size: .76rem; line-height: 1.55; max-width: 68ch; }
.application-success { max-width: 720px; margin-inline: auto; padding-block: clamp(18px,4vw,50px); text-align: center; }
.application-success h3 { margin: 14px 0 12px; font-size: clamp(2.5rem,6vw,4.4rem); line-height: 1; }
.application-success > p:not(.eyebrow,.application-privacy-note) { max-width: 610px; margin: 0 auto; font-size: 1.05rem; line-height: 1.65; }
.application-success-mark { display: grid; place-items: center; width: 88px; height: 88px; margin: 0 auto 28px; border: 1px solid rgba(var(--gold-rgb),.48); border-radius: 50%; color: var(--gold); background: radial-gradient(circle,rgba(var(--gold-rgb),.16),transparent 68%); box-shadow: 0 0 60px rgba(var(--gold-rgb),.16); }
.application-success-mark svg { width: 48px; height: 48px; fill: none; stroke: currentColor; stroke-width: 3.5; stroke-linecap: round; stroke-linejoin: round; }
.application-success-panel { display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: start; margin: 34px 0 28px; padding: 20px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(255,255,255,.035); text-align: left; }
.application-success-panel > span { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; color: #111113; background: var(--gold); font-weight: 700; }
.application-success-panel p { margin: 0; color: var(--muted); line-height: 1.55; }
.application-success-panel strong { display: block; margin-bottom: 3px; color: var(--paper); font-weight: 600; }
.application-success .application-result-actions { justify-content: center; }
.application-success .application-privacy-note { margin-inline: auto; }
.text-button { margin-top: 8px; padding: 12px 0; border: 0; background: none; color: var(--gold); text-decoration: underline; }
.application-dialog [hidden] { display: none !important; }
@keyframes dialog-in { from { opacity: 0; transform: translateY(18px) scale(.985); } }
body:has(dialog[open]) { overflow: hidden; }
.motion-word { display: inline-block; white-space: nowrap; }
.motion-char { display: inline-block; }
.stack-track.is-static .stack-step { position: relative; top: auto; }
.stack-track.is-static { gap: 26px; padding-bottom: 60px; }
@media (min-width: 1600px) {
  .hero-content { max-width: 1600px; margin-inline: auto; }
}
@media (max-width: 1050px) {
  :root { --shell: calc(100% - 48px); }
  .site-header { padding-inline: 24px; }
  .site-header nav { gap: 18px; }
  .hero-caption a { margin-left: auto; }
  .diagnosis-grid { grid-template-columns: 1fr 1fr; gap: 22px; }
  .diagnosis-card { padding: 30px; }
  .journey-heading,.levels,.audience,.formats,.foundation-inner,.about,.faq { gap: 40px; }
  .stack-card { gap: 40px; padding-inline: 40px; grid-template-columns: 120px minmax(0,1fr); }
  .outcomes-grid { gap: 35px; }
  .process ol { grid-template-columns: repeat(3,1fr); gap: 35px; }
  .foundation-quote { padding-block:32px; }
  .purpose { gap: 40px; }
}
@media (max-width: 760px) {
  :root { --shell: calc(100% - 36px); }
  .section-space { padding-block: 64px; }
  h2 { font-size: clamp(2rem,7.6vw,3.6rem); }
  .site-header { height: 72px; padding-inline: 18px; position: absolute; display: flex; justify-content: flex-end; }
  .site-header nav { display: none; }
  .nav-cta { padding: 10px 14px; font-size: .8125rem; }
  .hero-stage { min-height: 600px; }
  .hero-content { padding: 130px 5vw 115px; }
  .hero-title { font-size: 11.8vw; line-height: 1.08; letter-spacing: -.05em; }
  .hero-title-line { width: 100%; white-space: normal; }
  .hero-accent { white-space: nowrap; }
  .hero-eyebrow { margin-bottom: 0; }
  .hero-rule { inset: 95px 18px auto; }
  .hero-caption { bottom: 26px; inset-inline: 5vw; gap: 10px; align-items: center; }
  .hero-caption p,.hero-caption a { font-size: .8125rem; }
  .hero-caption a { max-width: 125px; }
  .hero-caption a span { margin-left: 6px; }
  .display-heading { font-size: clamp(2.4rem,9vw,4rem); }
  .opening { padding-bottom: 46px; }
  .opening-bottom { display: block; margin-top: 30px; }
  .opening-bottom .text-link { margin-top: 20px; }
  .video-section { width: calc(100% - 24px); margin-top: 0; margin-bottom: 42px; }
  .experience-stage { aspect-ratio: 4/5; }
  .experience-stage.is-playing { aspect-ratio: 16/9; }
  .experience-video { object-fit: cover; }
  .experience-stage.is-playing .experience-video { object-fit: contain; }
  .experience-overlay { padding: 32px 24px; gap: 28px; }
  .experience-copy h2 { font-size: clamp(1.7rem,6.4vw,3rem); }
  .experience-copy .eyebrow { font-size: .75rem; margin-bottom: 20px; }
  .experience-play { width: 72px; height: 72px; }
  .diagnosis-intro { grid-template-columns: 1fr; gap: 22px; margin-top: 30px; }
  .diagnosis-card h3 { font-size: 1.4rem; margin-top: 25px; }
  .diagnosis-grid { grid-template-columns: 1fr; gap: 18px; }
  .diagnosis-card { padding: 28px; }
  .diagnosis-close { margin-top: 65px; text-align: left; }
  .statement { font-size: clamp(1.8rem,7vw,3rem); }
  .journey-heading { grid-template-columns: 1fr; gap: 25px; margin-bottom: 50px; }
  .journey-heading h2 { font-size: clamp(2rem,7.1vw,3.3rem); }
  .purpose { grid-template-columns: 1fr; gap: 24px; padding-top: 40px; margin-bottom: 50px; }
  .purpose > p { font-size: 1.06rem; }
  .stack-step { top: calc(80px + var(--stack-index) * 16px); }
  .stack-track { gap: 12svh; padding-bottom: 12px; }
  .stack-card { min-height: 415px; padding: 66px 28px 38px; grid-template-columns: 1fr; gap: 28px; align-content: center; border-radius: 25px; }
  .card-index { left: 26px; top: 22px; font-size: .8125rem; }
  .card-symbol { width: 76px; height: 76px; }
  .card-symbol svg { width: 39px; height: 39px; }
  .card-copy h3 { font-size: clamp(2rem,8.4vw,3.5rem); }
  .card-copy p { font-size: 1rem; margin-top: 15px; line-height: 1.65; }
  .levels,.audience,.formats,.foundation-inner,.about,.faq { grid-template-columns: 1fr; gap: 38px; }
  .journey.section-space { padding-bottom: 48px; }
  .levels.section-space { padding-top: 48px; padding-bottom: 36px; }
  .levels h2 { font-size: clamp(3rem,11vw,5rem); }
  .levels-body { grid-template-columns: 1fr; gap: 24px; }
  .seven-unity { width: min(100%,390px); }
  .life-flow li { grid-template-columns: 48px minmax(0,1fr); gap: 12px; }
  .levels-note { text-align: left; font-size: 1.75rem; }
  .sending-intro { margin-top: 28px; }
  .spheres { margin-block: 40px; }
  .spheres,.spheres li { gap: 20px; }
  .spheres li { font-size: 2rem; }
  .sending.is-horizontal .sending-track { height: 100%; padding: 0 18px; gap: 48px; align-items: center; }
  .sending.is-horizontal .sending-viewport { height: 100svh; }
  .sending.is-horizontal .sending-lead { transform: translateY(32px); }
  .sending.is-horizontal .sending-lead,.sending.is-horizontal .sending-bottom { width: calc(100vw - 36px); }
  .sending.is-horizontal .spheres,.sending.is-horizontal .spheres li { gap: 48px; }
  .sending.is-horizontal .sending-progress { left: 18px; right: 18px; }
  .sending-bottom { grid-template-columns: 1fr; gap: 25px; padding-top: 30px; }
  .sending-bottom > span { font-size: clamp(2.4rem,9vw,4rem); }
  .sending.section-space:not(.is-horizontal) { padding-block: 42px; }
  .outcomes.section-space { padding-top: 40px; }
  .outcomes-grid { grid-template-columns: 1fr 1fr; gap: 24px 16px; margin-top: 40px; }
  .outcomes-grid article { padding: 25px 14px; }
  .outcomes-grid h3 { font-size: 1.25rem; }
  .honor-inner { gap: 12px; }
  .honor-head { padding-block: 20px 44px; }
  .honor .eyebrow { font-size: .7rem; letter-spacing: .12em; margin-bottom: 20px; }
  .honor-title { font-size: clamp(2.7rem,12.8vw,5.2rem); line-height: 1.04; letter-spacing: -.06em; }
  .honor-title span { display: block; }
  .honor-copy { gap: 22px; }
  .honor-verses { grid-template-columns: 1fr; gap: 16px; margin-top: 36px; }
  .honor-verse { min-height: 250px; padding: 30px 26px; border-radius: 22px; }
  .honor-closing { gap: 18px; margin-top: 40px; padding-top: 28px; }
  .foundation { border-top-color: transparent; }
  .foundation::before { inset:0 0 auto; height:480px; background-position:48% 58%; background-size:cover; opacity:var(--foundation-image-opacity); -webkit-mask-image:radial-gradient(ellipse 96% 98% at 45% 48%,#000 0 56%,rgba(0,0,0,.82) 70%,rgba(0,0,0,.38) 84%,transparent 100%); mask-image:radial-gradient(ellipse 96% 98% at 45% 48%,#000 0 56%,rgba(0,0,0,.82) 70%,rgba(0,0,0,.38) 84%,transparent 100%); }
  .foundation::after { display:block; background:linear-gradient(180deg,transparent 0 380px,rgba(17,17,19,.18) 410px,rgba(17,17,19,.58) 450px,rgba(17,17,19,.9) 485px,#111113 535px,#111113 100%),linear-gradient(180deg,#111113 0,rgba(17,17,19,.72) 5%,rgba(17,17,19,.18) 13%,transparent 22%,transparent 100%); }
  .foundation-quote { width:auto; min-height:390px; padding:32px 0; }
  .foundation-quote::after { inset:24% -18px 0; background:linear-gradient(180deg,transparent 15%,rgba(17,17,19,.72) 100%); }
  .foundation-quote blockquote { max-width:none; font-size: clamp(2.5rem,10vw,4rem); }
  .foundation-copy h2 { font-size: 2.5rem; }
  .impact-transition { padding: 75px 18px; }
  .impact-transition p { font-size: clamp(2.2rem,8.5vw,4rem); }
  .about-image { position: static; width: min(85%,430px); }
  .about-copy h2 { font-size: 4.5rem; }
  .invitation { text-align: left; }
  .invitation > .lead { margin-block: 28px; }
  .invitation-note { margin-top: 24px; }
  .process { margin-top: 58px; }
  .process-line { top:106px; bottom:0; left:4px; right:auto; width:1px; height:auto; }
  .process-line span { transform-origin:top; }
  .process ol { grid-template-columns: 1fr; gap: 26px; }
  .process li { padding:10px 0 10px 34px; }
  .process li::before { top:18px; left:0; }
  .faq-head { position: static; }
  .closing { text-align: left; }
  .closing h2 { font-size: clamp(2.2rem,8vw,3.8rem); }
  .closing-copy { margin-top: 30px; }
  .site-footer { grid-template-columns: 1fr auto; min-height: 120px; }
  .site-footer p { display: none; }
  .application-dialog { padding: 64px 20px 26px; border-radius: 20px; }
  .application-dialog h2 { font-size: 2.3rem; }
  .application-progress { gap: 8px; margin: 30px 0; }
  .application-progress small { display: none; }
  .form-grid,.choice-grid { grid-template-columns: 1fr; }
  .field-wide { grid-column: auto; }
  .date-guidance { grid-template-columns: 1fr; gap: 7px; }
  .date-guidance > span { white-space: normal; }
  .odce-calendar { padding: 12px; }
  .odce-calendar-days button { font-size: .72rem; }
  .application-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .application-step-count { grid-column: 1/-1; grid-row: 1; margin: 0; }
  .application-actions .button { width: 100%; }
  [data-application-next],[data-application-review] { grid-column: 2; }
  .application-result-actions { display: grid; }
  .application-delivery-steps { grid-template-columns: 1fr; }
}
@media (max-width: 400px) {
  .diagnosis-grid,.outcomes-grid { grid-template-columns: 1fr; }
  .diagnosis-card { border-bottom: 1px solid var(--line); }
  .diagnosis-card h3 { margin-top: 18px; }
  .button { width: 100%; padding-inline: 20px; gap: 14px; }
  .life-flow li { grid-template-columns: 42px minmax(0,1fr); }
}
@media (max-height: 620px) {
  .hero-stage { min-height: 600px; height: auto; }
  .motion-ready .hero { height: auto; }
  .motion-ready .hero-stage { position: relative; }
  .motion-ready .opening { margin-top: 0; }
  .hero-title { font-size: clamp(2.5rem,7vw,6rem); }
  .hero-content { padding-block: 155px 100px; }
  .stack-step { position: relative; top: auto; }
  .stack-track { gap: 24px; padding-bottom: 50px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after { animation: none !important; transition: none !important; }
  .motion-ready .hero { height: auto; }
  .motion-ready .hero-stage { position: relative; }
  .motion-ready .opening { margin-top: 0; }
  .hero-title,.hero-media,.motion-char,.reveal { transform: none !important; filter: none !important; }
  .hero-title,.motion-char,.reveal { opacity: 1 !important; }
  .spheres { flex-wrap: wrap !important; width: 100%; }
  .diagnosis-card,.diagnosis-close,.outcome-card,.life-flow li { opacity: 1 !important; transform: none !important; }
  .stack-step { position: relative; top: auto; }
  .stack-track { gap: 24px; padding-bottom: 50px; }
}
