:root{--green:#195a53;--cream:#faf8f2;--sage:#e8eee5;--yellow:#f4d182;--ink:#223e38;--muted:#50665e}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 'Avenir Next','Segoe UI',sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid #b36b27;outline-offset:5px}img{display:block;width:100%;height:auto}h1,h2,h3,h4,p{margin:0}p+p{margin-top:18px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.1}h1{font-size:clamp(52px,5.8vw,88px)}h2{font-size:clamp(35px,4vw,57px)}h3{font-weight:500;line-height:1.3;font-size:24px}h4{font-size:17px;margin-bottom:12px}em{font-weight:400;color:#ad642c}header{display:flex;align-items:center;justify-content:space-between;padding:25px 4%;gap:30px;border-bottom:1px solid #195a5325}nav{display:flex;gap:27px;align-items:center;font-size:14px;font-weight:500}.brand{display:flex;align-items:center;gap:12px;font:25px/1.2 Georgia,serif;white-space:nowrap}.brand small{display:block;font:9px/2.4 'Segoe UI',sans-serif;letter-spacing:2px}.brand-icon{font-size:47px;color:var(--green)}.btn{display:inline-flex;align-items:center;gap:30px;background:var(--green);color:white;padding:14px 25px;border-radius:40px;font-size:14px;font-weight:600}.btn:hover{background:#12463f;text-decoration:none}.btn.small{padding:11px 19px}.menu{display:none}.hero{padding:65px 4% 0;display:grid;grid-template-columns:1fr 1fr;gap:35px;background:#e8eee5;position:relative;overflow:hidden}.hero-copy{padding:12px 0 65px;max-width:620px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:2.3px;margin-bottom:24px}.hero h1{margin-bottom:25px}.hero-copy>p:not(.eyebrow){max-width:495px;color:var(--muted);margin-bottom:30px}.text-link{font-size:14px;display:inline-block;border-bottom:1px solid;margin:20px 0 0}.hero-copy>.text-link{display:table}.hero-image{position:relative;display:flex;align-items:center;padding-bottom:55px}.hero-image>img{height:440px;object-fit:cover;border-radius:170px 170px 18px 18px}.sun{position:absolute;right:-22px;top:-45px;font-size:140px;color:#c07843;line-height:1;z-index:1}.image-note{position:absolute;bottom:30px;left:-22px;background:var(--yellow);padding:23px 35px;transform:rotate(-4deg);font:23px/1.35 Georgia,serif}.image-note em{color:var(--green)}.hero-bottom{grid-column:1/-1;border-top:1px solid #195a5330;padding:20px 0;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:2px}.hero-bottom span{font-size:23px}.wrap{width:min(1180px,90%);margin:auto}.welcome{padding:100px 0 65px;text-align:center}.two-text{display:grid;grid-template-columns:1fr 1fr;gap:50px;text-align:left;max-width:980px;margin:36px auto}.two-text p+p{margin:0}.values-line{display:flex;justify-content:center;gap:65px;border-top:1px solid #195a5325;padding-top:30px;margin-top:45px;font:23px Georgia,serif}.values-line span:before{content:'✳';font-family:serif;color:#b77843;margin-right:15px}.sites{background:#f0e9dd;padding:85px 0}.section-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:40px}.section-top>p{max-width:330px;font-size:15px}.site-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.site-card{background:var(--cream);border-radius:6px;overflow:hidden}.site-card>img{aspect-ratio:1.8;object-fit:cover}.card-body{padding:30px}.tag,.number{font-size:10px;letter-spacing:1.6px}.card-body h3{font:40px Georgia,serif;margin:15px 0}.card-body h3 span{float:right;font:18px Georgia;color:#a48d6c}.card-body p{font-size:15px}.card-body a{display:inline-block;margin-top:25px;border-bottom:1px solid;font-size:14px}.site-caption{font-size:13px;text-align:center;margin-top:25px;color:var(--muted)}.pedagogy{padding:100px 0}.intro{max-width:700px;margin-top:25px;color:var(--muted)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:45px}.project-grid img{aspect-ratio:1.55;object-fit:cover;border-radius:6px}.number{display:block;margin:24px 0 14px;color:var(--green)}.project-grid h3{font:26px/1.2 Georgia,serif;margin-bottom:16px}.project-grid p{font-size:15px;color:var(--muted)}.inclusion{background:var(--green);color:var(--cream);padding:70px 0}.inclusion-grid{display:grid;grid-template-columns:.75fr 1fr;gap:80px;align-items:center}.inclusion h2{margin-bottom:25px}.inclusion em{color:var(--yellow)}.inclusion p:not(.eyebrow){color:#e1e9df}.flower{color:var(--yellow);font:240px/1 Georgia,serif;text-align:center}.flower small{display:block;font:12px/1.6 'Segoe UI',sans-serif;letter-spacing:3px;margin-top:10px}.split{padding:100px 0;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split img{border-radius:8px}.split h2{margin-bottom:28px}.split p:not(.eyebrow){color:var(--muted)}.life{background:#edf0e6}.history{padding:100px 0}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px;border-top:1px solid #195a5340;padding-top:30px}.timeline b{font:37px Georgia,serif;color:#a76535}.timeline h3{font-size:18px;margin:20px 0 12px}.timeline p{font-size:15px;color:var(--muted)}.contact{background:#dce7df;padding:80px 0}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px}.contact h2{margin-bottom:25px}.contact p{max-width:540px}.yellow{background:var(--yellow);color:var(--ink);margin-top:28px}.yellow:hover{background:#efc268}address{font-style:normal;border-left:1px solid #195a5340;padding:8px 0 0 45px}address h3{font:27px Georgia,serif;margin-bottom:23px}address>a{display:block;font-size:20px;margin-bottom:7px}address p{font-size:14px;margin-top:25px}.direction{font-size:12px}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 0;font-size:12px}footer .brand{display:block;font-size:22px}footer p{color:var(--muted)}.skip{position:fixed;left:12px;top:-100px;background:white;z-index:100;padding:12px}.skip:focus{top:12px}@media(min-width:1500px){header{padding-left:max(4%,calc((100vw - 1360px)/2));padding-right:max(4%,calc((100vw - 1360px)/2))}.hero{padding-left:max(4%,calc((100vw - 1360px)/2));padding-right:max(4%,calc((100vw - 1360px)/2))}}@media(max-width:950px){nav{gap:15px;font-size:12px}.brand{font-size:20px}.brand small{font-size:8px}.hero{gap:25px}.hero-image>img{height:390px}.image-note{font-size:20px}.section-top{display:block}.section-top>p{margin-top:25px;max-width:650px}.values-line{gap:30px}.split{gap:35px}.contact-grid{gap:45px}.project-grid{gap:18px}}@media(max-width:720px){header{padding:18px 5%;flex-wrap:wrap;position:relative}.brand{font-size:22px}.brand-icon{font-size:35px}.menu{display:block;border:1px solid #195a5355;background:transparent;color:var(--green);padding:8px 12px;border-radius:20px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:15px 0;gap:20px;font-size:15px}nav.open{display:flex}.hero{grid-template-columns:1fr;padding:35px 5% 0;gap:0}.hero-copy{padding-bottom:35px}h1{font-size:59px}.hero-image{padding:10px 0 48px}.hero-image>img{height:320px;border-radius:130px 130px 12px 12px}.sun{font-size:105px;top:-12px;right:-12px}.image-note{left:10px;bottom:28px;padding:18px 24px}.hero-bottom{font-size:8px;letter-spacing:1px;gap:20px}.hero-bottom span{display:none}.welcome,.pedagogy,.history{padding:65px 0}.two-text,.site-grid,.project-grid,.split,.inclusion-grid,.contact-grid,.timeline{grid-template-columns:1fr}.two-text{gap:20px;margin:28px 0}.values-line{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:left;font-size:20px}.sites{padding:60px 0}.card-body{padding:25px}.site-grid{gap:25px}.project-grid{gap:35px;margin-top:30px}.project-grid img{aspect-ratio:1.78}.inclusion{padding:50px 0}.inclusion-grid{gap:35px}.flower{font-size:140px}.flower small{font-size:10px}.split{padding:60px 0;gap:30px}.life .split>div{order:2}.timeline{gap:30px}.timeline article{padding-bottom:15px;border-bottom:1px solid #195a5325}.contact{padding:60px 0}.contact-grid{gap:40px}address{border-left:0;border-top:1px solid #195a5340;padding:28px 0 0}address>a{font-size:18px}footer{flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:1.8px}h2{font-size:38px}.project-grid h3{font-size:27px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Identité officielle de l’école */
.school-logo{width:76px;height:81px;object-fit:contain;flex:none;background:#fff;border-radius:5px}header{padding-top:14px;padding-bottom:14px}header .brand{gap:14px}footer .brand{display:flex;align-items:center;gap:14px}footer .school-logo{width:65px;height:69px}@media(max-width:950px){header .brand{font-size:18px}header .school-logo{width:62px;height:66px}nav{gap:14px}}@media(max-width:720px){header .brand{font-size:18px;gap:9px}header .school-logo{width:55px;height:59px}header .brand small{font-size:7px;letter-spacing:1.3px}.menu{font-size:12px;padding:8px 10px}}

.care-heart{display:block;width:190px;height:180px;margin:0 auto 22px}.flower{font-size:inherit}@media(max-width:720px){.care-heart{width:135px;height:128px;margin-bottom:18px}}

/* Navigation native : fonctionne sans JavaScript, y compris sur Safari. */
.mobile-navigation{display:none}header .brand{flex-shrink:0}header>nav{flex-shrink:0}header>nav a{white-space:nowrap}
@media(max-width:1100px){header{flex-wrap:wrap;gap:14px}header>nav{display:none}.mobile-navigation{display:block;margin-left:auto}.mobile-navigation summary{list-style:none;cursor:pointer;border:1px solid #195a5355;border-radius:24px;padding:9px 15px;font-size:14px;white-space:nowrap}.mobile-navigation summary::-webkit-details-marker{display:none}.mobile-navigation summary:focus-visible{outline:3px solid #b36b27;outline-offset:4px}.mobile-navigation[open]{width:100%;margin-left:0}.mobile-navigation[open] summary{width:max-content;margin-left:auto}.mobile-navigation nav{display:flex;flex-direction:column;align-items:stretch;width:100%;padding:20px 0 6px;gap:18px;font-size:15px}.mobile-navigation nav a{display:block;padding:5px 0}.mobile-navigation nav .btn{padding:12px 20px;width:max-content}header .brand{font-size:20px}header .school-logo{width:62px!important;max-width:62px!important}}
@media(max-width:420px){header{padding-left:4%;padding-right:4%;gap:8px}header .brand{font-size:16px;gap:8px}header .brand small{font-size:6px;letter-spacing:1px}header .school-logo{width:48px!important;max-width:48px!important}.mobile-navigation summary{font-size:12px;padding:8px 10px}}

/* Accueil panoramique : les deux sites restent visibles sans recadrage. */
.hero.hero-banner{display:block;padding-top:48px}.hero-banner .hero-copy{max-width:1040px;margin:0 auto;padding:0 0 35px;text-align:center}.hero-banner h1{font-size:clamp(48px,5.2vw,78px);margin-bottom:24px}.hero-banner .hero-copy>p:not(.eyebrow){max-width:780px;margin:0 auto;line-height:1.7}.hero-banner .hero-image{display:block;padding:0;margin:0;position:relative}.hero-banner .hero-image>img{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:14px;aspect-ratio:auto}.hero-banner .image-note{position:static;transform:none;background:transparent;padding:18px 0 20px;text-align:center;font-size:19px;line-height:1.45}.hero-banner .image-note br{display:none}.hero-banner .image-note em{margin-left:6px}.hero-banner .hero-bottom{display:flex}
@media(max-width:720px){.hero.hero-banner{padding-top:32px}.hero-banner .hero-copy{padding-bottom:26px}.hero-banner h1{font-size:48px}.hero-banner .hero-copy>p:not(.eyebrow){font-size:15px;text-align:left}.hero-banner .hero-image>img{border-radius:8px}.hero-banner .image-note{font-size:16px;padding:15px 0}.hero-banner .hero-bottom{font-size:8px;gap:18px}}

.hero-banner .hero-image>img{height:clamp(180px,24vw,300px);max-height:300px;object-fit:cover;object-position:center 56%;aspect-ratio:auto}
@media(max-width:720px){.hero-banner .hero-image>img{height:auto;max-height:none;object-fit:contain}}

.history-heading{display:grid;grid-template-columns:1fr 210px;gap:45px;align-items:center}.founder-portrait{margin:0;text-align:center}.founder-portrait img{width:180px;height:auto;max-width:100%;margin:0 auto;border-radius:50%}.founder-portrait figcaption{font-size:13px;line-height:1.5;margin-top:14px;color:var(--green);font-style:normal}
@media(max-width:720px){.history-heading{grid-template-columns:1fr;gap:28px}.founder-portrait img{width:160px}.founder-portrait{justify-self:center;max-width:230px}}

address>a.facebook-link{display:flex;align-items:center;gap:10px;width:fit-content;max-width:100%;font-size:18px;line-height:1.5;padding:4px 0;margin-bottom:6px}.facebook-icon{display:block;width:24px;height:24px;flex:0 0 24px}.facebook-link span{min-width:0}
@media(max-width:420px){address>a.facebook-link{font-size:16px}}

.school-video{padding:15px 0 80px;text-align:center}.school-video h2{margin-bottom:30px}.school-video video{display:block;width:100%;max-width:860px;max-height:485px;height:auto;margin:0 auto;background:#183c36;border-radius:12px;object-fit:contain;box-shadow:0 10px 30px #195a5312}
@media(max-width:720px){.school-video{padding:10px 0 55px}.school-video h2{margin-bottom:24px}.school-video video{border-radius:8px}}

.school-video video{max-width:340px;max-height:600px;aspect-ratio:17/30;object-fit:contain}
