/* Opening sequence for the approved V1. Closed dialogs and JS-off keep the page visible. */
#main-content:focus{outline:none}
.hero-course-title{font-size:clamp(42px,4.5vw,64px);line-height:1.12;letter-spacing:-2.6px}
.hero-offer-subtitle{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:clamp(20px,1.8vw,25px);font-weight:500;line-height:1.3;letter-spacing:-.025em;color:#e2edf3;max-width:480px;margin:26px 0 0;padding:13px 18px;border-left:2px solid var(--cyan);background:linear-gradient(90deg,#6dd4f916,transparent 95%)}
.hero-offer-subtitle strong{display:flex;align-items:center;gap:10px;max-width:100%;font-family:var(--display);font-size:clamp(24px,2.15vw,31px);font-weight:650;line-height:1.25;letter-spacing:-.035em;color:var(--cyan)}
.hero-map-icon{width:1.05em;height:1.05em;flex:none;stroke-width:1.35}
.hero-offer-subtitle strong>span{min-width:0}
body.intro-active{overflow:hidden}
.site-intro{display:none}
.site-intro[open]{display:flex;flex-direction:column;position:fixed;inset:0;width:100%;height:100vh;height:100dvh;max-width:none;max-height:none;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:#0c1115;color:#f4f5f5;box-shadow:none;overflow:hidden;opacity:1;transition:opacity 600ms ease;isolation:isolate}
.site-intro::backdrop{background:#0c1115;backdrop-filter:none}
.site-intro:focus{outline:none}
.site-intro:before{content:'';position:absolute;width:90vw;height:90vw;max-width:1250px;max-height:1250px;left:50%;top:50%;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#245c7330 0,#17334012 40%,transparent 68%);pointer-events:none;z-index:-1;animation:intro-light 9s ease-in-out infinite alternate}
.site-intro.is-revealing{opacity:0;pointer-events:none}
.intro-topline,.intro-bottomline{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;flex:none;margin-inline:clamp(24px,5vw,80px)}
.intro-topline{height:115px;border-bottom:1px solid #d2e6f00f}
.intro-brand{display:inline-flex;align-items:center;gap:12px}
.intro-brand>svg{height:33px;width:33px;color:var(--cyan);stroke-width:1}
.intro-brand>span{font-size:9px;letter-spacing:1.8px;font-weight:500;line-height:1.6;color:#d0dae1}
.intro-brand>span>span{display:block;font-size:7px;letter-spacing:1.6px;color:#6d818f;font-weight:400;margin-top:3px}
.intro-top-note{font-size:7px;letter-spacing:1.9px;color:#6e8493}
.intro-scenes{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:35px 28px}
.intro-scene{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px 28px 45px;opacity:0;transform:translateY(15px);transition:opacity 500ms ease,transform 650ms cubic-bezier(.22,.61,.36,1);width:100%;margin:auto;max-width:1250px}
.intro-scene[hidden]{display:none}
.intro-scene.is-active{opacity:1;transform:none}
.intro-scene.is-exiting{opacity:0;transform:translateY(-12px);transition:opacity 500ms ease,transform 500ms ease}
.site-intro[data-scene="brand"] .intro-topline,.site-intro[data-scene="brand"] .intro-bottomline{visibility:hidden}
.intro-brand-screen{padding-bottom:30px}
.intro-domain{position:relative;font-family:var(--display);font-size:clamp(25px,5vw,70px);font-weight:550;letter-spacing:-.05em;line-height:1.3;color:#edf3f7;white-space:nowrap}
.intro-domain-prefix,.intro-domain-suffix{font-size:.5em;font-weight:400;letter-spacing:-.025em;color:#8da5b3}
.intro-domain-prefix{margin-right:.16em}
.intro-domain-suffix{margin-left:.15em}
.intro-domain-name{color:var(--cyan)}
.intro-domain:after,.intro-verdict:after,.intro-admiration:after{content:'';display:block;width:86px;height:1px;margin:24px auto 0;background:linear-gradient(90deg,transparent,#77d9f7,transparent);opacity:0;transform:scaleX(.3);transition:opacity 800ms ease,transform 1000ms ease}
.intro-domain.is-complete:after,.intro-verdict.is-complete:after,.intro-admiration.is-complete:after{opacity:.8;transform:scaleX(1)}
.intro-domain:after{position:absolute;top:100%;left:50%;margin-left:-43px}
.intro-kicker{font-family:var(--font);font-size:9px;line-height:1.6;letter-spacing:2.2px;color:#7c9aad;margin:0 0 30px}
.intro-message{font-family:var(--display);font-size:clamp(34px,5.7vw,82px);line-height:1.18;letter-spacing:-.04em;font-weight:500;margin:0;color:#edf3f7;max-width:1100px}
.intro-message>span{display:block}
.intro-message [data-intro-beat]{transition:opacity 700ms ease}
.intro-word,[data-intro-chunk]{display:inline-block;opacity:0;filter:blur(4px);transform:translateY(.35em);transition:opacity 650ms ease,filter 750ms ease,transform 850ms cubic-bezier(.22,.61,.36,1);will-change:opacity,transform}
.intro-word.is-visible,[data-intro-chunk].is-visible{opacity:1;filter:blur(0);transform:none}
.intro-message .intro-lead,.intro-message .intro-second-lead{font-size:clamp(20px,2.8vw,36px);font-weight:400;letter-spacing:-.025em;line-height:1.4;color:#aebbc4;margin-bottom:18px}
.intro-message .intro-preset{font-size:clamp(28px,4.8vw,66px);font-weight:400;letter-spacing:-.04em;color:#cfdae2;line-height:1.2}
.intro-message .intro-verdict{font-size:clamp(42px,7.3vw,100px);font-weight:650;letter-spacing:-.045em;line-height:1.15;margin-top:28px;color:var(--cyan)}
.intro-first .intro-message{display:grid;place-items:center;width:100%}
.intro-question,.intro-first .intro-verdict{grid-area:1/1}
.intro-question>span{display:block}
.intro-first .intro-message .intro-verdict{margin-top:0;max-width:100%;text-wrap:balance}
.intro-first.has-emphasis .intro-lead,.intro-first.has-emphasis .intro-preset{opacity:0}
.intro-message .intro-professionals{font-size:clamp(28px,3.9vw,54px);font-weight:450;line-height:1.2;color:#e1eaf0;letter-spacing:-.035em;margin-bottom:20px}
.intro-message .intro-admiration{font-size:clamp(40px,6.3vw,90px);font-weight:600;letter-spacing:-.045em;line-height:1.15;color:var(--cyan);text-wrap:balance}
.intro-second.has-emphasis .intro-second-lead{opacity:.4}
.intro-second.has-emphasis .intro-professionals{opacity:.55}
.intro-bottomline{height:104px;border-top:1px solid #d2e6f00f;font-size:7px;letter-spacing:1.5px;color:#6d8595}
.intro-bottomline>span{width:33%}
.intro-scene-count{text-align:right;font-variant-numeric:tabular-nums}
.intro-progress{display:flex;align-items:center;justify-content:center;gap:8px;width:150px;flex:none}
.intro-progress>span{position:relative;display:block;height:1px;width:67px;background:#344854;overflow:hidden}
.intro-progress>span:after{content:'';position:absolute;inset:0;background:#82cde9;transform:scaleX(0);transform-origin:left center}
.intro-progress>span.is-active:after{animation:intro-progress var(--intro-duration,6200ms) linear both}
.intro-progress>span.is-complete:after{animation:none;transform:scaleX(1)}
.intro-announcement{position:absolute!important;top:0;left:0;height:1px;width:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0!important;padding:0;border:0}
.footer-actions{display:flex;align-items:center;gap:25px}
.intro-replay{font-family:var(--font);font-size:9px;color:#90a7b7;line-height:1.5;background:none;border:0;padding:9px 0;cursor:pointer}
.intro-replay:hover{color:var(--cyan)}
.intro-replay[hidden]{display:none}
@keyframes intro-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes intro-light{from{opacity:.5;transform:translate(-53%,-48%) scale(.94)}to{opacity:1;transform:translate(-47%,-52%) scale(1.06)}}
@media(max-width:900px){.intro-topline{height:96px}.intro-bottomline{height:90px}.intro-kicker{font-size:8px;letter-spacing:1.8px;margin-bottom:26px}.intro-top-note{font-size:6px;letter-spacing:1.2px}.intro-bottomline{font-size:6px;letter-spacing:.8px}.intro-progress{width:116px}.intro-progress>span{width:51px}.footer-actions{gap:20px}}
@media(max-width:600px){.hero-course-title{font-size:clamp(36px,10.3vw,52px);letter-spacing:-1.8px;line-height:1.15}.hero-offer-subtitle{font-size:20px;max-width:100%;margin:22px 0 0;padding:12px 14px}.intro-topline,.intro-bottomline{margin-inline:24px;gap:12px}.intro-topline{height:90px}.intro-brand{gap:9px}.intro-brand>svg{width:29px;height:29px}.intro-brand>span{font-size:7px;letter-spacing:1.2px}.intro-brand>span>span{font-size:6px;letter-spacing:1px}.intro-top-note{display:none}.intro-scenes{padding:24px 20px}.intro-scene{padding:25px 22px 45px}.intro-message .intro-verdict{margin-top:22px}.intro-message .intro-professionals{margin-bottom:18px}.intro-kicker{font-size:6px;letter-spacing:1.6px;max-width:270px;line-height:1.8;margin-bottom:25px}.intro-bottomline{height:85px;font-size:5px;letter-spacing:.5px}.intro-bottomline>span{width:auto;max-width:43%}.intro-progress{width:80px;gap:6px}.intro-progress>span{width:37px}.intro-bottomline .intro-scene-count{font-size:7px;letter-spacing:.5px;min-width:35px}.footer-actions{flex-direction:column;align-items:flex-end;gap:6px}.intro-replay{font-size:9px;padding:2px 0}.intro-domain:after,.intro-verdict:after,.intro-admiration:after{margin-top:18px}}
@media(max-height:520px){.intro-topline{height:60px}.intro-bottomline{height:50px}.intro-scene{padding-block:8px}.intro-kicker{margin-bottom:10px}.intro-message .intro-lead,.intro-message .intro-second-lead{font-size:18px;margin-bottom:8px}.intro-message .intro-preset,.intro-message .intro-professionals{font-size:28px;margin-bottom:8px}.intro-message .intro-verdict,.intro-message .intro-admiration{font-size:clamp(30px,6vw,48px);margin-top:12px}.intro-domain:after,.intro-verdict:after,.intro-admiration:after{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.site-intro[open],.intro-scene,.intro-message [data-intro-beat],.intro-word,[data-intro-chunk],.intro-domain:after,.intro-verdict:after,.intro-admiration:after{transition:none;transform:none;filter:none}.site-intro:before,.intro-progress>span:after{animation:none!important}}

/* Mobile reading hierarchy and a quiet, continuous opening timeline. */
.intro-loading{position:absolute;inset:auto 0 0;height:3px;background:#29404d66;overflow:hidden;pointer-events:none}
.intro-loading-fill{display:block;width:100%;height:100%;background:var(--cyan);transform:scaleX(0);transform-origin:left}
.site-intro[open] .intro-loading-fill{animation:intro-progress var(--intro-total-duration,16200ms) linear both}
.intro-scenes{width:100%;padding:24px}
.intro-scene{padding:40px 28px;max-width:1200px}
.intro-message .intro-admiration{font-size:clamp(50px,8vw,112px);font-weight:700;line-height:1.08;letter-spacing:-.045em;margin-top:26px}
.intro-admiration-line{display:block}
.intro-second.has-emphasis .intro-second-lead{opacity:.28}
.intro-second.has-emphasis .intro-professionals{opacity:.45}
.hero-course-title{max-width:560px;line-height:1.13}
.hero-course-title>span{display:block}
.hero-offer-subtitle{margin-top:30px;padding:16px 18px;gap:7px}
.hero-description{max-width:400px;font-size:15px;line-height:1.8;margin-top:26px}
.hero-description>span{display:block}
.hero-description-hook{color:#c6d2da;margin-bottom:10px}
.hero-actions{margin-top:30px}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>*{animation:hero-reading-enter 650ms cubic-bezier(.22,.61,.36,1) both}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>.eyebrow{animation-delay:0ms}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>.hero-course-title{animation-delay:150ms}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>.hero-offer-subtitle{animation-delay:650ms}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>.hero-description{animation-delay:1150ms}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>.hero-actions{animation-delay:1600ms}
.hero-reveal-enabled:not(.intro-pending) .hero-copy>.hero-signature{animation-delay:1850ms}
@keyframes hero-reading-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:600px){
 .intro-scene{padding:36px 24px 48px}
 .intro-message .intro-second-lead{font-size:21px;line-height:1.45;margin-bottom:14px}
 .intro-message .intro-professionals{font-size:30px;line-height:1.2;margin-bottom:0}
 .intro-message .intro-admiration{font-size:clamp(44px,12.8vw,64px);line-height:1.1;margin-top:28px}
 .intro-loading{height:2px}
 .hero{padding-top:36px;padding-bottom:42px;gap:40px}
 .hero .eyebrow{font-size:7px;letter-spacing:1.6px;margin-bottom:22px}
 .hero-course-title{font-size:clamp(34px,9.5vw,44px);line-height:1.13;letter-spacing:-1.6px;max-width:390px}
 .hero-offer-subtitle{font-size:16px;line-height:1.4;margin-top:26px;padding:14px;gap:7px;width:100%}
 .hero-offer-subtitle strong{font-size:23px;line-height:1.25;letter-spacing:-.55px;gap:9px}
 .hero-map-icon{width:23px;height:23px}
 .hero-description{font-size:14px;line-height:1.8;margin-top:26px;max-width:360px}
 .hero-description-hook{margin-bottom:12px}
 .hero-actions{margin-top:28px;gap:20px}
 .hero-actions .button{font-size:12px;padding:17px 18px;min-height:56px}
 .hero-signature{margin-top:30px}
}
@media(max-height:520px) and (min-width:601px){.intro-message .intro-admiration{font-size:48px;margin-top:12px}.intro-message .intro-professionals{font-size:26px;margin-bottom:0}.intro-scene{padding-block:18px}}
@media(prefers-reduced-motion:reduce){.hero-reveal-enabled:not(.intro-pending) .hero-copy>*{animation:none!important;opacity:1;transform:none}}

/* Keep the two animated words visually separated, despite tight title tracking. */
.intro-preset .intro-word+.intro-word{margin-left:.15em}
