*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{position:relative;margin:0;background:#30217f;color:#fff;font-family:Arial,Helvetica,sans-serif}body:before{content:'';position:absolute;top:0;left:0;right:0;height:900px;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 100% 0,#7558c6,transparent 65%)}header,main,footer{position:relative;z-index:1}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ff9075;outline-offset:6px}.skip{position:absolute;left:12px;top:-60px;background:#fff;color:#30217f;padding:12px;z-index:10}.skip:focus{top:12px}header{position:sticky;top:12px;z-index:30;margin:12px 12px 0;background:#27177488;backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:space-between;padding:20px 25px;border-radius:20px;color:#fff}.brand{display:flex;gap:15px;align-items:center;font-weight:800;font-size:32px}.brand span{font-size:15px;letter-spacing:.08em}.logo{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:800;letter-spacing:-.04em}.logo b{display:grid;place-items:center;width:34px;height:37px;background:currentColor;border-radius:4px;color:#f2fca7;font-size:0}.logo b:after{content:'F';font-size:29px;color:#30217f}.logo>span{font-size:10px;letter-spacing:.07em;margin-left:25px}nav{display:flex;align-items:center;gap:35px;font-size:16px;font-weight:600}.entry{background:#f2fca7;color:#30217f;padding:15px 22px;border-radius:40px}section{padding:90px 7%}.eyebrow,.section-label{font-size:12px;letter-spacing:.13em;font-weight:700}.section-label{border-top:1px solid currentColor;padding-top:20px;margin-bottom:55px}h1,h2,p{margin-top:0}h1{font-size:clamp(64px,8.5vw,138px);line-height:.98;letter-spacing:-.065em;font-weight:500;margin:55px 0}em{font-style:normal;color:#f2fca7}h2{font-size:clamp(46px,5.4vw,86px);line-height:1.03;letter-spacing:-.055em;font-weight:500;margin-bottom:28px}p{font-size:18px;line-height:1.6;max-width:610px}.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.hero-bottom p{font-size:23px;max-width:720px}.arrow{display:grid;place-items:center;border:1px solid #ffffff88;border-radius:50%;width:85px;height:85px;font-size:40px;flex-shrink:0}.sequence{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff50;padding-top:30px;margin-top:60px;font-size:clamp(18px,2.4vw,34px);letter-spacing:-.03em}.sequence b{font-weight:400;color:#f2fca7}.learn{background:#f2fca7;color:#30217f}.learn em{color:#7851c5}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:start}.lead{font-size:clamp(23px,2.2vw,34px);line-height:1.3;letter-spacing:-.025em}.numbers{display:flex;gap:40px;margin-top:40px}.numbers strong{display:block;font-size:65px;font-weight:500;letter-spacing:-.07em}.numbers span{font-size:13px}.curriculum{list-style:none;counter-reset:level;margin:45px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:55px}.curriculum li{counter-increment:level;padding:22px 0;border-top:1px solid #30217f44;font-size:22px;letter-spacing:-.025em}.curriculum li:before{content:'0'counter(level);display:inline-block;width:48px;font-size:12px;vertical-align:middle}.practice{background:#ff957b;color:#30217f}.practice em{color:#fff8dd}.conversation{padding-top:15px}.buyer{font-size:clamp(34px,3.8vw,58px);letter-spacing:-.045em;line-height:1.12;margin:35px 0}.reply{border-top:1px solid #30217f66;padding-top:25px;font-size:24px}.conversation small{font-size:13px}.wave{height:60px;display:flex;gap:8px;align-items:center;margin-bottom:26px}.wave i{height:20%;width:7px;background:#5830b3;border-radius:8px;animation:pulse 2s ease-in-out infinite alternate}.wave i:nth-child(3n){height:90%;animation-delay:-.8s}.wave i:nth-child(3n + 1){height:55%;animation-delay:-1.4s}.refine{background:#e7dfff;color:#30217f}.refine em{color:#8550bb}.review{list-style:none;padding:0;margin-top:38px}.review li{border-top:1px solid #30217f44;padding:22px 0;font-size:21px}.review span{font-size:12px;margin-right:25px}.closing{padding-top:110px;padding-bottom:110px}.closing a{display:flex;justify-content:space-between;border-bottom:1px solid #f2fca7;padding:20px 0;font-size:26px;max-width:600px;color:#f2fca7}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:35px 5%;border-top:1px solid #ffffff35}footer p,footer>a:last-child{font-size:13px;margin:0}@keyframes pulse{to{transform:scaleY(.45)}}@media(max-width:700px){.brand span{font-size:11px}.brand{font-size:26px;gap:9px}section{padding:65px 7%}h1{margin:38px 0;font-size:64px}.hero-bottom p{font-size:19px}.arrow{height:52px;width:52px;font-size:25px}.split{grid-template-columns:1fr;gap:25px}.section-label{margin-bottom:35px}.sequence{gap:10px;font-size:16px}.sequence b{display:none}.numbers{justify-content:space-between;gap:15px}.curriculum{grid-template-columns:1fr}.curriculum li{font-size:20px}footer{flex-wrap:wrap}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.wave i{animation:none}}
/* Interior pages only; the landing page does not load this stylesheet. */
nav a[aria-current=page]{color:#f2fca7;text-decoration:underline;text-underline-offset:8px}.text-link{font-size:18px;border-bottom:1px solid currentColor;padding:12px 0;white-space:nowrap}.feature-hero h1{font-size:clamp(60px,8vw,128px)}.large-wave{height:100px;margin:45px 0 0;gap:1.4%;justify-content:space-between}.large-wave i{width:1%;background:currentColor}.demo-section{background:#30217f}.choices button{width:100%;display:flex;justify-content:space-between;gap:20px;background:none;border:0;border-top:1px solid #ffffff66;color:white;text-align:left;font:inherit;font-size:21px;line-height:1.5;padding:23px 0;cursor:pointer}.choices button:hover,.choices button[aria-pressed=true]{color:#f2fca7}.choices button span{flex-shrink:0}button:focus-visible,summary:focus-visible{outline:3px solid #ff957b;outline-offset:5px}#opening-result{min-height:150px;border-bottom:1px solid #ffffff66;padding:20px 0}#opening-result p{font-size:18px;margin-bottom:0;color:#f2fca7}.editorial-rows{margin-top:55px}.editorial-rows article{display:grid;grid-template-columns:140px 1fr 1fr;gap:35px;border-top:1px solid #30217f55;padding:30px 0}.editorial-rows article>span{font-size:12px;letter-spacing:.08em;padding-top:7px}h3{font-size:30px;font-weight:500;letter-spacing:-.035em;margin:0}.editorial-rows p{margin-bottom:0}.academy-statline{display:flex;gap:8%;margin-top:55px;border-top:1px solid #30217f55;padding-top:20px}.academy-statline span{display:flex;align-items:baseline;gap:15px}.academy-statline b{font-size:70px;font-weight:500;letter-spacing:-.07em}.level-list{margin-top:45px}.level-list details{border-top:1px solid #ffffff66}.level-list summary{display:flex;align-items:center;gap:35px;cursor:pointer;padding:28px 0;list-style:none}.level-list summary::-webkit-details-marker{display:none}.level-list summary>span{font-size:14px;color:#f2fca7}.level-list summary h3{flex:1;font-size:clamp(25px,3vw,45px)}.level-list summary b{font-size:32px;font-weight:400;transition:transform .2s}.level-list details[open] summary b{transform:rotate(45deg)}.level-copy{padding:0 0 35px 53px}.level-copy p{font-size:20px}.school-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 50px;padding:0;margin:40px 0 0}.school-list li{display:flex;justify-content:space-between;border-top:1px solid #30217f55;padding:25px 0;font-size:26px}.school-list li span{color:#8550bb}.review-switch{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.review-switch button{font:inherit;font-size:16px;border:1px solid #ffffff88;background:none;color:white;padding:15px 20px;cursor:pointer;border-radius:30px}.review-switch button[aria-pressed=true]{background:#f2fca7;color:#30217f;border-color:#f2fca7}.next-drill{border-top:1px solid #ffffff66;padding-top:25px;margin-top:25px}.next-drill>p:last-child{color:#f2fca7}.refine .text-link,.learn .text-link,.practice .text-link{color:#30217f}@media(max-width:900px){header{padding:16px;margin:8px 8px 0;top:8px;border-radius:14px;flex-wrap:wrap;gap:14px}.logo{font-size:19px}.logo>span{display:none}.logo b{width:26px;height:30px}nav{font-size:13px;width:100%;justify-content:space-between;flex-wrap:wrap;gap:10px}.entry{padding:12px;font-size:13px}nav>a:nth-child(2){display:block}.editorial-rows article{grid-template-columns:100px 1fr}.editorial-rows article p{grid-column:2}.academy-statline span{display:block}.academy-statline b{display:block}footer nav{flex-wrap:wrap}}@media(max-width:600px){.hero-bottom{align-items:flex-start;flex-direction:column;gap:15px}.feature-hero h1{font-size:60px}.academy-statline{gap:0;justify-content:space-between}.academy-statline span{font-size:12px}.academy-statline b{font-size:60px}.editorial-rows article{grid-template-columns:1fr;gap:14px}.editorial-rows article p{grid-column:auto}.school-list{grid-template-columns:1fr}.level-list summary{gap:15px}.level-copy{padding-left:0}.school-list li{font-size:23px}.large-wave{height:70px}.text-link{white-space:normal}footer nav{gap:18px}.choices button{font-size:19px}}@media(prefers-reduced-motion:reduce){.level-list summary b{transition:none}}
.academy-hero{background:#f2fca7;padding-top:55px}.academy-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.academy-intro h1{font-size:clamp(62px,6.5vw,106px);margin:35px 0}.academy-intro>div>p{font-size:22px}.academy-intro .text-link{display:inline-block}.call-map{position:relative;padding:30px 0 10px 35px;border-left:1px solid #30217f55}.call-map>a{display:grid;grid-template-columns:65px 1fr;column-gap:20px;border-top:1px solid #30217f55;padding:24px 0;position:relative;transition:padding-left .2s}.call-map>a:hover{padding-left:12px}.call-map>a:before{content:'';position:absolute;width:13px;height:13px;border-radius:50%;background:#30217f;left:-42px;top:36px;box-shadow:0 0 0 7px #f2fca7}.call-map>a:nth-of-type(2):before{background:#8750be}.call-map>a:nth-of-type(3):before{background:#df634d}.map-number{font-size:12px;grid-row:span 2;padding-top:13px}.call-map strong{font-size:clamp(32px,3.5vw,54px);font-weight:500;letter-spacing:-.05em}.call-map a>span:last-child{font-size:15px;margin-top:8px}.call-map .map-caption{font-size:12px;margin:20px 0 0}.academy-hero .academy-statline{margin-top:40px;justify-content:space-between}.academy-statline b{font-size:52px}.lesson-example{border-left:2px solid #f2fca7;padding:5px 0 5px 25px;margin:25px 0}.lesson-example blockquote{margin:12px 0;font-size:30px;line-height:1.3;max-width:780px;letter-spacing:-.03em}.lesson-example p:last-child{margin:16px 0 0;font-size:17px}.level-list details:target{scroll-margin-top:30px}.level-list details:target summary{color:#f2fca7}@media(max-width:850px){.academy-intro{grid-template-columns:1fr}.call-map{margin-top:40px;margin-left:7px}.academy-intro h1{font-size:clamp(60px,10vw,88px)}.academy-intro>div>p{font-size:20px}.academy-hero .academy-statline{gap:15px}.lesson-example blockquote{font-size:24px}}@media(prefers-reduced-motion:reduce){.call-map>a{transition:none}}

.practice.feature-hero h1 em{color:#30217f;text-decoration:underline;text-decoration-color:#f2fca7;text-decoration-thickness:.045em;text-underline-offset:.1em}

/* Scroll-reveal + hover polish shared by every interior page (paired with interior.js). */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.reveal.is-visible{opacity:1;transform:translateY(0)}
nav a{transition:color .25s ease,opacity .25s ease}
nav a:not(.entry):not([aria-current=page]):hover{opacity:.7}
.entry{transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease}
.entry:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 10px 30px -8px #f2fca7aa}
.closing a{transition:padding-left .3s cubic-bezier(.16,1,.3,1),border-color .3s ease}
.closing a:hover{padding-left:14px;border-color:#fff}
.closing a span{display:inline-block;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.closing a:hover span{transform:translate(5px,-5px)}
.text-link{transition:border-color .25s ease,opacity .25s ease}
.text-link:hover{opacity:.75}
footer nav a{transition:opacity .25s ease}
footer nav a:hover{opacity:.65}
.hero{position:relative;overflow:hidden}
.hero>*{position:relative;z-index:1}
.hero:before{content:'';position:absolute;inset:-25% -10%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 30% 25%,#ff957b4d,transparent 60%);animation:heroDrift 16s ease-in-out infinite alternate}
@keyframes heroDrift{0%{transform:translate(-3%,-2%) scale(1)}100%{transform:translate(4%,3%) scale(1.1)}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.entry:hover{transform:none}.closing a:hover span{transform:none}.hero:before{animation:none}}
