/* ============================================================
   Silurus Software — v2
   Calm authority. Typography does the work.
   One primary (ink), neutrals (paper, bone, steel), one accent
   (signal green) used in measured doses.
   ============================================================ */

:root {
  /* Ink (primary, dark surfaces) — Palette B: deep navy */
  --ink-deep: #060F1E;    /* deepest stop — footer, gradient bottoms */
  --ink: #0A1A2C;
  --ink-2: #112236;
  --ink-3: #1A2D44;

  /* Paper (cool premium neutrals for light surfaces) */
  --paper: #FFFFFF;       /* main light bg — white */
  --paper-2: #E4E9F0;     /* slightly deeper */
  --bone: #D5DCE5;        /* coolest deep stop */

  /* Steel (text on light) */
  --steel-1: #15202E;     /* navy-tinted body text */
  --steel-2: #44505F;
  --steel-3: #76808F;
  --steel-4: #A6ACB7;

  /* On dark */
  --ivory: #EAEDF2;
  --ivory-mute: rgba(234, 237, 242, 0.62);
  --ivory-faint: rgba(234, 237, 242, 0.38);

  /* Signal — brand cyan-blue. Numbers, bullets, brand mark interior. */
  --signal: #1FB6E0;
  --signal-deep: #0D97D7;
  --signal-soft: rgba(31, 182, 224, 0.18);

  /* Warm — terracotta. Primary CTA, kickers, highlights. Used sparingly. */
  --warm: #D26D43;
  --warm-2: #BC5C34;
  --warm-soft: rgba(210, 109, 67, 0.20);
  --warm-fg: #1B0E06;

  /* Hairlines */
  --rule: rgba(10, 26, 44, 0.10);
  --rule-strong: rgba(10, 26, 44, 0.18);
  --rule-dark: rgba(234, 237, 242, 0.10);
  --rule-dark-strong: rgba(234, 237, 242, 0.18);

  /* Type */
  --sans: "Inter", "Söhne", "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;

  /* Layout */
  --max: 1480px;
  --max-wide: 1600px;
  --gutter: clamp(20px, 4vw, 56px);
  --gutter-lg: clamp(28px, 5vw, 72px);

  /* Motion */
  --ease: cubic-bezier(0.6, 0.04, 0.34, 1);
  --ease-soft: cubic-bezier(0.32, 0.08, 0.24, 1);
}

* { box-sizing: border-box; }
html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html, body { margin: 0; padding: 0; }
body {
  font-family: var(--sans);
  background: var(--paper);
  color: var(--steel-1);
  font-size: 15.5px;
  line-height: 1.6;
  font-feature-settings: "ss01", "cv11";
  overflow-x: hidden;
}

a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; }
img, svg { display: block; max-width: 100%; }
::selection { background: var(--warm-soft); color: var(--ink); }

/* ============== Typography =================================== */
h1, h2, h3, h4 {
  font-family: var(--sans);
  font-weight: 500;
  letter-spacing: -0.022em;
  margin: 0;
  color: inherit;
  text-wrap: balance;
}
h1 {
  font-size: clamp(36px, 4.6vw, 60px);
  line-height: 1.04;
  letter-spacing: -0.028em;
  font-weight: 500;
}
h2 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.1;
  letter-spacing: -0.022em;
}
h3 {
  font-size: clamp(18px, 1.5vw, 21px);
  line-height: 1.25;
  letter-spacing: -0.016em;
  font-weight: 500;
}
h4 {
  font-size: 15.5px;
  line-height: 1.3;
  letter-spacing: -0.01em;
  font-weight: 500;
}
p { margin: 0; }

.lede {
  font-size: clamp(16px, 1.15vw, 18px);
  line-height: 1.6;
  color: var(--steel-2);
  max-width: 56ch;
}
.dark .lede { color: var(--ivory-mute); }

.mono {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.04em;
  font-feature-settings: "tnum", "zero";
}
.mono-label {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--steel-3);
  font-weight: 500;
}
.dark .mono-label { color: var(--ivory-faint); }

.mono-label .dot {
  display: inline-block;
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--warm);
  margin-right: 9px;
  vertical-align: 1px;
}

/* ============== Layout primitives ============================ */
.wrap {
  width: 100%;
  max-width: var(--max);
  margin: 0 auto;
  padding-left: var(--gutter);
  padding-right: var(--gutter);
}
.wrap-wide { max-width: var(--max-wide); }
.hero .hero-bottom { /* keep stat row aligned to same wide wrap */ }

section { position: relative; }

.section-pad { padding: clamp(72px, 7.5vw, 108px) 0; }
.section-pad-sm { padding: clamp(48px, 5vw, 72px) 0; }

/* Tighten where two same-tone sections meet (light→light, dark→dark) */
[data-nav="paper"] + [data-nav="paper"].section-pad,
[data-nav="ink"] + [data-nav="ink"].section-pad {
  padding-top: clamp(40px, 4.5vw, 64px);
}
[data-nav="paper"] + [data-nav="paper"].section-pad-sm,
[data-nav="ink"] + [data-nav="ink"].section-pad-sm {
  padding-top: clamp(32px, 3.5vw, 48px);
}

.dark { background: var(--ink); color: var(--ivory); }
.dark-deep { background: var(--ink); color: var(--ivory); }
.paper { background: var(--paper); color: var(--steel-1); }
.paper-2 { background: var(--paper-2); color: var(--steel-1); }

/* Rule lines used as compositional elements */
.rule { border-top: 1px solid var(--rule); }
.rule-bottom { border-bottom: 1px solid var(--rule); }
.dark .rule, .dark-deep .rule { border-color: var(--rule-dark); }
.dark .rule-bottom { border-color: var(--rule-dark); }

.section-head {
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
  padding-top: clamp(28px, 4vw, 56px);
  padding-bottom: clamp(40px, 5vw, 64px);
}
.dark .section-head, .dark-deep .section-head { /* dark sections — borderless */ }

.section-head .head-tag {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-top: 6px;
  position: relative;
}
.section-head .head-tag::before {
  content: "";
  position: absolute;
  left: -10px;
  top: 12px;
  width: 2px;
  height: 14px;
  background: var(--warm);
}
.dark .section-head .head-tag::before,
.dark-deep .section-head .head-tag::before,
.dark-grad .section-head .head-tag::before { background: var(--warm); }
.section-head .head-tag .idx {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--steel-3);
  letter-spacing: 0.06em;
}
.dark .section-head .head-tag .idx { color: var(--ivory-faint); }
.section-head .head-tag .lbl {
  font-family: var(--mono);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--warm);
}
.dark .section-head .head-tag .lbl { color: var(--warm); font-weight: 700; }

.section-head .head-body { display: flex; flex-direction: column; gap: 18px; max-width: 720px; }

@media (max-width: 760px) {
  .section-head { grid-template-columns: 1fr; gap: 24px; padding-top: 20px; padding-bottom: 36px; }
}

/* ============== Nav ========================================== */
.nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 80;
  padding: 21px 0;
  transition: background 360ms var(--ease), border-color 360ms var(--ease), backdrop-filter 360ms var(--ease);
  border-bottom: 1px solid transparent;
}
.nav.on-paper { color: var(--steel-1); }
.nav.on-ink { color: var(--ivory); }
.nav.scrolled.on-paper {
  background: rgba(238, 241, 245, 0.86);
  backdrop-filter: saturate(1.4) blur(14px);
  -webkit-backdrop-filter: saturate(1.4) blur(14px);
  border-bottom-color: var(--rule);
}
.nav.scrolled.on-ink {
  background: rgba(14, 17, 22, 0.78);
  backdrop-filter: saturate(1.4) blur(14px);
  -webkit-backdrop-filter: saturate(1.4) blur(14px);
  border-bottom-color: var(--rule-dark);
}
.nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-weight: 500;
  letter-spacing: -0.01em;
  font-size: 15.5px;
  color: inherit;
  flex-shrink: 0;
}
.brand-logo {
  height: 55px;
  width: auto;
  display: block;
  flex-shrink: 0;
  transition: opacity 360ms var(--ease);
}
/* Light (white) logo on ink sections; color logo on paper sections */
.brand-logo-dark { display: none; }
.nav.on-paper .brand-logo-light { display: none; }
.nav.on-paper .brand-logo-dark { display: block; }
.footer .brand-logo { height: 54px; }
.brand .mark {
  width: 22px; height: 22px;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: currentColor;
}
.brand .mark svg { width: 100%; height: 100%; }
.brand .name { letter-spacing: -0.012em; }
.brand .name .ent { color: var(--steel-3); font-weight: 400; }
.dark .brand .name .ent, .nav.on-ink .brand .name .ent { color: var(--ivory-faint); }

.nav-links {
  display: flex;
  gap: 28px;
  font-size: 16px;
  color: inherit;
  opacity: 0.78;
  margin-left: clamp(28px, 4vw, 64px);
  min-width: 0;
  flex-shrink: 1;
}
.nav-links a {
  position: relative;
  white-space: nowrap;
  transition: opacity 220ms var(--ease), color 220ms var(--ease);
}
.nav-links a::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  bottom: -6px;
  height: 1px;
  background: var(--warm);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 240ms var(--ease);
}
.nav-links a:hover::after { transform: scaleX(1); }
.nav-links a:hover { opacity: 1; }

/* ---- Services dropdown ---- */
.nav-item { position: relative; display: inline-flex; align-items: center; }
.nav-dd-trigger {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  transition: opacity 220ms var(--ease);
}
.nav-dd-trigger::after {
  content: "";
  position: absolute;
  left: 0; right: 16px;
  bottom: -6px;
  height: 1px;
  background: var(--warm);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 240ms var(--ease);
}
.nav-item:hover .nav-dd-trigger::after,
.nav-item:focus-within .nav-dd-trigger::after { transform: scaleX(1); }
.nav-item:hover .nav-dd-trigger,
.nav-item:focus-within .nav-dd-trigger { opacity: 1; }
.nav-dd-caret {
  font-size: 12px;
  opacity: 0.7;
  transition: transform 240ms var(--ease);
}
.nav-item:hover .nav-dd-caret,
.nav-item:focus-within .nav-dd-caret { transform: rotate(180deg); }

.nav-dropdown {
  position: absolute;
  top: calc(100% + 14px);
  left: -20px;
  z-index: 95;
  display: flex;
  flex-direction: column;
  min-width: 300px;
  gap: 0;
  padding: 10px 0;
  background: var(--ink);
  border: 1px solid var(--rule-dark-strong);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 200ms var(--ease), transform 200ms var(--ease), visibility 200ms var(--ease);
  pointer-events: none;
  box-shadow: 0 24px 60px -24px rgba(0,0,0,0.6);
}
.nav-dropdown::before {
  /* invisible bridge so the menu doesn't close in the gap above it */
  content: "";
  position: absolute;
  left: 0; right: 0;
  top: -14px;
  height: 14px;
}
.nav-item:hover .nav-dropdown,
.nav-item:focus-within .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.nav-dd-col {
  display: flex;
  flex-direction: column;
  padding: 18px 0 14px;
  border-left: 1px solid var(--rule-dark);
}
.nav-dd-col:first-child { border-left: 0; }
.nav-dd-head {
  font-size: 13.5px;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--ivory);
  opacity: 1;
  padding: 0 24px 4px;
  margin-bottom: 6px;
}
.nav-dd-head::after { display: none; }
.nav-dd-sub {
  font-size: 13px;
  color: var(--ivory-mute);
  opacity: 0.78;
  padding: 8px 24px;
  letter-spacing: -0.005em;
  transition: color 200ms var(--ease), background 200ms var(--ease), opacity 200ms var(--ease), padding-left 200ms var(--ease);
  position: relative;
}
.nav-dd-sub::after { display: none; }
.nav-dd-sub::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
  height: 0;
  background: var(--warm);
  transition: height 200ms var(--ease);
}
.nav-dd-sub:hover {
  opacity: 1;
  color: var(--ivory);
  background: rgba(255,255,255,0.035);
  padding-left: 30px;
}
.nav-dd-sub:hover::before { height: 14px; }

/* Single-column dropdown — uniform links, all same colour */
.nav-dd-link {
  font-size: 16px;
  color: var(--ivory);
  opacity: 1;
  padding: 9px 24px;
  letter-spacing: -0.005em;
  position: relative;
  white-space: nowrap;
  transition: color 200ms var(--ease), background 200ms var(--ease), padding-left 200ms var(--ease), padding-right 200ms var(--ease);
}
.nav-dd-link::after { display: none; }
.nav-dd-link::before {
  content: "";
  position: absolute;
  left: 14px; top: 50%;
  transform: translateY(-50%);
  width: 2px; height: 0;
  background: var(--warm);
  transition: height 200ms var(--ease);
}
.nav-dd-link:hover { color: var(--ivory); background: rgba(255,255,255,0.035); padding-left: 30px; padding-right: 18px; }
.nav-dd-link:hover::before { height: 14px; }
.nav-dd-link[aria-current="page"] { color: var(--ivory); }
.nav-dd-link[aria-current="page"]::before { height: 14px; }
.nav-cta {
  font-size: 13px;
  padding: 8px 14px;
  border: 1px solid currentColor;
  border-radius: 0;
  opacity: 0.85;
  transition: opacity 220ms var(--ease), background 220ms var(--ease), color 220ms var(--ease);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.nav-cta:hover { opacity: 1; }
.nav.on-paper .nav-cta:hover { background: var(--ink); color: var(--paper); }
.nav.on-ink .nav-cta:hover { background: var(--ivory); color: var(--ink); }
.nav-cta .arr { display: inline-block; transition: transform 220ms var(--ease); }
.nav-cta:hover .arr { transform: translateX(3px); }

/* ============== Temporary style picker ====================== */
.style-picker { position: relative; }
.style-trigger {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  background: transparent;
  border: 1px solid currentColor;
  border-color: rgba(255,255,255,0.18);
  color: inherit;
  padding: 7px 10px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: opacity 200ms var(--ease), border-color 200ms var(--ease);
  opacity: 0.78;
}
.nav.on-paper .style-trigger { border-color: var(--rule-strong); }
.style-trigger:hover { opacity: 1; }
.style-trigger .style-pre { opacity: 0.55; text-transform: uppercase; letter-spacing: 0.16em; }
.style-trigger .style-name { letter-spacing: 0.02em; text-transform: none; font-family: var(--sans); font-size: 12px; }
.style-trigger .style-caret { font-size: 12px; opacity: 0.7; }
.style-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 90;
  min-width: 280px;
  background: var(--ink);
  border: 1px solid var(--rule-dark-strong);
  padding: 6px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
}
.nav.on-paper .style-panel {
  background: #fff;
  border-color: var(--rule-strong);
}
.style-panel[hidden] { display: none; }
.style-opt {
  background: transparent;
  border: 0;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: center;
  cursor: pointer;
  color: var(--ivory);
  text-align: left;
  transition: background 180ms var(--ease);
  font-family: var(--sans);
}
.nav.on-paper .style-opt { color: var(--steel-1); }
.style-opt:hover { background: rgba(255,255,255,0.05); }
.nav.on-paper .style-opt:hover { background: rgba(10,26,44,0.04); }
.style-opt.is-active { background: rgba(31,182,224,0.10); }
.nav.on-paper .style-opt.is-active { background: rgba(31,182,224,0.08); }
.style-swatches {
  display: inline-flex;
  border: 1px solid rgba(255,255,255,0.15);
}
.nav.on-paper .style-swatches { border-color: var(--rule-strong); }
.style-swatches i {
  width: 14px; height: 24px; display: inline-block;
}
.style-label {
  display: flex;
  flex-direction: column;
  font-size: 13px;
  letter-spacing: -0.01em;
  font-weight: 500;
}
.style-meta {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  margin-top: 2px;
  opacity: 0.55;
  text-transform: none;
  font-weight: 400;
}

@media (max-width: 1080px) {
  .style-picker .style-pre { display: none; }
}
@media (max-width: 900px) {
  .style-picker { display: none; }
}
.lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  border: 1px solid currentColor;
  border-color: transparent;
}
.lang {
  font-family: var(--mono);
  font-size: 12.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  background: transparent;
  border: 0;
  padding: 8px 10px;
  cursor: pointer;
  color: inherit;
  opacity: 0.5;
  transition: opacity 200ms var(--ease), color 200ms var(--ease);
  position: relative;
}
.lang::after {
  content: "·";
  position: absolute;
  right: -3px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0.4;
  pointer-events: none;
}
.lang:last-child::after { display: none; }
.lang:hover { opacity: 0.85; }
.lang.is-active {
  opacity: 1;
  color: var(--signal);
}
.lang.is-active::after { color: inherit; opacity: 1; }
.nav.on-paper .lang.is-active { color: var(--signal); }
.nav.on-ink   .lang.is-active { color: var(--signal); }

@media (max-width: 1120px) { .nav-links { display: none; } .lang-switch { gap: 0; } .lang { padding: 8px 6px; } }

/* ============== Buttons ====================================== */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 18px 13px 20px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.005em;
  border: 1px solid transparent;
  transition: background 220ms var(--ease), border-color 220ms var(--ease), color 220ms var(--ease);
  min-height: 44px;
  font-family: inherit;
  background: transparent;
  border-radius: 0;
}
.btn .arr { display: inline-block; transition: transform 240ms var(--ease); }
.btn:hover .arr { transform: translateX(3px); }

.btn-ink {
  background: var(--ink);
  color: var(--paper);
}
.btn-ink:hover { background: #1F2532; }

/* Primary CTA — terracotta. The single warm note on the page. */
.btn-paper {
  background: var(--warm);
  color: var(--warm-fg);
}
.btn-paper:hover { background: var(--warm-2); }

.btn-outline-ink {
  border-color: var(--rule-strong);
  color: var(--steel-1);
}
.btn-outline-ink:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }

.btn-outline-paper {
  border-color: var(--rule-dark-strong);
  color: var(--ivory);
}
.btn-outline-paper:hover { background: var(--ivory); color: var(--ink); border-color: var(--ivory); }

.btn:focus-visible, a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 2px solid var(--warm);
  outline-offset: 3px;
}

/* ============== Hero ========================================= */
.hero {
  position: relative;
  background: var(--ink);
  color: var(--ivory);
  overflow: hidden;
  padding-top: 96px;
  padding-bottom: 32px;
  min-height: 58vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* ============== Hero video backdrop ========================= */
.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  opacity: 0.72;
  pointer-events: none;
  filter: saturate(0.65) contrast(1.05) brightness(0.95);
}
.hero-video-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg,
      color-mix(in srgb, var(--ink) 88%, transparent) 0%,
      color-mix(in srgb, var(--ink) 55%, transparent) 42%,
      color-mix(in srgb, var(--ink) 12%, transparent) 70%,
      transparent 100%),
    linear-gradient(180deg,
      color-mix(in srgb, var(--ink-deep) 30%, transparent) 0%,
      color-mix(in srgb, var(--ink-deep) 12%, transparent) 40%,
      color-mix(in srgb, var(--ink-deep) 62%, transparent) 100%);
}
.hero[data-hero-mode="video"] #hero-canvas { display: none; }
.hero[data-hero-mode="waveform"] .hero-video,
.hero[data-hero-mode="axes"] .hero-video,
.hero[data-hero-mode="lattice"] .hero-video,
.hero[data-hero-mode="off"] .hero-video,
.hero[data-hero-mode="waveform"] .hero-video-overlay,
.hero[data-hero-mode="axes"] .hero-video-overlay,
.hero[data-hero-mode="lattice"] .hero-video-overlay,
.hero[data-hero-mode="off"] .hero-video-overlay { display: none; }
.hero[data-hero-mode="off"] #hero-canvas { display: none; }

#hero-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
}

/* fine measured grid overlay (very faint) */
.hero-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 2;
  background-image:
    linear-gradient(to right, rgba(234,237,242,0.025) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(234,237,242,0.025) 1px, transparent 1px);
  background-size: 80px 80px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,0.7), rgba(0,0,0,0.25));
  -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,0.7), rgba(0,0,0,0.25));
}

.hero-inner {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  padding-top: 48px;
  padding-bottom: 0;
}

.hero-head h1 { max-width: none; }
.hero-head .lede { max-width: 60ch; }

.hero-rail {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-top: 18px;
  padding-bottom: 24px;
  min-height: 100%;
  position: relative;
}
.hero-stamp {
  margin-top: auto;
  width: 64px;
  height: auto;
  opacity: 0.18;
  align-self: flex-start;
  pointer-events: none;
  filter: drop-shadow(0 0 0 transparent);
}
.hero-domains {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
}
.hero-domains li {
  display: grid;
  grid-template-columns: 24px 1fr;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--rule-dark);
  color: var(--ivory-mute);
  transition: color 240ms var(--ease);
}
.hero-domains li:first-child { border-top: 0; padding-top: 0; }
.hero-domains li:hover { color: var(--ivory); }
.hero-domains .hd-icon {
  width: 22px;
  height: 22px;
  color: var(--signal);
  display: block;
}
.hero-domains .hd-label {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  white-space: nowrap;
}
@media (max-width: 760px) {
  .hero-rail { display: none; }
}
.hero-meta {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 8px;
  font-family: var(--mono);
  font-size: 12px;
  color: var(--ivory-faint);
  letter-spacing: 0.04em;
}
.hero-meta .row { display: flex; gap: 10px; align-items: center; }
.hero-meta .row .k { width: 70px; color: var(--ivory-mute); }
.hero-meta .row .v { color: var(--ivory); }

.hero h1 {
  color: var(--ivory);
  font-size: clamp(40px, 5.2vw, 68px);
  text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45);
}
.hero h1 .accent { color: var(--warm); }

/* ============== Intro expertise list (Why section) ========== */
.intro-expertise {
  margin-bottom: clamp(40px, 5vw, 64px);
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
@media (max-width: 760px) { .intro-expertise { grid-template-columns: 1fr; gap: 18px; } }
.intro-expertise .ie-label {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--steel-3);
  padding-top: 14px;
}
.intro-expertise .ie-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid var(--rule);
}
@media (max-width: 560px) { .intro-expertise .ie-list { grid-template-columns: 1fr; } }
.intro-expertise .ie-list li {
  display: flex;
  align-items: baseline;
  gap: 14px;
  padding: 14px 4px;
  border-bottom: 1px solid var(--rule);
}
.intro-expertise .ie-list .ie-idx {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--steel-3);
  font-feature-settings: "tnum";
}
.intro-expertise .ie-list a {
  font-size: 15.5px;
  letter-spacing: -0.012em;
  color: var(--ink);
  position: relative;
  transition: color 200ms var(--ease), padding-left 200ms var(--ease);
}
.intro-expertise .ie-list a::before {
  content: "";
  position: absolute;
  left: -14px;
  top: 50%;
  transform: translateY(-50%) scaleX(0);
  transform-origin: left;
  width: 8px;
  height: 2px;
  background: var(--warm);
  transition: transform 200ms var(--ease);
}
.intro-expertise .ie-list a:hover {
  color: var(--warm);
  padding-left: 14px;
}
.intro-expertise .ie-list a:hover::before { transform: translateY(-50%) scaleX(1); }

/* ============== Stats strip (below hero, light) ============= */
.stats-strip {
  background: var(--paper);
  color: var(--steel-1);
}
.stats-strip .wrap { padding-top: clamp(28px, 3.5vw, 44px); padding-bottom: clamp(28px, 3.5vw, 44px); }
.stats-strip-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(20px, 3vw, 48px);
}
@media (max-width: 700px) { .stats-strip-grid { grid-template-columns: 1fr 1fr; row-gap: 28px; } }
.stats-strip .stat-cell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.stats-strip .stat-cell .l {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--steel-3);
}
.stats-strip .stat-cell .v {
  font-size: clamp(24px, 2.4vw, 32px);
  font-weight: 500;
  letter-spacing: -0.028em;
  line-height: 1;
  color: var(--steel-1);
  font-feature-settings: "tnum";
}
.stats-strip .stat-cell .v .acc { color: var(--signal); }

/* Hero kicker — brighter + a faint contrast pill so it reads over the video */
.hero .hero-head .mono-label {
  color: var(--ivory);
  font-size: 12px;
  letter-spacing: 0.2em;
  opacity: 1;
  display: inline-flex;
  align-items: center;
  padding: 7px 13px 7px 11px;
  border: 1px solid var(--rule-dark-strong);
  background: color-mix(in srgb, var(--ink-deep) 50%, transparent);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.hero .hero-head .mono-label .dot {
  width: 7px; height: 7px;
  background: var(--warm);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
}

.hero .lede {
  margin-top: 28px;
  color: var(--ivory);
  max-width: 54ch;
  text-shadow: 0 1px 20px rgba(6, 15, 30, 0.5);
}
.hero-ctas { display: flex; gap: 12px; margin-top: 40px; flex-wrap: wrap; }

.hero-bottom {
  position: relative;
  z-index: 3;
  margin-top: clamp(48px, 6vw, 80px);
  border-top: 1px solid var(--rule-dark);
  padding-top: 28px;
  padding-bottom: 28px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
@media (max-width: 760px) {
  .hero-top { grid-template-columns: 1fr; }
  .hero-meta { flex-direction: row; flex-wrap: wrap; gap: 20px; }
  .hero-meta .row .k { width: auto; }
  .hero-bottom { grid-template-columns: 1fr 1fr; }
}

.hero-stat {
  padding: 6px 24px 6px 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border-left: 1px solid var(--rule-dark);
  padding-left: 20px;
}
.hero-stat:first-child { border-left: 0; padding-left: 0; }
.hero-stat .v {
  font-size: 26px;
  letter-spacing: -0.024em;
  color: var(--ivory);
  font-weight: 500;
  font-feature-settings: "tnum";
}
.hero-stat .v .acc { color: var(--signal); }
.hero-stat .l {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ivory-faint);
}

/* ============== Partners ===================================== */
.partners {
  background: var(--paper);
  padding: 56px 0 60px;
  border-bottom: 1px solid var(--rule);
}
.partners-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
  align-items: center;
}
.partners-inner .mono-label { color: var(--steel-3); text-align: center; }
.partners-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: clamp(28px, 3.5vw, 48px);
  align-items: center;
}
.partner-logo:hover { opacity: 1; }
.partner-logo svg { height: 100%; width: auto; max-width: 160px; }

/* ============== Why us — restrained grid ===================== */
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--rule);
  border-left: 1px solid var(--rule);
}
@media (max-width: 900px) { .why-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .why-grid { grid-template-columns: 1fr; } }
.why-card {
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  padding: 36px 30px 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 320px;
  background: transparent;
  transition: background 280ms var(--ease);
}
.why-card:hover { background: rgba(14,17,22,0.025); }
.why-card .why-head {
  display: flex; align-items: center;
  justify-content: space-between;
  font-family: var(--mono);
  font-size: 12px;
  color: var(--steel-3);
  letter-spacing: 0.06em;
}
.why-card h3 {
  font-size: 20px;
  letter-spacing: -0.02em;
  max-width: 14ch;
  margin-top: 8px;
}
.why-card p { color: var(--steel-2); font-size: 14.5px; line-height: 1.6; max-width: 32ch; }
.why-card .why-icon { width: 28px; height: 28px; color: var(--ink); }

/* When the Why section is dark, switch hairline + text colors */
.dark-deep .why-grid,
.dark-deep .why-card {
  border-color: var(--rule-dark);
}
.dark-deep .why-card:hover { background: rgba(255,255,255,0.03); }
.dark-deep .why-card .why-head { color: var(--ivory-faint); }
.dark-deep .why-card h3 { color: var(--ivory); }
.dark-deep .why-card p { color: var(--ivory-mute); }
.dark-deep .why-card .why-icon { color: var(--ivory); }



/* ============================================================
   Temporary style variants
   ============================================================ */
body[data-style="2"] {
  --ink: #0F1B17;
  --ink-deep: #07110D;
  --ink-2: #15241F;
  --ink-3: #1C3128;
  --paper: #EDF0EC;
  --paper-2: #E3E8E1;
  --bone: #D5DCD2;
  --steel-1: #131F1A;
  --steel-2: #44504A;
  --steel-3: #767F78;
  --ivory: #EDEDE5;
  --ivory-mute: rgba(237, 237, 229, 0.62);
  --ivory-faint: rgba(237, 237, 229, 0.38);
  --signal: #2DBA8A;
  --signal-deep: #1B9A6E;
  --signal-soft: rgba(45, 186, 138, 0.18);
  --warm: #D17B2E;
  --warm-2: #BD6A23;
  --warm-soft: rgba(209, 123, 46, 0.22);
  --warm-fg: #1C0E04;
  --rule: rgba(15, 27, 23, 0.10);
  --rule-strong: rgba(15, 27, 23, 0.18);
  --rule-dark: rgba(237, 237, 229, 0.10);
  --rule-dark-strong: rgba(237, 237, 229, 0.18);
  --sans: "Geist", "Inter", system-ui, sans-serif;
  --mono: "Geist Mono", "JetBrains Mono", ui-monospace, monospace;
}
body[data-style="3"] {
  --ink: #131A2C;
  --ink-deep: #0A1020;
  --ink-2: #1B2238;
  --ink-3: #232C44;
  --paper: #ECEFF3;
  --paper-2: #E1E5EC;
  --bone: #D4D9E1;
  --steel-1: #181F2E;
  --steel-2: #4A5160;
  --steel-3: #7B8294;
  --ivory: #E8EAF0;
  --ivory-mute: rgba(232, 234, 240, 0.62);
  --ivory-faint: rgba(232, 234, 240, 0.38);
  --signal: #6F8FE0;
  --signal-deep: #4F73D0;
  --signal-soft: rgba(111, 143, 224, 0.20);
  --warm: #C9594F;
  --warm-2: #B34B41;
  --warm-soft: rgba(201, 89, 79, 0.22);
  --warm-fg: #1B0A08;
  --rule: rgba(19, 26, 44, 0.10);
  --rule-strong: rgba(19, 26, 44, 0.18);
  --rule-dark: rgba(232, 234, 240, 0.10);
  --rule-dark-strong: rgba(232, 234, 240, 0.18);
  --sans: "DM Sans", "Inter", system-ui, sans-serif;
  --mono: "DM Mono", "JetBrains Mono", ui-monospace, monospace;
}
body[data-style="4"] {
  --ink: #1B1F26;
  --ink-deep: #11141A;
  --ink-2: #242931;
  --ink-3: #2E343E;
  --paper: #F2F0EC;
  --paper-2: #E8E5DD;
  --bone: #DAD5CA;
  --steel-1: #1F2329;
  --steel-2: #50535A;
  --steel-3: #80848C;
  --ivory: #E9E6DE;
  --ivory-mute: rgba(233, 230, 222, 0.62);
  --ivory-faint: rgba(233, 230, 222, 0.38);
  --signal: #5085B0;
  --signal-deep: #3A6B95;
  --signal-soft: rgba(80, 133, 176, 0.20);
  --warm: #B85A30;
  --warm-2: #A24E27;
  --warm-soft: rgba(184, 90, 48, 0.22);
  --warm-fg: #1A0904;
  --rule: rgba(27, 31, 38, 0.10);
  --rule-strong: rgba(27, 31, 38, 0.18);
  --rule-dark: rgba(233, 230, 222, 0.10);
  --rule-dark-strong: rgba(233, 230, 222, 0.18);
  --sans: "Manrope", "Inter", system-ui, sans-serif;
  --mono: "IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;
}
body[data-style="5"] {
  --ink: #0E1A1F;
  --ink-deep: #06121A;
  --ink-2: #15242C;
  --ink-3: #1F313A;
  --paper: #E8EBED;
  --paper-2: #DDE2E4;
  --bone: #CFD5D8;
  --steel-1: #131D22;
  --steel-2: #475259;
  --steel-3: #788289;
  --ivory: #E5EBED;
  --ivory-mute: rgba(229, 235, 237, 0.62);
  --ivory-faint: rgba(229, 235, 237, 0.38);
  --signal: #0E97A0;
  --signal-deep: #067A82;
  --signal-soft: rgba(14, 151, 160, 0.20);
  --warm: #D2693C;
  --warm-2: #BC5A2F;
  --warm-soft: rgba(210, 105, 60, 0.22);
  --warm-fg: #1A0A04;
  --rule: rgba(14, 26, 31, 0.10);
  --rule-strong: rgba(14, 26, 31, 0.18);
  --rule-dark: rgba(229, 235, 237, 0.10);
  --rule-dark-strong: rgba(229, 235, 237, 0.18);
  --sans: "Space Grotesk", "Inter", system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
}

/* 6 — Brutal Lab: high-contrast black + neon yellow + alert red */
body[data-style="6"] {
  --ink: #050505;
  --ink-deep: #000000;
  --ink-2: #0E0E0E;
  --ink-3: #1A1A1A;
  --paper: #F5F5F2;
  --paper-2: #E8E8E2;
  --bone: #D2D2C8;
  --steel-1: #050505;
  --steel-2: #2A2A2A;
  --steel-3: #6E6E6E;
  --ivory: #FFFFFF;
  --ivory-mute: rgba(255, 255, 255, 0.70);
  --ivory-faint: rgba(255, 255, 255, 0.42);
  --signal: #E8FF00;
  --signal-deep: #C2D900;
  --signal-soft: rgba(232, 255, 0, 0.18);
  --warm: #FF3D2E;
  --warm-2: #E62C1E;
  --warm-soft: rgba(255, 61, 46, 0.22);
  --warm-fg: #FFFFFF;
  --rule: rgba(5, 5, 5, 0.20);
  --rule-strong: rgba(5, 5, 5, 0.40);
  --rule-dark: rgba(255, 255, 255, 0.16);
  --rule-dark-strong: rgba(255, 255, 255, 0.32);
  --sans: "Archivo", "Inter", system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
}
body[data-style="6"] h1, body[data-style="6"] h2 {
  font-weight: 700;
  letter-spacing: -0.034em;
}

/* 7 — Magenta Turquoise: deep teal ink, vivid turquoise signal, magenta accent */
body[data-style="7"] {
  --ink: #0A1F22;
  --ink-deep: #051315;
  --ink-2: #12292D;
  --ink-3: #1B373B;
  --paper: #ECF1F0;
  --paper-2: #DFE6E5;
  --bone: #CFD8D7;
  --steel-1: #0F2326;
  --steel-2: #3F5256;
  --steel-3: #708183;
  --ivory: #E8F1F0;
  --ivory-mute: rgba(232, 241, 240, 0.65);
  --ivory-faint: rgba(232, 241, 240, 0.40);
  --signal: #2DD4BF;
  --signal-deep: #14B8A6;
  --signal-soft: rgba(45, 212, 191, 0.20);
  --warm: #F472B6;
  --warm-2: #EC4899;
  --warm-soft: rgba(244, 114, 182, 0.22);
  --warm-fg: #15050E;
  --rule: rgba(10, 31, 34, 0.12);
  --rule-strong: rgba(10, 31, 34, 0.22);
  --rule-dark: rgba(232, 241, 240, 0.12);
  --rule-dark-strong: rgba(232, 241, 240, 0.22);
  --sans: "Funnel Sans", "Inter", system-ui, sans-serif;
  --mono: "IBM Plex Mono", ui-monospace, monospace;
}
body[data-style="7"] h1, body[data-style="7"] h2 {
  font-weight: 600;
  letter-spacing: -0.028em;
}

/* 8 — Neon Clinic: near-black + mint signal + warm orange */
body[data-style="8"] {
  --ink: #0B0F0E;
  --ink-deep: #050807;
  --ink-2: #131816;
  --ink-3: #1C2220;
  --paper: #ECEEED;
  --paper-2: #DFE3E1;
  --bone: #D0D5D2;
  --steel-1: #0F1413;
  --steel-2: #424A47;
  --steel-3: #757D7A;
  --ivory: #E6ECEA;
  --ivory-mute: rgba(230, 236, 234, 0.65);
  --ivory-faint: rgba(230, 236, 234, 0.40);
  --signal: #7CFFB2;
  --signal-deep: #4FE08A;
  --signal-soft: rgba(124, 255, 178, 0.20);
  --warm: #FF7A4D;
  --warm-2: #E66838;
  --warm-soft: rgba(255, 122, 77, 0.20);
  --warm-fg: #0B0F0E;
  --rule: rgba(11, 15, 14, 0.10);
  --rule-strong: rgba(11, 15, 14, 0.20);
  --rule-dark: rgba(230, 236, 234, 0.10);
  --rule-dark-strong: rgba(230, 236, 234, 0.22);
  --sans: "Funnel Display", "Inter", system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
}
body[data-style="8"] h1, body[data-style="8"] h2 {
  font-weight: 600;
  letter-spacing: -0.032em;
}

/* 9 — Lab Lime: deep forest, lab-lime signal, soft yellow accent */
body[data-style="9"] {
  --ink: #0F1A0F;
  --ink-deep: #060F06;
  --ink-2: #16241A;
  --ink-3: #1F3024;
  --paper: #EFF1ED;
  --paper-2: #E2E6DE;
  --bone: #D2D7CC;
  --steel-1: #121E13;
  --steel-2: #424F44;
  --steel-3: #75807A;
  --ivory: #EBF1E8;
  --ivory-mute: rgba(235, 241, 232, 0.65);
  --ivory-faint: rgba(235, 241, 232, 0.40);
  --signal: #86E03B;
  --signal-deep: #65BF22;
  --signal-soft: rgba(134, 224, 59, 0.22);
  --warm: #FFE14D;
  --warm-2: #F5CC1F;
  --warm-soft: rgba(255, 225, 77, 0.22);
  --warm-fg: #0F1A0F;
  --rule: rgba(15, 26, 15, 0.12);
  --rule-strong: rgba(15, 26, 15, 0.22);
  --rule-dark: rgba(235, 241, 232, 0.12);
  --rule-dark-strong: rgba(235, 241, 232, 0.22);
  --sans: "Archivo", "Inter", system-ui, sans-serif;
  --mono: "JetBrains Mono", ui-monospace, monospace;
}
body[data-style="9"] h1, body[data-style="9"] h2 {
  font-weight: 700;
  letter-spacing: -0.032em;
}

/* ============== Embedded waveform canvas ==================== */
.silurus-wave {
  pointer-events: none;
  display: block;
}
.wave-strip-stats {
  position: absolute;
  left: 0; right: 0;
  bottom: 0;
  width: 100%;
  height: 78px;
}
.stats { position: relative; overflow: hidden; }

.wave-strip-cta {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  opacity: 0.7;
}
.cta-final { overflow: hidden; }
.cta-final .cta-inner { position: relative; z-index: 1; }

/* Legacy medical-trace classes — no longer rendered, replaced by canvas waves */
.medical-trace { display: none; }

/* ============== Stats strip ================================== */
.stats {
  background: var(--paper);
  border-top: 1px solid var(--rule);
}
.stats-inner {
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
  padding-top: clamp(40px, 5vw, 64px);
  padding-bottom: clamp(40px, 5vw, 64px);
  align-items: start;
}
.stats-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
@media (max-width: 760px) { .stats-list { grid-template-columns: 1fr 1fr; row-gap: 24px; } }
.stat-big {
  padding-left: 24px;
  border-left: 1px solid var(--rule);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.stat-big:first-child { padding-left: 0; border-left: 0; }
.stat-big .v {
  font-size: clamp(38px, 4.4vw, 56px);
  font-weight: 500;
  letter-spacing: -0.034em;
  line-height: 1;
  font-feature-settings: "tnum";
  color: var(--steel-1);
}
.stat-big .v .suf { color: var(--steel-3); font-size: 0.6em; vertical-align: 0.3em; letter-spacing: 0; }
.stat-big .v .acc { color: var(--signal); }
.stat-big .l {
  font-size: 13px;
  color: var(--steel-2);
  max-width: 22ch;
  margin-top: 4px;
}
.stat-big .lbl {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--steel-3);
}

/* ============== Vanta cells background ===================== */
.has-vanta { position: relative; overflow: hidden; }
.has-vanta > .wrap { position: relative; z-index: 2; }
.vanta-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: auto;
  opacity: 0.85;
  mask-image: radial-gradient(ellipse 100% 90% at 50% 50%, black 65%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 100% 90% at 50% 50%, black 65%, transparent 100%);
}
.has-vanta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(6,15,30,0.65) 0%, rgba(6,15,30,0.35) 30%, rgba(6,15,30,0.35) 70%, rgba(6,15,30,0.75) 100%),
    radial-gradient(ellipse 70% 70% at 25% 35%, rgba(6,15,30,0.75) 0%, rgba(6,15,30,0) 70%);
}

/* ============== Combined trust block (dark) =============== */
.trustblock {
  background: var(--ink);
  color: var(--ivory);
}
.trustblock .partners {
  background: var(--ink);
  border-top: 0;
  border-bottom: 1px solid var(--rule-dark);
}
.trustblock .partners-inner .mono-label { color: var(--ivory-mute); }
.trustblock .partner-logo {
  /* Solid white logos on dark background */
  filter: brightness(0) invert(1);
  opacity: 0.82;
}
.trustblock .partner-logo:hover {
  opacity: 1;
}

.trustblock .testimonials {
  background: var(--ink);
  border: 0;
  padding-top: clamp(56px, 6vw, 88px);
  padding-bottom: clamp(72px, 8vw, 112px);
}
.trustblock .testimonials .section-head { padding-top: 0; }
.trustblock .testimonials h2 { color: var(--ivory); }
.trustblock .testimonials .lbl { color: var(--warm); font-weight: 700; }
.trustblock .testimonials .tst {
  border-right: 1px solid var(--rule-dark);
  border-bottom: 1px solid var(--rule-dark);
}
.trustblock .testimonials .tst:nth-child(even) { border-right: 0; }
@media (max-width: 820px) { .trustblock .testimonials .tst { border-right: 0; } }
.trustblock .testimonials .tst-grid { border-top: 1px solid var(--rule-dark); }
.trustblock .testimonials .tst-quote { color: var(--ivory); }
.trustblock .testimonials .tst-quote::before,
.trustblock .testimonials .tst-quote::after { color: var(--ivory-faint); }
.trustblock .testimonials .tst-foot { border-top-color: var(--rule-dark); }
.trustblock .testimonials .tst-name { color: var(--ivory); }
.trustblock .testimonials .tst-role { color: var(--ivory-faint); }

/* ============== Particles.js section background ============= */
.has-particles { position: relative; overflow: hidden; }
.has-particles > .wrap { position: relative; z-index: 1; }
.particles-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: auto;
  opacity: 1;
  /* fade edges so it dissolves into adjacent sections */
  mask-image: radial-gradient(ellipse 100% 90% at 50% 50%, black 55%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 100% 90% at 50% 50%, black 55%, transparent 100%);
}

/* ============== Lifecycle / V-model ========================= */
.lifecycle {
  background: var(--ink);
  color: var(--ivory);
}
.vfig {
  margin: clamp(28px, 4vw, 56px) 0 0;
  padding: clamp(28px, 4vw, 56px) 0 0;
  border-top: 1px solid var(--rule-dark);
}
.vmodel {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 1.6vw, 22px);
  width: 100%;
}
.vphase {
  display: grid;
  grid-template-columns: 1fr minmax(120px, 200px) 1fr;
  align-items: center;
  gap: clamp(16px, 2vw, 32px);
  padding-inline: calc(var(--d, 0) * clamp(2.4vw, 4vw, 56px));
  transition: padding 320ms var(--ease);
}
.vphase-side {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.vphase-design { text-align: right; align-items: flex-end; }
.vphase-verify { text-align: left;  align-items: flex-start; }
.vphase-name {
  font-size: clamp(14px, 1.05vw, 15.5px);
  letter-spacing: -0.012em;
  color: var(--ivory);
  font-weight: 500;
  line-height: 1.25;
}
.vphase-meta {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--ivory-faint);
  line-height: 1.4;
}
.vphase-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--signal);
}
.vphase-line {
  display: flex;
  align-items: center;
  gap: 4px;
  width: 100%;
}
.vphase-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--signal);
  flex-shrink: 0;
}
.vphase-dash {
  flex: 1;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--signal) 0 5px, transparent 5px 9px);
  opacity: 0.85;
}
.vphase-ref {
  font-family: var(--mono);
  font-size: 9.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--signal);
  opacity: 0.85;
}

.vphase-floor {
  display: flex;
  justify-content: center;
  padding-inline: 0;
}
.vphase-floor-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  text-align: center;
  max-width: 38ch;
}
.vphase-floor-line {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  height: 22px;
}
.vphase-floor-line .vphase-dash.vert {
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--signal) 0 4px, transparent 4px 8px);
  flex: none;
}
.vphase-center { align-items: center; }

.vcap {
  margin-top: clamp(20px, 2vw, 28px);
  padding-top: 18px;
  border-top: 1px solid var(--rule-dark);
  display: flex;
  justify-content: space-between;
  gap: 16px;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ivory-faint);
  flex-wrap: wrap;
}
.vcap .vcap-l::before {
  content: "";
  display: inline-block;
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--signal);
  margin-right: 9px;
  vertical-align: 1px;
}

.vnotes {
  margin-top: clamp(32px, 4vw, 56px);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--rule-dark);
  border-left: 1px solid var(--rule-dark);
}
@media (max-width: 980px) { .vnotes { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .vnotes { grid-template-columns: 1fr; } }
.vnote {
  padding: 26px 24px 28px;
  border-right: 1px solid var(--rule-dark);
  border-bottom: 1px solid var(--rule-dark);
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.vnote .vnum {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--ivory-faint);
  letter-spacing: 0.16em;
}
.vnote h4 { color: var(--ivory); font-size: 15px; margin: 0; letter-spacing: -0.01em; }
.vnote p { color: var(--ivory-mute); font-size: 13.5px; line-height: 1.55; max-width: 34ch; }

/* Responsive: flatten into pair-cards on narrow screens */
@media (max-width: 760px) {
  .vmodel { gap: 14px; }
  .vphase {
    grid-template-columns: 1fr;
    padding-inline: 0 !important;
    gap: 0;
    padding: 0;
    border: 1px solid var(--rule-dark);
    background: rgba(255,255,255,0.015);
  }
  .vphase > .vphase-side {
    padding: 16px 18px;
  }
  .vphase > .vphase-design {
    text-align: left;
    align-items: flex-start;
    border-bottom: 1px solid var(--rule-dark);
  }
  .vphase > .vphase-verify {
    text-align: left;
    align-items: flex-start;
  }
  /* "Design" / "Verify" mini-labels above each side */
  .vphase > .vphase-design::before,
  .vphase > .vphase-verify::before {
    content: "Design";
    font-family: var(--mono);
    font-size: 9.5px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--ivory-faint);
    margin-bottom: 6px;
  }
  .vphase > .vphase-verify::before { content: "Verify"; color: var(--signal); opacity: 0.85; }

  /* The trace link becomes a horizontal divider between design and verify */
  .vphase > .vphase-link {
    flex-direction: row;
    align-self: stretch;
    justify-content: center;
    gap: 12px;
    padding: 8px 18px;
    background: rgba(31, 182, 224, 0.05);
    border-top: 1px solid var(--rule-dark);
    border-bottom: 1px solid var(--rule-dark);
    order: 1; /* push between design and verify */
  }
  .vphase > .vphase-design { order: 0; border-bottom: 0; }
  .vphase > .vphase-verify { order: 2; }
  .vphase-link .vphase-line { flex: 1; max-width: 120px; }
  .vphase-link .vphase-ref { white-space: nowrap; }

  /* Floor row */
  .vphase-floor {
    border: 1px solid var(--signal);
    border-style: dashed;
    background: rgba(31, 182, 224, 0.05);
    padding: 18px 18px 20px;
  }
  .vphase-floor-line { display: none; }
  .vphase-floor-inner { gap: 6px; }
  .vphase-floor-inner::before {
    content: "Bottom of V — Code";
    font-family: var(--mono);
    font-size: 9.5px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--signal);
    margin-bottom: 2px;
  }
}

/* ============== Section background art ====================== */

/* ============== Section background art ====================== */
.has-bg-art { position: relative; overflow: hidden; }
.bg-art {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}
.has-bg-art > .wrap { position: relative; z-index: 1; }
.bg-art-brain {
  background-image: url(/web/content/23468);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: clamp(560px, 56vw, 920px) auto;
  opacity: 0.55;
  mix-blend-mode: multiply;
}
@media (max-width: 900px) {
  .bg-art-brain {
    opacity: 0.18;
    background-size: 140% auto;
    background-position: right top;
  }
}

/* ============== EKG divider strip =========================== */
.ekg-divider {
  background: var(--ink);
  overflow: hidden;
  border-top: 1px solid var(--rule-dark);
  border-bottom: 1px solid var(--rule-dark);
  position: relative;
  height: clamp(180px, 22vw, 260px);
}
.ekg-divider img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 0.85;
}
.ekg-divider::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(10,26,44,0.0) 0%, rgba(10,26,44,0.0) 60%, rgba(10,26,44,0.55) 100%);
}

/* ============== Imaging credentials strip =================== */
.imaging-strip {
  background: #142B47;
  color: var(--ivory);
  overflow: hidden;
  border-top: 0;
  border-bottom: 0;
}
.imaging-inner {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  align-items: stretch;
  gap: 0;
}
@media (max-width: 900px) { .imaging-inner { grid-template-columns: 1fr; } }
.imaging-figure {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  background: #142B47;
  margin: 0;
}
.imaging-figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 1;
  filter: grayscale(0) contrast(1.02) brightness(1.22);
}
/* Duotone tint: ::before lightens darks to ink-deep, ::after multiplies with signal.
   The right/bottom edge fade is a separate normal-blend layer on top so it always
   resolves to clean --ink-deep regardless of what's behind it. */
.imaging-figure::before {
  content: "";
  position: absolute;
  inset: 0;
  background: transparent;
  pointer-events: none;
  z-index: 1;
}
.imaging-figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #1F4A86;
  mix-blend-mode: color;
  pointer-events: none;
  z-index: 2;
  opacity: 1;
}
.imaging-figure .figure-fade {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 3;
  background:
    linear-gradient(90deg, transparent 55%, #142B47 100%),
    linear-gradient(180deg, transparent 70%, color-mix(in srgb, var(--ink-deep) 70%, transparent) 100%);
}
.imaging-figure .figure-meta,
.imaging-figure .figure-corner { z-index: 4; }
.imaging-figure .figure-meta {
  position: absolute;
  top: 22px;
  left: 24px;
  z-index: 2;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ivory-mute);
  display: flex;
  align-items: center;
  gap: 9px;
}
.imaging-figure .figure-meta::before {
  content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--signal);
}
.imaging-figure .figure-corner {
  position: absolute;
  bottom: 22px;
  left: 24px;
  z-index: 2;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--ivory-faint);
}
.imaging-figure .figure-corner .v { color: var(--ivory); }

.imaging-body {
  padding: clamp(40px, 5vw, 72px) clamp(28px, 4vw, 56px);
  display: flex;
  flex-direction: column;
  gap: 22px;
  justify-content: center;
}
.imaging-body .mono-label { color: var(--ivory-mute); }
.imaging-body h2 {
  color: var(--ivory);
  font-size: clamp(24px, 2.4vw, 32px);
  letter-spacing: -0.022em;
  max-width: 18ch;
}
.imaging-body p {
  color: var(--ivory-mute);
  font-size: 14.5px;
  line-height: 1.65;
  max-width: 44ch;
}
.imaging-specs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-top: 10px;
  border-top: 1px solid var(--rule-dark);
}
.imaging-spec {
  padding: 16px 14px 0 0;
  border-left: 1px solid var(--rule-dark);
  padding-left: 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.imaging-spec:nth-child(odd) { border-left: 0; padding-left: 0; }
.imaging-spec .l {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ivory-faint);
}
.imaging-spec .v {
  font-size: 14px;
  color: var(--ivory);
  letter-spacing: -0.01em;
  font-weight: 500;
}

/* ============== Services (dark) ============================== */
.services { background: var(--ink); color: var(--ivory); position: relative; overflow: hidden; }
.services-grid {
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
}
.services-rows { display: flex; flex-direction: column; }
.svc-row {
  display: grid;
  grid-template-columns: minmax(120px, 140px) 1fr minmax(220px, 280px);
  gap: clamp(20px, 3vw, 48px);
  padding: 38px 0 40px;
  border-top: 1px solid var(--rule-dark);
  align-items: start;
}
.svc-row:first-child { border-top: 0; padding-top: 8px; }
.svc-row .svc-idx {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  color: var(--ivory-faint);
  padding-top: 6px;
}
.svc-row h3 {
  color: var(--ivory);
  font-size: clamp(20px, 1.8vw, 24px);
  letter-spacing: -0.02em;
  margin-bottom: 12px;
  max-width: 22ch;
}
.svc-row .svc-body p {
  color: var(--ivory-mute);
  font-size: 14.5px;
  line-height: 1.65;
  max-width: 56ch;
}
.svc-row .svc-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: flex-start;
  padding-top: 8px;
}
.svc-tag {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.04em;
  color: var(--ivory-mute);
  padding: 4px 8px;
  border: 1px solid var(--rule-dark-strong);
  border-radius: 0;
  transition: border-color 200ms var(--ease), color 200ms var(--ease);
}
.svc-tag:hover { border-color: var(--warm); color: var(--ivory); }
@media (max-width: 900px) {
  .services-grid { grid-template-columns: 1fr; }
  .svc-row { grid-template-columns: minmax(80px, 100px) 1fr; }
  .svc-row .svc-tags { grid-column: 1 / -1; margin-top: 6px; padding-left: calc(100px + clamp(20px, 3vw, 48px)); }
}
@media (max-width: 560px) {
  .svc-row .svc-tags { padding-left: 0; }
}

/* Hairline waveform decoration in services */
.services .deco {
  position: absolute;
  right: 0;
  top: 0;
  width: 40%;
  height: 100%;
  pointer-events: none;
  opacity: 0.5;
  mask-image: linear-gradient(to left, black, transparent 90%);
  -webkit-mask-image: linear-gradient(to left, black, transparent 90%);
}

/* ============== Standards (datasheet) ======================== */
.standards {
  background: var(--paper);
  border-top: 0;
  border-bottom: 0;
}
.std-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--rule);
  border-left: 1px solid var(--rule);
}
@media (max-width: 900px) { .std-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 540px) { .std-grid { grid-template-columns: 1fr; } }
.std-cell {
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  padding: 26px 26px 30px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 180px;
  background: transparent;
  transition: background 240ms var(--ease);
}
.std-cell:hover { background: var(--paper-2); }
.std-cell .std-idx {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--steel-3);
  letter-spacing: 0.06em;
}
.std-cell .std-code {
  font-family: var(--sans);
  font-size: 17px;
  font-weight: 500;
  letter-spacing: -0.012em;
  color: var(--ink);
  margin-top: 6px;
}
.std-cell .std-kicker {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--steel-3);
}
.std-cell .std-desc {
  font-size: 13.5px;
  color: var(--steel-2);
  line-height: 1.5;
  margin-top: 4px;
}

/* ============== Engagement (table-like) ====================== */
.eng-table { display: grid; grid-template-columns: 1fr 1fr 1fr; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
@media (max-width: 900px) { .eng-table { grid-template-columns: 1fr; } }
.eng-col {
  padding: 36px 32px 36px;
  border-left: 1px solid var(--rule);
  display: flex; flex-direction: column; gap: 16px;
  position: relative;
  background: rgba(10, 26, 44, 0.025);
  transition: background 240ms var(--ease);
}
.eng-col:hover { background: rgba(10, 26, 44, 0.05); }
/* A and C get a paper veil so the particle network does not read through the text */
.eng-col:not(.featured) { background: color-mix(in srgb, var(--paper) 80%, transparent); }
.eng-col:not(.featured):hover { background: color-mix(in srgb, var(--paper-2) 86%, transparent); }
.eng-col:first-child { border-left: 0; }
@media (max-width: 900px) { .eng-col:first-child { border-left: 0; border-top: 0; } .eng-col { border-left: 0; border-top: 1px solid var(--rule); } }
.eng-col .eng-mark {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--steel-3);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 8px;
}
.eng-col .eng-mark .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--warm); display: inline-block; }
.eng-col.featured {
  background: color-mix(in srgb, var(--ink) 88%, transparent);
  color: var(--ivory);
}
.eng-col.featured h3 { color: var(--ivory); }
.eng-col.featured .eng-mark { color: var(--ivory-faint); }
.eng-col.featured .eng-blurb { color: var(--ivory-mute); }
.eng-col.featured li { color: var(--ivory); }
.eng-col.featured .best-for { color: var(--ivory-faint); border-top-color: var(--rule-dark); }
.eng-col.featured .best-for span { color: var(--ivory-mute); }

.eng-col h3 { font-size: 22px; letter-spacing: -0.02em; }
.eng-col .eng-blurb { color: var(--steel-2); font-size: 14.5px; line-height: 1.55; max-width: 32ch; }
.eng-col ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.eng-col li {
  display: grid;
  grid-template-columns: 18px 1fr;
  font-size: 14px;
  color: var(--steel-1);
  line-height: 1.5;
  padding-top: 12px;
  border-top: 1px solid var(--rule);
}
.eng-col.featured li { border-top-color: var(--rule-dark); }
.eng-col li::before {
  content: "+";
  font-family: var(--mono);
  font-size: 12px;
  color: var(--steel-3);
  line-height: 1.5;
  margin-top: 2px;
}
.eng-col.featured li::before { color: var(--signal); }
.eng-col .best-for {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid var(--rule);
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--steel-3);
}
.eng-col .best-for span {
  display: block;
  font-family: var(--sans);
  font-size: 13px;
  color: var(--steel-2);
  text-transform: none;
  letter-spacing: 0;
  margin-top: 6px;
}

/* ============== Case studies ================================= */
.cases { background: var(--paper); }
.case-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid var(--rule);
}
@media (max-width: 820px) { .case-grid { grid-template-columns: 1fr; } }
.case-card {
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  padding: 36px 32px 32px;
  display: flex; flex-direction: column; gap: 16px;
  background: transparent;
  transition: background 280ms var(--ease);
}
.case-card:nth-child(2n) { border-right: 0; }
@media (max-width: 820px) { .case-card { border-right: 0; } }
/* If the 5th card is alone on its row, span it full width */
.case-card:nth-child(5):last-child {
  grid-column: 1 / -1;
  border-right: 0;
  display: grid;
  grid-template-columns: minmax(280px, 420px) 1fr;
  column-gap: 36px;
  row-gap: 16px;
  align-items: start;
}
.case-card:nth-child(5):last-child .case-head { grid-column: 1 / -1; }
.case-card:nth-child(5):last-child .case-illus {
  grid-row: span 3;
  height: 100%;
  min-height: 260px;
}
.case-card:nth-child(5):last-child .case-meta { grid-column: 1 / -1; }
@media (max-width: 820px) {
  .case-card:nth-child(5):last-child {
    grid-template-columns: 1fr;
  }
  .case-card:nth-child(5):last-child .case-illus {
    grid-row: auto;
    height: 200px;
    min-height: 0;
  }
}
.case-card:hover { background: rgba(14,17,22,0.025); }
.case-card .case-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px;
}
.case-card .case-illus {
  height: 200px;
  width: 100%;
  background: var(--paper-2);
  border: 1px solid var(--rule);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--ink);
  overflow: hidden;
  padding: 12px;
}
.case-card .case-illus svg { width: 100%; height: 100%; display: block; }
/* Accent classes for SVG illustrations — picks up the live signal color */
.case-illus .acc-stroke { stroke: var(--signal); }
.case-illus .acc-fill { fill: var(--signal); }
.case-illus .acc-fill-soft { fill: var(--signal); opacity: 0.18; }
.case-illus .acc-text { fill: var(--signal); }
.case-card h3 { font-size: 21px; max-width: 28ch; line-height: 1.2; letter-spacing: -0.02em; }
.case-card p { color: var(--steel-2); font-size: 14.5px; line-height: 1.6; max-width: 56ch; }
.case-card .case-meta {
  display: flex; gap: 14px;
  border-top: 1px solid var(--rule);
  padding-top: 14px;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--steel-3);
}
.case-card .case-meta .v { color: var(--steel-1); }
.case-card .case-meta .col { display: flex; flex-direction: column; gap: 2px; }

/* ============== Testimonials (dark, restrained) ============== */
.testimonials { background: var(--ink); color: var(--ivory); }
.tst-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid var(--rule-dark);
}
@media (max-width: 820px) { .tst-grid { grid-template-columns: 1fr; } }
.tst {
  padding: 40px 36px;
  border-right: 1px solid var(--rule-dark);
  border-bottom: 1px solid var(--rule-dark);
  display: flex; flex-direction: column; gap: 24px;
}
.tst:nth-child(even) { border-right: 0; }
@media (max-width: 820px) { .tst { border-right: 0; } }
.tst .tst-quote {
  font-size: 17px;
  line-height: 1.55;
  color: var(--ivory);
  letter-spacing: -0.005em;
  font-weight: 400;
}
.tst .tst-quote::before {
  content: "“";
  font-family: var(--sans);
  color: var(--ivory-faint);
  margin-right: 4px;
}
.tst .tst-quote::after {
  content: "”";
  font-family: var(--sans);
  color: var(--ivory-faint);
}
.tst .tst-foot {
  display: flex; flex-direction: column; gap: 4px;
  padding-top: 18px;
  border-top: 1px solid var(--rule-dark);
}
.tst .tst-name { font-size: 14px; color: var(--ivory); font-weight: 500; }
.tst .tst-role { font-size: 13.5px; color: var(--ivory-faint); }

/* ============== Career benefits ============================== */
.careers { background: var(--paper); color: var(--ink); }
.careers .lede { color: var(--steel-2); }
.career-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--rule-dark);
  border-left: 1px solid var(--rule-dark);
}
@media (max-width: 900px) { .career-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 540px) { .career-grid { grid-template-columns: 1fr; } }
.benefit {
  border-right: 1px solid var(--rule-dark);
  border-bottom: 1px solid var(--rule-dark);
  padding: 28px 28px 32px;
  display: flex; flex-direction: column; gap: 10px;
  min-height: 200px;
}
.benefit .idx {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--ivory-faint);
  letter-spacing: 0.06em;
  margin-bottom: 4px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.benefit .idx::before {
  content: "";
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--signal);
  display: inline-block;
}
.benefit h4 { color: var(--ivory); font-size: 15px; }
.benefit p { color: var(--ivory-mute); font-size: 13.5px; line-height: 1.55; max-width: 32ch; }

/* ============== FAQ ========================================== */
.faq { background: var(--paper); }
.faq-inner {
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
  align-items: start;
}
@media (max-width: 760px) { .faq-inner { grid-template-columns: 1fr; gap: 24px; } }
.faq-head { padding-top: 6px; }
.faq-head h2 { max-width: 14ch; margin-top: 8px; }
.faq-head p { color: var(--steel-2); margin-top: 18px; font-size: 14.5px; max-width: 22ch; }

.faq-list { display: flex; flex-direction: column; max-width: 760px; }
details.faq-item {
  border-top: 1px solid var(--rule);
  padding: 22px 0;
}
details.faq-item:last-of-type { border-bottom: 1px solid var(--rule); }
details.faq-item summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  font-size: 16.5px;
  font-weight: 500;
  letter-spacing: -0.01em;
  color: var(--steel-1);
}
details.faq-item summary::-webkit-details-marker { display: none; }
.faq-summary-left {
  display: flex;
  gap: 18px;
  align-items: baseline;
}
.faq-summary-left .num {
  font-family: var(--mono);
  font-size: 12px;
  color: var(--steel-3);
  letter-spacing: 0.06em;
}
.faq-toggle {
  width: 18px; height: 18px;
  flex-shrink: 0;
  position: relative;
  transition: transform 320ms var(--ease);
}
.faq-toggle::before, .faq-toggle::after {
  content: "";
  position: absolute;
  background: var(--steel-1);
  transition: transform 320ms var(--ease);
}
.faq-toggle::before {
  left: 50%; top: 50%; width: 14px; height: 1.5px; transform: translate(-50%, -50%);
}
.faq-toggle::after {
  left: 50%; top: 50%; width: 1.5px; height: 14px; transform: translate(-50%, -50%);
}
details[open] .faq-toggle::after { transform: translate(-50%, -50%) scaleY(0); }
details.faq-item .faq-body {
  margin-top: 14px;
  margin-left: 38px;
  font-size: 14.5px;
  color: var(--steel-2);
  line-height: 1.65;
  max-width: 62ch;
}

/* ============== Final CTA ==================================== */
.cta-final {
  padding: clamp(72px, 9vw, 120px) 0;
  background: var(--ink);
  color: var(--ivory);
  position: relative;
  overflow: hidden;
}
.cta-final .cta-inner {
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
  border-top: 1px solid var(--rule-dark);
  padding-top: clamp(40px, 5vw, 64px);
}
@media (max-width: 760px) { .cta-final .cta-inner { grid-template-columns: 1fr; } }
.cta-final h2 { max-width: 16ch; color: var(--ivory); margin-top: 8px; }
.cta-final p { color: var(--ivory-mute); margin: 18px 0 32px; max-width: 50ch; font-size: 16px; line-height: 1.55; }
.cta-final .btns { display: flex; gap: 12px; flex-wrap: wrap; }

/* ============== Footer ======================================= */
.footer { background: var(--ink-deep); color: var(--ivory-mute); padding: 56px 0 28px; border-top: 1px solid var(--rule-dark); }
.footer-top {
  display: grid;
  grid-template-columns: minmax(180px, 200px) 1fr;
  gap: clamp(28px, 5vw, 72px);
}
.footer-brand .brand { color: var(--ivory); }
.footer-brand .tag { font-family: var(--mono); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ivory-faint); margin-top: 18px; }
.footer-offices { display: flex; gap: 40px; margin-top: 36px; flex-wrap: wrap; }
.footer-office { display: flex; flex-direction: column; gap: 4px; font-size: 13px; max-width: 22ch; }
.footer-office .label { font-family: var(--mono); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ivory-faint); margin-bottom: 4px; }
.footer-office .addr { color: var(--ivory); line-height: 1.55; }
.footer-cols { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
@media (max-width: 760px) { .footer-top { grid-template-columns: 1fr; } .footer-cols { grid-template-columns: 1fr 1fr; } }
.footer-col h5 { font-family: var(--mono); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ivory-faint); margin: 0 0 16px; font-weight: 500; }
.footer-col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.footer-col a { font-size: 13.5px; color: var(--ivory); opacity: 0.78; transition: opacity 220ms var(--ease); }
.footer-col a:hover { opacity: 1; }
.footer-bottom {
  border-top: 1px solid var(--rule-dark);
  margin-top: 56px;
  padding-top: 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  color: var(--ivory-faint);
  flex-wrap: wrap;
  gap: 14px;
  font-family: var(--mono);
}
.footer-bottom a:hover { color: var(--ivory); }
.footer-bottom .links { display: flex; gap: 18px; }

/* ============== Cookie strip (discreet) ====================== */
.cookie {
  position: fixed;
  left: 24px;
  bottom: 24px;
  background: rgba(14, 17, 22, 0.96);
  border: 1px solid var(--rule-dark-strong);
  color: var(--ivory);
  padding: 14px 16px;
  font-size: 12.5px;
  display: flex;
  align-items: center;
  gap: 14px;
  z-index: 70;
  max-width: 460px;
  border-radius: 0;
  font-family: var(--mono);
  letter-spacing: 0.02em;
}
.cookie button {
  background: var(--ivory);
  color: var(--ink);
  border: 0;
  padding: 7px 14px;
  font-size: 12px;
  font-family: var(--mono);
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 500;
}
.cookie .cookie-close {
  background: transparent;
  color: var(--ivory-faint);
  border: 1px solid var(--rule-dark-strong);
  padding: 6px 10px;
}
.cookie.hidden { display: none; }

/* ============== Reveal animations ============================ */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity 350ms var(--ease-soft), transform 350ms var(--ease-soft); }
.reveal.in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .reveal { opacity: 1; transform: none; }
  #hero-canvas { display: none; }
}

/* Tweaks panel positioning */
.tweaks-panel-host { z-index: 90 !important; }

/* ============================================================
   Homepage — light-throughout overrides
   The dark↔light alternation between sections felt jumpy. This
   block keeps Hero (video) + Footer dark, and renders everything
   between them as a layered paper rhythm using --paper, --paper-2
   and --bone for subtle separation.
   ============================================================ */

/* ---- Trust block: partners + testimonials ---- */
.trustblock { background: #FFFFFF; color: var(--steel-1); }
.trustblock .partners {
  background: #FFFFFF;
  border-top: 1px solid var(--rule);
  border-bottom: 0;
  padding: clamp(56px, 7vw, 96px) 0 clamp(28px, 3.5vw, 44px);
}
.trustblock .partners .section-head { padding-top: 0; padding-bottom: clamp(28px, 3.5vw, 44px); }
.trustblock .partners .head-tag .lbl { color: var(--warm); font-weight: 700; }
.trustblock .partners h2 { color: var(--ink); }
.trustblock .partners-inner .mono-label { color: var(--steel-3); }
.trustblock .testimonials { padding-top: 0; padding-bottom: clamp(56px, 7vw, 96px); }
.trustblock .partner-logo {
  filter: none;
  opacity: 0.62;
  transition: opacity 220ms var(--ease);
}
.trustblock .partner-logo:hover { opacity: 1; }

.trustblock .testimonials { background: #FFFFFF; color: var(--steel-1); }
.trustblock .testimonials h2 { color: var(--ink); }
.trustblock .testimonials .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
.trustblock .testimonials .tst {
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.trustblock .testimonials .tst-grid { border-top: 1px solid var(--rule); }
.trustblock .testimonials .tst-quote { color: var(--steel-1); }
.trustblock .testimonials .tst-quote::before,
.trustblock .testimonials .tst-quote::after { color: var(--steel-4); }
.trustblock .testimonials .tst-foot { border-top-color: var(--rule); }
.trustblock .testimonials .tst-name { color: var(--ink); }
.trustblock .testimonials .tst-role { color: var(--steel-3); }

/* ---- Imaging strip: stays dark — full-bleed image, seamless black blend ----
   Text removed by request; section height reduced ~30%. */
.imaging-strip { border-top: 0; border-bottom: 0; }
.imaging-inner { grid-template-columns: 46% 54%; }
.imaging-figure { min-height: 0; height: clamp(220px, 24vw, 320px); }
.imaging-figure .figure-fade {
  background:
    linear-gradient(90deg, transparent 40%, #142B47 100%),
    linear-gradient(180deg, transparent 75%, color-mix(in srgb, #142B47 70%, transparent) 100%);
}

/* ---- Services ---- */
.services { background: var(--paper); color: var(--steel-1); }
.services .head-tag .mono-label,
.services .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
.services h2 { color: var(--ink); }
.services .lede { color: var(--steel-2); }
.svc-row { border-top: 1px solid var(--rule); }
.svc-row .svc-idx { color: var(--steel-3); }
.svc-row h3 { color: var(--ink); }
.svc-row .svc-body p { color: var(--steel-2); }
.svc-tag {
  color: var(--steel-2);
  border-color: var(--rule-strong);
}
.svc-tag:hover { color: var(--ink); border-color: var(--warm); }
.services .deco { opacity: 0.22; }

/* ---- Lifecycle / V-model ---- */
.lifecycle { background: var(--paper-2); color: var(--steel-1); }
.lifecycle .head-tag .mono-label,
.lifecycle .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
.lifecycle h2 { color: var(--ink); }
.lifecycle .lede { color: var(--steel-2); }
.vfig { border-top: 1px solid var(--rule); }
.vphase-name { color: var(--ink); }
.vphase-meta { color: var(--steel-3); }
.lifecycle .vnotes {
  border-top: 1px solid var(--rule);
  border-left: 1px solid var(--rule);
}
.lifecycle .vnote {
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
}
.lifecycle .vnote .vnum { color: var(--steel-3); }
.lifecycle .vnote h4 { color: var(--ink); }
.lifecycle .vnote p { color: var(--steel-2); }
.vcap {
  border-top: 1px solid var(--rule);
  color: var(--steel-3);
}

/* ---- Careers: photo background band, light text over dark veil ---- */
.careers {
  background: var(--ink-deep);
  color: var(--ivory);
  position: relative;
  overflow: hidden;
}
.careers .careers-photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url(/web/content/23660);
  background-repeat: no-repeat;
  background-position: center 28%;
  background-size: cover;
  background-attachment: fixed;
  filter: brightness(1.05) contrast(0.98) saturate(0.92);
}
.careers .careers-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(6,15,30,0.74) 0%, rgba(6,15,30,0.58) 32%, rgba(6,15,30,0.62) 68%, rgba(6,15,30,0.84) 100%),
    radial-gradient(ellipse 85% 85% at 32% 32%, rgba(6,15,30,0.45) 0%, rgba(6,15,30,0.85) 100%);
}
.careers > .wrap { position: relative; z-index: 1; }
.careers .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
.careers h2 { color: var(--ivory); }
.careers .lede { color: var(--ivory); }
.career-grid {
  border-top: 1px solid var(--rule-dark);
  border-left: 1px solid var(--rule-dark);
}
.benefit {
  border-right: 1px solid var(--rule-dark);
  border-bottom: 1px solid var(--rule-dark);
  background: rgba(6,15,30,0.32);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.benefit .idx { color: var(--ivory-faint); }
.benefit h4 { color: var(--ivory); }
.benefit p { color: var(--ivory-mute); }

/* ---- CTA final: light paper with ink text, full-width divider, wave stays ---- */
.cta-final { background: var(--paper); color: var(--steel-1); border-top: 1px solid var(--rule); }
.cta-final .cta-inner { border-top: 0; }
.cta-final .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
.cta-final h2 { color: var(--ink); }
.cta-final p { color: var(--steel-2); }
.cta-final .silurus-wave { mix-blend-mode: multiply; opacity: 0.7; }
/* On light bg, the dark-style outline button needs swap */
.cta-final .btn-paper { background: var(--ink); color: var(--paper); }
.cta-final .btn-paper:hover { background: var(--ink-2); }
.cta-final .btn-outline-paper {
  border-color: var(--rule-strong);
  color: var(--steel-1);
}
.cta-final .btn-outline-paper:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
/* ============================================================
   Capability marquee (B1) — between stats strip and Why
   Light hairline band, slash dividers, RTL infinite scroll,
   hover to pause. No edge fade.
   ============================================================ */
.cap-marquee {
  background: var(--paper-2);
  border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  padding: 24px 0;
  overflow: hidden;
}
.cap-marquee .mq { overflow: hidden; position: relative; width: 100%; }
.cap-marquee .mq-track { display: flex; width: max-content; will-change: transform; }
.cap-marquee .mq-rtl .mq-track { animation: capMqRTL 46s linear infinite; }
.cap-marquee .mq:hover .mq-track { animation-play-state: paused; }
@keyframes capMqRTL { from { transform: translateX(0); } to { transform: translateX(-50%); } }
.cap-marquee .mq-grp { display: flex; }
.cap-marquee .mq-item {
  display: inline-flex; align-items: center; gap: 20px;
  padding: 0 28px; white-space: nowrap;
}
.cap-marquee .mq-item .term {
  font-size: 16px; letter-spacing: -0.012em; color: var(--steel-1); font-weight: 500;
}
.cap-marquee .mq-item .mk { color: var(--steel-3); }
@media (prefers-reduced-motion: reduce) {
  .cap-marquee .mq-rtl .mq-track { animation: none; }
}

/* ============================================================
   Partners — tasteful hairline contact-sheet of logo cells
   Original logo colours, no dimming, separated by thin rules.
   ============================================================ */
.trustblock .partners-row {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  border-top: 1px solid var(--rule);
  border-left: 1px solid var(--rule);
}
@media (max-width: 900px) { .trustblock .partners-row { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 560px) { .trustblock .partners-row { grid-template-columns: repeat(2, 1fr); } }
.trustblock .partner-logo {
  filter: none;
  opacity: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(22px, 2.4vw, 32px) clamp(20px, 2.2vw, 30px);
  min-height: 116px;
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  background: transparent;
  transition: background 240ms var(--ease);
}
.trustblock .partner-logo:hover { background: var(--paper); opacity: 1; }
.trustblock .partner-logo img {
  max-height: 46px;
  max-width: 140px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* ============================================================
   Testimonials — dynamic reveal (slide up + accent line draw),
   in the same family as the medical-services animations.
   ============================================================ */
.trustblock .testimonials .tst {
  position: relative;
  overflow: hidden;
}
.trustblock .testimonials .tst.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 720ms var(--ease-soft), transform 720ms var(--ease-soft);
}
.trustblock .testimonials .tst.reveal.in { opacity: 1; transform: none; }
.trustblock .testimonials .tst:nth-child(2).reveal { transition-delay: 120ms; }

/* cyan traceability line draws across the top of each card */
.trustblock .testimonials .tst::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, var(--signal) 0%, var(--signal) 60%, var(--rule-strong) 100%);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 640ms cubic-bezier(.45, 0, .15, 1);
  z-index: 2;
}
.trustblock .testimonials .tst.in::before { transform: scaleX(1); transition-delay: 260ms; }
.trustblock .testimonials .tst:nth-child(2).in::before { transition-delay: 380ms; }

/* the quote + footer ease in just behind the line */
.trustblock .testimonials .tst .tst-quote,
.trustblock .testimonials .tst .tst-foot {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 600ms var(--ease-soft), transform 600ms var(--ease-soft);
}
.trustblock .testimonials .tst.in .tst-quote { opacity: 1; transform: none; transition-delay: 360ms; }
.trustblock .testimonials .tst.in .tst-foot { opacity: 1; transform: none; transition-delay: 480ms; }
.trustblock .testimonials .tst:nth-child(2).in .tst-quote { transition-delay: 480ms; }
.trustblock .testimonials .tst:nth-child(2).in .tst-foot { transition-delay: 600ms; }

@media (prefers-reduced-motion: reduce) {
  .trustblock .testimonials .tst.reveal,
  .trustblock .testimonials .tst .tst-quote,
  .trustblock .testimonials .tst .tst-foot { opacity: 1; transform: none; }
  .trustblock .testimonials .tst::before { transform: scaleX(1); }
}


/* ============================================================
   Mobile hamburger menu (injected by main.js on small screens)
   ============================================================ */
.nav-burger {
  display: none;
  background: transparent;
  border: 1px solid var(--rule-dark-strong);
  width: 40px; height: 40px;
  padding: 0;
  cursor: pointer;
  color: inherit;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
}
.nav.on-paper .nav-burger { border-color: var(--rule-strong); }
.nav-burger span {
  display: block;
  width: 18px;
  height: 1.5px;
  background: currentColor;
  transition: transform 280ms var(--ease), opacity 200ms var(--ease);
}
.nav-burger.is-open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.nav-burger.is-open span:nth-child(2) { opacity: 0; }
.nav-burger.is-open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

.nav-mobile-panel {
  position: fixed;
  top: 73px; left: 0; right: 0;
  bottom: 0;
  z-index: 75;
  background: var(--ink-deep);
  color: var(--ivory);
  padding: 28px 24px 40px;
  display: none;
  flex-direction: column;
  gap: 0;
  overflow-y: auto;
  border-top: 1px solid var(--rule-dark);
}
.nav-mobile-panel.is-open { display: flex; }
.nav-mobile-panel a {
  color: var(--ivory);
  font-size: 22px;
  letter-spacing: -0.012em;
  padding: 18px 0;
  border-bottom: 1px solid var(--rule-dark);
  display: block;
}
.nav-mobile-panel a:hover { color: var(--warm); }
.nav-mobile-panel .nav-mobile-dd-head {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--ivory-faint);
  padding: 18px 0 8px;
  border-bottom: 0;
}
.nav-mobile-panel .nav-mobile-dd-link {
  font-size: 17px;
  padding-left: 14px;
  color: var(--ivory-mute);
  border-bottom: 1px solid var(--rule-dark);
  padding-top: 14px;
  padding-bottom: 14px;
}
.nav-mobile-panel .lang-switch {
  margin-top: 28px;
  gap: 6px;
  align-self: flex-start;
}
.nav-mobile-panel .lang {
  font-size: 13px;
  padding: 10px 14px;
  border: 1px solid var(--rule-dark-strong);
  color: var(--ivory-mute);
  opacity: 1;
}
.nav-mobile-panel .lang.is-active {
  color: var(--ink-deep);
  background: var(--signal);
  border-color: var(--signal);
}
.nav-mobile-panel .lang::after { display: none; }

body.nav-locked { overflow: hidden; }

@media (max-width: 1120px) {
  .nav-burger { display: inline-flex; }
  /* hide desktop language switch on mobile so only the burger panel one shows */
  .nav-right > .lang-switch { display: none; }
  /* style picker is already hidden on mobile via existing rule */
}


/* Mobile menu — accordion dropdown */
.nav-mobile-panel .nav-mobile-dd-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  background: transparent;
  border: 0;
  padding: 18px 0;
  border-bottom: 1px solid var(--rule-dark);
  color: var(--ivory);
  font-family: inherit;
  font-size: 22px;
  letter-spacing: -0.012em;
  cursor: pointer;
  text-align: left;
}
.nav-mobile-panel .nav-mobile-dd-toggle .caret {
  font-family: var(--mono);
  font-size: 22px;
  color: var(--ivory-mute);
  width: 22px;
  text-align: center;
  transition: color 200ms var(--ease);
}
.nav-mobile-panel .nav-mobile-dd-toggle.is-open .caret { color: var(--warm); }
.nav-mobile-panel .nav-mobile-dd-sub {
  display: none;
  flex-direction: column;
  padding: 6px 0 14px 16px;
  border-bottom: 1px solid var(--rule-dark);
}
.nav-mobile-panel .nav-mobile-dd-sub.is-open { display: flex; }
.nav-mobile-panel .nav-mobile-dd-sub .nav-mobile-dd-link {
  font-size: 16px;
  color: var(--ivory-mute);
  padding: 12px 0;
  border-bottom: 1px solid var(--rule-dark);
  padding-left: 0;
}
.nav-mobile-panel .nav-mobile-dd-sub .nav-mobile-dd-link:last-child { border-bottom: 0; }
.nav-mobile-panel .nav-mobile-dd-sub .nav-mobile-dd-link:hover { color: var(--warm); }


/* ============================================================
   WHY cards — distinct elevated cards (overrides grid hairline)
   ============================================================ */
.why-grid {
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(16px, 1.6vw, 24px);
  border-top: 0;
  border-left: 0;
  padding-top: 4px;
}
.why-card {
  border: 1px solid var(--rule-strong);
  border-right: 1px solid var(--rule-strong);
  border-bottom: 1px solid var(--rule-strong);
  background: #FFFFFF;
  padding: 30px 26px 32px;
  border-radius: 0;
  box-shadow:
    0 1px 2px rgba(10, 26, 44, 0.04),
    0 6px 18px -10px rgba(10, 26, 44, 0.10);
  transition:
    transform 320ms var(--ease),
    box-shadow 320ms var(--ease),
    border-color 320ms var(--ease),
    background 280ms var(--ease);
  position: relative;
}
.why-card:hover {
  background: #FFFFFF;
  border-color: rgba(10, 26, 44, 0.22);
  transform: translateY(-3px);
  box-shadow:
    0 2px 4px rgba(10, 26, 44, 0.06),
    0 18px 38px -12px rgba(10, 26, 44, 0.18);
}
.why-card .why-icon { color: var(--ink); }
.why-card h3 { color: var(--ink); }
.why-card p { color: var(--steel-2); }

/* Dark variant (when section is dark) */
.dark-deep .why-card,
.paper .why-card { /* paper section keeps light card */ background: #FFFFFF; }
.dark-deep .why-card {
  background: rgba(255, 255, 255, 0.025);
  border-color: var(--rule-dark-strong);
  box-shadow:
    0 1px 2px rgba(0, 0, 0, 0.20),
    0 10px 26px -10px rgba(0, 0, 0, 0.45);
}
.dark-deep .why-card:hover {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(234, 237, 242, 0.30);
  box-shadow:
    0 2px 4px rgba(0, 0, 0, 0.28),
    0 22px 44px -14px rgba(0, 0, 0, 0.55);
}

@media (max-width: 900px) {
  .why-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
  .why-grid { grid-template-columns: 1fr; gap: 14px; }
}


/* ============================================================
   WHY cards — single offset back layer (bottom-right)
   Same styling as the front card, just translated 10px right
   and down so it peeks out only on the right and bottom edges.
   ============================================================ */
.why-grid { overflow: visible; }
.why-card {
  position: relative;
  isolation: isolate;
}
.why-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #FFFFFF;
  border: 1px solid var(--rule-strong);
  transform: translate(-2px, -2px);
  transition: transform 360ms var(--ease);
}
.why-card:hover::after {
  transform: translate(-4px, -4px);
}

@media (max-width: 560px) {
  .why-card::after { display: none; }
}




/* Front (visible) why-card — cyan signal background */
.paper .why-card, .why-card { background: var(--paper-2); border-color: var(--rule-strong); }
.paper .why-card:hover, .why-card:hover { background: var(--bone); border-color: var(--rule-strong); }
.paper .why-card h3, .why-card h3 { color: var(--ink); }
.paper .why-card p, .why-card p { color: var(--ink-2); }
.paper .why-card .why-icon, .why-card .why-icon { color: var(--ink); }
.paper .why-card .why-head, .why-card .why-head, .paper .why-card .why-head span, .why-card .why-head span { color: var(--ink-3); }


/* ============================================================
   Partners — separated cells, no grid hairlines, no 3D
   Just background + soft gap between them
   ============================================================ */
.trustblock .partners-row {
  border-top: 0;
  border-left: 0;
  gap: clamp(12px, 1.3vw, 18px);
}
.trustblock .partner-logo {
  border: 1px solid var(--rule);
  background: #FFFFFF;
  transition: background 240ms var(--ease), border-color 240ms var(--ease);
}
.trustblock .partner-logo:hover {
  background: var(--paper-2);
  border-color: var(--rule-strong);
}


/* Testimonials — gap between the two cards */
.trustblock .testimonials .tst-grid {
  column-gap: clamp(10px, 1.2vw, 15px);
  border-top: 0;
}
.trustblock .testimonials .tst {
  border-right: 1px solid var(--rule);
  border-left: 1px solid var(--rule);
  border-top: 1px solid var(--rule);
}
.trustblock .testimonials .tst:nth-child(even) {
  border-right: 1px solid var(--rule);
}


/* ============================================================
   Standards cards — match WHY cards: gap, cyan, 3D back layer
   ============================================================ */
.std-grid {
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(16px, 1.6vw, 24px);
  border-top: 0;
  border-left: 0;
  overflow: visible;
}
.std-cell {
  position: relative;
  isolation: isolate;
  background: var(--paper-2);
  border: 1px solid var(--rule-strong);
  border-right: 1px solid var(--rule-strong);
  border-bottom: 1px solid var(--rule-strong);
  transition: transform 320ms var(--ease), background 280ms var(--ease);
}
.std-cell:hover {
  background: var(--bone);
  border-color: var(--rule-strong);
}
.std-cell::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #FFFFFF;
  border: 1px solid var(--rule-strong);
  transform: translate(-2px, -2px);
  transition: transform 360ms var(--ease);
}
.std-cell:hover::after { transform: translate(-4px, -4px); }

.std-cell .std-idx { color: var(--ink-3); }
.std-cell .std-code { color: var(--ink); }
.std-cell .std-kicker { color: var(--ink-3); }
.std-cell .std-desc { color: var(--ink-2); }

@media (max-width: 900px) { .std-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 540px) {
  .std-grid { grid-template-columns: 1fr; }
  .std-cell::after { display: none; }
}


.section-head .head-tag .lbl { font-size: 14px; font-weight: 700; }


/* Bump all small mono uppercase labels to 12px for parity */
.hero-stat .l,
.mono-label,
.stats-strip .stat-cell .l,
.imaging-spec .l,
.std-cell .std-kicker,
.std-cell .std-idx,
.benefit .idx,
.benefit-item .idx,
.svc-row .svc-idx,
.case-card .case-meta,
.vphase-meta,
.vnote .vnum,
.footer-office .label,
.footer-col h5 { font-size: 12px; }


/* ============================================================
   Services — each row as a clean separated horizontal card
   ============================================================ */
.services .services-rows {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 1.5vw, 22px);
}
.services .svc-row {
  border-top: 0;
  border: 1px solid var(--rule);
  background: #FFFFFF;
  padding: clamp(24px, 2.5vw, 36px) clamp(24px, 2.5vw, 36px);
  transition: border-color 240ms var(--ease), background 240ms var(--ease);
}
.services .svc-row:first-child { padding-top: clamp(24px, 2.5vw, 36px); }
.services .svc-row:hover {
  border-color: var(--rule-strong);
  background: var(--paper-2);
}


/* ============================================================
   Homepage Services — stack vertically as separated cards
   (overrides the 2-col grid hairline layout)
   ============================================================ */
.svc-home-grid {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 1.5vw, 22px);
  border-top: 0;
  border-left: 0;
}
.svc-home-card {
  border: 1px solid var(--rule);
  border-right: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule);
  background: #FFFFFF;
  padding: clamp(24px, 2.5vw, 36px) clamp(24px, 2.5vw, 36px);
  transition: border-color 240ms var(--ease), background 240ms var(--ease);
}
.svc-home-card:hover {
  border-color: var(--rule-strong);
  background: var(--paper-2);
}


/* ============================================================
   Homepage Services — editorial ledger rows
   Full-width rows, hairline rule between, generous breathing,
   number + 'More details' on the same baseline, big title,
   warm left-edge bar slides in on hover.
   ============================================================ */
.svc-home-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-top: 1px solid var(--rule-strong);
  border-left: 0;
}
.svc-home-card {
  display: block;
  position: relative;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--rule-strong);
  padding: clamp(32px, 3.5vw, 52px) clamp(12px, 2vw, 32px) clamp(36px, 3.8vw, 54px);
  grid-template-columns: none;
  gap: 0;
  box-shadow: inset 0 0 0 0 var(--warm);
  transition: background 320ms var(--ease), padding-left 320ms var(--ease), box-shadow 320ms var(--ease);
}
.svc-home-card:hover {
  background: rgba(10, 26, 44, 0.025);
  padding-left: clamp(28px, 3vw, 52px);
  box-shadow: inset 2px 0 0 0 var(--warm);
}
/* Drop the decorative SVG visual entirely for a cleaner read */
.svc-home-card .sh-visual { display: none; }

.svc-home-card .sh-body {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: clamp(24px, 2.4vw, 48px);
  row-gap: clamp(10px, 1vw, 18px);
  grid-template-areas:
    "idx   more"
    "title more"
    "blurb blurb"
    "tags  tags";
  align-items: start;
}
.svc-home-card .sh-idx {
  grid-area: idx;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--steel-3);
}
.svc-home-card h3 {
  grid-area: title;
  font-size: clamp(22px, 2.2vw, 30px);
  font-weight: 500;
  letter-spacing: -0.022em;
  line-height: 1.15;
  color: var(--ink);
  max-width: 30ch;
  margin-top: 2px;
  transition: color 240ms var(--ease);
}
.svc-home-card:hover h3 { color: var(--warm-2); }

.svc-home-card p {
  grid-area: blurb;
  font-size: 15px;
  line-height: 1.7;
  color: var(--steel-2);
  max-width: 68ch;
  margin-top: 6px;
}
.svc-home-card .sh-tags {
  grid-area: tags;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-top: 6px;
}
.svc-home-card .sh-tags span {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--steel-2);
  border: 1px solid var(--rule-strong);
  padding: 5px 10px;
}
.svc-home-card .sh-more {
  grid-area: more;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--steel-2);
  display: inline-flex;
  align-items: center;
  gap: 10px;
  align-self: start;
  margin-top: 4px;
  white-space: nowrap;
  transition: color 240ms var(--ease);
}
.svc-home-card .sh-more .arr { transition: transform 280ms var(--ease); }
.svc-home-card:hover .sh-more { color: var(--warm); }
.svc-home-card:hover .sh-more .arr { transform: translateX(8px); }

/* Mobile — collapse the two-column header to single stack */
@media (max-width: 640px) {
  .svc-home-card { padding-left: 4px; padding-right: 4px; }
  .svc-home-card:hover { padding-left: 16px; }
  .svc-home-card .sh-body {
    grid-template-columns: 1fr;
    grid-template-areas:
      "idx"
      "title"
      "blurb"
      "tags"
      "more";
  }
  .svc-home-card h3 { max-width: 100%; }
}


/* Restore the decorative SVG visual on the editorial ledger row.
   Position it as a small anchor block on the left side. */
.svc-home-card { display: grid; grid-template-columns: clamp(80px, 9vw, 120px) 1fr; column-gap: clamp(20px, 2.5vw, 44px); align-items: start; }
.svc-home-card .sh-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  max-width: 120px;
  border: 1px solid var(--rule);
  background: #FFFFFF;
  color: var(--steel-2);
  transition: color 240ms var(--ease), border-color 240ms var(--ease), background 240ms var(--ease);
}
.svc-home-card .sh-visual svg { width: 70%; height: auto; }
.svc-home-card:hover .sh-visual {
  color: var(--ink);
  border-color: var(--rule-strong);
  background: var(--paper-2);
}

/* On narrow screens hide the visual to keep the layout clean */
@media (max-width: 640px) {
  .svc-home-card { grid-template-columns: 1fr; }
  .svc-home-card .sh-visual { display: none; }
}


/* ============================================================
   Homepage Services — match section-head proportions
   Wider left column, paper bg behind SVG, animated cyan strokes
   ============================================================ */
.svc-home-card {
  grid-template-columns: minmax(180px, 200px) 1fr !important;
  column-gap: clamp(28px, 5vw, 72px) !important;
}
.svc-home-card .sh-visual {
  display: flex !important;
  aspect-ratio: 1 / 1;
  max-width: 200px;
  width: 100%;
  border: 1px solid var(--rule);
  background: var(--paper-2);
  color: var(--steel-2);
  position: relative;
  overflow: hidden;
}
.svc-home-card .sh-visual svg { width: 78%; height: auto; }
/* Cyan accents inside the SVG */
.svc-home-card .sh-visual .acc-stroke { stroke: var(--signal); }
.svc-home-card .sh-visual .acc-fill { fill: var(--signal); }

/* Animated draw-in for primary lines on hover */
.svc-home-card .sh-visual svg polyline,
.svc-home-card .sh-visual svg line,
.svc-home-card .sh-visual svg path {
  stroke-dasharray: 600;
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 1100ms var(--ease), stroke 320ms var(--ease);
}
.svc-home-card:hover .sh-visual svg polyline,
.svc-home-card:hover .sh-visual svg line,
.svc-home-card:hover .sh-visual svg path {
  stroke-dashoffset: 600;
  animation: svcStrokeDraw 1200ms var(--ease) forwards;
}
@keyframes svcStrokeDraw {
  0%   { stroke-dashoffset: 600; }
  100% { stroke-dashoffset: 0; }
}
/* On hover, recolor visual + accent fill pulse */
.svc-home-card:hover .sh-visual {
  background: var(--paper);
  border-color: var(--rule-strong);
  color: var(--signal-deep);
}
.svc-home-card:hover .sh-visual .acc-fill {
  fill: var(--warm);
}

@media (max-width: 640px) {
  .svc-home-card {
    grid-template-columns: 1fr !important;
  }
  .svc-home-card .sh-visual { display: none !important; }
}


/* Testimonial cards — 35% white veil so they read on the particles bg */
.trustblock .testimonials .tst {
  background: rgba(255, 255, 255, 0.40);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}


/* Careers — lighter overlay so the team photo shows through */
.careers .careers-photo::after {
  background:
    linear-gradient(180deg, rgba(6,15,30,0.45) 0%, rgba(6,15,30,0.28) 32%, rgba(6,15,30,0.32) 68%, rgba(6,15,30,0.55) 100%),
    radial-gradient(ellipse 85% 85% at 32% 32%, rgba(6,15,30,0.18) 0%, rgba(6,15,30,0.52) 100%);
}
.careers .benefit { background: transparent; }


/* Careers benefits — brighter text, hide numbers */
.careers .benefit .idx { display: none; }
.careers .benefit h4 { color: #FFFFFF; }
.careers .benefit p { color: rgba(255, 255, 255, 0.92); }


/* Trustblock — single continuous particles network across partners + testimonials */
.trustblock { background: #FFFFFF; position: relative; overflow: hidden; }
.trustblock > .partners,
.trustblock > .testimonials { background: transparent; }
.trustblock .partners, .trustblock .testimonials { position: relative; pointer-events: none; }


/* Partner cards — solid bg + let particles grab pass through */
.trustblock .partner-logo {
  background: #FFFFFF;
}
.trustblock .partner-logo:hover {
  background: var(--paper-2);
}


.svc-home-card .sh-idx { display: none; }


.svc-home-card h3 { font-size: clamp(19px, 1.8vw, 24px); }


/* Sign in / Sign out auth link after lang-switch */
.nav-right > .nav-auth {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 8px 14px;
  border: 1px solid currentColor;
  border-color: rgba(255, 255, 255, 0.22);
  color: inherit;
  opacity: 0.82;
  transition: opacity 200ms var(--ease), background 200ms var(--ease), color 200ms var(--ease), border-color 200ms var(--ease);
  white-space: nowrap;
}
.nav.on-paper .nav-right > .nav-auth { border-color: var(--rule-strong); }
.nav-right > .nav-auth:hover { opacity: 1; }
.nav.on-paper .nav-right > .nav-auth:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.nav.on-ink .nav-right > .nav-auth:hover { background: var(--ivory); color: var(--ink); border-color: var(--ivory); }

@media (max-width: 1120px) { .nav-right > .nav-auth { display: none; } }


/* ============================================================
   Collapsed language dropdown + Time Tracker auth chip
   ============================================================ */
.lang-switch-dd { position: relative; border: 0; }
.lang-trigger {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: transparent;
  border: 1px solid currentColor;
  border-color: rgba(255, 255, 255, 0.22);
  color: inherit;
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 8px 10px 8px 12px;
  cursor: pointer;
  opacity: 0.82;
  transition: opacity 200ms var(--ease), border-color 200ms var(--ease);
}
.nav.on-paper .lang-trigger { border-color: var(--rule-strong); }
.lang-trigger:hover { opacity: 1; }
.lang-trigger .lang-current { color: var(--signal); font-weight: 500; }
.lang-trigger .lang-caret { font-size: 10px; opacity: 0.7; transition: transform 240ms var(--ease); }
.lang-switch-dd.is-open .lang-trigger .lang-caret { transform: rotate(180deg); }

.lang-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 95;
  display: flex;
  flex-direction: column;
  min-width: 90px;
  background: var(--ink);
  border: 1px solid var(--rule-dark-strong);
  padding: 6px 0;
  box-shadow: 0 18px 40px rgba(0,0,0,0.35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity 200ms var(--ease), transform 200ms var(--ease), visibility 200ms var(--ease);
}
.nav.on-paper .lang-panel { background: #FFFFFF; border-color: var(--rule-strong); }
.lang-switch-dd.is-open .lang-panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.lang-panel[hidden] { display: flex; }
.lang-panel .lang-opt {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ivory);
  padding: 9px 18px;
  display: block;
  transition: background 180ms var(--ease), color 180ms var(--ease), padding-left 180ms var(--ease);
}
.nav.on-paper .lang-panel .lang-opt { color: var(--steel-1); }
.lang-panel .lang-opt:hover {
  background: rgba(255, 255, 255, 0.06);
  color: var(--signal);
  padding-left: 22px;
}
.nav.on-paper .lang-panel .lang-opt:hover { background: rgba(10, 26, 44, 0.04); }
.lang-panel .lang-opt.is-active { color: var(--signal); }

/* Time Tracker chip — sits between lang-switcher and Sign in/out */
.nav-right > .nav-tracker {
  font-family: var(--mono);
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 8px 14px;
  border: 1px solid var(--signal);
  color: var(--signal);
  background: rgba(31, 182, 224, 0.08);
  transition: background 200ms var(--ease), color 200ms var(--ease), border-color 200ms var(--ease);
  white-space: nowrap;
}
.nav-right > .nav-tracker:hover {
  background: var(--signal);
  color: var(--ink);
}
.nav-right > .nav-tracker[aria-current="page"] {
  background: var(--signal);
  color: var(--ink);
}

@media (max-width: 1120px) {
  .nav-right > .nav-tracker { display: none; }
}




/* ============================================================
   About page — full-page light VANTA bg + light hero theme
   ============================================================ */
body.sandbox-cells-page #vanta-about-bg { position: absolute; top: 0; left: 0; right: 0; bottom: 0; pointer-events: none; }
body.sandbox-cells-page { background: transparent; }

/* All sections on About page become transparent so the bg shows through */
body.sandbox-cells-page section { background: transparent !important; }
body.sandbox-cells-page section::before,
body.sandbox-cells-page section::after { background: transparent !important; }
body.sandbox-cells-page .footer { background: var(--ink-deep); }

/* Hero turns light theme */
body.sandbox-cells-page .hero,
body.sandbox-cells-page .hero.hero-inner-page { background: transparent; color: var(--steel-1); }
body.sandbox-cells-page .hero::before { background: none !important; }
body.sandbox-cells-page .hero h1 { color: var(--ink); text-shadow: none; }
body.sandbox-cells-page .hero h1 .accent { color: var(--warm); }
body.sandbox-cells-page .hero .lede,
body.sandbox-cells-page .hero .hero-head .lede { color: var(--steel-2); text-shadow: none; }
body.sandbox-cells-page .hero .hero-kicker {
  background: rgba(255, 255, 255, 0.65);
  color: var(--ink);
  border-color: var(--rule-strong);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
body.sandbox-cells-page .hero .hero-kicker .dot { background: var(--warm); }
body.sandbox-cells-page .hero .hero-grid {
  background-image:
    linear-gradient(to right, rgba(10, 26, 44, 0.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(10, 26, 44, 0.04) 1px, transparent 1px);
}



/* Content sections — semi-transparent paper veil so text reads on the cells bg */
body.sandbox-cells-page .story,
body.sandbox-cells-page section.section-pad-sm,
body.sandbox-cells-page section.section-pad {
  position: relative;
}
body.sandbox-cells-page .story::after,
body.sandbox-cells-page section.section-pad-sm:not(.cta-final)::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.55);
  backdrop-filter: blur(2px);
  -webkit-backdrop-filter: blur(2px);
  z-index: -1;
}

/* CTA at bottom — keep dark ink card on top of the bg */
body.sandbox-cells-page .cta-final { background: rgba(10, 26, 44, 0.94); color: var(--ivory); }
body.sandbox-cells-page .cta-final h2 { color: var(--ivory); }
body.sandbox-cells-page .cta-final p { color: var(--ivory-mute); }


/* About page — kill all hero overlays so VANTA cells show clean */
body.sandbox-cells-page .hero::before,
body.sandbox-cells-page .hero.hero-inner-page::before,
body.sandbox-cells-page .hero::after,
body.sandbox-cells-page .hero.hero-inner-page::after { background: none !important; display: none !important; }
body.sandbox-cells-page .hero .hero-video-overlay,
body.sandbox-cells-page .hero #hero-canvas,
body.sandbox-cells-page .hero .hero-video,
body.sandbox-cells-page .hero .vanta-bg { display: none !important; }
body.sandbox-cells-page .hero { background: transparent !important; }


/* Vanta needs to sit ABOVE the body bg paint, with content above it */
body.sandbox-cells-page #vanta-about-bg {
  z-index: 0;
}
body.sandbox-cells-page,
body.sandbox-cells-page html { background: transparent !important; }
body.sandbox-cells-page section,
body.sandbox-cells-page footer { position: relative; z-index: 1; }
body.sandbox-cells-page header.nav { position: fixed; z-index: 80; }


/* 75% white veil above the vanta cells, below the content */
body.sandbox-cells-page::after { content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255, 255, 255, 0.65); z-index: 0; pointer-events: none; }


/* About page CTA — solid light bg, no cells visible */
body.sandbox-cells-page .cta-final {
  background: var(--paper) !important;
  color: var(--steel-1);
}
body.sandbox-cells-page .cta-final h2 { color: var(--ink); }
body.sandbox-cells-page .cta-final p { color: var(--steel-2); }
body.sandbox-cells-page .cta-final .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }

body.sandbox-cells-page { position: relative; min-height: 100vh; }


.nav { padding: 11px 0; }


/* About page — at top of page, nav is transparent with DARK text/color logo.
   When scrolled, falls back to default on-ink dark backdrop + white text. */
body.sandbox-cells-page header.nav.on-ink:not(.scrolled) {
  color: var(--steel-1);
  background: transparent;
}
body.sandbox-cells-page header.nav.on-ink:not(.scrolled) .brand-logo-light { display: none; }
body.sandbox-cells-page header.nav.on-ink:not(.scrolled) .brand-logo-dark { display: block; }
body.sandbox-cells-page header.nav.on-ink:not(.scrolled) .lang-trigger,
body.sandbox-cells-page header.nav.on-ink:not(.scrolled) .nav-auth { border-color: var(--rule-strong); }
body.sandbox-cells-page header.nav.on-ink:not(.scrolled) .nav-auth:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }


/* About hero kicker — back to dark variant (like homepage hero kicker) */
body.sandbox-cells-page .hero .hero-kicker {
  background: color-mix(in srgb, var(--ink-deep) 55%, transparent);
  color: var(--ivory);
  border-color: var(--rule-dark-strong);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
body.sandbox-cells-page .hero .hero-kicker .dot { background: var(--warm); }


/* News page — lighter veil so fog texture shows */
body.sandbox-news-page::after { display: none !important; }


/* ============================================================
   News items — match WHY card family: gray front + offset back
   No cyan accents. Stacked paper effect like .why-card.
   ============================================================ */
body.sandbox-news-page .news-list {
  display: flex;
  flex-direction: column;
  gap: clamp(20px, 2.4vw, 36px);
  overflow: visible;
}
body.sandbox-news-page .news-item {
  position: relative;
  isolation: isolate;
  background: var(--paper-2);
  border: 1px solid var(--rule-strong);
  padding: clamp(28px, 3vw, 44px) clamp(24px, 2.5vw, 40px);
  box-shadow: none;
  transition: transform 320ms var(--ease), background 280ms var(--ease);
  color: var(--steel-1);
}
body.sandbox-news-page .news-item::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #FFFFFF;
  border: 1px solid var(--rule-strong);
  transform: translate(-2px, -2px);
  transition: transform 360ms var(--ease);
}
body.sandbox-news-page .news-item:hover {
  transform: translate(-2px, -2px);
  background: var(--bone);
}
body.sandbox-news-page .news-item:hover::after {
  transform: translate(-4px, -4px);
}

body.sandbox-news-page .news-item .news-figure {
  margin: 0;
  border: 1px solid var(--rule);
  overflow: hidden;
}
body.sandbox-news-page .news-item .news-figure img {
  display: block; width: 100%; height: auto;
  transition: transform 600ms var(--ease), filter 320ms var(--ease);
  filter: grayscale(0.20);
}
body.sandbox-news-page .news-item:hover .news-figure img {
  transform: scale(1.03);
  filter: grayscale(0);
}

body.sandbox-news-page .news-item .news-meta {
  display: flex; flex-wrap: wrap; gap: 12px;
  font-family: var(--mono); font-size: 12px;
  letter-spacing: 0.06em; color: var(--steel-3);
  margin-top: 14px; padding-top: 12px;
  border-top: 1px solid var(--rule);
}
body.sandbox-news-page .news-item .news-cat {
  color: var(--warm);
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.sandbox-news-page .news-item h2 {
  color: var(--ink);
  font-size: clamp(20px, 2vw, 26px);
  letter-spacing: -0.022em;
  line-height: 1.2;
}
body.sandbox-news-page .news-item p { color: var(--steel-2); }

@media (max-width: 560px) {
  body.sandbox-news-page .news-item::after { display: none; }
}


/* News page CTA "Stay in touch" — light bg matching the news cards */
body.sandbox-news-page .cta-final {
  background: #FFFFFF !important;
  color: var(--steel-1);
}
body.sandbox-news-page .cta-final h2 { color: var(--ink); }
body.sandbox-news-page .cta-final p { color: var(--steel-2); }
body.sandbox-news-page .cta-final .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
body.sandbox-news-page .cta-final .silurus-wave { mix-blend-mode: multiply; opacity: 0.55; }


/* Kill the hairline border under the news hero */
body.sandbox-news-page .hero.hero-inner-page { border-bottom: 0 !important; }
body.sandbox-news-page .hero.hero-inner-page + section { border-top: 0 !important; }
body.sandbox-news-page .news-section { border-top: 0 !important; }


/* News page — trim spacing under hero to match About */
body.sandbox-news-page .news-section { padding-top: clamp(20px, 3vw, 36px); }
body.sandbox-news-page .news-section .section-head { padding-top: 0; padding-bottom: clamp(14px, 2vw, 24px); }


/* ============================================================
   Contact page — same family as News (cards + light overlay)
   ============================================================ */
/* Veil opacity — same as news (30%) */
body.sandbox-contact-page::after { background: rgba(255, 255, 255, 0.30) !important; }

/* Section cards — same elevated "stacked paper" treatment as news-item */
body.sandbox-contact-page .ct-section,
body.sandbox-contact-page .booking,
body.sandbox-contact-page .contacts,
body.sandbox-contact-page .offices {
  position: relative;
  isolation: isolate;
  background: var(--paper-2);
  border: 1px solid var(--rule-strong);
  padding: clamp(28px, 3vw, 44px) clamp(24px, 2.5vw, 40px);
  margin: clamp(16px, 1.8vw, 28px) auto;
  max-width: var(--max);
  width: calc(100% - 2 * var(--gutter));
  color: var(--steel-1);
}
body.sandbox-contact-page .ct-section::after,
body.sandbox-contact-page .booking::after,
body.sandbox-contact-page .contacts::after,
body.sandbox-contact-page .offices::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #FFFFFF;
  border: 1px solid var(--rule-strong);
  transform: translate(-2px, -2px);
}

/* Contact CTA — same white treatment as News Stay-in-touch */



/* ============================================================
   Careers section — white overlay on photo bg + black text
   ============================================================ */
.careers .careers-photo::after {
  background:
    linear-gradient(180deg, rgba(228, 233, 240, 0.86) 0%, rgba(228, 233, 240, 0.74) 32%, rgba(228, 233, 240, 0.74) 68%, rgba(228, 233, 240, 0.88) 100%),
    radial-gradient(ellipse 85% 85% at 32% 32%, rgba(228, 233, 240, 0.45) 0%, rgba(228, 233, 240, 0.70) 100%) !important;
}
.careers h2 { color: #000000 !important; }
.careers .lede { color: #000000 !important; }
.careers .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
.careers .benefit { background: transparent; }
.careers .benefit h4 { color: #000000 !important; }
.careers .benefit p { color: #000000 !important; }
.careers .benefit .idx { color: #1A1A1A !important; }




/* ============================================================
   Careers benefit cards — match WHY card family (gray + back layer)
   ============================================================ */
.careers .career-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(16px, 1.6vw, 24px);
  border-top: 0;
  border-left: 0;
  overflow: visible;
}
.careers .benefit {
  position: relative;
  isolation: isolate;
  background: var(--paper-2);
  border: 1px solid var(--rule-strong);
  padding: 28px 28px 32px;
  min-height: 200px;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transition: transform 320ms var(--ease), background 280ms var(--ease);
}
.careers .benefit::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #FFFFFF;
  border: 1px solid var(--rule-strong);
  transform: translate(-2px, -2px);
  transition: transform 360ms var(--ease);
}
.careers .benefit:hover { transform: translate(-2px, -2px); background: var(--bone); }
.careers .benefit:hover::after { transform: translate(-4px, -4px); }

/* Dark text override stays (already set), kicker/idx hidden by an earlier rule */
.careers .benefit h4 { color: var(--ink) !important; }
.careers .benefit p { color: var(--steel-1) !important; }

@media (max-width: 900px) { .careers .career-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 540px) {
  .careers .career-grid { grid-template-columns: 1fr; }
  .careers .benefit::after { display: none; }
}


/* Careers benefit icons — hairline SVGs, same family as why-icons */
.careers .benefit { display: flex; flex-direction: column; gap: 12px; }
.careers .benefit .benefit-icon {
  width: 28px;
  height: 28px;
  color: var(--ink);
  margin-top: 4px;
  margin-bottom: 4px;
}


/* ============================================================
   Engagement featured — same tone as A/C, stronger border, larger
   ============================================================ */
.eng-col.featured {
  background: color-mix(in srgb, var(--warm) 6%, var(--paper)) !important;
  color: var(--steel-1) !important;
  border: 2px solid var(--warm) !important;
  position: relative;
  z-index: 1;
  transform: scale(1.03);
  transform-origin: center;
  padding: 40px 36px 40px;
  box-shadow: 0 24px 50px -28px color-mix(in srgb, var(--warm) 60%, transparent);
}
.eng-col.featured::before {
  content: "MOST CHOSEN";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--warm);
  color: var(--warm-fg, #FFFFFF);
  font-family: var(--mono);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  padding: 4px 10px 4px;
  line-height: 1;
  z-index: 2;
}
.eng-col.featured h3 { color: var(--ink) !important; }
.eng-col.featured .eng-mark { color: var(--warm) !important; font-weight: 600 !important; }
.eng-col.featured .eng-blurb { color: var(--steel-2) !important; }
.eng-col.featured li { color: var(--steel-1) !important; border-top-color: var(--rule) !important; }
.eng-col.featured li::before { color: var(--warm) !important; }
.eng-col.featured .best-for { color: var(--steel-3) !important; border-top-color: var(--rule) !important; }
.eng-col.featured .best-for span { color: var(--steel-2) !important; }

@media (max-width: 900px) {
  .eng-col.featured { transform: none; padding: 36px 32px 36px; }
}


/* Engagement A and C — same border family, just lighter */
.eng-col:not(.featured) {
  border: 1px solid var(--rule-strong) !important;
}
.eng-table { border-top: 0; border-bottom: 0; }


/* Remove hairline between Why section and trustblock partners */
.trustblock .partners, .trustblock { border-top: 0 !important; }


/* Remove hairline between Standards and Services */
.standards { border-bottom: 0 !important; }
.services-home { border-top: 0 !important; }


/* ============================================================
   About page — elevate every content section as a white card
   ============================================================ */
body.sandbox-about-page .story,
body.sandbox-about-page section.section-pad-sm:not(.cta-final),
body.sandbox-about-page section.section-pad:not(.cta-final) {
  background: #FFFFFF !important;
  border: 1px solid var(--rule-strong);
  padding: clamp(28px, 3vw, 44px) clamp(24px, 2.5vw, 40px) !important;
  margin: clamp(16px, 1.8vw, 28px) auto;
  max-width: var(--max);
  width: calc(100% - 2 * var(--gutter));
  box-shadow:
    0 1px 2px rgba(10, 26, 44, 0.04),
    0 12px 28px -14px rgba(10, 26, 44, 0.12);
}
/* Cancel earlier ::after veil that referenced these sections */
body.sandbox-about-page .story::after,
body.sandbox-about-page section.section-pad-sm:not(.cta-final)::after,
body.sandbox-about-page section.section-pad:not(.cta-final)::after { display: none !important; }


/* ============================================================
   About — People grid as stacked-paper cards (like Standards)
   ============================================================ */
body.sandbox-about-page .people-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(16px, 1.6vw, 24px);
  border-top: 0;
  border-left: 0;
  overflow: visible;
}
body.sandbox-about-page .person-card {
  position: relative;
  isolation: isolate;
  background: var(--paper-2) !important;
  border: 1px solid var(--rule-strong) !important;
  border-right: 1px solid var(--rule-strong) !important;
  border-bottom: 1px solid var(--rule-strong) !important;
  transition: transform 320ms var(--ease), background 280ms var(--ease);
}
body.sandbox-about-page .person-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: #FFFFFF;
  border: 1px solid var(--rule-strong);
  transform: translate(-2px, -2px);
  transition: transform 360ms var(--ease);
}
body.sandbox-about-page .person-card:hover { transform: translate(-2px, -2px); background: var(--bone) !important; }
body.sandbox-about-page .person-card:hover::after { transform: translate(-4px, -4px); }

@media (max-width: 760px) { body.sandbox-about-page .people-grid { grid-template-columns: 1fr; } }
@media (max-width: 540px) { body.sandbox-about-page .person-card::after { display: none; } }





/* Contact CTA — more breathing between p and button */
body.sandbox-contact-page .cta-final p { margin-bottom: 48px; }
body.sandbox-contact-page .cta-final .btns { gap: 16px; }


body.sandbox-about-page::after { background: rgba(6, 15, 30, 0.50) !important; display: block !important; }


/* Footer now 3 columns (Standards removed), tighter */
.footer-cols { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 760px) { .footer-cols { grid-template-columns: 1fr 1fr; } }


/* Footer offices side-by-side (Budapest + Singapore) */
.footer-top { grid-template-columns: minmax(320px, 1fr) 1fr; }
.footer-offices { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; flex-wrap: nowrap; }
.footer-office { max-width: none; min-width: 0; }
@media (max-width: 760px) {
  .footer-top { grid-template-columns: 1fr; }
  .footer-offices { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
  .footer-offices { grid-template-columns: 1fr; }
}


/* About: strip elevated white card wrap from Our Story and The People sections.
   Only the individual .person-card cards keep their styling. */
body.sandbox-about-page section#story,
body.sandbox-about-page section#people {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 auto !important;
}


/* About page — dark cells bg, white text, strip section card wrappers */
body.sandbox-about-page .story,
body.sandbox-about-page section.section-pad-sm:not(.cta-final),
body.sandbox-about-page section.section-pad:not(.cta-final) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 auto !important;
}

body.sandbox-about-page .hero.hero-inner-page h1,
body.sandbox-about-page h1,
body.sandbox-about-page h2,
body.sandbox-about-page h3,
body.sandbox-about-page h4,
body.sandbox-about-page h5 { color: var(--ivory) !important; }
body.sandbox-about-page p,
body.sandbox-about-page .lede,
body.sandbox-about-page .hero.hero-inner-page .lede,
body.sandbox-about-page .hero.hero-inner-page .hero-lede,
body.sandbox-about-page .story p,
body.sandbox-about-page .head-body p { color: var(--ivory) !important; }
body.sandbox-about-page .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }

/* CTA at bottom — keep its standalone treatment */
body.sandbox-about-page .cta-final h2 { color: var(--ivory) !important; }
body.sandbox-about-page .cta-final p { color: var(--ivory-mute) !important; }


/* Inside person-cards (light gray bg) — text stays dark */
body.sandbox-about-page .person-card,
body.sandbox-about-page .person-card * { color: var(--steel-1) !important; }
body.sandbox-about-page .person-card .person-name,
body.sandbox-about-page .person-card h3,
body.sandbox-about-page .person-card h4 { color: var(--ink) !important; }
body.sandbox-about-page .person-card .role { color: var(--warm) !important; }
body.sandbox-about-page .person-card .person-bio,
body.sandbox-about-page .person-card p { color: var(--steel-1) !important; }
body.sandbox-about-page .person-card .person-title-line,
body.sandbox-about-page .person-card .person-head { color: var(--steel-3) !important; }


/* About — navbar same as homepage (on-ink dark scheme), even at top */
body.sandbox-about-page header.nav.on-ink:not(.scrolled) {
  color: var(--ivory) !important;
  background: transparent !important;
}
body.sandbox-about-page header.nav.on-ink:not(.scrolled) .brand-logo-light { display: block !important; }
body.sandbox-about-page header.nav.on-ink:not(.scrolled) .brand-logo-dark { display: none !important; }
body.sandbox-about-page header.nav.on-ink:not(.scrolled) .lang-trigger,
body.sandbox-about-page header.nav.on-ink:not(.scrolled) .nav-auth { border-color: rgba(255, 255, 255, 0.22) !important; }


/* Contact booking section heading + lede — black on the gray card */
body.sandbox-contact-page .booking .section-head h2 { color: #000000 !important; }
body.sandbox-contact-page .booking .section-head .lede { color: #1A1A1A !important; }
body.sandbox-contact-page .booking .section-head .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }


/* Contact CTA — solid dark navy, light text, wave hidden */
body.sandbox-contact-page .cta-final {
  background: var(--ink-deep) !important;
  color: var(--ivory);
}
body.sandbox-contact-page .cta-final h2 { color: var(--ivory) !important; }
body.sandbox-contact-page .cta-final p { color: var(--ivory-mute) !important; }
body.sandbox-contact-page .cta-final .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
body.sandbox-contact-page .cta-final .silurus-wave,
body.sandbox-contact-page .cta-final canvas.wave-strip-cta { display: none !important; }


/* About CTA — solid dark navy, light text, wave hidden */
body.sandbox-about-page .cta-final {
  background: transparent !important;
  color: var(--ivory) !important;
}
body.sandbox-about-page .cta-final h2 { color: var(--ivory) !important; }
body.sandbox-about-page .cta-final p { color: var(--ivory-mute) !important; }
body.sandbox-about-page .cta-final .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
body.sandbox-about-page .cta-final .silurus-wave,
body.sandbox-about-page .cta-final canvas.wave-strip-cta { display: none !important; }


/* About CTA — Email the team button: warm orange */
body.sandbox-about-page .cta-final .btn,
body.sandbox-about-page .cta-final .btn-paper {
  background: var(--warm) !important;
  color: var(--warm-fg) !important;
  border-color: var(--warm) !important;
}
body.sandbox-about-page .cta-final .btn:hover,
body.sandbox-about-page .cta-final .btn-paper:hover {
  background: var(--warm-2) !important;
  border-color: var(--warm-2) !important;
}


/* About CTA — breathing room between heading and button */
body.sandbox-about-page .cta-final .btns { margin-top: 28px; }


/* About CTA — fade from transparent (cells) at top to --ink-deep (footer) at bottom */
body.sandbox-about-page .cta-final {
  position: relative;
  z-index: 1;
  overflow: hidden;
}
body.sandbox-about-page .cta-final::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg,
    rgba(6, 15, 30, 0) 0%,
    rgba(6, 15, 30, 0.30) 40%,
    rgba(6, 15, 30, 0.78) 80%,
    rgba(6, 15, 30, 1) 100%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  display: block !important;
}
body.sandbox-about-page .cta-final .cta-inner,
body.sandbox-about-page .cta-final .head-tag { position: relative; z-index: 2; }


/* About — hide hairline above the footer so the CTA gradient flows in cleanly */
body.sandbox-about-page .footer { border-top: 0 !important; }
body.sandbox-about-page .cta-final { border-top: 0 !important; border-bottom: 0 !important; }


/* News page — dark theme: light text, no section card wrappers, white hero text */
body.sandbox-news-page .story,
body.sandbox-news-page section.section-pad-sm:not(.cta-final),
body.sandbox-news-page section.section-pad:not(.cta-final) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 auto !important;
}
body.sandbox-news-page .hero.hero-inner-page h1,
body.sandbox-news-page h1,
body.sandbox-news-page h2,
body.sandbox-news-page h3,
body.sandbox-news-page h4,
body.sandbox-news-page h5 { color: var(--ivory) !important; }
body.sandbox-news-page p,
body.sandbox-news-page .lede,
body.sandbox-news-page .hero.hero-inner-page .lede,
body.sandbox-news-page .hero.hero-inner-page .hero-lede,
body.sandbox-news-page .head-body p { color: var(--ivory) !important; }
body.sandbox-news-page .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }

/* News item cards stay light gray for readability */
body.sandbox-news-page .news-item h2 { color: var(--ink) !important; }
body.sandbox-news-page .news-item p { color: var(--steel-1) !important; }
body.sandbox-news-page .news-item .news-meta { color: var(--steel-3) !important; }
body.sandbox-news-page .news-item .news-cat { color: var(--warm) !important; }

/* Stay in touch CTA — dark, light text */
body.sandbox-news-page .cta-final {
  background: transparent !important;
  color: var(--ivory) !important;
}
body.sandbox-news-page .cta-final h2 { color: var(--ivory) !important; }
body.sandbox-news-page .cta-final p { color: var(--ivory-mute) !important; }
body.sandbox-news-page .cta-final .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }
body.sandbox-news-page .cta-final .silurus-wave,
body.sandbox-news-page .cta-final canvas.wave-strip-cta { display: none !important; }

/* Navbar — homepage-style dark (not light) on top */
body.sandbox-news-page header.nav.on-ink:not(.scrolled) {
  color: var(--ivory) !important;
  background: transparent !important;
}
body.sandbox-news-page header.nav.on-ink:not(.scrolled) .brand-logo-light { display: block !important; }
body.sandbox-news-page header.nav.on-ink:not(.scrolled) .brand-logo-dark { display: none !important; }
body.sandbox-news-page header.nav.on-ink:not(.scrolled) .lang-trigger,
body.sandbox-news-page header.nav.on-ink:not(.scrolled) .nav-auth { border-color: rgba(255, 255, 255, 0.22) !important; }


/* News page — kill the backdrop blur veil on section::after */
body.sandbox-news-page .story::after,
body.sandbox-news-page section.section-pad-sm::after,
body.sandbox-news-page section.section-pad::after {
  display: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background: transparent !important;
}


/* Careers — heading + lede white */
.careers h2, .careers .head-body h2 { color: var(--ink) !important; }
.careers .lede, .careers .head-body .lede { color: var(--steel-2) !important; }
.careers .head-tag .lbl { color: var(--warm) !important; font-weight: 700 !important; font-size: 14px !important; }

/* ============================================================
   Section labels — orange, bold, 14px (overrides any prior .lbl rule)
   ============================================================ */
.section-head .head-tag .lbl,
.head-tag .lbl,
section .head-tag .lbl,
body .head-tag .lbl,
body section .head-tag .lbl { color: var(--warm) !important; font-size: 14px !important; font-weight: 700 !important; }

/* ============================================================
   Universal head-tag styling — applies to every .head-tag .lbl
   regardless of whether wrapped in .section-head (e.g. CTA blocks).
   ============================================================ */
.head-tag {
  position: relative;
  padding-left: 14px;
  display: inline-block;
}
.head-tag::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 2px;
  height: 16px;
  background: var(--warm);
}
.head-tag .lbl {
  font-family: var(--mono);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--warm);
  display: inline-block;
}

/* ============== Nav right cluster ============================ */
.nav-right {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}

/* === Migrated from view 6711 inline block #0 === */
html.sandbox-home-page section.standards {
  background: var(--paper) ;
}
html.sandbox-home-page section#engage {
  background: var(--paper) ;
}
html.sandbox-home-page section.team {
  background: var(--paper) ;
}
html.sandbox-home-page section.services-home, html.sandbox-home-page section#engage, html.sandbox-home-page section.team {
  position: relative;
}
html.sandbox-home-page section.standards .lbl, html.sandbox-home-page section.services-home .lbl, html.sandbox-home-page section#engage .lbl, html.sandbox-home-page section.team .lbl, html.sandbox-home-page section#why .lbl, html.sandbox-home-page section.trustblock .lbl {
  letter-spacing: 0.22em ; font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-home-page .why-head span:first-child {
  color: var(--signal-deep) ; font-weight: 600;
}
html.sandbox-home-page .sh-idx {
  color: var(--signal-deep) ;
}
html.sandbox-home-page a:not(.btn):not(.btn-paper):not(.btn-ink):not(.btn-outline-paper):not(.btn-outline-ink):not(.svc-home-card):not(.partner-logo):not(.brand):hover {
  color: var(--signal-deep);
}
html.sandbox-home-page section.services-home {
  background-image:
 radial-gradient(circle at 1px 1px, rgba(31, 182, 224, 0.10) 1px, transparent 0);
 background-size: 22px 22px;
 background-position: 0 0;
}
html.sandbox-home-page .imaging-strip .imaging-figure img {
  filter: brightness(1.15) contrast(1.05) saturate(1);
}
html.sandbox-home-page .imaging-strip .imaging-figure {
  position: relative;
}
html.sandbox-home-page .imaging-strip .imaging-figure .figure-fade {
  background:
 linear-gradient(90deg, transparent 55%, #142B47 100%),
 linear-gradient(180deg, transparent 80%, color-mix(in srgb, #142B47 60%, transparent) 100%) ;
}
html.sandbox-home-page .imaging-strip .imaging-figure::before {
  content: "";
 position: absolute; inset: 0;
 background: transparent;
 pointer-events: none;
 z-index: 1;
}
html.sandbox-home-page .stats-display {
  display: grid ;
 grid-template-columns: repeat(4, 1fr) ;
 gap: 0 ;
 border-top: 0;
 border-bottom: 0;
 padding: 64px 0 ;
}
html.sandbox-home-page .stats-display .stat-cell {
  padding: 0 36px;
 border-right: 1px solid var(--rule);
 display: flex ;
 flex-direction: column;
 gap: 18px;
}
html.sandbox-home-page .stats-display .stat-cell:last-child {
  border-right: 0;
}
html.sandbox-home-page .stats-display .stat-num {
  font-family: var(--sans);
 font-size: clamp(38px, 6vw, 86px) ;
 font-weight: 500;
 letter-spacing: -0.03em;
 line-height: 0.9;
 color: var(--steel-1) ;
 display: block;
}
html.sandbox-home-page .stats-display .stat-num .sup {
  font-size: 0.42em;
 color: var(--signal-deep);
 vertical-align: top;
 font-weight: 400;
 margin-left: 4px;
 letter-spacing: 0;
}
html.sandbox-home-page .stats-display .stat-lbl {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--steel-3) ;
 line-height: 1.5;
}
@media (max-width: 820px) {
html.sandbox-home-page .stats-display {
  grid-template-columns: repeat(2, 1fr) ; row-gap: 48px ;
}
html.sandbox-home-page .stats-display .stat-cell:nth-child(2) {
  border-right: 0;
}
}
html.sandbox-home-page .std-stack-layout {
  display: grid;
 grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
 gap: 72px;
 align-items: start;
 margin-top: 48px;
}
html.sandbox-home-page .std-stack-svg {
  width: 100%; height: auto; display: block;
}
html.sandbox-home-page .std-stack-svg .lyr-rect {
  fill: var(--paper); stroke: var(--rule-strong); stroke-width: 1; transition: fill 220ms ease;
}
html.sandbox-home-page .std-stack-svg .lyr-rect.signal {
  fill: #E3ECF3; stroke: var(--signal-deep);
}
html.sandbox-home-page .std-stack-svg .lyr-rect.foundation {
  fill: var(--ink-deep); stroke: var(--ink-deep);
}
html.sandbox-home-page .std-stack-svg .lyr-code {
  font-family: var(--mono); font-size: 13px; font-weight: 600; fill: var(--steel-1); letter-spacing: 0.05em;
}
html.sandbox-home-page .std-stack-svg .lyr-code.on-dark {
  fill: var(--ivory);
}
html.sandbox-home-page .std-stack-svg .lyr-code.on-signal {
  fill: var(--ink);
}
html.sandbox-home-page .std-stack-svg .lyr-kicker {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; fill: var(--steel-3);
}
html.sandbox-home-page .std-stack-svg .lyr-kicker.on-dark {
  fill: var(--ivory-mute);
}
html.sandbox-home-page .std-stack-svg .conn {
  stroke: var(--rule-strong); stroke-width: 1; stroke-dasharray: 2 3; fill: none;
}
html.sandbox-home-page .std-stack-list {
  display: flex; flex-direction: column; gap: 22px;
}
html.sandbox-home-page .std-stack-list .row {
  display: grid; grid-template-columns: 130px 1fr; gap: 24px; padding-bottom: 18px; border-bottom: 1px solid var(--rule); align-items: baseline;
}
html.sandbox-home-page .std-stack-list .row:last-child {
  border-bottom: 0;
}
html.sandbox-home-page .std-stack-list .code {
  font-family: var(--mono); font-size: 13px; font-weight: 600; color: var(--signal-deep); letter-spacing: 0.04em;
}
html.sandbox-home-page .std-stack-list .desc {
  font-size: 14px; color: var(--steel-2); line-height: 1.55;
}
@media (max-width: 900px) {
html.sandbox-home-page .std-stack-layout {
  grid-template-columns: 1fr; gap: 48px;
}
}
html.sandbox-home-page .why-card.reveal {
  opacity: 0;
 transform: translateY(48px) scale(0.96);
 transition: opacity 720ms cubic-bezier(0.2, 0.7, 0.2, 1), transform 720ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
html.sandbox-home-page .why-card.reveal.in {
  opacity: 1;
 transform: none;
}
html.sandbox-home-page .why-grid .why-card:nth-of-type(1).reveal {
  transition-delay: 0ms;
}
html.sandbox-home-page .why-grid .why-card:nth-of-type(2).reveal {
  transition-delay: 90ms;
}
html.sandbox-home-page .why-grid .why-card:nth-of-type(3).reveal {
  transition-delay: 180ms;
}
html.sandbox-home-page .why-grid .why-card:nth-of-type(4).reveal {
  transition-delay: 270ms;
}
html.sandbox-home-page .why-grid .why-card:nth-of-type(5).reveal {
  transition-delay: 360ms;
}
html.sandbox-home-page .why-grid .why-card:nth-of-type(6).reveal {
  transition-delay: 450ms;
}
html.sandbox-home-page .why-card:hover {
  transform: translateY(-6px);
 box-shadow: 0 18px 40px rgba(10, 26, 44, 0.10);
}
html.sandbox-home-page .why-card.reveal.in {
  transition: transform 320ms ease, box-shadow 320ms ease, opacity 320ms ease;
}
body section.services-home .svc-home-grid, html.sandbox-home-page section.services-home .svc-home-grid {
  display: grid ;
 grid-template-columns: repeat(2, 1fr) ;
 gap: clamp(20px, 2.4vw, 32px) ;
 border: 0 ;
}
body section.services-home .svc-home-card, html.sandbox-home-page section.services-home .svc-home-card {
  display: flex ;
 flex-direction: column ;
 grid-template-columns: none ;
 padding: 0 ;
 background: #FFFFFF ;
 border: 1px solid var(--rule-strong) ;
 box-shadow: 0 8px 26px -18px rgba(10, 26, 44, 0.18) ;
 overflow: hidden;
 position: relative;
 transition: transform 360ms cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 360ms cubic-bezier(0.2, 0.7, 0.2, 1), border-color 320ms ease ;
 align-items: stretch ;
}
body section.services-home .svc-home-card:hover, html.sandbox-home-page section.services-home .svc-home-card:hover {
  transform: translateY(-6px);
 box-shadow: 0 28px 56px -28px rgba(10, 26, 44, 0.32) ;
 border-color: var(--warm) ;
 background: #FFFFFF ;
 padding-left: 0 ;
}
body section.services-home .svc-home-card::before {
  content: "";
 position: absolute;
 top: 0; left: 0; height: 3px; width: 0;
 background: var(--warm);
 transition: width 480ms cubic-bezier(0.2, 0.7, 0.2, 1);
 z-index: 3;
}
body section.services-home .svc-home-card:hover::before {
  width: 100%;
}
body section.services-home .svc-home-card .sh-visual, html.sandbox-home-page section.services-home .svc-home-card .sh-visual {
  width: 100% ;
 aspect-ratio: 3 / 2 ;
 height: auto ;
 min-height: 0 ;
 border: 0 ;
 background: transparent ;
 display: flex ;
 align-items: flex-end ;
 justify-content: center ;
 padding: 0 ;
 margin: 0 ;
 position: relative;
 overflow: hidden;
}
body section.services-home .svc-home-card .sh-visual svg, html.sandbox-home-page section.services-home .svc-home-card .sh-visual svg {
  width: 100% ;
 height: 100% ;
 max-width: none ;
 color: var(--steel-1);
 preserveAspectRatio: xMidYMid meet;
}
body section.services-home .svc-home-card .sh-body, html.sandbox-home-page section.services-home .svc-home-card .sh-body {
  display: flex ;
 flex-direction: column ;
 gap: 12px ;
 padding: 0 clamp(24px, 2.4vw, 36px) clamp(28px, 2.6vw, 40px) ;
 margin-top: 0 ;
 min-width: 0;
}
body section.services-home .svc-home-card .sh-idx, html.sandbox-home-page section.services-home .svc-home-card .sh-idx {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
 color: var(--signal-deep) ;
}
body section.services-home .svc-home-card h3, html.sandbox-home-page section.services-home .svc-home-card h3 {
  font-size: clamp(20px, 1.7vw, 24px) ;
 line-height: 1.25;
 letter-spacing: -0.016em;
 color: var(--steel-1) ;
 font-weight: 600;
 margin: 0;
 transition: color 280ms ease;
}
body section.services-home .svc-home-card:hover h3 {
  color: var(--warm-2) ;
}
body section.services-home .svc-home-card p, html.sandbox-home-page section.services-home .svc-home-card p {
  font-size: 14px ;
 line-height: 1.6 ;
 color: var(--steel-2) ;
 margin: 0;
 display: -webkit-box;
 -webkit-line-clamp: 4;
 -webkit-box-orient: vertical;
 overflow: hidden;
}
body section.services-home .svc-home-card .sh-tags, html.sandbox-home-page section.services-home .svc-home-card .sh-tags {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px;
}
body section.services-home .svc-home-card .sh-tags span, html.sandbox-home-page section.services-home .svc-home-card .sh-tags span {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
 color: var(--steel-2);
 padding: 3px 8px;
 border: 1px solid var(--rule);
 background: var(--paper);
}
body section.services-home .svc-home-card .sh-more, html.sandbox-home-page section.services-home .svc-home-card .sh-more {
  margin-top: 12px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase;
 color: var(--steel-2);
 display: inline-flex; align-items: center; gap: 8px;
}
body section.services-home .svc-home-card .sh-more .arr, html.sandbox-home-page section.services-home .svc-home-card .sh-more .arr {
  transition: transform 280ms ease;
}
body section.services-home .svc-home-card:hover .sh-more {
  color: var(--warm) ;
}
body section.services-home .svc-home-card:hover .sh-more .arr {
  transform: translateX(8px);
}
@media (max-width: 820px) {
body section.services-home .svc-home-grid, html.sandbox-home-page section.services-home .svc-home-grid {
  grid-template-columns: 1fr ;
}
}
html.sandbox-home-page .svc-home-card .sh-visual svg polyline, html.sandbox-home-page .svc-home-card .sh-visual svg line, html.sandbox-home-page .svc-home-card .sh-visual svg path {
  stroke-dasharray: 600 ;
 stroke-dashoffset: 600 ;
 animation: none ;
 transition: stroke-dashoffset 1200ms var(--ease), stroke 320ms var(--ease) ;
}
html.sandbox-home-page .svc-home-card.reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-card.reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-card.reveal.in .sh-visual svg path {
  stroke-dashoffset: 0 ;
}
html.sandbox-home-page .svc-home-card:hover .sh-visual svg polyline, html.sandbox-home-page .svc-home-card:hover .sh-visual svg line, html.sandbox-home-page .svc-home-card:hover .sh-visual svg path {
  animation: none ;
 stroke-dashoffset: 0 ;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal.in .sh-visual svg path {
  transition-delay: 300ms ;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal.in .sh-visual svg path {
  transition-delay: 390ms ;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal.in .sh-visual svg path {
  transition-delay: 480ms ;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal.in .sh-visual svg path {
  transition-delay: 570ms ;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal.in .sh-visual svg path {
  transition-delay: 660ms ;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal.in .sh-visual svg polyline, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal.in .sh-visual svg line, html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal.in .sh-visual svg path {
  transition-delay: 750ms ;
}
html.sandbox-home-page .svc-home-card.reveal {
  opacity: 0;
 transform: translateY(40px);
 transition: opacity 720ms cubic-bezier(0.2, 0.7, 0.2, 1), transform 720ms cubic-bezier(0.2, 0.7, 0.2, 1), background 320ms ease, padding-left 320ms ease, box-shadow 320ms ease;
}
html.sandbox-home-page .svc-home-card.reveal.in {
  opacity: 1;
 transform: none;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal {
  transition-delay: 0ms;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal {
  transition-delay: 90ms;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal {
  transition-delay: 180ms;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal {
  transition-delay: 270ms;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal {
  transition-delay: 360ms;
}
html.sandbox-home-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal {
  transition-delay: 450ms;
}
html.sandbox-home-page .std-stack-svg .lyr, html.sandbox-home-page .std-stack-svg .conn, html.sandbox-home-page .std-stack-svg .lyr-caption {
  opacity: 0;
 transform: translateY(24px);
 transform-box: fill-box;
 transform-origin: center;
 transition: opacity 700ms cubic-bezier(0.2, 0.7, 0.2, 1), transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
html.sandbox-home-page .std-stack-svg.in-view .lyr, html.sandbox-home-page .std-stack-svg.in-view .conn, html.sandbox-home-page .std-stack-svg.in-view .lyr-caption {
  opacity: 1;
 transform: none;
}
html.sandbox-home-page .std-stack-svg.in-view .lyr-1 {
  transition-delay: 0ms;
}
html.sandbox-home-page .std-stack-svg.in-view .conn-1 {
  transition-delay: 140ms;
}
html.sandbox-home-page .std-stack-svg.in-view .lyr-2 {
  transition-delay: 200ms;
}
html.sandbox-home-page .std-stack-svg.in-view .conn-2 {
  transition-delay: 340ms;
}
html.sandbox-home-page .std-stack-svg.in-view .lyr-3 {
  transition-delay: 400ms;
}
html.sandbox-home-page .std-stack-svg.in-view .conn-3 {
  transition-delay: 540ms;
}
html.sandbox-home-page .std-stack-svg.in-view .lyr-4 {
  transition-delay: 600ms;
}
html.sandbox-home-page .std-stack-svg.in-view .conn-4 {
  transition-delay: 740ms;
}
html.sandbox-home-page .std-stack-svg.in-view .lyr-5 {
  transition-delay: 800ms;
}
html.sandbox-home-page .std-stack-svg.in-view .lyr-caption {
  transition-delay: 1000ms;
}
html.sandbox-home-page .std-stack-list .row {
  opacity: 0;
 transform: translateX(20px);
 transition: opacity 600ms ease, transform 600ms ease;
}
html.sandbox-home-page .std-stack-svg.in-view ~ .std-stack-list .row, html.sandbox-home-page .std-stack-list.in-view .row {
  opacity: 1;
 transform: none;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(1) {
  transition-delay: 0ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(2) {
  transition-delay: 80ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(3) {
  transition-delay: 160ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(4) {
  transition-delay: 240ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(5) {
  transition-delay: 320ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(6) {
  transition-delay: 400ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(7) {
  transition-delay: 480ms;
}
html.sandbox-home-page .std-stack-list.in-view .row:nth-child(8) {
  transition-delay: 560ms;
}
html.sandbox-home-page section.vmodel {
  background: #142B47; color: #FFFFFF; padding: 96px 0; position: relative;
}
html.sandbox-home-page section.vmodel .lbl {
  letter-spacing: 0.22em ; font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-home-page section.vmodel h2 {
  color: #FFFFFF;
}
html.sandbox-home-page section.vmodel .lede {
  color: rgba(255,255,255,0.85) ; text-shadow: none;
}
html.sandbox-home-page .vmodel-svg {
  width: 100%; height: auto; display: block; margin-top: 56px; max-width: 1180px; margin-left: auto; margin-right: auto; overflow: visible;
}
html.sandbox-home-page .vmodel-svg .v-line {
  stroke: #FFFFFF; stroke-width: 1.6; fill: none;
}
html.sandbox-home-page .vmodel-svg .v-trace {
  stroke: rgba(255,255,255,0.45); stroke-width: 1; stroke-dasharray: 3 4; fill: none;
}
html.sandbox-home-page .vmodel-svg .v-node {
  fill: #142B47; stroke: #FFFFFF; stroke-width: 2;
}
html.sandbox-home-page .vmodel-svg .v-node.bottom {
  fill: #FFFFFF; stroke: #FFFFFF;
}
html.sandbox-home-page .vmodel-svg .v-label {
  font-family: var(--sans); font-size: 16px; font-weight: 500; fill: #FFFFFF;
}
html.sandbox-home-page .vmodel-svg .v-meta {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; fill: rgba(255,255,255,0.85);
}
html.sandbox-home-page .vmodel-svg .v-side {
  font-family: var(--mono); font-size: 14px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; fill: #FFFFFF; opacity: 0.95;
}
html.sandbox-home-page .vmodel-stacked {
  display: none; margin-top: 48px;
}
@media (max-width: 900px) {
html.sandbox-home-page .vmodel-svg {
  display: none;
}
html.sandbox-home-page .vmodel-stacked {
  display: block;
}
}
html.sandbox-home-page .vmodel-stacked .vm-sides {
  display: grid;
 grid-template-columns: 1fr auto 1fr;
 gap: 8px 16px;
 align-items: center;
 font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: #FFFFFF;
 padding-bottom: 18px;
 border-bottom: 1px solid rgba(255,255,255,0.18);
 margin-bottom: 18px;
}
html.sandbox-home-page .vmodel-stacked .vm-sides .arrow {
  color: rgba(255,255,255,0.6); font-family: var(--sans); font-size: 14px; letter-spacing: 0;
}
html.sandbox-home-page .vmodel-stacked .vm-row {
  display: grid;
 grid-template-columns: 1fr auto 1fr;
 gap: 8px 16px;
 align-items: center;
 padding: 18px 0;
 border-bottom: 1px solid rgba(255,255,255,0.14);
}
html.sandbox-home-page .vmodel-stacked .vm-row:last-of-type {
  border-bottom: 0;
}
html.sandbox-home-page .vmodel-stacked .vm-cell {
  display: flex; flex-direction: column; gap: 4px;
}
html.sandbox-home-page .vmodel-stacked .vm-cell.right {
  text-align: right;
}
html.sandbox-home-page .vmodel-stacked .vm-meta {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-home-page .vmodel-stacked .vm-label {
  font-family: var(--sans);
 font-size: 16px;
 font-weight: 500;
 color: #FFFFFF;
 line-height: 1.3;
}
html.sandbox-home-page .vmodel-stacked .vm-trace {
  width: 24px;
 height: 1px;
 background: repeating-linear-gradient(90deg, rgba(255,255,255,0.45) 0 3px, transparent 3px 7px);
}
html.sandbox-home-page .vmodel-stacked .vm-bottom {
  margin-top: 24px;
 padding: 22px 18px;
 background: var(--signal);
 color: var(--ink-deep);
 text-align: center;
 border-radius: 2px;
}
html.sandbox-home-page .vmodel-stacked .vm-bottom .vm-bottom-meta {
  font-family: var(--mono);
 font-size: 12px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 opacity: 0.78;
 margin-bottom: 4px;
}
html.sandbox-home-page .vmodel-stacked .vm-bottom .vm-bottom-label {
  font-family: var(--sans);
 font-size: 18px;
 font-weight: 600;
}
html.sandbox-home-page .trustblock .testimonials {
  background: transparent ;
 position: relative;
 z-index: 1;
}
html.sandbox-home-page .trustblock .testimonials > .wrap {
  position: relative; z-index: 1;
}
html.sandbox-home-page .trustblock .testimonials .tst {
  background: #ffffff;
 padding: 36px 40px;
 border-radius: 0;
 box-shadow: 0 24px 60px -34px rgba(0,0,0,0.5);
}
html.sandbox-home-page .trustblock .testimonials h2 {
  color: var(--steel-1) ;
}
html.sandbox-home-page .trustblock .testimonials .lbl {
  font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-home-page .testimonials .tst-grid {
  display: grid ;
 grid-template-columns: 1fr ;
 column-gap: clamp(28px, 5vw, 72px) ;
 row-gap: 0 ;
}
html.sandbox-home-page .testimonials .tst {
  grid-column: 1 ;
 background: transparent ;
 border: 0 ;
 padding: 48px 0 ;
 border-bottom: 1px solid var(--rule-strong) ;
 max-width: none;
}
@media (max-width: 720px) {
html.sandbox-home-page .testimonials .tst-grid {
  grid-template-columns: 1fr ;
}
html.sandbox-home-page .testimonials .tst {
  grid-column: 1 ;
}
}
html.sandbox-home-page .testimonials .tst:last-child {
  border-bottom: 0 ;
}
html.sandbox-home-page .testimonials .tst-quote {
  font-family: var(--sans) ;
 font-size: clamp(15px, 1.7vw, 22px) ;
 font-weight: 500 ;
 line-height: 1.45 ;
 letter-spacing: -0.005em ;
 color: var(--steel-1) ;
 position: relative;
 padding-left: 0 ;
 margin-top: 56px ;
 text-shadow: none ;
}
html.sandbox-home-page .testimonials .tst-quote::before {
  content: "\201C";
 position: absolute;
 left: 0; top: -56px;
 font-family: Georgia, "Times New Roman", serif;
 font-size: 72px;
 line-height: 1;
 color: var(--signal-deep);
 opacity: 0.85;
}
html.sandbox-home-page .testimonials .tst-foot {
  padding-left: 0 ;
}
html.sandbox-home-page .testimonials .tst-quote::after {
  content: none ;
}
html.sandbox-home-page .testimonials .tst-foot {
  margin-top: 28px;
 padding-left: 36px;
 display: flex ;
 flex-direction: column ;
 gap: 4px;
 border-top: 0 ;
}
html.sandbox-home-page .testimonials .tst-name {
  font-family: var(--sans) ;
 font-size: 16px ;
 font-weight: 600 ;
 color: var(--steel-1) ;
}
html.sandbox-home-page .testimonials .tst-role {
  font-family: var(--mono) ;
 font-size: 11px ;
 letter-spacing: 0.18em ;
 text-transform: uppercase;
 color: var(--steel-3) ;
}
html.sandbox-home-page .trustblock #particles-trustblock, html.sandbox-home-page .trustblock .particles-bg {
  mask-image: linear-gradient(180deg, transparent 0%, black 8%, black 92%, transparent 100%) ;
 -webkit-mask-image: linear-gradient(180deg, transparent 0%, black 8%, black 92%, transparent 100%) ;
}
html.sandbox-home-page a.btn.btn-warm-cta {
  background: var(--warm) ;
 color: var(--warm-fg) ;
 border-color: var(--warm) ;
}
html.sandbox-home-page a.btn.btn-warm-cta:hover {
  background: var(--warm-2) ;
 border-color: var(--warm-2) ;
 color: var(--warm-fg) ;
}
html.sandbox-home-page a.btn.btn-signal-cta {
  background: var(--signal-deep) ;
 color: #FFFFFF ;
 border-color: var(--signal-deep) ;
}
html.sandbox-home-page a.btn.btn-signal-cta:hover {
  background: var(--signal) ;
 border-color: var(--signal) ;
 color: #FFFFFF ;
}
html.sandbox-home-page section.cta-final {
  background: var(--paper) ;
 color: var(--steel-1) ;
}
html.sandbox-home-page section.cta-final h2 {
  color: var(--steel-1) ; text-shadow: none ;
}
html.sandbox-home-page section.cta-final p {
  color: var(--steel-2) ;
}
html.sandbox-home-page section.cta-final .head-tag .lbl {
  font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-home-page section.cta-final .silurus-wave {
  filter: invert(1) hue-rotate(180deg) saturate(0.85); opacity: 0.45;
}
html.sandbox-home-page section.hero {
  min-height: 75vh ;
}
html.sandbox-home-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-home-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-home-page .photo-divider {
  width: 100%;
 height: clamp(320px, 42vw, 540px);
 background-size: cover;
 background-position: center center;
 position: relative;
 overflow: hidden;
}
html.sandbox-home-page .photo-divider::after {
  content: "";
 position: absolute; inset: 0;
 background: linear-gradient(180deg, rgba(228,233,240,0.22) 0%, rgba(228,233,240,0) 25%, rgba(228,233,240,0) 75%, rgba(228,233,240,0.22) 100%);
 pointer-events: none;
}
html.sandbox-home-page .imaging-strip .imaging-figure {
  overflow: hidden; position: relative;
}
html.sandbox-home-page .imaging-strip .imaging-figure img {
  width: 100%;
 height: 160%;
 object-fit: cover;
 object-position: center 40%;
 transform: translate3d(0, -30%, 0);
 will-change: transform;
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-home-page .imaging-strip .imaging-figure img {
  transform: none ; height: 100%;
}
}
@keyframes vm-draw {
  to { stroke-dashoffset: 0; }
}
@keyframes vm-fade {
  to { opacity: 1; transform: none; }
}
html.sandbox-home-page .vmodel-svg .v-line, html.sandbox-home-page .vmodel-svg .v-trace {
  stroke-dasharray: 1200;
 stroke-dashoffset: 1200;
}
html.sandbox-home-page .vmodel-svg.in .v-line {
  animation: vm-draw 1400ms cubic-bezier(.22,.61,.36,1) forwards 200ms;
}
html.sandbox-home-page .vmodel-svg.in .v-trace {
  animation: vm-draw 1100ms cubic-bezier(.22,.61,.36,1) forwards 900ms;
 stroke-dasharray: 4 5;
 stroke-dashoffset: 0;
 opacity: 0;
}
html.sandbox-home-page .vmodel-svg.in .v-trace {
  opacity: 1; transition: opacity 600ms ease 900ms;
}
html.sandbox-home-page .vmodel-svg .v-node, html.sandbox-home-page .vmodel-svg .v-label, html.sandbox-home-page .vmodel-svg .v-meta, html.sandbox-home-page .vmodel-svg .v-side {
  opacity: 0;
 transform: translateY(6px);
 transform-box: fill-box;
 transform-origin: center;
}
html.sandbox-home-page .vmodel-svg.in .v-node {
  animation: vm-fade 520ms cubic-bezier(.22,.61,.36,1) forwards;
}
html.sandbox-home-page .vmodel-svg.in .v-label {
  animation: vm-fade 520ms cubic-bezier(.22,.61,.36,1) forwards;
}
html.sandbox-home-page .vmodel-svg.in .v-meta {
  animation: vm-fade 520ms cubic-bezier(.22,.61,.36,1) forwards;
}
html.sandbox-home-page .vmodel-svg.in .v-side {
  animation: vm-fade 600ms cubic-bezier(.22,.61,.36,1) forwards 200ms;
}
html.sandbox-home-page .vmodel-svg .lyr-1 .v-node, html.sandbox-home-page .vmodel-svg .lyr-1 .v-label, html.sandbox-home-page .vmodel-svg .lyr-1 .v-meta {
  animation-delay: 350ms;
}
html.sandbox-home-page .vmodel-svg .lyr-2 .v-node, html.sandbox-home-page .vmodel-svg .lyr-2 .v-label, html.sandbox-home-page .vmodel-svg .lyr-2 .v-meta {
  animation-delay: 500ms;
}
html.sandbox-home-page .vmodel-svg .lyr-3 .v-node, html.sandbox-home-page .vmodel-svg .lyr-3 .v-label, html.sandbox-home-page .vmodel-svg .lyr-3 .v-meta {
  animation-delay: 650ms;
}
html.sandbox-home-page .vmodel-svg .lyr-4 .v-node, html.sandbox-home-page .vmodel-svg .lyr-4 .v-label, html.sandbox-home-page .vmodel-svg .lyr-4 .v-meta {
  animation-delay: 800ms;
}
html.sandbox-home-page .vmodel-svg .v-node {
  transition: r 200ms ease;
}
html.sandbox-home-page .vmodel-svg .v-node:hover {
  r: 9; cursor: pointer;
}
@keyframes vm-pulse {
  0%,100% { r: 6; } 50% { r: 8.5; }
}
html.sandbox-home-page .vmodel-svg.in .v-node.bottom {
  animation: vm-fade 520ms cubic-bezier(.22,.61,.36,1) forwards 1100ms, vm-pulse 2400ms ease-in-out infinite 1800ms;
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-home-page .vmodel-svg.in .v-line, html.sandbox-home-page .vmodel-svg.in .v-trace, html.sandbox-home-page .vmodel-svg.in .v-node, html.sandbox-home-page .vmodel-svg.in .v-label, html.sandbox-home-page .vmodel-svg.in .v-meta, html.sandbox-home-page .vmodel-svg.in .v-side {
  animation: none; opacity: 1; stroke-dashoffset: 0; transform: none;
}
}
html.sandbox-home-page section#why > .wrap > section.services-home > .wrap {
  padding-left: 0;
 padding-right: 0;
 max-width: 100%;
}
@media (max-width: 820px) {

}
html.sandbox-home-page section.services-home .svc-home-grid .svc-feature {
  grid-column: 1 / -1 ;
 position: relative;
 display: block ;
 border: 1px solid var(--rule) ;
 background: var(--paper) ;
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 40px 80px -42px rgba(10,26,44,0.55) ;
 margin-bottom: clamp(18px, 1.8vw, 26px);
 overflow: hidden;
 color: var(--ink);
 text-decoration: none;
 transition: transform 360ms var(--ease), box-shadow 360ms var(--ease) ;
}
html.sandbox-home-page .svc-feature::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px;
 background: linear-gradient(90deg, var(--warm) 0%, var(--warm) 62%, color-mix(in srgb, var(--warm) 0%, transparent) 100%);
 z-index: 4;
}
html.sandbox-home-page .svc-feature:hover {
  transform: translateY(-6px);
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 60px 100px -42px rgba(10,26,44,0.6) ;
}
html.sandbox-home-page .svc-feature .feat-head {
  display: grid ;
 grid-template-columns: 1.18fr 0.82fr;
 align-items: stretch;
 border-bottom: 1px solid var(--rule);
}
@media (max-width: 900px) {
html.sandbox-home-page .svc-feature .feat-head {
  grid-template-columns: 1fr;
}
}
html.sandbox-home-page .svc-feature .feat-intro {
  padding: clamp(32px, 3.6vw, 54px) clamp(28px, 3.2vw, 50px) clamp(30px, 3.2vw, 46px);
 display: flex; flex-direction: column; gap: 18px;
}
html.sandbox-home-page .svc-feature .feat-kick {
  display: inline-flex; align-items: center; gap: 10px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--warm);
}
html.sandbox-home-page .svc-feature .feat-kick .dot {
  width: 7px; height: 7px; border-radius: 50%; background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 20%, transparent);
}
html.sandbox-home-page .svc-feature .feat-intro h3 {
  font-size: clamp(30px, 3.4vw, 46px) ; line-height: 1.04 ; letter-spacing: -0.03em ; font-weight: 600 ;
 color: var(--ink) ; max-width: 16ch;
}
html.sandbox-home-page .svc-feature .feat-lede {
  font-size: clamp(15.5px, 1.15vw, 17.5px) ; line-height: 1.6 ; color: var(--steel-1) ; max-width: 54ch;
 -webkit-line-clamp: unset ; display: block ; overflow: visible ; margin: 0 ;
}
html.sandbox-home-page .svc-feature .feat-para {
  font-size: 14px ; line-height: 1.68 ; color: var(--steel-2) ; max-width: 56ch;
 -webkit-line-clamp: unset ; display: block ; overflow: visible ; margin: 0 ;
}
html.sandbox-home-page .svc-feature .feat-tags {
  display: flex; flex-wrap: wrap; gap: 7px; padding-top: 4px;
}
html.sandbox-home-page .svc-feature .feat-tags span {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.06em; color: var(--steel-2);
 border: 1px solid var(--rule-strong); padding: 4px 9px; background: transparent;
}
html.sandbox-home-page .svc-feature .feat-cta {
  margin-top: 6px; font-family: var(--mono); font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase;
 color: var(--warm); display: inline-flex; align-items: center; gap: 9px;
}
html.sandbox-home-page .svc-feature .feat-cta .arr {
  transition: transform 240ms var(--ease);
}
html.sandbox-home-page .svc-feature:hover .feat-cta .arr {
  transform: translateX(5px);
}
html.sandbox-home-page .svc-feature .feat-visual {
  position: relative;
 background: #FFFFFF;
 overflow: hidden; min-height: 360px;
}
@media (max-width: 900px) {
html.sandbox-home-page .svc-feature .feat-visual {
  min-height: 260px;
}
}
@media (prefers-reduced-motion: reduce) {
  
}
html.sandbox-home-page .svc-feature .feat-visual .feat-overlay {
  position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none;
}
html.sandbox-home-page .svc-feature .feat-visual .feat-sweep {
  animation: feat-sweep 7.4s linear infinite;
}
html.sandbox-home-page .svc-feature .feat-visual .feat-beam {
  transform-origin: 280px 215px; animation: feat-beam 8.6s linear infinite;
}
@keyframes feat-sweep {
  0%   { transform: translateY(-44px); }
    100% { transform: translateY(504px); }
}
@keyframes feat-beam {
  0%   { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-home-page .svc-feature .feat-visual .feat-sweep, html.sandbox-home-page .svc-feature .feat-visual .feat-beam {
  animation: none;
}
}
html.sandbox-home-page .svc-feature .feat-visual .vlabel {
  position: absolute; left: 22px; bottom: 18px; z-index: 4;
 font-family: var(--mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.78);
}
html.sandbox-home-page .svc-feature .feat-visual .vmark {
  position: absolute; right: 22px; top: 20px; z-index: 4;
 font-family: var(--mono); font-size: 10px; letter-spacing: 0.14em; color: var(--signal);
}
html.sandbox-home-page .svc-feature .feat-visual .seg-live {
  position: absolute; left: 22px; top: 18px; z-index: 4;
 display: flex; align-items: center; gap: 8px;
 font-family: var(--mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.78);
}
html.sandbox-home-page .svc-feature .feat-visual .seg-live .b {
  width: 7px; height: 7px; border-radius: 50%; background: var(--signal);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--signal) 22%, transparent);
 animation: feat-segblink 1.7s ease infinite;
}
@keyframes feat-segblink {
  0%, 100% { opacity: 1; } 50% { opacity: 0.25; }
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-home-page .svc-feature .feat-visual .seg-live .b {
  animation: none;
}
}
html.sandbox-home-page .svc-feature .feat-caps {
  display: grid; grid-template-columns: repeat(3, 1fr);
 border-left: 0;
}
@media (max-width: 760px) {
html.sandbox-home-page .svc-feature .feat-caps {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 480px) {
html.sandbox-home-page .svc-feature .feat-caps {
  grid-template-columns: 1fr;
}
}
html.sandbox-home-page .svc-feature .cap {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 22px clamp(20px, 2vw, 28px) 24px;
 display: flex; flex-direction: column; gap: 8px;
 transition: background 260ms var(--ease);
}
html.sandbox-home-page .svc-feature .feat-caps .cap:nth-child(3n) {
  border-right: 0;
}
html.sandbox-home-page .svc-feature .feat-caps .cap:nth-last-child(-n+3) {
  border-bottom: 0;
}
@media (max-width: 760px) {
html.sandbox-home-page .svc-feature .feat-caps .cap:nth-child(3n) {
  border-right: 1px solid var(--rule);
}
html.sandbox-home-page .svc-feature .feat-caps .cap:nth-child(2n) {
  border-right: 0;
}
html.sandbox-home-page .svc-feature .feat-caps .cap:nth-last-child(-n+3) {
  border-bottom: 1px solid var(--rule);
}
html.sandbox-home-page .svc-feature .feat-caps .cap:nth-last-child(-n+2) {
  border-bottom: 0;
}
}
html.sandbox-home-page .svc-feature .cap:hover {
  background: var(--paper-2);
}
html.sandbox-home-page .svc-feature .cap .cap-n {
  display: flex; align-items: center; gap: 9px;
 font-size: 15px; font-weight: 600; letter-spacing: -0.012em; color: var(--ink);
}
html.sandbox-home-page .svc-feature .cap .cap-n::before {
  content: ""; width: 6px; height: 6px; background: var(--signal); flex: none;
}
html.sandbox-home-page .svc-feature .cap p {
  font-size: 12.5px ; line-height: 1.55 ; color: var(--steel-2) ;
 -webkit-line-clamp: unset ; display: block ; overflow: visible ; margin: 0 ;
}
html.sandbox-home-page .svc-feature .feat-visual {
  background: #000000 ;
}
@keyframes feat-ctscan {
  0%   { transform: translateY(-100%); opacity: 0; }
    8%   { opacity: 1; }
    50%  { opacity: 1; }
    92%  { opacity: 1; }
    100% { transform: translateY(100%); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {

}
html.sandbox-home-page .vmodel-lifecycle {
  width: 100%; height: auto; display: block;
 margin-top: 56px; max-width: 880px; margin-left: auto; margin-right: auto;
 aspect-ratio: 560 / 460;
}
html.sandbox-home-page section#why .vA-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr) ;
 grid-auto-rows: 1fr ;
 gap: clamp(24px, 2.6vw, 40px) ;
 margin-top: clamp(24px, 3vw, 44px);
}
@media (max-width: 980px) {
html.sandbox-home-page section#why .vA-grid {
  grid-template-columns: 1fr 1fr ;
}
}
@media (max-width: 620px) {
html.sandbox-home-page section#why .vA-grid {
  grid-template-columns: 1fr ;
}
}
html.sandbox-home-page section#why .vA-card {
  position: relative; height: 100%;
}
html.sandbox-home-page section#why .vA-card::before, html.sandbox-home-page section#why .vA-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-home-page section#why .vA-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-home-page section#why .vA-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-home-page section#why .vA-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-home-page section#why .vA-card:hover .vA-face {
  transform: translate(-3px, -3px);
 box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-home-page section#why .vA-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-home-page section#why .vA-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-home-page section#why .vA-tab {
  align-self: flex-start;
 font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--warm);
 border: 1px solid var(--rule-strong);
 border-left: 2px solid var(--warm);
 padding: 5px 10px;
}
html.sandbox-home-page section#why .vA-face h3 {
  font-size: 21px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); max-width: 16ch; margin-top: 4px;
}
html.sandbox-home-page section#why .vA-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}
html.sandbox-home-page .svc-feature .feat-visual {
  background: #0c1623 ; padding: 0 ;
}
html.sandbox-home-page .svc-feature .feat-visual .mviz {
  position: absolute; inset: 0;
 overflow: hidden;
 background: radial-gradient(120% 120% at 62% 36%, #0E2236 0%, var(--ink) 56%, var(--ink-deep) 100%);
 border: 0;
}
html.sandbox-home-page .svc-feature .feat-visual .mviz svg {
  position: absolute; inset: 0; width: 100%; height: 100%; display: block;
}
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl {
  position: absolute; z-index: 3;
 font-family: var(--mono);
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: rgba(234,237,242,0.62);
 font-size: clamp(9px, 1.1vw, 11px);
}
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl.tl {
  left: 20px; top: 16px; display: flex; align-items: center; gap: 8px;
}
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl.tr {
  right: 20px; top: 16px; color: var(--signal);
}
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl.bl {
  left: 20px; bottom: 16px;
}
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl.br {
  right: 20px; bottom: 16px; color: rgba(234,237,242,0.38);
}
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl .b {
  width: 7px; height: 7px; border-radius: 50%; background: var(--signal);
 box-shadow: 0 0 0 3px rgba(31,182,224,0.18);
 animation: mblink 1.7s cubic-bezier(0.22,0.61,0.36,1) infinite;
}
@keyframes mblink {
  0%,100%{opacity:1} 50%{opacity:.25}
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-home-page .svc-feature .feat-visual .mviz .ovl .b {
  animation: none;
}
}
html.sandbox-home-page section#why .vA-icon {
  width: 40px; height: 40px;
 color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-home-page section#why .vA-icon use {
  stroke: currentColor; stroke-width: 1.4; fill: none;
}
html.sandbox-home-page section#why .vA-card:hover .vA-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-home-page section.team .team-bio strong {
  color: var(--ink); font-weight: 600;
}
html.sandbox-home-page section.careers .vA-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr) ;
 grid-auto-rows: 1fr ;
 gap: clamp(24px, 2.6vw, 40px) ;
 margin-top: clamp(24px, 3vw, 44px);
}
@media (max-width: 980px) {
html.sandbox-home-page section.careers .vA-grid {
  grid-template-columns: 1fr 1fr ;
}
}
@media (max-width: 620px) {
html.sandbox-home-page section.careers .vA-grid {
  grid-template-columns: 1fr ;
}
}
html.sandbox-home-page section.careers .vA-card {
  position: relative; height: 100%;
}
html.sandbox-home-page section.careers .vA-card::before, html.sandbox-home-page section.careers .vA-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-home-page section.careers .vA-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-home-page section.careers .vA-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-home-page section.careers .vA-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-home-page section.careers .vA-card:hover .vA-face {
  transform: translate(-3px, -3px);
 box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-home-page section.careers .vA-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-home-page section.careers .vA-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-home-page section.careers .vA-icon {
  width: 40px; height: 40px; color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-home-page section.careers .vA-icon use {
  stroke: currentColor; stroke-width: 1.4; fill: none;
}
html.sandbox-home-page section.careers .vA-card:hover .vA-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-home-page section.careers .vA-face h3 {
  font-size: 21px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); max-width: 18ch; margin-top: 4px;
}
html.sandbox-home-page section.careers .vA-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}
html.sandbox-home-page section.services-home .svc-home-grid .fc-card {
  grid-column: 1 / -1 ;
 position: relative; overflow: hidden;
 background: #FFFFFF;
 border: 1px solid rgba(10,26,44,0.16);
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 50px 90px -46px rgba(10,26,44,0.5);
 margin-bottom: clamp(18px, 1.8vw, 26px);
 color: #15202E;
}
html.sandbox-home-page .fc-card {
  --fc-warm: var(--warm); --fc-txt: #15202E; --fc-txt-2: #44505F; --fc-txt-3: #76808F;
 --fc-ct-accent: #1488B0; --fc-ct-bracket: rgba(20,114,143,0.42);
 --fc-ct-grid: rgba(10,26,44,0.06); --fc-ct-rail: rgba(10,26,44,0.12);
 --fc-ct-plane: #14728F; --fc-ct-plane-fill: rgba(20,114,143,0.10);
 --fc-ct-organ: #16344A; --fc-ct-organ-fill: rgba(10,26,44,0.05);
 --fc-ct-warm: #C2602F;
 --fc-rule: rgba(10,26,44,0.10); --fc-rule-2: rgba(10,26,44,0.16);
 --fc-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}
html.sandbox-home-page .fc-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; z-index: 8;
 background: linear-gradient(90deg, var(--fc-warm) 0%, var(--fc-warm) 58%, transparent 100%);
}
html.sandbox-home-page .fc-card .fc-hero {
  position: relative; overflow: hidden; min-height: 470px; display: flex; align-items: center;
}
html.sandbox-home-page .fc-card .fc-ct-layer {
  position: absolute; top: 0; right: 0; bottom: 0; left: 40%;
 background: radial-gradient(120% 150% at 62% 34%, #FFFFFF 0%, #F2F5F9 58%, #E7ECF2 100%);
}
html.sandbox-home-page .fc-card .fc-ct-layer svg {
  position: absolute; inset: 0; width: 100%; height: 100%; display: block;
}
html.sandbox-home-page .fc-card .fc-scrim {
  position: absolute; top: 0; right: 0; bottom: 0; left: 40%; z-index: 2;
 background: linear-gradient(80deg, #FFFFFF 0%, #FFFFFF 5%, rgba(244,247,250,0.55) 35%, transparent 55%);
}
html.sandbox-home-page .fc-card .fc-scrim::after {
  display: none;
}
html.sandbox-home-page .fc-card .fc-ovl {
  position: absolute; z-index: 4; font-family: var(--mono);
 letter-spacing: 0.16em; text-transform: uppercase; font-size: 10px;
}
html.sandbox-home-page .fc-card .fc-ovl.fc-tr {
  right: 18px; top: 16px; color: var(--fc-ct-accent);
}
html.sandbox-home-page .fc-card .fc-ovl.fc-brr {
  right: 18px; bottom: 16px; color: var(--fc-txt-3);
}
html.sandbox-home-page .fc-card .fc-hero-in {
  position: relative; z-index: 3; padding: clamp(34px, 4.4vw, 64px); width: 100%;
}
html.sandbox-home-page .fc-card .fc-hero-col {
  max-width: 650px; display: flex; flex-direction: column; gap: 17px;
}
html.sandbox-home-page .fc-card .fc-kick {
  display: inline-flex; align-items: center; gap: 10px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--fc-warm);
}
html.sandbox-home-page .fc-card .fc-kick-dot {
  width: 7px; height: 7px; border-radius: 50%; background: var(--fc-warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--fc-warm) 22%, transparent);
}
html.sandbox-home-page .fc-card .fc-h1 {
  font-size: clamp(32px, 4vw, 52px) ; line-height: 1.03 ;
 letter-spacing: -0.032em ; font-weight: 600 ; color: var(--fc-txt) ;
 max-width: 15ch ; margin: 0 ;
}
html.sandbox-home-page .fc-card .fc-lede {
  font-size: clamp(15px, 1.2vw, 17px) ; line-height: 1.6 ;
 color: var(--fc-txt) ; max-width: 52ch ; margin: 0 ;
 -webkit-line-clamp: unset ; display: block ; overflow: visible ;
}
html.sandbox-home-page .fc-card .fc-lede.fc-muted {
  color: var(--fc-txt-2) ; font-size: 13.5px ;
}
html.sandbox-home-page .fc-card .fc-stats {
  display: flex; flex-wrap: wrap; gap: 10px clamp(18px, 2vw, 30px); padding: 2px 0;
}
html.sandbox-home-page .fc-card .fc-st {
  display: flex; align-items: baseline; gap: 8px;
}
html.sandbox-home-page .fc-card .fc-st b {
  font-size: 17px; font-weight: 600; letter-spacing: -0.02em; color: var(--fc-ct-accent);
}
html.sandbox-home-page .fc-card .fc-st span {
  font-family: var(--mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--fc-txt-3);
}
html.sandbox-home-page .fc-card .fc-tagrow {
  display: flex; flex-wrap: wrap; gap: 7px;
}
html.sandbox-home-page .fc-card .fc-tagrow span {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.06em;
 color: var(--fc-txt-2); border: 1px solid var(--fc-rule-2); padding: 4px 9px; background: transparent;
}
html.sandbox-home-page .fc-card .fc-region {
  padding: clamp(28px, 3.2vw, 46px) clamp(32px, 3.8vw, 58px) clamp(32px, 3.8vw, 56px);
}
html.sandbox-home-page .fc-card .fc-build-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); column-gap: clamp(20px, 2.4vw, 40px); row-gap: clamp(22px, 2.6vw, 34px);
}
@media (max-width: 980px) {
html.sandbox-home-page .fc-card .fc-build-grid {
  grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 540px) {
html.sandbox-home-page .fc-card .fc-build-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-home-page .fc-card .fc-bcell {
  position: relative; padding-top: 16px; border-top: 1px solid var(--fc-rule-2);
 display: flex; flex-direction: column; gap: 7px; transition: border-color 300ms var(--fc-ease);
}
html.sandbox-home-page .fc-card .fc-bcell::before {
  content: ""; position: absolute; top: -1px; left: 0; height: 2px; width: 0;
 background: var(--fc-warm); transition: width 360ms var(--fc-ease);
}
html.sandbox-home-page .fc-card .fc-bcell:hover::before {
  width: 40px;
}
html.sandbox-home-page .fc-card .fc-bcell h3 {
  font-size: 15.5px ; font-weight: 600 ;
 letter-spacing: -0.014em ; color: var(--fc-txt) ; line-height: 1.3 ; margin: 0 ;
}
html.sandbox-home-page .fc-card .fc-bcell p {
  font-size: 12.5px ; line-height: 1.55 ;
 color: var(--fc-txt-2) ; margin: 0 ; -webkit-line-clamp: unset ;
 display: block ; overflow: visible ;
}
html.sandbox-home-page .fc-card .fc-foot {
  display: flex; align-items: center; justify-content: flex-end; gap: 18px; flex-wrap: wrap;
 padding: 22px clamp(32px, 3.8vw, 58px); border-top: 1px solid var(--fc-rule);
}
html.sandbox-home-page .fc-card .fc-cta {
  font-family: var(--mono); font-size: 11.5px; letter-spacing: 0.14em;
 text-transform: uppercase; color: var(--fc-warm); display: inline-flex; align-items: center; gap: 9px; text-decoration: none;
}
html.sandbox-home-page .fc-card .fc-cta .fc-arr {
  transition: transform 240ms var(--fc-ease);
}
html.sandbox-home-page .fc-card:hover .fc-cta .fc-arr {
  transform: translateX(5px);
}
html.sandbox-home-page .fc-card svg.fc-ct .fc-ct-grid {
  stroke: var(--fc-ct-grid);
}
html.sandbox-home-page .fc-card svg.fc-ct .fc-ct-bracket {
  stroke: var(--fc-ct-bracket);
}
html.sandbox-home-page .fc-card svg.fc-ct .fc-ct-rail {
  stroke: var(--fc-ct-rail);
}
html.sandbox-home-page .fc-card svg.fc-ct .fc-ct-plane {
  fill: var(--fc-ct-plane-fill); stroke: var(--fc-ct-plane);
}
html.sandbox-home-page .fc-card svg.fc-ct .fc-ct-organ {
  fill: var(--fc-ct-organ-fill); stroke: var(--fc-ct-organ);
}
html.sandbox-home-page .fc-card svg.fc-ct .fc-ct-lesion {
  fill: var(--fc-ct-warm);
}
@media (max-width: 760px) {
html.sandbox-home-page .fc-card .fc-hero {
  display: block; min-height: 0;
}
html.sandbox-home-page .fc-card .fc-ct-layer {
  position: relative; left: 0; height: clamp(150px, 44vw, 230px); border-bottom: 1px solid var(--fc-rule);
}
html.sandbox-home-page .fc-card .fc-scrim {
  display: none;
}
html.sandbox-home-page .fc-card .fc-ovl.fc-brr {
  display: none;
}
html.sandbox-home-page .fc-card .fc-hero-in {
  position: static; padding: clamp(24px, 6vw, 36px);
}
html.sandbox-home-page .fc-card .fc-hero-col {
  max-width: none; gap: 15px;
}
html.sandbox-home-page .fc-card .fc-region {
  padding: clamp(20px, 5vw, 32px);
}
html.sandbox-home-page .fc-card .fc-foot {
  padding: 18px clamp(24px, 6vw, 36px);
}
}
body section.services-home .svc-home-card .sh-idx, html.sandbox-home-page section.services-home .svc-home-card .sh-idx {
  display: inline-flex ;
 align-items: center;
 gap: 10px;
 font-family: var(--mono) ;
 font-size: 11px ;
 letter-spacing: 0.2em ;
 text-transform: uppercase ;
 color: var(--warm) ;
 font-weight: 400 ;
 margin-bottom: 6px;
}
body section.services-home .svc-home-card .sh-idx::before, html.sandbox-home-page section.services-home .svc-home-card .sh-idx::before {
  content: "";
 width: 7px; height: 7px; border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 flex: none;
}

/* === Migrated from view 6711 inline block #1 === */
html.sandbox-home-page .services-home .svc-home-grid {
  display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 24px;
 margin-top: 48px;
 align-items: stretch;
}
html.sandbox-home-page .services-home .svc-home-card {
  display: grid;
 grid-template-columns: 76px 1fr;
 gap: 22px;
 align-items: start;
 padding: 26px 28px;
 border: 1px solid rgba(20,28,38,0.10);
 background: #ffffff;
 text-decoration: none;
 color: inherit;
 transition: border-color 220ms cubic-bezier(0.2,0.8,0.2,1),
 transform 220ms cubic-bezier(0.2,0.8,0.2,1),
 box-shadow 220ms cubic-bezier(0.2,0.8,0.2,1);
}
html.sandbox-home-page .services-home .svc-home-card:hover {
  border-color: var(--signal-deep, #0c4da2);
 transform: translateY(-2px);
 box-shadow: 0 10px 28px rgba(20,28,38,0.06);
}
html.sandbox-home-page .services-home .svc-home-card .sh-visual {
  width: 76px;
 height: 52px;
 flex-shrink: 0;
}
html.sandbox-home-page .services-home .svc-home-card .sh-visual svg {
  width: 100%;
 height: 100%;
 display: block;
}
html.sandbox-home-page .services-home .svc-home-card .sh-body {
  display: flex;
 flex-direction: column;
 gap: 10px;
 min-width: 0;
}
html.sandbox-home-page .services-home .svc-home-card .sh-idx {
  font-family: var(--mono, ui-monospace, monospace);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--signal-deep, #0c4da2);
}
html.sandbox-home-page .services-home .svc-home-card h3 {
  font-size: 19px;
 line-height: 1.25;
 margin: 0;
 font-weight: 600;
 letter-spacing: -0.015em;
 color: var(--steel-1, #181c1e);
}
html.sandbox-home-page .services-home .svc-home-card p {
  font-size: 13.5px;
 line-height: 1.6;
 color: var(--steel-2, #4a5663);
 margin: 0;
}
html.sandbox-home-page .services-home .svc-home-card .sh-tags {
  display: flex;
 flex-wrap: wrap;
 gap: 6px;
 margin-top: 4px;
}
html.sandbox-home-page .services-home .svc-home-card .sh-tags span {
  font-family: var(--mono, ui-monospace, monospace);
 font-size: 10px;
 font-weight: 500;
 letter-spacing: 0.12em;
 padding: 3px 8px;
 border: 1px solid rgba(20,28,38,0.18);
 color: var(--steel-2, #4a5663);
 text-transform: uppercase;
 line-height: 1.4;
}
html.sandbox-home-page .services-home .svc-home-card .sh-more {
  margin-top: 6px;
 font-family: var(--mono, ui-monospace, monospace);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: 0.14em;
 color: var(--signal-deep, #0c4da2);
 text-transform: uppercase;
}
html.sandbox-home-page .services-home .svc-home-card .sh-more .arr {
  display: inline-block;
 transition: transform 220ms cubic-bezier(0.2,0.8,0.2,1);
}
html.sandbox-home-page .services-home .svc-home-card:hover .sh-more .arr {
  transform: translateX(3px);
}
@media (max-width: 860px) {
html.sandbox-home-page .services-home .svc-home-grid {
  grid-template-columns: 1fr;
 gap: 16px;
 margin-top: 32px;
}
html.sandbox-home-page .services-home .svc-home-card {
  grid-template-columns: 60px 1fr;
 padding: 20px 22px;
 gap: 16px;
}
html.sandbox-home-page .services-home .svc-home-card .sh-visual {
  width: 60px; height: 42px;
}
html.sandbox-home-page .services-home .svc-home-card h3 {
  font-size: 17px;
}
html.sandbox-home-page .services-home .svc-home-card p {
  font-size: 13px;
}
}

/* === Migrated from view 6701 inline block #0 === */
html.sandbox-job-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex; align-items: center; gap: 10px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em;
 text-transform: uppercase; color: var(--ivory);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-dark-strong);
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent);
 backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
 font-weight: 500;
}
html.sandbox-job-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px; border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}
html.sandbox-job-page .hero.hero-inner-page {
  padding-top: 96px; padding-bottom: clamp(48px, 6vw, 80px); min-height: 0;
}
html.sandbox-job-page .hero.hero-inner-page .hero-video, html.sandbox-job-page .hero.hero-inner-page .hero-video-overlay, html.sandbox-job-page .hero.hero-inner-page #hero-canvas {
  display: none;
}
html.sandbox-job-page .hero.hero-inner-page::before {
  content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
 background: linear-gradient(180deg, color-mix(in srgb, var(--ink) 35%, transparent) 0%, color-mix(in srgb, var(--ink-deep) 78%, transparent) 100%);
}
html.sandbox-job-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px; padding-bottom: 0;
}
html.sandbox-job-page .hero.hero-inner-page .hero-grid {
  opacity: 0.55;
}
html.sandbox-job-page .job-back {
  display: flex; width: fit-content; align-items: center; gap: 8px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.14em;
 text-transform: uppercase; color: var(--ivory-mute);
 margin-bottom: 22px;
 transition: color 200ms var(--ease);
}
html.sandbox-job-page .job-back:hover {
  color: var(--signal);
}
html.sandbox-job-page .job-meta-strip {
  display: flex; flex-wrap: wrap; gap: clamp(16px, 3vw, 36px);
 margin-top: 26px; padding-top: 22px;
 border-top: 1px solid var(--rule-dark-strong);
}
html.sandbox-job-page .job-meta-strip .meta-cell {
  display: flex; flex-direction: column; gap: 4px;
}
html.sandbox-job-page .job-meta-strip .meta-cell .l {
  font-family: var(--mono); font-size: 9.5px; letter-spacing: 0.18em;
 text-transform: uppercase; color: var(--ivory-faint);
}
html.sandbox-job-page .job-meta-strip .meta-cell .v {
  font-size: 14px; color: var(--ivory); letter-spacing: -0.005em;
}
html.sandbox-job-page .job-body-section {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-job-page .job-body-grid {
  display: grid;
 grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
 gap: clamp(28px, 5vw, 72px);
 padding: clamp(40px, 6vw, 72px) 0;
 align-items: start;
}
@media (max-width: 920px) {
html.sandbox-job-page .job-body-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-job-page .job-body {
  color: var(--steel-1); font-size: 15.5px; line-height: 1.7;
}
html.sandbox-job-page .job-body h2 {
  color: var(--ink); font-size: 22px; letter-spacing: -0.012em; margin-top: 2em; margin-bottom: 0.6em;
}
html.sandbox-job-page .job-body h2:first-child {
  margin-top: 0;
}
html.sandbox-job-page .job-body p {
  margin-bottom: 1em; color: var(--steel-2);
}
html.sandbox-job-page .job-body ul {
  padding-left: 0; list-style: none; margin-bottom: 1em;
}
html.sandbox-job-page .job-body ul li {
  margin-bottom: 0.6em; color: var(--steel-2); padding-left: 22px; position: relative;
}
html.sandbox-job-page .job-body ul li::before {
  content: ""; position: absolute; left: 0; top: 0.7em;
 width: 10px; height: 1px; background: var(--warm);
}
html.sandbox-job-page .job-body strong {
  color: var(--ink);
}
html.sandbox-job-page .job-body .lede {
  font-size: 17px; color: var(--steel-1); line-height: 1.6;
}
html.sandbox-job-page .skills-row {
  display: flex; flex-wrap: wrap; gap: 6px;
 padding: 4px 0 8px;
}
html.sandbox-job-page .skill-tag {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.06em;
 background: transparent; border: 1px solid var(--rule-strong);
 color: var(--steel-2); padding: 5px 9px;
}
html.sandbox-job-page .job-aside {
  position: sticky; top: 96px;
 padding: 22px 22px 24px;
 border: 1px solid var(--rule);
 background: #fff;
 display: flex; flex-direction: column; gap: 14px;
}
@media (max-width: 920px) {
html.sandbox-job-page .job-aside {
  position: static;
}
}
html.sandbox-job-page .job-aside .kicker {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.18em;
 text-transform: uppercase; color: var(--steel-3);
}
html.sandbox-job-page .job-aside .aside-row {
  display: flex; flex-direction: column; gap: 3px;
}
html.sandbox-job-page .job-aside .aside-row .l {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--steel-3);
}
html.sandbox-job-page .job-aside .aside-row .v {
  font-size: 14px; color: var(--ink);
}
html.sandbox-job-page .job-aside .apply-cta {
  margin-top: 6px; display: inline-flex; align-items: center; justify-content: center; gap: 8px;
 padding: 14px 18px;
 background: var(--ink); color: var(--paper);
 font-family: var(--mono); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase;
 border: 1px solid var(--ink);
 transition: background 200ms var(--ease), color 200ms var(--ease), border-color 200ms var(--ease);
}
html.sandbox-job-page .job-aside .apply-cta:hover {
  background: var(--warm); border-color: var(--warm); color: var(--warm-fg);
}
html.sandbox-job-page .job-aside .apply-secondary {
  text-align: center; font-family: var(--mono); font-size: 11px; letter-spacing: 0.06em; color: var(--steel-3);
}
html.sandbox-job-page .job-aside .apply-secondary a {
  color: var(--steel-1); border-bottom: 1px solid var(--rule-strong);
}
html.sandbox-job-page .job-aside .apply-secondary a:hover {
  color: var(--warm); border-bottom-color: var(--warm);
}
html.sandbox-job-page .cta-final .cta-inner {
  border-top: 0;
}

/* === Migrated from view 6702 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6702 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
body .slr-about-hero h1 .accent, html.sandbox-about-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-about-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .section-head .head-tag .lbl, body .head-tag .lbl, html.sandbox-about-page .section-head .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-about-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-about-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-about-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
html.sandbox-about-page .hero-dateline {
  display: flex;
 align-items: center;
 gap: 16px;
 flex-wrap: wrap;
 margin-top: 30px;
 font-family: var(--mono);
 font-size: 12px;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--steel-2);
}
html.sandbox-about-page .hero-dateline .sep {
  width: 5px; height: 5px; border-radius: 50%; background: var(--warm);
}
html.sandbox-about-page .hero-dateline b {
  color: var(--ink); font-weight: 600;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-about-page .slr-about-hero.hero.hero-inner-page {
  background: var(--paper) ;
 color: var(--ink) ;
}
html.sandbox-about-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-about-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-about-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-about-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-about-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
html.sandbox-about-page .slr-about-hero .hero-kicker {
  color: var(--steel-1) ;
 border-color: var(--rule-strong) ;
 background: color-mix(in srgb, var(--paper) 72%, transparent) ;
}
html.sandbox-about-page .slr-about-hero h1 {
  color: var(--ink) ;
 text-shadow: none ;
 font-weight: 600;
}
html.sandbox-about-page .slr-about-hero .hero-dateline {
  color: var(--steel-2);
 padding-top: 22px;
 border-top: 1px solid var(--rule);
 max-width: 540px;
}
html.sandbox-about-page .slr-about-hero .hero-dateline b {
  color: var(--ink);
}
html.sandbox-about-page .hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: none;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(31, 182, 224, 0.10) 1px, transparent 0);
 background-size: 22px 22px;
}
html.sandbox-about-page .hero.hero-inner-page::after {
  content: "";
 position: absolute;
 top: 0; left: 0; right: 0;
 height: 2px;
 background: linear-gradient(90deg, transparent 0%, var(--signal) 18%, var(--signal) 82%, transparent 100%);
 opacity: 0.55;
 pointer-events: none;
 z-index: 2;
}
html.sandbox-about-page .hero.hero-inner-page .hero-video, html.sandbox-about-page .hero.hero-inner-page .hero-video-overlay, html.sandbox-about-page .hero.hero-inner-page #hero-canvas, html.sandbox-about-page .hero.hero-inner-page .vanta-bg, html.sandbox-about-page .hero.hero-inner-page .hero-grid {
  display: none ;
}
html.sandbox-about-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px;
 padding-bottom: 0;
 position: relative;
 z-index: 3;
}
html.sandbox-about-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--steel-1);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-strong);
 background: rgba(255, 255, 255, 0.65);
 backdrop-filter: blur(4px);
 -webkit-backdrop-filter: blur(4px);
 font-weight: 500;
}
html.sandbox-about-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px;
 border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}
html.sandbox-about-page .story {
  background: var(--paper);
}
html.sandbox-about-page .story .section-head {
  padding-top: 8px; padding-bottom: clamp(24px, 3vw, 36px);
}
html.sandbox-about-page .story-grid {
  display: grid;
 grid-template-columns: minmax(180px, 200px) 1fr;
 gap: clamp(28px, 5vw, 72px);
 align-items: start;
}
@media (max-width: 760px) {
html.sandbox-about-page .story-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-about-page .story-body {
  display: flex; flex-direction: column; gap: 22px; max-width: 64ch;
}
html.sandbox-about-page .story-body p {
  color: var(--steel-2); font-size: 15.5px; line-height: 1.7;
}
html.sandbox-about-page .story .head-body .lede {
  font-size: 15.5px;
 line-height: 1.7;
 color: var(--steel-2);
 font-weight: 400;
 max-width: 64ch;
}
html.sandbox-about-page section#people {
  background: var(--paper) ;
 color: var(--steel-1) ;
 position: relative;
}
html.sandbox-about-page section#people::before, html.sandbox-about-page section#people::after {
  display: none ;
}
html.sandbox-about-page section#people > .wrap {
  position: relative; z-index: 2;
}
html.sandbox-about-page section#people .person-card {
  background: #FFFFFF ;
 border: 1px solid var(--rule-strong) ;
 color: var(--steel-1) ;
}
html.sandbox-about-page section#people .person-card::before, html.sandbox-about-page section#people .person-card::after {
  display: none ;
}
html.sandbox-about-page section#people .person-card:hover {
  background: var(--paper-2) ;
}
html.sandbox-about-page section#people .person-name {
  color: var(--steel-1) ;
}
html.sandbox-about-page section#people .person-bio {
  color: var(--steel-2) ;
}
html.sandbox-about-page section#people .head-body p, html.sandbox-about-page section#people .lede {
  color: var(--steel-2) ;
}
html.sandbox-about-page section#people h2 {
  color: var(--steel-1) ;
}
html.sandbox-about-page section#people .lbl {
  font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-about-page .people-grid {
  display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: clamp(28px, 3vw, 48px);
 margin-top: clamp(20px, 2.5vw, 32px);
}
@media (max-width: 760px) {
html.sandbox-about-page .people-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-about-page .person-card {
  position: relative;
 padding: 36px 36px 40px;
 display: flex;
 flex-direction: column;
 gap: 22px;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 border-radius: 4px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
 align-items: stretch;
 z-index: 2;
}
html.sandbox-about-page .person-card::before, html.sandbox-about-page .person-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 border-radius: 4px;
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-about-page .person-card::before {
  z-index: -1; transform: translate(8px, 8px);
}
html.sandbox-about-page .person-card::after {
  z-index: -2; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-about-page .person-card:hover {
  transform: translate(-3px, -3px); box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-about-page .person-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-about-page .person-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-about-page .person-card .person-head {
  flex: 0 0 auto;
}
html.sandbox-about-page .person-card .person-id {
  flex: 0 0 auto;
}
html.sandbox-about-page .person-card .person-bio {
  flex: 0 0 auto;
}
html.sandbox-about-page .person-card .person-awards {
  flex: 0 0 auto;
}
html.sandbox-about-page .person-card .person-meta {
  flex: 0 0 auto; margin-top: auto;
}
html.sandbox-about-page .people-grid > .person-card:nth-last-child(-n+2) {
  border-bottom: 0;
}
html.sandbox-about-page .person-head {
  display: flex;
 align-items: center;
 justify-content: space-between;
 font-family: var(--mono);
 font-size: 11px;
 color: var(--steel-3);
 letter-spacing: 0.06em;
}
html.sandbox-about-page .person-head .role {
  font-family: var(--mono);
 font-size: 13px;
 font-weight: 700;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--warm);
 padding: 5px 10px;
 border: 1px solid var(--warm);
 border-left: 3px solid var(--warm);
 background: color-mix(in srgb, var(--warm) 7%, transparent);
 display: inline-block;
}
html.sandbox-about-page .person-id {
  display: grid;
 grid-template-columns: 197px 1fr;
 gap: 28px;
 align-items: center;
}
@media (max-width: 480px) {
html.sandbox-about-page .person-id {
  grid-template-columns: 149px 1fr; gap: 18px;
}
}
html.sandbox-about-page .person-portrait {
  aspect-ratio: 1 / 1;
 background: linear-gradient(180deg, var(--paper-2) 0%, var(--paper) 60%);
 border: 1px solid var(--rule);
 border-radius: 4px;
 position: relative;
 overflow: hidden;
}
html.sandbox-about-page .person-portrait img {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 object-fit: contain;
 object-position: center bottom;
 display: block;
}
html.sandbox-about-page .person-portrait:not(:has(img))::before {
  content: "";
 position: absolute;
 inset: 0;
 background-image: repeating-linear-gradient(135deg,
 rgba(255,255,255,0.06) 0 1px,
 transparent 1px 7px);
}
html.sandbox-about-page .person-portrait:not(:has(img))::after {
  content: attr(data-initials);
 position: absolute;
 inset: 0;
 display: flex;
 align-items: center;
 justify-content: center;
 font-family: var(--mono);
 font-size: 18px;
 letter-spacing: 0.06em;
 color: rgba(255,255,255,0.45);
 font-weight: 500;
}
html.sandbox-about-page .person-name-block {
  display: flex;
 flex-direction: column;
 gap: 4px;
}
html.sandbox-about-page .person-name {
  font-size: 22px;
 letter-spacing: -0.022em;
 line-height: 1.15;
 font-weight: 500;
 color: var(--ink);
}
html.sandbox-about-page .person-title-line {
  font-family: var(--mono);
 font-size: 13px;
 font-weight: 500;
 letter-spacing: 0.04em;
 color: var(--steel-2);
 margin-top: 6px;
 line-height: 1.45;
}
html.sandbox-about-page .person-bio {
  color: var(--steel-2);
 font-size: 14.5px;
 line-height: 1.65;
 max-width: 56ch;
}
html.sandbox-about-page .person-bio + .person-bio {
  margin-top: -8px;
}
html.sandbox-about-page .person-meta {
  display: grid;
 grid-template-columns: repeat(2, 1fr);
 gap: 0;
 border-top: 1px solid var(--rule);
 padding-top: 16px;
 margin-top: auto;
}
html.sandbox-about-page .person-meta .m {
  padding-right: 16px;
 border-left: 1px solid var(--rule);
 padding-left: 16px;
 display: flex;
 flex-direction: column;
 gap: 4px;
}
html.sandbox-about-page .person-meta .m:first-child {
  border-left: 0; padding-left: 0;
}
html.sandbox-about-page .person-meta .m .l {
  font-family: var(--mono);
 font-size: 9.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-about-page .person-meta .m .v {
  font-size: 13px;
 color: var(--steel-1);
 letter-spacing: -0.005em;
 font-feature-settings: "tnum";
 line-height: 1.35;
}
html.sandbox-about-page .person-meta .m .v a {
  color: inherit;
 border-bottom: 1px solid var(--rule-strong);
 transition: color 200ms var(--ease), border-color 200ms var(--ease);
}
html.sandbox-about-page .person-meta .m .v a:hover {
  color: var(--warm); border-bottom-color: var(--warm);
}
html.sandbox-about-page .person-awards {
  display: flex;
 flex-wrap: wrap;
 gap: 6px;
 padding-top: 4px;
}
html.sandbox-about-page .person-award {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.04em;
 color: var(--steel-2);
 padding: 4px 8px;
 border: 1px solid var(--rule-strong);
 border-left: 2px solid var(--warm);
 background: transparent;
 transition: border-color 200ms var(--ease), color 200ms var(--ease);
}
html.sandbox-about-page .person-award:hover {
  color: var(--ink); border-color: var(--warm);
}
html.sandbox-about-page .recognitions {
  background: var(--ink); color: var(--ivory);
}
html.sandbox-about-page .recognitions-grid {
  display: grid;
 grid-template-columns: minmax(180px, 200px) 1fr;
 gap: clamp(28px, 5vw, 72px);
 align-items: start;
}
@media (max-width: 760px) {
html.sandbox-about-page .recognitions-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-about-page .rec-list {
  display: grid;
 grid-template-columns: 1fr;
 border-top: 1px solid var(--rule-dark);
}
html.sandbox-about-page .rec-item {
  display: grid;
 grid-template-columns: 80px 1fr minmax(160px, 220px);
 gap: clamp(16px, 2.5vw, 40px);
 padding: 24px 0;
 border-bottom: 1px solid var(--rule-dark);
 align-items: center;
}
@media (max-width: 760px) {
html.sandbox-about-page .rec-item {
  grid-template-columns: 60px 1fr;
}
html.sandbox-about-page .rec-item .rec-meta {
  grid-column: 1 / -1; padding-left: 76px;
}
}
html.sandbox-about-page .rec-item .rec-year {
  font-family: var(--mono);
 font-size: 12px;
 letter-spacing: 0.06em;
 color: var(--signal);
 font-feature-settings: "tnum";
}
html.sandbox-about-page .rec-item .rec-title {
  font-size: 17px;
 color: var(--ivory);
 letter-spacing: -0.012em;
 line-height: 1.35;
}
html.sandbox-about-page .rec-item .rec-meta {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: var(--ivory-faint);
}
html.sandbox-about-page .offices {
  background: var(--paper-2); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule);
}
html.sandbox-about-page .offices-grid {
  display: grid;
 grid-template-columns: minmax(180px, 200px) 1fr;
 gap: clamp(28px, 5vw, 72px);
 align-items: start;
}
@media (max-width: 760px) {
html.sandbox-about-page .offices-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-about-page .offices-cells {
  display: grid;
 grid-template-columns: 1fr 1fr;
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 640px) {
html.sandbox-about-page .offices-cells {
  grid-template-columns: 1fr;
}
}
html.sandbox-about-page .office {
  padding: 30px 30px 34px;
 border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 display: flex;
 flex-direction: column;
 gap: 12px;
 background: var(--paper);
 transition: background 240ms var(--ease);
}
html.sandbox-about-page .office:hover {
  background: var(--paper-2);
}
html.sandbox-about-page .office .office-tag {
  display: flex;
 align-items: center;
 justify-content: space-between;
 font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-about-page .office .office-tag .role {
  color: var(--warm);
 letter-spacing: 0.16em;
}
html.sandbox-about-page .office .office-name {
  font-size: 26px;
 letter-spacing: -0.022em;
 color: var(--ink);
 font-weight: 500;
}
html.sandbox-about-page .office .office-addr {
  color: var(--steel-2);
 font-size: 14px;
 line-height: 1.55;
 max-width: 32ch;
}
html.sandbox-about-page .office .office-meta {
  display: flex;
 flex-wrap: wrap;
 gap: 12px 24px;
 padding-top: 12px;
 margin-top: auto;
 border-top: 1px solid var(--rule);
}
html.sandbox-about-page .office .office-meta span {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-about-page .office .office-meta b {
  color: var(--steel-1);
 font-weight: 500;
 letter-spacing: 0.06em;
 margin-left: 6px;
}
html.sandbox-about-page .footer {
  background: var(--ink-deep) ;
}
html.sandbox-about-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-about-page .footer .brand-logo {
  height: 43px ;
}

/* === Migrated from view 6702 inline block #2 === */
html.sandbox-about-page section.about-stats {
  background: #142B47 ;
 color: var(--ivory) ;
 padding: clamp(72px, 9vw, 120px) 0;
 position: relative;
 overflow: hidden;
}
html.sandbox-about-page section.about-stats::before {
  content: "";
 position: absolute;
 inset: 0;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(31, 182, 224, 0.10) 1px, transparent 0);
 background-size: 28px 28px;
 pointer-events: none;
}
html.sandbox-about-page section.about-stats .wrap {
  position: relative; z-index: 1;
}
html.sandbox-about-page section.about-stats .stats-head {
  display: flex;
 flex-wrap: wrap;
 align-items: baseline;
 justify-content: space-between;
 gap: 24px;
 margin-bottom: clamp(40px, 5vw, 64px);
}
html.sandbox-about-page section.about-stats .stats-head .lbl {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-about-page section.about-stats .stats-head h2 {
  font-size: clamp(24px, 2.6vw, 36px);
 font-weight: 500;
 letter-spacing: -0.02em;
 color: var(--ivory);
 margin: 0;
 max-width: 38ch;
}
html.sandbox-about-page section.about-stats .about-stats-grid {
  display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 0;
 border-top: 1px solid var(--rule-dark-strong);
 border-bottom: 1px solid var(--rule-dark-strong);
 padding: clamp(40px, 5vw, 56px) 0;
}
html.sandbox-about-page section.about-stats .stat-cell {
  padding: 0 28px;
 border-right: 1px solid var(--rule-dark);
 display: flex;
 flex-direction: column;
 gap: 14px;
}
html.sandbox-about-page section.about-stats .stat-cell:last-child {
  border-right: 0;
}
html.sandbox-about-page section.about-stats .stat-num {
  font-family: var(--sans);
 font-size: clamp(48px, 7vw, 96px);
 font-weight: 500;
 letter-spacing: -0.03em;
 line-height: 0.9;
 color: var(--ivory);
}
html.sandbox-about-page section.about-stats .stat-num .sup {
  font-size: 0.42em;
 color: var(--signal);
 vertical-align: top;
 margin-left: 2px;
}
html.sandbox-about-page section.about-stats .stat-lbl {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--ivory-mute);
}
@media (max-width: 820px) {
html.sandbox-about-page section.about-stats .about-stats-grid {
  grid-template-columns: repeat(2, 1fr); row-gap: 48px;
}
html.sandbox-about-page section.about-stats .stat-cell:nth-child(2) {
  border-right: 0;
}
}

/* === Migrated from view 6703 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6703 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #0D9488;
}
body .slr-about-hero h1 .accent, html.sandbox-contact-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-contact-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .section-head .head-tag .lbl, body .head-tag .lbl, html.sandbox-contact-page .section-head .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-contact-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-contact-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-contact-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-contact-page .slr-about-hero.hero.hero-inner-page {
  background: var(--paper) ;
 color: var(--ink) ;
}
html.sandbox-contact-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-contact-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-contact-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-contact-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-contact-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-contact-page .slr-about-hero .hero-kicker {
  color: var(--steel-1) ;
 border-color: var(--rule-strong) ;
 background: color-mix(in srgb, var(--paper) 72%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-contact-page .slr-about-hero h1 {
  color: var(--ink) ;
 text-shadow: none ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-contact-page .slr-about-hero h1 .accent {
  color: var(--page-accent, var(--warm)) ;
}
html.sandbox-contact-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-contact-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-contact-page .footer {
  background: var(--ink-deep) ;
}
html.sandbox-contact-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-contact-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
html.sandbox-contact-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--ivory);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-dark-strong);
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent);
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
 font-weight: 500;
}
html.sandbox-contact-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px;
 border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}
html.sandbox-contact-page .hero.hero-inner-page {
  padding-top: 96px;
 padding-bottom: clamp(48px, 6vw, 80px);
 min-height: 0;
}
html.sandbox-contact-page .hero.hero-inner-page .hero-video, html.sandbox-contact-page .hero.hero-inner-page .hero-video-overlay, html.sandbox-contact-page .hero.hero-inner-page #hero-canvas {
  display: none;
}
html.sandbox-contact-page .hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 linear-gradient(180deg, color-mix(in srgb, var(--ink) 35%, transparent) 0%, color-mix(in srgb, var(--ink-deep) 78%, transparent) 100%);
}
html.sandbox-contact-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px;
 padding-bottom: 0;
 position: relative;
 z-index: 2;
}
html.sandbox-contact-page .hero.hero-inner-page .hero-grid {
  opacity: 0.55;
}
html.sandbox-contact-page .hero.hero-inner-page .vanta-bg {
  position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: auto;
 opacity: 0.85;
 mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
 -webkit-mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
}
html.sandbox-contact-page .hero.hero-inner-page .hero-lede {
  color: var(--ivory-mute);
 font-size: clamp(15px, 1.3vw, 17px);
 line-height: 1.6;
 max-width: 58ch;
 margin-top: 22px;
}
html.sandbox-contact-page .ct-section {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-contact-page .ct-section .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-contact-page .ct-grid {
  display: grid;
 grid-template-columns: minmax(180px, 220px) 1fr;
 gap: clamp(28px, 5vw, 72px);
 align-items: start;
}
@media (max-width: 860px) {
html.sandbox-contact-page .ct-grid {
  grid-template-columns: 1fr; gap: 28px;
}
}
html.sandbox-contact-page .ct-aside .lbl {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 
 display: block; color: var(--warm) ; font-weight: 700 ;
}
html.sandbox-contact-page .ct-aside h2 {
  margin-top: 14px;
 font-size: clamp(22px, 2.2vw, 30px);
 letter-spacing: -0.02em;
 color: var(--ink);
 max-width: 14ch;
}
html.sandbox-contact-page .ct-aside p {
  margin-top: 14px;
 color: var(--steel-2);
 font-size: 14px;
 line-height: 1.65;
 max-width: 30ch;
}
html.sandbox-contact-page .contact-form-fields {
  display: grid;
 grid-template-columns: 1fr 1fr;
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 560px) {
html.sandbox-contact-page .contact-form-fields {
  grid-template-columns: 1fr;
}
}
html.sandbox-contact-page .field {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 16px 18px 14px;
 display: flex;
 flex-direction: column;
 gap: 8px;
 background: transparent;
 transition: background 200ms var(--ease);
}
html.sandbox-contact-page .field:focus-within {
  background: color-mix(in srgb, var(--paper-2) 60%, transparent);
}
html.sandbox-contact-page .field.field-wide {
  grid-column: 1 / -1;
}
html.sandbox-contact-page .field label {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-contact-page .field input, html.sandbox-contact-page .field textarea {
  font-family: var(--sans);
 font-size: 15px;
 color: var(--ink);
 background: transparent;
 border: 0;
 padding: 0;
 width: 100%;
 line-height: 1.5;
}
html.sandbox-contact-page .field input:focus, html.sandbox-contact-page .field textarea:focus {
  outline: none;
}
html.sandbox-contact-page .field input::placeholder, html.sandbox-contact-page .field textarea::placeholder {
  color: var(--steel-4);
}
html.sandbox-contact-page .field textarea {
  resize: vertical; min-height: 96px;
}
html.sandbox-contact-page .field-phone {
  display: flex; align-items: baseline; gap: 8px;
}
html.sandbox-contact-page .field-phone .prefix {
  color: var(--steel-2); font-size: 15px; font-family: var(--sans);
}
html.sandbox-contact-page .form-actions {
  display: flex;
 align-items: center;
 gap: 18px;
 flex-wrap: wrap;
 padding-top: 24px;
}
html.sandbox-contact-page .form-note {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.06em;
 color: var(--steel-3);
 max-width: 40ch;
 line-height: 1.6;
}
html.sandbox-contact-page .booking {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-contact-page .booking .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 28px);
}
html.sandbox-contact-page .booking-grid {
  display: grid;
 grid-template-columns: repeat(3, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 940px) {
html.sandbox-contact-page .booking-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 600px) {
html.sandbox-contact-page .booking-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-contact-page .book-card {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 24px 24px 22px;
 display: flex;
 flex-direction: column;
 gap: 12px;
 min-height: 196px;
 position: relative;
 color: var(--steel-1);
 text-decoration: none;
 transition: background 220ms var(--ease), padding-left 220ms var(--ease);
}
html.sandbox-contact-page .book-card::before {
  content: "";
 position: absolute;
 left: 0; top: 24px;
 width: 2px; height: 0;
 background: var(--warm);
 transition: height 220ms var(--ease);
}
html.sandbox-contact-page .book-card:hover {
  background: color-mix(in srgb, var(--paper-2) 55%, transparent); padding-left: 30px;
}
html.sandbox-contact-page .book-card:hover::before {
  height: 28px;
}
html.sandbox-contact-page .book-card .book-cat {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--warm);
}
html.sandbox-contact-page .book-card .book-title {
  font-size: 17px;
 letter-spacing: -0.014em;
 color: var(--ink);
 font-weight: 500;
 line-height: 1.3;
}
html.sandbox-contact-page .book-card .book-desc {
  font-size: 13px;
 line-height: 1.55;
 color: var(--steel-2);
 max-width: 30ch;
}
html.sandbox-contact-page .book-card .book-foot {
  margin-top: auto;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 12px;
}
html.sandbox-contact-page .book-durations {
  display: flex; gap: 6px; flex-wrap: wrap;
}
html.sandbox-contact-page .book-dur {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.04em;
 color: var(--steel-2);
 border: 1px solid var(--rule-strong);
 padding: 4px 9px;
 white-space: nowrap;
}
html.sandbox-contact-page .book-card .book-arr {
  font-size: 15px;
 color: var(--steel-3);
 transition: transform 220ms var(--ease), color 220ms var(--ease);
}
html.sandbox-contact-page .book-card:hover .book-arr {
  transform: translateX(3px); color: var(--ink);
}
html.sandbox-contact-page .booking-more {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 margin-top: 26px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--steel-2);
 background: transparent;
 border: 1px solid var(--rule-strong);
 padding: 11px 16px;
 cursor: pointer;
 transition: border-color 200ms var(--ease), color 200ms var(--ease);
}
html.sandbox-contact-page .booking-more:hover {
  border-color: var(--ink); color: var(--ink);
}
html.sandbox-contact-page .booking-more .chev {
  transition: transform 240ms var(--ease); display: inline-block;
}
html.sandbox-contact-page .booking-more[aria-expanded="true"] .chev {
  transform: rotate(180deg);
}
html.sandbox-contact-page #booking-more-grid[hidden] {
  display: none;
}
html.sandbox-contact-page #booking-more-grid {
  border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
 margin-top: 22px;
}
html.sandbox-contact-page .contacts {
  background: var(--paper); color: var(--steel-1); border-top: 1px solid var(--rule);
}
html.sandbox-contact-page .contacts .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 28px);
}
html.sandbox-contact-page .contacts .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-contact-page .contacts .head-body h2 {
  color: var(--ink);
}
html.sandbox-contact-page .contacts-grid {
  display: grid;
 grid-template-columns: repeat(4, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 880px) {
html.sandbox-contact-page .contacts-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 480px) {
html.sandbox-contact-page .contacts-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-contact-page .contact-card {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 26px 24px 28px;
 display: flex;
 flex-direction: column;
 gap: 8px;
 min-height: 168px;
}
html.sandbox-contact-page .contact-card .c-name {
  font-size: 17px; color: var(--ink); letter-spacing: -0.014em;
}
html.sandbox-contact-page .contact-card .c-role {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--warm);
}
html.sandbox-contact-page .contact-card .c-mail {
  margin-top: auto;
 font-size: 13.5px;
 color: var(--steel-2);
 text-decoration: none;
 transition: color 200ms var(--ease);
 word-break: break-word;
}
html.sandbox-contact-page .contact-card .c-mail:hover {
  color: var(--ink);
}
html.sandbox-contact-page .offices {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-contact-page .offices .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 28px);
}
html.sandbox-contact-page .offices-grid {
  display: grid;
 grid-template-columns: 1fr 1fr;
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 720px) {
html.sandbox-contact-page .offices-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-contact-page .office-card {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 30px 28px 34px;
 display: flex;
 flex-direction: column;
 gap: 10px;
}
html.sandbox-contact-page .office-card .o-label {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--warm);
}
html.sandbox-contact-page .office-card h3 {
  font-size: clamp(20px, 1.8vw, 24px); letter-spacing: -0.018em; color: var(--ink);
}
html.sandbox-contact-page .office-card .o-addr {
  font-size: 14px; line-height: 1.65; color: var(--steel-2); max-width: 38ch;
}
html.sandbox-contact-page .office-card .o-entity {
  font-size: 12.5px; color: var(--steel-3); margin-top: 4px;
}
html.sandbox-contact-page .office-map {
  margin-top: 18px;
 border: 1px solid var(--rule-strong);
 line-height: 0;
 background: var(--paper-2);
 position: relative;
 overflow: hidden;
}
html.sandbox-contact-page .office-map iframe {
  display: block;
 width: 100%;
 height: 240px;
 border: 0;
 position: relative;
 z-index: 1;
 background: transparent;
 filter: grayscale(1) contrast(0.92) brightness(1.02);
 transition: filter 320ms var(--ease);
}
html.sandbox-contact-page .office-card:hover .office-map iframe {
  filter: grayscale(0) contrast(1) brightness(1);
}
html.sandbox-contact-page .office-map .map-fallback {
  position: absolute;
 inset: 0;
 z-index: 0;
 display: flex;
 flex-direction: column;
 align-items: center;
 justify-content: center;
 gap: 10px;
 text-decoration: none;
 line-height: 1.4;
 background-image:
 linear-gradient(var(--rule) 1px, transparent 1px),
 linear-gradient(90deg, var(--rule) 1px, transparent 1px);
 background-size: 28px 28px;
 background-position: center;
}
html.sandbox-contact-page .office-map .map-fallback .mf-pin {
  width: 14px; height: 14px;
 border-radius: 50% 50% 50% 0;
 background: var(--warm);
 transform: rotate(-45deg);
 box-shadow: 0 0 0 4px color-mix(in srgb, var(--warm) 20%, transparent);
}
html.sandbox-contact-page .office-map .map-fallback .mf-link {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.1em;
 color: var(--steel-2);
}
html.sandbox-contact-page .office-map .map-fallback:hover .mf-link {
  color: var(--ink);
}
html.sandbox-contact-page .hero.hero-inner-page .hero-lede {
  color: var(--steel-2) ; text-shadow: none ;
}

/* === Migrated from view 6704 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

body .news-item .news-figure::before {
  content: "";
 position: absolute;
 inset: 0;
 pointer-events: none;
 background: linear-gradient(180deg, rgba(255,255,255,0.06) 0%, transparent 25%, transparent 75%, rgba(10,26,44,0.05) 100%);
 z-index: 1;
}
html.sandbox-news-page .news-section {
  background: #FFFFFF ;
}
body .news-item, html.sandbox-news-page .news-item {
  position: relative;
 background: #FFFFFF ;
 border: 2.5px solid var(--rule-strong) ;
 border-radius: 4px;
 box-shadow:
 0 1px 0 rgba(10,26,44,0.05),
 0 18px 36px -20px rgba(10, 26, 44, 0.22),
 0 4px 10px -4px rgba(10, 26, 44, 0.08) ;
 transition: transform 280ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 280ms ease, border-color 240ms ease ;
 overflow: hidden;
}
body .news-item:hover {
  transform: translateY(-3px) ;
 box-shadow:
 0 1px 0 rgba(10,26,44,0.06),
 0 30px 60px -22px rgba(10, 26, 44, 0.30),
 0 8px 16px -6px rgba(10, 26, 44, 0.10) ;
 border-color: var(--page-accent) ;
}

body .news-item .news-figure::before {
  display: none;
}
body .news-item:hover .news-figure img {
  transform: scale(1.025); filter: saturate(1);
}

/* === Migrated from view 6704 inline block #1 === */
html.sandbox-news-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--ivory);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-dark-strong);
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent);
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
 font-weight: 500;
}
html.sandbox-news-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px;
 border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}
html.sandbox-news-page .hero.hero-inner-page {
  padding-top: 96px;
 padding-bottom: clamp(48px, 6vw, 80px);
 min-height: 0;
}
html.sandbox-news-page .hero.hero-inner-page .hero-video, html.sandbox-news-page .hero.hero-inner-page .hero-video-overlay, html.sandbox-news-page .hero.hero-inner-page #hero-canvas {
  display: none;
}
html.sandbox-news-page .hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
}
html.sandbox-news-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px;
 padding-bottom: 0;
 position: relative;
 z-index: 2;
}
html.sandbox-news-page .hero.hero-inner-page .hero-grid {
  opacity: 0.55;
}
html.sandbox-news-page .hero.hero-inner-page .vanta-bg {
  position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: auto;
 opacity: 0.85;
 mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
 -webkit-mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
}
html.sandbox-news-page .news-section {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-news-page .news-section .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-news-page .news-list {
  border-top: 1px solid var(--rule);
}
html.sandbox-news-page .news-item {
  display: grid;
 grid-template-columns: minmax(260px, 340px) 1fr;
 gap: clamp(28px, 4vw, 56px);
 align-items: start;
 padding: clamp(28px, 3.5vw, 48px) 0 clamp(32px, 4vw, 56px);
 border-bottom: 1px solid var(--rule);
}
html.sandbox-news-page .news-item:last-child {
  border-bottom: 0;
}
@media (max-width: 760px) {
html.sandbox-news-page .news-item {
  grid-template-columns: 1fr; gap: 20px;
}
}
html.sandbox-news-page .news-side {
  display: flex;
 flex-direction: column;
 gap: clamp(16px, 1.6vw, 22px);
}
html.sandbox-news-page .news-figure {
  margin: 0;
 position: relative;
 background: var(--paper-2);
 border: 1px solid var(--rule);
}
html.sandbox-news-page .news-figure img {
  display: block;
 width: 100%;
 height: auto;
}
html.sandbox-news-page .news-figure .news-caption {
  position: absolute;
 left: 10px;
 bottom: 10px;
 z-index: 2;
 font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--ivory);
 background: rgba(6, 15, 30, 0.72);
 backdrop-filter: blur(4px);
 -webkit-backdrop-filter: blur(4px);
 padding: 6px 9px;
 pointer-events: none;
}
html.sandbox-news-page .news-meta {
  display: flex;
 flex-direction: column;
 gap: 8px;
 padding-top: 6px;
}
html.sandbox-news-page .news-meta .news-date {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-2);
 font-feature-settings: "tnum";
 position: relative;
 padding-left: 14px;
}
html.sandbox-news-page .news-meta .news-date::before {
  content: "";
 position: absolute;
 left: 0;
 top: 4px;
 width: 2px;
 height: 12px;
 background: var(--warm);
}
html.sandbox-news-page .news-meta .news-cat {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
 padding-left: 14px;
}
html.sandbox-news-page .news-meta .news-loc {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.06em;
 color: var(--steel-3);
 padding-left: 14px;
 margin-top: 8px;
}
html.sandbox-news-page .news-body {
  display: flex;
 flex-direction: column;
 gap: 16px;
 max-width: 72ch;
}
html.sandbox-news-page .news-body h2 {
  font-size: clamp(22px, 2vw, 28px);
 line-height: 1.2;
 letter-spacing: -0.022em;
 color: var(--ink);
 font-weight: 500;
 max-width: 28ch;
}
html.sandbox-news-page .news-body p {
  color: var(--steel-2);
 font-size: 14.5px;
 line-height: 1.7;
}
html.sandbox-news-page .news-body .news-more {
  align-self: flex-start;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: var(--steel-2);
 display: inline-flex;
 align-items: center;
 gap: 8px;
 padding: 8px 10px;
 border: 1px solid var(--rule-strong);
 transition: border-color 200ms var(--ease), color 200ms var(--ease), background 200ms var(--ease);
 margin-top: 6px;
}
html.sandbox-news-page .news-body .news-more:hover {
  color: var(--paper);
 background: var(--ink);
 border-color: var(--ink);
}
html.sandbox-news-page .news-body .news-more .arr {
  transition: transform 220ms var(--ease);
}
html.sandbox-news-page .news-body .news-more:hover .arr {
  transform: translateX(3px);
}
html.sandbox-news-page .cta-final .cta-inner {
  border-top: 0;
}
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #1D4ED8;
}
body .slr-about-hero h1 .accent, html.sandbox-news-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-news-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .section-head .head-tag .lbl, body .head-tag .lbl, html.sandbox-news-page .section-head .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-news-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-news-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-news-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-news-page .slr-about-hero.hero.hero-inner-page {
  background: var(--paper) ;
 color: var(--ink) ;
}
html.sandbox-news-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-news-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-news-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-news-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-news-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
html.sandbox-news-page .slr-about-hero .hero-kicker {
  color: var(--steel-1) ;
 border-color: var(--rule-strong) ;
 background: color-mix(in srgb, var(--paper) 72%, transparent) ;
}
body .slr-about-hero h1, body.sandbox-news-page .slr-about-hero h1, body.sandbox-news-page .hero.hero-inner-page h1, html.sandbox-news-page .slr-about-hero h1 {
  color: var(--ink) ;
 text-shadow: none ;
 font-weight: 600;
}
body.sandbox-news-page
  
  .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-news-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
html.sandbox-news-page .news-section {
  border-top: 0 ;
}
html.sandbox-news-page .news-section .section-head {
  border-top: 0 ;
}
body .news-list, html.sandbox-news-page .news-list {
  display: flex ;
 flex-direction: column;
 gap: clamp(24px, 3vw, 40px) ;
 border-top: 0 ;
 margin-top: clamp(24px, 3vw, 40px);
}
body .news-item, html.sandbox-news-page .news-item {
  display: grid ;
 grid-template-columns: minmax(260px, 340px) 1fr ;
 grid-template-areas: "media body" ;
 gap: clamp(28px, 4vw, 56px) ;
 background: #FFFFFF ;
 border: 2.5px solid var(--rule-strong) ;
 border-bottom: 2.5px solid var(--rule-strong) ;
 padding: clamp(28px, 3.5vw, 48px) clamp(28px, 3.5vw, 48px) clamp(32px, 4vw, 56px) ;
 overflow: hidden;
 position: relative;
 transition: transform 360ms cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 360ms cubic-bezier(0.2, 0.7, 0.2, 1), border-color 320ms ease;
 box-shadow: 0 18px 36px -20px rgba(10, 26, 44, 0.22), 0 4px 10px -4px rgba(10, 26, 44, 0.08), 0 1px 0 rgba(10, 26, 44, 0.05);
 align-items: start ;
}
body .news-item:last-child {
  border-bottom: 2.5px solid var(--rule-strong) ;
}
body .news-item:hover {
  transform: translateY(-3px);
 box-shadow: 0 30px 60px -22px rgba(10, 26, 44, 0.30), 0 8px 16px -6px rgba(10, 26, 44, 0.10), 0 1px 0 rgba(10, 26, 44, 0.06);
 border-color: var(--page-accent) ;
}
body .news-item::before {
  content: "";
 position: absolute;
 top: 0; left: 0; height: 3px; width: 0;
 background: var(--page-accent);
 transition: width 480ms cubic-bezier(0.2, 0.7, 0.2, 1);
 z-index: 3;
}
body .news-item:hover::before {
  width: 100%;
}
body .news-item .news-side {
  grid-area: media;
 display: flex ;
 flex-direction: column;
 gap: clamp(16px, 1.6vw, 22px);
 background: transparent;
}
body .news-item .news-figure {
  margin: 0;
  border: 0;
  outline: 0;
  background: var(--paper-2);
  overflow: hidden;
  position: relative;
  border-radius: 3px;
  box-shadow: 0 22px 70px 4px rgba(10,26,44,0.32), 0 2px 8px rgba(10,26,44,0.14);
}
body .news-item .news-figure img {
  width: 100% ;
 height: auto ;
 display: block;
 transition: transform 700ms cubic-bezier(0.2, 0.7, 0.2, 1), filter 400ms ease;
 filter: saturate(0.95);
}
body .news-item:hover .news-figure img {
  transform: scale(1.04);
 filter: saturate(1.05);
}
body .news-item .news-meta {
  padding: 6px 0 0 ;
 display: flex; flex-direction: column ; gap: 8px ;
 border-top: 0 ;
 background: transparent;
}
body .news-item .news-meta .news-date {
  color: var(--page-accent) ;
 padding-left: 12px ;
 font-weight: 500;
}
body .news-item .news-meta .news-date::before {
  background: var(--page-accent) ;
 width: 2px ; height: 11px ; top: 4px ;
}
body .news-item .news-body {
  grid-area: body;
 padding: 0 ;
 display: flex; flex-direction: column; gap: 14px ;
 max-width: none ;
}
body .news-item .news-body h2 {
  font-size: clamp(20px, 1.8vw, 26px) ;
 line-height: 1.25 ;
 letter-spacing: -0.018em ;
 color: var(--ink) ;
 font-weight: 600;
 max-width: 32ch ;
 margin: 0 ;
 transition: color 280ms ease;
}
body .news-item:hover .news-body h2 {
  color: var(--page-accent) ;
}
body .news-item .news-body p {
  color: var(--steel-2) ;
 font-size: 14.5px ;
 line-height: 1.65 ;
 margin: 0;
}
body .news-item .news-body p {
  display: block ;
}
body .news-item.reveal {
  opacity: 0;
 transform: translateY(36px) scale(0.985);
 transition: opacity 360ms cubic-bezier(0.2, 0.7, 0.2, 1), transform 360ms cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 360ms ease, border-color 320ms ease;
}
body .news-item.reveal.in {
  opacity: 1; transform: none;
}
body .news-list > .news-item:nth-of-type(1).reveal {
  transition-delay: 0ms;
}
body .news-list > .news-item:nth-of-type(2).reveal {
  transition-delay: 40ms;
}
body .news-list > .news-item:nth-of-type(3).reveal {
  transition-delay: 80ms;
}
body .news-list > .news-item:nth-of-type(4).reveal {
  transition-delay: 120ms;
}
body .news-list > .news-item:nth-of-type(5).reveal {
  transition-delay: 160ms;
}
body .news-list > .news-item:nth-of-type(n+6).reveal {
  transition-delay: 160ms;
}
@media (max-width: 760px) {
body .news-item, html.sandbox-news-page .news-item {
  grid-template-columns: 1fr ;
 grid-template-areas: "media" "body" ;
}
body .news-item .news-side {
  border-right: 0; border-bottom: 1px solid var(--rule);
}
body .news-item .news-meta {
  padding: 12px 20px 14px ;
}
}
html.sandbox-news-page .footer {
  background: var(--ink-deep) ;
}
html.sandbox-news-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-news-page .footer .brand-logo {
  height: 43px ;
}

/* === Migrated from view 6705 inline block #0 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-svc-medical-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-svc-medical-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-svc-medical-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-medical-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
 color: var(--ivory) ;
}
html.sandbox-svc-medical-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-svc-medical-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-svc-medical-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-svc-medical-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-svc-medical-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-svc-medical-page .slr-about-hero .hero-kicker {
  color: var(--ivory) ;
 border-color: var(--rule-dark-strong) ;
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent) ;
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-svc-medical-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-svc-medical-page .slr-about-hero h1 {
  color: var(--ivory) ;
 text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45) ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-svc-medical-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .lede, body .slr-about-hero .hero-lede, html.sandbox-svc-medical-page .slr-about-hero .lede, html.sandbox-svc-medical-page .slr-about-hero .hero-lede {
  color: var(--ivory-mute) ;
 text-shadow: none ;
}
html.sandbox-svc-medical-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-svc-medical-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-svc-medical-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-svc-medical-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
html.sandbox-svc-medical-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--ivory);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-dark-strong);
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent);
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
 font-weight: 500;
}
html.sandbox-svc-medical-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px;
 border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}
html.sandbox-svc-medical-page .hero.hero-inner-page {
  padding-top: 96px;
 padding-bottom: clamp(48px, 6vw, 80px);
 min-height: 0;
}
html.sandbox-svc-medical-page .hero.hero-inner-page .hero-video, html.sandbox-svc-medical-page .hero.hero-inner-page .hero-video-overlay, html.sandbox-svc-medical-page .hero.hero-inner-page #hero-canvas {
  display: none;
}
html.sandbox-svc-medical-page .hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 linear-gradient(180deg, color-mix(in srgb, var(--ink) 35%, transparent) 0%, color-mix(in srgb, var(--ink-deep) 78%, transparent) 100%);
}
html.sandbox-svc-medical-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px;
 padding-bottom: 0;
}
html.sandbox-svc-medical-page .hero.hero-inner-page .hero-grid {
  opacity: 0.55;
}
html.sandbox-svc-medical-page .hero.hero-inner-page .vanta-bg {
  position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: auto;
 opacity: 0.85;
 mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
 -webkit-mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
}
html.sandbox-svc-medical-page .placeholder-section {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-svc-medical-page .placeholder-section .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-svc-medical-page .placeholder-note {
  border: 1px dashed var(--rule-strong);
 background: var(--paper-2);
 padding: clamp(28px, 4vw, 48px);
 display: flex;
 flex-direction: column;
 gap: 10px;
 align-items: flex-start;
}
html.sandbox-svc-medical-page .placeholder-note .ph-label {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-svc-medical-page .placeholder-note p {
  color: var(--steel-2);
 font-size: 15px;
 line-height: 1.6;
 max-width: 52ch;
}
html.sandbox-svc-medical-page .cta-final .cta-inner {
  border-top: 0;
}
html.sandbox-svc-medical-page .capabilities {
  background: var(--paper);
}
html.sandbox-svc-medical-page .capabilities .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-svc-medical-page .cap-grid {
  display: grid;
 grid-template-columns: repeat(4, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 900px) {
html.sandbox-svc-medical-page .cap-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 560px) {
html.sandbox-svc-medical-page .cap-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-medical-page .cap-cell {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 26px 24px 26px;
 display: flex;
 flex-direction: column;
 gap: 10px;
 min-height: 206px;
 background: transparent;
 transition: background 240ms var(--ease);
}
html.sandbox-svc-medical-page .cap-cell:hover {
  background: var(--paper-2);
}
html.sandbox-svc-medical-page .cap-cell .cap-idx {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-svc-medical-page .cap-cell h3 {
  font-size: 16px;
 letter-spacing: -0.014em;
 color: var(--ink);
 font-weight: 500;
 line-height: 1.28;
 max-width: 22ch;
}
html.sandbox-svc-medical-page .cap-cell p {
  font-size: 13px;
 color: var(--steel-2);
 line-height: 1.55;
 max-width: 30ch;
}
html.sandbox-svc-medical-page .cap-cell .cap-tags {
  display: flex;
 flex-wrap: wrap;
 gap: 6px;
 margin-top: auto;
 padding-top: 14px;
}
html.sandbox-svc-medical-page .cap-cell .cap-tag {
  font-family: var(--mono);
 font-size: 9.5px;
 letter-spacing: 0.05em;
 color: var(--steel-2);
 border: 1px solid var(--rule-strong);
 padding: 3px 7px;
}
html.sandbox-svc-medical-page .cases .case-card {
  position: relative;
 transition:
 background 280ms var(--ease),
 transform 340ms var(--ease),
 box-shadow 340ms var(--ease),
 border-color 340ms var(--ease);
}
html.sandbox-svc-medical-page .cases .case-card .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  stroke-dasharray: 620;
 stroke-dashoffset: 620;
}
html.sandbox-svc-medical-page .cases .case-card.reveal.in .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  stroke-dashoffset: 0;
 animation: caseDraw 2000ms cubic-bezier(.45, 0, .15, 1) both;
}
html.sandbox-svc-medical-page .cases .case-card:nth-child(2).reveal.in .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  animation-delay: 160ms;
}
html.sandbox-svc-medical-page .cases .case-card:nth-child(3).reveal.in .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  animation-delay: 120ms;
}
html.sandbox-svc-medical-page .cases .case-card:nth-child(4).reveal.in .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  animation-delay: 280ms;
}
html.sandbox-svc-medical-page .cases .case-card:nth-child(5).reveal.in .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  animation-delay: 220ms;
}
@keyframes caseDraw {
  from { stroke-dashoffset: 620; }
    to   { stroke-dashoffset: 0; }
}
html.sandbox-svc-medical-page .cases .case-card .case-illus svg text {
  opacity: 0; transition: opacity 600ms var(--ease);
}
html.sandbox-svc-medical-page .cases .case-card.reveal.in .case-illus svg text {
  opacity: 1; transition-delay: 1150ms;
}
html.sandbox-svc-medical-page .cases .case-card.reveal.in:hover {
  transform: translateY(-5px);
 background: var(--paper-2);
 box-shadow: 0 22px 48px -30px rgba(10, 26, 44, 0.55);
 border-color: var(--rule-strong);
 z-index: 2;
}
html.sandbox-svc-medical-page .cases .case-card.reveal.in:hover .case-illus .acc-stroke {
  animation: caseAccPulse 1100ms var(--ease) 1;
}
@keyframes caseAccPulse {
  0%, 100% { opacity: 1; }
    45%      { opacity: 0.3; }
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-svc-medical-page .cases .case-card .case-illus svg :is(line, html.sandbox-svc-medical-page rect, html.sandbox-svc-medical-page circle, html.sandbox-svc-medical-page path, html.sandbox-svc-medical-page polyline, html.sandbox-svc-medical-page polygon) {
  stroke-dasharray: none;
 stroke-dashoffset: 0;
}
html.sandbox-svc-medical-page .cases .case-card .case-illus svg text {
  opacity: 1;
}
}
html.sandbox-svc-medical-page .lifecycle .vnotes.reveal {
  opacity: 1; transform: none;
}
html.sandbox-svc-medical-page .lifecycle .vnotes .vnote {
  position: relative;
 opacity: 0;
 transform: translateY(20px);
 transition: opacity 640ms var(--ease-soft), transform 640ms var(--ease-soft);
}
html.sandbox-svc-medical-page .lifecycle .vnotes .vnote::before {
  content: "";
 position: absolute;
 top: -1px;
 left: -1px;
 right: -1px;
 height: 2px;
 background: var(--signal);
 transform: scaleX(0);
 transform-origin: left;
 transition: transform 620ms cubic-bezier(.45, 0, .15, 1);
 z-index: 2;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote {
  opacity: 1; transform: none;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote::before {
  transform: scaleX(1);
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(1), html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(1)::before {
  transition-delay: 500ms;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(2) {
  transition-delay: 650ms;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(2)::before {
  transition-delay: 650ms;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(3) {
  transition-delay: 800ms;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(3)::before {
  transition-delay: 800ms;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(4) {
  transition-delay: 950ms;
}
html.sandbox-svc-medical-page .lifecycle .vnotes.in .vnote:nth-child(4)::before {
  transition-delay: 950ms;
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-svc-medical-page .lifecycle .vnotes .vnote {
  opacity: 1; transform: none;
}
html.sandbox-svc-medical-page .lifecycle .vnotes .vnote::before {
  transform: scaleX(1);
}
}
html.sandbox-svc-medical-page .lifecycle .vfig.reveal {
  opacity: 1; transform: none;
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-side {
  opacity: 0;
 transition: opacity 580ms var(--ease-soft), transform 580ms var(--ease-soft);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-design {
  transform: translateX(-20px);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-verify {
  transform: translateX(20px);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-center {
  transform: translateY(14px);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-dash {
  transform: scaleX(0);
 transform-origin: center;
 transition: transform 520ms var(--ease);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-dash.vert {
  transform: scaleY(0); transform-origin: top;
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-ref {
  opacity: 0; transition: opacity 420ms var(--ease);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-dot {
  opacity: 0; transition: opacity 360ms var(--ease);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-floor {
  --d: 4;
}
html.sandbox-svc-medical-page .lifecycle .vfig.in .vphase-side {
  opacity: 1;
 transform: none;
 transition-delay: calc(450ms + var(--d, 0) * 180ms);
}
html.sandbox-svc-medical-page .lifecycle .vfig.in .vphase-dot {
  opacity: 1;
 transition-delay: calc(520ms + var(--d, 0) * 180ms);
}
html.sandbox-svc-medical-page .lifecycle .vfig.in .vphase-dash {
  transform: scaleX(1);
 transition-delay: calc(640ms + var(--d, 0) * 180ms);
}
html.sandbox-svc-medical-page .lifecycle .vfig.in .vphase-dash.vert {
  transform: scaleY(1);
}
html.sandbox-svc-medical-page .lifecycle .vfig.in .vphase-ref {
  opacity: 0.85;
 transition-delay: calc(760ms + var(--d, 0) * 180ms);
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-side {
  opacity: 1; transform: none;
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-dash {
  transform: scaleX(1);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-dash.vert {
  transform: scaleY(1);
}
html.sandbox-svc-medical-page .lifecycle .vfig .vphase-ref, html.sandbox-svc-medical-page .lifecycle .vfig .vphase-dot {
  opacity: 0.85;
}
}

/* === Migrated from view 6706 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6706 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-svc-embedded-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-svc-embedded-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-svc-embedded-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-embedded-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
 color: var(--ivory) ;
}
html.sandbox-svc-embedded-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-svc-embedded-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-svc-embedded-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-svc-embedded-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-svc-embedded-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-svc-embedded-page .slr-about-hero .hero-kicker {
  color: var(--ivory) ;
 border-color: var(--rule-dark-strong) ;
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent) ;
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-svc-embedded-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-svc-embedded-page .slr-about-hero h1 {
  color: var(--ivory) ;
 text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45) ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-svc-embedded-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .lede, body .slr-about-hero .hero-lede, html.sandbox-svc-embedded-page .slr-about-hero .lede, html.sandbox-svc-embedded-page .slr-about-hero .hero-lede {
  color: var(--ivory-mute) ;
 text-shadow: none ;
}
html.sandbox-svc-embedded-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-svc-embedded-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-svc-embedded-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-svc-embedded-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-embedded-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
}

/* === Migrated from view 6706 inline block #2 === */
:root, body {
  --page-accent: #1FB6E0 ; --page-accent-2: #D26D43 ;
}
html.sandbox-svc-embedded-page .slr-about-hero, html.sandbox-svc-embedded-page .slr-about-hero * {
  --warm: var(--page-accent) ;
 --warm-2: var(--page-accent-2) ;
 --warm-soft: color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}

/* === Migrated from view 6707 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6707 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-svc-qa-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-svc-qa-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-svc-qa-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-qa-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
 color: var(--ivory) ;
}
html.sandbox-svc-qa-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-svc-qa-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-svc-qa-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-svc-qa-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-svc-qa-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-svc-qa-page .slr-about-hero .hero-kicker {
  color: var(--ivory) ;
 border-color: var(--rule-dark-strong) ;
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent) ;
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-svc-qa-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-svc-qa-page .slr-about-hero h1 {
  color: var(--ivory) ;
 text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45) ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-svc-qa-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .lede, body .slr-about-hero .hero-lede, html.sandbox-svc-qa-page .slr-about-hero .lede, html.sandbox-svc-qa-page .slr-about-hero .hero-lede {
  color: var(--ivory-mute) ;
 text-shadow: none ;
}
html.sandbox-svc-qa-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-svc-qa-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-svc-qa-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-svc-qa-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-qa-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
}

/* === Migrated from view 6707 inline block #2 === */
:root, body {
  --page-accent: #1FB6E0 ; --page-accent-2: #D26D43 ;
}
html.sandbox-svc-qa-page .slr-about-hero, html.sandbox-svc-qa-page .slr-about-hero * {
  --warm: var(--page-accent) ;
 --warm-2: var(--page-accent-2) ;
 --warm-soft: color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}

/* === Migrated from view 6708 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}
html.sandbox-svc-consulting-page section#why .vA-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr) ;
 grid-auto-rows: 1fr ;
 gap: clamp(24px, 2.6vw, 40px) ;
 margin-top: clamp(24px, 3vw, 44px);
 border: 0 ;
}
@media (max-width: 980px) {
html.sandbox-svc-consulting-page section#why .vA-grid {
  grid-template-columns: 1fr 1fr ;
}
}
@media (max-width: 620px) {
html.sandbox-svc-consulting-page section#why .vA-grid {
  grid-template-columns: 1fr ;
}
}
html.sandbox-svc-consulting-page section#why .vA-card {
  position: relative; height: 100%;
}
html.sandbox-svc-consulting-page section#why .vA-card::before, html.sandbox-svc-consulting-page section#why .vA-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page section#why .vA-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-svc-consulting-page section#why .vA-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-svc-consulting-page section#why .vA-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page section#why .vA-card:hover .vA-face {
  transform: translate(-3px, -3px);
 box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-svc-consulting-page section#why .vA-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-svc-consulting-page section#why .vA-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-svc-consulting-page section#why .vA-icon {
  width: 40px; height: 40px; color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page section#why .vA-icon use {
  stroke: currentColor; stroke-width: 1.4; fill: none;
}
html.sandbox-svc-consulting-page section#why .vA-card:hover .vA-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-svc-consulting-page section#why .vA-face h3 {
  font-size: 21px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); max-width: 18ch; margin-top: 4px;
}
html.sandbox-svc-consulting-page section#why .vA-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}
html.sandbox-svc-consulting-page .stats-display {
  display: grid ;
 grid-template-columns: repeat(4, 1fr) ;
 gap: 0 ;
 border-top: 0;
 border-bottom: 0;
 padding: 64px 0 ;
}
html.sandbox-svc-consulting-page .stats-display .stat-cell {
  padding: 0 36px;
 border-right: 1px solid var(--rule);
 display: flex ;
 flex-direction: column;
 gap: 18px;
}
html.sandbox-svc-consulting-page .stats-display .stat-cell:last-child {
  border-right: 0;
}
html.sandbox-svc-consulting-page .stats-display .stat-num {
  font-family: var(--sans);
 font-size: clamp(38px, 6vw, 86px) ;
 font-weight: 500;
 letter-spacing: -0.03em;
 line-height: 0.9;
 color: var(--steel-1) ;
 display: block;
}
html.sandbox-svc-consulting-page .stats-display .stat-num .sup {
  font-size: 0.42em;
 color: var(--signal-deep);
 vertical-align: top;
 font-weight: 400;
 margin-left: 4px;
 letter-spacing: 0;
}
html.sandbox-svc-consulting-page .stats-display .stat-lbl {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--steel-3) ;
 line-height: 1.5;
}
@media (max-width: 820px) {
html.sandbox-svc-consulting-page .stats-display {
  grid-template-columns: repeat(2, 1fr) ; row-gap: 48px ;
}
html.sandbox-svc-consulting-page .stats-display .stat-cell:nth-child(2) {
  border-right: 0;
}
}
html.sandbox-svc-consulting-page section.cons-exp {
  background: #FFFFFF ;
}
html.sandbox-svc-consulting-page .exp-ledger {
  border-top: 1px solid var(--rule); margin-top: clamp(28px, 3vw, 44px);
}
html.sandbox-svc-consulting-page .exp-row {
  position: relative;
 display: grid;
 grid-template-columns: 110px 1fr;
 gap: clamp(20px, 3vw, 48px);
 padding: clamp(28px, 3vw, 40px) 12px;
 border-bottom: 1px solid var(--rule);
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), padding 320ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 320ms cubic-bezier(0.2,0.7,0.2,1), z-index 0s;
 align-items: start;
}
html.sandbox-svc-consulting-page .exp-row::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0;
 width: 0; background: var(--warm);
 transition: width 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page .exp-row:hover {
  transform: translateY(-5px);
 padding-left: 26px;
 box-shadow: 0 28px 50px -34px rgba(10,26,44,0.4);
 border-bottom-color: transparent;
 z-index: 2;
 background: #FFFFFF;
}
html.sandbox-svc-consulting-page .exp-row:hover::before {
  width: 4px;
}
html.sandbox-svc-consulting-page .exp-num {
  font-family: var(--mono);
 font-weight: 600;
 font-size: clamp(44px, 5vw, 64px);
 line-height: 1;
 letter-spacing: -0.04em;
 color: transparent;
 -webkit-text-stroke: 1px var(--rule-strong);
 transition: color 320ms cubic-bezier(0.2,0.7,0.2,1), -webkit-text-stroke-color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page .exp-row:hover .exp-num {
  color: var(--signal-deep);
 -webkit-text-stroke-color: var(--signal-deep);
}
html.sandbox-svc-consulting-page .exp-row-body {
  display: flex; flex-direction: column; gap: 16px; min-width: 0;
}
html.sandbox-svc-consulting-page .exp-row-body h3 {
  font-size: clamp(20px, 1.9vw, 26px);
 font-weight: 600;
 letter-spacing: -0.022em;
 color: var(--ink);
 margin: 0;
}
html.sandbox-svc-consulting-page .exp-row-body ul {
  list-style: none; padding: 0; margin: 0;
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 8px clamp(20px, 2.5vw, 40px);
}
html.sandbox-svc-consulting-page .exp-row-body li {
  font-size: 14px;
 line-height: 1.55;
 color: var(--steel-2);
 position: relative;
 padding-left: 16px;
}
html.sandbox-svc-consulting-page .exp-row-body li::before {
  content: ""; position: absolute; left: 0; top: 9px;
 width: 6px; height: 6px; background: var(--signal-deep); opacity: 0.85;
}
@media (max-width: 760px) {
html.sandbox-svc-consulting-page .exp-row {
  grid-template-columns: 1fr; gap: 14px; padding-left: 0; padding-right: 0;
}
html.sandbox-svc-consulting-page .exp-row:hover {
  padding-left: 14px; padding-right: 14px;
}
html.sandbox-svc-consulting-page .exp-row-body ul {
  grid-template-columns: 1fr;
}
html.sandbox-svc-consulting-page .exp-num {
  font-size: 36px;
}
}
html.sandbox-svc-consulting-page section.cons-pm {
  background: #FFFFFF ; border-top: 1px solid var(--rule);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr);
 gap: clamp(20px, 2.4vw, 32px);
 margin-top: clamp(28px, 3vw, 44px);
}
@media (max-width: 980px) {
html.sandbox-svc-consulting-page section.cons-pm .pm-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 620px) {
html.sandbox-svc-consulting-page section.cons-pm .pm-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card {
  position: relative; height: 100%;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card::before, html.sandbox-svc-consulting-page section.cons-pm .pm-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2); border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card:hover .pm-face {
  transform: translate(-3px, -3px); box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-icon {
  width: 40px; height: 40px; color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-card:hover .pm-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-svc-consulting-page section.cons-pm .pm-face h3 {
  font-size: 20px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); margin: 4px 0 0;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-meta {
  margin-top: clamp(36px, 4vw, 56px);
 padding-top: clamp(24px, 2.6vw, 36px);
 border-top: 1px solid var(--rule);
 display: grid;
 grid-template-columns: 180px 1fr;
 gap: clamp(18px, 2.4vw, 36px);
 align-items: start;
}
@media (max-width: 720px) {
html.sandbox-svc-consulting-page section.cons-pm .pm-meta {
  grid-template-columns: 1fr; gap: 14px;
}
}
html.sandbox-svc-consulting-page section.cons-pm .pm-meta-l {
  font-family: var(--mono);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--warm);
 padding-top: 3px;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-meta-list {
  list-style: none; margin: 0; padding: 0;
 display: grid; grid-template-columns: 1fr 1fr;
 gap: 8px clamp(20px, 2.4vw, 40px);
}
@media (max-width: 720px) {
html.sandbox-svc-consulting-page section.cons-pm .pm-meta-list {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-consulting-page section.cons-pm .pm-meta-list li {
  font-size: 13.5px; line-height: 1.55; color: var(--steel-2);
 position: relative; padding-left: 16px;
}
html.sandbox-svc-consulting-page section.cons-pm .pm-meta-list li::before {
  content: ""; position: absolute; left: 0; top: 8px;
 width: 6px; height: 6px; background: var(--warm); opacity: 0.6;
}
html.sandbox-svc-consulting-page section.cons-process {
  background: #142B47 ; color: var(--ivory);
}
html.sandbox-svc-consulting-page section.cons-process h2, html.sandbox-svc-consulting-page section.cons-process .section-head h2 {
  color: #FFFFFF ;
}
html.sandbox-svc-consulting-page section.cons-process .lede {
  color: rgba(255,255,255,0.85) ;
}

/* === Migrated from view 6708 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-svc-consulting-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-svc-consulting-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-svc-consulting-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-consulting-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
 color: var(--ivory) ;
}
html.sandbox-svc-consulting-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-svc-consulting-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-svc-consulting-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-svc-consulting-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-svc-consulting-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-svc-consulting-page .slr-about-hero .hero-kicker {
  color: var(--ivory) ;
 border-color: var(--rule-dark-strong) ;
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent) ;
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-svc-consulting-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-svc-consulting-page .slr-about-hero h1 {
  color: var(--ivory) ;
 text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45) ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-svc-consulting-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .lede, body .slr-about-hero .hero-lede, html.sandbox-svc-consulting-page .slr-about-hero .lede, html.sandbox-svc-consulting-page .slr-about-hero .hero-lede {
  color: var(--ivory-mute) ;
 text-shadow: none ;
}
html.sandbox-svc-consulting-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-svc-consulting-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-svc-consulting-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-svc-consulting-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-consulting-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
}
html.sandbox-svc-consulting-page .hero.hero-inner-page .hero-ctas {
  display: flex; gap: 12px; margin-top: 32px; flex-wrap: wrap;
}
html.sandbox-svc-consulting-page .cons-trust {
  background: var(--paper-2); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule);
}
html.sandbox-svc-consulting-page .cons-trust .wrap {
  padding-top: 28px; padding-bottom: 28px; display: flex; align-items: center; gap: clamp(20px, 4vw, 56px); flex-wrap: wrap;
}
html.sandbox-svc-consulting-page .cons-trust .lbl {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; white-space: nowrap; color: var(--warm) ; font-weight: 700 ;
}
html.sandbox-svc-consulting-page .cons-trust .logos {
  display: flex; align-items: center; gap: clamp(20px, 3vw, 44px); flex-wrap: wrap;
}
html.sandbox-svc-consulting-page .cons-trust .logos img {
  height: 30px; width: auto; opacity: 0.7;
}
html.sandbox-svc-consulting-page .cons-people {
  background: var(--paper);
}
html.sandbox-svc-consulting-page .cons-people .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-svc-consulting-page .cons-grid {
  display: grid;
 grid-template-columns: repeat(2, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 760px) {
html.sandbox-svc-consulting-page .cons-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-consulting-page .cons-card {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 30px 30px 32px;
 display: grid;
 grid-template-columns: 84px 1fr;
 gap: 22px;
 align-items: start;
}
@media (max-width: 460px) {
html.sandbox-svc-consulting-page .cons-card {
  grid-template-columns: 1fr; gap: 16px;
}
}
html.sandbox-svc-consulting-page .cons-portrait {
  width: 84px; height: 84px;
 border: 1px solid var(--rule);
 background: #2E2032;
 overflow: hidden;
}
html.sandbox-svc-consulting-page .cons-portrait img {
  width: 100%; height: 100%; object-fit: cover; object-position: center 18%; display: block;
}
html.sandbox-svc-consulting-page .cons-card .role {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--warm);
}
html.sandbox-svc-consulting-page .cons-card .name {
  font-size: 19px; letter-spacing: -0.018em; font-weight: 500; color: var(--ink); margin-top: 6px;
}
html.sandbox-svc-consulting-page .cons-card .focus {
  font-size: 14px; color: var(--steel-1); line-height: 1.55; margin-top: 10px; max-width: 40ch;
}
html.sandbox-svc-consulting-page .cons-card .bio {
  font-size: 13px; color: var(--steel-2); line-height: 1.6; margin-top: 10px; max-width: 42ch;
}
html.sandbox-svc-consulting-page .cons-card .links {
  display: flex; gap: 16px; margin-top: 14px;
}
html.sandbox-svc-consulting-page .cons-card .links a {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--steel-2); border-bottom: 1px solid var(--rule-strong); padding-bottom: 2px; transition: color 200ms var(--ease), border-color 200ms var(--ease);
}
html.sandbox-svc-consulting-page .cons-card .links a:hover {
  color: var(--warm); border-color: var(--warm);
}
html.sandbox-svc-consulting-page .cons-exp {
  background: var(--paper-2); border-top: 1px solid var(--rule);
}
html.sandbox-svc-consulting-page .cons-exp .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-svc-consulting-page .exp-grid {
  display: grid;
 grid-template-columns: repeat(3, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 900px) {
html.sandbox-svc-consulting-page .exp-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 560px) {
html.sandbox-svc-consulting-page .exp-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-consulting-page .exp-cell {
  border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 28px 26px 30px;
 background: var(--paper);
 display: flex;
 flex-direction: column;
 gap: 14px;
}
html.sandbox-svc-consulting-page .exp-cell .exp-idx {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.18em; color: var(--steel-3);
}
html.sandbox-svc-consulting-page .exp-cell h3 {
  font-size: 16.5px; letter-spacing: -0.016em; font-weight: 500; color: var(--ink); line-height: 1.25; max-width: 22ch;
}
html.sandbox-svc-consulting-page .exp-cell ul {
  list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 9px;
}
html.sandbox-svc-consulting-page .exp-cell li {
  position: relative; padding-left: 18px; font-size: 13px; color: var(--steel-2); line-height: 1.5;
}
html.sandbox-svc-consulting-page .exp-cell li::before {
  content: "+"; position: absolute; left: 0; top: 0; font-family: var(--mono); font-size: 11px; color: var(--steel-3);
}
html.sandbox-svc-consulting-page .cons-process {
  background: var(--ink); color: var(--ivory);
}
html.sandbox-svc-consulting-page .cons-process .section-head {
  padding-top: clamp(24px, 3vw, 40px);
}
html.sandbox-svc-consulting-page .cons-process .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-svc-consulting-page .cons-process h2 {
  color: var(--ivory);
}
html.sandbox-svc-consulting-page .cons-process .lede {
  color: var(--ivory-mute);
}
html.sandbox-svc-consulting-page .proc-grid {
  display: grid;
 grid-template-columns: repeat(4, 1fr);
 border-top: 1px solid var(--rule-dark);
 border-left: 1px solid var(--rule-dark);
}
@media (max-width: 860px) {
html.sandbox-svc-consulting-page .proc-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 480px) {
html.sandbox-svc-consulting-page .proc-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-consulting-page .proc-step {
  border-right: 1px solid var(--rule-dark);
 border-bottom: 1px solid var(--rule-dark);
 padding: 28px 24px 30px;
 display: flex;
 flex-direction: column;
 gap: 12px;
 min-height: 188px;
}
html.sandbox-svc-consulting-page .proc-step .pn {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.06em; color: var(--signal);
}
html.sandbox-svc-consulting-page .proc-step h3 {
  font-size: 17px; letter-spacing: -0.016em; color: var(--ivory); font-weight: 500;
}
html.sandbox-svc-consulting-page .proc-step p {
  font-size: 13.5px; color: var(--ivory-mute); line-height: 1.6; max-width: 30ch;
}
html.sandbox-svc-consulting-page .cta-final .cta-inner {
  border-top: 0;
}
html.sandbox-svc-consulting-page #why .why-card {
  position: relative;
}
html.sandbox-svc-consulting-page #why .why-card::before {
  content: ""; position: absolute; top: -1px; left: -1px; right: -1px; height: 1px;
 background: linear-gradient(90deg, var(--signal) 0%, var(--signal) 60%, var(--rule-strong) 100%);
 transform-origin: left;
 transition: transform 640ms cubic-bezier(.45, 0, .15, 1);
}
html.sandbox-svc-consulting-page #why .why-card.reveal:not(.in)::before {
  transform: scaleX(0);
}
html.sandbox-svc-consulting-page #why .why-card:nth-child(1).reveal.in::before {
  transition-delay: 160ms;
}
html.sandbox-svc-consulting-page #why .why-card:nth-child(2).reveal.in::before {
  transition-delay: 300ms;
}
html.sandbox-svc-consulting-page #why .why-card:nth-child(3).reveal.in::before {
  transition-delay: 440ms;
}
html.sandbox-svc-consulting-page #why .why-card .why-icon {
  transition: transform 500ms var(--ease), color 300ms var(--ease);
}
html.sandbox-svc-consulting-page #why .why-card:hover .why-icon {
  transform: translateY(-3px) scale(1.08); color: var(--warm);
}
html.sandbox-svc-consulting-page .cons-card .cons-portrait img {
  transition: clip-path 820ms cubic-bezier(.45, 0, .15, 1), transform 1100ms cubic-bezier(.45, 0, .15, 1);
}
html.sandbox-svc-consulting-page .cons-card.reveal:not(.in) .cons-portrait img {
  clip-path: inset(0 0 100% 0); transform: scale(1.12);
}
html.sandbox-svc-consulting-page .cons-card:nth-child(2).reveal.in .cons-portrait img, html.sandbox-svc-consulting-page .cons-card:nth-child(4).reveal.in .cons-portrait img {
  transition-delay: 120ms;
}
html.sandbox-svc-consulting-page .cons-card .cons-portrait {
  overflow: hidden;
}
html.sandbox-svc-consulting-page .cons-card .cons-portrait img {
  will-change: clip-path, transform;
}
html.sandbox-svc-consulting-page .cons-card:hover .cons-portrait img {
  transform: scale(1.05); transition: transform 600ms var(--ease);
}
html.sandbox-svc-consulting-page .exp-cell .exp-idx {
  transition: color 300ms var(--ease);
}
html.sandbox-svc-consulting-page .exp-cell:hover .exp-idx {
  color: var(--warm);
}
html.sandbox-svc-consulting-page .exp-cell li {
  transition: opacity 520ms var(--ease-soft), transform 520ms var(--ease-soft);
}
html.sandbox-svc-consulting-page .exp-cell.reveal:not(.in) li {
  opacity: 0; transform: translateX(-8px);
}
html.sandbox-svc-consulting-page .exp-cell.reveal.in li:nth-child(1) {
  transition-delay: 220ms;
}
html.sandbox-svc-consulting-page .exp-cell.reveal.in li:nth-child(2) {
  transition-delay: 320ms;
}
html.sandbox-svc-consulting-page .exp-cell.reveal.in li:nth-child(3) {
  transition-delay: 420ms;
}
html.sandbox-svc-consulting-page .exp-cell.reveal.in li:nth-child(4) {
  transition-delay: 520ms;
}
html.sandbox-svc-consulting-page .exp-cell li::before {
  transition: color 300ms var(--ease);
}
html.sandbox-svc-consulting-page .exp-cell.reveal.in li::before {
  color: var(--signal);
}
html.sandbox-svc-consulting-page .proc-step {
  position: relative;
}
html.sandbox-svc-consulting-page .proc-step::before {
  content: ""; position: absolute; top: -1px; left: -1px; width: 1px; height: 46px;
 background: var(--signal);
 transition: height 560ms cubic-bezier(.45, 0, .15, 1);
}
html.sandbox-svc-consulting-page .proc-step.reveal:not(.in)::before {
  height: 0;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(1).reveal.in::before {
  transition-delay: 120ms;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(2).reveal.in::before {
  transition-delay: 260ms;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(3).reveal.in::before {
  transition-delay: 400ms;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(4).reveal.in::before {
  transition-delay: 540ms;
}
html.sandbox-svc-consulting-page .proc-step .pn {
  display: inline-block;
 transition: transform 520ms var(--ease-soft), opacity 520ms var(--ease-soft);
}
html.sandbox-svc-consulting-page .proc-step.reveal:not(.in) .pn {
  transform: translateY(8px); opacity: 0;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(2).reveal.in .pn {
  transition-delay: 140ms;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(3).reveal.in .pn {
  transition-delay: 280ms;
}
html.sandbox-svc-consulting-page .proc-step:nth-child(4).reveal.in .pn {
  transition-delay: 420ms;
}
html.sandbox-svc-consulting-page .hero.hero-inner-page .hero-kicker .dot {
  animation: consDot 2600ms var(--ease) infinite;
}
@keyframes consDot {
  0%, 100% { box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent); }
    50%      { box-shadow: 0 0 0 6px color-mix(in srgb, var(--warm) 8%, transparent); }
}
html.sandbox-svc-consulting-page .svc-more-list a {
  transition: color 200ms var(--ease), padding-left 220ms var(--ease), background 220ms var(--ease);
}
html.sandbox-svc-consulting-page .svc-more-list a:hover {
  background: var(--paper);
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-svc-consulting-page #why .why-card::before {
  transform: scaleX(1);
}
html.sandbox-svc-consulting-page .cons-card .cons-portrait img {
  clip-path: none; transform: none;
}
html.sandbox-svc-consulting-page .exp-cell li {
  opacity: 1; transform: none;
}
html.sandbox-svc-consulting-page .proc-step::before {
  height: 46px;
}
html.sandbox-svc-consulting-page .proc-step .pn {
  opacity: 1; transform: none;
}
html.sandbox-svc-consulting-page .hero.hero-inner-page .hero-kicker .dot {
  animation: none;
}
}

/* === Migrated from view 6708 inline block #2 === */
:root, body {
  --page-accent: #1FB6E0 ; --page-accent-2: #D26D43 ;
}
html.sandbox-svc-consulting-page .slr-about-hero, html.sandbox-svc-consulting-page .slr-about-hero * {
  
}

/* === Migrated from view 6709 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6709 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-svc-impl-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-svc-impl-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-svc-impl-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-impl-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
 color: var(--ivory) ;
}
html.sandbox-svc-impl-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-svc-impl-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-svc-impl-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-svc-impl-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-svc-impl-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-svc-impl-page .slr-about-hero .hero-kicker {
  color: var(--ivory) ;
 border-color: var(--rule-dark-strong) ;
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent) ;
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-svc-impl-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-svc-impl-page .slr-about-hero h1 {
  color: var(--ivory) ;
 text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45) ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-svc-impl-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .lede, body .slr-about-hero .hero-lede, html.sandbox-svc-impl-page .slr-about-hero .lede, html.sandbox-svc-impl-page .slr-about-hero .hero-lede {
  color: var(--ivory-mute) ;
 text-shadow: none ;
}
html.sandbox-svc-impl-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-svc-impl-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-svc-impl-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-svc-impl-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-impl-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
}
html.sandbox-svc-impl-page .hero.hero-inner-page .hero-ctas {
  display: flex; gap: 12px; margin-top: 32px; flex-wrap: wrap;
}
html.sandbox-svc-impl-page .impl-do {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-svc-impl-page .impl-do .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-svc-impl-page .impl-grid {
  display: grid;
 grid-template-columns: 1fr 1fr;
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 700px) {
html.sandbox-svc-impl-page .impl-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-impl-page .impl-cell {
  position: relative;
 border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 padding: 30px 30px 32px;
 display: flex;
 flex-direction: column;
 gap: 12px;
 background: transparent;
 transition: background 240ms var(--ease);
}
html.sandbox-svc-impl-page .impl-cell:hover {
  background: var(--paper-2);
}
html.sandbox-svc-impl-page .impl-cell::before {
  content: ""; position: absolute; top: -1px; left: -1px; right: -1px; height: 1px;
 background: linear-gradient(90deg, var(--signal) 0%, var(--signal) 60%, var(--rule-strong) 100%);
 transform-origin: left;
 transition: transform 640ms cubic-bezier(.45, 0, .15, 1);
}
html.sandbox-svc-impl-page .impl-cell.reveal:not(.in)::before {
  transform: scaleX(0);
}
html.sandbox-svc-impl-page .impl-cell:nth-child(1).reveal.in::before {
  transition-delay: 160ms;
}
html.sandbox-svc-impl-page .impl-cell:nth-child(2).reveal.in::before {
  transition-delay: 300ms;
}
html.sandbox-svc-impl-page .impl-cell:nth-child(3).reveal.in::before {
  transition-delay: 240ms;
}
html.sandbox-svc-impl-page .impl-cell:nth-child(4).reveal.in::before {
  transition-delay: 380ms;
}
html.sandbox-svc-impl-page .impl-cell .ic-idx {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--steel-3);
}
html.sandbox-svc-impl-page .impl-cell h3 {
  font-size: 18px; letter-spacing: -0.018em; font-weight: 500; color: var(--ink); line-height: 1.25; max-width: 26ch;
}
html.sandbox-svc-impl-page .impl-cell p {
  font-size: 13.5px; color: var(--steel-2); line-height: 1.6; max-width: 44ch;
}
html.sandbox-svc-impl-page .impl-team {
  background: var(--paper-2); border-top: 1px solid var(--rule);
}
html.sandbox-svc-impl-page .impl-team .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-svc-impl-page .impl-team-grid {
  display: grid;
 grid-template-columns: minmax(180px, 200px) 1fr;
 gap: clamp(28px, 5vw, 72px);
 align-items: start;
}
@media (max-width: 760px) {
html.sandbox-svc-impl-page .impl-team-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-impl-page .impl-team-body {
  display: flex; flex-direction: column; gap: 18px; max-width: 60ch;
}
html.sandbox-svc-impl-page .impl-team-body p {
  color: var(--steel-2); font-size: 15.5px; line-height: 1.7;
}
html.sandbox-svc-impl-page .impl-skills {
  margin-top: 6px;
}
html.sandbox-svc-impl-page .impl-skills .sk-lbl {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--steel-3); display: block; margin-bottom: 14px;
}
html.sandbox-svc-impl-page .impl-skills .sk-list {
  display: flex; flex-wrap: wrap; gap: 8px;
}
html.sandbox-svc-impl-page .impl-skills .sk-list span {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.04em;
 color: var(--steel-2); border: 1px solid var(--rule-strong); padding: 6px 11px;
 transition: opacity 480ms var(--ease-soft), transform 480ms var(--ease-soft), border-color 200ms var(--ease), color 200ms var(--ease);
}
html.sandbox-svc-impl-page .impl-skills.reveal:not(.in) .sk-list span {
  opacity: 0; transform: translateY(8px);
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(1) {
  transition-delay:.10s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(2) {
  transition-delay:.16s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(3) {
  transition-delay:.22s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(4) {
  transition-delay:.28s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(5) {
  transition-delay:.34s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(6) {
  transition-delay:.40s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(7) {
  transition-delay:.46s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(8) {
  transition-delay:.52s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(9) {
  transition-delay:.58s
}
html.sandbox-svc-impl-page .impl-skills.reveal.in .sk-list span:nth-child(10) {
  transition-delay:.64s
}
html.sandbox-svc-impl-page .impl-skills .sk-list span:hover {
  border-color: var(--warm); color: var(--ink);
}
html.sandbox-svc-impl-page .impl-process {
  background: var(--ink); color: var(--ivory);
}
html.sandbox-svc-impl-page .impl-process .section-head {
  padding-top: clamp(24px, 3vw, 40px);
}
html.sandbox-svc-impl-page .impl-process .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-svc-impl-page .impl-process h2 {
  color: var(--ivory);
}
html.sandbox-svc-impl-page .proc-grid {
  display: grid;
 grid-template-columns: repeat(4, 1fr);
 border-top: 1px solid var(--rule-dark);
 border-left: 1px solid var(--rule-dark);
}
@media (max-width: 860px) {
html.sandbox-svc-impl-page .proc-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 480px) {
html.sandbox-svc-impl-page .proc-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-impl-page .proc-step {
  position: relative;
 border-right: 1px solid var(--rule-dark);
 border-bottom: 1px solid var(--rule-dark);
 padding: 28px 24px 30px;
 display: flex; flex-direction: column; gap: 12px;
 min-height: 188px;
}
html.sandbox-svc-impl-page .proc-step::before {
  content: ""; position: absolute; top: -1px; left: -1px; width: 1px; height: 46px;
 background: var(--signal);
 transition: height 560ms cubic-bezier(.45, 0, .15, 1);
}
html.sandbox-svc-impl-page .proc-step.reveal:not(.in)::before {
  height: 0;
}
html.sandbox-svc-impl-page .proc-step:nth-child(1).reveal.in::before {
  transition-delay: 120ms;
}
html.sandbox-svc-impl-page .proc-step:nth-child(2).reveal.in::before {
  transition-delay: 260ms;
}
html.sandbox-svc-impl-page .proc-step:nth-child(3).reveal.in::before {
  transition-delay: 400ms;
}
html.sandbox-svc-impl-page .proc-step:nth-child(4).reveal.in::before {
  transition-delay: 540ms;
}
html.sandbox-svc-impl-page .proc-step .pn {
  font-family: var(--mono); font-size: 11px; color: var(--signal); display: inline-block; transition: transform 520ms var(--ease-soft), opacity 520ms var(--ease-soft);
}
html.sandbox-svc-impl-page .proc-step.reveal:not(.in) .pn {
  transform: translateY(8px); opacity: 0;
}
html.sandbox-svc-impl-page .proc-step:nth-child(2).reveal.in .pn {
  transition-delay: 140ms;
}
html.sandbox-svc-impl-page .proc-step:nth-child(3).reveal.in .pn {
  transition-delay: 280ms;
}
html.sandbox-svc-impl-page .proc-step:nth-child(4).reveal.in .pn {
  transition-delay: 420ms;
}
html.sandbox-svc-impl-page .proc-step h3 {
  font-size: 17px; letter-spacing: -0.016em; color: var(--ivory); font-weight: 500;
}
html.sandbox-svc-impl-page .proc-step p {
  font-size: 13.5px; color: var(--ivory-mute); line-height: 1.6; max-width: 30ch;
}
html.sandbox-svc-impl-page .hero.hero-inner-page .hero-kicker .dot {
  animation: implDot 2600ms var(--ease) infinite;
}
@keyframes implDot {
  0%, 100% { box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent); }
    50%      { box-shadow: 0 0 0 6px color-mix(in srgb, var(--warm) 8%, transparent); }
}
html.sandbox-svc-impl-page .cta-final .cta-inner {
  border-top: 0;
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-svc-impl-page .impl-cell::before {
  transform: scaleX(1);
}
html.sandbox-svc-impl-page .impl-skills .sk-list span {
  opacity: 1; transform: none;
}
html.sandbox-svc-impl-page .proc-step::before {
  height: 46px;
}
html.sandbox-svc-impl-page .proc-step .pn {
  opacity: 1; transform: none;
}
html.sandbox-svc-impl-page .hero.hero-inner-page .hero-kicker .dot {
  animation: none;
}
}

/* === Migrated from view 6709 inline block #2 === */
:root, body {
  --page-accent: #1FB6E0 ; --page-accent-2: #D26D43 ;
}
html.sandbox-svc-impl-page .slr-about-hero, html.sandbox-svc-impl-page .slr-about-hero * {
  --warm: var(--page-accent) ;
 --warm-2: var(--page-accent-2) ;
 --warm-soft: color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}

/* === Migrated from view 6710 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}
html.sandbox-jobs-page .process-step {
  position: relative; border-right: 0 ;
}
html.sandbox-jobs-page .process-step::before, html.sandbox-jobs-page .process-step::after {
  content: "";
 position: absolute;
 right: 0;
 width: 1px;
 background: var(--rule);
 pointer-events: none;
}
html.sandbox-jobs-page .process-step::before {
  top: 0;
 height: 50%;
 transform-origin: bottom right;
 transform: rotate(-10deg);
}
html.sandbox-jobs-page .process-step::after {
  top: 50%;
 height: 50%;
 transform-origin: top right;
 transform: rotate(10deg);
}
html.sandbox-jobs-page .process-step:last-child::before, html.sandbox-jobs-page .process-step:last-child::after {
  display: none;
}
html.sandbox-jobs-page .process-step:last-child {
  border-right: 1px solid var(--rule) ;
}
html.sandbox-jobs-page .benefits-list.vA-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr) ;
 grid-auto-rows: 1fr ;
 gap: clamp(24px, 2.6vw, 40px) ;
 margin-top: clamp(24px, 3vw, 44px);
 border: 0 ;
}
@media (max-width: 980px) {
html.sandbox-jobs-page .benefits-list.vA-grid {
  grid-template-columns: 1fr 1fr ;
}
}
@media (max-width: 620px) {
html.sandbox-jobs-page .benefits-list.vA-grid {
  grid-template-columns: 1fr ;
}
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card {
  position: relative; height: 100%;
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card::before, html.sandbox-jobs-page .benefits-list.vA-grid .vA-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card:hover .vA-face {
  transform: translate(-3px, -3px);
 box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-icon {
  width: 40px; height: 40px; color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-icon use {
  stroke: currentColor; stroke-width: 1.4; fill: none;
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-card:hover .vA-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-face h3 {
  font-size: 21px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); max-width: 18ch; margin-top: 4px;
}
html.sandbox-jobs-page .benefits-list.vA-grid .vA-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}
@media (max-width: 980px) {
html.sandbox-jobs-page .process-step::before, html.sandbox-jobs-page .process-step::after {
  display: none ;
}
html.sandbox-jobs-page .process-step {
  border-right: 1px solid var(--rule) ;
}
html.sandbox-jobs-page .process-step:nth-child(2n), html.sandbox-jobs-page .process-step:last-child {
  border-right: 0 ;
}
}
@media (max-width: 560px) {
html.sandbox-jobs-page .process-step, html.sandbox-jobs-page .process-step:last-child {
  border-right: 0 ;
}
}
html.sandbox-jobs-page .benefits-recap {
  position: relative; overflow: hidden;
}
html.sandbox-jobs-page .benefits-recap > .wrap {
  position: relative; z-index: 1;
}
html.sandbox-jobs-page .benefits-recap .benefits-photo {
  position: absolute;
 inset: 0;
 z-index: 0;
 background-image: url(/web/content/23660);
 background-repeat: no-repeat;
 background-position: center 28%;
 background-size: cover;
 background-attachment: fixed;
 filter: brightness(1.05) contrast(0.98) saturate(0.92);
}
html.sandbox-jobs-page .benefits-recap .benefits-photo::after {
  content: "";
 position: absolute;
 inset: 0;
 background:
 linear-gradient(180deg, rgba(228, 233, 240, 0.86) 0%, rgba(228, 233, 240, 0.74) 32%, rgba(228, 233, 240, 0.74) 68%, rgba(228, 233, 240, 0.88) 100%),
 radial-gradient(ellipse 85% 85% at 32% 32%, rgba(228, 233, 240, 0.45) 0%, rgba(228, 233, 240, 0.70) 100%);
}

/* === Migrated from view 6710 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #0F0F19;
}
body .slr-about-hero h1 .accent, html.sandbox-jobs-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-jobs-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .section-head .head-tag .lbl, body .head-tag .lbl, html.sandbox-jobs-page .section-head .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-jobs-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-jobs-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-jobs-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-jobs-page .slr-about-hero.hero.hero-inner-page {
  background: var(--paper) ;
 color: var(--ink) ;
}
html.sandbox-jobs-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-jobs-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-jobs-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-jobs-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-jobs-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-jobs-page .slr-about-hero .hero-kicker {
  color: var(--steel-1) ;
 border-color: var(--rule-strong) ;
 background: color-mix(in srgb, var(--paper) 72%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-jobs-page .slr-about-hero h1 {
  color: var(--ink) ;
 text-shadow: none ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-jobs-page .slr-about-hero h1 .accent {
  color: var(--page-accent, var(--warm)) ;
}
html.sandbox-jobs-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-jobs-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-jobs-page .footer {
  background: var(--ink-deep) ;
}
html.sandbox-jobs-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-jobs-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
html.sandbox-jobs-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--ivory);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-dark-strong);
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent);
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
 font-weight: 500;
}
html.sandbox-jobs-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px;
 border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}
html.sandbox-jobs-page .hero.hero-inner-page .hero-kicker .count {
  font-family: var(--sans);
 font-weight: 500;
 letter-spacing: 0.02em;
 text-transform: none;
 color: var(--signal);
 padding-left: 10px;
 margin-left: 4px;
 border-left: 1px solid var(--rule-dark-strong);
}
html.sandbox-jobs-page .hero.hero-inner-page {
  padding-top: 96px;
 padding-bottom: clamp(48px, 6vw, 80px);
 min-height: 0;
}
html.sandbox-jobs-page .hero.hero-inner-page .hero-video, html.sandbox-jobs-page .hero.hero-inner-page .hero-video-overlay, html.sandbox-jobs-page .hero.hero-inner-page #hero-canvas {
  display: none;
}
html.sandbox-jobs-page .hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 linear-gradient(180deg, color-mix(in srgb, var(--ink) 35%, transparent) 0%, color-mix(in srgb, var(--ink-deep) 78%, transparent) 100%);
}
html.sandbox-jobs-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px;
 padding-bottom: 0;
}
html.sandbox-jobs-page .hero.hero-inner-page .hero-grid {
  opacity: 0.55;
}
html.sandbox-jobs-page .hero.hero-inner-page .vanta-bg {
  position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: auto;
 opacity: 0.85;
 mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
 -webkit-mask-image: radial-gradient(ellipse 110% 100% at 50% 50%, black 65%, transparent 100%);
}
html.sandbox-jobs-page .intro {
  background: var(--paper);
}
html.sandbox-jobs-page .intro .section-head {
  padding-top: 8px; padding-bottom: clamp(24px, 3vw, 36px);
}
html.sandbox-jobs-page .intro-grid {
  display: grid;
 grid-template-columns: minmax(180px, 200px) 1fr;
 gap: clamp(28px, 5vw, 72px);
 align-items: start;
}
@media (max-width: 760px) {
html.sandbox-jobs-page .intro-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-jobs-page .intro-body {
  display: flex; flex-direction: column; gap: 18px; max-width: 64ch;
}
html.sandbox-jobs-page .intro-body p {
  color: var(--steel-2); font-size: 15.5px; line-height: 1.7;
}
html.sandbox-jobs-page .roles {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-jobs-page .roles .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-jobs-page .roles-controls {
  display: flex;
 flex-wrap: wrap;
 gap: 6px;
 align-items: center;
 padding: 4px 0 20px;
}
html.sandbox-jobs-page .roles-controls .roles-controls-label {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
 margin-right: 8px;
}
html.sandbox-jobs-page .roles-filter {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.06em;
 background: transparent;
 border: 1px solid var(--rule-strong);
 color: var(--steel-2);
 padding: 6px 10px;
 cursor: pointer;
 transition: border-color 200ms var(--ease), color 200ms var(--ease), background 200ms var(--ease);
}
html.sandbox-jobs-page .roles-filter:hover {
  border-color: var(--steel-1); color: var(--ink);
}
html.sandbox-jobs-page .roles-filter.is-active {
  border-color: var(--ink);
 color: var(--paper);
 background: var(--ink);
}
html.sandbox-jobs-page .roles-filter .c {
  color: var(--steel-3);
 margin-left: 6px;
 font-feature-settings: "tnum";
}
html.sandbox-jobs-page .roles-filter.is-active .c {
  color: var(--ivory-mute);
}
html.sandbox-jobs-page .roles-table {
  border-top: 1px solid var(--rule);
}
html.sandbox-jobs-page .role-row {
  display: grid;
 grid-template-columns: 60px minmax(260px, 1.4fr) minmax(140px, 0.9fr) minmax(160px, 0.9fr) auto;
 gap: clamp(16px, 2.5vw, 32px);
 align-items: center;
 padding: 22px 0 24px;
 border-bottom: 1px solid var(--rule);
 color: var(--steel-1);
 position: relative;
 cursor: pointer;
 transition: padding-left 220ms var(--ease), color 220ms var(--ease);
}
html.sandbox-jobs-page .role-row::before {
  content: "";
 position: absolute;
 left: -16px;
 top: 50%;
 transform: translateY(-50%);
 width: 2px;
 height: 0;
 background: var(--warm);
 transition: height 220ms var(--ease);
}
html.sandbox-jobs-page .role-row:hover {
  padding-left: 6px;
}
html.sandbox-jobs-page .role-row:hover::before {
  height: 28px;
}
html.sandbox-jobs-page .role-row .role-idx {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.06em;
 color: var(--steel-3);
 font-feature-settings: "tnum";
}
html.sandbox-jobs-page .role-row .role-title {
  font-size: clamp(22px, 1.9vw, 26px);
 letter-spacing: -0.022em;
 color: var(--ink);
 font-weight: 600;
 line-height: 1.2;
}
html.sandbox-jobs-page .role-row .role-team {
  display: block;
 font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--warm);
 margin-top: 6px;
}
html.sandbox-jobs-page .role-row .role-meta { display: contents; }
html.sandbox-jobs-page .role-row .role-cell {
  display: flex;
 flex-direction: column;
 gap: 4px;
}
html.sandbox-jobs-page .role-row .role-cell .l {
  font-family: var(--mono);
 font-size: 9.5px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
}
html.sandbox-jobs-page .role-row .role-cell .v {
  font-size: 13.5px;
 color: var(--steel-1);
 letter-spacing: -0.005em;
}
html.sandbox-jobs-page .role-row .role-cta {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: var(--steel-2);
 display: inline-flex;
 align-items: center;
 gap: 8px;
 padding: 8px 10px;
 border: 1px solid var(--rule-strong);
 transition: border-color 200ms var(--ease), color 200ms var(--ease), background 200ms var(--ease);
 white-space: nowrap;
}
html.sandbox-jobs-page .role-row:hover .role-cta {
  color: var(--paper);
 background: var(--ink);
 border-color: var(--ink);
}
html.sandbox-jobs-page .role-row .role-cta .arr {
  transition: transform 220ms var(--ease);
}
html.sandbox-jobs-page .role-row:hover .role-cta .arr {
  transform: translateX(3px);
}
@media (max-width: 980px) {
html.sandbox-jobs-page .role-row {
  grid-template-columns: 50px 1fr auto;
 grid-template-areas:
 "idx title cta"
 ". meta meta";
 row-gap: 12px;
}
html.sandbox-jobs-page .role-row .role-idx {
  grid-area: idx; align-self: start; padding-top: 4px;
}
html.sandbox-jobs-page .role-row .role-title-cell {
  grid-area: title;
}
html.sandbox-jobs-page .role-row .role-cta {
  grid-area: cta; align-self: start;
}
html.sandbox-jobs-page .role-row .role-meta {
  grid-area: meta;
 display: flex;
 flex-wrap: wrap;
 gap: 18px 28px;
 padding-top: 4px;
 border-top: 1px solid var(--rule);
 margin-top: 4px;
}
html.sandbox-jobs-page .role-row .role-meta .role-cell {
  gap: 2px;
}

}
html.sandbox-jobs-page .roles-empty {
  padding: 28px 0 40px;
 font-family: var(--mono);
 font-size: 12px;
 letter-spacing: 0.06em;
 color: var(--steel-3);
 text-align: center;
}
html.sandbox-jobs-page .process {
  background: var(--paper); color: var(--steel-1); border-top: 1px solid var(--rule);
}
html.sandbox-jobs-page .process .section-head {
  padding-top: clamp(24px, 3vw, 40px);
}
html.sandbox-jobs-page .process-grid {
  display: grid;
 grid-template-columns: repeat(4, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 980px) {
html.sandbox-jobs-page .process-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 560px) {
html.sandbox-jobs-page .process-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-jobs-page .process-step {
  padding: 30px 26px 34px;
 border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 display: flex;
 flex-direction: column;
 gap: 14px;
 min-height: 240px;
}
html.sandbox-jobs-page .process-step .step-head {
  display: flex;
 align-items: center;
 justify-content: space-between;
 font-family: var(--mono);
 font-size: 11px;
 color: var(--steel-3);
 letter-spacing: 0.06em;
}
html.sandbox-jobs-page .process-step .step-time {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--signal);
}
html.sandbox-jobs-page .process-step h3 {
  color: var(--ink);
 font-size: 18px;
 letter-spacing: -0.018em;
 max-width: 16ch;
}
html.sandbox-jobs-page .process-step p {
  color: var(--steel-2);
 font-size: 13.5px;
 line-height: 1.6;
 max-width: 32ch;
}
html.sandbox-jobs-page .benefits-recap {
  background: var(--paper);
}
html.sandbox-jobs-page .benefits-recap .section-head {
  padding-top: clamp(24px, 3vw, 40px); padding-bottom: clamp(20px, 2.5vw, 32px);
}
html.sandbox-jobs-page .benefits-list {
  display: grid;
 grid-template-columns: repeat(3, 1fr);
 border-top: 1px solid var(--rule);
 border-left: 1px solid var(--rule);
}
@media (max-width: 860px) {
html.sandbox-jobs-page .benefits-list {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 520px) {
html.sandbox-jobs-page .benefits-list {
  grid-template-columns: 1fr;
}
}
html.sandbox-jobs-page .benefit-item {
  padding: 22px 22px 24px;
 border-right: 1px solid var(--rule);
 border-bottom: 1px solid var(--rule);
 display: flex;
 flex-direction: column;
 gap: 6px;
}
html.sandbox-jobs-page .benefit-item .idx {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.18em;
 color: var(--steel-3);
}
html.sandbox-jobs-page .benefit-item h4 {
  color: var(--ink);
 font-size: 15px;
 letter-spacing: -0.012em;
 margin-top: 2px;
}
html.sandbox-jobs-page .benefit-item p {
  color: var(--steel-2);
 font-size: 13.5px;
 line-height: 1.55;
 max-width: 30ch;
}
html.sandbox-jobs-page .cta-final .cta-inner {
  border-top: 0;
}

/* === Migrated from view 6712 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6712 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-svc-training-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-svc-training-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-svc-training-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-training-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
 color: var(--ivory) ;
}
html.sandbox-svc-training-page .slr-about-hero #vanta-careers {
  display: none ;
}
html.sandbox-svc-training-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-svc-training-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-svc-training-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-svc-training-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-svc-training-page .slr-about-hero .hero-kicker {
  color: var(--ivory) ;
 border-color: var(--rule-dark-strong) ;
 background: color-mix(in srgb, var(--ink-deep) 55%, transparent) ;
 backdrop-filter: blur(6px);
 -webkit-backdrop-filter: blur(6px);
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-svc-training-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-svc-training-page .slr-about-hero h1 {
  color: var(--ivory) ;
 text-shadow: 0 1px 30px rgba(6, 15, 30, 0.45) ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-svc-training-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .lede, body .slr-about-hero .hero-lede, html.sandbox-svc-training-page .slr-about-hero .lede, html.sandbox-svc-training-page .slr-about-hero .hero-lede {
  color: var(--ivory-mute) ;
 text-shadow: none ;
}
html.sandbox-svc-training-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-svc-training-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-svc-training-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-svc-training-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-svc-training-page .slr-about-hero.hero.hero-inner-page {
  background: #142B47 ;
}
html.sandbox-svc-training-page .hero.hero-inner-page .hero-ctas {
  display: flex; gap: 12px; margin-top: 32px; flex-wrap: wrap;
}
html.sandbox-svc-training-page .hero.hero-inner-page .hero-kicker .dot {
  animation: trDot 2600ms var(--ease) infinite;
}
@keyframes trDot {
  0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--warm) 22%,transparent);} 50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--warm) 8%,transparent);}
}
html.sandbox-svc-training-page .acc-cell {
  position: relative;
}
html.sandbox-svc-training-page .acc-cell::before {
  content: ""; position: absolute; top: -1px; left: -1px; right: -1px; height: 1px;
 background: linear-gradient(90deg, var(--signal) 0%, var(--signal) 60%, var(--rule-strong) 100%);
 transform-origin: left;
 transition: transform 640ms cubic-bezier(.45,0,.15,1);
}
html.sandbox-svc-training-page .acc-cell.reveal:not(.in)::before {
  transform: scaleX(0);
}
html.sandbox-svc-training-page .tr-offer {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-svc-training-page .tr-offer .section-head {
  padding-top: clamp(24px,3vw,40px); padding-bottom: clamp(20px,2.5vw,32px);
}
html.sandbox-svc-training-page .offer-grid {
  display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--rule); border-left: 1px solid var(--rule);
}
@media (max-width: 700px) {
html.sandbox-svc-training-page .offer-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-training-page .offer-cell {
  border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); padding: 30px 30px 32px; display: flex; flex-direction: column; gap: 12px; background: transparent; transition: background 240ms var(--ease);
}
html.sandbox-svc-training-page .offer-cell:hover {
  background: var(--paper-2);
}
html.sandbox-svc-training-page .offer-cell .oc-idx {
  font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--steel-3);
}
html.sandbox-svc-training-page .offer-cell h3 {
  font-size: 18px; letter-spacing: -0.018em; font-weight: 500; color: var(--ink); line-height: 1.25; max-width: 26ch;
}
html.sandbox-svc-training-page .offer-cell p {
  font-size: 13.5px; color: var(--steel-2); line-height: 1.6; max-width: 44ch;
}
html.sandbox-svc-training-page .tr-trainer {
  background: var(--paper-2); border-top: 1px solid var(--rule);
}
html.sandbox-svc-training-page .tr-trainer .section-head {
  padding-top: clamp(24px,3vw,40px); padding-bottom: clamp(20px,2.5vw,32px);
}
html.sandbox-svc-training-page .trainer-grid {
  display: grid; grid-template-columns: minmax(180px,200px) 1fr; gap: clamp(28px,5vw,72px); align-items: start;
}
@media (max-width: 760px) {
html.sandbox-svc-training-page .trainer-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-training-page .trainer-body {
  display: flex; flex-direction: column; gap: 18px; max-width: 60ch;
}
html.sandbox-svc-training-page .trainer-body p {
  color: var(--steel-2); font-size: 15.5px; line-height: 1.7;
}
html.sandbox-svc-training-page .trainer-stats {
  display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--rule); border-left: 1px solid var(--rule); margin-top: 8px;
}
@media (max-width: 560px) {
html.sandbox-svc-training-page .trainer-stats {
  grid-template-columns: 1fr 1fr;
}
}
html.sandbox-svc-training-page .trainer-stats .ts {
  border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); padding: 20px; display: flex; flex-direction: column; gap: 8px;
}
html.sandbox-svc-training-page .trainer-stats .ts .v {
  font-size: clamp(22px,2.2vw,28px); font-weight: 500; letter-spacing: -0.026em; color: var(--steel-1); font-feature-settings: "tnum";
}
html.sandbox-svc-training-page .trainer-stats .ts .v .acc {
  color: var(--signal);
}
html.sandbox-svc-training-page .trainer-stats .ts .l {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--steel-3); line-height: 1.4;
}
html.sandbox-svc-training-page .trainer-cert {
  display: flex; align-items: baseline; gap: 14px; padding: 18px 0 0; margin-top: 4px;
}
html.sandbox-svc-training-page .trainer-cert .badge {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.1em; color: var(--paper); background: var(--ink); padding: 6px 10px; white-space: nowrap;
}
html.sandbox-svc-training-page .trainer-cert .ct {
  font-size: 13.5px; color: var(--steel-2); line-height: 1.5;
}
html.sandbox-svc-training-page .trainer-cert .ct b {
  color: var(--ink); font-weight: 500;
}
html.sandbox-svc-training-page .tr-topics {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-svc-training-page .tr-topics .section-head {
  padding-top: clamp(24px,3vw,40px); padding-bottom: clamp(20px,2.5vw,32px);
}
html.sandbox-svc-training-page .topics-grid {
  display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--rule); border-left: 1px solid var(--rule);
}
@media (max-width: 900px) {
html.sandbox-svc-training-page .topics-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 540px) {
html.sandbox-svc-training-page .topics-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-training-page .topic-cell {
  border-right: 1px solid var(--rule); border-bottom: 1px solid var(--rule); padding: 24px 22px 26px; display: flex; flex-direction: column; gap: 9px; min-height: 200px; background: transparent; transition: background 240ms var(--ease);
}
html.sandbox-svc-training-page .topic-cell:hover {
  background: var(--paper-2);
}
html.sandbox-svc-training-page .topic-cell .tp-top {
  display: flex; align-items: baseline; justify-content: space-between;
}
html.sandbox-svc-training-page .topic-cell .tp-idx {
  font-family: var(--mono); font-size: 11px; color: var(--steel-3);
}
html.sandbox-svc-training-page .topic-cell .tp-aud {
  font-family: var(--mono); font-size: 9px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--warm);
}
html.sandbox-svc-training-page .topic-cell h3 {
  font-size: 16px; letter-spacing: -0.014em; font-weight: 500; color: var(--ink);
}
html.sandbox-svc-training-page .topic-cell p {
  font-size: 12.5px; color: var(--steel-2); line-height: 1.55;
}
html.sandbox-svc-training-page .topic-cell .tp-dur {
  margin-top: auto; font-family: var(--mono); font-size: 10px; letter-spacing: 0.08em; color: var(--steel-3); padding-top: 12px;
}
html.sandbox-svc-training-page .tr-how {
  background: var(--ink); color: var(--ivory);
}
html.sandbox-svc-training-page .tr-how .section-head {
  padding-top: clamp(24px,3vw,40px);
}
html.sandbox-svc-training-page .tr-how .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-svc-training-page .tr-how h2 {
  color: var(--ivory);
}
html.sandbox-svc-training-page .how-grid {
  display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--rule-dark); border-left: 1px solid var(--rule-dark);
}
@media (max-width: 700px) {
html.sandbox-svc-training-page .how-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-svc-training-page .how-step {
  position: relative; border-right: 1px solid var(--rule-dark); border-bottom: 1px solid var(--rule-dark); padding: 28px 26px 30px; display: flex; flex-direction: column; gap: 12px; min-height: 170px;
}
html.sandbox-svc-training-page .how-step::before {
  content: ""; position: absolute; top: -1px; left: -1px; width: 1px; height: 46px; background: var(--signal); transition: height 560ms cubic-bezier(.45,0,.15,1);
}
html.sandbox-svc-training-page .how-step.reveal:not(.in)::before {
  height: 0;
}
html.sandbox-svc-training-page .how-step .hn {
  font-family: var(--mono); font-size: 11px; color: var(--signal);
}
html.sandbox-svc-training-page .how-step h3 {
  font-size: 17px; letter-spacing: -0.016em; color: var(--ivory); font-weight: 500;
}
html.sandbox-svc-training-page .how-step p {
  font-size: 13.5px; color: var(--ivory-mute); line-height: 1.6; max-width: 32ch;
}
html.sandbox-svc-training-page .tr-faq {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-svc-training-page .tr-faq .section-head {
  padding-top: clamp(24px,3vw,40px); padding-bottom: clamp(20px,2.5vw,32px);
}
html.sandbox-svc-training-page .faq-list {
  border-top: 1px solid var(--rule); max-width: 820px;
}
html.sandbox-svc-training-page .faq-item {
  border-bottom: 1px solid var(--rule);
}
html.sandbox-svc-training-page .faq-item summary {
  list-style: none; cursor: pointer; padding: 20px 0; display: flex; align-items: center; justify-content: space-between; gap: 20px; font-size: 16px; letter-spacing: -0.012em; color: var(--ink);
}
html.sandbox-svc-training-page .faq-item summary::-webkit-details-marker {
  display: none;
}
html.sandbox-svc-training-page .faq-item summary .pl {
  font-family: var(--mono); font-size: 16px; color: var(--steel-3); transition: transform 240ms var(--ease), color 240ms var(--ease);
}
html.sandbox-svc-training-page .faq-item[open] summary .pl {
  transform: rotate(45deg); color: var(--warm);
}
html.sandbox-svc-training-page .faq-item .faq-a {
  padding: 0 0 20px; color: var(--steel-2); font-size: 14px; line-height: 1.65; max-width: 70ch;
}
html.sandbox-svc-training-page .cta-final .cta-inner {
  border-top: 0;
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-svc-training-page .acc-cell::before {
  transform: scaleX(1);
}
html.sandbox-svc-training-page .how-step::before {
  height: 46px;
}
html.sandbox-svc-training-page .hero.hero-inner-page .hero-kicker .dot {
  animation: none;
}
}

/* === Migrated from view 6712 inline block #2 === */
:root, body {
  --page-accent: #1FB6E0 ; --page-accent-2: #D26D43 ;
}
html.sandbox-svc-training-page .slr-about-hero, html.sandbox-svc-training-page .slr-about-hero * {
  --warm: var(--page-accent) ;
 --warm-2: var(--page-accent-2) ;
 --warm-soft: color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}

/* === Migrated from view 6713 inline block #0 === */
html, body {
  background: var(--paper, #EEF1F5) ;
}

/* === Migrated from view 6713 inline block #1 === */
:root, body {
  --page-accent: #1FB6E0; --page-accent-2: #D26D43;
}
html.sandbox-blog-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-blog-page .slr-about-hero .hero-inner {
  z-index: 2;
}
html.sandbox-blog-page .slr-about-hero h1 {
  font-size: clamp(40px, 6.6vw, 92px);
 line-height: 0.98;
 letter-spacing: -0.038em;
 max-width: 20ch;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-blog-page .slr-about-hero.hero.hero-inner-page {
  background: var(--paper) ;
 color: var(--ink) ;
}
html.sandbox-blog-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-blog-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
@media (max-width: 720px) {
html.sandbox-blog-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}
}
html.sandbox-blog-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
body .slr-about-hero .hero-kicker, html.sandbox-blog-page .slr-about-hero .hero-kicker {
  color: var(--steel-1) ;
 border-color: var(--rule-strong) ;
 background: color-mix(in srgb, var(--paper) 72%, transparent) ;
}
body .slr-about-hero h1, html.sandbox-blog-page .slr-about-hero h1 {
  color: var(--ink) ;
 text-shadow: none ;
 font-weight: 600;
}
body .slr-about-hero h1 .accent, html.sandbox-blog-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-blog-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
body .section-head .head-tag .lbl, body .head-tag .lbl, html.sandbox-blog-page .section-head .head-tag .lbl {
  color: var(--warm) ; font-weight: 700 ; font-size: 14px ;
}
html.sandbox-blog-page .nav .brand-logo {
  height: 44px ;
}
html.sandbox-blog-page .footer .brand-logo {
  height: 43px ;
}
html.sandbox-blog-page .footer {
  background: var(--ink-deep) ;
}
html.sandbox-blog-page .slr-about-hero.hero.hero-inner-page {
  border-bottom: 0 ;
}
html.sandbox-blog-page .slr-about-hero.hero.hero-inner-page + section {
  border-top: 0 ;
}
html.sandbox-blog-page .blog-scope {
  --mint: #25C2A0; --mint-deep: #14A687; --mint-soft: rgba(37, 194, 160, 0.16);
}
html.sandbox-blog-page .blog-hero {
  position: relative;
 background: var(--ink-deep);
 color: var(--ivory);
 padding-top: clamp(140px, 16vh, 196px);
 padding-bottom: clamp(40px, 6vw, 72px);
 overflow: hidden;
 border-bottom: 1px solid var(--rule-dark);
}
html.sandbox-blog-page .blog-vanta {
  position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image: linear-gradient(180deg, black 0%, black 60%, transparent 100%);
 mask-image: linear-gradient(180deg, black 0%, black 60%, transparent 100%);
}
html.sandbox-blog-page .blog-vanta canvas {
  display: block;
}
html.sandbox-blog-page .blog-vanta::after {
  content: "";
 position: absolute;
 inset: 0;
 background: radial-gradient(920px 540px at 85% -6%, rgba(0,0,0,0.34), transparent 62%);
 pointer-events: none;
}
html.sandbox-blog-page .blog-hero::after {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: none;
 background:
 radial-gradient(640px 380px at 88% -8%, var(--mint-soft), transparent 70%),
 radial-gradient(560px 320px at 8% 8%, var(--warm-soft), transparent 72%);
}
html.sandbox-blog-page .blog-hero .wrap {
  position: relative; z-index: 1;
}
html.sandbox-blog-page .blog-termline {
  display: flex;
 align-items: center;
 gap: 12px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.06em;
 color: var(--ivory-faint);
 margin-bottom: 22px;
}
html.sandbox-blog-page .blog-termline .seg {
  display: inline-flex; align-items: center; gap: 8px;
}
html.sandbox-blog-page .blog-termline .pmt {
  color: var(--mint);
}
html.sandbox-blog-page .blog-termline .blink {
  width: 8px; height: 15px;
 background: var(--mint);
 display: inline-block;
 animation: blog-blink 1.15s steps(1) infinite;
 transform: translateY(2px);
}
@keyframes blog-blink {
  0%, 50% { opacity: 1; } 50.01%, 100% { opacity: 0; }
}
html.sandbox-blog-page .blog-termline .div {
  color: var(--ivory-faint);
}
html.sandbox-blog-page .blog-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--ivory);
 padding: 7px 13px 7px 11px;
 border: 1px solid var(--rule-dark-strong);
 background: color-mix(in srgb, var(--ink) 50%, transparent);
}
html.sandbox-blog-page .blog-kicker .dot {
  width: 8px; height: 8px; border-radius: 50%;
 background: var(--mint);
 box-shadow: 0 0 0 3px var(--mint-soft);
}
html.sandbox-blog-page .blog-hero h1 {
  margin-top: 22px;
 font-size: clamp(40px, 6vw, 78px);
 line-height: 1.0;
 letter-spacing: -0.035em;
 font-weight: 600;
 max-width: 17ch;
 color: var(--ivory);
}
html.sandbox-blog-page .blog-hero h1 .accent {
  color: var(--warm);
}
html.sandbox-blog-page .blog-hero h1 .accent-mint {
  color: var(--mint);
}
html.sandbox-blog-page .blog-hero .blog-lede {
  margin-top: 22px;
 font-size: clamp(15px, 1.4vw, 18px);
 line-height: 1.6;
 color: var(--ivory-mute);
 max-width: 58ch;
}
html.sandbox-blog-page .blog-filter {
  position: sticky;
 top: 0;
 z-index: 20;
 background: color-mix(in srgb, var(--paper) 88%, transparent);
 backdrop-filter: saturate(1.3) blur(10px);
 -webkit-backdrop-filter: saturate(1.3) blur(10px);
 border-bottom: 1px solid var(--rule);
}
html.sandbox-blog-page .blog-filter .wrap {
  display: flex;
 align-items: center;
 gap: 8px;
 flex-wrap: wrap;
 padding-top: 14px;
 padding-bottom: 14px;
}
html.sandbox-blog-page .blog-filter .flt-label {
  font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--steel-3);
 margin-right: 6px;
}
html.sandbox-blog-page .flt-btn {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.06em;
 background: transparent;
 border: 1px solid var(--rule-strong);
 color: var(--steel-2);
 padding: 7px 13px;
 cursor: pointer;
 transition: border-color 200ms var(--ease), color 200ms var(--ease), background 200ms var(--ease);
}
html.sandbox-blog-page .flt-btn:hover {
  border-color: var(--warm-2); color: var(--ink);
}
html.sandbox-blog-page .flt-btn.is-active {
  border-color: var(--warm-2); background: var(--warm-2); color: #fff;
}
html.sandbox-blog-page .blog-featured {
  background: var(--paper);
}
html.sandbox-blog-page .blog-featured .wrap {
  padding-top: clamp(36px, 5vw, 60px); padding-bottom: clamp(20px, 3vw, 32px);
}
html.sandbox-blog-page .feat-card {
  display: grid;
 grid-template-columns: 1.15fr 1fr;
 border: 1px solid var(--rule);
 text-decoration: none;
 color: var(--steel-1);
 background: var(--paper-2);
 transition: border-color 240ms var(--ease);
}
@media (max-width: 820px) {
html.sandbox-blog-page .feat-card {
  grid-template-columns: 1fr;
}
}
html.sandbox-blog-page .feat-card:hover {
  border-color: var(--mint);
}
html.sandbox-blog-page .feat-card {
  position: relative;
}
html.sandbox-blog-page .feat-card::before {
  content: "";
 position: absolute; top: 0; left: 0; height: 2px; width: 0;
 background: var(--mint);
 z-index: 2;
 transition: width 420ms var(--ease);
}
html.sandbox-blog-page .feat-card:hover::before {
  width: 100%;
}
html.sandbox-blog-page .feat-figure {
  position: relative; overflow: hidden; min-height: 320px; background: var(--bone);
}
@media (max-width: 820px) {
html.sandbox-blog-page .feat-figure {
  min-height: 240px;
}
}
html.sandbox-blog-page .feat-figure img {
  position: absolute; inset: 0;
 width: 100%; height: 100%;
 object-fit: cover;
 filter: grayscale(0.25) contrast(1.02);
 transition: transform 600ms var(--ease), filter 400ms var(--ease);
}
html.sandbox-blog-page .feat-card:hover .feat-figure img {
  transform: scale(1.04); filter: grayscale(0) contrast(1.05);
}
html.sandbox-blog-page .feat-flag {
  position: absolute; top: 16px; left: 16px; z-index: 1;
 font-family: var(--mono);
 font-size: 10px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--paper);
 background: var(--warm);
 padding: 6px 10px;
}
html.sandbox-blog-page .feat-body {
  padding: clamp(28px, 3.5vw, 48px);
 display: flex;
 flex-direction: column;
 gap: 16px;
 justify-content: center;
}
html.sandbox-blog-page .feat-meta {
  display: flex; align-items: center; gap: 14px; flex-wrap: wrap;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.06em;
 color: var(--steel-3);
}
html.sandbox-blog-page .feat-meta .cat {
  color: var(--warm); letter-spacing: 0.14em; text-transform: uppercase; font-size: 10px;
}
html.sandbox-blog-page .feat-body h2 {
  font-size: clamp(24px, 2.6vw, 36px);
 letter-spacing: -0.025em;
 line-height: 1.1;
 color: var(--ink);
 max-width: 20ch;
}
html.sandbox-blog-page .feat-body p {
  color: var(--steel-2); font-size: 15.5px; line-height: 1.6; max-width: 46ch;
}
html.sandbox-blog-page .feat-tags {
  display: flex; gap: 6px; flex-wrap: wrap; margin-top: 2px;
}
html.sandbox-blog-page .blog-tag {
  font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.04em;
 color: var(--steel-2);
 border: 1px solid var(--rule-strong);
 padding: 4px 9px;
}
html.sandbox-blog-page .feat-readmore {
  margin-top: 6px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.12em;
 text-transform: uppercase;
 color: var(--ink);
 display: inline-flex; align-items: center; gap: 8px;
}
html.sandbox-blog-page .feat-readmore .arr {
  transition: transform 220ms var(--ease);
}
html.sandbox-blog-page .feat-card:hover .feat-readmore .arr {
  transform: translateX(4px);
}
html.sandbox-blog-page .blog-list {
  background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-blog-page .blog-list .wrap {
  padding-top: clamp(28px, 3.5vw, 44px); padding-bottom: clamp(48px, 7vw, 96px);
}
html.sandbox-blog-page .posts-head {
  display: flex; align-items: baseline; justify-content: space-between;
 padding-bottom: 22px;
 border-bottom: 1px solid var(--rule);
 margin-bottom: clamp(24px, 3vw, 36px);
}
html.sandbox-blog-page .posts-head .lbl {
  font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.18em;
 text-transform: uppercase; color: var(--warm) ; font-weight: 700 ;
}
html.sandbox-blog-page .posts-head .count {
  font-family: var(--mono); font-size: 11px; color: var(--steel-3);
}
html.sandbox-blog-page .posts-grid {
  display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: clamp(20px, 2.4vw, 34px);
}
@media (max-width: 920px) {
html.sandbox-blog-page .posts-grid {
  grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 560px) {
html.sandbox-blog-page .posts-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-blog-page .post-card {
  display: flex;
 flex-direction: column;
 text-decoration: none;
 color: var(--steel-1);
 border: 1px solid var(--rule);
 background: var(--paper);
 box-shadow: 0 1px 2px rgba(10, 26, 44, 0.06), 0 8px 24px rgba(10, 26, 44, 0.10);
 transition: border-color 240ms var(--ease), transform 240ms var(--ease), box-shadow 240ms var(--ease);
}
html.sandbox-blog-page .post-card {
  position: relative;
}
html.sandbox-blog-page .post-card:hover {
  border-color: var(--warm); transform: translateY(-3px);
 box-shadow: 0 2px 6px rgba(10, 26, 44, 0.08), 0 18px 44px rgba(10, 26, 44, 0.16);
}
html.sandbox-blog-page .post-card::before {
  content: "";
 position: absolute; top: 0; left: 0; height: 2px; width: 0;
 background: var(--warm);
 z-index: 2;
 transition: width 380ms var(--ease);
}
html.sandbox-blog-page .post-card:hover::before {
  width: 100%;
}
html.sandbox-blog-page .post-figure {
  position: relative;
 aspect-ratio: 16 / 10;
 overflow: hidden;
 background: var(--bone);
 border-bottom: 1px solid var(--rule);
}
html.sandbox-blog-page .post-figure img {
  position: absolute; inset: 0;
 width: 100%; height: 100%;
 object-fit: cover;
 filter: grayscale(0.3) contrast(1.02);
 transition: transform 600ms var(--ease), filter 400ms var(--ease);
}
html.sandbox-blog-page .post-card:hover .post-figure img {
  transform: scale(1.05); filter: grayscale(0) contrast(1.05);
}
html.sandbox-blog-page .post-cat-flag {
  position: absolute; top: 12px; left: 12px;
 z-index: 2;
 font-family: var(--mono);
 font-size: 9.5px;
 letter-spacing: 0.16em;
 text-transform: uppercase;
 color: var(--ink);
 background: color-mix(in srgb, var(--paper) 92%, transparent);
 backdrop-filter: blur(4px);
 padding: 5px 9px 5px 10px;
 border: 1px solid var(--rule);
 border-left: 2px solid var(--mint);
}
html.sandbox-blog-page .post-body {
  padding: 20px 20px 22px;
 display: flex;
 flex-direction: column;
 gap: 12px;
 flex: 1;
}
html.sandbox-blog-page .post-meta {
  display: flex; align-items: center; gap: 12px;
 font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.06em;
 color: var(--steel-3);
}
html.sandbox-blog-page .post-meta .dot-sep {
  width: 3px; height: 3px; border-radius: 50%; background: var(--steel-4);
}
html.sandbox-blog-page .post-body h3 {
  font-size: 19px;
 letter-spacing: -0.018em;
 line-height: 1.25;
 color: var(--ink);
 transition: color 200ms var(--ease);
}
html.sandbox-blog-page .post-card:hover .post-body h3 {
  color: var(--warm-2);
}
html.sandbox-blog-page .post-body p {
  font-size: 13.5px;
 line-height: 1.6;
 color: var(--steel-2);
 flex: 1;
}
html.sandbox-blog-page .post-tags {
  display: flex; gap: 6px; flex-wrap: wrap; padding-top: 4px;
}
html.sandbox-blog-page .post-tags .blog-tag {
  font-size: 9.5px; padding: 3px 8px;
}
html.sandbox-blog-page .post-cover {
  position: absolute; inset: 0;
 background: #05080F;
 overflow: hidden;
}
html.sandbox-blog-page .post-cover .cover-mark {
  display: none;
}
html.sandbox-blog-page .post-cover .cover-byline {
  position: absolute; left: 16px; bottom: 13px; z-index: 1;
 font-family: var(--mono);
 font-size: 10.5px;
 letter-spacing: 0.08em;
 color: var(--ivory-mute);
}
html.sandbox-blog-page .feat-figure .post-cover .cover-byline {
  font-size: 11.5px; left: 22px; bottom: 18px;
}
html.sandbox-blog-page .post-card[hidden] {
  display: none;
}
html.sandbox-blog-page .blog-news {
  background: var(--paper); border-top: 1px solid var(--rule);
}

/* === Migrated from view 6714 inline block #0 === */
:root {
  --page-accent: #1FB6E0; --page-accent-2: #0D97D7; --page-warm: #D26D43;
}
html, body {
  background: var(--paper) ; color: var(--steel-1); margin: 0; padding: 0;
}
html.sandbox-landing-page .lp {
  min-height: 100vh;
}
html.sandbox-landing-page .wrap {
  max-width: 1200px; margin: 0 auto; padding: 0 24px;
}
html.sandbox-landing-page [data-lang] {
  display: none;
}
html.sandbox-landing-page [data-lang].is-active {
  display: block;
}
html.sandbox-landing-page span[data-lang].is-active {
  display: inline;
}
html.sandbox-landing-page li[data-lang].is-active {
  display: list-item;
}
html.sandbox-landing-page .reveal {
  opacity: 0; transform: translateY(36px); transition: opacity 700ms cubic-bezier(0.2,0.7,0.2,1), transform 700ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-landing-page .reveal.in {
  opacity: 1; transform: none;
}
html.sandbox-landing-page .reveal.d0 {
  transition-delay: 0ms;
}
html.sandbox-landing-page .reveal.d1 {
  transition-delay: 90ms;
}
html.sandbox-landing-page .reveal.d2 {
  transition-delay: 180ms;
}
html.sandbox-landing-page .reveal.d3 {
  transition-delay: 270ms;
}
html.sandbox-landing-page .reveal.d4 {
  transition-delay: 360ms;
}
html.sandbox-landing-page .reveal.d5 {
  transition-delay: 450ms;
}
html.sandbox-landing-page .lp-topbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; justify-content: space-between; align-items: center; padding: 18px 24px; pointer-events: none;
}
html.sandbox-landing-page .lp-back, html.sandbox-landing-page .lp-lang {
  pointer-events: auto;
}
html.sandbox-landing-page .lp-back {
  display: inline-flex; align-items: center; gap: 8px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.18em; padding: 12px 16px; color: var(--steel-1); background: rgba(255,255,255,0.88); border: 1px solid var(--rule-strong); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); text-decoration: none; text-transform: uppercase; transition: background 200ms ease, color 200ms ease, border-color 200ms ease;
}
html.sandbox-landing-page .lp-back:hover {
  background: var(--page-accent); color: #fff; border-color: var(--page-accent);
}
html.sandbox-landing-page .lp-lang {
  display: flex; gap: 4px; background: rgba(255,255,255,0.88); padding: 4px; border: 1px solid var(--rule-strong); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
html.sandbox-landing-page .lp-lang button {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.18em; padding: 8px 12px; background: transparent; color: var(--steel-3); border: 0; cursor: pointer; text-transform: uppercase; transition: color 200ms ease;
}
html.sandbox-landing-page .lp-lang button:hover {
  color: var(--steel-1);
}
html.sandbox-landing-page .lp-lang button.is-active {
  color: var(--page-accent-2);
}
html.sandbox-landing-page .lp-hero {
  position: relative; min-height: 92vh; display: flex; align-items: center; padding: 140px 0 96px; overflow: hidden; background: var(--paper);
}
html.sandbox-landing-page .lp-hero-video {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; opacity: 0.22;
}
html.sandbox-landing-page .lp-hero::before {
  content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(238,241,245,0.50) 0%, rgba(238,241,245,0.92) 100%), radial-gradient(900px 540px at 88% -5%, color-mix(in srgb, var(--page-accent) 18%, transparent), transparent 60%); z-index: 1;
}
html.sandbox-landing-page .lp-hero-contour {
  position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; pointer-events: none; -webkit-mask-image: linear-gradient(120deg, transparent 0%, black 70%); mask-image: linear-gradient(120deg, transparent 0%, black 70%);
}
html.sandbox-landing-page .lp-hero .wrap {
  position: relative; z-index: 2;
}
html.sandbox-landing-page .lp-kicker {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--steel-1); display: inline-flex; align-items: center; gap: 10px; padding: 7px 12px; border: 1px solid var(--rule-strong); background: rgba(255,255,255,0.75); backdrop-filter: blur(4px);
}
html.sandbox-landing-page .lp-kicker .dot {
  width: 8px; height: 8px; border-radius: 50%; background: var(--page-accent); display: inline-block; box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent);
}
html.sandbox-landing-page .lp-hero h1 {
  font-size: clamp(40px, 6.2vw, 86px); line-height: 1.02; letter-spacing: -0.038em; color: var(--ink); font-weight: 600; max-width: 22ch; margin: 24px 0 12px;
}
html.sandbox-landing-page .lp-hero h1 .accent {
  color: var(--page-accent-2);
}
html.sandbox-landing-page .lp-hero h2 {
  font-size: clamp(18px, 1.8vw, 26px); line-height: 1.35; letter-spacing: -0.016em; color: var(--steel-1); font-weight: 500; max-width: 36ch; margin: 0 0 24px;
}
html.sandbox-landing-page .lp-sub {
  font-size: clamp(15px, 1.3vw, 17px); color: var(--steel-2); max-width: 56ch; line-height: 1.65; margin: 0 0 28px;
}
html.sandbox-landing-page .lp-bullets {
  display: flex; flex-direction: column; gap: 10px; margin: 28px 0 36px; font-family: var(--mono); font-size: 13px; letter-spacing: 0.02em; color: var(--steel-1); list-style: none; padding: 0;
}
html.sandbox-landing-page .lp-bullets li {
  padding-left: 22px; position: relative;
}
html.sandbox-landing-page .lp-bullets li::before {
  content: ""; position: absolute; left: 0; top: 6px; width: 10px; height: 1px; background: var(--page-accent-2);
}
html.sandbox-landing-page .lp-ctas {
  display: flex; gap: 12px; flex-wrap: wrap; margin-top: 36px;
}
html.sandbox-landing-page .lp-btn {
  padding: 14px 22px; font-family: var(--mono); font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase; text-decoration: none; transition: all 240ms cubic-bezier(0.2,0.7,0.2,1); display: inline-flex; align-items: center; gap: 8px; position: relative;
}
html.sandbox-landing-page .lp-btn-primary {
  background: var(--page-warm); color: #fff; border: 1px solid var(--page-warm); box-shadow: 0 6px 22px -10px color-mix(in srgb, var(--page-warm) 60%, transparent);
}
html.sandbox-landing-page .lp-btn-primary:hover {
  background: #BC5C34; border-color: #BC5C34; transform: translateY(-2px); box-shadow: 0 12px 28px -10px color-mix(in srgb, var(--page-warm) 70%, transparent);
}
html.sandbox-landing-page .lp-btn-secondary {
  background: rgba(255,255,255,0.6); color: var(--steel-1); border: 1px solid var(--rule-strong); backdrop-filter: blur(4px);
}
html.sandbox-landing-page .lp-btn-secondary:hover {
  border-color: var(--page-accent-2); color: var(--page-accent-2); transform: translateY(-2px);
}
html.sandbox-landing-page .lp-stats {
  background: var(--ink-deep); padding: 64px 0; position: relative; overflow: hidden;
}
html.sandbox-landing-page .lp-stats::before {
  content: ""; position: absolute; inset: 0; background: radial-gradient(800px 500px at 18% 50%, color-mix(in srgb, var(--page-accent) 16%, transparent), transparent 60%); pointer-events: none;
}
html.sandbox-landing-page .lp-stats .wrap {
  position: relative; z-index: 1;
}
html.sandbox-landing-page .lp-stats .grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 0;
}
html.sandbox-landing-page .lp-stats .cell {
  padding: 0 28px; border-right: 1px solid var(--rule-dark);
}
html.sandbox-landing-page .lp-stats .cell:last-child {
  border-right: 0;
}
html.sandbox-landing-page .lp-stats .num {
  font-size: clamp(48px, 7vw, 96px); line-height: 0.95; letter-spacing: -0.03em; color: var(--ivory); font-weight: 500; display: block;
}
html.sandbox-landing-page .lp-stats .num .sup {
  font-size: 0.42em; color: var(--page-accent); vertical-align: top; margin-left: 2px;
}
html.sandbox-landing-page .lp-stats .lbl {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; margin-top: 14px; display: block; line-height: 1.5; color: var(--warm) ; font-weight: 700 ;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-stats .grid {
  grid-template-columns: repeat(2, 1fr); row-gap: 48px;
}
html.sandbox-landing-page .lp-stats .cell:nth-child(2) {
  border-right: 0;
}
}
html.sandbox-landing-page .lp-section {
  padding: clamp(64px, 9vw, 120px) 0; position: relative; background: var(--paper);
}
html.sandbox-landing-page .lp-section.alt {
  background: var(--paper-2);
}
html.sandbox-landing-page .lp-section.dark {
  background: var(--ink-deep); color: var(--ivory);
}
html.sandbox-landing-page .lp-section.dark h2 {
  color: var(--ivory);
}
html.sandbox-landing-page .lp-section.dark .lp-intro {
  color: var(--ivory-mute);
}
html.sandbox-landing-page .lp-section.dark .lp-label {
  color: var(--page-accent);
}
html.sandbox-landing-page .lp-section.dotted::before {
  content: ""; position: absolute; inset: 0; background-image: radial-gradient(circle at 1px 1px, color-mix(in srgb, var(--page-accent) 18%, transparent) 1px, transparent 0); background-size: 22px 22px; pointer-events: none; opacity: 0.6;
}
html.sandbox-landing-page .lp-section.dotted .wrap {
  position: relative; z-index: 1;
}
html.sandbox-landing-page .lp-section.striped::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent 0%, var(--page-accent) 22%, var(--page-accent-2) 78%, transparent 100%); opacity: 0.55;
}
html.sandbox-landing-page .lp-section h2 {
  font-size: clamp(28px, 3.6vw, 46px); line-height: 1.15; letter-spacing: -0.028em; color: var(--steel-1); margin: 0 0 24px; font-weight: 600; max-width: 22ch;
}
html.sandbox-landing-page .lp-section .lp-intro {
  font-size: clamp(15px, 1.3vw, 18px); color: var(--steel-2); max-width: 60ch; line-height: 1.7; margin: 0 0 48px;
}
html.sandbox-landing-page .lp-section .lp-label {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--page-accent-2); margin-bottom: 16px; display: block;
}
html.sandbox-landing-page .lp-tagline {
  background: var(--ink); padding: 28px 0; text-align: center; position: relative;
}
html.sandbox-landing-page .lp-tagline span {
  font-family: var(--mono); font-size: 13px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ivory-mute);
}
html.sandbox-landing-page .lp-tagline strong {
  color: var(--page-accent); font-weight: 500;
}
html.sandbox-landing-page .lp-tags {
  background: var(--paper); padding: 48px 0;
}
html.sandbox-landing-page .lp-tags-grid {
  display: flex; flex-wrap: wrap; gap: 10px; justify-content: center;
}
html.sandbox-landing-page .lp-tag {
  padding: 8px 16px; border: 1px solid var(--rule-strong); background: #fff; font-family: var(--mono); font-size: 12px; letter-spacing: 0.08em; color: var(--steel-1); transition: all 240ms ease; cursor: default;
}
html.sandbox-landing-page .lp-tag:hover {
  border-color: var(--page-accent); color: var(--page-accent-2); background: color-mix(in srgb, var(--page-accent) 6%, #fff);
}
html.sandbox-landing-page .lp-why-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-why-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-landing-page .lp-why-card {
  padding: 36px 28px 32px; background: #fff; border: 1px solid var(--rule-strong); box-shadow: 0 10px 28px -20px rgba(10,26,44,0.15); position: relative; overflow: hidden; transition: transform 360ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 360ms ease, border-color 320ms ease;
}
html.sandbox-landing-page .lp-why-card::before {
  content: ""; position: absolute; top: 0; left: 0; height: 3px; width: 0; background: var(--page-accent); transition: width 460ms cubic-bezier(0.2,0.7,0.2,1); z-index: 2;
}
html.sandbox-landing-page .lp-why-card:hover {
  transform: translateY(-6px); box-shadow: 0 30px 56px -28px rgba(10,26,44,0.32); border-color: var(--page-accent);
}
html.sandbox-landing-page .lp-why-card:hover::before {
  width: 100%;
}
html.sandbox-landing-page .lp-why-card .icon {
  width: 44px; height: 44px; border: 1px solid var(--rule-strong); display: flex; align-items: center; justify-content: center; color: var(--page-accent-2); margin-bottom: 20px; background: var(--paper);
}
html.sandbox-landing-page .lp-why-card .icon svg {
  width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 1.2;
}
html.sandbox-landing-page .lp-why-card .idx {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--page-accent-2); margin-bottom: 12px; display: block;
}
html.sandbox-landing-page .lp-why-card h3 {
  font-size: 20px; color: var(--steel-1); margin: 0 0 12px; letter-spacing: -0.014em; line-height: 1.25; font-weight: 600; transition: color 280ms ease;
}
html.sandbox-landing-page .lp-why-card:hover h3 {
  color: var(--page-accent-2);
}
html.sandbox-landing-page .lp-why-card p {
  color: var(--steel-2); font-size: 14.5px; line-height: 1.6; margin: 0;
}
html.sandbox-landing-page .lp-spec-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-spec-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-landing-page .lp-spec-card {
  padding: 32px 24px 28px; border: 1px solid var(--rule-strong); background: #fff; position: relative; transition: transform 280ms ease, box-shadow 280ms ease, border-color 280ms ease; overflow: hidden;
}
html.sandbox-landing-page .lp-spec-card::before {
  content: ""; position: absolute; bottom: 0; left: 0; height: 2px; width: 0; background: var(--page-accent); transition: width 380ms ease;
}
html.sandbox-landing-page .lp-spec-card:hover {
  transform: translateY(-4px); box-shadow: 0 22px 44px -28px rgba(10,26,44,0.28); border-color: var(--page-accent);
}
html.sandbox-landing-page .lp-spec-card:hover::before {
  width: 100%;
}
html.sandbox-landing-page .lp-spec-card .icon {
  width: 38px; height: 38px; color: var(--page-accent-2); margin-bottom: 16px; display: flex; align-items: center; justify-content: center;
}
html.sandbox-landing-page .lp-spec-card .icon svg {
  width: 28px; height: 28px; stroke: currentColor; fill: none; stroke-width: 1.2;
}
html.sandbox-landing-page .lp-spec-card .idx {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; color: var(--page-accent-2); margin-bottom: 10px; display: block;
}
html.sandbox-landing-page .lp-spec-card .name {
  font-size: 16px; color: var(--steel-1); line-height: 1.3; letter-spacing: -0.012em; display: block; font-weight: 500;
}
html.sandbox-landing-page .lp-clients-grid {
  display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-top: 32px;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-clients-grid {
  grid-template-columns: repeat(2, 1fr);
}
}
html.sandbox-landing-page .lp-client {
  padding: 24px 16px; border: 1px solid var(--rule); background: #fff; font-family: var(--mono); font-size: 12px; letter-spacing: 0.06em; color: var(--steel-2); text-align: center; min-height: 70px; display: flex; align-items: center; justify-content: center; transition: all 240ms ease;
}
html.sandbox-landing-page .lp-client:hover {
  color: var(--page-accent-2); border-color: var(--page-accent); transform: translateY(-2px);
}
html.sandbox-landing-page .lp-work-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-work-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-landing-page .lp-work-card {
  padding: 40px 32px 36px; background: #fff; border: 1px solid var(--rule-strong); box-shadow: 0 10px 28px -20px rgba(10,26,44,0.15); position: relative; overflow: hidden; transition: transform 360ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 360ms ease, border-color 320ms ease;
}
html.sandbox-landing-page .lp-work-card::before {
  content: ""; position: absolute; top: 0; left: 0; height: 3px; width: 0; background: var(--page-warm); transition: width 460ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-landing-page .lp-work-card:hover {
  transform: translateY(-6px); box-shadow: 0 30px 56px -28px rgba(10,26,44,0.32); border-color: var(--page-warm);
}
html.sandbox-landing-page .lp-work-card:hover::before {
  width: 100%;
}
html.sandbox-landing-page .lp-work-card .idx {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; color: var(--page-warm); margin-bottom: 18px; display: block;
}
html.sandbox-landing-page .lp-work-card h3 {
  font-size: 22px; color: var(--steel-1); margin: 0 0 14px; letter-spacing: -0.016em; line-height: 1.25; font-weight: 600;
}
html.sandbox-landing-page .lp-work-card p {
  color: var(--steel-2); font-size: 14.5px; line-height: 1.65; margin: 0;
}
html.sandbox-landing-page .lp-badges {
  display: flex; flex-wrap: wrap; gap: 10px; margin-top: 32px; justify-content: center;
}
html.sandbox-landing-page .lp-badge {
  padding: 12px 18px; border: 1px solid var(--rule-strong); background: #fff; font-family: var(--mono); font-size: 12px; letter-spacing: 0.12em; color: var(--steel-1); transition: all 240ms ease;
}
html.sandbox-landing-page .lp-badge:hover {
  border-color: var(--page-accent); color: var(--page-accent-2); transform: translateY(-2px); box-shadow: 0 8px 20px -14px color-mix(in srgb, var(--page-accent) 50%, transparent);
}
html.sandbox-landing-page .lp-cases {
  display: grid; grid-template-columns: 1fr; gap: 32px;
}
html.sandbox-landing-page .lp-case {
  padding: 40px clamp(28px, 3vw, 48px); background: #fff; border: 1px solid var(--rule-strong); box-shadow: 0 10px 28px -20px rgba(10,26,44,0.15); display: grid; grid-template-columns: 280px 1fr; gap: clamp(28px, 4vw, 56px); position: relative; overflow: hidden; transition: transform 360ms ease, box-shadow 360ms ease, border-color 320ms ease;
}
html.sandbox-landing-page .lp-case::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--page-accent); transform: scaleY(0); transform-origin: top; transition: transform 480ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-landing-page .lp-case:hover {
  transform: translateY(-4px); box-shadow: 0 30px 56px -28px rgba(10,26,44,0.32); border-color: var(--page-accent);
}
html.sandbox-landing-page .lp-case:hover::before {
  transform: scaleY(1);
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-case {
  grid-template-columns: 1fr;
}
}
html.sandbox-landing-page .lp-case .meta {
  display: flex; flex-direction: column; gap: 12px;
}
html.sandbox-landing-page .lp-case .meta .tag {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--page-accent-2);
}
html.sandbox-landing-page .lp-case .meta h3 {
  font-size: 22px; color: var(--steel-1); margin: 0; letter-spacing: -0.016em; line-height: 1.25; font-weight: 600;
}
html.sandbox-landing-page .lp-case .meta .client {
  font-size: 13px; color: var(--steel-3);
}
html.sandbox-landing-page .lp-case .meta .duration {
  font-family: var(--mono); font-size: 12px; letter-spacing: 0.06em; color: var(--steel-2); padding-top: 12px; border-top: 1px solid var(--rule);
}
html.sandbox-landing-page .lp-case .body {
  display: flex; flex-direction: column; gap: 20px;
}
html.sandbox-landing-page .lp-case .body .row {
  display: grid; grid-template-columns: 110px 1fr; gap: 18px; align-items: start;
}
@media (max-width: 540px) {
html.sandbox-landing-page .lp-case .body .row {
  grid-template-columns: 1fr; gap: 6px;
}
}
html.sandbox-landing-page .lp-case .body .row .l {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--steel-3); padding-top: 3px;
}
html.sandbox-landing-page .lp-case .body .row p {
  color: var(--steel-1); font-size: 14.5px; line-height: 1.6; margin: 0;
}
html.sandbox-landing-page .lp-cta-final {
  padding: clamp(80px, 11vw, 140px) 0; background: var(--ink-deep); border-top: 1px solid var(--rule-dark); position: relative; overflow: hidden; text-align: center; color: var(--ivory);
}
html.sandbox-landing-page .lp-cta-final::before {
  content: ""; position: absolute; inset: 0; background: radial-gradient(800px 480px at 20% 30%, color-mix(in srgb, var(--page-accent) 22%, transparent), transparent 60%), radial-gradient(700px 420px at 82% 70%, color-mix(in srgb, var(--page-warm) 14%, transparent), transparent 60%);
}
html.sandbox-landing-page .lp-cta-final .wrap {
  position: relative; z-index: 1;
}
html.sandbox-landing-page .lp-cta-final .lp-label {
  color: var(--page-accent); display: inline-block;
}
html.sandbox-landing-page .lp-cta-final h2 {
  font-size: clamp(32px, 4vw, 56px); color: var(--ivory); letter-spacing: -0.028em; margin: 0 0 16px; max-width: none; font-weight: 600;
}
html.sandbox-landing-page .lp-cta-final p {
  color: var(--ivory-mute); font-size: 17px; max-width: 56ch; margin: 0 auto 36px; line-height: 1.65;
}
html.sandbox-landing-page .lp-cta-final .lp-ctas {
  justify-content: center;
}
html.sandbox-landing-page .lp-cta-final .lp-btn-secondary {
  background: rgba(6,15,30,0.5); color: var(--ivory); border-color: var(--rule-dark-strong);
}
html.sandbox-landing-page .lp-cta-final .lp-btn-secondary:hover {
  border-color: var(--page-accent); color: var(--page-accent);
}
html.sandbox-landing-page .lp-team-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-team-grid {
  grid-template-columns: 1fr;
}
}
html.sandbox-landing-page .lp-team-card {
  display: flex; flex-direction: column; gap: 14px; background: #fff; padding: 0; border: 1px solid var(--rule-strong); box-shadow: 0 10px 28px -20px rgba(10,26,44,0.15); position: relative; overflow: hidden; transition: transform 360ms ease, box-shadow 360ms ease, border-color 320ms ease;
}
html.sandbox-landing-page .lp-team-card::before {
  content: ""; position: absolute; top: 0; left: 0; height: 3px; width: 0; background: var(--page-accent); transition: width 460ms cubic-bezier(0.2,0.7,0.2,1); z-index: 2;
}
html.sandbox-landing-page .lp-team-card:hover {
  transform: translateY(-6px); box-shadow: 0 30px 56px -28px rgba(10,26,44,0.32); border-color: var(--page-accent);
}
html.sandbox-landing-page .lp-team-card:hover::before {
  width: 100%;
}
html.sandbox-landing-page .lp-team-card img {
  width: 100%; aspect-ratio: 1/1; object-fit: cover; background: #2E2032; display: block;
}
html.sandbox-landing-page .lp-team-card .body {
  padding: 22px 22px 26px; display: flex; flex-direction: column; gap: 10px;
}
html.sandbox-landing-page .lp-team-card .role {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.18em; color: var(--page-accent-2); text-transform: uppercase;
}
html.sandbox-landing-page .lp-team-card .name {
  font-size: 19px; font-weight: 600; color: var(--steel-1); letter-spacing: -0.012em;
}
html.sandbox-landing-page .lp-team-card p {
  color: var(--steel-2); font-size: 14px; line-height: 1.6; margin: 0;
}
html.sandbox-landing-page .lp-team-card .link {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.18em; color: var(--page-accent-2); text-decoration: none; text-transform: uppercase; margin-top: 6px; transition: color 200ms ease; align-self: flex-start;
}
html.sandbox-landing-page .lp-team-card .link:hover {
  color: var(--page-warm);
}
html.sandbox-landing-page .lp-cert {
  padding: 72px 0; background: var(--paper); border-top: 1px solid var(--rule);
}
html.sandbox-landing-page .lp-cert .wrap {
  display: grid; grid-template-columns: 240px 1fr; gap: 56px; align-items: center;
}
@media (max-width: 820px) {
html.sandbox-landing-page .lp-cert .wrap {
  grid-template-columns: 1fr; text-align: center;
}
html.sandbox-landing-page .lp-cert .badge {
  margin: 0 auto;
}
}
html.sandbox-landing-page .lp-cert .badge {
  width: 240px; height: 240px; border: 2px solid var(--page-warm); background: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; box-shadow: 0 16px 40px -20px color-mix(in srgb, var(--page-warm) 40%, transparent);
}
html.sandbox-landing-page .lp-cert .badge::before {
  content: ""; position: absolute; inset: 8px; border: 1px solid color-mix(in srgb, var(--page-warm) 35%, transparent); pointer-events: none;
}
html.sandbox-landing-page .lp-cert .badge .aaa {
  font-size: 72px; font-weight: 700; color: var(--page-warm); letter-spacing: -0.03em; line-height: 1;
}
html.sandbox-landing-page .lp-cert .badge .lbl {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; margin-top: 12px; color: var(--warm) ; font-weight: 700 ;
}
html.sandbox-landing-page .lp-cert .badge .top1 {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.18em; color: var(--page-warm); margin-top: 6px;
}
html.sandbox-landing-page .lp-cert .lp-label {
  color: var(--page-warm); margin-bottom: 12px;
}
html.sandbox-landing-page .lp-cert h3 {
  font-size: 24px; color: var(--steel-1); margin: 0 0 12px; letter-spacing: -0.016em; font-weight: 600;
}
html.sandbox-landing-page .lp-cert p {
  color: var(--steel-2); font-size: 15px; line-height: 1.65; margin: 0; max-width: 64ch;
}
html.sandbox-landing-page .lp-bottom {
  padding: 28px 0; background: var(--paper-2); border-top: 1px solid var(--rule);
}
html.sandbox-landing-page .lp-bottom .wrap {
  display: flex; justify-content: space-between; align-items: center; gap: 24px; flex-wrap: wrap; font-family: var(--mono); font-size: 11px; letter-spacing: 0.14em; color: var(--steel-3);
}
html.sandbox-landing-page .lp-bottom .links {
  display: flex; gap: 24px; flex-wrap: wrap;
}
html.sandbox-landing-page .lp-bottom a {
  color: var(--steel-2); text-decoration: none; transition: color 200ms ease;
}
html.sandbox-landing-page .lp-bottom a:hover {
  color: var(--page-accent-2);
}

/* News card read-more link */
.news-item .news-readmore { display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; font-family: var(--mono); font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--signal-deep); transition: gap 200ms var(--ease), color 200ms var(--ease); }
.news-item .news-readmore::after { content: "→"; transition: transform 200ms var(--ease); }
.news-item .news-readmore:hover { color: var(--signal); }
.news-item .news-readmore:hover::after { transform: translateX(4px); }

/* Homepage team: learn-more link + anchor offset on About person cards */
.team-member .team-more { display: inline-flex; align-items: center; gap: 7px; margin-top: 16px; font-family: var(--mono); font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--signal-deep); transition: gap 200ms var(--ease), color 200ms var(--ease); }
.team-member .team-more::after { content: "→"; transition: transform 200ms var(--ease); }
.team-member .team-more:hover { color: var(--signal); }
.team-member .team-more:hover::after { transform: translateX(4px); }
.person-card[id] { scroll-margin-top: 110px; }

/* Contact page V1 stacked-plate cards */
html.sandbox-contact-page .contacts-grid,
html.sandbox-contact-page .offices-grid,
html.sandbox-contact-page .booking-grid {
  gap: clamp(22px, 2.4vw, 36px);
  border: 0;
  grid-auto-rows: 1fr;
}
html.sandbox-contact-page .vA-card {
  position: relative; display: flex; flex-direction: column; height: 100%;
  border: 0; padding: 0; min-height: 0;
  background: transparent; text-decoration: none;
}
html.sandbox-contact-page .vA-card::before,
html.sandbox-contact-page .vA-card::after {
  content: ""; position: absolute; inset: 0;
  top: 0; left: 0; width: auto; height: auto;
  background: var(--paper-2);
  border: 1px solid var(--rule);
  transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-contact-page .vA-card::before { z-index: 1; transform: translate(8px, 8px); }
html.sandbox-contact-page .vA-card::after  { z-index: 0; transform: translate(16px, 16px); opacity: 0.6; }
html.sandbox-contact-page .vA-face {
  position: relative; z-index: 2; height: 100%; flex: 1 1 auto;
  background: var(--paper);
  border: 1px solid var(--rule-strong);
  padding: 26px 24px 28px;
  display: flex; flex-direction: column; gap: 10px;
  box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
  transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-contact-page .vA-card:hover .vA-face { transform: translate(-3px,-3px); box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5); }
html.sandbox-contact-page .vA-card:hover::before { transform: translate(12px,12px); }
html.sandbox-contact-page .vA-card:hover::after  { transform: translate(24px,24px); opacity: 0.85; }
html.sandbox-contact-page .book-card.vA-card:hover { background: transparent; padding-left: 0; }

/* Contacts + Offices simpler flat card */
html.sandbox-contact-page .contacts .vA-card::before,
html.sandbox-contact-page .contacts .vA-card::after,
html.sandbox-contact-page .offices .vA-card::before,
html.sandbox-contact-page .offices .vA-card::after { display: none; }
html.sandbox-contact-page .contacts .vA-face,
html.sandbox-contact-page .offices .vA-face {
  box-shadow: none;
  transition: border-color 200ms var(--ease), box-shadow 200ms var(--ease);
}
html.sandbox-contact-page .contacts .vA-card:hover .vA-face,
html.sandbox-contact-page .offices .vA-card:hover .vA-face {
  transform: none;
  border-color: var(--signal-deep);
  box-shadow: 0 10px 26px -22px rgba(10,26,44,0.55);
}

/* Contact card profile photos */
html.sandbox-contact-page .contact-card .c-photo {
  width: 100%; aspect-ratio: 1 / 1; object-fit: contain; object-position: center bottom;
  background: linear-gradient(180deg, var(--paper-2) 0%, var(--paper) 60%);
  border-radius: 4px; display: block;
}

/* Office plain maps link */
html.sandbox-contact-page .office-card .o-maps {
  margin-top: 4px; font-size: 13px; color: var(--signal-deep);
  text-decoration: none; transition: color 200ms var(--ease);
}
html.sandbox-contact-page .office-card .o-maps:hover { color: var(--signal); }

/* Lead-capture modal (case studies) */
.slr-modal-backdrop { display:none; position:fixed; inset:0; z-index:200; background:rgba(14,21,32,0.55); align-items:center; justify-content:center; padding:24px; }
.slr-modal-backdrop.open { display:flex; }
.slr-modal { position:relative; width:100%; max-width:470px; max-height:90vh; overflow-y:auto; background:var(--paper); border:1px solid var(--rule-strong); border-radius:4px; padding:38px 34px 30px; box-shadow:0 50px 90px -34px rgba(10,26,44,0.55); }
.slr-modal-close { position:absolute; top:12px; right:12px; background:transparent; border:0; font-size:24px; line-height:1; color:var(--steel-2); cursor:pointer; padding:6px 10px; transition:color 200ms var(--ease); }
.slr-modal-close:hover { color:var(--ink); }
.slr-modal-mark { display:block; height:56px; width:auto; margin:0 auto 16px; }
.slr-modal h3 { font-size:24px; font-weight:600; letter-spacing:-0.02em; color:var(--ink); margin:0 0 8px; text-align:center; }
.slr-modal .sub { font-size:14.5px; color:var(--steel-2); line-height:1.5; margin:0 0 24px; text-align:center; }
.slr-modal form { display:flex; flex-direction:column; gap:15px; }
.slr-modal label { display:block; font-family:var(--mono); font-size:10.5px; font-weight:700; color:var(--ink); text-transform:uppercase; letter-spacing:0.14em; margin-bottom:6px; }
.slr-modal input[type="text"], .slr-modal input[type="email"] { width:100%; padding:12px 14px; font-size:15px; color:var(--ink); background:var(--paper-2); border:1px solid var(--rule-strong); border-radius:2px; transition:border-color 200ms var(--ease), box-shadow 200ms var(--ease); }
.slr-modal input[type="text"]:focus, .slr-modal input[type="email"]:focus { outline:0; background:var(--paper); border-color:var(--signal-deep); box-shadow:0 0 0 3px rgba(13,151,215,0.12); }
.slr-modal label.slr-consent { display:flex; gap:10px; align-items:flex-start; font-family:var(--body, inherit); font-size:12.5px; font-weight:400; letter-spacing:normal; text-transform:none; color:var(--steel-2); line-height:1.5; margin:2px 0 0; }
.slr-modal label.slr-consent input { margin-top:2px; flex:0 0 auto; width:16px; height:16px; accent-color:var(--signal-deep); }
.slr-modal label.slr-consent a { color:var(--signal-deep); text-decoration:underline; }
.slr-modal .btn-modal-submit { width:100%; margin-top:8px; padding:14px; font-size:15px; letter-spacing:0.02em; color:var(--paper); background:var(--ink); border:0; border-radius:2px; cursor:pointer; transition:background 200ms var(--ease); }
.slr-modal .btn-modal-submit:hover { background:var(--signal-deep); }
.slr-modal .btn-modal-submit:disabled { opacity:0.6; cursor:default; }
.slr-modal .form-err { color:#b91c1c; font-size:13px; padding:9px 12px; background:#fef2f2; border-radius:2px; display:none; }
.slr-modal .form-err.show { display:block; }

/* Sandbox thank-you page */
.thanks-page { display:flex; align-items:center; min-height:68vh; }
.thanks-inner { max-width:640px; margin:0 auto; text-align:center; }
.thanks-check { width:62px; height:62px; margin:0 auto 24px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:28px; color:var(--paper); background:var(--signal-deep); }
.thanks-inner h1 { font-size:clamp(32px,4vw,46px); font-weight:600; letter-spacing:-0.02em; color:var(--ink); margin:0 0 14px; }
.thanks-inner .lede { font-size:17px; color:var(--steel-2); line-height:1.6; margin:0 0 28px; }
.thanks-dl { display:inline-flex; align-items:center; gap:8px; padding:15px 30px; background:var(--ink); color:var(--paper); border:0; font-size:15px; letter-spacing:0.02em; text-decoration:none; transition:background 200ms var(--ease); }
.thanks-dl:hover { background:var(--signal-deep); }
.thanks-cta { margin:40px auto 0; max-width:460px; padding:24px; border:1px solid var(--rule-strong); background:var(--paper-2); }
.thanks-cta p { font-size:14px; color:var(--steel-2); line-height:1.55; margin:0 0 14px; }
.thanks-book { font-family:var(--mono); font-size:12px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--signal-deep); text-decoration:none; transition:color 200ms var(--ease); }
.thanks-book:hover { color:var(--signal); }
.thanks-back { display:inline-block; margin-top:32px; font-size:14px; color:var(--steel-3); text-decoration:none; transition:color 200ms var(--ease); }
.thanks-back:hover { color:var(--ink); }

/* Appointment booking page */
.appt-page { padding: clamp(36px,5vw,72px) 0; }
.appt-inner { max-width: 1120px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.appt-back { display:inline-block; margin-bottom:26px; font-size:13px; color:var(--steel-3); text-decoration:none; transition:color 200ms var(--ease); }
.appt-back:hover { color:var(--ink); }
.appt-inner h1 { font-size:clamp(30px,3.6vw,44px); font-weight:600; letter-spacing:-0.02em; color:var(--ink); margin:10px 0 8px; }
.appt-sub { font-family:var(--mono); font-size:12px; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--signal-deep); margin-bottom:16px; }
.appt-lede { font-size:16px; line-height:1.65; color:var(--steel-2); max-width:62ch; margin:0 0 32px; }
.appt-embed { background:transparent; border:0; padding:0; box-shadow:none; max-width:1000px; margin:0 auto; }
.appt-embed .calendly-inline-widget { min-width:320px; min-height:600px; height:700px; }
.appt-alt { margin-top:24px; padding:18px 22px; background:var(--paper-2); border:1px solid var(--rule); display:flex; flex-wrap:wrap; gap:10px 24px; align-items:center; font-size:14px; color:var(--steel-2); }
.appt-alt a { color:var(--signal-deep); text-decoration:none; font-weight:500; }
.appt-alt a:hover { color:var(--signal); }

/* Appointment hero (contour) */
.appt-hero { padding-bottom: clamp(24px,3vw,36px); }
.appt-page { padding: 0; margin: 0; }

/* Appointment page: mirror About hero */
body.sandbox-appointment-page .hero.hero-inner-page h1,
body.sandbox-appointment-page h1,
body.sandbox-appointment-page h2,
body.sandbox-appointment-page h3,
body.sandbox-appointment-page h4,
body.sandbox-appointment-page h5 { color: var(--ivory) !important; }
body.sandbox-appointment-page p,
body.sandbox-appointment-page .lede,
body.sandbox-appointment-page .hero.hero-inner-page .lede,
body.sandbox-appointment-page .hero.hero-inner-page .hero-lede,
body.sandbox-appointment-page .story p,
body.sandbox-appointment-page .head-body p { color: var(--ivory) !important; }
body .slr-about-hero h1 .accent, html.sandbox-appointment-page .slr-about-hero h1 .accent {
  color: var(--page-accent) ;
}
body .slr-about-hero .hero-kicker .dot, html.sandbox-appointment-page .slr-about-hero .hero-kicker .dot {
  background: var(--page-accent) ;
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--page-accent) 22%, transparent) ;
}
html.sandbox-appointment-page .slr-about-hero.hero.hero-inner-page {
  padding-top: clamp(110px, 14vh, 160px);
 padding-bottom: clamp(64px, 8vw, 120px);
 min-height: 0;
 display: flex;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
}
html.sandbox-appointment-page .hero-dateline {
  display: flex;
 align-items: center;
 gap: 16px;
 flex-wrap: wrap;
 margin-top: 30px;
 font-family: var(--mono);
 font-size: 12px;
 letter-spacing: 0.14em;
 text-transform: uppercase;
 color: var(--steel-2);
}
html.sandbox-appointment-page .hero-dateline .sep {
  width: 5px; height: 5px; border-radius: 50%; background: var(--warm);
}
html.sandbox-appointment-page .hero-dateline b {
  color: var(--ink); font-weight: 600;
}
body .slr-about-hero.hero.hero-inner-page, html.sandbox-appointment-page .slr-about-hero.hero.hero-inner-page {
  background: var(--paper) ;
 color: var(--ink) ;
}
html.sandbox-appointment-page .slr-about-hero.hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 1;
 pointer-events: none;
 background:
 radial-gradient(1000px 560px at 92% -22%, color-mix(in srgb, var(--signal) 8%, transparent), transparent 58%);
 opacity: 1;
 animation: none;
}
html.sandbox-appointment-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
html.sandbox-appointment-page .slr-about-hero .hero-grid {
  opacity: 1;
 background-image: radial-gradient(circle, color-mix(in srgb, var(--steel-3) 26%, transparent) 1px, transparent 1.6px);
 background-size: 26px 26px;
 background-position: center top;
 -webkit-mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 mask-image: radial-gradient(ellipse 90% 80% at 90% 0%, black 0%, transparent 62%);
 display: block ;
}
html.sandbox-appointment-page .slr-about-hero .hero-kicker {
  color: var(--steel-1) ;
 border-color: var(--rule-strong) ;
 background: color-mix(in srgb, var(--paper) 72%, transparent) ;
}
html.sandbox-appointment-page .slr-about-hero .hero-dateline {
  color: var(--steel-2);
 padding-top: 22px;
 border-top: 1px solid var(--rule);
 max-width: 540px;
}
html.sandbox-appointment-page .slr-about-hero .hero-dateline b {
  color: var(--ink);
}
html.sandbox-appointment-page .hero.hero-inner-page::before {
  content: "";
 position: absolute;
 inset: 0;
 z-index: 0;
 pointer-events: none;
 background-image:
 radial-gradient(circle at 1px 1px, rgba(31, 182, 224, 0.10) 1px, transparent 0);
 background-size: 22px 22px;
}
html.sandbox-appointment-page .hero.hero-inner-page::after {
  content: "";
 position: absolute;
 top: 0; left: 0; right: 0;
 height: 2px;
 background: linear-gradient(90deg, transparent 0%, var(--signal) 18%, var(--signal) 82%, transparent 100%);
 opacity: 0.55;
 pointer-events: none;
 z-index: 2;
}
html.sandbox-appointment-page .hero.hero-inner-page .hero-inner {
  padding-top: 24px;
 padding-bottom: 0;
 position: relative;
 z-index: 3;
}
html.sandbox-appointment-page .hero.hero-inner-page .hero-kicker {
  display: inline-flex;
 align-items: center;
 gap: 10px;
 font-family: var(--mono);
 font-size: 11px;
 letter-spacing: 0.22em;
 text-transform: uppercase;
 color: var(--steel-1);
 padding: 7px 12px 7px 10px;
 border: 1px solid var(--rule-strong);
 background: rgba(255, 255, 255, 0.65);
 backdrop-filter: blur(4px);
 -webkit-backdrop-filter: blur(4px);
 font-weight: 500;
}
html.sandbox-appointment-page .hero.hero-inner-page .hero-kicker .dot {
  width: 8px; height: 8px;
 border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 display: inline-block;
}

/* Appointment hero shorter */
html.sandbox-appointment-page .slr-about-hero.hero.hero-inner-page { padding-top: clamp(72px, 6vw, 84px); padding-bottom: clamp(10px, 1.4vw, 18px); min-height: 0; }
html.sandbox-appointment-page .slr-about-hero .hero-lede { color: var(--ink); }
html.sandbox-appointment-page .slr-about-hero .hero-dateline { color: var(--steel-1); }

/* Appointment back-link spacing */
html.sandbox-appointment-page .appt-back { margin-bottom: 12px; }
html.sandbox-appointment-page .appt-page { padding-top: 0; }

/* Booking plate full height on hover */
html.sandbox-contact-page .book-card.vA-card::before,
html.sandbox-contact-page .book-card.vA-card:hover::before,
html.sandbox-contact-page .book-card.vA-card::after,
html.sandbox-contact-page .book-card.vA-card:hover::after {
  top: 0; right: 0; bottom: 0; left: 0; width: auto; height: auto;
}

/* Job hero -> light (About style) */
html.sandbox-job-page .about-contour {
  position: absolute;
 inset: 0;
 width: 100%;
 height: 100%;
 z-index: 0;
 pointer-events: none;
 -webkit-mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 -webkit-mask-composite: source-in;
 mask-image:
 linear-gradient(90deg, transparent 0%, transparent 30%, rgba(0,0,0,0.5) 52%, black 78%),
 linear-gradient(180deg, black 60%, transparent 100%);
 mask-composite: intersect;
}
html.sandbox-job-page .about-contour {
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
 mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.4) 40%, black 78%, transparent 100%);
}

html.sandbox-job-page .hero.hero-inner-page { background: transparent; }
html.sandbox-job-page .hero.hero-inner-page::before { display: none; }
html.sandbox-job-page .hero.hero-inner-page .hero-kicker { color: var(--warm); }
html.sandbox-job-page .hero.hero-inner-page h1 { color: var(--ink); }
html.sandbox-job-page .job-back { color: var(--steel-2); }
html.sandbox-job-page .job-back:hover { color: var(--signal-deep); }
html.sandbox-job-page .job-meta-strip .meta-cell .l { color: var(--steel-3); }
html.sandbox-job-page .job-meta-strip .meta-cell .v { color: var(--ink); }

/* Job detail body (About-clone) */
html.sandbox-about-page .jd-back { display:inline-flex; align-items:center; gap:8px; font-family:var(--mono); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--steel-2); text-decoration:none; margin-bottom:18px; transition:color 200ms var(--ease); }
html.sandbox-about-page .jd-back:hover { color:var(--signal-deep); }
html.sandbox-about-page .jd-section { background:var(--paper); padding: clamp(40px,6vw,88px) 0; border-top:1px solid var(--rule); }
html.sandbox-about-page .jd-grid { display:grid; grid-template-columns: 1fr 320px; gap: clamp(32px,5vw,72px); align-items:start; }
html.sandbox-about-page .jd-body { color:var(--steel-1); font-size:15.5px; line-height:1.7; }
html.sandbox-about-page .jd-body h2 { color:var(--ink); font-size:22px; letter-spacing:-0.012em; margin:1.6em 0 0.6em; }
html.sandbox-about-page .jd-body h3 { color:var(--ink); font-size:18px; margin:1.3em 0 0.5em; }
html.sandbox-about-page .jd-body p { margin-bottom:1em; color:var(--steel-2); }
html.sandbox-about-page .jd-body ul, html.sandbox-about-page .jd-body ol { list-style:none; padding:0; margin:0 0 1em; }
html.sandbox-about-page .jd-body li { position:relative; padding-left:22px; margin-bottom:0.6em; color:var(--steel-2); }
html.sandbox-about-page .jd-body li::before { content:""; position:absolute; left:0; top:0.7em; width:10px; height:1px; background:var(--warm); }
html.sandbox-about-page .jd-body strong { color:var(--ink); }
html.sandbox-about-page .jd-aside { position:sticky; top:96px; border:1px solid var(--rule-strong); background:#fff; padding:22px; display:flex; flex-direction:column; gap:13px; }
html.sandbox-about-page .jd-aside .kicker { font-family:var(--mono); font-size:10.5px; letter-spacing:0.18em; text-transform:uppercase; color:var(--steel-3); }
html.sandbox-about-page .jd-aside .l { font-family:var(--mono); font-size:10px; letter-spacing:0.16em; text-transform:uppercase; color:var(--steel-3); display:block; margin-bottom:3px; }
html.sandbox-about-page .jd-aside .v { font-size:14px; color:var(--ink); }
html.sandbox-about-page .jd-apply { margin-top:6px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:14px 18px; background:var(--ink); color:var(--paper); text-decoration:none; font-family:var(--mono); font-size:12px; letter-spacing:0.14em; text-transform:uppercase; transition:background 200ms var(--ease); }
html.sandbox-about-page .jd-apply:hover { background:var(--signal-deep); }
html.sandbox-about-page .jd-email { text-align:center; font-family:var(--mono); font-size:11px; color:var(--steel-3); }
html.sandbox-about-page .jd-email a { color:var(--steel-1); border-bottom:1px solid var(--rule-strong); }
@media (max-width: 860px){ html.sandbox-about-page .jd-grid { grid-template-columns:1fr; } html.sandbox-about-page .jd-aside { position:static; } }

/* Careers benefits mirrored to job (About-clone) */
html.sandbox-about-page section.careers .vA-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr) ;
 grid-auto-rows: 1fr ;
 gap: clamp(24px, 2.6vw, 40px) ;
 margin-top: clamp(24px, 3vw, 44px);
}
html.sandbox-about-page section.careers .vA-card {
  position: relative; height: 100%;
}
html.sandbox-about-page section.careers .vA-card::before, html.sandbox-about-page section.careers .vA-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-about-page section.careers .vA-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-about-page section.careers .vA-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-about-page section.careers .vA-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-about-page section.careers .vA-card:hover .vA-face {
  transform: translate(-3px, -3px);
 box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-about-page section.careers .vA-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-about-page section.careers .vA-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-about-page section.careers .vA-icon {
  width: 40px; height: 40px; color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-about-page section.careers .vA-icon use {
  stroke: currentColor; stroke-width: 1.4; fill: none;
}
html.sandbox-about-page section.careers .vA-card:hover .vA-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-about-page section.careers .vA-face h3 {
  font-size: 21px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); max-width: 18ch; margin-top: 4px;
}
html.sandbox-about-page section.careers .vA-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}

/* Job description snippet cards (About-clone) */
html.sandbox-about-page .jd-body .s_text_block { padding: 0 !important; }
html.sandbox-about-page .jd-body .s_text_block p { font-size: 17px; line-height: 1.65; color: var(--steel-1); margin: 0 0 1.2em; }
html.sandbox-about-page .jd-body section:not(.jd-row) { padding: 0; margin: 0 0 clamp(20px,2.4vw,32px); }
html.sandbox-about-page .jd-body .container-fluid, html.sandbox-about-page .jd-body .container { max-width: none; padding: 0; }
html.sandbox-about-page .jd-body .row { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: clamp(16px, 1.8vw, 26px); margin: 0; }
html.sandbox-about-page .jd-body [class*="col-"] { width: auto; max-width: none; flex: none; padding: 0; }
html.sandbox-about-page .jd-body .s_card, html.sandbox-about-page .jd-body .card { height: 100%; display: flex; flex-direction: column; background: var(--paper); border: 1px solid var(--rule-strong); border-radius: 4px; box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5) !important; }
html.sandbox-about-page .jd-body .card-body { padding: 22px 22px 24px; }
html.sandbox-about-page .jd-body .s_card h2, html.sandbox-about-page .jd-body .card h2 { font-size: 16px; font-weight: 600; letter-spacing: 0.01em; color: var(--ink); margin: 0 0 12px; }
html.sandbox-about-page .jd-body .card-body ul { list-style: none; padding: 0; margin: 0; }
html.sandbox-about-page .jd-body .card-body li { position: relative; padding-left: 20px; margin-bottom: 0.55em; font-size: 14px; line-height: 1.55; color: var(--steel-2); }
html.sandbox-about-page .jd-body .card-body li::before { content: ""; position: absolute; left: 0; top: 0.65em; width: 9px; height: 1px; background: var(--warm); }
html.sandbox-about-page .jd-body .slr-benefit-icon { width: 34px; height: 34px; color: var(--signal-deep); margin-bottom: 10px; }
html.sandbox-about-page .jd-body .slr-benefit-icon svg { width: 100%; height: 100%; stroke: var(--signal-deep) !important; }

/* Job clean description cards */
html.sandbox-about-page .jd-body .jd-lede { font-size:17px; line-height:1.65; color:var(--steel-1); margin:0 0 28px; }
html.sandbox-about-page .jd-body .jd-cards { display:grid; grid-template-columns: repeat(auto-fit, minmax(260px,1fr)); gap: clamp(16px,2vw,26px); }
html.sandbox-about-page .jd-body .jd-card { background:var(--paper); border:1px solid var(--rule-strong); border-radius:4px; padding:24px; box-shadow:0 16px 34px -30px rgba(10,26,44,0.5); }
html.sandbox-about-page .jd-body .jd-card h2 { font-size:16px; font-weight:600; letter-spacing:0.01em; color:var(--ink); margin:0 0 14px; }
html.sandbox-about-page .jd-body .jd-card ul { list-style:none; padding:0; margin:0; }
html.sandbox-about-page .jd-body .jd-card li { position:relative; padding-left:20px; margin-bottom:0.6em; font-size:14px; line-height:1.55; color:var(--steel-2); }
html.sandbox-about-page .jd-body .jd-card li::before { content:""; position:absolute; left:0; top:0.66em; width:9px; height:1px; background:var(--warm); }

/* Job layout v2: 2x2 cards, apply band, meta */
html.sandbox-about-page .jd-section { background:var(--paper); padding: clamp(40px,6vw,80px) 0 clamp(28px,4vw,48px); border-top:1px solid var(--rule); }
html.sandbox-about-page .jd-section .wrap { display:block; }
html.sandbox-about-page .jd-body { color:var(--steel-1); font-size:15.5px; line-height:1.7; max-width:none; }
html.sandbox-about-page .jd-body .jd-cards { grid-template-columns: repeat(2, 1fr); }
@media (max-width: 760px){ html.sandbox-about-page .jd-body .jd-cards { grid-template-columns: 1fr; } }
html.sandbox-about-page .jd-meta { display:grid; grid-template-columns: repeat(2,1fr); gap: clamp(16px,2vw,26px); margin-top: clamp(20px,2.4vw,32px); }
@media (max-width: 760px){ html.sandbox-about-page .jd-meta { grid-template-columns:1fr; } }
html.sandbox-about-page .jd-metacard { border:1px solid var(--rule); border-radius:4px; padding:18px 20px; background:var(--paper-2); }
html.sandbox-about-page .jd-metacard .l { display:block; font-family:var(--mono); font-size:10px; letter-spacing:0.16em; text-transform:uppercase; color:var(--steel-3); margin-bottom:8px; }
html.sandbox-about-page .jd-metacard ul { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:6px; }
html.sandbox-about-page .jd-metacard li { font-size:12.5px; color:var(--steel-1); border:1px solid var(--rule-strong); border-radius:3px; padding:4px 9px; }
html.sandbox-about-page .jd-apply-band { background:var(--paper); padding: 0 0 clamp(36px,5vw,64px); }
html.sandbox-about-page .jd-applybox { border:1px solid var(--rule-strong); border-radius:4px; background:var(--paper-2); padding: clamp(24px,3vw,36px); display:flex; flex-direction:column; gap:18px; box-shadow:0 16px 34px -30px rgba(10,26,44,0.5); }
html.sandbox-about-page .jd-applybox .kicker { font-family:var(--mono); font-size:11px; letter-spacing:0.18em; text-transform:uppercase; color:var(--steel-3); }
html.sandbox-about-page .jd-applyrow { display:flex; flex-wrap:wrap; gap: clamp(24px,4vw,64px); }
html.sandbox-about-page .jd-applyrow .l { display:block; font-family:var(--mono); font-size:10px; letter-spacing:0.16em; text-transform:uppercase; color:var(--steel-3); margin-bottom:4px; }
html.sandbox-about-page .jd-applyrow .v { font-size:15px; color:var(--ink); }
html.sandbox-about-page .jd-apply-band .jd-apply { align-self:flex-start; }

/* Job cards white + meta chip fix */
html.sandbox-about-page .jd-metacard { background: var(--paper); }
html.sandbox-about-page .jd-applybox { background: var(--paper); }
html.sandbox-about-page .jd-body .jd-metacard li::before { content: none; display: none; }
html.sandbox-about-page .jd-body .jd-card { transition: transform 200ms var(--ease), box-shadow 200ms var(--ease); }
html.sandbox-about-page .jd-body .jd-card:hover { transform: translateY(-3px); box-shadow: 0 30px 50px -30px rgba(10,26,44,0.55); }

/* Job editorial ledger */
html.sandbox-about-page .jd-body .jd-lede { font-size:18px; line-height:1.6; color:var(--steel-1); max-width:70ch; margin:0 0 8px; }
html.sandbox-about-page .jd-ledger { counter-reset: jdrow; border-bottom:1px solid var(--rule); margin-top: clamp(20px,3vw,36px); }
html.sandbox-about-page .jd-row { counter-increment: jdrow; position:relative; padding: 22px 0 clamp(20px,2.4vw,30px); border-top:1px solid var(--rule); }
html.sandbox-about-page .jd-row::before { content: counter(jdrow, decimal-leading-zero); display:block; font-family:var(--mono); font-weight:700; font-size: clamp(24px,2.4vw,34px); line-height:1; color: var(--signal-deep); margin-bottom: 16px; transition: color 200ms var(--ease); }
html.sandbox-about-page .jd-row::after { display:none; }
html.sandbox-about-page .jd-row:hover { }
html.sandbox-about-page .jd-row:hover::before { color: var(--warm); }

html.sandbox-about-page .jd-row h2 { font-size:20px; font-weight:600; letter-spacing:-0.01em; color:var(--ink); margin:0 0 16px; }
html.sandbox-about-page .jd-row ul { columns: 2; column-gap: clamp(24px,3vw,48px); list-style:none; padding:0; margin:0; }
@media (max-width: 720px){ html.sandbox-about-page .jd-row ul { columns:1; }  }
html.sandbox-about-page .jd-row li { break-inside:avoid; position:relative; padding-left:20px; margin-bottom:0.7em; font-size:14.5px; line-height:1.55; color:var(--steel-2); }
html.sandbox-about-page .jd-row li::before { content:""; position:absolute; left:0; top:0.5em; width:7px; height:7px; background:var(--signal-deep); }
html.sandbox-about-page .jd-spec { display:flex; flex-wrap:wrap; gap: clamp(28px,5vw,72px); padding: clamp(22px,2.6vw,32px) 0; border-bottom:1px solid var(--rule); }
html.sandbox-about-page .jd-spec .l { display:block; font-family:var(--mono); font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--warm); margin-bottom:6px; }
html.sandbox-about-page .jd-spec .v { font-size:16px; color:var(--ink); }
html.sandbox-about-page .jd-skills { margin-top: clamp(22px,2.6vw,32px); }
html.sandbox-about-page .jd-skills .l { display:block; font-family:var(--mono); font-size:12px; letter-spacing:0.18em; text-transform:uppercase; color:var(--warm); margin-bottom:12px; }
html.sandbox-about-page .jd-tags { display:flex; flex-wrap:wrap; gap:8px; }
html.sandbox-about-page .jd-tags span { font-family:var(--mono); font-size:14px; letter-spacing:0.02em; color:var(--signal-deep); border:1px solid var(--signal-deep); border-radius:3px; padding:6px 12px; transition: background 180ms var(--ease), color 180ms var(--ease); }
html.sandbox-about-page .jd-tags span:hover { background:var(--signal-deep); color:var(--paper); }

/* jd-back own line */
html.sandbox-about-page .jd-back { display:flex; width:fit-content; margin-top:0; margin-bottom:24px; }

/* Job hero compact + full lede */
html.sandbox-about-page .jobhero.hero.hero-inner-page { padding-top: clamp(80px, 6vw, 86px); padding-bottom: clamp(18px, 2.2vw, 28px); }
html.sandbox-about-page .jd-body .jd-lede { max-width: none; }

/* Apply band prominent */
html.sandbox-about-page .jd-applybox { background: var(--ink); border: 0; box-shadow: 0 30px 60px -34px rgba(10,26,44,0.6); padding: clamp(28px,3.4vw,40px); }
html.sandbox-about-page .jd-applybox .kicker { color: var(--signal); font-size: 12px; }
html.sandbox-about-page .jd-applyrow .l { color: rgba(255,255,255,0.55); font-size: 11px; }
html.sandbox-about-page .jd-applyrow .v { color: var(--ivory); font-size: 18px; }
html.sandbox-about-page .jd-apply-band .jd-apply { background: var(--warm); color: #fff; padding: 17px 36px; font-size: 14px; letter-spacing: 0.14em; border-radius: 3px; }
html.sandbox-about-page .jd-apply-band .jd-apply:hover { background: var(--warm-2, #B3582F); color: #fff; }

/* ledger first row top spacing */
html.sandbox-about-page .jd-ledger .jd-row:first-child { padding-top: 22px; }

/* Job benefits responsive */
@media (max-width: 980px){ html.sandbox-about-page section.careers .vA-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 620px){ html.sandbox-about-page section.careers .vA-grid { grid-template-columns: 1fr; } }

/* Apply form */
html.sandbox-about-page .apply-section { background:var(--paper); padding: clamp(32px,5vw,64px) 0 clamp(48px,7vw,96px); border-top:1px solid var(--rule); }
html.sandbox-about-page .slr-apply-form { max-width: none; }
html.sandbox-about-page .af-grid { display:grid; grid-template-columns: repeat(2,1fr); gap: clamp(16px,2vw,24px); }
@media (max-width:680px){ html.sandbox-about-page .af-grid { grid-template-columns:1fr; } }
html.sandbox-about-page .af-field { display:flex; flex-direction:column; gap:7px; margin-bottom:18px; }
html.sandbox-about-page .af-field.af-full { display:block; }
html.sandbox-about-page .af-field > span { font-family:var(--mono); font-size:11px; letter-spacing:0.14em; text-transform:uppercase; color:var(--steel-2); }
html.sandbox-about-page .af-field input, html.sandbox-about-page .af-field select, html.sandbox-about-page .af-field textarea { width:100%; padding:12px 14px; font-size:15px; color:var(--ink); background:var(--paper-2); border:1px solid var(--rule-strong); border-radius:2px; transition:border-color 200ms var(--ease), box-shadow 200ms var(--ease); }
html.sandbox-about-page .af-field input:focus, html.sandbox-about-page .af-field select:focus, html.sandbox-about-page .af-field textarea:focus { outline:0; background:var(--paper); border-color:var(--signal-deep); box-shadow:0 0 0 3px rgba(13,151,215,0.12); }
html.sandbox-about-page .af-field input[type="file"] { padding:10px 14px; background:var(--paper); }
html.sandbox-about-page .af-consent { display:flex; gap:10px; align-items:flex-start; font-size:13.5px; color:var(--steel-2); line-height:1.5; margin-top:12px; }
html.sandbox-about-page .af-consent input { margin-top:3px; width:16px; height:16px; flex:0 0 auto; accent-color:var(--signal-deep); }
html.sandbox-about-page .af-consent a { color:var(--signal-deep); text-decoration:underline; }
html.sandbox-about-page .af-submit { margin-top:24px; padding:16px 34px; background:var(--warm); color:#fff; border:0; border-radius:3px; font-family:var(--mono); font-size:13px; letter-spacing:0.12em; text-transform:uppercase; cursor:pointer; transition:background 200ms var(--ease); }
html.sandbox-about-page .af-submit:hover { background:var(--warm-2,#B3582F); }
html.sandbox-about-page .slr-apply-form .form-err { color:#b91c1c; font-size:13.5px; margin-top:14px; display:none; }
html.sandbox-about-page .slr-apply-form .form-err.show { display:block; }

html.sandbox-about-page .af-help { font-size:12px; color:var(--steel-3); line-height:1.45; margin-top:2px; }

/* Sandbox-about nav dark text at top (light hero) */
html.sandbox-about-page .nav.on-ink:not(.scrolled) { color: var(--steel-1); }
html.sandbox-about-page .nav.on-ink:not(.scrolled) .nav-right > .nav-auth { border-color: var(--rule-strong); }

/* Sandbox-about nav dark logo at top */
html.sandbox-about-page .nav.on-ink:not(.scrolled) .brand-logo-light { display: none; }
html.sandbox-about-page .nav.on-ink:not(.scrolled) .brand-logo-dark { display: block; }

/* Apply form polish v2 */
html.sandbox-about-page .af-grid { align-items: start; row-gap: clamp(18px,2vw,24px); }
html.sandbox-about-page .af-field { margin-bottom: 0; gap: 8px; }
html.sandbox-about-page .af-field > span { font-family: var(--body, inherit); font-size: 14px; font-weight: 600; letter-spacing: normal; text-transform: none; color: var(--ink); }
html.sandbox-about-page .af-consent span { font-size: 14px; }
html.sandbox-about-page .af-field input[type="file"] { padding: 0; border: 1px solid var(--rule-strong); background: var(--paper); display: flex; align-items: center; font-size: 13px; color: var(--steel-2); }
html.sandbox-about-page .af-field input[type="file"]::file-selector-button { font-family: var(--mono); font-size: 12px; letter-spacing: 0.06em; padding: 11px 16px; margin-right: 14px; background: var(--ink); color: var(--paper); border: 0; cursor: pointer; transition: background 200ms var(--ease); }
html.sandbox-about-page .af-field input[type="file"]::file-selector-button:hover { background: var(--signal-deep); }
html.sandbox-about-page .af-field input[type="file"]::-webkit-file-upload-button { font-family: var(--mono); font-size: 12px; padding: 11px 16px; margin-right: 14px; background: var(--ink); color: var(--paper); border: 0; cursor: pointer; }

/* Apply form block-label fix (handles Odoo 2-span labels) */
html.sandbox-about-page .af-field { display: block; }
html.sandbox-about-page .af-field > span, html.sandbox-about-page .af-field .s_website_form_label_content, html.sandbox-about-page .af-field .s_website_form_mark { display: inline; font-family: var(--body, inherit); font-size: 14px; font-weight: 600; letter-spacing: normal; text-transform: none; color: var(--ink); }
html.sandbox-about-page .af-field input, html.sandbox-about-page .af-field select, html.sandbox-about-page .af-field textarea { display: block; width: 100%; margin-top: 8px; }
html.sandbox-about-page .af-field .af-help { display: block; margin-top: 6px; }
html.sandbox-about-page .af-consent { display: flex; }


/* === Blog post (bp-*) === */
.bp-hero .wrap{max-width:820px;}
.bp-back{display:inline-flex;align-items:center;gap:.4em;font:600 13px/1 var(--mono,monospace);letter-spacing:.04em;text-transform:uppercase;color:var(--signal-deep,#0D97D7);text-decoration:none;margin-bottom:22px;}
.bp-back .arr{font-size:1.1em;}
.bp-back:hover{color:var(--signal,#1FB6E0);}
.bp-title{margin:.2em 0 .35em;line-height:1.1;}
.bp-sub{font-size:1.25rem;color:var(--steel-3,#5b6b7a);line-height:1.45;max-width:48ch;}
.bp-sub:empty{display:none;}
.bp-meta{margin-top:18px;font:600 12px/1 var(--mono,monospace);letter-spacing:.18em;text-transform:uppercase;color:var(--steel-3,#7a8794);}
.bp-body{padding:48px 0 96px;}
.bp-content{max-width:760px;margin:0 auto;font-size:1.0625rem;line-height:1.75;color:var(--steel-1,#33485c);}
.bp-content > *:first-child{margin-top:0;}
.bp-content p{margin:0 0 1.25em;}
.bp-content h1,.bp-content h2{font-size:1.6rem;line-height:1.25;margin:2em 0 .6em;color:var(--ink,#0f1116);}
.bp-content h3{font-size:1.25rem;line-height:1.3;margin:1.6em 0 .5em;color:var(--ink,#0f1116);}
.bp-content h4{font-size:1.05rem;margin:1.4em 0 .5em;color:var(--ink,#0f1116);}
.bp-content ul,.bp-content ol{margin:0 0 1.25em;padding-left:1.4em;}
.bp-content li{margin:.4em 0;}
.bp-content a{color:var(--signal-deep,#0D97D7);text-decoration:underline;text-underline-offset:2px;}
.bp-content img{max-width:100%;height:auto;display:block;margin:2em auto;border-radius:14px;box-shadow:0 16px 34px -30px rgba(10,26,44,0.5);}
.bp-content blockquote{margin:1.6em 0;padding:.3em 0 .3em 1.2em;border-left:3px solid var(--signal,#1FB6E0);color:var(--steel-2,#44586b);font-style:italic;}
.bp-content figure{margin:2em 0;}
.bp-content figure img{margin:0 auto .6em;}
.bp-content table{width:100%;border-collapse:collapse;margin:1.5em 0;font-size:.95em;}
.bp-content td,.bp-content th{border:1px solid var(--rule,#e2e7ec);padding:.5em .7em;text-align:left;vertical-align:top;}
@media(max-width:720px){.bp-content{font-size:1rem;}.bp-body{padding:32px 0 64px;}.bp-sub{font-size:1.1rem;}}

/* === Blog post title sizing (override slr-about-hero h1) === */
html.sandbox-blog-page .bp-hero .bp-title{font-size:clamp(30px,4.4vw,52px);line-height:1.1;letter-spacing:-0.02em;max-width:26ch;}
html.sandbox-blog-page .bp-hero .bp-sub{font-size:clamp(17px,1.6vw,21px);color:var(--steel-2,#44586b);max-width:54ch;margin-top:.2em;}

/* === Booking cards with selectable duration === */
.book-foot-choose{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.book-pick{font:600 11px/1 var(--mono,monospace);letter-spacing:.16em;text-transform:uppercase;color:var(--steel-3,#5b6b7a);}
a.book-dur-link{cursor:pointer;text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease;}
a.book-dur-link:hover{background:var(--signal,#1FB6E0);color:var(--paper,#fff);border-color:var(--signal,#1FB6E0);}

/* === Legal pages (privacy / impressum) sandbox typography === */
.legal-hero .bp-title{font-size:clamp(34px,5vw,60px);}
.legal-body{max-width:860px;margin:0 auto;font-size:1.0625rem;color:var(--steel-1,#33485c);}
.legal-body .container{max-width:none;padding:0;margin:0;}
.legal-body h2{font-size:clamp(22px,2.6vw,30px);line-height:1.2;letter-spacing:-0.02em;color:var(--ink,#0A1A2C);margin:2.4em 0 .6em;}
.legal-body h2:first-child{margin-top:0;}
.legal-body h3{font-size:1.15rem;line-height:1.3;color:var(--ink,#0A1A2C);margin:1.7em 0 .4em;}
.legal-body p{margin:0 0 1.1em;line-height:1.75;}
.legal-body ul,.legal-body ol{margin:0 0 1.2em;padding-left:1.35em;}
.legal-body li{margin:.4em 0;line-height:1.65;}
.legal-body strong{color:var(--ink,#0A1A2C);font-weight:600;}
.legal-body a{color:var(--signal-deep,#0D97D7);text-decoration:underline;text-underline-offset:2px;}
.legal-body .company{font:600 13px/1 var(--mono,monospace);letter-spacing:.04em;color:var(--steel-3,#5b6b7a);margin:0 0 1.5em;}
.legal-body table{width:100%;border-collapse:collapse;margin:1.2em 0 2.2em;font-size:.97rem;}
.legal-body th{text-align:left;font:600 11px/1.3 var(--mono,monospace);letter-spacing:.14em;text-transform:uppercase;color:var(--steel-3,#5b6b7a);border-bottom:2px solid var(--rule-strong,#cdd5dd);padding:.6em .9em;}
.legal-body td{border-bottom:1px solid var(--rule,#e2e7ec);padding:.75em .9em;vertical-align:top;line-height:1.65;}
.legal-body td strong{color:var(--ink,#0A1A2C);}
@media(max-width:760px){
 .legal-body table,.legal-body tbody,.legal-body tr,.legal-body td{display:block;width:100%;}
 .legal-body thead{display:none;}
 .legal-body td{border:none;padding:.15em 0;}
 .legal-body td[data-label="Term"]{font-weight:600;padding-top:1.1em;color:var(--ink);}
}

/* === Legal pages: full-width body + grayscale wave hero === */
.legal-body{max-width:none;margin:0;}
.legal-hero{position:relative;overflow:hidden;}
.legal-hero .wrap{position:relative;z-index:1;text-align:left;}
.legal-hero .bp-title,.legal-hero .hero-kicker{margin-left:0;}
.legal-wave{position:absolute;left:0;right:0;top:0;bottom:0;width:100%;height:100%;z-index:0;filter:grayscale(1);opacity:0.4;pointer-events:none;}

/* footer LinkedIn icon (753) */
.footer-bottom .links a.footer-linkedin{display:inline-flex;align-items:center;line-height:0;}
.footer-bottom .links a.footer-linkedin svg{display:block;}
.footer-bottom .links a.footer-linkedin:hover{opacity:.6;}

/* login page (715) */
html.sandbox-login-page .login-hero{padding:180px 0 36px !important;border-bottom:none !important;min-height:0 !important;}
html.sandbox-login-page .login-hero h1{font-size:clamp(30px,4.5vw,46px);letter-spacing:-0.022em;color:var(--ink);margin-top:14px;}
html.sandbox-login-page .login-main{max-width:440px;margin:0 auto;padding:56px 24px 110px;}
html.sandbox-login-page .login-card{border:1px solid var(--rule-strong);background:#fff;padding:36px 32px;box-shadow:0 16px 34px -30px rgba(10,26,44,0.5);}
html.sandbox-login-page .oe_login_form{display:flex;flex-direction:column;gap:16px;}
html.sandbox-login-page .oe_login_form .form-label,html.sandbox-login-page .oe_login_form .col-form-label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--steel-2);margin-bottom:4px;}
html.sandbox-login-page .oe_login_form .form-control{width:100%;padding:13px 14px;border:1px solid var(--rule-strong);background:var(--paper);font-size:15px;color:var(--ink);border-radius:0;}
html.sandbox-login-page .oe_login_form .form-control:focus{outline:none;border-color:var(--signal-deep);box-shadow:none;}
html.sandbox-login-page .oe_login_form .btn-primary{width:100%;padding:14px;background:var(--ink);color:var(--paper);border:0;border-radius:0;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background 200ms var(--ease);}
html.sandbox-login-page .oe_login_form .btn-primary:hover{background:var(--signal-deep);}
html.sandbox-login-page .oe_login_form .btn-link{color:var(--steel-2);font-size:12px;}


html.sandbox-login-page .nav .brand-logo {
  height: 44px ;
}

html.sandbox-login-page .footer .brand-logo {
  height: 43px ;
}

html.sandbox-login-page .footer {
  background: var(--ink-deep) ;
}


html.sandbox-login-page body {
  display: flex ;
  flex-direction: column ;
  min-height: 100vh ;
}

html.sandbox-login-page .login-main {
  flex: 1 0 auto ;
}


/* job thank-you page (756) */
html.sandbox-thankyou-page .nav .brand-logo { height: 44px ; }
html.sandbox-thankyou-page .footer .brand-logo { height: 43px ; }
html.sandbox-thankyou-page .footer { background: var(--ink-deep) ; }
html.sandbox-thankyou-page body { display: flex ; flex-direction: column ; min-height: 100vh ; }
html.sandbox-thankyou-page .login-hero { padding: 180px 0 36px !important; border-bottom: none !important; min-height: 0 !important; }
html.sandbox-thankyou-page .login-hero h1 { font-size: clamp(34px,5vw,60px); letter-spacing: -0.022em; }
html.sandbox-thankyou-page .ty-main { flex: 1 0 auto ; max-width: 760px; margin: 0 auto; padding: 56px 24px 110px; }
html.sandbox-thankyou-page .ty-card { border: 1px solid var(--rule-strong); background: #fff; padding: 44px 40px; box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5); }
html.sandbox-thankyou-page .ty-lead { font-size: 20px; line-height: 1.5; color: var(--ink); margin: 0 0 14px; }
html.sandbox-thankyou-page .ty-sub { font-size: 15px; line-height: 1.6; color: var(--steel-2); margin: 0; }
html.sandbox-thankyou-page .ty-cta { display: flex; flex-wrap: wrap; gap: 12px; }


/* fix: re-enable interaction on partners + testimonials content (was killed by pointer-events:none) */
html.sandbox-home-page .trustblock .partners > .wrap,
html.sandbox-home-page .trustblock .testimonials > .wrap { pointer-events: auto; }


/* partner logo hover: white bg, blue thicker frame, slight lift (no grey) */
html.sandbox-home-page .trustblock .partner-logo {
  position: relative;
  transition: transform 220ms var(--ease), box-shadow 220ms var(--ease), border-color 220ms var(--ease);
}
html.sandbox-home-page .trustblock .partner-logo:hover {
  background: #FFFFFF;
  border-color: var(--signal-deep);
  box-shadow: inset 0 0 0 1px var(--signal-deep);
  transform: translateY(-3px);
  z-index: 2;
}


/* partner logos: fit 2 columns below 430px (was overflowing/clipping right side) */
@media (max-width: 430px) {
  html.sandbox-home-page .trustblock .partner-logo {
    padding: 18px 10px;
    min-height: 88px;
    min-width: 0;
  }
  html.sandbox-home-page .trustblock .partner-logo img {
    max-width: 100%;
  }
}


/* contact form section (moved from /contactus) */
html.sandbox-contact-page .ct-form-section { border-bottom: 0; padding: 0 0 48px; }
html.sandbox-contact-page .ct-form-layout { display: grid; grid-template-columns: 0.72fr 1.28fr; gap: clamp(28px,4vw,64px); align-items: start; }
@media (max-width: 860px) { html.sandbox-contact-page .ct-form-layout { grid-template-columns: 1fr; gap: 28px; } }
html.sandbox-contact-page .ct-form-foot { display: flex; align-items: center; gap: 16px; margin-top: 18px; flex-wrap: wrap; }
html.sandbox-contact-page .ct-form .form-err { color: #b91c1c; font-size: 13.5px; }
html.sandbox-contact-page .ct-form-done { border: 1px solid var(--rule-strong); background: #fff; padding: 32px 28px; }
html.sandbox-contact-page .ct-done-title { font-size: 18px; color: var(--ink); margin: 0 0 8px; }
html.sandbox-contact-page .ct-done-sub { font-size: 14px; color: var(--steel-2); margin: 0; }


/* contact form v2: full width, stronger frame, bigger labels */
html.sandbox-contact-page .ct-form-wrap { width: 100%; }
html.sandbox-contact-page .ct-form .contact-form-fields {
  border-top: 1.5px solid var(--rule-strong);
  border-left: 1.5px solid var(--rule-strong);
  box-shadow: 0 0 0 1px var(--rule-strong);
}
html.sandbox-contact-page .ct-form .field {
  border-right: 1.5px solid var(--rule-strong);
  border-bottom: 1.5px solid var(--rule-strong);
  padding: 12px 15px 10px;
  gap: 5px;
}
html.sandbox-contact-page .ct-form .field textarea { min-height: 72px; }
html.sandbox-contact-page .ct-form .field label {
  font-size: 12px;
  letter-spacing: 0.12em;
  color: var(--steel-1);
  font-weight: 600;
}
html.sandbox-contact-page .ct-form .field input,
html.sandbox-contact-page .ct-form .field textarea { font-size: 15.5px; }


/* newsletter form (contact page, replaces prefer-email CTA) */
html.sandbox-contact-page .nl-formwrap { width: 100%; max-width: none; }
html.sandbox-contact-page .nl-form .contact-form-fields {
  border-top: 1.5px solid var(--rule-strong);
  border-left: 1.5px solid var(--rule-strong);
  box-shadow: 0 0 0 1px var(--rule-strong);
}
html.sandbox-contact-page .nl-form .field {
  border-right: 1.5px solid var(--rule-strong);
  border-bottom: 1.5px solid var(--rule-strong);
  padding: 12px 15px 10px;
  gap: 5px;
}
html.sandbox-contact-page .nl-form .field label { font-size: 12px; letter-spacing: 0.12em; color: var(--steel-1); font-weight: 600; }
html.sandbox-contact-page .nl-form .field input { font-size: 15.5px; }
html.sandbox-contact-page .nl-check { display: flex; align-items: flex-start; gap: 10px; margin-top: 14px; font-size: 14px; color: var(--steel-1); line-height: 1.5; cursor: pointer; }
html.sandbox-contact-page .nl-check input { margin-top: 3px; width: 16px; height: 16px; accent-color: var(--signal-deep); flex: 0 0 auto; }
html.sandbox-contact-page .nl-check a { color: var(--signal-deep); text-decoration: underline; }
html.sandbox-contact-page .nl-foot { display: flex; align-items: center; gap: 16px; margin-top: 22px; flex-wrap: wrap; }
html.sandbox-contact-page .nl-err { color: #b91c1c; font-size: 13.5px; }
html.sandbox-contact-page .nl-done .ct-done-title { font-size: 18px; color: var(--ink); margin: 0; }


/* newsletter: wave graphic + stronger button */
html.sandbox-contact-page .nl-section { position: relative; overflow: hidden; }
html.sandbox-contact-page .nl-section > .wrap { position: relative; z-index: 1; }
html.sandbox-contact-page .nl-wave { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; pointer-events: none; opacity: 0.42; }
html.sandbox-contact-page .nl-foot .btn {
  padding: 17px 46px;
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  box-shadow: 0 14px 28px -16px rgba(10,26,44,0.7);
}


/* ============== Landing page (LP) - light theme ============= */
html.sandbox-lp-page body { background: #FFFFFF; }
html.sandbox-lp-page .lp-topbar { position: absolute; top: 0; left: 0; right: 0; z-index: 20; display: flex; align-items: center; justify-content: space-between; padding: 18px clamp(20px,4vw,56px); }
html.sandbox-lp-page .lp-topbar .lp-brand img { height: 92px; width: auto; display: block; }
html.sandbox-lp-page .lp-topbar-right { display: inline-flex; align-items: center; gap: 20px; }
html.sandbox-lp-page .lp-lang { display: inline-flex; gap: 2px; font-family: var(--mono); font-size: 12px; letter-spacing: 0.08em; }
html.sandbox-lp-page .lp-lang a { color: var(--steel-3); text-decoration: none; padding: 2px 6px; }
html.sandbox-lp-page .lp-lang a.is-active { color: var(--ink); font-weight: 700; }
html.sandbox-lp-page .lp-lang a:hover { color: var(--ink); }
html.sandbox-lp-page .lp-back { font-family: var(--mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--steel-2); text-decoration: none; }
html.sandbox-lp-page .lp-back:hover { color: var(--ink); }
html.sandbox-lp-page .lp-back::before { content: "\2190"; margin-right: 8px; }
html.sandbox-lp-page .lp-hero { position: relative; overflow: hidden; background: var(--paper); color: var(--ink); padding: clamp(118px,15vh,168px) 0 clamp(56px,7vw,96px); border-bottom: 1px solid var(--rule); }
html.sandbox-lp-page .lp-hero-wave { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.22; pointer-events: none; }
html.sandbox-lp-page .lp-hero-in { position: relative; z-index: 1; }
html.sandbox-lp-page .lp-kicker { display: inline-flex; align-items: center; gap: 10px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--warm); font-weight: 700; }
html.sandbox-lp-page .lp-kicker .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--warm); }
html.sandbox-lp-page .lp-h1 { font-size: clamp(36px,5.4vw,64px); line-height: 1.04; letter-spacing: -0.025em; font-weight: 600; color: var(--ink); max-width: 26ch; margin: 18px 0 0; }
html.sandbox-lp-page .lp-sub { font-size: clamp(16px,1.55vw,21px); line-height: 1.55; color: var(--steel-2); max-width: 80ch; margin: 18px 0 0; }
html.sandbox-lp-page .lp-cta-row { display: flex; flex-wrap: wrap; gap: 12px; margin: 30px 0 0; }
html.sandbox-lp-page .lp-trust { margin: 44px 0 0; border: 1px solid var(--rule-strong); background: var(--paper-2); padding: 30px 34px; max-width: none; }
html.sandbox-lp-page .lp-trust-title { font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--warm); font-weight: 700; }
html.sandbox-lp-page .lp-trust-list { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); column-gap: 40px; row-gap: 12px; }
html.sandbox-lp-page .lp-trust-list li { position: relative; padding-left: 22px; font-size: 14.5px; line-height: 1.5; color: var(--steel-1); }
html.sandbox-lp-page .lp-trust-list li::before { content: ""; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; background: var(--signal); }
html.sandbox-lp-page .lp-interview { margin: 34px 0 0; border-left: 2px solid var(--signal); padding: 4px 0 4px 24px; max-width: 1000px; }
html.sandbox-lp-page .lp-interview-text { font-size: 15px; line-height: 1.6; color: var(--steel-2); margin: 0 0 16px; }
html.sandbox-lp-page .btn-signal { background: var(--signal); color: var(--ink); border: 0; }
html.sandbox-lp-page .btn-signal:hover { background: var(--signal-deep); color: #ffffff; }


/* LP: fc-card port */
html.sandbox-lp-page 


/* ============================================================
   Homepage Services — stack vertically as separated cards
   (overrides the 2-col grid hairline layout)
   ============================================================ */
.svc-home-grid {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 1.5vw, 22px);
  border-top: 0;
  border-left: 0;
}
html.sandbox-lp-page 


/* ============================================================
   Homepage Services — editorial ledger rows
   Full-width rows, hairline rule between, generous breathing,
   number + 'More details' on the same baseline, big title,
   warm left-edge bar slides in on hover.
   ============================================================ */
.svc-home-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-top: 1px solid var(--rule-strong);
  border-left: 0;
}
body section.services-home .svc-home-grid, html.sandbox-lp-page section.services-home .svc-home-grid {
  display: grid ;
 grid-template-columns: repeat(2, 1fr) ;
 gap: clamp(20px, 2.4vw, 32px) ;
 border: 0 ;
}
body section.services-home .svc-home-grid, html.sandbox-lp-page section.services-home .svc-home-grid {
  grid-template-columns: 1fr ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal.in .sh-visual svg polyline, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal.in .sh-visual svg line, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal.in .sh-visual svg path {
  transition-delay: 300ms ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal.in .sh-visual svg polyline, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal.in .sh-visual svg line, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal.in .sh-visual svg path {
  transition-delay: 390ms ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal.in .sh-visual svg polyline, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal.in .sh-visual svg line, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal.in .sh-visual svg path {
  transition-delay: 480ms ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal.in .sh-visual svg polyline, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal.in .sh-visual svg line, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal.in .sh-visual svg path {
  transition-delay: 570ms ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal.in .sh-visual svg polyline, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal.in .sh-visual svg line, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal.in .sh-visual svg path {
  transition-delay: 660ms ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal.in .sh-visual svg polyline, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal.in .sh-visual svg line, html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal.in .sh-visual svg path {
  transition-delay: 750ms ;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(1).reveal {
  transition-delay: 0ms;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(2).reveal {
  transition-delay: 90ms;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(3).reveal {
  transition-delay: 180ms;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(4).reveal {
  transition-delay: 270ms;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(5).reveal {
  transition-delay: 360ms;
}
html.sandbox-lp-page .svc-home-grid .svc-home-card:nth-of-type(6).reveal {
  transition-delay: 450ms;
}
html.sandbox-lp-page section.services-home .svc-home-grid .svc-feature {
  grid-column: 1 / -1 ;
 position: relative;
 display: block ;
 border: 1px solid var(--rule) ;
 background: var(--paper) ;
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 40px 80px -42px rgba(10,26,44,0.55) ;
 margin-bottom: clamp(18px, 1.8vw, 26px);
 overflow: hidden;
 color: var(--ink);
 text-decoration: none;
 transition: transform 360ms var(--ease), box-shadow 360ms var(--ease) ;
}
html.sandbox-lp-page section.services-home .svc-home-grid .fc-card {
  grid-column: 1 / -1 ;
 position: relative; overflow: hidden;
 background: #FFFFFF;
 border: 1px solid rgba(10,26,44,0.16);
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 50px 90px -46px rgba(10,26,44,0.5);
 margin-bottom: clamp(18px, 1.8vw, 26px);
 color: #15202E;
}
html.sandbox-lp-page .fc-card {
  --fc-warm: var(--warm); --fc-txt: #15202E; --fc-txt-2: #44505F; --fc-txt-3: #76808F;
 --fc-ct-accent: #1488B0; --fc-ct-bracket: rgba(20,114,143,0.42);
 --fc-ct-grid: rgba(10,26,44,0.06); --fc-ct-rail: rgba(10,26,44,0.12);
 --fc-ct-plane: #14728F; --fc-ct-plane-fill: rgba(20,114,143,0.10);
 --fc-ct-organ: #16344A; --fc-ct-organ-fill: rgba(10,26,44,0.05);
 --fc-ct-warm: #C2602F;
 --fc-rule: rgba(10,26,44,0.10); --fc-rule-2: rgba(10,26,44,0.16);
 --fc-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}
html.sandbox-lp-page .fc-card::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; z-index: 8;
 background: linear-gradient(90deg, var(--fc-warm) 0%, var(--fc-warm) 58%, transparent 100%);
}
html.sandbox-lp-page .fc-card .fc-hero {
  position: relative; overflow: hidden; min-height: 470px; display: flex; align-items: center;
}
html.sandbox-lp-page .fc-card .fc-ct-layer {
  position: absolute; top: 0; right: 0; bottom: 0; left: 40%;
 background: radial-gradient(120% 150% at 62% 34%, #FFFFFF 0%, #F2F5F9 58%, #E7ECF2 100%);
}
html.sandbox-lp-page .fc-card .fc-ct-layer svg {
  position: absolute; inset: 0; width: 100%; height: 100%; display: block;
}
html.sandbox-lp-page .fc-card .fc-scrim {
  position: absolute; top: 0; right: 0; bottom: 0; left: 40%; z-index: 2;
 background: linear-gradient(80deg, #FFFFFF 0%, #FFFFFF 5%, rgba(244,247,250,0.55) 35%, transparent 55%);
}
html.sandbox-lp-page .fc-card .fc-scrim::after {
  display: none;
}
html.sandbox-lp-page .fc-card .fc-ovl {
  position: absolute; z-index: 4; font-family: var(--mono);
 letter-spacing: 0.16em; text-transform: uppercase; font-size: 10px;
}
html.sandbox-lp-page .fc-card .fc-ovl.fc-tr {
  right: 18px; top: 16px; color: var(--fc-ct-accent);
}
html.sandbox-lp-page .fc-card .fc-ovl.fc-brr {
  right: 18px; bottom: 16px; color: var(--fc-txt-3);
}
html.sandbox-lp-page .fc-card .fc-hero-in {
  position: relative; z-index: 3; padding: clamp(34px, 4.4vw, 64px); width: 100%;
}
html.sandbox-lp-page .fc-card .fc-hero-col {
  max-width: 650px; display: flex; flex-direction: column; gap: 17px;
}
html.sandbox-lp-page .fc-card .fc-kick {
  display: inline-flex; align-items: center; gap: 10px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--fc-warm);
}
html.sandbox-lp-page .fc-card .fc-kick-dot {
  width: 7px; height: 7px; border-radius: 50%; background: var(--fc-warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--fc-warm) 22%, transparent);
}
html.sandbox-lp-page .fc-card .fc-h1 {
  font-size: clamp(32px, 4vw, 52px) ; line-height: 1.03 ;
 letter-spacing: -0.032em ; font-weight: 600 ; color: var(--fc-txt) ;
 max-width: 15ch ; margin: 0 ;
}
html.sandbox-lp-page .fc-card .fc-lede {
  font-size: clamp(15px, 1.2vw, 17px) ; line-height: 1.6 ;
 color: var(--fc-txt) ; max-width: 52ch ; margin: 0 ;
 -webkit-line-clamp: unset ; display: block ; overflow: visible ;
}
html.sandbox-lp-page .fc-card .fc-lede.fc-muted {
  color: var(--fc-txt-2) ; font-size: 13.5px ;
}
html.sandbox-lp-page .fc-card .fc-stats {
  display: flex; flex-wrap: wrap; gap: 10px clamp(18px, 2vw, 30px); padding: 2px 0;
}
html.sandbox-lp-page .fc-card .fc-st {
  display: flex; align-items: baseline; gap: 8px;
}
html.sandbox-lp-page .fc-card .fc-st b {
  font-size: 17px; font-weight: 600; letter-spacing: -0.02em; color: var(--fc-ct-accent);
}
html.sandbox-lp-page .fc-card .fc-st span {
  font-family: var(--mono); font-size: 9.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--fc-txt-3);
}
html.sandbox-lp-page .fc-card .fc-tagrow {
  display: flex; flex-wrap: wrap; gap: 7px;
}
html.sandbox-lp-page .fc-card .fc-tagrow span {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.06em;
 color: var(--fc-txt-2); border: 1px solid var(--fc-rule-2); padding: 4px 9px; background: transparent;
}
html.sandbox-lp-page .fc-card .fc-region {
  padding: clamp(28px, 3.2vw, 46px) clamp(32px, 3.8vw, 58px) clamp(32px, 3.8vw, 56px);
}
html.sandbox-lp-page .fc-card .fc-build-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); column-gap: clamp(20px, 2.4vw, 40px); row-gap: clamp(22px, 2.6vw, 34px);
}
html.sandbox-lp-page .fc-card .fc-build-grid {
  grid-template-columns: repeat(2, 1fr);
}
html.sandbox-lp-page .fc-card .fc-build-grid {
  grid-template-columns: 1fr;
}
html.sandbox-lp-page .fc-card .fc-bcell {
  position: relative; padding-top: 16px; border-top: 1px solid var(--fc-rule-2);
 display: flex; flex-direction: column; gap: 7px; transition: border-color 300ms var(--fc-ease);
}
html.sandbox-lp-page .fc-card .fc-bcell::before {
  content: ""; position: absolute; top: -1px; left: 0; height: 2px; width: 0;
 background: var(--fc-warm); transition: width 360ms var(--fc-ease);
}
html.sandbox-lp-page .fc-card .fc-bcell:hover::before {
  width: 40px;
}
html.sandbox-lp-page .fc-card .fc-bcell h3 {
  font-size: 15.5px ; font-weight: 600 ;
 letter-spacing: -0.014em ; color: var(--fc-txt) ; line-height: 1.3 ; margin: 0 ;
}
html.sandbox-lp-page .fc-card .fc-bcell p {
  font-size: 12.5px ; line-height: 1.55 ;
 color: var(--fc-txt-2) ; margin: 0 ; -webkit-line-clamp: unset ;
 display: block ; overflow: visible ;
}
html.sandbox-lp-page .fc-card .fc-foot {
  display: flex; align-items: center; justify-content: flex-end; gap: 18px; flex-wrap: wrap;
 padding: 22px clamp(32px, 3.8vw, 58px); border-top: 1px solid var(--fc-rule);
}
html.sandbox-lp-page .fc-card .fc-cta {
  font-family: var(--mono); font-size: 11.5px; letter-spacing: 0.14em;
 text-transform: uppercase; color: var(--fc-warm); display: inline-flex; align-items: center; gap: 9px; text-decoration: none;
}
html.sandbox-lp-page .fc-card .fc-cta .fc-arr {
  transition: transform 240ms var(--fc-ease);
}
html.sandbox-lp-page .fc-card:hover .fc-cta .fc-arr {
  transform: translateX(5px);
}
html.sandbox-lp-page .fc-card svg.fc-ct .fc-ct-grid {
  stroke: var(--fc-ct-grid);
}
html.sandbox-lp-page .fc-card svg.fc-ct .fc-ct-bracket {
  stroke: var(--fc-ct-bracket);
}
html.sandbox-lp-page .fc-card svg.fc-ct .fc-ct-rail {
  stroke: var(--fc-ct-rail);
}
html.sandbox-lp-page .fc-card svg.fc-ct .fc-ct-plane {
  fill: var(--fc-ct-plane-fill); stroke: var(--fc-ct-plane);
}
html.sandbox-lp-page .fc-card svg.fc-ct .fc-ct-organ {
  fill: var(--fc-ct-organ-fill); stroke: var(--fc-ct-organ);
}
html.sandbox-lp-page .fc-card svg.fc-ct .fc-ct-lesion {
  fill: var(--fc-ct-warm);
}
html.sandbox-lp-page .fc-card .fc-hero {
  display: block; min-height: 0;
}
html.sandbox-lp-page .fc-card .fc-ct-layer {
  position: relative; left: 0; height: clamp(150px, 44vw, 230px); border-bottom: 1px solid var(--fc-rule);
}
html.sandbox-lp-page .fc-card .fc-scrim {
  display: none;
}
html.sandbox-lp-page .fc-card .fc-ovl.fc-brr {
  display: none;
}
html.sandbox-lp-page .fc-card .fc-hero-in {
  position: static; padding: clamp(24px, 6vw, 36px);
}
html.sandbox-lp-page .fc-card .fc-hero-col {
  max-width: none; gap: 15px;
}
html.sandbox-lp-page .fc-card .fc-region {
  padding: clamp(20px, 5vw, 32px);
}
html.sandbox-lp-page .fc-card .fc-foot {
  padding: 18px clamp(24px, 6vw, 36px);
}
/* === Migrated from view 6711 inline block #1 === */
html.sandbox-lp-page .services-home .svc-home-grid {
  display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 24px;
 margin-top: 48px;
 align-items: stretch;
}
html.sandbox-lp-page .services-home .svc-home-grid {
  grid-template-columns: 1fr;
 gap: 16px;
 margin-top: 32px;
}

html.sandbox-lp-page, html.sandbox-lp-page body { overflow-x: hidden; }


/* LP: services-home section design */
html.sandbox-lp-page section.services-home, html.sandbox-lp-page section#engage, html.sandbox-lp-page section.team {
  position: relative;
}
html.sandbox-lp-page section.standards .lbl, html.sandbox-lp-page section.services-home .lbl, html.sandbox-lp-page section#engage .lbl, html.sandbox-lp-page section.team .lbl, html.sandbox-lp-page section#why .lbl, html.sandbox-lp-page section.trustblock .lbl {
  letter-spacing: 0.22em ; font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-lp-page section.services-home {
  background-image:
 radial-gradient(circle at 1px 1px, rgba(31, 182, 224, 0.10) 1px, transparent 0);
 background-size: 22px 22px;
 background-position: 0 0;
}
body section.services-home .svc-home-grid, html.sandbox-lp-page section.services-home .svc-home-grid {
  display: grid ;
 grid-template-columns: repeat(2, 1fr) ;
 gap: clamp(20px, 2.4vw, 32px) ;
 border: 0 ;
}
body section.services-home .svc-home-card, html.sandbox-lp-page section.services-home .svc-home-card {
  display: flex ;
 flex-direction: column ;
 grid-template-columns: none ;
 padding: 0 ;
 background: #FFFFFF ;
 border: 1px solid var(--rule-strong) ;
 box-shadow: 0 8px 26px -18px rgba(10, 26, 44, 0.18) ;
 overflow: hidden;
 position: relative;
 transition: transform 360ms cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 360ms cubic-bezier(0.2, 0.7, 0.2, 1), border-color 320ms ease ;
 align-items: stretch ;
}
body section.services-home .svc-home-card:hover, html.sandbox-lp-page section.services-home .svc-home-card:hover {
  transform: translateY(-6px);
 box-shadow: 0 28px 56px -28px rgba(10, 26, 44, 0.32) ;
 border-color: var(--warm) ;
 background: #FFFFFF ;
 padding-left: 0 ;
}
body section.services-home .svc-home-card .sh-visual, html.sandbox-lp-page section.services-home .svc-home-card .sh-visual {
  width: 100% ;
 aspect-ratio: 3 / 2 ;
 height: auto ;
 min-height: 0 ;
 border: 0 ;
 background: transparent ;
 display: flex ;
 align-items: flex-end ;
 justify-content: center ;
 padding: 0 ;
 margin: 0 ;
 position: relative;
 overflow: hidden;
}
body section.services-home .svc-home-card .sh-visual svg, html.sandbox-lp-page section.services-home .svc-home-card .sh-visual svg {
  width: 100% ;
 height: 100% ;
 max-width: none ;
 color: var(--steel-1);
 preserveAspectRatio: xMidYMid meet;
}
body section.services-home .svc-home-card .sh-body, html.sandbox-lp-page section.services-home .svc-home-card .sh-body {
  display: flex ;
 flex-direction: column ;
 gap: 12px ;
 padding: 0 clamp(24px, 2.4vw, 36px) clamp(28px, 2.6vw, 40px) ;
 margin-top: 0 ;
 min-width: 0;
}
body section.services-home .svc-home-card .sh-idx, html.sandbox-lp-page section.services-home .svc-home-card .sh-idx {
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase;
 color: var(--signal-deep) ;
}
body section.services-home .svc-home-card h3, html.sandbox-lp-page section.services-home .svc-home-card h3 {
  font-size: clamp(20px, 1.7vw, 24px) ;
 line-height: 1.25;
 letter-spacing: -0.016em;
 color: var(--steel-1) ;
 font-weight: 600;
 margin: 0;
 transition: color 280ms ease;
}
body section.services-home .svc-home-card p, html.sandbox-lp-page section.services-home .svc-home-card p {
  font-size: 14px ;
 line-height: 1.6 ;
 color: var(--steel-2) ;
 margin: 0;
 display: -webkit-box;
 -webkit-line-clamp: 4;
 -webkit-box-orient: vertical;
 overflow: hidden;
}
body section.services-home .svc-home-card .sh-tags, html.sandbox-lp-page section.services-home .svc-home-card .sh-tags {
  display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px;
}
body section.services-home .svc-home-card .sh-tags span, html.sandbox-lp-page section.services-home .svc-home-card .sh-tags span {
  font-family: var(--mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase;
 color: var(--steel-2);
 padding: 3px 8px;
 border: 1px solid var(--rule);
 background: var(--paper);
}
body section.services-home .svc-home-card .sh-more, html.sandbox-lp-page section.services-home .svc-home-card .sh-more {
  margin-top: 12px;
 font-family: var(--mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase;
 color: var(--steel-2);
 display: inline-flex; align-items: center; gap: 8px;
}
body section.services-home .svc-home-card .sh-more .arr, html.sandbox-lp-page section.services-home .svc-home-card .sh-more .arr {
  transition: transform 280ms ease;
}
body section.services-home .svc-home-grid, html.sandbox-lp-page section.services-home .svc-home-grid {
  grid-template-columns: 1fr ;
}
html.sandbox-lp-page section#why > .wrap > section.services-home > .wrap {
  padding-left: 0;
 padding-right: 0;
 max-width: 100%;
}
html.sandbox-lp-page section.services-home .svc-home-grid .svc-feature {
  grid-column: 1 / -1 ;
 position: relative;
 display: block ;
 border: 1px solid var(--rule) ;
 background: var(--paper) ;
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 40px 80px -42px rgba(10,26,44,0.55) ;
 margin-bottom: clamp(18px, 1.8vw, 26px);
 overflow: hidden;
 color: var(--ink);
 text-decoration: none;
 transition: transform 360ms var(--ease), box-shadow 360ms var(--ease) ;
}
html.sandbox-lp-page section.services-home .svc-home-grid .fc-card {
  grid-column: 1 / -1 ;
 position: relative; overflow: hidden;
 background: #FFFFFF;
 border: 1px solid rgba(10,26,44,0.16);
 box-shadow: 0 1px 0 rgba(10,26,44,0.05), 0 50px 90px -46px rgba(10,26,44,0.5);
 margin-bottom: clamp(18px, 1.8vw, 26px);
 color: #15202E;
}
body section.services-home .svc-home-card .sh-idx, html.sandbox-lp-page section.services-home .svc-home-card .sh-idx {
  display: inline-flex ;
 align-items: center;
 gap: 10px;
 font-family: var(--mono) ;
 font-size: 11px ;
 letter-spacing: 0.2em ;
 text-transform: uppercase ;
 color: var(--warm) ;
 font-weight: 400 ;
 margin-bottom: 6px;
}
body section.services-home .svc-home-card .sh-idx::before, html.sandbox-lp-page section.services-home .svc-home-card .sh-idx::before {
  content: "";
 width: 7px; height: 7px; border-radius: 50%;
 background: var(--warm);
 box-shadow: 0 0 0 3px color-mix(in srgb, var(--warm) 22%, transparent);
 flex: none;
}
/* === Migrated from view 6711 inline block #1 === */
html.sandbox-lp-page .services-home .svc-home-grid {
  display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 24px;
 margin-top: 48px;
 align-items: stretch;
}
html.sandbox-lp-page .services-home .svc-home-card {
  display: grid;
 grid-template-columns: 76px 1fr;
 gap: 22px;
 align-items: start;
 padding: 26px 28px;
 border: 1px solid rgba(20,28,38,0.10);
 background: #ffffff;
 text-decoration: none;
 color: inherit;
 transition: border-color 220ms cubic-bezier(0.2,0.8,0.2,1),
 transform 220ms cubic-bezier(0.2,0.8,0.2,1),
 box-shadow 220ms cubic-bezier(0.2,0.8,0.2,1);
}
html.sandbox-lp-page .services-home .svc-home-card:hover {
  border-color: var(--signal-deep, #0c4da2);
 transform: translateY(-2px);
 box-shadow: 0 10px 28px rgba(20,28,38,0.06);
}
html.sandbox-lp-page .services-home .svc-home-card .sh-visual {
  width: 76px;
 height: 52px;
 flex-shrink: 0;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-visual svg {
  width: 100%;
 height: 100%;
 display: block;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-body {
  display: flex;
 flex-direction: column;
 gap: 10px;
 min-width: 0;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-idx {
  font-family: var(--mono, ui-monospace, monospace);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: 0.18em;
 text-transform: uppercase;
 color: var(--signal-deep, #0c4da2);
}
html.sandbox-lp-page .services-home .svc-home-card h3 {
  font-size: 19px;
 line-height: 1.25;
 margin: 0;
 font-weight: 600;
 letter-spacing: -0.015em;
 color: var(--steel-1, #181c1e);
}
html.sandbox-lp-page .services-home .svc-home-card p {
  font-size: 13.5px;
 line-height: 1.6;
 color: var(--steel-2, #4a5663);
 margin: 0;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-tags {
  display: flex;
 flex-wrap: wrap;
 gap: 6px;
 margin-top: 4px;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-tags span {
  font-family: var(--mono, ui-monospace, monospace);
 font-size: 10px;
 font-weight: 500;
 letter-spacing: 0.12em;
 padding: 3px 8px;
 border: 1px solid rgba(20,28,38,0.18);
 color: var(--steel-2, #4a5663);
 text-transform: uppercase;
 line-height: 1.4;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-more {
  margin-top: 6px;
 font-family: var(--mono, ui-monospace, monospace);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: 0.14em;
 color: var(--signal-deep, #0c4da2);
 text-transform: uppercase;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-more .arr {
  display: inline-block;
 transition: transform 220ms cubic-bezier(0.2,0.8,0.2,1);
}
html.sandbox-lp-page .services-home .svc-home-card:hover .sh-more .arr {
  transform: translateX(3px);
}
html.sandbox-lp-page .services-home .svc-home-grid {
  grid-template-columns: 1fr;
 gap: 16px;
 margin-top: 32px;
}
html.sandbox-lp-page .services-home .svc-home-card {
  grid-template-columns: 60px 1fr;
 padding: 20px 22px;
 gap: 16px;
}
html.sandbox-lp-page .services-home .svc-home-card .sh-visual {
  width: 60px; height: 42px;
}
html.sandbox-lp-page .services-home .svc-home-card h3 {
  font-size: 17px;
}
html.sandbox-lp-page .services-home .svc-home-card p {
  font-size: 13px;
}
html.sandbox-lp-page section.services-home { background-image: none; }
html.sandbox-lp-page section.services-home::before { content:; position:absolute; inset:0; z-index:0; background-image: radial-gradient(circle at 1px 1px, rgba(31,182,224,0.10) 1px, transparent 0); background-size: 22px 22px; -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 86%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0, #000 14%, #000 86%, transparent 100%); pointer-events:none; }
html.sandbox-lp-page section.services-home > .wrap { position: relative; z-index: 1; }


/* LP: The Why */
html.sandbox-lp-page .lp-why-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: clamp(28px,3.5vw,44px); }
@media (max-width: 860px) { html.sandbox-lp-page .lp-why-grid { grid-template-columns: 1fr; } }
html.sandbox-lp-page .lp-why-card { position: relative; border: 1px solid var(--rule-strong); background: #fff; padding: 26px 26px 24px; overflow: hidden; }
html.sandbox-lp-page .lp-why-card::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--warm); }
html.sandbox-lp-page .lp-why-n { font-family: var(--mono); font-size: 12px; letter-spacing: 0.2em; color: var(--warm); font-weight: 700; }
html.sandbox-lp-page .lp-why-card p { margin: 12px 0 0; font-size: 15.5px; line-height: 1.55; color: var(--steel-1); }
html.sandbox-lp-page .lp-core { margin-top: clamp(48px,6vw,80px); }
html.sandbox-lp-page .lp-core-title { font-size: clamp(20px,2vw,26px); letter-spacing: -0.02em; color: var(--ink); margin: 0 0 22px; }
html.sandbox-lp-page .lp-core-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--rule); border: 1px solid var(--rule); }
@media (max-width: 860px) { html.sandbox-lp-page .lp-core-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { html.sandbox-lp-page .lp-core-grid { grid-template-columns: 1fr; } }
html.sandbox-lp-page .lp-core-item { display: flex; align-items: center; gap: 12px; background: #fff; padding: 22px 24px; font-size: 15px; color: var(--ink); }
html.sandbox-lp-page .lp-core-dot { width: 9px; height: 9px; background: var(--signal); flex: none; }


/* LP: clients row */
html.sandbox-lp-page .lp-clients { padding: 0 0 clamp(48px,6vw,80px); }
html.sandbox-lp-page .lp-clients .lp-clients-label { font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--steel-3); display: block; }
html.sandbox-lp-page .lp-clients-row { display: flex; align-items: center; gap: clamp(36px,5vw,72px); margin-top: 22px; flex-wrap: wrap; }
html.sandbox-lp-page .lp-client img { height: 40px; width: auto; display: block; opacity: 0.72; filter: grayscale(1); transition: opacity 200ms var(--ease), filter 200ms var(--ease); }
html.sandbox-lp-page .lp-client:hover img { opacity: 1; filter: none; }


/* LP: The How */
html.sandbox-lp-page .lp-how-intro { font-size: clamp(15px,1.3vw,17px); line-height: 1.65; color: var(--steel-1); max-width: 80ch; margin: clamp(24px,3vw,36px) 0 0; }
html.sandbox-lp-page .lp-how-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: clamp(28px,3.5vw,44px) 0 0; }
@media (max-width: 860px) { html.sandbox-lp-page .lp-how-grid { grid-template-columns: 1fr; } }
html.sandbox-lp-page .lp-how-card { border: 1px solid var(--rule-strong); background: #fff; padding: 28px 28px 26px; transition: transform 240ms var(--ease), box-shadow 240ms var(--ease); }
html.sandbox-lp-page .lp-how-card:hover { transform: translateY(-4px); box-shadow: 0 22px 44px -28px rgba(10,26,44,0.4); }
html.sandbox-lp-page .lp-how-badge { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; background: var(--signal); color: var(--ink); font-family: var(--mono); font-weight: 700; font-size: 16px; }
html.sandbox-lp-page .lp-how-card h3 { font-size: 18px; letter-spacing: -0.01em; color: var(--ink); margin: 18px 0 0; }
html.sandbox-lp-page .lp-how-card p { font-size: 14.5px; line-height: 1.55; color: var(--steel-2); margin: 10px 0 0; }
html.sandbox-lp-page .lp-reg { margin: clamp(28px,3.5vw,44px) 0 0; border: 1px solid var(--rule-strong); background: var(--ink); color: var(--ivory); padding: 26px 30px; display: flex; align-items: center; gap: clamp(20px,3vw,40px); flex-wrap: wrap; }
html.sandbox-lp-page .lp-reg-title { font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--warm); font-weight: 700; flex: none; }
html.sandbox-lp-page .lp-reg-chips { display: flex; gap: 10px; flex-wrap: wrap; }
html.sandbox-lp-page .lp-reg-chips span { font-family: var(--mono); font-size: 12px; letter-spacing: 0.06em; color: var(--ivory); border: 1px solid var(--rule-dark-strong); padding: 7px 12px; }


/* LP: The What (references) */
html.sandbox-lp-page .lp-ref-list { display: grid; gap: 18px; margin: clamp(28px,3.5vw,44px) 0 0; }
html.sandbox-lp-page .lp-ref-card { border: 1px solid var(--rule-strong); background: #fff; padding: clamp(26px,3vw,40px); }
html.sandbox-lp-page .lp-ref-head { display: flex; align-items: baseline; gap: 16px; }
html.sandbox-lp-page .lp-ref-idx { font-family: var(--mono); font-size: 13px; font-weight: 700; letter-spacing: 0.16em; color: var(--signal-deep); flex: none; }
html.sandbox-lp-page .lp-ref-head h3 { font-size: clamp(19px,2vw,26px); letter-spacing: -0.02em; color: var(--ink); margin: 0; }
html.sandbox-lp-page .lp-ref-meta { display: flex; flex-wrap: wrap; gap: 10px 34px; margin: 18px 0 0; padding: 16px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font-size: 14px; color: var(--steel-1); }
html.sandbox-lp-page .lp-ref-meta em { font-family: var(--mono); font-style: normal; font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--steel-3); margin-right: 8px; }
html.sandbox-lp-page .lp-ref-client { color: var(--warm); font-weight: 700; }
html.sandbox-lp-page .lp-ref-body { display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(20px,2.4vw,36px); margin: 24px 0 0; }
@media (max-width: 860px) { html.sandbox-lp-page .lp-ref-body { grid-template-columns: 1fr; gap: 20px; } }
html.sandbox-lp-page .lp-ref-k { font-family: var(--mono); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--signal-deep); font-weight: 700; }
html.sandbox-lp-page .lp-ref-block p { font-size: 14px; line-height: 1.6; color: var(--steel-2); margin: 8px 0 0; }
html.sandbox-lp-page .lp-ref-more { display: inline-block; margin: clamp(24px,3vw,36px) 0 0; font-family: var(--mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink); border-bottom: 1px solid currentColor; padding-bottom: 3px; text-decoration: none; }
html.sandbox-lp-page .lp-ref-more:hover { color: var(--signal-deep); }


/* LP: Final CTA */
html.sandbox-lp-page .lp-final { position: relative; overflow: hidden; background: var(--ink); color: var(--ivory); padding: clamp(64px,9vw,120px) 0; border-top: 1px solid var(--rule-strong); }
html.sandbox-lp-page .lp-final-wave { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.16; pointer-events: none; }
html.sandbox-lp-page .lp-final-in { position: relative; z-index: 1; max-width: 900px; }
html.sandbox-lp-page .lp-final-kicker { display: inline-flex; align-items: center; gap: 10px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--signal); font-weight: 700; }
html.sandbox-lp-page .lp-final-kicker .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--signal); }
html.sandbox-lp-page .lp-final-h2 { font-size: clamp(30px,4.2vw,52px); line-height: 1.06; letter-spacing: -0.025em; font-weight: 600; color: #ffffff; max-width: 20ch; margin: 18px 0 0; }
html.sandbox-lp-page .lp-final-sub { font-size: clamp(16px,1.5vw,20px); line-height: 1.55; color: rgba(234,237,242,0.72); max-width: 62ch; margin: 18px 0 0; }
html.sandbox-lp-page .lp-final-cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 32px 0 0; }


/* ============================================================
   LP: design enhancements (cards, reveals, hovers)  v2
   ============================================================ */

/* --- Stats strip (LP) : big animated numerals --- */
html.sandbox-lp-page .stats-strip { background: var(--paper); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
html.sandbox-lp-page .stats-display { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; padding: clamp(40px,5vw,64px) 0; }
html.sandbox-lp-page .stats-display .stat-cell { padding: 0 clamp(20px,2.4vw,36px); border-right: 1px solid var(--rule); display: flex; flex-direction: column; gap: 16px; }
html.sandbox-lp-page .stats-display .stat-cell:last-child { border-right: 0; }
html.sandbox-lp-page .stats-display .stat-num { font-family: var(--sans); font-size: clamp(38px,6vw,84px); font-weight: 500; letter-spacing: -0.03em; line-height: 0.9; color: var(--ink); display: block; font-feature-settings: "tnum"; }
html.sandbox-lp-page .stats-display .stat-num .sup { font-size: 0.42em; color: var(--signal-deep); vertical-align: top; font-weight: 400; margin-left: 4px; letter-spacing: 0; }
html.sandbox-lp-page .stats-display .stat-lbl { font-family: var(--mono); font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; color: var(--steel-3); line-height: 1.5; }
@media (max-width: 820px) {
  html.sandbox-lp-page .stats-display { grid-template-columns: repeat(2, 1fr); row-gap: 40px; }
  html.sandbox-lp-page .stats-display .stat-cell:nth-child(2) { border-right: 0; }
}
@media (max-width: 500px) { html.sandbox-lp-page .stats-display { grid-template-columns: 1fr; row-gap: 28px; } html.sandbox-lp-page .stats-display .stat-cell { border-right: 0; } }

/* --- The Why cards : richer reveal + hover --- */
html.sandbox-lp-page .lp-why-card { transition: transform 340ms var(--ease), box-shadow 340ms var(--ease), border-color 340ms var(--ease); }
html.sandbox-lp-page .lp-why-card::before { transform: scaleX(0); transform-origin: left; transition: transform 420ms var(--ease); }
html.sandbox-lp-page .lp-why-card.in::before { transform: scaleX(1); }
html.sandbox-lp-page .lp-why-card:hover { transform: translateY(-6px); box-shadow: 0 22px 46px -26px rgba(10,26,44,0.34); border-color: var(--rule-strong); }
html.sandbox-lp-page .lp-why-card:hover::before { height: 5px; }
html.sandbox-lp-page .lp-why-n { display: inline-block; transition: transform 340ms var(--ease); }
html.sandbox-lp-page .lp-why-card:hover .lp-why-n { transform: translateX(3px); }
html.sandbox-lp-page .lp-why-card.reveal { opacity: 0; transform: translateY(42px) scale(0.965); transition: opacity 700ms cubic-bezier(0.2,0.7,0.2,1), transform 700ms cubic-bezier(0.2,0.7,0.2,1); }
html.sandbox-lp-page .lp-why-card.reveal.in { opacity: 1; transform: none; transition: transform 340ms var(--ease), box-shadow 340ms var(--ease), border-color 340ms var(--ease); }
html.sandbox-lp-page .lp-why-grid .lp-why-card:nth-of-type(1).reveal { transition-delay: 0ms; }
html.sandbox-lp-page .lp-why-grid .lp-why-card:nth-of-type(2).reveal { transition-delay: 110ms; }
html.sandbox-lp-page .lp-why-grid .lp-why-card:nth-of-type(3).reveal { transition-delay: 220ms; }

/* --- Core areas : interactive cells --- */
html.sandbox-lp-page .lp-core-item { position: relative; transition: background 260ms var(--ease), color 260ms var(--ease); }
html.sandbox-lp-page .lp-core-item::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--signal); transform: scaleY(0); transform-origin: top; transition: transform 300ms var(--ease); }
html.sandbox-lp-page .lp-core-item:hover { background: var(--paper-2); }
html.sandbox-lp-page .lp-core-item:hover::after { transform: scaleY(1); }
html.sandbox-lp-page .lp-core-dot { transition: transform 300ms var(--ease), background 260ms var(--ease); }
html.sandbox-lp-page .lp-core-item:hover .lp-core-dot { transform: rotate(45deg) scale(1.25); background: var(--signal-deep); }

/* --- How cards : badge + accent motion --- */
html.sandbox-lp-page .lp-how-card { position: relative; overflow: hidden; }
html.sandbox-lp-page .lp-how-card::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--signal); transform: scaleX(0); transform-origin: left; transition: transform 380ms var(--ease); }
html.sandbox-lp-page .lp-how-card:hover::before { transform: scaleX(1); }
html.sandbox-lp-page .lp-how-badge { transition: background 260ms var(--ease), transform 260ms var(--ease); }
html.sandbox-lp-page .lp-how-card:hover .lp-how-badge { background: var(--signal-deep); color: #fff; transform: translateY(-2px); }
html.sandbox-lp-page .lp-how-grid .lp-how-card:nth-of-type(2).reveal { transition-delay: 90ms; }
html.sandbox-lp-page .lp-how-grid .lp-how-card:nth-of-type(3).reveal { transition-delay: 180ms; }

/* --- Reference cards : lift + index accent --- */
html.sandbox-lp-page .lp-ref-card { position: relative; transition: transform 340ms var(--ease), box-shadow 340ms var(--ease), border-color 340ms var(--ease); }
html.sandbox-lp-page .lp-ref-card::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--warm); transform: scaleY(0); transform-origin: top; transition: transform 380ms var(--ease); }
html.sandbox-lp-page .lp-ref-card:hover { transform: translateY(-5px); box-shadow: 0 26px 52px -30px rgba(10,26,44,0.38); border-color: var(--rule-strong); }
html.sandbox-lp-page .lp-ref-card:hover::before { transform: scaleY(1); }
html.sandbox-lp-page .lp-ref-idx { transition: transform 340ms var(--ease); }
html.sandbox-lp-page .lp-ref-card:hover .lp-ref-idx { transform: translateX(4px); }
html.sandbox-lp-page .lp-ref-list .lp-ref-card:nth-of-type(2).reveal { transition-delay: 100ms; }
html.sandbox-lp-page .lp-ref-list .lp-ref-card:nth-of-type(3).reveal { transition-delay: 200ms; }
html.sandbox-lp-page .lp-ref-more { position: relative; }
html.sandbox-lp-page .lp-ref-more::after { content: "\2192"; margin-left: 8px; display: inline-block; transition: transform 240ms var(--ease); }
html.sandbox-lp-page .lp-ref-more:hover::after { transform: translateX(4px); }

/* --- Client logos : subtle lift --- */
html.sandbox-lp-page .lp-client { display: inline-flex; transition: transform 240ms var(--ease); }
html.sandbox-lp-page .lp-client:hover { transform: translateY(-3px); }
html.sandbox-lp-page .lp-client img { transition: opacity 240ms var(--ease), filter 240ms var(--ease); }

/* --- Final CTA buttons : arrow affordance --- */
html.sandbox-lp-page .lp-final-cta .btn { position: relative; }
html.sandbox-lp-page .lp-final-cta .btn-signal::after { content: "\2192"; margin-left: 4px; display: inline-block; transition: transform 240ms var(--ease); }
html.sandbox-lp-page .lp-final-cta .btn-signal:hover::after { transform: translateX(4px); }

@media (prefers-reduced-motion: reduce) {
  html.sandbox-lp-page .lp-why-card, html.sandbox-lp-page .lp-ref-card, html.sandbox-lp-page .lp-how-card, html.sandbox-lp-page .lp-client, html.sandbox-lp-page .lp-core-item { transition: none; }
  html.sandbox-lp-page .lp-why-card:hover, html.sandbox-lp-page .lp-ref-card:hover, html.sandbox-lp-page .lp-client:hover { transform: none; }
}


/* LP: Kontakt (centred close) */
html.sandbox-lp-page .lp-contact { background: var(--paper); border-top: 1px solid var(--rule); text-align: center; padding: clamp(64px,9vw,120px) 0; }
html.sandbox-lp-page .lp-contact-in { max-width: 760px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; }
html.sandbox-lp-page .lp-contact-kicker { display: inline-flex; align-items: center; gap: 10px; font-family: var(--mono); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--warm); font-weight: 700; }
html.sandbox-lp-page .lp-contact-kicker .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--warm); }
html.sandbox-lp-page .lp-contact-h2 { font-size: clamp(30px,4.4vw,54px); line-height: 1.05; letter-spacing: -0.025em; font-weight: 600; color: var(--ink); margin: 18px 0 0; }
html.sandbox-lp-page .lp-contact-lede { font-size: clamp(16px,1.5vw,19px); line-height: 1.6; color: var(--steel-2); max-width: 60ch; margin: 18px auto 0; }
html.sandbox-lp-page .lp-contact-cta { margin: 34px 0 0; }
html.sandbox-lp-page .lp-contact-cta .btn { padding: 15px 26px; font-size: 15px; }
html.sandbox-lp-page .lp-contact-cta .btn-ink::after { content: "\2192"; margin-left: 6px; display: inline-block; transition: transform 240ms var(--ease); }
html.sandbox-lp-page .lp-contact-cta .btn-ink:hover::after { transform: translateX(4px); }
html.sandbox-lp-page .lp-contact-mail { display: inline-block; margin: 24px 0 0; font-family: var(--mono); font-size: 13px; letter-spacing: 0.04em; color: var(--steel-1); border-bottom: 1px solid var(--rule-strong); padding-bottom: 3px; text-decoration: none; transition: color 200ms var(--ease), border-color 200ms var(--ease); }
html.sandbox-lp-page .lp-contact-mail:hover { color: var(--signal-deep); border-color: var(--signal-deep); }


/* LP: flagship split restore (undo the flattened 'migrated' overrides, bring back homepage CT-right / text-left) */
@media (min-width: 900px) {
  html.sandbox-lp-page .fc-card .fc-hero { position: relative; overflow: hidden; min-height: 480px; display: flex; align-items: center; }
  html.sandbox-lp-page .fc-card .fc-ct-layer { position: absolute; top: 0; right: 0; bottom: 0; left: 40%; height: auto; border-bottom: 0; background: radial-gradient(120% 150% at 62% 34%, #FFFFFF 0%, #F2F5F9 58%, #E7ECF2 100%); }
  html.sandbox-lp-page .fc-card .fc-scrim { display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 40%; z-index: 2; background: linear-gradient(80deg, #FFFFFF 0%, #FFFFFF 5%, rgba(244,247,250,0.55) 35%, transparent 55%); }
  html.sandbox-lp-page .fc-card .fc-hero-in { position: relative; z-index: 3; padding: clamp(34px, 4.4vw, 64px); width: 100%; }
  html.sandbox-lp-page .fc-card .fc-hero-col { max-width: 650px; gap: 17px; }
  html.sandbox-lp-page .fc-card .fc-ovl.fc-brr { display: block; right: 18px; bottom: 16px; }
}
html.sandbox-lp-page .fc-card .fc-region { display: block; }


/* LP: hero deck + stronger reveal */
html.sandbox-lp-page .lp-hero-deck { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 44px 0 0; }
@media (max-width: 820px) { html.sandbox-lp-page .lp-hero-deck { grid-template-columns: 1fr; } }
html.sandbox-lp-page .lp-hdeck-card { position: relative; border: 1px solid var(--rule-strong); background: #fff; padding: 24px 22px 22px; overflow: hidden; transition: transform 340ms var(--ease), box-shadow 340ms var(--ease), border-color 340ms var(--ease); }
html.sandbox-lp-page .lp-hdeck-card::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--warm); transform: scaleX(0); transform-origin: left; transition: transform 420ms var(--ease); }
html.sandbox-lp-page .lp-hdeck-card.in::before { transform: scaleX(1); }
html.sandbox-lp-page .lp-hdeck-card:hover { transform: translateY(-6px); box-shadow: 0 24px 48px -26px rgba(10,26,44,0.36); }
html.sandbox-lp-page .lp-hdeck-n { font-family: var(--mono); font-size: 12px; letter-spacing: 0.2em; color: var(--warm); font-weight: 700; }
html.sandbox-lp-page .lp-hdeck-card h3 { font-size: 17px; letter-spacing: -0.01em; color: var(--ink); margin: 12px 0 0; }
html.sandbox-lp-page .lp-hdeck-card p { font-size: 14px; line-height: 1.55; color: var(--steel-1); margin: 8px 0 0; }

/* stronger, clearly visible hero text reveal */
html.sandbox-lp-page .lp-hero-in > [data-reveal].reveal { opacity: 0; transform: translateY(30px); transition: opacity 680ms cubic-bezier(0.2,0.7,0.2,1), transform 680ms cubic-bezier(0.2,0.7,0.2,1); }
html.sandbox-lp-page .lp-hero-in > [data-reveal].reveal.in { opacity: 1; transform: none; }
html.sandbox-lp-page .lp-hdeck-card.reveal { opacity: 0; transform: translateY(34px) scale(0.97); transition: opacity 700ms cubic-bezier(0.2,0.7,0.2,1), transform 700ms cubic-bezier(0.2,0.7,0.2,1); }
html.sandbox-lp-page .lp-hdeck-card.reveal.in { opacity: 1; transform: none; transition: transform 340ms var(--ease), box-shadow 340ms var(--ease), border-color 340ms var(--ease); }
html.sandbox-lp-page .lp-hero-deck .lp-hdeck-card:nth-of-type(2).reveal { transition-delay: 100ms; }
html.sandbox-lp-page .lp-hero-deck .lp-hdeck-card:nth-of-type(3).reveal { transition-delay: 200ms; }
@media (prefers-reduced-motion: reduce) {
  html.sandbox-lp-page .lp-hdeck-card:hover { transform: none; }
}


/* jobs page: C2 Hungarian requirement card (light, full-width, EN/DE); list only on HU */
html.sandbox-jobs-page .roles-note { position: relative; overflow: hidden; margin: clamp(30px,4vw,52px) 0 0; background: #fff; border: 1px solid var(--rule-strong,rgba(10,26,44,0.18)); padding: clamp(32px,4vw,52px); box-shadow: 0 30px 60px -44px rgba(10,26,44,0.4); }
html.sandbox-jobs-page .roles-note::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: linear-gradient(90deg, var(--warm,#C9663A) 0%, var(--warm,#C9663A) 44%, var(--signal,#1FB6E0) 44%, var(--signal,#1FB6E0) 100%); }
html.sandbox-jobs-page .roles-note::after { content: ""; position: absolute; right: -70px; bottom: -70px; width: 220px; height: 220px; border: 1px solid rgba(31,182,224,0.16); border-radius: 50%; pointer-events: none; }
html.sandbox-jobs-page .roles-note-top { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
html.sandbox-jobs-page .roles-note-kicker { font-family: var(--mono,'JetBrains Mono',monospace); font-size: 11px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--warm,#C9663A); font-weight: 700; }
html.sandbox-jobs-page .roles-note-badge { font-family: var(--mono,'JetBrains Mono',monospace); font-size: 12px; font-weight: 700; letter-spacing: 0.1em; color: var(--signal-deep,#0D97D7); border: 1px solid var(--signal,#1FB6E0); background: rgba(31,182,224,0.08); padding: 4px 11px; }
html.sandbox-jobs-page .roles-note-text { position: relative; font-size: clamp(17px,1.7vw,23px); line-height: 1.5; letter-spacing: -0.012em; color: var(--ink,#0A1A2C); margin: 18px 0 0; max-width: 60ch; }
html.sandbox-jobs-page .roles-note-link { position: relative; display: inline-flex; align-items: center; gap: 8px; margin: 24px 0 0; font-family: var(--mono,'JetBrains Mono',monospace); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink,#0A1A2C); border-bottom: 1px solid currentColor; padding-bottom: 3px; text-decoration: none; }
html.sandbox-jobs-page .roles-note-link:hover { color: var(--signal-deep,#0D97D7); }
html.sandbox-jobs-page .roles-note-link .arr { transition: transform 240ms var(--ease,cubic-bezier(0.2,0.8,0.2,1)); }
html.sandbox-jobs-page .roles-note-link:hover .arr { transform: translateX(4px); }


/* Silurus cookie consent */
.slr-cc{position:fixed;left:0;right:0;bottom:0;z-index:9999;transform:translateY(115%);transition:transform .42s cubic-bezier(.2,.8,.2,1);background:#fff;border-top:3px solid #C9663A;box-shadow:0 -22px 55px -32px rgba(10,26,44,.55);font-family:'Inter',system-ui,-apple-system,sans-serif;}
.slr-cc.is-open{transform:none;}
.slr-cc-in{max-width:1480px;margin:0 auto;padding:20px clamp(20px,4vw,56px);display:flex;align-items:center;gap:clamp(16px,3vw,40px);flex-wrap:wrap;}
.slr-cc-txt{flex:1 1 400px;min-width:260px;}
.slr-cc-kick{display:block;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:#C9663A;font-weight:700;margin-bottom:6px;}
.slr-cc-txt p{margin:0;font-size:14px;line-height:1.55;color:#3a4654;max-width:82ch;}
.slr-cc-opts{display:flex;gap:24px;flex-wrap:wrap;flex:1 1 100%;order:3;padding:2px 0;}
.slr-cc-opts label{display:inline-flex;align-items:center;gap:8px;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12.5px;letter-spacing:.02em;color:#0A1A2C;cursor:pointer;}
.slr-cc-opts input{accent-color:#1FB6E0;width:15px;height:15px;}
.slr-cc-btns{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.slr-cc-link{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#0A1A2C;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px;margin-right:6px;}
.slr-cc-link:hover{color:#0D97D7;}
.slr-cc-b{font-family:'Inter',system-ui,sans-serif;font-size:13px;font-weight:500;padding:11px 18px;border:1px solid #0A1A2C;background:transparent;color:#0A1A2C;cursor:pointer;border-radius:0;transition:background .2s,color .2s,border-color .2s;}
.slr-cc-b:hover{background:#0A1A2C;color:#fff;}
.slr-cc-acc{background:#1FB6E0;border-color:#1FB6E0;color:#0A1A2C;}
.slr-cc-acc:hover{background:#0D97D7;border-color:#0D97D7;color:#fff;}
@media(max-width:640px){.slr-cc-btns{width:100%;}.slr-cc-b{flex:1;text-align:center;}.slr-cc-link{width:100%;margin:0 0 4px;}}

/* cookie policy: open-prefs button */
.legal-body .cc-open{display:inline-flex;align-items:center;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#0A1A2C;border:1px solid #0A1A2C;padding:11px 18px;text-decoration:none;transition:background .2s,color .2s,border-color .2s;}
.legal-body .cc-open:hover{background:#1FB6E0;border-color:#1FB6E0;color:#0A1A2C;}


/* LP: video hero (homepage style) */
html.sandbox-lp-page .hero.lp-herov { padding-top: clamp(118px,15vh,150px); padding-bottom: clamp(52px,7vw,84px); min-height: 72vh; border-bottom: 1px solid var(--rule-strong); }
html.sandbox-lp-page .lp-herov .hero-inner { position: relative; z-index: 3; }
html.sandbox-lp-page .lp-herov .lp-kicker { color: var(--warm); }
html.sandbox-lp-page .lp-herov .lp-h1 { color: #ffffff; max-width: 20ch; }
html.sandbox-lp-page .lp-herov .lp-sub { color: rgba(234,237,242,0.82); }
html.sandbox-lp-page .lp-herov .lp-cta-row { margin-top: 30px; }
/* intro band: deck + interview moved out of hero */
html.sandbox-lp-page .lp-intro { background: var(--paper); border-bottom: 1px solid var(--rule); }
html.sandbox-lp-page .lp-intro .lp-hero-deck { margin: 0; }
html.sandbox-lp-page .lp-intro .lp-interview { margin: clamp(28px,3.5vw,44px) 0 0; }


/* LP: hero height + light topbar (dark video hero) */
html.sandbox-lp-page .hero.lp-herov { min-height: 52vh; padding-top: clamp(102px,12vh,126px); padding-bottom: clamp(40px,5vw,60px); }
html.sandbox-lp-page .lp-topbar .lp-brand img { height: 80px; }
html.sandbox-lp-page .lp-topbar .lp-lang a { color: rgba(234,237,242,0.72); }
html.sandbox-lp-page .lp-topbar .lp-lang a.is-active { color: #ffffff; }
html.sandbox-lp-page .lp-topbar .lp-lang a:hover { color: #ffffff; }
html.sandbox-lp-page .lp-topbar .lp-back { color: rgba(234,237,242,0.82); }
html.sandbox-lp-page .lp-topbar .lp-back:hover { color: #ffffff; }


/* LP: topbar aligned to wrap (content width, not window edges) */
html.sandbox-lp-page .lp-topbar { display: block; padding: 14px 0; }
html.sandbox-lp-page .lp-topbar .lp-topbar-in { display: flex; align-items: center; justify-content: space-between; }
html.sandbox-lp-page .lp-topbar .lp-brand img { height: 92px; width: auto; }


/* LP: trustblock port (partners + testimonials, homepage look) */
html.sandbox-lp-page .lp-trustblock { position: relative; overflow: hidden; }
html.sandbox-lp-page .lp-trustblock .lbl { letter-spacing: 0.22em; font-size: 14px; font-weight: 700; color: var(--warm); }
html.sandbox-lp-page .lp-tb-wave { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.5; pointer-events: none; mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 90%, transparent 100%); -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 10%, #000 90%, transparent 100%); }
html.sandbox-lp-page .lp-trustblock .partners, html.sandbox-lp-page .lp-trustblock .testimonials { position: relative; z-index: 1; }
html.sandbox-lp-page .trustblock .testimonials {
  background: transparent ;
 position: relative;
 z-index: 1;
}
html.sandbox-lp-page .trustblock .testimonials > .wrap {
  position: relative; z-index: 1;
}
html.sandbox-lp-page .trustblock .testimonials .tst {
  background: transparent;
 box-shadow: none;
}
html.sandbox-lp-page .trustblock .testimonials h2 {
  color: var(--steel-1) ;
}
html.sandbox-lp-page .trustblock .testimonials .lbl {
  font-size: 14px ; font-weight: 700 ; color: var(--warm) ;
}
html.sandbox-lp-page .testimonials .tst-grid {
  display: grid ;
 grid-template-columns: 1fr ;
 column-gap: clamp(28px, 5vw, 72px) ;
 row-gap: 0 ;
}
html.sandbox-lp-page .testimonials .tst {
  grid-column: 1 ;
 background: transparent ;
 border: 0 ;
 padding: 48px 0 ;
 border-bottom: 1px solid var(--rule-strong) ;
 max-width: none;
}
html.sandbox-lp-page .testimonials .tst-grid {
  grid-template-columns: 1fr ;
}
html.sandbox-lp-page .testimonials .tst {
  grid-column: 1 ;
}
html.sandbox-lp-page .testimonials .tst:last-child {
  border-bottom: 0 ;
}
html.sandbox-lp-page .testimonials .tst-quote {
  font-family: var(--sans) ;
 font-size: clamp(15px, 1.7vw, 22px) ;
 font-weight: 500 ;
 line-height: 1.45 ;
 letter-spacing: -0.005em ;
 color: var(--steel-1) ;
 position: relative;
 padding-left: 0 ;
 margin-top: 56px ;
 text-shadow: none ;
}
html.sandbox-lp-page .testimonials .tst-quote::before {
  content: "\201C";
 position: absolute;
 left: 0; top: -56px;
 font-family: Georgia, "Times New Roman", serif;
 font-size: 72px;
 line-height: 1;
 color: var(--signal-deep);
 opacity: 0.85;
}
html.sandbox-lp-page .testimonials .tst-foot {
  padding-left: 0 ;
}
html.sandbox-lp-page .testimonials .tst-quote::after {
  content: none ;
}
html.sandbox-lp-page .testimonials .tst-foot {
  margin-top: 28px;
 padding-left: 36px;
 display: flex ;
 flex-direction: column ;
 gap: 4px;
 border-top: 0 ;
}
html.sandbox-lp-page .testimonials .tst-name {
  font-family: var(--sans) ;
 font-size: 16px ;
 font-weight: 600 ;
 color: var(--steel-1) ;
}
html.sandbox-lp-page .testimonials .tst-role {
  font-family: var(--mono) ;
 font-size: 11px ;
 letter-spacing: 0.18em ;
 text-transform: uppercase;
 color: var(--steel-3) ;
}
/* fix: re-enable interaction on partners + testimonials content (was killed by pointer-events:none) */
html.sandbox-lp-page .trustblock .partners > .wrap,
html.sandbox-lp-page .trustblock .testimonials > .wrap { pointer-events: auto; }
/* partner logo hover: white bg, blue thicker frame, slight lift (no grey) */
html.sandbox-lp-page .trustblock .partner-logo {
  position: relative;
  transition: transform 220ms var(--ease), box-shadow 220ms var(--ease), border-color 220ms var(--ease);
}
html.sandbox-lp-page .trustblock .partner-logo:hover {
  background: #FFFFFF;
  border-color: var(--signal-deep);
  box-shadow: inset 0 0 0 1px var(--signal-deep);
  transform: translateY(-3px);
  z-index: 2;
}
html.sandbox-lp-page .trustblock .partner-logo {
    padding: 18px 10px;
    min-height: 88px;
    min-width: 0;
  }
html.sandbox-lp-page .trustblock .partner-logo img {
    max-width: 100%;
  }


/* LP: engage port (homepage engagement models + particles bg) */
html.sandbox-lp-page section#engage { position: relative; background: var(--paper); }
html.sandbox-lp-page section#engage .particles-bg { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
html.sandbox-lp-page section#engage > .wrap { position: relative; z-index: 1; }
html.sandbox-lp-page section#engage .lbl { color: var(--warm); letter-spacing: 0.22em; font-size: 14px; font-weight: 700; }


/* LP: testimonials width fix (restore homepage desktop indent; mobile 1-col was applied unconditionally by an earlier port) */
html.sandbox-lp-page .testimonials .tst-grid { grid-template-columns: 1fr; column-gap: clamp(28px, 5vw, 72px); row-gap: 0; }
html.sandbox-lp-page .testimonials .tst { grid-column: 1; }
@media (max-width: 720px) {
  html.sandbox-lp-page .testimonials .tst-grid { grid-template-columns: 1fr; }
  html.sandbox-lp-page .testimonials .tst { grid-column: 1; }
}


/* LP: partners 4-up full-width, responsive 2 then 1 */
html.sandbox-lp-page .lp-trustblock .partners-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px,2vw,28px); width: 100%; align-items: stretch; }
html.sandbox-lp-page .lp-trustblock .partner-logo { display: flex; align-items: center; justify-content: center; }
html.sandbox-lp-page .lp-trustblock .partner-logo img { max-width: 100%; height: auto; }
@media (max-width: 820px) { html.sandbox-lp-page .lp-trustblock .partners-row { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 480px) { html.sandbox-lp-page .lp-trustblock .partners-row { grid-template-columns: 1fr; } }

/* LP: cases port (from services/medical-software-development) */
html.sandbox-lp-page .cases .case-card {
  position: relative;
 transition:
 background 280ms var(--ease),
 transform 340ms var(--ease),
 box-shadow 340ms var(--ease),
 border-color 340ms var(--ease);
}
html.sandbox-lp-page .cases .case-card .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  stroke-dasharray: 620;
 stroke-dashoffset: 620;
}
html.sandbox-lp-page .cases .case-card.reveal.in .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  stroke-dashoffset: 0;
 animation: caseDraw 2000ms cubic-bezier(.45, 0, .15, 1) both;
}
html.sandbox-lp-page .cases .case-card:nth-child(2).reveal.in .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  animation-delay: 160ms;
}
html.sandbox-lp-page .cases .case-card:nth-child(3).reveal.in .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  animation-delay: 120ms;
}
html.sandbox-lp-page .cases .case-card:nth-child(4).reveal.in .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  animation-delay: 280ms;
}
html.sandbox-lp-page .cases .case-card:nth-child(5).reveal.in .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  animation-delay: 220ms;
}
html.sandbox-lp-page .cases .case-card .case-illus svg text {
  opacity: 0; transition: opacity 600ms var(--ease);
}
html.sandbox-lp-page .cases .case-card.reveal.in .case-illus svg text {
  opacity: 1; transition-delay: 1150ms;
}
html.sandbox-lp-page .cases .case-card.reveal.in:hover {
  transform: translateY(-5px);
 background: var(--paper-2);
 box-shadow: 0 22px 48px -30px rgba(10, 26, 44, 0.55);
 border-color: var(--rule-strong);
 z-index: 2;
}
html.sandbox-lp-page .cases .case-card.reveal.in:hover .case-illus .acc-stroke {
  animation: caseAccPulse 1100ms var(--ease) 1;
}
@media (prefers-reduced-motion: reduce) {
html.sandbox-lp-page .cases .case-card .case-illus svg :is(line, html.sandbox-lp-page rect, html.sandbox-lp-page circle, html.sandbox-lp-page path, html.sandbox-lp-page polyline, html.sandbox-lp-page polygon) {
  stroke-dasharray: none;
 stroke-dashoffset: 0;
}
html.sandbox-lp-page .cases .case-card .case-illus svg text {
  opacity: 1;
}
}


/* LP: hero trust strip (compact, dark) */
html.sandbox-lp-page .lp-herov .lp-hero-deck { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: clamp(30px,4vw,44px) 0 0; border-top: 1px solid var(--rule-dark-strong,rgba(255,255,255,0.2)); }
html.sandbox-lp-page .lp-herov .lp-hdeck-card { background: transparent; border: 0; border-left: 1px solid var(--rule-dark-strong,rgba(255,255,255,0.2)); padding: 20px 22px 0; overflow: visible; }
html.sandbox-lp-page .lp-herov .lp-hdeck-card:first-child { border-left: 0; padding-left: 0; }
html.sandbox-lp-page .lp-herov .lp-hdeck-card::before { display: none; }
html.sandbox-lp-page .lp-herov .lp-hdeck-card:hover { transform: none; box-shadow: none; }
html.sandbox-lp-page .lp-herov .lp-hdeck-n { color: var(--signal,#1FB6E0); }
html.sandbox-lp-page .lp-herov .lp-hdeck-card h3 { color: #fff; font-size: 15px; letter-spacing: -0.01em; margin: 10px 0 0; }
html.sandbox-lp-page .lp-herov .lp-hdeck-card p { color: rgba(234,237,242,0.72); font-size: 12.5px; line-height: 1.5; margin: 6px 0 0; }
@media (max-width: 760px) {
  html.sandbox-lp-page .lp-herov .lp-hero-deck { grid-template-columns: 1fr; }
  html.sandbox-lp-page .lp-herov .lp-hdeck-card { border-left: 0; border-top: 1px solid var(--rule-dark-strong,rgba(255,255,255,0.2)); padding: 18px 0 0; }
  html.sandbox-lp-page .lp-herov .lp-hdeck-card:first-child { border-top: 0; padding-top: 0; }
}


/* LP: hero trust box (dark) */
html.sandbox-lp-page .lp-herov .lp-trust { margin: clamp(30px,4vw,44px) 0 0; border: 1px solid var(--rule-dark-strong,rgba(255,255,255,0.2)); background: rgba(10,26,44,0.35); padding: 24px 28px; max-width: none; }
html.sandbox-lp-page .lp-herov .lp-trust-title { color: var(--warm,#C9663A); }
html.sandbox-lp-page .lp-herov .lp-trust-list li { color: rgba(234,237,242,0.86); }
html.sandbox-lp-page .lp-herov .lp-trust-list li::before { background: var(--signal,#1FB6E0); }


/* LP: hero trust variants (compare V1/V2/V3) */
html.sandbox-lp-page .lp-herov .lp-tv { margin: 32px 0 0; }
html.sandbox-lp-page .lp-herov .lp-tv-tag { display:inline-block; font-family:var(--mono); font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:var(--warm,#C9663A); border:1px solid var(--rule-dark-strong,rgba(255,255,255,.28)); padding:3px 8px; margin:0 0 14px; }
html.sandbox-lp-page .lp-herov .lp-abg-title { display:block; font-family:var(--mono); font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; color:rgba(234,237,242,.6); margin:0 0 14px; }
/* V1 */
html.sandbox-lp-page .lp-tv1 { border-top:1px solid var(--rule-dark-strong,rgba(255,255,255,.2)); padding-top:20px; }
html.sandbox-lp-page .lp-abg1-list { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; column-gap:44px; row-gap:12px; }
@media(max-width:760px){ html.sandbox-lp-page .lp-abg1-list{ grid-template-columns:1fr; } }
html.sandbox-lp-page .lp-abg1-list li { position:relative; padding-left:20px; font-size:14px; line-height:1.5; color:rgba(234,237,242,.86); }
html.sandbox-lp-page .lp-abg1-list li::before { content:"\25B8"; position:absolute; left:0; top:0; color:var(--signal,#1FB6E0); }
/* V2 */
html.sandbox-lp-page .lp-spec { display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--rule-dark-strong,rgba(255,255,255,.2)); border-bottom:1px solid var(--rule-dark-strong,rgba(255,255,255,.2)); }
@media(max-width:760px){ html.sandbox-lp-page .lp-spec{ grid-template-columns:1fr 1fr; } }
html.sandbox-lp-page .lp-spec-i { padding:16px 18px; border-left:1px solid var(--rule-dark-strong,rgba(255,255,255,.14)); display:flex; flex-direction:column; gap:5px; }
html.sandbox-lp-page .lp-spec-i:first-child{ border-left:0; padding-left:0; }
html.sandbox-lp-page .lp-spec-i b { font-size:16px; font-weight:600; color:#fff; letter-spacing:-.01em; }
html.sandbox-lp-page .lp-spec-i span { font-family:var(--mono); font-size:10.5px; letter-spacing:.04em; line-height:1.4; color:rgba(234,237,242,.62); }
/* V3 */
html.sandbox-lp-page .lp-panel { border:1px solid var(--rule-dark-strong,rgba(255,255,255,.22)); background:rgba(6,16,28,.5); padding:22px 26px; max-width:640px; }
html.sandbox-lp-page .lp-panel-row { display:flex; gap:16px; align-items:baseline; padding:12px 0; border-top:1px solid var(--rule-dark-strong,rgba(255,255,255,.12)); }
html.sandbox-lp-page .lp-panel .lp-panel-row:first-of-type{ border-top:0; }
html.sandbox-lp-page .lp-panel-n { font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:.14em; color:var(--signal,#1FB6E0); flex:none; }
html.sandbox-lp-page .lp-panel-row p { margin:0; font-size:13.5px; line-height:1.5; color:rgba(234,237,242,.86); }


/* LP: hero trust variants CONTRAST (stronger, readable on dark video) */
html.sandbox-lp-page .lp-herov .lp-tv { margin: 34px 0 0; }
/* V1 editorial */
html.sandbox-lp-page .lp-tv1 { border-top: 2px solid var(--signal,#1FB6E0); padding-top: 22px; }
html.sandbox-lp-page .lp-abg1-list li { color: #EAF2F6; }
html.sandbox-lp-page .lp-abg1-list li::before { content: "\25B8"; color: var(--signal,#1FB6E0); font-size: 12px; }
/* V2 spec bar */
html.sandbox-lp-page .lp-spec { border-top: 2px solid rgba(255,255,255,0.55); border-bottom: 1px solid rgba(255,255,255,0.30); background: rgba(255,255,255,0.04); }
html.sandbox-lp-page .lp-spec-i { border-left: 1px solid rgba(255,255,255,0.30); }
html.sandbox-lp-page .lp-spec-i:first-child { border-left: 0; }
html.sandbox-lp-page .lp-spec-i b { color: #fff; }
html.sandbox-lp-page .lp-spec-i span { color: rgba(234,237,242,0.82); }
/* V3 glass panel */
html.sandbox-lp-page .lp-panel { border: 1px solid rgba(255,255,255,0.40); background: rgba(6,16,28,0.82); box-shadow: 0 24px 60px -30px rgba(0,0,0,0.6); }
html.sandbox-lp-page .lp-panel-row { border-top: 1px solid rgba(255,255,255,0.16); }
html.sandbox-lp-page .lp-panel-row p { color: #EAF2F6; }
html.sandbox-lp-page .lp-tv-tag { color: #fff; border-color: var(--signal,#1FB6E0); background: rgba(31,182,224,0.15); }

/* testimonials final: home keeps animated bg, LP solid; card white already set on .tst */
html.sandbox-home-page .trustblock .testimonials { background: transparent; }
html.sandbox-lp-page .trustblock .testimonials { background: #ffffff; padding-top: clamp(48px, 6vw, 88px); }
html.sandbox-lp-page .trustblock .testimonials .tst-quote { font-size: clamp(13px, 1.05vw, 16px); line-height: 1.55; }

/* LP: challenge cards as vA deck-stack (ported from homepage #why) */
html.sandbox-lp-page .lp-why .vA-grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 1fr; gap: clamp(24px, 2.6vw, 40px); margin-top: clamp(24px, 3vw, 44px); }
@media (max-width: 980px) { html.sandbox-lp-page .lp-why .vA-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 620px) { html.sandbox-lp-page .lp-why .vA-grid { grid-template-columns: 1fr; } }
html.sandbox-lp-page .lp-why .vA-card { position: relative; height: 100%; }
html.sandbox-lp-page .lp-why .vA-card::before, html.sandbox-lp-page .lp-why .vA-card::after { content: ""; position: absolute; inset: 0; background: var(--paper-2); border: 1px solid var(--rule); transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1); }
html.sandbox-lp-page .lp-why .vA-card::before { z-index: 1; transform: translate(8px, 8px); }
html.sandbox-lp-page .lp-why .vA-card::after { z-index: 0; transform: translate(16px, 16px); opacity: 0.6; }
html.sandbox-lp-page .lp-why .vA-face { position: relative; z-index: 2; height: 100%; background: var(--paper); border: 1px solid var(--rule-strong); padding: 26px 26px 28px; min-height: 244px; display: flex; flex-direction: column; gap: 12px; box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5); transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1); }
html.sandbox-lp-page .lp-why .vA-card:hover .vA-face { transform: translate(-3px, -3px); box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5); }
html.sandbox-lp-page .lp-why .vA-card:hover::before { transform: translate(12px, 12px); }
html.sandbox-lp-page .lp-why .vA-card:hover::after { transform: translate(24px, 24px); opacity: 0.85; }
html.sandbox-lp-page .lp-why .vA-face h3 { font-size: 21px; font-weight: 600; letter-spacing: -0.022em; color: var(--ink); max-width: 16ch; margin-top: 4px; }
html.sandbox-lp-page .lp-why .vA-face p { font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0; }
html.sandbox-lp-page .lp-why .vA-icon { width: 40px; height: 40px; color: var(--signal-deep); align-self: flex-start; transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1); }
html.sandbox-lp-page .lp-why .vA-icon use { stroke: currentColor; stroke-width: 1.4; fill: none; }
html.sandbox-lp-page .lp-why .vA-card:hover .vA-icon { transform: translateY(-2px); color: var(--signal); }
@media (prefers-reduced-motion: reduce) { html.sandbox-lp-page .lp-why .vA-card:hover .vA-face, html.sandbox-lp-page .lp-why .vA-card:hover::before, html.sandbox-lp-page .lp-why .vA-card:hover::after, html.sandbox-lp-page .lp-why .vA-card:hover .vA-icon { transform: none; } }

/* LP: team top spacing tighten */
html.sandbox-lp-page .team.section-pad { padding-top: clamp(24px, 3vw, 40px); }

/* LP: cases bottom spacing tighten */
html.sandbox-lp-page .cases.section-pad { padding-bottom: clamp(12px, 1.5vw, 20px); }


/* ============================================================
   News page - static network background behind the news cards
   (seamless SVG tile, attachment 26526, zero runtime cost)
   ============================================================ */
html.sandbox-news-page .news-section {
  position: relative;
  background-color: #FFFFFF;
}
html.sandbox-news-page .news-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: url("/web/content/26526?v=2");
  background-size: 900px 900px;
  background-repeat: repeat;
  mask-image: linear-gradient(180deg, transparent 0, black 250px);
  -webkit-mask-image: linear-gradient(180deg, transparent 0, black 250px);
}
html.sandbox-news-page .news-section > .wrap {
  position: relative;
  z-index: 1;
}
html.sandbox-news-page .slr-about-hero.hero.hero-inner-page::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 140px;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #FFFFFF 100%);
}


/* News: cikkszamozas a kartya jobb felso sarkaban */
html.sandbox-news-page .news-item .news-num {
  position: absolute;
  top: 16px;
  right: 18px;
  z-index: 2;
  font-family: var(--mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.14em;
  color: var(--steel-3);
}

/* LP: editorial testimonials (handoff) */
html.sandbox-lp-page .lpt{background:#FFFFFF;padding:clamp(40px,5vw,80px) clamp(16px,3vw,24px);position:relative;z-index:1;}
html.sandbox-lp-page .lpt-card{max-width:var(--max);margin:0 auto;background:#FFFFFF;border:1px solid #E4EAF0;border-radius:0;padding:clamp(40px,5vw,80px);}
html.sandbox-lp-page .lpt-head{max-width:640px;margin-bottom:24px;}
html.sandbox-lp-page .lpt-eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#6B7E8F;}
html.sandbox-lp-page .lpt-title{font-family:var(--sans);font-weight:400;font-size:clamp(24px,3vw,30px);line-height:1.25;letter-spacing:-.015em;color:#18242E;margin:14px 0 0;text-wrap:balance;}
html.sandbox-lp-page .lpt-row{display:grid;grid-template-columns:190px 1fr;gap:56px;padding:48px 0;border-top:1px solid #ECF1F6;align-items:start;transition:transform 280ms cubic-bezier(0.16,1,0.3,1);}
html.sandbox-lp-page .lpt-index{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;}
html.sandbox-lp-page .lpt-icon.lpt-icon-ct{width:118px;height:118px;}
html.sandbox-lp-page .lpt-icon{width:118px;height:118px;color:var(--signal);display:block;}
html.sandbox-lp-page .lpt-num{font-family:var(--sans);font-weight:700;font-size:44px;line-height:1;color:var(--signal);}
html.sandbox-lp-page .lpt-tag{align-self:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#4E6171;border:1px solid #E4EAF0;padding:3px 8px;border-radius:4px;white-space:nowrap;}
html.sandbox-lp-page .lpt-quote{font-family:var(--sans);font-weight:400;font-size:clamp(19px,1.8vw,22px);line-height:1.55;letter-spacing:-.006em;color:#283540;margin:0;text-wrap:pretty;}
html.sandbox-lp-page .lpt-attr{display:flex;align-items:center;gap:12px;margin-top:26px;flex-wrap:wrap;}
html.sandbox-lp-page .lpt-name{font-family:var(--sans);font-weight:600;font-size:15px;color:#18242E;}
html.sandbox-lp-page .lpt-org{font-size:14px;color:#6B7E8F;font-family:var(--sans);}
@media (hover:hover){html.sandbox-lp-page .lpt-row:hover{transform:translateX(4px);}}
@media (max-width:760px){html.sandbox-lp-page .lpt-row{grid-template-columns:1fr;gap:20px;}html.sandbox-lp-page .lpt-index{flex-direction:row;align-items:center;gap:16px;}html.sandbox-lp-page .lpt-num{font-size:32px;}}
@media (prefers-reduced-motion:reduce){html.sandbox-lp-page .lpt-row{transition:none;}html.sandbox-lp-page .lpt-row:hover{transform:none;}}

/* LP: testimonial quote marks */
html.sandbox-lp-page .lpt-quote::before{content:"„";}
html.sandbox-lp-page .lpt-quote::after{content:"“";}

html.sandbox-svc-embedded-page section#why .vA-grid {
  display: grid ;
 grid-template-columns: repeat(3, 1fr) ;
 grid-auto-rows: 1fr ;
 gap: clamp(24px, 2.6vw, 40px) ;
 margin-top: clamp(24px, 3vw, 44px);
 border: 0 ;
}
@media (max-width: 980px) {
html.sandbox-svc-embedded-page section#why .vA-grid {
  grid-template-columns: 1fr 1fr ;
}
}
@media (max-width: 620px) {
html.sandbox-svc-embedded-page section#why .vA-grid {
  grid-template-columns: 1fr ;
}
}
html.sandbox-svc-embedded-page section#why .vA-card {
  position: relative; height: 100%;
}
html.sandbox-svc-embedded-page section#why .vA-card::before, html.sandbox-svc-embedded-page section#why .vA-card::after {
  content: ""; position: absolute; inset: 0;
 background: var(--paper-2);
 border: 1px solid var(--rule);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), opacity 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-embedded-page section#why .vA-card::before {
  z-index: 1; transform: translate(8px, 8px);
}
html.sandbox-svc-embedded-page section#why .vA-card::after {
  z-index: 0; transform: translate(16px, 16px); opacity: 0.6;
}
html.sandbox-svc-embedded-page section#why .vA-face {
  position: relative; z-index: 2; height: 100%;
 background: var(--paper);
 border: 1px solid var(--rule-strong);
 padding: 26px 26px 28px;
 min-height: 244px;
 display: flex; flex-direction: column; gap: 12px;
 box-shadow: 0 16px 34px -30px rgba(10,26,44,0.5);
 transition: transform 340ms cubic-bezier(0.2,0.7,0.2,1), box-shadow 340ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-embedded-page section#why .vA-card:hover .vA-face {
  transform: translate(-3px, -3px);
 box-shadow: 0 40px 60px -34px rgba(10,26,44,0.5);
}
html.sandbox-svc-embedded-page section#why .vA-card:hover::before {
  transform: translate(12px, 12px);
}
html.sandbox-svc-embedded-page section#why .vA-card:hover::after {
  transform: translate(24px, 24px); opacity: 0.85;
}
html.sandbox-svc-embedded-page section#why .vA-icon {
  width: 40px; height: 40px; color: var(--signal-deep);
 align-self: flex-start;
 transition: transform 320ms cubic-bezier(0.2,0.7,0.2,1), color 320ms cubic-bezier(0.2,0.7,0.2,1);
}
html.sandbox-svc-embedded-page section#why .vA-icon use {
  stroke: currentColor; stroke-width: 1.4; fill: none;
}
html.sandbox-svc-embedded-page section#why .vA-card:hover .vA-icon {
  transform: translateY(-2px); color: var(--signal);
}
html.sandbox-svc-embedded-page section#why .vA-face h3 {
  font-size: 21px; font-weight: 600; letter-spacing: -0.022em;
 color: var(--ink); max-width: 18ch; margin-top: 4px;
}
html.sandbox-svc-embedded-page section#why .vA-face p {
  font-size: 13.5px; line-height: 1.62; color: var(--steel-2); margin: 0;
}

/* embedded why-deck icon animations */
@keyframes slrDraw { 0%{stroke-dashoffset:46;opacity:0} 22%{opacity:1} 68%,100%{stroke-dashoffset:0;opacity:1} }
@keyframes slrPulse { 0%,100%{opacity:.28;transform:scale(.68)} 50%{opacity:1;transform:scale(1)} }
html.sandbox-svc-embedded-page section#why .vA-icon .draw{ stroke-dasharray:46; animation:slrDraw 3.4s ease-in-out infinite; }
html.sandbox-svc-embedded-page section#why .vA-icon .pulse{ transform-box:fill-box; transform-origin:center; animation:slrPulse 2.1s ease-in-out infinite; }
html.sandbox-svc-embedded-page section#why .vA-card:nth-of-type(2) .vA-icon .draw{ animation-delay:.5s; }
@media (prefers-reduced-motion: reduce){ html.sandbox-svc-embedded-page section#why .vA-icon .draw,html.sandbox-svc-embedded-page section#why .vA-icon .pulse{animation:none} html.sandbox-svc-embedded-page section#why .vA-icon .draw{stroke-dashoffset:0} }


/* embedded selected-work ledger */
html.sandbox-svc-embedded-page section#work .sw-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:clamp(24px,3vw,44px);border-top:1px solid var(--rule);border-left:1px solid var(--rule);}
@media (max-width:760px){html.sandbox-svc-embedded-page section#work .sw-grid{grid-template-columns:1fr;}}
html.sandbox-svc-embedded-page section#work .sw-item{display:flex;gap:24px;align-items:center;padding:26px 26px 28px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);}
html.sandbox-svc-embedded-page section#work .sw-icon{flex:none;width:116px;height:116px;align-self:center;color:var(--signal-deep);transition:color 320ms cubic-bezier(0.2,0.7,0.2,1),transform 320ms cubic-bezier(0.2,0.7,0.2,1);}
html.sandbox-svc-embedded-page section#work .sw-item:hover .sw-icon{color:var(--signal);transform:translateY(-2px);}
html.sandbox-svc-embedded-page section#work .sw-idx{display:block;font-family:var(--mono);font-size:8pt;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--warm);margin-bottom:7px;}
html.sandbox-svc-embedded-page section#work .sw-item h3{font-size:15.5pt;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin-bottom:8px;line-height:1.22;}
html.sandbox-svc-embedded-page section#work .sw-item p{font-size:10pt;line-height:1.5;color:var(--steel-2);}
html.sandbox-svc-embedded-page section#work .sw-icon .draw{stroke-dasharray:64;animation:slrDraw2 3.6s ease-in-out infinite;}
html.sandbox-svc-embedded-page section#work .sw-icon .pulse{transform-box:fill-box;transform-origin:center;animation:slrPulse 2.2s ease-in-out infinite;}
html.sandbox-svc-embedded-page section#work .sw-icon .pd2{animation-delay:.7s;}
@keyframes slrDraw2{0%{stroke-dashoffset:64;opacity:.2}25%{opacity:1}70%,100%{stroke-dashoffset:0;opacity:1}}
@media (prefers-reduced-motion:reduce){html.sandbox-svc-embedded-page section#work .sw-icon .draw,html.sandbox-svc-embedded-page section#work .sw-icon .pulse{animation:none}html.sandbox-svc-embedded-page section#work .sw-icon .draw{stroke-dashoffset:0}}


/* embedded board band (duotone engineering) */
html.sandbox-svc-embedded-page section#board{position:relative;}
html.sandbox-svc-embedded-page section#board .brd{position:relative;overflow:hidden;height:clamp(360px,42vw,520px);background:var(--ink-deep);}
html.sandbox-svc-embedded-page section#board .brd img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.05) brightness(1.02);}
html.sandbox-svc-embedded-page section#board .brd .tint{position:absolute;inset:0;background:linear-gradient(115deg,var(--warm) 0%,#2E6FA8 55%,var(--signal) 100%);mix-blend-mode:color;opacity:.9;}
html.sandbox-svc-embedded-page section#board .brd .scrim{position:absolute;inset:0;background:linear-gradient(115deg,rgba(6,15,30,.30) 0%,rgba(6,15,30,.05) 48%,rgba(6,15,30,0) 100%);}
html.sandbox-svc-embedded-page section#board .brd .cap{position:absolute;left:clamp(26px,5vw,64px);bottom:clamp(30px,4vw,48px);right:24px;z-index:3;color:#fff;max-width:36ch;}
html.sandbox-svc-embedded-page section#board .brd .cap .k{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;opacity:.92;margin-bottom:14px;display:flex;align-items:center;gap:9px;}
html.sandbox-svc-embedded-page section#board .brd .cap .k .dot{width:6px;height:6px;border-radius:50%;background:var(--signal);flex:none;}
html.sandbox-svc-embedded-page section#board .brd .cap h2{font-weight:700;font-size:clamp(24px,3.1vw,36px);line-height:1.12;letter-spacing:-.02em;color:#fff;text-shadow:0 2px 26px rgba(6,15,30,.6),0 1px 3px rgba(6,15,30,.5);}
html.sandbox-svc-embedded-page section#board .brd .br{position:absolute;width:34px;height:34px;z-index:3;}
html.sandbox-svc-embedded-page section#board .brd .br-tl{left:26px;top:26px;border-left:2px solid var(--signal);border-top:2px solid var(--signal);}
html.sandbox-svc-embedded-page section#board .brd .br-br{right:26px;bottom:26px;border-right:2px solid var(--signal);border-bottom:2px solid var(--signal);}
html.sandbox-svc-embedded-page section#board .brd .scan{position:absolute;left:0;right:0;top:0;height:2px;z-index:2;background:linear-gradient(90deg,transparent,rgba(31,182,224,.85),transparent);animation:brdScan 6.5s ease-in-out infinite;}
@keyframes brdScan{0%{transform:translateY(14%);opacity:0}18%{opacity:1}82%{opacity:1}100%{transform:translateY(2400%);opacity:0}}
@media (prefers-reduced-motion:reduce){html.sandbox-svc-embedded-page section#board .brd .scan{animation:none;top:40%}}


/* Office address map buttons (task 759) */
.office-card .o-addr-btn {
  display: inline-block;
  align-self: flex-start;
  padding: 12px 16px;
  margin-top: 2px;
  border: 1px solid var(--rule);
  background: transparent;
  cursor: pointer;
  transition: border-color 220ms var(--ease), background 220ms var(--ease), color 220ms var(--ease);
}
.office-card .o-addr-btn:hover {
  border-color: var(--rule-strong);
  background: var(--paper-2);
  color: var(--ink);
}
.footer-office .addr-btn {
  display: inline-block;
  align-self: flex-start;
  padding: 10px 12px;
  margin-top: 2px;
  border: 1px solid var(--rule-dark-strong);
  background: transparent;
  cursor: pointer;
  transition: border-color 220ms var(--ease), background 220ms var(--ease);
}
.footer-office .addr-btn:hover {
  border-color: var(--ivory-faint);
  background: rgba(255, 255, 255, 0.06);
}
