:root{--red:#be1014;--navy:#152646;--ink:#1c2b42;--muted:#5d6877;--paper:#f5f4f0;--line:#d7dce1;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:98px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'Avenir Next','Segoe UI',Arial,sans-serif}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{line-height:1.14;letter-spacing:-.04em}h2{font-size:clamp(2.1rem,3.3vw,3.4rem);margin-bottom:25px;font-weight:750}h3{font-size:1.55rem}p{margin-bottom:20px}em{font-style:normal}.wrap{width:min(1220px,calc(100% - 64px));margin:auto}.skip{position:absolute;left:-9999px;top:0;padding:12px;background:white;z-index:100}.skip:focus{left:10px}.site-header{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line)}.header-row{height:86px;display:flex;align-items:center;gap:35px;justify-content:space-between}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:1.1rem;letter-spacing:.06em}.brand img{width:58px;height:58px}.brand small{display:block;font-size:.61rem;letter-spacing:.18em}.header-row nav{display:flex;align-items:center;gap:24px;font-size:.9rem;font-weight:700}.nav-action{border-bottom:1px solid var(--red);color:var(--red);padding:8px 0}.header-phone{font-weight:800;white-space:nowrap;font-size:1rem}.header-phone span{display:block;font-size:.61rem;letter-spacing:.12em;color:var(--muted);font-weight:700}.menu-button{display:none}a:hover{color:var(--red)}.hero{background:var(--red);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:8%;padding:75px 0 60px}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.15em;color:var(--red);line-height:1.5;margin-bottom:24px}.eyebrow.light{color:#efc7cd}h1{font-size:clamp(2.75rem,4.5vw,4.9rem);letter-spacing:-.055em;font-weight:750;margin-bottom:28px;line-height:1.09}h1 span{display:block}h1 em{display:block;font-family:Georgia,serif;font-weight:400;font-size:.72em;line-height:1.23;margin-top:12px;color:#ffd9b7}.hero-lead{font-size:1.04rem;color:#fae3e7;max-width:560px}.hero-actions{display:flex;gap:23px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:23px;font-weight:750;padding:15px 21px;border:0;line-height:1.4;transition:transform .18s,background .18s}.button.white{background:#fff;color:var(--red)}.button.dark{background:var(--navy);color:#fff}.button:hover{transform:translateY(-2px);background:#f1dce0;color:var(--red)}.hero-text-link{border-bottom:1px solid #edabb5;font-size:.87rem;color:#fff}.hero-text-link:hover{color:#ffd9b7}.quick-start{background:var(--paper);color:var(--navy);padding:30px 28px 25px;box-shadow:10px 10px 0 #861728;position:relative}.quick-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.quick-top>span{font-size:.62rem;letter-spacing:.14em;font-weight:800;max-width:190px}.quick-top img{width:90px;height:95px;object-fit:contain;position:absolute;top:-35px;right:16px;transform:rotate(7deg)}.quick-title{font-size:2rem;font-weight:750;letter-spacing:-.04em;line-height:1.13;margin:25px 0 24px}.age-picks{border-top:1px solid #cbd1d8}.age-picks a{display:flex;align-items:center;gap:18px;padding:15px 0;border-bottom:1px solid #cbd1d8;transition:padding .2s}.age-picks a:hover{padding-left:7px}.age-picks b{font-size:1.45rem;font-weight:750;min-width:68px;letter-spacing:-.03em}.age-picks span{font-size:.83rem}.age-picks i{margin-left:auto;font-style:normal;font-size:1.3rem;color:var(--red)}.quick-call{display:block;font-size:.8rem;margin-top:24px}.quick-call strong{color:var(--red)}.hero-foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff50;padding:20px 0;font-size:.66rem;font-weight:700;letter-spacing:.13em}.hero-foot a:hover{color:#ffd9b7}.section{padding:95px 0}.section-rail{display:grid;grid-template-columns:1fr 2fr;align-items:baseline;gap:50px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:48px}.section-rail .eyebrow,.section-rail h2{margin:0}.about{background:#fff}.about-content{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.statement{font-size:clamp(2.7rem,4.5vw,4.7rem);line-height:1.1;letter-spacing:-.055em;font-weight:750}.statement em{font:italic 1em/1.12 Georgia,serif;color:var(--red)}.about-prose{color:var(--muted);font-size:1.02rem}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin:48px 0 0;border-top:1px solid var(--line);padding-top:27px;gap:22px}.facts dt{font-size:clamp(1.6rem,2.5vw,2.5rem);font-weight:750;letter-spacing:-.045em;line-height:1.2;color:var(--red)}.facts dd{margin:8px 0 0;font-size:.82rem;color:var(--muted)}.method{background:var(--navy);color:white}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.method-intro h2{font-size:1.35rem;font-weight:600;letter-spacing:0;margin-bottom:32px}.method-big{font-size:clamp(3rem,5vw,5.2rem);line-height:1.05;letter-spacing:-.045em;font-weight:750;margin-bottom:29px}.method-big em{font:italic 1em/1.1 Georgia,serif;color:#ffc3b1}.method-intro>p:last-child{color:#cdd6e3;max-width:500px}.method-list{border-top:1px solid #ffffff50}.method-list article{border-bottom:1px solid #ffffff50;padding:24px 0;display:flex;gap:35px}.method-list article>span{font-size:.76rem;color:#f0a9b2}.method-list h3{font-size:1.65rem;margin-bottom:7px;letter-spacing:-.02em}.method-list p{margin:0;font-size:.9rem;color:#bdcadb}.program-tabs{display:flex;border-bottom:1px solid var(--navy)}.program-tabs button{border:0;background:transparent;padding:14px 22px;color:var(--navy);font-weight:750;font-size:1.02rem;min-width:160px;flex:1}.program-tabs button[aria-selected=true]{background:var(--navy);color:#fff}.program-tabs button:hover{background:#dce2e7}.program-tabs button[aria-selected=true]:hover{background:var(--navy)}.program-panel{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%;padding:55px 20px 10px;animation:fade-in .25s ease-out}.program-panel[hidden]{display:none}.program-number{font-size:clamp(5rem,11vw,10rem);font-weight:750;letter-spacing:-.09em;line-height:1;color:var(--red)}.program-number span{display:block;font-size:.76rem;letter-spacing:.25em;font-weight:800;margin-top:20px}.program-description h3{font-size:clamp(2rem,3vw,3.1rem);margin-bottom:20px}.program-description>p:not(.eyebrow){color:var(--muted);max-width:440px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:3px;font-size:.9rem;font-weight:750;color:var(--red)}.trust{background:#e8edef}.trust-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:13%;align-items:start}.trust-grid>div>p:last-child{max-width:530px;color:var(--muted);margin:0}.trust-list{list-style:none;margin:0;padding:0;columns:1}.trust-list li{border-bottom:1px solid #c3cdd4;padding:12px 0 12px 24px;position:relative;font-weight:650;font-size:1rem}.trust-list li:before{content:'✓';position:absolute;left:0;color:var(--red);font-size:.85rem}.trust-list li:first-child{padding-top:0}.reviews{background:#fff}.quotes{display:grid;grid-template-columns:1.4fr 1fr;gap:10%;margin-bottom:30px}.quotes blockquote{margin:0}.quote-main{position:relative;padding-top:25px}.quote-main>span{font:7rem/.7 Georgia,serif;color:var(--red);display:block;position:absolute;top:0;left:-5px}.quote-main p{font:italic clamp(1.85rem,2.7vw,2.8rem)/1.27 Georgia,serif;letter-spacing:-.025em;padding-top:27px;margin:0}.quotes-side{display:grid;align-content:center}.quotes-side blockquote{padding:22px 0;border-bottom:1px solid var(--line)}.quotes-side blockquote:first-child{padding-top:0}.quotes-side p{font-size:1.02rem;margin:0;color:var(--muted)}.school-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:center}.school-copy h2{font-size:1.4rem;margin-bottom:24px}.school-statement{font-size:clamp(2.4rem,3.8vw,3.9rem);font-weight:750;line-height:1.1;letter-spacing:-.045em}.school-copy>p:not(.school-statement):not(.eyebrow){max-width:560px;color:var(--muted)}.district-label{display:block;font-size:.83rem;font-weight:700;margin:30px 0 8px}.district-action{display:flex;gap:8px;flex-wrap:wrap}.district-action select{background:white;border:1px solid #a6b0bd;padding:13px 12px;min-width:220px;flex:1;color:var(--navy);font-size:.9rem}.district-action .button{font-size:.87rem}.joey-figure{position:relative;margin:0;padding:80px 20px 10px;isolation:isolate;text-align:center}.joey-word{position:absolute;top:-3px;left:0;right:0;font:italic clamp(5rem,9vw,9rem)/1 Georgia,serif;color:#becfd3;z-index:-1}.joey-figure img{height:340px;width:100%;object-fit:contain}.joey-figure figcaption{font-size:.75rem;color:var(--muted);margin-top:15px}.pricing{background:white;border-top:1px solid var(--line)}.pricing-intro{color:var(--muted);margin-top:-15px;margin-bottom:30px}.price-table{border-top:1px solid var(--navy)}.price-table article{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding:26px 0}.price-table h3{margin-bottom:7px;font-size:1.55rem}.price-table p{margin:0;color:var(--muted);font-size:.92rem}.price-table a{font-size:.9rem;font-weight:750;color:var(--red);border-bottom:1px solid currentColor;white-space:nowrap}.signup{background:var(--red);color:#fff}.signup-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%;align-items:start}.signup-intro h2{font-size:clamp(2.5rem,4vw,4.2rem);line-height:1.05}.signup-intro>p{color:#f9e2e6;max-width:430px}.submission-note{font-size:.85rem;border-left:2px solid #f0acb7;padding-left:17px;margin-top:27px}.signup-phone{display:block;font-size:clamp(1.5rem,2.4vw,2.5rem);font-weight:750;letter-spacing:-.035em;margin-top:36px}.signup-phone:hover{color:#ffd9b7}.signup-phone span{display:block;font-size:.66rem;letter-spacing:.16em;color:#f2bec7;margin-bottom:6px}.office-hours{font-size:.77rem;margin-top:12px}.signup-form{background:#9c1325;padding:30px}.signup-form label{display:block;font-size:.83rem;font-weight:650;line-height:1.4;margin-bottom:17px}.signup-form input:not([type=checkbox]),.signup-form select{width:100%;min-height:47px;border:1px solid #dba3aa;border-radius:0;padding:10px 12px;background:white;color:var(--ink);margin-top:7px;font-size:1rem}.signup-form input::placeholder{color:#77818e}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.optional{font-weight:400;font-size:.76rem;color:#efc9ce}.signup-form .check-label{display:flex;gap:11px;margin:6px 0 23px;font-size:.75rem;font-weight:400;line-height:1.5;color:#fff}.check-label input{width:18px;height:18px;flex:0 0 18px;margin:3px 0 0;accent-color:var(--red)}.check-label a{text-decoration:underline}.check-label a:hover{color:#ffd9b7}.signup-form .button{width:100%;font-size:.92rem}.form-status{font-size:.84rem;margin:17px 0 0;padding:12px;border:1px solid #e7b8be}.copy-request{margin-top:14px;background:transparent;border:0;color:#fff;text-decoration:underline;font-size:.85rem;padding:0}.copy-request[hidden],.form-status[hidden]{display:none}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{padding:20px 35px 20px 0;font-size:1.04rem;font-weight:650;cursor:pointer;position:relative;list-style:none;line-height:1.4}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:1px;top:17px;font-size:1.5rem;color:var(--red);font-weight:400}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:.94rem;padding-right:25px;margin-bottom:24px}.site-footer{background:var(--navy);color:white;padding:60px 0 22px}.footer-grid{display:grid;grid-template-columns:.95fr 1.2fr .8fr;gap:8%}.footer-brand{font-size:2.3rem;font-weight:750;letter-spacing:-.06em;line-height:1}.footer-brand span{font-weight:400;color:#f2afb9}.footer-grid>div>p{font-size:.84rem;color:#c0ccdc;line-height:1.75;margin-top:18px}.footer-grid>div>a:not(.footer-brand){display:block;font-size:.87rem}.footer-grid h2{font-size:1.02rem;letter-spacing:0;margin-bottom:17px}.footer-grid .footer-small{font-size:.73rem;color:#9fafc3}.footer-links{display:flex;flex-direction:column;gap:13px}.footer-links a{font-size:.8rem}.site-footer a:hover{color:#f6b7c0}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff30;padding-top:23px;margin-top:42px;font-size:.75rem;color:#b6c3d6}.mobile-actions{display:none}:focus-visible{outline:3px solid #1685ab;outline-offset:4px}input:focus-visible,select:focus-visible{outline:3px solid #ffbf66;outline-offset:1px}.legal-main{padding:70px 0 100px;background:#fff;min-height:75vh}.legal-wrap{max-width:790px;margin:auto;width:calc(100% - 44px)}.legal-main h1{font-size:clamp(2.2rem,4.5vw,3.4rem);color:var(--navy);margin-top:30px}.legal-main h2{font-size:1.35rem;margin-top:35px}.legal-main ol{padding-left:23px}.legal-main li{margin:14px 0;color:var(--muted)}.legal-main a{color:var(--red);text-decoration:underline}.legal-main p{color:var(--muted)}@keyframes fade-in{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.header-row{gap:18px}.header-row nav{gap:16px;font-size:.82rem}.header-phone{font-size:.85rem}.hero-grid{gap:5%;grid-template-columns:1.2fr 1fr}.quick-start{padding:24px 21px}.quick-top>span{max-width:150px;font-size:.59rem}.hero-actions{gap:18px}.signup-grid{gap:6%}.signup-form{padding:24px}.form-row{gap:12px}.footer-grid{gap:5%}}
@media(max-width:760px){html{scroll-padding-top:82px}.wrap{width:calc(100% - 36px)}.header-row{height:72px;gap:15px}.brand{font-size:.9rem}.brand img{width:48px;height:48px}.brand small{font-size:.52rem}.header-phone{margin-left:auto;font-size:.83rem}.header-phone span{font-size:.55rem}.menu-button{display:flex;gap:8px;align-items:center;border:0;background:white;color:var(--navy);font-size:.8rem;order:3;padding:8px 0}.menu-button span{font-size:1.4rem}.header-row nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;box-shadow:0 12px 20px #15264620;padding:17px 24px;flex-direction:column;align-items:stretch;gap:0}.header-row nav.open{display:flex}.header-row nav a{padding:11px 0}.hero-grid{grid-template-columns:1fr;padding:43px 0 32px;gap:50px}.hero-copy .eyebrow{font-size:.62rem;margin-bottom:22px}h1{font-size:clamp(2.7rem,8.4vw,4rem)}.hero-lead{font-size:.95rem}.hero-actions{gap:18px}.hero-actions .button{font-size:.9rem}.hero-text-link{font-size:.84rem}.quick-start{padding:25px 23px 23px}.quick-title{font-size:1.7rem;margin-top:16px}.quick-title br{display:none}.quick-top>span{max-width:220px}.quick-top img{width:78px;height:83px;top:-30px}.hero-foot{font-size:.54rem;letter-spacing:.07em;gap:10px}.hero-foot>span:nth-child(2){display:none}.section{padding:66px 0}.section-rail{grid-template-columns:1fr;gap:12px;margin-bottom:30px;padding-bottom:24px}.section-rail .eyebrow{font-size:.64rem}.about-content,.method-grid,.program-panel,.trust-grid,.quotes,.school-grid,.signup-grid,.faq-grid{grid-template-columns:1fr;gap:28px}.statement{font-size:3.2rem;margin-bottom:0}.statement br{display:none}.statement em{display:block}.about-prose{font-size:.97rem}.facts{grid-template-columns:repeat(2,1fr);margin-top:22px;gap:27px}.facts dt{font-size:2rem}.facts dd{font-size:.77rem}.method-big{font-size:3.4rem}.method-intro h2{margin-bottom:24px}.method-list article{padding:19px 0}.method-list h3{font-size:1.4rem}.program-tabs button{min-width:0;padding:13px 9px;font-size:.91rem}.program-panel{padding:30px 0 0;gap:26px}.program-number{font-size:5.7rem}.program-number span{display:inline-block;margin:0 0 0 18px;letter-spacing:.15em}.program-description .eyebrow{font-size:.64rem;margin-bottom:15px}.program-description h3{font-size:2.1rem}.trust-list li{font-size:.96rem}.quote-main p{font-size:2rem}.quotes{gap:29px}.quotes-side blockquote{padding:21px 0}.school-copy h2{font-size:1.2rem}.school-statement{font-size:2.6rem}.joey-figure{padding-top:80px}.joey-figure img{height:290px}.joey-word{font-size:7.3rem}.district-action{gap:10px}.district-action select{flex-basis:100%}.price-table article{padding:23px 0;align-items:start}.price-table h3{font-size:1.25rem}.price-table p{font-size:.85rem;max-width:220px}.price-table a{font-size:.77rem}.signup-intro h2{font-size:2.7rem}.signup-form{padding:24px 19px}.signup-phone{margin-top:25px;font-size:1.9rem}.faq-grid{gap:17px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div>p{margin-bottom:12px}.footer-links{gap:15px}.site-footer{padding-bottom:94px}.mobile-actions{display:flex;gap:7px;position:fixed;z-index:45;bottom:0;left:0;right:0;background:#fff;padding:9px 10px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -4px 22px #15264625}.mobile-actions a{flex:1;text-align:center;background:var(--navy);color:#fff;font-size:.79rem;font-weight:750;line-height:1.4;padding:12px 5px}.mobile-actions a:last-child{background:var(--red)}}
@media(max-width:410px){.brand>span{display:none}.header-phone{font-size:.81rem}.form-row{grid-template-columns:1fr;gap:0}.hero-actions{align-items:start;flex-direction:column}.price-table article{display:block}.price-table article a{display:inline-block;margin-top:12px}.facts dt{font-size:1.7rem}.quick-top>span{max-width:180px}.hero-foot{font-size:.51rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.program-panel{animation:none}*,*:before,*:after{transition:none!important}}
/* Joey's paper is an actionable invitation, with no focus or audio interruption. */
.joey-callback{position:fixed;z-index:55;left:22px;bottom:24px;width:355px;height:245px;pointer-events:none;filter:drop-shadow(0 12px 15px #10253a28)}.joey-callback[hidden]{display:none}.joey-callback.arriving{animation:joey-arrives .85s cubic-bezier(.22,.68,.32,1) both}.flying-joey{position:absolute;left:0;bottom:0;width:195px;height:207px;object-fit:contain;pointer-events:none}.joey-paper{position:absolute;top:112px;left:106px;width:240px;background:#fff;border:1px solid #e1dace;transform:rotate(-5deg);box-shadow:3px 5px 0 #1328461f;pointer-events:auto}.joey-close{position:absolute;right:0;top:0;z-index:2;width:39px;height:39px;border:0;background:transparent;font-size:1.55rem;line-height:1;color:#727d88}.callback-launch{display:block;width:100%;border:0;background:transparent;color:var(--navy);text-align:left;padding:24px 22px 20px}.callback-launch strong{display:block;font-size:1.43rem;line-height:1.1;letter-spacing:-.04em}.callback-launch>span{display:block;font-size:.73rem;color:var(--red);font-weight:750;margin-top:11px}.joey-callback.expanded{height:auto;width:355px;bottom:24px}.joey-callback.expanded .flying-joey{bottom:auto;top:-86px;left:1px;width:116px;height:123px;transform:rotate(-9deg)}.joey-callback.expanded .joey-paper{position:relative;top:0;left:0;transform:none;width:100%;padding:24px}.callback-launch[hidden],#callback-form[hidden]{display:none}#callback-form h3{font-size:1.7rem;line-height:1.08;margin-bottom:20px}#callback-form>label:not(.callback-consent){display:block;font-size:.83rem;font-weight:700;margin-bottom:6px}#callback-phone{width:100%;min-height:45px;border:1px solid #aeb7c0;padding:10px;color:var(--navy);background:#fff;font-size:1rem}.callback-consent{display:flex;gap:8px;align-items:start;margin:13px 0;font-size:.68rem;line-height:1.45;color:var(--muted)}.callback-consent input{width:16px;height:16px;flex:0 0 16px;accent-color:var(--red);margin:2px 0 0}.callback-consent a{text-decoration:underline}.callback-explainer{font-size:.73rem;line-height:1.5;color:var(--muted);margin:14px 0}.joey-callback .button{width:100%;font-size:.8rem;padding:12px}.callback-status{font-size:.75rem;color:var(--navy);margin:13px 0 0;line-height:1.45}.callback-status[hidden]{display:none}@keyframes joey-arrives{0%{transform:translate(-470px,-180px) rotate(-13deg);opacity:0}15%{opacity:1}76%{transform:translate(12px,-8px) rotate(2deg)}100%{transform:translate(0,0) rotate(0)}}@media(max-width:760px){.joey-callback{left:12px;bottom:80px;width:330px;height:213px}.flying-joey{width:164px;height:176px}.joey-paper{top:91px;left:90px;width:229px}.callback-launch{padding:23px 20px 19px}.callback-launch strong{font-size:1.3rem}.joey-callback.expanded{bottom:79px;width:min(355px,calc(100vw - 24px))}.joey-callback.expanded .joey-paper{max-height:calc(100dvh - 170px);overflow:auto}}@media(max-width:350px){.joey-callback:not(.expanded){transform-origin:left bottom;scale:.88}}@media(prefers-reduced-motion:reduce){.joey-callback.arriving{animation:none}}
/* Visible, repeatable arrival; the parrot and the paper travel together. */
.joey-replay-row{padding-bottom:24px}.joey-replay-row button{background:transparent;border:1px solid #ffffff85;color:#fff;padding:9px 14px;font-size:.85rem;font-weight:650}.joey-replay-row button:hover{background:#ffffff15}.joey-replay-row button span{margin-left:18px}.joey-callback{z-index:70}.joey-callback.arriving{animation:joey-visible-flight 2.7s cubic-bezier(.23,.56,.33,1) both}.joey-close{width:44px;height:44px}.callback-launch{padding-right:35px}@keyframes joey-visible-flight{0%{transform:translate(calc(100vw + 380px),-42vh) rotate(-12deg) scale(.72)}24%{transform:translate(68vw,-34vh) rotate(-5deg) scale(.84)}60%{transform:translate(27vw,-18vh) rotate(7deg) scale(1)}85%{transform:translate(2vw,-3vh) rotate(-3deg)}100%{transform:translate(0,0) rotate(0)}}@media(prefers-reduced-motion:reduce){.joey-callback.arriving{animation:none}}

@media(prefers-reduced-motion:reduce){.joey-callback.arriving.manual-flight{animation:joey-visible-flight 2.7s cubic-bezier(.23,.56,.33,1) both}}
/* The card belongs to the mascot illustration. Only its live text is overlaid. */
.joey-callback:not(.expanded){width:min(430px,calc(100vw - 24px));height:auto;aspect-ratio:1221 / 910;left:12px;bottom:24px;scale:1}.joey-callback:not(.expanded) .flying-joey{position:absolute;top:0;left:0;bottom:auto;width:100%;height:auto;max-width:none;clip-path:url(#joey-cutout);transform:none}.joey-callback:not(.expanded) .joey-paper{position:absolute;top:65.2%;left:25%;width:54%;height:32%;border:0;background:transparent;box-shadow:none;transform:none;padding:0}.joey-callback:not(.expanded) .callback-launch{padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;font-size:clamp(13px,3.5vw,16px);line-height:1.16;color:#424242}.joey-callback:not(.expanded) .callback-launch strong{font-size:1.1em;line-height:1.1;letter-spacing:0;margin:0 0 4px}.joey-callback:not(.expanded) .callback-launch .callback-copy{margin:0;color:#424242;font-size:1em;font-weight:400;line-height:1.16}.joey-callback>.joey-close{top:12px;right:2px;border-radius:50%;background:#fff;border:1px solid #d7dce1;pointer-events:auto}.joey-callback.expanded>.joey-close{top:0;right:0}.joey-callback.expanded .flying-joey{display:none}.joey-callback.expanded .joey-paper{padding-top:30px}.joey-callback:not(.expanded) .callback-launch:hover{color:var(--red)}@media(max-width:760px){.joey-callback:not(.expanded){bottom:80px}}@media(max-height:600px) and (min-width:761px){.joey-callback:not(.expanded){width:360px}.joey-callback:not(.expanded) .callback-launch{font-size:14px}}

/* Flying mascot carries its sign in both bird feet. */
.joey-callback:not(.expanded){width:min(400px,calc(100vw - 24px));aspect-ratio:1221 / 1289}.joey-callback:not(.expanded) .joey-paper{top:71%;left:19%;width:62%;height:25%}.joey-callback:not(.expanded) .callback-launch{font-size:clamp(13px,3.5vw,16px)}

/* Compact, scannable teaching method. */
.method-compact{background:#f1f4f8;color:var(--navy);padding:32px 0}.method-compact h2{font-size:1.55rem;letter-spacing:-.025em;line-height:1.2;margin:0 0 22px}.method-points{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.method-points li{padding-left:14px;border-left:3px solid var(--red)}.method-points h3{font-size:1.05rem;line-height:1.35;margin:0 0 5px;letter-spacing:0}.method-points p{font-size:.95rem;line-height:1.45;margin:0;color:#42516a}@media(max-width:900px){.method-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media(max-width:400px){.method-points{grid-template-columns:1fr;gap:14px}.method-compact{padding:26px 0}.method-compact h2{margin-bottom:18px}}

.adult-course{display:block;font-size:1rem;font-weight:700;padding:16px 0;color:var(--red);border-bottom:1px solid var(--line)}

/* Bright course chooser inspired by the supplied visual direction. */
.hero-choice{background:#fff;color:var(--navy);overflow:hidden;position:relative}.hero-choice::before{content:"";position:absolute;background:linear-gradient(135deg,#ed143b,#c90029);width:48%;height:90%;left:36%;top:4%;border-radius:65% 0 0 65%;opacity:.95;z-index:0}.hero-choice .hero-grid{width:min(1460px,calc(100% - 48px));display:grid;grid-template-columns:minmax(0,1.02fr) minmax(180px,.85fr) minmax(355px,1fr);gap:0;align-items:center;padding:34px 0 12px;position:relative;z-index:1;min-height:610px}.hero-choice .hero-copy{position:relative;z-index:2;padding:24px 0 20px}.hero-choice .eyebrow{color:var(--navy);font-size:.76rem;letter-spacing:.13em;font-weight:800;margin-bottom:20px}.hero-choice h1{font-size:clamp(2.7rem,4.5vw,5.1rem);line-height:1.04;letter-spacing:-.05em;margin:0 0 22px;max-width:630px}.hero-choice h1 span{color:var(--red)}.hero-choice .hero-lead{color:var(--navy);font-size:clamp(1.08rem,1.6vw,1.5rem);line-height:1.45;margin:0}.hero-choice .hero-actions{margin-top:27px;gap:17px}.hero-choice .button.red{background:var(--red);color:white;border:0;padding:14px 22px;font-size:.95rem}.hero-choice .hero-text-link{color:var(--navy);border-bottom:1px solid #8694aa;font-size:.86rem}.hero-benefits{display:flex;flex-wrap:wrap;gap:10px 17px;font-size:.78rem;font-weight:700;color:#4c5c73;margin-top:38px}.hero-benefits span:not(:last-child)::after{content:'·';margin-left:17px;color:var(--red)}.hero-visual{position:relative;align-self:stretch;min-height:560px;pointer-events:none}.hero-visual .hero-people{position:absolute;bottom:-12px;left:-38%;width:150%;height:100%;object-fit:contain;object-position:center bottom;z-index:1}.hero-visual .hero-parrot{position:absolute;top:4%;left:-35%;width:42%;height:auto;z-index:2;transform:rotate(-9deg)}.hero-choice .quick-start{border-radius:17px;box-shadow:0 18px 45px #13234021;background:#fff;padding:27px 27px 16px;z-index:3;align-self:center;min-width:0}.hero-choice .quick-eyebrow{color:var(--red);font-size:.77rem;letter-spacing:.14em;font-weight:800;margin:0 0 12px}.hero-choice .quick-title{font-size:clamp(1.7rem,2.1vw,2.3rem);line-height:1.12;margin:0 0 20px;letter-spacing:-.03em;color:var(--navy)}.hero-choice .age-picks{border:0;display:grid;gap:9px}.hero-choice .age-picks a{display:grid;grid-template-columns:1fr auto;gap:2px 10px;border:1px solid #dce1e9;border-radius:15px;padding:15px 17px;text-decoration:none;color:var(--navy);background:#fff;transition:border-color .15s,transform .15s}.hero-choice .age-picks a:hover{padding:15px 17px;border-color:var(--red);transform:translateY(-2px)}.hero-choice .age-picks b{font-size:1.1rem;color:var(--red);min-width:0;letter-spacing:0}.hero-choice .age-picks b small{font-size:.83rem;color:var(--navy);font-weight:650;margin-left:7px}.hero-choice .age-picks span{font-size:.79rem;color:var(--muted);grid-row:2;grid-column:1}.hero-choice .age-picks i{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#ffe8ec;grid-column:2;grid-row:1/3;font-weight:700}.hero-choice .quick-call{color:var(--navy);font-size:.74rem;margin-top:13px;padding:11px 0 0;display:block}.hero-choice .quick-call strong{color:var(--red)}.hero-choice .joey-replay-row{position:relative;z-index:3;padding-bottom:15px}.hero-choice .joey-replay-row button{color:var(--navy);border-color:#c7d0dc;background:#fff}.hero-choice .joey-replay-row button:hover{background:#f3f5f9}@media(max-width:1150px){.hero-choice .hero-grid{grid-template-columns:1fr minmax(345px,.9fr)}.hero-choice .hero-visual{position:absolute;width:42%;height:100%;left:26%;top:0;z-index:0;opacity:.45}.hero-choice::before{left:32%;width:54%}.hero-choice .hero-copy,.hero-choice .quick-start{z-index:2}.hero-choice .hero-copy{max-width:540px}.hero-choice h1{font-size:clamp(2.7rem,5vw,4.2rem)}}@media(max-width:760px){.hero-choice .hero-grid{width:calc(100% - 36px);grid-template-columns:1fr;min-height:0;gap:24px;padding:32px 0 10px}.hero-choice::before{left:56%;top:0;width:60%;height:42%;opacity:.15}.hero-choice .hero-copy{padding:0}.hero-choice h1{font-size:clamp(2.6rem,10vw,4.3rem);max-width:590px}.hero-choice .hero-lead{font-size:1.05rem}.hero-choice .hero-visual{display:none}.hero-choice .hero-actions{flex-direction:row;align-items:center}.hero-choice .hero-benefits{margin-top:20px;font-size:.69rem}.hero-choice .quick-start{width:100%;padding:22px 18px 15px;box-shadow:0 8px 25px #14244219}.hero-choice .quick-title{font-size:1.7rem;margin:0 0 16px}.hero-choice .age-picks{grid-template-columns:1fr 1fr}.hero-choice .age-picks a{padding:12px}.hero-choice .age-picks a:hover{padding:12px}.hero-choice .age-picks b{font-size:1rem}.hero-choice .age-picks b small{display:block;margin:2px 0 0}.hero-choice .age-picks span{font-size:.72rem}.hero-choice .age-picks i{width:30px;height:30px}.hero-choice .joey-replay-row{padding:0 0 16px}}@media(max-width:400px){.hero-choice .age-picks{grid-template-columns:1fr}.hero-choice .hero-actions{flex-direction:column;align-items:flex-start}}

/* Joey flies in one smooth arc, flaps separate wings, and rests centered. */
.joey-callback:not(.expanded){width:min(400px,calc(100vw - 24px),calc(82dvh * 1221 / 1289));height:auto;aspect-ratio:1221 / 1289;left:50%;top:50%;bottom:auto;scale:1;transform:translate(-50%,-50%);transform-origin:center;filter:drop-shadow(0 16px 24px #10253a33)}
.joey-callback:not(.expanded).arriving{animation:joey-center-flight 2.9s cubic-bezier(.22,.63,.26,1) both}
@keyframes joey-center-flight{0%{transform:translate(calc(56vw + 120px),calc(-50% - 36vh)) rotate(-17deg) scale(.67);opacity:0}12%{opacity:1}30%{transform:translate(calc(25vw - 50%),calc(-50% - 16vh)) rotate(9deg) scale(.86)}66%{transform:translate(calc(-50% - 7vw),calc(-50% + 4vh)) rotate(-5deg) scale(1.04)}86%{transform:translate(calc(-50% + 1vw),calc(-50% - 1vh)) rotate(2deg) scale(.99)}100%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:1}}
.joey-callback .joey-figure{position:absolute;inset:0;pointer-events:none}.joey-callback:not(.expanded) .joey-art{position:absolute;display:block;left:0;top:0;width:100%;height:auto;max-width:none;object-fit:contain;pointer-events:none}.joey-callback:not(.expanded) .flying-joey{clip-path:url(#joey-body);z-index:2}.joey-callback:not(.expanded) .joey-wing-left{clip-path:url(#joey-left);transform-origin:42% 34%;animation:joey-flap-left .64s ease-in-out infinite alternate;z-index:1}.joey-callback:not(.expanded) .joey-wing-right{clip-path:url(#joey-right);transform-origin:65% 36%;animation:joey-flap-right .64s ease-in-out infinite alternate;z-index:1}.joey-callback:not(.expanded) .joey-paper{z-index:3}.joey-callback>.joey-close{z-index:4;top:7px;right:2px}
@keyframes joey-flap-left{from{transform:rotate(13deg) translateY(3px)}to{transform:rotate(-13deg) translateY(-4px)}}@keyframes joey-flap-right{from{transform:rotate(-13deg) translateY(3px)}to{transform:rotate(13deg) translateY(-4px)}}
.joey-callback.expanded{width:min(355px,calc(100vw - 24px));left:50%;top:50%;bottom:auto;transform:translate(-50%,-50%);filter:drop-shadow(0 16px 24px #10253a33)}.joey-callback.expanded .joey-figure{display:none}.joey-callback.expanded .joey-paper{background:#fff;border:1px solid #d7dce1;box-shadow:0 12px 30px #14244228}.joey-callback.expanded>.joey-close{top:2px;right:2px}
@media(max-width:760px){.joey-callback:not(.expanded){top:calc((100dvh - 65px)/2);bottom:auto;width:min(340px,calc(100vw - 24px),calc(70dvh * 1221 / 1289))}.joey-callback.expanded{top:calc((100dvh - 65px)/2);bottom:auto}.joey-callback.expanded .joey-paper{max-height:calc(100dvh - 115px)}}
@media(prefers-reduced-motion:reduce){.joey-callback:not(.expanded).arriving{animation:none}.joey-callback:not(.expanded) .joey-wing{animation:none;transform:none}.joey-callback:not(.expanded).arriving.manual-flight{animation:joey-center-flight 2.9s cubic-bezier(.22,.63,.26,1) both}.joey-callback:not(.expanded).arriving.manual-flight .joey-wing-left{animation:joey-flap-left .64s ease-in-out infinite alternate}.joey-callback:not(.expanded).arriving.manual-flight .joey-wing-right{animation:joey-flap-right .64s ease-in-out infinite alternate}}

.faq-intro{max-width:330px;color:var(--muted);font-size:1rem;line-height:1.55;margin-top:20px}.faq-list .faq-cta{color:var(--red);font-weight:750;display:inline-block;margin-left:4px;text-decoration:underline;text-underline-offset:3px}

/* A concise editorial strip rooted in Enjoy School's teaching approach. */
.method-compact{background:#f7f8fa;color:var(--navy);padding:42px 0;border-block:1px solid #e3e8ee}.method-slice{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(34px,6vw,100px);align-items:center}.method-label{font-size:.75rem;letter-spacing:.13em;color:var(--red);font-weight:800;margin:0 0 13px}.method-lead h2{font-size:clamp(1.9rem,3.3vw,3.25rem);line-height:1.08;letter-spacing:-.035em;margin:0 0 20px}.method-lead h2 em{color:var(--red);font-style:normal}.method-lead a{display:inline-block;font-size:.95rem;font-weight:750;color:var(--navy);text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:4px}.method-steps{padding:0;margin:0;list-style:none;display:grid;gap:0}.method-steps li{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid #d5dde7;align-items:start}.method-steps li:first-child{border-top:1px solid #d5dde7}.method-num{color:var(--red);font-size:.8rem;font-weight:800;letter-spacing:.05em;margin-top:3px}.method-steps h3{font-size:1.1rem;line-height:1.25;margin:0 0 3px;letter-spacing:-.015em}.method-steps p{font-size:.9rem;color:#42516a;line-height:1.45;margin:0;max-width:470px}@media(max-width:760px){.method-compact{padding:30px 0}.method-slice{grid-template-columns:1fr;gap:22px}.method-lead h2{font-size:2rem;margin-bottom:14px}.method-steps li{padding:11px 0}.method-steps p{font-size:.87rem}}

/* Give the course chooser the lead role in the first screen. */
@media(min-width:1151px){.hero-choice .hero-grid{grid-template-columns:minmax(0,.78fr) minmax(150px,.62fr) minmax(470px,1.32fr)}.hero-choice h1{font-size:clamp(2.7rem,4vw,4.45rem)}}
@media(min-width:761px) and (max-width:1150px){.hero-choice .hero-grid{grid-template-columns:minmax(0,.76fr) minmax(430px,1.24fr)}.hero-choice .hero-copy{max-width:400px}.hero-choice h1{font-size:clamp(2.7rem,4.1vw,3.7rem)}}
@media(min-width:761px){.hero-choice .quick-start{padding:35px 35px 25px}.hero-choice .quick-title{font-size:clamp(2rem,2.5vw,2.7rem);margin-bottom:25px}.hero-choice .age-picks{gap:11px}.hero-choice .age-picks a{padding:19px 21px;min-height:81px}.hero-choice .age-picks a:hover{padding:19px 21px}.hero-choice .age-picks b{font-size:1.22rem}.hero-choice .age-picks b small{font-size:.9rem}.hero-choice .age-picks span{font-size:.86rem}.hero-choice .age-picks i{width:44px;height:44px}.hero-choice .quick-call{font-size:.83rem;margin-top:16px}}
@media(max-width:760px){.hero-choice .quick-start{padding:26px 21px 20px}.hero-choice .age-picks a{min-height:84px}.hero-choice .quick-title{font-size:1.9rem}}
.about .section-rail,.programs .section-rail{display:block}
