@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Fraunces:opsz,wght@9..144,500;9..144,650&display=swap');

:root{
  --forest:#173f36;--deep:#0d2d27;--moss:#7a9b65;--lime:#d7e874;
  --sand:#f3eee2;--paper:#fffdf7;--clay:#c96f4a;--ink:#1b2925;
  --line:rgba(23,63,54,.17);--navy:var(--deep);--royal:var(--forest);
  --emerald:var(--forest);--gold:var(--lime);--cream:var(--paper);
  --nr-navy:var(--deep);--nr-blue:var(--forest);--nr-green:var(--forest);
  --nr-green-soft:#e5ecdf;--nr-gold:var(--lime);--nr-cream:var(--paper);
  --nr-white:#fff;--nr-ink:var(--ink);--nr-muted:#53625d;
  --nr-line:var(--line);--nr-radius:4px;--nr-shadow:0 20px 50px rgba(23,63,54,.1);
}
body{background:var(--paper)!important;color:var(--ink)!important;font:400 1rem/1.65 'DM Sans',sans-serif!important}
h1,h2,h3,blockquote{font-family:'Fraunces',serif!important;font-weight:500!important}
h1,h2,h3{letter-spacing:-.035em!important}
.kicker{color:#557648!important;letter-spacing:.18em!important}.kicker.gold{color:var(--lime)!important}

.detail-nav{height:82px!important;min-height:82px!important;padding:0 4vw!important;background:var(--deep)!important;border-bottom:1px solid rgba(255,255,255,.3)!important;backdrop-filter:none!important}
.brand-image-link,.detail-nav .brand-image-link{width:132px!important;height:56px!important;background:#fff!important;border-radius:7px!important;overflow:hidden}
.brand-logo{width:100%!important;height:100%!important;object-fit:contain!important}
.page-nav{gap:1.4rem!important}
.page-nav a{padding:.65rem .15rem!important;border-radius:0!important;font-size:.78rem!important;letter-spacing:0!important;text-transform:none!important;background:transparent!important}
.page-nav a:hover,.page-nav a[aria-current="page"]{color:var(--lime)!important;background:transparent!important}
.page-nav .nav-button{border:1px solid var(--lime)!important;border-radius:99px!important;padding:.65rem 1.15rem!important;background:var(--lime)!important;color:var(--deep)!important;font-weight:700!important}
.menu{border-color:rgba(255,255,255,.5)!important}

.core-hero,.detail-hero,.gallery-hero,.destination-hero{min-height:690px!important;background:var(--deep)!important}
.core-hero.visual-hero,.detail-hero.visual-hero{padding:9rem 6vw 7vh!important}
.visual-hero .page-hero-shade,.schools-hero .page-hero-shade{background:linear-gradient(90deg,rgba(8,30,25,.9) 0%,rgba(8,30,25,.55) 50%,rgba(8,30,25,.12) 78%),linear-gradient(0deg,rgba(8,30,25,.7),transparent 48%)!important}
.core-hero h1,.detail-hero h1,.gallery-hero h1,.destination-hero h1{font-size:clamp(3.4rem,8vw,7.8rem)!important;line-height:1!important}
.core-hero.visual-hero .page-hero-content,.detail-hero.visual-hero .page-hero-content{min-height:430px!important;justify-content:flex-end!important}
.page-hero-content>p:last-child,.destination-hero-copy>p:last-child{font-family:'DM Sans',sans-serif!important;font-size:1.15rem!important;line-height:1.65!important}

.button,.gold-button{min-height:48px!important;border-radius:99px!important;padding:.85rem 1.3rem!important;background:var(--lime)!important;color:var(--deep)!important;font:600 .92rem 'DM Sans',sans-serif!important;box-shadow:none!important}
.button:hover,.gold-button:hover{transform:translateY(-2px)!important;box-shadow:0 14px 30px rgba(13,45,39,.18)!important}
.glass-button{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.65)!important}

.core-section{padding:8rem 7vw!important;gap:8vw!important;background:var(--paper)!important;color:var(--ink)!important}
.core-section:nth-of-type(even){background:var(--sand)!important}
.core-section h2{color:var(--deep)!important;font-size:clamp(2.7rem,5vw,5rem)!important;line-height:1.03!important}
.core-section p{color:#53625d!important;line-height:1.75!important}
.core-section a{color:#557648!important;font-weight:600}
.core-cta{padding:9rem 7vw!important;background:var(--lime)!important;color:var(--deep)!important}
.core-cta h2{color:var(--deep)!important}.core-cta .button{background:var(--deep)!important;color:#fff!important}

.catalogue-intro{background:var(--sand)!important;padding:8rem 7vw!important}.catalogue-intro h2{color:var(--deep)!important}
.catalogue-grid{background:var(--paper)!important}
.catalogue-card{border-color:var(--line)!important;background:var(--paper)!important}
.catalogue-card:hover{background:var(--sand)!important}.catalogue-card h2{color:var(--deep)!important}
.catalogue-card-copy>span,.catalogue-card-copy dt{color:#557648!important}
.catalogue-icon-wrap{height:230px;display:grid;place-items:center;background:var(--deep);color:var(--lime);border-bottom:1px solid var(--line)}
.catalogue-icon-wrap .programme-icon{width:112px;height:112px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.detail-intro{background:var(--sand)!important}.detail-intro h2{color:var(--deep)!important}
.detail-grid{background:var(--paper)!important}.detail-grid article{background:var(--paper)!important;border-color:var(--line)!important}
.detail-grid article:nth-child(even){background:var(--sand)!important}.detail-grid h3{color:var(--deep)!important}
.programme-rhythm,.school-cycle,.contact-hero{background:var(--deep)!important}
.learning-questions{background:var(--forest)!important;color:#fff!important}.learning-questions li{background:var(--deep)!important}
.delivery-grid,.delivery-standards{background:var(--forest)!important}.delivery-grid article,.delivery-standards article{background:transparent!important}
.progression{background:var(--sand)!important}.progression h2{color:var(--deep)!important}

.schools-page{--school-mint:#e5ecdf;--school-sand:var(--sand);--school-sky:#e7eee7}
.school-promise{background:var(--deep)!important;border-color:rgba(255,255,255,.22)!important}.school-promise strong{color:var(--lime)!important}
.schools-intro,.school-formats,.school-evidence{background:var(--paper)!important}.grade-pathway,.programme-phases{background:var(--sand)!important}
.phase-block,.programme-phases details{border-radius:4px!important;box-shadow:none!important;border:1px solid var(--line)!important}
.phase-label,.intermediate-phase .phase-label,.senior-phase .phase-label,.fet-phase .phase-label{background:var(--forest)!important}
.phase-label b,.school-cycle li span,.school-formats article>span,.school-brief li span,.delivery-standards article>span{color:var(--lime)!important}
.grade-cards,.programme-phases details,.phase-detail-grid,.school-brief ol{background:var(--paper)!important}
.grade-cards article>span{background:var(--deep)!important;color:var(--lime)!important}.school-cycle li{background:#12372f!important}
.school-formats article{border-radius:4px!important;background:var(--sand)!important}.school-outcomes{background:var(--forest)!important}
.caps-note{background:#e5ecdf!important}.evidence-chips span{background:#e5ecdf!important;color:var(--forest)!important}

.contact-hero{background:radial-gradient(circle at 82% 18%,rgba(122,155,101,.32),transparent 28%),var(--deep)!important}
.contact-options>a{border-color:var(--line)!important;background:var(--paper)!important}.contact-options>a:hover{background:var(--forest)!important}
.contact-options strong{color:#557648!important}.direct-contact{background:var(--sand)!important}.contact-checklist{background:var(--paper)!important}
.contact-form-section{padding:8rem 7vw;background:var(--forest);color:#fff;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start}
.contact-form-intro h2{font-size:clamp(3rem,5.5vw,5.8rem);color:#fff}.contact-form-intro>p:last-child{color:#d8e5dc;max-width:560px}
.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.contact-form label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;min-height:50px;margin-top:.55rem;padding:.9rem 1rem;border:1px solid rgba(255,255,255,.34);border-radius:8px;background:rgba(255,255,255,.1);color:#fff;font:400 1rem 'DM Sans',sans-serif}.contact-form textarea{resize:vertical}.contact-form option{color:var(--ink);background:#fff}.contact-form-wide{grid-column:1/-1}.contact-form button{width:max-content}.contact-form-note{margin:0;color:#cddbd5;font-size:.82rem;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
.contact-thanks{min-height:70vh;padding:9rem 7vw;display:grid;place-content:center;background:var(--sand);text-align:center}.contact-thanks h1{font-size:clamp(4rem,8vw,8rem);color:var(--forest)}.contact-thanks p{max-width:700px;margin:2rem auto;font-size:1.1rem}.contact-thanks .button{margin:auto}
.contact-form .venue-preferences{border:1px solid rgba(255,255,255,.34);border-radius:8px;padding:1.25rem;margin:0;min-width:0}.contact-form .venue-preferences legend{padding:0 .5rem;font:500 1.35rem 'Fraunces',serif;text-transform:none;letter-spacing:0}.contact-form .venue-preferences>p{margin:.2rem 0 1rem;color:#d8e5dc;font-size:.85rem;text-transform:none;letter-spacing:0;font-weight:400}.contact-form .venue-preference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.contact-form .venue-error{color:#fff!important;background:#8d3027;padding:.7rem .9rem;border-radius:4px}.contact-form .venue-preferences select:invalid{color:#cddbd5}
@media(max-width:850px){.contact-form-section{grid-template-columns:1fr;padding:6rem 6vw}.contact-form{grid-template-columns:1fr}.contact-form-wide{grid-column:1}.contact-form button{width:100%}}

.gallery-intro{background:var(--sand)!important}.gallery-masonry{background:var(--deep)!important}
.destination-province:nth-of-type(odd){background:var(--paper)!important}.destination-province:nth-of-type(even){background:var(--sand)!important}
.destination-list article{border-radius:4px!important;border-color:var(--line)!important}
.books-page,.resource-list{background:var(--paper)!important}
.jasmine-page .jasmine-hero-copy{background:var(--deep)!important}
.jasmine-page .jasmine-hero .glass-button{color:#fff!important;border-color:rgba(255,255,255,.65)!important}
.jasmine-page .jasmine-opening,.jasmine-page .jasmine-chapter{background:var(--paper)!important;color:var(--ink)!important}
.jasmine-page .jasmine-chapter:nth-of-type(even){background:var(--sand)!important}.jasmine-page .jasmine-chapter h2{color:var(--deep)!important}
.jasmine-page .jasmine-books{background:var(--forest)!important}.jasmine-page .jasmine-manifesto{background:var(--deep)!important}
.bianca-hero .page-hero-shade{background:linear-gradient(90deg,rgba(8,30,25,.9),rgba(8,30,25,.36))!important}

.detail-footer{padding:3rem 6vw!important;min-height:150px!important;background:#08241f!important;color:#dfeae5!important;display:grid!important;grid-template-columns:180px 1fr!important;gap:1.5rem 3rem!important}
.footer-logo-link{width:160px;height:68px;background:#fff;border-radius:7px;overflow:hidden;display:block}
.footer-logo-link img{width:100%;height:100%;object-fit:contain}.detail-footer>span{align-self:center}
.detail-footer .image-note{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:1.5rem;color:#91aaa0!important}

@media(max-width:980px){.page-nav{top:82px!important;background:var(--deep)!important}.page-nav a{min-height:44px!important}}
@media(max-width:700px){
  .detail-nav{height:76px!important;min-height:76px!important}
  .brand-image-link,.detail-nav .brand-image-link{width:112px!important;height:48px!important}
  .core-hero,.detail-hero,.gallery-hero,.destination-hero{min-height:640px!important}
  .core-hero.visual-hero,.detail-hero.visual-hero{padding:8rem 6vw 4rem!important}
  .core-section,.catalogue-intro,.detail-intro,.programme-rhythm,.learning-questions,.progression,.core-cta{padding:5rem 6vw!important}
  .detail-footer{grid-template-columns:1fr!important;padding:3rem 6vw!important}.detail-footer .image-note{grid-column:1!important}
}
@media(max-width:850px){.contact-form .venue-preference-grid{grid-template-columns:1fr}}
