/* Saga Verso — typography defined in the supplied Notion identity reference.
   Headings: Anton. Subtitles: Poppins Bold. Body: Poppins Light. */
@font-face{font-family:"Anton";src:url("assets/anton-regular.woff") format("woff");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Poppins";src:url("assets/poppins-light.woff") format("woff");font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:"Poppins";src:url("assets/poppins-bold.woff") format("woff");font-style:normal;font-weight:700;font-display:swap}
:root{--black:#030303;--surface:#0c0c0b;--surface-2:#121211;--yellow:#ffcc19;--gold:#e4b900;--orange:#ff8a00;--white:#fff;--muted:#b9b9b4;--line:#292923;--display:"Anton",Impact,"Arial Narrow",sans-serif;--body:"Poppins",Arial,Helvetica,system-ui,sans-serif;--header-height:88px;--wrap:1264px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 24px)}
body{margin:0;background:var(--black);color:var(--white);font-family:var(--body);font-weight:300;font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
button,input{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
figure,p,h1,h2,h3,ul,ol{margin:0}
ul,ol{padding:0;list-style:none}
button{border:0}
[hidden]{display:none!important}
::selection{background:var(--yellow);color:var(--black)}
:focus-visible{outline:3px solid var(--yellow);outline-offset:6px;border-radius:2px}
.method :focus-visible,.offer-price :focus-visible{outline-color:var(--black)}
.pattern-demo :focus-visible{outline-color:var(--yellow)}
.wrap{width:min(var(--wrap),calc(100% - 112px));margin-inline:auto}
.section{padding:110px 0}
.text-yellow{color:var(--yellow)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:200;left:20px;top:12px;transform:translateY(-180%);padding:12px 20px;background:var(--yellow);color:var(--black);font-weight:700}
.skip-link:focus{transform:translateY(0)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.02;letter-spacing:-.018em;overflow-wrap:break-word}
h1{font-size:clamp(4.75rem,8.5vw,7.875rem);line-height:.99;letter-spacing:-.027em}
h2{font-size:clamp(3rem,5.35vw,4.875rem)}
h3{font-size:2.25rem}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:0.8125rem;font-weight:700;letter-spacing:.13em;line-height:1.5;color:var(--yellow);margin-bottom:26px}
.eyebrow-divider{color:#6e6e65;margin:0 2px}
.short-line{display:block;width:30px;height:2px;background:currentColor}
.section-heading{margin-bottom:46px}
.split-heading{display:grid;grid-template-columns:1.45fr 1fr;align-items:end;gap:64px}
.section-intro{font-size:1.125rem;color:var(--muted);max-width:410px;padding-bottom:5px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:24px;min-height:58px;padding:16px 24px;border:1px solid var(--yellow);border-radius:4px;background:var(--yellow);color:var(--black);font-family:var(--body);font-size:0.9375rem;line-height:1.35;font-weight:700;text-align:center;transition:background .2s,transform .2s,box-shadow .2s}
.button>span{font-size:1.375rem;line-height:1;font-weight:400}
.button:hover:not(:disabled){background:#ffdb58;transform:translateY(-2px);box-shadow:0 5px 22px #ffcc191b}
.button:active:not(:disabled){transform:translateY(0)}
.button-small{font-size:0.875rem;min-height:44px;padding:11px 17px;gap:18px}
.text-link{display:inline-flex;align-items:center;gap:16px;min-height:44px;font-size:0.9375rem;font-weight:700;line-height:1.5;text-decoration:underline;text-decoration-color:#62625b;text-underline-offset:6px;transition:color .2s,text-decoration-color .2s}
.text-link>span{font-size:1.25rem;font-weight:400;text-decoration:none}
.text-link:hover{color:var(--yellow);text-decoration-color:var(--yellow)}

/* Navigation */
.site-header{position:sticky;top:0;z-index:100;background:#030303f5;border-bottom:1px solid #ffffff13}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:var(--header-height)}
.brand{display:flex;flex-direction:column;flex-shrink:0;line-height:1}
.brand-wordmark{font-family:var(--display);font-size:1.8125rem;letter-spacing:-.03em;white-space:nowrap}
.brand-wordmark>span{color:var(--yellow)}
.brand-period{margin-left:1px}
.brand-descriptor{margin-top:7px;font-size:0.75rem;letter-spacing:.2em;color:#c1c1b8;font-weight:700}
.desktop-nav{display:flex;align-items:center;gap:28px}
.desktop-nav a{font-size:0.875rem;color:#c6c6c0;line-height:44px;white-space:nowrap;transition:color .2s}
.desktop-nav a:hover{color:var(--yellow)}
.menu-toggle{display:none;width:46px;height:46px;border:1px solid var(--line);border-radius:4px;background:transparent;padding:12px}
.menu-toggle span{height:2px;width:20px;display:block;background:white;margin:5px 0;transition:transform .2s}
.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--black);border-bottom:1px solid var(--line);padding:16px 28px 26px;max-height:calc(100svh - var(--header-height));overflow-y:auto;box-shadow:0 25px 60px #000b}
.mobile-nav a{display:flex;align-items:center;justify-content:space-between;min-height:55px;padding:10px 0;border-bottom:1px solid #ffffff15;font-size:1.125rem}
.mobile-nav a span{color:var(--gold);font-size:0.8125rem}

/* A cinematic entrance, built around the supplied portal artwork. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--black)}
.hero-art{position:absolute;z-index:-2;width:87%;max-width:1250px;top:46%;right:-15%;transform:translateY(-50%);pointer-events:none}
.hero-art img{width:100%;height:auto}
.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#030303 0%,#030303ed 18%,#030303bc 35%,#03030318 63%,#03030300 85%),linear-gradient(0deg,#030303 0%,transparent 20%,transparent 85%,#030303aa 100%);pointer-events:none}
.hero-inner{position:relative;min-height:730px;padding-top:91px;padding-bottom:84px}
.hero-content{max-width:730px}
.hero .eyebrow{margin-bottom:27px}
.hero-promise{font-family:var(--body);font-weight:700;font-size:2.125rem;line-height:1.2;margin-top:24px;letter-spacing:-.015em}
.hero-description{max-width:505px;font-size:1.125rem;line-height:1.7;color:#c5c5bc;margin-top:20px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:31px}
.hero-detail{font-size:0.8125rem;color:#a8a89f;margin-top:17px}
.hero-scroll{display:flex;align-items:center;gap:13px;position:absolute;bottom:26px;right:0;font-size:0.75rem;letter-spacing:.14em;color:#b8b8ac}
.hero-scroll>span{display:grid;place-items:center;width:30px;height:34px;border:1px solid #6f653f;border-radius:18px;color:var(--yellow);font-size:1.25rem}
.manifesto-strip{background:var(--yellow);color:var(--black);padding:19px 0}
.strip-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;font-size:0.8125rem;line-height:1.5;letter-spacing:.035em}
.strip-inner>span{white-space:nowrap}
.strip-star{font-size:1.3125rem!important}

/* The available languages stay separate from the learning tools. */
.languages{padding-top:100px}
.language-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.language-card{display:grid;grid-template-columns:43% 57%;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:7px;overflow:hidden;transition:border-color .25s,transform .25s}
.language-card:hover{border-color:#806a20;transform:translateY(-3px)}
.language-art{width:100%;aspect-ratio:1;object-fit:contain;background:#030303}
.language-info{padding:30px 25px 29px 25px}
.availability{display:inline-block;color:var(--yellow);font-size:0.75rem;letter-spacing:.085em;line-height:1.45;font-weight:700;margin-bottom:16px}
.language-info h3{font-size:3.0625rem;margin-bottom:15px}
.language-info p{font-size:1rem;line-height:1.65;color:var(--muted)}
.language-info .text-link{font-size:0.875rem;margin-top:19px;gap:10px}
.multiverse-art{margin-top:38px}
.multiverse-art picture{display:block;overflow:hidden;border-radius:5px;background:var(--black)}
.multiverse-art img{width:100%;height:auto}
.multiverse-art figcaption{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:17px 0;font-size:0.8125rem;color:#a0a098}
.multiverse-art figcaption>span{font-size:0.75rem;letter-spacing:.1em;color:#c6c6bc;align-self:center}

/* Show the method in use, with one light surface for reading rhythm. */
.method{background:var(--yellow);color:var(--black);padding-block:100px}
.method .eyebrow{color:var(--black)}
.method .eyebrow-divider{color:#6b5513}
.method-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center}
.method-copy h2{font-size:clamp(3.375rem,5.45vw,4.9375rem);margin-bottom:26px}
.method-title-line{border-bottom:4px solid var(--black);padding-bottom:3px}
.method-copy>p{font-size:1.125rem;line-height:1.65;max-width:505px;margin-top:17px}
.method-copy .text-link{margin-top:25px;text-decoration-color:#6b5513}
.method-copy .text-link:hover{color:var(--black);text-decoration-color:var(--black)}
.pattern-demo{align-self:center;background:var(--black);color:white;border-radius:8px;overflow:hidden;box-shadow:12px 12px 0 #03030315}
.demo-topline{display:flex;align-items:center;justify-content:space-between;padding:17px 27px;border-bottom:1px solid var(--line);font-size:0.75rem;letter-spacing:.08em;color:#c4c4b8;font-weight:700;gap:16px}
.demo-topline>span:last-child{color:var(--yellow);font-size:1.5rem}
.demo-tabs{display:flex;gap:6px;margin:28px 30px 0;background:#151513;padding:5px;border:1px solid #33332b;border-radius:5px;width:fit-content}
.demo-tabs button{font-size:0.875rem;line-height:1.4;font-weight:700;color:#bebeb6;background:transparent;border-radius:3px;padding:11px 24px;min-height:44px;transition:background .15s,color .15s}
.demo-tabs button[aria-selected="true"]{background:var(--yellow);color:var(--black)}
#demo-panel{padding:28px 30px 31px}
.demo-instruction{font-size:0.875rem;color:#b7b7ad}
.demo-sentence-wrap{min-height:126px;display:flex;flex-direction:column;justify-content:center;padding:17px 0 14px}
.demo-sentence{font-family:var(--body);font-weight:300;font-size:2.6875rem;line-height:1.12;letter-spacing:-.02em;text-wrap:balance}
.demo-sentence span{color:var(--yellow)}
.demo-translation{font-size:0.9375rem;color:#bebeb4;margin-top:9px}
.demo-choices{display:flex;gap:9px;margin-top:9px}
.demo-choices button{background:transparent;border:1px solid #45453c;color:#d0d0c6;font-size:0.875rem;min-height:44px;min-width:76px;padding:8px 15px;border-radius:4px;transition:background .15s,border-color .15s}
.demo-choices button[aria-pressed="true"]{border-color:var(--yellow);background:#ffcc1915;color:var(--yellow)}
.demo-choices button:hover{border-color:var(--yellow)}
.demo-hint{color:#a0a098;font-size:0.8125rem;line-height:1.55;margin-top:20px;display:flex;gap:8px}
.demo-hint>span{color:var(--yellow);font-size:1.1875rem}
.demo-bottom{border-top:1px solid var(--line);padding:15px 30px;color:#7d7d74;font-size:0.75rem;letter-spacing:.14em}
.demo-noscript{padding:20px 30px;font-size:1rem}
.learning-cycle{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:78px;padding-top:31px;border-top:1px solid #03030345}
.learning-cycle li{display:flex;gap:18px;align-items:flex-start}
.cycle-number{font-size:0.875rem;font-weight:700;padding-top:1px;border:1px solid #03030380;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex-shrink:0}
.learning-cycle h3{font-size:1.6875rem;line-height:1.2;margin-bottom:9px}
.learning-cycle p{font-size:1rem;line-height:1.65;max-width:285px}

/* The four official Portals, independent of the obsolete cover numbering. */
.map-layout{display:grid;grid-template-columns:.95fr 1.2fr;gap:90px;align-items:start}
.map-intro{padding-top:14px}
.map-intro h2{font-size:clamp(3.125rem,5.1vw,4.5rem)}
.map-intro>p:not(.eyebrow):not(.map-mantra){font-size:1.0625rem;color:var(--muted);margin-top:25px;max-width:415px}
.map-progress{display:flex;margin-top:34px;gap:0;justify-content:space-between;max-width:410px}
.map-progress li{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:0.875rem;flex:1;min-width:0;line-height:1.5}
.map-progress li>span{border:1px solid #716023;display:grid;place-items:center;width:29px;height:29px;font-size:0.75rem;border-radius:50%;color:var(--yellow);background:var(--black);z-index:1}
.map-progress li:not(:last-child)::after{content:"";position:absolute;top:14px;left:29px;right:0;border-top:1px solid #716023}
.map-mantra{font-family:var(--body);font-weight:700;font-size:1.5rem;line-height:1.15;margin-top:38px;color:#95958c}
.map-mantra strong{color:var(--white);font-weight:700}
.portal-list{border-top:1px solid var(--line)}
.portal-item{border-bottom:1px solid var(--line);transition:background .2s}
.portal-item summary{display:flex;align-items:center;gap:21px;cursor:pointer;list-style:none;padding:28px 10px;min-height:110px;transition:color .2s}
summary::-webkit-details-marker{display:none}
summary::marker{content:""}
.portal-item summary:hover .portal-title{color:var(--yellow)}
.portal-number{font-family:var(--display);font-size:3rem;color:#676758;min-width:45px;line-height:1}
.portal-summary{display:flex;flex-direction:column;gap:5px;flex:1}
.portal-kicker{font-family:var(--body);font-size:0.75rem;letter-spacing:.13em;color:#8c8c80;font-weight:700}
.portal-title{font-family:var(--display);font-size:1.6875rem;line-height:1.15;transition:color .2s}
.expand-icon{position:relative;flex-shrink:0;display:block;width:20px;height:20px;margin-left:auto}
.expand-icon::before,.expand-icon::after{position:absolute;content:"";background:currentColor;border-radius:1px}
.expand-icon::before{width:14px;height:2px;top:9px;left:3px}
.expand-icon::after{width:2px;height:14px;top:3px;left:9px;transition:transform .2s}
details[open]>.expand-icon::after,details[open]>summary .expand-icon::after{transform:rotate(90deg)}
.portal-item[open]{background:linear-gradient(90deg,#ffcc190a,transparent)}
.portal-item[open] .portal-number,.portal-item[open] .portal-kicker,.portal-item[open] .expand-icon{color:var(--yellow)}
.portal-body{padding:0 34px 30px 77px}
.portal-body p{font-size:1rem;color:var(--muted);line-height:1.7}
.portal-body .portal-question{font-size:1.125rem;color:var(--white);font-weight:700;line-height:1.5;margin-bottom:12px}
.portal-takeaway{display:block;padding-top:17px;margin-top:18px;border-top:1px solid #ffffff15;color:var(--yellow);font-size:0.875rem;line-height:1.5}

/* The actual ecosystem: real cover artwork, no fabricated platform screen. */
.ecosystem{background:#0a0a09;border-block:1px solid #ffffff0a}
.ecosystem-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.community-card{display:flex;flex-direction:column;background:var(--black);border:1px solid var(--line);border-radius:7px;overflow:hidden}
.community-card>img{width:100%;height:320px;object-fit:contain;margin-top:12px}
.community-copy{padding:26px 37px 38px}
.community-copy .eyebrow{font-size:0.75rem;margin-bottom:17px}
.community-copy h3{font-size:2.75rem;margin-bottom:16px}
.community-copy>p:last-child{font-size:1rem;color:var(--muted);max-width:450px;line-height:1.7}
.resource-stack{display:grid;grid-template-rows:1fr 1fr;gap:24px}
.resource-card{background:var(--surface-2);border:1px solid var(--line);border-radius:7px;padding:29px 36px 34px;display:flex;flex-direction:column;justify-content:center}
.resource-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}
.resource-heading>span:last-child{color:var(--yellow);font-size:1.5625rem}
.resource-index{font-size:0.75rem;letter-spacing:.11em;color:#aaa99b;font-weight:700}
.resource-card h3{font-size:2.75rem;margin-bottom:16px}
.resource-card>p{font-size:1.0625rem;color:var(--muted);line-height:1.65;max-width:455px}
.mentor-card{background:#10100b;border-color:#3b3420}
.platform-note{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin-top:40px}
.platform-label{display:block;font-size:0.75rem;letter-spacing:.12em;color:#9e9e92;margin-bottom:8px}
.platform-note h3{font-family:var(--body);font-size:1.4375rem;font-weight:700;letter-spacing:-.04em}
.platform-note p{font-size:1rem;color:var(--muted);line-height:1.7;max-width:650px}
.platform-note .text-link{white-space:nowrap;font-size:0.875rem}

/* Human guides. Names are presented honestly without invented portraits. */
.guides .split-heading{grid-template-columns:1.6fr 1fr}
.guides h2{font-size:clamp(2.8125rem,4.8vw,4.25rem)}
.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px;margin-top:50px}
.guide-card{border-top:2px solid var(--yellow);padding-top:30px}
.guide-heading{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.guide-portrait{width:120px;height:144px;flex-shrink:0;object-fit:cover;object-position:50% 32%;border:1px solid var(--line);border-radius:7px}
.guide-title{min-width:0}
.guide-role{font-size:0.75rem;letter-spacing:.12em;color:#b2b2a5;font-weight:700}
.guide-title h3{font-size:5.125rem;line-height:1.07;letter-spacing:-.025em;margin-top:14px}
.guide-copy{max-width:510px;margin-top:23px}
.guide-copy p{color:var(--muted);font-size:1.0625rem}
.guide-copy .guide-note{font-size:0.875rem;line-height:1.5;margin-top:20px;color:#fff;border-left:2px solid #49493e;padding-left:16px}

/* An explicit, focused offer. */
.offer-section{background:var(--surface);border-block:1px solid #ffffff0e}
.offer-heading{text-align:center;max-width:850px;margin:0 auto 48px}
.offer-heading .eyebrow{justify-content:center}
.offer-heading h2{font-size:clamp(3.3125rem,5.55vw,5rem)}
.offer-heading>p:last-child{font-size:1.125rem;line-height:1.7;color:var(--muted);max-width:610px;margin:23px auto 0}
.offer-card{display:grid;grid-template-columns:1.15fr .85fr;border:1px solid #454130;border-radius:8px;overflow:hidden;max-width:1064px;margin:auto;background:var(--black)}
.offer-inclusions{padding:45px 48px 46px}
.offer-label{font-size:0.75rem;letter-spacing:.12em;color:#9f9e8d;display:block;margin-bottom:23px}
.offer-inclusions h3{font-size:2.625rem;line-height:1.06;margin-bottom:30px}
.included-list{display:flex;flex-direction:column;gap:21px}
.included-list li{display:flex;align-items:flex-start;gap:14px}
.included-list li>span{width:22px;height:22px;display:grid;place-items:center;flex-shrink:0;color:var(--yellow);border:1px solid #5b4e17;border-radius:50%;font-size:0.75rem;line-height:1;margin-top:3px}
.included-list strong{font-size:1rem;font-weight:700;line-height:1.45;display:block}
.included-list p{font-size:0.875rem;color:#a7a79d;line-height:1.6;margin-top:5px}
.offer-price{background:var(--yellow);color:var(--black);padding:46px 39px 35px;display:flex;flex-direction:column;justify-content:center}
.price-eyebrow{font-size:0.75rem;line-height:1.5;letter-spacing:.105em;font-weight:700}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:20px;line-height:1;white-space:nowrap}
.price strong{font-family:var(--display);font-size:10rem;letter-spacing:-.045em;line-height:.95}
.currency{font-family:var(--display);font-size:2.125rem;align-self:flex-start;margin-top:18px}
.price-period{font-size:1.1875rem;letter-spacing:-.015em}
.price-description{font-size:1.125rem;line-height:1.6;margin-top:17px}
.price-rule{height:1px;background:#0303033b;margin:25px 0 21px}
.price-terms{font-size:1rem;line-height:1.5}
.enrollment-slot{margin-top:24px}
.offer-price .button{background:var(--black);color:var(--yellow);border-color:var(--black);width:100%;font-size:0.9375rem;padding:16px 18px;gap:14px}
.offer-price .button:hover:not(:disabled){background:#23231c;box-shadow:0 5px 15px #0002}
.offer-price .button:disabled{opacity:.72}
.enrollment-note{font-size:0.75rem;font-weight:700;line-height:1.5;margin-top:9px;text-align:center}
.price-footnote{font-size:0.75rem;line-height:1.65;color:#4e4218;margin-top:24px;text-align:center}
.after-enrollment{max-width:1064px;margin:39px auto 0;scroll-margin-top:25px}
.after-enrollment h3{font-size:1.5rem;text-align:center;margin-bottom:29px}
.after-enrollment ol{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.after-enrollment li{display:flex;gap:13px;align-items:flex-start}
.after-enrollment li>span{font-family:var(--display);font-size:1.6875rem;color:var(--yellow);line-height:1.1}
.after-enrollment strong{display:block;font-size:0.875rem;line-height:1.5;margin-bottom:8px}
.after-enrollment li p{font-size:1rem;color:#a6a698;line-height:1.65}

/* Questions and closing invitation. Native details are keyboard accessible. */
.faq-layout{display:grid;grid-template-columns:.86fr 1.2fr;gap:95px}
.faq-intro h2{font-size:clamp(2.9375rem,4.7vw,4.1875rem)}
.faq-intro>p:last-child{font-size:1.0625rem;line-height:1.7;color:var(--muted);max-width:315px;margin-top:24px}
.faq-list{border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;padding:24px 3px;list-style:none;font-size:1rem;line-height:1.5;font-weight:700;transition:color .2s}
.faq-item summary:hover,.faq-item[open] summary{color:var(--yellow)}
.faq-answer{padding:0 35px 24px 3px}
.faq-answer p{font-size:1rem;line-height:1.75;color:var(--muted)}
.final-section{border-top:1px solid var(--line);overflow:hidden;background:var(--black);padding-bottom:74px}
.final-art{position:relative;max-width:1440px;margin:auto}
.final-art picture{display:block;position:relative;overflow:hidden}
.final-art picture::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--black),transparent 15%,transparent 90%,#03030366);pointer-events:none}
.final-art img{width:100%;height:auto;object-fit:cover}
.final-copy{text-align:center;margin-top:-14px;position:relative;z-index:1}
.final-copy>p{font-size:1.125rem;line-height:1.7;color:#c4c4b8}
.final-copy .button{margin-top:28px;min-width:285px}
.final-signature{display:block;font-size:0.75rem;letter-spacing:.075em;line-height:1.65;color:#858577;margin-top:27px}
.site-footer{border-top:1px solid var(--line);padding:42px 0 24px;background:#080807}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.footer-inner>p{font-size:0.875rem;line-height:1.65;color:#a6a69b}
.footer-inner .text-link{font-size:0.875rem}
.footer-bottom{display:flex;justify-content:space-between;gap:25px;margin-top:36px;padding-top:19px;border-top:1px solid #ffffff0e;font-size:0.75rem;color:#8b8b7e}
.mobile-enrollment{display:none}

@media(prefers-reduced-motion:no-preference){
  [data-reveal].in-view{animation:arrive .6s both}
  @keyframes arrive{from{opacity:.6;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
}

@media(min-width:1600px){.hero-art{right:-2%;width:80%;top:47%}.hero-inner{min-height:775px;padding-top:112px}.hero::after{background:linear-gradient(90deg,#030303 12%,#030303d9 29%,#03030355 51%,transparent 70%),linear-gradient(0deg,#030303,transparent 19%,transparent 90%,#030303)} }
@media(max-width:1180px){
  .wrap{width:calc(100% - 80px)}
  .desktop-nav{gap:20px}
  .desktop-nav a{font-size:0.8125rem}
  .header-inner{gap:20px}
  .header-cta{font-size:0.8125rem;padding-inline:13px;gap:12px}
  .hero-inner{min-height:690px;padding-top:81px}
  .hero-content{max-width:650px}
  .hero-art{width:98%;right:-23%}
  .hero-description{max-width:475px}
  .split-heading{gap:42px}
  .section-intro{font-size:1.0625rem}
  .language-card{grid-template-columns:39% 61%}
  .language-info{padding:24px 21px}
  .language-info h3{font-size:2.6875rem}
  .language-info p{font-size:1rem}
  .language-info .text-link{font-size:0.8125rem}
  .method-grid{gap:55px}
  .demo-sentence{font-size:2.375rem}
  .learning-cycle{gap:24px}
  .map-layout,.faq-layout{gap:55px}
  .portal-title{font-size:1.5rem}
  .portal-item summary{gap:17px;padding-inline:6px}
  .portal-body{padding-left:68px;padding-right:18px}
  .resource-card{padding-inline:28px}
  .community-copy{padding-inline:28px}
  .platform-note{grid-template-columns:190px 1fr;gap:25px}
  .platform-note>.text-link{grid-column:2;justify-self:start;margin-top:-12px}
  .offer-inclusions{padding-inline:36px}
  .offer-price{padding-inline:30px}
}
@media(max-width:960px){
  :root{--header-height:78px}
  .wrap{width:calc(100% - 64px)}
  .section{padding:84px 0}
  .desktop-nav{display:none}
  .header-cta{margin-left:auto;font-size:0.875rem}
  .menu-toggle{display:block}
  .hero-inner{min-height:675px;padding-top:78px}
  .hero h1{font-size:clamp(4.5rem,10vw,5.9375rem)}
  .hero-content{max-width:620px}
  .hero-art{right:-40%;width:130%;opacity:.85}
  .hero::after{background:linear-gradient(90deg,#030303 0%,#030303e8 23%,#030303c4 40%,#03030342 70%),linear-gradient(0deg,#030303 0%,transparent 30%,transparent 80%,#03030385 100%)}
  .hero-promise{font-size:1.875rem}
  .hero-description{font-size:1.0625rem;max-width:455px}
  .hero-scroll{font-size:0.75rem}
  .strip-inner{font-size:0.75rem;justify-content:center;gap:32px}
  .strip-inner>span:nth-last-child(-n+2){display:none}
  .split-heading,.guides .split-heading{grid-template-columns:1.25fr 1fr;gap:32px}
  .section-intro{font-size:1rem}
  .language-card{display:flex;flex-direction:column;align-items:stretch}
  .language-art{height:220px;object-fit:contain}
  .language-info{padding:25px 27px 30px}
  .language-info h3{font-size:2.75rem}
  .language-info p{font-size:1rem}
  .language-info .text-link{font-size:0.875rem}
  .multiverse-art figcaption{font-size:0.75rem}
  .method-grid{gap:32px}
  .method-copy h2{font-size:3.375rem}
  .method-copy>p{font-size:1rem}
  .method-copy .text-link{font-size:0.875rem}
  .demo-topline{padding-inline:22px;font-size:0.75rem}
  .demo-tabs{margin:25px 22px 0}
  .demo-tabs button{padding-inline:20px}
  #demo-panel{padding:25px 22px}
  .demo-sentence{font-size:2.125rem}
  .demo-choices{gap:7px}
  .demo-choices button{min-width:65px;padding-inline:12px}
  .learning-cycle{margin-top:60px;gap:22px}
  .learning-cycle li{gap:12px}
  .learning-cycle h3{font-size:1.5rem}
  .learning-cycle p{font-size:1rem}
  .map-layout{grid-template-columns:1fr 1.15fr;gap:35px}
  .map-intro h2{font-size:3.0625rem}
  .map-intro>p:not(.eyebrow):not(.map-mantra){font-size:1rem}
  .map-progress li{font-size:0.75rem}
  .portal-number{font-size:2.4375rem;min-width:36px}
  .portal-item summary{gap:12px}
  .portal-title{font-size:1.375rem}
  .portal-kicker{font-size:0.75rem}
  .portal-body{padding-left:53px}
  .portal-body p{font-size:0.9375rem}
  .portal-body .portal-question{font-size:1rem}
  .community-card>img{height:265px}
  .community-copy{padding:23px 26px 30px}
  .community-copy h3,.resource-card h3{font-size:2.25rem}
  .community-copy>p:last-child,.resource-card>p{font-size:1rem}
  .resource-card{padding:21px 25px 27px}
  .resource-heading{margin-bottom:18px}
  .resource-index{font-size:0.75rem}
  .guide-grid{gap:32px}
  .guide-title h3{font-size:4.3125rem}
  .guide-copy p{font-size:1rem}
  .offer-card{grid-template-columns:1.1fr 1fr}
  .offer-inclusions{padding:33px 28px}
  .offer-inclusions h3{font-size:2.1875rem}
  .offer-price{padding:36px 25px}
  .price strong{font-size:8.875rem}
  .currency{font-size:1.875rem}
  .price-period{font-size:1.0625rem}
  .after-enrollment ol{gap:20px}
  .after-enrollment li{gap:10px}
  .faq-layout{grid-template-columns:.95fr 1.2fr;gap:35px}
  .faq-intro h2{font-size:2.9375rem}
  .faq-item summary{font-size:0.9375rem}
}
@media(max-width:700px){
  :root{--header-height:74px}
  body{font-size:1rem}
  .wrap{width:calc(100% - 40px)}
  .section{padding:65px 0}
  h2{font-size:clamp(2.625rem,8.8vw,3.6875rem)}
  .eyebrow{font-size:0.75rem;gap:9px;letter-spacing:.1em;margin-bottom:21px}
  .button{font-size:0.875rem;min-height:55px;padding:15px 20px;gap:17px}
  .button-small{font-size:0.8125rem;min-height:43px;padding:10px 13px}
  .text-link{font-size:0.875rem}
  .header-inner{gap:14px}
  .brand-wordmark{font-size:1.625rem}
  .brand-descriptor{font-size:0.75rem;margin-top:6px;letter-spacing:.15em}
  .header-cta{display:none}.menu-toggle{margin-left:auto}
  .header-cta>span{display:none}
  .menu-toggle{width:43px;height:43px;padding:11px;flex-shrink:0}
  .mobile-nav{padding:10px 20px 24px}
  .hero{display:flex;flex-direction:column}
  .hero-inner{order:1;min-height:unset;padding-top:53px;padding-bottom:20px}
  .hero-content{max-width:none}
  .hero h1{font-size:clamp(3.875rem,12.5vw,5.375rem);line-height:.99}
  .hero .eyebrow{font-size:0.75rem;margin-bottom:26px}
  .short-line{width:21px}
  .hero-promise{font-size:clamp(1.0625rem,5.3vw,1.625rem);margin-top:23px}
  .hero-description{font-size:1rem;max-width:470px;margin-top:18px}
  .hero-actions{gap:10px 24px;margin-top:25px}
  .hero-actions .button{width:100%;max-width:365px}
  .hero-actions .text-link{font-size:0.875rem}
  .hero-detail{font-size:0.75rem;margin-top:10px}
  .hero-art{position:relative;order:2;inset:auto;transform:none;width:100%;max-width:none;height:290px;margin-top:-19px;opacity:1;z-index:0}
  .hero-art img{width:100%;height:100%;object-fit:cover;object-position:50% 54%}
  .hero-art::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#030303,transparent 22%,transparent 80%,#030303);pointer-events:none}
  .hero::after,.hero-scroll{display:none}
  .strip-inner{font-size:0.75rem;gap:0}
  .strip-inner>span:not(:first-child){display:none}
  .manifesto-strip{padding:16px 0}
  .split-heading,.guides .split-heading{display:block}
  .section-heading{margin-bottom:30px}
  .section-intro{max-width:500px;margin-top:23px;font-size:1rem;padding-bottom:0}
  .language-grid{grid-template-columns:1fr;gap:16px}.language-card{display:grid;grid-template-columns:40% 60%}
  .language-art{height:230px;aspect-ratio:auto;object-fit:contain}
  .language-info{padding:20px 18px 24px}
  .availability{font-size:0.875rem;letter-spacing:.025em;margin-bottom:11px}
  .language-info h3{font-size:2.25rem;margin-bottom:13px}
  .language-info p{font-size:1rem;line-height:1.65}
  .language-info .text-link{font-size:0.8125rem;line-height:1.55;margin-top:16px;gap:7px;text-decoration:none;color:var(--yellow)}
  .language-info .text-link>span{font-size:1.25rem;flex-shrink:0}
  .multiverse-art{margin-top:28px}
  .multiverse-art picture{margin-inline:-20px;border-radius:0}
  .multiverse-art img{height:225px;object-fit:cover}
  .multiverse-art figcaption{flex-direction:column;align-items:flex-start;gap:7px;padding:16px 0;font-size:0.75rem}
  .multiverse-art figcaption>span{align-self:flex-start;font-size:0.75rem}
  .method-grid{display:flex;flex-direction:column;gap:36px;align-items:stretch}
  .method-copy h2{font-size:clamp(3rem,10.5vw,4rem)}
  .method-copy>p{font-size:1rem;max-width:540px}
  .method-copy .text-link{margin-top:18px}
  .pattern-demo{width:100%;max-width:520px;align-self:stretch;box-shadow:7px 7px 0 #03030318}
  .demo-topline{font-size:0.75rem;padding:14px 23px}
  .demo-tabs{margin:24px 23px 0}
  #demo-panel{padding:26px 23px 26px}
  .demo-sentence{font-size:clamp(1.625rem,8.2vw,2.1875rem)}
  .demo-sentence-wrap{min-height:120px}
  .demo-choices{gap:9px}
  .demo-choices button{min-width:77px}
  .demo-bottom{padding-inline:23px}
  .learning-cycle{display:flex;flex-direction:column;gap:25px;margin-top:43px;padding-top:30px}
  .learning-cycle li{gap:18px}
  .learning-cycle h3{font-size:1.6875rem;margin-bottom:7px}
  .learning-cycle p{font-size:1rem;max-width:none}
  .map-layout{display:block}
  .map-intro{padding-top:0}
  .map-intro h2{font-size:clamp(2.875rem,9.5vw,3.875rem)}
  .map-intro>p:not(.eyebrow):not(.map-mantra){max-width:500px}
  .map-progress{margin-top:28px;max-width:440px}
  .map-progress li{font-size:0.875rem}
  .map-mantra{font-size:1.5rem;margin-top:27px}
  .portal-list{margin-top:37px}
  .portal-item summary{min-height:102px;padding:25px 3px;gap:15px}
  .portal-number{font-size:2.6875rem;min-width:42px}
  .portal-kicker{font-size:0.75rem}
  .portal-title{font-size:1.5625rem}
  .portal-body{padding:0 20px 27px 60px}
  .portal-body p{font-size:1rem}
  .portal-body .portal-question{font-size:1.0625rem}
  .ecosystem-grid{display:flex;flex-direction:column;gap:20px}
  .community-card{display:grid;grid-template-columns:40% 60%;align-items:center}
  .community-card>img{height:100%;margin-top:0;object-fit:contain}
  .community-copy{padding:25px 23px 27px 0}
  .community-copy .eyebrow{font-size:0.75rem;margin-bottom:13px}
  .community-copy h3{font-size:2rem}
  .community-copy>p:last-child{font-size:1rem}
  .resource-stack{gap:20px}
  .resource-card{padding:24px 26px 30px}
  .resource-card h3{font-size:2.375rem}
  .resource-card>p{font-size:1rem;max-width:none}
  .resource-index{font-size:0.75rem}
  .platform-note{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:30px;padding-block:27px}
  .platform-note>.text-link{margin-top:-9px}
  .platform-note p{font-size:1rem}
  .guides h2{font-size:clamp(2.5625rem,8.5vw,3.6875rem)}
  .guide-grid{grid-template-columns:1fr;gap:37px;margin-top:31px}
  .guide-card{padding-top:23px}
  .guide-title h3{font-size:4.375rem;margin-top:11px}
  .guide-copy{margin-top:17px;max-width:none}
  .guide-copy .guide-note{margin-top:16px}
  .offer-heading{text-align:left;margin-bottom:31px}
  .offer-heading .eyebrow{justify-content:flex-start}
  .offer-heading h2{font-size:clamp(2.875rem,9.3vw,3.875rem)}
  .offer-heading>p:last-child{font-size:1rem;margin-top:20px}
  .offer-card{display:flex;flex-direction:column}
  .offer-inclusions{padding:29px 26px 33px}
  .offer-inclusions h3{font-size:2.4375rem}
  .offer-label{font-size:0.75rem}
  .included-list{gap:23px}
  .included-list strong{font-size:1rem}
  .included-list p{font-size:0.875rem}
  .offer-price{padding:32px 26px 32px;align-items:stretch}
  .price-eyebrow{font-size:0.75rem}
  .price{margin-top:18px}
  .price strong{font-size:9.6875rem}
  .currency{font-size:2.125rem}
  .price-period{font-size:1.3125rem}
  .price-description{font-size:1.125rem}
  .price-terms{font-size:1rem}
  .offer-price .button{font-size:0.9375rem;min-height:57px}
  .enrollment-note{font-size:0.75rem}
  .price-footnote{font-size:0.75rem}
  .after-enrollment{margin-top:35px}
  .after-enrollment h3{text-align:left;font-size:1.75rem;margin-bottom:25px}
  .after-enrollment ol{grid-template-columns:1fr;gap:26px}
  .after-enrollment li{gap:20px}
  .after-enrollment li>span{font-size:2rem}
  .after-enrollment strong{font-size:1rem;margin-bottom:5px}
  .after-enrollment li p{font-size:1rem}
  .faq-layout{display:block}
  .faq-intro h2{font-size:clamp(2.9375rem,9.5vw,3.8125rem)}
  .faq-intro>p:last-child{max-width:none;font-size:1rem;margin-top:20px}
  .faq-list{margin-top:31px}
  .faq-item summary{font-size:1rem;padding:22px 2px;gap:21px}
  .faq-answer{padding:0 25px 22px 2px}
  .faq-answer p{font-size:1rem}
  .final-section{padding-bottom:54px}
  .final-art img{height:250px;width:100%;object-fit:cover;object-position:center}
  .final-copy{margin-top:0}
  .final-copy>p{font-size:1rem}
  .final-copy .button{width:100%;max-width:360px;min-width:0;margin-top:25px}
  .final-signature{font-size:0.75rem;max-width:330px;margin:24px auto 0;line-height:1.8}
  .site-footer{padding-top:33px;padding-bottom:98px}
  .footer-inner{flex-wrap:wrap;gap:26px 25px}
  .footer-inner>p{font-size:0.75rem;margin-left:auto}
  .footer-inner>.text-link{width:100%;border-top:1px solid var(--line);padding-top:20px}
  .footer-bottom{flex-direction:column;gap:8px;margin-top:22px;padding-top:20px;font-size:0.75rem}
  .mobile-enrollment{position:fixed;bottom:0;left:0;right:0;z-index:90;padding:12px 20px calc(12px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:18px;background:#090908fa;border-top:1px solid #ffcc1945;box-shadow:0 -10px 26px #0004}
  .mobile-enrollment>span{display:flex;flex-direction:column;gap:4px;min-width:0}
  .mobile-enrollment strong{font-size:0.8125rem;line-height:1.4}
  .mobile-enrollment small{font-size:0.75rem;line-height:1.3;color:#b5b5a8}
  .mobile-enrollment .button{min-height:44px;font-size:0.8125rem;white-space:nowrap;gap:12px}
}
@media(max-width:390px){
  .wrap{width:calc(100% - 32px)}
  .header-inner{gap:9px}
  .brand-wordmark{font-size:1.5rem}
  .brand-descriptor{font-size:0.75rem;letter-spacing:.13em}
  .header-cta{font-size:0.75rem;padding-inline:8px}
  .menu-toggle{width:40px;height:42px;padding:10px}
  .hero h1{font-size:clamp(3.25rem,15.5vw,3.75rem)}
  .hero-art{height:260px;margin-top:-10px}
  .language-grid{gap:12px}
  .language-info{padding:16px 14px 21px}
  .language-info h3{font-size:2rem}
  .language-info p{font-size:1rem}
  .availability{font-size:0.875rem}
  .language-info .text-link{font-size:0.75rem}
  .multiverse-art picture{margin-inline:-16px}
  .portal-title{font-size:1.4375rem}
  .portal-number{font-size:2.375rem;min-width:36px}
  .portal-body{padding-left:54px}
  .community-card{display:flex}
  .community-card>img{width:100%;height:240px}
  .community-copy{padding:22px 24px 28px}
  .community-copy h3{font-size:2.375rem}
  .community-copy>p:last-child{font-size:1rem}
  .footer-inner>p{margin-left:0}
  .mobile-enrollment{padding-inline:16px;gap:12px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{
  .site-header,.mobile-enrollment,.hero-scroll,.menu-toggle,.hero-art,.manifesto-strip,.final-section,.site-footer{display:none!important}
  body{background:white;color:black;font-size:12pt}
  .wrap{width:100%}.section{padding:25px 0}.hero-inner{min-height:0;padding:20px 0}
  .section,.offer-price,.pattern-demo,.resource-card,.language-card,.community-card,.offer-card{background:white;color:black;border-color:#999;box-shadow:none}
  h1{font-size:45pt}h2{font-size:30pt}.text-yellow{color:black}
  p,.eyebrow{color:black!important}details{break-inside:avoid}.button{display:none}.hero::after{display:none}
}

/* Allow text enlargement inside every grid without forcing page overflow. */
.hero-content,.language-info,.map-intro,.portal-summary,.resource-card,.guide-card,.offer-inclusions,.offer-price{min-width:0}

/* Exact weights avoid synthetic bold in Anton and keep Poppins subtitles consistent. */
.brand-wordmark,.portal-number,.portal-title,.price strong,.currency,.after-enrollment li>span{font-weight:400}
strong,b,.guide-copy .guide-note{font-weight:700}
