/* ================================================================
   Dr Mohd Syafwan Adnan — record
   Direction: incident-command / patient-monitor HUD.
   Ice = telemetry signal · Amber = current appointment or deployment.
   ================================================================ */

:root{
  --void:#03070B;
  --deck:#07111A;
  --deck-2:#0B1822;
  --line:rgba(127,227,255,.10);
  --line-2:rgba(127,227,255,.20);
  --line-3:rgba(127,227,255,.40);
  --ice:#7FE3FF;
  --ice-2:#3FB9DB;
  --amber:#FFB547;
  --text:#DCE6EE;
  --soft:#A7B5C1;
  --dim:#71818E;
  --faint:#34434F;

  --display:"Unbounded","Segoe UI",system-ui,sans-serif;
  --sans:"Geist",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  --gut:clamp(1.25rem,4vw,4rem);
  --maxw:1200px;
  --ease:cubic-bezier(.2,.8,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
html{
  background:var(--void);
  scroll-behavior:smooth;scroll-padding-top:6rem;
  -webkit-text-size-adjust:100%;
}
body{
  margin:0;background:transparent;color:var(--text);
  font:400 16px/1.65 var(--sans);
  font-variant-numeric:tabular-nums;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
/* ambient glow, fixed behind everything */
body::before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(60rem 40rem at 8% -12%,rgba(127,227,255,.09),transparent 62%),
    radial-gradient(48rem 36rem at 108% 112%,rgba(255,181,71,.055),transparent 62%);
}
/* faint scanlines */
body::after{
  content:"";position:fixed;inset:0;z-index:95;pointer-events:none;
  background:repeating-linear-gradient(to bottom,rgba(255,255,255,.016) 0 1px,transparent 1px 3px);
}
a{color:inherit}
svg{display:block}
::selection{background:var(--ice);color:#01121A}
:focus-visible{outline:1.5px solid var(--ice);outline-offset:3px;border-radius:3px}
[hidden]{display:none!important}

.wrap{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gut)}

.skip{
  position:fixed;left:1rem;top:-4rem;z-index:300;padding:.6rem .9rem;border-radius:6px;
  background:var(--ice);color:#01121A;font:600 .8rem var(--sans);text-decoration:none;transition:top .3s var(--ease);
}
.skip:focus{top:1rem}

/* ── reveal system ─────────────────────────────────────────
   Reveals animate `translate` + opacity; interactions (tilt,
   magnetic) use `transform`, so the two never fight. */
html.js [data-reveal]:not([data-stagger]){opacity:0}
html.js [data-reveal].in:not([data-stagger]){animation:rise 1s var(--ease) both}
html.js [data-stagger] > *{opacity:0}
html.js [data-stagger].in > *{animation:rise .85s var(--ease) var(--d,0ms) both}
@keyframes rise{from{opacity:0;translate:0 26px}to{opacity:1;translate:0 0}}

/* ── boot sequence ─────────────────────────────────────── */
.boot{display:none}
html.booting .boot{
  position:fixed;inset:0;z-index:250;display:grid;place-items:center;
  background:var(--void);clip-path:inset(0 0 0 0);
  transition:clip-path .8s cubic-bezier(.7,0,.2,1);
}
html.booting .boot.out,.boot.out{clip-path:inset(0 0 100% 0)}
.boot::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(30rem 20rem at 50% 50%,rgba(127,227,255,.08),transparent 70%);
}
.boot-in{position:relative;width:min(560px,86vw);font:500 clamp(.6rem,2.5vw,.74rem)/2 var(--mono);letter-spacing:.08em;color:var(--ice)}
.boot-lines p{margin:0;white-space:nowrap;overflow:hidden;animation:typeon .38s steps(28) both}
.boot-lines p b{color:var(--amber);font-weight:500}
.boot-lines p:last-child::after{content:"";display:inline-block;width:.55em;height:1.05em;margin-left:.3em;vertical-align:-2px;background:var(--ice);animation:blink .8s steps(1) infinite}
@keyframes typeon{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.boot-bar{margin-top:1.3rem;height:2px;background:var(--line-2);overflow:hidden}
.boot-bar i{display:block;height:100%;background:var(--ice);box-shadow:0 0 12px var(--ice);transform-origin:left;transform:scaleX(0);transition:transform .22s var(--ease)}
.boot-skip{margin:.9rem 0 0;color:var(--dim);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase}

/* ── scroll progress ───────────────────────────────────── */
.progress{position:fixed;left:0;right:0;top:0;height:2px;z-index:120;pointer-events:none}
.progress i{
  display:block;height:100%;transform-origin:left;transform:scaleX(0);
  background:linear-gradient(90deg,var(--ice-2),var(--ice) 70%,var(--amber));
  box-shadow:0 0 12px rgba(127,227,255,.7);
}

/* ── HUD frame ─────────────────────────────────────────── */
.hud{position:fixed;inset:0;z-index:60;pointer-events:none}
.hc{position:absolute;width:18px;height:18px;border:1px solid var(--line-3)}
.hc.tl{top:12px;left:12px;border-right:0;border-bottom:0}
.hc.tr{top:12px;right:12px;border-left:0;border-bottom:0}
.hc.bl{bottom:12px;left:12px;border-right:0;border-top:0}
.hc.br{bottom:12px;right:12px;border-left:0;border-top:0}
.hud-t,.hud-b{position:absolute;display:flex;align-items:center;gap:.5rem;font:500 .6rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.hud-t{top:18px}.hud-b{bottom:18px}
.hud .l{left:40px}.hud .r{right:40px}
.hud .clk,.hud #scrollpct{color:var(--ice)}
.mon-head .clk{font-weight:500;color:var(--ice)}
.rec-dot{width:6px;height:6px;border-radius:50%;background:#FF5A5A;box-shadow:0 0 8px #FF5A5A;animation:blink 1.4s steps(1) infinite}
/* HUD text lives in the side gutters, so it only appears when the gutters
   are wide enough to hold it without touching the 1200px content column. */
@media (max-width:1519px){.hud-t,.hud-b{display:none}}
@media (max-width:640px){.hud{display:none}}

/* ── custom cursor (fine pointers only) ───────────────── */
.cur-dot,.cur-ring{display:none}
html.has-cursor,html.has-cursor *{cursor:none!important}
html.has-cursor .cur-dot,html.has-cursor .cur-ring{display:block;position:fixed;left:0;top:0;z-index:180;pointer-events:none;border-radius:50%;will-change:transform}
.cur-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--ice);box-shadow:0 0 10px var(--ice)}
.cur-ring{
  width:34px;height:34px;margin:-17px 0 0 -17px;border:1px solid rgba(127,227,255,.55);
  transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),border-color .3s,background .3s,opacity .3s;
}
.cur-ring.hot{width:56px;height:56px;margin:-28px 0 0 -28px;border-color:var(--amber);background:rgba(255,181,71,.06)}
.cur-ring.press{width:24px;height:24px;margin:-12px 0 0 -12px}
.cur-dot.gone,.cur-ring.gone{opacity:0}

/* ── tooltip ───────────────────────────────────────────── */
.tip{
  position:fixed;left:0;top:0;z-index:170;pointer-events:none;max-width:290px;
  padding:.55rem .75rem;border:1px solid var(--line-3);border-radius:6px;
  background:rgba(3,10,16,.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  font:500 .74rem/1.45 var(--sans);color:var(--text);
  box-shadow:0 12px 30px -10px rgba(0,0,0,.8),0 0 20px -8px rgba(127,227,255,.5);
  opacity:0;transition:opacity .18s;
}
.tip.on{opacity:1}

/* ── nav ───────────────────────────────────────────────── */
.nav{
  position:fixed;top:12px;left:50%;z-index:110;width:min(calc(100% - 24px),1110px);
  translate:-50% 0;transition:translate .9s var(--ease),opacity .9s var(--ease);
}
html.js:not(.ready) .nav{translate:-50% -140%;opacity:0}
.nav-in{
  display:flex;align-items:center;gap:.9rem;height:52px;padding:0 .45rem 0 .95rem;
  border:1px solid var(--line-2);border-radius:12px;
  background:rgba(4,10,16,.62);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);
  box-shadow:0 14px 40px -14px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.04);
  transition:background .4s,border-color .4s;
}
body.scrolled .nav-in{background:rgba(3,8,13,.82);border-color:var(--line-3)}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text);font:500 .72rem var(--display);letter-spacing:.01em;white-space:nowrap}
.brand svg{width:30px;height:15px;fill:none;stroke:var(--ice);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(127,227,255,.7))}
.brand svg path{stroke-dasharray:70;stroke-dashoffset:0;animation:trace 3.2s linear infinite}
@keyframes trace{0%{stroke-dashoffset:70}55%{stroke-dashoffset:0}100%{stroke-dashoffset:-70}}
.nav-links{position:relative;display:flex;gap:.1rem;margin-left:auto}
.nav-links a{
  position:relative;z-index:1;padding:.58rem .52rem;border-radius:8px;
  font:500 .6rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;
  color:var(--dim);text-decoration:none;transition:color .3s;
}
.nav-links a:hover,.nav-links a.on{color:var(--text)}
.nav-ind{
  position:absolute;left:0;top:0;height:100%;width:0;border-radius:8px;opacity:0;
  background:rgba(127,227,255,.08);border:1px solid var(--line-2);
  transition:transform .55s var(--ease),width .55s var(--ease),opacity .3s;
}
.nav-ind::after{content:"";position:absolute;left:22%;right:22%;bottom:-1px;height:1px;background:var(--ice);box-shadow:0 0 8px var(--ice)}
.nav-cv{
  display:inline-flex;align-items:center;gap:.45rem;flex:none;height:38px;padding:0 .9rem;border-radius:8px;
  background:var(--ice);color:#01121A;text-decoration:none;
  font:600 .62rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;
  transition:background .3s,box-shadow .3s,transform .35s var(--ease);
}
.nav-cv svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-cv:hover{background:#B8F1FF;box-shadow:0 0 26px -4px rgba(127,227,255,.8)}
.menu-btn{
  display:none;position:relative;flex:none;width:38px;height:38px;border-radius:8px;
  border:1px solid var(--line-2);background:transparent;color:var(--text);padding:0;
}
.menu-btn i{position:absolute;left:11px;right:11px;height:1.5px;background:currentColor;border-radius:2px;transition:transform .45s var(--ease),top .45s var(--ease)}
.menu-btn i:first-child{top:15px}.menu-btn i:last-child{top:22px}
.menu-btn[aria-expanded="true"] i:first-child{top:18px;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] i:last-child{top:18px;transform:rotate(-45deg)}
.menu{
  position:absolute;left:0;right:0;top:calc(100% + 8px);padding:.5rem;
  display:grid;grid-template-columns:1fr 1fr;gap:.25rem;
  border:1px solid var(--line-2);border-radius:12px;
  background:rgba(3,8,13,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  animation:drop .4s var(--ease) both;
}
.menu a{
  display:flex;gap:.7rem;align-items:baseline;padding:.8rem .8rem;border-radius:8px;text-decoration:none;
  font:500 .9rem var(--sans);color:var(--text);animation:rise .5s var(--ease) both;
}
.menu a span{font:500 .6rem var(--mono);color:var(--ice);letter-spacing:.1em}
.menu a:hover{background:rgba(127,227,255,.07)}
.menu a:nth-child(2){animation-delay:30ms}.menu a:nth-child(3){animation-delay:60ms}.menu a:nth-child(4){animation-delay:90ms}
.menu a:nth-child(5){animation-delay:120ms}.menu a:nth-child(6){animation-delay:150ms}.menu a:nth-child(7){animation-delay:180ms}
.menu a:nth-child(8){animation-delay:210ms}.menu a:nth-child(9){animation-delay:240ms}
@keyframes drop{from{opacity:0;translate:0 -8px}to{opacity:1;translate:0 0}}
@media (max-width:1140px){.nav-links{display:none}.nav-cv{margin-left:auto}.menu-btn{display:block}}
@media (min-width:1141px){.menu{display:none!important}}
@media (max-width:420px){.brand span{display:none}}

/* ── hero ──────────────────────────────────────────────── */
.hero{
  position:relative;isolation:isolate;overflow:hidden;
  min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:center;
  padding-block:7.5rem 5.5rem;
}
.field{
  position:absolute;inset:0;z-index:-1;width:100%;height:100%;
  -webkit-mask-image:radial-gradient(ellipse 75% 70% at 50% 42%,#000 25%,transparent 80%);
  mask-image:radial-gradient(ellipse 75% 70% at 50% 42%,#000 25%,transparent 80%);
}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;width:100%}
@media (max-width:980px){.hero-grid{grid-template-columns:1fr}}

.status{
  display:inline-flex;align-items:center;gap:.65rem;margin:0;padding:.45rem .85rem;border-radius:100px;
  border:1px solid rgba(255,181,71,.3);background:rgba(255,181,71,.05);
  font:500 .62rem/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#F4D3A2;
}
.ping{position:relative;flex:none;width:7px;height:7px;border-radius:50%;background:var(--amber);box-shadow:0 0 10px var(--amber)}
.ping::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--amber);animation:ping 1.8s var(--ease) infinite}
@keyframes ping{from{transform:scale(1);opacity:.9}to{transform:scale(3.4);opacity:0}}
.kicker{margin:1.6rem 0 0;font:500 .7rem var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ice)}
.kicker b{color:var(--faint);font-weight:500;margin:0 .35rem}

h1{
  margin:.9rem 0 0;font-family:var(--display);font-weight:250;
  font-size:clamp(2.05rem,5.1vw,4.05rem);line-height:1.02;letter-spacing:-.045em;
}
h1 .l1{display:block;color:var(--text)}
h1 .l2{
  display:block;font-weight:500;
  background:linear-gradient(95deg,var(--ice) 0%,#E4FAFF 38%,var(--ice) 60%,var(--amber) 100%);
  background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:sheen 9s ease-in-out infinite alternate;
}
@keyframes sheen{from{background-position:0% 50%}to{background-position:100% 50%}}
.sc{color:var(--ice);opacity:.7}
.sc0{opacity:0}

.creds{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:1.6rem 0 0;padding:0}
.creds li{
  padding:.45rem .7rem;border:1px solid var(--line-2);border-radius:6px;background:rgba(127,227,255,.03);
  font:500 .62rem/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);
  transition:border-color .3s,color .3s,background .3s;
}
.creds li b{color:var(--text);font-weight:500}
.creds li:hover{border-color:var(--ice);color:var(--soft);background:rgba(127,227,255,.07)}

.thesis{margin:1.5rem 0 0;max-width:34em;font:300 clamp(1.02rem,1.7vw,1.18rem)/1.65 var(--sans);color:var(--soft)}
.thesis em{
  font-style:normal;color:var(--text);
  background:linear-gradient(transparent 60%,rgba(255,181,71,.24) 60%,rgba(255,181,71,.24) 92%,transparent 92%) no-repeat 0 0/0% 100%;
  transition:background-size 1.4s var(--ease) 1.1s;
}
.hero-main.in .thesis em{background-size:100% 100%}

.actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2.1rem}
.btn{
  position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:.55rem;height:46px;padding:0 1.15rem;
  border-radius:9px;border:1px solid var(--line-2);background:rgba(127,227,255,.03);color:var(--text);
  font:500 .66rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;
  transition:border-color .3s,background .3s,box-shadow .3s,transform .4s var(--ease);
}
.btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.btn svg.fill{fill:currentColor;stroke:none}
.btn::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.2) 50%,transparent 70%);
  translate:-130% 0;transition:translate .8s var(--ease);
}
.btn:hover::after{translate:130% 0}
.btn:hover{border-color:var(--ice);background:rgba(127,227,255,.08);box-shadow:0 0 26px -8px rgba(127,227,255,.6)}
.btn-primary{background:var(--ice);border-color:var(--ice);color:#01121A;font-weight:600}
.btn-primary:hover{background:#B8F1FF;box-shadow:0 0 36px -6px rgba(127,227,255,.85)}
.btn-primary svg{animation:nudge 2.4s var(--ease) infinite}
@keyframes nudge{0%,70%,100%{translate:0 0}80%{translate:0 2px}90%{translate:0 -1px}}

/* monitor panel */
.monitor{
  position:relative;padding:1rem;border:1px solid var(--line-2);border-radius:6px;
  background:linear-gradient(180deg,rgba(11,24,34,.86),rgba(4,10,16,.86));
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  box-shadow:0 30px 70px -30px rgba(0,0,0,.9),0 0 0 1px rgba(0,0,0,.4),0 0 60px -30px rgba(127,227,255,.35);
  transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transition:transform .7s var(--ease);transform-style:preserve-3d;
}
.monitor::before,.stat::before,.deploy::before{
  content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;
  background:radial-gradient(22rem circle at var(--gx,50%) var(--gy,50%),rgba(127,227,255,.13),transparent 45%);
}
.tilting::before{opacity:1}
[data-tilt].tilting{transition:transform .1s linear}
.monitor::after{
  content:"";position:absolute;inset:-1px;pointer-events:none;
  --c:var(--ice);
  background:
    linear-gradient(var(--c),var(--c)) top left/16px 1px no-repeat,
    linear-gradient(var(--c),var(--c)) top left/1px 16px no-repeat,
    linear-gradient(var(--c),var(--c)) top right/16px 1px no-repeat,
    linear-gradient(var(--c),var(--c)) top right/1px 16px no-repeat,
    linear-gradient(var(--c),var(--c)) bottom left/16px 1px no-repeat,
    linear-gradient(var(--c),var(--c)) bottom left/1px 16px no-repeat,
    linear-gradient(var(--c),var(--c)) bottom right/16px 1px no-repeat,
    linear-gradient(var(--c),var(--c)) bottom right/1px 16px no-repeat;
}
.mon-head{display:flex;justify-content:space-between;align-items:center;font:500 .6rem var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);padding:0 .1rem .75rem}
.live{display:inline-flex;align-items:center;gap:.45rem;color:#FF8080}
.live i{width:6px;height:6px;border-radius:50%;background:#FF5A5A;box-shadow:0 0 8px #FF5A5A;animation:blink 1.2s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.ecg-box{position:relative;border:1px solid var(--line);border-radius:4px;background:rgba(0,0,0,.28);overflow:hidden}
#ecg{display:block;width:100%;height:150px}
.ecg-lbl{position:absolute;left:.6rem;top:.45rem;font:500 .56rem var(--mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(127,227,255,.55)}
.mon-read{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.75rem}
.rd{padding:.6rem .7rem .55rem;border:1px solid var(--line);border-radius:4px;background:rgba(127,227,255,.025)}
.rd span{display:block;font:500 .55rem var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.rd b{display:inline-block;margin-top:.2rem;font:300 1.75rem/1 var(--display);letter-spacing:-.04em;color:var(--ice);transition:color .15s,text-shadow .15s}
.rd small{margin-left:.3rem;font:500 .55rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.rd.amber b{color:var(--amber)}
@media (max-width:480px){.rd small{display:block;margin:.3rem 0 0}}
.rd.hr.beat b{color:#fff;text-shadow:0 0 16px var(--ice)}
.mon-dl{display:grid;grid-template-columns:5.6rem 1fr;margin:.85rem 0 0}
.mon-dl dt{padding:.6rem 0;border-top:1px solid var(--line);font:500 .58rem/1.6 var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim)}
.mon-dl dd{margin:0;padding:.6rem 0;border-top:1px solid var(--line);font-size:.84rem;line-height:1.45;color:var(--text)}
.mon-dl dd small{display:block;color:var(--dim);font-size:.74rem}

.scroll-cue{
  position:absolute;left:50%;bottom:1.6rem;translate:-50% 0;display:flex;flex-direction:column;align-items:center;gap:.6rem;
  font:500 .56rem var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--dim);text-decoration:none;
}
.scroll-cue i{position:relative;width:1px;height:42px;background:var(--line-2);overflow:hidden}
.scroll-cue i::after{content:"";position:absolute;left:0;top:-40%;width:1px;height:40%;background:var(--ice);box-shadow:0 0 8px var(--ice);animation:drip 1.8s var(--ease) infinite}
@keyframes drip{to{top:110%}}
@media (max-height:700px),(max-width:980px){.scroll-cue{display:none}}

/* ── section scaffolding ───────────────────────────────── */
.sec{position:relative;padding-block:clamp(4rem,8vw,6.5rem)}
.sec::before{
  content:"";position:absolute;top:0;left:var(--gut);right:var(--gut);height:1px;
  background:linear-gradient(90deg,transparent,var(--line-2) 20%,var(--line-2) 80%,transparent);
}
.sec-head{display:grid;gap:.85rem;margin-bottom:2.8rem;max-width:62rem}
.sec-code{display:flex;align-items:center;gap:.8rem;margin:0;font:500 .62rem var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ice)}
.sec-code .n{color:var(--dim)}
.sec-code i{flex:none;width:0;height:1px;background:linear-gradient(90deg,var(--ice),transparent);transition:width 1.3s var(--ease) .25s}
.in .sec-code i,.sec-code.in i,.in > .sec-code i{width:3.5rem}
.sec-head h2,.chart-sec h2{margin:0;font:300 clamp(1.5rem,3.3vw,2.45rem)/1.14 var(--display);letter-spacing:-.035em;color:var(--text)}
.sec-head p:not(.sec-code){margin:0;max-width:50em;color:var(--dim)}

.grp{display:flex;align-items:center;gap:1rem;margin:3.2rem 0 1rem;font:500 .62rem var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ice-2)}
.grp::before{content:"";width:6px;height:6px;border:1px solid var(--ice-2);rotate:45deg;flex:none}
.grp::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--line-2),transparent)}
.sec-head + .grp{margin-top:0}

/* ── concurrency chart ─────────────────────────────────── */
.chart-sec{position:relative;padding-block:clamp(4rem,8vw,6rem);background:linear-gradient(180deg,rgba(7,17,26,.55),rgba(3,7,11,0) 80%)}
.chart-sec::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--line-3),transparent)}
.chart-shell{position:relative;padding:1.2rem 1.2rem 1rem;border:1px solid var(--line-2);border-radius:6px;background:rgba(4,11,17,.65)}
.chart-scroll{overflow-x:auto;overflow-y:hidden;padding-bottom:.4rem;scrollbar-width:thin;scrollbar-color:var(--line-3) transparent}
.chart{position:relative;min-width:680px;--lbl:9.5rem}
@media (max-width:700px){.chart{--lbl:7.8rem}}
.tick-row{position:relative;height:1.3rem;margin-left:var(--lbl);border-bottom:1px solid var(--line-2)}
.tick{position:absolute;top:0;transform:translateX(-50%);font:500 .6rem var(--mono);letter-spacing:.1em;color:var(--dim)}
.now-tick{color:var(--amber);text-transform:uppercase;letter-spacing:.18em}
.track{display:grid;grid-template-columns:var(--lbl) 1fr;border-bottom:1px solid rgba(127,227,255,.07)}
.track.last{border-bottom:0}
.track-lbl{padding:.85rem .9rem .85rem 0;border-right:1px solid var(--line-2);text-align:right;font:500 .58rem/1.4 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--dim)}
.lane{position:relative;min-height:2.6rem;padding:.5rem 0}
.lane.dbl{min-height:3.5rem}
.lane.tri{min-height:4.9rem}
.lane::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(to right,rgba(127,227,255,.07) 1px,transparent 1px) 0 0/20% 100%}

.bar{
  position:absolute;top:50%;height:1.55rem;margin-top:-.775rem;padding-inline:.5rem;overflow:hidden;
  display:flex;align-items:center;border-radius:2px;transform-origin:left center;
  background:linear-gradient(90deg,rgba(127,227,255,.10),rgba(127,227,255,.22));
  border:1px solid rgba(127,227,255,.42);
  transition:box-shadow .3s,background .3s,border-color .3s;
}
.bar:hover{background:rgba(127,227,255,.32);border-color:var(--ice);box-shadow:0 0 18px -2px rgba(127,227,255,.65)}
.bar span{font:500 .6rem var(--mono);letter-spacing:.05em;color:#D9F6FF;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;z-index:1}
.bar.now{background:linear-gradient(90deg,rgba(255,181,71,.14),rgba(255,181,71,.32));border-color:rgba(255,181,71,.8)}
.bar.now:hover{background:rgba(255,181,71,.42);border-color:var(--amber);box-shadow:0 0 18px -2px rgba(255,181,71,.7)}
.bar.now span{color:#FFE7C2}
.bar.now::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent) no-repeat;
  background-size:40% 100%;animation:shimmer 3.2s linear infinite;
}
@keyframes shimmer{from{background-position:-60% 0}to{background-position:160% 0}}
.bar.quiet{background:rgba(124,140,155,.10);border-color:rgba(124,140,155,.38)}
.bar.quiet span{color:#B5C2CC}
.bar.tight{padding-inline:.3rem}
.bar.tight span{font-size:.56rem}
.bar.stack-a{top:.35rem;margin-top:0;height:1.3rem}
.bar.stack-b{top:1.75rem;margin-top:0;height:1.3rem}
.bar.stack-c{top:3.15rem;margin-top:0;height:1.3rem}
.bar-lbl{position:absolute;top:50%;transform:translateY(-50%);padding-left:.55rem;font:500 .6rem var(--mono);letter-spacing:.05em;color:var(--soft);white-space:nowrap}
.bar-lbl.sa,.bar-lbl.sb,.bar-lbl.sc{height:1.3rem;transform:none;display:flex;align-items:center}
.bar-lbl.sa{top:.35rem}.bar-lbl.sb{top:1.75rem}.bar-lbl.sc{top:3.15rem}
.bar-lbl.before{transform:translate(-100%,-50%);padding:0 .55rem 0 0}
.bar-lbl.sa.before,.bar-lbl.sb.before,.bar-lbl.sc.before{transform:translateX(-100%)}
.pt{position:absolute;top:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;background:var(--amber);box-shadow:0 0 12px var(--amber)}
.pt::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--amber);animation:ping 2s var(--ease) infinite}
.pt:not(.hot){background:#C9A26A;box-shadow:none}
.pt:not(.hot)::after{animation:none;opacity:0}
.pt-lbl{position:absolute;top:50%;transform:translateY(-50%);margin-left:.8rem;font:500 .6rem var(--mono);letter-spacing:.06em;color:var(--amber);white-space:nowrap}
.pt-lbl.before-pt{margin-left:0;transform:translate(-100%,-50%);padding-right:.8rem;color:var(--dim)}
.now-line{
  position:absolute;top:0;bottom:0;width:1px;pointer-events:none;
  left:calc(var(--lbl) + (100% - var(--lbl)) * .948);
  background:repeating-linear-gradient(to bottom,var(--amber) 0 4px,transparent 4px 8px);
  opacity:.55;animation:breathe 2.4s ease-in-out infinite;
}
@keyframes breathe{50%{opacity:.18}}
.scan{
  position:absolute;top:1.3rem;bottom:0;width:90px;pointer-events:none;opacity:0;
  left:calc(var(--lbl) - 90px);
  background:linear-gradient(90deg,transparent,rgba(127,227,255,.13));
  border-right:1px solid rgba(127,227,255,.55);
}
.chart-note{display:flex;align-items:center;flex-wrap:wrap;gap:.2rem;margin:.9rem 0 0;font:500 .58rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}
.chart-note .key{width:.6rem;height:.6rem;margin-right:.45rem;border-radius:50%;background:var(--amber);box-shadow:0 0 8px var(--amber)}
@media (min-width:760px){.chart-note .sw{display:none}}

@media (prefers-reduced-motion:no-preference){
  html.js .chart .bar{transform:scaleX(0)}
  html.js .chart .bar-lbl,html.js .chart .pt,html.js .chart .pt-lbl{opacity:0}
  .chart-shell.in .bar{animation:draw .8s cubic-bezier(.22,.75,.3,1) both;animation-delay:calc(var(--i,0) * 60ms + .2s)}
  .chart-shell.in .bar.now{animation:draw .8s cubic-bezier(.22,.75,.3,1) calc(var(--i,0) * 60ms + .2s) both}
  .chart-shell.in .bar-lbl,.chart-shell.in .pt,.chart-shell.in .pt-lbl{animation:fadein .5s ease both;animation-delay:calc(var(--i,0) * 60ms + .6s)}
  .chart-shell.in .scan{animation:scan 7s cubic-bezier(.45,0,.55,1) 1.2s infinite}
  @keyframes draw{from{transform:scaleX(0);opacity:.2}to{transform:scaleX(1);opacity:1}}
  @keyframes fadein{from{opacity:0}to{opacity:1}}
  @keyframes scan{0%{left:calc(var(--lbl) - 90px);opacity:0}6%{opacity:1}88%{opacity:1}100%{left:100%;opacity:0}}
}

/* ── profile ───────────────────────────────────────────── */
.profile{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
@media (max-width:900px){.profile{grid-template-columns:1fr}}
.prose p{margin:0 0 1.1rem;color:var(--soft);font-size:1.02rem;line-height:1.75}
.prose p:last-child{margin-bottom:0}
.prose .lead{font:300 clamp(1.15rem,2.1vw,1.42rem)/1.55 var(--sans);color:var(--text)}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:0}
.stat{
  position:relative;padding:1.1rem 1.05rem 1rem;border:1px solid var(--line-2);border-radius:6px;overflow:hidden;
  background:linear-gradient(160deg,rgba(11,24,34,.75),rgba(4,10,16,.75));
  transform:perspective(700px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transition:transform .6s var(--ease),border-color .35s;
}
.stat:hover{border-color:var(--line-3)}
.stat::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--ice);box-shadow:0 0 10px var(--ice);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.stat:hover::after{transform:scaleX(1)}
.stat.amber::after{background:var(--amber);box-shadow:0 0 10px var(--amber)}
.stat dt{font:300 2.3rem/1 var(--display);letter-spacing:-.05em;color:var(--ice)}
.stat.amber dt{color:var(--amber)}
.stat dd{margin:.65rem 0 0;font-size:.8rem;line-height:1.45;color:var(--soft)}
@media (max-width:420px){.stats{grid-template-columns:1fr}}

/* ── timeline records ──────────────────────────────────── */
.tl{--rail:10.75rem;position:relative}
.tl::before,.tl::after{content:"";position:absolute;left:var(--rail);width:1px;top:.4rem;pointer-events:none}
.tl::before{bottom:.4rem;background:var(--line-2)}
.tl::after{height:calc((100% - .8rem) * var(--fill,0));background:linear-gradient(var(--ice),var(--amber));box-shadow:0 0 10px rgba(127,227,255,.8)}
.rec{position:relative;display:grid;grid-template-columns:9.5rem minmax(0,1fr);column-gap:2.5rem;padding:1.15rem 0}
.rec::before{
  content:"";position:absolute;z-index:1;left:calc(var(--rail) - 4.5px);top:1.5rem;width:9px;height:9px;border-radius:50%;
  background:var(--void);border:1px solid var(--line-3);
  transition:background .5s var(--ease),border-color .5s,box-shadow .5s;
}
.rec.lit::before{background:var(--ice);border-color:var(--ice);box-shadow:0 0 0 4px rgba(127,227,255,.12),0 0 14px var(--ice)}
.rec.lead.lit::before{background:var(--amber);border-color:var(--amber);box-shadow:0 0 0 4px rgba(255,181,71,.14),0 0 16px var(--amber)}
.rec-when{padding-top:.2rem;font:500 .64rem/1.7 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);transition:color .5s}
.rec.lit .rec-when{color:var(--ice)}
.rec.lead.lit .rec-when{color:var(--amber)}
.rec-what{transition:transform .45s var(--ease)}
.rec:hover .rec-what{transform:translateX(6px)}
.rec-what h3{margin:0;font:600 1.01rem/1.42 var(--sans);color:var(--text)}
.rec.lead .rec-what h3{font:400 clamp(1.08rem,1.9vw,1.3rem)/1.3 var(--display);letter-spacing:-.025em}
.tag-now{
  display:inline-block;margin-left:.5rem;padding:.22rem .45rem;vertical-align:.2em;border-radius:3px;
  border:1px solid rgba(255,181,71,.5);background:rgba(255,181,71,.07);
  font:500 .55rem/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--amber);
}
.org{margin:.28rem 0 0;font-size:.9rem;color:var(--soft)}
.det{margin:.5rem 0 0;max-width:58em;font-size:.9rem;color:var(--dim)}
@media (max-width:720px){
  .tl{--rail:.3rem}
  .rec{grid-template-columns:1fr;row-gap:.3rem;padding-left:1.7rem}
  .rec::before{top:1.4rem}
}

/* ── cell grids ────────────────────────────────────────── */
.cells{
  list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:6px;overflow:hidden;
}
.cell:last-child:nth-child(odd){grid-column:1 / -1}
@media (max-width:760px){.cells{grid-template-columns:1fr}}
.cell{position:relative;padding:1rem 1.15rem;background:var(--void);transition:background .35s}
.cell::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--ice);box-shadow:0 0 10px var(--ice);transform:scaleY(0);transform-origin:top;transition:transform .45s var(--ease)}
.cell:hover{background:#06121C}
.cell:hover::before{transform:scaleY(1)}
.cell b{display:block;font-size:.92rem;font-weight:600;line-height:1.45;color:var(--text)}
.cell span{display:block;margin-top:.3rem;font-size:.82rem;line-height:1.5;color:var(--dim)}

/* ── publications ──────────────────────────────────────── */
.pubs{list-style:none;margin:0;padding:0;counter-reset:p;border-top:1px solid var(--line)}
.pubs li{position:relative;display:grid;grid-template-columns:3.4rem minmax(0,1fr);gap:1rem;padding:1.2rem .5rem 1.2rem 0;border-bottom:1px solid var(--line);transition:background .35s}
.pubs li::before{counter-increment:p;content:counter(p,decimal-leading-zero);font:300 1.35rem/1.1 var(--display);letter-spacing:-.04em;color:var(--faint);transition:color .35s,text-shadow .35s}
.pubs li:hover{background:linear-gradient(90deg,rgba(127,227,255,.05),transparent 70%)}
.pubs li:hover::before{color:var(--ice);text-shadow:0 0 16px rgba(127,227,255,.6)}
.pubs .t{display:block;font-size:.98rem;font-weight:600;line-height:1.45;color:var(--text)}
.pubs .v{display:block;margin-top:.3rem;font-size:.86rem;color:var(--dim)}
.pubs .v i{color:var(--soft)}
.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
.chip{padding:.28rem .5rem;border:1px solid var(--line-2);border-radius:3px;font:500 .55rem/1.2 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--soft)}
.chip.main{border-color:rgba(255,181,71,.55);background:rgba(255,181,71,.07);color:var(--amber)}

/* ── field deployment ──────────────────────────────────── */
.sec-field{background:radial-gradient(50rem 30rem at 20% 20%,rgba(255,181,71,.05),transparent 65%)}
.deploy-wrap{margin-bottom:3rem}
.deploy{
  position:relative;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:center;
  padding:clamp(1.4rem,3.5vw,2.5rem);border:1px solid rgba(255,181,71,.35);border-radius:8px;overflow:hidden;
  background:radial-gradient(40rem 22rem at 0% 0%,rgba(255,181,71,.09),transparent 62%),rgba(7,13,19,.78);
  transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .7s var(--ease);
}
.deploy::before{background:radial-gradient(26rem circle at var(--gx,50%) var(--gy,50%),rgba(255,181,71,.1),transparent 45%)}
.deploy .tag{display:flex;align-items:center;gap:.65rem;margin:0;font:500 .6rem/1.5 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber)}
.deploy h3{margin:.8rem 0 0;font:300 clamp(1.9rem,4.4vw,3.2rem)/1.04 var(--display);letter-spacing:-.045em;color:var(--text)}
.deploy-text > p:not(.tag){margin:1rem 0 0;max-width:44em;color:var(--soft);line-height:1.7}
.facts{display:flex;flex-wrap:wrap;margin:1.7rem 0 0;border-top:1px solid rgba(255,181,71,.22)}
.facts div{padding:.95rem 1.6rem 0 0;margin-right:1.6rem;border-right:1px solid rgba(255,181,71,.22)}
.facts div:last-child{border-right:0;margin-right:0}
.facts dt{font:500 .56rem var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim)}
.facts dd{margin:.35rem 0 0;font:300 1.55rem/1 var(--display);letter-spacing:-.04em;color:var(--amber)}
.radar{position:relative;justify-self:center;width:100%;max-width:300px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,181,71,.34);background:radial-gradient(circle,rgba(255,181,71,.08),transparent 70%)}
.radar .ring{position:absolute;inset:var(--i);border-radius:50%;border:1px solid rgba(255,181,71,.16)}
.radar .ax{position:absolute;background:rgba(255,181,71,.16)}
.radar .ax.x{left:0;right:0;top:50%;height:1px}
.radar .ax.y{top:0;bottom:0;left:50%;width:1px}
.radar .sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 0deg 285deg,rgba(255,181,71,.38) 360deg);animation:spin 4.2s linear infinite}
.radar .blip{position:absolute;left:61%;top:37%;width:9px;height:9px;margin:-4.5px;border-radius:50%;background:var(--amber);box-shadow:0 0 14px var(--amber)}
.radar .blip::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--amber);animation:ping 2.1s var(--ease) infinite}
.radar-lbl{position:absolute;left:50%;bottom:-1.9rem;translate:-50% 0;white-space:nowrap;font:500 .58rem var(--mono);letter-spacing:.16em;color:var(--dim)}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:860px){.deploy{grid-template-columns:1fr}.radar{max-width:220px;margin-bottom:1.6rem}}

/* ── competencies marquee ──────────────────────────────── */
.marquee{
  overflow:hidden;padding-block:.2rem;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.m-row{display:flex;width:max-content;animation:marq 48s linear infinite}
.m-row.rev{margin-top:.6rem;animation-duration:56s;animation-direction:reverse}
.marquee:hover .m-row{animation-play-state:paused}
.m-row ul{display:flex;gap:.6rem;list-style:none;margin:0;padding:0 .6rem 0 0}
.m-row li{
  padding:.7rem 1.05rem;border:1px solid var(--line-2);border-radius:100px;background:rgba(127,227,255,.03);white-space:nowrap;
  font:500 .64rem/1 var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--soft);
  transition:border-color .3s,color .3s,background .3s;
}
.m-row li:nth-child(3n){border-color:rgba(255,181,71,.38);color:#F2CE98}
.m-row li:hover{border-color:var(--ice);color:var(--text);background:rgba(127,227,255,.08)}
@keyframes marq{to{translate:-50% 0}}

/* ── footer ────────────────────────────────────────────── */
.foot{position:relative;overflow:hidden;padding-block:clamp(4.5rem,9vw,7.5rem) 2rem;border-top:1px solid var(--line)}
.foot::before{content:"";position:absolute;left:50%;top:0;width:70rem;height:30rem;translate:-50% -55%;pointer-events:none;background:radial-gradient(closest-side,rgba(127,227,255,.1),transparent)}
.foot h2{margin:1rem 0 0;max-width:16em;font:300 clamp(2rem,5.6vw,4.3rem)/1.04 var(--display);letter-spacing:-.05em;color:var(--text)}
.foot h2 em{font-style:normal;color:var(--ice);text-shadow:0 0 30px rgba(127,227,255,.35)}
.foot-lead{margin:1.3rem 0 0;max-width:40em;color:var(--soft)}
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.7rem;margin-top:2.8rem}
.ct{
  position:relative;display:block;padding:1.1rem 2.6rem 1.1rem 1.15rem;border:1px solid var(--line-2);border-radius:6px;
  background:rgba(8,17,26,.55);text-decoration:none;
  transition:border-color .3s,background .3s,transform .45s var(--ease),box-shadow .3s;
}
a.ct:hover{border-color:var(--ice);background:rgba(127,227,255,.06);transform:translateY(-3px);box-shadow:0 14px 30px -18px rgba(127,227,255,.6)}
.ct .k{display:block;font:500 .58rem var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.ct .v{display:block;margin-top:.4rem;font-size:.93rem;color:var(--text);word-break:break-word}
.ct .arr{position:absolute;right:1rem;top:1rem;color:var(--ice);transition:transform .4s var(--ease)}
a.ct:hover .arr{transform:translate(3px,-3px)}
.ct-cv{border-color:rgba(255,181,71,.4)}
.ct-cv .arr{color:var(--amber)}
a.ct-cv:hover{border-color:var(--amber);background:rgba(255,181,71,.06);box-shadow:0 14px 30px -18px rgba(255,181,71,.6)}
a.ct-cv:hover .arr{transform:translateY(3px)}
.eor{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:4.5rem;padding-top:1.4rem;border-top:1px solid var(--line);
  font:500 .6rem var(--mono);letter-spacing:.15em;text-transform:uppercase;color:var(--dim);
}
.to-top{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;transition:color .3s}
.to-top:hover{color:var(--ice)}
.caret{display:inline-block;width:.55em;height:1em;background:var(--ice);animation:blink 1s steps(1) infinite}

/* ── reduced motion ────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  html.js [data-reveal]:not([data-stagger]),html.js [data-stagger] > *{opacity:1}
  .m-row{animation:none!important;flex-wrap:wrap;width:auto}
  .m-row ul{flex-wrap:wrap;padding-inline:var(--gut)}
  .m-row .dup,.dup-row{display:none}
  .marquee{-webkit-mask-image:none;mask-image:none}
  .radar .sweep{display:none}
}

/* ================================================================
   PRINT — this stylesheet is what cv.pdf is rendered from.
   ================================================================ */
@media print{
  @page{size:A4;margin:14mm 13mm}
  :root{--gut:0}
  html{font-size:9.4pt;background:#fff}
  body{background:#fff;color:#111}
  body::before,body::after,.skip,.boot,.progress,.hud,.cur-dot,.cur-ring,.tip,.nav,canvas,.chart-sec,
  .actions,.scroll-cue,.mon-head,.ecg-box,.mon-read,.status,.radar,.ct-cv,.eor,.dup,.dup-row,.sec-code i{display:none!important}

  body *{
    color:#111!important;background:transparent!important;box-shadow:none!important;text-shadow:none!important;
    -webkit-text-fill-color:currentColor!important;border-color:#ccc!important;
    animation:none!important;transition:none!important;opacity:1!important;translate:none!important;transform:none!important;
    filter:none!important;backdrop-filter:none!important;
  }
  .rec-when,.org,.det,.cell span,.pubs .v,.sec-code,.sec-code .n,.sec-head p:not(.sec-code),.kicker,.creds li,.mon-dl dt,
  .mon-dl dd small,.stat dd,.facts dt,.chip,.ct .k,.foot-lead,.grp{color:#444!important}

  .hero{min-height:0;display:block;padding:0 0 10pt;border-bottom:1.5pt solid #000}
  .hero-grid{grid-template-columns:1.35fr 1fr;gap:16pt;align-items:start}
  .kicker{margin-top:0}
  h1{font-size:24pt;letter-spacing:-.03em}
  .creds{margin-top:8pt}
  .creds li{padding:2pt 5pt}
  .thesis{font-size:10pt;color:#222!important}
  .thesis em{font-weight:500}
  .monitor{padding:0;border:0}
  .monitor::after{display:none}
  .mon-dl{margin:0;border-top:1.5pt solid #000}

  .sec{padding-block:12pt}
  .sec::before{display:none}
  .sec-head{margin-bottom:9pt;padding-bottom:5pt;border-bottom:1.5pt solid #000;break-inside:avoid;break-after:avoid}
  .sec-head h2{font-size:14pt}
  .grp{margin:12pt 0 5pt;break-after:avoid}
  .grp::before,.grp::after{display:none}
  p,li{orphans:2;widows:2}

  .profile{grid-template-columns:1.5fr 1fr;gap:16pt}
  .prose .lead{font-size:11pt}
  .stats{grid-template-columns:1fr 1fr;gap:5pt}
  .stat{padding:6pt;break-inside:avoid}
  .stat::after{display:none}
  .stat dt{font-size:16pt}

  .tl::before,.tl::after,.rec::before{display:none}
  .rec{grid-template-columns:78pt 1fr;column-gap:12pt;padding:6pt 0;border-bottom:1px solid #ddd;break-inside:avoid}
  .rec.lead{border-left:2pt solid #000;padding-left:8pt}
  .rec.lead .rec-what h3{font-size:11pt}
  .tag-now{border-color:#000!important}

  .cells{gap:0;border:0;border-top:1px solid #ddd;border-radius:0}
  .cell{padding:5pt 8pt 5pt 0;border-bottom:1px solid #ddd;break-inside:avoid}
  .cell::before{display:none}

  .pubs li{padding:6pt 0;break-inside:avoid;grid-template-columns:24pt 1fr}
  .pubs li::before{font-size:10pt}

  .deploy-wrap{margin-bottom:10pt}
  .deploy{display:block;padding:9pt 10pt;border:1pt solid #999;border-left:2.5pt solid #000;break-inside:avoid}
  .deploy::before{display:none}
  .deploy h3{font-size:17pt}
  .facts{border-top-color:#ccc!important}

  .marquee{-webkit-mask-image:none;mask-image:none;padding-inline:0}
  .m-row{width:auto}
  .m-row ul{flex-wrap:wrap;gap:4pt;padding:0}
  .m-row li{padding:3pt 6pt;border-color:#999!important}

  .foot{padding:12pt 0 0;border-top:1.5pt solid #000}
  .foot::before{display:none}
  .foot h2{font-size:15pt}
  .contact{grid-template-columns:repeat(2,1fr);gap:5pt;margin-top:8pt}
  .ct{padding:5pt 7pt}
  .ct .arr{display:none}
  a{text-decoration:none}
}
