  :root{--nero:#0b0d11;--nero2:#12151c;--oro:#d9a441;--oro-c:#f0cf8e;
        --chiaro:#faf8f5;--testo:#1d2029;--soft:#5f6575;--bordo:#e5e0d8;--max:1060px}
  *{box-sizing:border-box}
  body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
       background:var(--chiaro);color:var(--testo);line-height:1.62;-webkit-font-smoothing:antialiased}
  img{max-width:100%;display:block}
  .wrap{max-width:var(--max);margin:0 auto;padding:0 20px}

  /* testata come la sua: logo sopra, menu sotto, centrati */
  header{background:var(--nero);color:#fff;padding:26px 0 0;text-align:center;
         padding-top:calc(26px + env(safe-area-inset-top,0px))}
  .logo-blocco{display:inline-flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none}
  .logo-blocco svg{width:74px;height:74px}
  .nome{color:#fff;font-size:1.02rem;letter-spacing:.3em;font-weight:300;text-transform:uppercase}
  .nome b{font-weight:600}
  .qualifica{font-size:.62rem;letter-spacing:.24em;color:var(--oro);text-transform:uppercase;margin-top:-2px}
  nav{margin-top:22px;border-top:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.02)}
  nav ul{list-style:none;margin:0 auto;padding:0;display:flex;flex-wrap:wrap;justify-content:center;
         max-width:var(--max)}
  nav a{display:block;padding:13px 15px;color:#cfd3dc;text-decoration:none;font-size:.78rem;
        letter-spacing:.13em;text-transform:uppercase}
  nav a:hover{color:var(--oro-c)}

  /* home */
  .apertura{background:var(--nero);color:#fff;text-align:center;padding:52px 0 60px}
  .eclissi{width:180px;height:180px;margin:0 auto 26px}
  .apertura h1{font-size:clamp(1.4rem,3.6vw,2.2rem);font-weight:300;margin:0 auto;max-width:24ch;line-height:1.35}
  .apertura h1 em{font-style:normal;color:var(--oro)}
  .apertura p{color:#aeb4c2;max-width:58ch;margin:20px auto 0;font-size:.98rem}

  /* prossimo evento */
  .evento{background:var(--nero2);color:#fff;padding:46px 0}
  .ev{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
  @media(min-width:740px){.ev{grid-template-columns:.8fr 1.2fr;gap:40px}}
  .ev img{border-radius:3px;box-shadow:0 16px 40px rgba(0,0,0,.5)}
  .etichetta{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oro)}
  .ev h2{font-size:1.7rem;font-weight:500;margin:12px 0 2px}
  .ev .quando{color:var(--oro-c);margin:0 0 14px}
  .ev p{color:#c0c6d2;margin:0 0 12px;font-size:.95rem}
  .ev dl{margin:16px 0 0;font-size:.9rem;border-top:1px solid rgba(255,255,255,.12)}
  .ev dl div{display:flex;gap:14px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.12)}
  .ev dt{min-width:96px;color:#8a92a3;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;padding-top:3px}
  .ev dd{margin:0;color:#e6e9ef}

  /* video light art: un solo player grande al centro, si sceglie l'opera coi pulsanti */
  .video{background:var(--nero);color:#fff;padding:46px 0 52px;text-align:center}
  .video h2{font-size:1.25rem;font-weight:400;margin:0 0 6px}
  .video .sotto{color:#9aa1b1;font-size:.9rem;margin:0 auto 26px;max-width:60ch}
  .video-grande{max-width:980px;margin:0 auto}
  .riquadro{position:relative;padding-bottom:56.25%;height:0;border-radius:4px;overflow:hidden;background:#000;
            box-shadow:0 18px 48px rgba(0,0,0,.55)}
  .riquadro iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
  .cap{font-size:.82rem;color:#8a92a3;margin:12px 0 0}
  .scelta-video{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:16px}
  .scelta-video button{background:transparent;color:#cfd3dc;border:1px solid rgba(255,255,255,.2);border-radius:3px;
         padding:9px 16px;font:inherit;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
  .scelta-video button:hover{color:var(--oro-c)}
  .scelta-video button[aria-pressed="true"]{border-color:var(--oro);color:var(--oro-c)}

  /* sezioni chiare */
  section.pag{padding:54px 0;border-bottom:1px solid var(--bordo)}
  .occhiello{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--oro);
             font-weight:600;margin:0 0 12px}
  h2.tit{font-size:clamp(1.3rem,2.6vw,1.7rem);font-weight:500;margin:0 0 14px}
  .testo{max-width:66ch}
  .testo p{margin:0 0 14px;color:#3b4050}
  .soci{display:grid;grid-template-columns:1fr;gap:22px;margin-top:26px}
  @media(min-width:720px){.soci{grid-template-columns:repeat(2,1fr);gap:26px 38px}}
  .soci h3{margin:0 0 4px;font-size:1rem}
  .soci p{margin:0;color:var(--soft);font-size:.93rem}
  .percorso{margin-top:28px;border-top:1px solid var(--bordo)}
  .tappa{display:grid;grid-template-columns:1fr;gap:4px 24px;padding:20px 0;border-bottom:1px solid var(--bordo)}
  @media(min-width:640px){.tappa{grid-template-columns:78px 1fr}}
  .anno{color:var(--oro);font-size:1.25rem;font-weight:300}
  .tappa h4{margin:0 0 2px;font-size:1rem}
  .tappa .dove{margin:0 0 6px;font-size:.84rem;color:var(--soft)}
  .tappa p{margin:0;font-size:.92rem;color:var(--soft);max-width:60ch}
  .azione{display:inline-block;margin-top:6px;color:var(--testo);text-decoration:none;font-weight:600;
          border-bottom:2px solid var(--oro);padding-bottom:2px}

  .galleria{display:grid;grid-template-columns:1fr;gap:18px;margin:26px 0 6px}
  @media(min-width:760px){.galleria{grid-template-columns:repeat(3,1fr)}}
  .galleria figure{margin:0}
  .galleria img{width:100%;height:180px;object-fit:cover;border-radius:4px;background:#e9e4dc}
  .galleria figcaption{margin-top:7px;font-size:.78rem;color:var(--soft);line-height:1.45}
  .tappa .stampa{margin:8px 0 0;font-size:.85rem}
  .tappa .stampa a{color:var(--testo);text-decoration:none;border-bottom:1px solid var(--oro)}
  .tappa .con{display:inline-block;margin-top:9px;font-size:.79rem;color:#7a6321;background:#f6eeda;
              border-radius:3px;padding:3px 9px}

  footer{background:var(--nero);color:#99a0af;padding:46px 0 34px;font-size:.88rem;
         padding-bottom:calc(34px + env(safe-area-inset-bottom,0px))}
  .fg{display:grid;grid-template-columns:1fr;gap:26px}
  @media(min-width:720px){.fg{grid-template-columns:1.3fr 1fr 1fr}}
  footer h4{color:#fff;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;margin:0 0 10px}
  footer a{color:var(--oro-c)}
  .legale{margin-top:30px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);
          font-size:.76rem;color:#6d7484;line-height:1.7}
