@charset "UTF-8";
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }


/* ---- Cortega brand tokens (source: Brand & Design / Marketing Assets README, "The Gate") ---- */
:root {
  --brand-ink: #0C1116;
  --brand-paper: #EDEEEC;
  --brand-signal: #0F8C99;      /* accent on light backgrounds */
  --brand-signal-plus: #3FC7D4; /* accent on dark backgrounds */
  --font-brand: Manrope, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --radius-sm: 6px;
  --radius-md: 12px;
  --radius-lg: 20px;
  --radius-pill: 999px;
}

:root {
  --navy: #0c1116;
  --navy-2: #14191f;
  --navy-3: #242e38;
  --navy-4: #3A4A5A;
  --indigo: #0f8c99;
  --indigo-2: #3FC7D4;
  --indigo-pale: #e3f1f2;
  --green: #1f6b49;
  --green-pale: #e4f5ec;
  --amber: #b7700f;
  --amber-pale: #fbf1dc;
  --red: #d14343;
  --red-pale: #fbe9e9;
  --cyan: #485c70;
  --cyan-pale: #edeeec;
  --purple: #3fc7d4;
  --purple-pale: #f1f8f8;
  --text: #14191f;
  --text-2: #3A4A5A;
  --text-3: #587089;
  --text-4: #899eb3;
  --border: #e1e3e3;
  --border-2: #edeeec;
  --surface: #f7f7f6;
  --white: #ffffff;
  --radius: 8px;
  --radius-lg: 14px;
  --shadow: 0 18px 60px rgba(20,25,31, 0.12);
  --cortega-green: #3FC7D4;
  --charcoal: #14191F;
}

html { scroll-behavior: smooth; overflow-x: hidden; }

body {
  font-family: Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color: var(--text);
  background: var(--white);
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: transparent;
}

@media (max-width: 760px) {
  .x-btn, .nav-btn, .gov-choice, .gov-hero-tabs button, .xb-tabs button { min-height: 48px; touch-action: manipulation; }
  input, select, textarea { font-size: 16px; }
}

a { color: inherit; }

/* ===== NAV ===== */
.nav {
  position: sticky; top: 0; z-index: 100; min-height: 64px;
  background: rgba(12,17,22, 0.97);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  display: flex; align-items: center; padding: 0 40px;
}
.nav-logo { display: flex; align-items: center; gap: 10px; text-decoration: none; margin-right: 34px; }
.nav-links { display: flex; align-items: center; gap: 4px; flex: 1; }
.nav-link {
  padding: 7px 12px; font-size: 13px; font-weight: 600; color: #899eb3;
  text-decoration: none; border-radius: 999px; transition: color 0.15s, background 0.15s;
}
.nav-link:hover, .nav-link.active { color: #f7f7f6; background: rgba(255,255,255,0.06); }
.nav-item-dropdown { position: relative; }
.nav-dropdown-toggle { display: inline-flex; align-items: center; gap: 5px; cursor: pointer; user-select: none; }
.nav-dropdown-toggle-split { display: inline-flex; align-items: center; gap: 4px; user-select: none; padding-right: 6px; }
.nav-dropdown-toggle-label { text-decoration: none; color: inherit; }
.nav-dropdown-caret-btn { display: inline-flex; align-items: center; cursor: pointer; padding: 3px; margin: -3px -3px -3px 1px; border-radius: 999px; }
.nav-dropdown-caret-btn:hover { background: rgba(255,255,255,0.12); }
.nav-caret { transition: transform 0.15s; opacity: 0.8; }
.nav-item-dropdown:hover .nav-caret, .nav-item-dropdown.open .nav-caret { transform: rotate(180deg); }
.nav-dropdown-menu {
  position: absolute; top: calc(100% + 10px); left: 0; min-width: 210px;
  background: #1c242c; border: 1px solid rgba(255,255,255,0.1); border-radius: 12px;
  padding: 6px; box-shadow: 0 20px 44px rgba(0,0,0,0.45);
  opacity: 0; visibility: hidden; transform: translateY(4px);
  transition: opacity 0.15s, transform 0.15s, visibility 0.15s;
}
.nav-item-dropdown:hover .nav-dropdown-menu,
.nav-item-dropdown.open .nav-dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-dropdown-link {
  display: block; padding: 9px 12px; font-size: 13px; font-weight: 600; color: #899eb3;
  text-decoration: none; border-radius: 6px; transition: color 0.15s, background 0.15s;
}
.nav-dropdown-link:hover, .nav-dropdown-link.active { color: #f7f7f6; background: rgba(255,255,255,0.07); }
.nav-cta { display: flex; gap: 10px; align-items: center; margin-left: auto; }
.nav-menu-toggle {
  display: none; width: 36px; height: 36px; align-items: center; justify-content: center;
  flex-direction: column; gap: 4px; background: transparent;
  border: 1px solid rgba(255,255,255,0.14); border-radius: 6px; cursor: pointer;
}
.nav-menu-toggle span { display: block; width: 16px; height: 2px; background: #899eb3; border-radius: 999px; }
.nav-btn { padding: 8px 15px; font-size: 13px; font-weight: 700; border-radius: 6px; text-decoration: none; white-space: nowrap; }
.nav-btn-ghost { color: #ccd1d4; border: 1px solid rgba(255,255,255,0.16); }
.nav-btn-primary { background: #0f8c99; color: #0C1116; }
.nav-btn-live { background: #f7f7f6; color: #0c1116; border: 1px solid rgba(255,255,255,0.72); }
.nav-btn-live:hover { background: #edeeec; }

/* ===== LAYOUT ===== */
.section-inner { max-width: 1160px; margin: 0 auto; }
.section-inner-wide { max-width: 1160px; margin: 0 auto; }
.eyebrow { font-size: 11.5px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; color: var(--indigo); margin-bottom: 12px; }
.eyebrow.center { text-align: center; }
.section-title {
  font-size: clamp(24px, 3vw, 34px); font-weight: 800; letter-spacing: -0.6px;
  line-height: 1.15; color: var(--text); max-width: 760px;
}
.section-title.center { margin: 0 auto; text-align: center; }
.section-sub { font-size: 15px; color: var(--text-3); line-height: 1.6; max-width: 690px; margin-top: 16px; }
.section-sub.center { margin-left: auto; margin-right: auto; text-align: center; }

.band { padding: 86px 40px; }
.band.alt { background: var(--surface); }
.band.dark { background: var(--navy); }
.band.compact { padding: 58px 40px; }

.split { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 56px; align-items: start; }

/* ===== BUTTONS ===== */
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  padding: 13px 22px; min-height: 46px; border-radius: 6px; text-decoration: none;
  font-size: 14px; font-weight: 800; transition: transform 0.15s, background 0.15s, border-color 0.15s;
}
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: #0f8c99; color: #0C1116; }
.btn-secondary { color: #edeeec; border: 1px solid rgba(255,255,255,0.18); }
.btn-light { background: var(--white); color: var(--text); border: 1px solid var(--border); }
.btn-cta { display: inline-flex; align-items: center; padding: 13px 26px; font-size: 15px; font-weight: 800; border-radius: 6px; text-decoration: none; background: #0f8c99; color: #0C1116; border: none; transition: all 0.15s; }
.btn-cta:hover { background: #0f8c99; transform: translateY(-1px); }

/* ===== HERO (shared for homepage & subpages) ===== */
.hero {
  position: relative; overflow: hidden;
  background: linear-gradient(180deg, rgba(63,199,212,0.11), rgba(12,17,22,0) 42%), var(--navy);
  padding: 40px 40px 44px;
}
.hero-grid {
  max-width: 1180px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr minmax(420px, 0.9fr); gap: 56px; align-items: start;
}
.hero h1 { font-size: clamp(34px,4.4vw,56px); font-weight: 800; letter-spacing: -0.8px; line-height: 1.12; color: #f7f7f6; margin-bottom: 14px; text-wrap: balance; }
.hero h1 span { color: #3FC7D4; font-weight: 800; }
.hero-copy { font-size: 15px; color: #a2b2c3; line-height: 1.6; max-width: 600px; margin-bottom: 26px; }
.hero-ctas { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 30px; }
.hero .eyebrow { color: #e4f5ec; }

.page-hero {
  background: linear-gradient(180deg, rgba(63,199,212,0.10), rgba(12,17,22,0) 45%), var(--navy);
  padding: 40px 40px 44px;
}
.page-hero-inner { max-width: 1160px; margin: 0 auto; }
.page-hero h1 { color: #f7f7f6; font-size: clamp(34px,4.4vw,56px); font-weight: 800; letter-spacing: -0.8px; line-height: 1.12; margin-bottom: 12px; text-wrap: balance; }
.page-hero h1 em { font-style: normal; color: #e4f5ec; }
.page-hero h1 span { color: #e4f5ec; }
.page-hero p { color: #a2b2c3; font-size: 15px; line-height: 1.6; max-width: 620px; }
.page-hero .eyebrow { color: #e4f5ec; }

/* ===== PROOF PILLS ===== */
.proof-row { display: flex; flex-wrap: wrap; gap: 9px; }
.proof-pill {
  display: inline-flex; align-items: center; gap: 7px; color: #ccd1d4;
  background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.09);
  border-radius: 999px; padding: 7px 11px; font-size: 12px; font-weight: 750;
}
.proof-pill::before { content: ""; width: 6px; height: 6px; border-radius: 20px; background: #3FC7D4; }

/* ===== TRAFFIC CONSOLE ===== */
.status-live { color: #e4f5ec; background: rgba(31,107,73,0.14); border: 1px solid rgba(46,158,106,0.28); border-radius: 999px; padding: 4px 9px; }

/* ===== HERO FLOW DIAGRAM ===== */
.flow-diagram { position: relative; background: rgba(20,25,31,0.86); border: 1px solid rgba(63,199,212,0.28); border-radius: 12px; box-shadow: 0 34px 90px rgba(0,0,0,0.38); overflow: hidden; }
.flow-glow { position: absolute; top: -80px; right: -60px; width: 260px; height: 260px; background: radial-gradient(circle, rgba(63,199,212,0.28), transparent 70%); filter: blur(10px); pointer-events: none; z-index: 0; }
.flow-topbar { position: relative; z-index: 1; min-height: 42px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(137,158,179,0.16); padding: 0 16px; color: #ccd1d4; font-size: 12px; font-weight: 800; }
.flow-body { position: relative; z-index: 1; display: grid; grid-template-columns: 28% 1fr 28%; column-gap: 8%; align-items: stretch; padding: 22px 18px; min-height: 380px; }
.flow-lines { position: absolute; top: 22px; left: 18px; right: 18px; bottom: 22px; width: calc(100% - 36px); height: calc(100% - 44px); z-index: 0; }
.flow-path { fill: none; stroke-width: 0.55; }
.flow-port { fill: #3FC7D4; opacity: 0.55; }
.flow-port-hub { fill: #3FC7D4; opacity: 0.85; }
.flow-pulse { fill: #e4f5ec; filter: drop-shadow(0 0 2.5px rgba(228,245,236,0.9)); }

.flow-col { position: relative; z-index: 1; display: flex; flex-direction: column; justify-content: space-evenly; gap: 10px; }
.flow-node-sm { display: flex; align-items: center; gap: 9px; color: #edeeec; background: rgba(137,158,179,0.08); border: 1px solid rgba(137,158,179,0.16); border-radius: 999px; padding: 8px 12px; font-size: 12px; font-weight: 700; }
.flow-dests .flow-node-sm { justify-content: flex-start; flex-direction: row-reverse; text-align: right; }
.flow-icon { width: 22px; height: 22px; border-radius: 50%; background: rgba(63,199,212,0.14); color: #a9e4ea; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.flow-icon svg { width: 12px; height: 12px; }
.flow-mono { width: 22px; height: 22px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 10.5px; font-weight: 900; color: #0c1116; }
.flow-mono svg { width: 12px; height: 12px; color: #0c1116; }
.flow-mono-openai { background: #5bc48c; }
.flow-mono-anthropic { background: #e8a93a; }
.flow-mono-bedrock { background: #e8a93a; }
.flow-mono-mcp { background: #a9e4ea; }

.flow-gateway { position: relative; z-index: 1; background: linear-gradient(180deg, rgba(63,199,212,0.14), rgba(255,255,255,0.03)); border: 1px solid rgba(63,199,212,0.4); border-radius: 12px; padding: 16px 14px; display: flex; flex-direction: column; justify-content: center; gap: 14px; }
.flow-gateway-head { display: flex; align-items: center; gap: 9px; }
.flow-gateway-name { color: #f7f7f6; font-size: 14px; font-weight: 850; line-height: 1.2; }
.flow-gateway-tag { color: #a9e4ea; font-size: 10px; font-weight: 750; text-transform: uppercase; letter-spacing: 0.5px; }
.flow-gateway-pills { display: grid; gap: 8px; }
.flow-pill { background: rgba(12,17,22,0.72); border: 1px solid rgba(137,158,179,0.14); border-radius: 6px; padding: 9px 11px; }
.flow-pill b { display: block; color: #f7f7f6; font-size: 12px; margin-bottom: 3px; }
.flow-pill span { color: #899eb3; font-size: 10.5px; line-height: 1.35; }

@media (prefers-reduced-motion: reduce) {
  .flow-pulses { display: none; }
}

/* ===== BADGES ===== */
.badge { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 4px 8px; font-size: 10.5px; font-weight: 850; white-space: nowrap; }
.badge.green { color: #1F6B49; background: #e4f5ec; }
.badge.red { color: #8a2424; background: #fbe9e9; }
.badge.amber { color: #7c4a0e; background: #fbf1dc; }
.badge.indigo { color: #242e38; background: #e3f1f2; }
.badge.dark { color: #ccd1d4; background: rgba(137,158,179,0.12); border: 1px solid rgba(137,158,179,0.18); }

/* ===== LOGO BAR ===== */
/* Scrolling logo marquee */
.logo-track-wrap {
  overflow: hidden; margin-top: 24px;
  mask-image: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
}
.logo-track {
  display: flex; align-items: flex-start; gap: 28px;
  width: max-content;
  animation: logoScroll 30s linear infinite;
}
.logo-mark {
  height: 48px; width: auto; display: block; margin: 0 auto;
}
.logo-item {
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  flex-shrink: 0; opacity: 0.95; padding: 0 8px;
}
.logo-item small {
  font-size: 10.5px; font-weight: 600; color: var(--text-4);
  white-space: nowrap; letter-spacing: 0.2px;
}
@keyframes logoScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
.logo-note { color: var(--text-4); font-size: 12.5px; line-height: 1.55; text-align: center; max-width: 640px; margin: 22px auto 0; }

/* ===== INCIDENT CARDS ===== */
.incident-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 34px; }
.incident-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px; }
.incident-type { display: inline-block; color: var(--indigo); background: var(--indigo-pale); border: 1px solid #a9e4ea; border-radius: 999px; padding: 4px 10px; font-size: 11px; font-weight: 850; text-transform: uppercase; letter-spacing: 0.6px; margin-bottom: 14px; }
.incident-card h3 { font-size: 18px; line-height: 1.25; letter-spacing: -0.25px; margin-bottom: 10px; }
.incident-source { color: var(--text-4); font-size: 12px; font-weight: 750; margin-bottom: 10px; line-height: 1.4; }
.incident-card p { color: var(--text-3); font-size: 14px; line-height: 1.65; margin-bottom: 14px; }
.incident-card a { color: var(--indigo); font-size: 13px; font-weight: 800; text-decoration: none; }
.incident-card a:hover { text-decoration: underline; }

/* ===== SCROLL HINT (mobile-only affordance for horizontally-scrollable blocks) ===== */
.arch-scroll { overflow-x: auto; position: relative; }
.scroll-hint-label { display: none; }
@media (max-width: 900px) {
  .cmp-wrap, .arch-scroll { position: relative; }
  .cmp-wrap::after, .arch-scroll::after {
    content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 34px;
    background: linear-gradient(to right, rgba(255,255,255,0), var(--white));
    pointer-events: none;
  }
  .scroll-hint-label {
    display: block; text-align: right; font-size: 11.5px; font-weight: 700;
    color: var(--text-4); letter-spacing: 0.2px; margin-top: 8px;
  }
}

/* ===== COMPARISON TABLE ===== */
.cmp-wrap { margin-top: 34px; overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--white); box-shadow: 0 16px 50px rgba(20,25,31,0.08); }
.cmp { width: 100%; border-collapse: collapse; min-width: 720px; }
.cmp th, .cmp td { text-align: center; padding: 14px 14px; border-bottom: 1px solid var(--border-2); font-size: 13px; }
.cmp thead th { vertical-align: bottom; color: var(--text); font-size: 14px; font-weight: 850; border-bottom: 2px solid var(--border); }
.cmp thead th span { display: block; color: var(--text-3); font-size: 11px; font-weight: 650; margin-top: 4px; }
.cmp td:first-child, .cmp th.cmp-cap { text-align: left; color: var(--text); font-weight: 700; line-height: 1.4; }
.cmp.text-table th, .cmp.text-table td { text-align: left; line-height: 1.5; }
.cmp.text-table th:not(.cmp-cap), .cmp.text-table td:not(:first-child) { text-align: left; }
.cmp .cmp-us, .cmp th.cmp-us { background: #e4f5ec; }
.cmp thead th.cmp-us { color: #0f8c99; border-bottom-color: #0f8c99; }
.cmp tbody tr:last-child td { border-bottom: none; }
.cmp i { font-style: normal; font-weight: 900; font-size: 13px; width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.cmp i.yes { color: #1f6b49; background: var(--green-pale); }
.cmp i.no { color: #a2b2c3; background: var(--surface); }
.cmp i.mid { color: var(--amber); background: var(--amber-pale); }
.cmp td.cmp-value { font-weight: 700; color: var(--text-2); }
.cmp td:first-child .cmp-feat-name { display: block; font-weight: 800; }
.cmp td:first-child .cmp-feat-desc { display: block; margin-top: 4px; font-weight: 500; font-size: 11.5px; color: var(--text-3); line-height: 1.5; }
.cmp-soon { display: inline-block; font-size: 10px; font-weight: 800; letter-spacing: 0.4px; text-transform: uppercase; color: var(--amber); background: var(--amber-pale); border: 1px solid #e8a93a; border-radius: 999px; padding: 4px 9px; white-space: nowrap; }
.cmp tbody tr:not(.price-cat-row):hover td { background: var(--surface); }
.price-cat-row.cat-obs td { background: var(--indigo-pale); color: var(--indigo); }
.price-cat-row.cat-gov td { background: var(--green-pale); color: #1f6b49; }
.price-cat-row.cat-comp td { background: var(--amber-pale); color: #7c4a0e; }

/* ===== CAPABILITY GRID ===== */
.capability-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.capability { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 20px; }
.capability h3 { font-size: 15px; margin-bottom: 9px; line-height: 1.3; display: flex; align-items: center; gap: 10px; }
.capability p { color: var(--text-3); font-size: 13.5px; line-height: 1.6; }
.capability.accent-indigo { border-top: 3px solid var(--indigo); }
.capability.accent-green { border-top: 3px solid var(--green); }
.capability.accent-amber { border-top: 3px solid var(--amber); }
.capability.accent-red { border-top: 3px solid var(--red); }
.capability.accent-cyan { border-top: 3px solid var(--cyan); }
.capability.accent-purple { border-top: 3px solid var(--purple); }

/* Mini check-mark glyph, color-matched to each card's accent, to break up card-grid text walls */
.capability h3::before {
  content: ""; width: 22px; height: 22px; border-radius: 6px; flex-shrink: 0;
  background-repeat: no-repeat; background-position: center; background-size: 12px 12px;
}
.capability.accent-indigo h3::before { background-color: var(--indigo-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7681' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.capability.accent-green h3::before { background-color: var(--green-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.capability.accent-amber h3::before { background-color: var(--amber-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d97706' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.capability.accent-red h3::before { background-color: var(--red-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.capability.accent-cyan h3::before { background-color: var(--cyan-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2352616f' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.capability.accent-purple h3::before { background-color: var(--purple-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c3aed' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }

/* ===== USECASE CARDS ===== */
.usecase-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
.usecase-card { display: flex; flex-direction: column; gap: 14px; min-height: 238px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 20px; text-decoration: none; transition: transform 0.15s, border-color 0.15s, box-shadow 0.15s; }
.usecase-card:hover { transform: translateY(-2px); border-color: #b9e3e7; box-shadow: 0 18px 45px rgba(20,25,31,0.08); }
.quote { font-size: 17px; font-weight: 830; line-height: 1.28; color: var(--text); }
.usecase-card p { color: var(--text-3); line-height: 1.55; font-size: 13.5px; }
.usecase-meta { margin-top: auto; display: flex; gap: 7px; flex-wrap: wrap; }

/* ===== DEPLOY / PLANE CARDS ===== */
.edge-core { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 28px; }
.plane-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 34px; }
.deploy-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 20px; }
.deploy-card h3 { font-size: 16px; margin-bottom: 10px; }
.deploy-card p { color: var(--text-3); font-size: 13.5px; line-height: 1.6; }

/* ===== SHADOW CALLOUT ===== */
.shadow-callout { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-top: 30px; padding: 26px 28px; background: var(--navy-2); border-radius: var(--radius-lg); }
.shadow-callout h3 { color: #f7f7f6; font-size: 20px; letter-spacing: -0.3px; margin-bottom: 8px; }
.shadow-callout p { color: #899eb3; font-size: 14px; line-height: 1.6; max-width: 620px; }
.shadow-callout .btn { flex-shrink: 0; }

/* ===== PROOF LINE ===== */
.proof-line { margin-top: 26px; padding: 14px 18px; border-left: 3px solid var(--cortega-green); background: rgba(63,199,212,0.07); border-radius: 0 8px 8px 0; color: #ccd1d4; font-size: 14px; font-weight: 650; line-height: 1.55; }

/* ===== CONTEXT SHOT ===== */
.context-shot { display: grid; grid-template-columns: 0.95fr 1.05fr; gap: 26px; align-items: center; margin-top: 34px; }
.context-shot.reverse { grid-template-columns: 1.05fr 0.95fr; }
.context-shot.reverse .context-copy { order: 2; }
.context-shot.reverse .product-shot { order: 1; }
.context-copy h3 { font-size: 21px; margin-bottom: 10px; }
.context-copy p { color: var(--text-3); font-size: 15px; line-height: 1.65; margin-bottom: 16px; }
.context-list { list-style: none; display: grid; gap: 8px; }
.context-list li { color: var(--text-2); font-size: 13.5px; line-height: 1.5; }
.context-list li::before { content: "\2192  "; color: #0f8c99; font-weight: 900; }

/* ===== PRODUCT SHOTS ===== */
.product-shot { background: #0c1116; border: 1px solid #242E38; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow); }
.product-shot img { display: block; width: 100%; height: auto; }
.shot-caption { border-top: 1px solid #242E38; padding: 13px 15px; background: #14191F; }
.shot-caption b { display: block; color: #f7f7f6; font-size: 13.5px; margin-bottom: 5px; }
.shot-caption span { color: #899eb3; font-size: 12.5px; line-height: 1.45; }

/* ===== ARCHITECTURE ===== */
.architecture-panel { margin-top: 36px; background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px; box-shadow: 0 16px 50px rgba(20,25,31, 0.08); }
.arch-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.arch-title p { color: var(--text-3); font-size: 13.5px; line-height: 1.55; max-width: 680px; }
.arch-graph { position: relative; min-height: 520px; border: 1px solid var(--border-2); border-radius: var(--radius); background: linear-gradient(90deg, rgba(20,25,31,0.035) 1px, transparent 1px), linear-gradient(180deg, rgba(20,25,31,0.035) 1px, transparent 1px), #f1f8f8; background-size: 42px 42px; overflow: hidden; }
.arch-lines { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.traffic-edge { fill: none; stroke: #587089; stroke-width: 2; opacity: 0.52; }
.control-edge { fill: none; stroke: #0f8c99; stroke-width: 2; stroke-dasharray: 8 8; opacity: 0.78; }
.graph-pulse { fill: var(--cortega-green); filter: drop-shadow(0 0 8px rgba(63,199,212,0.7)); }
.graph-pulse.control { fill: #0f8c99; }
.graph-pulse.p1 { offset-path: path("M144 96 C235 112 270 128 362 154"); animation: graphTravel 3.2s linear infinite; }
.graph-pulse.p2 { offset-path: path("M146 190 C250 190 292 184 394 190"); animation: graphTravel 3.8s linear infinite 0.5s; }
.graph-pulse.p3 { offset-path: path("M145 395 C250 385 305 352 404 304"); animation: graphTravel 4.2s linear infinite 1s; }
.graph-pulse.p4 { offset-path: path("M613 118 C594 160 588 205 588 270"); animation: graphTravel 4.8s linear infinite 0.3s; }
@keyframes graphTravel { from { offset-distance: 0%; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } to { offset-distance: 100%; opacity: 0; } }
.graph-node { position: absolute; width: 142px; min-height: 66px; border: 1px solid var(--border); border-radius: 12px; background: var(--white); box-shadow: 0 14px 35px rgba(20,25,31, 0.08); padding: 12px; z-index: 2; }
.graph-node span { display: block; color: var(--text); font-size: 13.5px; font-weight: 850; margin-bottom: 5px; }
.graph-node small { display: block; color: var(--text-3); font-size: 11.5px; line-height: 1.35; }
.graph-node.surface { border-left: 4px solid #587089; }
.graph-node.gateway { border-left: 4px solid var(--cortega-green); background: #f1f8f8; }
.graph-node.resource { border-left: 4px solid #b7700f; }
.graph-node.management { width: 178px; background: #14191F; border-color: #2E3B48; border-left: 4px solid var(--cortega-green); }
.graph-node.management span { color: #f7f7f6; }
.graph-node.management small { color: #899eb3; }
.n-phone { left: 3%; top: 9%; }
.n-browser { left: 3.5%; top: 28%; }
.n-pc { left: 3%; top: 49%; }
.n-agent { left: 3.5%; top: 72%; }
.n-edge { left: 39%; top: 24%; }
.n-core { left: 40%; top: 51%; }
.n-mgmt { left: 58%; top: 33%; }
.n-cloud { right: 4%; top: 8%; }
.n-database { right: 4%; top: 33%; }
.n-mcp { right: 4%; top: 67%; }
.n-model { right: 4%; top: 82%; }
.graph-legend { position: absolute; left: 16px; bottom: 14px; z-index: 3; display: flex; gap: 12px; flex-wrap: wrap; color: var(--text-3); font-size: 11.5px; font-weight: 750; }
.graph-legend span { display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,0.82); border: 1px solid var(--border); border-radius: 999px; padding: 5px 8px; }
.graph-legend i { width: 18px; height: 2px; display: inline-block; background: #587089; }
.graph-legend i.control { background: repeating-linear-gradient(90deg, #0f8c99 0 5px, transparent 5px 8px); }

/* ===== DETAIL LAYOUT (for subpages) ===== */
.detail { padding: 88px 40px; }
.detail-alt { background: #f7f7f6; }
.detail-layout { display: grid; grid-template-columns: 380px 1fr; gap: 72px; align-items: start; }
.detail-layout.flipped { grid-template-columns: 1fr 380px; }
.detail-layout.flipped .detail-desc { order: 2; }
.detail-layout.flipped .detail-cards { order: 1; }
.detail-left h2 { font-size: clamp(21px, 2.5vw, 27px); font-weight: 780; letter-spacing: -0.4px; line-height: 1.25; margin-bottom: 16px; color: var(--text); text-wrap: balance; }
.detail-left p { font-size: 15px; color: var(--text-3); line-height: 1.65; }
.detail-right, .detail-cards { display: flex; flex-direction: column; gap: 14px; }
.dcard { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px 24px; border-left: 3px solid transparent; }
.dcard-red { border-left-color: #d14343; }
.dcard-indigo { border-left-color: var(--indigo); }
.dcard-green { border-left-color: var(--green); }
.dcard-amber { border-left-color: #e8a93a; }
.dcard-blue { border-left-color: #a9e4ea; }
.dcard-cyan { border-left-color: var(--cyan); }
.dcard-purple { border-left-color: var(--purple); }
.dcard h4 { font-size: 14.5px; font-weight: 700; margin-bottom: 8px; color: var(--text); display: flex; align-items: center; gap: 9px; }
.dcard p { font-size: 13.5px; color: var(--text-3); line-height: 1.65; }

/* Mini check-mark glyph, color-matched to each card's accent, to break up card-list text walls */
.dcard h4::before {
  content: ""; width: 20px; height: 20px; border-radius: 6px; flex-shrink: 0;
  background-repeat: no-repeat; background-position: center; background-size: 11px 11px;
}
.dcard-red h4::before { background-color: var(--red-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ef4444' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.dcard-indigo h4::before { background-color: var(--indigo-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7681' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.dcard-green h4::before { background-color: var(--green-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.dcard-amber h4::before { background-color: var(--amber-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d97706' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.dcard-blue h4::before { background-color: #f1f8f8; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.dcard-cyan h4::before { background-color: var(--cyan-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2352616f' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }
.dcard-purple h4::before { background-color: var(--purple-pale); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237c3aed' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 13 10 18 19 7'/%3E%3C/svg%3E"); }

/* Scenario cards: a pain-point quote plus how Cortega enforces against it */
.scenario-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
.scenario-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px 24px; }
.scenario-num { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; background: var(--purple); color: #fff; font-size: 11.5px; font-weight: 800; margin-right: 10px; }
.scenario-card h4 { display: flex; align-items: center; font-size: 15px; font-weight: 700; color: var(--text); margin-bottom: 12px; }
.scenario-card blockquote { margin: 0 0 16px; font-style: italic; color: var(--text-3); font-size: 14px; line-height: 1.6; }
.scenario-enforce { background: var(--purple-pale); border: 1px solid #e3f1f2; border-radius: 6px; padding: 12px 14px; font-size: 13px; line-height: 1.6; color: #0f8c99; }
.scenario-enforce b { color: #0f8c99; }

.section-label { font-size: 12px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; margin-bottom: 16px; }
.label-red { color: #d14343; }
.label-indigo { color: var(--indigo); }
.label-green { color: var(--green); }
.label-amber { color: var(--amber); }
.label-blue { color: #3fc7d4; }
.label-cyan { color: var(--cyan); }
.label-slate { color: #587089; }
.label-purple { color: var(--purple); }

/* ===== CARDS ===== */
.cards-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 28px; display: flex; flex-direction: column; }
.card > a.btn { margin-top: auto; }
.card-green-top { border-top: 3px solid var(--green); }
.card-indigo-top { border-top: 3px solid var(--indigo); }
.card-amber-top { border-top: 3px solid var(--amber); }
.card-icon { font-size: 24px; margin-bottom: 14px; display: block; }
.card h3 { font-size: 16px; font-weight: 700; line-height: 1.35; margin-bottom: 12px; color: var(--text); }
.card p { font-size: 14px; color: var(--text-3); line-height: 1.65; }

/* ===== JOURNEY STEPS ===== */
.journey-steps { display: flex; flex-direction: column; gap: 0; margin-top: 8px; }
.journey-step { display: grid; grid-template-columns: 80px 1fr; gap: 32px; align-items: start; padding: 40px 0; border-bottom: 1px solid var(--border-2); }
.journey-step:last-child { border-bottom: none; }
.step-num-col { display: flex; flex-direction: column; align-items: center; gap: 12px; padding-top: 4px; }
.step-num-badge { width: 48px; height: 48px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 800; }
.badge-indigo { background: var(--indigo-pale); color: var(--indigo); border: 2px solid #a9e4ea; }
.badge-green-step { background: var(--green-pale); color: var(--green); border: 2px solid #e4f5ec; }
.badge-amber-step { background: var(--amber-pale); color: var(--amber); border: 2px solid #e8a93a; }
.step-connector { width: 2px; height: 40px; background: var(--border); }
.step-body h3 { font-size: 22px; font-weight: 800; letter-spacing: -0.4px; margin-bottom: 10px; color: var(--text); }
.step-body .step-phase { font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 12px; }
.step-body p { font-size: 15px; color: var(--text-3); line-height: 1.7; margin-bottom: 16px; }
.step-checklist { list-style: none; display: flex; flex-direction: column; gap: 8px; }
.step-checklist li { font-size: 14px; color: var(--text-2); display: flex; align-items: flex-start; gap: 10px; line-height: 1.5; }
.check-dot { width: 18px; height: 18px; border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 1px; font-size: 10px; font-weight: 800; }
.check-indigo { background: var(--indigo-pale); color: var(--indigo); }
.check-green { background: var(--green-pale); color: var(--green); }
.check-amber { background: var(--amber-pale); color: var(--amber); }
.step-tag { display: inline-flex; align-items: center; margin-top: 14px; font-size: 12px; font-weight: 600; padding: 4px 12px; border-radius: 20px; }
.tag-indigo { color: var(--indigo); background: var(--indigo-pale); border: 1px solid #a9e4ea; }
.tag-green { color: var(--green); background: var(--green-pale); border: 1px solid #e4f5ec; }
.tag-amber { color: var(--amber); background: var(--amber-pale); border: 1px solid #e8a93a; }

/* ===== INDUSTRY GRID ===== */
.industry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.industry-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 28px; }
.industry-card .ind-icon { font-size: 28px; margin-bottom: 14px; display: block; }
.industry-card .pc-type { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: var(--text-4); }
.industry-card h3 { font-size: 17px; font-weight: 800; margin: 8px 0 10px; }
.industry-card p { font-size: 13.5px; color: var(--text-3); line-height: 1.65; margin-bottom: 16px; }
.industry-card .use-cases { list-style: none; display: flex; flex-direction: column; gap: 6px; }
.industry-card .use-cases li { font-size: 12.5px; color: var(--text-2); display: flex; align-items: center; gap: 8px; }
.industry-card .use-cases li::before { content: '\2192'; color: var(--indigo); font-weight: 700; }
.industry-card .ind-badge { display: inline-block; margin-top: 16px; font-size: 11px; font-weight: 700; letter-spacing: 0.5px; padding: 3px 10px; border-radius: 20px; }
.ind-badge-green { color: var(--green); background: var(--green-pale); border: 1px solid #e4f5ec; }
.ind-badge-indigo { color: var(--indigo); background: var(--indigo-pale); border: 1px solid #a9e4ea; }

/* ===== PRODUCT SWITCHER ===== */
.prod-switcher { position: sticky; top: 64px; z-index: 90; background: var(--white); border-bottom: 1px solid var(--border); padding: 0 40px; display: flex; gap: 0; }
.prod-tab { padding: 16px 24px; font-size: 14px; font-weight: 600; color: var(--text-3); text-decoration: none; border-bottom: 2px solid transparent; transition: all 0.15s; display: inline-block; }
.prod-tab:hover { color: var(--text); }
.prod-tab-fl:hover, .prod-tab-fl.active { color: var(--indigo); border-bottom-color: var(--indigo); }
.prod-tab-wf:hover, .prod-tab-wf.active { color: var(--green); border-bottom-color: var(--green); }
.prod-badge { display: inline-block; font-size: 11px; font-weight: 700; letter-spacing: 0.5px; text-transform: uppercase; padding: 4px 12px; border-radius: 20px; margin-bottom: 16px; }
.prod-badge-fl { background: var(--indigo-pale); color: #242e38; }
.prod-badge-wf { background: var(--green-pale); color: #1f6b49; }
.prod-badge-ab { background: var(--amber-pale); color: #7c4a0e; }
.prod-badge-vc { background: var(--purple-pale); color: #0f8c99; }
.prod-badge-vf { background: var(--red-pale); color: #8a2424; }
.prod-badge-mr { background: #e3f1f2; color: #0f8c99; }
.prod-inner { max-width: 1160px; margin: 0 auto; display: grid; grid-template-columns: 340px 1fr; gap: 64px; align-items: start; }
.prod-left h2 { font-size: clamp(21px, 2.5vw, 26px); font-weight: 780; letter-spacing: -0.4px; color: var(--text); line-height: 1.25; margin-bottom: 12px; }
.prod-left p { font-size: 15px; color: var(--text-3); line-height: 1.7; margin-bottom: 24px; }
.prod-stats { display: flex; flex-direction: column; gap: 10px; margin-bottom: 28px; padding: 18px; background: #f7f7f6; border: 1.5px solid var(--border); border-radius: var(--radius); }
.prod-stat { font-size: 13px; color: var(--text-2); font-weight: 600; }
.prod-stat span { color: var(--text-3); font-weight: 400; }
.product-variant-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 34px; }
.variant-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 26px; }
.variant-card h3 { font-size: 22px; line-height: 1.2; letter-spacing: -0.4px; margin-bottom: 12px; }
.variant-card p { color: var(--text-3); font-size: 14.5px; line-height: 1.65; margin-bottom: 18px; }
.variant-points { display: grid; gap: 8px; }
.variant-points span { color: var(--text-2); background: var(--surface); border: 1px solid var(--border-2); border-radius: 6px; padding: 10px 12px; font-size: 13px; font-weight: 700; }
.variant-more { display: inline-block; margin-top: 18px; font-size: 13.5px; font-weight: 800; color: var(--indigo); text-decoration: none; }
.variant-more:hover { text-decoration: underline; }
.feat-group { margin-bottom: 32px; }
.feat-group-label { display: block; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 12px; }
.feat-group-label-red { color: #d14343; }
.feat-group-label-indigo { color: var(--indigo); }
.feat-group-label-green { color: var(--green); }
.feat-group-label-amber { color: var(--amber); }
.feat-items { display: flex; flex-direction: column; gap: 10px; }
.feat-item { padding: 16px 18px; background: var(--white); border: 1.5px solid var(--border); border-radius: var(--radius); }
.feat-item-red { border-left: 3px solid #d14343; }
.feat-item-indigo { border-left: 3px solid #a9e4ea; }
.feat-item-green { border-left: 3px solid var(--green); }
.feat-item-amber { border-left: 3px solid #e8a93a; }
.feat-item h4 { font-size: 13.5px; font-weight: 700; color: var(--text); margin-bottom: 4px; line-height: 1.3; }
.feat-item p { font-size: 12.5px; color: var(--text-3); line-height: 1.6; }

/* ===== RISK CARDS ===== */
.risk-layout { display: grid; grid-template-columns: 1fr 1.4fr; gap: 64px; align-items: start; }
.risk-desc h2 { font-size: clamp(24px, 3vw, 34px); font-weight: 700; letter-spacing: -0.6px; line-height: 1.2; margin-bottom: 18px; }
.risk-desc p { font-size: 16px; color: var(--text-3); line-height: 1.7; }
.risk-cards { display: flex; flex-direction: column; gap: 14px; }
.rcard { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px 24px; }
.rcard-red { border-left: 3px solid #d14343; }
.rcard-amber { border-left: 3px solid var(--amber); }
.rcard-indigo { border-left: 3px solid var(--indigo); }
.rcard h4 { font-size: 14.5px; font-weight: 700; margin-bottom: 8px; color: var(--text); }
.rcard p { font-size: 13.5px; color: var(--text-3); line-height: 1.65; }

/* ===== PARTNER CARDS ===== */
.partner-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-top: 8px; }
.partner-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 32px; display: flex; flex-direction: column; gap: 16px; }
.partner-card .pc-logo { width: 48px; height: 48px; border-radius: 12px; background: var(--navy-3); display: flex; align-items: center; justify-content: center; font-size: 22px; }
.partner-card h3 { font-size: 18px; font-weight: 800; color: var(--text); }
.partner-card .pc-type { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: var(--text-4); }
.partner-card p { font-size: 14px; color: var(--text-3); line-height: 1.65; }
.partner-card .pc-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.pc-tag { font-size: 11.5px; font-weight: 600; color: var(--indigo); background: var(--indigo-pale); border: 1px solid #a9e4ea; padding: 3px 10px; border-radius: 20px; }
.partner-cta-note { margin-top: 32px; padding: 24px 28px; background: var(--indigo-pale); border: 1px solid #a9e4ea; border-radius: var(--radius-lg); display: flex; align-items: center; gap: 20px; }
.partner-cta-note p { font-size: 15px; color: #242e38; line-height: 1.6; }
.partner-cta-note a { white-space: nowrap; font-size: 14px; font-weight: 700; color: var(--indigo); text-decoration: underline; }

/* ===== USE CASE SECTIONS ===== */
.usecase-section { padding: 72px 40px; }
.usecase-section.alt { background: var(--surface); }
.case-layout { max-width: 1160px; margin: 0 auto; display: grid; grid-template-columns: minmax(280px, 0.78fr) minmax(0, 1.22fr); gap: 54px; align-items: start; }
.case-sticky { position: sticky; top: 132px; }
.case-num { color: var(--text-4); font-size: 11px; font-weight: 850; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 12px; }
.case-question { border-left: 3px solid var(--indigo); padding-left: 18px; font-size: clamp(21px, 2.3vw, 30px); font-weight: 850; line-height: 1.18; letter-spacing: -0.4px; }
.case-who { margin-top: 16px; color: var(--text-3); font-size: 13px; line-height: 1.55; }
.case-content { display: grid; gap: 14px; }
.approach { color: var(--text-2); font-size: 16px; line-height: 1.7; }
.case-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; }
.case-card h3 { font-size: 14.5px; margin-bottom: 8px; }
.case-card p, .case-card li { color: var(--text-3); font-size: 13.5px; line-height: 1.6; }
.case-card ul { list-style: none; display: grid; gap: 7px; }
.case-card li::before { content: "\2192  "; color: var(--indigo); font-weight: 900; }
.case-proof { background: #0c1116; border: 1px solid #2E3B48; border-radius: var(--radius); overflow: hidden; margin-top: 2px; }
.case-proof img { display: block; width: 100%; aspect-ratio: 16 / 8.2; object-fit: cover; object-position: left top; }
.case-proof span { display: block; color: #ccd1d4; background: #14191F; border-top: 1px solid #2E3B48; padding: 10px 12px; font-size: 12.5px; line-height: 1.45; }
.control-links { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.control-pill { text-decoration: none; color: #242e38; background: var(--indigo-pale); border: 1px solid #a9e4ea; border-radius: 999px; padding: 6px 10px; font-size: 12px; font-weight: 800; }

/* ===== JUMP BAR ===== */
.jump-bar { position: sticky; top: 64px; z-index: 80; background: rgba(247,247,246,0.96); border-bottom: 1px solid var(--border); padding: 14px 40px; }
.jump-inner { max-width: 1160px; margin: 0 auto; display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; }
.jump-inner::-webkit-scrollbar { display: none; }
.jump-link { white-space: nowrap; text-decoration: none; color: var(--text-2); background: var(--white); border: 1px solid var(--border); border-radius: 999px; padding: 8px 12px; font-size: 12.5px; font-weight: 750; }
.jump-link:hover { color: var(--indigo); border-color: #a9e4ea; }

/* ===== CONTACT ===== */
.contact { background: var(--navy); padding: 88px 40px; }
.contact-inner { max-width: 900px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; }
.contact-left h2 { font-size: clamp(24px, 3vw, 36px); font-weight: 700; color: #edeeec; letter-spacing: -0.6px; line-height: 1.2; margin-bottom: 18px; }
.contact-left p { font-size: 16px; color: #587089; line-height: 1.7; margin-bottom: 28px; }
.contact-items { display: flex; flex-direction: column; gap: 16px; }
.contact-item { display: flex; align-items: flex-start; gap: 14px; }
.ci-icon { width: 38px; height: 38px; border-radius: 6px; background: rgba(255,255,255,0.06); border: 1px solid var(--navy-4); display: flex; align-items: center; justify-content: center; font-size: 16px; flex-shrink: 0; }
.ci-body h4 { font-size: 14px; font-weight: 700; color: #edeeec; margin-bottom: 4px; }
.ci-body p { font-size: 13px; color: #587089; line-height: 1.55; }
.contact-form { background: rgba(255,255,255,0.03); border: 1px solid var(--navy-3); border-radius: var(--radius-lg); padding: 32px; display: flex; flex-direction: column; gap: 16px; }
.contact-form h3 { font-size: 17px; font-weight: 700; color: #edeeec; margin-bottom: 4px; }

/* ===== CTA ===== */
.cta-section { background: var(--navy-2); padding: 82px 40px; text-align: center; }
.cta-section h2 { color: #f7f7f6; font-size: clamp(28px, 3.3vw, 42px); font-weight: 700; letter-spacing: -0.8px; line-height: 1.1; margin-bottom: 16px; }
.cta-section p { color: #899eb3; font-size: 16px; line-height: 1.65; max-width: 600px; margin: 0 auto 30px; }
.cta-form { max-width: 620px; margin: 0 auto; display: grid; gap: 14px; text-align: left; background: rgba(255,255,255,0.03); border: 1px solid var(--navy-3); border-radius: var(--radius-lg); padding: 28px; }
.cta-form .form-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; }
.cta-form label { display: block; color: #899eb3; font-size: 12.5px; font-weight: 700; margin-bottom: 6px; }
.cta-form input, .cta-form textarea, .cta-form select { width: 100%; padding: 11px 14px; font: inherit; font-size: 14px; color: #edeeec; background: var(--navy); border: 1px solid var(--navy-3); border-radius: 6px; outline: none; resize: none; }
.cta-form input:focus, .cta-form textarea:focus, .cta-form select:focus { border-color: #a9e4ea; }
.cta-form button { background: #0f8c99; color: #0C1116; border: none; border-radius: 6px; padding: 13px 18px; font-size: 15px; font-weight: 800; font-family: inherit; cursor: pointer; }
.form-success { display: none; padding: 14px; background: #e4f5ec; border: 1px solid #e4f5ec; border-radius: 6px; color: #1f6b49; font-size: 14px; font-weight: 700; text-align: center; }
.form-error { display: none; padding: 14px; background: var(--red-pale); border: 1px solid #fbe9e9; border-radius: 6px; color: #d14343; font-size: 13.5px; font-weight: 700; text-align: center; }
.cta-form select { appearance: none; -webkit-appearance: none; background-image: linear-gradient(45deg, transparent 50%, #899eb3 50%), linear-gradient(135deg, #899eb3 50%, transparent 50%); background-position: calc(100% - 18px) center, calc(100% - 13px) center; background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }

/* ===== COMPARISON PANELS (before/after) ===== */
.comparison-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 34px; }
.comparison-panel { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px; }
.comparison-panel h3 { font-size: 16px; margin-bottom: 16px; }
.comparison-panel ul { list-style: none; display: grid; gap: 10px; }
.comparison-panel li { color: var(--text-2); font-size: 14px; line-height: 1.5; display: grid; grid-template-columns: 18px 1fr; gap: 8px; }
.comparison-panel li::before { content: ""; width: 8px; height: 8px; border-radius: 20px; margin-top: 6px; background: var(--text-4); }
.comparison-panel.after { border-color: #a9e4ea; background: #f1f8f8; }
.comparison-panel.after li::before { background: var(--cortega-green); }

/* ===== PROOF METRICS ===== */
.proof-metrics { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 34px; }
.proof-metric { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; }
.proof-metric b { display: block; font-size: 24px; margin-bottom: 8px; color: var(--text); }
.proof-metric span { display: block; color: var(--text-3); font-size: 13px; line-height: 1.45; }
.proof-metric.cortega-metric { background: #e4f5ec; border-color: #e4f5ec; }
.proof-metric.cortega-metric b { color: #1F6B49; }
.proof-metric.competitor-metric { background: #fbf1dc; border-color: #e8a93a; }
.proof-metric.competitor-metric b { color: #8a2424; }
.factoid-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 32px; }
.factoid-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 22px 22px 20px; text-align: left; }
.factoid-mark { width: 30px; height: 30px; border-radius: 999px; background: var(--indigo-pale); color: var(--indigo); font-weight: 850; font-size: 15px; display: flex; align-items: center; justify-content: center; margin-bottom: 12px; }
.factoid-card p { font-size: 14px; color: var(--text-2); line-height: 1.55; margin-bottom: 10px; }
.factoid-card p strong { color: var(--text); }
.factoid-source { font-size: 11.5px; color: var(--text-4); }
.stat-callout-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; max-width: 1080px; margin: 32px auto 8px; text-align: left; }
.stat-card { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 26px 24px; }
.stat-num { font-size: 40px; font-weight: 850; line-height: 1; margin-bottom: 12px; }
.stat-num.indigo2 { color: var(--indigo-2); }
.stat-num.red { color: var(--red); }
.stat-num.indigo { color: var(--indigo); }
.stat-card p { font-size: 14px; color: var(--text-2); line-height: 1.55; margin-bottom: 12px; }
.stat-card p strong { color: var(--text); }
.stat-source { font-size: 11.5px; color: var(--text-4); text-transform: uppercase; letter-spacing: 0.5px; }
.proof-chips { font-size: 12.5px; color: var(--text-3); }
.performance-intro { max-width: 760px; display: grid; gap: 16px; }
.performance-intro p, .article-body p { color: var(--text-2); font-size: 16px; line-height: 1.75; }
.article-body { max-width: 780px; display: grid; gap: 16px; }
.performance-table .cmp { min-width: 840px; }

/* ===== BELIEFS (about page) ===== */
.beliefs { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; margin-top: 48px; }
.belief { border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 28px; }
.belief-num { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: var(--text-4); margin-bottom: 10px; }
.belief h3 { font-size: 16px; font-weight: 700; color: var(--text); margin-bottom: 10px; line-height: 1.3; }
.belief p { font-size: 14px; color: var(--text-3); line-height: 1.65; }

.body-text { font-size: 17px; color: var(--text-2); line-height: 1.75; margin-bottom: 20px; }
.body-text:last-child { margin-bottom: 0; }

/* ===== TRUST ROW ===== */
.trust-row { display: flex; gap: 24px; justify-content: center; flex-wrap: wrap; }
.trust-item { font-size: 12.5px; font-weight: 600; color: #485C70; display: flex; align-items: center; gap: 7px; }
.trust-item::before { content: ''; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #0f8c99; }

/* ===== TRAFFIC MODEL ===== */
.traffic-model { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px; margin-top: 34px; }
.model-column { background: var(--white); border: 1px solid var(--border); border-radius: var(--radius); padding: 18px; }
.model-column h3 { font-size: 15px; margin-bottom: 14px; }
.model-list { display: grid; gap: 8px; }
.model-item { color: var(--text-2); background: var(--surface); border: 1px solid var(--border-2); border-radius: 6px; padding: 10px; font-size: 13px; font-weight: 650; }

/* ===== PROD SECTION ===== */
.prod-section { padding: 80px 40px; }
.prod-section-alt { background: #f7f7f6; }
.prod-divider { display: flex; align-items: center; gap: 16px; padding: 32px 40px; background: var(--white); }
.prod-divider::before, .prod-divider::after { content: ''; flex: 1; height: 1px; background: var(--border-2); }
.prod-divider span { font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: var(--text-4); white-space: nowrap; }

/* ===== FOOTER ===== */
footer { background: var(--navy-2); padding: 48px 40px 32px; }
.footer-inner { max-width: 1160px; margin: 0 auto; }
.footer-top { display: grid; grid-template-columns: 240px 1fr; gap: 54px; padding-bottom: 36px; border-bottom: 1px solid var(--navy-3); }
.footer-brand .logo { display: flex; align-items: center; gap: 9px; font-size: 20px; font-weight: 800; color: #fff; }
.footer-brand p { color: #587089; font-size: 13px; line-height: 1.6; margin-top: 10px; }
.footer-nvidia-badge { display: block; margin-top: 16px; border-radius: 6px; }
.footer-links { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.footer-col h5 { color: #587089; font-size: 11px; text-transform: uppercase; letter-spacing: 0.9px; margin-bottom: 13px; }
.footer-col a { display: block; color: #899eb3; text-decoration: none; font-size: 13px; margin-bottom: 9px; }
.footer-col a:hover { color: #f7f7f6; }
.footer-bottom { padding-top: 22px; display: flex; justify-content: space-between; gap: 14px; flex-wrap: wrap; align-items: center; }
.footer-bottom p { color: #587089; font-size: 12.5px; }
.footer-nvidia-attribution { font-size: 10.5px; color: #485c70; flex-basis: 100%; }
.footer-pills { display: flex; gap: 8px; flex-wrap: wrap; }
.footer-pill { color: #899eb3; border: 1px solid var(--navy-4); background: var(--navy-3); border-radius: 999px; padding: 4px 10px; font-size: 11px; font-weight: 700; }
.footer-social { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 16px; }
.footer-pill-link { text-decoration: none; transition: color 0.15s, border-color 0.15s; }
.footer-pill-link:hover { color: #f7f7f6; border-color: #3FC7D4; }

/* ===== REVEAL ANIMATIONS ===== */
[data-reveal] { opacity: 0; transform: translateY(16px); transition: opacity 0.55s cubic-bezier(0.22,1,0.36,1), transform 0.55s cubic-bezier(0.22,1,0.36,1); }
[data-reveal].revealed { opacity: 1; transform: translateY(0); }
[data-reveal-list] > [data-reveal]:nth-child(2) { transition-delay: 0.08s; }
[data-reveal-list] > [data-reveal]:nth-child(3) { transition-delay: 0.16s; }
[data-reveal-list] > [data-reveal]:nth-child(4) { transition-delay: 0.24s; }
@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ===== PRODUCT SHOWCASE ===== */
.product-showcase { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: 18px; margin-top: 36px; }
.shot-stack { display: grid; gap: 18px; }
.shot-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 36px; }
.screenshot-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 30px; }
.screenshot-strip .product-shot img { aspect-ratio: 16 / 9; object-fit: cover; object-position: left top; }

/* ===== RESPONSIVE ===== */
@media (max-width: 1450px) {
  .nav { padding: 10px 20px; flex-wrap: wrap; gap: 10px; }
  .nav-logo { margin-right: 0; }
  .nav-links { display: none; order: 3; flex: 0 0 100%; flex-direction: column; align-items: stretch; padding-top: 10px; border-top: 1px solid rgba(255,255,255,0.08); }
  .nav.nav-open .nav-links { display: flex; }
  .nav-link { padding: 10px 0; border-radius: 0; min-height: 44px; display: flex; align-items: center; }
  .nav-item-dropdown { width: 100%; }
  .nav-dropdown-toggle { padding: 10px 0; width: 100%; min-height: 44px; justify-content: flex-start; gap: 8px; }
  .nav-dropdown-menu {
    position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none;
    background: transparent; border: none; padding: 0 0 6px 14px; margin: 0;
    max-height: 0; overflow: hidden; transition: max-height 0.2s ease;
  }
  .nav-item-dropdown.open .nav-dropdown-menu { max-height: min(65vh, 600px); overflow-y: auto; }
  .nav-dropdown-link { padding: 8px 0; min-height: 44px; display: flex; align-items: center; }
  .nav-menu-toggle { display: inline-flex; margin-left: auto; width: 44px; height: 44px; }
  .nav-cta {
    margin-left: 0; margin-top: 14px; padding-top: 14px; flex-direction: column; align-items: stretch;
    gap: 10px; border-top: 1px solid rgba(255,255,255,0.08);
    padding-bottom: env(safe-area-inset-bottom);
  }
  .nav-cta .nav-btn { display: flex; align-items: center; justify-content: center; min-height: 48px; font-size: 14px; }
}

@media (max-width: 980px) {
  .hero, .band, .page-hero, .usecase-section, .cta-section, .detail, .prod-section { padding-left: 20px; padding-right: 20px; }
  .hero-grid, .split, .case-layout, .detail-layout, .detail-layout.flipped, .risk-layout, .contact-inner, .prod-inner { grid-template-columns: 1fr; gap: 34px; }
  .detail-layout.flipped .detail-desc, .detail-layout.flipped .detail-cards { order: initial; }
  .context-shot, .context-shot.reverse { grid-template-columns: 1fr; }
  .context-shot.reverse .context-copy, .context-shot.reverse .product-shot { order: initial; }
  .arch-graph { min-height: auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 14px; }
  .arch-lines { display: none; }
  .graph-node { position: static; width: auto; min-height: 72px; }
  .graph-node.management { width: auto; grid-column: 1 / -1; }
  .graph-legend { position: static; grid-column: 1 / -1; }
  .usecase-grid, .plane-grid, .cards-3, .industry-grid, .partner-grid, .incident-grid, .stat-callout-grid, .scenario-grid { grid-template-columns: 1fr 1fr; }
  .comparison-grid, .proof-metrics, .edge-core, .capability-grid, .product-showcase, .screenshot-strip, .product-variant-grid { grid-template-columns: 1fr; }
  .shadow-callout { flex-direction: column; align-items: flex-start; }
  .case-sticky { position: static; }
  .journey-step { grid-template-columns: 56px 1fr; gap: 18px; padding: 32px 0; }
  .jump-bar { top: 64px; padding-left: 20px; padding-right: 20px; }
  .footer-top { grid-template-columns: 1fr; gap: 28px; }
  .footer-links { grid-template-columns: repeat(2, 1fr); }
  .prod-switcher { padding: 0 20px; overflow-x: auto; }
  .prod-tab { padding: 14px 18px; white-space: nowrap; }
}

@media (max-width: 640px) {
  .hero { padding-top: 32px; }
  .hero h1, .page-hero h1 { letter-spacing: -0.4px; }
  .btn { width: 100%; }
  .hero-ctas { flex-direction: column; }
  .usecase-grid, .plane-grid, .capability-grid, .cards-3, .industry-grid, .proof-metrics, .partner-grid, .incident-grid, .factoid-grid, .stat-callout-grid, .scenario-grid { grid-template-columns: 1fr; }
  .flow-body { grid-template-columns: 1fr; row-gap: 16px; min-height: auto; padding: 18px 14px; }
  .flow-lines { display: none; }
  .architecture-panel { padding: 18px; }
  .arch-graph { grid-template-columns: 1fr; }
  .case-proof img { aspect-ratio: 16 / 10; }
  .footer-links { grid-template-columns: 1fr; }
  .journey-step { grid-template-columns: 1fr; gap: 16px; }
  .step-connector { display: none; }
}

.arch-video {
  width: 100%; border-radius: var(--radius-lg); margin-top: 24px;
  border: 1px solid var(--border); box-shadow: var(--shadow);
}


/* ================= SITE RESTYLE (v2) - homepage + rolled to all pages ================= */
:root{
    --x-navy:#0c1116;--x-ink:#14191f;--x-t3:#587089;
    --x-teal:#0f8c99;--x-teal-2:#3FC7D4;--x-line:#e1e3e3;--x-paper:#f7f7f6;
    --x-violet:#3fc7d4;--x-amber:#b7700f;--x-green:#1f6b49;--x-red:#d14343;
  }
  .x-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
  .x-wrap{max-width:1160px;margin:0 auto;padding:0 32px}
  .x-hero-dia svg,.x-dia svg,.x-rviz svg{display:block;width:100%;height:auto;overflow:visible}
  .x-btn{font-size:13.5px;font-weight:700;padding:11px 18px;border-radius:6px;text-decoration:none;display:inline-flex;align-items:center;border:1px solid transparent;line-height:1}
  .x-btn-p{background:var(--x-teal-2);color:#0c1116}
  .x-btn-d{background:var(--x-teal);color: #0C1116}
  .x-btn-s{color:#ccd1d4;border:1px solid rgba(255,255,255,.18)}
  .x-btn-o{color:var(--x-ink);border:1px solid var(--x-line)}

  /* ---------- HERO ---------- */
  .x-hero{background:var(--x-navy);color:#fff;padding:44px 0 50px}
  .x-hero .x-wrap{display:grid;grid-template-columns:0.85fr 1.15fr;gap:44px;align-items:center}
  .x-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}
  .x-hero .x-eyebrow{color:var(--x-teal-2)}
  .x-hero h1{font-size:clamp(34px,4.4vw,56px);font-weight:800;letter-spacing:-1px;line-height:1.08;margin:16px 0 14px}
  .x-hero .x-one-line{font-size:15px;color:#a2b2c3;line-height:1.55;max-width:48ch}
  .x-cta{display:flex;gap:12px;margin-top:26px;flex-wrap:wrap}
  .x-hero-dia{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:22px}
  .x-hero-dia .x-cap{font-size:10.5px;letter-spacing:1.5px;color:#6d87a2;text-transform:uppercase;margin-bottom:14px;display:flex;justify-content:space-between}
  .x-hero-dia .x-live{color:#5bc48c}

  /* ---------- SECTION ---------- */
  .x-sec{padding:50px 0 52px}
  .x-sec.x-alt{background:#fff;border-top:1px solid #edeeec;border-bottom:1px solid #edeeec}
  .x-kicker{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--x-teal)}
  .x-sec h2{font-size:clamp(23px,2.7vw,31px);font-weight:700;letter-spacing:-.6px;margin-top:12px;max-width:34ch}
  .x-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}
  @media(max-width:960px){.x-cards{grid-template-columns:repeat(2,1fr)}.x-hero .x-wrap{grid-template-columns:1fr}.x-deploy{grid-template-columns:1fr!important}}
  @media(max-width:560px){.x-cards{grid-template-columns:1fr}}
  .x-card{border:1px solid #ccd1d4;border-radius:12px;background:#fff;padding:18px 16px 16px;display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(20,25,31,.04),0 10px 26px -14px rgba(20,25,31,.10)}
  .x-card .x-lbl{font-size:12.5px;font-weight:800}
  .x-card .x-lbl .x-n{color:var(--x-a,var(--x-teal));margin-right:7px}
  .x-card .x-dia{margin:14px 0 12px;flex:1;display:flex;align-items:center;justify-content:center}
  .x-card .x-line{font-size:12px;color:var(--x-t3);line-height:1.5}
  .x-shot{margin-top:30px;border:1px solid var(--x-line);border-radius:12px;overflow:hidden;background:#14191f;box-shadow:0 30px 60px -30px rgba(12,17,22,.35)}
  .x-shot .x-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#14191f;border-bottom:1px solid #223}
  .x-shot .x-bar i{width:9px;height:9px;border-radius:50%;background:#3A4A5A;display:block}
  .x-shot .x-bar span{margin-left:8px;font-size:11px;color:#6d87a2;font-weight:600}
  .x-shot img{display:block;width:100%}
  .x-shot-cap{font-size:12px;color:var(--x-t3);margin-top:12px}
  .x-s{stroke:#ccd1d4;fill:none}.x-box{fill:#fff;stroke:#e1e3e3}
  .x-mlbl{font-size:8.5px;fill:#899eb3}.x-ok{fill:#1f6b49}.x-no{fill:#d14343}

  /* ---------- COMPARISON TABLE ---------- */
  .x-cmp{width:100%;border-collapse:collapse;margin-top:36px;font-size:13px;border:1px solid var(--x-line);border-radius:12px;overflow:hidden}
  .x-cmp th,.x-cmp td{padding:13px 14px;text-align:center;border-bottom:1px solid #edeeec}
  .x-cmp thead th{font-weight:800;color:var(--x-ink);vertical-align:bottom;background:#f7f7f6}
  .x-cmp thead th small{display:block;font-weight:600;color:#899eb3;font-size:10.5px;margin-top:3px}
  .x-cmp td:first-child,.x-cmp th:first-child{text-align:left;font-weight:700}
  .x-cmp .x-us{background:#f1f8f8}
  .x-cmp thead .x-us{color:#0f8c99;border-bottom:2px solid var(--x-teal)}
  .x-cmp tbody tr:last-child td{border-bottom:none}
  .x-g{font-weight:900;font-size:13px}
  .x-g.x-y{color:#1f6b49}.x-g.x-n{color:#ccd1d4}.x-g.x-m{color:#b7700f}
  .x-cmp-note{font-size:11.5px;color:#899eb3;margin-top:16px;max-width:70ch;line-height:1.5}
  .x-paths{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  @media(max-width:760px){.x-paths{grid-template-columns:1fr}}
  .x-path{border:1px solid var(--x-line);border-radius:12px;padding:16px}
  .x-path.x-good{border-color:#a9e4ea;background:#f1f8f8}
  .x-path figcaption{font-size:10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#899eb3;margin-bottom:8px}
  .x-path.x-good figcaption{color:var(--x-teal)}

  /* ---------- WHY: animated card stack ---------- */
  .x-stack{position:relative;margin-top:28px;min-height:230px}
  .x-rcard{position:absolute;inset:0;background:#fff;border:1px solid var(--x-line);border-radius:12px;padding:22px 26px;
    box-shadow:0 20px 50px -24px rgba(12,17,22,.18);
    transition:transform .55s cubic-bezier(.4,0,.2,1),opacity .45s ease;
    display:grid;grid-template-columns:0.8fr 1.2fr;gap:28px;align-items:center;overflow:hidden}
  @media(max-width:760px){.x-rcard{grid-template-columns:1fr;gap:14px;padding:18px}.x-stack{min-height:400px}}
  .x-rcard[data-pos="0"]{transform:translateY(0) scale(1);opacity:1;z-index:3}
  .x-rcard[data-pos="1"]{transform:translateY(14px) scale(.965);opacity:.5;z-index:2}
  .x-rcard[data-pos="2"]{transform:translateY(28px) scale(.93);opacity:.22;z-index:1}
  .x-rcard[data-pos="out"]{transform:translateY(-40px) scale(1);opacity:0;z-index:4}
  .x-rcard .x-rnum{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--x-teal);text-transform:uppercase}
  .x-rcard h3{font-size:19px;font-weight:800;letter-spacing:-.4px;margin:8px 0 8px}
  .x-rcard p{font-size:13px;color:var(--x-t3);line-height:1.6}
  .x-rcard .x-rviz{background:#f7f7f6;border:1px solid #edeeec;border-radius:12px;padding:14px;max-height:186px;display:flex;align-items:center;justify-content:center;overflow:hidden}
  .x-rcard .x-rviz svg{max-height:158px;width:auto;max-width:100%}
  .x-rcard .x-rviz.x-rviz-2col{display:grid}
  .x-rcard .x-rviz.x-rviz-2col svg{max-height:120px}
  .x-rviz-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .x-dots{display:flex;gap:8px;margin-top:16px;align-items:center}
  .x-dots button{width:26px;height:4px;border-radius:2px;border:0;background:#e1e3e3;cursor:pointer;padding:0}
  .x-dots button[aria-current="true"]{background:var(--x-teal)}

  /* ---------- GET STARTED ---------- */
  .x-get{background:var(--x-navy);color:#fff;padding:64px 0}
  .x-get .x-eyebrow{color:var(--x-teal-2)}
  .x-get h2{color:#fff;font-size:clamp(23px,2.7vw,31px);font-weight:700;letter-spacing:-.6px;margin-top:12px}
  .x-deploy{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:34px}
  .x-dep{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:22px}
  .x-dep h3{font-size:15px;font-weight:800;color:#edeeec}
  .x-dep p{font-size:12.5px;color:#899eb3;line-height:1.55;margin:7px 0 16px}
  .x-get .x-foot{margin-top:24px;font-size:12.5px;color:#899eb3}
  .x-get .x-foot a{color:var(--x-teal-2)}

  /* ---------- v2 shared: stat row, prose, page-hero ---------- */
  .x-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:40px}
  @media(max-width:760px){.x-stats{grid-template-columns:repeat(2,1fr)}}
  .x-stat{border:1px solid var(--x-line);border-radius:12px;background:#fff;padding:20px 18px}
  .x-stat b{display:block;font-size:30px;font-weight:800;letter-spacing:-1px;color:var(--x-ink)}
  .x-stat span{display:block;margin-top:8px;font-size:12px;color:var(--x-t3);line-height:1.5}
  .x-sec.x-dark{background:var(--x-navy);color:#fff}
  .x-sec.x-dark h2{color:#fff}.x-sec.x-dark .x-kicker{color:var(--x-teal-2)}
  .x-sec.x-dark .x-card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.10)}
  .x-sec.x-dark .x-card .x-line{color:#a2b2c3}
  .x-cardlink{text-decoration:none;color:inherit;display:flex;flex-direction:column}
  .x-cardlink:hover{border-color:var(--x-teal-2)}
  .x-more{margin-top:12px;font-size:12px;font-weight:700;color:var(--x-teal)}
  .x-prose{max-width:680px;margin-top:8px}
  .x-prose p{font-size:15px;line-height:1.7;color:var(--x-t3);margin-top:16px}
  .x-prose h2{font-size:22px;font-weight:700;letter-spacing:-.4px;margin-top:36px}
  .x-prose h3{font-size:17px;font-weight:800;margin-top:26px}
  .x-prose ul{margin:14px 0 0 20px}.x-prose li{font-size:14px;line-height:1.6;color:var(--x-t3);margin-top:7px}

  /* ---------- article summary box: quick extraction for readers and agents ---------- */
  .x-tldr-sec{padding:0 0 8px}
  .x-tldr{max-width:680px;margin:0 auto;padding:26px 28px;border:1px solid var(--d-bd-2);border-radius:12px;background:var(--d-panel)}
  .x-tldr-label{font-size:10.5px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--x-teal-2);margin:0}
  .x-tldr-label+p{font-size:15px;line-height:1.6;color:var(--x-t3);margin-top:8px}
  .x-tldr-label.x-tldr-label-2{margin-top:20px}
  .x-tldr ul{margin:10px 0 0 18px}
  .x-tldr li{font-size:14px;line-height:1.55;color:var(--x-t3);margin-top:7px}

  /* ---------- v2: GitLab-style end CTA band (replaces embedded forms) ---------- */
  .x-endcta{background:var(--x-navy);color:#fff;padding:52px 0}
  .x-endcta .x-wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
  .x-endcta h2{font-size:22px;font-weight:700;letter-spacing:-.4px;color:#fff;max-width:22ch}
  .x-endcta .x-actions{display:flex;gap:10px;flex-wrap:wrap}
  .x-endcta .x-btn-s{color:#ccd1d4;border-color:rgba(255,255,255,.22)}

  /* ---------- v2: single symmetric closing block (replaces x-get + x-endcta) ---------- */
  .x-close{background:var(--x-navy);color:#fff;padding:52px 0}
  .x-close .x-eyebrow{color:var(--x-teal-2)}
  .x-close h2{color:#fff;font-size:clamp(22px,2.6vw,29px);font-weight:700;letter-spacing:-.5px;margin-top:10px}
  .x-close-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}
  @media(max-width:700px){.x-close-grid{grid-template-columns:1fr}.x-close-box .x-actions{flex-direction:column}}
  .x-close-box{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:24px;display:flex;flex-direction:column}
  .x-close-box h3{font-size:15px;font-weight:800;color:#edeeec;margin-bottom:6px}
  .x-close-box p{font-size:12.5px;color:#899eb3;line-height:1.55;margin-bottom:16px;flex:1}
  .x-close-box .x-actions{display:flex;gap:10px}
  .x-close-box .x-btn{flex:1;min-width:0;justify-content:center;padding:12px 14px}
  .x-close-box .x-btn-s{color:#ccd1d4;border-color:rgba(255,255,255,.22)}

  /* ---------- v2: 3-up screenshot row ---------- */
  .x-shots3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
  @media(max-width:820px){.x-shots3{grid-template-columns:1fr}}
  .x-shots3 .x-shot{margin-top:0}
  .x-shots3 .x-shot img{height:186px;object-fit:cover;object-position:left top}

  /* ---------- v2: 2x2 screenshot grid (bigger) ---------- */
  .x-shots4{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}
  @media(max-width:760px){.x-shots4{grid-template-columns:1fr}}
  .x-shots4 .x-shot{margin-top:0}
  .x-shots4 .x-shot img{height:270px;object-fit:cover;object-position:left top}

  /* ---------- v2: animated product showcase (tabbed, auto-rotating) ---------- */
  .x-showcase{margin-top:34px}
  .x-showcase-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
  .x-showcase-tabs button{font-size:13px;font-weight:800;padding:9px 18px;border-radius:999px;border:1px solid var(--x-line);background:#fff;color:var(--x-t3);cursor:pointer;transition:.15s}
  .x-showcase-tabs button[aria-current="true"]{background:var(--x-navy);color:#fff;border-color:var(--x-navy)}
  .x-showcase-frame{position:relative;border:1px solid #242E38;border-radius:12px;overflow:hidden;background:#14191f;box-shadow:0 30px 60px -30px rgba(12,17,22,.4)}
  .x-showcase-frame .x-bar{display:flex;align-items:center;gap:7px;padding:14px 18px;background:#14191f;border-bottom:1px solid #223;position:relative;z-index:2}
  .x-showcase-frame .x-bar i{width:9px;height:9px;border-radius:50%;background:#3A4A5A;display:block}
  .x-showcase-frame .x-bar span{margin-left:10px;font-size:13px;color:#edeeec;font-weight:800;letter-spacing:.2px}
  .x-showcase-stage{position:relative;height:520px}
  @media(max-width:760px){.x-showcase-stage{height:320px}.x-showcase-tabs button{font-size:12px;padding:8px 14px}}
  .x-showcase-slide{position:absolute;inset:0;opacity:0;transition:opacity .55s ease}
  .x-showcase-slide[data-on="1"]{opacity:1}
  .x-showcase-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:left top}
  .x-showcase[data-fit="contain"] .x-showcase-slide img{object-fit:contain;background:#f7f7f6}
  /* Wide desktop console screenshots were cropped to ~25% of their width
     under object-fit:cover on a narrow stage. Show the whole screenshot
     instead, letterboxed, on every page that uses this component — this
     must come after the two rules above to win the cascade at this width. */
  @media(max-width:760px){.x-showcase-slide img{object-fit:contain!important;object-position:center;background:var(--navy-2)}}
  .x-showcase[data-fit="contain"] .x-showcase-stage{background:#f7f7f6}
  .x-showcase-prog{display:flex;gap:6px;margin-top:12px}
  .x-showcase-prog i{height:3px;flex:1;border-radius:2px;background:var(--x-line)}
  .x-showcase-prog i[data-on="1"]{background:var(--x-teal)}
  .x-showcase{--x-a:var(--x-teal)}

  /* ---------- v2: product-page bits ---------- */
  .x-hero-img{background:#fff;border:1px solid var(--x-line);border-radius:12px;padding:16px;box-shadow:0 24px 50px -24px rgba(12,17,22,.3)}
  .x-hero.x-hero-wide .x-wrap{grid-template-columns:1fr 1fr;gap:48px}
  .x-hero.x-hero-wide .x-hero-img{padding:6px;border-color:#edeeec}
  .x-hero.x-hero-wide h1{max-width:24ch}
  .x-hero.x-hero-wide .x-one-line{max-width:52ch;font-size:16px}
  .x-hero-img img{display:block;width:100%;height:auto}
  .x-hero-img.x-dark{background:#14191f;border-color:#242E38;padding:0;overflow:hidden}
  .x-hero-img .x-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;background:#14191f;border-bottom:1px solid #223}
  .x-hero-img .x-bar i{width:8px;height:8px;border-radius:50%;background:#3A4A5A;display:block}
  .x-hero-img .x-bar span{margin-left:8px;font-size:12px;color:#edeeec;font-weight:800}
  .x-shot-big{margin-top:34px;border:1px solid #242E38;border-radius:12px;overflow:hidden;background:#14191f;box-shadow:0 30px 60px -30px rgba(12,17,22,.4)}
  .x-shot-big .x-bar{display:flex;align-items:center;gap:7px;padding:14px 18px;background:#14191f;border-bottom:1px solid #223}
  .x-shot-big .x-bar i{width:9px;height:9px;border-radius:50%;background:#3A4A5A;display:block}
  .x-shot-big .x-bar span{margin-left:10px;font-size:13px;color:#edeeec;font-weight:800}
  .x-shot-big img{display:block;width:100%;max-height:520px;object-fit:cover;object-position:left top}

  /* ---------- v2: text points (no cramped diagram) ---------- */
  .x-points{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:36px}
  @media(max-width:900px){.x-points{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.x-points{grid-template-columns:1fr}}
  .x-point{border:1px solid #ccd1d4;border-radius:12px;background:#fff;padding:20px 18px;box-shadow:0 1px 2px rgba(20,25,31,.04),0 10px 26px -14px rgba(20,25,31,.10)}
  .x-point .x-n{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:800;color:var(--x-a,var(--x-teal))}
  .x-point h3{font-size:15px;font-weight:800;letter-spacing:-.2px;margin:8px 0 6px}
  .x-point p{font-size:12.5px;color:var(--x-t3);line-height:1.55}
  .x-point p.x-proof{margin-top:10px;padding-top:10px;border-top:1px solid var(--x-line);color:var(--x-teal-2);font-weight:600}

  /* ---------- v2: pricing ---------- */
  .x-hero.x-hero-solo .x-wrap{grid-template-columns:minmax(0,720px)}
  .x-hero.x-hero-solo .x-one-line{max-width:56ch;font-size:16px}
  .x-cmp tfoot .x-btn{white-space:nowrap;padding:10px 14px;font-size:12.5px}
  .x-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px}
  @media(max-width:820px){.x-plans{grid-template-columns:1fr}}
  .x-plan{border:1px solid #ccd1d4;border-radius:12px;background:#fff;padding:24px 22px;display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(20,25,31,.04),0 12px 30px -16px rgba(20,25,31,.12)}
  .x-plan[data-featured]{border-color:var(--x-teal);box-shadow:0 1px 2px rgba(20,25,31,.04),0 18px 40px -18px rgba(15,140,153,.35)}
  .x-plan .x-price{font-size:30px;font-weight:800;letter-spacing:-1px;color:var(--x-ink)}
  .x-plan h3{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--x-teal);margin:4px 0 14px}
  .x-plan ul{list-style:none;margin:0 0 20px;padding:0;flex:1}
  .x-plan li{font-size:12.5px;color:var(--x-t3);line-height:1.5;padding:7px 0 7px 20px;position:relative;border-top:1px solid #edeeec}
  .x-plan li:first-child{border-top:0}
  .x-plan li::before{content:"";position:absolute;left:2px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--x-teal)}
  .x-plan .x-btn{justify-content:center}
  .x-cmp .x-cat td{background:#f7f7f6;font-size:10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#587089;text-align:left}
  .x-cmp td:first-child small{display:block;font-weight:500;font-size:11px;color:#899eb3;margin-top:3px;line-height:1.5}
  .x-cmp .x-soon{display:inline-block;font-size:9.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;color:#b7700f;background:#fbf1dc;border:1px solid #e8a93a;border-radius:999px;padding:3px 8px}
  .x-cmp tfoot td{padding:20px 14px;border-bottom:0}

  /* ---------- v2: industry today/roadmap ---------- */
  .x-road{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:38px}
  @media(max-width:760px){.x-road{grid-template-columns:1fr}}
  .x-road-col{border:1px solid var(--x-line);border-radius:12px;padding:22px 20px;background:#fff}
  .x-road-col.x-now{border-color:#a9e4ea;background:#f1f8f8}
  .x-road-col h3{font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#587089;margin-bottom:6px}
  .x-road-col.x-now h3{color:var(--x-teal)}
  .x-road-col ul{list-style:none;margin:0;padding:0}
  .x-road-col li{font-size:12.5px;color:var(--x-t3);line-height:1.5;padding:9px 0 9px 22px;position:relative;border-top:1px solid #edeeec}
  .x-road-col li:first-child{border-top:0}
  .x-road-col li::before{content:"";position:absolute;left:2px;top:14px;width:7px;height:7px;border-radius:50%;background:#ccd1d4}
  .x-road-col.x-now li::before{background:var(--x-teal)}

  /* ---------- v2: old-way vs Cortega compare ---------- */
  .x-paths{margin-top:38px}
  .x-path h3{font-size:14px;font-weight:800;margin:2px 0 10px}
  .x-path ul{list-style:none;margin:0;padding:0}
  .x-path li{font-size:12.5px;color:var(--x-t3);line-height:1.5;padding:8px 0 8px 20px;position:relative;border-top:1px solid #edeeec}
  .x-path li:first-child{border-top:0}
  .x-path li::before{content:"\2013";position:absolute;left:4px;color:#ccd1d4;font-weight:800}
  .x-path.x-good li::before{content:"\2713";color:var(--x-teal);font-size:11px}

  /* ---------- v2: text comparison table ---------- */
  .x-cmp-text th,.x-cmp-text td{text-align:left;vertical-align:top;line-height:1.5;font-size:12.5px}
  .x-cmp-text td:first-child{white-space:nowrap}
  .x-cmp-text td.x-us{font-weight:500}

  /* ---------- v2: checklist page bits ---------- */
  .x-point .x-src{display:block;margin-top:10px;font-size:10.5px;color:#899eb3;font-weight:600}
  .x-checklist-gate{background:var(--x-navy);border-radius:12px;padding:28px;margin:34px auto 0;max-width:460px}
  .x-checklist-gate label{color:#ccd1d4}
  .x-checklist-gate input{background:#fff}

  /* ---------- v2: team ---------- */
  .x-team{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:38px}
  @media(max-width:700px){.x-team{grid-template-columns:1fr}}
  .x-team-card{border:1px solid #ccd1d4;border-radius:12px;background:#fff;padding:24px 22px;box-shadow:0 1px 2px rgba(20,25,31,.04),0 10px 26px -14px rgba(20,25,31,.10)}
  .x-team-card img{width:64px;height:64px;border-radius:50%;object-fit:cover;display:block}
  .x-team-card h3{font-size:16px;font-weight:800;margin:14px 0 2px}
  .x-team-card .x-role{font-size:12px;font-weight:700;color:var(--x-teal);text-transform:uppercase;letter-spacing:.5px}
  .x-team-card p{font-size:12.5px;color:var(--x-t3);line-height:1.6;margin:12px 0 12px}
  .x-team-card a{font-size:12px;font-weight:700;color:var(--x-teal);text-decoration:none}

  /* ---------- v2: glossary ---------- */
  .x-gloss{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;margin-top:34px}
  @media(max-width:760px){.x-gloss{grid-template-columns:1fr}}
  .x-gloss div{border-top:1px solid #edeeec;padding-top:14px}
  .x-gloss dt{font-size:14px;font-weight:800;color:var(--x-ink);margin-bottom:5px}
  .x-gloss dd{margin:0;font-size:12.5px;color:var(--x-t3);line-height:1.6}

  /* ---------- v2: blog ---------- */
  .x-postgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
  @media(max-width:940px){.x-postgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:640px){.x-postgrid{grid-template-columns:1fr}}
  .x-postlist{display:flex;flex-direction:column;gap:2px;margin-top:34px}
  .x-postcard{display:flex;flex-direction:column;min-height:100%;text-decoration:none;color:inherit;border:1px solid #e1e3e3;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 1px 2px rgba(20,25,31,.04),0 12px 30px -18px rgba(12,17,22,.20);transition:transform .15s,border-color .15s,box-shadow .15s}
  .x-postlist .x-postcard{display:block;border-radius:0;border:1px solid transparent;border-bottom:1px solid #edeeec;box-shadow:none;padding:22px 4px}
  .x-postlist .x-postcard:first-child{border-top:1px solid #edeeec}
  .x-postcard:hover{transform:translateY(-2px);border-color:#a9e4ea;box-shadow:0 18px 42px -22px rgba(12,17,22,.32)}
  .x-postlist .x-postcard:hover{transform:none;background:#f7f7f6;box-shadow:none}
  .x-postthumb{aspect-ratio:16/10;background:#14191f;border-bottom:1px solid #edeeec;overflow:hidden}
  .x-postthumb img{display:block;width:100%;height:100%;object-fit:cover;object-position:left top}
  .x-postthumb img[src$=".svg"]{object-fit:contain;padding:18px;background:#0c1116}
  .x-postcard .x-pm{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:11.5px;color:#899eb3;font-weight:600}
  .x-postcard .x-tag{font-size:10px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--x-teal);background:#f1f8f8;border-radius:999px;padding:3px 9px}
  .x-postcard .x-pm,.x-postcard h3,.x-postcard p,.x-postcard .x-more{margin-left:18px;margin-right:18px}
  .x-postlist .x-postcard .x-pm,.x-postlist .x-postcard h3,.x-postlist .x-postcard p,.x-postlist .x-postcard .x-more{margin-left:0;margin-right:0}
  .x-postcard .x-pm{margin-top:18px}
  .x-postcard h3{font-size:18px;font-weight:800;letter-spacing:-.3px;margin-top:10px;margin-bottom:7px;line-height:1.25}
  .x-postcard p{font-size:12.5px;color:var(--x-t3);line-height:1.6;max-width:75ch}
  .x-postcard .x-more{display:inline-block;margin-top:10px}
  .x-postgrid .x-postcard .x-more{margin-bottom:18px}
  .x-prose img{border:1px solid var(--x-line);border-radius:12px;margin-top:20px}
  .x-prose .x-byline{font-size:12.5px;color:#899eb3;margin:0}

/* ---------- v3: dark homepage (.xb) ---------- */
.xb{--bg:var(--navy);--panel:var(--navy-2);--panel-2:var(--navy-3);--bd:rgba(255,255,255,.08);--tx:#edeeec;--mu:#899eb3;--glow:var(--x-teal-2);background:var(--bg);color:var(--tx)}
.xb .x-wrap{position:relative}
.xb h2{font-size:clamp(28px,3.4vw,44px);font-weight:700;letter-spacing:-1px;line-height:1.08;color:#f7f7f6;text-align:center}
.xb .xb-sub{text-align:center;color:var(--mu);font-size:14px;margin-top:12px}
.xb section{padding:84px 0;position:relative;overflow:hidden}
.xb .x-btn-p{background:var(--x-teal-2);color:#0c1116}
.xb .x-btn-s{color:#edeeec;background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.14)}
.xb .x-btn .ar{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:rgba(12,17,22,.18);margin-left:10px;font-size:13px}

/* hero */
.xb-hero{padding:70px 0 90px!important}
.xb-hero::before{content:"";position:absolute;left:-10%;bottom:-40%;width:60%;height:90%;background:radial-gradient(closest-side,rgba(63,199,212,.16),transparent);pointer-events:none}
.xb-hero::after{content:"";position:absolute;right:-8%;bottom:-30%;width:50%;height:80%;background:radial-gradient(closest-side,rgba(15,140,153,.18),transparent);pointer-events:none}
.xb-hero .x-wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}
.xb-pill{display:inline-block;font-size:11.5px;color:#ccd1d4;background:rgba(255,255,255,.06);border:1px solid var(--bd);border-radius:999px;padding:6px 12px}
.xb-hero h1{font-size:clamp(34px,4.4vw,56px);font-weight:800;letter-spacing:-2px;line-height:1.0;margin:20px 0 18px;color:#fff}
.xb-hero .lead{color:var(--mu);font-size:16px}
.xb-checks{display:flex;flex-wrap:wrap;gap:22px;margin:26px 0 30px}
.xb-checks div{display:flex;align-items:center;gap:10px;font-size:13px;color:#e1e3e3;font-weight:600}
.xb-checks i{display:grid;place-items:center;width:30px;height:30px;border-radius:6px;background:var(--panel-2);border:1px solid var(--bd);font-style:normal;color:var(--glow);font-size:13px}
.xb-hero .x-cta{display:flex;gap:12px;flex-wrap:wrap}
.xb-shot{border-radius:12px;border:1px solid rgba(255,255,255,.12);background:var(--panel);overflow:hidden;box-shadow:0 40px 90px -30px rgba(0,0,0,.8),0 0 0 6px rgba(255,255,255,.02);margin-right:-120px}
/* The -120px bleed only clears .xb-hero's own overflow:hidden edge once the
   centered .x-wrap (max-width 1120px) has >=120px of margin outside it,
   which needs a viewport of ~1360px+. Below that (13"-14" laptops at
   1280-1366px are the common case) the bleed instead silently crops the
   right edge of the hero screenshot against the section's own overflow
   clip. Reset it to 0 up to 1400px so the image is never cropped; the
   bleed effect still applies above that on wider monitors. */
@media(max-width:1400px){.xb-shot{margin-right:0}}
.xb-shot .bar{display:flex;gap:6px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--bd);font-size:11px;color:var(--mu)}
.xb-shot .bar i{width:8px;height:8px;border-radius:50%;background:#2e3b48}
.xb-shot .bar span{margin-left:10px}
.xb-shot img{display:block;width:100%}

/* numbered reasons */
.xb-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:56px;position:relative}
.xb-step{padding:0 22px 44px;border-left:1px solid var(--bd);cursor:pointer;transition:opacity .3s}
.xb-step:first-child{border-left:0;padding-left:0}
.xb-step .n{font-size:13px;color:var(--mu);font-variant-numeric:tabular-nums}
.xb-step h3{font-size:20px;font-weight:700;letter-spacing:-.3px;margin-top:56px;color:#fff}
.xb-step p{font-size:13px;color:var(--mu);margin-top:8px;line-height:1.5}
.xb-step:not(.on){opacity:.42}
.xb-rail{position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--bd)}
.xb-rail b{position:absolute;left:0;top:-1px;height:3px;border-radius:2px;background:var(--x-teal-2);transition:width .5s ease,left .5s ease;width:25%}
.xb-center{text-align:center;margin-top:40px}

/* platform tabs */
.xb-tabs{display:flex;justify-content:center;margin-top:28px}
.xb-tabs div{display:inline-flex;gap:4px;padding:5px;border-radius:12px;background:var(--panel);border:1px solid var(--bd);flex-wrap:wrap;justify-content:center}
.xb-tabs button{font:inherit;font-size:13px;font-weight:700;color:#ccd1d4;background:transparent;border:0;border-radius:6px;padding:9px 16px;cursor:pointer}
.xb-tabs button[aria-selected="true"]{background:var(--x-teal-2);color:#0c1116}
.xb-panel{display:none;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center;margin-top:36px;border:1px solid var(--bd);border-radius:20px;padding:40px;background:var(--panel)}
.xb-panel.on{display:grid}
.xb-panel h3{font-size:28px;font-weight:800;letter-spacing:-.6px;color:#fff}
.xb-panel .xb-checks{margin:18px 0 26px;gap:16px}
.xb-panel .xb-checks div{font-weight:500;font-size:13px}
.xb-panel .xb-checks i{width:auto;height:auto;background:none;border:0}
.xb-panel figure{border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#0c1116}
.xb-panel figure img{display:block;width:100%}

/* people */
.xb-about{padding:0!important}
.xb-about .grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd)}
.xb-about .txt{padding:80px 56px 80px max(24px,calc((100vw - 1180px)/2));position:relative}
.xb-about .txt::after{content:"";position:absolute;left:-10%;bottom:-40%;width:70%;height:80%;background:radial-gradient(closest-side,rgba(63,199,212,.16),transparent);pointer-events:none}
.xb-kick{font-size:13px;color:var(--glow);font-weight:600}
.xb-about h2{text-align:left;margin-top:14px}
.xb-team{display:flex;gap:22px;margin:30px 0 32px;flex-wrap:wrap}
.xb-team div{display:flex;align-items:center;gap:12px}
.xb-team img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:1px solid var(--bd)}
.xb-team b{display:block;font-size:14px;color:#fff}
.xb-team span{display:block;font-size:12px;color:var(--mu)}
.xb-about .pic{min-height:440px;background:url(assets/photos/team-code-review.jpg) center/cover}

/* faq */
.xb-faq{max-width:780px;margin:44px auto 0;display:flex;flex-direction:column;gap:8px}
.xb-faq details{background:var(--panel);border:1px solid var(--bd);border-radius:12px;padding:0 24px}
.xb-faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:16px;font-weight:600;color:#edeeec;cursor:pointer}
.xb-faq summary::-webkit-details-marker{display:none}
.xb-faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:6px;background:var(--panel-2);color:#ccd1d4;font-size:18px}
.xb-faq details[open] summary::after{content:"\2013";background:var(--x-teal-2);color:#0c1116}
.xb-faq p{color:var(--mu);font-size:14px;line-height:1.6;padding:0 0 22px;max-width:62ch}

/* posts */
.xb-posts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.xb-posts a{text-decoration:none;color:inherit;display:flex;flex-direction:column}
.xb-posts figure{aspect-ratio:1/0.82;border-radius:12px;overflow:hidden;background:#0c1116;border:1px solid var(--bd)}
.xb-posts img{width:100%;height:100%;object-fit:cover;object-position:left top;display:block;transition:transform .4s}
.xb-posts img[src$=".svg"]{object-fit:contain;padding:14px}
.xb-posts a:hover img{transform:scale(1.03)}
.xb-posts .meta{display:flex;justify-content:space-between;font-size:11px;color:var(--mu);margin-top:12px}
.xb-posts h3{font-size:15px;font-weight:600;line-height:1.35;color:#edeeec;margin-top:8px}
.xb-posts .rn{font-size:12px;font-weight:600;color:#e1e3e3;margin-top:10px}

/* close */
.xb-close{background:linear-gradient(180deg,rgba(12,17,22,.55),rgba(12,17,22,.88)),url(assets/photos/network-cables.jpg) center/cover}
.xb-close .x-close-grid{max-width:900px;margin:40px auto 0}
.xb-close .x-close-box{background:rgba(20,25,31,.82);backdrop-filter:blur(6px)}

@media(max-width:960px){
  .xb-hero .x-wrap,.xb-panel,.xb-about .grid{grid-template-columns:1fr}
  .xb-shot{margin-right:0}
  .xb-steps{grid-template-columns:1fr 1fr;row-gap:30px}
  .xb-step{border-left:0;padding-left:0}.xb-step h3{margin-top:18px}.xb-rail{display:none}
  .xb-step:not(.on){opacity:1}
  .xb-posts{grid-template-columns:1fr 1fr}
  .xb-about .txt{padding:60px 20px}.xb-about .pic{min-height:280px}
  .xb-panel{padding:24px}
}
@media(max-width:560px){
  .xb-steps,.xb-posts{grid-template-columns:1fr}
  .xb section{padding:60px 0}
  /* Homepage post teasers: drop the thumbnail, collapse to a compact
     scannable list so four posts don't cost four screens of scroll. */
  .xb-posts{gap:0;margin-top:24px}
  .xb-posts figure{display:none}
  .xb-posts a{flex-direction:row;flex-wrap:wrap;align-items:baseline;border-bottom:1px solid var(--x-line);padding:16px 0}
  .xb-posts .meta{order:1;margin-top:0;width:100%;justify-content:flex-start;gap:8px}
  .xb-posts h3{order:2;font-size:15px;margin-top:6px;width:100%}
  .xb-posts .rn{order:3;margin-top:4px}
}
@media(prefers-reduced-motion:reduce){.xb-rail b,.xb-posts img{transition:none}}
.xb .x-close-box .x-btn{justify-content:center;text-align:center}

/* =====================================================================
   v3: site-wide dark theme - brand palette only
   navy #0c1116 / navy-2 #14191f / navy-3 #242e38 / navy-4 #3A4A5A
   teal #0f8c99 / teal-2 #3FC7D4. Loaded last; overrides the v2 kit.
   ===================================================================== */
:root{--x-ink:#edeeec;--x-t3:#899eb3;--x-line:rgba(255,255,255,.10);--x-paper:var(--navy);
  --d-panel:var(--navy-2);--d-raise:var(--navy-3);--d-bd:rgba(255,255,255,.08);--d-bd-2:rgba(255,255,255,.14);--d-tx:#edeeec}
body{background:var(--navy);color:var(--d-tx)}

/* hero: brand navy with a soft teal glow */
.x-hero{position:relative;overflow:hidden;background:var(--navy);padding:72px 0 80px}
.x-hero::before{content:"";position:absolute;left:-12%;bottom:-45%;width:60%;height:95%;background:radial-gradient(closest-side,rgba(63,199,212,.16),transparent);pointer-events:none}
.x-hero::after{content:"";position:absolute;right:-10%;top:-40%;width:50%;height:80%;background:radial-gradient(closest-side,rgba(15,140,153,.16),transparent);pointer-events:none}
.x-hero .x-wrap{position:relative;z-index:1}
.x-hero .x-eyebrow{display:inline-block;font-size:11.5px;font-weight:600;letter-spacing:.3px;text-transform:none;color:#ccd1d4;background:rgba(255,255,255,.06);border:1px solid var(--d-bd);border-radius:999px;padding:6px 12px}
.x-hero h1{font-size:clamp(34px,4.4vw,56px);letter-spacing:-1.6px;line-height:1.02;margin:20px 0 16px;color:#fff}
.x-hero .x-one-line{font-size:16px;color:var(--x-t3)}
.x-hero-img{background:var(--d-panel);border-color:var(--d-bd-2);box-shadow:0 40px 90px -30px rgba(0,0,0,.7)}
.x-hero.x-hero-wide .x-hero-img{border-color:var(--d-bd-2)}

/* sections */
.x-sec{background:var(--navy);padding:80px 0}
.x-sec.x-alt{background:var(--navy-2);border-color:var(--d-bd)}
.x-sec.x-dark{background:var(--navy-2)}
.x-sec h2,.x-sec h3,.x-prose h2,.x-prose h3{color:#edeeec}
.x-sec h2{font-size:clamp(26px,3vw,40px);letter-spacing:-1px;line-height:1.1}
.x-kicker{color:var(--x-teal-2)}
.x-more{color:var(--x-teal-2)}
.x-btn-o{color:var(--d-tx);border-color:var(--d-bd-2)}
.x-btn-s{color:#edeeec;background:rgba(255,255,255,.04);border-color:var(--d-bd-2)}

/* cards and panels */
.x-card,.x-point,.x-stat,.x-plan,.x-team-card,.x-road-col,.x-path,.x-rcard,.x-postcard{background:var(--d-panel);border-color:var(--d-bd);box-shadow:none}
.x-sec.x-alt .x-card,.x-sec.x-alt .x-point,.x-sec.x-alt .x-stat,.x-sec.x-alt .x-plan,.x-sec.x-alt .x-team-card,.x-sec.x-alt .x-road-col,.x-sec.x-alt .x-path,.x-sec.x-alt .x-rcard,.x-sec.x-alt .x-postcard{background:var(--navy)}
.x-cardlink:hover,.x-postcard:hover{border-color:rgba(63,199,212,.5);box-shadow:none}
/* Single-column mobile post list: a thumbnail's own dark fill can bleed
   into the equally-dark page background, leaving only the gap to separate
   posts. A subtle border isn't enough on its own -- add real elevation
   (shadow) and more breathing room so each post unmistakably reads as its
   own card, not a continuous scroll. */
@media(max-width:640px){
  .x-postgrid{gap:28px}
  .x-postgrid .x-postcard{background:var(--d-raise);border-color:var(--d-bd-2);box-shadow:0 12px 28px -14px rgba(0,0,0,.55)}
}
.x-plan[data-featured]{border-color:var(--x-teal-2);box-shadow:0 0 0 1px rgba(63,199,212,.25)}
.x-plan .x-price,.x-stat b{color:#fff}
.x-plan h3,.x-team-card .x-role,.x-team-card a,.x-rcard .x-rnum{color:var(--x-teal-2)}
.x-plan li,.x-road-col li,.x-path li,.x-gloss div{border-color:var(--d-bd)}
.x-plan li::before,.x-road-col.x-now li::before{background:var(--x-teal-2)}
.x-road-col li::before{background:var(--navy-4)}
.x-road-col.x-now,.x-path.x-good,.x-point.x-good{background:rgba(63,199,212,.05);border-color:rgba(63,199,212,.35)}
.x-road-col.x-now h3,.x-path.x-good figcaption,.x-path.x-good li::before,.x-point.x-good h3{color:var(--x-teal-2)}
.x-rcard .x-rviz{background:var(--navy);border-color:var(--d-bd)}
.x-dots button,.x-showcase-prog i{background:var(--navy-4)}
.x-dots button[aria-current="true"],.x-showcase-prog i[data-on="1"]{background:var(--x-teal-2)}
.x-gloss dt{color:#edeeec}

/* screenshots */
.x-shot,.x-shot-big,.x-showcase-frame{border-color:var(--d-bd-2);box-shadow:0 40px 90px -40px rgba(0,0,0,.8)}
.x-showcase-tabs button{background:var(--d-panel);border-color:var(--d-bd);color:#ccd1d4}
.x-showcase-tabs button[aria-current="true"]{background:var(--x-teal-2);border-color:var(--x-teal-2);color:#0c1116}

/* tables */
.x-cmp{border-color:var(--d-bd)}
.x-cmp th,.x-cmp td{border-color:var(--d-bd);color:#ccd1d4}
.x-cmp thead th{background:var(--d-panel);color:#edeeec}
.x-cmp .x-us{background:rgba(63,199,212,.07)}
.x-cmp thead .x-us{color:var(--x-teal-2);border-bottom-color:var(--x-teal-2)}
.x-cmp .x-cat td{background:var(--navy-3);color:#899eb3}
.x-cmp .x-soon{background:rgba(183,112,15,.14);border-color:rgba(183,112,15,.4);color:#e8a93a}
.x-g.x-y{color:#5bc48c}.x-g.x-n{color:var(--navy-4)}.x-g.x-m{color:#e8a93a}

/* closing blocks */
.x-close,.x-endcta,.x-get{background:var(--navy-2);border-top:1px solid var(--d-bd)}
.x-close h2{font-size:clamp(26px,3vw,40px);letter-spacing:-1px}

/* blog */
.x-postcard .x-tag{background:rgba(63,199,212,.12);color:var(--x-teal-2)}
.x-postthumb{border-color:var(--d-bd)}
.x-postlist .x-postcard,.x-postlist .x-postcard:first-child{border-color:var(--d-bd)}
.x-postlist .x-postcard:hover{background:var(--navy-2)}
.x-prose p,.x-prose li{color:#a2b2c3}
.x-prose a{color:var(--x-teal-2)}
.x-prose strong,.x-prose b{color:#edeeec}
.x-prose img{border-color:var(--d-bd)}

/* diagrams: map light-theme fills onto dark */
section svg .x-box,section svg :is(rect,circle,ellipse,path,polygon)[fill="#fff"],section svg :is(rect,circle,ellipse,path,polygon)[fill="#ffffff"],section svg [fill="#f7f7f6"],section svg [fill="#f7f7f6"]{fill:var(--navy-3)}
section svg .x-box,section svg [stroke="#e1e3e3"],section svg [stroke="#edeeec"],section svg [stroke="#ccd1d4"]{stroke:var(--navy-4)}
.x-s{stroke:#485C70}
section svg [fill="#f1f8f8"],section svg [fill="#e3f1f2"],section svg [fill="#f1f8f8"]{fill:rgba(63,199,212,.10)}
section svg [fill="#f1f8f8"]{fill:rgba(63,199,212,.16)}
section svg [fill="#fbf1dc"]{fill:rgba(183,112,15,.16)}
section svg [fill="#e4f5ec"]{fill:rgba(31,107,73,.18)}
section svg text[fill="#3A4A5A"],section svg g[fill="#3A4A5A"]{fill:#ccd1d4}
section svg text[fill="#0f8c99"],section svg g[fill="#0f8c99"]{fill:var(--x-teal-2)}
section svg text[fill="#3fc7d4"]{fill:#a9e4ea}
section svg text[fill="#b7700f"]{fill:#e8a93a}
section svg text[fill="#1f6b49"],section svg .x-ok{fill:#5bc48c}
section svg text[fill="#d14343"],section svg .x-no{fill:#f28b8b}
section svg text[fill="#587089"],section svg g[fill="#587089"]{fill:#899eb3}

/* legacy page classes (privacy, FAQ, forms) */
.band{background:var(--navy)}
.page-hero{background:var(--navy)}
.article-body,.article-body p,.article-body li{color:#a2b2c3}
.article-body h2,.article-body h3{color:#edeeec}
.cta-form{background:var(--navy-2);border-color:var(--d-bd)}
.cta-form label{color:#ccd1d4}
.x-card .x-lbl .x-n,.x-point .x-n,.x-sec .x-n{color:var(--x-teal-2)}
.x-g.x-n{color:var(--navy-4)}
.x-showcase[data-fit="contain"] .x-showcase-stage,.x-showcase[data-fit="contain"] .x-showcase-slide img{background:var(--navy-2)}
.cta-form{border-radius:12px}
.cta-form input,.cta-form textarea,.cta-form select{background:var(--navy);border-color:rgba(255,255,255,.12)}
.cta-form input:focus,.cta-form textarea:focus,.cta-form select:focus{border-color:var(--x-teal-2)}
.cta-form button{background:var(--x-teal-2);color:#0c1116}
section svg rect[fill="#edeeec"],section svg rect[fill="#f7f7f6"],section svg rect[fill="#edeeec"]{fill:var(--navy-3)}
section svg rect[fill="#f1f8f8"]{fill:rgba(63,199,212,.10)}
section svg rect[fill="#fbe9e9"],section svg rect[fill="#fbe9e9"]{fill:rgba(209,67,67,.16)}
section svg rect[fill="#edeeec"]{fill:rgba(31,107,73,.18)}
section svg text[fill="#14191f"],section svg text[fill="#14191f"]{fill:#edeeec}
section svg text[fill="#0f8c99"]{fill:var(--x-teal-2)}
section svg [stroke="#ccd1d4"]{stroke:var(--navy-4)}

/* hero with a photo behind it (industry and partner pages) */
.x-hero.x-hero-photo{background:linear-gradient(90deg,rgba(12,17,22,.96) 0%,rgba(12,17,22,.86) 45%,rgba(12,17,22,.70) 100%),var(--hero-img) center/cover no-repeat,var(--navy)}
.x-hero.x-hero-photo::before,.x-hero.x-hero-photo::after{display:none}
.x-hero.x-hero-photo{border-bottom:1px solid var(--d-bd)}
@media(max-width:960px){.x-hero.x-hero-photo{background:linear-gradient(180deg,rgba(12,17,22,.9),rgba(12,17,22,.95)),var(--hero-img) center/cover no-repeat,var(--navy)}}
@media(max-width:960px){.x-hero.x-hero-wide .x-wrap{grid-template-columns:1fr;gap:32px}}

/* ---------- v3: tick labels under a hero headline ---------- */
.x-checks{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px}
.x-checks span{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#e1e3e3}
.x-checks span::before{content:"\2713";display:grid;place-items:center;width:28px;height:28px;border-radius:6px;background:var(--navy-3);border:1px solid var(--d-bd);color:var(--x-teal-2);font-size:12px}

/* ---------- v3: numbered steps with a progress rail (.x-points.x-steps) ---------- */
.x-points.x-steps{position:relative;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:0;margin-top:48px;padding-bottom:6px}
.x-steps .x-point{background:none;border:0;border-left:1px solid var(--d-bd);border-radius:0;padding:0 22px 40px;box-shadow:none;cursor:pointer;transition:opacity .3s}
.x-steps .x-point:first-child{border-left:0;padding-left:0}
.x-steps .x-point .x-n{font-family:inherit;font-weight:500;font-size:13px;color:var(--x-t3)}
.x-steps .x-point h3{font-size:19px;font-weight:700;letter-spacing:-.3px;margin:44px 0 8px;color:#fff}
.x-steps .x-point p{font-size:13px;line-height:1.55}
.x-point-cta{margin-top:16px;font-size:12.5px;padding:9px 16px;transition:background .2s,color .2s,border-color .2s}
.x-steps .x-point.x-on .x-point-cta{background:var(--x-teal-2);color:#0c1116;border-color:var(--x-teal-2)}
.x-steps.x-live .x-point:not(.x-on){opacity:.45}
.x-steps .x-rail{position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--d-bd)}
.x-steps .x-rail b{position:absolute;top:-1px;left:0;height:3px;border-radius:2px;background:var(--x-teal-2);width:calc(100% / var(--n,4));transition:left .5s ease}
@media(max-width:900px){.x-points.x-steps{grid-template-columns:1fr 1fr;row-gap:28px}.x-steps .x-point{border-left:0;padding-left:0;padding-bottom:0}.x-steps .x-point h3{margin-top:14px}.x-steps .x-rail{display:none}.x-steps.x-live .x-point:not(.x-on){opacity:1}}
@media(max-width:560px){.x-points.x-steps{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.x-steps .x-rail b,.x-steps .x-point{transition:none}}

/* ---------- v3: showcase tabs as one pill-shaped selector ---------- */
.x-showcase-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:5px;border-radius:12px;background:var(--navy-2);border:1px solid var(--d-bd);margin-bottom:18px}
.x-showcase-tabs button{background:transparent;border:0;border-radius:6px;color:#ccd1d4;font-weight:700}
.x-showcase-tabs button[aria-current="true"]{background:var(--x-teal-2);color:#0c1116}
.x-sec .x-steps .x-point,.x-sec.x-alt .x-steps .x-point{background:none;border-top:0;border-right:0;border-bottom:0}
.x-points.x-3{grid-template-columns:repeat(3,1fr)}.x-points.x-2{grid-template-columns:1fr 1fr}@media(max-width:760px){.x-points.x-3,.x-points.x-2{grid-template-columns:1fr}}

/* ---------- v3: make the homepage tab panels and post cards usable on any page ---------- */
:root{--panel:var(--navy-2);--panel-2:var(--navy-3);--bd:rgba(255,255,255,.08);--mu:#899eb3;--glow:var(--x-teal-2)}
.x-sec .xb-tabs{justify-content:flex-start}
.x-sec .xb-panel h3{color:#fff}
.x-sec .xb-posts{margin-top:34px}

/* ---------- v3: team cards with large portraits ---------- */
.x-team-card{display:grid;grid-template-columns:112px 1fr;gap:6px 22px;align-items:start;padding:26px}
.x-team-card img{width:112px;height:112px;border-radius:12px;grid-row:span 4}
.x-team-card h3{margin-top:4px}
.x-team-card p{margin:10px 0}
@media(max-width:520px){.x-team-card{grid-template-columns:1fr}.x-team-card img{grid-row:auto}}
.x-stats{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:760px){.x-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.x-stats{grid-template-columns:1fr}}

/* ---------- v3: centered landing hero (industry / ad landing pages) ---------- */
.x-hero.x-hero-center{text-align:center;padding:84px 0 40px}
.x-hero.x-hero-center .x-wrap{display:block;max-width:980px}
.x-hero-center h1{font-size:clamp(34px,4.4vw,56px);letter-spacing:-2.4px;line-height:1.02;margin:26px auto 22px}
.x-hero-center h1 .x-hl{color:var(--x-teal-2);display:block}
.x-hero-center .x-one-line{font-size:18px;max-width:60ch;margin:0 auto;color:#a2b2c3}
.x-hero-center .x-checks{justify-content:center;margin-top:26px}
.x-hero-center .x-cta{justify-content:center;margin-top:30px}
.x-hero-center .x-cta .x-btn{font-size:16px;padding:15px 26px;border-radius:12px}
.x-hero-note{margin-top:14px;font-size:13px;color:var(--x-t3)}
.x-hero-note a{color:var(--x-teal-2);text-decoration:none;font-weight:600}
.x-pill{display:inline-flex;align-items:center;gap:10px;padding:5px 14px 5px 5px;border-radius:999px;background:rgba(20,25,31,.8);border:1px solid rgba(63,199,212,.35);text-decoration:none;color:#edeeec;font-size:13.5px;font-weight:600;box-shadow:0 0 30px -10px rgba(63,199,212,.5)}
.x-pill b{background:rgba(63,199,212,.14);color:var(--x-teal-2);border-radius:999px;padding:5px 12px;font-weight:700}
.x-pill i{font-style:normal;color:var(--x-teal-2)}
.x-hero-visual{position:relative;max-width:1160px;margin:56px auto 0;padding:0 32px}
.x-hero-visual figure{margin:0;border-radius:20px;border:1px solid var(--d-bd-2);background:var(--navy-2);overflow:hidden;box-shadow:0 50px 100px -40px rgba(0,0,0,.8)}
.x-hero-visual figure::before{content:"";display:block;height:2px;background:linear-gradient(90deg,transparent,var(--x-teal-2) 30%,var(--x-teal-2) 70%,transparent)}
.x-hero-visual .x-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid var(--d-bd);font-size:12px;color:#899eb3;font-weight:700}
.x-hero-visual .x-bar i{width:9px;height:9px;border-radius:50%;background:var(--navy-4)}
.x-hero-visual .x-bar span{margin-left:8px}
.x-hero-visual svg{display:block;width:100%;height:auto}
@media(max-width:700px){.x-hero.x-hero-center{padding-top:56px}.x-hero-visual{padding:0 16px}.x-hero-center .x-one-line{font-size:16px}.x-hero-center .x-checks{flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left;gap:14px}.x-hero-center .x-checks span{align-items:flex-start}.x-hero-center .x-checks span::before{margin-top:1px}}

/* ---------- v3: problem cards, each naming the fix and its tier ---------- */
.x-fixes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}
@media(max-width:900px){.x-fixes{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.x-fixes{grid-template-columns:1fr}}
.x-fixcard{display:flex;flex-direction:column;border:1px solid var(--d-bd);border-radius:12px;background:var(--navy-2);padding:22px 20px 18px}
.x-sec.x-alt .x-fixcard{background:var(--navy)}
.x-fixcard .x-n{font-size:12px;color:var(--x-t3);font-variant-numeric:tabular-nums}
.x-fixcard h3{font-size:17px;font-weight:800;letter-spacing:-.3px;color:#edeeec;margin:10px 0 6px}
.x-fixcard p{font-size:13px;color:var(--x-t3);line-height:1.55;flex:1}
.x-fix{margin-top:16px;padding-top:14px;border-top:1px solid var(--d-bd);display:flex;flex-direction:column;gap:8px}
.x-fix a,.x-fix span{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12.5px;font-weight:700;color:var(--x-teal-2);text-decoration:none}
.x-fix a::before,.x-fix span::before{content:"\2713";flex:none;color:var(--x-teal-2);font-size:11px}
.x-fix em{margin-left:auto;font-style:normal;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:#ccd1d4;background:var(--navy-3);border:1px solid var(--d-bd);border-radius:999px;padding:3px 8px;white-space:nowrap}

/* ---------- v3: plan cards pulled live from the pricing page ([data-plans]) ---------- */
[data-plans] .x-plans{margin-top:30px}
.x-plans-more{display:inline-block;margin-top:22px;color:var(--x-teal-2);font-weight:700;font-size:13.5px;text-decoration:none}
.x-hero.x-hero-center.x-hero-photo{background:radial-gradient(60% 50% at 50% 0%,rgba(63,199,212,.16),transparent 70%),linear-gradient(180deg,rgba(12,17,22,.80) 0%,rgba(12,17,22,.92) 45%,var(--navy) 80%),var(--hero-img) center top/cover no-repeat,var(--navy)}
.x-hero-visual .x-scroll{overflow-x:auto}
@media(max-width:760px){.x-hero-visual svg{min-width:760px}}
.x-hero-img .x-scroll{overflow-x:auto}
@media(max-width:760px){.x-diagram-lg svg{min-width:760px}.x-diagram-sm svg{min-width:440px}}
.x-showcase-slide.x-contain img{object-fit:contain;object-position:center;background:var(--navy-2)}

/* Legal: fewer, bigger problem cards with room to breathe. */
.x-legal-fixes{grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:700px){.x-legal-fixes{grid-template-columns:1fr}}
.x-legal-fixes .x-fixcard{padding:32px 36px;border-top:3px solid var(--x-teal-2)}
.x-legal-fixes .x-fixcard h3{font-size:22px}
.x-legal-fixes .x-fixcard p{flex:none;font-size:15.5px;line-height:1.65}

/* Shared conversion area: the same two actions on every page. */
.site-close{max-width:1320px;margin:58px auto 72px;background:var(--navy-2);border:1px solid var(--d-bd-2);border-radius:12px;padding:48px 60px;display:flex;align-items:center;justify-content:space-between;gap:32px;line-height:1.5}
.site-close h2{color:#edeeec;font-size:42px;line-height:1.1;letter-spacing:-1.6px;font-weight:700;margin:18px 0}
.site-close p:last-child{font-size:14px;color:var(--x-t3)}
.site-close-actions{display:flex;flex-direction:column;gap:10px;min-width:248px}
.site-close-actions a,.x-hero .x-cta .x-btn{padding:16px 20px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:13px;font-weight:600;border-radius:6px;text-decoration:none}
.site-close-actions>span{font-size:10px;text-align:center;color:var(--x-t3);margin-top:2px}
.site-close-actions>.gov-docs-link{display:block;padding:0;font-size:10px;font-weight:400;text-align:center;color:var(--x-t3);margin-top:2px;text-decoration:underline}
.site-close a:focus-visible{outline:3px solid var(--x-teal-2);outline-offset:4px}
@media(max-width:1416px){.site-close{margin-left:32px;margin-right:32px}.gov-page>.site-close{margin-left:0;margin-right:0}}
@media(max-width:760px){.site-close{margin:32px 20px 40px;padding:30px 24px;flex-direction:column;align-items:center;text-align:center}.site-close h2{font-size:36px}.site-close-actions{min-width:0;width:100%}.site-close-actions .x-btn{min-height:48px}}

/* Legal solutions use a native disclosure on desktop and in the mobile drawer. */
.nav-submenu summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.nav-submenu summary::-webkit-details-marker { display: none; }
.nav-submenu summary::after { content: '+'; font-size: 18px; }
.nav-submenu[open] summary::after { content: '−'; }
.nav-submenu-links { margin: 2px 0 6px 10px; padding-left: 8px; border-left: 1px solid rgba(63,199,212,.3); }
.nav-submenu-links .nav-dropdown-link { line-height: 1.4; }
.nav-submenu summary:focus-visible, .nav-dropdown-link:focus-visible { outline: 2px solid #3fc7d4; outline-offset: -2px; }
@media (min-width: 1201px) {
  .nav-dropdown-menu:has(.nav-submenu) { width: 310px; max-height: calc(100vh - 100px); overflow-y: auto; }
  .nav-item-dropdown:focus-within .nav-dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
}

/* Primary invitation to the interactive app gallery. */
.nav-btn-try{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 18px;background:#3fc7d4;color:#0c1116;border:1px solid #7ed6df;font-weight:800;box-shadow:0 0 18px rgba(63,199,212,.2)}
.nav-btn-try:hover{background:#a9e4ea;border-color:#a9e4ea}
.nav-btn-try:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* Consistent dimensions for all three header actions. */
.nav-cta .nav-btn{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:44px;min-height:44px;min-width:112px;padding:0 18px;border-width:1px;border-style:solid;line-height:1;font-size:13px;border-radius:6px}
.nav-cta .nav-btn-primary{border-color:transparent}
@media(max-width:980px){.nav-cta .nav-btn{height:48px;min-height:48px;font-size:14px}}

/* Center the summary on the page; keep its contents easy to scan. */
.x-tldr{max-width:680px;margin-inline:auto;text-align:left;padding:24px 30px}
.x-tldr .x-tldr-label{margin:0 0 12px;text-align:left}
.x-tldr ul{list-style:disc;padding-left:20px;margin:0}
.x-tldr li{padding-left:4px;margin:8px 0;font-size:15px;line-height:1.6}
.x-tldr li::marker{color:var(--x-teal-2)}
.x-tldr li+li{padding-top:0;border-top:0}
.blog-research{margin-top:20px;padding-top:16px;border-top:1px solid var(--d-bd-2)}
.blog-research-label{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--x-t3);margin:0 0 10px}
.blog-research-links{display:grid;gap:8px}
.blog-research a{color:var(--x-teal-2);font-size:14px;line-height:1.5;text-decoration:underline;text-underline-offset:3px}
.blog-research .blog-library-link{display:inline-block;margin-top:12px;font-size:12px;color:var(--x-t3)}
@media(max-width:600px){.x-tldr{padding:22px 24px}.x-tldr li{font-size:14px}}

.nav-try-apps .nav-dropdown-toggle{gap:9px;padding:10px 15px;border-radius:6px;color:#0c1116;font-weight:800}
.nav-try-apps .nav-dropdown-menu{left:auto;right:0;min-width:265px}
.nav-try-apps [aria-current="page"]{color:#3fc7d4;background:#3fc7d41a}
@media(max-width:1450px){.nav-try-apps .nav-dropdown-toggle{justify-content:space-between}.nav-try-apps .nav-dropdown-menu{min-width:0}}

@media(max-width:1450px){
 .nav>.nav-logo{order:0}.nav>.nav-menu-toggle{order:1}.nav>.nav-try-apps{order:2;width:100%}.nav>.nav-links{order:3}
 .nav>.nav-try-apps .nav-dropdown-toggle{width:100%;justify-content:space-between}
 .nav>.nav-try-apps.open .nav-dropdown-menu{padding-top:8px}
}

.nav-logo > span{font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:20px;font-weight:800;color:#fff;letter-spacing:.16em;text-transform:uppercase}

/* ---- Brand typography: one family, one weight scheme ---- */
h1 { font-weight: 800; }
h2 { font-weight: 700; }

/* Wordmark: Manrope, uppercase, 0.16em tracking (weight 800 by decision; brand README says 600) */
.nav-logo > span,.wordmark{font-family:var(--font-brand);font-weight:800;letter-spacing:.16em;text-transform:uppercase}

/* Legal site: shared navigation, editorial task pages and readable articles. */
.legal-nav{position:relative;z-index:40;background:#11191f;color:#f2f3ef;border-bottom:1px solid #354251;padding:18px 28px}.legal-nav-inner{max-width:1220px;margin:auto;display:flex;align-items:center;gap:28px}.legal-brand{display:flex;align-items:center;gap:10px;white-space:nowrap;margin-right:auto;font-size:21px;font-weight:800;color:#fff;text-decoration:none}.legal-brand img{width:30px;height:30px}.legal-menu{display:flex;align-items:center;gap:24px}.legal-menu>a,.legal-menu summary{color:#f2f3ef;text-decoration:none;font-size:14px;line-height:1.5}.legal-menu details{position:relative}.legal-menu summary{cursor:pointer;list-style:none;padding:10px 0}.legal-menu summary::-webkit-details-marker{display:none}.legal-menu summary:after{content:'⌄';margin-left:7px;color:#91dbe4}.legal-menu details>div{position:absolute;top:100%;left:-18px;width:310px;padding:12px;background:#17232f;border:1px solid #526478;border-radius:6px;box-shadow:0 16px 30px #0004;max-height:75vh;overflow:auto}.legal-menu details:last-of-type>div{left:auto;right:-15px;width:220px}.legal-menu details>div a{display:block;color:#edeeec;text-decoration:none;font-size:14px;line-height:1.5;padding:10px 14px;border-radius:3px}.legal-menu details>div a:hover{background:#223b4c}.legal-menu details[open]>summary{color:#91dbe4}.legal-menu .menu-group{display:block;margin:12px 14px 4px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#a2b2c3}.legal-mobile-toggle{display:none;background:transparent;border:1px solid #587089;color:#edeeec;border-radius:5px;padding:9px 12px;font:inherit}.legal-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:46px;padding:12px 19px;border:1px solid transparent;border-radius:5px;background:#3fc7d4;color:#0c1116!important;font-weight:750;text-decoration:none;font-size:14px;cursor:pointer;line-height:1.5}.legal-menu .legal-button{white-space:nowrap}.legal-button:hover{background:#a9e4ea}.legal-footer{background:#11191f;color:#edeeec;padding:50px 28px 30px}.legal-footer-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.legal-footer strong{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.legal-footer a{display:block;color:#bdcbd7;font-size:13px;line-height:1.7;margin-top:12px;text-decoration:none}.legal-footer a:hover{color:#91dbe4}.legal-footer-bottom{max-width:1160px;margin:32px auto 0;border-top:1px solid #354251;padding-top:22px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;font-size:12px;color:#a2b2c3}.legal-footer-bottom p{margin-right:auto}.legal-footer-bottom a{margin:0}
.legal-editorial{background:#f5f4ef;color:#202a30;font-family:Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.legal-editorial *{box-sizing:border-box}.le-main{max-width:1216px;margin:auto;padding:0 36px}.le-main a{color:#14626b;text-decoration:none}.le-main a:hover{text-decoration:underline;text-underline-offset:4px}.le-main h1,.le-main h2,.le-main h3{color:#202a30;font-weight:750;letter-spacing:-.025em}.le-main h1{font-size:clamp(36px,4.6vw,60px);line-height:1.12;max-width:22ch;margin:18px 0 25px}.le-main h2{font-size:clamp(25px,2.7vw,36px);line-height:1.25;margin:12px 0 20px}.le-main h3{font-size:21px;line-height:1.35}.le-main p{font-size:16px;line-height:1.8;margin:14px 0;color:#4a575f;max-width:70ch}.le-main .le-kicker{font-size:10px;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:#14626b;font-weight:750;margin:0 0 14px}.le-main .le-lede{font-size:19px;line-height:1.7;max-width:57ch}.le-home-hero{padding:64px 0;display:grid;grid-template-columns:1.12fr 1fr;gap:60px;align-items:center}.le-home-hero figure{margin:0;height:440px;overflow:hidden;border-radius:6px}.le-home-hero img{width:100%;height:100%;object-fit:cover}.le-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:28px 0 0}.le-actions .le-text-link{font-size:14px;font-weight:650}.le-intro{padding:64px 0 40px;max-width:1000px}.le-section{padding:56px 0;border-top:1px solid #cbd1ce}.le-section-heading{margin-bottom:28px}.le-job-index{border-top:1px solid #aebbb8}.le-job-index>a{display:flex;align-items:center;gap:24px;padding:22px 0;border-bottom:1px solid #cbd1ce}.le-job-index h3{flex:1;margin:0;font-size:22px}.le-job-index .le-index-number{font-size:11px;color:#65736e}.le-job-index>a>span:last-child{color:#14626b}.le-main .le-underlink{margin-top:24px;font-size:14px}.le-close{border-top:1px solid #cbd1ce;padding:48px 0 60px;display:flex;align-items:center;justify-content:space-between;gap:40px}.le-close h2{font-size:29px;margin:0 0 12px;max-width:28ch}.le-close .legal-button{flex-shrink:0}.le-main .le-caption{font-size:11px;line-height:1.65;color:#64716f;max-width:none}.le-example{background:#e7eae5;padding:32px 36px;margin:12px 0 56px;border-radius:6px}.le-example-heading{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:start}.le-example-heading h2{font-size:29px;max-width:21ch}.le-example-heading>p{font-size:14px;line-height:1.7;margin-top:0}.le-example-tabs{display:flex;gap:8px;margin:18px 0 24px}.le-example-tabs button{border:1px solid #a4b5af;background:transparent;padding:10px 16px;border-radius:4px;color:#284c4c;font:inherit;font-size:13px;cursor:pointer}.le-example-tabs button[aria-pressed=true]{color:#fff;background:#24636a;border-color:#24636a}.le-source-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.le-source-pair article{background:#fafaf5;min-width:0;padding:26px 28px;border-top:3px solid #8caaa0}.le-source-pair article+article{border-color:#24636a}.le-source-pair .le-source-label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#60716c;line-height:1.6;margin:0 0 20px}.le-source-pair blockquote{font-family:Georgia,serif;color:#263b38;font-size:21px;line-height:1.6;margin:0}.le-example .le-example-reading{font-size:14px;line-height:1.8;max-width:none;margin-top:24px}.le-measurement{padding:44px 36px;background:#17262c;color:#edeeec;display:grid;grid-template-columns:1fr 1.3fr;gap:28px 40px;border-radius:6px;margin-bottom:56px}.le-measurement h2{color:#edeeec;font-size:29px;max-width:20ch}.le-main .le-measurement .le-kicker{color:#a9e4ea}.le-measurement a{color:#a9e4ea;font-size:14px}.le-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:center}.le-metrics strong{display:block;font-size:36px;color:#a9e4ea;line-height:1.2;letter-spacing:-.03em}.le-metrics span{display:block;font-size:12px;line-height:1.6;color:#bdcbd7;margin-top:13px}.le-main .le-measurement .le-caption{grid-column:1/-1;color:#acbdc3;margin:0}.le-deployment{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.le-deployment figure{margin:0}.le-deployment img{width:100%;height:300px;object-fit:cover;border-radius:6px}.le-resource-list>a{display:grid;grid-template-columns:170px 1fr 60px;align-items:center;gap:24px;padding:22px 0;border-top:1px solid #cbd1ce}.le-resource-list>a>span{font-size:12px;color:#64716f}.le-resource-list h3{font-size:19px;margin:0}.le-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:0 60px}.le-faq h2{grid-row:1/5}.le-main details{border-bottom:1px solid #cbd1ce;padding:20px 0}.le-main summary{cursor:pointer;font-weight:650;font-size:15px;line-height:1.7}.le-main details p{font-size:14px;line-height:1.8}.le-tool-list{margin:0 0 44px;max-width:920px}.le-tool-list article{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;padding:28px 0;border-top:1px solid #cbd1ce;scroll-margin-top:32px}.le-tool-list article h2{font-size:24px;margin:0}.le-tool-list article p{margin:0;font-size:16px;line-height:1.8}.le-scope{border-left:3px solid #78958b;padding:4px 0 4px 24px;margin:40px 0 52px;max-width:900px}.le-scope h2{font-size:18px;margin:0 0 14px}.le-scope p{font-size:14px;line-height:1.8;margin:0}.le-process{margin:10px 0 40px;background:#e7eae5;padding:28px 32px;border-radius:6px}.le-process figcaption{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#5d716a;margin-bottom:18px}.le-process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:0}.le-process li{font-size:18px;line-height:1.5;color:#284741}.le-process li span{display:block;font-size:11px;color:#6d8279;margin-bottom:12px}.le-directory>a{display:grid;grid-template-columns:40px 1fr 24px;gap:28px;align-items:center;border-top:1px solid #cbd1ce;padding:26px 0}.le-directory>a>span{font-size:11px;color:#65736e}.le-directory h2{font-size:27px;margin:0 0 10px}.le-directory p{font-size:14px;margin:0}.le-practice-photo{margin:0 0 40px;height:280px;overflow:hidden;border-radius:6px}.le-practice-photo img{width:100%;height:100%;object-fit:cover}.le-practice-links{display:grid;grid-template-columns:1fr 1fr;gap:0 44px}.le-practice-links section{padding:25px 0;border-top:1px solid #cbd1ce}.le-practice-links h2{font-size:22px;margin-top:0}.le-practice-links p{font-size:14px}.le-practice-links a{font-size:14px}.le-practice-primary{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding-bottom:50px}.le-practice-primary>a{border-top:3px solid #78958b;padding-top:28px}.le-practice-primary h2{font-size:31px;max-width:24ch}.le-practice-primary span{font-size:14px}.le-story-list>a{display:grid;grid-template-columns:230px 1fr;gap:36px;padding:28px 0;border-top:1px solid #cbd1ce;align-items:center}.le-story-list img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:5px}.le-story-list h2{font-size:28px;margin:10px 0 18px;max-width:30ch}.le-story-list span{font-size:13px}.le-story-list{padding-bottom:60px}
/* The research pages keep the established article typography, entirely local. */
.legal-blog .x-hero .x-wrap{display:block;max-width:1000px}.legal-blog .x-hero{padding:58px 0 32px}.legal-blog .x-hero h1{font-size:clamp(34px,4vw,52px);line-height:1.18;max-width:28ch;letter-spacing:-.025em}.legal-blog .x-hero .x-one-line{font-size:13px;line-height:1.8;margin-top:22px;color:#aabac8}.legal-blog .x-prose{max-width:740px;margin:0 auto}.legal-blog .x-prose p,.legal-blog .x-prose li{font-size:17px;line-height:1.85;color:#bdc9d4}.legal-blog .x-prose p{margin:22px 0}.legal-blog .x-prose h2{font-size:28px;line-height:1.35;margin:44px 0 20px}.legal-blog .x-prose h3{font-size:21px;line-height:1.4;margin:32px 0 16px}.legal-blog .x-prose ul{margin:18px 0 24px;padding-left:5px}.legal-blog .x-prose li{margin:11px 0}.legal-blog .x-prose figcaption{font-size:12px;line-height:1.75;color:#aabac8;margin-top:14px}.legal-blog .x-tldr{max-width:740px;margin:auto;padding:24px 28px}.legal-blog .x-tldr li{font-size:14px;line-height:1.8;margin:10px 0}.legal-blog .x-tldr-sec{padding:0 0 18px}.legal-blog .x-prose a{color:#91dbe4}.legal-blog .x-prose table{line-height:1.7}
/* Supporting pages retained from the first build. */
.legal-main{max-width:1180px;margin:auto;padding:52px 24px;color:#edeeec}.legal-main p{color:#bdc9d4;line-height:1.8;margin:16px 0}.legal-main h1{font-size:clamp(36px,4.6vw,58px);line-height:1.15;margin:18px 0 28px}.legal-main h2{font-size:29px;line-height:1.3;margin:28px 0 22px}.legal-main h3{font-size:20px;line-height:1.4;margin:12px 0}.legal-main section{padding:36px 0}.legal-main a{color:#a9e4ea}.legal-main details{padding:20px 0;border-bottom:1px solid #485c70;line-height:1.8}.legal-main summary{cursor:pointer}.legal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.legal-card{background:#172a3d;border:1px solid #40566c;border-radius:8px;padding:24px}.legal-card strong.metric{font-size:36px;color:#a9e4ea}.legal-main input{display:block;width:100%;max-width:600px;padding:14px;color:#edeeec;background:#17232f;border:1px solid #70889d;border-radius:5px;margin:14px 0;font:inherit}.actions{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0}.paper-cover{width:150px;height:auto;max-width:100%}.table-scroll{overflow:auto}.legal-main table{border-collapse:collapse;width:100%;line-height:1.7}.legal-main th,.legal-main td{padding:14px;text-align:left;border-bottom:1px solid #485c70}.legal-main .visual img{max-width:100%;height:auto}.legal-main .legal-tabs{display:flex;gap:10px}.legal-main [hidden]{display:none!important}.cta-form .form-success{display:none}.benchmark-comparison{margin-top:30px;max-width:980px}.benchmark-comparison .benchmark-scope{font-size:14px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #3fc7d4;outline-offset:4px}
@media(max-width:900px){.legal-nav-inner{flex-wrap:wrap;gap:16px}.legal-mobile-toggle{display:block}.legal-menu{display:none;width:100%;align-items:stretch;gap:0;flex-direction:column}.legal-menu[data-open=true]{display:flex}.legal-menu>a{padding:12px 0}.legal-menu summary{padding:14px 0}.legal-menu details>div,.legal-menu details:last-of-type>div{position:static;box-shadow:none;width:100%;max-height:none;margin-bottom:12px}.legal-menu .legal-button{margin-top:12px;align-self:flex-start;padding:12px 20px}.le-main{padding:0 26px}.le-home-hero{gap:32px}.le-home-hero figure{height:350px}.le-home-hero h1{font-size:44px}.le-deployment{gap:30px}.le-measurement{grid-template-columns:1fr}.le-metrics{max-width:700px}.le-faq{gap:0 30px}.le-resource-list>a{grid-template-columns:130px 1fr 40px;gap:16px}}
@media(max-width:650px){.legal-nav{padding:15px 20px}.legal-footer{padding:36px 20px 26px}.legal-footer-inner{grid-template-columns:1fr 1fr;gap:30px 20px}.legal-footer-bottom{gap:16px}.le-main{padding:0 22px}.le-home-hero{grid-template-columns:1fr;padding:38px 0;gap:26px}.le-home-hero h1{font-size:42px}.le-home-hero figure{height:230px}.le-main .le-lede{font-size:17px;line-height:1.8}.le-example{padding:24px 20px;margin-bottom:38px}.le-example-heading{grid-template-columns:1fr;gap:4px}.le-example-heading h2{font-size:27px;max-width:none}.le-source-pair{grid-template-columns:1fr;gap:16px}.le-source-pair article{padding:22px}.le-source-pair blockquote{font-size:20px}.le-section{padding:36px 0}.le-job-index>a{gap:14px}.le-job-index h3{font-size:20px}.le-measurement{padding:28px 22px;gap:20px;margin-bottom:38px}.le-metrics{gap:15px}.le-metrics strong{font-size:29px}.le-metrics span{font-size:11px}.le-deployment{grid-template-columns:1fr;gap:24px}.le-deployment img{height:230px}.le-faq{display:block}.le-resource-list>a{grid-template-columns:1fr 40px;gap:8px}.le-resource-list>a>span:first-child{grid-column:1/-1}.le-resource-list h3{font-size:18px}.le-close{display:block;padding:36px 0 44px}.le-close .legal-button{margin-top:16px}.le-intro{padding:38px 0 28px}.le-main h1{font-size:39px}.le-tool-list article{grid-template-columns:1fr;gap:12px;padding:24px 0}.le-tool-list article h2{font-size:23px}.le-tool-list article p{font-size:15px}.le-process{padding:24px}.le-process ol{grid-template-columns:1fr;gap:22px}.le-process li{border-bottom:1px solid #c3cdc7;padding-bottom:18px}.le-process li:last-child{border:0;padding:0}.le-process li span{display:inline;margin-right:18px}.le-directory>a{grid-template-columns:24px 1fr 16px;gap:14px}.le-directory h2{font-size:24px}.le-practice-links,.le-practice-primary{grid-template-columns:1fr;gap:20px}.le-practice-primary h2{font-size:28px}.le-practice-photo{height:200px}.le-story-list>a{grid-template-columns:95px 1fr;gap:20px}.le-story-list h2{font-size:20px;line-height:1.4}.le-story-list .le-kicker{font-size:9px}.le-story-list img{aspect-ratio:1;align-self:start}.legal-grid{grid-template-columns:1fr}.legal-blog .x-hero{padding:38px 0 26px}.legal-blog .x-hero h1{font-size:34px;line-height:1.2}.legal-blog .x-prose p,.legal-blog .x-prose li{font-size:16px;line-height:1.85}.legal-blog .x-prose h2{font-size:25px}.legal-blog .x-prose h3{font-size:20px}.legal-blog .x-prose{width:100%}}

.le-product{margin:30px 0 64px;padding:30px;background:#e8ebe6;border:1px solid #d5dbd4;border-radius:6px}.le-product>a{display:block;border:1px solid #cdd6d2;border-radius:5px;overflow:hidden;background:white}.le-product img{display:block;width:100%;height:auto}.le-product .le-caption{margin:16px 0 0}.le-source-disclosure{margin:-40px 0 64px;border-bottom:1px solid #d5dbd4;padding:16px 0}.le-source-disclosure>summary{cursor:pointer;font-weight:600}.le-source-disclosure .le-example{margin:20px 0 0}.le-source-disclosure:not([open]) .le-example{display:none}@media(max-width:640px){.le-product{padding:16px;margin-bottom:40px}.le-source-disclosure{margin-top:-24px;margin-bottom:40px}}

.legal-blog .x-tldr-sec+.x-sec{padding-top:30px}.legal-blog .x-prose>p:first-child{margin-top:0}.legal-blog .x-prose p,.legal-blog .x-prose li{line-height:1.75}.legal-blog .x-prose ul{padding-left:22px}
