/* Layout concept: the page is a borehole. A dark seismic-led hero, bands of strata that explain the
   firm, a five-step legacy-data workflow drawn as a well, and a depth gauge that tracks the scroll.
   Dark-first: navy and gold. Light mode turns the middle sections white; hero, workflow band,
   engage and footer stay dark in both themes. */
:root{
  --bg:#06142A; --surface:#0A1D38; --card:#0D2543; --ink:#EAF0F8; --muted:#9DB0C8; --line:#1B3558;
  --navy:#062B55; --blue:#0A5CA8; --gold:#C98A35; --gold-lt:#E8B54A; --gold-text:#E8B54A; --focus:#7FB8F2;
  --f-display:'Source Serif 4',Cambria,Georgia,serif;
  --f-body:'Source Sans 3',Calibri,'Segoe UI',system-ui,sans-serif;
  --f-mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;
  color-scheme:dark;
}
@media (prefers-color-scheme: light){
  :root:not([data-theme="dark"]){
    --bg:#FBFCFE; --surface:#EEF2F8; --card:#FFFFFF; --ink:#06142A; --muted:#566377; --line:#D9E0EC;
    --gold-text:#8E5D1B; --focus:#0A5CA8; color-scheme:light;
  }
}
:root[data-theme="light"]{
  --bg:#FBFCFE; --surface:#EEF2F8; --card:#FFFFFF; --ink:#06142A; --muted:#566377; --line:#D9E0EC;
  --gold-text:#8E5D1B; --focus:#0A5CA8; color-scheme:light;
}
.dark{--bg:#06142A;--surface:#0A1D38;--card:#0D2543;--ink:#EAF0F8;--muted:#9DB0C8;--line:#1B3558;--gold-text:#E8B54A;--focus:#7FB8F2;color:var(--ink)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:18px;line-height:1.6;margin:0;-webkit-font-smoothing:antialiased}
img,canvas,svg{max-width:100%}
img{height:auto;display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.wrap{max-width:1200px;margin-inline:auto;padding-inline:max(16px,4vw)}
.skip{position:absolute;left:16px;top:-80px;background:#E8B54A;color:#06142A;padding:10px 16px;z-index:60;font-weight:600}
.skip:focus{top:8px}
h1,h2,h3{font-family:var(--f-display);font-weight:700;line-height:1.08;margin:0;text-wrap:balance}
h2{font-size:clamp(2rem,4.4vw,3.3rem)}
h3{font-size:1.35rem;line-height:1.2}
.eyebrow{font:600 .78rem/1 var(--f-body);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text);margin:0 0 18px;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:12px;height:11px;background:var(--gold);clip-path:polygon(50% 0,100% 100%,0 100%)}
.lede{color:var(--muted);max-width:62ch;margin:18px 0 0;font-size:1.1rem}
.mono{font-family:var(--f-mono);font-weight:500}
section{scroll-margin-top:72px}
.band{padding-block:clamp(64px,9vw,120px)}
.alt{background:var(--surface);border-block:1px solid var(--line)}
.head{max-width:780px;margin-bottom:clamp(32px,5vw,56px)}
