:root {
  --ink: #142028;
  --ink-2: #1a2a33;
  --ink-3: #263845;
  --paper: #f7f3eb;
  --white: #fffdf8;
  --muted: #64707a;
  --line: rgba(255,253,248,.14);
  --line-dark: rgba(20,32,40,.12);
  --sand: #e6d8bf;
  --ocean: #5d8fa3;
  --grass: #6f8a59;
  --cyan: var(--ocean);
  --blue: #7ca4b2;
  --lime: var(--grass);
  --shell: min(1180px, calc(100% - 44px));
  --radius: 24px;
  --shadow: 0 28px 80px rgba(10,20,24,.22);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: Inter, "Segoe UI", Helvetica, Arial, sans-serif; color: var(--ink); background: var(--paper); line-height: 1.5; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { color: inherit; }
img, svg { display: block; max-width: 100%; }
.shell { width: var(--shell); margin-inline: auto; }
.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; }
.skip-link { position: fixed; left: 18px; top: -80px; z-index: 1000; background: var(--white); color: var(--ink); padding: 12px 18px; transition: top .2s; }
.skip-link:focus { top: 18px; }
.noise { position: fixed; inset: 0; pointer-events: none; z-index: 50; opacity: .035; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }

.site-header { position: fixed; inset: 0 0 auto; height: 82px; z-index: 100; color: var(--white); border-bottom: 1px solid transparent; transition: background .3s, border-color .3s, height .3s; }
.site-header.scrolled { height: 70px; background: rgba(6,17,31,.88); backdrop-filter: blur(18px); border-color: var(--line); }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 12px; }
.brand-mark { width: 42px; height: 42px; fill: none; stroke: var(--cyan); stroke-width: 1.8; stroke-linecap: square; stroke-linejoin: miter; }
.brand-type { display: grid; gap: 0; line-height: 1; letter-spacing: .16em; }
.brand-type strong { font-size: 14px; }
.brand-type small { margin-top: 5px; font-size: 8px; color: rgba(255,255,255,.58); letter-spacing: .3em; }
.primary-nav { display: flex; align-items: center; gap: 30px; font-size: 13px; letter-spacing: .04em; }
.primary-nav > a:not(.nav-cta) { color: rgba(255,255,255,.72); transition: color .2s; }
.primary-nav > a:not(.nav-cta):hover { color: var(--white); }
.nav-cta { border: 1px solid rgba(255,255,255,.34); padding: 11px 15px; display: inline-flex; gap: 14px; align-items: center; transition: border-color .2s, background .2s; }
.nav-cta:hover { background: rgba(255,255,255,.08); border-color: var(--cyan); }
.nav-toggle { display: none; width: 44px; height: 44px; background: transparent; border: 1px solid var(--line); align-items: center; justify-content: center; flex-direction: column; gap: 5px; }
.nav-toggle span:not(.sr-only) { width: 20px; height: 1px; background: white; }

.section-dark { background: var(--ink); color: var(--white); }
.section-mid { background: var(--ink-2); color: var(--white); }
.section-light { background: var(--paper); color: var(--ink); }
.hero { position: relative; min-height: 860px; overflow: hidden; padding: 160px 0 0; background: linear-gradient(180deg, #22353f 0%, #18262e 38%, #142028 100%); }
.hero-grid { position: absolute; inset: 0; opacity: .18; background-image: linear-gradient(rgba(230,216,191,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(230,216,191,.08) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black 0%, black 68%, transparent 100%); }
.hero:before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 18% 18%, rgba(230,216,191,.13), transparent 38%), radial-gradient(circle at 82% 16%, rgba(93,143,163,.20), transparent 34%), radial-gradient(circle at 72% 72%, rgba(111,138,89,.14), transparent 30%); pointer-events: none; }
.hero:after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, rgba(20,32,40,.05) 0%, rgba(20,32,40,.22) 42%, rgba(20,32,40,.78) 100%); }
.orb { position: absolute; border-radius: 50%; filter: blur(68px); opacity: .22; }
.orb-one { width: 420px; height: 420px; background: rgba(230,216,191,.16); right: 3%; top: 7%; }
.orb-two { width: 280px; height: 280px; background: rgba(93,143,163,.18); left: 12%; bottom: 8%; opacity: .12; }
.hero-layout { position: relative; z-index: 2; display: grid; grid-template-columns: 1.03fr .97fr; align-items: center; gap: 76px; }
.eyebrow { margin: 0 0 22px; color: rgba(255,255,255,.66); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; display: flex; align-items: center; gap: 10px; }
.eyebrow span { width: 28px; height: 1px; background: var(--sand); }
.eyebrow.dark { color: #526274; }
.hero h1 { margin: 0; max-width: 720px; font-size: clamp(52px, 6.2vw, 86px); line-height: .98; letter-spacing: -.055em; font-weight: 650; }
.hero h1 em { display: block; color: transparent; -webkit-text-stroke: 1px rgba(230,216,191,.85); font-style: normal; }
.hero-lead { max-width: 670px; margin: 30px 0 0; color: rgba(255,255,255,.68); font-size: 18px; line-height: 1.7; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 36px; }
.button { min-height: 50px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 20px; font-size: 12px; font-weight: 700; letter-spacing: .055em; text-transform: uppercase; border: 1px solid transparent; cursor: pointer; transition: transform .2s, background .2s, border-color .2s, color .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--sand); color: #1b2931; }
.button-primary:hover { background: #f3e8d5; }
.button-ghost { border-color: rgba(255,255,255,.25); color: var(--white); background: rgba(255,255,255,.025); }
.button-ghost:hover { border-color: var(--sand); background: rgba(230,216,191,.07); }
.hero-trust { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 38px; }
.hero-trust span { padding: 7px 10px; border: 1px solid rgba(230,216,191,.16); color: rgba(255,253,248,.56); font-size: 9px; letter-spacing: .11em; text-transform: uppercase; background: rgba(255,255,255,.02); }

.mission-console { position: relative; min-height: 530px; background: linear-gradient(155deg, rgba(247,243,235,.06), rgba(93,143,163,.08) 38%, rgba(20,32,40,.52) 100%); border: 1px solid rgba(230,216,191,.18); border-radius: 28px; box-shadow: var(--shadow), inset 0 0 90px rgba(230,216,191,.04); overflow: hidden; backdrop-filter: blur(14px); }
.mission-console:before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 22% 15%, rgba(230,216,191,.08), transparent 28%), radial-gradient(circle at 78% 24%, rgba(93,143,163,.10), transparent 32%), radial-gradient(circle at 58% 80%, rgba(111,138,89,.07), transparent 26%); pointer-events: none; }
.mission-console:after { content: ""; position: absolute; inset: 0; border-radius: inherit; border: 1px solid rgba(255,255,255,.04); pointer-events: none; }
.console-topline { height: 54px; padding: 0 18px; display: flex; justify-content: space-between; align-items: center; border-bottom: 1px solid rgba(230,216,191,.12); font-size: 9px; letter-spacing: .17em; }
.console-label { color: rgba(255,253,248,.58); }
.system-state { color: var(--sand); display: flex; align-items: center; gap: 8px; }
.system-state i { width: 6px; height: 6px; border-radius: 50%; background: var(--grass); box-shadow: 0 0 12px rgba(111,138,89,.9); animation: pulse 2s infinite; }
.console-stage { position: relative; height: 380px; background: linear-gradient(180deg, rgba(255,253,248,.02), rgba(93,143,163,.03)); background-image: linear-gradient(rgba(230,216,191,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(230,216,191,.035) 1px, transparent 1px); background-size: 30px 30px; }
.console-readout { min-height: 96px; display: grid; grid-template-columns: 1.2fr .8fr .8fr; border-top: 1px solid var(--line); }
.console-readout div { padding: 17px; border-right: 1px solid var(--line); }
.console-readout div:last-child { border-right: none; }
.console-readout small { display: block; font-size: 8px; color: rgba(255,255,255,.38); letter-spacing: .13em; margin-bottom: 7px; }
.console-readout strong { font-size: 11px; font-weight: 600; color: rgba(255,255,255,.8); }
@keyframes sweep { to { transform: rotate(360deg); } }
@keyframes pulse { 50% { opacity: .35; } }

.metric-rail { position: relative; z-index: 3; margin-top: 86px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); }
.metric-rail div { min-height: 120px; padding: 24px 24px 24px 0; border-right: 1px solid var(--line); display: grid; align-content: start; }
.metric-rail div:not(:first-child) { padding-left: 24px; }
.metric-rail div:last-child { border-right: 0; }
.metric-rail strong { font-size: 22px; color: var(--white); letter-spacing: -.02em; }
.metric-rail span { margin-top: 7px; color: rgba(255,255,255,.46); font-size: 11px; line-height: 1.5; }

.intro, .engagement-section { padding: 120px 0; }
.section-heading { max-width: 840px; margin-bottom: 52px; }
.section-heading h2, .company-copy h2, .contact-copy h2, .disa-copy h2 { margin: 0; font-size: clamp(38px, 4.5vw, 62px); line-height: 1.04; letter-spacing: -.045em; font-weight: 620; }
.split-heading { max-width: none; display: grid; grid-template-columns: 1.25fr .75fr; gap: 100px; align-items: end; }
.split-heading > p { margin: 0 0 6px; color: var(--muted); font-size: 16px; line-height: 1.75; }
.capability-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line-dark); border-left: 1px solid var(--line-dark); }
.capability-card { position: relative; min-height: 410px; padding: 31px; border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); overflow: hidden; transition: background .25s, transform .25s; }
.capability-card:hover { background: white; transform: translateY(-3px); z-index: 2; box-shadow: 0 25px 60px rgba(18,42,65,.09); }
.capability-card:after { content: ""; position: absolute; right: -55px; bottom: -55px; width: 130px; height: 130px; border: 1px solid rgba(49,135,255,.15); transform: rotate(45deg); transition: transform .35s; }
.capability-card:hover:after { transform: rotate(45deg) scale(1.25); }
.card-index { position: absolute; right: 22px; top: 21px; font-size: 10px; letter-spacing: .12em; color: #8b99a7; }
.cap-icon { width: 52px; height: 52px; display: grid; place-items: center; background: #eaf8ff; margin-bottom: 60px; }
.cap-icon svg { width: 30px; height: 30px; fill: none; stroke: #1678cc; stroke-width: 1.5; }
.capability-card h3 { margin: 0 0 14px; font-size: 21px; letter-spacing: -.025em; }
.capability-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.capability-card ul { list-style: none; padding: 0; margin: 23px 0 0; display: grid; gap: 8px; color: #36495a; font-size: 11px; }
.capability-card li { display: flex; gap: 8px; align-items: flex-start; }
.capability-card li:before { content: "+"; color: #1378ce; font-weight: 700; }

.outcome-section { padding: 120px 0; }
.outcome-section .section-heading { max-width: 920px; }
.outcome-layout { display: grid; grid-template-columns: .8fr 1.2fr; border: 1px solid var(--line); min-height: 570px; }
.outcome-tabs { border-right: 1px solid var(--line); }
.outcome-tab { width: 100%; min-height: 142px; padding: 28px; display: grid; grid-template-columns: 38px 1fr; text-align: left; align-content: center; background: transparent; color: rgba(255,255,255,.48); border: 0; border-bottom: 1px solid var(--line); cursor: pointer; transition: background .2s, color .2s; }
.outcome-tab:last-child { border-bottom: 0; }
.outcome-tab span { grid-row: 1 / 3; color: rgba(35,216,255,.55); font-size: 10px; letter-spacing: .1em; }
.outcome-tab b { font-size: 15px; color: inherit; }
.outcome-tab small { margin-top: 5px; font-size: 10px; letter-spacing: .04em; }
.outcome-tab.active { background: rgba(35,216,255,.06); color: var(--white); box-shadow: inset 3px 0 0 var(--cyan); }
.outcome-panels { position: relative; }
.outcome-panel { min-height: 100%; padding: 60px; background-image: linear-gradient(rgba(35,216,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(35,216,255,.025) 1px, transparent 1px); background-size: 42px 42px; }
.panel-kicker { margin: 0 0 20px; color: var(--cyan); font-size: 9px; font-weight: 700; letter-spacing: .17em; }
.outcome-panel h3 { max-width: 720px; margin: 0; font-size: clamp(30px,3.7vw,48px); line-height: 1.08; letter-spacing: -.04em; font-weight: 600; }
.outcome-panel > p:not(.panel-kicker) { max-width: 710px; margin: 24px 0 0; font-size: 15px; line-height: 1.75; color: rgba(255,255,255,.55); }
.panel-results { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 46px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.panel-results div { padding: 22px 18px 22px 0; border-right: 1px solid var(--line); }
.panel-results div:not(:first-child) { padding-left: 18px; }
.panel-results div:last-child { border-right: none; }
.panel-results strong { display: block; font-size: 15px; color: var(--white); }
.panel-results span { display: block; margin-top: 5px; color: rgba(255,255,255,.4); font-size: 9px; line-height: 1.4; }
.panel-tags { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 8px; }
.panel-tags span { border: 1px solid var(--line); padding: 6px 9px; color: rgba(255,255,255,.48); font-size: 8px; letter-spacing: .09em; text-transform: uppercase; }

.disa-section { position: relative; padding: 125px 0; overflow: hidden; }
.disa-mesh { position: absolute; inset: 0; opacity: .25; background-image: radial-gradient(circle at center, rgba(35,216,255,.18) 0 1px, transparent 1px); background-size: 32px 32px; mask-image: radial-gradient(circle at 72% 52%, black 0, transparent 65%); }
.disa-layout { position: relative; display: grid; grid-template-columns: .82fr 1.18fr; gap: 86px; align-items: center; }
.disa-copy > p:not(.eyebrow) { margin: 28px 0; color: rgba(255,255,255,.55); line-height: 1.75; }
.text-link { display: inline-flex; gap: 18px; align-items: center; color: var(--cyan); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.disa-grid { display: grid; grid-template-columns: 1fr 1fr; }
.disa-card { position: relative; min-height: 260px; padding: 30px; border: 1px solid var(--line); margin: -1px 0 0 -1px; background: rgba(255,255,255,.025); }
.disa-card .corner { position: absolute; right: 14px; top: 14px; width: 22px; height: 22px; border-top: 1px solid var(--cyan); border-right: 1px solid var(--cyan); opacity: .42; }
.micro { margin: 0 0 55px; font-size: 8px; letter-spacing: .15em; color: var(--cyan); }
.disa-card h3 { margin: 0 0 12px; font-size: 20px; }
.disa-card > p:last-child { margin: 0; font-size: 12px; color: rgba(255,255,255,.48); line-height: 1.65; }

.engagement-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.engagement-card { min-height: 340px; padding: 32px; background: var(--white); border: 1px solid var(--line-dark); display: flex; flex-direction: column; transition: transform .2s, box-shadow .2s; }
.engagement-card:hover { transform: translateY(-4px); box-shadow: 0 24px 60px rgba(22,49,74,.1); }
.engagement-card > span { color: #177fcf; font-size: 9px; font-weight: 800; letter-spacing: .17em; }
.engagement-card h3 { margin: 78px 0 15px; font-size: 25px; letter-spacing: -.035em; }
.engagement-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.engagement-card small { margin-top: auto; padding-top: 25px; border-top: 1px solid var(--line-dark); color: #6e7e8c; line-height: 1.5; }

.company-section { padding: 110px 0; }
.company-layout { display: grid; grid-template-columns: .95fr 1.05fr; gap: 90px; align-items: center; }
.company-copy > p:not(.eyebrow) { margin: 25px 0 30px; color: rgba(255,255,255,.55); line-height: 1.75; }
.company-facts { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.company-facts > div { min-height: 110px; padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.company-facts small { display: block; margin-bottom: 12px; font-size: 8px; letter-spacing: .16em; color: rgba(255,255,255,.37); }
.company-facts strong { font-size: 14px; font-weight: 600; }
.naics-fact { grid-column: 1/-1; }
.naics-fact strong { display: flex; flex-wrap: wrap; gap: 8px; }
.naics-fact span { border: 1px solid rgba(35,216,255,.28); padding: 6px 9px; color: var(--cyan); font-size: 10px; letter-spacing: .08em; }

.contact-section { position: relative; background: #0e55b2; color: var(--white); padding: 110px 0; overflow: hidden; }
.contact-lines { position: absolute; inset: 0; opacity: .2; background-image: linear-gradient(35deg, transparent 47%, rgba(255,255,255,.12) 48%, rgba(255,255,255,.12) 49%, transparent 50%); background-size: 80px 80px; }
.contact-layout { position: relative; display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: start; }
.contact-copy > p:not(.eyebrow) { margin: 25px 0; color: rgba(255,255,255,.72); line-height: 1.75; }
.contact-direct { margin-top: 42px; display: grid; gap: 18px; }
.contact-direct a { display: grid; gap: 4px; }
.contact-direct small { font-size: 8px; letter-spacing: .16em; color: rgba(255,255,255,.55); }
.contact-direct strong { font-size: 15px; }
.contact-form { padding: 40px; background: rgba(5,25,48,.88); border: 1px solid rgba(255,255,255,.2); backdrop-filter: blur(8px); box-shadow: var(--shadow); }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.contact-form label { display: grid; gap: 9px; margin-bottom: 20px; font-size: 8px; font-weight: 700; letter-spacing: .15em; color: rgba(255,255,255,.55); }
.contact-form input, .contact-form textarea { width: 100%; border: 0; border-bottom: 1px solid rgba(255,255,255,.22); background: transparent; color: white; padding: 11px 0; border-radius: 0; outline: none; transition: border-color .2s; }
.contact-form input:focus, .contact-form textarea:focus { border-color: var(--cyan); }
.contact-form input::placeholder, .contact-form textarea::placeholder { color: rgba(255,255,255,.3); }
.form-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 10px; }
.form-footer p { max-width: 280px; margin: 0; font-size: 9px; line-height: 1.5; color: rgba(255,255,255,.38); }

.site-footer { background: #030a12; color: var(--white); padding: 75px 0 24px; }
.footer-grid { display: grid; grid-template-columns: 1.7fr repeat(3,1fr); gap: 55px; }
.footer-grid > div { display: grid; align-content: start; gap: 10px; }
.footer-brand p { max-width: 350px; color: rgba(255,255,255,.36); font-size: 12px; }
.footer-grid > div > small { margin-bottom: 12px; color: rgba(255,255,255,.3); font-size: 8px; letter-spacing: .17em; }
.footer-grid > div > a, .footer-grid > div > span { color: rgba(255,255,255,.53); font-size: 11px; }
.footer-grid > div > a:hover { color: var(--cyan); }
.footer-bottom { margin-top: 55px; padding-top: 20px; border-top: 1px solid var(--line); display: flex; justify-content: space-between; color: rgba(255,255,255,.25); font-size: 8px; letter-spacing: .14em; }

.reveal { opacity: 0; transform: translateY(22px); transition: opacity .8s ease, transform .8s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: .12s; }.delay-2 { transition-delay: .22s; }

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

@media (max-width: 1040px) {
  .hero-layout { gap: 36px; }
  .hero h1 { font-size: clamp(50px, 6.6vw, 72px); }
  .mission-console { min-height: 490px; }
  .console-stage { height: 340px; }
  .capability-grid { grid-template-columns: 1fr 1fr; }
  .split-heading { grid-template-columns: 1fr; gap: 28px; }
  .outcome-layout { grid-template-columns: .7fr 1.3fr; }
  .outcome-panel { padding: 42px; }
  .disa-layout, .company-layout, .contact-layout { gap: 48px; }
}

@media (max-width: 820px) {
  :root { --shell: min(100% - 32px, 700px); }
  .nav-toggle { display: flex; }
  .primary-nav { position: fixed; inset: 70px 0 0; padding: 42px 22px; background: rgba(6,17,31,.98); display: none; align-items: stretch; flex-direction: column; gap: 0; }
  .primary-nav.open { display: flex; }
  .primary-nav a { padding: 18px 0; border-bottom: 1px solid var(--line); font-size: 16px; }
  .nav-cta { margin-top: 20px; padding-inline: 16px !important; border: 1px solid rgba(255,255,255,.25) !important; }
  .hero { padding-top: 130px; }
  .hero-layout { grid-template-columns: 1fr; }
  .mission-console { margin-top: 20px; }
  .metric-rail { grid-template-columns: 1fr 1fr; }
  .metric-rail div:nth-child(2) { border-right: 0; }
  .metric-rail div:nth-child(3), .metric-rail div:nth-child(4) { border-top: 1px solid var(--line); }
  .capability-grid { grid-template-columns: 1fr; }
  .outcome-layout { grid-template-columns: 1fr; }
  .outcome-tabs { border-right: 0; display: grid; grid-template-columns: 1fr 1fr; }
  .outcome-tab { min-height: 120px; border-right: 1px solid var(--line); }
  .outcome-tab.active { box-shadow: inset 0 3px 0 var(--cyan); }
  .disa-layout, .company-layout, .contact-layout { grid-template-columns: 1fr; }
  .disa-grid { margin-top: 15px; }
  .engagement-grid { grid-template-columns: 1fr; }
  .engagement-card { min-height: 290px; }
  .engagement-card h3 { margin-top: 48px; }
  .footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-grid > div:last-child { grid-column: 2/4; }
}

@media (max-width: 560px) {
  .site-header { height: 70px; }
  .brand-mark { width: 36px; height: 36px; }
  .hero { min-height: auto; padding-top: 115px; }
  .hero h1 { font-size: 49px; }
  .hero-lead { font-size: 16px; }
  .hero-actions { display: grid; }
  .button { width: 100%; }
  .mission-console { min-height: 435px; }
  .console-stage { height: 290px; }
  .radar { width: 210px; height: 210px; }
  .console-readout { grid-template-columns: 1fr 1fr; }
  .console-readout div:nth-child(3) { display: none; }
  .metric-rail { margin-top: 55px; grid-template-columns: 1fr; }
  .metric-rail div, .metric-rail div:not(:first-child) { border-right: 0; border-top: 1px solid var(--line); padding: 20px 0; min-height: auto; }
  .intro, .engagement-section, .outcome-section, .disa-section, .company-section, .contact-section { padding: 85px 0; }
  .section-heading { margin-bottom: 40px; }
  .capability-card { min-height: 385px; }
  .outcome-tabs { grid-template-columns: 1fr; }
  .outcome-tab { border-right: 0; }
  .outcome-panel { padding: 30px 24px; }
  .panel-results { grid-template-columns: 1fr; }
  .panel-results div, .panel-results div:not(:first-child) { border-right: 0; border-bottom: 1px solid var(--line); padding: 16px 0; }
  .panel-results div:last-child { border-bottom: 0; }
  .disa-grid { grid-template-columns: 1fr; }
  .disa-card { min-height: 230px; }
  .company-facts { grid-template-columns: 1fr; }
  .naics-fact { grid-column: auto; }
  .field-row { grid-template-columns: 1fr; gap: 0; }
  .contact-form { padding: 27px 22px; }
  .form-footer { display: grid; }
  .form-footer .button { width: 100%; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1/-1; margin-bottom: 22px; }
  .footer-grid > div:last-child { grid-column: auto; }
  .footer-bottom { display: grid; gap: 10px; }
}

/* Interactive mission topology */
.graph-stage { overflow: hidden; isolation: isolate; }
.radar-backdrop { position: absolute; width: 330px; height: 330px; left: 50%; top: 50%; transform: translate(-50%,-50%); border-radius: 50%; border: 1px solid rgba(35,216,255,.16); z-index: 0; pointer-events: none; }
.radar-backdrop:before, .radar-backdrop:after { content: ""; position: absolute; background: rgba(35,216,255,.11); left: 50%; top: 0; width: 1px; height: 100%; }
.radar-backdrop:after { transform: rotate(90deg); }
.radar-backdrop .radar-ring { position: absolute; border: 1px solid rgba(35,216,255,.12); border-radius: 50%; left: 50%; top: 50%; transform: translate(-50%,-50%); }
.radar-backdrop .r1 { width: 72%; height: 72%; }
.radar-backdrop .r2 { width: 43%; height: 43%; }
.radar-backdrop .r3 { width: 15%; height: 15%; background: rgba(35,216,255,.05); }
.radar-backdrop .radar-sweep { position: absolute; inset: 50% 0 0 50%; transform-origin: left top; background: conic-gradient(from 270deg, rgba(35,216,255,.16), transparent 25%); animation: sweep 7s linear infinite; }
.mission-graph { position: absolute; inset: 12px; z-index: 2; cursor: grab; }
.mission-graph:active { cursor: grabbing; }
.mission-graph canvas { background: transparent !important; }
.graph-core { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 84px; height: 84px; display: grid; place-content: center; text-align: center; border: 1px solid rgba(230,216,191,.55); border-radius: 50%; background: rgba(20,32,40,.76); z-index: 4; pointer-events: none; box-shadow: 0 0 34px rgba(230,216,191,.10); }
.graph-core b { color: var(--sand); font-size: 10px; letter-spacing: .16em; }
.graph-core small { font-size: 7px; color: rgba(255,253,248,.5); text-transform: uppercase; letter-spacing: .08em; }
.graph-legend { position: absolute; left: 14px; bottom: 12px; display: flex; flex-wrap: wrap; gap: 8px 12px; z-index: 5; font: 600 7px/1.2 var(--mono); letter-spacing: .1em; color: rgba(255,253,248,.52); }
.graph-legend span { display: inline-flex; align-items: center; gap: 5px; }
.graph-legend i { width: 6px; height: 6px; border-radius: 50%; display: inline-block; }
.legend-cloud { background:var(--ocean); }.legend-sec { background:var(--grass); }.legend-code { background:var(--sand); }.legend-ops { background:var(--ocean); }
.graph-status { position: absolute; right: 14px; top: 12px; z-index: 5; font: 600 7px/1 var(--mono); letter-spacing: .12em; color: rgba(255,253,248,.44); pointer-events:none; }
.graph-status span { color: var(--sand); }

.quality-gates { position: absolute; right: 14px; bottom: 14px; width: 232px; padding: 10px 10px 8px; z-index: 5; border: 1px solid rgba(230,216,191,.16); background: rgba(20,32,40,.78); backdrop-filter: blur(8px); box-shadow: inset 0 0 30px rgba(230,216,191,.04); pointer-events: none; border-radius: 18px; }
.quality-gates-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 6px; font: 600 7px/1 var(--mono); letter-spacing: .13em; color: rgba(255,253,248,.42); }
.quality-gates-head b { color: var(--sand); font-weight: 600; }
.quality-gates-chart { width: 100%; height: 78px; overflow: visible; }
.quality-gates-chart .qg-path-glow { fill: none; stroke: rgba(93,143,163,.18); stroke-width: 5; }
.quality-gates-chart .qg-path { fill: none; stroke: url(#qgLine); stroke-width: 1.8; stroke-linejoin: round; stroke-linecap: round; stroke-dasharray: 5 4; animation: qg-flow 9s linear infinite; }
.quality-gates-chart .qg-dots circle { fill: #18262e; stroke: var(--grass); stroke-width: 1.4; filter: drop-shadow(0 0 5px rgba(111,138,89,.28)); }
.quality-gates-chart .qg-labels text { fill: rgba(255,253,248,.46); font: 600 8px var(--mono); letter-spacing: .08em; }
@keyframes qg-flow { to { stroke-dashoffset: -54; } }
@media (max-width: 560px) {
  .radar-backdrop { width: 250px; height: 250px; }
  .graph-legend { max-width: 190px; gap: 6px 9px; }
  .quality-gates { left: 14px; right: 14px; width: auto; bottom: 44px; }
  .graph-status { display:none; }
}

/* Private-sector product portfolio */
.products-section { padding: 120px 0; }
.products-section .split-heading > p { color: rgba(255,255,255,.5); }
.product-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.product-card { position: relative; min-height: 610px; padding: 36px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.018); overflow: hidden; display: flex; flex-direction: column; transition: background .25s ease, transform .25s ease; }
.product-card:hover { background: rgba(35,216,255,.035); transform: translateY(-3px); z-index: 2; }
.product-card:before { content:""; position:absolute; width:240px; height:240px; right:-130px; top:-130px; border:1px solid rgba(35,216,255,.13); transform:rotate(45deg); }
.product-card:after { content:""; position:absolute; width:8px; height:8px; right:22px; bottom:22px; border-right:1px solid var(--cyan); border-bottom:1px solid var(--cyan); opacity:.7; }
.product-top { display:flex; justify-content:space-between; align-items:center; min-height:24px; }
.product-index { color:rgba(255,255,255,.24); font:600 9px var(--mono); letter-spacing:.14em; }
.product-status { color:var(--cyan); border:1px solid rgba(35,216,255,.22); padding:6px 8px; font:700 8px var(--mono); letter-spacing:.12em; }
.product-mark { width:82px; height:82px; margin:58px 0 30px; display:grid; place-items:center; position:relative; border:1px solid rgba(35,216,255,.38); clip-path:polygon(14% 0,86% 0,100% 14%,100% 86%,86% 100%,14% 100%,0 86%,0 14%); background:rgba(35,216,255,.045); box-shadow: inset 0 0 35px rgba(35,216,255,.06); }
.product-mark:before, .product-mark:after { content:""; position:absolute; background:rgba(35,216,255,.22); }
.product-mark:before { width:42px; height:1px; left:20px; top:40px; }
.product-mark:after { width:1px; height:42px; left:40px; top:20px; }
.product-mark span { position:relative; z-index:2; color:var(--cyan); font:700 16px var(--mono); letter-spacing:.08em; background:#071525; padding:3px 5px; }
.product-card h3 { margin:0 0 14px; font-size:34px; line-height:1; letter-spacing:-.04em; text-transform:none; }
.product-tagline { margin:0 0 20px !important; max-width:520px; color:rgba(255,255,255,.82) !important; font-size:16px !important; line-height:1.5 !important; }
.product-card > p { margin:0; max-width:570px; color:rgba(255,255,255,.48); font-size:12px; line-height:1.75; }
.product-card ul { margin:27px 0 36px; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; list-style:none; }
.product-card li { color:rgba(255,255,255,.55); font-size:10px; line-height:1.45; display:flex; gap:8px; }
.product-card li:before { content:"+"; color:var(--cyan); font-weight:700; }
.product-footer { margin-top:auto; padding-top:22px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:18px; }
.product-footer > span { color:rgba(255,255,255,.3); font:700 8px var(--mono); letter-spacing:.14em; }
.product-footer a { color:var(--cyan); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.product-footer b { margin-left:7px; }
.product-virthost .product-mark { transform:rotate(0deg); }
.product-day90 .product-mark { border-radius:50%; clip-path:none; }
.product-firstlight .product-mark { clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%); }
.product-bistrops .product-mark { border-radius:3px; clip-path:none; }

.outcome-commercial { padding:120px 0; }
.commercial-outcomes { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line-dark); border-left:1px solid var(--line-dark); }
.outcome-stat { min-height:335px; padding:31px; border-right:1px solid var(--line-dark); border-bottom:1px solid var(--line-dark); display:flex; flex-direction:column; }
.outcome-stat > span { color:#1b80cb; font:700 9px var(--mono); letter-spacing:.14em; }
.outcome-stat strong { margin-top:76px; font-size:23px; line-height:1.15; letter-spacing:-.03em; }
.outcome-stat p { margin:16px 0 0; color:var(--muted); font-size:12px; line-height:1.7; }

@media (max-width: 820px) {
  .product-grid { grid-template-columns:1fr; }
  .commercial-outcomes { grid-template-columns:1fr 1fr; }
}
@media (max-width: 560px) {
  .products-section, .outcome-commercial { padding:85px 0; }
  .product-card { min-height:560px; padding:28px 24px; }
  .product-card ul { grid-template-columns:1fr; }
  .product-footer { align-items:flex-start; flex-direction:column; }
  .commercial-outcomes { grid-template-columns:1fr; }
  .outcome-stat { min-height:270px; }
}



/* Unified commercial + government experience */
.audience-gateway { padding: 34px 0 110px; }
.audience-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.audience-card { position:relative; min-height:330px; padding:40px; border:1px solid var(--line-dark); overflow:hidden; transition:transform .25s, box-shadow .25s, border-color .25s; }
.audience-card:after { content:""; position:absolute; width:240px; height:240px; border-radius:50%; right:-110px; bottom:-115px; opacity:.15; }
.audience-card.commercial { background:linear-gradient(145deg,#fffdf8,#f3eadb); }
.audience-card.commercial:after { background:var(--ocean); }
.audience-card.government { color:var(--white); background:linear-gradient(145deg,#1d313c,#142028); border-color:rgba(230,216,191,.16); }
.audience-card.government:after { background:var(--grass); }
.audience-card:hover { transform:translateY(-4px); box-shadow:0 25px 65px rgba(20,32,40,.12); border-color:rgba(93,143,163,.35); }
.audience-index { font-size:9px; letter-spacing:.17em; font-weight:800; color:var(--ocean); }
.audience-card.government .audience-index { color:var(--sand); }
.audience-card h2 { max-width:560px; margin:62px 0 15px; font-size:clamp(30px,3.2vw,45px); line-height:1.06; letter-spacing:-.04em; }
.audience-card p { max-width:600px; color:var(--muted); font-size:14px; line-height:1.7; }
.audience-card.government p { color:rgba(255,253,248,.56); }
.audience-card strong { position:absolute; left:40px; bottom:32px; display:flex; gap:18px; align-items:center; color:var(--ocean); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.audience-card.government strong { color:var(--sand); }
.domain-divider { padding:88px 0; }
.domain-divider-inner { display:grid; grid-template-columns:1.15fr .85fr; gap:90px; align-items:end; }
.domain-divider span { display:block; margin-bottom:16px; font-size:9px; font-weight:800; letter-spacing:.18em; }
.domain-divider h2 { margin:0; max-width:760px; font-size:clamp(40px,5vw,68px); line-height:1; letter-spacing:-.05em; }
.domain-divider p { margin:0; max-width:600px; font-size:15px; line-height:1.75; }
.commercial-domain { background:var(--sand); color:var(--ink); }
.commercial-domain span { color:#527789; }
.commercial-domain p { color:#58656e; }
.government-domain { background:linear-gradient(145deg,#233943,#142028); color:var(--white); border-top:1px solid rgba(230,216,191,.12); border-bottom:1px solid rgba(230,216,191,.12); }
.government-domain span { color:var(--sand); }
.government-domain p { color:rgba(255,253,248,.55); }
#government-services { background:#f0f4f3; }
#government-services .cap-icon { background:#e8eee8; }
#government-services .cap-icon svg { stroke:#526f5e; }
#government-services .capability-card li:before { color:#657e69; }
#government-outcomes { background:#16252e; }
#government-operations { background:#101d24; }
#government-engagement { background:#f4f1e8; }
#company { background:#1a2a33; }


/* Privacy & cookie consent */
.cookie-settings-link { appearance:none; border:0; background:transparent; padding:0; color:rgba(255,253,248,.53); font:inherit; cursor:pointer; text-align:left; }
.cookie-settings-link:hover { color:var(--sand); }
.cookie-banner { position:fixed; left:22px; right:22px; bottom:22px; z-index:1000; display:none; }
.cookie-banner.is-visible { display:block; }
.cookie-banner-inner { width:min(1080px,100%); margin:0 auto; display:grid; grid-template-columns:1fr auto; gap:28px; align-items:center; padding:24px; border:1px solid rgba(230,216,191,.22); border-radius:22px; background:rgba(20,32,40,.96); color:var(--white); box-shadow:0 24px 70px rgba(10,20,24,.34); backdrop-filter:blur(18px); }
.cookie-copy { min-width:0; }
.cookie-copy strong { display:block; margin-bottom:7px; font-size:15px; letter-spacing:-.01em; }
.cookie-copy p { margin:0; max-width:760px; color:rgba(255,253,248,.64); font-size:12px; line-height:1.65; }
.cookie-copy a { color:var(--sand); text-decoration:underline; text-underline-offset:3px; }
.cookie-actions { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.cookie-button { min-height:42px; padding:0 14px; border:1px solid rgba(230,216,191,.28); border-radius:999px; background:transparent; color:var(--white); font-size:10px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
.cookie-button:hover { border-color:var(--sand); background:rgba(230,216,191,.07); }
.cookie-button.primary { background:var(--sand); border-color:var(--sand); color:var(--ink); }
.cookie-button.primary:hover { background:#f3e8d5; }
.cookie-button.reject { border-color:rgba(230,216,191,.46); }
.cookie-modal-backdrop { position:fixed; inset:0; z-index:1001; display:none; place-items:center; padding:22px; background:rgba(10,20,24,.68); backdrop-filter:blur(8px); }
.cookie-modal-backdrop.is-visible { display:grid; }
.cookie-modal { width:min(620px,100%); max-height:min(760px,calc(100vh - 44px)); overflow:auto; border:1px solid rgba(230,216,191,.22); border-radius:24px; background:#18262e; color:var(--white); box-shadow:0 28px 90px rgba(0,0,0,.38); }
.cookie-modal-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; padding:25px 25px 18px; border-bottom:1px solid var(--line); }
.cookie-modal-head h2 { margin:0 0 6px; font-size:24px; letter-spacing:-.035em; }
.cookie-modal-head p { margin:0; color:rgba(255,253,248,.58); font-size:12px; line-height:1.6; }
.cookie-close { width:38px; height:38px; flex:0 0 auto; border:1px solid var(--line); border-radius:50%; background:transparent; color:var(--white); cursor:pointer; }
.cookie-close:hover { border-color:var(--sand); }
.cookie-preferences { padding:10px 25px 8px; }
.cookie-category { display:grid; grid-template-columns:1fr auto; gap:20px; padding:19px 0; border-bottom:1px solid var(--line); }
.cookie-category:last-child { border-bottom:0; }
.cookie-category strong { display:block; margin-bottom:5px; font-size:13px; }
.cookie-category p { margin:0; color:rgba(255,253,248,.53); font-size:11px; line-height:1.6; }
.cookie-category small { display:block; margin-top:6px; color:var(--sand); font-size:9px; line-height:1.45; }
.cookie-switch { position:relative; width:44px; height:24px; margin-top:2px; }
.cookie-switch input { position:absolute; opacity:0; width:1px; height:1px; }
.cookie-switch span { position:absolute; inset:0; border:1px solid rgba(230,216,191,.30); border-radius:999px; background:#263845; transition:.2s; }
.cookie-switch span:after { content:""; position:absolute; width:16px; height:16px; left:3px; top:3px; border-radius:50%; background:rgba(255,253,248,.72); transition:.2s; }
.cookie-switch input:checked + span { background:var(--grass); border-color:var(--grass); }
.cookie-switch input:checked + span:after { transform:translateX(20px); background:var(--white); }
.cookie-switch input:focus-visible + span { outline:2px solid var(--sand); outline-offset:2px; }
.cookie-switch input:disabled + span { opacity:.55; cursor:not-allowed; }
.cookie-modal-footer { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px 25px 25px; border-top:1px solid var(--line); }
.cookie-modal-footer a { color:var(--sand); font-size:10px; text-decoration:underline; text-underline-offset:3px; }
.cookie-modal-actions { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.cookie-gpc { margin:0 25px 10px; padding:11px 13px; border:1px solid rgba(111,138,89,.30); border-radius:12px; background:rgba(111,138,89,.08); color:rgba(255,253,248,.67); font-size:10px; line-height:1.5; }
@media(max-width:760px){
  .cookie-banner { left:12px; right:12px; bottom:12px; }
  .cookie-banner-inner { grid-template-columns:1fr; gap:18px; padding:20px; border-radius:18px; }
  .cookie-actions { justify-content:stretch; }
  .cookie-actions .cookie-button { flex:1 1 135px; }
  .cookie-modal-footer { align-items:flex-start; flex-direction:column; }
  .cookie-modal-actions { width:100%; }
  .cookie-modal-actions .cookie-button { flex:1; }
}


/* Accessibility control */
body.accessibility-open { overflow: hidden; }
.accessibility-launcher {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 190;
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(230,216,191,.34);
  border-radius: 50%;
  background: #18262e;
  color: var(--sand);
  box-shadow: 0 10px 34px rgba(10,20,24,.24);
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, border-color .2s ease;
}
.accessibility-launcher:hover { transform: translateY(-2px); background: #22353f; border-color: var(--sand); }
.accessibility-launcher:focus-visible,
.accessibility-close:focus-visible,
.accessibility-segmented button:focus-visible,
.accessibility-actions button:focus-visible { outline: 3px solid var(--sand); outline-offset: 3px; }
.accessibility-launcher svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.accessibility-backdrop { position: fixed; inset: 0; z-index: 198; background: rgba(10,20,24,.48); opacity: 0; transition: opacity .18s ease; }
.accessibility-backdrop.open { opacity: 1; }
.accessibility-panel {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 199;
  width: min(430px, calc(100vw - 36px));
  max-height: calc(100vh - 36px);
  overflow: auto;
  padding: 26px;
  border: 1px solid rgba(230,216,191,.22);
  border-radius: 24px;
  background: #18262e;
  color: #fffdf8;
  box-shadow: 0 24px 80px rgba(10,20,24,.35);
  opacity: 0;
  transform: translateY(14px) scale(.985);
  transition: opacity .18s ease, transform .18s ease;
}
.accessibility-panel.open { opacity: 1; transform: none; }
.accessibility-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding-bottom: 18px; border-bottom: 1px solid rgba(230,216,191,.14); }
.accessibility-panel-head small { display: block; margin-bottom: 8px; color: var(--sand); font-size: 8px; font-weight: 800; letter-spacing: .16em; }
.accessibility-panel-head h2 { margin: 0; font-size: 26px; letter-spacing: -.03em; }
.accessibility-close { flex: 0 0 auto; width: 36px; height: 36px; border: 1px solid rgba(230,216,191,.18); border-radius: 50%; background: transparent; color: #fffdf8; font-size: 24px; line-height: 1; cursor: pointer; }
.accessibility-intro { margin: 18px 0 22px; color: rgba(255,253,248,.62); font-size: 13px; line-height: 1.65; }
.accessibility-control { display: grid; gap: 10px; padding: 16px 0 20px; border-bottom: 1px solid rgba(230,216,191,.12); }
.accessibility-control > span { font-size: 12px; font-weight: 700; }
.accessibility-segmented { display: grid; grid-template-columns: repeat(3, 1fr); gap: 7px; }
.accessibility-segmented button { min-height: 42px; border: 1px solid rgba(230,216,191,.18); border-radius: 12px; background: rgba(255,253,248,.035); color: #fffdf8; cursor: pointer; }
.accessibility-segmented button.active { border-color: var(--sand); background: var(--sand); color: #18262e; }
.accessibility-toggle { min-height: 70px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 0; border-bottom: 1px solid rgba(230,216,191,.12); cursor: pointer; }
.accessibility-toggle span { display: grid; gap: 5px; }
.accessibility-toggle strong { font-size: 12px; }
.accessibility-toggle small { color: rgba(255,253,248,.5); font-size: 10px; line-height: 1.45; }
.accessibility-toggle input { width: 42px; height: 22px; flex: 0 0 auto; accent-color: var(--grass); cursor: pointer; }
.accessibility-actions { display: flex; justify-content: space-between; gap: 10px; margin-top: 22px; }
.accessibility-actions .button { flex: 1; min-height: 44px; }
.accessibility-reset { border-color: rgba(230,216,191,.22); }

/* User-selected accessibility preferences */
html[data-a11y-text="large"] body { zoom: 1.10; }
html[data-a11y-text="xlarge"] body { zoom: 1.20; }
html.a11y-highlight-links main a:not(.button),
html.a11y-highlight-links footer a,
html.a11y-highlight-links nav a { text-decoration: underline !important; text-decoration-thickness: 2px !important; text-underline-offset: 3px !important; }
html.a11y-readable-spacing body { line-height: 1.72; letter-spacing: .018em; word-spacing: .08em; }
html.a11y-readable-spacing p,
html.a11y-readable-spacing li,
html.a11y-readable-spacing label { line-height: 1.85 !important; }
html.a11y-grayscale body { filter: grayscale(1); }
html.a11y-high-contrast { --paper: #ffffff; --white: #ffffff; --ink: #05090b; --ink-2: #0b1114; --ink-3: #12191d; --muted: #34434b; --line-dark: rgba(5,9,11,.32); }
html.a11y-high-contrast .section-dark,
html.a11y-high-contrast .section-mid,
html.a11y-high-contrast #government-outcomes,
html.a11y-high-contrast #government-operations,
html.a11y-high-contrast #company,
html.a11y-high-contrast .site-footer { background: #05090b !important; color: #fff !important; }
html.a11y-high-contrast .section-light,
html.a11y-high-contrast #government-services,
html.a11y-high-contrast #government-engagement { background: #fff !important; color: #05090b !important; }
html.a11y-high-contrast a:focus-visible,
html.a11y-high-contrast button:focus-visible,
html.a11y-high-contrast input:focus-visible,
html.a11y-high-contrast textarea:focus-visible { outline: 3px solid #f6cf66 !important; outline-offset: 3px !important; }
html.a11y-reduce-motion *,
html.a11y-reduce-motion *::before,
html.a11y-reduce-motion *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .001ms !important; }
html.a11y-reduce-motion .customer-badge-track { animation: none !important; transform: none !important; }

@media (max-width: 560px) {
  .accessibility-launcher { right: 14px; bottom: 14px; width: 46px; height: 46px; }
  .accessibility-panel { right: 10px; bottom: 10px; width: calc(100vw - 20px); max-height: calc(100vh - 20px); padding: 22px 18px; }
}



