/* An editorial rhythm, restrained motion, and clearer journeys. */
html{scrollbar-color:#c6c8ce #f5f5f7}::selection{background:#cddfff;color:#13356e}.reading-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;overflow:hidden;pointer-events:none}.reading-progress span{display:block;width:100%;height:100%;background:#0055e9;transform:scaleX(0);transform-origin:left;will-change:transform}.nav-links a{position:relative;padding-block:29px}.nav-links a:after{content:"";position:absolute;bottom:20px;left:0;right:0;height:2px;border-radius:2px;background:var(--blue);transform:scaleX(0);transition:transform .25s}.nav-links a[aria-current=location]{color:var(--blue)}.nav-links a[aria-current=location]:after{transform:scaleX(1)}.hero-copy{padding-top:83px}.hero h1{letter-spacing:-.065em}.hero-intro{font-weight:400}.hero-art{margin-top:8px;height:490px;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 92%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 92%,transparent)}.hero-art img{transform:scale(.99);transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}.hero-art:hover img{transform:scale(1.025)}.hero-foot{position:relative;z-index:2}.hero-foot>a:hover{background:white;border-color:#aaa;transform:translateY(3px)}.pathways{display:grid;grid-template-columns:.65fr 1fr 1.13fr;align-items:center;gap:35px;padding-block:37px;border-bottom:1px solid var(--line)}.pathways>p{font-size:14px;font-weight:500;letter-spacing:-.02em;margin:0;color:#77777e}.pathways>a{display:flex;align-items:center;gap:16px;padding:9px 0}.pathways>a:last-child{border-left:1px solid var(--line);padding-left:35px}.pathway-icon{width:43px;height:43px;display:grid;place-items:center;flex-shrink:0;border-radius:14px;background:#eaf0ff;font-size:24px;color:#0055e9;transition:transform .3s}.pathway-green{background:#edf3e7;color:#587943;font-size:23px}.pathways strong{display:block;font-size:17px;letter-spacing:-.025em;font-weight:550;margin-bottom:6px}.pathways small{display:block;color:#7b7b81;font-size:11px;line-height:1.4}.pathway-arrow{margin-left:auto;color:#96969e;font-size:24px;transition:transform .3s}.pathways>a:hover .pathway-arrow{transform:translateX(5px);color:var(--blue)}.pathways>a:hover .pathway-icon{transform:translateY(-3px)}.intro{padding-top:105px;padding-bottom:120px}.bento{gap:24px}.service{transition:box-shadow .4s,transform .4s;isolation:isolate}.service:hover{transform:translateY(-4px);box-shadow:0 20px 45px #1d31600b}.service-students{min-height:365px}.service .card-label{opacity:.85}.vision-core{transition:transform .8s var(--ease),box-shadow .8s}.service-blue:hover .vision-core{transform:rotate(-3deg) translateY(-8px);box-shadow:0 30px 60px #00195155,inset 0 0 35px #ffffff22}.vision-orbit{transition:transform 1.2s var(--ease)}.service-blue:hover .orbit-one{transform:rotateX(60deg) rotateZ(-5deg)}.service-blue:hover .orbit-two{transform:rotateX(35deg) rotateY(48deg)}.teacher-art{transition:transform .6s var(--ease)}.service-teachers:hover .teacher-art{transform:rotate(-2deg) translateY(-4px)}.speech{transition:transform .6s var(--ease)}.service-students:hover .speech-one{transform:rotate(-4deg) translateY(-4px)}.service-students:hover .speech-two{transform:rotate(4deg) translateX(4px)}.service-students:hover .speech-three{transform:rotate(-3deg) translateY(3px)}.people-row{gap:48px}.people-index{font-variant-numeric:tabular-nums}.people-row h3{line-height:1.25}.kids-section{position:relative}.kids-section:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 75% 0%,#ffffffa6,transparent 60%);pointer-events:none}.kids-wordmark{font-size:29px}.kids-tags span{display:flex;align-items:center;gap:8px}.kids-tags span:before{content:"";width:4px;height:4px;border-radius:50%;background:#7a955a}.sun{transition:transform .9s var(--ease)}.kids-section:hover .sun{transform:translateY(-10px)}.step-panel{border:1px solid #ebebee;box-shadow:0 2px 4px #00000002}.panel-arrive{animation:panel-arrive .4s var(--ease) both}@keyframes panel-arrive{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.about-section{background:radial-gradient(ellipse at 10% 0,#162b4b 0,transparent 65%),#101722;position:relative;overflow:hidden}.about-section:after{content:"";position:absolute;width:700px;height:700px;left:-350px;bottom:-570px;border:1px solid #50658422;border-radius:50%;box-shadow:0 0 0 90px #50658409,0 0 0 180px #50658405;pointer-events:none}.about-layout{position:relative;z-index:1}.faq-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;padding-bottom:40px}.faq-heading h2{font-size:46px}.faq-heading>p:last-child{font-size:16px;color:var(--muted);letter-spacing:-.02em}.faq-list{border-top:1px solid var(--line);margin-top:4px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:17px;font-weight:500;letter-spacing:-.025em;line-height:1.45;list-style:none;padding-block:25px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:23px;font-weight:300;color:#8c8c95;transition:transform .2s,color .2s}.faq-list details[open] summary>span{transform:rotate(45deg);color:var(--blue)}.faq-list summary:hover{color:var(--blue)}.faq-list details>div{padding-bottom:25px;animation:panel-arrive .3s var(--ease)}.faq-list p{color:var(--muted);font-size:15px;line-height:1.7;letter-spacing:-.015em;margin-bottom:0}.faq-list .text-link{margin-top:15px;font-size:14px}.contact-section{padding-top:125px}.contact-section h2{letter-spacing:-.06em}.contact-section .button{padding:17px 28px;font-size:15px;box-shadow:0 8px 25px #0055e91a}.footer-shortcuts{display:flex;gap:26px;align-items:center;border-bottom:1px solid var(--line);padding-block:25px;font-size:11px;color:#5a5a61}.footer-shortcuts a:hover{color:var(--blue)}.footer-shortcuts .back-to-top{margin-left:auto;color:#74747c}.footer-top{border-bottom:0;padding-bottom:10px}.footer-bottom{font-size:10px}dialog{overscroll-behavior:contain}dialog[open]{animation:dialog-arrive .3s var(--ease)}@keyframes dialog-arrive{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.dialog-close{transition:background .2s,transform .2s}.dialog-close:hover{transform:rotate(90deg)}.contact-option{transition:background .2s,transform .2s}.contact-option:hover{transform:translateX(3px)}
@media(max-width:1000px){.pathways{grid-template-columns:.5fr 1fr 1.15fr;gap:20px}.pathways>a:last-child{padding-left:20px}.pathway-icon{width:36px;height:36px;font-size:21px;border-radius:11px}.pathways>a{gap:11px}.pathways strong{font-size:15px}.pathways small{font-size:10px}.faq-section{gap:45px}.faq-heading h2{font-size:40px}.faq-list summary{font-size:16px}.hero-art{height:450px}.footer-shortcuts{gap:19px}}
@media(max-width:700px){.hero-copy{padding-top:58px}.hero-art{margin-top:10px;height:310px}.hero-art:hover img{transform:scale(.99)}.pathways{grid-template-columns:1fr;gap:0;padding-block:19px 12px}.pathways>p{font-size:11px;letter-spacing:.02em;margin-bottom:10px;color:#8a8a91}.pathways>a{padding-block:18px;gap:15px}.pathways>a:last-child{padding-left:0;border-left:0;border-top:1px solid #ededf0}.pathway-icon{width:40px;height:40px;border-radius:12px;font-size:23px}.pathways strong{font-size:17px;margin-bottom:5px}.pathways small{font-size:11px}.pathway-arrow{margin-right:5px}.intro{padding-top:70px;padding-bottom:75px}.bento{gap:17px}.service:hover{transform:none;box-shadow:none}.people-row{gap:25px}.service-students{min-height:530px}.kids-tags{gap:19px}.kids-tags span{font-size:10px;gap:6px}.kids-section:hover .sun{transform:none}.faq-section{grid-template-columns:1fr;gap:25px;padding-bottom:15px}.faq-heading h2{font-size:40px}.faq-heading>p:last-child{font-size:15px}.faq-list summary{font-size:16px;padding-block:23px}.faq-list p{font-size:15px}.contact-section{padding-top:80px;padding-bottom:80px}.contact-section h2{font-size:44px}.contact-section .button{font-size:14px;padding:15px 24px}.footer-shortcuts{flex-wrap:wrap;gap:18px 24px;font-size:11px;padding-block:23px}.footer-shortcuts .back-to-top{margin-left:0}.nav-links a{padding-block:0}.nav-links a:after{bottom:-5px}.nav-links a[aria-current=location]:after{transform:scaleX(0)}}
@media(prefers-reduced-motion:reduce){.hero-art img,.vision-core,.vision-orbit,.teacher-art,.speech,.sun{transform:none!important}.service:hover{transform:none}dialog[open],.panel-arrive,.faq-list details>div{animation:none}.reading-progress span{will-change:auto}}
