:root { --ink:#102744; --muted:#526577; --paper:#f4f7f8; --line:#cdd8df; --blue:#0b5ca9; --bright:#dbeeff; --serif:"Noto Serif SC", Georgia, serif; --sans:"DM Sans", "PingFang SC", sans-serif; --mono:"DM Mono", monospace; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:var(--sans); font-size:16px; line-height:1.7; }
a { color:inherit; text-decoration:none; }
.site-header { display:flex; justify-content:space-between; align-items:center; height:76px; max-width:1200px; margin:0 auto; padding:0 32px; border-bottom:1px solid var(--line); }
.brand { font-size:1.35rem; font-weight:700; letter-spacing:-.06em; }.brand span { color:var(--blue); }
nav { display:flex; gap:24px; font-size:.9rem; } nav a:hover { color:var(--blue); }
main { max-width:1200px; margin:0 auto; padding:0 32px; }
.hero { min-height:650px; display:grid; grid-template-columns:1.14fr .86fr; align-items:center; gap:72px; padding:82px 0 76px; border-bottom:1px solid var(--line); }
.eyebrow,.card-kicker { margin:0 0 16px; color:var(--blue); font:500 .73rem/1.2 var(--mono); letter-spacing:.13em; }
h1,h2,h3,p { margin-top:0; } h1 { margin-bottom:22px; font:600 clamp(3.1rem,7vw,6.2rem)/.95 var(--sans); letter-spacing:-.065em; } h1 span { font-family:var(--serif); font-size:.5em; letter-spacing:.02em; }
.lead { max-width:590px; margin-bottom:28px; color:#2e4660; font-size:1.15rem; line-height:1.8; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:48px; }.button { display:inline-flex; gap:10px; align-items:center; padding:11px 17px; border:1px solid var(--ink); border-radius:3px; font-size:.92rem; font-weight:600; }.button-primary { color:#fff; background:var(--ink); }.button-primary:hover { background:var(--blue); border-color:var(--blue); }.button-quiet:hover { color:var(--blue); border-color:var(--blue); }
.hero-facts { display:flex; gap:42px; margin:0; }.hero-facts div { border-left:2px solid var(--blue); padding-left:12px; }.hero-facts dt { color:var(--muted); font-size:.76rem; }.hero-facts dd { margin:2px 0 0; font-weight:600; font-size:.9rem; }
.portrait-wrap { position:relative; }.portrait-frame { height:488px; overflow:hidden; background:#0b2b52; }.portrait-frame img { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; filter:saturate(.9) contrast(1.03); }.portrait-caption { margin:12px 0 0; font:500 .7rem/1.7 var(--mono); letter-spacing:.09em; }.portrait-caption span { color:var(--muted); letter-spacing:.04em; }
.section { display:grid; grid-template-columns:190px 1fr; gap:34px; padding:100px 0; border-bottom:1px solid var(--line); }.section-label { display:flex; gap:12px; align-items:flex-start; }.section-label span { color:var(--blue); font:500 .72rem var(--mono); padding-top:7px; }.section-label h2 { margin:0; font:600 1.15rem var(--serif); }
.about-content { max-width:780px; }.statement { font:600 clamp(1.45rem,2.8vw,2.2rem)/1.55 var(--serif); letter-spacing:-.02em; }.about-content > p:last-of-type { color:var(--muted); }.interest-list { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }.interest-list span { padding:6px 10px; border:1px solid var(--line); background:#fff; color:#39516b; font-size:.84rem; }
.credentials { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; padding:0; background:var(--line); border-bottom:1px solid var(--line); }.credentials article { min-height:250px; padding:38px 32px; background:var(--paper); }.credentials h2 { font:600 1.22rem var(--serif); }.credentials p:last-child { color:var(--muted); font-size:.94rem; }
.timeline { display:grid; gap:0; }.timeline-item { display:grid; grid-template-columns:150px 1fr; gap:22px; padding:0 0 32px; margin-bottom:32px; border-bottom:1px solid var(--line); }.timeline-item:last-child { margin:0; padding:0; border:0; }.timeline-period { color:var(--blue); font:500 .72rem/1.4 var(--mono); letter-spacing:.08em; }.timeline-item h3,.feature-card h3 { margin-bottom:8px; font:600 1.22rem var(--serif); }.timeline-item div p,.feature-card p:last-child { color:var(--muted); margin:0; }
.research-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }.feature-card { padding:26px; border:1px solid var(--line); min-height:235px; background:#f9fbfc; }.feature-card:first-child { background:var(--ink); color:#fff; border-color:var(--ink); }.feature-card:first-child .card-kicker { color:#90c9ff; }.feature-card:first-child p:last-child { color:#d8e6f2; }
.connect-content > p { font:600 1.5rem/1.5 var(--serif); }.link-stack { border-top:1px solid var(--line); }.link-stack a,.link-pending { display:grid; grid-template-columns:155px 1fr 20px; align-items:center; gap:16px; padding:18px 0; border-bottom:1px solid var(--line); }.link-stack a:hover { color:var(--blue); }.link-stack span { color:var(--muted); font:500 .75rem var(--mono); }.link-stack strong { font-weight:500; }.link-stack i { font-style:normal; text-align:right; }.link-pending { color:var(--muted); }
footer { display:flex; justify-content:space-between; max-width:1200px; margin:0 auto; padding:28px 32px; color:var(--muted); font:500 .73rem var(--mono); }
@media (max-width:760px) { .site-header,main,footer { padding-left:20px; padding-right:20px; } nav { gap:14px; font-size:.8rem; } .hero { grid-template-columns:1fr; gap:42px; padding:56px 0; }.portrait-wrap { max-width:420px; }.portrait-frame { height:440px; }.hero-facts { gap:20px; flex-wrap:wrap; }.section { grid-template-columns:1fr; gap:25px; padding:68px 0; }.credentials,.research-grid { grid-template-columns:1fr; }.credentials article { min-height:auto; }.timeline-item { grid-template-columns:1fr; gap:5px; }.timeline-period { margin-bottom:8px; }.link-stack a,.link-pending { grid-template-columns:1fr auto; }.link-stack span { grid-column:1/-1; }.link-stack i { grid-column:2; grid-row:2; } }
