/* Theme A — Clinical Modern: crisp, confident, navy + mint, one bold sans. */
:root{--bg:#f4f7fa;--surface:#ffffff;--alt:#eaf0f5;--ink:#0d2236;--ink-2:#34495e;--muted:#6b7c8d;--line:#dbe3ea;
  --accent:#0e9f8f;--accent-ink:#ffffff;--accent-soft:#dff5f1;--navy:#0d2a45;--coral:#ff7a59;
  --serif:"Plus Jakarta Sans",system-ui,sans-serif;--sans:"Plus Jakarta Sans",system-ui,sans-serif;--radius:16px;
  --shadow:0 1px 2px rgba(13,34,54,.06),0 12px 32px rgba(13,34,54,.08)}
@media (prefers-color-scheme: dark){:root{--bg:#0a1724;--surface:#11223a;--alt:#0e1d30;--ink:#eef3f8;--ink-2:#c2cfdc;--muted:#8a9bb0;
  --line:#1f3550;--accent:#2fd3bf;--accent-ink:#04201c;--accent-soft:#123b3a;--navy:#081422;--coral:#ff8c6e}}
h1,h2,h3{font-weight:800;letter-spacing:-.025em}
h1 em{font-style:normal;color:var(--accent)}
.site-header{background:var(--surface);backdrop-filter:none}
.brand{font:800 19px/1 var(--sans);letter-spacing:-.02em}
.mark{border-radius:50%;background:var(--navy);color:#fff;box-shadow:inset 0 0 0 2px var(--accent)}
.site-header nav a{font-weight:600}
.site-header nav a[aria-current=page]{color:var(--accent);border-bottom-color:var(--accent)}
.hero{background:linear-gradient(135deg,var(--navy) 0%,#123a5c 100%);color:#fff;padding:84px 0 96px;position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(47,211,191,.25),transparent 70%)}
.hero h1{color:#fff}
.hero h1 em{color:#5fe3d2}
.hero .eyebrow{color:#8fd9cf}
.hero .lede{color:#cfdbe7}
.hero .btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.hero .btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.btn{border-radius:10px;font-weight:600}
.portrait::before{inset:-12px 12px 12px -12px;background:transparent;border:2px solid #5fe3d2;border-radius:20px}
.portrait img{border-radius:20px}
.facts{background:transparent;border:0;margin-top:-48px;position:relative;z-index:1}
.facts-grid{gap:16px}
.facts-grid>div,.facts-grid>div:first-child{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:var(--shadow)}
.fact-k{font:800 26px/1.1 var(--sans);letter-spacing:-.02em;color:var(--ink)}
.fact-k::before{content:"";display:block;width:28px;height:4px;border-radius:4px;background:var(--coral);margin-bottom:12px}
.card{border-radius:16px;border-top:4px solid var(--accent)}
.card h3{font-weight:700;letter-spacing:-.015em}
.tag{border-radius:6px;font-weight:600}
.section.alt{background:var(--navy);color:#fff;border:0}
.section.alt h2{color:#fff}
.section.alt .prose{color:#cfdbe7}
.section.alt a{color:#5fe3d2}
.page-head{background:var(--navy);padding:64px 0 48px;margin-bottom:32px}
.page-head h1,.page-head .eyebrow a{color:#fff}
.page-head .eyebrow{color:#8fd9cf}
.page-head .lede{color:#cfdbe7}
.page-head .btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.page-head .btn.primary{background:var(--accent);border-color:var(--accent)}
.page-head .chip{background:transparent;color:#dbe7f2;border-color:rgba(255,255,255,.3)}
.month{color:var(--accent)}
.role-when span{border-radius:6px}
.prose blockquote{font-family:var(--sans);font-weight:600;font-size:20px}
.standfirst{font:500 20px/1.5 var(--sans)}
.site-footer{background:var(--navy);color:#cfdbe7;border:0}
.site-footer .foot-name{color:#fff;font:800 20px/1.3 var(--sans)}
.site-footer .muted,.site-footer .disclaimer{color:#8fa3b8}
.site-footer a{color:#5fe3d2}
.disclaimer{border-top-color:rgba(255,255,255,.12)}
@media (max-width:900px){.facts{margin-top:-36px}.facts-grid>div:nth-child(even){padding-left:22px;border-left:1px solid var(--line)}.facts-grid>div{border-top:1px solid var(--line)}}
/* word slider on the navy hero */
.hero{padding-top:44px}
.ticker{margin:0 0 56px;z-index:1}
.ticker span{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#dbe7f2}
.ticker .said span::before,.ticker .said span::after{color:#5fe3d2}
.ticker .skills span{background:rgba(47,211,191,.14);border-color:rgba(95,227,210,.25);color:#bff3eb}
@media (max-width:560px){.hero{padding-top:28px}.ticker{margin:0 0 36px}}
