/* ai-product / sentient-core: an ominous machine intelligence in a containment facility.
   Pure black, one crimson eye (tinted by the brand), amber hazard tape, hairline
   brackets, scanlines. The voice is cold: thin, wide-tracked capitals; the files are
   monospace and arrive redacted, then declassify. */

:root {
  --sc-core: color-mix(in oklab, #ff2a14 82%, var(--wl-accent));
  --sc-deep: color-mix(in oklab, #7a0500 80%, var(--wl-accent));
  --sc-red: #ff3b2a;
  --sc-amber: #ffb000;
  --sc-ink: #efe9e6;
  --sc-soft: #a59c98;
  --sc-faint: #6b625f;
  --sc-line: rgb(255 70 50 / 0.2);
  --sc-line-2: rgb(255 70 50 / 0.38);

  --v-bg: #030202;
  --v-fg: var(--sc-ink);
  --v-soft: var(--sc-soft);
  --v-faint: var(--sc-faint);
  --v-line: var(--sc-line);
  --v-line-strong: var(--sc-line-2);
  --v-surface: #0b0706;
  --v-surface-2: #1a0c0a;
  --v-card-bg: #070404;
  --v-accent: var(--sc-red);
  --v-accent-text: var(--sc-red);
  --v-on-accent: #000;
  --v-secondary: var(--sc-amber);
  --v-seg-1: var(--sc-core);
  --v-seg-2: var(--sc-amber);
  --v-seg-3: #7a1208;
  --v-seg-4: #ffe0a0;
  --v-seg-5: #4a1a14;
  --v-seg-6: #2a1614;
  --v-font-body: ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", Menlo, Consolas, monospace;
  --v-font-display: "Helvetica Neue", "Segoe UI", ui-sans-serif, system-ui, Arial, sans-serif;
  --v-font-mono: var(--v-font-body);
  --v-display-weight: 300;
  --v-display-tracking: 0.22em;
  --v-display-case: uppercase;
  --v-display-lh: 1.15;
  --v-title-size: clamp(1.3rem, 2.6vw, 2.1rem);
  --v-body-size: 14.5px;
  --v-radius: 0px;
  --v-radius-sm: 0px;
  --v-radius-lg: 0px;
  --v-border: 1px solid var(--sc-line);
  --v-card-pad: 20px;
  --v-maxw: 1040px;
  --v-pad-x: clamp(16px, 4vw, 48px);
  --v-sec-gap: clamp(64px, 8vw, 110px);

  --wl-label-lore: "Origin file";
  --wl-label-features: "Observed capabilities";
  --wl-label-supply: "Allocation";
  --wl-label-flow: "Cognition sequence";
  --wl-label-timeline: "Incident log";
  --wl-label-comparison: "Readings";
  --wl-label-stats: "Readings";
  --wl-label-tweet: "Intercepted transmission";
  --wl-label-gallery: "Surveillance";
  --wl-label-facts: "Confirmed";
  --wl-label-quotes: "Witness statements";
  --wl-label-faq: "Interrogation";
  --wl-label-access: "Access protocol";
}

html { background: #030202; }
body { background: #030202; color: var(--sc-ink); font-size: 14.5px; line-height: 1.7; }
body::before {
  content: ""; position: fixed; inset: 0; z-index: 50; pointer-events: none;
  background:
    repeating-linear-gradient(0deg, rgb(0 0 0 / 0.22) 0 1px, transparent 1px 3px),
    radial-gradient(ellipse at 50% 45%, transparent 55%, rgb(0 0 0 / 0.75) 100%);
}

/* ---------------------------------------------------------------- hazard tape */

.sc-tape {
  position: relative; z-index: 3; overflow: hidden;
  background: repeating-linear-gradient(-45deg, var(--sc-amber) 0 16px, #0d0900 16px 32px);
  border-block: 1px solid #000;
}
.sc-tape--top { height: 30px; }
.sc-tape--top .wl-marquee { height: 100%; }
.sc-tape--top .wl-marquee__track { height: 100%; align-items: center; animation-duration: calc(var(--wl-marquee-s, 40s) * 1.4); }
.sc-tape .wl-marquee__item {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 22px; padding: 1px 12px;
  background: #000; color: var(--sc-amber);
  font-family: var(--v-font-display); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.2em; text-transform: uppercase;
}
.sc-tape .wl-marquee__item::before { content: "Warning"; padding: 0 6px; background: var(--sc-amber); color: #000; }
.sc-tape--foot { height: 12px; }

/* ---------------------------------------------------------------- bar */

.sc-bar {
  position: relative; z-index: 3;
  display: flex; align-items: center; gap: 28px;
  padding: 14px var(--v-pad-x); border-bottom: 1px solid var(--sc-line);
  font-family: var(--v-font-body); font-size: 0.72rem; letter-spacing: 0.16em; text-transform: uppercase;
}
.sc-id { display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto; column-gap: 12px; align-items: center; text-decoration: none; }
.sc-id__photo { grid-row: 1 / span 2; width: 38px; height: 38px; object-fit: cover; filter: grayscale(1) contrast(1.3) brightness(0.85) sepia(1) hue-rotate(-40deg) saturate(3); border: 1px solid var(--sc-line-2); }
.sc-id__k { display: block; color: var(--sc-faint); font-size: 0.62rem; letter-spacing: 0.26em; }
.sc-id__name { font-family: var(--v-font-display); font-size: 0.96rem; font-weight: 400; letter-spacing: 0.42em; color: var(--sc-ink); }
.sc-id__desig { display: grid; margin: 0; color: var(--sc-red); font-size: 0.86rem; letter-spacing: 0.2em; }
.sc-nav { display: flex; gap: 2px; margin-left: auto; overflow-x: auto; scrollbar-width: none; }
.sc-nav::-webkit-scrollbar { display: none; }
.sc-nav .wl-nav__link { flex: none; padding: 5px 9px; color: var(--sc-soft); text-decoration: none; font-size: 0.64rem; border: 1px solid transparent; }
.sc-nav .wl-nav__link:hover { color: var(--sc-red); border-color: var(--sc-line-2); }

/* ---------------------------------------------------------------- the chamber */

.sc-chamber {
  position: relative; overflow: hidden;
  display: grid; justify-items: center; align-content: center; gap: 0;
  min-height: calc(100vh - 30px - 68px);
  padding: 30px var(--v-pad-x) 34px;
  background: radial-gradient(60% 55% at 50% 42%, color-mix(in srgb, var(--sc-core) 10%, transparent), transparent 70%);
}
.sc-corner { position: absolute; width: 46px; height: 46px; border: 0 solid var(--sc-line-2); }
.sc-corner--tl { top: 18px; left: var(--v-pad-x); border-top-width: 1px; border-left-width: 1px; }
.sc-corner--tr { top: 18px; right: var(--v-pad-x); border-top-width: 1px; border-right-width: 1px; }
.sc-corner--bl { bottom: 18px; left: var(--v-pad-x); border-bottom-width: 1px; border-left-width: 1px; }
.sc-corner--br { bottom: 18px; right: var(--v-pad-x); border-bottom-width: 1px; border-right-width: 1px; }
.sc-status {
  position: absolute; top: 30px; right: calc(var(--v-pad-x) + 18px); margin: 0;
  display: flex; align-items: center; gap: 10px;
  font-size: 0.64rem; letter-spacing: 0.26em; text-transform: uppercase; color: var(--sc-faint);
}
.sc-status i { width: 8px; height: 8px; background: var(--sc-red); box-shadow: 0 0 10px var(--sc-red); animation: sc-blink 1.1s steps(1) infinite; }
.sc-status b { color: var(--sc-red); font-weight: 400; }
@keyframes sc-blink { 50% { opacity: 0.15; } }
.sc-kicker {
  position: absolute; top: 30px; left: calc(var(--v-pad-x) + 18px); margin: 0; max-width: 40%;
  font-size: 0.64rem; letter-spacing: 0.26em; text-transform: uppercase; color: var(--sc-soft);
}
.sc-kicker::before { content: "\25B2  "; color: var(--sc-amber); }

.sc-eye { position: relative; width: min(50vh, 470px, 86vw); aspect-ratio: 1; margin: -10px 0 -24px; }
.sc-eye__svg { width: 100%; height: 100%; overflow: visible; }
.sc-eye__bloom { animation: sc-pulse 5s ease-in-out infinite; transform-origin: center; }
@keyframes sc-pulse { 50% { opacity: 0.65; transform: scale(0.94); } }
.sc-ring circle { fill: none; }
.sc-ring { transform-origin: 0 0; }
.sc-ring--a circle { stroke: var(--sc-line-2); stroke-width: 10; stroke-dasharray: 1.5 9.5; }
.sc-ring--a { animation: sc-turn 90s linear infinite; }
.sc-ring--b circle { stroke: color-mix(in srgb, var(--sc-core) 55%, transparent); stroke-width: 2; stroke-dasharray: 110 40 20 40; }
.sc-ring--b { animation: sc-turn 40s linear infinite reverse; }
.sc-ring--c circle { stroke: var(--sc-line-2); stroke-width: 1; stroke-dasharray: 4 6; }
.sc-ring--c { animation: sc-turn 22s linear infinite; }
@keyframes sc-turn { to { transform: rotate(360deg); } }
.sc-eye__rim { fill: none; stroke: color-mix(in srgb, var(--sc-core) 70%, #000); stroke-width: 3; filter: drop-shadow(0 0 12px var(--sc-core)); }
.sc-iris { transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1); }
.sc-iris__glow { fill: var(--sc-core); opacity: 0.25; filter: blur(18px); }
.sc-iris__disc { filter: drop-shadow(0 0 24px var(--sc-core)); }
.sc-iris__fibres { fill: none; stroke: rgb(0 0 0 / 0.38); stroke-width: 58; stroke-dasharray: 0.8 3.2; }
.sc-iris__fibres--b { stroke: rgb(255 230 180 / 0.22); stroke-width: 22; stroke-dasharray: 0.6 2.4; }
.sc-iris__ring { fill: none; stroke: #000; stroke-width: 5; opacity: 0.8; }
.sc-pupil { transition: transform 0.25s cubic-bezier(0.2, 0.8, 0.2, 1); }
.sc-pupil__slit { fill: #000; stroke: color-mix(in srgb, var(--sc-core) 40%, #000); stroke-width: 2; transform-origin: 0 0; transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1); transform: scaleX(var(--sc-dilate, 1)); }
.sc-iris__glint { fill: #fff; opacity: 0.55; filter: blur(2px); }
.sc-lid { fill: #030202; transition: transform 0.12s ease-in; }
.sc-lid--top { transform-origin: 0 -360px; transform: scaleY(0.001); }
.sc-lid--bottom { transform-origin: 0 360px; transform: scaleY(0.001); }
.sc-blink .sc-lid--top { transform: scaleY(1.9); }
.sc-blink .sc-lid--bottom { transform: scaleY(1.9); }

.sc-voice { position: relative; z-index: 2; display: grid; justify-items: center; text-align: center; max-width: 60rem; }
.sc-headline {
  margin: 0; font-family: var(--v-font-display); font-weight: 300;
  font-size: clamp(1.5rem, 3.3vw, 2.7rem); line-height: 1.2; letter-spacing: 0.24em; text-transform: uppercase;
  color: #fff; text-shadow: 0 0 22px color-mix(in srgb, var(--sc-core) 70%, transparent);
  text-wrap: balance;
}
.sc-headline .wl-ch { animation: sc-char 0.01s steps(1) both; animation-delay: calc(var(--i) * 24ms + 250ms); }
@keyframes sc-char { from { opacity: 0; } }
.sc-headline::after { content: ""; display: inline-block; width: 0.5em; height: 0.9em; margin-left: 0.2em; vertical-align: -0.08em; background: var(--sc-red); box-shadow: 0 0 12px var(--sc-red); animation: sc-blink 0.9s steps(1) infinite; }
.sc-sub { max-width: 40rem; margin: 18px 0 0; color: var(--sc-soft); font-size: 0.9rem; letter-spacing: 0.04em; animation: sc-fade 0.9s ease 1s both; }
@keyframes sc-fade { from { opacity: 0; } }
.sc-cta { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 26px; animation: sc-fade 0.9s ease 1.2s both; }
.sc-cta .wl-btn {
  gap: 10px; padding: 11px 20px; border: 1px solid var(--sc-line-2); border-radius: 0;
  background: rgb(10 3 2 / 0.8); color: var(--sc-ink);
  font-family: var(--v-font-body); font-size: 0.74rem; font-weight: 500; letter-spacing: 0.24em; text-transform: uppercase;
}
.sc-cta .wl-btn:hover { transform: none; border-color: var(--sc-red); color: #fff; box-shadow: 0 0 24px -6px var(--sc-red); }
.sc-cta .wl-btn--primary { border-color: var(--sc-red); background: var(--sc-red); color: #000; box-shadow: 0 0 30px -8px var(--sc-red); }
.sc-cta .wl-btn--primary:hover { color: #000; }
.sc-cta .wl-btn__ca { letter-spacing: 0.04em; }

/* ---------------------------------------------------------------- surveillance still */

.sc-still { position: relative; max-width: var(--v-maxw); margin: 40px auto 0; padding: 0 var(--v-pad-x); }
.sc-still__frame { position: relative; aspect-ratio: 21 / 9; overflow: hidden; border: 1px solid var(--sc-line-2); background: #000; }
.sc-still__frame .wl-hero-img { filter: grayscale(1) contrast(1.35) brightness(0.8) sepia(1) hue-rotate(-38deg) saturate(2.6); }
.sc-still__frame::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background:
    linear-gradient(transparent 49.6%, rgb(255 60 40 / 0.35) 50%, transparent 50.4%),
    linear-gradient(90deg, transparent 49.8%, rgb(255 60 40 / 0.35) 50%, transparent 50.2%),
    repeating-linear-gradient(0deg, rgb(0 0 0 / 0.3) 0 2px, transparent 2px 4px);
}
.sc-still__cap { display: flex; align-items: center; gap: 14px; margin: 10px 0 0; font-size: 0.64rem; letter-spacing: 0.24em; text-transform: uppercase; color: var(--sc-faint); }
.sc-rec { width: 9px; height: 9px; border-radius: 50%; background: var(--sc-red); box-shadow: 0 0 8px var(--sc-red); animation: sc-blink 1.4s steps(1) infinite; }

/* ---------------------------------------------------------------- sealed files */

.sc-files .wl-sec__inner { position: relative; padding: 30px clamp(18px, 3vw, 36px) 34px; border: 1px solid var(--sc-line); background: linear-gradient(180deg, #0a0605, #050303); }
.sc-files .wl-sec__inner::before, .sc-files .wl-sec__inner::after { content: ""; position: absolute; width: 14px; height: 14px; border: 0 solid var(--sc-red); }
.sc-files .wl-sec__inner::before { top: -1px; left: -1px; border-top-width: 2px; border-left-width: 2px; }
.sc-files .wl-sec__inner::after { bottom: -1px; right: -1px; border-bottom-width: 2px; border-right-width: 2px; }
.sc-files .wl-sec__head { max-width: none; margin-bottom: 26px; padding-bottom: 18px; border-bottom: 1px dashed var(--sc-line-2); }
.sc-files .wl-kicker { gap: 14px; margin-bottom: 14px; font-size: 0.66rem; letter-spacing: 0.28em; color: var(--sc-red); }
.sc-files .wl-kicker .wl-ord { order: 2; margin-left: auto; opacity: 1; color: var(--sc-faint); }
.sc-files .wl-kicker .wl-ord::before { content: "File "; }
.sc-files .wl-kicker__label::before { content: "\25A0  " var(--wl-label-lore); }
.sc-files .wl-sec--features .wl-kicker__label::before { content: "\25A0  " var(--wl-label-features); }
.sc-files .wl-sec--infographic[data-graphic="supply"] .wl-kicker__label::before { content: "\25A0  " var(--wl-label-supply); }
.sc-files .wl-sec--infographic[data-graphic="flow"] .wl-kicker__label::before { content: "\25A0  " var(--wl-label-flow); }
.sc-files .wl-sec--infographic[data-graphic="timeline"] .wl-kicker__label::before { content: "\25A0  " var(--wl-label-timeline); }
.sc-files .wl-sec--infographic[data-graphic="comparison"] .wl-kicker__label::before { content: "\25A0  " var(--wl-label-comparison); }
.sc-files .wl-sec--infographic[data-graphic="stats"] .wl-kicker__label::before { content: "\25A0  " var(--wl-label-stats); }
.sc-files .wl-sec--tweet .wl-kicker__label::before { content: "\25A0  " var(--wl-label-tweet); }
.sc-files .wl-sec--timeline .wl-kicker__label::before { content: "\25A0  " var(--wl-label-timeline); }
.sc-files .wl-sec--gallery .wl-kicker__label::before { content: "\25A0  " var(--wl-label-gallery); }
.sc-files .wl-sec--facts .wl-kicker__label::before { content: "\25A0  " var(--wl-label-facts); }
.sc-files .wl-sec--quotes .wl-kicker__label::before { content: "\25A0  " var(--wl-label-quotes); }
.sc-files .wl-sec--faq .wl-kicker__label::before { content: "\25A0  " var(--wl-label-faq); }
.sc-files .wl-sec--access .wl-kicker__label::before { content: "\25A0  " var(--wl-label-access); }
.sc-files .wl-sec__title { font-weight: 300; letter-spacing: 0.2em; color: #fff; }

/* declassification: every line of text starts under a black bar that retracts */
.sc-redact {
  -webkit-box-decoration-break: clone; box-decoration-break: clone;
  background: linear-gradient(#2a1714, #2a1714) 100% 0 / 0% 100% no-repeat;
}
[data-wl-reveal="on"] .sc-files .wl-reveal:not(.wl-in) .sc-redact { background-size: 100% 100%; color: transparent; }
.sc-files .wl-in .sc-redact { animation: sc-declass 0.8s steps(6, end) both; animation-delay: calc(var(--r, 0) * 120ms + 250ms); }
.sc-files .sc-open .sc-redact { animation: none; background-size: 0% 100%; color: inherit; }
@keyframes sc-declass { 0% { background-size: 100% 100%; color: transparent; } 60% { color: transparent; } 61% { color: inherit; } 100% { background-size: 0% 100%; } }
[data-wl-reveal="on"] .sc-files .wl-reveal { transform: none; opacity: 1; }

.sc-files .wl-lore__lead { font-family: var(--v-font-display); font-weight: 300; font-size: clamp(1.1rem, 1.9vw, 1.45rem); line-height: 1.55; letter-spacing: 0.02em; color: #fff; }
.sc-files .wl-lore__p { color: var(--sc-soft); }

/* capabilities: a grid of anomaly cells */
.sc-files .wl-features { gap: 0; border-top: 1px solid var(--sc-line); border-left: 1px solid var(--sc-line); grid-template-columns: repeat(auto-fit, minmax(min(230px, 100%), 1fr)); }
.sc-files .wl-feature { padding: 22px 20px 24px; border: 0; border-right: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); background: #060303; }
.sc-files .wl-feature:hover { transform: none; background: #0e0605; }
.sc-files .wl-feature .wl-ord { top: 22px; right: 20px; color: var(--sc-red); }
.sc-files .wl-feature__icon { width: 40px; height: 40px; margin-bottom: 18px; border-radius: 50%; background: none; border: 1px solid var(--sc-line-2); color: var(--sc-red); box-shadow: inset 0 0 14px -4px var(--sc-core); }
.sc-files .wl-feature__icon .wl-glyph { width: 18px; height: 18px; stroke-width: 1.4; }
.sc-files .wl-feature__title { font-family: var(--v-font-display); font-weight: 400; font-size: 0.92rem; letter-spacing: 0.2em; text-transform: uppercase; }
.sc-files .wl-feature__text { color: var(--sc-soft); font-size: 0.84rem; }

/* readings */
.sc-files .wl-bars { gap: 16px; }
.sc-files .wl-bar__label { font-size: 0.74rem; font-weight: 400; letter-spacing: 0.16em; text-transform: uppercase; color: var(--sc-soft); }
.sc-files .wl-bar__track { height: 14px; border-radius: 0; }
.sc-files .wl-bar__bg { fill: #140807; }
.sc-files .wl-bar__fill { fill: var(--sc-core); }
.sc-files .wl-bar__value { font-family: var(--v-font-body); font-weight: 500; font-size: 1.1rem; color: #fff; }
.sc-files .wl-stats { border-radius: 0; border-color: var(--sc-line); background: var(--sc-line); }
.sc-files .wl-stat { background: #060303; }
.sc-files .wl-stat__value { font-family: var(--v-font-display); font-weight: 200; letter-spacing: 0.06em; color: #fff; }
.sc-files .wl-stat__label { color: var(--sc-red); }
.sc-files .wl-table-wrap { border-radius: 0; }
.sc-files .wl-caption { font-size: 0.72rem; letter-spacing: 0.1em; color: var(--sc-faint); }
.sc-files .wl-graphic--supply { gap: 32px; }
.sc-files .wl-donut__track { stroke: #140807; stroke-width: 14; }
.sc-files .wl-donut__seg { stroke-width: 14; filter: drop-shadow(0 0 8px var(--sc-core)); }
.sc-files .wl-donut__ticks line { stroke: var(--sc-line-2); }
.sc-files .wl-donut__value { font-family: var(--v-font-display); font-weight: 200; letter-spacing: 0.05em; }
.sc-files .wl-legend__swatch { border-radius: 0; }
.sc-files .wl-legend__value { font-family: var(--v-font-body); font-weight: 500; }
.sc-files .wl-ring__track { stroke: #140807; }
.sc-files .wl-ring__fill { stroke: var(--sc-core); stroke-linecap: butt; }
.sc-files .wl-ring__value { font-family: var(--v-font-display); font-weight: 200; }

/* the cognition sequence: a vertical chain */
.sc-files .wl-flowchart { grid-template-columns: 1fr !important; gap: 0; max-width: 44rem; }
.sc-files .wl-node { flex-direction: column; }
.sc-files .wl-node__card { display: grid; grid-template-columns: 54px 1fr; column-gap: 18px; padding: 16px 18px; border-color: var(--sc-line-2); background: #070303; }
.sc-files .wl-node__card .wl-ord { grid-row: span 2; width: 54px; height: 54px; margin: 0; border-radius: 0; background: none; border: 1px solid var(--sc-red); color: var(--sc-red); font-size: 1rem; }
.sc-files .wl-node__title { font-family: var(--v-font-display); font-weight: 400; font-size: 1rem; letter-spacing: 0.2em; text-transform: uppercase; }
.sc-files .wl-node__text { font-size: 0.86rem; }
.sc-files .wl-node__edge { width: 24px; height: 34px; margin: 0 0 0 33px; transform: rotate(90deg); align-self: flex-start; }
.sc-files .wl-edge__line, .sc-files .wl-edge__head { stroke: var(--sc-red); }

/* incident log */
.sc-files .wl-milestones::before { left: 13px; background: var(--sc-line-2); }
.sc-files .wl-ms__dot { background: #050303; border-radius: 0; }
.sc-files .wl-ms__ring { fill: #050303; stroke: var(--sc-red); }
.sc-files .wl-ms__core { fill: var(--sc-red); }
.sc-files .wl-ms__when { color: var(--sc-amber); letter-spacing: 0.16em; }
.sc-files .wl-ms__title { font-family: var(--v-font-display); font-weight: 400; font-size: 1.05rem; letter-spacing: 0.16em; text-transform: uppercase; }

/* transmission */
.sc-files .wl-post { border-radius: 0; border-color: var(--sc-line-2); background: #060303; box-shadow: 0 0 40px -24px var(--sc-core); }
.sc-files .wl-post__avatar--initial { border-radius: 0; background: var(--sc-red); color: #000; }
.sc-files .wl-post__text { font-family: var(--v-font-display); font-weight: 300; letter-spacing: 0.04em; }
.sc-files .wl-post__link { color: var(--sc-red); }

/* surveillance */
.sc-files .wl-gallery { gap: 10px; }
.sc-files .wl-shot { border-radius: 0; border: 1px solid var(--sc-line-2); }
.sc-files .wl-shot img { filter: grayscale(1) contrast(1.3) sepia(1) hue-rotate(-38deg) saturate(2.4) brightness(0.85); }
.sc-files .wl-shot:hover img { transform: none; }
.sc-files .wl-shot__caption { left: 0; right: 0; bottom: 0; border-radius: 0; background: rgb(0 0 0 / 0.75); font-size: 0.66rem; letter-spacing: 0.18em; text-transform: uppercase; }

/* witness statements */
.sc-files .wl-quotes { gap: 0; border-top: 1px solid var(--sc-line); border-left: 1px solid var(--sc-line); }
.sc-files .wl-quote { padding: 24px 22px 20px; border: 0; border-right: 1px solid var(--sc-line); border-bottom: 1px solid var(--sc-line); background: #060303; }
.sc-files .wl-quote::before { content: "Statement"; position: static; display: block; margin-bottom: 12px; font-family: var(--v-font-body); font-size: 0.62rem; letter-spacing: 0.26em; text-transform: uppercase; color: var(--sc-red); line-height: 1.4; }
.sc-files .wl-quote__text { font-family: var(--v-font-display); font-weight: 300; font-size: 1.05rem; letter-spacing: 0.02em; }
.sc-files .wl-quote__who { color: var(--sc-amber); }

/* confirmed */
.sc-files .wl-facts { gap: 0; border-top: 1px solid var(--sc-line); }
.sc-files .wl-fact { grid-template-columns: 26px 1fr; padding: 14px 4px; border: 0; border-bottom: 1px solid var(--sc-line); border-radius: 0; background: none; font-size: 0.92rem; }
.sc-files .wl-fact__mark { width: 18px; height: 18px; border-radius: 0; margin-top: 4px; background: var(--sc-red); color: #000; }
.sc-files .wl-fact__mark .wl-glyph { width: 12px; height: 12px; }

/* interrogation */
.sc-files .wl-faq { gap: 0; border-top: 1px solid var(--sc-line); }
.sc-files .wl-qa { border: 0; border-bottom: 1px solid var(--sc-line); border-radius: 0; background: none; }
.sc-files .wl-qa__q { padding: 18px 4px; font-family: var(--v-font-display); font-weight: 400; font-size: 0.95rem; letter-spacing: 0.1em; text-transform: uppercase; }
.sc-files .wl-qa__q > span:first-child::before { content: "Q. "; color: var(--sc-red); }
.sc-files .wl-qa__a { padding: 0 4px 20px 32px; color: var(--sc-soft); }
.sc-files .wl-qa__a::before { content: "A. "; margin-left: -28px; color: var(--sc-amber); }
.sc-files .wl-qa__sign { color: var(--sc-red); }

/* access protocol: a keycard */
.sc-files .wl-access { gap: 16px; }
.sc-files .wl-ca { border-radius: 0; border-color: var(--sc-red); background: repeating-linear-gradient(-45deg, #0b0403 0 8px, #070303 8px 16px); box-shadow: 0 0 34px -18px var(--sc-red); }
.sc-files .wl-ca__label { color: var(--sc-red); }
.sc-files .wl-ca__value { color: #fff; letter-spacing: 0.06em; }
.sc-files .wl-copy { border-radius: 0; background: var(--sc-red); color: #000; font-family: var(--v-font-body); font-size: 0.72rem; letter-spacing: 0.2em; text-transform: uppercase; }
.sc-files .wl-link { border-radius: 0; border-color: var(--sc-line-2); background: none; font-size: 0.74rem; letter-spacing: 0.16em; text-transform: uppercase; }
.sc-files .wl-link:hover { transform: none; border-color: var(--sc-red); }
.sc-files .wl-link .wl-glyph { color: var(--sc-red); }

/* ---------------------------------------------------------------- footer */

.sc-foot { margin-top: var(--v-sec-gap); padding: 0 0 40px; text-align: center; }
.sc-foot__name { margin: 34px 0 6px; font-family: var(--v-font-display); font-weight: 300; font-size: 1.2rem; letter-spacing: 0.5em; text-transform: uppercase; }
.sc-foot__tick { color: var(--sc-red); letter-spacing: 0.2em; }
.sc-foot__line { margin: 0 0 20px; color: var(--sc-faint); font-size: 0.8rem; letter-spacing: 0.12em; }
.sc-foot .wl-links { justify-content: center; gap: 8px; }
.sc-foot .wl-link { border-radius: 0; border-color: var(--sc-line-2); background: none; padding: 8px 14px; font-size: 0.7rem; letter-spacing: 0.18em; text-transform: uppercase; }

/* ---------------------------------------------------------------- phone */

@media (max-width: 760px) {
  .sc-bar { flex-wrap: wrap; gap: 10px 22px; }
  .sc-nav { display: none; }
  .sc-chamber { min-height: calc(100svh - 30px - 70px); padding-top: 64px; }
  .sc-kicker { max-width: 58%; top: 26px; }
  .sc-status { top: 26px; }
  .sc-status span { display: none; }
  .sc-eye { width: min(88vw, 420px); margin: 0 0 -12px; }
  .sc-headline { font-size: clamp(1.3rem, 6.6vw, 1.8rem); letter-spacing: 0.16em; }
  .sc-files .wl-node__card { grid-template-columns: 42px 1fr; }
  .sc-files .wl-node__card .wl-ord { width: 42px; height: 42px; }
  .sc-files .wl-node__edge { margin-left: 27px; }
}
