/* Readable supporting copy and closer relationships between sections. */
#career-watonomous .career-identity, #career-skyview .career-identity { grid-template-columns: minmax(0,1fr) minmax(160px, 40%); }
#career-watonomous .career-logo, #career-skyview .career-logo { grid-column: 2; grid-row: 2; justify-self: end; justify-content: flex-end; width: 280px; height: 72px; margin: 0; }
#career-watonomous .career-logo img, #career-skyview .career-logo img { max-width: 100%; object-position: right center; }
#career-skyview .career-logo { height: 96px; }
#career-watonomous .career-identity-copy, #career-skyview .career-identity-copy { grid-column: 1; grid-row: 2; }
.career-identity-copy>p { font-size: 16px; }
.career-identity-copy dt, .identity-top, .career-story>.eyebrow, .career-tools>.mono { font-size: 14px; }
.career-identity-copy dd { font-size: 14px; }
.career-story>p:not(.eyebrow), .career-contributions { font-size: 15px; }
.career-tools .tags span { font-size: 14px; }
.career-progression>span { font-size: 14px; }
.career-progression small { font-size: 14px; }
.experience-links { font-size: 14px; }
.experience-section { padding-bottom: 72px; }

.academic-layout { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 64px; padding-bottom: 28px; }
.academic-heading .eyebrow { font: 500 14px/1.5 var(--body); letter-spacing: .05em; margin-bottom: 20px; }
.academic-heading h2, .research-section .academic-heading h2 { font-size: clamp(32px,3.4vw,46px); color: var(--ink); margin-bottom: 28px; min-height: 1.15em; }
.research-section { padding: 0; border: 0; border-radius: 0; background: none; }
.degree-record { display: grid; grid-template-columns: 72px minmax(0,1fr); column-gap: 22px; padding: 26px 0 30px; }
.degree-meta { grid-column: 1/-1; font: 14px/1.6 var(--body); letter-spacing: .02em; margin-bottom: 24px; }
.degree-brand { grid-column: 1; grid-row: 2/5; height: auto; padding: 0; margin: 0; align-self: start; }
.degree-record h3, .degree-name, .degree-detail, .degree-award { grid-column: 2; }
.degree-record h3 { font-size: 25px; line-height: 1.25; margin-bottom: 12px; }
.degree-name { font-size: 15px; line-height: 1.6; margin-bottom: 12px; }
.degree-detail { font-size: 14px; line-height: 1.8; }
.degree-award { font-size: 14px; margin-top: 14px; }
.research-meta { font: 14px/1.6 var(--body); letter-spacing: .02em; padding-top: 26px; }
.research-position { grid-template-columns: 54px minmax(0,1fr); gap: 18px; }
.research-logo { width: 54px; height: 72px; }
.research-position h3 { font-size: 25px; }
.research-position p { font-size: 14px; line-height: 1.6; margin-top: 6px; }
.research-subject { border: 0; padding-top: 0; margin-top: 30px; }
.research-subject>.mono { font: 500 14px/1.5 var(--body); letter-spacing: .05em; }
.research-subject h4 { font-size: 30px; line-height: 1.2; margin: 12px 0 16px; }
.research-subject>p, .research-contributions p { font-size: 15px; line-height: 1.8; }
.research-contributions strong { font-size: 15px; }
.research-contributions li { gap: 14px; }
.research-toolkit { border: 0; padding-top: 0; gap: 8px; }
.research-toolkit span { font-size: 14px; padding: 6px 10px; }
.research-actions { gap: 18px; }
.research-actions .inline-link { font-size: 14px; min-height: 40px; }

.work-section { padding-top: 44px; }
.work-section .section-heading { gap: 16px; margin-bottom: 30px; }
.project { gap: 5%; }
.project-category { font: 500 14px/1.6 var(--body); letter-spacing: .04em; margin-bottom: 18px; }
.project-meta>p:not(.project-category) { font-size: 16px; max-width: 480px; line-height: 1.8; }
.project-tech { font: 14px/1.8 var(--body); letter-spacing: 0; margin: 22px 0; }
.project-tech>span { color: var(--line-strong); padding-inline: 5px; }
.marketlens-features { font-size: 15px; line-height: 1.65; }
.project-actions { gap: 14px 22px; }
.project-actions .inline-link { font-size: 14px; min-height: 46px; gap: 14px; padding: 10px 0; border: 0; }
.project-actions .live-website-link { padding: 12px 17px; background: var(--action); color: var(--on-action); border-radius: 4px; }
.project-actions .live-website-link:hover { background: var(--action-hover); }
.project-actions button.inline-link { position: relative; white-space: nowrap; flex-shrink: 0; text-decoration: none; }
.project-actions button.inline-link::after { content: ""; position: absolute; left: 0; right: 0; bottom: 8px; height: 1px; background: currentColor; opacity: 0; }
.project-actions button.inline-link:hover, .project-actions button.inline-link:focus-visible { color: var(--dark); text-decoration: none; }
.project-actions button.inline-link:hover::after, .project-actions button.inline-link:focus-visible::after { opacity: 1; }
/* Text actions use an unmistakable underline instead of a rectangular focus box. */
.project-actions button.inline-link:focus-visible { outline: none; color: var(--ink); }
.project-actions button.inline-link:focus-visible::after { height: 3px; bottom: 5px; }
.project-actions button.inline-link>span[aria-hidden] { transition: transform .2s ease; }
.project-actions button.inline-link:is(:hover,:focus-visible)>span[aria-hidden] { transform: translate(2px,-2px); }
@media (prefers-reduced-motion: reduce) { .project-actions button.inline-link>span[aria-hidden] { transition: none; } }
@media (forced-colors: active) { .project-actions button.inline-link:focus-visible::after { background: ButtonText; } }
.project-marketlens { grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); padding-bottom: 72px; }
.marketlens-preview-bar { font-size: 16px; padding: 15px 18px; }
.marketlens-preview-bar b { font: 14px var(--body); letter-spacing: .05em; }
.marketlens-preview-caption { font-size: 14px; padding: 12px 18px; }
@media (max-width: 1000px) {
  .academic-layout { gap: 36px; }
  .degree-record { grid-template-columns: 60px minmax(0,1fr); gap: 0 16px; }
  .degree-brand img { max-width: 60px; }
  .degree-record h3 { font-size: 23px; }
}
@media (max-width: 800px) {
  .academic-layout { grid-template-columns: 1fr; gap: 40px; }
  .degree-record { grid-template-columns: 72px minmax(0,1fr); gap: 0 22px; }
  .degree-brand img { max-width: 100%; }
  .academic-heading h2, .research-section .academic-heading h2 { font-size: 38px; }
  .project-marketlens { display: flex; flex-direction: column; align-items: stretch; gap: 28px; }
  .project-marketlens .project-meta { order: 0; padding: 0; }
  .marketlens-preview { order: 1; }
  .project-meta>p:not(.project-category) { max-width: none; }
}
@media (max-width: 500px) {
  .experience-section { padding-bottom: 48px; }
  .academic-layout { padding-bottom: 20px; }
  .degree-record { grid-template-columns: 52px minmax(0,1fr); gap: 0 16px; }
  .degree-brand img { width: 52px; height: 66px; }
  .degree-record h3 { font-size: 22px; }
  .degree-meta { font-size: 14px; }
  .work-section { padding-top: 32px; }
  .project-marketlens { padding-bottom: 48px; }
  .project-meta>p:not(.project-category), .marketlens-features { font-size: 15px; }
  .academic-heading h2, .research-section .academic-heading h2 { font-size: 35px; }
}

/* The intro already covers the bio; go directly into the interactive tools. */
.about-section .workbench-section { margin-top: 0; padding-top: 0; border-top: 0; }
.about-section>.section-pad { padding-top: 64px; }

/* Company marks remain right-aligned on desktop and start with the copy on phones. */
.career-logo { justify-self: end; }
@media (max-width: 600px) {
 .career-identity,
 #career-watonomous .career-identity, #career-skyview .career-identity { grid-template-columns: minmax(0,1fr); }
 .career-logo,
 #career-watonomous .career-logo, #career-skyview .career-logo {
   grid-column: 1; grid-row: 2; justify-self: start; justify-content: flex-start;
   width: min(240px,100%); height: 76px; margin: 0;
 }
 .career-logo img,
 #career-watonomous .career-logo img, #career-skyview .career-logo img { object-position: left center; }
 .career-identity-copy,
 #career-watonomous .career-identity-copy, #career-skyview .career-identity-copy { grid-column: 1; grid-row: 3; }
}

/* A quiet, rounded outbound action with one continuous silhouette. */
.career-site-link { margin: 22px 0 28px; }
.career-site-link .live-website-link { display: inline-flex; align-items: center; gap: 24px; min-height: 50px; max-width: 100%; padding: 12px 20px; border: 1px solid var(--line-strong); border-radius: 999px; background: transparent; color: var(--ink); font: 500 16px/1.4 var(--body); text-decoration: none; transition: background .2s, border-color .2s, color .2s; }
.career-site-link .live-website-link>span[aria-hidden] { display: grid; place-items: center; width: 20px; height: 20px; flex-shrink: 0; color: var(--dark); font: 400 22px/1 var(--body); transition: transform .2s; }
.career-site-link .live-website-link:hover { background: var(--surface-raised); border-color: var(--dark); color: var(--ink); }
.career-site-link .live-website-link:hover>span[aria-hidden] { transform: translate(2px,-2px); }
.career-site-link .live-website-link:focus-visible { outline: 2px solid var(--dark); outline-offset: 4px; }
.career-site-link .live-website-link:active { background: var(--surface-inset); }
@media (prefers-reduced-motion: reduce) { .career-site-link .live-website-link, .career-site-link .live-website-link>span[aria-hidden] { transition: none; transform: none; } }

/* A short personal introduction before the career timeline. */
.intro-about { display: grid; grid-template-columns: 245px minmax(0,1fr); gap: 38px; padding-top: 58px; padding-bottom: 30px; }
.intro-about h2 { font: 600 30px/1.2 var(--display); letter-spacing: -.03em; color: var(--ink); }
.intro-about-copy { max-width: 760px; }
.intro-about-copy p { font: 400 17px/1.8 var(--body); color: var(--ink); margin: 0; }
.intro-about-copy p+p { margin-top: 14px; color: var(--muted); }
.intro-about+.experience-section { padding-top: 54px; }
@media (max-width:900px) { .intro-about { grid-template-columns: 1fr; gap: 20px; padding-top: 40px; padding-bottom: 16px; } .intro-about-copy p { font-size: 16px; } .intro-about+.experience-section { padding-top: 40px; } }

/* Keep the toolkit readable at every breakpoint, including its supporting labels. */
.workbench-section .workbench-heading .eyebrow,
.workbench-section .workspace-tabs button>.mono,
.workbench-section .board-caption,
.workbench-section .module-index,
.workbench-section .module-detail-label {
  font-family: var(--body);
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .045em;
}
.workbench-section .workbench-heading>p { font-size: 16px; line-height: 1.65; }
.workbench-section .workspace-tabs strong { font-size: 22px; }
.workbench-section .workspace-tabs button>.mono { margin-bottom: 8px; }
.workbench-section .board-caption { flex-wrap: wrap; gap: 10px 24px; }
.workbench-section .stack-board { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.workbench-section .stack-module { grid-template-columns: 24px 48px minmax(0,1fr); min-height: 108px; gap: 6px 16px; }
.workbench-section .stack-module strong { font-size: 21px; line-height: 1.35; }
.workbench-section .module-tools { font-size: 14px; line-height: 1.6; }
.workbench-section .module-detail p { font-size: 16px; line-height: 1.75; max-width: 52ch; }
.workbench-section .module-detail-label { margin-bottom: 18px; }
.workbench-section .module-project-link { width: 44px; height: 44px; }
.workbench-section .full-toolbox summary { font-size: 16px; padding: 20px 0; }
.workbench-section .toolbox-inventory p { font-size: 15px; line-height: 1.75; }
.workbench-section .toolbox-inventory b { font-size: 14px; width: 125px; }
@media (max-width: 700px) {
  .workbench-section .stack-board { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .workbench-section .workspace-tabs { gap: 16px; }
  .workbench-section .workspace-tabs button { min-width: 0; flex: 1; }
  .workbench-section .workspace-tabs strong { font-size: 19px; }
  .workbench-section .workspace-tabs button>.mono { font-size: 14px; letter-spacing: 0; }
  .workbench-section .stack-module { padding: 16px 12px; grid-template-columns: 22px 36px minmax(0,1fr); gap: 6px 12px; }
  .workbench-section .stack-module strong { font-size: 20px; }
  .workbench-section .module-detail { min-height: 0; margin-left: 0; padding: 18px 0 18px 18px; }
  .workbench-section .toolbox-inventory b { display: block; width: auto; margin-bottom: 3px; }
}

/* A legible gesture cue beside the sculpture controls. */
.signal-lab .lab-bottom { flex-wrap: wrap; row-gap: 16px; }
.signal-lab .drag-note { display: inline-flex; align-items: center; gap: 9px; font: 500 14px/1.4 var(--body); letter-spacing: 0; color: var(--ink); white-space: nowrap; }
.drag-gesture { display: grid; place-items: center; width: 38px; height: 38px; flex: 0 0 38px; border-radius: 50%; background: var(--surface-raised); color: var(--dark); }
.drag-gesture svg { width: 28px; height: 28px; overflow: visible; }
.drag-cursor { animation: drag-cue 3.6s ease-in-out infinite; }
@keyframes drag-cue { 0%,20%,80%,100% { transform: translateX(0); } 40% { transform: translateX(-2px); } 60% { transform: translateX(2px); } }
@media (max-width: 600px) { .signal-lab .lab-bottom { justify-content: center; } .signal-lab .drag-note { flex-basis: 100%; justify-content: center; } }
@media (prefers-reduced-motion: reduce) { .drag-cursor { animation: none; } }

/* Original EB mark and a bold geometric nameplate. */
.site-header .wordmark { display: inline-flex; align-items: center; justify-content: center; width: 68px; min-height: 48px; flex-shrink: 0; color: var(--ink); }
.brand-monogram { display: block; width: 64px; height: 49px; transition: transform .2s ease; }
.brand-cut { fill: var(--accent); }
.wordmark:hover .brand-monogram { transform: translateY(-2px); }
.hero-name h1 { font-family: 'Outfit', Arial, sans-serif; font-weight: 900; font-size: clamp(84px,9.7vw,134px); line-height: 1; letter-spacing: -.035em; text-transform: uppercase; }
.hero-name .name-first { font-weight: 750; }
.hero-name .name-last { font-weight: 900; margin-left: .08em; }
.hero-name .name-period { display: inline-block; width: .105em; height: .105em; margin-left: .055em; font-size: inherit; background: var(--accent); color: transparent; vertical-align: .03em; }
/* Give the name its own row; start the experiment clearly below it. */
@media (min-width: 601px) {
  .hero-name { width: 100%; }
  .hero-workbench { margin-top: 20px; }
  .signal-lab { margin-top: 30px; justify-content: flex-start; }
}
@media (max-width: 900px) { .hero-name h1 { font-size: clamp(76px,11.8vw,112px); } }
@media (max-width: 600px) { .site-header .wordmark { width: 56px; } .brand-monogram { width: 56px; height: 43px; } .hero-name h1 { font-size: clamp(54px,15.2vw,90px); letter-spacing: -.055em; } }
@media (prefers-reduced-motion: reduce) { .brand-monogram { transition: none; } }

/* Hover feedback complements the one-time scroll entrances. */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .project-art, .marketlens-preview { transition: translate .28s ease, border-color .28s ease, box-shadow .28s ease; }
  .project-art:hover, .marketlens-preview:hover { translate: 0 -4px; border-color: var(--line-strong); box-shadow: 0 12px 28px -20px var(--ink); }
  .project-meta h3 button { transition: color .2s ease; }
  .project-meta h3 button:hover { color: var(--dark); }
  .contact-arrow { transition: translate .25s ease; }
  .contact-title:hover .contact-arrow { translate: 5px -5px; }
}

/* Give the primary action a clear silhouette against the navy theme. */
:root:not([data-theme=light]) .hero-action--work { color: #13243c; background: #b9d3ff; border-color: #b9d3ff; box-shadow: 3px 3px 0 #4f7dc9; }
:root:not([data-theme=light]) .hero-action--work .hero-action-arrow { background: #315dcc; color: #ffffff; }
@media (hover: hover) {
  :root:not([data-theme=light]) .hero-action--work:hover { background: #d2e3ff; border-color: #d2e3ff; box-shadow: 5px 5px 0 #719ee8; }
  :root:not([data-theme=light]) .hero-action--work:hover .hero-action-arrow { background: #284fb5; }
}
:root:not([data-theme=light]) .hero-action--work:active { box-shadow: none; }
.hero-copy .index-label { font-size: 17px; font-weight: 500; line-height: 1.5; letter-spacing: .01em; }
.hero-actions { max-width: 460px; }
.hero-action-note { font-family: var(--body); line-height: 1.4; white-space: normal; }
.hero-copy .hero-context { font-size: 16px; }
.dialog-inner p:not(.eyebrow), .dialog-inner ul { font-size: 16px; }

/* Readability audit: keep supporting text legible without flattening the hierarchy.
   Component styles use a 14px floor, including their mobile overrides. */
.mono, .eyebrow, .art-kicker, .art-bottom, .nn-kicker,
.noise-range-labels, .noise-endpoints, .noise-legend, .deep-caption,
.search-routing, .math-range-label, .nn-layer-labels, .nn-live-indicator {
  font-family: var(--body);
  letter-spacing: .035em;
  line-height: 1.5;
}
.noise-heading>p, .noise-controls>p, .delivery-score>p,
.neural-invitation p:not(.nn-kicker), .nn-header-copy,
.market-intro-copy>p, .math-control-intro,
.math-lesson>p:not(.mono):not(.math-formula), .model-notebook-body p,
.strategy-intro>p:not(.mono), .payoff-assumptions p,
.systems-row p, .career-narrative>p { font-size: 16px; line-height: 1.75; }
#message-choice, .nn-inspector select { font-size: 16px; min-height: 44px; }
.noise-dial label, .message-choice-label, .noise-send, .math-resample,
.nn-launch, .model-notebook summary { font-size: 16px; }
.noise-presets button, .math-presets button, .nn-presets button,
.nn-preview-presets button, .price-presets button { min-height: 40px; }
.noise-tokens>span { font-size: 16px; line-height: 1.5; }
.noise-stage-heading, .noise-endpoints, .noise-row-label, .recovery-heading,
.deep-caption, .payoff-heading, .nn-preview-top, .nn-stage-bar,
.nn-graph-legend, .nn-signs { flex-wrap: wrap; gap: 10px 18px; }
.noise-stage-heading>.mono, .recovery-heading>.mono { flex: 1 1 180px; }
.noise-disclaimer, .context-caption, .nn-footnote, .math-assumptions { line-height: 1.7; }
.neural-invitation .nn-preview-note { font-family: var(--body); line-height: 1.6; max-width: none; }
.noise-presets { flex-wrap: wrap; }
.art-bottom { max-width: calc(100% - 85px); }
.math-instrument { grid-template-columns: 300px minmax(0,1fr); }
.math-view-heading { flex-wrap: wrap; }
.model-prices, .model-greeks { grid-template-columns: repeat(3,minmax(0,1fr)); }
.model-prices .mono { overflow-wrap: anywhere; }
.nn-layer-labels { height: 56px; }
.nn-layer-labels small { line-height: 1.4; }
.nn-main { grid-template-columns: 220px minmax(0,1fr); }
.nn-score-title { flex-wrap: wrap; }
.nn-results { grid-template-columns: 150px minmax(0,1fr); }
.nn-inspector { grid-template-columns: 200px repeat(3,minmax(80px,1fr)); }
.nn-inspector-explanation { grid-column: 1/-1; }
.nn-loop { min-height: 40px; }
/* SVG labels compensate for viewBox scaling through --chart-text-size. */
#model-axis text, .model-strike-label, .plot-labels, #strike-label {
  font-family: var(--body);
  font-size: var(--chart-text-size, 18px);
}
@media (max-width: 1100px) {
  .model-prices, .model-greeks { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .model-interval { grid-column: 1/-1; }
  .nn-main { grid-template-columns: 200px minmax(0,1fr); }
  .nn-results { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
  .math-instrument { grid-template-columns: 1fr; }
  .nn-main { display: block; }
  .nn-input { grid-template-columns: minmax(145px,1fr) minmax(0,1fr); }
  .nn-inspector { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .nn-neuron-picker { grid-column: 1/-1; }
}
@media (max-width: 600px) {
  .math-controls { display: flex; flex-direction: column; gap: 0; }
  .math-kind-help { margin-bottom: 24px; }
  .math-seed-note { margin-top: 12px; }
  .math-slider label { font-size: 16px; }
  .math-slider output { font-size: 16px; }
  .model-greeks { grid-template-columns: 1fr; }
  .model-greeks span { min-height: 0; }
  .nn-input { grid-template-columns: 1fr; gap: 22px; }
  .nn-drawing { max-width: 240px; }
  .nn-noise { grid-column: 1; }
  .nn-scores { grid-template-columns: 1fr; }
  .nn-results>div:first-child { flex-wrap: wrap; gap: 8px; }
  .nn-preview-bottom { gap: 16px; }
  .nn-preview-presets { flex-wrap: wrap; }
  .noise-stage, .noise-controls { padding: 24px 20px; }
  .noise-tokens { gap: 7px; }
  .noise-tokens>span { padding: 7px 8px; }
  .workbench-section .workspace-tabs { gap: 12px; }
  .workbench-section .workspace-tabs button>.mono { white-space: normal; }
}
/* Mobile hero actions: open typography and one compact directional control. */
@media (max-width: 600px) {
  .hero-actions { display: flex; flex-wrap: wrap; align-items: center; width: 100%; max-width: 390px; gap: 12px 24px; }
  .hero-action { min-height: 48px; border-radius: 0; box-shadow: none; }
  .hero-action .hero-action-label { font-size: 16px; }
  .hero-action--work { flex: 0 0 auto; padding: 0; gap: 12px; }
  :root .hero-actions .hero-action--work, :root .hero-actions .hero-action--work:is(:hover,:active) { background: transparent; color: var(--ink); border: 0; box-shadow: none; }
  :root .hero-actions .hero-action--work .hero-action-arrow, :root .hero-actions .hero-action--work:hover .hero-action-arrow { align-self: center; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 50%; background: var(--dark); color: var(--paper); }
  .hero-action--work svg { width: 19px; height: 19px; animation: none; transition: transform .2s ease; }
  .hero-action--work:is(:hover,:focus-visible) svg { transform: translateY(2px); }
  .hero-action--resume { flex: 0 0 auto; justify-content: center; gap: 8px; padding: 0; border: 0; background: transparent; box-shadow: none; }
  .hero-action--resume .hero-action-label { text-decoration: underline; text-underline-offset: 6px; text-decoration-thickness: 1px; }
  .hero-action-document { width: 20px; height: 24px; }
  .hero-action-note, .hero-action-exit { display: none; }
  .hero-action:is(:hover,:active) { transform: none; box-shadow: none; }
}
@media (max-width: 360px) { .hero-actions { column-gap: 18px; } }
@media (prefers-reduced-motion:reduce) { .hero-actions .hero-action--work svg { transition: none; transform: none; } }
@media (max-width: 380px) {
  .site-header nav { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 20px; }
}

/* Footer actions should be as easy to read and use as the main navigation. */
.contact-bottom { padding: 28px 0 36px; flex-wrap: wrap; }
.contact-bottom>div:first-child { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.contact-bottom .email-link { font: 500 clamp(21px,2vw,26px)/1.5 var(--body); letter-spacing: -.02em; }
#copy-email { display: grid; place-items: center; width: 44px; height: 44px; margin-left: 4px; border: 1px solid var(--line-strong); border-radius: 8px; color: var(--ink); background: var(--surface); }
.social-links { flex-wrap: wrap; gap: 28px; }
.social-links a, .social-links .text-button { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; border: 0; border-radius: 0; background: transparent; color: var(--ink); font: 500 18px/1.5 var(--body); text-decoration: none; text-underline-offset: 6px; text-decoration-thickness: 1px; }
.social-links .text-button { text-decoration: underline; }
.social-links a:hover, .social-links .text-button:hover { color: var(--dark); text-decoration: underline; }
#copy-email:hover { background: var(--surface-raised); border-color: var(--dark); }
.footer-bottom { align-items: center; flex-wrap: wrap; gap: 14px 28px; padding: 24px 0; color: var(--ink); font: 400 16px/1.6 var(--body); letter-spacing: 0; }
.footer-bottom a { display: inline-flex; align-items: center; min-height: 44px; color: var(--dark); font-weight: 500; }
.footer-bottom>span:nth-child(2) { color: var(--muted); }
@media (max-width: 600px) {
  .social-links { width: 100%; gap: 12px 20px; }
  .social-links a, .social-links .text-button { flex: 0 0 auto; font-size: 17px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; gap: 8px; }
}

/* Company-led milestones: the identity is the marker, with a shared track axis. */
.enhanced.career-explorer { grid-template-columns: minmax(0,1fr); gap: 24px; }
.enhanced .career-index { position: static; min-width: 0; }
.career-guide { padding: 0 0 18px; }
.career-guide>p { font: 500 16px/1.4 var(--body); letter-spacing: 0; color: var(--muted); }
.career-rail { --station-x: 62px; --station-y: 108px; display: flex; gap: 0; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: var(--line-strong) transparent; padding: 12px 6px 18px; }
.career-rail .career-tab { position: relative; isolation: isolate; display: block; flex: 1 0 208px; width: auto; min-height: 270px; padding: 0 18px 0 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; text-align: left; scroll-snap-align: start; }
.career-rail .career-tab::before, .career-rail .career-tab::after { content: ''; position: absolute; z-index: -1; left: var(--station-x); right: calc(-1 * var(--station-x)); top: var(--station-y); height: 2px; transform: translateY(-50%); pointer-events: none; }
.career-rail .career-tab::before { background: var(--line-strong); opacity: .6; transition: background .4s, opacity .4s; }
.career-rail .career-tab.is-connected::before { background: var(--dark); opacity: 1; }
.career-rail .career-tab::after { background: linear-gradient(90deg,transparent,var(--dark),var(--accent),transparent) -100% 0 / 45% 100% no-repeat; opacity: 0; }
.career-rail .career-tab[aria-selected=true]::after { opacity: 1; animation: career-flow-x 3.6s ease-in-out infinite; }
.career-rail .career-tab:last-child::before, .career-rail .career-tab:last-child::after { display: none; }
.career-node { position: absolute; left: var(--station-x); top: var(--station-y); transform: translate(-50%,-50%); display: grid; place-items: center; width: 104px; height: 76px; border: 0; border-radius: 14px; background: var(--paper); box-shadow: 0 0 0 8px var(--paper); }
.career-node img { display: block; width: 48px; height: 52px; object-fit: contain; transition: transform .35s cubic-bezier(.2,.8,.2,1); }
.career-tab[data-company=dell] .career-node img { width: 52px; height: 52px; }
.career-tab[data-company=watonomous] .career-node img, .career-tab[data-company=skyview] .career-node img { width: 94px; height: 40px; }
.career-node::before { content: ''; position: absolute; inset: 0; border: 1px solid var(--line); border-radius: inherit; opacity: 0; transition: opacity .3s; }
.career-node::after { content: ''; position: absolute; inset: -5px; border-radius: 0; background: linear-gradient(var(--accent),var(--accent)) left top / 18px 2px no-repeat,linear-gradient(var(--accent),var(--accent)) left top / 2px 18px no-repeat,linear-gradient(var(--dark),var(--dark)) right bottom / 18px 2px no-repeat,linear-gradient(var(--dark),var(--dark)) right bottom / 2px 18px no-repeat; opacity: 0; transform: scale(.9); transition: opacity .3s, transform .3s; pointer-events: none; }
.career-tab[aria-selected=true] .career-node::before { opacity: 1; }
.career-tab[aria-selected=true] .career-node::after { opacity: 1; transform: scale(1); animation: career-brackets 4s ease-in-out infinite; }
.career-rail .career-tab .career-tab-copy { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 0; min-height: 270px; background: none; }
.career-rail .career-tab-years { display: flex; align-items: baseline; gap: 7px; padding-left: 12px; font: 600 38px/1.2 var(--display); letter-spacing: -.055em; color: var(--muted); white-space: nowrap; transition: color .3s; }
.career-tab-years small { font: 500 15px/1.3 var(--body); letter-spacing: -.02em; }
.career-tab-detail { position: relative; display: block; margin-top: 110px; padding: 16px 12px 18px; border: 0; border-radius: 8px; transition: background .3s, transform .3s; }
.career-tab-detail::before { content: ''; position: absolute; left: 12px; top: 0; width: 24px; height: 3px; border-radius: 3px; background: var(--accent); transform: scaleX(0); transform-origin: left; transition: transform .35s; }
.career-rail .career-tab-name { display: block; margin: 0; font: 600 19px/1.3 var(--body); color: var(--ink); }
.career-tab-role { display: block; margin-top: 9px; font: 400 14px/1.5 var(--body); color: var(--muted); }
.career-rail .career-tab[aria-selected=true] .career-tab-years { color: var(--dark); }
.career-rail .career-tab[aria-selected=true] .career-tab-detail { background: linear-gradient(135deg,color-mix(in srgb,var(--dark) 9%,var(--paper)),transparent); }
.career-rail .career-tab[aria-selected=true] .career-tab-detail::before { transform: scaleX(1); }
.career-rail .career-tab[aria-selected=true] .career-tab-name { color: var(--ink); text-decoration: none; }
.career-rail .career-tab:focus-visible { outline: 2px solid var(--dark); outline-offset: -2px; border-radius: 10px; }
[data-theme=light] .career-tab[data-company=watonomous] .career-node img { filter: brightness(0); }
[data-theme=dark] .career-tab[data-company=dell] .career-node img,
[data-theme=dark] .career-tab[data-company=skyview] .career-node img { filter: brightness(0) invert(1); }
[data-theme=dark] .career-tab[data-company=mcap] .career-node img { filter: brightness(1.7) saturate(.65); }
@media (hover:hover) {
 .career-rail .career-tab:hover:not([aria-selected=true]) { background: transparent; }
 .career-rail .career-tab:hover .career-node img { transform: translateY(-4px) scale(1.08); }
 .career-rail .career-tab:hover .career-node::before { opacity: 1; }
 .career-rail .career-tab:hover .career-tab-detail { transform: translateY(-2px); }
 .career-rail .career-tab:hover .career-tab-years { color: var(--dark); }
}
@keyframes career-brackets { 0%,100% { transform: scale(1); opacity: .8; } 50% { transform: scale(1.06); opacity: 1; } }
@keyframes career-flow-x { 0%,15% { background-position: 200% 0; } 85%,100% { background-position: -100% 0; } }
@keyframes career-flow-y { 0%,15% { background-position: 0 200%; } 85%,100% { background-position: 0 -100%; } }
@media (max-width: 900px) {
 .enhanced.career-explorer { gap: 22px; }
 .career-guide { padding-bottom: 12px; }
 .career-rail { --station-x: 46px; --station-y: 52px; flex-direction: column; overflow: visible; scroll-snap-type: none; padding: 4px 0; }
 .career-rail .career-tab { flex: none; width: 100%; min-height: 130px; padding: 12px 0 20px 108px; }
 .career-rail .career-tab::before, .career-rail .career-tab::after { left: var(--station-x); top: var(--station-y); bottom: calc(-1 * var(--station-y)); right: auto; height: auto; width: 2px; transform: translateX(-50%); }
 .career-rail .career-tab::after { background-image: linear-gradient(180deg,transparent,var(--dark),var(--accent),transparent); background-size: 100% 45%; }
 .career-rail .career-tab[aria-selected=true]::after { animation-name: career-flow-y; }
 .career-node { width: 82px; height: 66px; border-radius: 12px; }
 .career-node img { width: 36px; height: 40px; }
 .career-tab[data-company=dell] .career-node img { width: 42px; height: 42px; }
 .career-tab[data-company=watonomous] .career-node img, .career-tab[data-company=skyview] .career-node img { width: 78px; height: 34px; }
 .career-rail .career-tab .career-tab-copy { min-height: 0; gap: 5px; padding: 0; }
 .career-rail .career-tab-years { padding-left: 10px; font: 600 23px/1.2 var(--body); letter-spacing: -.035em; gap: 5px; }
 .career-tab-years small { font-size: 14px; }
 .career-tab-detail { margin-top: 0; padding: 9px 10px 12px; border-radius: 5px; }
 .career-tab-detail::before { left: 0; top: 10px; width: 2px; height: 22px; transform: scaleY(0); transform-origin: top; }
 .career-rail .career-tab[aria-selected=true] .career-tab-detail::before { transform: scaleY(1); }
 .career-rail .career-tab-name { font-size: 18px; }
 .career-tab-role { margin-top: 5px; }
}
@media (max-width:360px) { .career-rail .career-tab { padding-left: 98px; } .career-rail .career-tab-name { font-size: 17px; } .career-rail .career-tab-years { font-size: 21px; gap: 3px; } }
/* On phones, standalone symbols sit beside the role heading. */
.career-logo img.career-mobile-symbol { display: none; }
@media (max-width:600px) {
 :is(#career-versa,#career-mcap,#career-dell) .career-identity { grid-template-columns: 48px minmax(0,1fr); column-gap: 16px; row-gap: 8px; }
 :is(#career-versa,#career-mcap,#career-dell) .identity-top { grid-column: 1/-1; grid-row: 1; margin-bottom: 20px; }
 :is(#career-versa,#career-mcap,#career-dell) .career-logo { grid-column: 1; grid-row: 2/4; width: 48px; height: 56px; align-self: start; margin: 0; }
 :is(#career-versa,#career-mcap,#career-dell) .career-logo img:not(.career-mobile-symbol) { display: none; }
 :is(#career-versa,#career-mcap,#career-dell) .career-logo img.career-mobile-symbol { display: block; width: 46px; height: 52px; object-fit: contain; object-position: center; filter: none; }
 :is(#career-versa,#career-mcap,#career-dell) .career-identity-copy { display: contents; }
 :is(#career-versa,#career-mcap,#career-dell) .career-identity-copy h3 { grid-column: 2; grid-row: 2; font-size: 25px; margin: 0; }
 :is(#career-versa,#career-mcap,#career-dell) .career-identity-copy>p { grid-column: 2; grid-row: 3; margin: 0; }
 :is(#career-versa,#career-mcap,#career-dell) .career-identity-copy dl { grid-column: 1/-1; grid-row: 4; margin-top: 24px; }
 [data-theme=dark] #career-dell .career-logo img.career-mobile-symbol { filter: invert(1); }
 [data-theme=dark] #career-mcap .career-logo img.career-mobile-symbol { filter: brightness(1.7) saturate(.65); }
 #career-watonomous .career-logo, #career-skyview .career-logo { width: 180px; height: 50px; }
}
.motion-paused .career-node::after, .motion-paused .career-rail .career-tab::after { animation-play-state: paused; }
@media (prefers-reduced-motion:reduce) {
 .career-rail .career-tab, .career-rail .career-tab::before, .career-node img, .career-node::before, .career-node::after, .career-tab-years, .career-tab-detail, .career-tab-detail::before { transition: none; }
 .career-rail .career-tab::after, .career-tab[aria-selected=true] .career-node::after { animation: none; }
 .career-rail .career-tab:hover .career-tab-detail, .career-rail .career-tab:hover .career-node img { transform: none; }
}

/* Open timeline with optically balanced marks and one uninterrupted light. */
.career-rail { position: relative; }
.career-node::before,.career-node::after,
.career-rail .career-tab::before,.career-rail .career-tab::after { display: none; animation: none; }
.career-rail .career-tab[aria-selected=true] .career-tab-detail { background: none; }
.career-rail .career-tab { min-height: 292px; }
.career-rail .career-tab .career-tab-copy { min-height: 292px; }
.career-tab-detail { margin-top: 130px; }
.career-node { width: 144px; height: 82px; box-shadow: none; background: transparent; }
.career-node img { width: 60px; height: 66px; }
.career-tab[data-company=dell] .career-node img { width: 62px; height: 62px; }
.career-tab[data-company=mcap] .career-node img { width: 60px; height: 66px; }
.career-tab[data-company=watonomous] .career-node img,
.career-tab[data-company=skyview] .career-node img { width: 144px; height: 54px; }
.career-track { position: absolute; display: block; overflow: hidden; border-radius: 3px; background: color-mix(in srgb,var(--line-strong) 70%,transparent); pointer-events: none; }
.career-light { position: absolute; top: 0; left: 0; width: 110px; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--dark),var(--accent) 25%,transparent); animation: career-travel-x 7s linear infinite; will-change: transform; }
@keyframes career-travel-x { from { transform: translateX(var(--travel)); } to { transform: translateX(-100%); } }
@keyframes career-travel-y { from { transform: translateY(var(--travel)); } to { transform: translateY(-100%); } }
@media (max-width:900px) {
 .career-rail { --station-x: 74px; }
 .career-rail .career-tab { min-height: 148px; padding-left: 144px; }
 .career-rail .career-tab .career-tab-copy { min-height: 0; }
 .career-tab-detail { margin-top: 0; }
 .career-node { width: 112px; height: 76px; }
 .career-node img { width: 50px; height: 56px; }
 .career-tab[data-company=dell] .career-node img { width: 52px; height: 52px; }
 .career-tab[data-company=mcap] .career-node img { width: 50px; height: 56px; }
 .career-tab[data-company=watonomous] .career-node img,
 .career-tab[data-company=skyview] .career-node img { width: 112px; height: 46px; }
 .career-light { width: 100%; height: 110px; background: linear-gradient(180deg,var(--dark),var(--accent) 25%,transparent); animation-name: career-travel-y; }
}
@media (max-width:360px) {
 .career-rail { --station-x: 66px; }
 .career-rail .career-tab { padding-left: 128px; }
 .career-rail .career-tab-years { padding-left: 4px; font-size: 20px; }
 .career-tab-years small { font-size: 14px; }
 .career-tab-detail { padding-left: 4px; padding-right: 0; }
 .career-tab-detail::before { left: -4px; }
 .career-node { width: 104px; }
 .career-tab[data-company=watonomous] .career-node img,
 .career-tab[data-company=skyview] .career-node img { width: 104px; }
}
.motion-paused .career-light { animation-play-state: paused; }
@media (prefers-reduced-motion:reduce) { .career-light { animation: none; display: none; } }
