@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--ink:#17202b;--muted:#596570;--blue:#078fb9;--cyan:#19bfdc;--line:#c7cdd2;--soft:#d5d9dc;--surface:#edf0f1;--wrap:1080px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"DM Sans",Arial,sans-serif}.topline{height:3px;background:linear-gradient(90deg,var(--blue),var(--cyan))}.wrap{max-width:var(--wrap);margin:auto;padding:0 28px}
header{height: 72px;border-bottom:1px solid var(--line);background:#e9ebec}.nav{height:100%;display:flex;align-items:center;gap:34px}.brand{width:255px;display:block;flex-shrink:0;padding:3px 0}.brand img{width:100%;height:auto;max-height:62px;display:block;object-fit:contain}.nav nav{display:flex;gap:27px;margin-left:auto}.nav nav a,.main-link{font-size:12px;font-weight:600;text-decoration:none;color:#617087}.nav nav a:hover,.main-link:hover{color:var(--blue)}.main-link{border-left:1px solid var(--line);padding-left:25px}
.hero{background:linear-gradient(180deg,#d9dde0 0%,#e2e5e7 58%,#eaeced 100%)}.hero-inner{min-height:570px;padding-top:72px;padding-bottom:72px;display:grid;grid-template-columns:1fr .82fr;gap:70px;align-items:center}.eyebrow,.label{font-size:10px;font-weight:800;letter-spacing:1.8px;color:var(--blue)}.eyebrow span{width:22px;height:2px;background:var(--cyan);display:inline-block;vertical-align:middle;margin-right:9px}.hero h1{font-size:clamp(64px,7.2vw,92px);line-height:.9;letter-spacing:-4px;margin:16px 0 22px;font-weight:800}.hero h1 span{color:var(--blue)}.hero-copy>p{font-size:17px;line-height:1.65;color:var(--muted);max-width:575px;margin:0}.status{display:flex;align-items:center;gap:9px;margin-top:20px;color:#687582;font-size:10px;letter-spacing:1px}.status i{width:7px;height:7px;border-radius:50%;background:#19ad84}.status b{font-weight:700;color:#46556a}.status span{color:#9aa4b2;margin-left:3px}.actions{display:flex;align-items:center;gap:22px;margin-top:24px}.btn{background:var(--blue);color:#fff;padding:13px 21px;border-radius:7px;text-decoration:none;font-size:13px;font-weight:700;box-shadow:0 8px 20px rgba(7,143,185,.15)}.btn:hover{background:#067a9e}.text{font-size:13px;font-weight:700;color:#42536a;text-decoration:none}.hero-panel{height:335px;border:1px solid #d8dee3;border-radius:15px;background:#f1f3f4;box-shadow:0 22px 55px rgba(26,55,80,.09);position:relative;overflow:hidden;padding:38px;display:flex;flex-direction:column;justify-content:center}.hero-panel:before{content:"";position:absolute;width:390px;height:390px;border-radius:50%;border:1px solid #e8eef3;right:-180px;top:-180px}.hero-panel:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:1px solid #eef2f6;left:-160px;bottom:-160px}.panel-label{position:absolute;top:28px;left:38px;color:#687582;font-size:9px;font-weight:700;letter-spacing:1.7px}.panel-title{font-size:45px;line-height:1.02;letter-spacing:-2.5px;font-weight:800;position:relative;z-index:1}.panel-title span{color:var(--blue)}.panel-rule{height:4px;width:64px;background:var(--cyan);margin-top:18px;position:relative;z-index:1}.panel-bottom{position:absolute;bottom:31px;left:38px;display:flex;gap:7px;z-index:1}.panel-bottom span{font-size:9px;font-weight:700;letter-spacing:1px;color:#617086;background:#d9dee1;border-radius:4px;padding:8px 10px}.orb{position:absolute;border-radius:50%;border:1px solid #e5edf2}.orb1{width:145px;height:145px;right:55px;bottom:35px}.orb2{width:75px;height:75px;right:90px;bottom:70px;border-color:#cfeef4}
.intro{padding:82px 0;border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:180px 1fr;gap:42px}.intro h2,.section-head h2,.announcement h2,.contact h2{font-size:48px;line-height:.98;letter-spacing:-3px;margin:14px 0 22px}.intro h2 em,.section-head h2 em,.announcement h2 em,.contact h2 em{font-style:normal;color:var(--blue)}.intro p{color:var(--muted);font-size:16px;line-height:1.62;max-width:690px;margin:0}
.audience{padding:82px 0}.section-head{margin-bottom:34px}.section-head h2{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{position:relative;min-height:225px;padding:26px;border:1px solid var(--line);border-radius:10px;background:#f1f3f4;transition:transform .2s,box-shadow .2s}.cards article:hover{transform:translateY(-4px);box-shadow:0 15px 35px rgba(35,58,80,.08)}.num{font-size:10px;font-weight:800;color:var(--blue)}.cards h3{font-size:22px;margin:44px 0 9px}.cards p{font-size:14px;color:var(--muted);line-height:1.58;max-width:310px}.arrow{position:absolute;right:25px;bottom:25px;color:var(--blue);font-size:17px}
.announcement{background:#d0d5d8;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:78px 0}.announcement-inner{display:grid;grid-template-columns:45px 1fr auto;gap:25px;align-items:center}.announcement h2{margin-bottom:13px}.announcement p{color:var(--muted);margin:0;line-height:1.6}.outline{padding:12px 17px;border:1px solid #c9d0d6;border-radius:7px;background:#e6e9eb;color:#344454;text-decoration:none;font-size:12px;font-weight:700}.outline:hover{border-color:var(--blue);color:var(--blue)}
.contact{padding:82px 0}.contact-inner{display:flex;align-items:end;justify-content:space-between}.contact h2{margin-bottom:0}.contact-copy{display:flex;flex-direction:column;gap:12px}.contact-copy p{color:var(--muted);margin:0 0 6px;max-width:390px;font-size:13px;line-height:1.6}.contact-copy a{color:#4e5e73;text-decoration:none;font-size:13px}.contact-copy a:hover{color:var(--blue)}
footer{border-top:1px solid var(--line);background:#d3d8db}.footer{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#65717c;font-size:10px}.footer img{width:185px;height:auto;object-fit:contain}.footer a{color:#788699;text-decoration:none}.footer a:hover{color:var(--blue)}
@media(max-width:820px){.wrap{padding-left:20px;padding-right:20px}.nav nav{display:none}.main-link{margin-left:auto}.hero-inner{grid-template-columns:1fr;gap:42px;padding-top:52px;padding-bottom:58px}.hero h1{font-size:64px}.hero-copy>p{font-size:17px}.hero-panel{height:245px}.panel-title{font-size:38px}.intro,.audience,.contact{padding:62px 0}.intro-grid{grid-template-columns:1fr;gap:15px}.intro h2,.section-head h2,.announcement h2,.contact h2{font-size:43px;letter-spacing:-2px}.cards{grid-template-columns:1fr}.cards article{min-height:185px}.cards h3{margin-top:34px}.announcement{padding:62px 0}.announcement-inner{grid-template-columns:35px 1fr}.outline{grid-column:2;justify-self:start;margin-top:8px}.contact-inner{display:block}.contact-copy{margin-top:24px}.footer{display:block;padding-top:20px;padding-bottom:20px}.footer span,.footer a{display:block;margin-top:14px}}@media(max-width:430px){.brand{width:165px}.main-link{font-size:11px}.hero h1{font-size:56px;letter-spacing:-3.5px}.actions{flex-direction:column;align-items:flex-start;gap:18px}.hero-panel{height:225px;padding:25px}.panel-label{left:28px}.panel-title{font-size:30px}.panel-bottom{left:28px}.intro h2,.section-head h2,.announcement h2,.contact h2{font-size:38px}}

/* Final visual polish */
.main-link{display:flex;align-items:center;gap:7px;color:#253548;background:#fff;border:1px solid #cbd2d7;border-radius:7px;padding:10px 14px;transition:.2s}
.main-link span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#78848f;font-weight:700}
.main-link:hover{border-color:var(--blue);background:#f8fafb}
.nav nav a{position:relative;padding:8px 0}
.nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--blue);transition:.2s}
.nav nav a:hover:after{right:0}
.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#dfe3e6}
.trust-items{height:58px;display:flex;align-items:center;justify-content:center;gap:20px;color:#52606c;font-size:9px;font-weight:800;letter-spacing:1.8px}
.trust-items i{width:4px;height:4px;border-radius:50%;background:var(--blue);display:block}
.footer{gap:28px}
.footer-title{display:block;color:#44525f;font-weight:800;font-size:10px;letter-spacing:1.3px}
.footer small{display:block;color:#7a858e;font-size:8px;letter-spacing:1.1px;margin-top:5px}
.footer a{border:1px solid #b7c0c7;border-radius:6px;padding:10px 14px;background:#e7eaec;font-weight:700}
.cards article{overflow:hidden}
.cards article:before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan));transform:scaleX(0);transform-origin:left;transition:.25s}
.cards article:hover:before{transform:scaleX(1)}
@media(max-width:820px){
 .header{height: 72px;font-size:10px}
 .main-link span{display:none}
 .trust-items{gap:10px;font-size:8px;letter-spacing:1.2px}
 .footer a{display:inline-block;margin-top:14px}
}
@media(max-width:430px){
 .brand{width:175px}
 .nav{gap:8px}
 .main-link{font-size:9px;padding:7px 8px}
 .trust-items{height:48px;gap:7px;font-size:7px}
 .trust-items i{width:3px;height:3px}
}

/* Training brand lockup */
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.training-brand-name{font-size:12px;font-weight:800;letter-spacing:-.2px;color:#253548;white-space:nowrap}
.footer>img{display:none}
@media(max-width:820px){
 .training-brand-name{font-size:10px}
 .brand{gap:7px}
}
@media(max-width:430px){
 .training-brand-name{font-size:9px}
}

.footer-brand{display:flex;align-items:center}
.footer-brand img{width:245px;height:auto;max-height:58px;display:block;object-fit:contain}
@media(max-width:820px){.footer-brand img{width:205px}}
@media(max-width:430px){.footer-brand img{width:170px}}

/* V11 refinement only — theme and composition intentionally preserved */
.training-page{overflow-x:hidden}
.hero-copy>p{max-width:560px}
.hero h1{max-width:620px;text-wrap:balance}
.hero-panel{box-shadow:0 18px 42px rgba(39,55,68,.09)}
.actions .btn,.actions .text,.outline,.main-link{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.actions .btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(8,127,168,.20)}
.actions .text:hover{transform:translateX(2px)}
.outline:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(35,58,80,.07)}
.main-link:hover{transform:translateY(-1px)}
.panel-title{letter-spacing:-2.2px}
.section-head h2,.intro h2,.announcement h2,.contact h2{text-wrap:balance}
.cards h3{letter-spacing:-.5px}
.cards p{max-width:300px}
.contact-copy a{width:max-content}
.footer{padding-left:24px;padding-right:24px}
@media(max-width:820px){
 .hero-copy>p{max-width:520px}
 .footer{padding-left:20px;padding-right:20px}
}
@media(max-width:430px){
 .hero h1{max-width:340px}
 .panel-title{letter-spacing:-1.5px}
 .footer-brand img{max-width:100%}
}

/* Header & footer refinement — V11 theme preserved */
header{box-shadow:0 1px 0 rgba(80,95,107,.03)}
.brand{display:flex;align-items:center}
.brand img{max-height:60px}
.nav nav{align-items:center;gap:30px}
.nav nav a{font-size:11px;letter-spacing:.15px;color:#536273}
.main-link{min-width:142px;justify-content:center;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 13px}
.main-link span{font-size:7px;letter-spacing:1.35px;line-height:1;color:#7b8791}
.main-link strong{font-size:11px;line-height:1.2;color:#253548;font-weight:700}
.footer{min-height:94px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px}
.footer-brand img{width:220px;max-height:55px}
.footer-meta{border-left:1px solid rgba(126,138,148,.35);padding-left:25px}
.footer-meta span{display:block;font-size:8px;letter-spacing:1.35px;font-weight:800;color:#52606c}
.footer-meta small{display:block;margin-top:6px;font-size:9px;color:#78848e}
.footer-link{white-space:nowrap}
@media(max-width:820px){
 header{height: 72px;padding:8px 10px}
 .main-link span{display:none}
 .main-link strong{font-size:9px}
 .footer{min-height:110px;display:grid;grid-template-columns:1fr auto;gap:12px}
 .footer-brand img{width:195px}
 .footer-meta{grid-column:1;border-left:0;padding-left:0}
 .footer-link{grid-column:2;grid-row:1/3;align-self:center}
}
@media(max-width:430px){
 header{height: 72px;padding-top:20px;padding-bottom:20px}
 .footer-brand img{width:175px}
 .footer-meta{margin-top:12px}
 .footer-link{display:inline-block;margin-top:14px}
}

/* Fixed header */
html{scroll-padding-top:86px}
header{position:fixed!important;top:0;left:0;right:0;width:100%;z-index:1000}
body{padding-top:86px}
@media(max-width:820px){
  html{scroll-padding-top:78px}
  body{padding-top:78px}
}
@media(max-width:430px){
  html{scroll-padding-top:72px}
  body{padding-top:72px}
}

/* Final header/footer proportion optimization */
header .wrap, footer .wrap { max-width: 1360px; }
header { min-height: 72px; }
body { padding-top: 72px; }
footer .footer { min-height: 72px; }
@media (max-width: 820px) {
  header .wrap, footer .wrap { max-width: none; }
  header { min-height: 68px; }
  body { padding-top: 68px; }
}
@media (max-width: 430px) {
  header { min-height: 64px; }
  body { padding-top: 64px; }
}

/* Wider optimized layout */
:root { --site-max-width: 1360px; }
.wrap,
header .wrap,
footer .wrap,
section .wrap,
main .wrap {
  max-width: var(--site-max-width);
}
@media (max-width: 1440px) {
  .wrap,
  header .wrap,
  footer .wrap,
  section .wrap,
  main .wrap {
    max-width: calc(100% - 64px);
  }
}
@media (max-width: 820px) {
  .wrap,
  header .wrap,
  footer .wrap,
  section .wrap,
  main .wrap {
    max-width: calc(100% - 40px);
  }
}
@media (max-width: 430px) {
  .wrap,
  header .wrap,
  footer .wrap,
  section .wrap,
  main .wrap {
    max-width: calc(100% - 28px);
  }
}


/* Mobile optimization — based only on the wider-all-layout build */
@media (max-width: 820px) {
  html { scroll-padding-top: 68px; }
  body { padding-top: 68px; overflow-x: hidden; }

  header .wrap, footer .wrap, section .wrap, main .wrap {
    max-width: none;
    width: auto;
    margin-left: 20px;
    margin-right: 20px;
  }

  header .nav {
    min-height: 68px;
    gap: 14px;
  }

  header .brand img { max-width: 190px; height: auto; }

  header nav { gap: 14px; }
  header nav a { font-size: 13px; }

  .hero {
    padding-top: 42px;
    padding-bottom: 48px;
  }

  .hero h1 {
    font-size: clamp(42px, 10vw, 64px);
    line-height: .98;
  }

  .hero p {
    max-width: 100%;
    font-size: 16px;
    line-height: 1.65;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .hero-actions a {
    width: 100%;
    box-sizing: border-box;
    justify-content: center;
  }

  .trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  section { padding-top: 64px; padding-bottom: 64px; }

  .section-head,
  .about-grid,
  .audience-grid,
  .connect-grid {
    grid-template-columns: 1fr;
  }

  .section-head h2,
  .about h2,
  .audience h2,
  .announcement h2,
  .connect h2 {
    font-size: clamp(32px, 8vw, 48px);
    line-height: 1.04;
  }

  .audience-grid { gap: 14px; }
  .audience-card { padding: 24px 20px; }
  .announcement { padding: 26px 20px; }

  footer .footer {
    padding-top: 24px;
    padding-bottom: 24px;
    gap: 20px;
    align-items: flex-start;
  }

  .footer-brand img { max-width: 210px; height: auto; }
}

@media (max-width: 560px) {
  html { scroll-padding-top: 64px; }
  body { padding-top: 64px; }

  header .wrap, footer .wrap, section .wrap, main .wrap {
    margin-left: 16px;
    margin-right: 16px;
  }

  header .nav { min-height: 64px; gap: 10px; }
  header .brand img { max-width: 150px; }
  header nav { display: none; }

  .main-link {
    margin-left: auto;
    padding: 7px 9px;
  }

  .main-link span { font-size: 8px; }
  .main-link strong { font-size: 11px; }

  .hero {
    padding-top: 34px;
    padding-bottom: 40px;
  }

  .hero h1 { font-size: clamp(38px, 13vw, 54px); }
  .hero p { font-size: 15px; }

  .trust-strip {
    grid-template-columns: 1fr 1fr;
    padding: 16px 0;
  }

  section { padding-top: 52px; padding-bottom: 52px; }

  .section-head h2,
  .about h2,
  .audience h2,
  .announcement h2,
  .connect h2 {
    font-size: clamp(30px, 9.5vw, 42px);
  }

  footer .footer {
    flex-direction: column;
    gap: 16px;
  }

  .footer-brand img { max-width: 185px; }
  .footer-link { align-self: flex-start; }
}

@media (max-width: 380px) {
  header .brand img { max-width: 132px; }

  .hero h1 { font-size: 37px; }

  .trust-strip { grid-template-columns: 1fr; }
}

/* Final mobile header + footer refinement */
@media (max-width: 560px) {
  html { scroll-padding-top: 62px; }
  body { padding-top: 62px; }

  header {
    height: 62px !important;
    min-height: 62px !important;
    padding: 0 !important;
    box-sizing: border-box;
  }

  header .wrap {
    height: 62px;
    margin: 0 12px !important;
    max-width: none !important;
    padding: 0 !important;
  }

  header .nav {
    height: 62px;
    min-height: 62px !important;
    gap: 8px;
    justify-content: space-between;
  }

  .brand {
    width: auto !important;
    max-width: 178px;
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 !important;
  }

  header .brand img {
    width: auto !important;
    max-width: 178px !important;
    max-height: 48px !important;
    height: auto;
  }

  .main-link {
    flex: 0 0 auto;
    margin-left: 6px !important;
    border: 1px solid #cbd1d6 !important;
    border-radius: 12px;
    padding: 9px 13px !important;
    background: rgba(255,255,255,.7);
    line-height: 1;
    box-sizing: border-box;
  }

  .main-link span { display: none !important; }
  .main-link strong {
    display: block;
    font-size: 12px !important;
    white-space: nowrap;
    color: #344354;
  }

  /* Keep footer compact, balanced and easy to scan */
  footer {
    padding: 0 !important;
  }

  footer .wrap {
    margin: 0 16px !important;
    max-width: none !important;
    padding: 0 !important;
  }

  footer .footer {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding: 28px 0 !important;
  }

  .footer-brand {
    width: 100%;
  }

  .footer-brand img,
  .footer img {
    width: auto !important;
    max-width: 190px !important;
    height: auto;
  }

  .footer-meta {
    border-left: 0 !important;
    padding-left: 0 !important;
    margin-top: 0 !important;
    width: 100%;
  }

  .footer-meta span {
    font-size: 8px;
    letter-spacing: 1.2px;
  }

  .footer-meta small {
    font-size: 9px;
    margin-top: 5px;
  }

  .footer-link {
    display: inline-flex !important;
    align-items: center;
    margin-top: 2px !important;
    padding: 8px 0;
    font-size: 11px;
  }
}

@media (max-width: 380px) {
  header .wrap {
    margin: 0 10px !important;
  }

  .brand {
    max-width: 160px;
  }

  header .brand img {
    max-width: 160px !important;
  }

  .main-link {
    padding: 8px 10px !important;
  }

  .main-link strong {
    font-size: 11px !important;
  }

  footer .wrap {
    margin: 0 14px !important;
  }
}


/* Final mobile polish */
@media (max-width: 820px) {
  header { min-height: 64px; }
  html { scroll-padding-top: 64px; }
  body { padding-top: 64px; }

  .hero {
    padding-top: 26px;
  }
}

@media (max-width: 560px) {
  header { min-height: 60px; }
  html { scroll-padding-top: 60px; }
  body { padding-top: 60px; }

  header .nav {
    min-height: 60px;
  }

  .hero {
    padding-top: 22px;
  }
}

@media (max-width: 380px) {
  header { min-height: 58px; }
  html { scroll-padding-top: 58px; }
  body { padding-top: 58px; }

  header .nav {
    min-height: 58px;
  }

  .hero {
    padding-top: 20px;
  }
}
