/* ──────────────────────────────────────────────────────────
   verona-accessibile.css
   Overlay per la versione ad alta leggibilità del sito POST
   - Atkinson Hyperlegible per body + h3/h4/UI
   - Instrument Serif preservato solo per h1/h2 grandi (identità)
   - Contrasti rinforzati, line-height ampio, focus visibile
   - Rispetto di prefers-reduced-motion
   ────────────────────────────────────────────────────────── */

:root{
  --sans:"Atkinson Hyperlegible","Inter",system-ui,sans-serif;
  /* --serif rimane Instrument Serif (titoli grandi) */
  /* contrasti rinforzati */
  --ink:#0A0F14;
  --ink-2:#2A3540;
  --ink-3:#4A5560;
}

html{font-size:18px}
body{font-family:var(--sans) !important;line-height:1.7}

/* tutto il body, UI, controlli */
p,li,td,th,dd,dt,label,input,textarea,select,button,small,figcaption,blockquote,summary,
.lede,.label-mono,.eyebrow,.meta,.crumbs,.nav,.topbar,.tag,.pill-btn,.pill,.btn,.foot-col,
.tagline,.foot-bottom,.share-btn,.m-claim,.m-link,.crumbs *,.foot-top *{
  font-family:var(--sans) !important;
  line-height:1.65;
}

/* h3/h4/h5 in Atkinson per leggibilità */
h3,h4,h5,h6{font-family:var(--sans) !important;letter-spacing:0 !important;font-style:normal !important}
h3 em,h4 em,h5 em{font-style:normal !important}

/* h1/h2 grandi mantengono Instrument Serif italic — identità */
h1,h2,.page-hero h1,.pillars-head h2,.numbers-head h2,.section-head h2,
.callout h3,.cross-links h2,.contact h2,.journal-head h2,.exp-head h2,
.people-head h2,.manifesto h2,.manifesto-chapter h2{
  font-family:var(--serif);
}

/* link nei testi sempre sottolineati */
.prose a,article p a,.m-body p a,.body p a,.lede a,p a:not(.pill-btn):not(.tag):not(.btn):not(.share-btn):not(.row-link):not(.m-link):not(.cross):not(.article):not(.exp-card):not(.person):not(.ir-item){
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-thickness:1.5px;
}

/* focus tastiera ben visibile */
*:focus-visible{
  outline:3px solid var(--accent,#006172);
  outline-offset:3px;
  border-radius:2px;
}

/* skip link */
.skip-link{
  position:absolute;left:-9999px;top:0;
  background:#0A0F14;color:#FEFCF8;padding:14px 22px;
  z-index:10000;font-family:var(--sans);font-weight:700;
  text-decoration:none;border-radius:0 0 8px 0;
}
.skip-link:focus,.skip-link:focus-visible{left:0;top:0;outline:3px solid #006172;outline-offset:0}

/* dimensioni testo: lede e p più generosi */
.page-hero .lede{font-size:1.25rem;line-height:1.55}
p{font-size:1.05rem}
.pillar-row p,.pillar-stretch p{font-size:1rem !important}

/* reduce motion: disattiva quasi tutte le animazioni quando richiesto */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
  .marquee-track{animation:none !important;transform:none !important}
  .reveal,.reveal-stagger>*{opacity:1 !important;transform:none !important}
}

/* badge accessibile in basso a sx con link al sito standard */
.acc-badge{
  position:fixed;bottom:16px;left:16px;z-index:999;
  background:#0F1A1E;color:#F7F5F0;
  padding:10px 16px;border-radius:999px;
  font-family:var(--sans);font-weight:700;font-size:13px;
  text-decoration:none !important;display:inline-flex;align-items:center;gap:8px;
  box-shadow:0 4px 16px rgba(0,0,0,.25);
  border:2px solid transparent;
}
.acc-badge:hover,.acc-badge:focus-visible{background:#1E5B68;border-color:#FEFCF8}
.acc-badge .dot{width:10px;height:10px;border-radius:50%;background:#A8C97A;display:inline-block}

/* nascondi marquee animata in versione accessibile (troppo movimento) */
.marquee{display:none}

/* assicura contrasto minimo body */
body{color:#0A0F14;background:#F7F5F0}
