/* Colour-only editorial palette. Geometry and typography remain unchanged. */
:root{--ink:#161c1e;--paper:#f0f2ed;--glass:rgba(38,49,53,.64);--line:rgba(255,255,255,.24)}
body{background:var(--paper);color:var(--ink)}
::selection{background:#ff6347;color:#161c1e}a:focus-visible,button:focus-visible{outline-color:#ff917b}
.glass{background:rgba(38,49,53,.64);border-color:#ffffff3d;box-shadow:0 12px 38px #111c2026}
.header{background:rgba(38,49,53,.62)}.header.scrolled{background:rgba(38,49,53,.92)}.brand-dot{color:#ff6347}
.hero{background:#465458}.hero-shade{background:linear-gradient(90deg,#344247 3%,#344247f2 27%,#34424730 70%),linear-gradient(0deg,#17212580,transparent 50%)}
.hero h1 em{color:#ff7157}.hero-bottom p,.hero-location{color:#f0f2ed}
.light{background:#ff6347;color:#161c1e}.light:hover{background:#ff8069}.transparent:hover{background:#ffffff18}
.text-link{border-color:#879497}.about{background:#dfe5e2}.about-copy .lead{color:#273438}.camp-link{border-color:#b6c1bf}
.production{background:#344247}.production-shade{background:linear-gradient(90deg,#27363cee,#27363c50 85%)}
.footer{background:#263135;color:#f0f2ed}.footer-bottom{border-color:#ffffff30}
.sidebar{background:rgba(38,49,53,.94);color:#f0f2ed;border-color:#ffffff30}.sidebar nav a>svg:first-child{color:#ff917b}.sidebar-contact p{color:#d4ddda}.overlay{background:#101b20b3}
.background-word{color:rgba(38,49,53,.045)}.hero .background-word{color:rgba(240,242,237,.045)}.about .background-word{color:rgba(38,49,53,.055)}.production .background-word{color:rgba(240,242,237,.055)}.footer .background-word{color:rgba(240,242,237,.04)}
@supports not (backdrop-filter:blur(1px)){.glass,.sidebar{background:#263135}}
@media(max-width:600px){.hero-shade{background:linear-gradient(0deg,#344247 10%,#344247f5 30%,#34424710 75%)}.hero .background-word{color:rgba(240,242,237,.045)}}

@media(max-width:600px){.hero-photo{object-position:74% 22%}}
.hero-photo{top:110px;height:calc(100% - 110px);object-position:74% 0}@media(max-width:600px){.hero-photo{top:92px;height:calc(70% - 92px);object-position:74% 0}}
/* Brand colour across the editorial sections. */
.models h2 em,.about h2 em,.school h2 em{color:#b93822}
.models .text-link,.about .text-link,.school .text-link,.inclusive{color:#a93220;border-color:#d35b46}
.image-label svg,.school-card svg{color:#ff917b}
.model-card .image-label{border-color:#ff917b70}
.school{background:#f5e8e2}
.school-card h3{color:#a93220}
.camp-link{background:rgba(255,255,255,.36);color:#263135;border:1px solid #ffffff99;border-radius:14px;padding:25px 24px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:background .25s}.camp-link>svg,.camp-link>span:last-child svg{color:#b93822}.camp-link:hover{background:rgba(255,255,255,.6)}@media(max-width:600px){.camp-link{padding:22px 16px}}
.production h2 em,.footer h2 em{color:#ff8069}
.footer .text-link,.footer .social-links{color:#ffad99}
.models .background-word,.school .background-word{color:rgba(185,56,34,.055)}
.about .background-word{color:rgba(185,56,34,.045)}
.production .background-word,.footer .background-word{color:rgba(255,128,105,.06)}

/* Horizontal editorial school programmes. */
.school-programs{display:grid;grid-template-columns:1fr;gap:36px}
.school-programs .school-card{position:relative;isolation:isolate;display:grid;grid-template-columns:38% 1fr;overflow:hidden;background:#f0f2ed;border-radius:16px}
.school-programs .school-card:nth-child(2){grid-template-columns:1fr 38%;background:#263135;color:#f0f2ed}
.school-programs .school-card:nth-child(2) .school-image{grid-column:2;grid-row:1}
.school-programs .school-card:nth-child(2) .program-content{grid-column:1;grid-row:1}
.school-programs .school-card:nth-child(3){background:#eadbd4}
.school-programs .school-image{display:block;overflow:hidden;margin:0;position:relative;z-index:1}
.school-programs .school-image img{height:100%;min-height:520px;object-position:center 25%}
.school-programs .program-content{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:0;margin:0;padding:48px clamp(24px,4vw,64px);position:relative;z-index:1}
.program-word{position:absolute;z-index:0;pointer-events:none;user-select:none;right:-10px;bottom:8px;font-size:clamp(90px,12vw,190px);font-weight:650;letter-spacing:-.055em;line-height:.85;white-space:nowrap;color:#b938220b}
.school-card:nth-child(2) .program-word{right:auto;left:8px;color:#ff806912}
.school-programs .school-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;min-height:0}
.school-title h3{font-family:Editorial,Georgia,serif;font-weight:400;font-size:clamp(32px,3.4vw,52px);line-height:1.05;color:#a93220}
.school-title>span{flex-shrink:0;font-size:12px;border:1px solid #b9382245;border-radius:20px;padding:7px 12px;white-space:nowrap}
.school-description{font-size:14px;line-height:1.75;margin:24px 0;max-width:58ch}
.school-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0;font-size:12px}
.school-facts>div{padding:16px 0;border-top:1px solid #26313530}
.school-facts dt{color:#a93220;margin-bottom:8px}
.school-facts dd{margin:0;line-height:1.65}
.school-programs .school-price{display:flex;justify-content:flex-start;align-items:baseline;gap:8px;margin:24px 0 0}
.school-price strong{font-weight:500;font-size:32px;letter-spacing:-.03em}
.school-price span{font-size:12px}
.school-enroll{display:flex;align-items:center;justify-content:space-between;margin-top:24px;padding:16px 0;border-bottom:1px solid #c85e49;color:#a93220;font-size:13px;min-height:48px}
.school-enroll:hover svg{transform:translate(3px,-3px)}
.school-card:nth-child(2) h3,.school-card:nth-child(2) dt,.school-card:nth-child(2) .school-enroll{color:#ffad99}
.school-card:nth-child(2) .school-title>span,.school-card:nth-child(2) .school-facts>div{border-color:#ffffff35}
.school-source{margin-top:30px;font-size:11px;color:#4c5657;max-width:65ch}
.school-source a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.school-programs .program-content{padding:32px 24px}.school-title h3{font-size:34px}.school-programs .school-title{align-items:flex-start;flex-wrap:wrap}.school-facts{gap:16px}.school-programs .school-image img{min-height:540px}}
@media(max-width:600px){.school-programs{gap:28px}.school-programs .school-card,.school-programs .school-card:nth-child(2){grid-template-columns:1fr}.school-programs .school-card:nth-child(2) .school-image,.school-programs .school-card:nth-child(2) .program-content{grid-column:auto;grid-row:auto}.school-programs .school-image img{height:340px;min-height:0}.school-programs .program-content{padding:30px 22px 34px}.school-programs .school-title{flex-wrap:nowrap}.school-title h3{font-size:34px}.school-title>span{font-size:10px;padding:6px 9px}.school-description{font-size:13px;margin:22px 0}.school-facts{font-size:12px;gap:16px}.program-word{font-size:22vw;bottom:12px}.school-price strong{font-size:28px}}
.about .background-word{top:24px;bottom:auto}@media(max-width:600px){.about .background-word{top:24px;bottom:auto}}
.school-programs .program-word{right:16px;bottom:16px}.school-programs .school-card:nth-child(2) .program-word{left:16px;right:auto}
.school-programs .school-title h3{font-family:Manrope,sans-serif;font-style:normal;font-weight:500;font-size:clamp(26px,2.6vw,40px);line-height:1.15;letter-spacing:-.03em}@media(max-width:600px){.school-programs .school-title h3{font-size:28px}}

