/* ==========================================================
   Pagine secondarie (privacy, 404) nello stile "Giornata di gara".
   Foglio esterno: style-src 'self' della CSP lo accetta senza hash.
   ========================================================== */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url("../assets/fonts/archivo-var.woff2") format("woff2")}

:root{
  --asphalt:#131211;--bone:#f3efe8;--bone-2:#c9bfb3;--tartan:#c8311a;--tartan-hi:#ef4a2e;
  --ink:#151311;--ink-soft:#554a41;--line:#d6ccbf;
  --display:'Archivo',system-ui,sans-serif;
  /* etichette come nella home: kicker maiuscolo largo e spaziato, meta in minuscolo */
  --k-wdth:100%;--k-w:600;--k-ls:.12em;--meta-w:500;
  --gutter:clamp(20px,5vw,72px);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--bone);color:var(--ink);font-family:var(--display);font-stretch:100%;font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--tartan)}
a:hover{color:#a8260f}
:focus-visible{outline:3px solid var(--tartan-hi);outline-offset:3px}
::selection{background:var(--tartan);color:#fff}
img{display:block;max-width:100%}

.bar{background:var(--asphalt);color:var(--bone);display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:0 var(--gutter)}
.bar img{height:34px;width:auto;filter:brightness(0) invert(1)}
.bar-back{font-weight:800;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--bone);text-decoration:none;display:inline-flex;align-items:center;gap:8px;min-height:44px}
.bar-back:hover{color:var(--tartan-hi)}

.head{position:relative;background:var(--asphalt);color:var(--bone);padding:clamp(40px,7vw,96px) var(--gutter) clamp(84px,8vw,120px);overflow:hidden}
.head::after{content:"";position:absolute;left:0;right:0;bottom:0;height:50px;pointer-events:none;
  background:repeating-linear-gradient(180deg,transparent 0 22px,rgba(243,239,232,.14) 22px 24px);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 50%);mask-image:linear-gradient(90deg,transparent,#000 50%)}
.head > *{position:relative;z-index:1;max-width:1100px;margin:0 auto}
.kicker{display:block;font-family:var(--display);font-stretch:var(--k-wdth);font-weight:var(--k-w);letter-spacing:var(--k-ls);text-transform:uppercase;font-size:13px;color:var(--tartan-hi);margin-bottom:14px}
h1{font-stretch:72%;font-weight:900;text-transform:uppercase;font-size:clamp(56px,11vw,150px);line-height:.84;letter-spacing:0;text-wrap:balance}
h1 em{font-style:normal;color:var(--tartan-hi)}
.head p{margin-top:20px;color:var(--bone-2);max-width:60ch;font-size:clamp(17px,1.4vw,20px)}

.doc{max-width:calc(1100px + 2 * var(--gutter));margin:0 auto;padding:clamp(40px,6vw,88px) var(--gutter) clamp(56px,8vw,120px)}
.doc > *{max-width:68ch}
.doc h2{font-stretch:88%;font-weight:800;text-transform:uppercase;font-size:clamp(24px,2.4vw,32px);line-height:1.05;letter-spacing:.01em;margin:56px 0 14px;display:flex;gap:14px;align-items:baseline}
.doc h2::before{content:"";flex:none;width:18px;height:4px;background:var(--tartan);transform:translateY(-6px)}
.doc h2:first-child{margin-top:0}
.doc p,.doc li{color:var(--ink-soft);text-wrap:pretty}
.doc p + p{margin-top:14px}
.doc strong{color:var(--ink)}
.doc ul{list-style:none;margin-top:14px}
.doc li{position:relative;padding-left:26px}
.doc li + li{margin-top:12px}
.doc li::before{content:"";position:absolute;left:0;top:.72em;width:12px;height:2px;background:var(--tartan)}
.upd{display:block;margin-top:56px;font-family:var(--display);font-stretch:100%;font-weight:var(--meta-w);letter-spacing:0;text-transform:none;font-size:15px;color:var(--ink-soft)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:0 26px;margin-top:28px;
  font-weight:800;font-size:15px;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;
  background:var(--tartan);color:#fff;transition:background-color .16s ease,transform .16s ease}
.btn:hover{background:#a8260f;color:#fff;transform:translateY(-2px)}
.btn svg{width:18px;height:18px}

.foot{background:var(--asphalt);color:var(--bone-2);padding:28px var(--gutter);font-size:14px}
.foot > div{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
.foot a{color:var(--bone)}
.finish{height:14px;background:repeating-conic-gradient(var(--asphalt) 0 25%,var(--bone) 0 50%) 0 0/14px 14px}

/* 404: tutta asfalto, la corsia persa */
.lost{min-height:100dvh;display:flex;flex-direction:column;background:var(--asphalt);color:var(--bone)}
.lost .head{flex:1;display:flex;flex-direction:column;justify-content:center}
.lost .head::after{height:22%}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
