/* FireResponse.ai — self-contained responsive marketing site. */
:root {
  --bg: #06111e;
  --bg-deep: #030c15;
  --bg-mid: #091b2a;
  --surface: #0c2233;
  --surface-light: #112c3d;
  --orange: #ff763c;
  --orange-light: #ff9a62;
  --cyan: #36c7d2;
  --cream: #f7c894;
  --text: #f5f8fa;
  --muted: #9caebe;
  --muted-2: #6f8799;
  --border: rgba(129, 182, 204, .19);
  --font-body: 'Barlow', 'Segoe UI', Arial, sans-serif;
  --font-display: 'Barlow Condensed', 'Arial Narrow', Impact, sans-serif;
  --wrap: 1240px;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 94px; }
body { margin:0; background:var(--bg); color:var(--text); font-family:var(--font-body); -webkit-font-smoothing:antialiased; overflow-x:clip; }
body.menu-open { overflow:hidden; }
[hidden] { display: none !important; }
::selection { background:var(--orange); color:#09131e; }
a { color:inherit; text-decoration:none; }
a, button { -webkit-tap-highlight-color: transparent; }
button { font:inherit; }
button, a { touch-action: manipulation; }
button:focus-visible, a:focus-visible { outline:2px solid var(--cyan); outline-offset:4px; }
img { max-width:100%; display:block; }
svg { display:block; }
h1,h2,h3,h4,h5,p,blockquote { margin-top:0; }
.container { width:min(var(--wrap), calc(100% - 100px)); margin-inline:auto; }
.skip-link { position:fixed; top:-80px; left:14px; z-index:999; padding:13px 18px; background:var(--orange); color:#06111e; font-weight:800; }
.skip-link:focus { top:12px; }
.text-muted { color:var(--muted); }
.text-orange { color:var(--orange); }

/* Header */
.site-header { position:absolute; top:0; width:100%; z-index:90; height:96px; border-bottom:1px solid rgba(255,255,255,.10); transition:background .25s, box-shadow .25s; }
.site-header.scrolled, .site-header.menu-visible { position:fixed; background:rgba(4,15,26,.96); box-shadow:0 10px 30px #0005; backdrop-filter:blur(16px); }
.header-inner { height:100%; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:inline-flex; align-items:center; gap:13px; flex-shrink:0; }
.brand-name { white-space:nowrap; font:800 29px/.9 var(--font-display); letter-spacing:-.6px; }
.brand-name span { color:var(--orange); }
.brand-mark { display:flex; height:31px; gap:3px; align-items:flex-end; }
.brand-mark i { width:3px; background:var(--orange); box-shadow:0 0 8px #ff773c30; }
.brand-mark i:nth-child(1) { height:12px; }
.brand-mark i:nth-child(2) { height:23px; }
.brand-mark i:nth-child(3) { height:16px; }
.brand-mark i:nth-child(4) { height:31px; }
.brand-mark i:nth-child(5) { height:20px; }
.brand-mark i:nth-child(6) { height:28px; }
.desktop-nav { display:flex; gap:29px; align-items:center; margin-left:auto; }
.desktop-nav a { font:600 12px/1 var(--font-body); color:#b7c3cf; text-transform:uppercase; letter-spacing:1px; transition:color .2s; white-space:nowrap; }
.desktop-nav a:hover,.desktop-nav a.active { color:var(--orange-light); }
.header-actions { display:flex; align-items:center; gap:15px; }
.nav-contact { display:flex; align-items:center; gap:17px; border:1px solid #ff935b99; border-radius:3px; padding:14px 19px; color:#fff; font-size:13px; font-weight:700; white-space:nowrap; transition:background .2s,border-color .2s; }
.nav-contact span { color:var(--orange); font-size:20px; line-height:10px; }
.nav-contact:hover { background:#ff763c21; border-color:var(--orange); }
.menu-toggle { display:none; width:46px; height:42px; background:none; color:var(--text); border:1px solid var(--border); border-radius:3px; align-items:center; justify-content:center; flex-direction:column; gap:5px; cursor:pointer; }
.menu-toggle span { width:20px; height:1.5px; background:var(--text); transition:transform .2s,opacity .2s; }
.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }
.mobile-nav { position:fixed; top:74px; left:0; right:0; padding:22px 30px 38px; min-height:calc(100dvh - 74px); background:#061522; flex-direction:column; box-shadow:0 20px 30px #0008; }
.mobile-nav:not([hidden]) { display:flex; }
.mobile-nav a { padding:16px 3px; font:700 25px/1.1 var(--font-display); text-transform:uppercase; border-bottom:1px solid var(--border); }
.mobile-nav .mobile-nav-contact { margin-top:23px; padding:16px 20px; color:#07111a; background:var(--orange); border:0; font-size:20px; text-align:center; }

/* Shared */
.section { position:relative; padding:126px 0 132px; isolation:isolate; }
.section-heading { display:flex; align-items:end; justify-content:space-between; gap:64px; margin-bottom:56px; }
.section-heading > div { flex:1 1 auto; }
.section-heading > p { flex:0 0 min(380px,35%); max-width:380px; margin:0 0 7px; color:var(--muted); font-size:17px; line-height:1.62; }
.section-kicker, .eyebrow { font-size:12px; font-weight:800; letter-spacing:2.25px; text-transform:uppercase; color:var(--orange); }
.section-kicker { display:flex; align-items:center; gap:13px; margin-bottom:29px; }
.kicker-number { padding:5px 8px; border:1px solid #ff763c60; color:var(--orange); font-family:var(--font-display); font-size:16px; letter-spacing:0; }
.section-heading h2, .vision-heading h2, .field-copy h2 { font:800 clamp(50px,5.2vw,78px)/.98 var(--font-display); letter-spacing:-.55px; margin:0; }
.reveal { opacity:1; transform:none; }
.js .reveal { opacity:0; transform:translateY(20px); transition:opacity .7s ease, transform .7s cubic-bezier(.22,1,.36,1); }
.reveal.visible { opacity:1; transform:translateY(0); }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto} *,*::before,*::after{ animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } .reveal { opacity:1!important;transform:none!important; } }

/* Hero */
.hero { position:relative; min-height:830px; min-height:max(830px,100svh); display:flex; flex-direction:column; justify-content:center; overflow:hidden; isolation:isolate; background:#020a13; }
.hero-image,.hero-tint,.hero-grid { position:absolute; inset:0; pointer-events:none; }
.hero-image { background:url('assets/images/fireground-hero.webp') center 47%/cover no-repeat; z-index:-4; animation:hero-arrive 1.3s ease-out both; }
.hero-tint { z-index:-3; background:linear-gradient(90deg,rgba(1,12,21,.95) 0%,rgba(1,12,21,.87) 27%,rgba(1,12,21,.46) 57%,rgba(1,12,21,.12) 100%),linear-gradient(0deg,#04111e 0%,transparent 27%,transparent 70%,#04101ba0 100%); }
.hero-grid { z-index:-2; opacity:.25; background:radial-gradient(circle at 76% 45%,transparent 0 100px,#75adbb20 101px,#0000 103px,transparent 140px,#75adbb25 141px,#0000 143px,transparent 190px,#75adbb22 191px,#0000 193px),linear-gradient(90deg,transparent 49.97%,#a7d9e315 50%,transparent 50.03%); }
@keyframes hero-arrive { from { opacity:.6; transform:scale(1.03); } to { opacity:1; transform:scale(1); } }
.hero-content { position:relative; padding-top:122px; padding-bottom:174px; }
.hero-eyebrow { display:flex; align-items:center; gap:13px; margin-bottom:41px; }
.eyebrow-line { width:31px; height:2px; background:var(--orange); }
.eyebrow-divider { color:#507387; }
.hero h1 { font:800 clamp(77px,7.3vw,117px)/.91 var(--font-display); letter-spacing:-1.65px; max-width:930px; margin:0; text-transform:none; text-wrap:balance; }
.hero h1 span { color:var(--orange); }
.hero-rule { width:77px; height:5px; background:var(--orange); margin:39px 0 31px; }
.hero-lead { color:#cad6df; font:400 clamp(18px,1.7vw,23px)/1.44 var(--font-body); max-width:590px; margin-bottom:32px; }
.hero-ctas { display:flex; align-items:center; gap:13px; flex-wrap:wrap; }
.btn { display:inline-flex; justify-content:space-between; align-items:center; gap:28px; min-height:54px; border-radius:3px; padding:16px 23px; font-size:13px; font-weight:800; letter-spacing:1.1px; text-transform:uppercase; transition:transform .2s, background .2s,border-color .2s,box-shadow .2s; }
.btn:hover { transform:translateY(-2px); }
.btn-primary { color:#08121b; background:var(--orange); border:1px solid var(--orange); box-shadow:0 12px 28px #ff763c1b; }
.btn-primary:hover { background:#ff925f; box-shadow:0 14px 38px #ff763c39; }
.btn-arrow { font-size:20px; line-height:10px; }
.btn-outline { border:1px solid #b8cbd066; color:#f5f8fa; background:#0b253a40; }
.btn-outline:hover { border-color:var(--cyan); background:#122c3f; }
.hero-bottom { position:absolute; bottom:0; left:50%; transform:translateX(-50%); display:flex; align-items:end; justify-content:space-between; gap:20px; padding-bottom:34px; }
.hero-stats { display:flex; align-items:stretch; max-width:970px; flex:1; border-top:1px solid rgba(255,255,255,.25); padding-top:19px; }
.hero-stats > div { display:grid; grid-template-columns:10px 1fr; column-gap:8px; row-gap:5px; padding:0 29px 0 0; margin-right:26px; border-right:1px solid rgba(255,255,255,.16); }
.hero-stats > div:last-child { border:0; margin-right:0; }
.hero-stats strong { font-size:11px; letter-spacing:1.4px; }
.hero-stats > div > span:last-child { grid-column:2; font-size:12px; color:#adbcc8; line-height:1.3; }
.tiny-pulse { width:7px; height:7px; background:var(--orange); border-radius:50%; margin-top:3px; box-shadow:0 0 0 3px #ff763c35; }
.tiny-pulse.cyan { background:var(--cyan); box-shadow:0 0 0 3px #36c7d235; }
.scroll-cue { display:flex; align-items:center; gap:12px; font-size:10px; font-weight:800; letter-spacing:1.45px; color:#b2b9c0; white-space:nowrap; }
.scroll-cue > span:last-child { font-size:20px; color:var(--orange); }
.scroll-cue-line { height:1px; width:30px; background:var(--orange); }

/* Challenge */
.challenge-section { background:linear-gradient(180deg,#081726,#061521); }
.challenge-section::before { position:absolute; inset:0; content:''; z-index:-1; opacity:.24; background:url('assets/images/topography.webp') center/cover no-repeat; }
.radio-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.radio-card { display:flex; flex-direction:column; min-height:270px; padding:29px; background:#0d2435f2; border:1px solid var(--border); border-top:4px solid var(--orange); border-radius:3px; box-shadow:0 15px 30px #0002; }
.card-accent-cyan { border-top-color:var(--cyan); }
.card-accent-gold { border-top-color:var(--cream); }
.radio-card-top { display:flex; align-items:center; justify-content:space-between; font-size:11px; font-weight:800; letter-spacing:1.4px; color:var(--orange); }
.card-accent-cyan .radio-card-top { color:var(--cyan); }
.card-accent-gold .radio-card-top { color:var(--cream); }
.radio-waves { display:flex; align-items:center; gap:3px; height:23px; }
.radio-waves i { width:2px; height:10px; background:currentColor; animation:signal 2s ease-in-out infinite alternate; }
.radio-waves i:nth-child(2) { height:18px; animation-delay:.2s; }
.radio-waves i:nth-child(3) { height:13px; animation-delay:.4s; }
.radio-waves i:nth-child(4) { height:22px; animation-delay:.6s; }
.radio-waves i:nth-child(5) { height:8px; animation-delay:.8s; }
@keyframes signal { to { transform:scaleY(.5); opacity:.65; } }
.radio-card blockquote { font:700 clamp(26px,2.55vw,34px)/1.06 var(--font-display); margin:42px 0 auto; max-width:300px; }
.radio-card-foot { display:flex; gap:9px; align-items:center; margin-top:39px; color:#a9bdcb; font-size:12px; font-weight:800; letter-spacing:.4px; }
.channel-dot { width:8px; height:8px; background:var(--orange); border-radius:50%; }
.card-accent-cyan .channel-dot { background:var(--cyan); }
.card-accent-gold .channel-dot { background:var(--cream); }
.msg-time { margin-left:auto; color:#637b8e; font-size:11px; font-weight:600; }
.challenge-gap { display:flex; align-items:center; gap:21px; margin:36px auto 0; padding:22px 28px; border:1px solid #32c0d066; background:#0f2d40; border-radius:4px; max-width:990px; }
.gap-indicator { flex:0 0 33px; height:33px; border:1px solid var(--orange); display:grid; place-items:center; font:800 21px/1 var(--font-display); color:var(--orange); }
.gap-label { flex-shrink:0; color:var(--orange); font-size:11px; font-weight:800; letter-spacing:1.4px; }
.challenge-gap strong { margin-left:7px; font:700 clamp(20px,2vw,25px)/1.1 var(--font-display); }
.challenge-gap em { font-style:normal; color:var(--cyan); }

/* Workflow */
.platform-section { background:linear-gradient(180deg,#06111e,#081a29); overflow:hidden; }
.topographic-bg { position:absolute; inset:0; opacity:.17; z-index:-1; background:url('assets/images/topography.webp') center/cover; }
.workflow { display:grid; grid-template-columns:repeat(4,1fr); gap:17px; }
.workflow-step { position:relative; min-height:290px; border:1px solid var(--border); border-top:4px solid var(--orange); border-radius:3px; background:#0c2537df; padding:29px 26px 30px; transition:background .2s,border-color .2s,transform .2s,opacity .7s; }
.workflow-step:nth-child(even) { border-top-color:var(--cyan); }
.workflow-step::after { position:absolute; z-index:2; top:49%; right:-22px; content:'›'; font:900 43px/1 var(--font-display); color:var(--orange); }
.workflow-step:last-child::after { display:none; }
.workflow-step:hover { background:#133448; border-left-color:#3c5a70; transform:translateY(-4px); }
.workflow-top { display:flex; justify-content:space-between; align-items:start; }
.workflow-number { font:800 36px/1 var(--font-display); color:var(--orange); }
.workflow-step:nth-child(even) .workflow-number, .workflow-step:nth-child(even) .workflow-glyph { color:var(--cyan); }
.workflow-glyph { color:var(--orange); width:42px; height:42px; opacity:.84; }
.workflow-step h3 { margin:70px 0 14px; font:800 29px/1 var(--font-display); text-transform:uppercase; }
.workflow-step p { margin:0; font-size:15px; line-height:1.48; color:#a5b8c7; max-width:210px; }
.workflow-foot { display:flex; align-items:center; justify-content:center; gap:28px; margin-top:46px; color:var(--text); font:700 18px/1 var(--font-display); letter-spacing:1.2px; }
.workflow-foot b { color:var(--orange); padding:0 12px; }
.workflow-foot-line { width:80px; height:1px; background:var(--border); }

/* Simulated command console */
.console-section { background:#06121d; }
.console-heading { margin-bottom:50px; }
.command-shell { border:1px solid rgba(88,167,189,.44); border-radius:10px; overflow:hidden; background:#071b2c; box-shadow:0 30px 110px #0008,0 0 75px #1a7c9320; }
.console-toolbar { background:linear-gradient(90deg,#133349,#0c2b3d); display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:60px; padding:12px 25px; border-bottom:1px solid #2a536452; }
.console-brand { display:flex; align-items:center; gap:13px; white-space:nowrap; }
.console-brand .mini-waves { color:var(--orange); letter-spacing:0; font-size:20px; }
.console-brand b { font:800 23px/1 var(--font-display); }
.console-brand b span { color:var(--orange); }
.console-brand strong { font:800 18px/1 var(--font-display); }
.console-toolbar-divider { color:#4a6d80; font-size:19px; }
.console-badges { display:flex; align-items:center; gap:10px; }
.console-badge { display:inline-flex; align-items:center; gap:8px; font-size:10px; letter-spacing:1px; font-weight:800; border:1px solid; border-radius:4px; padding:9px 11px; white-space:nowrap; }
.badge-cyan { color:var(--cyan); background:#0a3743; border-color:#1a7e8c88; }
.badge-orange { color:var(--orange); background:#40291866; border-color:#a0552888; }
.status-light { width:7px; height:7px; border-radius:50%; background:var(--cyan); box-shadow:0 0 9px #36c7d280; }
.console-inner { padding:26px 28px 28px; }
.console-summary { display:flex; justify-content:space-between; gap:30px; align-items:center; padding-bottom:26px; }
.console-overline, .pane-kicker { color:var(--cyan); font-size:10px; font-weight:800; letter-spacing:1.5px; }
.console-summary h3 { font:800 35px/1 var(--font-display); margin:8px 0 6px; }
.console-summary p { color:var(--muted-2); margin:0; font-size:13px; }
.replay-btn { display:inline-flex; gap:10px; align-items:center; background:transparent; border:1px solid #426072; border-radius:3px; color:#dfebf2; padding:11px 14px; font-size:12px; font-weight:700; cursor:pointer; white-space:nowrap; transition:border-color .2s,background .2s; }
.replay-btn:hover { border-color:var(--cyan); background:#103044; }
.replay-btn:disabled { opacity:.6; cursor:progress; }
.replay-icon { color:var(--cyan); font-size:20px; line-height:10px; }
.console-metrics { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #31546671; border-radius:4px; overflow:hidden; background:#0b2639; margin-bottom:24px; }
.console-metrics > div { display:flex; align-items:center; gap:12px; padding:17px 18px; border-right:1px solid #31546671; }
.console-metrics > div:last-child { border:0; }
.console-metrics span { font:800 31px/.9 var(--font-display); color:var(--cyan); }
.console-metrics small { font-size:10px; line-height:1.2; font-weight:800; color:#91acbc; letter-spacing:.7px; }
.console-workspace { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.timeline-pane, .review-pane { min-width:0; padding:22px 21px; border:1px solid #284f6473; border-radius:5px; background:#081e2f; }
.pane-heading { display:flex; justify-content:space-between; align-items:end; gap:12px; margin-bottom:18px; }
.pane-heading h4 { font:800 22px/1 var(--font-display); margin:7px 0 0; }
.filter-group { display:flex; gap:3px; background:#061520; padding:3px; border:1px solid #204253; border-radius:3px; }
.filter-chip { border:0; border-radius:2px; padding:7px 9px; background:transparent; color:#8ca5b6; font-size:10px; font-weight:800; cursor:pointer; white-space:nowrap; }
.filter-chip.active, .filter-chip[aria-pressed='true'] { color:#061b27; background:var(--cyan); }
.event-list { display:flex; flex-direction:column; gap:9px; }
.event-row { width:100%; display:grid; grid-template-columns:8px 53px minmax(0,1fr) 13px; align-items:center; gap:11px; min-height:74px; border:1px solid #2a536644; border-radius:5px; padding:12px 10px; text-align:left; cursor:pointer; color:var(--text); background:#102c40; transition:background .18s,border-color .18s,transform .18s; }
.event-row:hover { transform:translateX(2px); background:#163a50; }
.event-row.active { background:#154056; border-color:#46adbd99; }
.event-row[hidden] { display:none; }
.event-marker { width:7px; height:7px; border-radius:50%; }
.event-marker.orange { background:var(--orange); }
.event-marker.cyan { background:var(--cyan); }
.event-time { align-self:start; color:#8da7b5; font-size:10px; margin-top:4px; white-space:nowrap; }
.event-info { display:flex; flex-direction:column; gap:8px; min-width:0; }
.event-info strong { font:800 16px/1 var(--font-display); white-space:nowrap; }
.event-info strong small { font-size:11px; font-weight:600; color:#a2b7c6; }
.event-info > span { color:#9fb7c5; font-size:12px; line-height:1.34; }
.event-chevron { align-self:start; font-size:15px; color:var(--cyan); }
.replay-status { margin:14px 0 0; font-size:11px; color:#7898a7; min-height:18px; }
.queue-count { font-size:10px; font-weight:800; letter-spacing:1px; color:#8ea7b6; }
.review-item { width:100%; text-align:left; display:flex; flex-direction:column; gap:11px; min-height:137px; padding:17px 19px; border:1px solid #ff763c88; border-left:3px solid var(--orange); background:#102c3d; border-radius:4px; color:var(--text); margin-bottom:11px; cursor:pointer; transition:background .2s,border-color .2s; }
.review-item:last-child { margin-bottom:0; }
.review-item:hover, .review-item.selected { background:#18394c; border-color:#ff965f; }
.review-item.observed { border-color:#18889980; border-left-color:var(--cyan); }
.review-item.observed:hover,.review-item.observed.selected { border-color:var(--cyan); }
.review-item-head { display:flex; align-items:center; gap:9px; color:var(--orange); font-size:10px; font-weight:800; letter-spacing:.7px; }
.review-item.observed .review-item-head { color:var(--cyan); }
.review-symbol { font:800 20px/12px var(--font-display); }
.review-tag { margin-left:auto; padding:5px 8px; border-radius:3px; background:#56331e; color:var(--orange); font-size:9px; }
.review-item.observed .review-tag { color:var(--cyan); background:#0c4950; }
.review-item strong { font:800 20px/1 var(--font-display); }
.review-item p { color:#9eb6c4; font-size:12px; margin:0; }
.review-item-action { margin-top:auto; font-size:10px; font-weight:800; letter-spacing:.9px; color:var(--cyan); }
.review-item-action span { font-size:14px; }
.source-panel { display:flex; flex-direction:column; gap:18px; margin-top:21px; background:linear-gradient(90deg,#102d3d,#0b2635); border:1px solid #247b8c77; border-radius:5px; padding:20px 24px; }
.source-panel-heading { display:flex; gap:12px; align-items:center; }
.source-icon { width:36px; height:36px; flex-shrink:0; border:1px solid #46c5d090; border-radius:50%; display:grid; place-items:center; color:var(--cyan); font-size:17px; }
.source-panel h4 { font:800 22px/1 var(--font-display); margin:6px 0 0; }
.source-pair { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.source-pair > div { border-top:1px solid #3e62747a; padding-top:14px; }
.source-label { display:block; color:#91b4c2; font-size:10px; letter-spacing:1.1px; font-weight:800; }
.source-pair p { color:#e0edf0; font-size:14px; line-height:1.48; margin:10px 0 0; }
.console-footer { display:flex; align-items:center; justify-content:space-between; padding:14px 27px; border-top:1px solid #35607260; color:#6b9fb2; background:#0b2739; font-size:10px; font-weight:800; letter-spacing:1.25px; }
.console-footer > span:first-child { color:var(--cyan); }
.footer-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--cyan); margin-right:8px; }
.console-footer-divide { margin:0 7px; color:#546d7a; }
.console-caption { display:flex; align-items:center; justify-content:center; gap:24px; margin:30px auto 0; max-width:780px; }
.caption-accent { color:var(--orange); font-size:10px; font-weight:800; letter-spacing:1.3px; white-space:nowrap; }
.console-caption p { margin:0; color:#96acba; border-left:1px solid #436578; padding-left:22px; font-size:14px; line-height:1.4; }

/* Principles */
.principles-section { background:linear-gradient(160deg,#0b2132,#071421); }
.principles-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.principle-card { display:flex; flex-direction:column; min-height:350px; border:1px solid var(--border); border-radius:4px; background:linear-gradient(160deg,#112d3e,#0b2434); padding:31px 31px 25px; }
.principle-icon { display:block; width:51px; height:51px; margin-bottom:30px; }
.icon-orange { color:var(--orange); }
.icon-cyan { color:var(--cyan); }
.principle-index { color:var(--orange); font-size:10px; font-weight:800; letter-spacing:1.45px; margin-bottom:12px; }
.principle-card:nth-child(2) .principle-index { color:var(--cyan); }
.principle-card h3 { font:800 29px/1.03 var(--font-display); margin-bottom:15px; }
.principle-card p { font-size:15px; line-height:1.54; color:#9eafbc; margin-bottom:35px; }
.principle-bottom { border-top:1px solid #57738455; margin-top:auto; padding-top:17px; display:flex; justify-content:space-between; font-size:10px; letter-spacing:1.2px; font-weight:800; color:#95aab7; }
.principle-bottom span { color:var(--orange); font-size:17px; line-height:10px; }

/* Vision */
.vision-section { position:relative; overflow:hidden; padding:135px 0 148px; isolation:isolate; background:#071622; }
.vision-image,.vision-cover { position:absolute; inset:0; pointer-events:none; }
.vision-image { z-index:-3; background:url('assets/images/command-center.webp') center 46%/cover no-repeat; }
.vision-cover { z-index:-2; background:linear-gradient(90deg,#03111df0 3%,#03111da9 100%),linear-gradient(180deg,#06152060 0%,#061520f5 95%); }
.vision-heading { max-width:825px; margin-bottom:65px; }
.vision-heading h2 span { color:var(--orange); }
.vision-heading p { max-width:680px; font-size:18px; line-height:1.65; color:#b3c3cd; margin:25px 0 0; }
.roadmap-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:21px; }
.roadmap-card { min-height:328px; display:flex; flex-direction:column; padding:29px 30px; border:1px solid #55718085; border-top:4px solid var(--cyan); border-radius:3px; background:#0d273aeb; backdrop-filter:blur(15px); }
.roadmap-card.roadmap-now { border-top-color:var(--orange); }
.roadmap-card:last-child { border-top-color:var(--orange); }
.roadmap-label { display:flex; gap:8px; align-items:center; font-size:10px; font-weight:800; letter-spacing:1.5px; color:#b9cbd5; }
.roadmap-dot { height:7px; width:7px; border-radius:50%; background:var(--orange); }
.roadmap-dot.cyan { background:var(--cyan); }
.roadmap-card h3 { font:800 38px/.98 var(--font-display); margin:31px 0 20px; }
.roadmap-card ul { margin:0 0 30px; padding:0; list-style:none; }
.roadmap-card li { position:relative; padding-left:18px; margin-bottom:13px; color:#b3c4d0; font-size:15px; line-height:1.26; }
.roadmap-card li::before { position:absolute; top:7px; left:0; height:6px; width:6px; background:var(--cyan); border-radius:50%; content:''; }
.roadmap-card.roadmap-now li::before, .roadmap-card:last-child li::before { background:var(--orange); }
.roadmap-foot { margin-top:auto; color:var(--orange); padding-top:18px; border-top:1px solid #54788b77; font-size:10px; font-weight:800; letter-spacing:1.5px; }
.roadmap-card:nth-child(2) .roadmap-foot { color:var(--cyan); }

/* Field */
.field-section { background:#081b2a; }
.field-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:75px; align-items:center; }
.field-visual { position:relative; align-self:stretch; min-height:500px; border:1px solid var(--border); overflow:hidden; }
.field-visual > img { width:100%; height:100%; object-fit:cover; object-position:75% center; filter:contrast(1.03) brightness(.93); }
.field-visual::after { position:absolute; content:''; inset:0; background:linear-gradient(0deg,#06111c80,transparent 48%); pointer-events:none; }
.field-image-tag { position:absolute; z-index:2; left:22px; bottom:21px; display:inline-flex; align-items:center; gap:10px; background:#081e2cea; color:#e0edf2; border:1px solid #6d9aad78; border-radius:3px; padding:10px 13px; font-size:10px; font-weight:800; letter-spacing:1.1px; }
.tag-circle { width:6px; height:6px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 3px #ff763c2e; }
.field-copy h2 { max-width:540px; }
.field-copy > p { color:#9fb3c1; font-size:18px; line-height:1.63; max-width:530px; margin:27px 0 30px; }
.field-detail { display:flex; gap:15px; padding:25px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.field-detail-mark { width:34px; height:34px; flex-shrink:0; display:grid; place-items:center; color:var(--orange); border:1px solid #ff763c70; border-radius:50%; }
.field-detail > div { display:flex; flex-direction:column; gap:10px; }
.field-detail-label { font-size:10px; color:var(--cyan); letter-spacing:1.5px; font-weight:800; }
.field-detail strong { font:800 25px/1.1 var(--font-display); }
.field-detail small { color:#8fa8ba; font-size:13px; line-height:1.35; }
.text-link { display:inline-flex; align-items:center; gap:22px; margin-top:29px; color:var(--orange); font-size:13px; text-transform:uppercase; font-weight:800; letter-spacing:1.3px; }
.text-link span { font-size:20px; line-height:12px; transition:transform .15s; }
.text-link:hover span { transform:translate(3px,-3px); }

/* Team */
.team-section { background:linear-gradient(180deg,#061420,#081b29); }
.team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.team-card { background:#102a3b; border:1px solid var(--border); border-radius:4px; overflow:hidden; transition:border-color .2s,transform .2s; }
.team-card:hover { border-color:#5994a2; transform:translateY(-4px); }
.team-photo { position:relative; aspect-ratio:1/.88; overflow:hidden; background:#213f4d; border-bottom:4px solid var(--orange); }
.team-card:nth-child(n+3) .team-photo { border-bottom-color:var(--cyan); }
.team-photo img { width:100%; height:100%; object-fit:cover; object-position:center 34%; filter:saturate(.84); transition:transform .35s ease; }
.team-card:hover img { transform:scale(1.05); }
.team-info { padding:25px 22px 28px; }
.team-info h3 { font:800 25px/1 var(--font-display); margin-bottom:11px; }
.team-role { display:block; font-size:10px; font-weight:800; color:var(--orange); letter-spacing:.9px; line-height:1.5; margin-bottom:13px; }
.team-role.role-cyan { color:var(--cyan); }
.team-info p { font-size:13px; line-height:1.56; color:#a2b9c8; margin:0; }
.team-bio-link { display:inline-flex; align-items:center; gap:6px; font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--cyan); margin-top:17px; }
.team-bio-link:hover { color:#7ae7e7; }
.team-footnote { margin-top:23px; padding:15px 20px; border:1px solid #2b58665e; background:#0e3040a0; display:flex; align-items:center; justify-content:center; gap:13px; text-align:center; }
.team-footnote-label { color:var(--cyan); font-size:10px; font-weight:800; letter-spacing:1px; }
.team-footnote > span:last-child { color:#aebfca; font-size:13px; }

/* Contact & footer */
.contact-section { position:relative; padding:140px 0 144px; overflow:hidden; isolation:isolate; background:#04111e; }
.contact-image,.contact-glow { position:absolute; inset:0; pointer-events:none; }
.contact-image { z-index:-3; background:url('assets/images/fireground-hero.webp') 77% 51%/cover no-repeat; opacity:.62; }
.contact-glow { z-index:-2; background:linear-gradient(90deg,#04111efa 0%,#04111edc 42%,#04111e4f 100%),linear-gradient(0deg,#04111e,transparent 40%,#04111e72 100%); }
.contact-content { position:relative; }
.contact-content h2 { font:800 clamp(70px,8vw,116px)/.93 var(--font-display); margin:33px 0 31px; max-width:820px; }
.contact-content h2 span { color:var(--orange); }
.contact-content p { font-size:20px; line-height:1.6; color:#b7c8d3; max-width:560px; margin-bottom:30px; }
.contact-actions { display:flex; align-items:center; gap:29px; flex-wrap:wrap; }
.contact-mail { color:#fff; border-bottom:1px solid var(--orange); padding-bottom:5px; font-size:16px; font-weight:600; }
.contact-mail:hover { color:var(--cyan); }
.footer { background:#04101b; border-top:1px solid var(--border); }
.footer-main { padding:60px 0 65px; display:flex; justify-content:space-between; gap:40px; }
.footer-main > div:first-child p { margin:17px 0 0; color:#849aab; font-size:14px; }
.footer-links { display:flex; gap:100px; }
.footer-links > div { display:flex; flex-direction:column; align-items:flex-start; gap:13px; }
.footer-links > div > span { color:var(--orange); font-size:10px; font-weight:800; letter-spacing:1.5px; margin-bottom:4px; }
.footer-links a { color:#9db1c0; font-size:13px; }
.footer-links a:hover { color:#fff; }
.footer-bottom { padding:20px 0 25px; border-top:1px solid #ffffff19; display:flex; align-items:center; justify-content:space-between; gap:25px; color:#72899a; font-size:10px; font-weight:700; letter-spacing:1px; }
.footer-bottom span:nth-child(2) { color:var(--orange); }
.footer-bottom a { color:#b8c7d1; }

/* Medium screens */
@media (max-width:1180px) {
  .container { width:calc(100% - 76px); }
  .desktop-nav { gap:19px; }
  .desktop-nav a { font-size:11px; letter-spacing:.4px; }
  .section-heading { gap:30px; }
  .field-grid { gap:44px; }
  .hero h1 { font-size:clamp(72px,7.65vw,104px); }
  .console-metrics > div { padding:15px 10px; }
  .console-metrics span { font-size:27px; }
  .team-info { padding:22px 17px; }
  .team-info h3 { font-size:23px; }
}
@media (max-width:1000px) {
  .site-header { height:76px; }
  .desktop-nav,.nav-contact { display:none; }
  .menu-toggle { display:flex; }
  .hero { min-height:790px; }
  .hero-content { padding-top:120px; padding-bottom:175px; }
  .hero-bottom { padding-bottom:25px; }
  .hero-stats > div { padding-right:16px; margin-right:14px; }
  .hero-stats strong { font-size:10px; }
  .scroll-cue { display:none; }
  .section { padding:98px 0; }
  .workflow-step { padding:26px 17px; }
  .workflow-step h3 { font-size:27px; }
  .workflow-step p { font-size:14px; }
  .field-visual { min-height:410px; }
  .team-grid { gap:13px; }
  .team-info h3 { font-size:22px; }
}
@media (max-width:780px) {
  .container { width:calc(100% - 48px); }
  .hero { min-height:785px; }
  .hero-image { background-position:66% center; }
  .hero-tint { background:linear-gradient(90deg,#03111ff2 0%,#03111fbd 55%,#03111f66 100%),linear-gradient(0deg,#04111e,transparent 45%); }
  .hero h1 { font-size:clamp(64px,10.2vw,92px); letter-spacing:-1px; }
  .hero-lead { max-width:540px; }
  .hero-stats { gap:14px; }
  .hero-stats > div { flex:1; display:block; padding:0 11px 0 0; margin-right:0; }
  .hero-stats strong { display:block; font-size:10px; margin-bottom:7px; }
  .hero-stats > div > span:last-child { display:block; font-size:11px; line-height:1.3; }
  .tiny-pulse { display:none; }
  .section-heading { display:block; margin-bottom:38px; }
  .section-heading h2,.vision-heading h2,.field-copy h2 { font-size:clamp(47px,7.2vw,65px); }
  .section-heading > p { max-width:570px; font-size:16px; margin:23px 0 0; }
  .radio-grid { grid-template-columns:repeat(2,1fr); }
  .radio-card:last-child { grid-column:1/-1; min-height:190px; }
  .radio-card:last-child blockquote { max-width:none; margin-top:26px; }
  .challenge-gap { flex-wrap:wrap; }
  .challenge-gap strong { width:100%; margin-left:0; }
  .workflow { grid-template-columns:repeat(2,1fr); }
  .workflow-step { min-height:245px; }
  .workflow-step:nth-child(2)::after { display:none; }
  .workflow-step h3 { margin-top:45px; }
  .console-metrics { grid-template-columns:repeat(2,1fr); }
  .console-metrics > div:nth-child(2) { border-right:0; }
  .console-metrics > div:nth-child(-n+2) { border-bottom:1px solid #31546671; }
  .console-workspace { grid-template-columns:1fr; gap:15px; }
  .source-pair { grid-template-columns:1fr; gap:12px; }
  .principles-grid { grid-template-columns:1fr; }
  .principle-card { min-height:275px; }
  .principle-icon { margin-bottom:13px; }
  .principle-card p { max-width:540px; margin-bottom:17px; }
  .vision-section { padding:98px 0; }
  .roadmap-grid { grid-template-columns:1fr; gap:14px; }
  .roadmap-card { min-height:245px; }
  .roadmap-card h3 { margin:20px 0 17px; }
  .roadmap-card ul { margin-bottom:15px; }
  .field-grid { grid-template-columns:1fr; gap:39px; }
  .field-visual { height:400px; min-height:0; }
  .field-copy h2 { max-width:650px; }
  .team-grid { grid-template-columns:repeat(2,1fr); gap:19px; }
  .team-photo { aspect-ratio:1/.8; }
  .team-info { padding:25px; }
  .team-info h3 { font-size:28px; }
  .team-info p { font-size:14px; }
  .contact-section { padding:98px 0; }
  .footer-links { gap:40px; }
}
@media (max-width:560px) {
  html { scroll-padding-top:76px; }
  .container { width:calc(100% - 36px); }
  .brand-mark { transform:scale(.86); transform-origin:left center; margin-right:-4px; }
  .brand-name { font-size:27px; }
  .hero { min-height:800px; min-height:max(800px, 100svh); justify-content:flex-start; }
  .hero-image { background-position:62% 43%; }
  .hero-tint { background:linear-gradient(90deg,#03111ff5 0%,#03111fd8 53%,#03111f80 100%),linear-gradient(0deg,#04111e 0%,transparent 55%); }
  .hero-content { padding-top:157px; padding-bottom:240px; }
  .hero-eyebrow { font-size:10px; letter-spacing:1.3px; margin-bottom:31px; gap:10px; }
  .eyebrow-line { width:20px; }
  .hero h1 { font-size:clamp(57px,13.5vw,76px); letter-spacing:-.8px; }
  .hero-rule { margin:28px 0 23px; width:60px; }
  .hero-lead { font-size:17px; line-height:1.5; max-width:345px; }
  .hero-ctas { gap:12px; }
  .btn { min-height:49px; padding:14px 18px; font-size:11px; gap:14px; }
  .hero-bottom { padding-bottom:19px; }
  .hero-stats { display:grid; grid-template-columns:1fr 1fr; gap:13px 10px; padding-top:16px; }
  .hero-stats > div { border:0; }
  .hero-stats > div:last-child { grid-column:1/-1; }
  .hero-stats strong { margin-bottom:3px; }
  .hero-stats > div > span:last-child { font-size:10px; }
  .section { padding:76px 0 83px; }
  .section-heading h2,.vision-heading h2,.field-copy h2 { font-size:clamp(43px,10.6vw,58px); }
  .section-kicker { margin-bottom:20px; font-size:10px; letter-spacing:1.4px; }
  .section-heading > p { font-size:15px; line-height:1.5; }
  .radio-grid { grid-template-columns:1fr; gap:13px; }
  .radio-card,.radio-card:last-child { grid-column:auto; min-height:205px; padding:24px; }
  .radio-card blockquote,.radio-card:last-child blockquote { margin-top:29px; font-size:31px; }
  .radio-card-foot { margin-top:24px; }
  .challenge-gap { gap:12px; margin-top:22px; padding:18px; }
  .challenge-gap strong { font-size:24px; line-height:1.15; }
  .workflow { gap:11px; }
  .workflow-step { min-height:235px; padding:19px 15px; }
  .workflow-number { font-size:30px; }
  .workflow-glyph { width:29px; height:29px; }
  .workflow-step h3 { font-size:24px; margin-top:43px; }
  .workflow-step p { font-size:13px; }
  .workflow-step:nth-child(odd)::after { right:-16px; }
  .workflow-foot { gap:8px; font-size:15px; letter-spacing:.5px; text-align:center; }
  .workflow-foot b { padding:0 3px; }
  .workflow-foot-line { width:19px; }
  .console-section { padding-top:85px; }
  .command-shell { border-radius:5px; }
  .console-toolbar { padding:14px 13px; align-items:start; }
  .console-brand { gap:6px; flex-wrap:wrap; }
  .console-brand .mini-waves { font-size:16px; }
  .console-brand b { font-size:18px; }
  .console-brand strong { font-size:14px; }
  .console-badges { display:none; }
  .console-inner { padding:17px 12px; }
  .console-summary { align-items:flex-start; gap:12px; }
  .console-summary h3 { font-size:26px; }
  .console-summary p { font-size:11px; max-width:220px; }
  .console-overline { font-size:9px; }
  .replay-btn { font-size:0; min-width:42px; justify-content:center; padding:11px; }
  .replay-icon { font-size:23px; }
  .console-metrics span { font-size:25px; }
  .console-metrics small { font-size:9px; }
  .console-metrics > div { gap:7px; padding:12px 10px; }
  .timeline-pane,.review-pane { padding:15px 11px; }
  .pane-heading h4 { font-size:19px; }
  .pane-kicker { font-size:9px; }
  .filter-chip { padding:6px; font-size:9px; }
  .event-row { gap:8px; grid-template-columns:5px 45px minmax(0,1fr) 9px; padding:10px 7px; }
  .event-info strong { font-size:14px; }
  .event-info strong small { font-size:10px; }
  .event-info > span { font-size:11px; }
  .event-time { font-size:9px; }
  .source-panel { padding:16px 12px; }
  .source-panel h4 { font-size:17px; }
  .console-footer { padding:12px; flex-wrap:wrap; gap:8px; font-size:9px; }
  .console-caption { display:block; }
  .console-caption p { border:0; padding:0; margin-top:8px; }
  .principle-card { padding:25px; min-height:285px; }
  .vision-section { padding:85px 0; }
  .vision-heading { margin-bottom:35px; }
  .vision-heading p { font-size:16px; }
  .roadmap-card { padding:24px; }
  .field-visual { height:320px; }
  .field-image-tag { font-size:9px; bottom:13px; left:13px; }
  .field-copy > p { font-size:16px; }
  .team-grid { gap:13px; }
  .team-info { padding:20px 15px 23px; }
  .team-info h3 { font-size:24px; }
  .team-info p { font-size:12px; line-height:1.5; }
  .team-role { font-size:9px; letter-spacing:.35px; }
  .team-footnote { flex-direction:column; gap:5px; padding:17px; }
  .team-footnote > span:last-child { font-size:12px; }
  .contact-section { padding:91px 0 108px; }
  .contact-content h2 { font-size:clamp(60px,12vw,76px); }
  .contact-content p { font-size:17px; }
  .contact-actions { align-items:flex-start; flex-direction:column; gap:19px; }
  .footer-main { flex-direction:column; gap:40px; padding:45px 0; }
  .footer-links { gap:65px; }
  .footer-bottom { flex-wrap:wrap; gap:14px; }
  .footer-bottom span:nth-child(2) { order:3; width:100%; }
}
@media (max-width:370px) {
  .hero h1 { font-size:53px; }
  .hero-content { padding-top:150px; }
  .hero-ctas .btn { padding:13px 14px; }
  .workflow-step { padding:15px 11px; }
  .workflow-step h3 { font-size:22px; }
  .team-grid { gap:9px; }
  .team-info { padding:14px 11px; }
  .team-info h3 { font-size:22px; }
  .team-info p { font-size:11px; }
}

/* Team-page teaser on homepage */
.team-page-cta { margin-top:29px; padding:23px 28px; display:flex; align-items:center; justify-content:space-between; gap:30px; background:linear-gradient(105deg,#103446,#0b2737); border:1px solid #34617186; border-left:3px solid var(--orange); }
.team-page-cta > div { display:flex; flex-direction:column; gap:5px; }
.team-page-cta strong { font:800 25px/1.1 var(--font-display); }
.team-page-cta span { color:#a7bfcb; font-size:14px; }
.team-page-cta .btn { flex-shrink:0; }
.team-page-cta .btn span { color:var(--orange); font-size:19px; }
.team-grid .team-bio-link { border-bottom:1px solid #36c7d253; padding-bottom:5px; }

/* Standalone team page */
.team-page-hero { position:relative; background:linear-gradient(135deg,#061827 0%,#020b15 80%); overflow:hidden; isolation:isolate; padding:177px 0 115px; min-height:735px; }
.team-page-hero-glow { position:absolute; z-index:-2; inset:0; background:radial-gradient(ellipse at 80% 47%,#19475a77 0,transparent 40%),radial-gradient(ellipse at 5% 95%,#91351c21,transparent 45%); pointer-events:none; }
.team-page-hero .topographic-bg { z-index:-1; opacity:.16; }
.team-page-hero-layout { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:65px; align-items:center; }
.team-page-hero h1 { font:800 clamp(69px,6.4vw,108px)/.94 var(--font-display); letter-spacing:-1.2px; max-width:820px; margin:0 0 32px; }
.team-page-hero h1 span { color:var(--orange); }
.team-page-hero-copy > p { max-width:570px; color:#b5c7d1; font-size:20px; line-height:1.55; margin-bottom:28px; }
.team-page-hero-actions { display:flex; align-items:center; gap:27px; flex-wrap:wrap; }
.team-back-link { color:#d8e8ed; font-size:12px; letter-spacing:.8px; font-weight:700; text-transform:uppercase; border-bottom:1px solid #ffffff64; padding-bottom:5px; }
.team-back-link span { color:var(--orange); font-size:19px; margin-left:7px; }
.team-back-link:hover { color:var(--orange); }
.team-page-overline { display:flex; gap:15px; flex-wrap:wrap; margin-top:70px; }
.team-page-overline span { font-size:9px; font-weight:800; letter-spacing:1.2px; color:#7aaab8; padding:8px 11px; border:1px solid #29607676; }
.team-page-portrait-collage { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; transform:rotate(0deg); }
.portrait-collage-card { aspect-ratio:1/.95; min-width:0; position:relative; background:#112e3c; overflow:hidden; border:1px solid #557b8e65; }
.portrait-collage-card:nth-child(1),.portrait-collage-card:nth-child(2) { border-top:3px solid var(--orange); }
.portrait-collage-card:nth-child(3),.portrait-collage-card:nth-child(4) { border-top:3px solid var(--cyan); }
.portrait-collage-card img { width:100%; height:100%; object-fit:cover; object-position:center 31%; filter:saturate(.86); transition:transform .35s; }
.portrait-collage-card:hover img { transform:scale(1.035); }
.portrait-collage-card::after { position:absolute; content:''; inset:49% 0 0; background:linear-gradient(transparent,#020d17cf); pointer-events:none; }
.portrait-collage-card span { position:absolute; z-index:2; bottom:13px; left:13px; color:#fff; font:800 18px/1 var(--font-display); white-space:nowrap; text-shadow:0 1px 7px #000; }
.portrait-collage-card span b { margin-right:5px; color:var(--orange); font:700 10px/1 var(--font-body); }
.portrait-collage-card:nth-child(n+3) span b { color:var(--cyan); }
.team-bio-section { padding:112px 0 136px; background:linear-gradient(180deg,#06121f,#0b2231); }
.team-section-top { display:flex; justify-content:space-between; align-items:end; gap:55px; margin-bottom:66px; }
.team-section-top h2 { font:800 clamp(52px,5.2vw,81px)/.98 var(--font-display); letter-spacing:-.5px; margin:0; }
.team-section-top > p { flex:0 0 33%; color:#a7bbc9; font-size:17px; line-height:1.55; margin:0 0 5px; }
.bio-profile { display:grid; grid-template-columns: minmax(280px,.75fr) minmax(0,1.25fr); align-items:stretch; gap:0; background:#0e2a3b; border:1px solid #40657975; margin-bottom:25px; min-height:500px; scroll-margin-top:102px; }
.bio-profile.reverse { grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); }
.bio-profile.reverse .bio-image-wrap { order:2; }
.bio-profile.reverse .bio-profile-copy { order:1; }
.bio-image-wrap { position:relative; min-height:460px; overflow:hidden; background:#183344; }
.bio-image-wrap::after { content:''; position:absolute; inset:65% 0 0; background:linear-gradient(transparent,#031725c5); pointer-events:none; }
.bio-image-wrap img { width:100%; height:100%; object-fit:cover; object-position:center top; filter:saturate(.87); }
.bio-photo-index { position:absolute; z-index:2; bottom:25px; left:25px; font-size:11px; font-weight:800; letter-spacing:1.3px; color:#f7f9fb; }
.bio-profile-copy { padding:54px clamp(32px,4vw,71px); align-self:center; }
.bio-label { font-size:11px; color:var(--orange); font-weight:800; letter-spacing:1.35px; line-height:1.45; text-transform:uppercase; }
.bio-profile h3 { font:800 clamp(48px,4.7vw,70px)/1 var(--font-display); margin:13px 0 20px; }
.bio-profile h3 span { color:#9cbbc5; }
.bio-standfirst { color:#eef6f8; font-size:21px!important; font-weight:600; line-height:1.35!important; margin:0 0 19px!important; max-width:625px; }
.bio-profile-copy p:not(.bio-standfirst) { font-size:16px; color:#b2c5cf; line-height:1.62; margin:0 0 17px; }
.bio-tags { display:flex; flex-wrap:wrap; gap:7px; margin-top:28px; }
.bio-tags span { display:inline-flex; border:1px solid #35809868; background:#0b324350; padding:8px 10px; color:#92dbe2; font-size:10px; font-weight:800; letter-spacing:.8px; }
.field-people-section { background:#071825; padding:116px 0 136px; }
.field-people-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.field-person-card { background:#0d2837; border:1px solid #446a7b75; min-width:0; scroll-margin-top:102px; }
.field-person-image { position:relative; height:290px; overflow:hidden; border-bottom:4px solid var(--cyan); background:#102c38; }
.field-person-image img { height:100%; width:100%; object-fit:cover; object-position:center 25%; filter:saturate(.87); }
.field-person-image::after { content:''; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,#051727c9); }
.field-person-image span { position:absolute; bottom:19px; left:26px; z-index:2; font-size:10px; font-weight:800; letter-spacing:1.6px; }
.field-person-content { padding:34px 38px 35px; }
.field-person-content h3 { font:800 52px/1 var(--font-display); margin:11px 0 17px; }
.field-person-content p { color:#b2c5cf; font-size:16px; line-height:1.62; min-height:105px; margin:0 0 25px; }
.field-card-foot { border-top:1px solid #44667970; padding-top:20px; display:flex; align-items:center; gap:11px; font-size:10px; color:#a4bbca; letter-spacing:1.2px; font-weight:800; }
.field-card-foot span { color:var(--orange); font-size:18px; }
.team-mission-section { padding:89px 0 100px; background:radial-gradient(ellipse at 80% 90%,#1a56663d,transparent 60%),#092b3b; border-block:1px solid #43718343; }
.team-mission-layout { display:grid; grid-template-columns:1.3fr .7fr; align-items:end; gap:70px; }
.team-mission-layout h2 { font:800 clamp(55px,6vw,90px)/.93 var(--font-display); margin:0; }
.team-mission-layout h2 span { color:var(--cyan); }
.team-mission-layout > p { color:#b9ced8; font-size:18px; line-height:1.55; max-width:480px; margin:0 0 5px; }
.team-page-contact { padding:125px 0 138px; }

@media(max-width:1100px) {
  .team-page-hero-layout { gap:28px; }
  .team-page-hero h1 { font-size:clamp(62px,6.8vw,85px); }
  .team-page-hero-copy > p { font-size:18px; }
  .bio-profile-copy { padding:42px 34px; }
  .field-person-content { padding:30px 28px; }
}
@media(max-width:780px) {
  .team-page-cta { align-items:flex-start; flex-direction:column; }
  .team-page-hero { padding:135px 0 74px; min-height:0; }
  .team-page-hero-layout { grid-template-columns:1fr; gap:50px; }
  .team-page-hero h1 { font-size:clamp(60px,10vw,86px); }
  .team-page-overline { margin-top:40px; }
  .team-page-portrait-collage { width:min(100%,580px); }
  .team-section-top { flex-direction:column; align-items:start; gap:21px; }
  .team-section-top > p { flex:auto; max-width:600px; }
  .bio-profile,.bio-profile.reverse { grid-template-columns:1fr; }
  .bio-profile.reverse .bio-image-wrap, .bio-profile.reverse .bio-profile-copy { order:initial; }
  .bio-image-wrap { height:430px; min-height:0; }
  .bio-image-wrap img { object-position:center 20%; }
  .bio-profile-copy { padding:35px 35px 45px; }
  .field-people-grid { grid-template-columns:1fr; }
  .field-person-image { height:330px; }
  .field-person-content p { min-height:0; }
  .team-mission-layout { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:560px) {
  .team-page-cta { padding:20px; gap:17px; }
  .team-page-cta strong { font-size:24px; }
  .team-page-cta span { font-size:13px; }
  .team-page-hero { padding:130px 0 66px; }
  .team-page-hero h1 { font-size:clamp(58px,12.5vw,72px); letter-spacing:-.6px; margin-bottom:23px; }
  .team-page-hero-copy > p { font-size:16px; }
  .team-page-hero-actions { gap:19px; }
  .team-page-overline { margin-top:31px; gap:7px; }
  .team-page-overline span { font-size:8px; padding:6px 7px; letter-spacing:.6px; }
  .team-page-portrait-collage { gap:8px; }
  .portrait-collage-card { aspect-ratio:1/1.08; }
  .portrait-collage-card span { font-size:16px; left:9px; bottom:10px; }
  .portrait-collage-card span b { font-size:9px; }
  .team-bio-section,.field-people-section { padding:76px 0 85px; }
  .team-section-top { margin-bottom:36px; }
  .team-section-top h2 { font-size:clamp(47px,11vw,61px); }
  .team-section-top > p { font-size:15px; }
  .bio-image-wrap { height:340px; }
  .bio-profile-copy { padding:28px 23px 33px; }
  .bio-profile h3 { font-size:clamp(46px,10vw,60px); }
  .bio-profile-copy p:not(.bio-standfirst) { font-size:14px; line-height:1.57; }
  .bio-standfirst { font-size:17px!important; }
  .bio-tags { margin-top:20px; }
  .bio-tags span { font-size:9px; }
  .field-person-image { height:280px; }
  .field-person-content { padding:28px 23px; }
  .field-person-content h3 { font-size:49px; }
  .field-person-content p { font-size:14px; }
  .field-card-foot { font-size:9px; letter-spacing:.6px; gap:6px; }
  .team-mission-section { padding:70px 0 75px; }
  .team-mission-layout h2 { font-size:clamp(52px,11vw,68px); }
  .team-mission-layout > p { font-size:16px; }
}
@media(max-width:370px) {
  .portrait-collage-card span { font-size:14px; }
  .team-page-hero h1 { font-size:53px; }
}
