:root { --ink:#142c3a; --blue:#075adb; --muted:#506675; --paper:#f5f8f8; --line:#cedbdd; }
body { background:var(--paper); }
.motion-paused .marquee-track { animation-play-state:paused; }
.grain { opacity:.06; }
.shell { width:min(1320px, calc(100% - 96px)); }
.nav { height:104px; border-bottom:1px solid var(--line); }
.brand { text-transform:none; letter-spacing:-.03em; font-size:1rem; gap:14px; }
.brand-mark { width:38px; height:38px; background:var(--blue); border-radius:50%; box-shadow:none; }
.brand-sub { display:block; font:500 .625rem/1.8 var(--body); letter-spacing:.15em; color:var(--muted); margin-top:5px; }
.nav nav { font-size:.875rem; gap:30px; }
.nav-cta { background:transparent; color:var(--ink); border:1px solid #a6b9c1; border-radius:5px; font-size:.875rem; padding:12px 18px; }
.nav-cta span { color:var(--blue); }
.hero { display:grid; grid-template-columns:1fr 1fr; position:relative; min-height:750px; padding:62px 0 0; column-gap:0; }
.hero-heading { position:relative; z-index:2; align-self:start; }
.hero .eyebrow { font-size:.75rem; letter-spacing:.1em; margin-bottom:34px; flex-wrap:wrap; }
.hero .eyebrow > span:first-child { background:#e36a37; width:8px; height:8px; border-radius:50%; }
.hero .eyebrow .hero-divider { display:inline; width:auto; height:auto; background:none; color:#a6b9c1; padding:0 6px; }
.hero h1 { font-size:clamp(4.6rem, 8.9vw, 8.6rem); font-weight:600; letter-spacing:-.075em; line-height:.91; }
.hero h1 em { font-family:Georgia,serif; font-weight:400; font-style:italic; letter-spacing:-.07em; }
.title-dot { display:inline-block; font-size:.48em; vertical-align:top; margin:14px 0 0 20px; color:#e36a37; }
.hero-description { font-size:1rem; line-height:1.75; color:var(--muted); margin:30px 0 20px; }
.hero-link { font-size:.9375rem; font-weight:700; display:inline-flex; align-items:center; gap:35px; padding:8px 0; border-bottom:1px solid var(--ink); }
.hero-link span { font-size:1.5rem; color:var(--blue); }
.network-stage { position:relative; align-self:center; margin-left:-30px; min-width:0; }
.network-caption { display:flex; justify-content:space-between; color:var(--muted); font:500 .6875rem/1.5 var(--body); letter-spacing:.13em; margin:0 12px; }
#networkCanvas { position:relative; display:block; width:100%; height:490px; opacity:1; touch-action:pan-y; cursor:grab; }
#networkCanvas:active { cursor:grabbing; }
#networkCanvas:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
.network-note { position:absolute; top:60%; left:4%; font-size:.75rem; line-height:1.6; color:var(--blue); display:flex; gap:10px; pointer-events:none; }
.note-cross { font-size:1.4rem; }
.network-toolbar { display:flex; justify-content:space-between; align-items:center; padding:0 12px 14px; border-bottom:1px solid var(--line); font-size:.75rem; color:var(--muted); }
.network-toolbar p { margin:0; }.network-toolbar button { font:inherit; color:inherit; border:0; background:none; padding:8px; cursor:pointer; text-decoration:underline; }
.network-modes { display:grid; grid-template-columns:repeat(3,1fr); gap:4px; margin-top:12px; }
.network-modes button { font:600 .875rem/1.5 var(--body); padding:13px 10px; border:1px solid transparent; border-radius:5px; background:transparent; text-align:left; color:var(--muted); cursor:pointer; }
.network-modes button span { font-size:.6875rem; margin-right:6px; opacity:.7; }.network-modes button[aria-pressed=true] { background:var(--blue); color:white; }
.network-modes button:hover { border-color:var(--blue); }
.concept-note { font-size:.75rem; color:var(--muted); margin:10px 12px; }
.hero-bottom { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; margin-top:55px; padding:22px 0; border-top:1px solid var(--line); font-size:.6875rem; letter-spacing:.1em; }
.hero-bottom a { font-size:.875rem; letter-spacing:0; }.hero-bottom a span { color:var(--blue); margin-left:20px; }
.about-strip { display:grid; grid-template-columns:190px 1.1fr .7fr; align-items:center; gap:50px; padding:100px 0; }
.about-photo { height:240px; overflow:hidden; border-radius:100px 100px 8px 8px; }
.about-photo img { width:100%; height:100%; object-fit:cover; }
.about-text .eyebrow { font-size:.6875rem; margin-bottom:20px; }.about-text h2 { font-size:2.5rem; line-height:1.1; }
.about-text p:last-child { color:var(--muted); font-size:1rem; max-width:480px; }
.about-facts { border-left:1px solid var(--line); padding-left:35px; display:grid; gap:22px; }.about-facts strong { font:600 1.4rem var(--display); display:block; }.about-facts span { font-size:.875rem; color:var(--muted); }.about-facts a { font-size:.875rem; color:var(--blue); font-weight:700; }
.marquee { background:#deebee; color:#365568; transform:none; box-shadow:none; border-block:1px solid #cadbdd; }
.marquee-track { padding:22px 0; font-size:.875rem; letter-spacing:.02em; }.marquee-track i { color:var(--blue); }
.section { padding-block:100px; }.section-head h2,.education h2 { font-size:clamp(2.5rem,4.6vw,4.5rem); line-height:1.02; }.section-head h2 em { font-family:Georgia,serif; font-style:italic; font-weight:400; }
.section-head .eyebrow { font-size:.75rem; }.role { grid-template-columns:160px 1fr 1.25fr; padding:36px 0; }.role p,.role-meta { font-size:.875rem; }.role ul { font-size:1rem; }.role:hover { padding-inline:0; background:#eaf1f1; }.role h3 { font-size:1.6rem; }
.expertise { background:#e6eef0; }.expertise .section-head { text-align:left; }.expertise .eyebrow { justify-content:flex-start; }.expertise .capability-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }.expertise-card { border:1px solid #cadbdd; border-radius:8px; padding:32px; min-height:295px; }.expertise-card > span { background:none; display:block; width:auto; height:auto; margin-bottom:34px; color:var(--blue); font-size:.875rem; }.expertise-card h3 { font-size:1.5rem; }.expertise-card p { max-width:480px; }.expertise-card strong { font-size:.875rem; }
.credentials p,.credentials span { font-size:.875rem; }
.education-list article > span,.education-list p { font-size:.875rem; }.education-list h3 { font-size:1.2rem; }
.contact-card { border-radius:8px; background:#075adb; box-shadow:none; padding:70px; }.contact-card h2 { font-size:clamp(2.6rem,5vw,5rem); line-height:1.02; }.contact-card h2 em { font-family:Georgia,serif; font-style:italic; }.contact-links a { border-radius:5px; font-size:.875rem; }.contact-orbit { opacity:.5; }footer { font-size:.75rem; }
.expertise-dialog-header { background:#075adb; }.expertise-dialog-header h2 { font-size:2rem; }
@media (max-width:1000px) {
 .shell { width:calc(100% - 48px); }.hero { grid-template-columns:1fr 1fr; padding-top:45px; min-height:680px; }.hero h1 { font-size:clamp(4rem,9vw,6rem); }#networkCanvas { height:390px; }.network-modes button { font-size:.75rem; padding:10px 6px; }.network-modes button span { display:none; }.network-stage { margin-left:-10px; }.about-strip { grid-template-columns:150px 1fr; gap:30px; }.about-facts { grid-column:2; }.role { grid-template-columns:130px 1fr; }.role ul { grid-column:2; }
}
@media (max-width:640px) {
 .shell { width:calc(100% - 36px); }.nav { height:86px; }.brand > span:last-child { display:block; }.brand { font-size:.875rem; gap:8px; }.brand-mark { width:29px; height:29px; }.brand-sub { font-size:.55rem; }.nav-cta { padding:9px 10px; font-size:.75rem; }.hero { display:block; padding-top:40px; }.hero h1 { font-size:clamp(4.25rem,16vw,6rem); }.hero .eyebrow { font-size:.625rem; margin-bottom:26px; }.hero-description { font-size:1rem; }.desktop-break { display:none; }.network-stage { margin:45px 0 0; }#networkCanvas { height:340px; }.network-caption { font-size:.625rem; }.network-note { left:0; }.network-modes button { font-size:.875rem; }.hero-bottom { margin-top:30px; font-size:.625rem; gap:16px; }.hero-bottom a { font-size:.75rem; }.about-strip { grid-template-columns:100px 1fr; padding:60px 0; gap:22px; }.about-photo { height:145px; align-self:start; }.about-text h2 { font-size:1.9rem; }.about-text .eyebrow { font-size:.625rem; line-height:1.6; }.about-text p:last-child { font-size:.875rem; }.about-facts { grid-column:1/-1; padding:20px 0 0; border-left:0; border-top:1px solid var(--line); grid-template-columns:1fr 1fr; }.about-facts a { grid-column:1/-1; }.section { padding-block:65px; }.section-head { gap:0; }.role { grid-template-columns:1fr; }.role ul { grid-column:1; }.expertise .capability-grid { grid-template-columns:1fr; }.expertise-card { padding:26px; }.contact-card { padding:42px 25px; }.contact { padding-bottom:30px; }
}
