:root{
  --navy:#0A1B4D; --charcoal:#001A5C; --steel:#44547A; --mist:#C7D6F5;
  --paper:#F3F6FC; --amber:#002B91; --white:#fff;
  --fill:#002B91; --on-fill:#fff; --hover-fill:#001A5C;
  --brand:#002B91; --deep:#001A5C; --sky:#A9C4FF; --tint:#E6EDFB;
  --head:'Questrial',sans-serif;
  --body:'Avenir LT W01 35 Light','Avenir Next','Avenir','Nunito Sans',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--paper);color:var(--navy);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--head);font-weight:400;line-height:1.15;color:inherit}
img{max-width:100%;display:block}
a{color:inherit}
.container{max-width:1220px;margin:0 auto;padding:0 20px}
#wixheadless-banner-container{display:none !important}

/* buttons */
.btn{display:inline-block;font-family:var(--head);font-size:1rem;padding:14px 26px;border-radius:2px;text-decoration:none;transition:transform .18s ease,background .18s ease,color .18s ease;border:1px solid transparent;cursor:pointer}
.btn:hover{transform:scale(1.03)}
.btn-primary{background:var(--fill);color:var(--on-fill);border-color:var(--fill)}
.btn-primary:hover{background:var(--hover-fill);border-color:var(--hover-fill)}
.btn-outline-light{border-color:var(--mist);color:var(--paper)}
.btn-outline-light:hover{border-color:var(--amber);color:var(--amber)}
.btn-outline-dark{border-color:var(--steel);color:var(--navy)}
.btn-outline-dark:hover{border-color:var(--navy)}
.btn-small{font-size:.9rem;padding:10px 18px}

/* sections */
section{padding:6rem 0}
.section-label{font-family:var(--head);font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--steel);display:block;margin-bottom:.9rem}
.section-label::before{content:"";display:block;width:44px;height:2px;background:var(--amber);margin-bottom:12px}
h2.big{font-size:clamp(1.9rem,3.6vw,2.9rem);margin-bottom:1.2rem;max-width:22ch}
.lede{font-size:1.12rem;max-width:62ch;color:var(--steel)}
.dark .lede{color:var(--mist)}
.dark{background:#002B91;color:var(--paper)}
.dark h2,.dark h3{color:var(--paper)}

/* header */
header.site{position:sticky;top:0;z-index:60;background:rgba(0,26,92,.97);backdrop-filter:blur(8px)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:18px}
nav.main{display:flex;align-items:center;gap:4px}
nav.main>div{position:relative}
nav.main a.top-link,nav.main a.navbtn,nav.main button.navbtn{font-family:var(--head);color:var(--paper);text-decoration:none;padding:10px 8px;display:block;background:none;border:none;font-size:.93rem;cursor:pointer;border-radius:2px;white-space:nowrap}
nav.main a.top-link:hover,nav.main a.navbtn:hover,nav.main button.navbtn:hover{color:var(--amber)}
nav.main .drop{position:absolute;top:100%;left:0;min-width:250px;background:var(--charcoal);border-top:2px solid var(--amber);padding:8px 0;opacity:0;visibility:hidden;transform:translateY(8px);transition:all .2s ease;z-index:70}
nav.main>div:hover .drop,nav.main>div:focus-within .drop{opacity:1;visibility:visible;transform:translateY(0)}
nav.main .drop a{display:block;color:var(--mist);text-decoration:none;padding:10px 18px;font-size:.93rem}
nav.main .drop a:hover{color:var(--amber);background:rgba(255,255,255,.04)}
.nav-cta{white-space:nowrap;font-size:.93rem !important;padding:13px 16px !important}
.nav-toggle{display:none;background:none;border:1px solid var(--mist);color:var(--paper);padding:9px 13px;border-radius:3px;font-size:1rem;cursor:pointer}

/* hero */
.hero{position:relative;min-height:78vh;display:flex;align-items:center;color:var(--paper)}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center;z-index:0}
.hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(0,26,92,.88) 0%,rgba(0,26,92,.62) 55%,rgba(0,26,92,.35) 100%)}
.hero .container{position:relative;z-index:1;padding-top:5rem;padding-bottom:5rem}
.hero .kick{font-family:var(--head);letter-spacing:.18em;text-transform:uppercase;font-size:.82rem;color:var(--amber);display:block;margin-bottom:1.4rem}
.hero h1{font-size:clamp(2.2rem,6vw,4.4rem);max-width:18ch}
.hero h1 .amber{color:var(--amber)}
.hero p.sub{margin-top:1.4rem;font-size:1.15rem;max-width:52ch;color:var(--mist)}
.hero .actions{margin-top:2.4rem;display:flex;gap:14px;flex-wrap:wrap}
.hero.compact{min-height:52vh}

/* why strip */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.2rem}
.why-item{border-top:2px solid var(--amber);padding-top:1.1rem}
.why-item .num{font-family:var(--head);font-size:2.2rem;color:var(--amber);display:block;line-height:1}
.why-item h3{margin:.6rem 0 .4rem;font-size:1.06rem}
.why-item p{color:var(--steel);font-size:1rem}
.dark .why-item p{color:var(--mist)}

/* service cards (always white) */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2.6rem}
.svc-card{background:var(--white);border-top:3px solid var(--amber);padding:1.7rem 1.5rem;border-radius:2px;box-shadow:0 1px 3px rgba(0,26,92,.07);display:flex;flex-direction:column}
.svc-card h3{font-size:1.14rem;margin-bottom:.55rem;color:var(--navy)}
.svc-card .dur{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--steel);margin-bottom:.7rem}
.svc-card p{font-size:1rem;color:var(--steel);margin-bottom:1.1rem;flex:1}
.svc-card a{text-decoration:none;font-family:var(--head);color:var(--navy);font-size:.92rem;border-bottom:2px solid var(--amber);padding-bottom:2px;align-self:flex-start}
.svc-card a:hover{color:var(--amber)}

/* tags + courses */
.tag{display:inline-block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--head);background:var(--fill);color:var(--on-fill);padding:4px 9px;border-radius:2px}
.tag.ghost{background:none;border:1px solid var(--mist);color:var(--mist)}
.course-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:2.4rem}
.course-card{background:var(--charcoal);border:1px solid rgba(199,214,245,.14);border-top:3px solid var(--amber);padding:1.4rem;border-radius:2px;display:flex;flex-direction:column;gap:.55rem}
.course-card h3{font-size:1.02rem;color:var(--paper)}
.course-card .date{font-family:var(--head);font-size:1.06rem;color:var(--paper)}
.course-card .len{color:var(--amber);margin-left:8px;font-size:.9rem}
.course-card .loc{color:var(--mist);font-size:.88rem;margin-bottom:.9rem}
.course-card .btn{margin-top:auto}
.month-h{font-family:var(--head);color:var(--navy);font-size:1.2rem;margin:2.6rem 0 0;border-bottom:1px solid var(--mist);padding-bottom:.5rem}
.filter-row{display:flex;gap:10px;margin-top:2rem;flex-wrap:wrap}
.chip{font-family:var(--head);background:none;border:1px solid var(--steel);color:var(--navy);padding:8px 18px;border-radius:20px;cursor:pointer;font-size:.9rem}
.chip.active{background:var(--fill);border-color:var(--fill);color:var(--on-fill)}
.note-line{margin-top:2rem;color:var(--steel);font-size:.98rem}
.note-line a{color:inherit;border-bottom:1px solid var(--amber)}
.dark .note-line{color:var(--mist)}
.dark .note-line a{color:var(--amber)}
.smallprint{margin-top:1rem;font-size:.85rem;color:var(--steel)}
.dark .smallprint{color:var(--mist)}
.smallprint a{color:inherit;border-bottom:1px solid var(--amber)}
.viewall{display:inline-block;margin-top:1.8rem;font-family:var(--head);color:var(--navy);text-decoration:none;border-bottom:2px solid var(--amber);padding-bottom:2px}

/* engagements */
.story{border-top:2px solid var(--amber);padding-top:1rem}
.story .num{font-family:var(--head);color:var(--amber);font-size:2rem;line-height:1}
.story h3{margin:.5rem 0 .5rem;font-size:1.1rem}
.story p{font-size:1rem;color:var(--steel)}
.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4rem;margin-top:2.6rem}
.band{height:52vh;min-height:380px;background-size:cover;background-position:center}
.band.short{height:38vh;min-height:280px}

/* credibility + glance */
.cred-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;margin-top:2.4rem}
.cred{background:var(--charcoal);padding:1.3rem 1.2rem;border-radius:2px;border-left:3px solid var(--amber)}
.cred h3{font-size:1rem;margin-bottom:.35rem;color:var(--paper)}
.cred p{font-size:.9rem;color:var(--mist)}
.cred.light{background:var(--white)}
.cred.light h3{color:var(--navy)}
.cred.light p{color:var(--steel)}

/* closing */
.closing h2{font-size:clamp(1.8rem,3.4vw,2.7rem);color:var(--paper)}
.closing .section-label{color:var(--mist)}
.closing .contact-lines{margin:1.6rem 0;font-size:1.05rem;color:var(--paper)}
.closing .contact-lines a{color:var(--paper);text-decoration:none;border-bottom:1px solid var(--amber)}
.closing .reply{font-family:var(--head);color:var(--on-fill);background:var(--fill);display:inline-block;padding:8px 16px;border-radius:2px;font-size:.95rem;margin:1.2rem 0}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.6rem}
section.closing{background:#001A5C;color:var(--paper)}

/* pp cards: dark default, .light variant */
.pp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2.4rem}
.pp{background:var(--charcoal);padding:1.5rem;border-radius:2px;border-top:3px solid var(--amber)}
.pp .num{font-family:var(--head);font-size:2rem;color:var(--amber);line-height:1}
.pp h3{margin:.6rem 0 .45rem;font-size:1.02rem;color:var(--paper)}
.pp p{font-size:.95rem;color:var(--mist)}
.pp ul{margin-top:.6rem;padding-left:1.1rem;color:var(--mist);font-size:.9rem}
.pp.light{background:var(--white);border-left:3px solid var(--amber);border-top:none}
.pp.light h3{color:var(--navy)}
.pp.light p{color:var(--steel)}
.pp.light ul{color:var(--steel)}
.pp-grid.pp5{grid-template-columns:repeat(5,1fr)}
.pp-grid.pp4{grid-template-columns:repeat(4,1fr)}
.pp-grid.pp2{grid-template-columns:repeat(2,1fr)}

/* feature */
.feature{background:var(--charcoal);border:1px solid rgba(199,214,245,.14);border-top:3px solid var(--amber);border-radius:2px;padding:2rem;margin-top:2.4rem;display:grid;grid-template-columns:1.6fr 1fr;gap:2rem}
.feature .tag.ghost{margin-left:6px}
.feature h3{font-size:1.5rem;margin:.8rem 0 .7rem;color:var(--paper)}
.feature p.desc{color:var(--mist);font-size:.98rem}
.feature .facts{border-left:1px solid rgba(199,214,245,.25);padding-left:2rem;display:flex;flex-direction:column;gap:1rem;justify-content:center}
.feature .facts div span{display:block;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mist)}
.feature .facts div b{font-family:var(--head);font-weight:400;font-size:1.05rem;color:var(--paper)}

/* tiles + hub */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:2.4rem}
.tile{background:var(--charcoal);padding:1.5rem;border-radius:2px;text-decoration:none;display:block;border-left:3px solid var(--amber)}
.tile:hover{background:#0A2A80}
.tile h3{font-size:1.05rem;margin-bottom:.4rem;color:var(--paper)}
.tile p{color:var(--mist);font-size:.9rem}

/* faq */
details.faq{background:var(--white);border-left:3px solid var(--amber);margin-bottom:10px;border-radius:2px}
details.faq summary{font-family:var(--head);padding:1.05rem 1.3rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--navy)}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";font-size:1.3rem;color:var(--steel);transition:transform .2s}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq .ans{padding:0 1.3rem 1.2rem;color:var(--steel);font-size:1rem}
details.faq .ans a{color:var(--navy);border-bottom:1px solid var(--amber);text-decoration:none}
.dark details.faq{background:var(--charcoal)}
.dark details.faq summary{color:var(--paper)}
.dark details.faq summary::after{color:var(--amber)}
.dark details.faq .ans{color:var(--mist)}
.dark details.faq .ans a{color:var(--amber)}

/* trainer */
.trainer{display:grid;grid-template-columns:1fr 1.6fr;gap:2.4rem;align-items:center;margin-top:2.4rem}
.trainer .mono{background:var(--amber);border-radius:2px;padding:2rem 1.6rem;color:var(--navy)}
.trainer .mono .num{font-family:var(--head);font-size:3.4rem;line-height:1;display:block}
.trainer .mono p{margin-top:.8rem;font-family:var(--head);font-size:1.05rem}
.trainer h3{font-size:1.4rem;margin-bottom:.7rem;color:var(--paper)}
.trainer p{color:var(--mist);font-size:.97rem;margin-bottom:.8rem}

/* quote panel */
.quote-panel{background:var(--white);border-top:4px solid var(--amber);padding:2.4rem;border-radius:2px;margin-top:2.6rem}
.quote-panel ul{margin:1.2rem 0 1.6rem 1.2rem;color:var(--steel)}
.quote-panel li{margin-bottom:.4rem}
.quote-panel.on-dark{background:var(--charcoal);color:var(--paper)}
.quote-panel.on-dark p,.quote-panel.on-dark ul,.quote-panel.on-dark li{color:var(--mist)}

/* tables */
.tbl-wrap{overflow-x:auto}
table.tbl{width:100%;border-collapse:collapse;font-size:.95rem;min-width:560px}
table.tbl th,table.tbl td{text-align:left;padding:11px 10px;border-bottom:1px solid rgba(0,26,92,.08);vertical-align:top;color:var(--navy)}
table.tbl th{color:var(--navy);font-family:var(--head);border-bottom:2px solid var(--amber)}
.dark table.tbl th,.dark table.tbl td{color:var(--paper);border-bottom-color:rgba(199,214,245,.15)}

/* footer */
footer.site{background:var(--paper);color:var(--navy);padding:4rem 0 2.5rem;border-top:4px solid var(--amber)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:2.5rem}
.foot-grid h4{font-family:var(--head);font-size:.95rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;color:var(--steel)}
.foot-grid a{display:block;text-decoration:none;color:var(--navy);margin-bottom:.55rem;font-size:.94rem}
.foot-grid a:hover{color:var(--amber)}
.foot-grid p{font-size:.92rem;color:var(--steel);margin-bottom:.55rem}
.foot-grid p a{display:inline;color:var(--navy)}
.foot-bottom{margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--mist);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.85rem;color:var(--steel)}

/* badges */
.symphony-badge{position:fixed;right:16px;bottom:16px;z-index:80;background:var(--navy);color:var(--paper);border:1px solid rgba(199,214,245,.4);border-left:3px solid var(--amber);font-family:var(--head);font-size:.72rem;padding:7px 12px;border-radius:3px;text-decoration:none;letter-spacing:.04em}
.symphony-badge:hover{border-color:var(--amber)}
.wa-fab{position:fixed;left:16px;bottom:16px;z-index:80;width:56px;height:56px;border-radius:50%;background:var(--amber);color:var(--navy);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,26,92,.35);transition:transform .18s ease}
.wa-fab:hover{transform:scale(1.06)}
.wa-fab svg{width:28px;height:28px}

/* contact form */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:2rem}
.form-grid .full{grid-column:1 / -1}
.field label{display:block;font-family:var(--head);font-size:.92rem;margin-bottom:.45rem;color:var(--navy)}
.field input,.field textarea{width:100%;padding:13px 14px;font-family:var(--body);font-size:1rem;border:1px solid var(--steel);border-radius:2px;background:var(--white);color:var(--navy)}
.field input:focus,.field textarea:focus{outline:2px solid var(--amber);border-color:var(--amber)}
.field textarea{min-height:130px;resize:vertical}
.form-note{font-size:.85rem;color:var(--steel);margin-top:.6rem}
.form-status{margin-top:1rem;font-family:var(--head);display:none;padding:12px 16px;border-radius:2px}
.form-status.ok{display:block;background:var(--fill);color:var(--on-fill)}
.form-status.err{display:block;background:#8a2f2f;color:var(--paper)}

/* motion */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .45s ease,transform .45s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .btn:hover{transform:none}
  html{scroll-behavior:auto}
}

/* responsive */
@media (max-width:1020px){
  .why-grid,.course-grid{grid-template-columns:repeat(2,1fr)}
  .svc-grid,.pp-grid,.stories-grid,.cred-grid{grid-template-columns:repeat(2,1fr)}
  .pp-grid.pp5,.pp-grid.pp4{grid-template-columns:repeat(2,1fr)}
  .feature{grid-template-columns:1fr}
  .feature .facts{border-left:none;padding-left:0;border-top:1px solid rgba(199,214,245,.25);padding-top:1.5rem}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .nav-toggle{display:block}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:var(--charcoal);flex-direction:column;align-items:stretch;padding:12px 24px 20px;gap:2px;border-top:2px solid var(--amber)}
  nav.main.open{display:flex}
  nav.main>div{width:100%}
  nav.main a.top-link,nav.main a.navbtn,nav.main button.navbtn{padding:12px 4px;width:100%;text-align:left}
  nav.main .drop{position:static;opacity:1;visibility:visible;transform:none;background:none;border:none;padding:0 0 8px 18px;min-width:0}
  nav.main .drop a{padding:8px 0}
  .nav-cta{margin-top:10px}
  section{padding:4.2rem 0}
}
@media (max-width:640px){
  .why-grid,.course-grid,.svc-grid,.pp-grid,.stories-grid,.cred-grid,.tiles{grid-template-columns:1fr}
  .pp-grid.pp5,.pp-grid.pp4,.pp-grid.pp2,.form-grid{grid-template-columns:1fr}
  .trainer{grid-template-columns:1fr}
  .hero{min-height:66vh}
  .foot-grid{grid-template-columns:1fr}
}

/* legal pages */
.legal p{color:var(--steel);max-width:70ch;margin-bottom:1.05rem;line-height:1.7}
.legal ul{margin:0 0 1.4rem 1.2rem;color:var(--steel)}
.legal li{margin-bottom:.45rem;line-height:1.6}
.legal h2.big{margin-bottom:1rem}
.legal a{color:var(--navy);border-bottom:1px solid var(--amber);text-decoration:none}
.dark .legal p,.dark .legal ul,.dark .legal li{color:var(--mist)}
.dark .legal a{color:var(--amber)}

.course-grid.c3{grid-template-columns:repeat(3,1fr)}
.course-card .spec-desc{color:var(--mist);font-size:.92rem;margin-bottom:.9rem}
@media(max-width:1020px){.course-grid.c3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.course-grid.c3{grid-template-columns:1fr}}

.svc-grid.s4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1020px){.svc-grid.s4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.svc-grid.s4{grid-template-columns:1fr}}

.hero .fullname{display:block;margin:-1rem 0 1.4rem;max-width:62ch;font-size:.98rem;line-height:1.45;color:var(--mist)}
.trainer .tcol .portrait{display:block;width:100%;max-width:320px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;border:3px solid var(--amber);margin:0 auto 1.6rem;background:var(--white)}

.menu-logo{display:none}
details.faq .ans ul{margin:.5rem 0 .8rem;padding-left:1.2rem}
details.faq .ans li{margin-bottom:.35rem}
.gpg-panel{background:var(--charcoal);border:1px solid rgba(199,214,245,.14);border-top:3px solid var(--amber);border-radius:2px;padding:1.4rem;margin:2.4rem 0 0;display:flex;gap:1.6rem;align-items:center;justify-content:center;flex-wrap:wrap}
.gpg-panel img{display:block;height:auto;max-width:100%}
.gpg-panel .gpg-books img{width:min(560px,100%)}
.gpg-panel .gpg-cover{margin:0;text-align:center}
.gpg-panel .gpg-cover img{width:min(260px,100%);margin:0 auto}
.gpg-panel figcaption{margin-top:.7rem;font-size:.88rem;color:var(--mist)}

.flag-strip{display:flex;align-items:center;gap:14px;margin-top:1.4rem;flex-wrap:wrap}
.flag-strip img{height:44px;width:auto;display:block;border:1px solid rgba(0,26,92,.18)}
.flag-strip span{font-family:var(--head);color:var(--steel);font-size:.98rem;margin-left:6px}
.rev-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:2.4rem}
.rev{margin:0;background:var(--white);border-top:3px solid var(--amber);padding:1.6rem 1.4rem;border-radius:2px;box-shadow:0 1px 3px rgba(0,26,92,.07);position:relative;display:flex;flex-direction:column}
.rev::before{content:"\201C";font-family:var(--head);font-size:4.2rem;line-height:.7;color:var(--amber);display:block;margin-bottom:.6rem}
.rev blockquote{margin:0;color:var(--navy);font-size:1rem;flex:1}
.rev figcaption{margin-top:1rem;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--steel)}
@media(max-width:1020px){.rev-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.rev-grid{grid-template-columns:1fr}}

.vid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:2.4rem}
.vid-card{margin:0;background:var(--white);border-top:3px solid var(--amber);border-radius:2px;box-shadow:0 1px 3px rgba(0,26,92,.07);display:flex;flex-direction:column;overflow:hidden}
.dark .vid-card{background:var(--charcoal)}
.vid{position:relative;display:block;aspect-ratio:16/9;background:var(--navy)}
.vid img,.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover}
.vid-play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--amber)}
.vid-play::after{content:"";position:absolute;left:25px;top:19px;border-left:20px solid var(--navy);border-top:13px solid transparent;border-bottom:13px solid transparent}
.vid-card figcaption{padding:1.2rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.vid-card h3{font-size:1.06rem;color:var(--navy)}
.dark .vid-card h3{color:var(--paper)}
.vid-card p{color:var(--steel);font-size:.97rem}
.dark .vid-card p{color:var(--mist)}
.vid-card .credit{margin-top:auto;font-size:.82rem;color:var(--steel)}
.dark .vid-card .credit{color:var(--mist)}
.vid-card .credit a{color:inherit;border-bottom:1px solid var(--amber);text-decoration:none}
@media(max-width:1020px){.vid-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.vid-grid{grid-template-columns:1fr}}

.prices{margin:1.1rem 0 .4rem}
.prices .p-label{display:block;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);margin-bottom:.5rem}
.prices .p-row{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem}
.prices .p-row span{display:flex;flex-direction:column;min-width:5.2rem}
.prices .p-row i{font-style:normal;font-size:.72rem;letter-spacing:.12em;color:var(--amber);font-family:var(--head)}
.prices .p-row b{font-family:var(--head);font-weight:400;font-size:1.25rem;color:var(--paper)}
.course-card .prices{margin:.3rem 0 .9rem}
.course-card .prices .p-row b{font-size:1.1rem}
.course-card .p-extra{font-size:.88rem;color:var(--mist);margin:-.3rem 0 .8rem}
.price-note{margin-top:1rem;max-width:66ch;color:var(--steel);font-size:.98rem}
.price-note a{color:var(--navy);border-bottom:1px solid var(--amber);text-decoration:none}

.partner-line{display:flex;align-items:center;gap:1.1rem;margin-top:1.8rem;flex-wrap:wrap}
.partner-line span{max-width:44ch;font-size:.98rem;color:var(--mist)}
.bci-badge{display:block;line-height:0;border-radius:3px;overflow:hidden}
.bci-badge img{width:240px;max-width:100%;height:auto;display:block}
section:not(.dark):not(.hero):not(.closing) .partner-line span{color:var(--steel)}
.partner-line.on-why{margin-top:2rem}
@media(max-width:640px){.bci-badge img{width:200px}}

.geo-duo{display:grid;grid-template-columns:1fr 1fr;gap:0}
.geo{height:38vh;min-height:260px;background-size:cover;background-position:center}
@media(max-width:640px){.geo-duo{grid-template-columns:1fr}.geo{height:30vh;min-height:200px}}

.prices.exam-fee{margin-top:1.2rem;padding-top:1rem;border-top:1px solid rgba(199,214,245,.22)}

@media(max-width:640px){body .hero .bg[aria-label='Abu Dhabi skyline at dusk']{background-position:30% center}}

.hero-flags{display:flex;gap:22px;flex-wrap:wrap;align-items:flex-end;margin-top:2rem}
.hero-flags figure{margin:0;display:flex;flex-direction:column;gap:.45rem}
.hero-flags img{height:56px;width:auto;display:block;border:1px solid rgba(255,255,255,.55);background:#fff}
.hero-flags figcaption{font-family:var(--head);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--paper)}
@media(max-width:640px){.hero-flags{gap:16px}.hero-flags img{height:48px}}

.portrait-panel{background:var(--navy);padding:1.6rem;border-radius:2px;margin:0 auto 1.6rem;display:flex;justify-content:center;max-width:320px}
.trainer .tcol .portrait-panel .portrait{width:246px;max-width:100%;height:auto;margin:0;aspect-ratio:1/1}

.reach{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(0,26,92,.15)}
.reach .reply-line{margin:.4rem 0 1rem;color:var(--steel)}
.gcc-wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:3rem;align-items:center}
.gcc-fig{margin:0}
.gcc-fig img{width:100%;height:auto;display:block;border:1px solid rgba(199,214,245,.2);border-radius:2px;background:var(--navy)}
.gcc-fig figcaption{margin-top:.7rem;font-size:.9rem;color:var(--mist)}
.gcc-key{list-style:none;margin:1.2rem 0 0;padding:0;color:var(--mist);font-size:.95rem}
.gcc-key .pin{display:inline-block;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--navy);box-shadow:0 0 0 2px var(--amber);margin-right:.6rem;vertical-align:-2px}
@media(max-width:1020px){.gcc-wrap{grid-template-columns:1fr}}

.svc-grid.s3{grid-template-columns:repeat(3,1fr)}
@media(max-width:1020px){.svc-grid.s3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.svc-grid.s3{grid-template-columns:1fr}}

.cal-price{margin:1.6rem 0 .6rem;padding:1.3rem 1.4rem;background:var(--charcoal);border-top:3px solid var(--amber);border-radius:2px;max-width:46rem}
.cal-price .prices{margin:0 0 .8rem}
.cal-price .price-line{margin:.35rem 0;color:var(--mist);font-size:.95rem}
.cal-price .price-line a,.cal-price .price-note a{color:var(--amber);border-bottom:1px solid var(--amber);text-decoration:none}
.cal-price .price-note{margin:.9rem 0 0;color:var(--mist);font-size:.88rem;max-width:none}

.video-feature .lede{margin-bottom:0}
.yt-feature{margin:2.2rem 0 0;max-width:1100px}
.yt-frame{position:relative;aspect-ratio:16/9;background:var(--navy);border-top:3px solid var(--amber);box-shadow:0 12px 40px rgba(0,0,0,.35)}
.yt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-feature figcaption{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;align-items:center;justify-content:space-between;margin-top:1rem;font-size:.9rem;color:var(--mist)}
.yt-feature .credit{max-width:70ch}
.yt-feature figcaption a{color:var(--paper);border-bottom:1px solid var(--amber);text-decoration:none}
.yt-feature figcaption a:hover,.yt-feature figcaption a:focus-visible{color:var(--amber)}
.vid-grid.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:640px){.vid-grid.two{grid-template-columns:1fr}}

.li-line{margin-top:1.4rem;font-size:.92rem}
.li-link{color:inherit;text-decoration:none;border-bottom:1px solid var(--amber);padding-bottom:1px}
.li-link:hover{color:var(--amber);border-bottom-color:currentColor}
.li-link:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:2px}

.yt-frame .vid{position:absolute;inset:0;aspect-ratio:auto}
.yt-frame .vid img{object-fit:cover}
.yt-frame .vid-play{width:84px;height:84px;margin:-42px 0 0 -42px}
.yt-frame .vid-play::after{left:33px;top:25px;border-left-width:26px;border-top-width:17px;border-bottom-width:17px}
.yt-frame .vid:focus-visible{outline:3px solid var(--amber);outline-offset:-3px}

.yt-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;margin-top:2.2rem}
.yt-card{margin:0}
.yt-card .yt-frame{box-shadow:0 12px 40px rgba(0,0,0,.35)}
.yt-card figcaption{margin-top:1rem;font-size:.9rem;color:var(--mist);display:flex;flex-direction:column;gap:.5rem}
.yt-card figcaption h3{font-size:1.1rem;color:var(--paper)}
.yt-card figcaption p{color:var(--mist);font-size:.95rem}
.yt-card figcaption a{color:var(--paper);border-bottom:1px solid var(--amber);text-decoration:none;align-self:flex-start}
.yt-card figcaption a:hover,.yt-card figcaption a:focus-visible{color:var(--amber)}
@media(max-width:800px){.yt-pair{grid-template-columns:1fr}}

.video-third .yt-solo{max-width:760px;margin-top:2.2rem}
.video-third .yt-solo figcaption{margin-top:1rem;font-size:.9rem;color:var(--steel);display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;align-items:center;justify-content:space-between}
.video-third .yt-solo figcaption a{color:var(--navy);border-bottom:1px solid var(--amber);text-decoration:none}
.video-third .yt-solo figcaption a:hover,.video-third .yt-solo figcaption a:focus-visible{color:var(--steel)}

.yt-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:2.2rem}
@media(max-width:1020px){.yt-trio{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.yt-trio{grid-template-columns:1fr}}
.yt-trio .yt-card figcaption h3{font-size:1.02rem}

nav.main a.top-link.active{color:var(--amber)}
nav.main a.top-link:focus-visible,nav.main a.navbtn:focus-visible{outline:2px solid var(--amber);outline-offset:2px}

/* front page: lift hero text by about one inch (96px) on desktop, half an inch (48px) on phones, by trimming the space above it */
.hero.hero-lift{padding-top:0}
/* second lift, 23 Oct: a further half inch (48px desktop, 24px phone) */
.hero.hero-lift .container{padding-top:calc(5rem - 48px)}
@media(max-width:900px){.hero.hero-lift{padding-top:calc(4.2rem - 48px)}.hero.hero-lift .container{padding-top:calc(5rem - 24px)}}

nav.main button.navbtn.active,nav.main a.navbtn.active,nav.main .drop a[aria-current="page"]{color:var(--amber)}

/* Course banner (front page) */
.course-banner{background:var(--charcoal);border-bottom:2px solid var(--amber);overflow:hidden}
.cb-wrap{display:flex;align-items:center;gap:1.2rem;padding:.5rem 1.2rem;min-width:0}
.cb-track{display:inline-flex;gap:1.6rem;white-space:nowrap;animation:cb-scroll 32s linear infinite}
.cb-wrap:hover .cb-track,.cb-wrap:focus-within .cb-track{animation-play-state:paused}
.cb-item{font-family:var(--head);font-size:.9rem;color:var(--paper)}
.cb-sep{color:var(--amber)}
.cb-link{font-family:var(--head);font-size:.9rem;color:var(--amber);text-decoration:none;border-bottom:1px solid var(--amber);white-space:nowrap}
.cb-link:hover{color:var(--paper)}
@keyframes cb-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .cb-track{animation:none;white-space:normal;flex-wrap:wrap}
  .cb-wrap{flex-wrap:wrap}
  .cb-sep{display:none}
}
/* UK flag beside Nasim Choudhry on the Team page */
.profile-flag{height:26px;width:auto;vertical-align:middle;margin-left:10px}
.team-next{margin-top:4.5rem}
.role-line{font-family:var(--head);color:var(--steel);font-size:1.1rem;line-height:1.4;margin:-.4rem 0 0;overflow-wrap:break-word}
/* Kaleem's experience panel: clearer gap under the portrait, smaller box */
.trainer .tcol .portrait-panel + .mono.mono-compact{margin-top:3.1rem;padding:1.5rem 1.2rem}
.trainer .mono.mono-compact .num{font-size:2.8rem}
.trainer .mono.mono-compact p{margin-top:.6rem;font-size:1rem;line-height:1.35}
@media (max-width:640px){.trainer .tcol .portrait-panel + .mono.mono-compact{margin-top:2.85rem}}

/* collaboration partners (front page): add a logo by adding one <li> to .partner-list */
section.partners{background:var(--paper);padding:3rem 0;border-top:1px solid var(--mist);scroll-margin-top:96px}
.partners-h{font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--navy)}
.partners-line{margin-top:.5rem;color:var(--steel)}
.partner-list{list-style:none;margin:1.8rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:1.25rem}
.partner-list li{margin:0}
.partner-tile{display:flex;align-items:center;justify-content:center;height:140px;min-width:200px;padding:20px 32px;border-radius:3px;border:1px solid var(--mist);box-shadow:0 1px 3px rgba(0,26,92,.07);transition:transform .25s ease,box-shadow .25s ease}
.partner-tile.partner-light{background:#fff}
.partner-tile.partner-dark{background:#001A5C;border-color:#001A5C}
.partner-tile img{display:block;height:104px;width:auto;max-width:100%}
.partner-tile.partner-light img{height:72px}
.partner-tile.partner-ukra img{height:auto;width:340px;max-width:100%}
.partner-tile.partner-ollx img{height:auto;width:auto;max-height:104px}
.partner-tile.partner-text{font-family:var(--head);font-size:1.7rem;line-height:1.15;color:var(--navy);text-align:center;text-decoration:none}
@media (min-width:641px){.partner-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px}.partner-list li{display:flex}.partner-tile{width:100%}}@media (min-width:1100px){.partner-list{grid-template-columns:repeat(5,minmax(0,1fr));max-width:none}.partner-tile{padding:20px 20px}}
.partner-tile:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,26,92,.16)}
.partner-tile:focus-visible{outline:3px solid var(--amber);outline-offset:3px}
@media (max-width:640px){.partner-list{flex-direction:column}.partner-tile{width:100%;min-width:0}.partner-tile.partner-light img{height:auto;max-height:64px;width:auto;max-width:100%}.partner-tile{height:128px}.partner-tile.partner-dark img{height:96px}}
@media (max-width:640px){.partner-tile.partner-light.partner-ollx img{height:auto;max-height:96px;width:auto}}
@media (prefers-reduced-motion:reduce){.partner-tile{transition:none}.partner-tile:hover{transform:none}}
/* long Resources list: keep every menu entry reachable on short screens and on phones */
@media (min-width:901px){nav.main .drop{max-height:calc(100vh - 72px);overflow-y:auto;overscroll-behavior:contain}}
@media (max-width:900px){nav.main{max-height:calc(100vh - 76px);max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}}

/* ===== Blue and white look, 24 Oct 2026 =====
   Palette: brand blue #002B91, deep blue #001A5C, midnight text #0A1B4D, steel #44547A,
   sky #A9C4FF and pale blue #C7D6F5 on blue, tint #E6EDFB, cool white #F3F6FC. No amber.
   --amber now carries the accent: brand blue on light, sky on blue. --fill/--on-fill carry filled buttons and tags. */
.dark,section.closing,header.site,footer.site,.hero,.course-banner,.partner-tile.partner-dark,.course-card,.cred,.pp,.feature,.tile,.gpg-panel,.cal-price,.quote-panel.on-dark,.dark details.faq,.dark .vid-card{--amber:#A9C4FF;--fill:#fff;--on-fill:#002B91;--hover-fill:#E6EDFB}
.svc-card,.cred.light,.pp.light,.quote-panel:not(.on-dark),.rev,details.faq,.vid-card,.partner-tile.partner-light{--amber:#002B91;--fill:#002B91;--on-fill:#fff;--hover-fill:#001A5C}
.dark details.faq,.dark .vid-card{--amber:#A9C4FF;--fill:#fff;--on-fill:#002B91;--hover-fill:#E6EDFB}

/* logos: white transparent logo sits straight on deep blue, no plate */
.site-logo{display:inline-flex;align-items:center;line-height:0;text-decoration:none}
.site-logo img{display:block;width:var(--logo-w,220px);height:auto}
header.site{--logo-w:220px}
header.site .nav-wrap{padding-top:6px;padding-bottom:6px}
footer.site .site-logo{--logo-w:230px}
.menu-logo{display:none}
@media(max-width:900px){
  header.site{--logo-w:150px}
  header.site .nav-wrap{min-height:64px}
  .menu-logo{display:block;width:220px;height:auto;margin:6px auto 14px}
}
@media(max-width:640px){footer.site .site-logo{--logo-w:200px}}
.form-logo{display:block;width:230px;max-width:80%;height:auto;margin:0 auto 1.2rem}

/* header and menus on deep blue */
nav.main a.top-link,nav.main a.navbtn,nav.main button.navbtn{color:#fff}
nav.main a.top-link:hover,nav.main a.navbtn:hover,nav.main button.navbtn:hover{color:#A9C4FF}
nav.main .drop{background:#001A5C;border-top:2px solid #A9C4FF;box-shadow:0 12px 28px rgba(0,10,40,.35);outline:1px solid rgba(169,196,255,.25)}
nav.main .drop a{color:#fff}
nav.main .drop a:hover,nav.main .drop a:focus-visible{color:#A9C4FF;background:rgba(255,255,255,.09)}
@media (max-width:900px){nav.main{background:#001A5C;border-top:2px solid #A9C4FF;box-shadow:0 14px 28px rgba(0,10,40,.35)}nav.main .drop{box-shadow:none;outline:none}}
.nav-toggle{border-color:#A9C4FF;color:#fff}

/* course banner: brand blue under the deep blue header */
.course-banner{background:#002B91;border-bottom:2px solid #A9C4FF}

/* footer */
footer.site{background:#001A5C;color:#fff;border-top:4px solid #A9C4FF}
.foot-grid h4{color:#C7D6F5}
.foot-grid a{color:#fff}
.foot-grid a:hover{color:#A9C4FF}
.foot-grid p{color:#C7D6F5}
.foot-grid p a{color:#fff}
.foot-bottom{border-top-color:rgba(199,214,245,.3);color:#C7D6F5}
footer.site a:focus-visible{outline:2px solid #A9C4FF;outline-offset:3px}

/* closing section contact lines (inline dark colour in the markup) */
.closing .contact-lines{color:#fff !important}
.closing .contact-lines a{color:#fff !important}

/* experience boxes */
.trainer .mono{background:#002B91;color:#fff}
.trainer .mono .num,.trainer .mono p{color:#fff}
.dark .trainer .mono{background:#001A5C;border:1px solid rgba(169,196,255,.5)}

/* floating buttons, play button, badge */
.wa-fab{background:#002B91;color:#fff;box-shadow:0 0 0 3px #fff,0 4px 14px rgba(0,26,92,.4)}
.vid-play{background:#fff}
.vid-play::after{border-left-color:#002B91}
.symphony-badge{background:#001A5C;border-left-color:#A9C4FF;border-color:rgba(199,214,245,.5)}
.symphony-badge:hover{border-color:#A9C4FF}

/* collaboration partners band */
section.partners{background:#E6EDFB}

/* contrast fixes on blue */
.dark .smallprint,.closing .smallprint,section.closing .smallprint,.dark .closing .smallprint{color:#C7D6F5}
.dark .smallprint a,.closing .smallprint a{color:#fff}
.dark .btn-outline-dark,.closing .btn-outline-dark,section.closing .btn-outline-dark{border-color:#C7D6F5;color:#fff}
.dark .btn-outline-dark:hover,.closing .btn-outline-dark:hover{border-color:#fff}
.dark .quote-panel:not(.on-dark) p,.dark .quote-panel:not(.on-dark) li,.dark .quote-panel:not(.on-dark) ul{color:#44547A}
.dark .quote-panel:not(.on-dark) a,.dark .legal .quote-panel a{color:#002B91}
.quote-panel.on-dark .field label,.quote-panel.on-dark .form-note{color:#fff}
.quote-panel.on-dark .form-note a{color:#fff}
.field input:focus,.field textarea:focus{outline:2px solid #002B91;border-color:#002B91}
.quote-panel.on-dark .field input:focus,.quote-panel.on-dark .field textarea:focus{outline:2px solid #A9C4FF;border-color:#A9C4FF}
.feature .smallprint,.cal-price .smallprint,.gpg-panel .smallprint,.course-card .smallprint,.pp:not(.light) .smallprint,.quote-panel.on-dark .smallprint{color:#C7D6F5}
.feature .smallprint a,.cal-price .smallprint a,.course-card .smallprint a,.quote-panel.on-dark .smallprint a{color:#fff}
.dark .quote-panel:not(.on-dark) .smallprint{color:#44547A}
.dark .quote-panel:not(.on-dark) .smallprint a{color:#002B91}
button.btn-outline-light,button.btn-outline-dark{background:transparent}

/* GCC BCM Training Academy banner (front page, under the hero flags) */
.academy-banner{margin-top:1.8rem;max-width:62ch;padding:1.2rem 1.5rem;background:#001A5C;border:1px solid rgba(169,196,255,.55);border-left:4px solid #A9C4FF;color:#fff}
.academy-banner .academy-text{margin:0;font-size:1.05rem;line-height:1.5;color:#fff}
.academy-banner .academy-text strong{display:block;font-family:var(--head);font-weight:400;font-size:clamp(1.35rem,3.4vw,1.8rem);line-height:1.2;color:#fff;margin:.1rem 0 .2rem}
.academy-banner .academy-cta{margin:.8rem 0 0}
.academy-banner .academy-cta a{display:inline-block;padding:.5rem 0;font-family:var(--head);color:#A9C4FF;text-decoration:underline;text-underline-offset:3px}
.academy-banner .academy-cta a:hover,.academy-banner .academy-cta a:focus-visible{color:#fff}
@media (max-width:640px){.academy-banner{padding:1rem 1.1rem}}

/* front page hero: BCI images (CBCI badge, GPG 7.0 cover, Specialism Courses badge) */
.hero-bci{display:flex;align-items:flex-end;gap:14px;margin-top:1.4rem}
.hero-bci a{display:block;line-height:0;border:1px solid rgba(255,255,255,.55);background:#fff}
.hero-bci img{display:block;height:100px;width:auto}
@media(min-width:641px){.hero-bci img{height:120px}}
@media(min-width:1100px){.hero-bci{position:absolute;top:2rem;right:20px;margin:0;width:140px;flex-direction:column;align-items:stretch;gap:12px}.hero-bci img{width:140px;height:auto}}
@media(min-width:1100px){.hero.hero-lift p.sub{max-width:700px}}

/* front page hero headline: 2pt (2.67px) smaller, front page only */
.hero-lift h1{font-size:clamp(calc(2.2rem - 2.67px),calc(6vw - 2.67px),calc(4.4rem - 2.67px))}
