/* Centered navigation, contact shortcuts, and a dark photographic hero. */
header .nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px}
header nav{justify-self:center;justify-content:center;margin:0;gap:26px;text-align:center}
header nav a{font-size:13px;font-weight:700;letter-spacing:.035em;text-transform:uppercase;text-align:center;white-space:nowrap}
.header-actions{display:flex;align-items:center;justify-self:end;gap:10px;direction:ltr}
.header-actions .header-contact{background:#f5b719;border-color:#e6a70a;color:#092535;padding:11px 18px;min-height:42px;font-size:14px;white-space:nowrap;box-shadow:0 3px 10px #d6981420}
.header-actions .header-contact:hover{background:#ffc82e}
.contact-icon{display:grid;place-items:center;width:35px;height:38px;padding:7px;border:0;border-radius:6px;color:var(--navy);background:transparent;flex-shrink:0}
.contact-icon svg{width:21px;height:21px}
.contact-icon:hover{background:#f2f4f4}
.whatsapp-link{color:#178a4a}
.header-actions .language-menu{margin:0}
.header-actions .language-toggle{display:flex;justify-content:center;align-items:center;gap:3px;width:48px;height:38px;border-radius:6px}
.selected-language-flag{font-size:25px;line-height:1}
.flag-chevron{font-size:15px;color:var(--navy);line-height:1}
.header-actions .language-options{inset-inline-end:0;direction:ltr}
header .menu{display:none}
.hero,html[dir=rtl] .hero{background:linear-gradient(180deg,rgba(7,28,43,.72) 0%,rgba(7,28,43,.81) 48%,rgba(4,19,30,.95) 100%),url('assets/classroom.webp') center 42%/cover no-repeat;color:#fff}
.hero h1{color:#fff}
.hero h1 span{color:#ffd36a}
.hero .eyebrow{color:#ffe0a0}
.hero .eyebrow:before{background:#f5b719}
.hero .intro,.hero .hero-note{color:#edf2f5}
.hero .small-seal{color:#f5b719}
.hero .actions .navy{background:#f5b719;color:#092535;border-color:#f5b719}
.hero .actions .navy:hover{background:#ffca3a}
.hero .actions .outline{background:#ffffff08;border-color:#ffffff6b;color:white}
.hero .actions .outline:hover{background:#ffffff18}
.hero-card-large{background:#f2f4f5;border-color:#ffffff66;box-shadow:0 24px 55px #0003}
.hero-card-small{border-color:#183344;box-shadow:0 18px 40px #0004}
.faq-section{max-width:900px}
.faq-section h2{margin-bottom:25px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}
.faq-list summary{font-weight:600;cursor:pointer;color:var(--navy);font-size:16px}
.faq-list summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.faq-list p{font-size:15px;color:var(--muted);margin:13px 0 0;max-width:750px}
@media(max-width:1150px){header .nav{display:flex;gap:16px}header nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:center;margin:0;padding:18px 24px;background:white;border-bottom:1px solid var(--line);box-shadow:0 10px 18px #0b293914;z-index:20}header nav.open{display:flex}header nav a{width:auto;text-align:center;font-size:15px}header .menu{display:block;color:var(--navy)}.header-actions{margin-inline-start:auto;gap:10px}.header-actions .header-contact{font-size:13px}.header-actions .language-menu{margin:0}}
@media(max-width:620px){header .nav{height:76px;gap:6px}header .nav .brand{width:94px;height:62px}.header-actions{gap:3px}.header-actions .header-contact{font-size:11px;min-height:36px;padding:8px 10px}.contact-icon{width:29px;height:34px;padding:5px}.contact-icon svg{width:19px;height:19px}.header-actions .language-toggle{width:37px;height:34px;gap:1px}.selected-language-flag{font-size:23px}.flag-chevron{font-size:12px}header .menu{font-size:21px;padding:2px}.hero,html[dir=rtl] .hero{background-position:center,60% center}.faq-list summary{font-size:15px}}
@media(max-width:390px){header .wrap{width:calc(100% - 20px)}header .nav .brand{width:75px;height:54px}.header-actions{gap:1px}.header-actions .header-contact{font-size:10px;padding:8px}.contact-icon{width:26px}.header-actions .language-toggle{width:32px}.flag-chevron{display:none}header .nav{gap:4px}}

/* Render the original artwork with a single uniform scale at every size. */
header .nav .brand{display:flex;align-items:center;justify-content:center;overflow:visible}
header .brand .original-logo{display:block;width:100%;height:100%;flex:none}
@media(min-width:1151px){.header-actions .header-contact{margin-right:16px}}
html[lang=ar] header nav a{letter-spacing:0}

/* Give the navigation and hero media more room. */
header .nav.wrap{width:calc(100% - 48px);max-width:none}
header nav{gap:42px}
.contact-shortcuts{display:flex;align-items:center;gap:9px;flex-shrink:0;margin-left:16px}
.map-link{color:var(--navy)}
.hero .hero-copy{width:47%}
.hero-cards{height:470px}
.hero-card-large{width:94%;height:410px}
.hero-card-small{width:58%;height:240px}
@media(min-width:1151px) and (max-width:1300px){header nav{gap:32px}header nav a{font-size:12px}.header-actions{gap:7px}.contact-shortcuts{gap:5px;margin-left:10px}.header-actions .header-contact{margin-right:6px;padding-inline:14px}}
@media(max-width:1150px){header nav{gap:26px}.header-actions{margin-left:auto;margin-right:0}.contact-shortcuts{margin-left:12px}}
@media(max-width:1100px){.hero-cards{height:415px}.hero-card-large{height:360px}.hero-card-small{height:210px}}
@media(max-width:820px){.hero .hero-copy{width:48%}.hero-cards{height:365px}.hero-card-large{height:320px}.hero-card-small{width:67%;height:190px}}
@media(max-width:620px){header .nav.wrap{width:calc(100% - 24px)}header .nav .brand{width:76px;height:58px}.header-actions{gap:3px}.header-actions .header-contact{font-size:10px;padding:8px}.contact-shortcuts{gap:2px;margin-left:5px}.contact-icon{width:26px;height:32px;padding:4px}.header-actions .language-toggle{width:32px}.flag-chevron{display:none}.hero .hero-copy{width:100%}.hero-cards{width:min(500px,100%);height:370px}.hero-card-large{width:90%;height:325px}.hero-card-small{width:57%;height:210px}}
@media(max-width:360px){header .nav .brand{width:62px;height:52px}header .nav{gap:3px}.header-actions .header-contact{font-size:9px;padding-inline:6px}.contact-shortcuts{margin-left:2px;gap:0}.contact-icon{width:24px}.header-actions .language-toggle{width:29px}.hero-cards{height:345px}.hero-card-large{height:300px}.hero-card-small{height:190px}}

/* More space around the brand and substantially larger hero media. */
header .nav{height:104px}
header .nav .brand{margin-inline-start:24px}
.hero,.hero-inner,html[dir=rtl] .hero{min-height:clamp(760px,86svh,940px)}
.hero .hero-inner{width:min(1440px,calc(100% - 80px));gap:48px;padding-block:64px}
.hero .hero-copy{width:42%;max-width:620px}
.hero-cards{height:620px;margin-inline-start:0}
.hero-card-large{width:96%;height:540px}
.hero-card-small{width:60%;height:330px}
.hero-card svg{width:58px;height:58px}
.hero-card-small svg{width:44px;height:44px}
.hero-card span{font-size:14px}
@media(max-width:1150px){header .nav{height:94px}header .nav .brand{margin-inline-start:16px}.hero .hero-inner{width:calc(100% - 56px);gap:32px}.hero-cards{height:540px}.hero-card-large{height:465px}.hero-card-small{height:285px}}
@media(max-width:900px){.hero .hero-inner{flex-direction:column;align-items:stretch;gap:34px;padding-block:52px}.hero .hero-copy{width:100%;max-width:620px}.hero-cards{flex:auto;width:min(660px,100%);height:535px;margin:0 auto}.hero-card-large{width:92%;height:465px}.hero-card-small{width:58%;height:280px}}
@media(max-width:620px){header .nav{height:90px}header .nav .brand{margin-inline-start:8px}.hero .hero-inner{width:calc(100% - 36px);padding-block:46px;gap:35px}.hero-cards{height:470px}.hero-card-large{width:94%;height:410px}.hero-card-small{width:65%;height:270px}.hero-card span{font-size:13px}}
@media(max-width:360px){header .nav .brand{margin-inline-start:5px}.hero-cards{height:425px}.hero-card-large{height:370px}.hero-card-small{height:240px}}

/* A tighter hero and a contact action at the end of the header. */
header .nav .brand{margin-inline-start:40px}
.header-actions .header-contact{margin:0 0 0 8px}
.contact-shortcuts{margin-left:4px}
.hero,.hero-inner,html[dir=rtl] .hero{min-height:clamp(660px,75svh,820px)}
.hero .hero-inner{padding-block:48px}
.hero-cards{height:540px}
.hero-card-large{height:470px}
.hero-card-small{height:285px}
.hero-card{overflow:hidden}
.hero-card img{display:block;width:100%;height:100%;object-fit:cover}
.hero-card-large img{object-position:center 40%}
.hero-card-small img{object-position:center}
@media(max-width:1150px){
 header .nav .brand{margin-inline-start:28px}
 header .menu{margin-inline-start:auto}
 .header-actions{margin-inline-start:0;margin-left:0}
 .hero-cards{height:470px}
 .hero-card-large{height:405px}
 .hero-card-small{height:245px}
}
@media(max-width:900px){
 .hero,.hero-inner,html[dir=rtl] .hero{min-height:0}
 .hero .hero-inner{padding-block:42px;gap:28px}
 .hero-cards{height:460px}
 .hero-card-large{height:400px}
 .hero-card-small{height:240px}
}
@media(max-width:620px){
 header .nav .brand{margin-inline-start:14px}
 .header-actions .header-contact{margin-left:4px}
 .contact-shortcuts{margin-left:2px}
 .hero .hero-inner{padding-block:38px;gap:28px}
 .hero-cards{height:400px}
 .hero-card-large{height:350px}
 .hero-card-small{height:230px}
}
@media(max-width:360px){
 header .nav .brand{margin-inline-start:10px}
 .header-actions .header-contact{margin-left:2px}
 .hero-cards{height:365px}
 .hero-card-large{height:320px}
 .hero-card-small{height:210px}
}

/* Icons describe the academy’s three areas and location. */
.values .value-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}
.values .value-icon svg{width:32px;height:32px;display:block}

/* Preserve the requested three-line French headline on small screens. */
@media(max-width:620px){html[lang=fr] .hero h1{font-size:clamp(26px,7.8vw,37px)}}
