
:root{
  --accent-rgb:20,125,146;
  --glow:rgba(20,125,146,.28);
  --grid:rgba(20,125,146,.08);
  --primary:#102a43;
  --primary-2:#243b53;
  --accent:#147d92;
  --accent-soft:#e8f4f6;
  --background:#ffffff;
  --surface:#f6f8fa;
  --surface-2:#eef2f5;
  --text:#17202a;
  --muted:#5f6c78;
  --border:#d9e1e8;
  --white:#ffffff;
  --shadow:0 12px 32px rgba(16,42,67,.08);
  --radius:14px;
  --radius-sm:9px;
  --container:1160px;
  --space-xs:.4rem;
  --space-sm:.75rem;
  --space-md:1.15rem;
  --space-lg:2rem;
  --space-xl:4rem;
  --space-2xl:6rem;
  --transition:220ms ease;
}
[data-theme="violet"]{--accent:#8b5cf6;--accent-rgb:139,92,246;--accent-soft:#f0ebff;--glow:rgba(139,92,246,.28);--grid:rgba(139,92,246,.08)}
[data-theme="magenta"]{--accent:#ec4899;--accent-rgb:236,72,153;--accent-soft:#fff0f7;--glow:rgba(236,72,153,.25);--grid:rgba(236,72,153,.08)}
[data-theme="lime"]{--accent:#84cc16;--accent-rgb:132,204,22;--accent-soft:#f3fbdc;--glow:rgba(132,204,22,.25);--grid:rgba(132,204,22,.07)}
[data-theme="orange"]{--accent:#f97316;--accent-rgb:249,115,22;--accent-soft:#fff1e8;--glow:rgba(249,115,22,.25);--grid:rgba(249,115,22,.08)}
[data-theme="red"]{--accent:#ef4444;--accent-rgb:239,68,68;--accent-soft:#fff0f0;--glow:rgba(239,68,68,.25);--grid:rgba(239,68,68,.07)}
[data-theme="cyan"]{--accent:#06b6d4;--accent-rgb:6,182,212;--accent-soft:#e7fbff;--glow:rgba(6,182,212,.28);--grid:rgba(6,182,212,.08)}
html{scroll-behavior:smooth}
*{box-sizing:border-box}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:var(--background);
  line-height:1.7;
}
body.dark{
  --primary:#dbeafe;
  --primary-2:#c8d7e8;
  --accent:#66c7d7;
  --accent-soft:#17383f;
  --background:#0c141c;
  --surface:#111d27;
  --surface-2:#172631;
  --text:#edf3f8;
  --muted:#aebdca;
  --border:#2b3b47;
  --shadow:0 14px 36px rgba(0,0,0,.25);
  --white:#0c141c;
}
body, .site-header, .card, .timeline-item, .publication, .skill-group, .contact-card{
  transition:background var(--transition),color var(--transition),border-color var(--transition);
}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
button,a{outline-offset:3px}
a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 2.5rem));margin-inline:auto}
.skip-link{
  position:absolute;left:1rem;top:-4rem;background:var(--primary);color:var(--white);
  padding:.65rem 1rem;border-radius:0 0 var(--radius-sm) var(--radius-sm);z-index:1000
}
.skip-link:focus{top:0}
.site-header{
  position:sticky;top:0;z-index:100;
  background:color-mix(in srgb,var(--background) 94%,transparent);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
}
.nav-wrap{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.75rem;color:var(--primary);font-weight:700;text-decoration:none}
.brand:hover{text-decoration:none}
.brand-mark{
  display:grid;place-items:center;width:40px;height:40px;border-radius:10px;
  background:var(--primary);color:var(--white);font-size:.78rem;letter-spacing:.05em
}
.brand-name{font-size:.95rem}
.site-nav{display:flex;align-items:center;gap:1.05rem}
.site-nav a{color:var(--text);font-size:.82rem;font-weight:600}
.site-nav a:hover{color:var(--accent);text-decoration:none}
.menu-toggle{
  display:none;border:1px solid var(--border);background:var(--background);color:var(--text);
  width:42px;height:42px;border-radius:9px;cursor:pointer
}
.menu-toggle span{display:block;width:18px;height:2px;background:currentColor;margin:4px auto}
.theme-toggle{
  border:1px solid var(--border);background:var(--background);color:var(--text);
  width:36px;height:36px;border-radius:9px;cursor:pointer;font-size:1rem
}
.hero{
  padding:clamp(4rem,8vw,7rem) 0 var(--space-2xl);
  background:linear-gradient(180deg,var(--surface),var(--background));
}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.eyebrow{
  margin:0 0 .7rem;color:var(--accent);font-size:.76rem;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase
}
h1,h2,h3{line-height:1.2;color:var(--primary);margin-top:0}
h1{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(2.8rem,6vw,5.4rem);letter-spacing:-.04em;margin-bottom:1.1rem}
h2{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.025em}
h3{font-size:1.15rem}
.lead{font-size:clamp(1.05rem,1.8vw,1.25rem);color:var(--muted);max-width:700px}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.7rem}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
  padding:.78rem 1.1rem;border-radius:9px;border:1px solid var(--primary);
  background:var(--primary);color:var(--white);font-weight:700;font-size:.88rem;
  transition:transform var(--transition),background var(--transition),border-color var(--transition)
}
.btn:hover{text-decoration:none;transform:translateY(-1px)}
.btn.secondary{background:transparent;color:var(--primary);border-color:var(--border)}
.btn.secondary:hover{border-color:var(--accent);color:var(--accent)}
.profile-wrap{display:flex;justify-content:center}
.profile-photo{
  width:min(340px,80vw);aspect-ratio:1/1;object-fit:cover;border-radius:24px;
  border:1px solid var(--border);box-shadow:var(--shadow);background:var(--surface-2)
}
.photo-placeholder{
  width:min(340px,80vw);aspect-ratio:1/1;border-radius:24px;border:1px dashed var(--border);
  display:grid;place-items:center;background:var(--surface-2);color:var(--muted);text-align:center;padding:2rem
}
.section{padding:var(--space-2xl) 0}
.section.compact{padding:var(--space-xl) 0}
.section.alt{background:var(--surface)}
.section-heading{max-width:760px;margin-bottom:2.2rem}
.section-heading p{color:var(--muted)}
.overview-grid,.cards-grid,.skills-grid,.contact-grid{display:grid;gap:1rem}
.overview-grid{grid-template-columns:repeat(4,1fr)}
.cards-grid{grid-template-columns:repeat(2,1fr)}
.skills-grid{grid-template-columns:repeat(2,1fr)}
.contact-grid{grid-template-columns:repeat(3,1fr)}
.card,.skill-group,.contact-card{
  background:var(--background);border:1px solid var(--border);border-radius:var(--radius);padding:1.35rem;
}
.card:hover{box-shadow:var(--shadow)}
.card .label{font-size:.73rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:700}
.card p,.skill-group p,.contact-card p{color:var(--muted)}
.tag-list{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}
.tag{
  display:inline-flex;padding:.32rem .6rem;border-radius:999px;background:var(--accent-soft);
  color:var(--accent);font-size:.75rem;font-weight:600
}
.timeline{position:relative;max-width:900px}
.timeline:before{content:"";position:absolute;left:10px;top:0;bottom:0;width:1px;background:var(--border)}
.timeline-item{position:relative;padding:0 0 2.2rem 2.5rem}
.timeline-item:before{
  content:"";position:absolute;left:4px;top:.35rem;width:13px;height:13px;border-radius:50%;
  background:var(--accent);box-shadow:0 0 0 5px var(--accent-soft)
}
.timeline-date{font-size:.78rem;color:var(--accent);font-weight:700;letter-spacing:.04em}
.timeline-item h3{margin:.35rem 0 .15rem}
.meta{color:var(--muted);font-size:.88rem}
.publication{
  border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;background:var(--background)
}
.publication + .publication{margin-top:1rem}
.pub-meta{display:flex;gap:.55rem;flex-wrap:wrap;color:var(--muted);font-size:.8rem}
.pub-title{font-family:"Source Serif 4",Georgia,serif;font-size:1.4rem;color:var(--primary);margin:.6rem 0}
.pub-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.link-arrow{font-weight:700;font-size:.84rem}
.page-hero{padding:4.5rem 0 3rem;background:var(--surface);border-bottom:1px solid var(--border)}
.page-hero h1{font-size:clamp(2.4rem,5vw,4.4rem);margin-bottom:.5rem}
.breadcrumb{font-size:.78rem;color:var(--muted);margin-bottom:1rem}
.breadcrumb a{color:var(--muted)}
.profile-list{display:grid;gap:.6rem}
.profile-list a{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--border)}
.footer-grid{display:flex;justify-content:space-between;gap:2rem;padding:2.5rem 0}
.site-footer{border-top:1px solid var(--border);background:var(--surface)}
.footer-name{font-weight:700;color:var(--primary)}
.footer-links{display:flex;gap:1rem;flex-wrap:wrap}
.footer-links a{font-size:.82rem}
.footer-bottom{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-top:1px solid var(--border);font-size:.76rem;color:var(--muted)}
.cv-frame{width:100%;height:900px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
.note{padding:1rem 1.1rem;background:var(--accent-soft);border-left:3px solid var(--accent);color:var(--text);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.small{font-size:.82rem;color:var(--muted)}
.reveal{opacity:0;transform:translateY(12px);transition:opacity 400ms ease,transform 400ms ease}
.reveal.visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}


/* Refined personal-brand layer */
.hero-home{padding-top:clamp(5rem,10vw,8rem);padding-bottom:clamp(4rem,8vw,7rem);background:radial-gradient(circle at 80% 20%,var(--accent-soft),transparent 34%),linear-gradient(135deg,var(--surface),var(--background) 65%)}
.hero-copy{max-width:800px}.hero-copy h1{max-width:850px}.hero-copy h1 em{font-style:normal;color:var(--accent)}
.hero-meta{display:flex;flex-wrap:wrap;gap:.45rem 1rem;margin-top:2rem;color:var(--muted);font-size:.78rem;font-weight:600}.hero-meta span{display:inline-flex;align-items:center;gap:.45rem}.hero-meta span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}
.hero-panel{max-width:390px;width:100%;justify-self:end;border:1px solid var(--border);background:color-mix(in srgb,var(--background) 82%,var(--surface));box-shadow:var(--shadow);border-radius:18px;overflow:hidden}
.profile-placeholder{aspect-ratio:4/5;display:grid;place-items:center;text-align:center;padding:2rem;background:linear-gradient(145deg,var(--surface-2),var(--background));color:var(--muted)}
.profile-initials{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--border);background:var(--accent-soft);color:var(--accent);font-family:"Source Serif 4",Georgia,serif;font-size:2rem;font-weight:600;margin:auto auto 1rem}
.profile-placeholder p{margin:0;font-size:.82rem}.profile-placeholder strong{color:var(--text)}
.hero-panel-bottom{display:flex;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-top:1px solid var(--border);align-items:center}.hero-panel-bottom div{display:grid;gap:.15rem}.hero-panel-bottom strong{font-size:.8rem}.hero-panel-bottom a{font-weight:800;white-space:nowrap}.kicker{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:700}
.intro-strip{padding-bottom:2rem}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,7vw,7rem);align-items:end}.intro-grid .section-heading{margin-bottom:0}.intro-copy{font-size:1.05rem;color:var(--muted);max-width:650px;margin:0}
.identity-card{min-height:230px;border-top:2px solid var(--border);padding:1.25rem .25rem 0}.identity-card.featured{border-top-color:var(--accent)}.identity-card h3{font-size:1.28rem;margin:.65rem 0 .55rem}.identity-card p{color:var(--muted);max-width:300px}.identity-card .label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:800}
.research-bridge{background:var(--primary);color:var(--white)}.research-bridge h2,.research-bridge .eyebrow{color:var(--white)}.research-bridge .section-heading p:not(.eyebrow){color:color-mix(in srgb,var(--white) 70%,transparent)}.research-bridge .link-arrow{color:var(--accent)}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,8rem);align-items:center}.split-feature .section-heading{margin-bottom:0}.research-index{border-left:1px solid color-mix(in srgb,var(--white) 22%,transparent)}.research-index div{display:grid;grid-template-columns:60px 1fr;gap:1rem;padding:1rem 0 1rem 1.5rem;border-bottom:1px solid color-mix(in srgb,var(--white) 15%,transparent)}.research-index span{font-size:.7rem;color:var(--accent);font-weight:800;letter-spacing:.08em}.research-index strong{font-size:1rem;color:var(--white)}
body.dark .research-bridge{background:#101b24}.body.dark .hero-panel{}
@media(max-width:900px){.hero-grid,.split-feature,.intro-grid{grid-template-columns:1fr}.hero-panel{justify-self:start;max-width:360px}.overview-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.overview-grid{grid-template-columns:1fr}.identity-card{min-height:auto;padding-bottom:1.2rem}.hero-meta{gap:.5rem .8rem}.research-index{border-left:0;border-top:1px solid color-mix(in srgb,var(--white) 22%,transparent)}}
.site-nav a[aria-current="page"]{color:var(--accent);position:relative}
.site-nav a[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:-.65rem;height:2px;background:var(--accent);border-radius:2px}


/* Sci-fi editorial layer: restrained futuristic details without turning the site into a game UI. */
body{background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:42px 42px;background-position:center top;}
.site-header{box-shadow:0 1px 0 rgba(var(--accent-rgb),.10),0 8px 30px rgba(0,0,0,.04)}
.brand-mark{border-radius:6px;box-shadow:0 0 0 1px rgba(var(--accent-rgb),.35),0 0 24px var(--glow);position:relative;overflow:hidden}
.brand-mark::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.28) 50%,transparent 80%);transform:translateX(-120%);animation:brandSweep 5s infinite}
@keyframes brandSweep{55%,100%{transform:translateX(120%)}}
.hero,.hero-home{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 18%,rgba(var(--accent-rgb),.14),transparent 28%),linear-gradient(180deg,var(--surface),var(--background))}
.hero::before,.hero-home::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 49%,rgba(var(--accent-rgb),.035) 50%,transparent 51%);background-size:100% 8px;opacity:.55}
.hero-copy,.hero-grid,.section>.container{position:relative;z-index:1}
.eyebrow{font-family:"IBM Plex Mono",ui-monospace,monospace;letter-spacing:.16em}
h1,h2,.pub-title{ text-wrap:balance}
h1{ text-shadow:0 0 28px rgba(var(--accent-rgb),.08)}
.btn{box-shadow:0 0 0 1px rgba(var(--accent-rgb),.18),0 8px 24px rgba(var(--accent-rgb),.10)}
.btn:hover{box-shadow:0 0 0 1px rgba(var(--accent-rgb),.35),0 0 24px var(--glow)}
.card,.publication,.skill-group,.contact-card,.hero-panel{position:relative;overflow:hidden}
.card::before,.publication::before,.skill-group::before,.contact-card::before{content:"";position:absolute;top:0;left:0;width:34px;height:2px;background:var(--accent);box-shadow:0 0 12px var(--glow)}
.timeline-item:before{box-shadow:0 0 0 5px var(--accent-soft),0 0 18px var(--glow)}
.profile-placeholder,.photo-placeholder{background:radial-gradient(circle at 50% 40%,rgba(var(--accent-rgb),.12),transparent 42%),linear-gradient(145deg,var(--surface-2),var(--background))}
.profile-initials{box-shadow:0 0 28px var(--glow)}
.page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 10%,rgba(var(--accent-rgb),.12),transparent 30%),var(--surface)}
.page-hero::after{content:"// SYSTEM / PROFILE";position:absolute;right:max(1.25rem,calc((100vw - var(--container))/2));bottom:1rem;font:600 .62rem/1 "IBM Plex Mono",monospace;letter-spacing:.12em;color:var(--accent);opacity:.6}
.theme-controls{display:flex;align-items:center;gap:.45rem}
.palette-toggle{width:36px;height:36px;border:1px solid var(--border);background:var(--background);color:var(--text);border-radius:9px;cursor:pointer;display:grid;place-items:center}
.palette-toggle::before{content:"";width:14px;height:14px;border-radius:50%;background:conic-gradient(#06b6d4 0 16%,#8b5cf6 16% 33%,#ec4899 33% 50%,#84cc16 50% 67%,#f97316 67% 84%,#ef4444 84%);box-shadow:0 0 10px var(--glow)}
.palette-menu{position:absolute;right:0;top:calc(100% + .65rem);width:220px;padding:.7rem;background:var(--background);border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.18);display:none;z-index:200}
.palette-menu.open{display:block}.palette-label{font:700 .68rem/1 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:.25rem .35rem .65rem}
.palette-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem}.palette-option{display:flex;align-items:center;gap:.5rem;border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.55rem .6rem;border-radius:8px;font-size:.72rem;font-weight:700;cursor:pointer}.palette-option:hover,.palette-option[aria-pressed="true"]{border-color:var(--accent);color:var(--accent)}.swatch{width:12px;height:12px;border-radius:50%;flex:0 0 auto}.swatch.cyan{background:#06b6d4}.swatch.violet{background:#8b5cf6}.swatch.magenta{background:#ec4899}.swatch.lime{background:#84cc16}.swatch.orange{background:#f97316}.swatch.red{background:#ef4444}.swatch.black{background:#09090b}
body.dark[data-theme="cyan"]{--accent:#06b6d4;--accent-rgb:6,182,212;--accent-soft:#102f36;--glow:rgba(6,182,212,.30);--grid:rgba(6,182,212,.08)}
body.dark[data-theme="violet"]{--accent:#8b5cf6;--accent-rgb:139,92,246;--accent-soft:#21183b;--glow:rgba(139,92,246,.30);--grid:rgba(139,92,246,.08)}
body.dark[data-theme="magenta"]{--accent:#ec4899;--accent-rgb:236,72,153;--accent-soft:#351827;--glow:rgba(236,72,153,.30);--grid:rgba(236,72,153,.08)}
body.dark[data-theme="lime"]{--accent:#84cc16;--accent-rgb:132,204,22;--accent-soft:#202d10;--glow:rgba(132,204,22,.30);--grid:rgba(132,204,22,.07)}
body.dark[data-theme="orange"]{--accent:#f97316;--accent-rgb:249,115,22;--accent-soft:#352015;--glow:rgba(249,115,22,.30);--grid:rgba(249,115,22,.08)}
body.dark[data-theme="red"]{--accent:#ef4444;--accent-rgb:239,68,68;--accent-soft:#351818;--glow:rgba(239,68,68,.30);--grid:rgba(239,68,68,.07)}
body[data-theme="black"]{--accent:#111111;--accent-rgb:17,17,17;--accent-soft:#eeeeee;--glow:rgba(17,17,17,.2);--grid:rgba(17,17,17,.06)}body.dark[data-theme="black"]{--accent:#f4f4f5;--accent-rgb:244,244,245;--accent-soft:#202024;--grid:rgba(244,244,245,.06)}
@media(max-width:900px){.page-hero::after{display:none}}
@media(prefers-reduced-motion:reduce){.brand-mark::after{animation:none}}

/* =========================================================
   ULTRA PREMIUM / FUTURISTIC RESEARCH INTERFACE
   ========================================================= */
:root{--black:#050607;--ink:#071018;--metal:#8fa4b4;--hairline:rgba(255,255,255,.10)}
body{overflow-x:hidden}
.hero-ultra{min-height:calc(100vh - 74px);display:grid;align-items:center;padding:clamp(4rem,8vw,7rem) 0;isolation:isolate;background:radial-gradient(circle at 75% 40%,rgba(var(--accent-rgb),.14),transparent 24%),radial-gradient(circle at 10% 90%,rgba(var(--accent-rgb),.07),transparent 26%),linear-gradient(180deg,var(--surface),var(--background))}
.hero-ultra::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 49.9%,rgba(var(--accent-rgb),.07) 50%,transparent 50.1%);background-size:120px 100%;opacity:.3;pointer-events:none}
.hero-ultra-grid{position:relative;z-index:2}
.terminal-line{display:flex;align-items:center;gap:.55rem;font:600 .65rem/1 "IBM Plex Mono",monospace;letter-spacing:.1em;color:var(--muted);margin-bottom:1.4rem}
.terminal-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}
.terminal-status{margin-left:.25rem;color:var(--accent)}
.hero-ultra h1{font-family:Inter,system-ui,sans-serif;font-weight:700;letter-spacing:-.055em;max-width:820px;text-shadow:0 0 45px rgba(var(--accent-rgb),.12)}
.hero-ultra .lead{max-width:720px}
.hero-meta{display:flex;flex-wrap:wrap;gap:.55rem 1.1rem;margin-top:1.6rem;font:600 .62rem/1.3 "IBM Plex Mono",monospace;letter-spacing:.08em;color:var(--muted)}
.hero-meta span{padding:.4rem .55rem;border-left:1px solid var(--accent);background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}
.profile-wrap{perspective:1200px}
.profile-hud{position:relative;width:min(390px,82vw);aspect-ratio:1/1.12;padding:20px;transform:rotateY(-5deg) rotateX(2deg);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.profile-hud:hover{transform:rotateY(0) rotateX(0) translateY(-4px)}
.profile-hud .photo-placeholder{width:100%;height:100%;border-radius:4px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));background:linear-gradient(145deg,var(--surface-2),var(--background));box-shadow:inset 0 0 80px rgba(var(--accent-rgb),.08),0 20px 80px rgba(0,0,0,.16)}
.profile-hud .profile-photo-img{width:100%;height:100%;display:block;object-fit:cover;object-position:center top;border-radius:4px;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--border));background:#000;box-shadow:inset 0 0 80px rgba(var(--accent-rgb),.08),0 20px 80px rgba(0,0,0,.16);filter:saturate(.92) contrast(1.03);}
.pdf-frame{border:1px solid var(--border);background:var(--surface-2);padding:.5rem;box-shadow:0 18px 60px rgba(0,0,0,.12);}
.pdf-frame iframe{display:block;width:100%;height:min(78vh,980px);border:0;background:#fff;}
.profile-hud .photo-placeholder strong{font:700 .72rem/1 "IBM Plex Mono",monospace;letter-spacing:.16em;color:var(--accent)}
.hud-corner{position:absolute;width:32px;height:32px;border-color:var(--accent);z-index:3;filter:drop-shadow(0 0 6px var(--glow))}.hud-corner.tl{top:0;left:0;border-top:2px solid;border-left:2px solid}.hud-corner.tr{top:0;right:0;border-top:2px solid;border-right:2px solid}.hud-corner.bl{bottom:0;left:0;border-bottom:2px solid;border-left:2px solid}.hud-corner.br{bottom:0;right:0;border-bottom:2px solid;border-right:2px solid}
.hud-label{position:absolute;z-index:4;font:700 .57rem/1 "IBM Plex Mono",monospace;letter-spacing:.12em;color:var(--accent);background:var(--background);padding:.35rem .5rem;border:1px solid var(--border)}.label-top{top:7px;left:28px}.label-bottom{bottom:7px;right:28px}
.scan-line{position:absolute;left:20px;right:20px;top:28%;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 15px var(--accent);opacity:.35;animation:scan 5s ease-in-out infinite;z-index:4}@keyframes scan{0%,100%{top:18%;opacity:0}.30%{opacity:.45}.55%{top:82%;opacity:.2}.70%{opacity:0}}
.hero-orbit{position:absolute;border:1px solid rgba(var(--accent-rgb),.12);border-radius:50%;pointer-events:none}.orbit-one{width:520px;height:520px;right:-150px;top:8%;box-shadow:0 0 100px rgba(var(--accent-rgb),.06)}.orbit-two{width:780px;height:780px;right:-280px;top:-8%;border-style:dashed;opacity:.35;animation:spin 40s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.research-bridge{position:relative;overflow:hidden;background:#080b0e;color:#eaf5f8}.research-bridge h2,.research-bridge .eyebrow{color:#fff}.research-bridge .section-heading p:not(.eyebrow){color:#9eb0bb}.research-index{border-left:1px solid rgba(255,255,255,.14)}.research-index div{transition:transform .25s ease,padding-left .25s ease;background:linear-gradient(90deg,transparent,rgba(var(--accent-rgb),.04));}.research-index div:hover{transform:translateX(8px);padding-left:2rem;background:linear-gradient(90deg,rgba(var(--accent-rgb),.10),transparent)}
.focus-section{background:var(--surface)}.focus-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,8vw,8rem);align-items:center}.focus-copy{max-width:700px}.focus-console{border:1px solid var(--border);background:var(--background);box-shadow:0 25px 70px rgba(0,0,0,.10);font-family:"IBM Plex Mono",monospace}.console-head{display:flex;justify-content:space-between;padding:.8rem 1rem;border-bottom:1px solid var(--border);font-size:.62rem;letter-spacing:.1em;color:var(--accent)}.console-row{display:grid;grid-template-columns:32px 1fr auto;gap:.8rem;align-items:center;padding:1rem;border-bottom:1px solid var(--border);font-size:.68rem}.console-row:last-child{border-bottom:0}.console-row span{color:var(--muted)}.console-row strong{color:var(--text);letter-spacing:.05em}.console-row em{font-style:normal;color:var(--accent);font-size:.58rem}
body.dark{--background:#050607;--surface:#090c0f;--surface-2:#0e1317;--text:#eef6f8;--muted:#9aaeb9;--border:#25323a;--primary:#f2f8fa;--primary-2:#c7d5dc;--shadow:0 20px 70px rgba(0,0,0,.38)}
body[data-theme="black"]{--accent:#111;--accent-rgb:17,17,17;--accent-soft:#eee;--glow:rgba(17,17,17,.20);--grid:rgba(17,17,17,.05)}body.dark[data-theme="black"]{--accent:#fff;--accent-rgb:255,255,255;--accent-soft:#17191b;--glow:rgba(255,255,255,.2);--grid:rgba(255,255,255,.06)}
body.dark .research-bridge{background:#000}.body.dark .research-bridge{}
@media(max-width:900px){.focus-grid{grid-template-columns:1fr}.profile-hud{justify-self:start}.hero-ultra{min-height:auto}.orbit-one{right:-280px}.orbit-two{right:-420px}.hero-ultra-grid{gap:2rem}}
@media(max-width:560px){.terminal-line{flex-wrap:wrap}.hero-meta{display:grid;grid-template-columns:1fr}.profile-hud{width:280px}.hero-ultra h1{font-size:clamp(2.7rem,14vw,4.2rem)}.research-index{border-left:0;border-top:1px solid rgba(255,255,255,.14);margin-top:1rem}.research-index div{padding-left:0}.research-index div:hover{padding-left:.5rem}}
@media(prefers-reduced-motion:reduce){.orbit-two,.scan-line{animation:none}.profile-hud,.research-index div{transition:none}}
