
:root{
  --black:#080a08;
  --charcoal:#151914;
  --ink:#1d241d;
  --muted:#687166;
  --green:#08783f;
  --green-dark:#045b2e;
  --gold:#e6bd18;
  --gold-soft:#fff6cc;
  --blue:#2c67b6;
  --paper:#f7f7f2;
  --surface:#ffffff;
  --surface-soft:#fbfaf4;
  --line:#e5e4da;
  --line-strong:#d8d4bd;
  --shadow-sm:0 8px 24px rgba(12,18,12,.06);
  --shadow:0 18px 48px rgba(12,18,12,.10);
  --radius:18px;
  --radius-lg:26px;
  --max:1180px;
  --ease:cubic-bezier(.22,.8,.25,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Manrope",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
::selection{background:var(--gold);color:var(--black)}

.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.section{padding:92px 0}
.section-sm{padding:62px 0}
.stack{display:grid;gap:16px}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}

.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.75rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--green)}
.eyebrow:before{content:"";width:28px;height:2px;background:var(--gold)}
.section-title{max-width:900px;margin:14px 0 18px;font-size:clamp(2rem,4vw,3.65rem);font-weight:700;line-height:1.04;letter-spacing:-.045em}
.section-sub{max-width:760px;margin:0;color:var(--muted);font-size:1.04rem}
.micro{margin-top:15px;color:#7b8279;font-size:.82rem}

/* Header */
.topbar{background:var(--black);color:#e6e8e2;font-size:.78rem;border-bottom:1px solid rgba(230,189,24,.18)}
.topbar .container{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topbar a{font-weight:700;color:var(--gold)}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(216,212,189,.78)}
.nav-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;color:var(--black)}
.brand-logo{width:52px;height:52px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#000;border:1px solid rgba(230,189,24,.55);box-shadow:0 5px 16px rgba(0,0,0,.12);flex:none}
.brand-logo img{width:100%;height:100%;object-fit:cover}
.brand-copy{font-size:.92rem;letter-spacing:.035em;line-height:1.05}
.brand small{display:block;margin-top:6px;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#7d8478}
.nav-links{display:flex;align-items:center;gap:2px}
.nav-links a{padding:10px 11px;border-radius:9px;font-size:.86rem;font-weight:700;color:#363c34;transition:.2s var(--ease)}
.nav-links a:hover,.nav-links a.active{color:var(--green);background:#f7f4e6}
.nav-cta{margin-left:6px!important;padding:11px 16px!important;background:var(--black)!important;color:#fff!important;border-radius:10px!important}
.nav-cta:hover{background:var(--green)!important;color:#fff!important}
.menu-btn{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--black);font-size:1.1rem;cursor:pointer}

/* Buttons */
.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 18px;border:1px solid transparent;border-radius:10px;font-weight:800;font-size:.88rem;cursor:pointer;transition:.2s var(--ease)}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--black);color:#fff;box-shadow:0 10px 20px rgba(8,10,8,.14)}
.btn-primary:hover{background:var(--green)}
.btn-secondary{background:#fff;color:var(--ink);border-color:var(--line-strong)}
.btn-secondary:hover{border-color:#bbb58f;background:var(--surface-soft)}
.btn-pop{background:var(--gold);color:var(--black)}
.btn-pop:hover{background:#f0ca2b}

/* Homepage hero */
.hero{position:relative;overflow:hidden;padding:82px 0 70px;background:linear-gradient(180deg,#fff 0%,#faf9f2 100%)}
.hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--green) 0 38%,var(--gold) 38% 84%,var(--blue) 84% 100%)}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:62px;align-items:center}
.hero h1{max-width:720px;margin:18px 0 22px;font-size:clamp(3.2rem,5.7vw,5.65rem);font-weight:700;line-height:.95;letter-spacing:-.055em;color:var(--black)}
.hero h1 em{font-style:normal;color:var(--green)}
.hero p{max-width:690px;margin:0;color:var(--muted);font-size:1.08rem}
.hero-media{position:relative;min-height:525px}
.hero-photo{position:absolute;inset:0;border-radius:var(--radius-lg);overflow:hidden;background:#111;box-shadow:var(--shadow)}
.hero-photo:before{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.22);border-radius:inherit;z-index:2;pointer-events:none}
.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,9,7,0) 48%,rgba(6,9,7,.30) 100%)}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.dotgrid{position:absolute;z-index:3;width:110px;height:110px;right:-18px;top:-18px;background-image:radial-gradient(var(--gold) 1.5px,transparent 1.5px);background-size:15px 15px;opacity:.72}
.float-card{position:absolute;z-index:4;width:min(235px,48%);padding:15px 17px;background:rgba(255,255,255,.96);border:1px solid rgba(216,212,189,.9);border-radius:14px;box-shadow:var(--shadow-sm);backdrop-filter:blur(10px)}
.float-card strong{display:block;font-size:.96rem;line-height:1.4;color:var(--ink)}
.fc1{left:-28px;top:48px}
.fc2{right:-20px;bottom:38px}
.kicker-chip{display:inline-flex;align-items:center;padding:5px 8px;margin-bottom:9px;border-radius:6px;background:var(--gold-soft);color:#715d00;font-size:.68rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}

/* Credibility / capability strip */
.trust-row{display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}
.trust{min-height:102px;padding:22px 24px;border-right:1px solid var(--line)}
.trust:last-child{border-right:0}
.trust b{display:block;margin-bottom:5px;font-size:.95rem;color:var(--black)}
.trust span{display:block;color:var(--muted);font-size:.78rem}
.ribbon{background:var(--black);color:#fff;border-top:1px solid #252b24;border-bottom:1px solid #252b24;overflow:hidden}
.ribbon-track{width:min(var(--max),calc(100% - 48px));margin:auto;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:24px;white-space:nowrap;font-size:.77rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase;color:#dcded8}
.ribbon-track span{display:inline-flex;align-items:center;gap:18px}
.ribbon-track span:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}
.ribbon-track span:nth-child(n+7){display:none}
.ribbon-track span:nth-child(6):after{display:none}

/* Cards */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:0 4px 16px rgba(12,18,12,.025);transition:.22s var(--ease)}
.card:hover{transform:translateY(-3px);border-color:#d8d1aa;box-shadow:var(--shadow-sm)}
.icon-bubble{width:44px;height:44px;margin-bottom:24px;display:grid;place-items:center;border-radius:11px;background:#f8f3d6;border:1px solid #eadb8d;color:var(--green);font-size:1rem;font-weight:800}
.card h3{margin:0 0 9px;font-size:1.13rem;line-height:1.35;color:var(--black)}
.card p{margin:0;color:var(--muted);font-size:.91rem}
.bullet-list{list-style:none;padding:0;margin:18px 0 0}
.bullet-list li{position:relative;margin:9px 0;padding-left:22px;color:#4f594d;font-size:.9rem}
.bullet-list li:before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--green)}

/* Five-stage framework */
.frame{padding:40px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:34px;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.step{position:relative;min-height:192px;padding:24px 20px;background:#fff;border-right:1px solid var(--line)}
.step:last-child{border-right:0}
.step-num{width:32px;height:32px;margin-bottom:40px;display:grid;place-items:center;border-radius:50%;background:var(--black);color:var(--gold);font-size:.78rem;font-weight:800}
.step:nth-child(n) .step-num{background:var(--black);color:var(--gold)}
.step h4{margin:0 0 7px;font-size:.95rem;color:var(--black)}
.step p{margin:0;color:var(--muted);font-size:.81rem;line-height:1.55}

/* Metrics */
.metric{position:relative;overflow:hidden;min-height:142px;padding:26px;background:#fff;color:var(--ink);border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:16px}
.metric:nth-child(n){background:#fff}
.metric strong{display:block;margin-bottom:4px;font-size:2.15rem;line-height:1.1;letter-spacing:-.04em;color:var(--black)}
.metric span{font-size:.8rem;color:var(--muted)}

/* Photos / feature split */
.photo-split{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:center}
.photo-card{position:relative;min-height:500px;overflow:hidden;border-radius:var(--radius-lg);background:#111;box-shadow:var(--shadow-sm)}
.photo-card img{width:100%;height:100%;object-fit:cover}
.photo-card .caption{position:absolute;left:18px;right:18px;bottom:18px;padding:17px 18px;background:rgba(8,10,8,.88);border:1px solid rgba(255,255,255,.12);border-radius:12px;color:#fff;backdrop-filter:blur(8px);font-size:.82rem}
.photo-card .caption strong{display:block;margin-bottom:4px;font-size:.98rem;color:var(--gold)}

/* Course catalogue */
.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.course{min-height:300px;padding:24px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;transition:.22s var(--ease)}
.course:hover{transform:translateY(-2px);border-color:#d7d0aa;box-shadow:var(--shadow-sm)}
.course .tag{display:inline-flex;align-self:flex-start;padding:5px 8px;border-radius:6px;background:#f5f2e2;color:#65591b;font-size:.66rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase}
.course h3{margin:17px 0 8px;font-size:1.02rem;line-height:1.38;color:var(--black)}
.course p{margin:0 0 19px;color:var(--muted);font-size:.85rem}
.course-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.pill{padding:5px 8px;border-radius:6px;background:#f4f5f1;color:#596156;font-size:.67rem;font-weight:700}
.course a{margin-top:17px;color:var(--green);font-size:.82rem;font-weight:800}
.course a:hover{text-decoration:underline;text-underline-offset:3px}
.cat-ai .tag,.cat-technical .tag,.cat-logistics .tag{background:#eaf5ef;color:#18623a}
.cat-leadership .tag,.cat-finance .tag{background:#fff5cb;color:#765d00}
.cat-safety .tag{background:#fff0d6;color:#8d5700}
.cat-hr .tag,.cat-soft .tag{background:#f4f1e8;color:#5f5949}
.cat-esg .tag{background:#e7f5ea;color:#2e6637}

.filterbar{position:sticky;top:96px;z-index:15;display:grid;grid-template-columns:1.2fr .85fr .85fr auto;gap:10px;margin:28px 0 28px;padding:12px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-sm);backdrop-filter:blur(14px)}
.input,.select,textarea{width:100%;padding:12px 13px;background:#fff;border:1px solid #dcdcd2;border-radius:8px;outline:none;color:var(--ink);font-size:.86rem;transition:.18s var(--ease)}
.input:focus,.select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(8,120,63,.08)}
.filter-btn{padding:0 18px;border:0;border-radius:8px;background:var(--black);color:#fff;font-weight:800;cursor:pointer}
.filter-btn:hover{background:var(--green)}
.result-count{margin-bottom:14px;color:var(--muted);font-size:.82rem}
.empty{display:none;padding:48px;text-align:center;background:#fff;border:1px dashed #cfcfc5;border-radius:16px}

/* Inner page hero */
.page-hero{position:relative;overflow:hidden;padding:82px 0 68px;background:var(--black);color:#fff;border-bottom:4px solid var(--gold)}
.page-hero:after{content:"";position:absolute;right:-140px;top:-180px;width:430px;height:430px;border:70px solid rgba(230,189,24,.07);border-radius:50%}
.page-hero .container{position:relative;z-index:1}
.page-hero .eyebrow{color:var(--gold)}
.page-hero h1{max-width:930px;margin:17px 0 18px;font-size:clamp(2.8rem,5.3vw,5rem);font-weight:650;line-height:.98;letter-spacing:-.05em}
.page-hero p{max-width:760px;margin:0;color:#cbd1c8;font-size:1.04rem}

.feature-banner{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:#11150f;border:1px solid #242b22;border-radius:var(--radius-lg);color:#fff;box-shadow:var(--shadow-sm)}
.feature-banner img{width:100%;height:100%;min-height:420px;object-fit:cover}
.feature-copy{padding:48px}
.feature-copy .eyebrow{color:var(--gold)}
.feature-copy .section-title{color:#fff}
.feature-copy p{color:#c6cdc2}
.feature-copy small{color:#adb6a9}

/* Industries */
.industry{position:relative;min-height:248px;overflow:hidden}
.industry .icon-bubble{margin-bottom:42px}
.industry:after{content:"";position:absolute;right:0;bottom:0;width:78px;height:3px;background:var(--gold)}

/* Trainers / values */
.trainer-card{padding:0;overflow:hidden}
.trainer-visual{height:132px;display:grid;place-items:center;background:#f5f4ec;border-bottom:1px solid var(--line)}
.trainer-avatar{width:58px;height:58px;display:grid;place-items:center;border:1px solid #d7d3b9;border-radius:14px;background:#fff;color:var(--green);font-size:1.45rem;box-shadow:none}
.trainer-body{padding:22px}
.trainer-body h3{font-size:1rem}
.trainer-body p{font-size:.82rem}
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.value{padding:24px;background:#fff;border:1px solid var(--line);border-radius:14px}
.value b{display:block;margin-bottom:7px;font-size:1rem;color:var(--green)}
.value span{font-size:.84rem;color:var(--muted)}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:28px;align-items:start}
.form-card{padding:34px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-sm)}
.form-card h2{font-size:1.55rem!important;color:var(--black)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field label{display:block;margin:0 0 6px;font-size:.74rem;font-weight:800;color:#384036}
.field.full{grid-column:1/-1}
.check{display:flex;gap:10px;align-items:flex-start;color:#5f685d;font-size:.82rem}
.contact-aside{position:sticky;top:110px;display:grid;gap:18px}
.contact-box{padding:30px;background:var(--black);border:1px solid #262d25;border-radius:18px;color:#fff}
.contact-box .eyebrow{color:var(--gold)}
.contact-box h2{margin:15px 0 12px;font-size:1.7rem;line-height:1.15}
.contact-box p{color:#c6ccc2;font-size:.88rem}
.contact-box a{font-weight:800;color:#fff}
.faq{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px}
.faq button{width:100%;padding:18px 20px;display:flex;justify-content:space-between;gap:20px;background:#fff;border:0;text-align:left;color:var(--black);font-weight:750;cursor:pointer}
.faq .answer{display:none;padding:0 20px 20px;color:var(--muted);font-size:.9rem}
.faq.open .answer{display:block}
.faq.open button span:last-child{transform:rotate(45deg)}

/* CTA */
.cta{position:relative;overflow:hidden;padding:48px 52px;background:linear-gradient(105deg,#080a08 0%,#111610 68%,#0a6738 145%);border:1px solid #242a21;border-radius:22px;color:#fff}
.cta:after{content:"";position:absolute;right:-58px;top:-110px;width:260px;height:260px;border:42px solid rgba(230,189,24,.13);border-radius:50%}
.cta h2{position:relative;z-index:1;max-width:800px;margin:0 0 14px;font-size:clamp(2.1rem,4.2vw,3.8rem);font-weight:650;line-height:1.02;letter-spacing:-.045em}
.cta p{position:relative;z-index:1;max-width:690px;margin:0;color:#cbd0c7}
.cta .actions{position:relative;z-index:1}

/* Footer */
.footer{margin-top:90px;padding:62px 0 26px;background:#060806;color:#bfc5bc;border-top:3px solid var(--gold)}
.footer-grid{display:grid;grid-template-columns:1.35fr .7fr .8fr 1fr;gap:38px}
.footer .brand{color:#fff}
.footer .brand small{color:#8e978c}
.footer p{font-size:.82rem;color:#aeb6ac}
.footer h4{margin:0 0 14px;color:#fff;font-size:.85rem}
.footer a{display:block;margin:9px 0;color:#bfc5bc;font-size:.82rem}
.footer a:hover{color:var(--gold)}
.footer-bottom{margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #242824;font-size:.74rem;color:#8f978c}
.credit{opacity:.75}

.toast{position:fixed;right:24px;bottom:24px;z-index:80;max-width:360px;padding:15px 17px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--green);border-radius:10px;box-shadow:var(--shadow);transform:translateY(140%);transition:.28s var(--ease);font-size:.86rem}
.toast.show{transform:none}
.reveal{opacity:0;transform:translateY(14px);transition:.6s var(--ease)}
.reveal.visible{opacity:1;transform:none}

@media(max-width:1080px){
  .nav-links a{padding:10px 8px;font-size:.8rem}
  .hero-grid{gap:42px}
}

@media(max-width:980px){
  .nav-links{display:none;position:fixed;inset:82px 18px auto 18px;padding:14px;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
  .nav-links.open{display:flex}
  .nav-cta{margin-left:0!important}
  .menu-btn{display:block}
  .hero-grid,.photo-split,.contact-grid,.feature-banner{grid-template-columns:1fr}
  .hero-media{min-height:460px}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-3,.course-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr);border:0;gap:12px}
  .step{border:1px solid var(--line);border-radius:12px}
  .filterbar{grid-template-columns:1fr 1fr;top:92px}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-aside{position:static}
  .trust-row{grid-template-columns:repeat(2,1fr)}
  .trust:nth-child(2){border-right:0}
  .trust:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .ribbon-track{justify-content:flex-start;overflow-x:auto;padding:0 4px}
}

@media(max-width:650px){
  .container{width:min(100% - 28px,var(--max))}
  .topbar .container{justify-content:center;text-align:center}
  .topbar .container span:last-child{display:none}
  .nav-inner{min-height:74px}
  .brand-logo{width:46px;height:46px}
  .brand-copy{font-size:.8rem}
  .brand small{font-size:.55rem}
  .nav-links{inset:74px 14px auto 14px}
  .hero{padding:60px 0 52px}
  .hero-grid{gap:34px}
  .hero h1{font-size:clamp(2.75rem,14vw,4rem)}
  .hero-media{min-height:385px}
  .fc1{left:10px;top:18px}
  .fc2{right:10px;bottom:18px}
  .float-card{width:auto;max-width:190px;padding:12px 13px}
  .float-card strong{font-size:.82rem}
  .section{padding:68px 0}
  .section-sm{padding:46px 0}
  .grid-2,.grid-3,.grid-4,.course-grid,.steps,.values,.form-grid,.filterbar,.footer-grid{grid-template-columns:1fr}
  .field.full{grid-column:auto}
  .filterbar{position:static}
  .trust-row{grid-template-columns:1fr}
  .trust{border-right:0;border-bottom:1px solid var(--line)}
  .trust:last-child{border-bottom:0}
  .ribbon-track{width:calc(100% - 28px);min-height:52px}
  .ribbon-track span:nth-child(n+5){display:none}
  .page-hero{padding:62px 0 52px}
  .page-hero h1{font-size:clamp(2.55rem,12vw,4rem)}
  .feature-copy{padding:30px 24px}
  .frame{padding:26px 20px}
  .photo-card{min-height:390px}
  .cta{padding:36px 24px;border-radius:16px}
  .form-card{padding:24px 20px}
  .footer-bottom{flex-direction:column}
}

@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}
.icon-bubble{font-size:.69rem;letter-spacing:.04em}
.trainer-avatar{font-size:.9rem;font-weight:800;letter-spacing:.04em}

/* ============================================================
   Professional refinement — October 2026
   ============================================================ */
:root{
  --black:#090b09;
  --charcoal:#121612;
  --ink:#1d231e;
  --muted:#667067;
  --green:#0b6b3b;
  --green-dark:#074b2b;
  --gold:#d9b41f;
  --gold-soft:#fbf5d8;
  --blue:#315f99;
  --paper:#f5f4ef;
  --surface:#ffffff;
  --surface-soft:#faf9f5;
  --line:#e2e1d9;
  --line-strong:#d0cdbd;
  --shadow-sm:0 8px 24px rgba(9,11,9,.055);
  --shadow:0 24px 64px rgba(9,11,9,.12);
  --radius:12px;
  --radius-lg:18px;
  --max:1200px;
}

body{background:var(--paper);font-size:16px;line-height:1.62;color:var(--ink)}
.container{width:min(var(--max),calc(100% - 56px))}
.section{padding:104px 0}
.section-sm{padding:68px 0}
.section-title{margin:12px 0 18px;font-size:clamp(2rem,3.7vw,3.35rem);font-weight:650;line-height:1.06;letter-spacing:-.038em}
.section-sub{font-size:1rem;line-height:1.72}
.eyebrow{font-size:.71rem;letter-spacing:.15em;color:var(--green)}
.eyebrow:before{width:22px;background:var(--gold)}

/* Navigation */
.topbar{background:#050605;border-bottom:1px solid rgba(255,255,255,.06);color:#bfc5bd}
.topbar a{color:#f0d66a}
.nav{background:rgba(8,10,8,.97);border-bottom:1px solid rgba(255,255,255,.07);backdrop-filter:blur(18px)}
.nav-inner{min-height:78px}
.brand{gap:13px;color:#fff}
.brand-logo{width:48px;height:48px;border-radius:50%;border:1px solid rgba(217,180,31,.46);box-shadow:none}
.brand-copy{font-size:.86rem;letter-spacing:.06em;font-weight:800}
.brand small{margin-top:5px;color:#8f978e;font-size:.57rem;letter-spacing:.14em}
.nav-links{gap:1px}
.nav-links a{padding:10px 10px;border-radius:6px;color:#c4c9c2;font-size:.82rem;font-weight:650}
.nav-links a:hover,.nav-links a.active{background:rgba(255,255,255,.055);color:#fff}
.nav-links a.active{box-shadow:inset 0 -2px 0 var(--gold)}
.nav-cta{margin-left:8px!important;padding:11px 15px!important;background:var(--gold)!important;color:#15170f!important;border-radius:7px!important}
.nav-cta:hover{background:#efd361!important;color:#111!important}
.menu-btn{border-color:#30352f;background:#151915;color:#fff;border-radius:8px}

/* Hero */
.hero{padding:96px 0 86px;background:linear-gradient(120deg,#080a08 0%,#101510 61%,#0d2318 100%);color:#fff}
.hero:before{height:2px;background:linear-gradient(90deg,var(--gold) 0 66%,var(--green) 66% 100%)}
.hero-grid{grid-template-columns:1.03fr .97fr;gap:70px}
.hero .eyebrow{color:#e6cf71}
.hero .eyebrow:before{background:var(--green)}
.hero h1{max-width:760px;margin:19px 0 24px;font-size:clamp(3.2rem,5.5vw,5.45rem);font-weight:620;line-height:.97;letter-spacing:-.05em;color:#fff}
.hero h1 em{color:#e5c13d}
.hero p{max-width:680px;color:#c4ccc3;font-size:1.05rem;line-height:1.75}
.hero .micro{color:#929a91}
.hero-media{min-height:540px}
.hero-photo{border-radius:14px;box-shadow:0 28px 70px rgba(0,0,0,.32)}
.hero-photo:before{border-color:rgba(255,255,255,.14)}
.hero-photo:after{background:linear-gradient(180deg,rgba(2,4,2,.03) 40%,rgba(2,4,2,.38) 100%)}
.dotgrid{display:none}
.float-card{width:min(230px,46%);padding:15px 16px;background:rgba(251,250,245,.97);border-color:rgba(217,180,31,.2);border-radius:9px;box-shadow:0 16px 40px rgba(0,0,0,.18)}
.float-card strong{font-size:.9rem;line-height:1.45}
.fc1{left:-24px;top:52px}.fc2{right:-18px;bottom:34px}
.kicker-chip{border-radius:4px;background:var(--gold-soft);color:#6c5700;font-size:.64rem;letter-spacing:.07em}

/* Buttons */
.btn{min-height:45px;padding:11px 18px;border-radius:7px;font-size:.84rem;letter-spacing:.005em}
.btn:hover{transform:none}
.btn-primary{background:var(--gold);color:#14170e;box-shadow:none}
.btn-primary:hover{background:#efd25e;color:#111}
.btn-secondary{background:transparent;color:inherit;border-color:#c8c9c0}
.hero .btn-secondary{color:#fff;border-color:#555c55}
.hero .btn-secondary:hover{background:rgba(255,255,255,.06);border-color:#7a827a}
.btn-pop{background:var(--gold);color:#12150d}

/* Trust & ribbon */
.trust-row{border-radius:10px;box-shadow:none}
.trust{min-height:96px;padding:20px 22px}
.trust b{font-size:.9rem}.trust span{font-size:.75rem}
.ribbon{background:#0b0e0b;border-color:#1f241f}
.ribbon-track{min-height:50px;color:#aeb5ad;font-size:.7rem;letter-spacing:.075em}
.ribbon-track span:after{width:4px;height:4px}

/* Content cards */
.card{border-radius:10px;padding:28px;box-shadow:none}
.card:hover{transform:none;border-color:#cfcbb7;box-shadow:0 10px 30px rgba(10,13,10,.055)}
.icon-bubble{width:40px;height:40px;margin-bottom:22px;border-radius:8px;background:#111511;border-color:#242a23;color:#e1c64f}
.card h3{font-size:1.08rem;font-weight:700}
.card p{font-size:.89rem;line-height:1.65}

.frame{padding:42px;border-radius:16px;box-shadow:none}
.steps{border-radius:10px}
.step{min-height:185px;padding:23px 20px}
.step-num{margin-bottom:34px;background:#111511!important;color:#e6c84d!important}
.metric{min-height:136px;border-radius:10px;border-top:2px solid var(--gold)}
.metric strong{font-size:2rem}
.photo-card{min-height:500px;border-radius:14px;box-shadow:none}
.photo-card .caption{border-radius:8px;background:rgba(8,10,8,.91)}

/* Catalogue and filters */
.course-grid{gap:16px}
.course{min-height:292px;padding:24px;border-radius:10px}
.course:hover{transform:none}
.course .tag,.pill{border-radius:4px}
.course h3{font-size:1rem}
.filterbar{top:94px;padding:10px;border-radius:10px;box-shadow:0 10px 28px rgba(9,11,9,.06)}
.input,.select,textarea{border-radius:6px}
.filter-btn{border-radius:6px}

/* Inner pages */
.page-hero{padding:88px 0 76px;background:linear-gradient(120deg,#080a08 0%,#111611 70%,#102217 100%);border-bottom:2px solid var(--gold)}
.page-hero:after{right:-160px;top:-210px;width:460px;height:460px;border-width:56px;border-color:rgba(217,180,31,.055)}
.page-hero h1{max-width:960px;font-size:clamp(2.75rem,4.9vw,4.65rem);font-weight:620;letter-spacing:-.044em}
.page-hero p{color:#c5ccc4;line-height:1.7}
.feature-banner{border-radius:14px;box-shadow:none}
.feature-copy{padding:50px}
.industry{min-height:242px}
.values{gap:16px}.value{border-radius:10px}
.trainer-visual{height:122px;background:#f2f1eb}.trainer-avatar{border-radius:10px}

/* Forms */
.form-card,.contact-box{border-radius:12px;box-shadow:none}
.form-card{padding:36px}
.faq{border-radius:8px}

/* CTA + footer */
.cta{padding:50px 54px;border-radius:14px;background:linear-gradient(110deg,#080a08 0%,#101510 72%,#0a442a 140%)}
.cta:after{opacity:.7}
.cta h2{font-size:clamp(2rem,3.8vw,3.35rem)}
.footer{margin-top:96px;padding-top:66px;background:#050705;border-top:2px solid var(--gold)}
.footer-grid{gap:44px}
.footer .brand-logo{width:46px;height:46px}
.footer-bottom{border-top-color:#1d211d}

@media(max-width:980px){
  .nav-links{inset:78px 18px auto 18px;background:#0c0f0c;border-color:#2b302b;border-radius:10px}
  .nav-links a{color:#d1d5cf}.nav-links a:hover,.nav-links a.active{background:#151a15;color:#fff}
  .hero-grid{gap:44px}
}
@media(max-width:650px){
  .container{width:min(100% - 30px,var(--max))}
  .nav-inner{min-height:72px}.nav-links{inset:72px 14px auto 14px}
  .hero{padding:70px 0 60px}.hero h1{font-size:clamp(2.75rem,13vw,3.9rem)}.hero-media{min-height:400px}
  .section{padding:72px 0}.section-sm{padding:48px 0}
  .page-hero{padding:68px 0 58px}.feature-copy{padding:32px 24px}.frame{padding:26px 20px}.cta{padding:38px 24px}
  .float-card{max-width:185px}.fc1{left:10px}.fc2{right:10px}
}

/* ============================================================
   Bright professional theme — October 2026
   ============================================================ */
:root{
  --black:#111820;
  --charcoal:#1b2831;
  --ink:#17232b;
  --muted:#65737d;
  --green:#2b9fd8;
  --green-dark:#1976ad;
  --gold:#f4c928;
  --gold-soft:#fff7cc;
  --blue:#2b9fd8;
  --paper:#fffdf7;
  --surface:#ffffff;
  --surface-soft:#fffaf0;
  --line:#e7e6d8;
  --line-strong:#d6d3bd;
  --shadow-sm:0 10px 28px rgba(34,96,135,.07);
  --shadow:0 24px 60px rgba(34,96,135,.12);
}

body{background:var(--paper);color:var(--ink)}

/* Bright header */
.topbar{background:var(--green);color:#f7fcff;border-bottom:0}
.topbar a{color:#fff4a8}
.nav{background:rgba(255,255,255,.96);border-bottom:1px solid rgba(43,159,216,.12);box-shadow:0 5px 20px rgba(34,96,135,.05)}
.brand{color:var(--black)}
.brand small{color:#6d7d87}
.nav-links a{color:#394a55}
.nav-links a:hover,.nav-links a.active{background:#eef8ff;color:var(--green)}
.nav-links a.active{box-shadow:inset 0 -2px 0 var(--gold)}
.nav-cta{background:var(--green)!important;color:#fff!important;box-shadow:0 8px 20px rgba(43,159,216,.18)}
.nav-cta:hover{background:var(--green-dark)!important;color:#fff!important}
.menu-btn{background:#fff;border-color:#dce8ef;color:var(--ink)}

/* Bright hero */
.hero{position:relative;padding:96px 0 88px;background:
  radial-gradient(circle at 86% 10%,rgba(244,201,40,.28) 0 13%,transparent 13.3%),
  radial-gradient(circle at 7% 82%,rgba(43,159,216,.11) 0 14%,transparent 14.3%),
  linear-gradient(120deg,#fffdf4 0%,#fff8ce 53%,#eef8ff 100%);color:var(--ink)}
.hero:before{height:4px;background:linear-gradient(90deg,var(--green) 0 46%,var(--gold) 46% 82%,var(--blue) 82% 100%)}
.hero:after{content:"";position:absolute;width:210px;height:210px;right:5.5%;bottom:-105px;border-radius:50%;background:rgba(43,159,216,.10);pointer-events:none}
.hero .eyebrow{color:var(--green)}
.hero .eyebrow:before{background:var(--gold)}
.hero h1{color:var(--black)}
.hero h1 em{color:var(--green)}
.hero p{color:#52636f}
.hero .micro{color:#75838c}
.hero-photo{border:7px solid #fff;box-shadow:0 28px 70px rgba(34,96,135,.16)}
.hero-photo:after{background:linear-gradient(180deg,rgba(2,4,2,0) 56%,rgba(2,4,2,.24) 100%)}
.float-card{background:rgba(255,255,255,.97);border:1px solid rgba(43,159,216,.16);box-shadow:0 16px 36px rgba(34,96,135,.12)}
.kicker-chip{background:var(--gold-soft);color:#725e00}

/* Buttons */
.btn-primary{background:var(--green);color:#fff;box-shadow:0 9px 22px rgba(22,140,85,.18)}
.btn-primary:hover{background:var(--green-dark)}
.btn-secondary{background:#fff;color:var(--ink);border-color:#d9ddcf}
.btn-secondary:hover{background:#fffbea;border-color:#e3cc62}
.btn-pop{background:var(--gold);color:#26220b}
.btn-pop:hover{background:#ffd94d}
.hero .btn-secondary{color:var(--ink);background:rgba(255,255,255,.75);border-color:#dfe4d7}
.hero .btn-secondary:hover{background:#fff;border-color:#cbd5ca}

/* Trust + ribbon */
.trust-row{background:#fff;border-color:#e3eaf0;box-shadow:0 12px 32px rgba(34,96,135,.06)}
.trust:nth-child(1){background:#f1f9ff}
.trust:nth-child(2){background:#fff9dc}
.trust:nth-child(3){background:#eef8ff}
.trust:nth-child(4){background:#f6f5ff}
.ribbon{background:var(--gold);color:var(--black);border:0}
.ribbon-track{color:#332c08;font-weight:800}
.ribbon-track span:after{background:var(--green)}

/* Brighter cards */
.card{background:#fff;border-color:#e4e8eb}
.grid-3 > .card:nth-child(1){border-top:4px solid var(--green)}
.grid-3 > .card:nth-child(2){border-top:4px solid var(--gold)}
.grid-3 > .card:nth-child(3){border-top:4px solid var(--blue)}
.card:hover{border-color:#cadbe6;box-shadow:0 16px 38px rgba(34,96,135,.08)}
.icon-bubble{background:#eef8ff;border-color:#c8e7f6;color:var(--green)}
.grid-3 > .card:nth-child(2) .icon-bubble{background:#fff7cf;border-color:#f4e38c;color:#826d00}
.grid-3 > .card:nth-child(3) .icon-bubble{background:#edf8fe;border-color:#cde9f8;color:#247fab}
.bullet-list li:before{background:var(--green)}

.frame{background:linear-gradient(135deg,#ffffff 0%,#fffdf2 100%);border-color:#e5e4d6}
.steps{border-color:#e2e8ec}
.step{background:#fff}
.step:nth-child(1){background:#f2f9fd}
.step:nth-child(2){background:#fffbe6}
.step:nth-child(3){background:#f1f8fd}
.step:nth-child(4){background:#f7f5ff}
.step:nth-child(5){background:#fff7ed}
.step-num{background:var(--green)!important;color:#fff!important}
.step:nth-child(2) .step-num{background:#d8ab00!important;color:#fff!important}
.step:nth-child(3) .step-num{background:var(--blue)!important;color:#fff!important}

.metric{background:#fff;border-top:4px solid var(--green)}
.metric:nth-child(2){border-top-color:var(--gold);background:#fffdf2}
.metric:nth-child(3){border-top-color:var(--blue);background:#f7fcff}
.metric:nth-child(4){border-top-color:#8e79d6;background:#fbf9ff}
.metric strong{color:var(--black)}

.photo-card{border:6px solid #fff;box-shadow:0 18px 44px rgba(34,96,135,.10)}
.photo-card .caption{background:rgba(17,23,17,.90)}

/* Catalogue */
.course{background:#fff;border-color:#e4e9ed}
.course:hover{border-color:#cadbe6;box-shadow:0 14px 34px rgba(34,96,135,.07)}
.course a{color:var(--green)}
.filterbar{background:rgba(255,255,255,.97);border-color:#e3e9ed;box-shadow:0 12px 32px rgba(34,96,135,.07)}
.input:focus,.select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(43,159,216,.11)}
.filter-btn{background:var(--green)}
.filter-btn:hover{background:var(--green-dark)}

/* Bright inner-page hero */
.page-hero{color:var(--ink);padding:88px 0 76px;background:
  radial-gradient(circle at 90% 18%,rgba(244,201,40,.27) 0 12%,transparent 12.3%),
  linear-gradient(115deg,#fffdf3 0%,#fff6bd 54%,#eef8ff 100%);border-bottom:4px solid var(--gold)}
.page-hero:after{right:-110px;top:-180px;width:390px;height:390px;border:55px solid rgba(43,159,216,.08)}
.page-hero .eyebrow{color:var(--green)}
.page-hero h1{color:var(--black)}
.page-hero p{color:#596873}

.feature-banner{background:linear-gradient(120deg,#237fba,#2b9fd8);border-color:rgba(0,0,0,0);box-shadow:0 18px 50px rgba(43,159,216,.18)}
.feature-copy .eyebrow{color:#fff1a4}
.feature-copy p,.feature-copy small{color:#eef8ff}
.industry:after{background:var(--gold)}
.values .value:nth-child(1){border-top:3px solid var(--green)}
.values .value:nth-child(2){border-top:3px solid var(--gold)}
.values .value:nth-child(3){border-top:3px solid var(--blue)}
.trainer-visual{background:linear-gradient(135deg,#fff9d9,#edf9f1)}
.trainer-avatar{border-color:#d5e7f2;color:var(--green)}

/* Contact */
.form-card{background:#fff;border-color:#e2e8ec;box-shadow:0 16px 42px rgba(34,96,135,.07)}
.contact-box{background:linear-gradient(145deg,var(--green),#176f9f);border:0;color:#fff;box-shadow:0 18px 46px rgba(22,140,85,.18)}
.contact-box .eyebrow{color:#fff0a8}
.contact-box p{color:#eaf7fd}
.faq{border-color:#e3e9ed}

/* CTA */
.cta{background:
  radial-gradient(circle at 92% 20%,rgba(255,255,255,.16) 0 8%,transparent 8.3%),
  linear-gradient(112deg,#1d7fb8 0%,#2b9fd8 66%,#56b8e7 100%);border:0;box-shadow:0 20px 50px rgba(43,159,216,.18)}
.cta:after{border-color:rgba(244,201,40,.34)}
.cta p{color:#ebf8fe}
.cta .btn-secondary{color:#fff;background:transparent;border-color:rgba(255,255,255,.55)}
.cta .btn-secondary:hover{background:rgba(255,255,255,.10);border-color:#fff}

/* Footer stays dark for contrast, with brighter brand accents */
.footer{background:#101710;border-top:5px solid var(--gold)}
.footer a:hover{color:#ffe164}
.footer .brand{color:#fff}

@media(max-width:980px){
  .nav-links{background:#fff;border-color:#dfe7ec;box-shadow:0 18px 50px rgba(34,96,135,.13)}
  .nav-links a{color:#344752}
  .nav-links a:hover,.nav-links a.active{background:#eef8ff;color:var(--green)}
}

/* ============================================================
   Royal Dark Blue refinement — October 2026
   ============================================================ */
:root{
  --black:#101827;
  --charcoal:#17233a;
  --ink:#172238;
  --muted:#667185;
  --green:#173f73;
  --green-dark:#0d2d57;
  --gold:#f4c928;
  --gold-soft:#fff7cc;
  --blue:#416aa4;
  --paper:#fbfcff;
  --surface:#ffffff;
  --surface-soft:#f4f7fb;
  --line:#e1e6ef;
  --line-strong:#cfd7e4;
  --shadow-sm:0 10px 28px rgba(23,63,115,.08);
  --shadow:0 24px 60px rgba(23,63,115,.14);
}

body{background:var(--paper);color:var(--ink)}
::selection{background:var(--gold);color:#101827}

/* Header */
.topbar{background:var(--green);color:#f4f7fc}
.topbar a{color:#ffe77e}
.nav{border-bottom-color:rgba(23,63,115,.14);box-shadow:0 5px 20px rgba(23,63,115,.055)}
.nav-links a{color:#35445b}
.nav-links a:hover,.nav-links a.active{background:#eef3fa;color:var(--green)}
.nav-cta{background:var(--green)!important;box-shadow:0 8px 20px rgba(23,63,115,.18)}
.nav-cta:hover{background:var(--green-dark)!important}
.menu-btn{border-color:#d8e0eb;color:var(--green)}

/* Hero */
.hero{background:
  radial-gradient(circle at 86% 10%,rgba(244,201,40,.28) 0 13%,transparent 13.3%),
  radial-gradient(circle at 7% 82%,rgba(23,63,115,.09) 0 14%,transparent 14.3%),
  linear-gradient(120deg,#fffdf4 0%,#fff8d4 53%,#edf2f9 100%)}
.hero:before{background:linear-gradient(90deg,var(--green) 0 48%,var(--gold) 48% 84%,var(--blue) 84% 100%)}
.hero:after{background:rgba(23,63,115,.08)}
.hero h1 em,.hero .eyebrow{color:var(--green)}
.hero p{color:#536176}
.hero-photo{box-shadow:0 28px 70px rgba(23,63,115,.17)}
.float-card{border-color:rgba(23,63,115,.17);box-shadow:0 16px 36px rgba(23,63,115,.12)}

/* Buttons and interactive elements */
.btn-primary{background:var(--green);box-shadow:0 9px 22px rgba(23,63,115,.18)}
.btn-primary:hover{background:var(--green-dark)}
.btn-secondary{border-color:#d2dae6}
.btn-secondary:hover{background:#f5f7fb;border-color:#bfcadd}
.filter-btn{background:var(--green)}
.filter-btn:hover{background:var(--green-dark)}
.input:focus,.select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(23,63,115,.11)}

/* Trust strip */
.trust-row{border-color:#e0e6ef;box-shadow:0 12px 32px rgba(23,63,115,.065)}
.trust:nth-child(1){background:#f1f5fb}
.trust:nth-child(2){background:#fff9dc}
.trust:nth-child(3){background:#edf2f9}
.trust:nth-child(4){background:#f6f5fb}
.ribbon-track span:after{background:var(--green)}

/* Cards */
.card{border-color:#e1e6ef}
.card:hover{border-color:#c7d2e1;box-shadow:0 16px 38px rgba(23,63,115,.085)}
.icon-bubble{background:#eef3fa;border-color:#cbd8e9;color:var(--green)}
.grid-3 > .card:nth-child(3) .icon-bubble{background:#edf2f9;border-color:#d3ddeb;color:var(--blue)}
.bullet-list li:before{background:var(--green)}

.frame{background:linear-gradient(135deg,#fff 0%,#fbfcff 100%);border-color:#e0e5ed}
.steps{border-color:#e0e5ed}
.step:nth-child(1){background:#f2f5fa}
.step:nth-child(3){background:#edf2f9}
.step-num{background:var(--green)!important}
.step:nth-child(3) .step-num{background:var(--blue)!important}
.metric{border-top-color:var(--green)}
.metric:nth-child(3){border-top-color:var(--blue);background:#f4f7fb}

.photo-card{box-shadow:0 18px 44px rgba(23,63,115,.11)}

/* Catalogue */
.course{border-color:#e1e6ef}
.course:hover{border-color:#c7d2e1;box-shadow:0 14px 34px rgba(23,63,115,.08)}
.course a{color:var(--green)}
.filterbar{border-color:#dfe5ee;box-shadow:0 12px 32px rgba(23,63,115,.075)}

/* Inner page heroes */
.page-hero{background:
  radial-gradient(circle at 90% 18%,rgba(244,201,40,.27) 0 12%,transparent 12.3%),
  linear-gradient(115deg,#fffdf3 0%,#fff6c8 52%,#edf2f9 100%)}
.page-hero:after{border-color:rgba(23,63,115,.075)}
.page-hero .eyebrow{color:var(--green)}
.page-hero p{color:#586579}

.feature-banner{background:linear-gradient(120deg,#102f59 0%,#173f73 58%,#345f98 100%);box-shadow:0 18px 50px rgba(23,63,115,.20)}
.feature-copy p,.feature-copy small{color:#eef3fa}
.trainer-visual{background:linear-gradient(135deg,#fff9d9,#eef3fa)}
.trainer-avatar{border-color:#ced9e8;color:var(--green)}

/* Contact + CTA */
.form-card{border-color:#dfe5ee;box-shadow:0 16px 42px rgba(23,63,115,.075)}
.contact-box{background:linear-gradient(145deg,#102f59 0%,#173f73 72%,#2d568a 100%);box-shadow:0 18px 46px rgba(23,63,115,.20)}
.contact-box p{color:#edf2f9}
.faq{border-color:#dfe5ee}

.cta{background:
  radial-gradient(circle at 92% 20%,rgba(255,255,255,.13) 0 8%,transparent 8.3%),
  linear-gradient(112deg,#0d2d57 0%,#173f73 64%,#365f98 100%);
  box-shadow:0 20px 50px rgba(23,63,115,.22)}
.cta p{color:#edf2f9}

/* Footer */
.footer{background:#0b1728;border-top-color:var(--gold)}
.footer-bottom{border-top-color:#24344c}

@media(max-width:980px){
  .nav-links{border-color:#d8e0eb;box-shadow:0 18px 50px rgba(23,63,115,.14)}
  .nav-links a{color:#34445c}
  .nav-links a:hover,.nav-links a.active{background:#eef3fa;color:var(--green)}
}

/* ============================================================
   Mobile experience refinement — October 2026
   Optimised for 320–650px phone viewports
   ============================================================ */

html,body{max-width:100%;overflow-x:hidden}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}

@media(max-width:650px){
  /* Core rhythm */
  :root{--mobile-gutter:20px}
  .container{width:calc(100% - (var(--mobile-gutter) * 2));max-width:none}
  .section{padding:56px 0}
  .section-sm{padding:38px 0}
  .section-title{margin:10px 0 14px;font-size:clamp(1.85rem,8.6vw,2.65rem);line-height:1.06;letter-spacing:-.038em}
  .section-sub{font-size:.94rem;line-height:1.65}
  .eyebrow{font-size:.66rem;letter-spacing:.13em;gap:8px}
  .eyebrow:before{width:18px}
  .micro{font-size:.75rem;line-height:1.55}

  /* Top bar + compact navigation */
  .topbar{font-size:.66rem}
  .topbar .container{min-height:31px;line-height:1.25;padding:5px 0}
  .nav{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .nav-inner{min-height:66px;gap:10px}
  .brand{min-width:0;gap:9px}
  .brand-logo{width:40px;height:40px}
  .brand-copy{font-size:.73rem;letter-spacing:.045em;white-space:nowrap}
  .brand small{margin-top:3px;font-size:.47rem;letter-spacing:.11em}
  .menu-btn{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border-radius:10px;font-size:1rem}
  .nav-links{inset:66px 10px auto 10px;max-height:calc(100dvh - 78px);overflow:auto;padding:10px;border-radius:13px;gap:3px}
  .nav-links a{min-height:46px;display:flex;align-items:center;padding:11px 13px;border-radius:8px;font-size:.86rem}
  .nav-links a.active{box-shadow:none}
  .nav-cta{min-height:48px!important;margin-top:4px!important;justify-content:center;padding:12px 15px!important}

  /* Homepage hero */
  .hero{padding:48px 0 44px}
  .hero-grid{gap:28px}
  .hero h1{max-width:100%;margin:14px 0 16px;font-size:clamp(2.35rem,11.2vw,3.25rem);line-height:.98;letter-spacing:-.048em}
  .hero p{font-size:.94rem;line-height:1.62}
  .hero .actions{margin-top:22px}
  .actions{gap:9px;margin-top:22px}
  .actions .btn{width:100%}
  .btn{min-height:48px;padding:12px 16px;border-radius:9px;font-size:.86rem}
  .hero-media{min-height:0;aspect-ratio:4/3}
  .hero-photo{border-width:4px;border-radius:14px}
  .float-card{max-width:165px;padding:10px 11px;border-radius:9px}
  .float-card strong{font-size:.74rem;line-height:1.35}
  .kicker-chip{margin-bottom:6px;padding:4px 6px;font-size:.56rem}
  .fc1{left:8px;top:10px}
  .fc2{right:8px;bottom:10px}

  /* Trust strip — 2 x 2 instead of a very tall stack */
  .trust-row{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:12px}
  .trust{min-height:92px;padding:16px 14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .trust:nth-child(2n){border-right:0}
  .trust:nth-child(n+3){border-bottom:0}
  .trust b{font-size:.79rem;line-height:1.25}
  .trust span{font-size:.68rem;line-height:1.4}

  /* Scrollable topic ribbon */
  .ribbon-track{width:100%;min-height:47px;padding:0 var(--mobile-gutter);gap:22px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}
  .ribbon-track::-webkit-scrollbar{display:none}
  .ribbon-track span{flex:none;scroll-snap-align:start;font-size:.66rem}
  .ribbon-track span:nth-child(n){display:inline-flex}

  /* General cards */
  .grid-2,.grid-3,.course-grid,.values,.form-grid,.filterbar,.footer-grid{grid-template-columns:1fr}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .grid-3{gap:12px}
  .card{padding:21px;border-radius:11px}
  .icon-bubble{width:38px;height:38px;margin-bottom:17px}
  .card h3{font-size:1rem}
  .card p,.bullet-list li{font-size:.84rem}
  .bullet-list{margin-top:14px}

  /* Framework becomes compact cards */
  .frame{padding:22px 18px;border-radius:14px}
  .frame .section-title{font-size:clamp(1.8rem,8.2vw,2.4rem)!important}
  .steps{grid-template-columns:1fr;gap:8px;margin-top:24px}
  .step{min-height:0;display:grid;grid-template-columns:36px 1fr;column-gap:12px;padding:15px;border-radius:9px}
  .step-num{grid-row:1/3;width:32px;height:32px;margin:0}
  .step h4{margin:2px 0 3px;font-size:.91rem}
  .step p{font-size:.76rem;line-height:1.48}

  /* Metrics */
  .metric{min-height:120px;padding:19px 17px;border-radius:10px}
  .metric strong{font-size:1.72rem}
  .metric span{font-size:.72rem;line-height:1.42}

  /* Image-led sections */
  .photo-split{gap:28px}
  .photo-card{min-height:0;aspect-ratio:4/3;border-width:4px;border-radius:13px}
  .photo-card .caption{left:10px;right:10px;bottom:10px;padding:12px 13px;border-radius:8px;font-size:.72rem;line-height:1.45}
  .photo-card .caption strong{font-size:.85rem}
  .photo-split > .reveal[style]{padding:0!important}
  .stack{gap:10px}

  /* Catalogue / filters */
  .filterbar{position:static;margin:20px 0 18px;padding:10px;gap:8px;border-radius:11px}
  .input,.select,textarea{min-height:48px;padding:12px 13px;font-size:16px;border-radius:8px}
  textarea{min-height:132px;resize:vertical}
  .filter-btn{min-height:46px;border-radius:8px}
  .result-count{margin-bottom:12px;font-size:.76rem}
  .course-grid{gap:11px}
  .course{min-height:0;padding:20px;border-radius:11px}
  .course h3{margin:13px 0 7px;font-size:.98rem}
  .course p{margin-bottom:14px;font-size:.81rem;line-height:1.55}
  .course a{margin-top:14px}
  .empty{padding:30px 18px;border-radius:11px}

  /* Inner page heroes */
  .page-hero{padding:48px 0 42px;border-bottom-width:3px}
  .page-hero:after{right:-155px;top:-185px;width:350px;height:350px;border-width:44px}
  .page-hero h1{margin:13px 0 14px;font-size:clamp(2.25rem,10.6vw,3.15rem);line-height:1;letter-spacing:-.044em}
  .page-hero p{font-size:.93rem;line-height:1.62}

  /* Feature banners */
  .feature-banner{border-radius:12px}
  .feature-banner img{min-height:0;height:auto;aspect-ratio:16/10}
  .feature-copy{padding:25px 20px}
  .feature-copy .section-title{font-size:clamp(1.75rem,8vw,2.35rem)}

  /* Industries, trainers, values */
  .industry{min-height:0}
  .industry .icon-bubble{margin-bottom:22px}
  .trainer-visual{height:105px}
  .trainer-body{padding:19px}
  .value{padding:20px}

  /* Contact */
  .contact-grid{gap:20px}
  .form-card{padding:22px 17px;border-radius:12px}
  .form-card h2{font-size:1.35rem!important;line-height:1.2}
  .form-grid{gap:13px}
  .field.full{grid-column:auto}
  .field label{margin-bottom:7px;font-size:.72rem}
  .check{gap:10px;font-size:.77rem;line-height:1.5}
  .check input{width:18px;height:18px;flex:none;margin-top:2px}
  .form-card .btn{width:100%}
  .contact-aside{gap:12px}
  .contact-box{padding:23px 20px;border-radius:12px}
  .contact-box h2{font-size:1.45rem}
  .faq{border-radius:9px}
  .faq button{min-height:58px;padding:16px;align-items:center;font-size:.86rem;line-height:1.38}
  .faq .answer{padding:0 16px 16px;font-size:.82rem;line-height:1.58}

  /* CTA */
  .cta{padding:30px 20px;border-radius:13px}
  .cta:after{right:-110px;top:-130px;opacity:.55}
  .cta h2{font-size:clamp(1.85rem,8.5vw,2.55rem);line-height:1.05}
  .cta p{font-size:.88rem;line-height:1.6}
  .cta .actions{display:grid;grid-template-columns:1fr;gap:8px}

  /* Footer — compact but still scannable */
  .footer{margin-top:62px;padding:44px 0 calc(20px + env(safe-area-inset-bottom))}
  .footer-grid{grid-template-columns:1fr 1fr;gap:26px 18px}
  .footer-grid > div:first-child,.footer-grid > div:last-child{grid-column:1/-1}
  .footer .brand-logo{width:42px;height:42px}
  .footer p,.footer a{font-size:.76rem;line-height:1.55}
  .footer h4{font-size:.78rem;margin-bottom:10px}
  .footer a{margin:7px 0}
  .footer-bottom{margin-top:26px;padding-top:17px;flex-direction:column;gap:5px;font-size:.68rem}

  /* Toast and safe-area spacing */
  .toast{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:none;font-size:.8rem}
}

@media(max-width:380px){
  :root{--mobile-gutter:16px}
  .brand-copy{font-size:.68rem}
  .brand small{display:none}
  .brand-logo{width:38px;height:38px}
  .nav-inner{min-height:62px}
  .nav-links{inset:62px 8px auto 8px}
  .hero{padding-top:42px}
  .hero h1{font-size:2.25rem}
  .float-card{max-width:145px}
  .float-card strong{font-size:.68rem}
  .trust{padding:14px 11px}
  .grid-4{gap:8px}
  .metric{padding:17px 14px}
  .metric strong{font-size:1.55rem}
  .footer-grid{gap:24px 14px}
}

@media(min-width:651px) and (max-width:980px){
  /* Tablet polish */
  .container{width:min(var(--max),calc(100% - 40px))}
  .hero{padding:72px 0 68px}
  .hero-grid{gap:34px}
  .hero-media{min-height:430px}
  .section{padding:82px 0}
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .step:last-child{grid-column:1/-1}
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr}
  .footer-grid > div:last-child{grid-column:1/-1}
}
