
:root{--ink:#27264e;--purple:#363193;--orange:#f46728;--cream:#fffbe5;--teal:#45a7aa;--muted:#69677b;--line:#e9e5dc;--coral:#ff8767;--max:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font-family:'Noto Sans SC','Microsoft YaHei',sans-serif;font-size:15px;line-height:1.85}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,h4,p,figure,blockquote{margin:0}h1,h2,h3{line-height:1.4;letter-spacing:-.045em}h1{font-weight:900}h2{font-size:34px;font-weight:800;margin-bottom:20px}h3{font-size:21px;font-weight:800}p{color:var(--muted)}p+p{margin-top:15px}address{font-style:normal;line-height:1.85}a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--teal);outline-offset:5px}.wrap,.nav-wrap,.guide-wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.section{padding:84px 0}.cream{background:var(--cream)}.soft-teal{background:#edf8f6}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;color:var(--purple);margin-bottom:17px}.lead{font-size:16px;max-width:690px}.small-note{font-size:12px;color:#625f70;margin-top:20px}.icon{width:48px;height:48px;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:50px;padding:12px 24px;background:var(--orange);color:white;border:0;border-radius:999px;font-size:14px;font-weight:800;box-shadow:0 8px 18px #f4672816;line-height:1.5;transition:transform .2s ease,background .2s ease}.button:hover{background:#e95319;transform:translateY(-2px)}.button-outline{background:white;border:1px solid var(--purple);color:var(--purple);box-shadow:none}.button-outline:hover{background:#f4f1ff}.text-link{display:inline-block;color:var(--purple);font-weight:700;font-size:14px;border-bottom:1px solid currentColor;padding-bottom:2px}.text-link:hover{color:var(--orange)}.sr-only,.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:8px}.header{position:sticky;top:0;z-index:30;background:#fffffffa;border-top:7px solid #bfdfda;border-bottom:1px solid #f1ede6}.nav-wrap{display:flex;align-items:center;gap:25px;min-height:96px}.brand{width:144px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;line-height:1}.logo-crop{position:relative;width:134px;height:44px;overflow:hidden}.logo-crop img{position:absolute;width:134px;height:134px;max-width:none;left:0;top:-44px;object-fit:initial}.brand>span:last-child{font-size:10px;font-weight:800;color:var(--purple);letter-spacing:.22em;margin-top:5px}.header nav{display:flex;gap:24px;align-items:center;margin-left:auto;white-space:nowrap}.header nav a{font-size:12px;font-weight:700}.header nav a:hover,.header nav a[aria-current]{color:var(--orange)}.header nav .art-nav{font-size:11px;color:var(--muted);border-left:1px solid #e9e5dc;padding-left:19px}.header-cta{font-size:12px;min-height:42px;padding:11px 18px;white-space:nowrap}.menu-toggle{display:none}.hero{background:var(--cream);position:relative;overflow:hidden;padding:65px 0 80px}.hero-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:50px;align-items:center;min-height:480px}.hero h1{font-size:47px;line-height:1.48;color:var(--purple);margin:16px 0 23px;letter-spacing:-.055em}.underline{position:relative;z-index:0}.underline:after{content:'';position:absolute;left:0;bottom:1px;width:100%;height:12px;background:#ffda6f;z-index:-1;transform:rotate(-2deg);border-radius:40%}.hero-description{font-size:15px;line-height:1.95}.hero-facts{display:flex;gap:0;margin:21px 0 29px;font-size:12px;font-weight:600;color:var(--purple)}.hero-facts span+span:before{content:'·';margin:0 11px;color:#a29b8b}.hero-actions{display:flex;align-items:center;gap:23px}.hero-actions .text-link{font-size:13px}.hero-note{font-size:11px;margin-top:18px;color:#615a50}.hero-visual{position:relative;height:445px;margin:12px 0 0 8px}.hero-photo{position:absolute;inset:30px 0 20px;width:100%;height:calc(100% - 50px);border-radius:40% 25% 35% 25% / 25% 38% 28% 40%;object-position:center;transform:rotate(-3deg)}.coral-blob{position:absolute;inset:-13px 13px 0 7px;background:var(--coral);border-radius:53% 37% 49% 38% / 38% 48% 40% 55%;transform:rotate(19deg)}.hero-sticker{position:absolute;top:0;right:-10px;z-index:2;background:white;box-shadow:0 5px 15px #45402008;border-radius:8px;transform:rotate(7deg);display:flex;align-items:center;gap:8px;padding:11px 13px;font-size:11px;font-weight:700;color:var(--purple)}.hero-sticker:before{content:'';position:absolute;top:-8px;left:50%;width:40px;height:17px;transform:translateX(-50%) rotate(-8deg);background:#f2cc6699}.hero-sticker .icon{width:22px;height:22px;color:var(--orange)}.doodle{position:absolute;z-index:2;pointer-events:none}.star-one{width:58px;height:58px;left:-30px;bottom:3px;color:var(--coral);fill:var(--coral);stroke:none;transform:rotate(-18deg)}.squiggle{width:70px;height:55px;left:-26px;top:13px;color:#f5cd57;transform:rotate(13deg)}.dots{position:absolute;bottom:-20px;right:0;width:107px;height:80px;background-image:radial-gradient(var(--coral) 3px,transparent 3px);background-size:18px 18px}.photo-caption{position:absolute;bottom:44px;left:46px;color:white;font-size:11px;font-weight:700;background:#27264e9c;padding:4px 12px;border-radius:30px;transform:rotate(-3deg)}.wave{height:17px;position:absolute;bottom:-1px;left:0;right:0;background:radial-gradient(circle at 12px 17px,white 12px,transparent 12.5px) 0 0/24px 20px repeat-x}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-heading h2{margin:0}.section-heading>.text-link{margin-bottom:6px;flex-shrink:0}.section-heading>p{max-width:370px;font-size:14px}.home-benefits{padding-top:55px;padding-bottom:70px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.benefit{padding:31px 30px 32px;border-radius:25px;text-align:center;color:white}.benefit .icon{height:46px;width:46px;margin:0 auto 16px}.benefit h3{color:white;font-size:20px;margin-bottom:11px}.benefit p{color:white;font-size:13px;line-height:1.85}.teal{background:var(--teal)}.purple{background:var(--purple)}.orange{background:var(--orange)}.split{display:grid;grid-template-columns:1fr 1fr;gap:86px;align-items:center}.split p{font-size:15px}.about-home{background:#fffdf6}.about-photo{position:relative;max-width:400px;margin:0 auto;width:100%}.about-photo>img{width:100%;height:385px;border-radius:30px 100px 30px 30px;object-position:50% 45%}.experience{position:absolute;right:-28px;bottom:25px;background:#f8d368;border:6px solid #fffdf6;display:flex;flex-direction:column;width:133px;height:133px;border-radius:50%;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--purple);line-height:1.4;transform:rotate(-7deg)}.experience strong{font-family:Nunito,sans-serif;font-size:55px;line-height:1.1}.about-copy h2{font-size:34px}.tick-list{list-style:none;margin:23px 0;padding:0;display:grid;gap:11px;font-size:13px}.tick-list li:before{content:'✓';margin-right:12px;color:var(--teal);font-weight:800}.photo-trio{display:grid;grid-template-columns:1fr 1fr 1fr;gap:23px}.photo-trio>a{border-radius:22px;overflow:hidden;position:relative;aspect-ratio:1.12;display:block;isolation:isolate}.photo-trio img{width:100%;height:100%;transition:transform .4s}.photo-trio a:hover img{transform:scale(1.03)}.photo-trio a:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#171932bf);z-index:0}.photo-trio a>span{position:absolute;bottom:23px;left:24px;color:white;z-index:1;font-weight:700;font-size:16px}.photo-trio small{display:block;font-size:11px;font-weight:400;margin-bottom:4px}.photo-trio a:last-child img{object-position:center 24%}.home-reviews{background:#f5f7ef}.reviews{display:grid;grid-template-columns:1fr 1fr;gap:25px}.reviews article{padding:25px 32px 30px;border-radius:24px;background:white}.quote{font-family:Georgia,serif;font-size:60px;line-height:1;color:var(--teal)}.reviews blockquote{font-family:Nunito,sans-serif;font-size:23px;font-weight:800;line-height:1.4;color:var(--purple);margin-bottom:17px}.reviews p{font-size:13px;min-height:50px;margin-bottom:20px}.reviews strong{font-family:Nunito,sans-serif;font-size:14px}.stars{color:#dc9f22;font-size:12px;margin-left:15px;letter-spacing:2px}.trial-banner{background:var(--cream);padding:52px 0}.trial-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:0 60px}.trial-inner h2{font-size:36px;margin-bottom:8px}.trial-inner .eyebrow{margin-bottom:11px}.trial-inner p:not(.eyebrow){font-size:13px}.trial-small{grid-column:2;text-align:center;margin-top:-5px;color:#8d8270}.short-visit{padding:57px 0 67px}.visit-mini{display:grid;grid-template-columns:1fr 1fr;gap:60px}.visit-mini h2{font-size:28px}.visit-mini address{font-size:13px;color:var(--muted)}.visit-mini p{font-size:12px;margin:12px 0 15px}.footer{background:#f7f6f2;color:var(--ink);padding:35px 0 105px}.footer-top{display:flex;justify-content:space-between;gap:30px;padding-bottom:27px;border-bottom:1px solid #e4e1d9}.footer strong{font-family:Nunito,sans-serif;color:var(--purple);font-size:16px;letter-spacing:.07em}.footer p{font-size:12px;margin-top:7px}.footer nav{display:flex;flex-wrap:wrap;max-width:520px;align-content:start;gap:10px 24px;font-size:12px}.footer-bottom{display:flex;align-items:center;gap:30px;padding-top:20px;font-size:11px;color:var(--muted)}.languages{margin-left:auto;display:flex;gap:17px}.languages span{color:var(--purple);font-weight:700}.floating-cta{position:fixed;right:24px;bottom:22px;z-index:40;display:flex;align-items:center;gap:10px;background:var(--orange);color:white;border:3px solid white;box-shadow:0 4px 16px #442b2a26;padding:11px 17px;border-radius:999px;font-size:13px;font-weight:700;transition:transform .2s}.floating-cta svg{width:25px;height:25px}.floating-cta:hover{transform:translateY(-3px)}.page-hero{background:var(--cream);padding:40px 0 55px;position:relative;overflow:hidden}.breadcrumb{color:#99918a;font-size:11px;display:inline-block;margin-bottom:22px}.page-hero h1{color:var(--purple);font-size:40px;max-width:850px;margin-bottom:18px}.page-hero .lead{font-size:15px}.page-doodle{position:absolute;right:7%;bottom:35px;transform:rotate(15deg);color:var(--coral);width:70px;height:70px;opacity:.65}.activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:23px}.activity-grid article{border-radius:20px;padding:25px;background:white;position:relative}.activity-grid .icon{color:var(--teal);width:42px;height:42px;margin-bottom:16px}.activity-grid h3{margin-bottom:12px}.activity-grid p{font-size:13px}.step{position:absolute;top:26px;right:24px;font-family:Nunito,sans-serif;font-size:24px;color:#e4d9ba;font-weight:800}.rounded-photo{border-radius:26px;width:100%;max-height:440px}.soft-teal img{height:400px;object-position:center 45%}.narrow{max-width:780px}details{border-top:1px solid var(--line);padding:20px 0}details:last-of-type{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:700;list-style:none;padding-right:26px;position:relative;font-size:15px}summary:after{content:'+';position:absolute;right:4px;color:var(--orange);font-size:22px;line-height:1}details[open] summary:after{content:'−'}details p{font-size:14px;margin-top:14px}details .text-link{margin-top:15px;font-size:12px}.narrow>p{margin-bottom:24px}.narrow>.text-link{margin-top:24px}.portrait-photo{max-width:410px}.portrait-photo img{height:490px;max-height:none}.centre-points{margin-top:26px;display:grid;gap:23px}.centre-points article{display:flex;gap:17px}.centre-points article>span{font-family:Nunito,sans-serif;color:var(--teal);font-size:23px;font-weight:800;line-height:1.5}.centre-points h3{font-size:18px;margin-bottom:8px}.centre-points p{font-size:13px}.simple-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.simple-grid article{border-top:3px solid var(--teal);padding-top:24px}.simple-grid article:nth-child(2){border-color:var(--orange)}.simple-grid article:nth-child(3){border-color:var(--purple)}.simple-grid h3{margin-bottom:14px;font-size:20px}.simple-grid p{font-size:14px}.simple-grid .text-link{font-size:12px;margin-top:18px}.gallery-tabs{display:flex;gap:35px;padding-top:28px;font-size:14px;font-weight:700;color:var(--purple)}.carousel{border-radius:30px;overflow:hidden;background:#f6f4ef;border:1px solid #eee6d7}.slide{display:grid;grid-template-columns:1.7fr 1fr;align-items:center;margin:0;animation:slide-reveal .4s ease}.slide[hidden]{display:none}.slide>a{height:460px;display:flex;align-items:center;justify-content:center;background:#efeee8}.slide img{width:100%;height:100%;object-fit:contain}.slide figcaption{padding:35px}.slide small{font-size:11px;letter-spacing:.08em;color:var(--teal);font-weight:700}.slide h3{font-size:25px;margin:14px 0}.slide p{font-size:14px}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:35px;padding:16px;background:white}.carousel-controls>button{width:38px;height:38px;border:1px solid #e8e1d1;border-radius:50%;background:white;color:var(--purple);font-size:19px}.carousel-controls>button:hover{background:var(--cream)}.carousel-dots{display:flex;gap:12px;align-items:center}.carousel-dots button{width:25px;height:25px;position:relative;border:0;padding:0;background:transparent}.carousel-dots button:after{content:'';width:8px;height:8px;background:#ded8c8;border-radius:50%;position:absolute;inset:0;margin:auto}.carousel-dots button[aria-current=true]:after{background:var(--orange);width:11px;height:11px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:35px 0}.gallery-grid figure{min-width:0}.gallery-grid a{display:block;position:relative;border-radius:18px;overflow:hidden}.gallery-grid img{width:100%;height:205px;transition:transform .3s}.gallery-grid a:hover img{transform:scale(1.025)}.gallery-grid a>span{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:white;color:var(--purple)}.gallery-grid figcaption{font-size:12px;margin-top:12px;color:var(--muted)}#graduates .gallery-grid img{height:320px;object-position:top}.lightbox{max-width:94vw;max-height:95dvh;padding:45px 15px 18px;border:0;border-radius:17px;background:#fffdf6;color:var(--ink);overflow:auto}.lightbox::backdrop{background:#11112fdd}.lightbox img{max-height:75dvh;max-width:85vw;object-fit:contain;margin:auto}.lightbox p{text-align:center;font-size:12px;margin-top:12px}.close-lightbox{position:absolute;right:12px;top:7px;width:32px;height:32px;border:none;border-radius:50%;background:#eeeadf;font-size:26px;color:var(--purple);line-height:1}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.contact-grid img{height:320px;object-position:50% 25%;margin-bottom:25px}.contact-grid h2{font-size:25px}.contact-grid address{font-size:14px;color:var(--muted)}.contact-buttons{display:flex;gap:12px;margin:22px 0}.hours-panel{padding:32px;background:#fffdf5;border-radius:24px}.hours-panel table{width:100%;border-collapse:collapse;font-size:14px}.hours-panel td,.hours-panel th{text-align:left;font-weight:400;border-bottom:1px solid #ede7d9;padding:13px 0;vertical-align:top}.hours-panel th{color:var(--purple);width:35%;font-weight:600}.hours-panel td{color:var(--muted)}.hours-panel .small-note{line-height:1.85}.trial-steps{padding-left:20px;color:var(--purple);font-size:14px;line-height:2.2;margin:20px 0}.trial-form{border-radius:24px;background:white;padding:32px;box-shadow:0 8px 25px #71602608}.trial-form h3{font-size:25px;margin-bottom:23px}.trial-form label{display:block;font-size:14px;font-weight:700;margin-bottom:12px}.trial-form select{display:block;width:100%;border:1px solid #dcd9cc;background:#fffdf6;padding:15px;border-radius:12px;color:var(--ink);margin-bottom:22px}.trial-form .button{width:100%}.form-status{font-size:12px}.form-status a{text-decoration:underline;color:var(--purple)}.guide-wrap{padding:35px 0 75px}.guide-breadcrumb{font-size:12px;color:#99918a;margin-bottom:30px}.guide-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.guide-hero h1{font-size:37px;color:var(--purple);margin-bottom:22px}.guide-hero img{height:300px;border-radius:25px;width:100%}.guide-hero figcaption{font-size:11px;color:var(--muted);margin-top:8px}.guide-lead{font-size:14px}.guide-reviewed{font-size:11px;margin-top:15px;color:#999}.guide-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;background:var(--cream);border-radius:22px;padding:28px;margin:40px 0}.guide-facts strong{display:block;font-size:19px;color:var(--purple)}.guide-facts span{display:block;font-size:12px;color:var(--muted);margin-top:3px}.guide-reading{display:grid;grid-template-columns:250px 1fr;gap:70px;align-items:start}.guide-toc{display:grid;gap:15px;position:sticky;top:125px;font-size:13px;background:#f7f7f2;border-radius:18px;padding:24px}.guide-toc strong{color:var(--purple);margin-bottom:5px}.guide-toc a:hover{color:var(--orange)}.guide-body section{padding:0 0 40px;margin-bottom:35px;border-bottom:1px solid var(--line)}.guide-body h2{font-size:24px}.guide-body p,.guide-body li{font-size:14px}.guide-body .text-link{margin-top:17px;font-size:13px}.guide-art{background:#f1f7f1;padding:28px;border-radius:22px;margin-bottom:35px}.guide-body .guide-cta{background:var(--cream);padding:30px;border-radius:22px;border:0}.guide-cta .button{margin-top:20px}@keyframes slide-reveal{from{opacity:.45;transform:translateX(5px)}to{opacity:1;transform:none}}
@media(min-width:1200px){.hero-visual{margin-right:8px}}@media(max-width:1150px){.nav-wrap{gap:18px}.header nav{gap:18px}.header nav .art-nav{padding-left:12px}.header-cta{display:none}.hero-grid{gap:35px}.hero h1{font-size:41px}.hero-visual{height:400px}.split{gap:50px}.slide>a{height:390px}}
@media(max-width:900px){.wrap,.nav-wrap,.guide-wrap{width:calc(100% - 48px)}.header nav{gap:16px}.header nav a{font-size:11px}.brand{width:126px}.hero-grid{gap:22px}.hero h1{font-size:34px}.hero-visual{height:360px}.hero-sticker{font-size:9px;right:-4px}.hero-facts{font-size:10px}.hero-facts span+span:before{margin:0 7px}.hero-description{font-size:13px}.hero-actions{gap:14px;flex-wrap:wrap}.hero-actions .button{font-size:12px;padding:13px 18px;gap:14px}.hero-actions .text-link{font-size:11px}.hero-note{font-size:10px}.section{padding:65px 0}h2,.about-copy h2{font-size:29px}.benefit{padding:27px 19px}.benefit h3{font-size:18px}.benefit p{font-size:12px}.photo-trio{gap:16px}.photo-trio a>span{font-size:13px;left:17px;bottom:17px}.experience{right:-15px;width:115px;height:115px}.split{gap:40px}.activity-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.slide{grid-template-columns:1.5fr 1fr}.slide>a{height:350px}.slide figcaption{padding:25px}.slide h3{font-size:22px}.contact-grid{gap:35px}.guide-reading{gap:35px;grid-template-columns:210px 1fr}.guide-hero{gap:30px}.guide-hero h1{font-size:30px}.trial-inner{gap:10px 25px}.hero-copy .desktop-break{display:none}}
@media(max-width:720px){html{scroll-padding-top:90px}.wrap,.nav-wrap,.guide-wrap{width:calc(100% - 40px)}.header{border-top-width:5px}.nav-wrap{min-height:76px;justify-content:space-between;gap:16px}.brand{width:116px}.logo-crop{width:112px;height:37px}.logo-crop img{width:112px;height:112px;top:-37px}.brand>span:last-child{font-size:9px}.menu-toggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;border:1px solid #e8e4d8;background:white;border-radius:25px;padding:8px 14px;color:var(--purple)}.header nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;box-shadow:0 10px 18px #30295912;padding:14px 20px 24px;flex-direction:column;align-items:stretch;gap:0}.header nav.open{display:flex}.header nav a{font-size:14px;padding:11px 9px}.header nav .art-nav{border-left:0;border-top:1px solid #eee;margin-top:8px;padding-left:9px;font-size:13px}.hero{padding:35px 0 48px}.hero-grid{display:flex;flex-direction:column;gap:28px;min-height:0;align-items:stretch}.hero .eyebrow{font-size:10px;letter-spacing:.07em;margin:0}.hero h1{font-size:36px;margin:15px 0 18px;line-height:1.4}.hero-description{font-size:13px}.hero-facts{font-size:11px;margin:17px 0 23px}.hero-facts span+span:before{margin:0 8px}.hero-actions{gap:22px}.hero-actions .button{font-size:13px;padding:13px 20px}.hero-actions .text-link{font-size:12px}.hero-note{font-size:10px;margin-top:13px}.hero-visual{width:100%;height:310px;margin:0}.hero-photo{inset:15px 7px 20px 7px;width:calc(100% - 14px);height:calc(100% - 35px)}.coral-blob{inset:4px 26px -1px 25px;transform:rotate(12deg)}.hero-sticker{right:0;top:2px;padding:8px 10px;font-size:9px}.squiggle{left:-5px;top:0;width:50px;height:40px}.star-one{left:1px;bottom:3px;width:39px;height:39px}.dots{right:0;bottom:-4px;width:78px;height:57px;background-size:14px 14px;background-image:radial-gradient(var(--coral) 2.5px,transparent 2.5px)}.photo-caption{font-size:9px;left:36px;bottom:39px}.section{padding:48px 0}.home-benefits{padding-top:38px}.eyebrow{font-size:10px;letter-spacing:.08em;margin-bottom:12px}h2,.about-copy h2{font-size:27px;line-height:1.5;margin-bottom:16px}h3{font-size:19px}.section-heading{display:block;margin-bottom:25px}.section-heading>.text-link{margin-top:16px;font-size:12px}.section-heading>p{margin-top:13px;font-size:13px}.benefit-grid{gap:12px;grid-template-columns:1fr}.benefit{text-align:left;padding:22px 24px;display:grid;grid-template-columns:47px 1fr;gap:4px 20px;border-radius:20px}.benefit .icon{grid-row:1/3;margin:4px 0 0;width:39px;height:39px}.benefit h3{font-size:18px;margin:0}.benefit p{font-size:12px;grid-column:2}.split{grid-template-columns:1fr;gap:30px}.split p{font-size:14px}.about-photo{max-width:none;padding-right:20px}.about-photo>img{height:310px;border-radius:24px 75px 24px 24px;object-position:50% 37%}.experience{right:-1px;bottom:18px;width:109px;height:109px}.experience strong{font-size:43px}.experience{font-size:11px}.tick-list{font-size:12px;margin:19px 0}.photo-trio{grid-template-columns:1fr;gap:15px}.photo-trio>a{aspect-ratio:1.6;border-radius:18px}.photo-trio a>span{font-size:15px;bottom:17px;left:20px}.photo-trio a:last-child{aspect-ratio:1.6}.photo-trio a:last-child img{object-position:center 20%}.reviews{grid-template-columns:1fr;gap:15px}.reviews article{padding:23px 25px}.reviews blockquote{font-size:21px}.reviews p{font-size:12px;min-height:0;margin-bottom:17px}.quote{font-size:50px}.trial-banner{padding:38px 0}.trial-inner{grid-template-columns:1fr;gap:20px}.trial-inner h2{font-size:29px}.trial-inner>.button{justify-self:start;font-size:13px}.trial-inner .trial-small{grid-column:1;margin-top:-12px;text-align:left;font-size:10px}.trial-inner p:not(.eyebrow){font-size:12px}.visit-mini{grid-template-columns:1fr;gap:10px}.short-visit{padding:38px 0 45px}.visit-mini h2{font-size:26px;margin-bottom:10px}.footer{padding-top:30px;padding-bottom:90px}.footer-top{flex-direction:column;gap:22px}.footer nav{gap:11px 24px;font-size:11px}.footer-bottom{flex-wrap:wrap;gap:12px 20px}.languages{margin-left:0}.floating-cta{right:14px;bottom:14px;padding:10px 14px;font-size:12px;gap:8px}.floating-cta svg{width:23px;height:23px}.page-hero{padding:25px 0 35px}.page-hero h1{font-size:30px;max-width:95%}.page-hero .lead{font-size:13px}.breadcrumb{margin-bottom:17px}.page-doodle{width:38px;height:38px;right:5%;bottom:8px;opacity:.35}.activity-grid{gap:13px}.activity-grid article{padding:20px 17px}.activity-grid p{font-size:12px}.activity-grid h3{font-size:18px}.step{font-size:18px;right:15px}.soft-teal img{height:300px}.programme-intro{gap:28px}.narrow summary{font-size:14px}.narrow details p{font-size:13px}.portrait-photo{max-width:none}.portrait-photo img{height:350px;object-position:center 35%}.simple-grid{grid-template-columns:1fr;gap:28px}.simple-grid h3{font-size:19px}.simple-grid p{font-size:13px}.gallery-tabs{gap:22px;font-size:12px;padding-top:22px}.slide{grid-template-columns:1fr}.slide>a{height:280px}.slide figcaption{padding:23px}.slide h3{font-size:21px;margin:10px 0}.slide p{font-size:13px;min-height:48px}.carousel-controls{gap:18px;padding:13px}.gallery-grid{gap:20px 13px;margin:24px 0}.gallery-grid img{height:140px}.gallery-grid figcaption{font-size:10px;line-height:1.8}.gallery-grid a{border-radius:13px}#graduates .gallery-grid img{height:230px}.lead{font-size:13px}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-grid img{height:300px}.contact-grid address{font-size:13px}.contact-buttons .button{font-size:12px;padding:12px 21px}.hours-panel{padding:25px}.hours-panel table{font-size:13px}.trial-form{padding:26px}.trial-form h3{font-size:23px}.trial-steps{font-size:13px}.guide-wrap{padding-top:25px}.guide-hero{grid-template-columns:1fr;gap:24px}.guide-hero h1{font-size:29px}.guide-hero img{height:250px}.guide-facts{grid-template-columns:repeat(2,1fr);padding:22px;gap:18px;margin:30px 0}.guide-facts strong{font-size:17px}.guide-facts span{font-size:11px}.guide-reading{grid-template-columns:1fr;gap:35px}.guide-toc{position:static;padding:23px;font-size:12px}.guide-body h2{font-size:22px}.guide-body p,.guide-body li{font-size:13px}.guide-body section{padding-bottom:28px;margin-bottom:28px}.guide-art,.guide-body .guide-cta{padding:24px}.lightbox img{max-width:85vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep the warm palette while improving small white text contrast. */
.button,.floating-cta{background:#cb4714}.button:hover{background:#b83e10}.button-outline{background:white;color:var(--purple)}.button-outline:hover{background:#f4f1ff}.benefit.teal{background:#267e82}.benefit.orange p{color:#482010}.benefit.orange h3{color:white}

/* Bring back the original illustrated learning cards on the homepage. */
.illustrated-benefits{gap:22px}
.illustrated-benefit{padding:25px 28px 31px;background:#f1f6fc;border:1px solid #e0e8f4;border-radius:22px;transition:transform .25s ease,box-shadow .25s ease}
.illustrated-benefit:nth-child(2){background:#fff7e4;border-color:#f5e8c8}
.illustrated-benefit:nth-child(3){background:#fff1f2;border-color:#f5dfe2}
.illustrated-benefit h3{font-size:20px;line-height:1.5;color:var(--purple);margin-bottom:11px;letter-spacing:-.03em}
.illustrated-benefit p{font-size:13px;line-height:1.85;color:#65657a}
.benefit-sticker{width:190px;max-width:100%;aspect-ratio:1;background-image:url('/assets/benefit-stickers.webp');background-size:300% 100%;background-position:var(--sticker-position) center;background-repeat:no-repeat;margin:0 auto 21px}
@media(hover:hover){.illustrated-benefit:hover{transform:translateY(-4px);box-shadow:0 12px 26px #202b790b}}

/* One opening sequence; opacity and transforms keep it light and smooth. */
@keyframes opening-copy{from{opacity:0;transform:translate3d(-9px,22px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes opening-photo{from{opacity:0;transform:translate3d(20px,28px,0) scale(.975)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes opening-header{from{opacity:0;transform:translate3d(0,-9px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(prefers-reduced-motion:no-preference){
  body[data-page="home"] .header .nav-wrap{animation:opening-header .55s cubic-bezier(.22,1,.36,1) both}
  .hero-copy>*{animation:opening-copy .8s cubic-bezier(.22,1,.36,1) both}
  .hero-copy>.eyebrow{animation-delay:.06s}
  .hero-copy>h1{animation-delay:.14s}
  .hero-copy>.hero-description{animation-delay:.23s}
  .hero-copy>.hero-facts{animation-delay:.3s}
  .hero-copy>.hero-actions{animation-delay:.37s}
  .hero-copy>.hero-note{animation-delay:.43s}
  .hero-visual{animation:opening-photo .95s cubic-bezier(.22,1,.36,1) .12s both}
}
@media(max-width:900px){.illustrated-benefit{padding:23px}.illustrated-benefit h3{font-size:18px}.benefit-sticker{width:160px;margin-bottom:18px}}
@media(max-width:720px){.illustrated-benefits{gap:12px}.illustrated-benefit{display:grid;grid-template-columns:78px minmax(0,1fr);gap:7px 14px;align-content:center;padding:19px 16px;border-radius:18px;min-height:135px}.illustrated-benefit .benefit-sticker{grid-column:1;grid-row:1/3;align-self:center;width:78px;margin:0}.illustrated-benefit h3{grid-column:2;align-self:end;font-size:16px;line-height:1.55;margin:0;letter-spacing:-.02em}.illustrated-benefit p{grid-column:2;font-size:12px;line-height:1.8;margin:0}.home-benefits{padding-bottom:42px}}
@media(max-width:360px){.illustrated-benefit{grid-template-columns:62px minmax(0,1fr);padding:16px 13px;gap:6px 11px}.illustrated-benefit .benefit-sticker{width:62px}.illustrated-benefit h3{font-size:15px}.illustrated-benefit p{font-size:11px}}

/* Make every footer destination read as a clear, comfortable link button. */
.footer nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(520px,100%);gap:10px;max-width:520px}
.footer nav a{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 14px;min-height:44px;background:#fff;border:1px solid #d9d4e8;border-radius:10px;color:var(--purple);font-size:12px;font-weight:600;line-height:1.5;transition:background .2s ease,border-color .2s ease}
.footer nav a:after{content:'→';font-size:15px;font-weight:500;color:#8a83b5}
.footer nav a:hover{background:#f0ecfa;border-color:#a99bcf}
@media(max-width:720px){.footer nav{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;gap:10px}.footer nav a{font-size:12px;padding:11px 13px;min-height:45px}.footer-top{gap:25px}.footer{padding-bottom:110px}}

/* Spacious photo journal: cards sit below the group photo, never on faces. */
.scrapbook-hero{padding:58px 0 64px;border-bottom:1px solid #f0e8ca;background:linear-gradient(115deg,#fffbe5 70%,#fff7df)}
.scrapbook-hero .hero-grid{grid-template-columns:1fr 1fr;gap:76px;min-height:0}
.scrapbook-hero .hero-copy{padding-bottom:12px}
.scrapbook-hero h1{font-size:45px;line-height:1.55}
.scrapbook-hero .underline:after{height:15px;bottom:3px;background:#ffd5a6;border-radius:4px;transform:rotate(-1deg)}
.scrapbook-hero .hero-facts{gap:8px;flex-wrap:wrap;margin:23px 0 28px}
.scrapbook-hero .hero-facts span{background:#fffdf5;border:1px solid #e8dec1;border-radius:8px;padding:5px 11px;font-size:11px}
.scrapbook-hero .hero-facts span+span:before{content:none}
.scrapbook-hero .hero-actions .button{border-radius:15px}
.scrapbook-visual{height:auto;width:100%;max-width:490px;margin:0 0 0 auto;isolation:isolate;padding-top:27px}
.photo-backing{position:absolute;top:36px;left:12px;right:-9px;aspect-ratio:1.17;border-radius:24px;background:#ffb094;transform:rotate(2deg);z-index:-1}
.classroom-print{position:relative;background:white;border:1px solid #eee6d5;border-radius:20px;padding:13px 13px 0;box-shadow:0 12px 28px #72502b0b;overflow:hidden;transform:none}
.print-label{color:#625f70;font-size:10px;font-weight:700;letter-spacing:.12em;padding:1px 2px 12px;display:flex;align-items:center;gap:8px}
.label-dot{width:6px;height:6px;border-radius:50%;background:var(--teal)}
.scrapbook-main-photo{width:100%;height:auto;aspect-ratio:4/3;border-radius:10px;object-fit:contain}
.classroom-print figcaption{display:flex;justify-content:center;padding:12px 4px 14px;font-size:11px;font-weight:600;color:var(--purple)}
.scrapbook-notes{display:grid;grid-template-columns:170px 1fr;gap:26px;align-items:center;margin-top:27px;padding:0 7px}
.friendship-print{position:relative;width:100%;background:white;border:1px solid #eee6d5;padding:7px 7px 8px;transform:rotate(-3deg);border-radius:9px;box-shadow:0 6px 14px #6846270b;transition:transform .3s ease}
.friendship-print:before{content:'';position:absolute;top:-7px;left:calc(50% - 22px);width:44px;height:15px;background:#b9ddd5a8;transform:rotate(3deg)}
.friendship-photo{width:100%;height:auto;aspect-ratio:1.95;object-fit:cover;border-radius:4px}
.friendship-print figcaption{text-align:center;color:var(--purple);font-size:10px;padding:7px 0 1px;font-weight:500}
.small-class-tag{position:relative;width:100%;background:#f9dd87;color:var(--purple);border-radius:16px;padding:16px 17px;text-align:left;display:grid;grid-template-columns:auto 1fr;gap:1px 14px;align-items:center;transform:none;transition:transform .3s ease}
.small-class-tag>span{grid-column:2;font-size:11px;font-weight:700;display:block;align-self:end}
.small-class-tag strong{grid-column:1;grid-row:1/3;font-family:Nunito,sans-serif;display:block;font-size:35px;font-weight:900;line-height:1.1;letter-spacing:-.04em;white-space:nowrap}
.small-class-tag strong span{display:block;font-family:'Noto Sans SC',sans-serif;font-size:10px;margin-top:5px;text-align:center;font-weight:500;letter-spacing:0}
.small-class-tag small{grid-column:2;font-size:10px;align-self:start;line-height:1.65}
.scrapbook-caption{position:relative;display:flex;width:max-content;margin:20px 7px 0 auto;gap:17px;font-size:11px;color:var(--purple);font-weight:600;border-bottom:1px solid #b8b395;padding-bottom:3px}
.bead-thread{position:absolute;top:-4px;right:18px;width:137px;height:23px;display:flex;align-items:center;justify-content:space-around;transform:rotate(3deg)}
.bead-thread:before{content:'';position:absolute;left:0;right:0;height:2px;background:#c6bda5;z-index:-1}
.bead-thread span{width:23px;height:17px;border-radius:50%;background:var(--coral)}
.bead-thread span:nth-child(2){background:#f4ce67}.bead-thread span:nth-child(3){background:#7fc1b7}.bead-thread span:nth-child(4){background:#8177bf}
@keyframes journal-photo-in{from{opacity:0;transform:translate3d(0,24px,0) rotate(1deg)}to{opacity:1;transform:translate3d(0,0,0) rotate(0)}}
@keyframes journal-note-in{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}
@keyframes journal-bead-drift{from{transform:translate3d(0,-2px,0)}to{transform:translate3d(0,2px,0)}}
@media(prefers-reduced-motion:no-preference){
  .scrapbook-visual{animation:none}
  .classroom-print{animation:journal-photo-in 1s cubic-bezier(.22,1,.36,1) .14s both}
  .friendship-print{animation:journal-note-in .85s cubic-bezier(.22,1,.36,1) .4s both}
  .small-class-tag{animation:journal-note-in .85s cubic-bezier(.22,1,.36,1) .55s both}
  .scrapbook-caption{animation:journal-note-in .7s cubic-bezier(.22,1,.36,1) .65s both}
  .bead-thread{animation:journal-note-in .8s ease .3s both}
  .bead-thread span{animation:journal-bead-drift 3.8s ease-in-out 1.1s infinite alternate}
  .bead-thread span:nth-child(2){animation-delay:1.4s}.bead-thread span:nth-child(3){animation-delay:1.7s}.bead-thread span:nth-child(4){animation-delay:2s}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.friendship-print:hover{transform:translateY(-3px) rotate(-1deg)}.small-class-tag:hover{transform:translateY(-3px)}}
@media(max-width:1150px){.scrapbook-hero .hero-grid{gap:58px}.scrapbook-hero h1{font-size:39px}.scrapbook-notes{grid-template-columns:148px 1fr;gap:20px}.small-class-tag{padding:14px 13px;gap:1px 10px}.small-class-tag strong{font-size:31px}.small-class-tag>span{font-size:10px}.small-class-tag small{font-size:9px}}
@media(max-width:900px){.scrapbook-hero .hero-grid{gap:34px}.scrapbook-hero h1{font-size:33px}.scrapbook-hero .hero-facts span{padding:4px 8px;font-size:9px}.scrapbook-notes{grid-template-columns:120px 1fr;gap:14px;padding:0}.small-class-tag{padding:14px 10px;grid-template-columns:1fr;gap:4px;text-align:center}.small-class-tag>span,.small-class-tag strong,.small-class-tag small{grid-column:1;grid-row:auto}.small-class-tag strong{font-size:27px}.small-class-tag strong span{display:inline;margin-left:5px}.small-class-tag small{display:none}.print-label{font-size:8px}}
@media(max-width:720px){.scrapbook-hero{padding:34px 0 46px}.scrapbook-hero .hero-grid{gap:34px}.scrapbook-hero h1{font-size:35px;line-height:1.45}.scrapbook-hero .hero-copy{padding:0}.scrapbook-hero .hero-facts{margin:17px 0 22px;gap:7px}.scrapbook-hero .hero-facts span{font-size:10px;padding:5px 9px}.scrapbook-hero .hero-actions .button{border-radius:13px}.scrapbook-visual{margin:0 auto;max-width:490px;padding-top:24px}.classroom-print{padding:10px 10px 0;border-radius:16px}.scrapbook-main-photo{border-radius:8px}.photo-backing{top:32px;left:9px;right:-5px;border-radius:20px}.print-label{font-size:8px;padding:0 1px 10px}.classroom-print figcaption{font-size:10px;padding:10px 2px 12px}.scrapbook-notes{grid-template-columns:43% 1fr;gap:20px;margin-top:24px;padding:0 3px}.friendship-print figcaption{font-size:9px}.small-class-tag{padding:17px 9px;gap:7px;border-radius:14px}.small-class-tag>span{font-size:10px}.small-class-tag strong{font-size:32px}.small-class-tag strong span{font-size:10px}.scrapbook-caption{margin-top:20px;font-size:10px}.bead-thread{width:117px;right:15px;top:-2px}.bead-thread span{width:21px;height:16px}}
@media(max-width:360px){.scrapbook-hero h1{font-size:30px}.scrapbook-hero .hero-actions{gap:16px}.scrapbook-hero .hero-actions .button{padding:12px 16px;font-size:12px}.scrapbook-notes{gap:16px}.small-class-tag strong{font-size:28px}.small-class-tag>span{font-size:9px}.friendship-print figcaption{font-size:8px}}

.header nav .languages{display:flex;align-items:center;gap:8px;margin:0}.header nav .languages a{font-size:10px;padding:3px 4px}.languages a[aria-current="page"]{color:var(--purple);font-weight:800;text-decoration:underline;text-underline-offset:4px}
html:not([lang^="zh"]) .scrapbook-hero h1{font-size:40px;line-height:1.32;max-width:470px}html:not([lang^="zh"]) .hero-description{font-size:14px;line-height:1.8}html:not([lang^="zh"]) .experience{font-size:10px}html:not([lang^="zh"]) .experience strong{line-height:1.1}html:not([lang^="zh"]) .growth-star-sticker{flex-direction:column;text-align:center;gap:0}html:not([lang^="zh"]) .growth-star-sticker svg{width:98px}html:not([lang^="zh"]) .growth-star-sticker>span{white-space:normal;font-size:10px;line-height:1.5}html:not([lang^="zh"]) .growth-star-sticker strong{font-size:11px}html:not([lang^="zh"]) .home-reviews .section-heading:after{content:'Thank you for your trust ♡'}html[lang^="ms"] .home-reviews .section-heading:after{content:'Terima kasih atas kepercayaan anda ♡'}
@media(max-width:1150px){.header nav{gap:13px}.header nav .art-nav{padding-left:10px}html:not([lang^="zh"]) .scrapbook-hero h1{font-size:35px}}@media(max-width:900px){.header nav .languages{gap:3px}.header nav{gap:9px}html:not([lang^="zh"]) .scrapbook-hero h1{font-size:30px}html:not([lang^="zh"]) .encouragement-sticker{font-size:9px;padding:7px}.page-hero h1{overflow-wrap:break-word}}@media(max-width:720px){.header nav{gap:0}.header nav .languages{gap:12px;padding:10px 5px 0}.header nav .languages a{font-size:13px;padding:5px 8px}html:not([lang^="zh"]) .scrapbook-hero h1{font-size:34px}html:not([lang^="zh"]) .hero-description{font-size:13px}.hero-journal-heading{max-width:100%}html:not([lang^="zh"]) .encouragement-sticker{font-size:10px;padding:7px 9px}html:not([lang^="zh"]) .experience{font-size:9px}html:not([lang^="zh"]) .home-reviews .section-heading:after{font-size:10px;max-width:100%;white-space:normal}html:not([lang^="zh"]) .abacus-heading p{font-size:16px}.abacus-heading{gap:10px;flex-wrap:wrap}}@media(max-width:360px){html:not([lang^="zh"]) .scrapbook-hero h1{font-size:30px}html:not([lang^="zh"]) .hero-actions{gap:14px}html:not([lang^="zh"]) .hero-actions .button{font-size:12px;padding:12px 15px}html:not([lang^="zh"]) .encouragement-sticker{font-size:9px}html:not([lang^="zh"]) .hero-facts span{font-size:9px;padding:5px 7px}}

/* Parent-first refinements. These files belong only to the abacus review design. */
.nav-wrap{position:relative}
.menu-shade{position:fixed;inset:0;z-index:25;border:0;padding:0;background:#28234452;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s;cursor:default}
.menu-shade.is-open{opacity:1;visibility:visible;pointer-events:auto}
.menu-lines{position:relative;width:17px;height:14px;display:block}
.menu-lines i{display:block;position:absolute;left:0;width:17px;height:1.7px;background:currentColor;border-radius:2px;transition:transform .25s ease,opacity .2s ease,top .25s ease}
.menu-lines i:nth-child(1){top:1px}.menu-lines i:nth-child(2){top:6px;width:12px}.menu-lines i:nth-child(3){top:11px}
.menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(1){top:6px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(3){top:6px;transform:rotate(-45deg)}
.menu-is-open{overflow:hidden}
.menu-is-open .floating-cta{visibility:hidden;pointer-events:none}
body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation-play-state:paused!important}
.parent-trust{background:#fffdf8;border-bottom:1px solid #eee8d8}
.trust-ribbon{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:28px 0;gap:28px}
.trust-fact{display:flex;gap:16px;align-items:center;min-width:0}
.trust-fact+ .trust-fact{border-left:1px dashed #ded6be;padding-left:28px}
.trust-fact strong{display:block;font-size:14px;line-height:1.6;color:var(--purple)}
.trust-fact div>span{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:3px}
.trust-symbol{display:grid;place-items:center;flex:none;width:52px;height:52px;color:#447f79;background:#e8f1e5;border-radius:16px;transform:rotate(-4deg)}
.trust-symbol svg{width:32px;height:32px}.trust-years{font-family:Nunito,sans-serif;background:#fbe4c0;color:#905522;font-size:28px;font-weight:900;transform:rotate(4deg)}
.trust-fact:last-child .trust-symbol{background:#eeeafa;color:#7770a3;transform:rotate(4deg)}
body[data-page="home"] .scrapbook-hero{padding-bottom:44px}
body[data-page="home"] .home-benefits{padding-top:66px}
body[data-page="home"] .illustrated-benefit{position:relative;box-shadow:0 3px 0 #e7e7ee33}
body[data-page="home"] .home-gallery .photo-trio{gap:28px}
body[data-page="home"] .home-gallery .photo-trio>a{aspect-ratio:auto;background:white;overflow:visible;border:9px solid white;border-radius:15px;box-shadow:0 10px 28px #4f413513;isolation:isolate}
body[data-page="home"] .home-gallery .photo-trio>a:after{display:none}
body[data-page="home"] .photo-trio img{width:100%;height:auto;aspect-ratio:1.2;object-fit:cover;border-radius:9px;transform:none}
body[data-page="home"] .photo-trio a>span{position:relative;display:block;left:auto;bottom:auto;color:var(--purple);padding:19px 7px 14px 45px;font-size:15px;line-height:1.5;min-height:87px}
body[data-page="home"] .photo-trio a>span:before{content:'01';position:absolute;top:21px;left:7px;font-family:Nunito,sans-serif;font-size:11px;font-weight:800;letter-spacing:.02em;width:27px;height:27px;display:grid;place-items:center;color:#668982;background:#e9f2ea;border-radius:50%}
body[data-page="home"] .photo-trio a:nth-child(2)>span:before{content:'02';background:#fff0d4;color:#92712b}
body[data-page="home"] .photo-trio a:nth-child(3)>span:before{content:'03';background:#f9e9ee;color:#966884}
body[data-page="home"] .photo-trio small{font-size:10px;color:#757186;letter-spacing:.04em;margin-bottom:5px}
.trial-visit{background:#fffdf8;padding:66px 0}
.trial-visit-card{background:#fff7df;border:1px solid #f0e4c7;border-radius:30px;padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;position:relative;isolation:isolate}
.trial-preview{position:relative;align-self:center;transform:rotate(-3deg);margin-bottom:24px;padding:12px 12px 35px;background:#fff;border:1px solid #eae3d5;border-radius:13px;box-shadow:0 10px 30px #79502a0e}
.trial-preview:before{content:'';position:absolute;top:-11px;left:42%;width:80px;height:24px;background:#bfded1c4;transform:rotate(3deg)}
.trial-preview img{width:100%;height:auto;aspect-ratio:1.3;object-fit:cover;border-radius:6px}
.trial-photo-label{font-size:11px;color:#70627f;display:flex;align-items:center;gap:8px;padding:8px 3px 12px;font-weight:600}
.trial-photo-label>span{color:#bf7334;font-size:19px;line-height:1}
.trial-time-sticker{position:absolute;bottom:-25px;right:4px;background:#f8d46f;border:5px solid #fffaf1;border-radius:15px;transform:rotate(6deg);padding:11px 22px;display:flex;flex-direction:column;align-items:center;color:var(--purple);box-shadow:0 4px 0 #705f3710}
.trial-time-sticker strong{font-family:Nunito,sans-serif;font-size:30px;line-height:1.3;letter-spacing:-.03em}
.trial-time-sticker>span{font-size:11px;font-weight:600}
.trial-visit-copy h2{font-size:40px;line-height:1.4;color:var(--purple);margin-bottom:15px}
.trial-visit-copy h2>span{position:relative}.trial-visit-copy h2>span:after{content:'';height:9px;width:100%;position:absolute;left:0;bottom:-2px;background:#f8d16c;border-radius:50%;transform:rotate(-2deg);z-index:-1}
.trial-visit-copy>p:not(.eyebrow){font-size:14px}
.trial-mini-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:26px 0 28px;position:relative}
.trial-mini-steps:before{content:'';position:absolute;top:14px;left:15px;right:70px;border-top:1px dashed #cab687;z-index:-1}
.trial-mini-steps li>span{display:grid;place-items:center;width:28px;height:28px;margin-bottom:9px;border-radius:50%;background:#fff;border:1px solid #e4d4b8;color:#856235;font-family:Nunito,sans-serif;font-weight:800;font-size:11px}
.trial-mini-steps strong{display:block;font-size:13px;line-height:1.5}.trial-mini-steps small{display:block;font-size:10px;color:#77707a;line-height:1.6;margin-top:5px}
.trial-main-button{font-size:13px;padding:13px 23px;border-radius:15px;position:relative;isolation:isolate;overflow:hidden}
.trial-plan-link{display:block;max-width:max-content;margin-top:16px;font-size:12px}
.button span[aria-hidden]{transition:transform .25s ease}.button:hover span[aria-hidden]{transform:translate(3px,-3px)}
.floating-cta{position:fixed;isolation:isolate;overflow:visible}
.floating-cta:before{content:'';position:absolute;inset:-6px;z-index:-1;border-radius:inherit;border:1px solid #cb471465;opacity:0;pointer-events:none}
.header nav a{position:relative}.header nav>a[aria-current="page"]:after{content:'';position:absolute;bottom:-8px;left:50%;width:5px;height:5px;border-radius:50%;background:currentColor;transform:translateX(-50%)}
body .motion-ready{opacity:1;translate:0 0}
body .motion-ready:not(.motion-visible){opacity:0;translate:0 22px}
body .motion-ready.motion-visible{opacity:1;translate:0 0}
@keyframes delicate-halo{0%,65%,100%{opacity:0;transform:scale(.98)}73%{opacity:.35;transform:scale(1)}92%{opacity:0;transform:scale(1.1)}}
@keyframes sticker-wiggle{0%,100%{transform:rotate(0deg)}30%{transform:rotate(-4deg)}65%{transform:rotate(3deg)}}
@keyframes underline-arrive{from{scale:0 1;opacity:0}to{scale:1 1;opacity:1}}
@media(prefers-reduced-motion:no-preference){
 body .motion-ready{transition:opacity .65s ease,translate .75s cubic-bezier(.22,1,.36,1),transform .3s ease,box-shadow .3s ease;transition-delay:var(--reveal-delay,0ms)}
 .floating-cta:before{animation:delicate-halo 6s ease-out 2s infinite}
 .hero .underline:after{animation:underline-arrive .65s cubic-bezier(.22,1,.36,1) .4s both;transform-origin:left center}
 .page-hero .eyebrow,.page-hero h1,.page-hero .lead{animation:opening-copy .7s cubic-bezier(.22,1,.36,1) both}
 .page-hero h1{animation-delay:.1s}.page-hero .lead{animation-delay:.18s}
 .is-in-view .trial-time-sticker{animation:journal-note-in .75s cubic-bezier(.22,1,.36,1) .22s both}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .illustrated-benefit:hover .benefit-sticker{animation:sticker-wiggle .6s ease-in-out}
 .trust-fact:hover .trust-symbol{transform:rotate(0) translateY(-3px)}
 .trust-symbol{transition:transform .3s ease}
 .home-gallery .photo-trio>a:hover img{transform:none}
 .classroom-print{transition:box-shadow .35s ease}.classroom-print:hover{box-shadow:0 16px 32px #56443612}
}
@media(max-width:1100px){.trust-ribbon{gap:20px}.trust-fact{gap:12px}.trust-fact+.trust-fact{padding-left:20px}.trust-fact strong{font-size:12px}.trust-fact div>span{font-size:10px}.trial-visit-card{gap:38px;padding:30px}.trial-visit-copy h2{font-size:35px}.trial-mini-steps{gap:10px}}
@media(max-width:980px){
 .nav-wrap{min-height:82px;justify-content:space-between;gap:16px}.header-cta{display:none}
 .menu-toggle{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;min-height:44px;border:1px solid #e8e4d8;background:white;border-radius:25px;padding:8px 16px;color:var(--purple);position:relative;z-index:2}
 .header nav{display:flex!important;position:absolute;top:100%;left:0;right:0;margin:0;padding:17px max(20px,calc((100vw - 680px)/2)) 23px;flex-direction:column;align-items:stretch;gap:0;background:#fffdf8;border-top:1px solid #ede7d9;border-radius:0 0 23px 23px;box-shadow:0 20px 25px #2d274315;max-height:calc(100dvh - 105px);overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-18px,0);transform-origin:top;transition:opacity .2s ease,transform .34s cubic-bezier(.22,1,.36,1),visibility .34s}
 .header nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0)}
 .header nav>a{padding:12px 14px;font-size:14px;line-height:1.5;border-radius:10px;display:flex;justify-content:space-between;align-items:center;white-space:normal;min-height:44px;translate:0 -8px;opacity:0;transition:translate .3s cubic-bezier(.22,1,.36,1),opacity .25s ease,background .2s ease;transition-delay:0s}
 .header nav.open>a{translate:0 0;opacity:1;transition-delay:calc(var(--menu-index,0)*28ms)}
 .header nav>a:after{content:'↗';position:static;left:auto;bottom:auto;width:auto;height:auto;border-radius:0;background:none;transform:none;font-size:15px;color:#9285a7}
 .header nav>a[aria-current="page"]{background:#eeeaf8;color:var(--purple)}
 .header nav>a[aria-current="page"]:after{content:'●';position:static;width:auto;height:auto;background:none;transform:none;border-radius:0;color:#9387c3;font-size:6px}
 .header nav .art-nav:after{display:none}
 .header nav .art-nav{border:0;border-top:1px dashed #e4dccc;border-radius:0;margin-top:8px;padding:14px;font-size:13px;color:#797184}
 .header nav .languages{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:13px 14px 0;margin:0;translate:0 -7px;opacity:0;transition:opacity .25s ease,translate .3s ease}
 .header nav.open .languages{translate:0 0;opacity:1;transition-delay:190ms}
 .header nav .languages a{display:grid;place-items:center;min-width:44px;min-height:40px;padding:7px 12px;font-size:12px;border:1px solid #e9e3d6;background:white;border-radius:10px}
 .header nav .languages a[aria-current="page"]{background:var(--purple);border-color:var(--purple);color:white;text-decoration:none}
}
@media(max-width:720px){
 .nav-wrap{min-height:76px}.trust-ribbon{padding:21px 0;gap:14px}.trust-fact{display:block;text-align:center}.trust-fact+.trust-fact{padding-left:0;border-left:none}.trust-symbol{margin:0 auto 10px;width:41px;height:41px;border-radius:13px}.trust-symbol svg{width:25px;height:25px}.trust-years{font-size:25px}.trust-fact strong{font-size:11px;line-height:1.7;letter-spacing:-.03em}.trust-fact div>span{font-size:9px;line-height:1.7;margin-top:4px}
 body[data-page="home"] .scrapbook-hero{padding-bottom:34px}body[data-page="home"] .home-benefits{padding-top:41px}
 body[data-page="home"] .home-gallery .photo-trio{gap:24px}
 body[data-page="home"] .home-gallery .photo-trio>a{border-width:7px;border-bottom-width:6px;border-radius:13px}
 body[data-page="home"] .photo-trio img{aspect-ratio:1.8;border-radius:8px}
 body[data-page="home"] .photo-trio a>span{font-size:14px;min-height:72px;padding:14px 6px 12px 43px}
 body[data-page="home"] .photo-trio a>span:before{top:17px;left:5px}
 body[data-page="home"] .photo-trio small{font-size:10px}
 .trial-visit{padding:38px 0}.trial-visit-card{grid-template-columns:1fr;padding:25px 22px 29px;border-radius:23px;gap:39px}
 .trial-preview{max-width:440px;margin:5px 0 0;padding:9px 9px 21px;transform:rotate(-2deg)}.trial-preview img{aspect-ratio:1.65}.trial-photo-label{font-size:10px;padding:5px 2px 8px;gap:6px}.trial-time-sticker{padding:8px 15px;bottom:-19px;right:7px;border-width:4px;border-radius:12px}.trial-time-sticker strong{font-size:25px}.trial-time-sticker>span{font-size:9px}
 .trial-visit-copy h2{font-size:31px}.trial-visit-copy h2 br{display:none}.trial-visit-copy>p:not(.eyebrow){font-size:13px}.trial-mini-steps{margin:22px 0 25px;gap:13px}.trial-mini-steps strong{font-size:12px}.trial-mini-steps small{font-size:10px}.trial-mini-steps:before{right:35px}.trial-main-button{font-size:13px;width:100%;min-height:49px;padding:13px 17px}.trial-plan-link{font-size:11px;margin-top:17px}.floating-cta:before{display:none}
}
@media(max-width:360px){.trust-ribbon{gap:9px}.trust-fact strong{font-size:10px}.trust-fact div>span{font-size:8px}.trial-visit-card{padding:20px 16px 25px}.trial-visit-copy h2{font-size:28px}.trial-mini-steps{gap:9px}.trial-mini-steps strong{font-size:11px}.trial-mini-steps small{font-size:9px}}
@media(prefers-reduced-motion:reduce){body .motion-ready:not(.motion-visible){opacity:1;translate:0 0}.header nav,.header nav>a,.header nav .languages,.menu-lines i,.menu-shade,.button span{transition:none!important}body .motion-ready{transition:none!important}}

/* The photo journal extends across the abacus review; art remains unchanged. */
.editorial-hero{position:relative;overflow:hidden;background:#fffbe9;padding:44px 0 48px;border-bottom:1px solid #eee5cf}
.editorial-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:76px;position:relative;z-index:1}
.editorial-copy{min-width:0}.editorial-copy .breadcrumb{font-size:12px;color:#777083;margin-bottom:23px;display:inline-block;border-bottom:1px solid #c5bcb2}
.editorial-copy h1{font-size:40px;line-height:1.45;color:var(--purple);max-width:550px;margin:0 0 20px;text-wrap:balance}
.editorial-copy .lead{font-size:15px;line-height:1.9;max-width:510px}.editorial-copy .eyebrow{margin-bottom:15px}
.editorial-photo{position:relative;margin:0 4px 0 0;padding:10px 10px 0;background:white;border:1px solid #e8e0ce;border-radius:19px;transform:rotate(2deg);box-shadow:10px 10px 0 #ffba9c66}
.editorial-photo:before{content:'';position:absolute;top:-10px;left:45%;width:65px;height:23px;background:#abd6ccc4;transform:rotate(-5deg);z-index:2}
.editorial-photo img{width:100%;height:265px;border-radius:10px;object-fit:cover}
.editorial-photo figcaption{font-size:12px;color:#70608b;font-weight:600;text-align:center;padding:11px 5px;display:flex;justify-content:center;gap:8px;align-items:center}
.editorial-photo figcaption>span{color:#c76440;font-size:18px}.editorial-orbit{position:absolute;width:210px;height:210px;border:1px dashed #d9ccb0;border-radius:50%;right:-125px;top:35px}
body[data-page="contact"] .editorial-photo img{object-position:center 25%}
body[data-page="programme"] .editorial-photo img{object-position:center bottom}
#learning-years .rounded-photo{object-fit:contain;background:white;padding:10px;max-width:360px;height:450px;margin:0 auto;box-shadow:0 6px 18px #35534c0a}
.gallery-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:32px}
.gallery-tabs>a{display:flex;gap:15px;align-items:center;padding:18px 21px;background:#fffaf0;border:1px solid #ece1c8;border-radius:15px;transition:transform .25s,border-color .25s;line-height:1.6}
.gallery-tabs>a:nth-child(2){background:#edf6f2;border-color:#d9e9e1}.gallery-tabs>a:nth-child(3){background:#f7f0fa;border-color:#e9dded}
.album-number{font-family:Nunito,sans-serif;font-size:25px;font-weight:800;opacity:.5}.gallery-tabs>a>span:last-child{flex:1;font-size:15px}.gallery-tabs small{display:flex;justify-content:space-between;font-size:11px;color:#777083;font-weight:500;margin-top:3px}.gallery-tabs small span{font-size:17px;color:var(--purple)}
body[data-page="gallery"] #competition-gallery{padding-top:52px}
.carousel{box-shadow:0 10px 30px #6c54300a;border-radius:24px}.slides{position:relative}.slide{animation:none;min-height:430px;grid-template-columns:1.55fr 1fr;background:#fcfaf4}
.slide>a{height:430px;background:#efede7}.slide figcaption{padding:35px}.slide h3{line-height:1.5;text-wrap:balance}.slide p{line-height:1.9}.slide small{color:#467c78}.slide.is-leaving{position:absolute;top:0;left:0;width:100%;z-index:2;pointer-events:none;opacity:0;transition:opacity .28s ease}.slide.is-arriving{animation:album-arrive .36s ease both}
.carousel-controls{gap:14px;padding:18px;justify-content:center}.carousel-controls>button{min-width:44px;min-height:44px;width:44px;height:44px;border-color:#ddd5c2}
.carousel-dots{gap:9px}.carousel-dots button{width:66px;height:46px;min-height:44px;border:2px solid transparent;border-radius:8px;overflow:hidden;opacity:.58;transition:opacity .2s,border-color .2s;background:#ece8db}
.carousel-dots button img{width:100%;height:100%;object-fit:cover}.carousel-dots button:after{display:none}.carousel-dots button[aria-current=true]{opacity:1;border-color:#cb4714}.carousel-dots button:hover{opacity:1}.carousel-pause{font-size:13px!important;letter-spacing:-3px}.carousel-pause[aria-pressed=true]{background:#f3e8d8;letter-spacing:0}
body[data-page="gallery"] .gallery-grid figure{background:white;padding:9px 9px 0;border:1px solid #ede5da;border-radius:16px;box-shadow:0 5px 13px #44334807}
body[data-page="gallery"] .gallery-grid figcaption{font-size:12px;margin:0;padding:13px 5px 15px;line-height:1.8;color:#696078}
body[data-page="gallery"] .gallery-grid a{border-radius:9px}.gallery-grid a>span{width:34px;height:34px;box-shadow:0 2px 7px #332f8826}
#classroom-memories{background:#f6f7ed}#classroom-memories .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}#classroom-memories .gallery-grid img{height:auto;aspect-ratio:1.65;object-fit:cover}
#graduates .gallery-grid img{object-fit:contain;height:310px;background:#faf8f2}#graduates .gallery-grid{gap:22px}#graduates .lead{max-width:760px}
body[data-page="programme"] .activity-grid article{border:1px solid #e7dcca;background:#fffdf6;border-radius:20px;box-shadow:0 4px 0 #f0e8d8;padding:29px 24px}
body[data-page="programme"] .activity-grid article:nth-child(2){background:#eef7f2;border-color:#d4e6dc}body[data-page="programme"] .activity-grid article:nth-child(3){background:#f6f1fc;border-color:#e3d8f0}body[data-page="programme"] .activity-grid article:nth-child(4){background:#fff0e8;border-color:#efd8cb}
body[data-page="programme"] .activity-grid .icon{background:white;border-radius:14px;padding:10px;width:56px;height:56px;box-shadow:0 2px 6px #46403608}.activity-grid .step{font-family:Nunito,sans-serif;color:#a29ab3}
body[data-page="programme"] .benefit{background:#f5f3fb;border:1px solid #e4dff0;color:var(--purple);text-align:left}
body[data-page="programme"] .benefit h3{color:var(--purple)}body[data-page="programme"] .benefit p{color:#696078}body[data-page="programme"] .benefit .icon{margin-left:0;background:#fff;border-radius:12px;padding:8px}
body[data-page="programme"] .benefit:nth-child(2){background:#edf6f2;border-color:#d8e7df}body[data-page="programme"] .benefit:nth-child(3){background:#fff3e2;border-color:#ede0ca}
.centre-points article{padding:18px 0;border-bottom:1px dashed #e6dfd2}.centre-points article:last-child{border-bottom:0}.centre-points article h3{font-size:19px}.centre-points article p{font-size:14px!important}
body[data-page="centre"] .simple-grid article{padding:28px;background:white;border:1px solid #eee2ca;border-radius:20px;position:relative}
body[data-page="centre"] .simple-grid article:before{content:'';display:block;width:36px;height:5px;margin-bottom:22px;background:#83bcb4;border-radius:4px}body[data-page="centre"] .simple-grid article:nth-child(2):before{background:#bcafd9}body[data-page="centre"] .simple-grid article:nth-child(3):before{background:#edbc6f}
.next-reading{background:white;padding:48px 0 55px;border-top:1px solid #f0eadf}.next-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.next-card{display:flex;align-items:center;gap:18px;padding:24px;background:#faf8f1;border:1px solid #e7e1d2;border-radius:17px;transition:transform .25s,background .25s}.next-card:nth-child(2){background:#f4f5ed}.next-index{font-family:Nunito,sans-serif;font-size:25px;color:#b2a786;font-weight:800}.next-card>span:nth-child(2){flex:1;min-width:0}.next-card small{display:block;font-size:12px;color:#80778d;margin-bottom:7px}.next-card strong{display:block;font-size:17px;color:var(--purple);line-height:1.6}.next-arrow{display:grid;place-items:center;width:39px;height:39px;background:white;border-radius:50%;color:#8e78b1;flex:none}
.guide-toc a{padding:10px 0;border-bottom:1px dashed #e3dfd5;line-height:1.75}.guide-toc a:last-child{border-bottom:0}.guide-toc{gap:3px;background:#fff8e6;border:1px solid #eee1c4}.guide-body{max-width:760px}.guide-body section{scroll-margin-top:115px}.guide-body h2{line-height:1.6}.guide-body li+li{margin-top:8px}.guide-body details{padding:15px 0;border-bottom:1px solid #e7e0d5}.guide-body summary{cursor:pointer;line-height:1.8;font-weight:600}.guide-body details p{margin-top:14px}
.hours-panel{border:1px solid #ece2cf}.hours-panel tr:last-child td,.hours-panel tr:last-child th{border:0}.trial-form{border:1px solid #e8deca}.trial-form select{min-height:52px}.contact-buttons{flex-wrap:wrap}.trial-banner{border-top:1px solid #f0e7c9}
.trust-fact div>span{font-size:12px}.trial-mini-steps small{font-size:11px}.trial-photo-label{font-size:12px}
@keyframes album-arrive{from{opacity:.3}to{opacity:1}}
@media(hover:hover){.gallery-tabs>a:hover,.next-card:hover{transform:translateY(-3px);border-color:#afa281}.next-card:hover .next-arrow{background:#e8e2f4;color:var(--purple)}}
@media(prefers-reduced-motion:no-preference){.editorial-photo{animation:journal-note-in .8s cubic-bezier(.22,1,.36,1) .12s both}}
@media(max-width:1100px){.editorial-grid{gap:44px}.editorial-copy h1{font-size:35px}.editorial-photo img{height:250px}.carousel-dots button{width:56px}.next-card{gap:13px;padding:21px}.next-card strong{font-size:15px}}
@media(max-width:720px){
 .editorial-hero{padding:27px 0 35px}.editorial-grid{grid-template-columns:1fr;gap:30px}.editorial-copy .breadcrumb{font-size:11px;margin-bottom:18px}.editorial-copy h1{font-size:30px;max-width:none;line-height:1.5;margin-bottom:14px}.editorial-copy .lead{font-size:14px}.editorial-photo{max-width:430px;width:calc(100% - 5px);margin:0 auto;transform:rotate(1deg);box-shadow:5px 6px 0 #ffba9c66}.editorial-photo img{height:auto;aspect-ratio:1.85}.editorial-photo figcaption{font-size:12px;padding:9px 5px}.editorial-orbit{display:none}
 #learning-years .rounded-photo{height:340px;max-width:270px}
 .gallery-tabs{grid-template-columns:1fr;gap:9px;padding-top:24px}.gallery-tabs>a{padding:14px 16px;gap:14px;display:flex}.album-number{font-size:20px;display:block;min-width:28px}.gallery-tabs>a>span:last-child{font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.gallery-tabs small{font-size:11px;margin:0;gap:10px;flex:none}body[data-page="gallery"] #competition-gallery{padding-top:35px}
 .slide{grid-template-columns:1fr;min-height:0}.slide>a{height:275px}.slide figcaption{min-height:175px;padding:24px}.slide h3{font-size:21px}.slide p{font-size:14px;min-height:0}.slide small{font-size:11px}
 .carousel-controls{gap:8px;padding:13px 10px;flex-wrap:wrap}.carousel-dots{order:0;flex-basis:100%;justify-content:center;gap:7px}.carousel-controls>button{order:1;min-width:44px;margin-top:3px}.carousel-dots button{width:calc((100% - 36px)/5);max-width:65px;height:45px}.carousel{border-radius:20px}
 #classroom-memories .gallery-grid{gap:17px;grid-template-columns:1fr}#classroom-memories .gallery-grid img{aspect-ratio:1.75}body[data-page="gallery"] .gallery-grid figure{padding:7px 7px 0;border-radius:13px}body[data-page="gallery"] .gallery-grid figcaption{font-size:12px;padding:12px 5px 14px}#graduates .gallery-grid{gap:15px 12px}#graduates .gallery-grid img{height:auto;aspect-ratio:3/4;object-fit:contain}#graduates .gallery-grid figcaption{font-size:11px;line-height:1.9}
 body[data-page="programme"] .activity-grid article{padding:21px 17px}.activity-grid p{font-size:13px}.activity-grid .step{font-size:17px}.centre-points article h3{font-size:18px}body[data-page="centre"] .simple-grid{gap:15px}body[data-page="centre"] .simple-grid article{padding:24px}
 .next-reading{padding:34px 0 38px}.next-grid{grid-template-columns:1fr;gap:13px}.next-card{padding:19px;gap:14px}.next-card strong{font-size:15px}.next-card small{font-size:12px;margin-bottom:5px}.next-index{font-size:23px}.next-arrow{width:34px;height:34px}
 .guide-toc{padding:22px}.guide-toc a{font-size:14px;min-height:44px;padding:12px 0}.guide-body p,.guide-body li{font-size:14px;line-height:1.95}.guide-body summary{font-size:14px}.guide-body section{scroll-margin-top:93px}.guide-hero .guide-lead{font-size:14px}.guide-reviewed{color:#757080;line-height:1.8}.guide-facts span{font-size:12px}
 .trust-fact strong{font-size:12px}.trust-fact div>span{font-size:10px}.trial-mini-steps small{font-size:11px}.trial-photo-label{font-size:11px}.trial-plan-link{font-size:12px}.hero-note{font-size:11px}.hours-panel .small-note{font-size:12px}
}
@media(max-width:360px){.editorial-copy h1{font-size:27px}.gallery-tabs>a>span:last-child{font-size:12px}.gallery-tabs>a{padding:13px 9px}.slide>a{height:230px}.slide figcaption{min-height:190px;padding:22px}.trust-fact strong{font-size:11px}.trust-fact div>span{font-size:10px}.next-card{padding:17px;gap:11px}}
@media(prefers-reduced-motion:reduce){.slide.is-arriving{animation:none}.slide.is-leaving{transition:none}.editorial-photo{animation:none}}

/* Mobile language links outside the menu */
.mobile-languages{display:none}
@media(max-width:720px){
 .header .nav-wrap{gap:6px}
 .header .mobile-languages{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:auto;padding:3px;border:1px solid #e9e5dc;border-radius:13px;background:#fffdf6;gap:1px}
 .mobile-languages a{display:flex;align-items:center;justify-content:center;min-width:32px;min-height:40px;padding:0 5px;font-size:11px;font-weight:700;line-height:1;color:#363193;border-radius:9px;white-space:nowrap}
 .mobile-languages a[aria-current="page"]{background:#363193;color:#fff}
 .header nav .languages{display:none}
 .header .menu-toggle{flex-shrink:0;margin-left:2px;padding:8px 10px;gap:6px}
}
@media(max-width:360px){
 .header .brand{width:90px}
 .header .logo-crop{width:90px;height:30px}
 .header .logo-crop img{width:90px;height:90px;top:-30px}
 .header .brand>span:last-child{font-size:8px}
 .header .menu-toggle{font-size:12px;padding:8px;gap:5px}
 .mobile-languages a{min-width:30px;padding:0 4px}
}

.abacus-playground[hidden]{display:none}
.abacus-playground{position:relative;background:white;border:1px solid #d6e1f0;border-radius:18px;box-shadow:0 12px 28px #2030760c;margin:23px 0 0;padding:19px 22px}
.abacus-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}
.abacus-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.11em;color:var(--red)}
.abacus-heading p{font-weight:700;font-size:1rem;margin-top:2px;line-height:1.4}
.abacus-number{font-family:'Plus Jakarta Sans',sans-serif;font-size:2.2rem;font-weight:800;letter-spacing:.05em;color:var(--navy);font-variant-numeric:tabular-nums;line-height:1}
.abacus-total{position:relative;flex-shrink:0;text-align:right;min-width:4.5rem}.abacus-number{display:inline-block}.abacus-delta{position:absolute;right:0;bottom:calc(100% + 5px);border-radius:6px;padding:2px 8px;background:#eaf0fe;color:#202b79;font-size:.875rem;font-weight:800;line-height:1.4;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}.abacus-delta[data-direction="subtract"]{background:#fff0f1;color:#bd1f31}.abacus-delta[hidden]{display:none}.abacus-delta.delta-active{animation:abacus-difference .2s ease-out both}@keyframes abacus-difference{0%{transform:translateY(8px) scale(.9)}20%,70%{transform:translateY(0) scale(1)}100%{transform:translateY(-12px) scale(1)}}
.abacus-content{display:flex;align-items:center;gap:22px;margin-top:14px}
.abacus-frame{display:flex;gap:8px;border:5px solid var(--navy);border-radius:12px;padding:3px 9px 0;background:#f3f6fc;flex-shrink:0;position:relative}
.abacus-frame:after{content:'';position:absolute;left:0;right:0;top:48px;height:5px;background:var(--navy);pointer-events:none}
.abacus-column{width:44px;display:flex;flex-direction:column;align-items:center}
.abacus-rod{position:relative;width:44px;height:150px;border:0;background:transparent;padding:0;touch-action:manipulation;border-radius:6px}
.abacus-rod:before{content:'';position:absolute;width:3px;background:#b7c5db;top:2px;bottom:2px;left:calc(50% - 1.5px)}
.abacus-bead{position:absolute;left:2px;width:40px;height:16px;background:var(--red);border-radius:50%;box-shadow:inset 0 -4px 0 #c52432;transition:transform .22s cubic-bezier(.22,1,.36,1)}
.abacus-bead.upper{top:9px;background:var(--yellow);box-shadow:inset 0 -4px 0 #e9ad27}
.abacus-bead.lower{top:calc(66px + var(--bead-index)*20px)}
.abacus-rod[data-upper="true"] .upper{transform:translateY(18px)}
.abacus-bead.lower.active{transform:translateY(-16px)}
.abacus-place{font-size:.75rem;line-height:1.4;margin:0 0 5px;color:var(--muted);font-weight:600}
.abacus-hint{color:var(--muted);font-size:.875rem;line-height:1.65;max-width:175px}
.abacus-rod:hover{background:#e3ebf9}
.abacus-number.number-changed{animation:number-pop .18s ease}
.learning-card,.trial-form{transition:transform .35s ease,box-shadow .35s ease}
.learning-card:hover{transform:translateY(-5px)}
.text-link{transition:color .2s ease}.text-link:hover{color:var(--red)}
.faq-list details[open] p{animation:answer-in .32s ease both}

.abacus-playground{--navy:#363193;--red:#f46728;--yellow:#f4d16a;background:#fff;border:1px solid #ede2c3;box-shadow:0 12px 30px #332f8820;border-radius:24px;padding:28px;margin:0}.abacus-content{display:flex;gap:24px;align-items:center}.abacus-hint{font-size:13px}.abacus-frame{flex-shrink:0}.abacus-heading p{font-size:18px}.abacus-number{color:#34308d}@media(max-width:600px){.abacus-content{flex-direction:column}.abacus-playground{padding:22px}.abacus-hint{text-align:center}}

@media(max-width:600px){.abacus-playground{padding:20px 18px}.abacus-heading{align-items:center;gap:12px;flex-wrap:nowrap}.abacus-heading>div:first-child{min-width:0;flex:1}.abacus-heading p{font-size:14px;line-height:1.5}.abacus-eyebrow{font-size:10px;letter-spacing:.04em}.abacus-number{font-size:30px}.abacus-total{min-width:64px}.abacus-content{gap:15px;margin-top:18px}.abacus-hint{max-width:240px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.abacus-bead{transition:none}.abacus-delta.delta-active,.abacus-number.number-changed{animation:none}}
