/* Personal, cinematic entrance; restrained professional reading surfaces. */
:root,:root[data-theme="light"]{--bg:#f5f5f3;--panel:#fff;--text:#202832;--muted:#56616d;--line:#d5dadd;--accent:#345b8c;--accent-dim:#e8eef4;--hover:#edf0f2;--navy:#1c2d40;--gold:#c3d9f5;--page-max:1280px;--page-gutter:clamp(24px,4vw,48px);scrollbar-color:#9ba9b6 var(--bg)}
html,body,[data-theme="light"] body{background:var(--bg);color:var(--text)}
[data-theme="light"] header{height:78px;background:var(--bg);border-color:var(--line);box-shadow:none;gap:28px}
.personal-wordmark{font:600 21px/1 Archivo,Arial,sans-serif;letter-spacing:-.025em;color:var(--text);white-space:nowrap}
.personal-wordmark>span{color:var(--accent)}
.header-resume{font-size:12px;color:var(--text);margin-right:auto;text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:5px}
[data-theme="light"] .nav-button{border:0;border-radius:6px;color:var(--muted);padding:10px 16px;min-height:44px}
[data-theme="light"] .nav-button.active{background:var(--accent-dim);color:var(--text);border-color:transparent}
[data-theme="light"] .nav-button:hover{background:var(--hover);color:var(--text)}
[data-theme="light"] .help-button{border-color:var(--line);color:var(--text);border-radius:50%}
.hero-copy h1{font-size:clamp(44px,5.5vw,68px);font-weight:600;line-height:1.06;letter-spacing:-.035em}
.hero-statement{font-size:clamp(26px,2.7vw,35px);line-height:1.2;font-weight:450}
[data-theme="light"] .primary{background:var(--navy);border-color:var(--navy);color:#fff;border-radius:6px}
[data-theme="light"] .primary:hover{background:#29445f;border-color:#29445f}
[data-theme="light"] .impact-strip{background:var(--navy);color:#fff;border-radius:12px;padding:28px 32px}
[data-theme="light"] .impact-strip strong{color:#c3d9f5}
[data-theme="light"] .impact-strip p,[data-theme="light"] .impact-strip p span{color:#d6e0eb}
[data-theme="light"] .case-study[open] summary{background:#e8eef4}
[data-theme="light"] .case-outcomes b{color:var(--accent)}
[data-theme="light"] .case-content{background:#fff;border-color:var(--line)}
[data-theme="light"] .timeline-role[open]{background:#e8eef4;border-color:#adbdce}
[data-theme="light"] .timeline-role summary:hover{background:#edf0f2}
[data-theme="light"] .builder-note{background:#e6edf4;border-radius:12px}
[data-theme="light"] .builder-note.personal-note{background:#eae9e4}
[data-theme="light"] .personal-note .text-button{color:var(--text);border-color:#9da5ab}
[data-theme="light"] .overview-contact{background:var(--navy);border-radius:12px}
[data-theme="light"] .overview-contact .primary{background:#c3d9f5;color:#192c41;border-color:#c3d9f5}
[data-theme="light"] .game-toolbar,[data-theme="light"] .platform-touch{background:#e6edf4;border-color:#bbc9d8}
[data-theme="light"] .platform-touch .jump-button{background:var(--navy);border-color:var(--navy)}
[data-theme="light"] .game-finish{background:#e8eef4;border-color:#adbdce}
[data-theme="light"] dialog{background:#f8f9fa;border-radius:14px;box-shadow:0 24px 80px #17284d33}
[data-theme="light"] .career-step[open]{background:#e8eef4;border-color:#adbdce}
[data-theme="light"] .close{background:#e8eef4;border-color:#adbdce;color:var(--text)}
[data-theme="light"] ::selection{background:#c3d9f5;color:#192c41}
.ui-icon{display:inline-block;width:18px;height:18px;vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.close .ui-icon{width:22px;height:22px;vertical-align:middle}
.platform-touch .ui-icon{width:24px;height:24px}
@media(max-width:760px){[data-theme="light"] header{height:70px;gap:12px}.personal-wordmark{font-size:17px}.header-resume{display:none}header nav{margin-left:auto;gap:2px}[data-theme="light"] .nav-button{font-size:11px;padding:10px 8px}.help-button{width:30px;min-width:30px}.hero-copy h1{font-size:48px}.hero-statement{font-size:28px}[data-theme="light"] .impact-strip{padding:16px 24px}.personal-note{gap:24px}}
@media(max-width:370px){.personal-wordmark{font-size:15px}[data-theme="light"] header{gap:8px}[data-theme="light"] .nav-button{font-size:10px;padding:10px 6px}}

/* Keep career outcomes prominent within their original context. */
:is(.timeline-body,.story-body) .role-result{font-weight:750;color:#24466c;font-variant-numeric:tabular-nums}
