/* The problem (2026-10-15, option A "scroll-lit statement", agreed in words with the owner): a full-screen statement.
   A huge heading, then three big lines that start dim and light to bone one at a time as the visitor scrolls onto them
   (prob.js sets --k from 0 to 1; a line stays lit once read). A few key words light red. Then the Malphas answer.
   Wording per CLAIMS.md: "many", never "all"/"no antivirus"; the answer says "built to"; nothing about how it decides. */
/* the pinned handover (option F): the app section sticks (prob.js sets its top) and a black layer darkens it; the problem
   section's top is clear, so its heading types in over the darkened window, then its black body covers the window */
.fpin { position: relative; }
.fpin > .s-does { position: sticky; z-index: 1; }
.fdim { position: absolute; inset: 0; z-index: 20; background: #000; opacity: 0; pointer-events: none; }
.s-prob { position: relative; z-index: 2; display: block; min-height: 0; padding: 22vh 0 24vh;
  background: linear-gradient(180deg, rgba(0,0,0,0) 0, rgba(0,0,0,0) 30vh, #000 62vh); }
.ftype .fw { display: inline-block; white-space: nowrap; }
.ftype .fc { display: inline-block; opacity: 0; will-change: opacity, filter; }
.s-prob .ftype em .fw, .s-prob .ftype em .fc { color: inherit; }   /* the dim second line stays dim (s2.css colours every span bright) */
@media (prefers-reduced-motion: reduce) { .ftype .fc { opacity: 1; } }
.s9wrap { width: min(1120px, calc(100vw - 48px)); margin: 0 auto; }
.s-prob .s2head { align-items: center; text-align: center; }
.s-prob .s2head h2 span, .s-prob .s2head h2 em { font-size: clamp(42px, 5.4vw, 92px); line-height: 1.06; letter-spacing: -.005em; }
.s9lines { margin-top: 18vh; display: flex; flex-direction: column; gap: 16vh; }
.s9line { --k: 0; max-width: 980px; }
.s9line .n { display: block; margin-bottom: 14px; font-family: var(--display); font-weight: 300; font-size: clamp(44px, 4.6vw, 80px);
  line-height: 1; letter-spacing: .02em; font-variant-numeric: tabular-nums;
  color: rgba(237,237,232, calc(.1 + .3 * var(--k))); }   /* big numerals (owner, 2026-10-15); dimmer than the line so the words lead */
.s9line h3 { margin: 0; font-family: var(--display); font-weight: 300; font-size: clamp(32px, 3.9vw, 64px); line-height: 1.12;
  color: rgba(237,237,232, calc(.16 + .84 * var(--k))); }
.s9line h3 .r { color: color-mix(in srgb, #f5223c calc(var(--k) * 100%), rgba(237,237,232,.16));
  text-shadow: 0 0 calc(var(--k) * 24px) rgba(245,34,60, calc(var(--k) * .35)); }
.s9line p { margin: 26px 0 0; max-width: 34em; font-size: clamp(18px, 1.55vw, 25px); line-height: 1.55;
  color: rgba(237,237,232, calc(.12 + .58 * var(--k))); }
.s9line .cases { display: block; margin-top: 14px; font-family: var(--mono); font-size: 11.5px; letter-spacing: .08em;
  color: rgba(237,237,232, calc(.1 + .3 * var(--k))); }
.s9ans { --k: 0; margin: 20vh 0 0; max-width: 980px;
  font-family: var(--display); font-weight: 300; font-size: clamp(24px, 2.3vw, 38px); line-height: 1.35;
  color: rgba(237,237,232, calc(.16 + .56 * var(--k))); }
.s9ans b { display: block; margin-bottom: .35em; font-weight: 400; color: rgba(237,237,232, calc(.16 + .84 * var(--k))); }   /* no dot (owner, 2026-10-15) */
@media (prefers-reduced-motion: reduce) { .s9line, .s9ans { --k: 1 !important; } }
@media (max-width: 900px) {
  .s-prob { padding: 16vh 0 18vh; }
  .s9lines { margin-top: 12vh; gap: 11vh; }
  .s9ans { margin-top: 14vh; gap: 14px; }
}

/* 2026-10-22: the way out to the news page, under the Malphas answer */
.s9cta { margin-top: 64px; display: flex; align-items: center; gap: 22px; flex-wrap: wrap; }
.s9cta p { margin: 0; font-family: var(--display); font-weight: 300; font-size: clamp(22px, 2vw, 30px); color: rgba(237,237,232,.7); }
.s9cta a { display: inline-flex; align-items: center; gap: 10px; height: 48px; padding: 0 24px; border-radius: 999px; font-family: var(--text); font-size: 15px; font-weight: 500;
  background: #edede8; color: #070708; transition: background .3s, box-shadow .3s; }
.s9cta a:hover { background: #fff; box-shadow: 0 0 0 5px rgba(237,237,232,.08); }
