  :root{
    --navy:#19447C;
    --navy-deep:#0E2C55;
    --blue:#2E7DBE;
    --cyan:#2F9ED3;
    --pale:#EEF3F9;
    --ink:#10233D;
    --muted:#5E7089;
    --line:#D6E0EC;
    --wrap:1180px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    background:#fff;
    color:var(--ink);
    font-family:"Archivo","Helvetica Neue",Arial,sans-serif;
    font-size:17px;
    line-height:1.6;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%;display:block}
  a{color:inherit}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}

  .skip{
    position:absolute;left:-9999px;top:0;z-index:200;
    background:var(--navy);color:#fff;padding:12px 20px;border-radius:0 0 4px 0;
    font-size:15px;font-weight:600;text-decoration:none;
  }
  .skip:focus{left:0}

  /* ---------- header ---------- */
  .site-head{
    position:sticky;top:0;z-index:60;
    background:rgba(255,255,255,.95);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .head-in{display:flex;align-items:center;gap:26px;height:76px}
  .brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto;min-width:0}
  .brand img{height:40px;width:auto}
  .brand b{display:block;font-size:15px;font-weight:800;letter-spacing:-.01em;color:var(--navy);line-height:1.15;white-space:nowrap}
  .brand .sub{display:block;font-size:11px;font-weight:500;color:var(--muted);letter-spacing:.02em;white-space:nowrap}
  .site-nav{display:flex;gap:26px;align-items:center}
  .site-nav a{text-decoration:none;font-size:15px;font-weight:500;color:var(--muted)}
  .site-nav a:hover{color:var(--navy)}
  .nav-extra{display:none}
  .nav-toggle{display:none}

  .btn{
    display:inline-block;border:0;cursor:pointer;text-decoration:none;
    font-family:inherit;font-size:16px;font-weight:600;white-space:nowrap;
    padding:14px 26px;border-radius:4px;
    background:var(--navy);color:#fff;
    transition:background .18s ease;
  }
  .btn:hover{background:var(--navy-deep)}
  .btn-sm{padding:11px 20px;font-size:15px}
  .btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.4)}
  .btn-ghost:hover{background:rgba(255,255,255,.1)}
  .btn-cyan{background:var(--cyan);color:#06253f}
  .btn-cyan:hover{background:#57b3e0}
  .btn-line{background:transparent;color:var(--navy);box-shadow:inset 0 0 0 1.5px var(--line)}
  .btn-line:hover{background:var(--pale)}

  /* ---------- hero ---------- */
  .hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}
  .swoosh{position:absolute;top:0;right:0;width:min(1180px,62%);pointer-events:none}
  .hero-in{position:relative;z-index:2;padding-top:76px}
  .kicker{font-size:15px;font-weight:600;color:var(--cyan);margin:0 0 20px}
  h1{
    font-size:clamp(37px,5.4vw,62px);
    line-height:1.03;letter-spacing:-.032em;font-weight:800;
    margin:0 0 24px;max-width:17ch;
  }
  .lede{font-size:clamp(17px,2vw,20px);line-height:1.55;color:#C6D9EE;max-width:56ch;margin:0 0 22px}
  .origin{
    font-size:16px;line-height:1.55;color:#9FBBD8;max-width:54ch;margin:0 0 34px;
    padding-left:18px;border-left:3px solid var(--cyan);
  }
  .origin b{color:#DCEBF8;font-weight:600}
  .hero-cta{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
  .hero-cta .note{font-size:14px;color:#9FBBD8;margin-left:6px}

  /* ---------- rail ---------- */
  .rail{margin-top:64px;padding-bottom:70px}
  .rail-head{font-size:14px;font-weight:600;color:#9FBBD8;margin:0 0 22px}
  .rail-track{display:grid;grid-template-columns:repeat(6,1fr);gap:0}
  .stop{position:relative;padding:0 18px 0 0}
  .stop-line{height:2px;background:rgba(255,255,255,.28);position:relative;margin-bottom:22px}
  .stop-line::after{
    content:"";position:absolute;left:0;top:-5px;width:12px;height:12px;
    border-radius:50%;background:var(--cyan);box-shadow:0 0 0 4px rgba(47,158,211,.22);
  }
  .stop:last-child .stop-line{background:linear-gradient(90deg,rgba(255,255,255,.28),rgba(255,255,255,0))}
  .stop-when{font-size:12.5px;font-weight:700;color:var(--cyan);margin:0 0 5px}
  .stop-name{font-size:17px;font-weight:700;letter-spacing:-.015em;margin:0 0 6px}
  .stop-note{font-size:14px;line-height:1.45;color:#A9C4DE;margin:0;max-width:22ch}

  /* ---------- sections ---------- */
  section{padding:96px 0}
  .sec-pale{background:var(--pale)}
  h2{
    font-size:clamp(28px,3.6vw,42px);line-height:1.1;letter-spacing:-.028em;
    font-weight:800;margin:0 0 16px;max-width:18ch;
  }
  .sec-intro{font-size:18px;color:var(--muted);max-width:52ch;margin:0}

  /* ---------- capability list ---------- */
  .split{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:64px;align-items:start}
  .split-aside{position:sticky;top:110px}
  .cap{border-top:1px solid var(--line);padding:26px 0;display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:32px;align-items:baseline}
  .cap:last-child{border-bottom:1px solid var(--line)}
  .cap h3{font-size:20px;font-weight:700;letter-spacing:-.02em;margin:0 0 8px}
  .cap p{margin:0;color:var(--muted);font-size:16px;line-height:1.55;max-width:52ch}
  .cap .meta{font-size:14px;color:var(--navy);font-weight:600;font-variant-numeric:tabular-nums}

  /* ---------- sectors ---------- */
  .sectors{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px;padding:0}
  .sectors li{
    list-style:none;font-size:16px;font-weight:600;color:var(--navy);
    background:#fff;border:1px solid var(--line);border-radius:100px;padding:10px 20px;
  }

  /* ---------- arguments ---------- */
  .args{display:grid;grid-template-columns:repeat(3,1fr);gap:52px;margin-top:52px}
  .arg h3{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:0 0 12px;line-height:1.2}
  .arg p{margin:0;color:var(--muted);font-size:16px;line-height:1.6}
  .arg .bar{width:44px;height:4px;background:var(--cyan);margin-bottom:22px;border-radius:2px}

  /* ---------- leadership ---------- */
  .lead-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:60px;align-items:start;margin-top:48px}
  .portrait{width:100%;aspect-ratio:4/5;border-radius:6px;overflow:hidden;background:var(--navy-deep)}
  .portrait img{width:100%;height:100%;object-fit:cover;display:block}
  .ceo-name{font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.028em;margin:0 0 6px;line-height:1.1}
  .ceo-role{font-size:16px;font-weight:600;color:var(--blue);margin:0 0 24px}
  .ceo-bio p{margin:0 0 18px;font-size:17px;line-height:1.62;color:#2C4055;max-width:60ch}
  .ceo-bio p:last-child{margin-bottom:0}
  .ceo-quote{
    border-left:4px solid var(--cyan);padding:4px 0 4px 22px;margin:28px 0 0;
    font-size:19px;line-height:1.5;font-weight:500;color:var(--navy);max-width:52ch;
  }
  .ceo-facts{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--line)}
  .ceo-facts li{border-bottom:1px solid var(--line);padding:13px 0}
  .ceo-facts .k{display:block;color:var(--muted);font-size:13.5px;margin-bottom:1px}
  .ceo-facts .v{display:block;font-weight:600;font-size:16px;line-height:1.45}
  .ceo-facts a{color:var(--navy);text-decoration:none}
  .ceo-facts a:hover{color:var(--blue);text-decoration:underline}

  /* ---------- contact ---------- */
  .book{background:var(--navy-deep);color:#fff;position:relative;overflow:hidden}
  .swoosh-b{position:absolute;left:0;bottom:0;width:min(760px,70%);pointer-events:none;opacity:.9}
  .book .wrap{position:relative;z-index:2}
  .book-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:70px;align-items:start}
  .book h2{color:#fff}
  .book .sec-intro{color:#B7CFE7}
  .contact-list{margin:36px 0 0;padding:0;list-style:none}
  .contact-list li{border-top:1px solid rgba(255,255,255,.16);padding:16px 0}
  .contact-list .lbl{display:block;font-size:13px;color:#8FB0D0;margin-bottom:3px}
  .contact-list .val{font-size:17px;font-weight:600;text-decoration:none;display:inline-block}
  .contact-list a.val:hover{color:var(--cyan)}

  form{background:#fff;border-radius:6px;padding:34px;color:var(--ink)}
  .form-lead{font-size:15px;color:var(--muted);margin:0 0 22px;line-height:1.5}
  .field{margin-bottom:18px}
  .field label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}
  .req{color:var(--blue)}
  .field input,.field select,.field textarea{
    width:100%;font-family:inherit;font-size:16px;color:var(--ink);
    padding:12px 14px;border:1px solid var(--line);border-radius:4px;background:#fff;
  }
  .field textarea{min-height:96px;resize:vertical}
  .field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
  .field.bad input,.field.bad textarea{border-color:#C0392B;background:#FDF4F3}
  .err{display:none;font-size:13.5px;color:#B03A2E;margin:6px 0 0}
  .field.bad .err{display:block}
  .two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .form-actions{display:grid;gap:10px;margin-top:22px}
  .form-actions .btn{width:100%;padding:15px;text-align:center}
  .form-note{font-size:13.5px;color:var(--muted);margin:14px 0 0;text-align:center;line-height:1.5}

  /* ---------- footer ---------- */
  footer{background:#fff;padding:56px 0 64px;border-top:1px solid var(--line)}
  .foot-grid{display:flex;flex-wrap:wrap;gap:36px;justify-content:space-between;align-items:flex-start}
  .foot-brand img{height:46px;width:auto;margin-bottom:14px}
  .foot-brand b{display:block;font-size:16px;color:var(--navy);font-weight:800}
  .foot-brand span{display:block;font-size:14px;color:var(--muted)}
  .foot-meta{font-size:14.5px;color:var(--muted);line-height:1.9;text-align:right}
  .foot-meta a{text-decoration:none;color:var(--navy);font-weight:600}
  .foot-rule{border-top:1px solid var(--line);margin-top:40px;padding-top:22px;font-size:13.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}


  /* ---------- home: brief CEO intro ---------- */
  .lead-brief{
    display:grid;grid-template-columns:210px minmax(0,1fr);gap:44px;align-items:center;
    margin-top:44px;
  }
  .lead-brief .portrait{width:210px}
  .lead-brief .ceo-name{font-size:clamp(24px,2.6vw,30px)}
  .lead-brief .intro{margin:0 0 20px;font-size:17px;line-height:1.6;color:#2C4055;max-width:58ch}
  .more{
    display:inline-flex;align-items:center;gap:9px;
    font-size:16px;font-weight:600;color:var(--navy);text-decoration:none;
    border-bottom:2px solid var(--cyan);padding-bottom:3px;
  }
  .more:hover{color:var(--blue)}

  /* ---------- contact page ---------- */
  .page-hero{background:var(--navy);color:#fff;position:relative;overflow:hidden;padding:76px 0 0}
  .page-hero .wrap{position:relative;z-index:2}
  .page-hero h1{max-width:20ch;margin-bottom:20px}
  .page-hero .lede{margin-bottom:0}

  .tiles{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:44px 0 0;padding-bottom:52px}
  .tile{
    display:block;text-decoration:none;background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:28px 30px;
    transition:background .18s ease,border-color .18s ease;
  }
  .tile:hover{background:rgba(255,255,255,.13);border-color:var(--cyan)}
  .tile .lbl{display:block;font-size:14px;font-weight:600;color:var(--cyan);margin-bottom:10px}
  .tile .big{
    display:block;font-size:clamp(21px,2.5vw,29px);font-weight:800;letter-spacing:-.028em;
    color:#fff;line-height:1.15;word-break:break-word;
  }
  .tile .sub{display:block;font-size:14.5px;color:#9FBBD8;margin-top:9px}

  #details{padding:56px 0}
  .strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
  .strip > div{border-bottom:1px solid var(--line);padding:26px 34px 26px 0}
  .strip h3{font-size:14px;font-weight:600;color:var(--muted);margin:0 0 7px}
  .strip p{margin:0;font-size:17px;font-weight:600;line-height:1.45}
  .strip a{color:var(--navy);text-decoration:none}
  .strip a:hover{color:var(--blue)}

  .ceo-expertise{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
  .ceo-expertise li{border-top:1px solid var(--line);padding:20px 0}
  .ceo-expertise h4{margin:0 0 6px;font-size:17px;font-weight:700;letter-spacing:-.015em}
  .ceo-expertise p{margin:0;font-size:15.5px;line-height:1.55;color:var(--muted)}

  .direct{
    margin-top:36px;background:var(--navy);color:#fff;border-radius:6px;padding:30px 32px;
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center;
  }
  .direct h3{margin:0 0 6px;font-size:21px;font-weight:800;letter-spacing:-.02em}
  .direct p{margin:0;font-size:15.5px;color:#B7CFE7;max-width:46ch}
  .direct .acts{display:grid;gap:10px;min-width:230px}
  .direct .acts a{
    display:block;text-align:center;text-decoration:none;font-size:15.5px;font-weight:600;
    padding:12px 20px;border-radius:4px;background:var(--cyan);color:#06253f;white-space:nowrap;
  }
  .direct .acts a.alt{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.42)}
  .direct .acts a:hover{background:#57b3e0}
  .direct .acts a.alt:hover{background:rgba(255,255,255,.12)}

  @media (max-width:900px){
    .tiles{grid-template-columns:1fr}
    .strip{grid-template-columns:1fr}
    .strip > div{padding-right:0}
    .ceo-expertise{grid-template-columns:1fr;gap:0}
    .direct{grid-template-columns:1fr;gap:22px}
    .direct .acts{min-width:0}
    .lead-brief{grid-template-columns:1fr;gap:28px}
    .lead-brief .portrait{width:200px}
  }

  section[id]{scroll-margin-top:96px}
  :focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:2px}

  @media (max-width:1000px){
    .rail-track{grid-template-columns:repeat(3,1fr);row-gap:34px}
    .split{grid-template-columns:1fr;gap:36px}
    .split-aside{position:static}
    .args{grid-template-columns:1fr;gap:36px}
    .lead-grid{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:40px}
    .book-grid{grid-template-columns:1fr;gap:44px}
  }

  @media (max-width:820px){
    .head-in{height:66px;gap:14px}
    .brand img{height:34px}
    .brand b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis}
    .brand .sub{display:none}
    .brand > span{min-width:0;overflow:hidden}
    .nav-cta{display:none}

    .nav-toggle{
      display:inline-flex;align-items:center;gap:9px;
      background:transparent;border:1.5px solid var(--line);border-radius:4px;
      font-family:inherit;font-size:14.5px;font-weight:600;color:var(--navy);
      padding:9px 14px;cursor:pointer;
    }
    .nav-toggle .bars{position:relative;width:16px;height:2px;background:var(--navy);border-radius:2px}
    .nav-toggle .bars::before,.nav-toggle .bars::after{
      content:"";position:absolute;left:0;width:16px;height:2px;background:var(--navy);border-radius:2px;
      transition:transform .18s ease,top .18s ease;
    }
    .nav-toggle .bars::before{top:-5px}
    .nav-toggle .bars::after{top:5px}
    .nav-toggle[aria-expanded="true"] .bars{background:transparent}
    .nav-toggle[aria-expanded="true"] .bars::before{top:0;transform:rotate(45deg)}
    .nav-toggle[aria-expanded="true"] .bars::after{top:0;transform:rotate(-45deg)}

    .site-nav{
      display:none;position:absolute;left:0;right:0;top:100%;
      flex-direction:column;align-items:stretch;gap:0;
      background:#fff;border-bottom:1px solid var(--line);
      box-shadow:0 14px 28px rgba(16,35,61,.10);
      padding:8px 28px 22px;
    }
    .site-nav.open{display:flex}
    .site-nav a{padding:15px 0;font-size:17px;color:var(--ink);border-bottom:1px solid var(--line)}
    .nav-extra{display:grid;gap:10px;margin-top:18px}
    .nav-extra .btn{width:100%;text-align:center}
  }

  @media (max-width:760px){
    body{font-size:16px}
    section{padding:64px 0}
    .hero-in{padding-top:56px}
    .rail{margin-top:52px;padding-bottom:48px}
    .rail-track{grid-template-columns:repeat(2,1fr)}
    .cap{grid-template-columns:1fr;gap:10px}
    .two{grid-template-columns:1fr}
    .foot-meta{text-align:left}
    .swoosh{width:150%;right:-42%;opacity:.5}
    .hero-cta{gap:10px}
    .hero-cta .note{margin-left:0;width:100%}
    form{padding:26px 22px}

    .lead-grid{display:flex;flex-direction:column;gap:0}
    .lead-grid .lead-col{display:contents}
    .lead-grid .portrait{order:1;max-width:290px;margin-bottom:28px}
    .lead-grid .ceo-facts{order:2;margin-top:0;margin-bottom:30px}
    .lead-grid .ceo-name{order:3}
    .lead-grid .ceo-role{order:4}
    .lead-grid .ceo-bio{order:5}
    .lead-grid .ceo-expertise{order:6}
    .lead-grid .direct{order:7}
  }

  @media (prefers-reduced-motion:reduce){
    *{transition:none!important;animation:none!important}
    html{scroll-behavior:auto}
  }