/* TEAM500 MONOLITH v20 — Unified System
   Structural correction layer for v19. One signal, one grid, one hover language. */
:root{
  --v20-ink:#080808;
  --v20-paper:#f3f1ea;
  --v20-white:#fff;
  --v20-orange:#ff4d00;
  --v20-line:rgba(8,8,8,.16);
  --v20-muted:#68645b;
}

html{overflow-x:clip!important}
body[data-v20]{overflow-x:clip!important}

/* SECTION LABEL — the only permitted block marker. */
body[data-v20] :is(.tag,.r-kicker,.eyebrow,.v20-section-label){
  display:inline-flex!important;
  align-items:center!important;
  gap:12px!important;
  width:auto!important;
  min-height:0!important;
  margin-inline:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--v20-ink)!important;
  font:700 10px/1.2 'IBM Plex Mono',monospace!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
}
body[data-v20] :is(.tag,.r-kicker,.eyebrow,.v20-section-label)::before{
  content:""!important;
  display:block!important;
  flex:0 0 28px!important;
  width:28px!important;
  height:2px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--v20-orange)!important;
  box-shadow:none!important;
}
body[data-v20] :is(.tag,.r-kicker,.eyebrow,.v20-section-label)::after{content:none!important;display:none!important}
body[data-v20] :is(.hero,.sect--ink,.founder,.home-contact,.r-dark) :is(.tag,.r-kicker,.eyebrow,.v20-section-label){color:#fff!important}
body[data-v20] :is(.pitch,.rail__cta) .tag::before{background:var(--v20-ink)!important}

/* The clients heading is now a normal wrap/head-axis, not an h2 special case. */
body[data-v20] .v20-trust-head{
  margin-bottom:24px!important;
}
body[data-v20] .v20-trust-axis{box-sizing:border-box;width:100%;max-width:1440px;margin-inline:auto;padding-inline:clamp(20px,4vw,64px)}
body[data-v20] .v20-trust-head .v20-section-label{margin:0!important}
body[data-v20] .v17-trust-title h2::before,
body[data-v20] .v17-trust-title h2::after{content:none!important;display:none!important}

/* VIDEO SURFACES — visual content owns the full section width. */
body[data-v20] .v20-video-block{overflow:clip!important}
body[data-v20] .v20-video-block{position:relative!important}
body[data-v20] .v20-video-surface{
  position:relative!important;
  left:var(--v20-video-shift,0)!important;
  width:var(--v20-video-width,100%)!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  border-radius:0!important;
  overflow:hidden!important;
}
body[data-v20] .v20-background-video{
  position:absolute!important;
  inset:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  height:100%!important;
  z-index:0!important;
}
body[data-v20] .v20-video-block>.v20-background-video~*{position:relative;z-index:1}
body[data-v20] .v20-video-surface>video,
body[data-v20] .v20-video-surface video{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  object-fit:cover!important;
}
body[data-v20] :is(.hero__media,.hero__visual,.video-bg,.founder__media,.home-contact__media){
  inset-inline:0!important;
  width:100%!important;
  max-width:none!important;
  margin-inline:0!important;
}

/* FOUR FORMATS — one editorial component and one safe hover state. */
body[data-v20] .v20-format-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:1px!important;
  border:0!important;
  background:var(--v20-line)!important;
}
body[data-v20] .home-services .v20-format{
  position:relative!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  grid-template-rows:auto auto 1fr auto auto!important;
  column-gap:24px!important;
  min-height:380px!important;
  padding:clamp(28px,3.2vw,48px)!important;
  border:0!important;
  border-radius:0!important;
  background:var(--v20-paper)!important;
  color:var(--v20-ink)!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background .2s ease!important;
}
body[data-v20] .home-services .v20-format::before,
body[data-v20] .home-services .v20-format::after{content:none!important;display:none!important}
body[data-v20] .home-services .v20-format:hover,
body[data-v20] .home-services .v20-format:focus-visible{
  background:#eae7de!important;
  color:var(--v20-ink)!important;
  transform:none!important;
}
body[data-v20] .v20-format>.chip{grid-column:1;grid-row:1/3;align-self:start!important;margin:0!important;color:var(--v20-orange)!important}
body[data-v20] .home-services .v20-format>.chip{
  display:grid!important;
  place-items:center!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body[data-v20] .home-services .v20-format>.chip::before,
body[data-v20] .home-services .v20-format>.chip::after{content:none!important;display:none!important}
body[data-v20] .home-services .v20-format>.chip svg{width:30px!important;height:30px!important;color:var(--v20-orange)!important}
body[data-v20] .v20-format>h3{grid-column:2;grid-row:1;margin:0 0 14px!important;color:var(--v20-ink)!important;font-size:clamp(1.55rem,2.1vw,2.45rem)!important;line-height:1!important}
body[data-v20] .v20-format>p{grid-column:2;grid-row:2;margin:0!important;max-width:52ch!important;color:var(--v20-muted)!important;line-height:1.55!important}
body[data-v20] .v20-format .v20-facts{grid-column:2;grid-row:4;display:flex!important;gap:24px!important;flex-wrap:wrap!important;margin:32px 0 0!important}
body[data-v20] .v20-format .v20-fact{min-width:92px!important}
body[data-v20] .v20-format .v20-fact-label{display:block!important;color:var(--v20-muted)!important;font:700 9px/1.2 'IBM Plex Mono',monospace!important;letter-spacing:.11em!important;text-transform:uppercase!important}
body[data-v20] .v20-format .v20-fact-value{display:block!important;margin-top:5px!important;color:var(--v20-ink)!important;font:800 1.02rem/1.2 Manrope,sans-serif!important}
body[data-v20] .v20-format .svc__go{grid-column:2;grid-row:5;margin-top:28px!important;color:var(--v20-orange)!important;opacity:1!important}
body[data-v20] .v20-format:hover :is(h3,p,b,span,.svc__go),
body[data-v20] .v20-format:focus-visible :is(h3,p,b,span,.svc__go){opacity:1!important;visibility:visible!important}
body[data-v20] .home-services .v20-format:hover>h3,
body[data-v20] .home-services .v20-format:focus-visible>h3,
body[data-v20] .home-services .v20-format:hover .v20-fact-value,
body[data-v20] .home-services .v20-format:focus-visible .v20-fact-value{color:var(--v20-ink)!important}
body[data-v20] .home-services .v20-format:hover>p,
body[data-v20] .home-services .v20-format:focus-visible>p,
body[data-v20] .home-services .v20-format:hover .v20-fact-label,
body[data-v20] .home-services .v20-format:focus-visible .v20-fact-label{color:var(--v20-muted)!important}
body[data-v20] .home-services .v20-format:hover>.chip,
body[data-v20] .home-services .v20-format:focus-visible>.chip,
body[data-v20] .home-services .v20-format:hover>.svc__go,
body[data-v20] .home-services .v20-format:focus-visible>.svc__go{color:var(--v20-orange)!important}

/* CASES — editorial photography, facts in the body, no labels over faces. */
body[data-v20] .home-cases .grid.grid--2{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(36px,5vw,74px) clamp(28px,4vw,58px)!important;
  background:transparent!important;
  border:0!important;
}
body[data-v20] .v20-home-case{
  display:block!important;
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  min-width:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  border-top:1px solid var(--v20-line)!important;
}
body[data-v20] .v20-home-case:hover{background:transparent!important}
body[data-v20] .home-cases .v20-home-case .item__img{
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/10!important;
  background:#d8d5cc!important;
}
body[data-v20] .v20-home-case .v20-case-photo{transition:transform .35s ease,filter .35s ease!important;filter:saturate(.82) contrast(1.04)!important}
body[data-v20] .v20-home-case:hover .v20-case-photo{transform:scale(1.018)!important;filter:saturate(.95) contrast(1.04)!important}
body[data-v20] .v20-home-case[data-case-cover="payment"] .v20-case-photo{object-position:center 42%!important}
body[data-v20] .v20-home-case[data-case-cover="biometry"] .v20-case-photo{object-position:center 28%!important}
body[data-v20] .v20-home-case[data-case-cover="data"] .v20-case-photo{object-position:center 38%!important}
body[data-v20] .v20-home-case[data-case-cover="logistics"] .v20-case-photo{object-position:center 46%!important}
body[data-v20] .v20-home-case .item__body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-content:start!important;
  gap:10px 24px!important;
  padding:24px 0 34px!important;
}
body[data-v20] .v20-home-case .item__cat{grid-column:1/3!important;grid-row:1!important}
body[data-v20] .v20-home-case .case-metric{grid-column:2!important;grid-row:2/4!important;align-self:start!important;max-width:13ch!important;text-align:right!important;color:var(--v20-orange)!important;font-size:clamp(1.2rem,1.8vw,2rem)!important;line-height:1!important}
body[data-v20] .v20-home-case h3{grid-column:1!important;grid-row:2!important;max-width:18ch!important;margin:0!important;color:var(--v20-ink)!important;font-size:clamp(1.55rem,2vw,2.2rem)!important;line-height:1.02!important}
body[data-v20] .v20-home-case p{grid-column:1!important;grid-row:3!important;display:-webkit-box!important;max-width:58ch!important;margin:0!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;color:var(--v20-muted)!important}
body[data-v20] .v20-home-case .item__go{grid-column:1/3!important;grid-row:5!important;margin-top:16px!important;color:var(--v20-ink)!important}
body[data-v20] .v20-home-case:hover .item__go{color:var(--v20-orange)!important}

/* TECHNOLOGY / COMPLIANCE — named groups plus compact tags, no large squares. */
body[data-v20] .v20-tag-matrix{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(36px,5vw,78px)!important;
  border:0!important;
  background:transparent!important;
}
body[data-v20] :is(.home-tech,.home-markets) .grid.v20-tag-matrix{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(36px,5vw,78px)!important;
  border:0!important;
  background:transparent!important;
}
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group{
  display:block!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  gap:0!important;
  min-height:0!important;
  padding:24px 0 0!important;
  border:0!important;
  border-top:2px solid var(--v20-ink)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body[data-v20] :is(.home-tech,.home-markets) .card.svc.v20-tag-group::before,
body[data-v20] :is(.home-tech,.home-markets) .card.svc.v20-tag-group::after{content:none!important;display:none!important}
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group h3,
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group h4{
  min-height:0!important;
  margin:0 0 20px!important;
  max-width:28ch!important;
  color:var(--v20-ink)!important;
  font-size:clamp(1.25rem,1.65vw,1.75rem)!important;
  line-height:1.08!important;
}
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group ul{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group li{
  display:inline-flex!important;
  width:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:8px 11px!important;
  border:1px solid var(--v20-line)!important;
  border-radius:0!important;
  background:rgba(255,255,255,.32)!important;
  color:var(--v20-muted)!important;
  font:650 11px/1.35 'IBM Plex Mono',monospace!important;
  letter-spacing:0!important;
  flex:0 1 auto!important;
  max-width:100%!important;
}
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group li::before,
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group li::marker{content:none!important;display:none!important}
body[data-v20] :is(.home-tech,.home-markets) .v20-tag-group li:hover{border-color:var(--v20-orange)!important;color:var(--v20-ink)!important}

/* Consistent interactive surfaces across catalogues and supporting cards. */
body[data-v20] :is(.card,.item,.feat,.mini>a):hover{box-shadow:none!important}
body[data-v20] :is(.card,.item,.feat,.mini>a):focus-visible{outline:2px solid var(--v20-orange)!important;outline-offset:4px!important}
body[data-v20] .foot__brand img{filter:none!important}

@media(max-width:900px){
  body[data-v20] .v20-trust-axis{padding-inline:20px}
  body[data-v20] .v20-format-grid,
  body[data-v20] .v20-tag-matrix{grid-template-columns:1fr!important}
  body[data-v20] :is(.home-tech,.home-markets) .grid.v20-tag-matrix{grid-template-columns:1fr!important}
  body[data-v20] .home-services .v20-format{min-height:0!important;padding:28px 20px!important;grid-template-columns:38px minmax(0,1fr)!important;column-gap:16px!important}
  body[data-v20] .v20-format .v20-facts{gap:18px!important}
  body[data-v20] .v20-home-case .item__body{grid-template-columns:1fr!important}
  body[data-v20] .home-cases .grid.grid--2{grid-template-columns:1fr!important}
  body[data-v20] .v20-home-case :is(.item__cat,.case-metric,h3,p,.item__go){grid-column:1!important;grid-row:auto!important;text-align:left!important}
  body[data-v20] .v20-home-case .case-metric{margin:6px 0!important}
}

@media(prefers-reduced-motion:reduce){
  body[data-v20] .v20-case-photo{transition:none!important}
}

/* TEAM500 MONOLITH v24 — Contrast & Geometry
   One rhythm, full media surfaces, editorial cards and predictable contrast. */
:root{
  --v21-space:clamp(72px,7vw,112px);
  --v21-gap:clamp(40px,4.5vw,72px);
  --v21-ink:#080808;
  --v21-paper:#f3f1ea;
  --v21-white:#fff;
  --v21-orange:#ff4d00;
  --v21-muted:#666158;
  --v21-line:rgba(8,8,8,.18);
}

body[data-v21] .v21-section{padding-block:var(--v21-space)!important}
body[data-v21] .v21-section>.wrap>.head{margin-bottom:var(--v21-gap)!important}
body[data-v21] .v21-section>.wrap>.head:last-child{margin-bottom:0!important}
body[data-v21] :is(.head h2,.hero h1)>.heading-lead,
body[data-v21] :is(.head h2,.hero h1)>.heading-accent{display:inline!important}

/* Video owns both axes of its block. No filler bands above or below. */
body[data-v21] .v21-video-block{position:relative!important;overflow:clip!important}
body[data-v21] .v21-video-only{padding-block:0!important;min-height:0!important}
body[data-v21] .v21-video-only>.v21-video-fill{
  position:relative!important;
  inset:auto!important;
  display:grid!important;
  min-height:clamp(460px,50vw,690px)!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important;
}
body[data-v21] .v21-video-surface>.v21-video,
body[data-v21] .v21-video-surface .v21-video{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  min-width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  background:transparent!important;
}
body[data-v21] .v21-video-surface :is(.reel__veil,.reel__in){position:relative!important;z-index:1!important}
body[data-v21] .v20-background-video.v21-video-surface{position:absolute!important;inset:0!important;height:100%!important}

/* Same section-to-subsection spacing as the main page rhythm. */
body[data-v21] .home-tech .v21-partnerships{
  margin-top:var(--v21-space)!important;
  padding-top:0!important;
}
body[data-v21] .home-tech .v21-partnerships>.tag{margin:0 0 24px!important}
body[data-v21] .home-tech .marks{margin:0!important;border-block:0!important}

/* Expanded technology matrix: compact groups, readable labels, no empty rows. */
body[data-v21] .home-tech .v21-tech-matrix{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:var(--v21-gap)!important;
  background:transparent!important;
}
body[data-v21] .home-tech .v21-tech-group{
  min-width:0!important;
  padding:22px 0 0!important;
  border:0!important;
  border-top:2px solid var(--v21-ink)!important;
  background:transparent!important;
}
body[data-v21] .home-tech .v21-tech-group :is(h3,h4){
  margin:0 0 22px!important;
  color:var(--v21-ink)!important;
  font:850 clamp(1.3rem,1.8vw,1.85rem)/1.08 Manrope,sans-serif!important;
}
body[data-v21] .home-tech .v21-tech-group ul{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0!important;padding:0!important;list-style:none!important}
body[data-v21] .home-tech .v21-tech-group li{
  display:inline-flex!important;
  width:auto!important;
  margin:0!important;
  padding:8px 11px!important;
  border:1px solid var(--v21-line)!important;
  background:rgba(255,255,255,.42)!important;
  color:var(--v21-ink)!important;
  font:650 11px/1.25 'IBM Plex Mono',monospace!important;
  list-style:none!important;
}
body[data-v21] .home-tech .v21-tech-group li::before,
body[data-v21] .home-tech .v21-tech-group li::marker{content:none!important;display:none!important}

/* Editorial cover system. All images keep their intrinsic ratio through object-fit. */
body[data-v21] .v21-editorial-card{
  grid-column:auto!important;
  grid-row:auto!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  border-top:2px solid var(--v21-ink)!important;
  border-radius:0!important;
  background:var(--v21-paper)!important;
  color:var(--v21-ink)!important;
  box-shadow:none!important;
  transform:none!important;
}
body[data-v21] .v21-editorial-card::before,
body[data-v21] .v21-editorial-card::after{content:none!important;display:none!important}
body[data-v21] .v21-editorial-card :is(.item__img,.feat__img){
  display:block!important;
  flex:0 0 auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:16/10!important;
  overflow:hidden!important;
  background:#d8d5cc!important;
}
body[data-v21] .v21-editorial-card .v21-cover-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center 34%!important;
  filter:saturate(.82) contrast(1.05)!important;
  transform:none!important;
  transition:filter .22s ease,transform .22s ease!important;
}
body[data-v21] .v21-editorial-card :is(.item__body,.feat__body){
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:12px!important;
  width:100%!important;
  padding:24px!important;
  color:var(--v21-ink)!important;
}
body[data-v21] .v21-editorial-card :is(h2,h3,h4){margin:0!important;max-width:24ch!important;color:var(--v21-ink)!important;font-size:clamp(1.3rem,1.75vw,1.85rem)!important;line-height:1.08!important}
body[data-v21] .v21-editorial-card :is(h2,h3,h4) span{display:inline!important;color:inherit!important;font:inherit!important}
body[data-v21] .v21-editorial-card :is(h2,h3,h4) .heading-accent{display:block!important;margin-top:4px!important;color:var(--v21-orange)!important}
body[data-v21] .v21-editorial-card p{margin:0!important;color:var(--v21-muted)!important;line-height:1.55!important}
body[data-v21] .v21-editorial-card .item__go{margin-top:auto!important;padding-top:8px!important;color:var(--v21-ink)!important}
body[data-v21] .v21-editorial-card:hover{background:#e8e5dc!important;color:var(--v21-ink)!important;transform:none!important}
body[data-v21] .v21-editorial-card:hover .v21-cover-image{filter:saturate(.96) contrast(1.05)!important;transform:scale(1.012)!important}
body[data-v21] .v21-editorial-card:hover :is(h2,h3,h4,p,span,b){opacity:1!important;visibility:visible!important}
body[data-v21] :is(#caseGrid,#blogGrid){
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:start!important;
  gap:clamp(22px,2.2vw,32px)!important;
}
body[data-v21] :is(#caseGrid,#blogGrid)>.v21-editorial-card{grid-column:auto!important;grid-row:auto!important;width:auto!important}
body[data-v21] .home-cases .grid{align-items:start!important}

/* Universal high-contrast service card. */
body[data-v21] main .card.svc{
  border:0!important;
  border-top:1px solid var(--v21-line)!important;
  background:var(--v21-paper)!important;
  color:var(--v21-ink)!important;
  box-shadow:none!important;
  transform:none!important;
}
body[data-v21] main .card.svc::before,
body[data-v21] main .card.svc::after{content:none!important;display:none!important}
body[data-v21] main .card.svc :is(h3,h4,p,blockquote,figcaption,b,span){color:inherit!important;opacity:1!important;visibility:visible!important}
body[data-v21] main .card.svc p,
body[data-v21] main .card.svc figcaption span{color:var(--v21-muted)!important}
body[data-v21] main .card.svc .chip{color:var(--v21-orange)!important;background:transparent!important}
body[data-v21] main .card.svc:hover{background:#e8e5dc!important;color:var(--v21-ink)!important;transform:none!important}

/* Process is a sequence of gates, not a wall of squares. */
body[data-v21] .v21-steps{display:block!important;max-width:920px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
body[data-v21] .v21-step{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  grid-template-rows:auto!important;
  align-items:start!important;
  row-gap:0!important;
  gap:clamp(20px,3vw,38px)!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:28px 0!important;
  border:0!important;
  border-top:1px solid var(--v21-line)!important;
  background:transparent!important;
  color:var(--v21-ink)!important;
  box-shadow:none!important;
}
body[data-v21] .v21-step:last-child{border-bottom:1px solid var(--v21-line)!important}
body[data-v21] .v21-step::before,
body[data-v21] .v21-step::after{content:none!important;display:none!important}
body[data-v21] .v21-step .step__n{display:block!important;width:auto!important;height:auto!important;margin:0!important;padding:0!important;background:transparent!important;color:var(--v21-orange)!important;font:800 13px/1.2 'IBM Plex Mono',monospace!important}
body[data-v21] .v21-step :is(h3,h4){margin:0 0 8px!important;color:var(--v21-ink)!important;font-size:clamp(1.2rem,1.55vw,1.55rem)!important}
body[data-v21] .v21-step p{margin:0!important;max-width:66ch!important;color:var(--v21-muted)!important;line-height:1.55!important}

/* Geography is a compact coordinate line, visually distinct from cards and tags. */
body[data-v21] .v21-presence-line{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:0!important;
  padding:0!important;
  border-block:2px solid var(--v21-ink)!important;
  background:transparent!important;
}
body[data-v21] .v21-presence-line>div{
  display:flex!important;
  min-width:0!important;
  min-height:0!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:6px!important;
  padding:24px 14px!important;
  border:0!important;
  border-right:1px solid var(--v21-line)!important;
  background:transparent!important;
  color:var(--v21-ink)!important;
}
body[data-v21] .v21-presence-line>div:last-child{border-right:0!important}
body[data-v21] .v21-presence-line b{font:850 clamp(1rem,1.35vw,1.35rem)/1.1 Manrope,sans-serif!important;color:var(--v21-ink)!important}
body[data-v21] .v21-presence-line span{font:700 10px/1.2 'IBM Plex Mono',monospace!important;color:var(--v21-muted)!important}

/* Legal is editorial copy with precise dividers. */
body[data-v21] .v21-legal{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:var(--v21-gap)!important;background:transparent!important}
body[data-v21] .v21-legal article{position:relative!important;margin:0!important;padding:24px 0 0!important;border:0!important;border-top:2px solid var(--v21-ink)!important;background:transparent!important;color:var(--v21-ink)!important;box-shadow:none!important}
body[data-v21] .v21-legal article::before,
body[data-v21] .v21-legal article::after{content:none!important;display:none!important}
body[data-v21] .v21-legal :is(h3,h4){margin:0 0 16px!important;color:var(--v21-ink)!important}
body[data-v21] .v21-legal :is(p,li){color:var(--v21-muted)!important;line-height:1.6!important}

/* Sticky editorial rail. One orange line, no decorative dots or internal scrollbars. */
body[data-v21] .v21-rail{
  position:sticky!important;
  top:92px!important;
  align-self:start!important;
  width:250px!important;
  min-width:0!important;
  max-height:none!important;
  margin:0!important;
  padding:18px 14px 18px 20px!important;
  overflow:visible!important;
  border:0!important;
  border-left:2px solid var(--v21-orange)!important;
  border-radius:0!important;
  background:rgba(243,241,234,.96)!important;
  color:var(--v21-ink)!important;
  box-shadow:none!important;
}
body[data-v21] .v21-rail::before,
body[data-v21] .v21-rail::after{content:none!important;display:none!important}
body[data-v21] .v21-rail .rail__t{display:block!important;margin:0 0 12px!important;padding:0!important;color:var(--v21-ink)!important;font:800 10px/1.2 'IBM Plex Mono',monospace!important;letter-spacing:.13em!important;text-transform:uppercase!important}
body[data-v21] .v21-toc{display:grid!important;gap:2px!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important}
body[data-v21] .v21-toc a{display:block!important;margin:0!important;padding:7px 9px!important;border:0!important;border-left:1px solid transparent!important;background:transparent!important;color:var(--v21-muted)!important;font:650 11px/1.25 Manrope,sans-serif!important;text-decoration:none!important}
body[data-v21] .v21-toc a:hover{border-left-color:var(--v21-orange)!important;background:rgba(8,8,8,.06)!important;color:var(--v21-ink)!important}
body[data-v21] .v21-toc a.is-active{border-left-color:var(--v21-orange)!important;background:var(--v21-ink)!important;color:var(--v21-white)!important}
body[data-v21] .v21-rail .rail__cta{margin-top:14px!important;padding:14px!important;border:0!important;background:var(--v21-orange)!important;color:var(--v21-ink)!important}
body[data-v21] .v21-rail .rail__cta :is(.tag,p,a){color:var(--v21-ink)!important}
body[data-v21] .v21-rail .rail__cta .btn{
  display:block!important;
  width:100%!important;
  margin-top:14px!important;
  padding:13px 14px!important;
  border:0!important;
  background:var(--v21-ink)!important;
  color:var(--v21-white)!important;
  text-align:left!important;
}

/* Joke and dark notes must remain readable. */
body[data-v21] .v21-joke{margin-block:clamp(34px,4vw,56px)!important;padding:clamp(24px,3vw,38px)!important;border:0!important;border-left:3px solid var(--v21-orange)!important;background:var(--v21-ink)!important;color:var(--v21-white)!important}
body[data-v21] .v21-joke::before,
body[data-v21] .v21-joke::after{content:none!important;display:none!important}
body[data-v21] .v21-joke .tag{margin:0 0 22px!important;color:var(--v21-white)!important}
body[data-v21] .v21-joke :is(p,b,i){color:var(--v21-white)!important}
body[data-v21] .v21-joke b{color:var(--v21-orange)!important}
body[data-v21] .v21-joke .joke__p{margin-top:20px!important;padding-top:18px!important;border-top:1px solid rgba(255,255,255,.18)!important;color:rgba(255,255,255,.78)!important}

/* Tables use one header, one zebra rule and one hover language. */
body[data-v21] .v21-table{margin-block:clamp(30px,4vw,52px)!important;overflow-x:auto!important;border:0!important;border-top:2px solid var(--v21-ink)!important;background:transparent!important}
body[data-v21] .v21-table table{width:100%!important;border-collapse:collapse!important;border-spacing:0!important;background:var(--v21-white)!important;color:var(--v21-ink)!important}
body[data-v21] .v21-table :is(th,td){padding:16px 18px!important;border:0!important;border-bottom:1px solid var(--v21-line)!important;text-align:left!important;vertical-align:top!important;color:var(--v21-ink)!important}
body[data-v21] .v21-table th{background:var(--v21-ink)!important;color:var(--v21-white)!important;font:750 11px/1.35 'IBM Plex Mono',monospace!important;letter-spacing:.04em!important}
body[data-v21] .v21-table tbody tr:nth-child(even){background:#ebe8df!important}
body[data-v21] .v21-table tbody tr:nth-child(odd){background:var(--v21-white)!important}
body[data-v21] .v21-table tbody tr:hover{background:#ddd9cf!important}
body[data-v21] .v21-table tbody tr:hover td{color:var(--v21-ink)!important}

/* Reviews keep one restrained hover without a white top strip. */
body[data-v21] .v21-reviews figure{border:0!important;border-top:2px solid var(--v21-ink)!important;background:var(--v21-paper)!important;color:var(--v21-ink)!important;transform:none!important;transition:background .2s ease!important}
body[data-v21] .v21-reviews figure::before,
body[data-v21] .v21-reviews figure::after{content:none!important;display:none!important}
body[data-v21] .v21-reviews figure:hover{background:#e5e2d8!important;color:var(--v21-ink)!important;transform:none!important}
body[data-v21] .v21-reviews figure :is(blockquote,figcaption,b,span){opacity:1!important;visibility:visible!important;color:var(--v21-ink)!important}
body[data-v21] .v21-reviews figure figcaption span{color:var(--v21-muted)!important}
body[data-v21] .v21-reviews figure figcaption{display:grid!important;gap:5px!important}
body[data-v21] .v21-reviews figure figcaption :is(b,span){display:block!important;margin:0!important}

/* Poster-first video cover, same photographic language as cases and articles. */
body[data-v21] .tube{position:relative!important;aspect-ratio:16/9!important;min-height:0!important;overflow:hidden!important;border:0!important;border-top:2px solid var(--v21-ink)!important;background:var(--v21-ink)!important}
body[data-v21] .tube .v19-video-poster{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;overflow:hidden!important}
body[data-v21] .tube .v21-video-cover{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 28%!important;filter:saturate(.82) contrast(1.08)!important}
body[data-v21] .tube .v19-video-label{position:absolute!important;left:22px!important;right:92px!important;bottom:20px!important;padding:12px 14px!important;background:var(--v21-ink)!important;color:var(--v21-white)!important;font:750 12px/1.3 'IBM Plex Mono',monospace!important}
body[data-v21] .tube .v19-play{display:grid!important;place-items:center!important;right:20px!important;bottom:20px!important;width:54px!important;height:54px!important;border:0!important;background:var(--v21-orange)!important;color:var(--v21-ink)!important}
body[data-v21] .tube iframe{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important}
body[data-v21] .v21-founder-video .v19-video-poster{
  background:linear-gradient(90deg,var(--v21-ink) 0 48%,#d9d8d5 48% 100%)!important;
}
body[data-v21] .v21-founder-video .v21-video-cover{
  width:52%!important;
  min-width:52%!important;
  margin-left:auto!important;
  object-position:center 26%!important;
}
body[data-v21] .v21-founder-video .v19-video-label{
  left:clamp(22px,4vw,48px)!important;
  right:55%!important;
  bottom:clamp(26px,5vw,58px)!important;
  padding:0!important;
  background:transparent!important;
  color:var(--v21-white)!important;
  font-size:clamp(14px,1.7vw,22px)!important;
  line-height:1.25!important;
}

/* Section numbers are navigational metadata, never part of an article title. */
body[data-v21] main h2>.section-index{display:inline-flex!important;align-items:center!important;margin:0 14px 0 0!important;padding:0 0 3px!important;border:0!important;border-bottom:2px solid var(--v21-orange)!important;background:transparent!important;color:var(--v21-orange)!important;font:800 12px/1 'IBM Plex Mono',monospace!important;vertical-align:middle!important}

/* Buttons always have a readable foreground/background pair. */
body[data-v21] .btn--go{background:var(--v21-orange)!important;color:var(--v21-ink)!important;border-color:var(--v21-orange)!important}
body[data-v21] .btn--go:hover{background:var(--v21-ink)!important;color:var(--v21-white)!important;border-color:var(--v21-ink)!important}
body[data-v21] .pitch .btn--go{background:var(--v21-ink)!important;color:var(--v21-white)!important;border-color:var(--v21-ink)!important}
body[data-v21] .pitch .btn--go:hover{background:var(--v21-white)!important;color:var(--v21-ink)!important;border-color:var(--v21-white)!important}

@media(max-width:900px){
  body[data-v21] :is(#caseGrid,#blogGrid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-v21] .home-tech .v21-tech-matrix,
  body[data-v21] .v21-legal{grid-template-columns:1fr!important}
  body[data-v21] .v21-presence-line{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-v21] .v21-presence-line>div:nth-child(2n){border-right:0!important}
  body[data-v21] .v21-rail{position:relative!important;top:auto!important;width:100%!important;margin-bottom:34px!important}
  body[data-v21] .v21-toc{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-v21] .v21-step{grid-template-columns:52px minmax(0,1fr)!important}
}

@media(max-width:560px){
  body[data-v21] :is(#caseGrid,#blogGrid){grid-template-columns:1fr!important}
  body[data-v21] .v21-presence-line{grid-template-columns:1fr!important}
  body[data-v21] .v21-presence-line>div{border-right:0!important;border-bottom:1px solid var(--v21-line)!important}
  body[data-v21] .v21-presence-line>div:last-child{border-bottom:0!important}
  body[data-v21] .v21-toc{grid-template-columns:1fr!important}
  body[data-v21] .v21-editorial-card :is(.item__body,.feat__body){padding:20px!important}
  body[data-v21] .v21-video-only>.v21-video-fill{min-height:520px!important}
  body[data-v21] .v21-founder-video .v19-video-poster{background:var(--v21-ink)!important}
  body[data-v21] .v21-founder-video .v21-video-cover{width:100%!important;min-width:100%!important;margin:0!important;opacity:.74!important}
  body[data-v21] .v21-founder-video .v19-video-label{right:84px!important}
}

@media(prefers-reduced-motion:reduce){
  body[data-v21] .v21-cover-image{transition:none!important}
}
