:root {
  --ink: #08111f;
  --ink-soft: #0d1a2d;
  --ink-light: #11233d;
  --surface: rgba(17, 35, 61, 0.52);
  --surface-strong: #10213a;
  --line: rgba(181, 205, 235, 0.15);
  --line-strong: rgba(181, 205, 235, 0.28);
  --text: #eff6ff;
  --muted: #a8bad1;
  --faint: #70849e;
  --signal: #78aef8;
  --signal-pale: #c6ddff;
  --silver: #d9e5f4;
  --mono: 'DM Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
  --sans: 'Manrope', Inter, ui-sans-serif, system-ui, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 5.25rem; }
body { margin: 0; overflow-x: hidden; background: var(--ink); color: var(--text); font-family: var(--sans); }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { display: block; max-width: 100%; }
::selection { background: var(--signal); color: #06101e; }

.skip-link { position: fixed; top: 0.8rem; left: 0.8rem; z-index: 100; transform: translateY(-200%); padding: 0.65rem 0.9rem; background: var(--signal); color: #06101e; font-size: 0.8rem; font-weight: 800; border-radius: 0.25rem; }
.skip-link:focus { transform: translateY(0); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.shell { width: min(100% - 3rem, 1376px); margin-inline: auto; }
.section { position: relative; padding: 9rem 0; }
.section-shell { position: relative; }
.site-grain { position: fixed; inset: 0; z-index: 10; pointer-events: none; opacity: 0.025; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E"); }

.site-header { position: fixed; inset: 0 0 auto; z-index: 50; border-bottom: 1px solid transparent; transition: background 220ms ease, border-color 220ms ease, backdrop-filter 220ms ease; }
.site-header.is-scrolled { background: rgba(8, 17, 31, 0.86); border-color: var(--line); backdrop-filter: blur(18px); }
.nav-shell { min-height: 5.25rem; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.wordmark { display: inline-flex; align-items: center; gap: 0.7rem; min-width: max-content; }
.wordmark-mark { display: grid; place-items: center; width: 2.15rem; height: 2.15rem; color: #07101c; background: linear-gradient(135deg, #e3efff 0%, #78aef8 100%); font: 500 0.58rem/1 var(--mono); letter-spacing: -0.06em; box-shadow: 0 0 0 1px rgba(255,255,255,.5) inset; }
.wordmark-copy { display: grid; gap: 0.05rem; line-height: 1; }
.wordmark-copy b { font-size: 0.76rem; font-weight: 800; letter-spacing: 0.005em; }
.wordmark-copy small { font: 0.51rem/1.3 var(--mono); color: var(--muted); text-transform: uppercase; letter-spacing: 0.12em; }
.site-nav { display: flex; align-items: center; gap: 1.65rem; }
.nav-link, .nav-cta { position: relative; padding: 0.35rem 0; color: var(--muted); font-size: 0.69rem; font-weight: 700; letter-spacing: 0.055em; text-transform: uppercase; transition: color 180ms ease; }
.nav-link::after { content: ''; position: absolute; right: 0; bottom: 0.05rem; left: 0; height: 1px; transform: scaleX(0); transform-origin: right; background: var(--signal); transition: transform 180ms ease; }
.nav-link:hover, .nav-link:focus-visible, .nav-link.active { color: var(--text); }
.nav-link:hover::after, .nav-link:focus-visible::after, .nav-link.active::after { transform: scaleX(1); transform-origin: left; }
.nav-cta { padding: 0.66rem 0.85rem; color: #07101c; background: var(--signal); border: 1px solid var(--signal); transition: transform 180ms ease, background 180ms ease; }
.nav-cta:hover { transform: translateY(-2px); background: var(--signal-pale); }
.menu-toggle { display: none; width: 2.75rem; height: 2.75rem; border: 1px solid var(--line-strong); background: transparent; color: var(--text); }
.menu-toggle i { display: block; width: 1.15rem; height: 1px; margin: 0.29rem auto; background: currentColor; transition: transform 180ms ease; }

.hero { isolation: isolate; min-height: min(950px, 100svh); display: flex; flex-direction: column; justify-content: center; overflow: hidden; border-bottom: 1px solid var(--line); padding: 7.75rem 0 3rem; background: radial-gradient(circle at 79% 22%, rgba(46, 104, 190, .19), transparent 24%), radial-gradient(circle at 10% 78%, rgba(80, 130, 195, .07), transparent 30%), linear-gradient(135deg, #08111f 6%, #0b1729 53%, #091627 100%); }
.hero::before { content: ''; position: absolute; inset: 0; z-index: -1; opacity: 0.45; background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px); background-size: 92px 92px; mask-image: linear-gradient(to bottom, black 0%, transparent 82%); }
.hero::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(8,17,31,.5), transparent 45%, rgba(8,17,31,.2)); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(300px, 0.7fr); align-items: center; gap: clamp(3rem, 7vw, 11rem); }
.hero-copy { padding: 4.5rem 0 3rem; }
.eyebrow { display: flex; align-items: center; gap: 0.65rem; margin: 0 0 1.25rem; color: var(--signal-pale); font: 500 0.64rem/1.3 var(--mono); letter-spacing: 0.145em; text-transform: uppercase; }
.eyebrow > span { width: 1.7rem; height: 1px; background: var(--signal); }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 860px; margin-bottom: 1.65rem; font-size: clamp(3.4rem, 6.65vw, 7.25rem); font-weight: 700; letter-spacing: -0.074em; line-height: 0.94; }
h1 em, h2 em { color: var(--signal); font-style: normal; font-weight: 500; }
.hero-intro { max-width: 40rem; margin-bottom: 2.35rem; color: var(--muted); font-size: clamp(1rem, 1.3vw, 1.19rem); font-weight: 500; line-height: 1.8; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 0.8rem; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 1.9rem; min-height: 3.2rem; padding: 0.85rem 1.05rem; border: 1px solid transparent; font-size: 0.73rem; font-weight: 800; letter-spacing: 0.045em; text-transform: uppercase; transition: transform 180ms ease, border-color 180ms ease, background 180ms ease, color 180ms ease; }
.button-primary { color: #06101e; background: var(--signal); border-color: var(--signal); }
.button-primary:hover { background: var(--signal-pale); border-color: var(--signal-pale); transform: translateY(-3px); }
.button-quiet { color: var(--text); border-color: var(--line-strong); background: rgba(9, 20, 36, .22); }
.button-quiet:hover { border-color: var(--signal); color: var(--signal-pale); transform: translateY(-3px); }
.hero-meta { display: flex; align-items: center; gap: 0.7rem; margin-top: 4rem; color: var(--muted); }
.hero-meta p { margin: 0; font-size: 0.7rem; line-height: 1.6; }
.hero-meta b { color: var(--silver); font: 0.54rem/1.2 var(--mono); letter-spacing: .12em; text-transform: uppercase; }
.status-dot { width: .5rem; height: .5rem; background: #94e5bf; border-radius: 50%; box-shadow: 0 0 0 5px rgba(148,229,191,.1), 0 0 18px #94e5bf; }
.meta-rule { width: 1px; height: 2rem; margin: 0 .55rem; background: var(--line-strong); }
.portrait-stage { justify-self: end; width: min(100%, 366px); }
.portrait-frame { position: relative; padding: 0.65rem; background: linear-gradient(135deg, rgba(198, 221, 255, .64), rgba(120, 174, 248, .07) 48%, rgba(198, 221, 255, .16)); box-shadow: 22px 25px 0 rgba(0,0,0,.16); }
.portrait-frame::before { content: ''; position: absolute; z-index: -1; width: 120%; height: 72%; top: -8%; left: -13%; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line-strong); }
.portrait-frame img { width: 100%; aspect-ratio: 0.91; object-fit: cover; filter: saturate(.82) contrast(1.02); }
.portrait-label { position: absolute; right: -2rem; bottom: 1rem; display: grid; gap: 0.33rem; min-width: 9.9rem; padding: .75rem .9rem; color: var(--silver); background: rgba(8, 17, 31, .9); border: 1px solid var(--line-strong); backdrop-filter: blur(8px); }
.portrait-label span:first-child { color: var(--signal); font: .62rem/1 var(--mono); }
.portrait-label span:last-child { font: .57rem/1.55 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.portrait-caption { display: flex; justify-content: space-between; margin-top: 1.1rem; color: var(--faint); font: .56rem/1.4 var(--mono); text-transform: uppercase; letter-spacing: .12em; }
.hero-foot { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 1.3rem; align-items: end; padding-top: 2rem; border-top: 1px solid var(--line); }
.hero-foot > div { display: flex; align-items: center; gap: .75rem; }
.metric { display: block; color: var(--signal-pale); font: 500 clamp(1.6rem, 2.2vw, 2.35rem)/1 var(--mono); letter-spacing: -.08em; }
.hero-foot small { color: var(--muted); font-size: .62rem; line-height: 1.55; }
.network-link { align-self: center; color: var(--signal-pale); font: 500 .62rem/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.network-link span { margin-left: .3rem; color: var(--signal); }

.section-about { background: #0a1525; }
.split-section { display: grid; grid-template-columns: minmax(170px, .35fr) minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 10rem); }
.section-rail { display: flex; flex-direction: column; }
.rail-line { width: 1px; height: 100%; min-height: 14rem; margin: 1rem 0 0 .83rem; background: linear-gradient(var(--signal), transparent); opacity: .7; }
.section-kicker { margin-bottom: 1rem; color: var(--signal); font: 500 .64rem/1.3 var(--mono); letter-spacing: .14em; text-transform: uppercase; }
h2 { max-width: 900px; margin-bottom: 2.3rem; color: var(--text); font-size: clamp(2.25rem, 4.2vw, 4.6rem); font-weight: 700; letter-spacing: -.065em; line-height: 1.04; }
.about-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.3rem; max-width: 900px; }
.about-columns p { margin: 0; color: var(--muted); font-size: .99rem; line-height: 1.9; }
blockquote { max-width: 51rem; margin: 3.5rem 0; padding: 1.5rem 1.8rem; border-left: 2px solid var(--signal); color: var(--silver); background: linear-gradient(90deg, rgba(120,174,248,.09), transparent); font-size: clamp(1rem, 1.55vw, 1.35rem); font-weight: 600; letter-spacing: -.022em; line-height: 1.55; }
.about-signals { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.about-signals article { min-height: 12rem; padding: 1.45rem; border: 1px solid var(--line); background: rgba(8, 17, 31, .25); transition: background 180ms ease, transform 180ms ease, border-color 180ms ease; }
.about-signals article:hover { transform: translateY(-5px); border-color: var(--line-strong); background: rgba(17, 35, 61, .45); }
.signal-num { display: block; margin-bottom: 2.6rem; color: var(--signal); font: .62rem/1 var(--mono); }
.about-signals h3 { margin-bottom: .5rem; color: var(--silver); font-size: .81rem; }
.about-signals p { margin: 0; color: var(--faint); font-size: .73rem; line-height: 1.65; }

.section-experience { overflow: hidden; background: #08111f; }
.section-heading { display: flex; justify-content: space-between; gap: 3rem; align-items: flex-end; margin-bottom: 4rem; }
.section-heading .eyebrow { margin-bottom: .8rem; }
.section-heading h2 { margin-bottom: 0; }
.section-lede { max-width: 27rem; margin: 0 0 .35rem; color: var(--muted); font-size: .87rem; line-height: 1.75; }
.experience-layout { display: grid; grid-template-columns: minmax(230px, .46fr) minmax(0, 1fr); gap: clamp(2rem, 6vw, 8rem); border-top: 1px solid var(--line); }
.timeline-nav { position: relative; display: flex; flex-direction: column; border-right: 1px solid var(--line); }
.timeline-nav::before { content: ''; position: absolute; top: 0; bottom: 0; right: -1px; width: 2px; background: linear-gradient(var(--signal) 0 21%, transparent 21%); background-size: 100% 100%; }
.timeline-item { position: relative; width: 100%; padding: 1.5rem 2.1rem 1.5rem 0; color: var(--faint); text-align: left; border: 0; border-bottom: 1px solid var(--line); background: transparent; transition: color 180ms ease, background 180ms ease; }
.timeline-item::after { content: ''; position: absolute; top: 1.9rem; right: -5px; width: 9px; height: 9px; border-radius: 50%; background: #344865; box-shadow: 0 0 0 4px #08111f; transition: background 180ms ease, transform 180ms ease; }
.timeline-item span { display: block; margin-bottom: .6rem; font: .54rem/1.2 var(--mono); letter-spacing: .08em; }
.timeline-item b { display: block; color: var(--muted); font-size: .79rem; transition: color 180ms ease; }
.timeline-item small { display: block; margin-top: .26rem; font-size: .65rem; line-height: 1.4; }
.timeline-item:hover, .timeline-item:focus-visible, .timeline-item.is-current { color: var(--signal-pale); background: linear-gradient(90deg, rgba(120,174,248,.08), transparent); outline: none; }
.timeline-item:hover b, .timeline-item:focus-visible b, .timeline-item.is-current b { color: var(--text); }
.timeline-item.is-current::after { background: var(--signal); transform: scale(1.25); box-shadow: 0 0 0 4px #08111f, 0 0 16px rgba(120,174,248,.75); }
.role-stage { position: relative; min-height: 38rem; padding: 2.7rem 0 2rem; }
.role-card { animation: roleIn 360ms ease both; }
.role-card[hidden] { display: none; }
.role-card-head { display: flex; align-items: center; gap: .9rem; margin-bottom: 2.5rem; }
.role-index { color: var(--signal); font: .65rem/1 var(--mono); }
.role-card-head p { margin: 0; color: var(--faint); font: .58rem/1 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.role-card h3 { margin-bottom: .35rem; font-size: clamp(1.7rem, 2.75vw, 2.75rem); letter-spacing: -.05em; }
.role-company { margin-bottom: 1.85rem; color: var(--signal-pale); font: .72rem/1.3 var(--mono); letter-spacing: .09em; text-transform: uppercase; }
.role-summary { max-width: 48rem; margin-bottom: 2rem; color: var(--silver); font-size: 1.07rem; font-weight: 500; letter-spacing: -.018em; line-height: 1.8; }
.achievement-list { display: grid; gap: .9rem; max-width: 49rem; padding: 0; margin: 0 0 2rem; list-style: none; }
.achievement-list li { position: relative; padding-left: 1.3rem; color: var(--muted); font-size: .83rem; line-height: 1.75; }
.achievement-list li::before { content: ''; position: absolute; top: .7rem; left: 0; width: .42rem; height: .42rem; background: var(--signal); border-radius: 50%; }
.role-tags, .chips { display: flex; flex-wrap: wrap; gap: .45rem; }
.role-tags span, .chips span { padding: .35rem .58rem; border: 1px solid var(--line); color: var(--signal-pale); background: rgba(120,174,248,.05); font: .54rem/1.2 var(--mono); letter-spacing: .05em; text-transform: uppercase; }
@keyframes roleIn { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }

.section-expertise { background: #0a1525; }
.expertise-split { align-items: start; }
.expertise-content h2 { max-width: 850px; }
.competency-list { border-top: 1px solid var(--line); }
.competency { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(0, 1fr) minmax(185px, .65fr); gap: 1.8rem; align-items: center; padding: 1.65rem 0; border-bottom: 1px solid var(--line); transition: padding 180ms ease, background 180ms ease; }
.competency:hover { padding-inline: 1rem; background: rgba(120,174,248,.055); }
.competency > div:first-child { display: flex; gap: .85rem; align-items: center; }
.competency > div:first-child span { color: var(--signal); font: .6rem/1 var(--mono); }
.competency h3 { margin: 0; color: var(--silver); font-size: .86rem; letter-spacing: -.02em; }
.competency p { margin: 0; color: var(--muted); font-size: .75rem; line-height: 1.7; }
.chips { justify-content: flex-end; }
.chips span { color: var(--faint); border-color: rgba(181,205,235,.11); background: transparent; white-space: nowrap; }

.section-governance { background: linear-gradient(100deg, #0a1525, #122945 95%); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.governance-shell { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); gap: clamp(3rem, 9vw, 12rem); }
.governance-copy h2 { margin-bottom: 0; }
.governance-body > p:first-child { max-width: 42rem; margin-bottom: 2.5rem; color: var(--silver); font-size: 1.1rem; font-weight: 500; line-height: 1.85; }
.governance-points { border-top: 1px solid var(--line); }
.governance-points article { display: grid; grid-template-columns: 2.5rem minmax(11rem, .68fr) 1fr; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid var(--line); }
.governance-points span { color: var(--signal); font: .57rem/1.5 var(--mono); }
.governance-points h3 { margin: 0; font-size: .78rem; }
.governance-points p { margin: 0; color: var(--muted); font-size: .73rem; line-height: 1.65; }
.governance-note { margin-top: 1.7rem; color: var(--faint); font-size: .68rem; font-style: italic; line-height: 1.7; }

.section-credentials { background: #08111f; }
.credentials-grid { display: grid; grid-template-columns: 1.22fr .78fr; gap: 1.2rem; }
.credential-card { min-height: 21rem; padding: 1.8rem; border: 1px solid var(--line); background: linear-gradient(145deg, rgba(17,35,61,.48), rgba(8,17,31,.33)); }
.credential-label { display: block; margin-bottom: 2.8rem; color: var(--signal); font: .58rem/1.2 var(--mono); letter-spacing: .13em; text-transform: uppercase; }
.education-entry { display: grid; grid-template-columns: 3.4rem 1fr; gap: .75rem; padding: 1.2rem 0; border-top: 1px solid var(--line); }
.education-entry > span { color: var(--faint); font: .57rem/1.4 var(--mono); }
.education-entry h3, .cert-entry h3 { margin-bottom: .35rem; color: var(--silver); font-size: .9rem; }
.education-entry p, .cert-entry p { margin-bottom: .25rem; color: var(--muted); font-size: .73rem; line-height: 1.5; }
.education-entry small { color: var(--faint); font-size: .62rem; }
.cert-card { display: grid; grid-template-rows: auto 1fr 1fr; }
.cert-entry { display: grid; grid-template-columns: 3.25rem 1fr; align-items: center; gap: .9rem; padding: .9rem 0; border-top: 1px solid var(--line); }
.cert-seal { display: grid; place-items: center; width: 2.7rem; height: 2.7rem; border: 1px solid #f3c96e; border-radius: 50%; color: #f3c96e; font: .57rem/1 var(--mono); box-shadow: 0 0 0 3px rgba(243,201,110,.09); }
.cert-seal-blue { border-color: var(--signal); border-radius: 0; color: var(--signal); box-shadow: none; }

.section-connect { overflow: hidden; background: #0b1729; }
.section-connect::before { content: ''; position: absolute; z-index: 0; top: -12rem; right: -8rem; width: 40rem; height: 40rem; border-radius: 50%; border: 1px solid rgba(120,174,248,.15); box-shadow: 0 0 0 6rem rgba(120,174,248,.025), 0 0 0 12rem rgba(120,174,248,.018); }
.connect-grid { position: relative; z-index: 1; display: grid; grid-template-columns: .85fr 1fr; gap: clamp(3rem, 9vw, 12rem); align-items: start; }
.connect-copy h2 { margin-bottom: 1.45rem; }
.connect-copy > p:not(.eyebrow) { max-width: 30rem; color: var(--muted); font-size: .91rem; line-height: 1.8; }
.contact-details { display: grid; margin-top: 2.6rem; border-top: 1px solid var(--line); }
.contact-details a { position: relative; display: grid; grid-template-columns: 8.7rem 1fr 1rem; gap: .6rem; align-items: center; padding: 1rem 0; border-bottom: 1px solid var(--line); transition: padding 180ms ease, color 180ms ease; }
.contact-details a:hover { padding-inline: .65rem; color: var(--signal-pale); }
.contact-details span { color: var(--faint); font: .55rem/1.2 var(--mono); text-transform: uppercase; letter-spacing: .09em; }
.contact-details b { font-size: .77rem; }
.contact-details i { color: var(--signal); font-style: normal; }
.contact-private-card { min-height: 26rem; padding: 1.7rem; border: 1px solid var(--line-strong); background: rgba(8,17,31,.5); box-shadow: 18px 20px 0 rgba(0,0,0,.09); }
.form-top { display: flex; justify-content: space-between; align-items: baseline; padding-bottom: 1.5rem; margin-bottom: 1.45rem; border-bottom: 1px solid var(--line); }
.form-top p { margin: 0; font-size: .93rem; font-weight: 700; }
.form-top span { color: var(--faint); font: .53rem/1 var(--mono); text-transform: uppercase; letter-spacing: .1em; }
.privacy-mark { display: grid; place-items: center; width: 3.2rem; height: 3.2rem; margin: 1.8rem 0 1.4rem; border: 1px solid var(--line-strong); color: var(--signal); font: .65rem/1 var(--mono); }
.contact-private-card h3 { max-width: 22rem; margin-bottom: .9rem; color: var(--silver); font-size: 1.3rem; letter-spacing: -.04em; }
.contact-private-card > p:not(.form-footnote) { max-width: 34rem; margin-bottom: 1.6rem; color: var(--muted); font-size: .8rem; line-height: 1.8; }
.button-full { width: 100%; margin-top: .4rem; }
.form-footnote { margin: 1rem 0 0; color: var(--faint); font-size: .61rem; line-height: 1.55; }
.site-footer { border-top: 1px solid var(--line); background: #08111f; }
.footer-inner { display: flex; justify-content: space-between; gap: 1rem; padding: 1.35rem 0; color: var(--faint); font: .57rem/1.4 var(--mono); letter-spacing: .05em; text-transform: uppercase; }
.footer-inner p { margin: 0; }
.footer-inner a { color: var(--signal-pale); }

[data-reveal] { opacity: 0; transform: translateY(18px); transition: opacity 700ms cubic-bezier(.22,1,.36,1), transform 700ms cubic-bezier(.22,1,.36,1); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }
[data-delay='1'] { transition-delay: 120ms; }
[data-delay='2'] { transition-delay: 220ms; }

@media (max-width: 1024px) {
  .section { padding: 6.8rem 0; }
  .hero { min-height: auto; }
  .hero-grid { gap: 3rem; }
  .hero-foot { grid-template-columns: repeat(3, 1fr); }
  .network-link { grid-column: 1 / -1; padding-top: .7rem; }
  .experience-layout { gap: 3rem; }
  .competency { grid-template-columns: .82fr 1.18fr; }
  .competency .chips { grid-column: 2; justify-content: flex-start; }
  .governance-shell, .connect-grid { gap: 4rem; }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 4.7rem; }
  .shell { width: min(100% - 2.25rem, 1376px); }
  .site-header { background: rgba(8,17,31,.86); border-bottom-color: var(--line); backdrop-filter: blur(16px); }
  .nav-shell { min-height: 4.5rem; }
  .menu-toggle { display: block; z-index: 2; }
  .menu-toggle[aria-expanded='true'] i:first-of-type { transform: translateY(3px) rotate(45deg); }
  .menu-toggle[aria-expanded='true'] i:last-of-type { transform: translateY(-3px) rotate(-45deg); }
  .site-nav { position: absolute; inset: 4.5rem 0 auto; display: grid; gap: .25rem; padding: 1rem max(1.125rem, calc((100vw - 1376px) / 2)); border-bottom: 1px solid var(--line); background: #0b1729; transform: translateY(-130%); opacity: 0; pointer-events: none; transition: transform 180ms ease, opacity 180ms ease; }
  .site-nav.is-open { transform: translateY(0); opacity: 1; pointer-events: auto; }
  .nav-link, .nav-cta { padding: .85rem 0; }
  .nav-cta { padding: .85rem; margin-top: .5rem; text-align: center; }
  .hero { padding-top: 5.8rem; }
  .hero-grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .hero-copy { padding: 3.4rem 0 .5rem; }
  h1 { font-size: clamp(3rem, 14vw, 4.55rem); }
  .hero-intro { font-size: .95rem; }
  .portrait-stage { width: min(100%, 288px); margin: 1rem 1.8rem 0 auto; }
  .portrait-label { right: -1.15rem; bottom: .75rem; min-width: 8.1rem; padding: .55rem .65rem; }
  .hero-meta { margin-top: 2.6rem; flex-wrap: wrap; }
  .hero-foot { grid-template-columns: 1fr 1fr; gap: 1.1rem; margin-top: 2rem; }
  .hero-foot > div:last-of-type { grid-column: 1 / -1; }
  .network-link { grid-column: 1 / -1; }
  .split-section { grid-template-columns: 1fr; gap: 1.5rem; }
  .section-rail { display: block; }
  .section-rail .rail-line { display: none; }
  .about-columns { grid-template-columns: 1fr; gap: 1.1rem; }
  .about-signals { grid-template-columns: 1fr; }
  .about-signals article { min-height: auto; }
  .signal-num { margin-bottom: 1.2rem; }
  .section-heading { display: block; margin-bottom: 2.5rem; }
  .section-heading .section-lede { margin-top: 1rem; }
  .experience-layout { grid-template-columns: 1fr; gap: 0; border-top: 0; }
  .timeline-nav { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(11rem, 78%); overflow-x: auto; margin: 0 -1.125rem; padding: 0 1.125rem; border-top: 1px solid var(--line); border-right: 0; scrollbar-width: thin; }
  .timeline-nav::before { display: none; }
  .timeline-item { min-height: 8.6rem; padding: 1.15rem 1rem 1.3rem 0; border-right: 1px solid var(--line); border-bottom: 0; }
  .timeline-item::after { top: auto; right: auto; bottom: -.25rem; left: 0; }
  .role-stage { min-height: 0; padding: 2.3rem 0 0; }
  .role-card-head { margin-bottom: 1.65rem; }
  .role-summary { font-size: .96rem; }
  .competency { grid-template-columns: 1fr; gap: .85rem; padding: 1.35rem 0; }
  .competency .chips { grid-column: auto; justify-content: flex-start; }
  .governance-shell, .connect-grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .governance-points article { grid-template-columns: 1.7rem 1fr; gap: .65rem; }
  .governance-points p { grid-column: 2; }
  .credentials-grid { grid-template-columns: 1fr; }
  .credential-card { min-height: auto; }
  .contact-details a { grid-template-columns: 1fr 1.55fr 1rem; }
  .footer-inner { flex-direction: column; }
}

@media (max-width: 410px) {
  .hero-foot { grid-template-columns: 1fr; }
  .hero-foot > div:last-of-type { grid-column: auto; }
  .meta-rule { display: none; }
  .hero-meta p:nth-of-type(2) { flex-basis: 100%; margin-left: 1.2rem; }
  .portrait-stage { margin-right: 1.15rem; }
  .button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  [data-reveal] { opacity: 1; transform: none; }
}
