/* Public pages: shared editorial layout, no external fonts or animation libraries. */
[hidden]{display:none!important}
#contenu{outline:none}
.site-header{transition:box-shadow .25s ease}
.site-header.is-scrolled{box-shadow:0 6px 25px #193c400d}
.site-nav a[aria-current=page]{color:var(--green);text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:9px;text-decoration-thickness:2px}
.reading-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--copper);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.breadcrumbs{display:flex;align-items:center;gap:12px;padding-top:25px;font-size:13px;color:var(--muted)}
.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.breadcrumbs>span:first-of-type{color:#a1ab9d}
.page-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);align-items:center;gap:8%;padding-top:54px;padding-bottom:74px}
.page-hero-copy h1,.contact-page-heading h1{font-size:clamp(42px,4.7vw,70px);line-height:1.08;margin:22px 0;letter-spacing:-2px}
.page-lead{max-width:630px;font-size:17px;line-height:1.85;color:var(--muted);margin:0 0 28px}
.page-hero-copy .button{margin-top:2px}
.chapter-art{position:relative;overflow:hidden;background:#e9eddf;border:1px solid #dce2d4;border-radius:100px 8px 8px 8px;padding:32px;box-shadow:0 18px 38px #173b3e08;isolation:isolate}
.chapter-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;letter-spacing:2px;margin-left:24px;color:#5e6f5e}
.chapter-top>span:last-child{font:italic 30px Georgia,serif;color:var(--copper)}
.chapter-symbol{width:74px;height:74px;display:flex;align-items:center;justify-content:center;margin:25px 0 22px;border-radius:50%;background:var(--cream);border:1px solid #d9dece}
.chapter-symbol .icon{width:34px;height:34px;color:var(--green);stroke-width:1.2}
.chapter-art h2{font-size:29px;line-height:1.2;letter-spacing:-.7px;margin:0 0 18px;max-width:260px}
.chapter-lines p{display:flex;align-items:center;gap:12px;font-size:13px;color:#52634e;padding:11px 0;margin:0;border-top:1px solid #d5ddce}
.chapter-lines p>span{color:var(--copper);font-size:18px;flex:none}
.chapter-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:24px;font-size:11px;letter-spacing:.5px}.chapter-bottom>span{font-size:9px;color:#637058}
.chapter-orbit{position:absolute;z-index:-1;right:-110px;top:35px;width:290px;height:290px;border:1px solid #bac7b380;border-radius:50%;animation:chapter-arrive 1.3s ease both}
.chapter-orbit:after{content:'';position:absolute;inset:25px;border:1px solid #bac7b380;border-radius:50%}
.chapter-art--admissions{background:#f2e9d9;border-color:#e8dbc7}.chapter-art--admissions .chapter-lines p{border-color:#e0d3be}
.chapter-art--recruitment{background:var(--green);color:var(--cream);border-color:var(--green)}
.chapter-art--recruitment .chapter-top,.chapter-art--recruitment .chapter-lines p,.chapter-art--recruitment .chapter-bottom>span{color:#ced9ca}.chapter-art--recruitment .chapter-lines p{border-color:#ffffff26}.chapter-art--recruitment .chapter-top>span:last-child,.chapter-art--recruitment .chapter-lines p>span{color:var(--gold)}
.chapter-art--practical{background:#e7ebec;border-color:#d7dfe0}.chapter-art--practical .chapter-orbit{border-radius:75px 75px 0 0;rotate:20deg}
.editorial-section{padding-top:76px;padding-bottom:80px;border-top:1px solid var(--line)}
.section-sand{background:var(--sand)}
.editorial-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr);gap:8%;align-items:end;margin-bottom:40px}
.editorial-heading h2,.editorial-section>div>h2,.admissions-preview h2,.family-band h2{font-size:clamp(34px,3.8vw,50px);line-height:1.13;margin:15px 0 0}
.editorial-heading>p,.body-copy{font-size:16px;line-height:1.8;color:var(--muted);margin:0;max-width:580px}
.discovery-grid,.feature-grid,.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.discovery-card{display:flex;flex-direction:column;position:relative;min-width:0;padding:28px;background:rgba(255,255,255,.62);border:1px solid var(--card-line);border-radius:6px;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.discovery-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.discovery-top>span{font-size:12px;letter-spacing:1px;color:var(--copper)}.discovery-top .vitrine-icon{width:26px;height:26px}
.discovery-card h3,.feature-card h3,.journey-grid h3{font:400 25px/1.3 Georgia,serif;margin:0 0 12px;letter-spacing:-.4px}
.discovery-card p,.feature-card p,.journey-grid p{color:var(--muted);font-size:15px;line-height:1.8;margin:0 0 24px}
.card-link{display:flex;gap:8px;align-items:center;justify-content:space-between;margin-top:auto;font-size:13px;font-weight:650;padding-top:18px;border-top:1px solid var(--line)}
.card-link>span{font-size:22px;font-weight:400;color:var(--copper);transition:transform .25s}
.discovery-card:hover,.discovery-card:focus-visible{transform:translateY(-5px);border-color:#b3c5b4;box-shadow:0 16px 30px #173b3e0c}.discovery-card:hover .card-link>span{transform:translate(3px,-3px)}
.school-ribbon{display:flex;flex-wrap:wrap;gap:18px 36px;align-items:center;justify-content:space-between;padding-top:23px;padding-bottom:23px;border-block:1px solid #dce2d4;background:var(--sand);font-size:13px}
.school-ribbon>span{display:inline-flex;align-items:center;gap:10px}.school-ribbon>a{text-decoration:none;border-bottom:1px solid var(--copper);padding-bottom:3px}
.admissions-preview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:12%;align-items:center;background:#efe9dc;padding-top:68px;padding-bottom:72px}
.admissions-preview>div>p:not(.eyebrow){max-width:530px;color:var(--muted);font-size:16px;line-height:1.8;margin:22px 0}.preview-steps{margin:0;padding:0;list-style:none}.preview-steps li{display:flex;gap:22px;padding:24px 0;border-bottom:1px solid #d9d3c4}.preview-steps li:last-child{border:0}.preview-steps li>span{font:italic 35px Georgia,serif;color:var(--copper)}.preview-steps strong{font:400 24px Georgia,serif}.preview-steps p{font-size:14px;color:var(--muted);margin:7px 0 0}
.home-links{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:64px;padding-bottom:64px}.home-links>a{display:flex;align-items:flex-start;gap:18px;text-decoration:none}.home-links>a>span{font-size:26px;color:var(--copper);margin-left:auto}.home-links .vitrine-icon{width:28px;height:28px}.home-links h2{font-size:27px;letter-spacing:-.5px;margin:8px 0}.home-links p:not(.eyebrow){margin:0;color:var(--muted);font-size:14px}.home-links .eyebrow{font-size:10px}
.cycle-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.cycle-card{background:#fffdf7;border:1px solid var(--card-line);border-radius:6px;overflow:hidden}.cycle-content{padding:30px}.cycle-content h3{font:400 30px Georgia,serif;letter-spacing:-.6px;margin:12px 0 18px}.cycle-content>p:not(.eyebrow){font-size:16px;color:var(--muted);line-height:1.8}.cycle-content .eyebrow{font-size:10px}
.cycle-illustration{height:185px;background:#dfe7e0;position:relative;overflow:hidden}.cycle-illustration--nursery{background:#f1e6d0}.learning-shape{position:absolute;display:block;bottom:28px;border:1px solid #173b3e24}.shape-circle{left:18%;width:95px;height:95px;border-radius:50%;background:var(--gold)}.shape-arch{left:42%;width:88px;height:127px;border-radius:50px 50px 0 0;background:#305750}.shape-square{left:66%;width:65px;height:65px;background:#f9f7ed;rotate:12deg}.cycle-illustration--nursery .shape-arch{height:85px;background:#9eaf8e}.cycle-illustration--nursery .shape-circle{width:105px;height:105px}.cycle-caption{position:absolute;left:18px;top:16px;color:#4f6756;font-size:9px;letter-spacing:3px}.cycle-card:hover .shape-square{rotate:0deg}.shape-square{transition:rotate .5s ease}
.plain-checks{padding:0;margin:22px 0;list-style:none}.plain-checks li{display:flex;align-items:center;gap:10px;margin:12px 0;font-size:14px;color:#465e52}.plain-checks .vitrine-icon{width:16px;height:16px}
.feature-card{min-width:0;padding:26px;border-top:2px solid #becdb9;background:#f1f3eb}.feature-card>.vitrine-icon{margin-bottom:24px;width:27px;height:27px}.feature-card p{margin-bottom:0}.feature-card h3{font-size:24px}
.family-band{display:grid;grid-template-columns:1.3fr .7fr;gap:12%;align-items:center;background:#e9eddf;padding-top:60px;padding-bottom:64px}.family-band p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.85;max-width:580px}.family-note{border:1px solid #cbd5c2;padding:26px;border-radius:5px}.family-note>.vitrine-icon{display:block;margin-bottom:22px;width:28px;height:28px}.family-note strong{font:400 23px Georgia,serif}.family-note p{font-size:14px!important;margin-bottom:0}
.journey-grid{gap:0;border-top:1px solid #cfd8c7}.journey-grid>article{padding:25px 26px 4px 0}.journey-grid>article+article{padding-left:26px;border-left:1px solid #d6decf}.journey-number{display:flex;align-items:center;justify-content:space-between;margin:0 0 30px}.journey-number>span{font:italic 42px Georgia,serif;color:var(--copper)}.journey-number .vitrine-icon{width:25px;height:25px}
.documents-layout,.faq-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:10%;align-items:start}.documents-layout .body-copy{margin-top:22px}.editorial-note{font-size:14px;line-height:1.8;padding-left:16px;border-left:2px solid var(--copper);color:var(--muted);margin-top:26px}
.document-checklist{padding:30px;background:#fffdf8;border:1px solid var(--card-line);border-radius:7px;box-shadow:0 18px 35px #193c4008}.document-checklist h3{font:400 24px/1.3 Georgia,serif;margin:0}.document-checklist>p{font-size:13px;line-height:1.8;color:var(--muted)}.document-checklist label{display:flex;align-items:center;gap:12px;padding:18px 0;border-top:1px solid var(--line);font-size:15px;cursor:pointer}.document-checklist input{width:18px;height:18px;flex:none;accent-color:var(--green)}.document-checklist label>.vitrine-icon{margin-left:auto;opacity:0;transition:opacity .2s}.document-checklist input:checked~.vitrine-icon{opacity:1}.document-checklist input:checked+span{color:#60705c}.checklist-progress{padding-top:14px;border-top:1px solid var(--line);margin-bottom:0;font-weight:650}
.public-faq details{border-bottom:1px solid #d8dfd2;padding:0 0 4px}.public-faq details:first-child{border-top:1px solid #d8dfd2}.public-faq summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:19px 0;font-size:16px;font-weight:600}.public-faq summary::-webkit-details-marker{display:none}.public-faq summary:after{content:'+';font-size:25px;color:var(--copper);font-weight:400}.public-faq details[open]>summary:after{content:'−'}.public-faq details>p{font-size:15px;line-height:1.85;color:var(--muted);margin:0 0 24px}.public-faq summary:focus-visible{outline:2px solid var(--copper);outline-offset:4px}.public-faq .inline-link{margin:0 0 16px}
.empty-offers{display:flex;gap:28px;align-items:flex-start;padding:38px;background:#fffdf7;border:1px dashed #bfc9b5;border-radius:6px}.empty-offers-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:#e9eddf;border-radius:50%;flex:none}.empty-offers h3{font:400 27px Georgia,serif;margin:0 0 16px}.empty-offers p{max-width:650px;color:var(--muted);font-size:15px;line-height:1.8}.notice-list-stack{grid-template-columns:1fr}.notice-list-offers{margin-top:0}.notice-item{transition:border-color .2s,box-shadow .2s}.notice-item:hover{border-color:#b9c8b2;box-shadow:0 10px 20px #173b3e06}.public-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:26px;font-size:14px}.public-pagination>a{padding:10px 15px;border:1px solid var(--card-line);border-radius:4px;text-decoration:none;background:#fffdf7}.public-pagination>[aria-disabled]{color:#71806c}
.practical-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:28px}.practical-card{background:#fffdf7;border:1px solid var(--card-line);padding:32px;border-radius:6px}.practical-card>.vitrine-icon{width:30px;height:30px;margin-bottom:24px}.practical-card h3{font:400 29px/1.3 Georgia,serif;margin:14px 0 20px}.practical-card p:not(.eyebrow){color:var(--muted);line-height:1.8}.practical-card--address{background:#e3e9dd}
.next-step{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:46px;padding-bottom:48px;border-top:1px solid var(--line);background:#ede9dd}.next-step h2{font-size:32px;line-height:1.2;letter-spacing:-.6px;margin:12px 0}.next-step p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:650px;margin:0}.next-step>.button{flex:none}
.contact-page-heading{padding-top:52px;padding-bottom:52px}.contact-page-heading h1{margin-bottom:20px}.contact-page-heading .page-lead{max-width:740px;margin-bottom:0}.contact-intro>.eyebrow{color:#d3ded7;margin-bottom:20px}.contact-practical-link{display:inline-block;margin-top:26px;font-size:14px;line-height:1.8;color:var(--gold);text-underline-offset:4px}.contact-page-heading+.contact-section .contact-content{padding-top:0}.contact-page-heading+.contact-section .contact-form-card{box-shadow:0 25px 45px #061c2020;scroll-margin-top:115px}.contact-guidance{display:grid;grid-template-columns:1fr 1.3fr;gap:9%}.contact-guidance .feature-grid{grid-template-columns:1fr 1fr}.small-number{font:italic 30px Georgia,serif;color:var(--copper);display:block;margin-bottom:24px}
.public-footer{padding-top:55px;padding-bottom:24px;border-top:1px solid var(--line);background:#f1f2eb}.footer-grid{display:grid;grid-template-columns:1.2fr .65fr 1fr .9fr;gap:40px}.footer-grid>div,.footer-grid>nav{min-width:0}.footer-grid h2{font:650 13px/1.5 "Segoe UI",sans-serif;letter-spacing:0;margin:0 0 18px}.footer-grid p{font-size:13px;line-height:1.8;color:var(--muted);margin:0 0 14px;overflow-wrap:anywhere}.footer-grid a:not(.footer-brand){display:block;width:fit-content;font-size:13px;line-height:1.7;margin-bottom:10px;text-decoration:none;overflow-wrap:anywhere}.footer-grid a:hover{text-decoration:underline;text-underline-offset:4px}.footer-grid .footer-motto{font:italic 18px/1.5 Georgia,serif;color:var(--copper);margin:22px 0 12px}.footer-grid .footer-note{font-size:12px;padding-left:10px;border-left:2px solid #d5c19e}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #dce2d4;padding-top:20px;margin-top:38px;color:var(--muted);font-size:12px}.footer-bottom a{white-space:nowrap;text-decoration:none}
.button>span,.inline-link>span{transition:transform .2s}.button:hover>span,.inline-link:hover>span{transform:translate(2px,-2px)}
.footer-intro .footer-brand{width:fit-content;padding:10px 14px;background:var(--green);border-radius:6px}
.art-sun,.art-book,.art-orbit{animation-iteration-count:1}.art-orbit{animation-duration:4s}
@keyframes chapter-arrive{from{transform:translate(15px,25px) rotate(-18deg);opacity:0}to{transform:none;opacity:1}}
@media(min-width:1051px){.site-nav>a:not(.nav-login){padding-block:28px}.hero-copy{animation:copy-arrive .7s ease both}@keyframes copy-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}
@media(min-width:1051px){.hero{grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);gap:46px;padding-top:64px;padding-bottom:60px}.hero-copy{max-width:720px}.hero h1{font-size:clamp(48px,5vw,72px)}.hero-art{width:min(100%,380px)}}
@media(max-width:1100px){.page-hero{gap:5%;grid-template-columns:1.2fr 1fr}.chapter-art{padding:28px}.discovery-grid,.feature-grid{gap:16px}.discovery-card{padding:23px}.footer-grid{gap:25px;grid-template-columns:1fr 1fr}.contact-guidance{grid-template-columns:1fr;gap:30px}.next-step{align-items:flex-start;flex-direction:column}.next-step>.button{flex:auto}}
@media(max-width:800px){.page-hero{gap:30px;grid-template-columns:1.2fr .85fr;padding-top:36px;padding-bottom:48px}.page-hero-copy h1{font-size:43px}.chapter-art{padding:22px;border-top-left-radius:65px}.chapter-top{margin-left:12px;font-size:8px}.chapter-art h2{font-size:25px}.chapter-lines p{font-size:12px}.chapter-symbol{width:57px;height:57px;margin:18px 0}.editorial-section{padding-top:50px;padding-bottom:54px}.editorial-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.discovery-grid{grid-template-columns:1fr}.discovery-card{padding:26px}.discovery-top{margin-bottom:22px}.discovery-card p{max-width:600px}.admissions-preview{gap:7%}.documents-layout,.faq-layout{grid-template-columns:1fr;gap:30px}.family-band{gap:5%}.cycle-grid,.practical-grid{gap:18px}.cycle-content{padding:24px}.cycle-content h3{font-size:26px}.practical-card{padding:25px}.home-links{gap:28px}.home-links>a{gap:12px}.home-links h2{font-size:24px}}
@media(max-width:600px){.breadcrumbs{padding-top:18px;font-size:12px}.page-hero{display:block;padding-top:28px;padding-bottom:36px}.page-hero-copy h1,.contact-page-heading h1{font-size:clamp(37px,10.5vw,48px);letter-spacing:-1.4px;margin-top:18px}.page-lead{font-size:16px;line-height:1.8}.page-hero-copy>.button{width:100%;font-size:14px}.chapter-art{margin-top:34px;padding:25px;border-top-left-radius:70px}.chapter-symbol{float:right;margin:24px 0 0 15px}.chapter-art h2{margin-top:24px;font-size:27px;max-width:230px}.chapter-lines p{font-size:13px}.chapter-top{margin-left:14px}.chapter-bottom{margin-top:20px}.chapter-orbit{width:250px;height:250px;top:-40px}.school-ribbon{gap:12px;padding-top:18px;padding-bottom:18px}.school-ribbon>span{width:100%}.school-ribbon>a{margin-top:5px}.editorial-section{padding-top:42px;padding-bottom:46px}.editorial-heading h2,.editorial-section>div>h2,.admissions-preview h2,.family-band h2{font-size:35px;letter-spacing:-1px}.editorial-heading>p{font-size:15px}.eyebrow{font-size:10px;letter-spacing:1.2px}.feature-grid,.cycle-grid,.journey-grid,.practical-grid,.admissions-preview,.family-band,.home-links{grid-template-columns:1fr}.feature-grid{gap:14px}.feature-card{padding:22px}.feature-card>.vitrine-icon{margin-bottom:16px}.journey-grid>article,.journey-grid>article+article{border-left:0;border-bottom:1px solid #d6decf;padding:22px 0}.journey-grid>article:last-child{border-bottom:0}.journey-number{margin-bottom:20px}.journey-grid p{margin-bottom:4px}.admissions-preview{padding-top:42px;padding-bottom:44px;gap:18px}.preview-steps li{padding:20px 0}.home-links{padding-top:40px;padding-bottom:44px;gap:28px}.home-links>a+a{border-top:1px solid var(--line);padding-top:28px}.home-links>a>.vitrine-icon{width:23px;height:23px}.home-links h2{font-size:25px}.cycle-content{padding:23px}.cycle-illustration{height:170px}.family-band{padding-top:42px;padding-bottom:42px;gap:25px}.document-checklist{padding:23px}.document-checklist h3{font-size:23px}.empty-offers{padding:24px;gap:18px;flex-direction:column}.empty-offers h3{font-size:26px}.public-faq summary{font-size:15px;min-height:66px;gap:12px}.practical-card h3{font-size:27px}.next-step{padding-top:36px;padding-bottom:40px;gap:22px}.next-step h2{font-size:29px}.next-step>.button{width:100%;font-size:14px}.contact-page-heading{padding-top:26px;padding-bottom:36px}.contact-guidance .feature-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:26px 20px}.footer-intro{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{font-size:11px;align-items:flex-start}.public-footer{padding-top:36px}.public-pagination{font-size:12px;gap:8px}.public-pagination>a{padding:10px}.contact-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready .motion-reveal{opacity:1;transform:none}.discovery-card:hover,.button:hover{transform:none}.reading-progress{display:none}.hero-art{transform:none}}
@media print{.site-header,.public-footer,.pwa-install,.reading-progress,.hero-art,.chapter-art,.button,.breadcrumbs{display:none!important}body{background:#fff;color:#111}.section-wrap{padding:18px 0}.page-hero,.editorial-heading,.documents-layout,.faq-layout{display:block}.motion-ready .motion-reveal{opacity:1;transform:none}.public-faq details::details-content{display:block}.contact-section{background:#fff;color:#111}}
@media(max-width:1050px){html:not(.navigation-ready) .site-nav{display:flex}html:not(.navigation-ready) .site-nav-toggle{display:none}}
