
  /* ── Tema: sei colori, font di sistema (nessun CDN) ─────────────── */
  :root {
    --sc-canvas:     #000000;
    --sc-surface:    #0F140F;
    --sc-ink:        #E9EFE9;
    --sc-ink-soft:   #97A69B;
    --sc-accent:     #43E08A;
    --sc-accent-ink: #05130B;
    --sc-font-display: system-ui, "Segoe UI", "Helvetica Neue", sans-serif;
    --sc-font-text:    system-ui, "Segoe UI", "Helvetica Neue", sans-serif;
    --sc-font-mono:    ui-monospace, "SF Mono", "Cascadia Mono", Menlo, monospace;
    --sc-shadow-color: 150 30% 2%;
  }
  html { scroll-behavior: smooth; background: var(--sc-canvas); }
  .shotmode *, .shotmode *::before, .shotmode *::after { transition-duration: 0ms !important; }
  @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

  /* Terre dei capitoli: cambi netti, una sola famiglia scura.
     v4: mai piatte. Sotto c'è il campo di fondo (#fondo, canvas fisso:
     stelle con parallasse e linee circuit); sopra, per terra, un bagliore
     radiale e una griglia tenue. Le terre sono semitrasparenti così il
     campo passa attraverso. */
  /* fondi: nero puro (#000) come in v3; la densita' viene dal canvas #fondo
     (stelle + tracce), da glow localizzati a bassa alpha e dal contenuto */
  .g-base  { background:
    radial-gradient(46% 38% at 50% 42%, rgba(67,224,138,0.045), transparent 70%),
    transparent; }
  .g-iron  { background:
    radial-gradient(40% 44% at 28% 45%, rgba(255,181,71,0.05), transparent 70%),
    repeating-linear-gradient(0deg, rgba(233,239,233,0.022) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(90deg, rgba(233,239,233,0.022) 0 1px, transparent 1px 72px),
    transparent; }
  .g-steel { background:
    radial-gradient(44% 40% at 70% 42%, rgba(94,231,255,0.05), transparent 70%),
    repeating-linear-gradient(0deg, rgba(94,231,255,0.03) 0 1px, transparent 1px 5px),
    transparent; }
  .g-loop  { background:
    radial-gradient(40% 40% at 36% 50%, rgba(67,224,138,0.05), transparent 70%),
    radial-gradient(34% 34% at 74% 40%, rgba(255,95,210,0.035), transparent 70%),
    transparent; }
  section { position: relative; }
  main { position: relative; z-index: 1; }
  #fondo { position: fixed; inset: 0; width: 100%; height: 100%; z-index: 0;
    pointer-events: none; }

  /* ── Folio a margine (la sola chrome di navigazione) ────────────── */
  .folio {
    position: fixed; left: clamp(0.6rem, 1.6vw, 1.6rem); top: 50%;
    translate: 0 -50%; z-index: var(--sc-z-chrome);
    writing-mode: vertical-rl; rotate: 180deg;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    letter-spacing: var(--sc-track-wide); text-transform: uppercase;
    color: var(--sc-ink-soft); white-space: nowrap;
  }
  .folio b { color: var(--sc-accent); font-weight: 600; }
  @media (max-width: 960px) { .folio { display: none; } }

  /* ── Il verso della lettura: doppia freccia sempre in basso ─────── */
  .giu {
    position: fixed; left: 50%; transform: translateX(-50%);
    bottom: clamp(0.9rem, 2.4vw, 2.2rem); z-index: var(--sc-z-chrome);
    color: var(--sc-accent); pointer-events: none;
    filter: drop-shadow(0 0 6px color-mix(in oklab, var(--sc-accent) 55%, transparent));
  }
  .giu svg { display: block; }
  .giu.chiuso { opacity: 0; transition: opacity 400ms var(--sc-ease-out); }
  .giu polyline { opacity: 0.25; }
  @media (prefers-reduced-motion: no-preference) {
    .giu__a { animation: giu-a 2s var(--sc-ease-out) infinite; }
    .giu__b { animation: giu-a 2s var(--sc-ease-out) 0.18s infinite; }
  }
  @keyframes giu-a {
    0%   { opacity: 0.12; transform: translateY(-3px); }
    35%  { opacity: 0.85; transform: translateY(0); }
    70%  { opacity: 0.12; transform: translateY(3px); }
    100% { opacity: 0.12; transform: translateY(-3px); }
  }
  @media (max-width: 700px) {
    /* su telefono il registro occupa tutta la fascia bassa: la freccia sale sopra */
    .giu { bottom: 5.4rem; }
  }

  /* ── Il registro (signature move) ───────────────────────────────── */
  .registro {
    position: fixed; right: clamp(0.8rem, 2vw, 2rem); bottom: clamp(0.8rem, 2vw, 2rem);
    z-index: var(--sc-z-chrome); width: min(22rem, 46vw);
    background: color-mix(in oklab, var(--sc-surface) 88%, transparent);
    border: 1px solid var(--sc-hairline); border-radius: var(--sc-r-md);
    box-shadow: var(--sc-e2), var(--sc-edge);
    padding: var(--sc-3) var(--sc-4);
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    backdrop-filter: blur(6px);
  }
  .registro__title {
    margin: 0 0 var(--sc-2); color: var(--sc-ink-soft);
    letter-spacing: var(--sc-track-wide); font-size: 0.68rem;
  }
  .registro__title b { color: var(--sc-accent); font-weight: 600; }
  .registro ol { list-style: none; margin: 0; padding: 0; }
  .registro li {
    color: var(--sc-ink-soft); padding: 2px 0; border-top: 1px solid var(--sc-hairline);
    display: flex; gap: 0.5em; align-items: baseline;
    opacity: 0; transform: translateY(6px);
    transition: opacity 300ms var(--sc-ease-out), transform 300ms var(--sc-ease-out);
  }
  .registro li.viva { opacity: 1; transform: none; }
  .registro li .rid { color: var(--sc-accent); }
  .registro li .resto { flex: 1; min-width: 0; white-space: nowrap;
    overflow: hidden; text-overflow: ellipsis; }
  .registro li .stato { color: var(--sc-ink-soft); }
  .registro li.assorbita { color: color-mix(in oklab, var(--sc-ink-soft) 55%, transparent); }
  .registro li.assorbita .rid { color: color-mix(in oklab, var(--sc-accent) 55%, transparent); }
  .registro li.assorbita .stato { color: var(--sc-accent); }
  @media (max-width: 700px) {
    .registro { width: auto; left: 0.8rem; right: 0.8rem; bottom: 0.8rem; padding: var(--sc-2) var(--sc-3); }
    .registro li:not(:last-child) { display: none; }
    .registro ol { border: 0; }
  }
  @media (prefers-reduced-motion: reduce) { .registro li { transition: none; transform: none; } }
  .registro.chiuso { opacity: 0; pointer-events: none;
    transition: opacity 500ms var(--sc-ease-out); }

  /* ── Pagina di titolo ───────────────────────────────────────────── */
  .titolo { min-height: 100svh; display: flex; align-items: center; }
  .titolo .kicker { margin-bottom: var(--sc-5); }
  .titolo h1 { max-width: 11ch; }
  .titolo .sotto { margin-top: var(--sc-5); }
  .titolo .sc-wrap { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: var(--sc-7); align-items: center; }
  /* il richiamo piccolo del cervello: motivo ricorrente (hero e colofone) */
  .brain-minibox { position: relative; aspect-ratio: 1 / 0.86; width: 100%;
    max-width: 30rem; margin-inline: auto; }
  .brain-minibox canvas { position: absolute; inset: 0; width: 100%; height: 100%; }
  .brain-minibox figcaption { position: absolute; left: 0; right: 0; bottom: -0.4rem;
    text-align: center; font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    color: var(--sc-ink-soft); letter-spacing: var(--sc-track-wide); text-transform: uppercase; }
  .titolo .cifre { margin-top: var(--sc-6); display: flex; flex-wrap: wrap; gap: var(--sc-3) var(--sc-6);
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft);
    letter-spacing: var(--sc-track-wide); text-transform: uppercase; }
  .titolo .cifre b { color: var(--sc-ink); font-weight: 600; }
  @media (max-width: 900px) {
    .titolo .sc-wrap { grid-template-columns: 1fr; gap: var(--sc-5); padding-block: var(--sc-8) var(--sc-9); }
    .brain-minibox { max-width: 18rem; }
  }
  @media (max-width: 700px) { .titolo h1 { font-size: var(--sc-t-2xl); } }

  .kicker {
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    letter-spacing: var(--sc-track-wide); text-transform: uppercase;
    color: var(--sc-accent); margin: 0;
  }

  /* ── Intertitoli di capitolo ────────────────────────────────────── */
  .intertitolo { padding-block: clamp(5rem, 14vh, 9rem); }
  .intertitolo .wipe { overflow: hidden; padding-block: 0.12em; }
  .intertitolo .cap { color: var(--sc-ink-soft); font-family: var(--sc-font-mono);
    font-size: var(--sc-t-sm); letter-spacing: var(--sc-track-wide);
    text-transform: uppercase; margin: 0 0 var(--sc-4); }
  .intertitolo h2 { margin: 0; }
  /* v4: ogni intertitolo porta le sue cifre vere, niente tipo solo nel nero */
  .intertitolo .sc-wrap { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: var(--sc-6); align-items: end; }
  .intertitolo .cifre { list-style: none; margin: 0; padding: 0;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-sm); color: var(--sc-ink-soft);
    border-left: 1px solid var(--sc-hairline); padding-left: var(--sc-5); }
  .intertitolo .cifre li { padding: var(--sc-1) 0; display: flex; justify-content: space-between; gap: var(--sc-4); }
  .intertitolo .cifre b { color: var(--sc-ink); font-weight: 600; font-variant-numeric: tabular-nums; }
  @media (max-width: 900px) { .intertitolo .sc-wrap { grid-template-columns: 1fr; } }

  /* ── Capitolo I: il disegno che si traccia ──────────────────────── */
  .officina { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: var(--sc-7); align-items: center; height: 100%;
    max-width: var(--sc-maxw); margin-inline: auto; padding: var(--sc-8) var(--sc-gutter); }
  @media (max-width: 900px) {
    .officina { grid-template-columns: 1fr; align-content: center; gap: var(--sc-4); padding: var(--sc-5) var(--sc-gutter); }
    .disegno { max-height: 30svh; }
    .callout .voce { margin-bottom: var(--sc-4); }
    .callout .voce h3 { font-size: var(--sc-t-xl); }
  }
  .disegno { width: 100%; height: auto; display: block; }
  .disegno path, .disegno circle.tr, .disegno rect.tr, .disegno line.tr {
    fill: none; stroke: var(--sc-ink-soft); stroke-width: 1.6;
    stroke-dasharray: 1; vector-effect: non-scaling-stroke;
    stroke-linecap: round; stroke-linejoin: round;
  }
  .disegno .acc { stroke: var(--sc-accent); }
  .disegno .fase1 { stroke-dashoffset: clamp(0, 1 - (var(--sc-p, 0) * 2.2 + 0.18), 1); }
  .disegno .fase2 { stroke-dashoffset: clamp(0, 1 - (var(--sc-p, 0) - 0.28) * 2.4, 1); }
  .disegno .fase3 { stroke-dashoffset: clamp(0, 1 - (var(--sc-p, 0) - 0.55) * 2.8, 1); }
  @media (prefers-reduced-motion: reduce) {
    .disegno .fase1, .disegno .fase2, .disegno .fase3 { stroke-dashoffset: 0; }
  }
  .callout { position: relative; }
  .callout .voce { margin-bottom: var(--sc-6); }
  .callout .voce p { margin-top: var(--sc-2); }

  /* ── Spread editoriali ──────────────────────────────────────────── */
  .spread { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
    gap: var(--sc-7); align-items: start; }
  .spread--inv { grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); }
  @media (max-width: 900px) { .spread, .spread--inv { grid-template-columns: 1fr; gap: var(--sc-6); } }

  figure.plate { margin: 0; }
  .plate__media {
    background: var(--sc-surface); border: 1px solid var(--sc-hairline);
    border-radius: var(--sc-r-md); box-shadow: var(--sc-e2), var(--sc-edge);
    overflow: hidden;
  }
  .plate__media img { display: block; width: 100%; height: auto; max-width: 100%; }
  .plate--paper .plate__media { background: #E9E7E2; }
  .plate--paper .plate__media img { mix-blend-mode: multiply; }
  figure.plate figcaption {
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    color: var(--sc-ink-soft); margin-top: var(--sc-3);
    letter-spacing: 0.02em;
  }
  figure.plate figcaption .rif { color: var(--sc-accent); }
  .plate + .plate { margin-top: var(--sc-6); }

  .dopo-pin { padding-top: var(--sc-6); }

  .spec { list-style: none; margin: var(--sc-6) 0 0; padding: 0;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-sm); }
  .spec li { display: flex; justify-content: space-between; gap: var(--sc-4);
    padding: var(--sc-2) 0; border-top: 1px solid var(--sc-hairline); color: var(--sc-ink-soft); }
  .spec li b { color: var(--sc-ink); font-weight: 500; text-align: right; }

  /* ── Le due EVO-X2: wireframe 3D scrubbato (canvas puro, evo3d.js) ── */
  .evo3d-stage [data-sc-stage] { overflow: hidden; }
  #evo3d-canvas { position: absolute; inset: 0; width: 100%; height: 100%;
    display: block; z-index: 1; }
  .evo3d-kicker { position: absolute; left: var(--sc-gutter);
    top: clamp(1.6rem, 6vh, 4rem); z-index: var(--sc-z-copy); }
  .evo3d-nota { position: absolute; right: var(--sc-gutter);
    top: clamp(1.6rem, 6vh, 4rem); z-index: var(--sc-z-copy);
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    color: var(--sc-ink-soft); text-align: right; margin: 0; }
  .evo3d-targa { position: absolute; z-index: var(--sc-z-copy);
    display: flex; align-items: center; gap: 0.6em;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-sm);
    color: var(--sc-ink-soft); }
  .evo3d-targa--sx { left: clamp(1.2rem, 9vw, 9rem); bottom: clamp(4.6rem, 15vh, 8.5rem); }
  .evo3d-targa--dx { right: clamp(1.2rem, 9vw, 9rem); bottom: clamp(4.6rem, 15vh, 8.5rem); }
  .evo3d-targa .led { width: 9px; height: 9px; border-radius: 50%;
    background: var(--sc-ink-soft); opacity: 0.35; flex: none; }
  .evo3d-targa .nome { color: var(--sc-ink); font-weight: 600; }
  .evo3d-targa .stati { display: inline-grid; }
  .evo3d-targa .stati .off, .evo3d-targa .stati .on { grid-area: 1 / 1;
    white-space: nowrap; transition: opacity 200ms var(--sc-ease-out); }
  .evo3d-targa .stati .on { color: var(--sc-accent); }
  /* accensione in sequenza mentre girano, guidata da --sc-p */
  .evo3d-targa--sx .led { opacity: calc(0.35 + clamp(0, (var(--sc-p, 0) - 0.42) * 14, 0.65)); background: color-mix(in oklab, var(--sc-accent) calc(clamp(0, (var(--sc-p, 0) - 0.42) * 14, 1) * 100%), var(--sc-ink-soft)); }
  .evo3d-targa--sx .stati .off { opacity: calc(1 - clamp(0, (var(--sc-p, 0) - 0.42) * 14, 1)); }
  .evo3d-targa--sx .stati .on  { opacity: clamp(0, (var(--sc-p, 0) - 0.42) * 14, 1); }
  .evo3d-targa--dx .led { opacity: calc(0.35 + clamp(0, (var(--sc-p, 0) - 0.64) * 14, 0.65)); background: color-mix(in oklab, var(--sc-accent) calc(clamp(0, (var(--sc-p, 0) - 0.64) * 14, 1) * 100%), var(--sc-ink-soft)); }
  .evo3d-targa--dx .stati .off { opacity: calc(1 - clamp(0, (var(--sc-p, 0) - 0.64) * 14, 1)); }
  .evo3d-targa--dx .stati .on  { opacity: clamp(0, (var(--sc-p, 0) - 0.64) * 14, 1); }
  @media (prefers-reduced-motion: reduce) {
    .evo3d-targa .stati .off { opacity: 0; }
    .evo3d-targa .stati .on { opacity: 1; transition: none; }
    .evo3d-targa .led { opacity: 1; background: var(--sc-accent); }
  }
  .evo3d-chiusa { position: absolute; left: 0; right: 0;
    bottom: clamp(1.4rem, 5vh, 3.4rem); text-align: center; z-index: var(--sc-z-copy); }
  .evo3d-chiusa p { margin: 0; font-size: var(--sc-t-base); color: var(--sc-ink); }
  @media (max-width: 900px) {
    .evo3d-nota { display: none; }
    .evo3d-targa { font-size: var(--sc-t-xs); }
    .evo3d-targa--sx { left: var(--sc-gutter); bottom: auto; top: 44%; }
    .evo3d-targa--dx { right: var(--sc-gutter); bottom: 9.8rem; }
    .evo3d-chiusa { bottom: 6.4rem; }
    .evo3d-chiusa p { font-size: var(--sc-t-sm); padding-inline: var(--sc-gutter); }
  }

  /* ── La sala di controllo (v4): nove console in nove laptop, su rotaia ──
     Device `pan` della skill: rail laterale, heading come primo elemento,
     nota di chiusura come ultimo, settle sfalsato guidato da --sc-p (--fa per
     carta). Ogni laptop è etichettato sullo stesso schema: numero, nome,
     origine, cosa mostra, cifre, stato. Solo fatti. */
  .console-stage { overflow: hidden; display: flex; align-items: center; }
  .console-rail { display: flex; gap: clamp(1.2rem, 2.4vw, 2.6rem); align-items: center;
    padding-inline: var(--sc-gutter); will-change: transform; }
  .console-testa { flex: none; width: clamp(19rem, 27vw, 25rem); }
  .console-testa h3 { margin: var(--sc-3) 0 0; }
  .console-testa p.sc-body { margin-top: var(--sc-3); }
  .console-testa .legenda { margin-top: var(--sc-5); font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft); letter-spacing: var(--sc-track-wide);
    text-transform: uppercase; }
  .laptop { flex: none; width: clamp(21rem, 37vw, 34rem); }
  .laptop__lid { background: #14171A; border: 1px solid #2A2F33; border-bottom: 0;
    border-radius: 12px 12px 4px 4px; padding: clamp(7px, 0.7vw, 11px) clamp(7px, 0.7vw, 11px) clamp(9px, 0.9vw, 13px);
    box-shadow: var(--sc-e3), var(--sc-edge); position: relative; }
  .laptop__lid::before { content: ""; position: absolute; left: 50%; top: 3px; width: 5px; height: 5px;
    border-radius: 50%; background: #0A0C0E; translate: -50% 0; box-shadow: inset 0 0 0 1px #2A2F33; }
  .laptop__screen { aspect-ratio: 16 / 9; overflow: hidden; border-radius: 4px; background: #04070A; }
  .laptop__screen img { display: block; width: 100%; height: 100%; object-fit: cover; }
  .laptop__base { height: clamp(9px, 1vw, 14px); background: linear-gradient(#2C3236, #1A1E21);
    border: 1px solid #2A2F33; border-radius: 0 0 10px 10px; margin-inline: -3.5%; position: relative; }
  .laptop__base::after { content: ""; position: absolute; left: 50%; top: 0; translate: -50% 0;
    width: 16%; height: 40%; background: #101315; border-radius: 0 0 4px 4px; }
  .scheda { margin: var(--sc-4) 0 0; font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    color: var(--sc-ink-soft); }
  .scheda__testa { display: flex; align-items: baseline; gap: var(--sc-3);
    border-bottom: 1px solid var(--sc-hairline); padding-bottom: var(--sc-2); margin-bottom: var(--sc-2); }
  .scheda__testa .num { color: var(--sc-accent); font-weight: 600; }
  .scheda__testa .nome { color: var(--sc-ink); font-weight: 600; font-size: var(--sc-t-sm); flex: 1; }
  .scheda__testa .stato { text-transform: uppercase; letter-spacing: var(--sc-track-wide); font-size: 0.66rem; }
  .scheda__testa .stato::before { content: ""; display: inline-block; width: 6px; height: 6px;
    border-radius: 50%; background: var(--sc-accent); margin-right: 0.5em; vertical-align: 1px; }
  .scheda__riga { display: grid; grid-template-columns: 5.2em minmax(0, 1fr); gap: var(--sc-3);
    padding: 3px 0; margin: 0; }
  .scheda__riga dt { text-transform: uppercase; letter-spacing: var(--sc-track-wide); font-size: 0.66rem; color: var(--sc-ink-soft); opacity: 0.75; }
  .scheda__riga dd { margin: 0; color: var(--sc-ink-soft); line-height: 1.5; }
  .scheda__riga dd b { color: var(--sc-ink); font-weight: 500; font-variant-numeric: tabular-nums; }
  .console-coda { flex: none; width: clamp(16rem, 24vw, 22rem); }
  .console-coda p { font-size: var(--sc-t-lg); color: var(--sc-ink); margin: 0; }
  .console-coda p.nota { font-size: var(--sc-t-xs); font-family: var(--sc-font-mono);
    color: var(--sc-ink-soft); margin-top: var(--sc-4); }
  /* settle sfalsato: la carta arriva e lo schermo si accende, dal progresso dell'atto */
  @media (prefers-reduced-motion: no-preference) {
    .laptop { --k: clamp(0, (var(--sc-p, 1) - var(--fa, 0)) * 7, 1);
      opacity: calc(0.55 + 0.45 * var(--k));
      transform: translate3d(0, calc((1 - var(--k)) * 16px), 0); }
    .laptop__screen img { filter: brightness(calc(0.72 + 0.28 * var(--k))); }
  }
  @media (max-width: 700px) {
    .console-testa { width: 78vw; }
    .laptop { width: 84vw; }
    .console-coda { width: 78vw; }
    .console-coda p { font-size: var(--sc-t-base); }
  }
  /* reduced motion: la rotaia si rilassa in griglia, tutto raggiungibile senza moto */
  @media (prefers-reduced-motion: reduce) {
    #console { height: auto !important; }
    #console [data-sc-stage] { position: static; height: auto; overflow: visible; display: block;
      padding-block: var(--sc-8); }
    .console-rail { display: grid; grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
      gap: var(--sc-6); align-items: start; transform: none !important; }
    .console-testa, .laptop, .console-coda { width: auto; }
    .console-testa { grid-column: 1 / -1; max-width: 40rem; }
  }

  /* ── Il cervello che pensa (v4, brain.js) ────────────────────────── */
  .brain-stage [data-sc-stage] { overflow: hidden; }
  #brain-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 1; }
  .brain-kicker { position: absolute; left: var(--sc-gutter); top: clamp(1.6rem, 6vh, 4rem);
    z-index: var(--sc-z-copy); }
  .brain-copy { position: absolute; left: var(--sc-gutter); bottom: clamp(2.4rem, 9vh, 6rem);
    z-index: var(--sc-z-copy); max-width: 30rem; }
  .brain-copy p { position: absolute; left: 0; bottom: 0; margin: 0; width: 30rem; max-width: 80vw;
    font-size: var(--sc-t-lg); color: var(--sc-ink); }
  .brain-copy p b { color: var(--sc-accent); font-weight: 600; }
  .brain-cifre { position: absolute; right: var(--sc-gutter); top: clamp(1.6rem, 6vh, 4rem);
    z-index: var(--sc-z-copy); list-style: none; margin: 0; padding: 0; text-align: right;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft);
    letter-spacing: var(--sc-track-wide); text-transform: uppercase; }
  .brain-cifre li { padding: 3px 0; }
  .brain-cifre b { color: var(--sc-ink); font-weight: 600; font-size: var(--sc-t-base);
    letter-spacing: 0; font-variant-numeric: tabular-nums; display: block; }
  .brain-nota { position: absolute; right: var(--sc-gutter); bottom: clamp(9rem, 16vh, 12rem);
    z-index: var(--sc-z-copy); text-align: right; margin: 0; max-width: 15rem;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft); }
  @media (max-width: 900px) {
    .brain-cifre { top: auto; bottom: 13rem; left: var(--sc-gutter); right: auto;
      text-align: left; display: flex; gap: var(--sc-4); }
    .brain-cifre b { font-size: var(--sc-t-sm); }
    .brain-copy { bottom: 7.2rem; right: var(--sc-gutter); }
    .brain-copy p { font-size: var(--sc-t-base); }
    .brain-nota { display: none; }
  }

  /* ── Banda dei numeri veri ──────────────────────────────────────── */
  .numeri { border-block: 1px solid var(--sc-hairline); }
  .numeri .griglia { display: grid; grid-template-columns: repeat(4, minmax(0,1fr));
    gap: var(--sc-6); }
  @media (max-width: 900px) { .numeri .griglia { grid-template-columns: repeat(2, minmax(0,1fr)); } }
  .numeri .n { font-family: var(--sc-font-mono); }
  .numeri .n .val { font-size: var(--sc-t-2xl); color: var(--sc-ink);
    letter-spacing: var(--sc-track-snug); font-weight: 600; font-variant-numeric: tabular-nums; }
  .numeri .n .val .u { color: var(--sc-accent); }
  .numeri .n p { margin: var(--sc-2) 0 0; color: var(--sc-ink-soft); font-size: var(--sc-t-xs);
    text-transform: uppercase; letter-spacing: var(--sc-track-wide); }
  .numeri .fonte { margin-top: var(--sc-5); font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft); }

  /* ── Il giro del lunedì: la rotaia ──────────────────────────────── */
  .giro-stage { overflow: hidden; display: flex; align-items: center; }
  .giro-rail { display: flex; gap: clamp(1rem, 2vw, 2rem); align-items: stretch;
    padding-inline: var(--sc-gutter); will-change: transform; }
  .giro-testa { flex: none; width: clamp(20rem, 30vw, 27rem); display: flex;
    flex-direction: column; justify-content: center; }
  .giro-testa h3 { margin: var(--sc-3) 0 0; }
  .giro-testa p.sc-body { margin-top: var(--sc-3); }
  .giro-card { flex: none; width: clamp(16rem, 21vw, 20rem);
    background: var(--sc-surface); border: 1px solid var(--sc-hairline);
    border-radius: var(--sc-r-md); box-shadow: var(--sc-e1), var(--sc-edge);
    padding: var(--sc-5); display: flex; flex-direction: column; gap: var(--sc-3); }
  .giro-card .quando { font-family: var(--sc-font-mono); font-size: 0.68rem;
    letter-spacing: var(--sc-track-wide); text-transform: uppercase;
    color: var(--sc-accent); }
  .giro-card h4 { margin: 0; font-family: var(--sc-font-mono);
    font-size: var(--sc-t-base); color: var(--sc-ink); font-weight: 600;
    letter-spacing: 0; }
  .giro-card p { margin: 0; color: var(--sc-ink-soft); font-size: var(--sc-t-sm); line-height: 1.55; }
  .giro-card .chi { margin-top: auto; font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft);
    border-top: 1px solid var(--sc-hairline); padding-top: var(--sc-3); }
  .giro-coda { flex: none; width: clamp(16rem, 22vw, 20rem); display: flex;
    align-items: center; }
  .giro-coda p { font-size: var(--sc-t-lg); color: var(--sc-ink); margin: 0; }
  /* arrivo scalato delle carte, dal progresso dell'atto */
  @media (prefers-reduced-motion: no-preference) {
    .giro-card { opacity: calc(0.55 + 0.45 * clamp(0, (var(--sc-p, 1) - var(--fa, 0)) * 6, 1));
      transform: translate3d(0, calc((1 - clamp(0, (var(--sc-p, 1) - var(--fa, 0)) * 6, 1)) * 14px), 0); }
  }

  /* ── Il broker che dice no ──────────────────────────────────────── */
  .broker-stage [data-sc-stage] { display: flex; align-items: center; }
  .broker-wrap { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: var(--sc-7); align-items: center; width: 100%;
    max-width: var(--sc-maxw); margin-inline: auto; padding: var(--sc-8) var(--sc-gutter); }
  @media (max-width: 900px) { .broker-wrap { grid-template-columns: 1fr; gap: var(--sc-5); padding-block: var(--sc-6); } }
  .broker-copy h3 { margin: var(--sc-3) 0 0; }
  .broker-copy p.sc-body { margin-top: var(--sc-3); }
  .transcript { background: #060907; border: 1px solid var(--sc-hairline);
    border-radius: var(--sc-r-md); box-shadow: var(--sc-e2), var(--sc-edge);
    font-family: var(--sc-font-mono); font-size: var(--sc-t-sm);
    padding: var(--sc-5) var(--sc-6); line-height: 1.7; }
  .transcript .t-head { color: var(--sc-ink-soft); font-size: 0.68rem;
    text-transform: uppercase; letter-spacing: var(--sc-track-wide);
    border-bottom: 1px solid var(--sc-hairline); padding-bottom: var(--sc-2);
    margin-bottom: var(--sc-3); display: flex; justify-content: space-between; }
  .transcript .riga { display: block; color: var(--sc-ink-soft);
    padding: 3px 0; }
  .transcript .riga .chi { color: var(--sc-ink); font-weight: 600; }
  .transcript .riga .esito-pass { color: var(--sc-accent); font-weight: 600; }
  .transcript .riga .esito-deny { color: var(--sc-ink); font-weight: 700;
    border-bottom: 2px solid var(--sc-accent); }
  .transcript .riga.msg { color: var(--sc-ink); }
  @media (prefers-reduced-motion: no-preference) {
    .transcript .riga { opacity: clamp(0, (var(--sc-p, 1) - var(--fa, 0)) * 9, 1);
      transform: translate3d(0, calc((1 - clamp(0, (var(--sc-p, 1) - var(--fa, 0)) * 9, 1)) * 8px), 0); }
  }
  .broker-nota { margin-top: var(--sc-3); font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft); }

  /* ── Il secondo monitor del cervello: crossfade agganciato a --sc-p ── */
  .quadro { --qk: clamp(0, (var(--sc-p, 0) - 0.52) * 5, 1); }
  .quadro__frame { background: #10120F; border: 1px solid var(--sc-hairline);
    border-radius: 10px; padding: clamp(6px, 0.8vw, 10px);
    box-shadow: var(--sc-e2), var(--sc-edge); }
  .quadro__schermo { position: relative; aspect-ratio: 2880 / 1800;
    overflow: hidden; border-radius: 6px; background: #04070A; }
  .quadro__schermo img { position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: cover; display: block; }
  /* v5: <picture> (webp con fallback png) non crea alcun box: layout invariato */
  .laptop__screen picture, .quadro__schermo picture { display: contents; }
  .quadro__schermo .qs-b { opacity: var(--qk);
    transform: scale(calc(1.045 - 0.045 * var(--qk))); }
  @media (prefers-reduced-motion: reduce) { .quadro__schermo .qs-b { transform: none; } }
  .quadro__barra { display: flex; gap: var(--sc-4); justify-content: center;
    padding-top: clamp(5px, 0.7vw, 9px);
    font-family: var(--sc-font-mono); font-size: 0.68rem;
    letter-spacing: var(--sc-track-wide); text-transform: uppercase; }
  .quadro__barra .qa { color: color-mix(in oklab, var(--sc-accent) calc((1 - var(--qk)) * 100%), var(--sc-ink-soft)); opacity: calc(1 - 0.4 * var(--qk)); }
  .quadro__barra .qb { color: color-mix(in oklab, var(--sc-accent) calc(var(--qk) * 100%), var(--sc-ink-soft)); opacity: calc(0.6 + 0.4 * var(--qk)); }

  /* ── Il registro dei 76 attori ──────────────────────────────────── */
  .attori-stage [data-sc-stage] { display: flex; align-items: center; }
  .attori-wrap { width: 100%; max-width: var(--sc-maxw); margin-inline: auto;
    padding: var(--sc-8) var(--sc-gutter); display: grid;
    grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
    gap: var(--sc-7); align-items: center; }
  @media (max-width: 900px) { .attori-wrap { grid-template-columns: 1fr; gap: var(--sc-5); padding-block: var(--sc-6); } }
  .attori-copy .grande { font-family: var(--sc-font-mono); font-weight: 600;
    font-size: var(--sc-t-3xl); color: var(--sc-ink); line-height: 1;
    font-variant-numeric: tabular-nums; }
  .attori-copy .grande .u { color: var(--sc-accent); }
  .attori-copy h3 { margin: var(--sc-4) 0 0; }
  .attori-copy p.sc-body { margin-top: var(--sc-3); }
  .attori-muro { display: grid; grid-template-columns: repeat(auto-fill, minmax(7.2rem, 1fr));
    gap: 6px; font-family: var(--sc-font-mono); font-size: 0.66rem; }
  .attore { border: 1px solid var(--sc-hairline); border-radius: 4px;
    padding: 5px 7px; color: var(--sc-ink-soft);
    letter-spacing: 0.02em; white-space: nowrap; overflow: hidden;
    text-overflow: ellipsis; opacity: 0.28; }
  .attore.acceso { opacity: 1; }
  .attore.acceso.nome { color: var(--sc-accent); border-color: color-mix(in oklab, var(--sc-accent) 40%, transparent); }
  .attore, .attore.acceso { transition: opacity 260ms var(--sc-ease-out), color 260ms var(--sc-ease-out); }

  /* ── Silenzio autorale ──────────────────────────────────────────── */
  .silenzio { min-height: 42svh; display: flex; align-items: flex-end; }
  .silenzio .sc-wrap { display: flex; justify-content: space-between; align-items: flex-end;
    gap: var(--sc-5); padding-bottom: var(--sc-7); }
  .silenzio p { font-family: var(--sc-font-mono); font-size: var(--sc-t-xs);
    color: var(--sc-ink-soft); letter-spacing: var(--sc-track-wide);
    text-transform: uppercase; margin: 0; }
  .silenzio .conta { text-align: right; }
  .silenzio .conta b { display: block; color: var(--sc-ink); font-size: var(--sc-t-xl); letter-spacing: 0;
    font-variant-numeric: tabular-nums; }

  /* ── Il picco: grafo che si accende ─────────────────────────────── */
  .cervello-stage { overflow: hidden; }
  #grafo { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; }
  #grafo line { stroke: var(--sc-ink-soft); stroke-opacity: 0.10; transition: stroke-opacity 500ms var(--sc-ease-out); }
  #grafo line.on { stroke: var(--sc-accent); stroke-opacity: 0.35; }
  #grafo circle { fill: var(--sc-ink-soft); opacity: 0.16; transition: opacity 420ms var(--sc-ease-out), r 420ms var(--sc-ease-out); }
  #grafo circle.on { opacity: 0.95; }
  #grafo circle.hub.on { fill: var(--sc-accent); }
  .cervello-copy { position: absolute; left: var(--sc-gutter); bottom: clamp(3rem, 14vh, 9rem);
    z-index: var(--sc-z-copy); max-width: 34rem; }
  @media (max-width: 700px) { .cervello-copy { bottom: 6rem; right: var(--sc-gutter); } }
  .cervello-copy .sc-lede { color: var(--sc-ink); }
  .cervello-kicker { position: absolute; top: clamp(2rem, 8vh, 5rem); left: var(--sc-gutter);
    z-index: var(--sc-z-copy); }

  /* ── Colofone ───────────────────────────────────────────────────── */
  .colofone { padding-block: var(--sc-9) var(--sc-8); }
  .colofone .chiusa { font-size: var(--sc-t-base); color: var(--sc-ink); max-width: var(--sc-measure); }
  .colofone a { color: var(--sc-accent); text-underline-offset: 0.2em; }
  .colofone .griglia-fine { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: var(--sc-7); align-items: start; margin-top: var(--sc-6); }
  @media (max-width: 900px) { .colofone .griglia-fine { grid-template-columns: 1fr; } }
  .registro-finale { font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft); max-width: 34rem; }
  .registro-finale li { padding: var(--sc-1) 0; border-top: 1px solid var(--sc-hairline); list-style: none; }
  .registro-finale ol { margin: var(--sc-3) 0 0; padding: 0; }
  .registro-finale .rid { color: var(--sc-accent); }
  .colofone .piccolo { margin-top: var(--sc-8); font-family: var(--sc-font-mono);
    font-size: 0.68rem; color: var(--sc-ink-soft); letter-spacing: var(--sc-track-wide);
    text-transform: uppercase; }

  /* ── Inferenza in casa (v6, infer.js: base ref/synapsestream.html) ── */
  .infer-stage [data-sc-stage] { overflow: hidden; }
  #infer-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 1; }
  .infer-kicker { position: absolute; left: var(--sc-gutter); top: clamp(1.6rem, 6vh, 4rem); z-index: var(--sc-z-copy); }
  .infer-titolo { position: absolute; left: var(--sc-gutter); top: clamp(4.4rem, 13vh, 8rem);
    z-index: var(--sc-z-copy); max-width: 24rem; }
  .infer-titolo h3 { margin: 0; }
  .infer-titolo p { margin: var(--sc-3) 0 0; color: var(--sc-ink-soft); font-size: var(--sc-t-sm); max-width: 22rem; }
  .infer-cifre { position: absolute; right: var(--sc-gutter); top: clamp(1.6rem, 6vh, 4rem);
    z-index: var(--sc-z-copy); list-style: none; margin: 0; padding: 0; text-align: right;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft);
    letter-spacing: var(--sc-track-wide); text-transform: uppercase; }
  .infer-cifre li { padding: 3px 0; }
  .infer-cifre b { color: var(--sc-ink); font-weight: 600; font-size: var(--sc-t-base);
    letter-spacing: 0; font-variant-numeric: tabular-nums; display: block; }
  .infer-moe { position: absolute; right: var(--sc-gutter); top: clamp(13rem, 34vh, 19rem);
    width: 12rem; height: 6rem; z-index: 2; pointer-events: none; }
  .infer-moe-nota { position: absolute; right: var(--sc-gutter); top: calc(clamp(13rem, 34vh, 19rem) + 6.4rem);
    z-index: var(--sc-z-copy); margin: 0; text-align: right; max-width: 14rem;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft); line-height: 1.5; }
  .infer-moe-nota b { color: var(--sc-ink); font-weight: 600; }
  .infer-nota { position: absolute; left: var(--sc-gutter); bottom: 5vh;
    z-index: var(--sc-z-copy); margin: 0; width: calc(15vw - var(--sc-gutter) - 1rem); max-width: 14rem;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft); line-height: 1.5; }
  .infer-chat { position: absolute; left: 50%; bottom: 5vh; transform: translateX(-50%);
    width: min(70vw, 62rem); height: 40vh; z-index: var(--sc-z-copy);
    background: rgba(15, 20, 15, 0.82); border: 1px solid var(--sc-hairline-strong);
    border-radius: var(--sc-r-md); display: flex; flex-direction: column; overflow: hidden; }
  .infer-bar { display: flex; align-items: center; gap: 10px; padding: 8px 14px;
    border-bottom: 1px solid var(--sc-hairline); font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft); letter-spacing: var(--sc-track-wide);
    text-transform: uppercase; white-space: nowrap; overflow: hidden; }
  .infer-bar .modello { overflow: hidden; text-overflow: ellipsis; }
  .infer-bar .dot { flex: none; width: 7px; height: 7px; border-radius: 50%; background: #86F0FF; box-shadow: 0 0 8px #86F0FF; }
  .infer-bar .tps { flex: none; margin-left: auto; font-variant-numeric: tabular-nums; color: #86F0FF; text-transform: none; }
  .infer-bar .tps b { font-weight: 600; }
  .infer-log { flex: 1; overflow: hidden; padding: 12px 18px 6px; font-family: var(--sc-font-mono);
    font-size: var(--sc-t-sm); line-height: 1.55; color: var(--sc-ink); }
  .infer-log .msg { margin: 0 0 10px; white-space: pre-wrap; word-break: break-word; }
  .infer-log .msg.user { color: var(--sc-ink-soft); }
  .infer-log .msg.user::before { content: "› "; color: var(--sc-accent); }
  .infer-log .msg.pensa { color: var(--sc-ink-soft); font-size: var(--sc-t-xs); }
  .infer-log .tk { color: var(--sc-ink); }
  .infer-caret { display: inline-block; width: 7px; height: 14px; background: #86F0FF; vertical-align: -2px; }
  @media (prefers-reduced-motion: no-preference) {
    .infer-log .tk { color: #fff; text-shadow: 0 0 8px #86F0FF; animation: infer-cool 0.35s forwards; }
    .infer-caret { animation: infer-blink 1s steps(2) infinite; }
    .infer-log .msg.pensa { animation: infer-blink 1.2s steps(2) infinite; }
  }
  @media (prefers-reduced-motion: reduce) {
    /* chat già scritta per intero: il pannello si può scorrere a mano */
    .infer-log { overflow-y: auto; scrollbar-width: thin; }
  }
  @keyframes infer-cool { to { color: var(--sc-ink); text-shadow: none; } }
  @keyframes infer-blink { 50% { opacity: 0; } }
  .infer-tab { border-collapse: collapse; width: 100%; font-size: var(--sc-t-xs); margin: 4px 0 12px; }
  .infer-tab th { text-align: left; color: var(--sc-ink-soft); font-weight: 500; letter-spacing: var(--sc-track-wide);
    text-transform: uppercase; padding: 4px 10px 6px 0; border-bottom: 1px solid var(--sc-hairline-strong); }
  .infer-tab td { padding: 5px 10px 5px 0; border-bottom: 1px solid var(--sc-hairline); vertical-align: top; color: var(--sc-ink); }
  .infer-tab td.dato { color: var(--sc-accent); font-variant-numeric: tabular-nums; }
  .infer-tab .riga { opacity: 0; transform: translateY(6px);
    transition: opacity 320ms var(--sc-ease-out), transform 320ms var(--sc-ease-out); }
  .infer-tab .riga.on { opacity: 1; transform: none; }
  .infer-fig { margin: 4px 0 10px; width: min(100%, 20rem); clip-path: inset(0 100% 0 0);
    transition: clip-path 900ms var(--sc-ease-out); }
  .infer-fig.on { clip-path: inset(0 0 0 0); }
  .infer-fig img { display: block; width: 100%; height: auto; border-radius: var(--sc-r-sm); border: 1px solid var(--sc-hairline-strong); }
  .infer-fig figcaption { margin-top: 4px; font-size: var(--sc-t-xs); color: var(--sc-ink-soft); }
  @media (prefers-reduced-motion: reduce) {
    .infer-tab .riga, .infer-fig { transition: none; }
  }
  @media (max-width: 1400px) { .infer-nota { display: none; } }
  @media (max-width: 900px) {
    .infer-titolo { max-width: 18rem; }
    .infer-chat { width: min(78vw, 62rem); }
  }
  @media (max-width: 700px) {
    /* mobile: fasce che non si toccano — titolo, contatori, cervello (infer.js
       lo centra a 37,5vh), chat, griglia esperti */
    .infer-titolo { top: 4.2rem; max-width: calc(100% - 2 * var(--sc-gutter)); }
    .infer-titolo h3 { font-size: var(--sc-t-xl); }
    .infer-titolo p { display: none; }
    .infer-cifre { top: 20vh; right: var(--sc-gutter); left: var(--sc-gutter); text-align: left;
      display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--sc-4); font-size: 0.6rem; }
    .infer-cifre li { padding: 1px 0; }
    .infer-cifre b { font-size: var(--sc-t-sm); }
    .infer-chat { left: var(--sc-gutter); right: var(--sc-gutter); width: auto; transform: none; top: 52vh; bottom: auto; height: 29.5vh;
      background: rgba(10, 14, 10, 0.86); }
    .infer-log { font-size: var(--sc-t-xs); padding: 10px 12px 4px; }
    .infer-log .tk { text-shadow: none; } /* mobile: niente ombra per token, costa in paint */
    .infer-fig { width: min(100%, 13rem); }
    .infer-moe { right: auto; left: 50%; transform: translateX(-50%); top: 83vh; width: 12rem; height: 4.4vh; }
    .infer-moe-nota { top: 88.3vh; right: var(--sc-gutter); left: var(--sc-gutter); max-width: none; text-align: center;
      font-size: 0.55rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  }

  /* ── Infra Lupa live (v6, infralive.js: base ref/infralupalive.html) ── */
  .live-stage [data-sc-stage] { overflow: hidden; }
  #infralive-canvas { position: absolute; inset: 0; width: 100%; height: 100%; display: block; z-index: 1; }
  .live-hdr { position: absolute; left: var(--sc-gutter); right: var(--sc-gutter); top: clamp(1.6rem, 6vh, 4rem);
    z-index: var(--sc-z-copy); pointer-events: none; }
  .live-hdr .kicker { margin: 0 0 var(--sc-3); }
  .live-riga { display: flex; flex-wrap: wrap; gap: var(--sc-2) var(--sc-5); align-items: baseline;
    font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft); }
  .live-riga b { font-size: var(--sc-t-lg); color: var(--sc-ink); font-weight: 600; letter-spacing: var(--sc-track-snug); }
  .live-riga b i { font-style: normal; color: #86F0FF; }
  .live-riga .n { color: var(--sc-ink); font-variant-numeric: tabular-nums; }
  .live-riga .sim { color: var(--sc-accent); }
  .live-nota { position: absolute; left: var(--sc-gutter); bottom: clamp(1.4rem, 5vh, 3rem); z-index: var(--sc-z-copy);
    margin: 0; max-width: 36rem; font-family: var(--sc-font-mono); font-size: var(--sc-t-xs); color: var(--sc-ink-soft); line-height: 1.5; }
  @media (max-width: 700px) {
    .live-hdr { top: 1.2rem; }
    .live-riga { font-size: 0.66rem; gap: 2px 10px; }
    .live-riga b { font-size: var(--sc-t-base); }
    .live-nota { display: none; }
  }

  /* ── Link approfondimento (v6, approfondisci.js) ──────────────────── */
  .approfondisci { position: relative; margin-top: var(--sc-8); padding: var(--sc-6) 0;
    display: flex; flex-direction: column; align-items: flex-start; gap: var(--sc-2); }
  .approfondisci-canvas { position: absolute; inset: -1rem -3rem; width: calc(100% + 6rem); height: calc(100% + 2rem); pointer-events: none; z-index: 0; }
  .approfondisci-link { position: relative; z-index: 1; display: inline-block;
    font-size: var(--sc-t-2xl); font-weight: 600; letter-spacing: var(--sc-track-snug); line-height: 1.1;
    color: var(--sc-ink); text-decoration: none; border-bottom: 2px solid var(--sc-hairline-strong);
    padding-bottom: 0.15em; transition: color 0.35s var(--sc-ease-out), text-shadow 0.35s var(--sc-ease-out), border-color 0.35s var(--sc-ease-out); }
  .approfondisci-freccia { color: var(--sc-accent); font-weight: 400; }
  .approfondisci-link:hover, .approfondisci-link:focus-visible, .approfondisci.acceso .approfondisci-link {
    color: #fff; border-color: #86F0FF; outline: none;
    text-shadow: 0 0 10px rgba(134, 240, 255, 0.85), 0 0 28px rgba(124, 245, 180, 0.55), 0 0 60px rgba(134, 240, 255, 0.3); }
  .approfondisci-sotto { position: relative; z-index: 1; margin: 0; font-family: var(--sc-font-mono);
    font-size: var(--sc-t-xs); color: var(--sc-ink-soft); letter-spacing: var(--sc-track-wide); }
  @media (max-width: 700px) {
    .approfondisci-link { font-size: var(--sc-t-xl); }
  }
