/* Sito della societa' — stile (2026-09-25)
   I colori sociali arrivano da index.php come variabili:
   --c1 colore principale, --c2 secondario, --su1/--su2 testo leggibile sopra,
   --sfondo sfondo della pagina. Tutto il resto deriva da quelli. */
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:4.5rem}
body{margin:0;font:16px/1.5 "Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1b1b1d;background:var(--sfondo)}
img{max-width:100%}
a{color:inherit}
h1,h2,h3,.titoletto{font-family:"Barlow Condensed","Oswald","Arial Narrow",sans-serif;letter-spacing:.01em}
.dentro{max-width:1120px;margin:0 auto;padding:0 1rem}
.ic{width:1.25em;height:1.25em;flex:none}

/* ---------- testata fissa */
.barra{position:sticky;top:0;z-index:30;background:var(--c2);color:var(--su2);box-shadow:0 2px 12px rgba(0,0,0,.18)}
.barra .dentro{display:flex;align-items:center;gap:1rem;height:3.8rem}
.marchio{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-family:"Barlow Condensed",sans-serif;font-weight:700;font-size:1.35rem;text-transform:uppercase;white-space:nowrap}
.marchio img{height:2.6rem;width:2.6rem;object-fit:contain}
#menu{display:flex;gap:.2rem;margin-left:auto}
#menu a{text-decoration:none;padding:.45rem .7rem;border-radius:.4rem;font-weight:600;font-size:.92rem;opacity:.9}
#menu a:hover{background:rgba(255,255,255,.12);opacity:1}
.social-top{display:flex;align-items:center;gap:.3rem}
.social-top a,.apri-menu{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;color:inherit;background:transparent;border:0;cursor:pointer}
.social-top a:hover{background:rgba(255,255,255,.14)}
.apri-menu{display:none}
@media (max-width:860px){
  #menu{position:fixed;inset:3.8rem 0 auto 0;flex-direction:column;background:var(--c2);padding:.5rem 1rem 1rem;display:none;box-shadow:0 10px 20px rgba(0,0,0,.2)}
  .menu-aperto #menu{display:flex}
  #menu a{padding:.8rem;font-size:1.05rem}
  .social-top{margin-left:auto}
  .apri-menu{display:grid}
  .marchio span{font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;max-width:52vw}
}

/* ---------- apertura */
.eroe{background:linear-gradient(135deg,var(--c1) 0%,var(--c1) 45%,var(--c2) 100%);color:var(--su1);position:relative;overflow:hidden}
.eroe::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 2px,transparent 2px 22px);pointer-events:none}
.eroe .dentro{display:flex;align-items:center;gap:1.6rem;padding:2.6rem 1rem 2.8rem;position:relative;z-index:1}
.logo-grande{width:7.5rem;height:7.5rem;object-fit:contain;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35));flex:none}
.eroe h1{margin:0;font-size:clamp(2rem,6vw,3.6rem);line-height:1;text-transform:uppercase}
.motto{margin:.4rem 0 0;font-size:1.1rem;font-style:italic;opacity:.95}
.stagione{margin:.5rem 0 0;font-weight:600;opacity:.85}
@media (max-width:600px){.eroe .dentro{flex-direction:column;text-align:center;gap:1rem;padding:1.8rem 1rem 2rem}.logo-grande{width:6rem;height:6rem}}

/* ---------- linguette delle squadre */
.linguette{background:#fff;border-bottom:1px solid rgba(0,0,0,.08);position:sticky;top:3.8rem;z-index:20}
.linguette .dentro{display:flex;gap:.3rem;overflow-x:auto;padding-top:.5rem;padding-bottom:.5rem}
.linguette button{border:0;background:transparent;font:inherit;font-weight:700;padding:.55rem 1rem;border-radius:2rem;cursor:pointer;white-space:nowrap;color:#444}
.linguette button.attiva{background:var(--c1);color:var(--su1)}

/* ---------- sezioni */
.sezione{padding:2.6rem 0}
.sezione.chiara{background:#fff}
.sezione h2{margin:0 0 1.2rem;font-size:2rem;text-transform:uppercase;line-height:1.1;display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .8rem}
.sezione h2::before{content:"";width:.35rem;height:1.6rem;background:var(--c1);border-radius:1rem;align-self:center}
.sezione h2 small{font-family:"Inter",system-ui,sans-serif;font-size:.9rem;text-transform:none;font-weight:500;color:#666;letter-spacing:0}
.sezione h3{margin:1.6rem 0 .7rem;font-size:1.3rem;text-transform:uppercase;color:var(--c1)}
.etichetta{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#777;margin-bottom:.6rem}
.avviso{margin:2rem 0;padding:1.2rem;background:#fff;border-left:4px solid var(--c1);border-radius:.5rem}

/* squadra (logo + nome) nelle righe */
.sq{display:inline-flex;align-items:center;gap:.45rem;min-width:0}
.sq img{width:1.6rem;height:1.6rem;object-fit:contain;flex:none}
.sq span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sq.noi span,.noi{font-weight:800}

/* ---------- partite: prossima + ultimi risultati */
.griglia-partite{display:grid;grid-template-columns:1.1fr 1fr;gap:1.2rem}
@media (max-width:820px){.griglia-partite{grid-template-columns:1fr}}
.prossima{background:var(--c2);color:var(--su2);border-radius:1rem;padding:1.4rem;box-shadow:0 10px 30px rgba(0,0,0,.15);position:relative;overflow:hidden}
.prossima::before{content:"";position:absolute;right:-3rem;top:-3rem;width:12rem;height:12rem;border-radius:50%;background:var(--c1);opacity:.35}
.prossima .etichetta{color:inherit;opacity:.75;position:relative}
.quando{position:relative;font-size:1.05rem}
.quando b{text-transform:capitalize}
.conto{display:inline-block;margin-left:.5rem;background:var(--c1);color:var(--su1);font-size:.8rem;font-weight:800;padding:.15rem .6rem;border-radius:1rem;vertical-align:1px}
.conto:empty{display:none}
.sfida{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.8rem;margin:1.3rem 0 1rem;text-align:center}
.sfida .lato{display:flex;flex-direction:column;align-items:center;gap:.5rem;font-weight:600;line-height:1.2}
.sfida .lato img{width:4rem;height:4rem;object-fit:contain;background:#fff;border-radius:50%;padding:.35rem}
.sfida .vs{font-family:"Barlow Condensed",sans-serif;font-size:1.8rem;font-weight:800;opacity:.7}
.campo{position:relative;display:inline-flex;align-items:center;gap:.4rem;text-decoration:none;font-size:.92rem;opacity:.9}
.campo:hover{text-decoration:underline}
.giornata{position:relative;font-size:.82rem;opacity:.7;margin-top:.3rem}
.ultime{background:#fff;border-radius:1rem;padding:1.2rem;box-shadow:0 4px 18px rgba(0,0,0,.06)}
.risultato{display:grid;grid-template-columns:auto 3.6rem minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.5rem;padding:.55rem 0;border-top:1px solid rgba(0,0,0,.06);font-size:.92rem}
.risultato:first-of-type{border-top:0}
.risultato .data{color:#777;font-size:.8rem;text-transform:capitalize}
.risultato .sq:last-child{justify-content:flex-start}
.esito{display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:.35rem;font-weight:800;font-size:.8rem;color:#fff}
.eV{background:#1f9d55}.eN{background:#d69e2e}.eP{background:#c53030}
.punteggio{font-family:"Barlow Condensed",sans-serif;font-size:1.25rem;text-align:center;white-space:nowrap}
@media (max-width:520px){.risultato{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr)}.risultato .data{display:none}}

/* ---------- classifica */
.tabella-scorre{overflow-x:auto;border-radius:.8rem;box-shadow:0 4px 18px rgba(0,0,0,.06)}
.classifica{width:100%;border-collapse:collapse;background:#fff;font-size:.92rem}
.classifica th{background:var(--c2);color:var(--su2);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;padding:.6rem .4rem;text-align:center}
.classifica td{padding:.5rem .4rem;text-align:center;border-top:1px solid rgba(0,0,0,.06)}
.classifica .sx{text-align:left}
.classifica .pos{font-weight:800;width:2.4rem;border-left:4px solid transparent}
.classifica tr.noi td{background:color-mix(in srgb,var(--c1) 14%,#fff)}
.classifica tr.noi .pos{color:var(--c1)}
.classifica .pen{color:#c53030;font-weight:700;margin-left:.3rem}
.z-promozione .pos{border-left-color:#1f9d55}.z-playoff .pos{border-left-color:#3182ce}
.z-playout .pos{border-left-color:#d69e2e}.z-retrocessione .pos{border-left-color:#c53030}
@media (max-width:600px){.classifica .larga{display:none}.classifica .sq span{max-width:9.5rem}}
.legenda{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.8rem;font-size:.82rem;color:#555}
.legenda span::before{content:"";display:inline-block;width:.8rem;height:.8rem;border-radius:.2rem;margin-right:.35rem;vertical-align:-1px}
.legenda .z-promozione::before{background:#1f9d55}.legenda .z-playoff::before{background:#3182ce}
.legenda .z-playout::before{background:#d69e2e}.legenda .z-retrocessione::before{background:#c53030}

/* ---------- calendario */
.calendario{background:#fff;border-radius:.8rem;box-shadow:0 4px 18px rgba(0,0,0,.06);overflow:hidden}
.gara{display:grid;grid-template-columns:5.5rem 1fr 9rem;align-items:center;gap:.8rem;padding:.7rem 1rem;border-top:1px solid rgba(0,0,0,.06)}
.gara:first-child{border-top:0}
.calendario:not(.aperto) .gara.lontana{display:none}
.g-data b{display:block;text-transform:capitalize;font-size:.9rem}
.g-data small{color:#777}
.g-sfida{display:grid;grid-template-columns:minmax(0,1fr) 3.4rem minmax(0,1fr);align-items:center;gap:.5rem}
.g-sfida .sq:first-child{justify-content:flex-end;text-align:right}
.g-sfida .sq:first-child img{order:2}
.g-sfida .punteggio{border-radius:.4rem;padding:.1rem 0;color:#fff}
.g-sfida .punteggio.vuoto{color:#aaa;background:none}
.g-info{font-size:.78rem;color:#777;text-align:right}
.tag{display:inline-block;background:var(--c1);color:var(--su1);border-radius:1rem;padding:.05rem .55rem;font-weight:700}
.tutto{display:block;margin:1rem auto 0;border:2px solid var(--c1);background:transparent;color:var(--c1);font:inherit;font-weight:700;padding:.55rem 1.2rem;border-radius:2rem;cursor:pointer}
.tutto:hover{background:var(--c1);color:var(--su1)}
@media (max-width:640px){
  .gara{grid-template-columns:1fr;gap:.3rem;padding:.8rem}
  .g-data{display:flex;gap:.5rem;align-items:baseline}
  .g-info{text-align:left}
  /* sul telefono i loghi piccoli rubano spazio ai nomi */
  .g-sfida .sq img,.risultato .sq img{display:none}
  .g-sfida{grid-template-columns:minmax(0,1fr) 3rem minmax(0,1fr)}
}

/* ---------- rosa */
.giocatori{display:grid;grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.9rem}
.giocatore{background:var(--sfondo);border-radius:.8rem;overflow:hidden;text-align:center;transition:transform .15s}
.giocatore:hover{transform:translateY(-3px)}
.giocatore .foto{position:relative;aspect-ratio:4/5;background:linear-gradient(160deg,var(--c1),var(--c2));display:grid;place-items:center;color:var(--su1)}
.giocatore .foto img{width:100%;height:100%;object-fit:cover}
.giocatore .foto span{font-family:"Barlow Condensed",sans-serif;font-size:2.6rem;font-weight:700;opacity:.9}
.numero{position:absolute;left:.5rem;top:.4rem;font-family:"Barlow Condensed",sans-serif;font-size:1.6rem;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.5)}
.chi{padding:.55rem .4rem .7rem;font-size:.88rem;line-height:1.25}
.chi b{text-transform:uppercase}
.chi small{display:block;color:#777}
.cap{display:inline-grid;place-items:center;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--c1);color:var(--su1);font-size:.65rem;font-weight:800;vertical-align:1px}
.giocatori.compatti{grid-template-columns:repeat(auto-fill,minmax(13.5rem,1fr));gap:.6rem}
.giocatori.compatti .giocatore{display:flex;align-items:center;gap:.7rem;text-align:left;padding:.5rem .6rem;border-left:4px solid var(--c1)}
.giocatori.compatti .foto{flex:none;width:2.8rem;height:2.8rem;aspect-ratio:auto;border-radius:50%}
.giocatori.compatti .foto span{font-size:1.15rem}
.giocatori.compatti .foto{overflow:visible}
.giocatori.compatti .numero{left:auto;top:auto;right:-.3rem;bottom:-.3rem;width:1.35rem;height:1.35rem;display:grid;place-items:center;border-radius:50%;background:var(--c2);color:var(--su2);font-size:.8rem;text-shadow:none}
.giocatori.compatti .chi{padding:0}
.staff{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.6rem}
.staff div{background:var(--sfondo);border-radius:.6rem;padding:.7rem .9rem;border-left:4px solid var(--c1)}
.staff b{display:block}
.staff span{font-size:.85rem;color:#666}

/* ---------- marcatori */
.marcatori{list-style:none;margin:0;padding:0;counter-reset:m;background:#fff;border-radius:.8rem;box-shadow:0 4px 18px rgba(0,0,0,.06);overflow:hidden}
.marcatori li{counter-increment:m;display:grid;grid-template-columns:2.2rem minmax(0,14rem) 1fr 2.5rem;align-items:center;gap:.7rem;padding:.6rem 1rem;border-top:1px solid rgba(0,0,0,.06)}
.marcatori li:first-child{border-top:0}
.marcatori li::before{content:counter(m);font-weight:800;color:var(--c1);text-align:center}
.marcatori .nome{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.marcatori small{color:#777}
.barra-gol{height:.55rem;background:rgba(0,0,0,.06);border-radius:1rem;overflow:hidden}
.barra-gol i{display:block;height:100%;background:var(--c1);border-radius:1rem}
.marcatori .gol{font-family:"Barlow Condensed",sans-serif;font-size:1.4rem;text-align:right}
@media (max-width:560px){.marcatori li{grid-template-columns:2rem 1fr 2.2rem}.barra-gol{display:none}}

/* ---------- sponsor */
.sponsor{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:1rem}
.sponsor a,.sponsor div{display:grid;place-items:center;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:.8rem;padding:1rem;aspect-ratio:2/1}
.sponsor img{max-height:100%;object-fit:contain;filter:grayscale(.2)}
.sponsor a:hover img{filter:none}

/* ---------- social */
.social-riga{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:flex-start}
.card-social{flex:1 1 18rem;min-width:0;flex-wrap:wrap;display:flex;align-items:center;gap:1rem;text-decoration:none;padding:1.3rem 1.4rem;border-radius:1rem;color:#fff}
.card-social.ig{background:linear-gradient(45deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888)}
.card-social .ic{width:2.8rem;height:2.8rem}
.card-social span{flex:1 1 10rem;min-width:0;overflow-wrap:anywhere}
.card-social b{display:block;font-size:1.15rem}
.card-social em{font-style:normal;font-weight:800;background:#fff;color:#bc1888;padding:.45rem 1rem;border-radius:2rem}
.fb{flex:1 1 20rem;max-width:500px;background:#fff;border-radius:1rem;overflow:hidden}
.fb iframe{width:100%}

/* ---------- piede */
footer{background:var(--c2);color:var(--su2);padding:2.4rem 0 1.6rem;margin-top:0}
.piede-soc{display:flex;align-items:center;gap:.9rem;margin-bottom:1.2rem}
.piede-soc img{width:3.4rem;height:3.4rem;object-fit:contain}
.piede-soc b{display:block;font-size:1.1rem;text-transform:uppercase}
.piede-soc small{opacity:.75}
.contatti{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.7rem}
.contatti li{display:flex;align-items:center;gap:.55rem;opacity:.92}
.contatti a{text-decoration:none}
.contatti a:hover{text-decoration:underline}
.fonte{margin:1.6rem 0 0;font-size:.8rem;opacity:.65}
