/* Section components for VCL AI Adoption (window.VCLSite). Hairlines, circle marks, bone on carbon, ink on Paper.
   Colour comes from currentColor and the tokens; VCL red appears only as the point, never as text. */

/* Claim grid: four dark cards */
.claims { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.claim { padding: 28px 24px 30px; display: flex; flex-direction: column; gap: 14px; min-height: 260px; }
.claim h3 { margin: 0; font: 500 24px/1.15 var(--font-display); letter-spacing: -.025em; }
.claim p { margin: 0; font: 400 15px/24px var(--font-display); color: rgba(242,240,235,.8); }
.claim .point { width: 10px; height: 10px; border-radius: 999px; background: var(--vcl-red); margin-bottom: 8px; }

/* Stat row */
.stats { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--rule); }
.stats > div { padding: 36px 32px 36px 0; }
.stats > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.stats b { display: block; font: 500 72px/1 var(--font-display); letter-spacing: -.05em; font-variant-numeric: tabular-nums; }
.stats p { margin: 16px 0 0; font: 400 15px/24px var(--font-display); opacity: .8; max-width: 260px; }
.stats__reg { margin: 48px 0 0; padding: 24px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font: 400 17px/27px var(--font-display); opacity: .9; max-width: 900px; }
.stats__src { margin: 16px 0 0; font: 400 13px/20px var(--font-display); opacity: .6; }
.stats__src span + span::before { content: " · "; opacity: .7; }

/* Risk grid: three groups of four */
.risks { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 40px; border-top: 1px solid var(--rule); }
.risks details { border: 0; }
.risks summary { list-style: none; cursor: default; padding: 28px 0 8px; }
.risks summary::-webkit-details-marker { display: none; }
.risks summary h3 { margin: 0; font: 500 28px/1.1 var(--font-display); letter-spacing: -.025em; }
.risks summary span { display: block; margin-top: 6px; font: 400 14px/22px var(--font-display); opacity: .65; }
.risks summary .chev { display: none; }
.risks ul { list-style: none; margin: 0; padding: 0; }
.risks li { padding: 18px 0; border-top: 1px solid var(--rule); }
.risks li b { display: block; font: 500 18px/1.2 var(--font-display); letter-spacing: -.015em; margin-bottom: 6px; }
.risks li p { margin: 0; font: 400 15px/23px var(--font-display); opacity: .78; }

/* Funnel: framework row and VCL row */
.funnel__row { display: grid; grid-template-columns: 180px repeat(4, 1fr); align-items: start; border-top: 1px solid var(--rule); padding: 32px 0; }
.funnel__row h3 { margin: 6px 0 0; font: 500 20px/1.2 var(--font-display); letter-spacing: -.02em; opacity: .85; padding-inline-end: 24px; }
.funnel__cell { position: relative; padding-inline: 28px 12px; }
.funnel__cell + .funnel__cell::before { content: ""; position: absolute; inset-inline-start: 0; top: 14px; width: 12px; height: 12px; border-inline-end: 1.5px solid currentColor; border-top: 1.5px solid currentColor; transform: rotate(45deg); opacity: .45; }
.funnel__cell b { display: block; font: 500 56px/1 var(--font-display); letter-spacing: -.045em; font-variant-numeric: tabular-nums; }
.funnel__cell i { display: block; font: 400 15px/22px var(--font-display); font-style: normal; opacity: .7; margin-top: 4px; }
.funnel__cell p { margin: 12px 0 0; font: 400 14px/22px var(--font-display); opacity: .75; max-width: 220px; }
.funnel__row--vcl .funnel__cell b::after { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 999px; background: var(--vcl-red); margin-inline-start: 6px; vertical-align: 6px; }
.funnel__link { display: flex; align-items: center; gap: 16px; padding: 8px 0 8px 180px; font: 400 14px/22px var(--font-display); opacity: .7; }
.funnel__link i { width: 1px; height: 28px; background: currentColor; opacity: .5; }

/* Persona map */
.pmap { display: grid; grid-template-columns: 1fr 180px 1.2fr; gap: 0; align-items: stretch; border-top: 1px solid var(--rule); }
.pmap__col { display: flex; flex-direction: column; }
.pmap__col h4 { margin: 0; padding: 20px 0 8px; font: 500 13px/1 var(--font-display); letter-spacing: .08em; text-transform: uppercase; opacity: .6; }
.pmap__item { padding: 16px 0; border-top: 1px solid var(--rule); }
.pmap__item b { display: block; font: 500 20px/1.2 var(--font-display); letter-spacing: -.02em; }
.pmap__item span { display: block; margin-top: 4px; font: 400 14px/20px var(--font-display); opacity: .7; }
.pmap__item.is-out { opacity: .45; }
.pmap__tier { padding: 22px 0 22px 24px; border-top: 1px solid var(--rule); flex: 1; display: flex; flex-direction: column; justify-content: center; }
.pmap__tier b { display: block; font: 500 26px/1.1 var(--font-display); letter-spacing: -.025em; }
.pmap__tier em { display: block; font: 400 14px/20px var(--font-display); font-style: normal; opacity: .7; margin-top: 4px; }
.pmap__tier p { margin: 10px 0 0; font: 400 14px/22px var(--font-display); opacity: .8; }
.pmap__tier p + p { margin-top: 4px; opacity: .65; }
.pmap__svg { width: 100%; height: 100%; overflow: visible; }
.pmap__svg path { fill: none; stroke: currentColor; stroke-width: 1.2; stroke-opacity: .55; stroke-dasharray: 600; stroke-dashoffset: 600; transition: stroke-dashoffset var(--dur-draw) var(--ease-out); }
.pmap__svg path.dash { stroke-dasharray: 5 6; stroke-dashoffset: 0; opacity: 0; transition: opacity 800ms 600ms; }
.pmap.is-in .pmap__svg path { stroke-dashoffset: 0; }
.pmap.is-in .pmap__svg path.dash { opacity: 1; }
.pmap__legend { margin: 16px 0 0; font: 400 13px/20px var(--font-display); opacity: .6; }
.pmap__table { display: none; }

/* Four layers */
.layers { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--rule); }
.layers > div { position: relative; padding: 36px 32px 36px 0; }
.layers > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.layers b { display: block; font: 500 64px/1 var(--font-display); letter-spacing: -.05em; }
.layers i { display: block; font: 400 15px/22px var(--font-display); font-style: normal; opacity: .7; margin-top: 4px; }
.layers p { margin: 18px 0 0; font: 400 15px/24px var(--font-display); opacity: .8; max-width: 260px; }

/* Pillar columns (framework) */
.pillars { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid currentColor; }
.pillars > div { padding: 40px 40px 40px 0; }
.pillars > div + div { padding-inline-start: 40px; border-inline-start: 1px solid var(--rule); }
.pillars h3 { font: 500 44px/1.05 var(--font-display); letter-spacing: -.035em; margin: 28px 0 6px; }
.pillars .verb { font: 400 15px/24px var(--font-display); opacity: .7; }
.pillars .def { font: 400 20px/30px var(--font-display); margin: 18px 0 0; }
.pillars .detail { font: 400 15px/24px var(--font-display); opacity: .8; margin: 12px 0 0; }
.pillars dl { margin: 24px 0 0; padding-top: 16px; border-top: 1px solid var(--rule); }
.pillars dt { font: 500 13px/1 var(--font-display); letter-spacing: .02em; opacity: .65; margin-top: 14px; }
.pillars dd { margin: 6px 0 0; font: 400 15px/23px var(--font-display); }
.pillars__sum { display: flex; align-items: center; gap: 20px; padding: 22px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font: 400 17px/27px var(--font-display); opacity: .9; }

/* Fact list (key and value rows) */
.facts { border-top: 1px solid var(--rule); }
.facts > div { display: grid; grid-template-columns: 200px 1fr; gap: 24px; padding: 18px 0; border-bottom: 1px solid var(--rule); font: 400 16px/26px var(--font-display); }
.facts > div b { font-weight: 500; opacity: .75; }
.facts + .actions { margin-top: 28px; }

/* Module explorer */
.explorer__tabs { display: none; gap: 4px; margin-bottom: 24px; }
.explorer__tabs button { font: 500 15px/1 var(--font-display); color: inherit; background: transparent; border: 1px solid var(--rule); border-radius: 999px; padding: 12px 18px; cursor: pointer; }
.explorer__tabs button[aria-selected="true"] { background: var(--bone); color: var(--carbon); border-color: var(--bone); }
.explorer__panels { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 32px; border-top: 1px solid currentColor; }
.explorer__track { padding-top: 28px; }
.explorer__track + .explorer__track { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.explorer__track h3 { margin: 0; font: 500 34px/1.1 var(--font-display); letter-spacing: -.025em; }
.explorer__track .from { display: block; margin-top: 8px; font: 400 14px/22px var(--font-display); opacity: .65; }
.explorer__track .meta { margin: 14px 0 0; font: 400 15px/24px var(--font-display); opacity: .85; }
.explorer__track .rhythm { margin: 6px 0 20px; font: 400 14px/22px var(--font-display); opacity: .65; }
.explorer__track ol { list-style: none; margin: 0; padding: 0; }
.explorer__track li { display: grid; grid-template-columns: 40px 1fr; gap: 12px; padding: 16px 0; border-top: 1px solid var(--rule); }
.explorer__track li .code { font: 500 15px/22px var(--font-display); opacity: .55; font-variant-numeric: tabular-nums; }
.explorer__track li b { display: block; font: 500 17px/23px var(--font-display); letter-spacing: -.01em; }
.explorer__track li span { display: block; margin-top: 4px; font: 400 13px/20px var(--font-display); opacity: .65; }
.explorer__track li span em { font-style: normal; }
.explorer__track li span em::before { content: " · "; }

/* Outcome lists */
.outcomes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 32px; border-top: 1px solid currentColor; }
.outcomes > div { padding-top: 28px; }
.outcomes > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.outcomes h3 { margin: 0 0 12px; font: 500 30px/1.1 var(--font-display); letter-spacing: -.025em; }
.outcomes ul { list-style: none; margin: 0; padding: 0; }
.outcomes li { padding: 14px 0; border-top: 1px solid var(--rule); font: 400 15px/24px var(--font-display); opacity: .85; }
.outcomes__cohort { display: flex; gap: 20px; align-items: flex-start; margin-top: 40px; padding: 22px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font: 400 16px/26px var(--font-display); opacity: .9; }

/* Delivery cycle */
.cycle { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid currentColor; }
.cycle > div { padding: 32px 32px 32px 0; }
.cycle > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.cycle h3 { margin: 20px 0 2px; font: 500 34px/1.1 var(--font-display); letter-spacing: -.03em; }
.cycle .pillar { font: 400 14px/22px var(--font-display); opacity: .65; }
.cycle p { margin: 14px 0 0; font: 400 15px/24px var(--font-display); opacity: .85; max-width: 320px; }
.cycle__get { margin: 32px 0 0; padding: 20px 0; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); font: 400 16px/26px var(--font-display); opacity: .9; }
.cycle__get b { font-weight: 600; }

/* Phase list (text for the orbit) */
.phases { border-top: 1px solid var(--rule); margin-top: 48px; }
.phases > div { display: grid; grid-template-columns: 160px 1fr 1fr; gap: 24px; padding: 22px 0; border-bottom: 1px solid var(--rule); }
.phases h3 { margin: 0; font: 500 24px/1.1 var(--font-display); letter-spacing: -.02em; }
.phases .time { display: block; margin-top: 6px; font: 400 13px/20px var(--font-display); opacity: .65; }
.phases p { margin: 0; font: 400 15px/24px var(--font-display); opacity: .85; }
.phases p.get b { font-weight: 600; }

/* Pillar list (proof) */
.plist { border-top: 1px solid currentColor; }
.plist > div { display: grid; grid-template-columns: 72px 220px 1fr; gap: 32px; align-items: start; padding: 32px 0; border-bottom: 1px solid var(--rule); }
.plist h3 { margin: 0; font: 500 30px/1.1 var(--font-display); letter-spacing: -.025em; }
.plist .method { display: block; margin-top: 8px; font: 400 15px/22px var(--font-display); opacity: .7; }
.plist p { margin: 4px 0 0; font: 400 16px/26px var(--font-display); opacity: .85; max-width: 620px; }

/* Measurement timeline */
.timeline { position: relative; padding: 48px 0 0; }
.timeline__track { position: relative; height: 1px; background: var(--rule); margin: 0 0 32px; }
.timeline__track i { position: absolute; top: -8px; left: 0; width: 16px; height: 16px; border-radius: 999px; background: var(--vcl-red); transform: translateX(-50%); transition: left 600ms var(--ease-out); }
.timeline__track b { position: absolute; top: -4px; width: 8px; height: 8px; border-radius: 999px; background: currentColor; transform: translateX(-50%); opacity: .5; }
.timeline__items { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.timeline__items > div { transition: opacity 400ms; }
.timeline__items .when { font: 400 13px/20px var(--font-display); opacity: .65; }
.timeline__items h3 { margin: 6px 0 8px; font: 500 26px/1.1 var(--font-display); letter-spacing: -.02em; }
.timeline__items p { margin: 0; font: 400 15px/23px var(--font-display); opacity: .8; max-width: 240px; }

/* Compare table */
.compare { width: 100%; border-collapse: collapse; border-top: 1px solid currentColor; }
.compare th, .compare td { text-align: start; vertical-align: top; padding: 22px 24px 22px 0; border-bottom: 1px solid var(--rule); font: 400 16px/25px var(--font-display); }
.compare th { font-weight: 500; }
.compare thead th { font: 500 13px/1 var(--font-display); letter-spacing: .08em; text-transform: uppercase; opacity: .6; padding: 18px 24px 18px 0; }
.compare tbody th { width: 22%; opacity: .75; }
.compare td { opacity: .78; }
.compare td.is-us { opacity: 1; position: relative; padding-inline-start: 22px; }
.compare td.is-us::before { content: ""; position: absolute; inset-inline-start: 0; top: 30px; width: 8px; height: 8px; border-radius: 999px; background: var(--vcl-red); }
.compare thead th.is-us { opacity: 1; padding-inline-start: 22px; }

/* Named lists: proof "five things", workspace points, reasons */
.nlist { border-top: 1px solid currentColor; }
.nlist > div { display: grid; grid-template-columns: 300px 1fr; gap: 32px; padding: 26px 0; border-bottom: 1px solid var(--rule); }
.nlist h3 { margin: 0; font: 500 24px/1.15 var(--font-display); letter-spacing: -.02em; }
.nlist p { margin: 0; font: 400 16px/26px var(--font-display); opacity: .85; max-width: 640px; }
.ncols { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid currentColor; }
.ncols > div { padding: 32px 32px 32px 0; }
.ncols > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.ncols h3 { margin: 0 0 14px; font: 500 28px/1.1 var(--font-display); letter-spacing: -.025em; }
.ncols p { margin: 0; font: 400 15px/24px var(--font-display); opacity: .82; }
.ngrid { display: grid; grid-template-columns: 1fr 1fr; gap: 0 48px; border-top: 1px solid currentColor; }
.ngrid > div { padding: 26px 0; border-bottom: 1px solid var(--rule); }
.ngrid h3 { margin: 0 0 8px; font: 500 24px/1.15 var(--font-display); letter-spacing: -.02em; }
.ngrid p { margin: 0; font: 400 15px/24px var(--font-display); opacity: .82; }

/* Touchpoints */
.touch { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 32px; border-top: 1px solid currentColor; }
.touch > div { padding-top: 28px; }
.touch > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.touch h3 { margin: 0; font: 500 30px/1.1 var(--font-display); letter-spacing: -.025em; }
.touch .journey { display: block; margin: 6px 0 16px; font: 400 14px/22px var(--font-display); opacity: .65; }
.touch ul { list-style: none; margin: 0; padding: 0; }
.touch li { padding: 14px 0; border-top: 1px solid var(--rule); }
.touch li b { display: block; font: 500 15px/22px var(--font-display); opacity: .8; }
.touch li p { margin: 4px 0 0; font: 400 15px/23px var(--font-display); opacity: .85; }

/* Questions: three lines with the point; chips for standards */
.qlist { list-style: none; margin: 32px 0 0; padding: 0; border-top: 1px solid var(--rule); max-width: 720px; }
.qlist li { display: flex; align-items: center; gap: 18px; padding: 20px 0; border-bottom: 1px solid var(--rule); font: 500 26px/1.15 var(--font-display); letter-spacing: -.025em; }
.qlist li::before { content: ""; flex: none; width: 10px; height: 10px; border-radius: 999px; background: var(--vcl-red); }
.chips { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 0; padding: 0; list-style: none; }
.chips li { font: 400 14px/1 var(--font-display); padding: 12px 16px; border: 1px solid var(--rule); border-radius: 999px; opacity: .85; }

/* Audience panels */
.roles { display: flex; gap: 8px; flex-wrap: wrap; margin: 0 0 64px; }
.roles a { font: 500 15px/1 var(--font-display); color: inherit; text-decoration: none; padding: 12px 18px; border: 1px solid var(--rule); border-radius: 999px; }
.roles a:hover { border-color: currentColor; }
.audience { padding: 64px 0; border-top: 1px solid var(--rule); scroll-margin-top: 96px; }
.audience:first-of-type { border-top: 0; padding-top: 0; }
.audience h2 { font-size: 40px; }
.audience .lead { font: 500 22px/32px var(--font-display); letter-spacing: -.015em; margin: 14px 0 40px; max-width: 720px; }
.audience__cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 32px; }
.audience__cols > div + div { padding-inline-start: 32px; border-inline-start: 1px solid var(--rule); }
.audience__cols h3 { margin: 0 0 8px; font: 500 15px/22px var(--font-display); opacity: .65; }
.audience__cols ul { list-style: none; margin: 0; padding: 0; }
.audience__cols li { padding: 12px 0; border-top: 1px solid var(--rule); font: 400 15px/23px var(--font-display); opacity: .88; }

/* Region strip */
.regions { border-top: 1px solid var(--rule); }
.regions > div { display: grid; grid-template-columns: 200px 1fr; gap: 24px; padding: 22px 0; border-bottom: 1px solid var(--rule); }
.regions h3 { margin: 0; font: 500 18px/26px var(--font-display); letter-spacing: -.01em; opacity: .8; }
.regions ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 0; }
.regions li { font: 400 16px/26px var(--font-display); }
.regions li + li::before { content: "·"; margin: 0 14px; opacity: .45; }

/* FAQ */
.faq { border-top: 1px solid currentColor; max-width: 860px; }
.faq details { border-bottom: 1px solid var(--rule); }
.faq summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 1fr 24px; gap: 16px; align-items: center; padding: 22px 0; font: 500 22px/1.2 var(--font-display); letter-spacing: -.02em; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary .chev { width: 24px; height: 24px; display: grid; place-items: center; transition: transform 300ms var(--ease-out); }
.faq summary .chev::before { content: ""; width: 9px; height: 9px; border-inline-end: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translate(-2px, -2px); }
.faq details[open] summary .chev { transform: rotate(180deg); }
.faq p { margin: 0; padding: 0 48px 24px 0; font: 400 16px/26px var(--font-display); opacity: .82; }

/* Reveal motion */
[data-reveal] > * { opacity: 0; transform: translateY(14px); transition: opacity var(--dur-fade) var(--ease-out), transform var(--dur-fade) var(--ease-out); }
[data-reveal].is-in > * { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  [data-reveal] > * { opacity: 1; transform: none; transition: none; }
  .pmap__svg path { stroke-dashoffset: 0; transition: none; }
  .pmap__svg path.dash { opacity: 1; }
  .timeline__track i { transition: none; }
}

/* Tablet */
@media (max-width: 1100px) {
  .claims { grid-template-columns: 1fr 1fr; }
  .stats { grid-template-columns: 1fr 1fr; }
  .stats > div:nth-child(3) { padding-inline-start: 0; border-inline-start: 0; }
  .stats > div:nth-child(n+3) { border-top: 1px solid var(--rule); }
  .layers { grid-template-columns: 1fr 1fr; }
  .layers > div:nth-child(3) { padding-inline-start: 0; border-inline-start: 0; }
  .layers > div:nth-child(n+3) { border-top: 1px solid var(--rule); }
  .funnel__row { grid-template-columns: 1fr 1fr; gap: 8px 0; }
  .funnel__row h3 { grid-column: 1 / -1; margin-bottom: 8px; }
  .funnel__cell { padding-inline: 0 16px; }
  .funnel__cell + .funnel__cell::before { display: none; }
  .funnel__link { padding-inline-start: 0; }
  .explorer__tabs { display: flex; flex-wrap: wrap; }
  .explorer__panels { grid-template-columns: 1fr; }
  .explorer__track { display: none; }
  .explorer__track.is-on { display: block; }
  .explorer__track + .explorer__track { padding-inline-start: 0; border-inline-start: 0; }
  .pmap { grid-template-columns: 1fr; }
  .pmap__col--svg, .pmap__col--right { display: none; }
  .pmap__table { display: block; margin-top: 8px; }
  .pmap__table table { width: 100%; border-collapse: collapse; }
  .pmap__table th, .pmap__table td { text-align: start; vertical-align: top; padding: 14px 16px 14px 0; border-top: 1px solid var(--rule); font: 400 15px/22px var(--font-display); }
  .pmap__table th { font-weight: 500; }
  .pmap__table td { opacity: .8; }
}
/* Mobile */
@media (max-width: 767px) {
  .claims, .stats, .layers, .outcomes, .cycle, .touch, .ncols, .ngrid, .audience__cols, .timeline__items, .pillars { grid-template-columns: 1fr; }
  .stats > div, .layers > div, .outcomes > div, .cycle > div, .touch > div, .ncols > div, .pillars > div { padding-inline-start: 0 !important; border-inline-start: 0 !important; padding-inline-end: 0; }
  .stats > div + div, .layers > div + div, .outcomes > div + div, .cycle > div + div, .touch > div + div, .ncols > div + div, .pillars > div + div, .audience__cols > div + div { border-top: 1px solid var(--rule); margin-top: 8px; padding-inline-start: 0; border-inline-start: 0; }
  .stats b { font-size: 56px; }
  .layers b { font-size: 48px; }
  .pillars h3 { font-size: 34px; }
  .risks { grid-template-columns: 1fr; gap: 0; }
  .risks summary { cursor: pointer; display: grid; grid-template-columns: 1fr 24px; align-items: center; gap: 12px; padding: 20px 0; border-top: 1px solid var(--rule); }
  .risks summary .chev { display: grid; width: 24px; height: 24px; place-items: center; transition: transform 300ms var(--ease-out); }
  .risks summary .chev::before { content: ""; width: 9px; height: 9px; border-inline-end: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translate(-2px,-2px); }
  .risks details[open] summary .chev { transform: rotate(180deg); }
  .risks details:first-child summary { border-top: 0; }
  .funnel__row { grid-template-columns: 1fr; }
  .funnel__cell b { font-size: 44px; }
  .facts > div { grid-template-columns: 1fr; gap: 4px; }
  .plist > div { grid-template-columns: 48px 1fr; }
  .plist > div p { grid-column: 2; }
  .phases > div { grid-template-columns: 1fr; gap: 10px; }
  .nlist > div { grid-template-columns: 1fr; gap: 8px; }
  .regions > div { grid-template-columns: 1fr; gap: 8px; }
  .compare thead { display: none; }
  .compare, .compare tbody, .compare tr, .compare th, .compare td { display: block; }
  .compare tr { padding: 8px 0 16px; border-bottom: 1px solid var(--rule); }
  .compare th, .compare td { border: 0; padding: 8px 0; }
  .compare tbody th { width: auto; font-size: 14px; opacity: .6; }
  .compare td::before { content: attr(data-col); display: block; font: 500 12px/1 var(--font-display); letter-spacing: .08em; text-transform: uppercase; opacity: .55; margin-bottom: 4px; }
  .compare td.is-us { padding-inline-start: 18px; }
  .compare td.is-us::before { position: static; width: auto; height: auto; border-radius: 0; background: none; }
  .compare td.is-us::after { content: ""; position: absolute; inset-inline-start: 0; top: 12px; width: 8px; height: 8px; border-radius: 999px; background: var(--vcl-red); }
  .timeline__track { display: none; }
  .timeline__items { gap: 0; border-top: 1px solid var(--rule); }
  .timeline__items > div { padding: 18px 0; border-bottom: 1px solid var(--rule); }
  .qlist li { font-size: 20px; }
  .audience h2 { font-size: 32px; }
  .audience .lead { font-size: 19px; line-height: 28px; }
  .faq summary { font-size: 19px; }
}
