:root{--green:#00b45a;--greenSoft:#063f2b;--greenDark:#02150d;--burg:#6d080d;--burg2:#9b1118;--gold:#d4a645;--dark:#030604;--panel:#07100d;--panel2:#0b1611;--text:#f2f7f3;--muted:#a8b4ad;--line:rgba(212,166,69,.32)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:radial-gradient(circle at 18% 0,rgba(0,180,90,.18),transparent 34%),radial-gradient(circle at 86% 0,rgba(155,17,24,.22),transparent 36%),linear-gradient(180deg,#050807,#010201 70%);color:var(--text)}a{color:inherit}main{min-height:70vh}.site-header{position:sticky;top:0;z-index:50;height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:0 5%;background:linear-gradient(90deg,rgba(2,22,13,.96),rgba(3,6,4,.94) 48%,rgba(37,4,6,.96));backdrop-filter:blur(14px);border-bottom:1px solid rgba(212,166,69,.35);box-shadow:0 10px 28px rgba(0,0,0,.35)}.site-brand{display:flex;align-items:center;gap:16px;text-decoration:none}.site-brand img{width:70px;height:70px;object-fit:contain;filter:drop-shadow(0 8px 15px #000)}.site-brand strong{display:block;font-size:23px;letter-spacing:.02em;line-height:1;color:#fff;text-transform:uppercase}.site-brand span{display:none}.site-nav{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.site-nav a{position:relative;color:#fff;text-decoration:none;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.site-nav a:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2px;background:var(--gold);transform:scaleX(0);transition:.2s}.site-nav a:hover,.site-nav a.active{color:var(--green)}.site-nav a:hover:after,.site-nav a.active:after{transform:scaleX(1)}.cart-pill{padding-left:8px}.cart-pill:before{content:'0';position:absolute;right:-10px;top:-13px;background:var(--green);color:#062014;border-radius:999px;width:18px;height:18px;display:grid;place-items:center;font-size:11px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:linear-gradient(135deg,var(--greenSoft),#006d3a);color:#fff;text-decoration:none;padding:12px 17px;border-radius:12px;border:1px solid rgba(255,255,255,.12);cursor:pointer;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.3)}.btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.btn.alt{background:linear-gradient(135deg,var(--burg),#2e0406)}.btn.gold{background:linear-gradient(135deg,var(--gold),#b57b21);color:#1e1200}.btn.ghost{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);color:#fff}.stadium-home{padding:0 5% 24px}.hero-banner{position:relative;margin:0 0 12px;border:2px solid rgba(212,166,69,.9);border-radius:14px;overflow:hidden;background:linear-gradient(90deg,#00190d 0%,#003d22 14%,#05120c 30%,#030303 50%,#210304 70%,#5f070d 86%,#8c1017 100%);box-shadow:0 28px 80px rgba(0,0,0,.76)}.hero-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,180,90,.45),transparent 28%,transparent 66%,rgba(139,11,17,.5));pointer-events:none}.hero-banner img{position:relative;z-index:1;display:block;width:100%;height:clamp(290px,28vw,520px);object-fit:contain;object-position:center;background:transparent;margin:auto;filter:saturate(1.18) contrast(1.08)}.match-row{display:grid;grid-template-columns:1fr 2.05fr 1fr;gap:18px;margin:14px 0}.info-card,.versus-card,.panel{background:linear-gradient(135deg,rgba(8,23,16,.96),rgba(3,8,6,.96));border:1px solid rgba(155,17,24,.8);border-radius:12px;box-shadow:0 18px 42px rgba(0,0,0,.55)}.mini{display:flex;align-items:center;gap:18px;padding:18px 24px}.gold-icon{font-size:32px;color:var(--gold)}.info-card span,.panel-head a,.tile-body span{display:block;color:var(--green);font-weight:900;text-transform:uppercase;font-size:13px}.info-card b{display:block;color:#fff;margin:7px 0;font-size:16px}.info-card small{display:block;color:#fff}.versus-card{display:flex;align-items:center;justify-content:space-around;min-height:86px;background:linear-gradient(90deg,#1d0305,#7e1117 50%,#1d0305);padding:12px}.team{display:flex;align-items:center;gap:18px;text-transform:uppercase;text-align:center}.team img{width:62px;height:62px;object-fit:contain}.team b{font-size:18px}.team.right b{min-width:160px}.fake-shield{width:50px;height:62px;background:repeating-linear-gradient(90deg,#fff 0 12px,#111 12px 24px);clip-path:polygon(50% 0,90% 12%,90% 70%,50% 100%,10% 70%,10% 12%)}.vs{font-size:42px;font-weight:1000;color:var(--gold);font-family:Georgia,serif}.home-grid{display:grid;grid-template-columns:2.2fr .8fr;gap:18px}.panel{padding:12px 14px;margin-bottom:14px}.panel-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(212,166,69,.22);padding-bottom:8px;margin-bottom:10px}.panel-head h2{margin:0;color:#fff;text-transform:uppercase;font-size:22px;letter-spacing:.02em}.panel-head a{color:var(--gold);text-decoration:none;font-size:12px}.news-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.news-tile{border:1px solid rgba(255,255,255,.12);border-radius:8px;overflow:hidden;background:#08110d;box-shadow:0 10px 24px rgba(0,0,0,.45)}.tile-img{height:120px;background:url('../img/campioni-hero.png') center/cover no-repeat;filter:saturate(1.1)}.tile-body{padding:10px}.tile-body small{display:block;color:#ddd;margin:8px 0}.tile-body h3{font-size:16px;line-height:1.15;margin:0;color:#fff}.shop-panel{border-color:rgba(212,166,69,.45)}.product-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.mini-product{border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:8px;background:linear-gradient(180deg,#121a15,#060a08)}.mini-product img{width:100%;height:90px;object-fit:cover;border-radius:6px;background:#161616}.mini-product b{display:block;font-size:13px;color:#fff;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-product small{color:#fff}.dark-table,.table{width:100%;border-collapse:collapse;color:#fff;background:linear-gradient(180deg,#08110d,#050806);border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.dark-table th,.table th{font-size:11px;color:#dfe7e2;text-transform:uppercase;text-align:left;padding:12px;background:rgba(255,255,255,.04)}.dark-table td,.table td{padding:13px 12px;border-bottom:1px solid rgba(155,17,24,.55);color:#fff}.dark-table tr.first,.table tr.first{background:linear-gradient(90deg,rgba(0,150,76,.75),rgba(0,110,55,.48))}.dark-table td:last-child,.dark-table th:last-child{text-align:right}.fixture{display:flex;gap:12px;align-items:center;padding:13px 4px;border-bottom:1px solid rgba(255,255,255,.1)}.fixture img{width:38px;height:38px;object-fit:contain}.fixture b{display:block;font-size:12px;color:#fff}.fixture small{display:block;color:#d7ddd9;margin-top:5px}.sponsors-panel{margin-top:2px}.sponsor-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.sponsor-strip span{height:58px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.14);border-radius:8px;background:linear-gradient(180deg,#151515,#080808);font-weight:900;color:#e9e9e9}.section{width:min(1450px,90%);margin:0 auto;padding:34px 0}.section>h1{font-size:42px;text-transform:uppercase;margin:0 0 8px;letter-spacing:.02em}.section>p{color:var(--muted);font-size:17px}.page-hero{width:min(1450px,90%);margin:24px auto 0;border:1px solid rgba(212,166,69,.48);border-radius:18px;padding:44px;background:linear-gradient(90deg,rgba(0,80,42,.78),rgba(5,8,6,.95) 45%,rgba(115,8,13,.75)),url('../img/campioni-hero.png') center/cover no-repeat;color:white;box-shadow:0 18px 48px rgba(0,0,0,.55)}.page-hero h1{font-size:44px;line-height:1;margin:0 0 10px;text-transform:uppercase}.page-hero p{margin:0;color:#e5eee8}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.product-card,.card{background:linear-gradient(180deg,rgba(13,24,18,.98),rgba(4,8,6,.98));color:#fff;border-radius:16px;padding:18px;box-shadow:0 16px 36px rgba(0,0,0,.5);border:1px solid rgba(255,255,255,.12)}.card h1,.card h2,.card h3{color:#fff}.product-card img,.card img{width:100%;height:210px;object-fit:cover;border-radius:12px;background:#0d0d0d;border:1px solid rgba(255,255,255,.08)}.muted{color:var(--muted)}.price{font-size:24px;color:var(--gold);font-weight:900}.form{max-width:780px}.form input,.form textarea,.form select{width:100%;padding:13px;margin:7px 0 15px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:#07100d;color:#fff}.form label{font-weight:900;color:#fff}.alert{padding:14px;border-radius:14px;margin:12px 0}.ok{background:#dcfce7;color:#15201c}.err{background:#fee2e2;color:#15201c}.size-options{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 18px}.size-options label{cursor:pointer}.size-options input{display:none}.size-options span{display:inline-flex;min-width:46px;justify-content:center;padding:12px 14px;border-radius:12px;border:2px solid rgba(255,255,255,.18);font-weight:900;background:#07100d;color:#fff}.size-options input:checked+span{border-color:var(--gold);background:var(--gold);color:#2d1800}.paypal-box{background:linear-gradient(180deg,#151207,#080806);color:#fff;border:1px solid rgba(212,166,69,.55);border-radius:18px;padding:18px;margin-top:18px}.footer{background:linear-gradient(90deg,#02150d,#030604 50%,#2a0406);color:white;padding:28px 5%;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid rgba(212,166,69,.35)}.footer img{width:56px;vertical-align:middle;margin-right:10px}.adminbody{background:#eef2ef;color:#18231f}.adminshell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.adminsidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#06382d,#111827 70%,#7f1d1d);color:white;padding:22px 16px;overflow:auto;box-shadow:10px 0 30px #0002}.adminbrand{display:flex;align-items:center;gap:12px;padding:10px 10px 20px;border-bottom:1px solid #ffffff22;margin-bottom:12px}.adminbrand strong{display:block;font-size:17px;line-height:1.2}.adminbrand span{display:block;font-size:12px;opacity:.8;margin-top:3px}.adminlogo{width:48px;height:48px;border-radius:16px;background:var(--gold);color:#06382d;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 20px #0003}.adminnav p{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:#ffffff99;margin:18px 10px 8px}.adminnav a{display:flex;align-items:center;gap:10px;color:white;text-decoration:none;padding:11px 12px;border-radius:14px;margin:4px 0;font-weight:700;transition:.15s;background:transparent}.adminnav a:hover{background:#ffffff18;transform:translateX(2px)}.adminnav a.active{background:var(--gold);color:#312100;box-shadow:0 8px 20px #0002}.admincontent{padding:28px;min-width:0}.admintop{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.admintop h1{margin:4px 0 0;font-size:32px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#66736f;font-weight:900}.adminstats{grid-template-columns:repeat(3,minmax(180px,1fr));margin-bottom:18px}.statcard{position:relative;overflow:hidden}.statcard:after{content:"";position:absolute;right:-30px;top:-30px;width:95px;height:95px;border-radius:50%;background:#064e3b12}.statcard p{margin-top:0;color:#66736f}.statcard a{font-weight:800;color:var(--greenSoft);text-decoration:none}.adminwelcome{margin:18px 0}.admincontent .card{background:#fff;color:#18231f;border:0;border-radius:22px}.admincontent .card h1,.admincontent .card h2,.admincontent .card h3{color:#18231f}.admincontent .table{background:#fff;color:#18231f;box-shadow:none;border:1px solid #e7ece9}.admincontent .table th,.admincontent .table td{color:#18231f;border-bottom:1px solid #eee}.actions{display:flex;gap:8px;flex-wrap:wrap}.kpi{font-size:32px;font-weight:900;color:var(--burg)}
@media(max-width:1100px){.site-header{height:auto;display:block;padding:12px 4%}.site-nav{margin-top:12px;gap:12px}.stadium-home{padding:0 4% 22px}.match-row,.home-grid{grid-template-columns:1fr}.news-row{grid-template-columns:repeat(2,1fr)}.product-strip,.sponsor-strip{grid-template-columns:repeat(3,1fr)}.hero-banner img{height:clamp(260px,40vw,520px)}}@media(max-width:650px){.site-brand strong{font-size:18px}.site-brand img{width:58px;height:58px}.hero-banner{border-radius:10px}.hero-banner img{height:260px}.match-row{gap:10px}.versus-card{display:block;text-align:center}.team{justify-content:center;margin:8px 0}.news-row,.product-strip,.sponsor-strip{grid-template-columns:1fr}.adminshell{display:block}.adminsidebar{position:relative;height:auto}.admincontent{padding:18px}.adminstats{grid-template-columns:1fr}.panel-head h2{font-size:18px}.section,.page-hero{width:92%}.page-hero{padding:28px}.page-hero h1{font-size:32px}}

/* Fix v9: card cliccabili in homepage */
.news-tile,
.mini-product{
  display:block;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease;
}
.news-tile:hover,
.mini-product:hover{
  transform:translateY(-4px);
  border-color:rgba(212,166,69,.85);
  box-shadow:0 18px 38px rgba(0,0,0,.65);
  filter:brightness(1.08);
}
.news-tile:hover h3,
.mini-product:hover b{color:var(--gold)}
.team-logo-sm{width:30px;height:30px;object-fit:contain;vertical-align:middle;margin-right:8px;border-radius:50%;background:rgba(255,255,255,.08);padding:3px}.fixture{display:flex;align-items:center;gap:10px}.fixture img{width:38px;height:38px;object-fit:contain}.page-panel{background:linear-gradient(135deg,rgba(5,40,22,.75),rgba(85,7,13,.65));border:1px solid rgba(216,177,90,.35);border-radius:18px;padding:24px;margin-top:24px}.team img{object-fit:contain}
/* v13: prossima gara, giornate e schede giocatori */
.match-detail-card{background:linear-gradient(90deg,rgba(0,110,55,.45),rgba(3,6,4,.96) 45%,rgba(125,8,14,.52));border:1px solid rgba(212,166,69,.55);border-radius:20px;padding:24px;margin-bottom:18px;box-shadow:0 20px 55px rgba(0,0,0,.55)}
.match-meta{text-align:center;color:var(--gold);font-weight:900;text-transform:uppercase;letter-spacing:.04em;margin-bottom:18px}.match-teams-big{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px}.match-team-big{text-align:center}.match-team-big img{width:115px;height:115px;object-fit:contain;filter:drop-shadow(0 10px 20px #000)}.match-team-big h2{margin:10px 0 0;text-transform:uppercase;font-size:28px}.match-vs-big{font-size:54px;font-weight:1000;color:var(--gold);font-family:Georgia,serif}.formation-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.formation-text{white-space:pre-wrap;color:#fff;background:#050806;border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:15px;line-height:1.6;font-family:Arial,Helvetica,sans-serif}.players-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.player-card{display:flex;gap:16px;align-items:center;background:linear-gradient(135deg,rgba(0,80,42,.36),rgba(8,15,11,.96) 52%,rgba(110,8,13,.42));border:1px solid rgba(212,166,69,.35);border-radius:18px;padding:15px;box-shadow:0 14px 34px rgba(0,0,0,.45)}.player-card img,.player-placeholder{width:86px;height:86px;border-radius:16px;object-fit:cover;background:#07100d;border:1px solid rgba(255,255,255,.15)}.player-placeholder{display:grid;place-items:center;color:var(--gold);font-weight:1000;font-size:24px}.player-card span{color:var(--green);font-size:12px;text-transform:uppercase;font-weight:900}.player-card h3{margin:4px 0;color:#fff;text-transform:uppercase}.player-card p{margin:0;color:#fff}.player-card small{display:block;color:var(--muted);margin-top:5px}@media(max-width:750px){.match-teams-big,.formation-grid{grid-template-columns:1fr}.match-vs-big{text-align:center}.match-team-big h2{font-size:22px}}
/* v14: squadre complete e Mappa Campi */
.campi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:22px}.campo-card{background:linear-gradient(135deg,rgba(0,80,42,.42),rgba(5,8,6,.98) 50%,rgba(110,8,13,.46));border:1px solid rgba(212,166,69,.42);border-radius:20px;overflow:hidden;box-shadow:0 18px 48px rgba(0,0,0,.55)}.campo-head{display:flex;gap:16px;align-items:center;padding:18px;border-bottom:1px solid rgba(255,255,255,.1)}.campo-head img{width:70px;height:70px;object-fit:contain;background:rgba(255,255,255,.06);border-radius:16px;padding:6px}.campo-head h2{margin:0;text-transform:uppercase;color:#fff;font-size:22px}.campo-head p{margin:5px 0 0;color:var(--gold);font-weight:900}.campo-info{padding:18px;color:#fff}.campo-info p{margin:9px 0;color:#eaf1ed}.campo-map{width:100%;height:240px;border:0;display:block;filter:saturate(.9) contrast(1.05)}.campo-actions{padding:16px 18px 20px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.team-admin-form h2,.team-admin-form h3{margin-top:16px;color:#fff}.team-admin-form h3{border-top:1px solid rgba(255,255,255,.12);padding-top:16px;color:var(--gold)}@media(max-width:700px){.campi-grid,.form-grid-2{grid-template-columns:1fr}.campo-head{align-items:flex-start}.campo-head img{width:58px;height:58px}}

/* v15 - Homepage professionale e tema bianco globale */
body, main, .section, .page-hero, .card, .product-card, .panel, .page-panel, .campo-info, .campo-card, .match-detail-card,
.news-tile, .mini-product, .fixture, .formation-text, .player-card, .paypal-box, table, th, td, label, p, h1, h2, h3, h4, h5, h6, span, small, b, strong, li {
  color:#fff;
}
a{color:#fff}.section>p,.muted,.muted-white,.card p,.product-card p{color:#dfe8e3}.dark-table th,.dark-table td{color:#fff}.dark-table tr{border-color:rgba(255,255,255,.08)}
.form input,.form textarea,.form select{background:#050806;color:#fff}.form input::placeholder,.form textarea::placeholder{color:#aeb7b1}

.home-pro{width:min(1480px,94%);margin:0 auto;padding:18px 0 34px}.hero-pro{position:relative;min-height:560px;border-radius:26px;overflow:hidden;border:1px solid rgba(212,166,69,.58);background:linear-gradient(90deg,#001d0f 0%,#006135 18%,#050806 50%,#64070e 82%,#9b1118 100%);box-shadow:0 30px 95px rgba(0,0,0,.72);isolation:isolate}.hero-glow{position:absolute;top:0;bottom:0;width:36%;z-index:0;filter:blur(22px);opacity:.75}.hero-glow.left{left:-4%;background:radial-gradient(circle at 20% 42%,rgba(0,180,90,.85),transparent 62%)}.hero-glow.right{right:-4%;background:radial-gradient(circle at 80% 42%,rgba(155,17,24,.86),transparent 62%)}.hero-media{position:absolute;inset:24px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(90deg,rgba(0,70,38,.95),rgba(0,0,0,.75) 47%,rgba(110,8,14,.95));overflow:hidden;border:1px solid rgba(255,255,255,.12)}.hero-media:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,180,90,.42),transparent 34%,transparent 66%,rgba(155,17,24,.46));z-index:2;pointer-events:none}.hero-media img{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;object-position:center;filter:saturate(1.18) contrast(1.08) brightness(.9)}.hero-content{position:absolute;left:46px;bottom:42px;right:46px;z-index:4;display:flex;align-items:flex-end;gap:22px;pointer-events:none;text-shadow:0 8px 22px rgba(0,0,0,.9)}.hero-content .btn{pointer-events:auto;text-shadow:none}.hero-crest{width:118px;height:118px;object-fit:contain;filter:drop-shadow(0 14px 25px #000)}.eyebrow-gold{display:block;color:var(--gold);text-transform:uppercase;font-size:13px;font-weight:1000;letter-spacing:.12em}.hero-content h1{margin:6px 0 8px;font-size:clamp(36px,5vw,78px);line-height:.88;text-transform:uppercase;color:#fff}.hero-content p{max-width:690px;margin:0 0 18px;font-size:18px;color:#fff}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.next-match-pro{margin:18px 0;background:linear-gradient(90deg,rgba(0,90,48,.68),rgba(4,8,6,.98) 50%,rgba(120,8,14,.72));border:1px solid rgba(212,166,69,.48);border-radius:22px;padding:22px;box-shadow:0 20px 50px rgba(0,0,0,.5)}.match-label{text-align:center;text-transform:uppercase;color:var(--gold);font-weight:1000;letter-spacing:.14em;margin-bottom:18px}.match-line{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}.match-team{display:flex;align-items:center;gap:18px;text-transform:uppercase;font-size:24px;font-weight:1000}.match-team.away{justify-content:flex-end;text-align:right}.match-team img{width:86px;height:86px;object-fit:contain;background:rgba(255,255,255,.06);border-radius:20px;padding:6px}.match-center{text-align:center;min-width:240px}.match-center span{font-family:Georgia,serif;color:var(--gold);font-size:52px;font-weight:1000;display:block}.match-center b,.match-center small{display:block;color:#fff}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.countdown div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:18px;text-align:center;padding:16px}.countdown b{display:block;color:var(--gold);font-size:36px}.countdown span{text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.08em;color:#fff}.empty-home{text-align:center;margin:10px 0;color:#fff}.stats-pro{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stats-pro div{background:linear-gradient(135deg,rgba(0,90,48,.48),rgba(6,12,9,.98) 55%,rgba(120,8,14,.38));border:1px solid rgba(212,166,69,.28);border-radius:20px;padding:22px;text-align:center;box-shadow:0 14px 34px rgba(0,0,0,.36)}.stats-pro span{display:block;color:#fff;text-transform:uppercase;font-size:12px;font-weight:1000;letter-spacing:.08em}.stats-pro b{display:block;color:var(--gold);font-size:44px;margin-top:8px}.home-layout-pro{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(320px,.8fr);gap:18px}.pro-panel{background:linear-gradient(135deg,rgba(0,55,30,.45),rgba(5,8,6,.98) 46%,rgba(90,7,12,.38));border:1px solid rgba(212,166,69,.32);border-radius:22px;padding:18px;box-shadow:0 18px 45px rgba(0,0,0,.48)}.featured-news{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:14px}.feature-card{position:relative;min-height:290px;display:block;overflow:hidden;border-radius:18px;text-decoration:none;background:#07100d;border:1px solid rgba(255,255,255,.12)}.feature-card:first-child{grid-row:span 2;min-height:594px}.feature-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transition:.25s;filter:saturate(1.12) brightness(.7)}.feature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.88))}.feature-card div{position:absolute;left:18px;right:18px;bottom:18px;z-index:2}.feature-card small{color:var(--gold);font-weight:900;text-transform:uppercase}.feature-card h3{margin:8px 0 12px;font-size:24px;line-height:1.05;color:#fff}.feature-card:not(:first-child) h3{font-size:19px}.feature-card span{color:var(--green);font-weight:1000;text-transform:uppercase;font-size:12px}.feature-card:hover img{transform:scale(1.06);filter:saturate(1.2) brightness(.88)}.shop-showcase{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.shop-card-pro{display:block;text-decoration:none;border-radius:18px;overflow:hidden;background:#06100c;border:1px solid rgba(255,255,255,.12);transition:.2s}.shop-card-pro img{width:100%;height:210px;object-fit:cover;background:#0b0b0b}.shop-card-pro div{padding:14px}.shop-card-pro h3{margin:0 0 8px;color:#fff;text-transform:uppercase;font-size:17px}.shop-card-pro b{color:var(--gold);font-size:22px}.shop-card-pro span{float:right;color:#fff;background:var(--burg2);border-radius:999px;padding:8px 12px;font-weight:900;font-size:12px}.shop-card-pro:hover{transform:translateY(-4px);border-color:var(--gold)}.today-pro p{font-size:18px;line-height:1.55}.standings-pro .dark-table{width:100%}.sporting-row td{background:rgba(0,180,90,.16);color:#fff}.last-result{text-align:center;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:18px 0}.last-result span{font-weight:1000;text-transform:uppercase}.last-result b{font-size:38px;color:var(--gold);white-space:nowrap}.result-pro small{display:block;text-align:center;color:#fff}.map-home p{font-weight:900;line-height:1.45}.sponsors-pro{margin-top:18px}.sponsor-marquee{display:flex;gap:12px;overflow:hidden;flex-wrap:wrap}.sponsor-marquee span{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:12px 18px;font-weight:1000;text-transform:uppercase;color:#fff}.sponsor-marquee img{width:34px;height:34px;object-fit:contain}.site-header{background:linear-gradient(90deg,rgba(0,60,32,.96),rgba(3,6,4,.96) 50%,rgba(105,8,14,.96));}.footer{color:#fff}.footer span{color:#fff}
@media(max-width:1050px){.hero-pro{min-height:470px}.hero-content{left:28px;right:28px;bottom:28px}.hero-crest{width:88px;height:88px}.match-line,.home-layout-pro{grid-template-columns:1fr}.match-team,.match-team.away{justify-content:center;text-align:center}.featured-news{grid-template-columns:1fr}.feature-card,.feature-card:first-child{min-height:320px}.shop-showcase{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.home-pro{width:94%;padding-top:10px}.hero-pro{min-height:430px;border-radius:18px}.hero-media{inset:12px;border-radius:16px}.hero-content{display:block;left:20px;right:20px;bottom:20px}.hero-crest{width:70px;height:70px;margin-bottom:8px}.hero-content h1{font-size:34px}.hero-content p{font-size:15px}.stats-pro,.countdown,.shop-showcase{grid-template-columns:1fr}.next-match-pro{padding:16px}.match-team{font-size:18px}.match-team img{width:64px;height:64px}.match-center span{font-size:40px}.featured-news .feature-card{min-height:260px}.last-result{grid-template-columns:1fr}.last-result b{font-size:34px}}


/* === Revisione homepage: banner pulito e testo bianco globale === */
body, body *{color:#fff;}
input, textarea, select{color:#fff !important;background:#101713;border-color:rgba(212,166,69,.35);} 
input::placeholder, textarea::placeholder{color:rgba(255,255,255,.62);} 
.hero-pro{min-height:clamp(360px,56vw,760px);padding:24px;background:linear-gradient(90deg,#003d22 0%,#006b3a 18%,#050806 50%,#65070e 82%,#9b1118 100%);}
.hero-media{position:relative;inset:auto;width:100%;height:100%;min-height:calc(clamp(360px,56vw,760px) - 48px);border-radius:22px;background:linear-gradient(90deg,rgba(0,90,48,.95),rgba(0,0,0,.78) 50%,rgba(110,8,14,.95));}
.hero-media img{width:100%;height:100%;object-fit:contain;object-position:center;}
.hero-media:before{background:linear-gradient(90deg,rgba(0,180,90,.35),rgba(0,0,0,.10) 35%,rgba(0,0,0,.10) 65%,rgba(155,17,24,.38));}
.hero-content,.hero-crest,.hero-actions{display:none !important;}
.site-header{background:linear-gradient(90deg,rgba(0,60,32,.96),rgba(3,6,4,.95) 50%,rgba(105,8,14,.96));}
.panel, .pro-panel, .card, .page-panel, .product-card, .news-card, .campo-card{color:#fff;}
.panel *, .pro-panel *, .card *, .page-panel *, .product-card *, .news-card *, .campo-card *{color:inherit;}
.btn.gold, .btn.gold *{color:#1b1202 !important;}
.btn.ghost, .btn.ghost *{color:#fff !important;}
@media(max-width:650px){.hero-pro{min-height:330px;padding:12px}.hero-media{min-height:306px;border-radius:16px}}


/* === v17: testo bianco su ogni elemento del sito pubblico === */
html, body, main, section, article, header, footer, nav, aside, div, p, span, small, strong, b, em, i, label, li, ul, ol, h1, h2, h3, h4, h5, h6, table, thead, tbody, tr, th, td, a { color:#ffffff !important; }
.card, .panel, .pro-panel, .product-card, .news-tile, .feature-card, .shop-card-pro, .page-hero, .page-panel, .paypal-box, .form, .dark-table, .table { color:#ffffff !important; }
.card *, .panel *, .pro-panel *, .product-card *, .news-tile *, .feature-card *, .shop-card-pro *, .page-hero *, .page-panel *, .paypal-box *, .form *, .dark-table *, .table * { color:#ffffff !important; }
input, textarea, select, option { color:#ffffff !important; background:#050806 !important; }
input::placeholder, textarea::placeholder { color:rgba(255,255,255,.65) !important; }
.btn.gold, .btn.gold *, .size-options input:checked + span { color:#1b1202 !important; }
.alert.ok, .alert.ok *, .ok, .ok * { color:#ffffff !important; background:#0d5f36 !important; }
.alert.err, .alert.err *, .err, .err * { color:#ffffff !important; background:#7b1117 !important; }
/* v18 customer/order forms */
body, body *{color:#fff;}
input, textarea, select{background:#111!important;color:#fff!important;border:1px solid rgba(255,255,255,.22);border-radius:12px;padding:12px;}
input::placeholder, textarea::placeholder{color:rgba(255,255,255,.55)!important;}
select option{background:#111;color:#fff;}
a{color:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .wide{grid-column:1/-1}.auth-form{max-width:820px;margin:auto}.check{display:flex;gap:10px;align-items:center;margin:14px 0}.check input{width:auto}.btn.danger,.danger{background:#7a1212!important;border-color:#b92b2b!important;color:#fff!important}.btn.small{padding:8px 10px;border-radius:9px;font-size:.9rem}.status-badge{display:inline-block;padding:6px 10px;border-radius:999px;background:rgba(19,139,78,.18);border:1px solid rgba(216,177,90,.45);color:#fff}.alert{background:rgba(122,18,18,.35);border:1px solid #b92b2b;color:#fff;padding:12px;border-radius:12px;margin-bottom:14px}.alert.ok{background:rgba(19,139,78,.25);border-color:#138b4e}
@media(max-width:760px){.form-grid{grid-template-columns:1fr}}

/* v20 messaggi conferma sito */
.site-notice{max-width:1180px;margin:18px auto;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,rgba(12,122,89,.95),rgba(117,22,22,.75));border:1px solid rgba(245,197,66,.35);font-weight:900;color:#fff!important}

.status-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);font-size:12px;font-weight:800;color:#fff!important;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.status-pill.in_corso,.status-pill.recupero,.status-pill.supplementari,.status-pill.rigori{background:rgba(12,141,76,.22);border-color:#0d8d4c;color:#fff!important;box-shadow:0 0 18px rgba(12,141,76,.25)}
.status-pill.intervallo{background:rgba(216,177,90,.18);border-color:#d8b15a;color:#fff!important}
.status-pill.fine,.status-pill.annullata,.status-pill.rinviata{background:rgba(91,10,10,.35);border-color:#7b1515;color:#fff!important}
.live-status{width:100%;text-align:center;font-size:clamp(24px,4vw,46px);font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#fff!important;text-shadow:0 0 22px rgba(12,141,76,.65)}
.countdown.match-live{display:flex;align-items:center;justify-content:center;min-height:110px;background:linear-gradient(90deg,rgba(12,141,76,.35),rgba(91,10,10,.35));border:1px solid rgba(216,177,90,.35);border-radius:22px}

.team-cell{display:flex;align-items:center;gap:8px;min-width:180px}.team-cell .team-logo-sm{flex:0 0 auto}

/* News page grouped by date */
.news-page-hero{background:linear-gradient(90deg,rgba(0,85,45,.88),rgba(5,8,6,.96) 46%,rgba(115,8,13,.88)),url('../img/campioni-hero.png') center/cover no-repeat;}
.news-list-page{padding-top:22px;}
.news-date-group{margin:0 0 30px;}
.news-date-header{background:linear-gradient(90deg,#5b070b,#8f1017 55%,#5b070b);border:1px solid rgba(212,166,69,.42);border-radius:18px;padding:16px 22px;margin-bottom:16px;box-shadow:0 14px 34px rgba(0,0,0,.42);}
.news-date-header span{display:block;color:#fff!important;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:17px;}
.news-list-stack{display:grid;gap:16px;}
.news-list-card{display:grid;grid-template-columns:280px 1fr;gap:20px;align-items:stretch;text-decoration:none;background:linear-gradient(135deg,rgba(0,70,38,.38),rgba(5,8,6,.98) 45%,rgba(100,8,13,.34));border:1px solid rgba(255,255,255,.12);border-radius:22px;overflow:hidden;box-shadow:0 18px 44px rgba(0,0,0,.48);transition:.22s;}
.news-list-card:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 22px 58px rgba(0,0,0,.62);}
.news-list-image{min-height:190px;background:#080808;overflow:hidden;}
.news-list-image img{width:100%;height:100%;object-fit:cover;display:block;transition:.25s;}
.news-list-card:hover .news-list-image img{transform:scale(1.06);filter:saturate(1.16) brightness(.9);}
.news-list-content{padding:22px 24px;display:flex;flex-direction:column;justify-content:center;}
.news-list-content small{color:var(--gold)!important;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;}
.news-list-content h2{margin:0 0 10px;color:#fff!important;font-size:28px;line-height:1.05;text-transform:uppercase;}
.news-list-content p{margin:0 0 16px;color:#e8f0eb!important;line-height:1.5;font-size:16px;}
.news-list-content span{align-self:flex-start;background:var(--burg2);border:1px solid rgba(212,166,69,.35);border-radius:999px;padding:9px 14px;color:#fff!important;font-size:12px;font-weight:1000;text-transform:uppercase;}
.news-detail-card{background:linear-gradient(135deg,rgba(0,70,38,.42),rgba(5,8,6,.98) 48%,rgba(100,8,13,.38));border:1px solid rgba(212,166,69,.36);border-radius:26px;overflow:hidden;box-shadow:0 24px 70px rgba(0,0,0,.62);}
.news-detail-image img{width:100%;max-height:560px;object-fit:cover;display:block;}
.news-detail-body{padding:30px;}
.news-detail-body h1{font-size:clamp(34px,4vw,62px);line-height:.95;margin:14px 0 20px;text-transform:uppercase;color:#fff!important;}
.news-date-pill{display:inline-flex;background:linear-gradient(90deg,#6d080d,#9b1118);border:1px solid rgba(212,166,69,.42);border-radius:999px;padding:10px 16px;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.09em;color:#fff!important;}
.news-content{font-size:18px;line-height:1.75;color:#fff!important;margin-bottom:24px;}
@media(max-width:760px){.news-list-card{grid-template-columns:1fr}.news-list-image{height:220px}.news-list-content h2{font-size:22px}.news-detail-body{padding:22px}.news-date-header{border-radius:14px}}


/* === v25: dettaglio news con immagine intera e pulsante torna su === */
.news-detail-page{max-width:1180px;margin:0 auto;padding:34px 18px 70px;}
.news-detail-card{overflow:visible;}
.news-detail-image{width:100%;height:520px;background:linear-gradient(90deg,rgba(0,80,44,.78),rgba(8,8,8,.95) 50%,rgba(105,8,14,.78));display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(212,166,69,.28);border-radius:26px 26px 0 0;overflow:hidden;}
.news-detail-image img{width:100%;height:100%;max-height:none!important;object-fit:contain!important;object-position:center;display:block;padding:18px;background:transparent;}
.news-detail-body .btn.alt{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;background:linear-gradient(90deg,#0d8d4c,#5b0a0a);border:1px solid rgba(212,166,69,.45);border-radius:999px;padding:12px 18px;text-decoration:none;font-weight:1000;text-transform:uppercase;letter-spacing:.04em;color:#fff!important;}
.news-detail-body .btn.alt:hover{filter:brightness(1.08);transform:translateY(-1px);}
.scroll-top-btn{position:fixed;right:24px;bottom:24px;width:54px;height:54px;border-radius:50%;border:1px solid rgba(212,166,69,.65);background:linear-gradient(135deg,#0d8d4c,#5b0a0a);color:#fff!important;font-size:30px;font-weight:1000;line-height:1;cursor:pointer;z-index:9999;box-shadow:0 18px 45px rgba(0,0,0,.55);opacity:0;visibility:hidden;transform:translateY(14px);transition:.22s;}
.scroll-top-btn.show{opacity:1;visibility:visible;transform:translateY(0);}
.scroll-top-btn:hover{filter:brightness(1.12);transform:translateY(-3px);}
@media(max-width:760px){.news-detail-page{padding:22px 12px 58px}.news-detail-image{height:330px}.news-detail-image img{padding:10px}.scroll-top-btn{right:16px;bottom:16px;width:48px;height:48px;font-size:26px}}

/* v26: homepage news 5, footer semplice, titoli news più piccoli */
.footer.footer-simple{display:block;text-align:center;padding:18px 5%;font-weight:800;letter-spacing:.02em;background:#030604;border-top:1px solid rgba(212,166,69,.28)}
.featured-news{grid-template-columns:1.18fr 1fr 1fr;align-items:stretch}
.feature-card{min-height:260px}
.feature-card:first-child{min-height:534px}
.news-list-content h2{font-size:clamp(20px,2.2vw,32px)!important;line-height:1.08!important;margin:8px 0!important;text-transform:none!important}
.news-detail-body h1{font-size:clamp(24px,3vw,42px)!important;line-height:1.08!important;text-transform:none!important}
.news-content{font-size:18px;line-height:1.7;color:#fff!important}
.news-content *{max-width:100%}
.news-content a{color:var(--green)!important;font-weight:900}
@media(max-width:1050px){.feature-card:first-child{min-height:320px}.featured-news{grid-template-columns:1fr}}

/* v27 - titoli news uniformi e leggibili */
.feature-card h3,
.feature-card:not(:first-child) h3{
  font-size:20px!important;
  line-height:1.16!important;
}
.news-list-content h2{
  font-size:24px!important;
  line-height:1.18!important;
  text-transform:none!important;
}
.news-detail-body h1{
  font-size:30px!important;
  line-height:1.18!important;
  text-transform:none!important;
  margin:12px 0 18px!important;
}
.news-content{
  font-size:18px!important;
  line-height:1.75!important;
}
.news-content *{
  max-width:100%;
}
.news-content h2{font-size:24px!important;line-height:1.2!important;margin:18px 0 10px!important;}
.news-content h3{font-size:21px!important;line-height:1.25!important;margin:16px 0 8px!important;}
.news-content blockquote{border-left:4px solid var(--gold);padding:10px 16px;margin:16px 0;background:rgba(255,255,255,.06);border-radius:10px;}

/* v28 - prossima gara formazione */
.lineup-public-wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;margin-top:24px}
.lineup-card-public h2,.lineup-card-public h3{color:#fff}.lineup-card-public h3{font-size:1.05rem;margin:20px 0 10px;color:#d8b15a;text-transform:uppercase;letter-spacing:.06em}
.lineup-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lineup-list li{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:linear-gradient(90deg,rgba(13,141,76,.16),rgba(91,10,10,.12));color:#fff}
.lineup-list li small{color:#d8b15a;font-size:.82rem}.lineup-num{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#0d8d4c;color:#fff;font-weight:900;box-shadow:0 0 0 2px rgba(216,177,90,.35)}
.lineup-bench li{background:rgba(255,255,255,.04)}.lineup-bench .lineup-num{background:#5b0a0a}.staff-list-public p,.staff-list-public li{color:#fff}.staff-list-public ol{padding-left:22px;line-height:1.8}
@media(max-width:900px){.lineup-public-wrap{grid-template-columns:1fr}.lineup-list li{grid-template-columns:40px 1fr}.lineup-list li small{grid-column:2}}


/* v29 - immagini shop intere, recensioni e mappa campi */
.shop-card-page .shop-image-box,.shop-card-pro,.product-main-image{background:linear-gradient(145deg,#111,#1d1d1d);border-radius:16px;overflow:hidden}
.shop-card-page .shop-image-box{display:flex;align-items:center;justify-content:center;height:260px;padding:18px;border:1px solid rgba(255,255,255,.1);margin-bottom:14px}
.shop-card-page .shop-image-box img,.shop-showcase .shop-card-pro img{width:100%;height:100%;object-fit:contain!important;background:transparent!important}
.shop-card-page{display:flex;flex-direction:column}
.shop-grid-full{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.product-main-image{height:520px;display:flex;align-items:center;justify-content:center;padding:22px}
.product-main-image img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain!important}
.product-detail-grid{grid-template-columns:minmax(320px,1.2fr) minmax(300px,.8fr)}
.product-reviews{margin-top:24px}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.review-public{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:18px}.review-stars,.stars-admin{color:#d8b15a;letter-spacing:2px}.review-public img{width:100%;height:220px;object-fit:contain;border-radius:14px;background:#111;margin-top:12px}.review-account-list{display:grid;gap:18px}.review-account-card{display:grid;grid-template-columns:120px 1fr;gap:18px;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px;background:rgba(255,255,255,.04)}.review-account-card>img{width:120px;height:120px;object-fit:contain;background:#111;border-radius:14px}.review-form{display:grid;gap:10px;margin-top:12px}.badge-review{display:inline-block;background:#5b0a0a;color:#fff;border:1px solid #d8b15a;border-radius:999px;padding:6px 12px}.thumb{width:70px;height:70px;object-fit:contain;border-radius:10px;background:#111}.map-help{background:rgba(17,132,74,.14);border:1px solid rgba(17,132,74,.35);color:#fff;border-radius:14px;padding:16px 20px;font-weight:800;margin-bottom:18px}.home-map-panel{margin-top:18px}.map-note{color:#e8e8e8;margin-top:-5px}.fields-map-wrap{display:grid;grid-template-columns:1fr 360px;gap:20px;min-height:430px}.fields-map-page{min-height:620px}.fields-map{min-height:430px;border-radius:18px;border:1px solid rgba(216,177,90,.4);overflow:hidden;background:#111}.fields-map-page .fields-map{min-height:620px}.fields-list{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:16px;overflow:auto;max-height:620px}.fields-list h2{margin-top:0}.fields-list article{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.1);cursor:pointer}.fields-list article:hover h3{color:#18b66a}.fields-list img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:12px;padding:4px}.fields-list h3{font-size:17px;margin:0 0 4px}.fields-list p{font-size:13px;margin:0 0 7px;color:#ddd}.fields-list a{color:#d8b15a;font-weight:800}.team-map-marker{background:#fff;border:3px solid #053f28;border-radius:14px;box-shadow:0 8px 20px rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center}.team-map-marker img{width:40px;height:40px;object-fit:contain;border-radius:10px}.map-popup{color:#111}.map-popup b{color:#0b3d2a;font-size:15px}.map-popup p{color:#333;margin:6px 0}.map-popup a{color:#5b0a0a;font-weight:800}.leaflet-popup-content-wrapper{border-radius:14px}.leaflet-container a{color:#5b0a0a}
@media(max-width:900px){.fields-map-wrap{grid-template-columns:1fr}.fields-list{max-height:none}.product-detail-grid{grid-template-columns:1fr}.product-main-image{height:360px}.review-account-card{grid-template-columns:1fr}.review-account-card>img{width:100%;height:180px}}

/* v30 - popup mappa leggibili e loghi affiancati per stesso campo */
.leaflet-popup-content, .leaflet-popup-content *{color:#111 !important;}
.leaflet-popup-content a, .map-popup a{color:#0b63d1 !important;font-weight:900;text-decoration:none;}
.leaflet-popup-content a:hover, .map-popup a:hover{text-decoration:underline;}
.map-popup b{display:block;color:#0b3d2a !important;font-size:16px;margin-bottom:8px;}
.map-popup .popup-team{border-top:1px solid #ddd;padding-top:8px;margin-top:8px;}
.map-popup .popup-team:first-of-type{border-top:0;padding-top:0;margin-top:0;}
.map-popup .popup-team strong{display:block;color:#111 !important;font-size:14px;}
.map-popup .popup-team p{color:#333 !important;margin:4px 0 6px;line-height:1.35;}
.multi-team-marker{width:auto !important;height:auto !important;background:transparent !important;border:0 !important;box-shadow:none !important;}
.multi-team-marker .marker-logos{display:flex;align-items:center;justify-content:center;gap:6px;background:#fff;border:3px solid #053f28;border-radius:14px;padding:4px 6px;box-shadow:0 8px 20px rgba(0,0,0,.45);}
.multi-team-marker .marker-logos img,.multi-team-marker .marker-logos span{width:40px;height:40px;object-fit:contain;border-radius:10px;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#111 !important;font-weight:900;}

/* v31 - controlli mappa neri, rotella attiva e omino Street View */
.leaflet-control-zoom a,
.leaflet-control-layers-toggle,
.leaflet-control-attribution a{
  color:#000 !important;
}
.leaflet-control-zoom a{
  background:#fff !important;
  border-bottom:1px solid #ddd !important;
  font-weight:900 !important;
}
.leaflet-control-zoom a:hover{
  background:#f0f0f0 !important;
  color:#000 !important;
}
.leaflet-control-streetview{
  width:34px;
  height:34px;
  line-height:34px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  background:#fff !important;
  color:#000 !important;
  border:2px solid rgba(0,0,0,.25);
  border-radius:4px;
  box-shadow:0 1px 5px rgba(0,0,0,.35);
  font-size:20px;
  text-decoration:none !important;
  cursor:pointer;
}
.leaflet-control-streetview:hover{background:#f2f2f2 !important;color:#000 !important;}
.map-popup .street-link{color:#0b63d1 !important;}


/* Sponsor homepage: loghi grandi con scorrimento infinito verso sinistra */
.sponsors-logo-slider{overflow:hidden;padding:22px 0 26px}.sponsors-logo-slider .panel-head{padding:0 18px 12px;margin-bottom:14px}.sponsors-logo-slider .sponsor-marquee{position:relative;overflow:hidden;width:100%;display:block;mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%)}.sponsors-logo-slider .sponsor-track{display:flex;align-items:center;gap:58px;width:max-content;animation:svSponsorScroll 28s linear infinite;padding:10px 58px 12px}.sponsors-logo-slider .sponsor-marquee:hover .sponsor-track{animation-play-state:paused}.sponsors-logo-slider .sponsor-logo-item{display:flex;align-items:center;justify-content:center;min-width:190px;height:112px;padding:14px 24px;border-radius:22px;background:rgba(255,255,255,.96);border:1px solid rgba(212,166,69,.35);box-shadow:0 16px 38px rgba(0,0,0,.36);transition:.2s;text-decoration:none}.sponsors-logo-slider .sponsor-logo-item:hover{transform:scale(1.06);box-shadow:0 20px 48px rgba(0,0,0,.5);border-color:var(--gold)}.sponsors-logo-slider .sponsor-logo-item img{width:auto;max-width:170px;height:82px;object-fit:contain;display:block}.sponsors-logo-slider .sponsor-logo-item:empty{display:none}@keyframes svSponsorScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}@media(max-width:650px){.sponsors-logo-slider .sponsor-track{gap:34px;animation-duration:22s}.sponsors-logo-slider .sponsor-logo-item{min-width:150px;height:88px;padding:10px 16px;border-radius:18px}.sponsors-logo-slider .sponsor-logo-item img{max-width:130px;height:62px}}
.matchday-block{margin-bottom:28px;background:rgba(18,18,18,.92);border:1px solid rgba(255,255,255,.08);border-radius:22px;overflow:hidden}.matchday-title{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#6b1118;color:#fff;padding:14px 20px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.matchday-title small{font-weight:600;color:#ffd66b}.matchday-list{padding:14px}.fixture-row{display:grid;grid-template-columns:1fr 220px 1fr;align-items:center;gap:14px;padding:14px;border-bottom:1px solid rgba(255,255,255,.08)}.fixture-row:last-child{border-bottom:0}.fixture-team{display:flex;align-items:center;gap:10px;font-weight:800;color:#fff}.fixture-team.away{justify-content:flex-end;text-align:right}.fixture-team img{width:42px;height:42px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}.fixture-center{text-align:center}.fixture-date{font-size:.88rem;color:#e0e0e0}.fixture-score{font-size:1.3rem;font-weight:900;color:#ffd66b}.fixture-place{font-size:.86rem;color:#cfcfcf}@media(max-width:800px){.fixture-row{grid-template-columns:1fr}.fixture-team,.fixture-team.away{justify-content:center;text-align:center}.fixture-center{order:-1}}

/* v38 - loghi prossima partita sempre leggibili */
.next-match-pro .match-team img{
  background:#fff !important;
  border:1px solid rgba(212,166,69,.55) !important;
  border-radius:18px !important;
  padding:10px !important;
  box-shadow:0 12px 30px rgba(0,0,0,.38) !important;
  object-fit:contain !important;
}
.next-match-pro .match-team strong{color:#fff !important;}

/* Sponsor slider fix: mostra ogni sponsor una sola volta */
.sponsors-logo-slider .sponsor-marquee.is-static{
  overflow:visible;
  mask-image:none;
  -webkit-mask-image:none;
}
.sponsors-logo-slider .sponsor-marquee.is-static .sponsor-track{
  width:100%;
  justify-content:center;
  flex-wrap:wrap;
  animation:none !important;
}
.sponsors-logo-slider .sponsor-marquee.is-scrolling .sponsor-track{
  animation:svSponsorScrollSingle 32s linear infinite;
}
@keyframes svSponsorScrollSingle{
  from{transform:translateX(100%)}
  to{transform:translateX(-100%)}
}


/* v42 - sponsor a catena continua e pagina sponsor */
.sponsors-logo-slider .sponsor-marquee.is-chain{position:relative;overflow:hidden;width:100%;display:block;mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-track{display:flex;width:max-content;animation:svSponsorChain 24s linear infinite;padding:10px 0 14px;gap:0;will-change:transform}
.sponsors-logo-slider .sponsor-marquee.is-chain:hover .sponsor-track{animation-play-state:paused}
.sponsors-logo-slider .sponsor-chain{display:flex;align-items:center;gap:58px;padding-right:58px;flex:0 0 auto}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item{display:flex;align-items:center;justify-content:center;min-width:190px;height:112px;padding:14px 24px;border-radius:22px;background:rgba(255,255,255,.96);border:1px solid rgba(212,166,69,.35);box-shadow:0 16px 38px rgba(0,0,0,.36);transition:.2s;text-decoration:none}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item:hover{transform:scale(1.06);box-shadow:0 20px 48px rgba(0,0,0,.5);border-color:var(--gold)}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item img{width:auto;max-width:170px;height:82px;object-fit:contain;display:block}
@keyframes svSponsorChain{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.sponsor-page-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);gap:22px;align-items:start}.compact-hero{padding:38px;margin-bottom:22px}.sponsor-list{display:grid;gap:14px}.sponsor-list-item{display:flex;gap:18px;align-items:center;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:16px}.sponsor-list-logo{width:190px;min-width:190px;height:112px;background:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:14px;border:1px solid rgba(212,166,69,.35)}.sponsor-list-logo img{max-width:100%;max-height:82px;object-fit:contain}.sponsor-list-info h3{margin:0 0 7px;color:#fff;font-size:24px}.sponsor-list-info p{color:#fff;margin:0 0 8px;line-height:1.45}.sponsor-list-info a{color:#2f8dff!important;font-weight:900;text-decoration:none}.sponsor-list-info a:hover{text-decoration:underline}.sponsor-form-panel p{color:#fff}.public-form label{display:block;color:#fff;font-weight:900;margin:12px 0 6px}.public-form input,.public-form textarea{width:100%;box-sizing:border-box;background:#050806!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:14px;color:#fff!important;padding:12px 14px;font:inherit}.public-form textarea{resize:vertical}.public-form input:focus,.public-form textarea:focus{outline:none;border-color:var(--gold)!important;box-shadow:0 0 0 3px rgba(212,166,69,.16)}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.three-cols{display:grid;grid-template-columns:1fr .65fr .75fr;gap:12px}.public-alert{border-radius:16px;padding:13px 15px;margin:14px 0;font-weight:900}.public-alert.success{background:rgba(0,132,70,.22);border:1px solid rgba(0,200,105,.45);color:#fff}.public-alert.error{background:rgba(140,0,0,.24);border:1px solid rgba(255,80,80,.45);color:#fff}
@media(max-width:980px){.sponsor-page-layout{grid-template-columns:1fr}.sponsor-list-item{align-items:flex-start}.sponsor-list-logo{width:150px;min-width:150px;height:92px}.two-cols,.three-cols{grid-template-columns:1fr}}
@media(max-width:650px){.sponsor-list-item{display:block}.sponsor-list-logo{width:100%;min-width:0;margin-bottom:12px}.sponsors-logo-slider .sponsor-chain{gap:34px;padding-right:34px}.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item{min-width:150px;height:88px;padding:10px 16px;border-radius:18px}.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item img{max-width:130px;height:62px}}

/* v43 contatti */
.contact-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:22px;align-items:start}
.contact-info-list p{padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.04);margin:0 0 12px}
.contact-info-list a{color:#4aa3ff!important}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr}}

/* v44 live partita */
.live-status{position:relative;display:flex;align-items:center;justify-content:center;gap:14px;animation:svLiveGlow 1.15s ease-in-out infinite alternate;}
.live-dot{width:16px;height:16px;border-radius:50%;background:#ff2626;box-shadow:0 0 0 0 rgba(255,38,38,.78),0 0 22px rgba(255,38,38,.95);animation:svLivePulse 1.05s infinite;}
.countdown.match-live{border-color:#ff2626!important;box-shadow:0 0 22px rgba(255,38,38,.30), inset 0 0 26px rgba(13,141,76,.22);}
@keyframes svLiveGlow{from{text-shadow:0 0 12px rgba(255,38,38,.55),0 0 20px rgba(13,141,76,.45)}to{text-shadow:0 0 22px rgba(255,38,38,.95),0 0 35px rgba(216,177,90,.65)}}
@keyframes svLivePulse{0%{transform:scale(.92);box-shadow:0 0 0 0 rgba(255,38,38,.8),0 0 15px rgba(255,38,38,.75)}70%{transform:scale(1.12);box-shadow:0 0 0 12px rgba(255,38,38,0),0 0 28px rgba(255,38,38,1)}100%{transform:scale(.92);box-shadow:0 0 0 0 rgba(255,38,38,0),0 0 15px rgba(255,38,38,.75)}}

/* v45 - risultato live in homepage */
.match-center.is-live-score{min-width:260px}
.live-score-home{font-family:Georgia,serif;color:#fff!important;font-size:62px!important;font-weight:1000;line-height:1;display:block;text-shadow:0 0 18px rgba(0,180,90,.55),0 0 28px rgba(155,17,24,.45)}
.match-center.is-live-score em{display:inline-flex;align-items:center;gap:8px;margin:8px 0 10px;padding:7px 14px;border-radius:999px;background:rgba(255,0,0,.2);border:1px solid rgba(255,70,70,.55);color:#ff5757!important;font-style:normal;font-size:13px;font-weight:1000;letter-spacing:.18em;animation:svLivePulse 1.15s infinite;text-shadow:0 0 12px rgba(255,0,0,.7)}
.match-center.is-live-score em:before{content:'';width:8px;height:8px;border-radius:50%;background:#ff2b2b;box-shadow:0 0 15px #ff2b2b}
.live-match-note{margin-top:18px;text-align:center;color:#fff!important;font-size:14px;font-weight:800;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:12px 15px}
.live-match-note strong{color:var(--gold)!important}
@keyframes svLivePulse{0%,100%{box-shadow:0 0 0 rgba(255,0,0,0);transform:scale(1)}50%{box-shadow:0 0 24px rgba(255,0,0,.45);transform:scale(1.04)}}
@media(max-width:650px){.live-score-home{font-size:48px!important}.match-center.is-live-score{min-width:auto}}

/* v47 - sidebar homepage: giornata in tempo reale */
.live-day-pro{overflow:hidden}
.live-day-title{margin:0 0 12px;padding:10px 13px;border-radius:14px;background:linear-gradient(90deg,#6b1118,#0b6a3f);font-weight:1000;text-transform:uppercase;letter-spacing:.04em;color:#fff!important;text-align:center}
.live-day-list{display:grid;gap:10px}
.live-day-match{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:18px;padding:12px;display:grid;grid-template-columns:1fr 86px 1fr;align-items:center;gap:8px}
.live-day-match.is-sporting{border-color:rgba(216,177,90,.55);box-shadow:0 0 24px rgba(216,177,90,.09)}
.ld-team{display:flex;align-items:center;gap:8px;min-width:0;font-weight:900;color:#fff!important;font-size:13px;line-height:1.15}
.ld-team.away{justify-content:flex-end;text-align:right}
.ld-team span{display:block;overflow:hidden;text-overflow:ellipsis;color:#fff!important}
.ld-team img{width:38px;height:38px;min-width:38px;object-fit:contain;background:#fff;border:1px solid rgba(216,177,90,.55);border-radius:12px;padding:5px;box-shadow:0 8px 18px rgba(0,0,0,.28)}
.ld-score{text-align:center;display:grid;gap:2px;justify-items:center}
.ld-score b{color:#ffd66b!important;font-size:20px;line-height:1;font-weight:1000}
.ld-score small{color:rgba(255,255,255,.8)!important;font-size:10px;font-weight:800;line-height:1.2}
.ld-score em{color:#ff4f4f!important;border:1px solid rgba(255,70,70,.55);background:rgba(255,0,0,.16);border-radius:999px;padding:3px 7px;font-size:9px;line-height:1;font-style:normal;font-weight:1000;letter-spacing:.12em;animation:svLiveGlow 1s infinite alternate}
@media(max-width:980px){.live-day-match{grid-template-columns:1fr 78px 1fr}.ld-team{font-size:12px}.ld-team img{width:34px;height:34px;min-width:34px}.ld-score b{font-size:18px}}
@media(max-width:650px){.live-day-match{grid-template-columns:1fr}.ld-team,.ld-team.away{justify-content:center;text-align:center}.ld-score{order:-1;margin-bottom:4px}}

/* v48 - Prima Squadra lista per reparti */
.squad-list-page{max-width:1150px;margin:0 auto;}
.squad-section{margin:0 0 34px;}
.squad-section-title{display:flex;align-items:center;gap:14px;margin:0 0 14px;background:linear-gradient(90deg,#5b0a0a,rgba(91,10,10,.15));border:1px solid rgba(216,177,90,.35);border-radius:16px;padding:13px 18px;}
.squad-section-title span{width:10px;height:36px;border-radius:999px;background:linear-gradient(180deg,#0d8d4c,#d8b15a);box-shadow:0 0 18px rgba(13,141,76,.5)}
.squad-section-title h2{margin:0;color:#fff!important;text-transform:uppercase;letter-spacing:.06em;font-size:clamp(20px,2.2vw,28px)}
.squad-list{display:grid;gap:10px;}
.squad-list-row{display:grid;grid-template-columns:58px 62px 1fr;gap:16px;align-items:center;background:linear-gradient(90deg,rgba(13,141,76,.16),rgba(255,255,255,.045));border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:12px 16px;box-shadow:0 14px 32px rgba(0,0,0,.28);}
.squad-list-row:hover{border-color:rgba(216,177,90,.55);transform:translateY(-1px)}
.squad-number{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:#fff;color:#111!important;font-weight:1000;font-size:17px;border:2px solid rgba(216,177,90,.75)}
.squad-photo{width:52px;height:52px;border-radius:16px;overflow:hidden;background:#fff;display:grid;place-items:center;padding:4px;}
.squad-photo img{width:100%;height:100%;object-fit:cover;border-radius:12px;}
.squad-photo span{color:#5b0a0a!important;font-weight:1000;}
.squad-info h3{margin:0 0 4px;color:#fff!important;font-size:19px;line-height:1.1;text-transform:none;}
.squad-info p{margin:0 0 4px;color:#d8b15a!important;font-weight:900;}
.squad-info small{color:#f1f1f1!important;line-height:1.45;display:block;}
.staff-section-public .squad-list-row{background:linear-gradient(90deg,rgba(91,10,10,.22),rgba(13,141,76,.09));}
.staff-section-public .squad-number{font-size:14px;background:#d8b15a;color:#111!important;}
.empty-state{text-align:center;padding:26px;}
@media(max-width:700px){.squad-list-row{grid-template-columns:44px 48px 1fr;gap:8px;padding:9px}.squad-number{width:36px;height:36px;font-size:14px}.squad-photo{width:44px;height:44px}.squad-info h3{font-size:16px}.squad-info p{font-size:12px}}

/* Sold out ecommerce */
.shop-image-box,.product-main-image,.shop-card-pro{position:relative}
.soldout-badge{position:absolute;top:12px;right:12px;z-index:5;background:#b00020;color:#fff!important;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:9px 14px;font-weight:1000;font-size:12px;letter-spacing:.08em;box-shadow:0 8px 22px rgba(0,0,0,.45);text-transform:uppercase}
.is-soldout img{filter:grayscale(.2) brightness(.72)}
.btn.disabled,button.disabled{display:inline-flex;align-items:center;justify-content:center;opacity:.65;cursor:not-allowed;background:#333!important;color:#fff!important;border-color:#555!important;pointer-events:none}
.shop-card-page.is-soldout{opacity:.88}
.shop-card-page.is-soldout .price{color:#ccc!important}
.shop-card-pro.is-soldout{pointer-events:auto;opacity:.9}
.shop-card-pro.is-soldout span{background:#333!important;color:#fff!important}

/* Fidelity Club */
.fidelity-hero{max-width:1320px;margin:28px auto;padding:42px;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;border:1px solid rgba(212,175,55,.35);border-radius:26px;background:radial-gradient(circle at left,rgba(0,130,70,.35),transparent 34%),radial-gradient(circle at right,rgba(91,10,10,.55),transparent 42%),#090909;box-shadow:0 25px 70px rgba(0,0,0,.45);overflow:hidden}.fidelity-hero h1{font-size:clamp(38px,6vw,82px);line-height:.95;margin:10px 0;color:#fff;text-transform:uppercase}.fidelity-hero p{color:#fff;max-width:720px;font-size:18px}.fidelity-card-preview{min-height:330px;border-radius:28px;padding:34px;background:linear-gradient(135deg,#160606,#050505 45%,#08351f);border:2px solid #d4af37;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.fidelity-card-preview:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 45%,rgba(212,175,55,.35) 48%,rgba(0,130,70,.35) 54%,transparent 60%);opacity:.8}.fidelity-card-preview>*{position:relative}.fidelity-card-preview img{width:145px;align-self:flex-end}.fidelity-card-preview b{display:block;font-size:44px;color:#d4af37;text-transform:uppercase}.fidelity-card-preview span,.fidelity-card-preview p{color:#fff}.fidelity-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.benefit-card,.plan-card,.convenzione-card{background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:22px;color:#fff}.benefit-card{font-size:34px}.benefit-card h3,.plan-card h3,.convenzione-card h3{color:#fff;margin:10px 0}.fidelity-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:22px}.plan-card{border-color:rgba(212,175,55,.32)}.plan-card .price{font-size:36px;font-weight:900;color:#d4af37;margin:12px 0}.plan-card ul{padding-left:20px;color:#fff}.convenzioni-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.convenzione-card img{height:72px;max-width:150px;object-fit:contain;background:#fff;border-radius:12px;padding:8px}.convenzione-card b{display:inline-block;color:#d4af37;margin:8px 0}.fidelity-account-list{display:grid;gap:12px}.fidelity-account-card{display:flex;justify-content:space-between;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;background:rgba(255,255,255,.05)}.digital-card{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:22px}.digital-card-front,.digital-card-back{min-height:310px;border:2px solid #d4af37;border-radius:28px;padding:30px;background:linear-gradient(135deg,#260808,#050505 45%,#07341f);color:#fff;position:relative;overflow:hidden}.digital-card-front{display:flex;justify-content:space-between;align-items:center}.digital-card-front h1{font-size:42px;color:#d4af37;text-transform:uppercase}.digital-card-front h2{font-size:28px;color:#fff}.digital-card-front span{display:inline-block;background:#fff;color:#111;border-radius:12px;padding:10px 18px;margin:12px 0}.digital-card-front img{width:190px}.digital-card-back .qr{background:#fff;padding:10px;border-radius:12px;width:180px}.tessera-actions{max-width:1040px;margin:0 auto 18px;display:flex;gap:10px;justify-content:flex-end}@media print{header,.site-header,.tessera-actions,footer,.scroll-top{display:none!important}body{background:#fff!important}.digital-card{grid-template-columns:1fr;gap:18px}.digital-card-front,.digital-card-back{break-inside:avoid}}@media(max-width:900px){.fidelity-hero,.digital-card{grid-template-columns:1fr}.fidelity-benefits,.fidelity-plans,.convenzioni-grid{grid-template-columns:1fr}}

/* v55 Tessera Socio/Sostenitore */
.socio-hero{background:radial-gradient(circle at 20% 20%,rgba(120,15,15,.55),transparent 30%),radial-gradient(circle at 82% 28%,rgba(0,130,70,.42),transparent 34%),linear-gradient(135deg,#120404 0%,#050505 48%,#092617 100%)}
.socio-card-preview{min-height:360px;border-radius:30px;padding:34px;background:linear-gradient(135deg,#240808 0%,#070707 42%,#052a18 100%);border:2px solid #d4af37;box-shadow:0 24px 70px rgba(0,0,0,.5),inset 0 0 0 1px rgba(255,255,255,.12);position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:24px}
.socio-card-preview:before,.digital-card-socio .digital-card-front:before,.digital-card-socio .digital-card-back:before{content:"";position:absolute;inset:-20%;background:linear-gradient(115deg,transparent 42%,rgba(212,175,55,.7) 46%,rgba(9,115,63,.55) 52%,rgba(91,10,10,.65) 59%,transparent 64%);transform:rotate(-5deg);opacity:.8}.socio-card-preview:after,.digital-card-socio .digital-card-front:after,.digital-card-socio .digital-card-back:after{content:"🐉";position:absolute;right:34%;top:16%;font-size:210px;line-height:1;color:rgba(120,20,20,.23);filter:grayscale(1);z-index:0}.socio-card-preview>*{position:relative;z-index:1}.socio-card-left span,.dc-gold{display:block;color:#d4af37!important;font-weight:1000;letter-spacing:.06em;font-size:clamp(34px,4.2vw,62px);line-height:.9}.socio-card-left strong,.digital-card-socio .digital-card-front h1{display:block;color:#fff!important;font-weight:1000;font-size:clamp(42px,5.5vw,82px);line-height:.9;text-transform:uppercase}.socio-card-left em{display:block;color:#d4af37;font-style:normal;letter-spacing:.18em;text-transform:uppercase;margin:16px 0 28px}.socio-card-left h2{color:#fff!important;font-size:28px;text-transform:uppercase;margin:0 0 10px}.socio-card-left p,.season{display:inline-block;background:linear-gradient(90deg,#d4af37,#f2d477);color:#111!important;border-radius:4px;padding:8px 18px;text-transform:uppercase;font-weight:1000;margin:0 0 20px}.socio-card-preview img{width:220px;max-height:270px;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(0,0,0,.65))}.card-field,.dc-field{background:#fff;color:#111!important;border-radius:14px;padding:10px 18px;margin:12px 0;min-width:250px;box-shadow:inset 0 2px 9px rgba(0,0,0,.16)}.card-field small,.dc-field small{display:block;color:#9a6b14!important;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.card-field b,.dc-field strong{color:#111!important;font-size:20px}.card-field.wide,.dc-field.wide{min-width:360px}.digital-card-socio{max-width:1180px}.digital-card-socio .digital-card-front,.digital-card-socio .digital-card-back{min-height:430px;background:linear-gradient(135deg,#260808 0%,#070707 45%,#052d1a 100%);box-shadow:0 22px 55px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.12)}.digital-card-socio .digital-card-front>* , .digital-card-socio .digital-card-back>*{position:relative;z-index:1}.digital-card-socio .digital-card-front{gap:20px}.digital-card-socio .digital-card-front img{width:220px;max-height:290px;object-fit:contain;filter:drop-shadow(0 18px 26px rgba(0,0,0,.65))}.digital-card-socio .digital-card-front h2,.digital-card-socio .digital-card-back h2{font-size:26px;text-transform:uppercase;color:#fff!important}.digital-card-socio .digital-card-front p,.digital-card-socio .digital-card-back p{color:#fff!important}.digital-card-socio .digital-card-back{display:grid;grid-template-columns:1fr auto;align-items:center;gap:26px}.qr-box{background:rgba(0,0,0,.36);border:1px solid rgba(212,175,55,.5);border-radius:22px;padding:20px;text-align:center}.qr-box small{display:block;margin-top:12px;color:#fff!important}.digital-card-socio .qr{background:#fff;padding:10px;border-radius:12px;width:180px}@media(max-width:900px){.socio-card-preview{flex-direction:column;align-items:flex-start}.socio-card-preview img{align-self:center}.card-field,.card-field.wide,.dc-field,.dc-field.wide{min-width:0;width:100%}.digital-card-socio .digital-card-back{grid-template-columns:1fr}.digital-card-socio .digital-card-front{flex-direction:column;align-items:flex-start}.digital-card-socio .digital-card-front img{align-self:center}}

/* v56 - Tessera Socio/Sostenitore più elegante e ispirata alla card fisica */
.refined-socio-hero{
  max-width:1280px;
  grid-template-columns:.78fr 1.22fr;
  padding:34px;
  gap:34px;
  min-height:0;
}
.refined-socio-hero .fidelity-hero-copy h1{
  font-size:clamp(32px,4vw,58px)!important;
  line-height:1.02!important;
  letter-spacing:.5px;
  margin:12px 0 14px!important;
}
.refined-socio-hero .fidelity-hero-copy p{
  font-size:16px!important;
  line-height:1.45;
  max-width:560px;
}
.physical-style-card{
  aspect-ratio:1.586/1;
  min-height:0!important;
  height:auto;
  width:100%;
  border-radius:24px!important;
  padding:30px 34px!important;
  display:grid!important;
  grid-template-columns:1.15fr .85fr;
  align-items:center;
  border:2px solid rgba(216,177,90,.95)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.55), inset 0 0 0 1px rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 36% 28%,rgba(112,8,8,.55),transparent 34%),
    linear-gradient(115deg,rgba(15,3,3,.96) 0%,rgba(32,6,6,.95) 42%,rgba(4,35,20,.95) 72%,rgba(74,5,8,.92) 100%);
  overflow:hidden;
}
.physical-style-card:before{
  content:"";
  position:absolute;
  inset:-20%;
  background:
    linear-gradient(118deg,transparent 54%,rgba(216,177,90,.85) 55%,rgba(216,177,90,.72) 58%,rgba(0,145,75,.66) 60%,rgba(0,95,50,.70) 66%,rgba(90,8,8,.65) 74%,transparent 78%),
    repeating-linear-gradient(118deg,transparent 0 14px,rgba(255,255,255,.05) 15px 16px);
  opacity:.95;
  transform:rotate(-1deg);
}
.physical-style-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,.08) 42%,rgba(0,0,0,.15)), radial-gradient(circle at 80% 10%,rgba(255,255,255,.10),transparent 28%);
  pointer-events:none;
}
.physical-style-card>*{position:relative;z-index:2}
.card-dragon-mark{
  position:absolute!important;
  left:43%; top:10%;
  font-size:150px;
  opacity:.08;
  filter:grayscale(1);
  z-index:1!important;
  transform:rotate(-12deg);
}
.club-title span{display:block;color:#d8b15a;font-size:clamp(34px,4.2vw,62px);font-weight:1000;letter-spacing:3px;line-height:.9;text-transform:uppercase;text-shadow:0 2px 0 rgba(0,0,0,.4)}
.club-title strong{display:block;color:#fff;font-size:clamp(42px,5vw,76px);font-weight:1000;letter-spacing:2px;line-height:.96;text-transform:uppercase;text-shadow:0 3px 0 rgba(0,0,0,.45)}
.club-payoff{color:#d8b15a;text-transform:uppercase;letter-spacing:3px;font-weight:800;font-size:13px;margin:12px 0 22px}
.membership-title{color:#fff;text-transform:uppercase;font-weight:1000;font-size:clamp(18px,2vw,30px);letter-spacing:1px;margin-bottom:10px}
.season-pill{display:inline-block;background:linear-gradient(90deg,#f1c85b,#c7992d);color:#111!important;border-radius:6px;padding:9px 18px;font-weight:1000;text-transform:uppercase;letter-spacing:1px;margin-bottom:18px;box-shadow:0 8px 20px rgba(0,0,0,.28)}
.member-fields{display:grid;gap:10px;max-width:470px}.member-fields .card-field{background:#fff;border-radius:12px;padding:10px 18px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08),0 8px 18px rgba(0,0,0,.25)}
.member-fields .card-field small{display:block;color:#9b690a!important;text-transform:uppercase;font-weight:1000;letter-spacing:2px;font-size:11px}.member-fields .card-field b{display:block;color:#121212!important;font-size:18px;line-height:1.05;text-transform:none}
.physical-card-logo{justify-self:end;align-self:center;background:rgba(0,0,0,.08);border-radius:18px;padding:0}.physical-card-logo img{width:min(260px,28vw)!important;max-height:330px;object-fit:contain;filter:drop-shadow(0 16px 18px rgba(0,0,0,.45))}
.nfc-mark{position:absolute!important;left:34px;bottom:24px;color:#d8b15a;font-weight:1000;text-align:center}.nfc-mark span{display:block;font-size:24px;letter-spacing:-4px;transform:rotate(90deg)}.nfc-mark small{font-size:14px;letter-spacing:1px}
.forza-sign{position:absolute!important;right:42px;bottom:28px;color:#d8b15a;font-size:26px;font-weight:900;font-style:italic;transform:rotate(-6deg);font-family:cursive;text-shadow:0 2px 0 rgba(0,0,0,.4)}
@media(max-width:1050px){.refined-socio-hero{grid-template-columns:1fr}.physical-card-logo img{width:210px!important}.club-title span{font-size:42px}.club-title strong{font-size:54px}}
@media(max-width:650px){.refined-socio-hero{padding:18px}.physical-style-card{grid-template-columns:1fr;padding:22px!important;aspect-ratio:auto}.physical-card-logo{position:absolute!important;right:18px;top:22px;opacity:.28}.physical-card-logo img{width:160px!important}.forza-sign{display:none}.club-title span{font-size:31px}.club-title strong{font-size:39px}.membership-title{font-size:18px}.member-fields{max-width:none}.nfc-mark{display:none}}

/* v57 - Tessera Socio: usa la card reale e riduce i caratteri */
.clean-socio-hero{
  max-width:1320px;
  padding:28px;
  grid-template-columns:.72fr 1.28fr;
  gap:34px;
  align-items:center;
}
.clean-socio-hero .compact-copy h1{
  font-size:clamp(30px,3.8vw,56px)!important;
  line-height:1.02!important;
  letter-spacing:-1px;
  margin:10px 0 14px;
}
.clean-socio-hero .compact-copy p{
  font-size:15px!important;
  line-height:1.45;
  max-width:560px;
}
.clean-socio-hero .eyebrow{
  font-size:11px!important;
  letter-spacing:1px;
}
.socio-card-image-wrap{
  width:100%;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(212,175,55,.55);
  box-shadow:0 25px 70px rgba(0,0,0,.55);
  background:#050505;
}
.socio-card-image-wrap img{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}
.fidelity-benefits .benefit-card h3,
.fidelity-plans .plan-card h3,
.section-head h2{
  font-size:clamp(22px,2vw,32px)!important;
}
.benefit-card{font-size:24px!important;}
.benefit-card p,.plan-card p,.convenzione-card p,.fidelity-form label,.fidelity-form input,.fidelity-form select{
  font-size:14px!important;
}
@media(max-width:900px){
  .clean-socio-hero{grid-template-columns:1fr;padding:18px;}
}

/* v58 - Pagina Tessera Socio pulita: immagine reale visibile intera e caratteri ridotti */
.tessera-hero-v58{
  width:min(1180px,92%);
  margin:26px auto 34px;
  padding:26px;
  border:1px solid rgba(216,177,90,.55);
  border-radius:24px;
  background:
    radial-gradient(circle at 18% 12%,rgba(109,8,13,.42),transparent 32%),
    radial-gradient(circle at 88% 18%,rgba(0,120,64,.28),transparent 36%),
    linear-gradient(135deg,rgba(8,13,10,.98),rgba(26,4,6,.95));
  box-shadow:0 22px 60px rgba(0,0,0,.55);
  overflow:hidden;
}
.tessera-hero-text-v58{
  max-width:820px;
  margin:0 auto 20px;
  text-align:center;
}
.tessera-hero-text-v58 span{
  display:block;
  color:#d8b15a!important;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px!important;
  font-weight:900;
  margin-bottom:8px;
}
.tessera-hero-text-v58 h1{
  margin:0 0 10px!important;
  color:#fff!important;
  text-transform:uppercase;
  font-size:clamp(30px,3vw,46px)!important;
  line-height:1.05!important;
  letter-spacing:.02em;
}
.tessera-hero-text-v58 p{
  margin:0 auto 16px!important;
  color:#fff!important;
  max-width:720px;
  font-size:15px!important;
  line-height:1.45!important;
}
.tessera-image-v58{
  width:min(900px,100%);
  margin:0 auto;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(216,177,90,.75);
  background:#050505;
  box-shadow:0 18px 44px rgba(0,0,0,.55);
}
.tessera-image-v58 img{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  object-fit:contain!important;
}
.fidelity-benefits{width:min(1180px,92%);margin:0 auto;}
.fidelity-benefits .benefit-card{padding:18px!important;font-size:22px!important;}
.fidelity-benefits .benefit-card h3{font-size:20px!important;margin:8px 0!important;}
.fidelity-benefits .benefit-card p{font-size:14px!important;line-height:1.4!important;}
@media(max-width:700px){
  .tessera-hero-v58{padding:16px;border-radius:18px;}
  .tessera-hero-text-v58 h1{font-size:28px!important;}
  .tessera-image-v58{border-radius:16px;}
}

/* v59 - Tessera Socio reale: usa la grafica fisica come base, non una card ricreata */
.tessera-landing-hero{
  width:min(1180px,92%);margin:30px auto 34px;padding:26px;
  display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:center;
  border:1px solid rgba(212,175,55,.38);border-radius:24px;
  background:radial-gradient(circle at 15% 15%,rgba(91,10,10,.55),transparent 42%),linear-gradient(135deg,rgba(5,45,25,.88),rgba(6,6,6,.96) 45%,rgba(91,10,10,.7));
  box-shadow:0 24px 70px rgba(0,0,0,.45);overflow:hidden;
}
.tessera-landing-copy span{display:block;color:#d4af37!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.12em;font-weight:900;margin-bottom:12px}
.tessera-landing-copy h1{font-size:clamp(32px,4vw,58px)!important;line-height:1.02!important;margin:0 0 14px!important;color:#fff!important;text-transform:uppercase;max-width:560px}
.tessera-landing-copy p{font-size:16px!important;line-height:1.55!important;max-width:580px;color:#fff!important;margin-bottom:18px!important}
.tessera-landing-preview{border-radius:22px;overflow:hidden;border:1px solid rgba(212,175,55,.58);background:#111;box-shadow:0 18px 50px rgba(0,0,0,.5)}
.tessera-landing-preview img{display:block;width:100%;height:auto;object-fit:contain}
/* Tessera socio stampabile: usa le grafiche reali fronte/retro */
.real-tessera-page{padding-top:24px}
.real-card-info{width:min(920px,94%);margin:0 auto 14px;text-align:center}
.real-card-info h1{font-size:26px!important;margin:0 0 6px!important}
.real-card-info p{font-size:14px!important;color:#fff!important}
.real-card-sheet{width:min(900px,94%);margin:0 auto;display:grid;grid-template-columns:1fr;gap:18px;justify-items:center}
.real-card-template{position:relative;width:min(760px,100%);border-radius:18px;overflow:hidden;background:#111;box-shadow:0 20px 55px rgba(0,0,0,.55);border:1px solid rgba(212,175,55,.45)}
.real-card-template img{display:block;width:100%;height:auto;object-fit:contain}
.card-overlay,.back-overlay{position:absolute;color:#111!important;font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
/* Sulla tessera: rettangolo superiore = nome, rettangolo inferiore = numero */
.card-name{left:14.2%;top:66.3%;width:32%;font-size:clamp(12px,1.35vw,18px)}
.card-number{left:14.2%;top:80.15%;width:43%;font-size:clamp(12px,1.35vw,18px)}
.card-qr{display:none!important}
.back-qr{position:absolute;left:57.2%;top:38.6%;width:15.6%;background:#fff;border-radius:12px;padding:.7%;box-shadow:0 8px 22px rgba(0,0,0,.4)}
.back-qr img{width:100%;display:block}
.verify-card{width:min(900px,94%);margin:18px auto 0;text-align:center}
.verify-card h2{font-size:22px!important;margin:0 0 8px!important}
@media(max-width:900px){.tessera-landing-hero{grid-template-columns:1fr;padding:18px}.tessera-landing-copy h1{font-size:34px!important}.real-card-sheet{width:96%}.real-card-template{width:100%;border-radius:12px}.card-number,.card-name{font-size:11px!important}.back-qr{width:16.5%;border-radius:7px}}
@media print{@page{size:A5 portrait;margin:8mm}.site-header,header,footer,.no-print,.scroll-top{display:none!important}html,body{width:148mm;min-height:210mm;background:#fff!important}.section.real-tessera-page{padding:0!important;margin:0!important}.real-card-sheet{width:132mm!important;margin:0 auto!important;gap:8mm!important;display:grid!important;grid-template-columns:1fr!important}.real-card-template{width:132mm!important;box-shadow:none!important;border:0!important;border-radius:4mm!important;break-inside:avoid;page-break-inside:avoid}.real-card-template img{width:132mm!important}.card-name,.card-number{font-size:10pt!important}.back-qr{border-radius:2mm!important}.verify-card{display:none!important}}

/* v61 - Tessera reale più precisa + manutenzione */
.real-card-sheet{width:min(760px,94%)!important;gap:14px!important}
.real-card-template{width:min(680px,100%)!important;border-radius:16px!important}
.card-overlay{display:flex;align-items:center;height:8%;padding:0 1.4%;box-sizing:border-box;color:#111!important;font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:.01em;line-height:1!important;text-shadow:none!important;background:transparent!important}
.card-name{left:13.7%!important;top:66.15%!important;width:32.5%!important;font-size:clamp(12px,1.15vw,16px)!important}
.card-number{left:13.7%!important;top:80.1%!important;width:39.5%!important;font-size:clamp(12px,1.15vw,16px)!important}
.back-qr{left:56.8%!important;top:38.2%!important;width:16.8%!important;background:#fff!important;border-radius:12px!important;padding:.8%!important}
.maintenance-body{margin:0;background:#020402;color:#fff!important;min-height:100vh}.maintenance-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 22% 35%,rgba(0,120,58,.35),transparent 32%),radial-gradient(circle at 78% 45%,rgba(91,10,10,.55),transparent 36%),linear-gradient(135deg,#01190e,#080808 45%,#3a0508)}.maintenance-card{width:min(760px,94%);padding:46px 32px;text-align:center;border:1px solid rgba(212,175,55,.5);border-radius:28px;background:rgba(0,0,0,.5);box-shadow:0 26px 80px rgba(0,0,0,.65);backdrop-filter:blur(12px)}.maintenance-card img{width:120px;height:120px;object-fit:contain;background:#fff;border-radius:18px;padding:10px}.maintenance-card span{display:block;margin-top:18px;color:#d4af37!important;text-transform:uppercase;letter-spacing:.16em;font-size:13px;font-weight:900}.maintenance-card h1{font-size:clamp(34px,6vw,70px)!important;line-height:1!important;color:#fff!important;text-transform:uppercase;margin:14px 0}.maintenance-card p{font-size:18px!important;color:#fff!important;max-width:560px;margin:0 auto 22px}
@media print{@page{size:A5 portrait;margin:7mm}.real-card-sheet{width:125mm!important;gap:6mm!important}.real-card-template{width:125mm!important;border-radius:3mm!important}.real-card-template img{width:125mm!important}.card-name,.card-number{font-size:8pt!important;height:8%!important}.back-qr{border-radius:2mm!important}}


/* v62 - manutenzione reale, sfondo scenografico e tessera retro pulita */
.maintenance-body{margin:0;background:#030303;color:#fff!important;min-height:100vh;overflow:hidden}
.maintenance-screen{min-height:100vh;position:relative;display:grid;place-items:center;padding:28px;background-image:linear-gradient(90deg,rgba(0,70,35,.90) 0%,rgba(0,0,0,.72) 42%,rgba(91,10,10,.92) 100%),url('../img/campioni-hero.png');background-size:cover;background-position:center;isolation:isolate}
.maintenance-screen:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 34%,rgba(0,180,90,.42),transparent 28%),radial-gradient(circle at 82% 40%,rgba(150,0,20,.45),transparent 32%),linear-gradient(to bottom,rgba(0,0,0,.16),rgba(0,0,0,.72));z-index:-1}
.maintenance-screen:after{content:"";position:absolute;left:-8%;right:-8%;bottom:8%;height:86px;background:linear-gradient(90deg,#063f24,#6b090d);border-top:2px solid rgba(212,175,55,.75);border-bottom:2px solid rgba(212,175,55,.75);transform:rotate(-3deg);box-shadow:0 20px 55px rgba(0,0,0,.6);opacity:.92;z-index:-1}
.maintenance-glow{position:absolute;width:42vw;height:42vw;border-radius:50%;filter:blur(70px);opacity:.42;z-index:-1}.maintenance-glow.green{left:-18vw;top:12vh;background:#00a05b}.maintenance-glow.burgundy{right:-18vw;top:18vh;background:#7b070d}
.maintenance-card{width:min(820px,94%);padding:44px 34px;text-align:center;border:1px solid rgba(212,175,55,.58);border-radius:30px;background:linear-gradient(135deg,rgba(4,42,23,.68),rgba(0,0,0,.70) 48%,rgba(91,10,10,.70));box-shadow:0 30px 90px rgba(0,0,0,.75);backdrop-filter:blur(10px)}
.maintenance-logo{width:116px;height:116px;object-fit:contain;background:#fff;border-radius:20px;padding:10px;box-shadow:0 16px 38px rgba(0,0,0,.45)}
.maintenance-card span{display:block;margin-top:18px;color:#d4af37!important;text-transform:uppercase;letter-spacing:.20em;font-size:13px;font-weight:900}.maintenance-card h1{font-size:clamp(30px,5vw,62px)!important;line-height:1.02!important;color:#fff!important;text-transform:uppercase;margin:14px auto;max-width:760px}.maintenance-card p{font-size:18px!important;color:#fff!important;max-width:610px;margin:0 auto 22px}.maintenance-card small{display:block;color:#fff!important;opacity:.92;letter-spacing:.16em;text-transform:uppercase;font-weight:800}.maintenance-stripe{display:inline-block;margin:8px auto 18px;padding:10px 18px;border-radius:999px;background:linear-gradient(90deg,#d4af37,#fff1a8,#d4af37);color:#160606!important;font-weight:1000;letter-spacing:.08em;box-shadow:0 12px 24px rgba(0,0,0,.35)}
/* Tessera: mantieni grafiche reali, compila solo i riquadri bianchi del fronte */
.card-name{left:13.7%!important;top:66.15%!important;width:32.5%!important;height:7.6%!important;font-size:clamp(12px,1.15vw,16px)!important;justify-content:flex-start!important;color:#111!important;z-index:4}.card-number{left:13.7%!important;top:80.1%!important;width:39.5%!important;height:7.6%!important;font-size:clamp(12px,1.15vw,16px)!important;justify-content:flex-start!important;color:#111!important;z-index:4}
.back-card .back-clean-fields{position:absolute;left:55.3%;top:7.1%;width:42.7%;height:25.2%;background:linear-gradient(135deg,rgba(18,5,5,.98),rgba(8,8,8,.98) 45%,rgba(8,49,29,.98));border-radius:10px;z-index:2;box-shadow:inset 0 0 34px rgba(212,175,55,.08)}
.back-card .back-clean-nfc{position:absolute;left:55.2%;top:35.3%;width:22.2%;height:28.4%;background:linear-gradient(135deg,rgba(14,4,4,.99),rgba(5,5,5,.99) 48%,rgba(6,43,25,.98));border:1px solid rgba(212,175,55,.45);border-radius:18px;z-index:2;box-shadow:0 12px 28px rgba(0,0,0,.42)}
.back-qr{left:58.1%!important;top:38.4%!important;width:15.8%!important;background:#fff!important;border-radius:10px!important;padding:.75%!important;z-index:3!important;box-shadow:0 10px 26px rgba(0,0,0,.55)!important}.back-qr img{width:100%!important;height:auto!important;display:block!important}
@media(max-width:900px){.maintenance-card{padding:30px 18px}.maintenance-logo{width:88px;height:88px}.maintenance-card p{font-size:15px!important}.back-card .back-clean-fields{border-radius:6px}.back-card .back-clean-nfc{border-radius:10px}.back-qr{border-radius:6px!important}}
@media print{@page{size:A5 portrait;margin:7mm}.back-card .back-clean-fields{border-radius:1.5mm!important}.back-card .back-clean-nfc{border-radius:2.8mm!important}.back-qr{border-radius:1.8mm!important}.maintenance-screen{display:none!important}}


/* v63 - retro tessera pulito e menu cliente */
.back-card .back-clean-fields,.back-card .back-clean-nfc{display:none!important}
.back-card img[src$="tessera-socio-retro-clean.jpg"]{display:block;width:100%;height:auto;object-fit:contain}
.back-qr{left:56.25%!important;top:38.7%!important;width:15.6%!important;background:#fff!important;border:0!important;border-radius:10px!important;padding:.85%!important;z-index:5!important;box-shadow:0 10px 28px rgba(0,0,0,.58)!important}
.back-qr:after{content:"VERIFICA";display:block;color:#111!important;font-size:8px;font-weight:1000;letter-spacing:.08em;text-align:center;margin-top:3px;line-height:1}
.account-menu-wrap{padding-top:0!important;padding-bottom:0!important}
.account-client-menu{width:min(1180px,94%);margin:0 auto 18px;display:flex;flex-wrap:wrap;gap:10px;padding:12px;border:1px solid rgba(212,175,55,.25);border-radius:18px;background:linear-gradient(90deg,rgba(0,90,45,.22),rgba(91,10,10,.22))}
.account-client-menu a{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:12px;background:rgba(255,255,255,.07);color:#fff!important;text-decoration:none;font-weight:900;border:1px solid rgba(255,255,255,.1)}
.account-client-menu a.active,.account-client-menu a:hover{background:linear-gradient(90deg,#0d8d4c,#5b0a0a);border-color:rgba(212,175,55,.55);color:#fff!important}
@media print{.back-qr:after{font-size:5pt!important;margin-top:1mm!important}}


/* v64 - Convenzioni Soci */
.convenzioni-hero{background:radial-gradient(circle at left,rgba(0,130,70,.35),transparent 34%),radial-gradient(circle at right,rgba(91,10,10,.65),transparent 45%),linear-gradient(135deg,#050505,#120505);border-bottom:1px solid rgba(212,175,55,.35)}
.member-status{display:inline-block;margin-top:16px;padding:12px 18px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff}.member-status a{color:#d4af37;font-weight:900}.active-member{border-color:rgba(0,190,100,.5);box-shadow:0 0 25px rgba(0,160,80,.18)}
.convenzioni-list{display:grid;gap:16px}.convenzione-row{display:grid;grid-template-columns:140px 1fr 190px;gap:20px;align-items:center;padding:18px;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(212,175,55,.25);box-shadow:0 18px 45px rgba(0,0,0,.25)}
.convenzione-row.locked{opacity:.68}.conv-logo-box{height:110px;background:#fff;border-radius:18px;display:flex;align-items:center;justify-content:center;padding:14px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.conv-logo-box img{max-width:100%;max-height:100%;object-fit:contain}.conv-logo-box span{color:#111;font-size:28px;font-weight:900}.conv-topline{display:flex;gap:12px;align-items:center;margin-bottom:8px}.conv-topline span{font-size:12px;text-transform:uppercase;color:#11c76f;font-weight:900;letter-spacing:.08em}.conv-topline b{color:#d4af37;background:rgba(212,175,55,.12);border:1px solid rgba(212,175,55,.28);border-radius:999px;padding:6px 10px}.conv-main h2{font-size:24px;color:#fff;margin:0 0 8px}.conv-main p{color:#fff;margin:0 0 8px}.conv-main small{display:block;color:rgba(255,255,255,.76);margin-bottom:10px}.conv-actions{display:flex;gap:10px;flex-wrap:wrap}.conv-actions a,.conv-level em,.account-conv-mini a{color:#fff;background:#5b0a0a;border:1px solid rgba(212,175,55,.28);border-radius:999px;padding:8px 12px;font-weight:900;text-decoration:none}.conv-actions a:hover,.account-conv-mini a:hover{background:#0b7a45}.conv-level{justify-self:end;text-align:right}.conv-level span{display:block;color:rgba(255,255,255,.7);font-size:12px;text-transform:uppercase;font-weight:900}.conv-level b{display:block;color:#fff;font-size:18px;margin:6px 0}.conv-level em{display:inline-block;font-style:normal;font-size:12px}.conv-level em.ok{background:#0b7a45}.account-conv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:12px 0 18px}.account-conv-mini{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}.account-conv-mini.locked{opacity:.55}.account-conv-mini img{height:58px;max-width:120px;object-fit:contain;background:#fff;border-radius:12px;padding:8px}.account-conv-mini h3{color:#fff;font-size:18px;margin:10px 0 6px}.account-conv-mini b{display:block;color:#d4af37}.account-conv-mini span{display:block;color:#fff;margin:8px 0;font-size:13px}@media(max-width:900px){.convenzione-row{grid-template-columns:1fr}.conv-level{text-align:left;justify-self:start}.account-conv-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.account-conv-grid{grid-template-columns:1fr}}

/* v65 - Login/Logout cliente sempre visibili */
.site-nav .logout-pill{
  border-color: rgba(216,177,90,.75);
  background: rgba(91,10,10,.35);
  color: #fff !important;
}
.site-nav .logout-pill:hover{
  background: #5b0a0a;
  border-color: #d8b15a;
  color: #fff !important;
}
.site-nav .login-pill,
.site-nav .register-pill,
.site-nav .account-pill{
  color:#fff !important;
}
.account-client-menu .logout-account-link{
  margin-left:auto;
  background: rgba(91,10,10,.55);
  border-color: rgba(216,177,90,.45);
}
@media(max-width:900px){
  .site-nav .register-pill{display:none}
  .site-nav .logout-pill{display:inline-flex}
}

/* v66 - compatibilità smartphone/tablet Android e iOS */
img,video,iframe{max-width:100%;height:auto}.site-header{isolation:isolate}.mobile-menu-toggle,.mobile-nav-head,.mobile-menu-backdrop{display:none}
@media(max-width:1180px){
  .site-header{height:72px;padding:0 18px;gap:12px}.site-brand img{width:56px;height:56px}.site-brand strong{font-size:18px}.site-nav{gap:14px}.site-nav a{font-size:11px}.cart-pill:before{display:none}
}
@media(max-width:980px){
  body{overflow-x:hidden;-webkit-text-size-adjust:100%}.site-header{height:68px;position:sticky}.site-brand{min-width:0}.site-brand img{width:52px;height:52px}.site-brand strong{font-size:17px;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-brand span{display:none}
  .mobile-menu-toggle{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:46px;height:46px;border:1px solid rgba(212,166,69,.45);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;margin-left:auto;cursor:pointer;z-index:91}.mobile-menu-toggle span{width:23px;height:2px;background:#fff;border-radius:10px;display:block;transition:.2s}.mobile-menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-toggle.is-open span:nth-child(2){opacity:0}.mobile-menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mobile-menu-backdrop{display:block;position:fixed;inset:0;background:rgba(0,0,0,.62);backdrop-filter:blur(4px);z-index:80}.mobile-menu-backdrop[hidden]{display:none!important}
  .site-nav{position:fixed;top:0;right:0;bottom:0;width:min(86vw,360px);height:100dvh;display:flex;flex-direction:column;align-items:stretch;gap:0;flex-wrap:nowrap;padding:0 18px 26px;background:linear-gradient(180deg,#03170d 0%,#06100c 45%,#5b070c 100%);border-left:1px solid rgba(212,166,69,.42);box-shadow:-22px 0 60px rgba(0,0,0,.65);overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:90;transform:translateX(105%);transition:transform .26s ease}.site-nav.is-open{transform:translateX(0)}
  .mobile-nav-head{display:flex;align-items:center;gap:12px;padding:18px 0 16px;margin-bottom:4px;border-bottom:1px solid rgba(255,255,255,.14)}.mobile-nav-head img{width:46px;height:46px;object-fit:contain}.mobile-nav-head strong{font-size:18px;text-transform:uppercase;color:#fff}.mobile-menu-close{margin-left:auto;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-size:30px;line-height:1;cursor:pointer}
  .site-nav a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 2px;border-bottom:1px solid rgba(255,255,255,.10);font-size:13px;letter-spacing:.04em}.site-nav a:after{display:none}.site-nav a.active{color:#d4a645}.site-nav .cart-pill{padding-left:2px}.site-nav .cart-pill:before{display:none}.mobile-menu-open{overflow:hidden}
  .stadium-home,.section,.page-hero{width:100%;padding-left:14px!important;padding-right:14px!important}.stadium-home{padding-top:10px}.hero-banner{border-radius:12px;margin:0}.hero-banner img{height:auto;min-height:0;max-height:none;object-fit:contain}.match-row{grid-template-columns:1fr;gap:12px}.home-grid{grid-template-columns:1fr}.news-row{grid-template-columns:1fr 1fr}.product-strip{grid-template-columns:repeat(2,1fr)}.section{padding-top:24px}.section>h1,.page-hero h1{font-size:30px}.page-hero{margin-top:14px;padding:28px 18px!important}.panel-head h2{font-size:18px}.versus-card{gap:10px;padding:12px 8px}.team{gap:9px}.team img{width:54px;height:54px;background:#fff;border-radius:14px;padding:5px}.team b,.team.right b{font-size:14px;min-width:0}.vs{font-size:32px}.mini{padding:14px 16px}.fields-map-wrap{grid-template-columns:1fr}.fields-map,.fields-map-page .fields-map{min-height:360px}.fields-list{max-height:420px}.footer{justify-content:center;text-align:center;padding:22px 14px}.scroll-top-btn{right:14px;bottom:14px}
}
@media(max-width:640px){
  .site-header{height:64px;padding:0 12px}.site-brand img{width:46px;height:46px}.site-brand strong{font-size:15px;max-width:160px}.mobile-menu-toggle{width:42px;height:42px;border-radius:12px}.site-nav{width:min(92vw,340px)}
  .news-row{grid-template-columns:1fr}.product-strip{grid-template-columns:1fr}.grid{grid-template-columns:1fr!important}.product-card img,.card img{height:190px;object-fit:contain}.product-main-image{height:310px}.product-detail-grid{grid-template-columns:1fr}.fixture-row{grid-template-columns:1fr!important}.fixture-team,.fixture-team.away{justify-content:center;text-align:center}.fixture-center{order:-1}.dark-table,.table{font-size:13px}.dark-table th,.table th,.dark-table td,.table td{padding:9px 7px}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.sponsors-logo-slider .sponsor-logo-item{min-width:140px;height:82px}.sponsors-logo-slider .sponsor-logo-item img{height:58px;max-width:120px}.fidelity-hero,.tessera-layout,.account-grid,.checkout-grid{grid-template-columns:1fr!important}.tessera-card-wrap{transform:none!important;max-width:100%}.tessera-front,.tessera-back{max-width:100%;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important}
}
@supports(padding:max(0px)){@media(max-width:980px){.site-nav{padding-bottom:max(26px,env(safe-area-inset-bottom))}.site-header{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}}}

/* Admin responsive base */
@media(max-width:1050px){.adminshell{grid-template-columns:1fr}.adminsidebar{position:relative;height:auto;display:block}.adminmain{padding:18px!important}.admin-grid,.dashboard-grid{grid-template-columns:1fr!important}.admin-table-wrap,.table-wide-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.adminsidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.adminsidebar a{min-height:42px}}
@media(max-width:560px){.adminsidebar nav{grid-template-columns:1fr}.adminbrand strong{font-size:15px}.adminmain{padding:12px!important}.form input,.form textarea,.form select{font-size:16px}}

/* v67 - Account Tessera Socio: tessera attiva, rinnovo e PDF/stampa */
.tessera-account-section{display:grid;gap:18px;width:min(1180px,94%);margin:0 auto 40px;padding-left:0!important;padding-right:0!important}
.member-active-card,.member-expired-banner,.member-empty-card{border:1px solid rgba(212,175,55,.38);background:radial-gradient(circle at 0 0,rgba(0,140,70,.22),transparent 34%),radial-gradient(circle at 100% 0,rgba(91,10,10,.34),transparent 38%),rgba(255,255,255,.055)}
.member-active-head{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.member-active-head h2{margin:6px 0!important;font-size:clamp(26px,3vw,44px)!important;color:#d4af37!important}.member-active-head p{margin:0;color:#fff!important}.member-active-head b{color:#fff!important;text-transform:uppercase;letter-spacing:.08em}.member-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.live-dot{display:inline-block;width:11px;height:11px;border-radius:50%;background:#10ff85;box-shadow:0 0 0 4px rgba(16,255,133,.15),0 0 18px rgba(16,255,133,.9);margin-right:8px}.mini-card-preview{margin-top:18px;max-width:420px;border-radius:18px;overflow:hidden;border:1px solid rgba(212,175,55,.45);background:#111;box-shadow:0 16px 40px rgba(0,0,0,.35)}.mini-card-preview img{display:block;width:100%;height:auto;object-fit:contain}.member-expired-banner{position:relative;overflow:hidden;text-align:center}.member-expired-banner:before{content:"TESSERA SCADUTA";position:absolute;left:-60px;top:20px;transform:rotate(-18deg);background:#b40d18;color:#fff!important;font-size:13px;font-weight:1000;letter-spacing:.12em;padding:10px 80px;border:2px solid rgba(255,255,255,.22);box-shadow:0 10px 30px rgba(0,0,0,.3)}.member-expired-banner h2{font-size:clamp(30px,4vw,58px)!important;color:#fff!important;text-transform:uppercase;margin:8px 0 10px!important}.member-expired-banner p{font-size:17px!important;max-width:760px;margin:0 auto 18px;color:#fff!important}.fidelity-account-card.is-expired{opacity:.72;border-color:rgba(180,13,24,.55)!important}.fidelity-account-card.is-expired b{color:#ff8c94!important}@media(max-width:760px){.member-active-head{align-items:flex-start}.member-actions{justify-content:flex-start}.mini-card-preview{max-width:100%}.member-expired-banner:before{font-size:10px;left:-76px;top:12px}}


/* v68 - Tessera: stagione modificabile e tipo tessera sul retro */
.card-season{position:absolute!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:900!important;letter-spacing:.04em!important;text-transform:uppercase!important;color:#fff!important;text-shadow:0 2px 6px rgba(0,0,0,.65)!important;background:linear-gradient(135deg,rgba(91,10,10,.96),rgba(5,86,48,.96))!important;border:1px solid rgba(212,175,55,.45)!important;border-radius:999px!important;z-index:6!important;padding:0 1.4%!important;line-height:1!important;white-space:nowrap!important}
.card-season-front{right:7.2%!important;bottom:6.2%!important;width:27%!important;height:6.2%!important;font-size:clamp(8px,1vw,13px)!important}
.card-season-back{right:7.4%!important;bottom:6.1%!important;width:27%!important;height:6.2%!important;font-size:clamp(8px,1vw,13px)!important}
.back-plan{left:54.5%!important;top:61.6%!important;width:22.5%!important;height:6.3%!important;background:linear-gradient(135deg,#d4af37,#fff2a8)!important;color:#111!important;border-radius:999px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:clamp(8px,.95vw,13px)!important;font-weight:1000!important;text-transform:uppercase!important;letter-spacing:.035em!important;box-shadow:0 8px 20px rgba(0,0,0,.42)!important;z-index:6!important}
@media(max-width:900px){.card-season-front,.card-season-back{font-size:7px!important}.back-plan{font-size:7px!important}}
@media print{.card-season-front,.card-season-back{font-size:5.5pt!important}.back-plan{font-size:5.5pt!important}}
/* v69 - campagna tessere e sconti socio */
.membership-campaign{display:grid;grid-template-columns:1.4fr 1fr auto;gap:22px;align-items:center;margin:22px 0!important;background:linear-gradient(135deg,rgba(10,88,48,.72),rgba(91,10,10,.72))!important;border:1px solid rgba(212,175,55,.45)!important;box-shadow:0 18px 45px rgba(0,0,0,.35)!important;overflow:hidden;position:relative}.membership-campaign:before{content:"";position:absolute;inset:-60px;background:radial-gradient(circle at 10% 20%,rgba(212,175,55,.24),transparent 35%),radial-gradient(circle at 90% 80%,rgba(13,141,76,.22),transparent 35%);pointer-events:none}.campaign-copy,.campaign-progress,.membership-campaign .btn{position:relative;z-index:2}.campaign-copy span{color:#d4af37!important;text-transform:uppercase;letter-spacing:.08em;font-weight:900;font-size:12px!important}.campaign-copy h2{font-size:28px!important;margin:5px 0!important}.campaign-copy p{font-size:15px!important;margin:0!important;color:#fff!important}.campaign-bar{height:15px;background:rgba(255,255,255,.18);border-radius:999px;overflow:hidden;border:1px solid rgba(255,255,255,.18)}.campaign-bar i{display:block;height:100%;background:linear-gradient(90deg,#0d8d4c,#d4af37);border-radius:999px}.campaign-progress strong{display:block;text-align:right;margin-top:7px;font-size:20px!important;color:#fff!important}.member-discount-row td{color:#d4af37!important}.member-discount-note{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:8px 12px;border-radius:999px;background:rgba(212,175,55,.14);border:1px solid rgba(212,175,55,.35);color:#fff!important;font-weight:800}@media(max-width:800px){.membership-campaign{grid-template-columns:1fr;text-align:center}.campaign-progress strong{text-align:center}}
/* v70 */
.auth-links{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:16px}.matchday-nav{display:grid;grid-template-columns:120px 1fr 120px;gap:16px;align-items:center;text-align:center;margin-bottom:24px}.matchday-nav h2{margin:0;color:#fff!important}.matchday-nav small{color:#d8b15a!important}.stats-page{display:grid;gap:22px}.stats-logo-card{text-align:center}.stats-logo-card img{width:130px;height:130px;object-fit:contain;background:#fff;border-radius:26px;padding:14px;box-shadow:0 18px 40px rgba(0,0,0,.35)}.stats-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:520px;margin:20px auto 0}.stats-mini-grid div{background:linear-gradient(135deg,rgba(13,141,76,.28),rgba(91,10,10,.36));border:1px solid rgba(212,175,90,.32);border-radius:16px;padding:18px}.stats-mini-grid span{display:block;color:#ddd!important}.stats-mini-grid b{font-size:36px;color:#fff!important}.stats-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.suspension-badge{display:inline-block;background:#b40d18;color:#fff!important;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800}.menu-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.menu-settings-grid h4{margin:0 0 10px;color:#d8b15a!important}@media(max-width:800px){.matchday-nav{grid-template-columns:1fr}.stats-columns,.stats-mini-grid,.menu-settings-grid{grid-template-columns:1fr}.matchday-nav .btn{width:100%}}


/* v72 - Tessera corretta: stagione top rimossa, stagione bottom più grande, nessun tipo sul retro */
.front-card img[src$="tessera-socio-fisica-clean.jpg"]{display:block;width:100%;height:auto;object-fit:contain}
.back-plan{display:none!important}
.card-season-front{right:5.2%!important;bottom:5.15%!important;width:35%!important;height:7.6%!important;font-size:clamp(12px,1.45vw,20px)!important;border-radius:999px!important;background:linear-gradient(135deg,#4d0809,#09643a)!important;border:2px solid rgba(212,175,55,.72)!important;box-shadow:0 10px 24px rgba(0,0,0,.52)!important}
.card-season-back{right:7.4%!important;bottom:6.1%!important;width:27%!important;height:6.2%!important;font-size:clamp(8px,1vw,13px)!important}
.back-qr{left:55.7%!important;top:36.7%!important;width:17.5%!important;padding:.8%!important;border-radius:10px!important}
.back-qr:after{display:none!important;content:none!important}
@media(max-width:900px){.card-season-front{font-size:9px!important}.back-qr{border-radius:6px!important}}
@media print{.card-season-front{font-size:7pt!important}.back-qr{border-radius:1.8mm!important}}

/* v73 - Tessera del Tifoso: posizioni definitive richieste */
.front-card{isolation:isolate;}
/* correzione etichette: sopra deve essere Nome e Cognome, sotto N° Tessera */
.front-label{position:absolute!important;left:14.0%!important;width:36%!important;height:3.9%!important;display:flex!important;align-items:center!important;padding:0 .4%!important;box-sizing:border-box!important;background:linear-gradient(90deg,rgba(26,8,8,.98),rgba(18,8,6,.92),rgba(18,8,8,.75))!important;color:#d4af37!important;font-family:Arial,Helvetica,sans-serif!important;font-weight:1000!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:clamp(7px,.86vw,12px)!important;line-height:1!important;z-index:5!important;text-shadow:0 1px 2px #000!important;}
.front-label-name{top:62.4%!important;}
.front-label-number{top:76.0%!important;}
/* dati nei rettangoli bianchi */
.card-name{left:13.7%!important;top:66.15%!important;width:32.5%!important;height:7.6%!important;font-size:clamp(12px,1.15vw,16px)!important;justify-content:flex-start!important;color:#111!important;z-index:6!important;}
.card-number{left:13.7%!important;top:80.1%!important;width:39.5%!important;height:7.6%!important;font-size:clamp(12px,1.15vw,16px)!important;justify-content:flex-start!important;color:#111!important;z-index:6!important;}
/* fronte: stagione in basso più piccola e meno invasiva */
.card-season-front{right:6.8%!important;bottom:6.15%!important;width:25%!important;height:5.7%!important;font-size:clamp(7px,.86vw,12px)!important;border-radius:999px!important;background:linear-gradient(135deg,rgba(76,8,9,.92),rgba(6,70,40,.92))!important;border:1px solid rgba(212,175,55,.68)!important;box-shadow:0 6px 16px rgba(0,0,0,.45)!important;letter-spacing:.03em!important;}
/* retro: solo QR + stagione più grande in basso */
.back-plan{display:none!important;}
.card-season-back{right:5.7%!important;bottom:5.2%!important;width:35%!important;height:7.6%!important;font-size:clamp(12px,1.45vw,20px)!important;border-radius:999px!important;background:linear-gradient(135deg,#4d0809,#09643a)!important;border:2px solid rgba(212,175,55,.72)!important;box-shadow:0 10px 24px rgba(0,0,0,.52)!important;letter-spacing:.035em!important;}
.back-qr{left:55.7%!important;top:36.7%!important;width:17.5%!important;padding:.8%!important;border-radius:10px!important;z-index:8!important;}
@media(max-width:900px){.front-label{font-size:6px!important}.card-season-front{font-size:7px!important}.card-season-back{font-size:9px!important}}
@media print{.front-label{font-size:4.8pt!important}.card-season-front{font-size:5pt!important}.card-season-back{font-size:7pt!important}.back-qr{border-radius:1.8mm!important}}


/* v74 - correzione definitiva tessera del tifoso: stagione solo sul retro */
.front-card .card-season-front{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;padding:0!important;border:0!important}
/* Mantiene il fronte pulito: niente stagione sovrapposta */
.front-card .card-overlay.card-season{display:none!important}
/* Retro: stagione più grande e leggibile in basso a destra */
.back-card .card-season-back{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  right:4.2%!important;
  bottom:4.3%!important;
  width:39%!important;
  height:8.8%!important;
  font-size:clamp(13px,1.85vw,25px)!important;
  font-weight:1000!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
  color:#fff!important;
  background:linear-gradient(135deg,#4d0809 0%,#09643a 100%)!important;
  border:2px solid rgba(212,175,55,.86)!important;
  border-radius:999px!important;
  box-shadow:0 10px 26px rgba(0,0,0,.62)!important;
  z-index:8!important;
  text-shadow:0 2px 5px rgba(0,0,0,.72)!important;
}
/* QR sempre solo sul retro, senza scritte aggiuntive sotto */
.back-qr:after{display:none!important;content:none!important}
@media(max-width:900px){.back-card .card-season-back{font-size:10px!important;height:8.5%!important;width:40%!important}}
@media print{.front-card .card-season-front{display:none!important}.back-card .card-season-back{font-size:8pt!important;height:8.5%!important;width:39%!important}}

/* v75 - Tessera del Tifoso: stagione sul retro in alto a destra, completa e non tagliata */
.back-card .card-season-back{
  top:7.2%!important;
  right:5.2%!important;
  bottom:auto!important;
  width:31%!important;
  height:6.2%!important;
  padding:0 .8%!important;
  font-size:clamp(8px,1vw,14px)!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
  text-align:center!important;
  border-radius:999px!important;
  z-index:9!important;
}
@media(max-width:900px){
  .back-card .card-season-back{
    top:7.2%!important;
    right:5.2%!important;
    width:34%!important;
    height:6.4%!important;
    font-size:7px!important;
  }
}
@media print{
  .back-card .card-season-back{
    top:7.2%!important;
    right:5.2%!important;
    width:31%!important;
    height:6.2%!important;
    font-size:5.2pt!important;
  }
}


/* v76 - Tessera: stagione retro in alto destra e copertura stagione stampata in basso */
.back-card .card-season-back{
  top:4.8%!important;
  right:4.7%!important;
  bottom:auto!important;
  width:29%!important;
  height:6.5%!important;
  font-size:clamp(8px,.92vw,13px)!important;
  line-height:1!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-transform:uppercase!important;
  color:#fff!important;
  background:linear-gradient(135deg,rgba(10,40,24,.96),rgba(85,8,8,.96))!important;
  border:1px solid rgba(212,175,55,.72)!important;
  border-radius:999px!important;
  z-index:20!important;
}
.back-season-cover{
  position:absolute!important;
  right:3.5%!important;
  bottom:4.5%!important;
  width:34%!important;
  height:8.7%!important;
  background:linear-gradient(100deg,rgba(7,42,25,.96),rgba(65,7,7,.96))!important;
  border-radius:999px!important;
  z-index:18!important;
  box-shadow:0 0 18px rgba(0,0,0,.35)!important;
}
.back-card .card-season-back{font-weight:900!important;letter-spacing:.02em!important}
.account-client-menu{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:center}
.account-client-menu a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border:1px solid rgba(212,175,55,.35);border-radius:999px;background:rgba(255,255,255,.06);color:#fff!important;font-weight:900;text-decoration:none}
.account-client-menu a.active,.account-client-menu a:hover{background:linear-gradient(135deg,#087943,#6a0909);border-color:#d4af37}
.news-share{margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.news-share b{margin-right:8px;color:#fff!important}.news-share a{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(212,175,55,.32);color:#fff!important;text-decoration:none;font-weight:900}.news-share a:hover{background:#075f38}
@media(max-width:900px){.back-card .card-season-back{font-size:8px!important;width:31%!important}.back-season-cover{width:36%!important}.account-client-menu{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.account-client-menu a{white-space:nowrap}}
@media print{.back-card .card-season-back{font-size:6pt!important}.back-season-cover{border-radius:3mm!important}}

/* v77 reale - correzioni finali tessera, login/admin e manutenzione */
.front-card .card-season-front,
.front-card .card-overlay.card-season{display:none!important;visibility:hidden!important;opacity:0!important}
.back-season-cover{display:none!important;visibility:hidden!important;opacity:0!important}
.back-card .card-season-back{
  display:flex!important;
  top:4.9%!important;
  right:5.4%!important;
  bottom:auto!important;
  width:27.5%!important;
  height:5.4%!important;
  padding:0 .8%!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:clamp(7px,.78vw,12px)!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-transform:uppercase!important;
  font-weight:1000!important;
  color:#fff!important;
  background:linear-gradient(135deg,rgba(7,42,25,.96),rgba(75,8,10,.96))!important;
  border:1px solid rgba(212,175,55,.78)!important;
  border-radius:999px!important;
  z-index:10!important;
  text-shadow:0 1px 4px rgba(0,0,0,.9)!important;
  box-shadow:0 6px 16px rgba(0,0,0,.55)!important;
}
.back-qr{left:55.7%!important;top:36.8%!important;width:17.2%!important;z-index:9!important;background:#fff!important;border-radius:10px!important;padding:.8%!important}
@media(max-width:900px){.back-card .card-season-back{font-size:6px!important;width:29%!important;height:5.4%!important}.back-qr{width:17.4%!important}}
@media print{.back-card .card-season-back{font-size:4.8pt!important;width:28%!important;height:5.4%!important}.back-season-cover{display:none!important}}

/* Statistiche complete */
.stats-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:14px;margin:18px auto;max-width:1180px}
.stats-kpi{border:1px solid rgba(212,175,55,.34);border-radius:18px;background:linear-gradient(135deg,rgba(5,55,31,.72),rgba(0,0,0,.88) 50%,rgba(91,10,10,.72));padding:16px;text-align:center;box-shadow:0 12px 28px rgba(0,0,0,.25)}
.stats-kpi span{display:block;font-size:12px!important;text-transform:uppercase;letter-spacing:.08em;color:#d4af37!important;font-weight:900;margin-bottom:8px}
.stats-kpi b{display:block;font-size:32px!important;color:#fff!important;line-height:1}
.suspension-badge{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;background:#7b070d;color:#fff!important;font-weight:1000;font-size:12px!important;border:1px solid rgba(212,175,55,.45)}
@media(max-width:900px){.stats-kpi-grid{grid-template-columns:repeat(2,1fr)}}

/* Admin/login con sfondo Sporting */
body.admin-login-body{min-height:100vh;margin:0;background:#020402!important;color:#fff!important;display:grid;place-items:center;overflow:hidden;position:relative}
body.admin-login-body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(90deg,rgba(0,65,35,.88),rgba(0,0,0,.66) 45%,rgba(91,10,10,.90)),url('../img/campioni-hero.png');background-size:cover;background-position:center;z-index:0}
body.admin-login-body:after{content:"FORZA SPORTING VOLTURARA";position:fixed;left:-8%;right:-8%;bottom:9%;padding:14px 0;text-align:center;font-weight:1000;letter-spacing:.16em;color:#190606;background:linear-gradient(90deg,#d4af37,#fff1a8,#d4af37);transform:rotate(-3deg);box-shadow:0 18px 45px rgba(0,0,0,.55);opacity:.9;z-index:1}
.admin-login-box{position:relative;z-index:2;width:min(430px,92%);padding:28px;border-radius:24px;border:1px solid rgba(212,175,55,.55);background:linear-gradient(135deg,rgba(3,39,23,.78),rgba(0,0,0,.82) 52%,rgba(91,10,10,.75));box-shadow:0 30px 80px rgba(0,0,0,.68);backdrop-filter:blur(10px);text-align:center}
.admin-login-box .login-logo{width:120px;height:120px;object-fit:contain;background:transparent!important;border-radius:0!important;padding:0!important;margin:0 auto 12px;display:block;filter:drop-shadow(0 12px 24px rgba(0,0,0,.55))}
.admin-login-box h1{font-size:26px!important;margin:8px 0 18px!important;color:#fff!important;text-transform:uppercase}.admin-login-box label{text-align:left;display:block}.admin-login-box input{width:100%}.admin-login-box .btn{width:100%;justify-content:center;margin-top:12px}

/* Manutenzione più scenografica, logo senza sfondo bianco */
.maintenance-screen{background-image:linear-gradient(90deg,rgba(0,72,38,.88) 0%,rgba(0,0,0,.62) 42%,rgba(91,10,10,.90) 100%),url('../img/campioni-hero.png')!important;background-size:cover!important;background-position:center!important}
.maintenance-card{background:linear-gradient(135deg,rgba(2,35,20,.66),rgba(0,0,0,.66) 45%,rgba(91,10,10,.66))!important;border-color:rgba(212,175,55,.7)!important}
.maintenance-logo,.maintenance-card img.maintenance-logo{width:150px!important;height:150px!important;background:transparent!important;border-radius:0!important;padding:0!important;box-shadow:none!important;filter:drop-shadow(0 16px 30px rgba(0,0,0,.72))}


/* v78 - Tessera: scritta stagione in basso rimossa dalla grafica, nessuna copertura */
.back-season-cover{display:none!important;}
.back-card .card-season-back{
  top:4.8%!important;
  right:5.2%!important;
  bottom:auto!important;
  width:28%!important;
  height:5.5%!important;
  font-size:clamp(7px,.8vw,12px)!important;
  padding:0 .7%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media print{.back-card .card-season-back{top:4.8%!important;right:5.2%!important;font-size:5.6pt!important;width:28%!important;height:5.5%!important}}

/* v79 - Tessera: tipo dinamico BRONZO/ARGENTO/ORO nel punto della vecchia stagione rimossa */
.back-card .card-tier-back{
  position:absolute!important;
  right:4.8%!important;
  bottom:4.4%!important;
  width:30%!important;
  height:8.4%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:1000!important;
  font-size:clamp(18px,2.9vw,40px)!important;
  line-height:1!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#d4af37!important;
  text-align:center!important;
  text-shadow:0 2px 0 rgba(255,255,255,.18),0 4px 12px rgba(0,0,0,.9)!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  z-index:12!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
@media(max-width:900px){.back-card .card-tier-back{font-size:clamp(12px,4.2vw,24px)!important;right:4.5%!important;bottom:4.4%!important;width:31%!important}}
@media print{.back-card .card-tier-back{font-size:13pt!important;right:4.8%!important;bottom:4.4%!important;width:30%!important;height:8.4%!important}}

/* v80 - Tessera retro: BRONZO/ARGENTO/ORO nel rettangolo alto a destra */
.back-card .card-season-back{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  width:0!important;
  height:0!important;
  padding:0!important;
  border:0!important;
}
.back-card .card-tier-back{
  position:absolute!important;
  top:7.2%!important;
  right:6.2%!important;
  bottom:auto!important;
  width:34%!important;
  height:10.5%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-weight:1000!important;
  font-size:clamp(18px,2.25vw,34px)!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#d8b15a!important;
  text-shadow:0 2px 4px rgba(0,0,0,.95),0 0 16px rgba(216,177,90,.38)!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  z-index:12!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  padding:0 2%!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  .back-card .card-tier-back{top:7.2%!important;right:6.2%!important;width:34%!important;height:10.5%!important;font-size:clamp(12px,3.5vw,22px)!important;}
}
@media print{
  .back-card .card-season-back{display:none!important;}
  .back-card .card-tier-back{top:7.2%!important;right:6.2%!important;width:34%!important;height:10.5%!important;font-size:12pt!important;}
}

/* Account profile improvements */
.account-profile-head{display:flex;gap:18px;align-items:center;margin-bottom:18px}
.account-avatar{width:86px;height:86px;border-radius:50%;object-fit:cover;border:3px solid rgba(216,177,90,.9);background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.account-avatar-placeholder{display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:900;color:#fff;background:linear-gradient(135deg,#0d8d4c,#5b0a0a)}
.account-profile-card input[type="file"]{padding:12px;background:#101010;border:1px dashed rgba(216,177,90,.65);border-radius:12px;color:#fff;width:100%}
.account-profile-card small{display:block;margin-top:6px;color:rgba(255,255,255,.7)}
@media(max-width:700px){.account-profile-head{align-items:flex-start}.account-avatar{width:70px;height:70px}.account-profile-head h2{font-size:22px}}

/* Homepage formazione ufficiale TV */
.home-lineup-hero{position:relative;overflow:hidden;border:1px solid rgba(216,177,90,.45);border-radius:22px;margin:24px auto 18px;max-width:1480px;padding:24px;background:radial-gradient(circle at 20% 20%,rgba(10,110,55,.42),transparent 35%),radial-gradient(circle at 85% 20%,rgba(100,8,12,.52),transparent 40%),linear-gradient(135deg,#020806,#110204);box-shadow:0 18px 55px rgba(0,0,0,.55)}
.home-lineup-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.45));pointer-events:none}.home-lineup-hero>*{position:relative;z-index:1}
.lineup-match-head{text-align:center;margin-bottom:14px}.lineup-match-head h1{margin:0 0 10px;text-transform:uppercase;font-size:clamp(26px,3vw,48px);letter-spacing:.04em}.lineup-match-head p{margin:8px 0 0;color:#e7e7e7}.lineup-match-vs{display:flex;align-items:center;justify-content:center;gap:28px;font-size:clamp(18px,2vw,30px);font-weight:900;text-transform:uppercase}.lineup-match-vs span{display:flex;align-items:center;gap:12px}.lineup-match-vs img{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:16px;padding:8px}.lineup-match-vs b{color:#d8b15a;font-size:1.35em}
.lineup-tv-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:stretch}.football-pitch-card,.lineup-side-card{background:rgba(4,16,12,.84);border:1px solid rgba(255,255,255,.16);border-radius:18px;box-shadow:0 12px 34px rgba(0,0,0,.4)}.football-pitch-card{padding:14px}.lineup-title-row{display:flex;align-items:center;gap:12px;margin-bottom:10px;text-transform:uppercase;font-weight:900;color:#7ed957}.lineup-title-row b{background:#650d12;color:#fff;border-radius:8px;padding:8px 14px}.football-pitch{position:relative;height:620px;border-radius:16px;overflow:hidden;background:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(180deg,#1f701f,#185d1e);background-size:80px 80px,80px 80px,100% 100%;border:2px solid rgba(255,255,255,.28)}.football-pitch:before{content:"";position:absolute;inset:35px;border:4px solid rgba(255,255,255,.45);border-radius:6px}.football-pitch:after{content:"";position:absolute;left:50%;top:50%;width:170px;height:170px;border:4px solid rgba(255,255,255,.45);border-radius:50%;transform:translate(-50%,-50%)}
.pitch-player{position:absolute;transform:translate(-50%,-50%);text-align:center;z-index:2}.player-photo{width:72px;height:72px;border-radius:50%;background:#fff;border:3px solid #fff;box-shadow:0 5px 16px rgba(0,0,0,.45);overflow:hidden;margin:auto}.player-photo img{width:100%;height:100%;object-fit:cover}.player-label{margin-top:-4px;display:flex;align-items:center;justify-content:center;gap:6px;background:rgba(0,0,0,.78);border-radius:8px;padding:5px 10px;min-width:105px}.player-label small{background:#6b0d13;border-radius:5px;padding:3px 6px;font-weight:900}.player-label strong{font-size:13px;text-transform:uppercase;white-space:nowrap}
.pos-gk{left:50%;top:90%}.pos-lb{left:16%;top:73%}.pos-cb1{left:38%;top:75%}.pos-cb2{left:62%;top:75%}.pos-cb3{left:50%;top:72%}.pos-rb{left:84%;top:73%}.pos-lwb{left:12%;top:58%}.pos-rwb{left:88%;top:58%}.pos-dm1{left:40%;top:58%}.pos-dm2{left:60%;top:58%}.pos-lm{left:16%;top:50%}.pos-rm{left:84%;top:50%}.pos-cm1{left:32%;top:50%}.pos-cm2{left:50%;top:48%}.pos-cm3{left:68%;top:50%}.pos-amc{left:50%;top:35%}.pos-am1{left:28%;top:36%}.pos-am2{left:50%;top:34%}.pos-am3{left:72%;top:36%}.pos-lw{left:20%;top:22%}.pos-rw{left:80%;top:22%}.pos-st{left:50%;top:18%}.pos-st1{left:42%;top:20%}.pos-st2{left:58%;top:20%}
.lineup-side-boxes{display:flex;flex-direction:column;gap:14px}.lineup-side-card{padding:18px}.lineup-side-card h3{margin:0 0 12px;color:#7ed957;text-transform:uppercase}.lineup-side-card ol{margin:0;padding-left:0;list-style:none}.lineup-side-card li{display:flex;align-items:center;gap:10px;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.08)}.lineup-side-card li b{background:#6b0d13;border-radius:5px;padding:4px 7px}.module-mini strong{font-size:34px;color:#fff}
.lineup-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.checkline{display:flex;gap:10px;align-items:center;margin-top:12px}.table-actions{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:980px){.lineup-tv-grid{grid-template-columns:1fr}.football-pitch{height:540px}.lineup-match-vs{gap:12px;flex-wrap:wrap}.lineup-match-vs img{width:50px;height:50px}.player-photo{width:56px;height:56px}.player-label{min-width:88px;padding:4px 7px}.player-label strong{font-size:11px}.lineup-admin-grid{grid-template-columns:1fr}.home-lineup-hero{padding:14px;margin:14px}.football-pitch{height:500px}}

/* v86 - multilingua, comunicati e ultimo tesserato */
.language-switcher{display:flex;gap:6px;align-items:center;margin-left:8px;flex-wrap:wrap}
.language-switcher a{display:inline-flex;gap:4px;align-items:center;padding:6px 8px;border:1px solid rgba(255,255,255,.15);border-radius:999px;background:rgba(255,255,255,.06);font-size:12px;color:#fff;text-decoration:none}
.language-switcher a.active,.language-switcher a:hover{background:linear-gradient(135deg,#0d8d4c,#7b1218);border-color:#d8b15a;color:#fff}
.home-breaking-news{margin:22px auto;max-width:1180px;border-radius:22px;padding:18px 22px;color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 50px rgba(0,0,0,.35);display:grid;grid-template-columns:auto 1fr;gap:8px 18px;align-items:center;overflow:hidden;position:relative}
.home-breaking-news:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 30%,rgba(255,255,255,.16),transparent 30%);pointer-events:none}
.home-breaking-news span{position:relative;z-index:1;text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:#d8b15a;font-weight:800}
.home-breaking-news strong{position:relative;z-index:1;font-size:18px}
.home-breaking-news p{position:relative;z-index:1;grid-column:1/-1;margin:0;font-size:15px;line-height:1.5;color:#fff}
.home-breaking-news.notice-gold{background:linear-gradient(135deg,#5b0a0a,#171717 45%,#d8b15a33)}
.home-breaking-news.notice-green{background:linear-gradient(135deg,#073b27,#101010 55%,#0d8d4c55)}
.home-breaking-news.notice-burgundy{background:linear-gradient(135deg,#5b0a0a,#111 65%,#7b1218)}
.home-last-member{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px}
.home-last-member span{text-transform:uppercase;letter-spacing:.12em;color:#d8b15a;font-size:12px;font-weight:800}
.home-last-member h2{font-size:clamp(22px,3vw,38px);margin:4px 0;color:#fff}
.home-last-member p{margin:0;color:#fff;opacity:.85}
@media(max-width:900px){.language-switcher{margin:14px 0 0}.language-switcher a span{display:none}.home-last-member{display:block}.home-last-member .btn{margin-top:16px}.home-breaking-news{grid-template-columns:1fr}}
.language-admin-table{overflow:auto;max-width:100%}.language-admin-table textarea{min-width:160px;width:100%}

/* v87 - Tessera del Tifoso: rettangoli nome/numero più lunghi e testo adattivo */
.front-card .card-name,
.front-card .card-number{
  background:#fff!important;
  color:#111!important;
  border-radius:8px!important;
  box-sizing:border-box!important;
  padding:0 10px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:clip!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  line-height:1!important;
}
.front-card .card-name{
  left:13.2%!important;
  top:65.9%!important;
  width:46.8%!important;
  height:8.2%!important;
  font-size:clamp(10px,1.02vw,15px)!important;
}
.front-card .card-number{
  left:13.2%!important;
  top:79.8%!important;
  width:46.8%!important;
  height:8.2%!important;
  font-size:clamp(10px,1.02vw,15px)!important;
}
@media(max-width:900px){
  .front-card .card-name,
  .front-card .card-number{font-size:clamp(9px,2.8vw,13px)!important;padding:0 7px!important;border-radius:6px!important;}
}
@media print{
  .front-card .card-name,
  .front-card .card-number{font-size:7.5pt!important;padding:0 2.5mm!important;border-radius:2mm!important;}
}

/* v91 shop/consegna/FAQ */
.personalizzazione-box{border:1px solid rgba(216,177,90,.35);background:rgba(255,255,255,.04);border-radius:16px;padding:14px;margin:14px 0}.personalizzazione-box h3{margin:0 0 6px;font-size:1.05rem}.faq-section{padding-top:20px}.faq-list{display:grid;gap:10px}.faq-item{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:12px 16px}.faq-item summary{cursor:pointer;font-weight:800;color:#fff}.faq-item div{margin-top:10px;color:#eee;line-height:1.55}.btn.small{padding:6px 10px;font-size:.85rem}.btn.danger{background:#7d1212;color:#fff}.ship-field input:disabled{opacity:.55}.muted{color:#cfcfcf}.alert.err{background:rgba(125,18,18,.25);border:1px solid rgba(255,80,80,.35)}

/* v92 - Sponsor: loghi più grandi, vetrina e convenzioni */
.sponsors-logo-slider{padding:28px 0 32px!important;overflow:hidden!important}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-track{animation-duration:30s!important;padding:8px 0 12px!important}
.sponsors-logo-slider .sponsor-chain{gap:36px!important;padding-right:36px!important}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item,
.sponsors-logo-slider .sponsor-logo-item{min-width:260px!important;height:150px!important;padding:6px!important;border-radius:20px!important;background:#fff!important;overflow:hidden!important}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item img,
.sponsors-logo-slider .sponsor-logo-item img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;display:block!important}
.sponsors-showcase-page{padding-top:30px}.sponsor-hero-pro{background:linear-gradient(135deg,rgba(2,65,33,.9),rgba(7,8,7,.96) 46%,rgba(113,10,18,.86));border:1px solid rgba(212,166,69,.36)}
.sponsor-showcase-sections{display:grid;gap:22px;margin-bottom:22px}.sponsor-tier .panel-head h2{font-size:24px}.sponsor-tier-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sponsor-tier-main-sponsor .sponsor-tier-grid{grid-template-columns:1fr}.sponsor-showcase-card{display:grid;grid-template-columns:250px minmax(0,1fr);gap:20px;align-items:center;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:18px;box-shadow:0 18px 45px rgba(0,0,0,.35)}.sponsor-tier-main-sponsor .sponsor-showcase-card{grid-template-columns:360px minmax(0,1fr);padding:24px;background:linear-gradient(135deg,rgba(212,166,69,.12),rgba(255,255,255,.045))}.sponsor-showcase-logo{height:170px;background:#fff;border-radius:20px;display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid rgba(212,166,69,.36);overflow:hidden}.sponsor-tier-main-sponsor .sponsor-showcase-logo{height:220px}.sponsor-showcase-logo img{width:100%;height:100%;object-fit:contain}.sponsor-showcase-info h3{margin:0 0 8px;color:#fff;font-size:28px;text-transform:uppercase}.sponsor-showcase-info p{color:#fff;line-height:1.5;margin:0 0 12px}.sponsor-action-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.btn.mini{padding:8px 12px!important;border-radius:999px!important;font-size:12px!important;line-height:1!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.sponsor-offers-panel{margin:22px 0}.sponsor-offers-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sponsor-offer-card{display:flex;gap:14px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:15px;min-height:160px}.offer-logo{width:110px;min-width:110px;height:110px;background:#fff;border-radius:16px;padding:7px;display:flex;align-items:center;justify-content:center;overflow:hidden}.offer-logo img{width:100%;height:100%;object-fit:contain}.offer-body h3{margin:4px 0 4px;color:#fff;font-size:20px}.offer-body small{display:block;color:rgba(255,255,255,.72);font-weight:800;margin-bottom:7px}.offer-level{display:inline-flex;background:rgba(212,166,69,.18);border:1px solid rgba(212,166,69,.45);color:var(--gold);padding:5px 9px;border-radius:999px;font-size:11px;font-weight:1000;text-transform:uppercase}.offer-discount{display:block;color:#fff;background:linear-gradient(90deg,var(--burg2),var(--green));padding:8px 10px;border-radius:12px;margin:8px 0;font-size:17px}.offer-body p{color:#fff;margin:7px 0;line-height:1.42}.offer-address{font-size:13px;color:rgba(255,255,255,.86)!important}.sponsor-bottom-layout{display:block;max-width:880px;margin:0 auto}.sponsor-bottom-layout .sponsor-form-panel{width:100%}
@media(max-width:1000px){.sponsor-tier-grid,.sponsor-offers-grid{grid-template-columns:1fr}.sponsor-showcase-card,.sponsor-tier-main-sponsor .sponsor-showcase-card{grid-template-columns:1fr}.sponsor-showcase-logo,.sponsor-tier-main-sponsor .sponsor-showcase-logo{height:170px}.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item,.sponsors-logo-slider .sponsor-logo-item{min-width:220px!important;height:125px!important}}
@media(max-width:650px){.sponsor-offer-card{display:block}.offer-logo{width:100%;height:130px;margin-bottom:12px}.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item,.sponsors-logo-slider .sponsor-logo-item{min-width:185px!important;height:105px!important}.sponsor-showcase-info h3{font-size:22px}}

/* v93 - Sponsor homepage più grandi; pagina sponsor ripristinata lista+form */
.sponsors-logo-slider{padding:34px 0 40px!important;overflow:hidden!important}
.sponsors-logo-slider .panel-head{padding-left:14px;padding-right:14px}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-track{animation-duration:28s!important;padding:10px 0 16px!important}
.sponsors-logo-slider .sponsor-chain{gap:22px!important;padding-right:22px!important}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item,
.sponsors-logo-slider .sponsor-logo-item{
  min-width:340px!important;
  height:190px!important;
  padding:4px!important;
  border-radius:22px!important;
  background:#fff!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item img,
.sponsors-logo-slider .sponsor-logo-item img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  display:block!important;
}
@media(max-width:1000px){
  .sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item,
  .sponsors-logo-slider .sponsor-logo-item{min-width:280px!important;height:155px!important}
}
@media(max-width:650px){
  .sponsors-logo-slider .sponsor-marquee.is-chain .sponsor-logo-item,
  .sponsors-logo-slider .sponsor-logo-item{min-width:230px!important;height:130px!important}
}

/* Sporting CMS 1.0.1 - eventi live sulla formazione */
.player-photo{position:relative;overflow:visible}
.player-photo>img{border-radius:50%;display:block}
.player-live-events{position:absolute;right:-18px;top:-12px;display:flex;flex-direction:column;gap:3px;z-index:8;pointer-events:none}
.player-event{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 4px;border-radius:999px;background:rgba(0,0,0,.88);font-size:17px;line-height:1;box-shadow:0 3px 10px rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.55)}
.player-event b{position:absolute;right:-7px;top:-7px;width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#111;font-size:10px;font-weight:900;border:1px solid #111}
.player-event.event-sub-in,.player-event.event-sub-out{font-weight:900;color:#fff;font-size:18px}
.player-event.event-sub-in{background:#08743c}.player-event.event-sub-out{background:#6b0d13}
.lineup-side-card li .player-live-events{position:static;flex-direction:row;margin-left:auto;gap:4px}
.lineup-side-card li .player-event{min-width:22px;height:22px;font-size:14px}
@media(max-width:700px){.player-live-events{right:-14px;top:-10px}.player-event{min-width:22px;height:22px;font-size:14px}}

/* Sporting CMS 1.0.2 - eventi live sempre visibili */
.pitch-player .player-label{position:relative;overflow:visible;padding-right:8px}
.pitch-player .player-label .player-live-events{position:absolute;left:50%;top:-30px;right:auto;transform:translateX(-50%);display:flex;flex-direction:row;gap:4px;z-index:50;white-space:nowrap}
.pitch-player .player-label .player-event{min-width:25px;height:25px;font-size:16px}
.football-pitch,.football-pitch-card,.home-lineup-hero{overflow:visible}
@media(max-width:700px){.pitch-player .player-label .player-live-events{top:-27px}.pitch-player .player-label .player-event{min-width:22px;height:22px;font-size:14px}}

/* Sporting CMS - Biglietteria, abbonamenti e Live */
.ticket-events-grid,.subscriptions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.ticket-event-card{--ticket-primary:#0b6b3a;--ticket-secondary:#6b1320;--ticket-accent:#d8b15a;background:linear-gradient(135deg,var(--ticket-primary),#101312 48%,var(--ticket-secondary));border:1px solid color-mix(in srgb,var(--ticket-accent) 55%,transparent);border-radius:24px;padding:22px;box-shadow:0 24px 55px rgba(0,0,0,.35)}.ticket-event-round{display:inline-flex;background:var(--ticket-accent);color:#111!important;font-weight:1000;padding:7px 13px;border-radius:999px;font-size:12px;letter-spacing:.06em}.ticket-event-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:22px 0}.ticket-event-teams>div{text-align:center}.ticket-event-teams b{display:block;font-size:18px;color:#fff}.ticket-event-teams>strong{font-size:28px;color:var(--ticket-accent)}.ticket-logo-shell{width:100px;height:100px;border-radius:20px;background:#fff;padding:8px;display:flex;margin:0 auto 9px;align-items:center;justify-content:center}.ticket-logo-shell img{width:100%;height:100%;object-fit:contain}.ticket-event-meta{display:grid;gap:7px;margin-bottom:18px}.ticket-event-meta span{color:#fff;font-weight:700}.two-col-ticket-buy{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px}.ticket-preview-mini{background:linear-gradient(135deg,#0b6b3a,#111,#6b1320);border-radius:24px;padding:30px}.centered-result{text-align:center;max-width:720px;margin:auto}.ticket-page-shell{padding:44px 20px 70px}.real-match-ticket{--tp:#0b6b3a;--ts:#6b1320;--ta:#d8b15a;max-width:1100px;margin:0 auto;background:#f4f1e9;color:#111!important;border-radius:24px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.55);position:relative}.real-match-ticket:before,.real-match-ticket:after{content:"";position:absolute;right:245px;width:34px;height:34px;border-radius:50%;background:#0d0f0e;z-index:5}.real-match-ticket:before{top:-17px}.real-match-ticket:after{bottom:-17px}.real-match-ticket *{color:#111}.ticket-topbar{background:linear-gradient(90deg,var(--tp),var(--ts));padding:18px 26px;display:flex;justify-content:space-between;align-items:center}.ticket-topbar span,.ticket-topbar strong{display:block;color:#fff!important}.ticket-topbar span{font-size:12px;letter-spacing:.14em}.ticket-topbar strong{font-size:24px}.ticket-round-badge{background:var(--ta);color:#111!important;border-radius:999px;padding:8px 14px;font-weight:1000}.ticket-main{display:grid;grid-template-columns:1fr 245px}.ticket-match-area{padding:30px 34px}.ticket-stub{border-left:2px dashed #999;padding:24px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff}.ticket-stub-title{font-size:12px;letter-spacing:.2em;font-weight:1000;margin-bottom:10px}.ticket-qr{width:175px;height:175px;object-fit:contain}.ticket-stub b{font-size:12px;margin-top:8px}.ticket-stub small{color:#444!important}.ticket-teams-row{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center}.ticket-team{text-align:center}.ticket-team-logo{width:120px;height:120px;background:#fff;border-radius:22px;padding:9px;box-shadow:0 8px 24px rgba(0,0,0,.15);margin:0 auto 12px}.ticket-team-logo img{width:100%;height:100%;object-fit:contain}.ticket-team h2{font-size:22px;line-height:1.1;margin:0;font-weight:1000;text-transform:uppercase}.ticket-vs{font-size:32px;color:var(--ta)!important;font-weight:1000}.ticket-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}.ticket-info-grid>div{border:1px solid #c8c2b6;background:#fff;border-radius:13px;padding:11px 13px}.ticket-info-grid span{display:block;font-size:10px;color:#555!important;font-weight:900;letter-spacing:.08em}.ticket-info-grid b{display:block;font-size:14px;margin-top:3px}.ticket-code-line{display:flex;justify-content:space-between;align-items:center;margin-top:20px;border-top:1px solid #c8c2b6;padding-top:15px;font-weight:1000}.ticket-status{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:1000}.ticket-status.ok{background:#c9f5d9;color:#075c2f!important}.ticket-status.bad{background:#ffd6d6;color:#7a1010!important}.ticket-status.wait{background:#fff0ba;color:#6c5100!important}.ticket-bottom{background:#181b19;color:#fff!important;padding:10px 26px;font-size:11px}.ticket-actions{display:flex;justify-content:center;gap:10px;margin:22px auto}.verify-card{max-width:620px;margin:auto;text-align:center;border-radius:28px;padding:38px;background:#1a1d1b;border:2px solid #555}.verify-card.valid{border-color:#1cc66a}.verify-card.invalid{border-color:#d84141}.verify-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;margin:0 auto 15px;font-size:45px;font-weight:1000;background:#111}.verify-card.valid .verify-icon{color:#1cc66a}.verify-card.invalid .verify-icon{color:#d84141}.account-items-list{display:grid;gap:12px}.account-ticket-row{display:flex;align-items:center;gap:16px;justify-content:space-between}.subscription-plan-card{--sp:#0b6b3a;--ss:#6b1320;background:linear-gradient(135deg,var(--sp),#131513,var(--ss));border:1px solid rgba(216,177,90,.45);border-radius:26px;padding:26px}.subscription-plan-card>span{color:#d8b15a;font-weight:900}.subscription-price{font-size:35px;font-weight:1000;color:#fff}.subscription-pass-page{padding:50px 20px}.subscription-pass{--sp:#0b6b3a;--ss:#6b1320;max-width:920px;margin:auto;display:grid;grid-template-columns:1fr 260px;background:linear-gradient(135deg,var(--sp),#101210 52%,var(--ss));border-radius:28px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.55)}.subscription-pass-copy{padding:34px}.subscription-pass-copy h1{font-size:44px;margin:8px 0}.subscription-pass-copy h2{color:#d8b15a}.subscription-pass-copy>div{display:grid;margin-top:16px}.subscription-pass-copy small{color:#cfcfcf}.subscription-pass-qr{background:#fff;padding:24px;display:flex;flex-direction:column;align-items:center;justify-content:center}.subscription-pass-qr img{width:190px;height:190px}.subscription-pass-qr span{color:#111;font-weight:1000;margin-top:12px}.live-player-card{background:#161916;border-radius:26px;padding:24px}.responsive-video{position:relative;padding-top:56.25%;overflow:hidden;border-radius:18px}.responsive-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.live-locked{text-align:center;padding:60px 20px;border:1px dashed #777;border-radius:18px}.narrow-form{max-width:700px;margin:auto}
@media(max-width:800px){.ticket-events-grid,.subscriptions-grid,.two-col-ticket-buy{grid-template-columns:1fr}.ticket-main{grid-template-columns:1fr}.ticket-stub{border-left:0;border-top:2px dashed #999}.real-match-ticket:before,.real-match-ticket:after{display:none}.ticket-teams-row{gap:8px}.ticket-team-logo{width:86px;height:86px}.ticket-team h2{font-size:15px}.ticket-vs{font-size:23px}.ticket-info-grid{grid-template-columns:1fr}.subscription-pass{grid-template-columns:1fr}.account-ticket-row{align-items:flex-start;flex-wrap:wrap}}
@media print{body{background:#fff!important}.site-header,footer,.no-print,.ticket-actions{display:none!important}.ticket-page-shell,.subscription-pass-page{padding:0!important}.real-match-ticket{box-shadow:none;max-width:100%;border:1px solid #aaa}.ticket-main{grid-template-columns:1fr 220px}.ticket-team-logo{width:100px;height:100px}.ticket-team h2{font-size:18px}.subscription-pass{box-shadow:none;max-width:100%}}
.home-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.home-service-card{display:flex;align-items:center;gap:15px;border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:20px;text-decoration:none;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));transition:.2s transform,.2s border-color}.home-service-card:hover{transform:translateY(-3px);border-color:rgba(216,177,90,.7)}.home-service-card>span{font-size:36px}.home-service-card h3{margin:0 0 5px;color:#fff}.home-service-card p{margin:0;color:#ddd}.ticket-service{box-shadow:inset 4px 0 #d8b15a}.subscription-service{box-shadow:inset 4px 0 #0b8c4d}.live-service{box-shadow:inset 4px 0 #b3172b}@media(max-width:800px){.home-services-grid{grid-template-columns:1fr}}

/* Sporting CMS 1.2.2 ticket fix */
@import url('ticket-fix.css');

/* Ticketing/PWA responsive final */
html,body{max-width:100%;overflow-x:hidden}img,svg,video,iframe{max-width:100%}.ticket-owned-box{margin:14px 0;padding:14px;border-radius:16px;background:rgba(14,122,66,.18);border:1px solid rgba(65,210,130,.35)}.ticket-owned-box>strong{display:block;margin-bottom:9px;color:#fff}.ticket-owned-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;border-top:1px solid rgba(255,255,255,.1)}.ticket-owned-row:first-of-type{border-top:0}.ticket-owned-row span{margin-right:auto;color:#fff;font-weight:700}
.ticketone-page{padding:44px 20px}.ticketone-card{max-width:1180px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 300px;background:#fff;color:#111;border-radius:28px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.5);font-family:Arial,sans-serif}.ticketone-main{position:relative;padding:34px 42px 0;background:linear-gradient(180deg,#fff,#f7f7f5)}.ticketone-main:before{content:"";position:absolute;inset:auto 0 0;height:110px;background:linear-gradient(90deg,var(--tk-green),#0d281b 45%,var(--tk-burgundy));clip-path:polygon(0 55%,8% 38%,17% 63%,26% 44%,35% 61%,45% 42%,55% 65%,65% 43%,74% 60%,84% 37%,92% 55%,100% 34%,100% 100%,0 100%)}.ticketone-kicker{text-align:center;font-size:14px;letter-spacing:.15em;font-weight:900;color:#333}.ticketone-main h1{text-align:center;margin:8px 0 24px;font-size:34px;color:#111}.ticketone-teams{display:grid;grid-template-columns:1fr 72px 1fr;align-items:center;gap:18px}.ticketone-team{text-align:center}.ticketone-team img{width:150px;height:150px;object-fit:contain;display:block;margin:0 auto 12px}.ticketone-team strong{display:block;font-size:25px;line-height:1.05;text-transform:uppercase;color:#111}.ticketone-vs{text-align:center;font-size:30px;font-weight:1000;color:var(--tk-burgundy)}.ticketone-meta,.ticketone-details{display:grid;gap:0;border-top:1px solid #d2d2d2;margin-top:25px}.ticketone-meta{grid-template-columns:1fr 1fr 2fr}.ticketone-details{grid-template-columns:repeat(4,1fr);border-bottom:1px solid #d2d2d2}.ticketone-meta>div,.ticketone-details>div{padding:15px;border-right:1px solid #ddd}.ticketone-meta>div:last-child,.ticketone-details>div:last-child{border-right:0}.ticketone-meta span,.ticketone-details span{display:block;font-size:11px;letter-spacing:.08em;color:#555;font-weight:800}.ticketone-meta b,.ticketone-details b{display:block;margin-top:4px;font-size:15px;color:#111}.ticketone-crowd{position:relative;z-index:2;margin-top:28px;height:92px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:15px;color:#fff;font-size:24px;font-style:italic;font-weight:800}.ticketone-stub{position:relative;padding:30px 28px;background:linear-gradient(155deg,var(--tk-green),#09351f 45%,var(--tk-burgundy));color:#fff;text-align:center;border-left:3px dashed rgba(255,255,255,.85)}.ticketone-stub:before,.ticketone-stub:after{content:"";position:absolute;left:-15px;width:28px;height:28px;border-radius:50%;background:#050806}.ticketone-stub:before{top:-14px}.ticketone-stub:after{bottom:-14px}.ticketone-brand{font-size:28px;font-style:italic;font-weight:900}.ticketone-number{margin:38px 0 18px}.ticketone-number span{display:block;font-size:12px;letter-spacing:.12em}.ticketone-number b{display:block;margin-top:6px;font-size:22px}.ticketone-qr{width:210px;height:210px;background:#fff;border-radius:18px;padding:10px}.ticketone-status{margin:20px auto 8px;padding:10px;border-radius:999px;font-weight:900}.ticketone-status.ok{background:#d7f8df;color:#07592e}.ticketone-status.wait{background:#fff0bd;color:#664d00}.ticketone-stub small{display:block;line-height:1.4}.ticket-actions{display:flex;justify-content:center;gap:12px;margin:24px auto;flex-wrap:wrap}
@media(max-width:850px){.site-header{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.ticketone-page{padding:18px 10px}.ticketone-card{grid-template-columns:1fr;border-radius:20px}.ticketone-main{padding:24px 16px 0}.ticketone-main h1{font-size:25px}.ticketone-teams{grid-template-columns:1fr 44px 1fr;gap:7px}.ticketone-team img{width:90px;height:90px}.ticketone-team strong{font-size:15px}.ticketone-vs{font-size:21px}.ticketone-meta{grid-template-columns:1fr 1fr}.ticketone-meta>div:last-child{grid-column:1/-1;border-top:1px solid #ddd}.ticketone-details{grid-template-columns:1fr 1fr}.ticketone-details>div:nth-child(2){border-right:0}.ticketone-details>div:nth-child(n+3){border-top:1px solid #ddd}.ticketone-crowd{height:72px;font-size:17px}.ticketone-stub{border-left:0;border-top:3px dashed rgba(255,255,255,.85);padding:26px 16px}.ticketone-stub:before,.ticketone-stub:after{top:-15px;bottom:auto}.ticketone-stub:before{left:-14px}.ticketone-stub:after{left:auto;right:-14px}.ticketone-qr{width:190px;height:190px}.account-client-menu{display:flex!important;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.account-client-menu::-webkit-scrollbar{display:none}.account-client-menu a{flex:0 0 auto}.section,.page-hero{padding-left:14px;padding-right:14px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}}
@media print{@page{size:A4 landscape;margin:10mm}body{background:#fff!important}.site-header,footer,.no-print,.ticket-actions{display:none!important}.ticketone-page{padding:0}.ticketone-card{box-shadow:none;max-width:100%;grid-template-columns:minmax(0,1fr) 280px;border:1px solid #bbb}.ticketone-main{padding:22px 28px 0}.ticketone-team img{width:110px;height:110px}.ticketone-team strong{font-size:20px}.ticketone-crowd{height:72px}.ticketone-qr{width:175px;height:175px}}

/* Sporting CMS 1.4.1 - Stampa biglietto compatta su A4 */
@media print {
  @page {
    size: A4 portrait;
    margin: 12mm;
  }

  html,
  body {
    width: 210mm !important;
    min-height: 297mm !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  .site-header,
  footer,
  .no-print,
  .ticket-actions {
    display: none !important;
  }

  .ticketone-page {
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: flex-start !important;
  }

  .ticketone-card {
    width: 186mm !important;
    max-width: 186mm !important;
    min-width: 186mm !important;
    grid-template-columns: minmax(0, 1fr) 46mm !important;
    border: .25mm solid #b8b8b8 !important;
    border-radius: 5mm !important;
    box-shadow: none !important;
    overflow: hidden !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .ticketone-main {
    padding: 5mm 6mm 0 !important;
  }

  .ticketone-kicker {
    font-size: 7.5pt !important;
    letter-spacing: .11em !important;
  }

  .ticketone-main h1 {
    margin: 1.5mm 0 3mm !important;
    font-size: 16pt !important;
  }

  .ticketone-teams {
    grid-template-columns: 1fr 13mm 1fr !important;
    gap: 2mm !important;
  }

  .ticketone-team img {
    width: 26mm !important;
    height: 26mm !important;
    margin-bottom: 1.5mm !important;
  }

  .ticketone-team strong {
    font-size: 9.5pt !important;
    line-height: 1.05 !important;
  }

  .ticketone-vs {
    font-size: 14pt !important;
  }

  .ticketone-meta,
  .ticketone-details {
    margin-top: 3mm !important;
  }

  .ticketone-meta > div,
  .ticketone-details > div {
    padding: 2.5mm 2.8mm !important;
  }

  .ticketone-meta span,
  .ticketone-details span {
    font-size: 6pt !important;
  }

  .ticketone-meta b,
  .ticketone-details b {
    margin-top: .7mm !important;
    font-size: 8pt !important;
    line-height: 1.15 !important;
  }

  .ticketone-crowd {
    height: 18mm !important;
    margin-top: 3mm !important;
    padding-bottom: 2.5mm !important;
    font-size: 10.5pt !important;
  }

  .ticketone-stub {
    padding: 5mm 4mm 0 !important;
    border-left-width: .6mm !important;
  }

  .ticketone-stub::before,
  .ticketone-stub::after {
    left: -2.8mm !important;
    width: 5.5mm !important;
    height: 5.5mm !important;
  }

  .ticketone-stub::before {
    top: -2.8mm !important;
  }

  .ticketone-stub::after {
    bottom: -2.8mm !important;
  }

  .ticketone-brand {
    font-size: 11pt !important;
  }

  .ticketone-number {
    margin: 6mm 0 3mm !important;
  }

  .ticketone-number span {
    font-size: 6.5pt !important;
  }

  .ticketone-number b {
    margin-top: 1mm !important;
    font-size: 10pt !important;
    white-space: nowrap !important;
  }

  .ticketone-qr {
    width: 34mm !important;
    height: 34mm !important;
    padding: 1.5mm !important;
    border-radius: 3mm !important;
  }

  .ticketone-status {
    margin: 3mm auto 1.5mm !important;
    padding: 2mm !important;
    font-size: 7.5pt !important;
  }

  .ticketone-stub small {
    font-size: 6.5pt !important;
  }
}

/* Sporting CMS 1.4.2 - Biglietteria pubblica ridisegnata a lista */
.ticket-list-page{padding-top:10px}
.ticket-list-wrap{display:grid;gap:18px}
.ticket-list-card{display:grid;grid-template-columns:120px minmax(0,1fr) 290px;gap:0;border-radius:26px;overflow:hidden;border:1px solid rgba(216,177,90,.22);background:linear-gradient(135deg,rgba(7,16,12,.98),rgba(14,18,17,.98));box-shadow:0 22px 60px rgba(0,0,0,.34)}
.ticket-list-card.is-selected{box-shadow:0 0 0 2px rgba(216,177,90,.7),0 22px 60px rgba(0,0,0,.38)}
.ticket-list-date{background:linear-gradient(180deg,var(--ticket-primary),color-mix(in srgb,var(--ticket-primary) 46%,#0e1210));display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 10px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.ticket-list-date-day{font-size:40px;line-height:1;font-weight:1000;color:#fff}
.ticket-list-date-month{margin-top:4px;font-size:14px;letter-spacing:.18em;font-weight:900;color:#f2e3a7}
.ticket-list-date-time{margin-top:10px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);font-size:14px;font-weight:800;color:#fff}
.ticket-list-main{padding:22px 24px 20px}
.ticket-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}
.ticket-list-badges{display:flex;flex-wrap:wrap;gap:8px}
.ticket-badge{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:rgba(216,177,90,.16);border:1px solid rgba(216,177,90,.34);font-size:12px;letter-spacing:.04em;font-weight:900;color:#fff}
.ticket-badge.alt{background:rgba(11,107,58,.18);border-color:rgba(33,166,97,.35)}
.ticket-badge.ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12);color:#d9ddda}
.ticket-list-state{display:inline-flex;align-items:center;justify-content:center;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:1000;white-space:nowrap}
.ticket-list-state.is-open{background:rgba(39,185,102,.18);border:1px solid rgba(75,228,142,.45);color:#bff5d3}
.ticket-list-state.is-closed{background:rgba(206,62,62,.14);border:1px solid rgba(255,125,125,.35);color:#ffd0d0}
.ticket-list-match-row{display:grid;grid-template-columns:minmax(0,1fr) 74px minmax(0,1fr);gap:16px;align-items:center}
.ticket-list-team{text-align:center;min-width:0}
.ticket-list-team-logo{width:94px;height:94px;border-radius:22px;background:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;padding:10px;box-shadow:0 10px 26px rgba(0,0,0,.22)}
.ticket-list-team-logo img{width:100%;height:100%;object-fit:contain;display:block}
.ticket-list-team strong{display:block;font-size:24px;line-height:1.12;color:#fff;text-transform:uppercase;word-break:break-word}
.ticket-list-vs{display:grid;place-items:center;font-size:26px;font-weight:1000;color:var(--ticket-accent)}
.ticket-list-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.ticket-list-meta>div{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09)}
.ticket-list-meta span,.ticket-list-form label span{display:block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:900;color:#a7ada9}
.ticket-list-meta b{display:block;margin-top:5px;font-size:14px;line-height:1.35;color:#fff;word-break:break-word}
.ticket-list-prices{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.ticket-list-prices span{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:999px;background:rgba(107,19,32,.26);border:1px solid rgba(255,255,255,.1);font-size:14px;color:#fff}
.ticket-list-prices b{color:#f5d995}
.ticket-list-side{padding:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--ticket-secondary) 75%,#121615),color-mix(in srgb,var(--ticket-primary) 30%,#121615));border-left:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;justify-content:center}
.ticket-list-price-label{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:#f0e4b0;text-align:center}
.ticket-list-price-value{text-align:center;font-size:40px;line-height:1.05;font-weight:1000;color:#fff;margin-top:4px}
.ticket-list-side-note{text-align:center;color:#d0d5d0;margin-top:2px;margin-bottom:16px}
.ticket-list-form{display:grid;gap:12px;margin-top:4px}
.ticket-list-form label{display:grid;gap:6px}
.ticket-list-form select,.ticket-list-form input{width:100%;padding:13px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);color:#fff;font-size:15px}
.ticket-list-form option{color:#111}
.ticket-list-buy-btn{width:100%;justify-content:center;margin-top:4px}
.ticket-list-login-hint{margin:12px 0 0;color:#e6e8e6;font-size:13px;line-height:1.45;text-align:center}
.ticket-owned-box-light{margin-top:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}
.ticket-owned-box-light>strong{color:#fff}
.ticket-owned-row-dark{border-top:1px solid rgba(255,255,255,.08)}
.ticket-owned-row-dark span{color:#fff}
.sold-out-ticket-clean{margin-top:16px;padding:14px 16px;border-radius:16px;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-weight:900;color:#fff}
@media(max-width:1100px){.ticket-list-card{grid-template-columns:96px minmax(0,1fr) 260px}.ticket-list-team strong{font-size:20px}.ticket-list-team-logo{width:82px;height:82px}}
@media(max-width:860px){.ticket-list-card{grid-template-columns:1fr}.ticket-list-date{flex-direction:row;justify-content:center;gap:10px;padding:14px 16px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}.ticket-list-date-day{font-size:28px}.ticket-list-date-month{margin-top:0}.ticket-list-date-time{margin-top:0}.ticket-list-main{padding:20px 16px}.ticket-list-head{flex-direction:column;align-items:flex-start}.ticket-list-match-row{grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr);gap:10px}.ticket-list-team-logo{width:74px;height:74px;margin-bottom:10px}.ticket-list-team strong{font-size:16px}.ticket-list-vs{font-size:20px}.ticket-list-meta{grid-template-columns:1fr}.ticket-list-side{border-left:0;border-top:1px solid rgba(255,255,255,.08);padding:18px 16px}.ticket-list-price-value{font-size:34px}}
@media(max-width:520px){.ticket-list-badges{gap:6px}.ticket-badge{font-size:11px;padding:6px 10px}.ticket-list-date{gap:8px;flex-wrap:wrap}.ticket-list-team strong{font-size:14px}.ticket-list-prices span{font-size:13px;padding:9px 12px}.ticket-owned-row{align-items:flex-start}.ticket-owned-row .btn{width:100%;justify-content:center}}

/* Sporting CMS 1.5.0 - Vetrine sponsor, offerte e coupon tesserati */
.sponsor-list-item-clickable{position:relative;overflow:hidden;isolation:isolate;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.sponsor-list-item-clickable:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--sp-primary) 14%,transparent),color-mix(in srgb,var(--sp-secondary) 12%,transparent));z-index:-1;opacity:.8}
.sponsor-list-item-clickable:hover{transform:translateY(-3px);border-color:rgba(216,177,90,.55);box-shadow:0 18px 45px rgba(0,0,0,.28)}
.sponsor-list-cover-link{position:absolute;inset:0;z-index:1}
.sponsor-list-info,.sponsor-list-logo{position:relative;z-index:2;pointer-events:none}
.sponsor-front-action{pointer-events:auto;position:relative;z-index:3}
.sponsor-list-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sponsor-list-title-row h3{margin:0}
.sponsor-offer-count{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(216,177,90,.16);border:1px solid rgba(216,177,90,.35);font-size:11px;font-weight:900;color:#f2dda2}
.sponsor-list-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}

.offers-hub-hero{position:relative;overflow:hidden}
.offers-hub-page{padding-top:24px}
.offers-hub-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.offers-hub-heading h2{margin:4px 0 0;font-size:34px}
.offers-sponsor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.offers-sponsor-card{position:relative;min-height:360px;border-radius:26px;overflow:hidden;text-decoration:none;border:1px solid rgba(255,255,255,.11);background:#101512;box-shadow:0 22px 55px rgba(0,0,0,.3);display:flex;flex-direction:column;padding:24px;transition:transform .22s ease,border-color .22s ease}
.offers-sponsor-card:hover{transform:translateY(-5px);border-color:rgba(216,177,90,.65)}
.offers-sponsor-card-bg{position:absolute;inset:0;background:radial-gradient(circle at 18% 10%,color-mix(in srgb,var(--sp-primary) 74%,transparent),transparent 44%),radial-gradient(circle at 100% 100%,color-mix(in srgb,var(--sp-secondary) 74%,transparent),transparent 48%),linear-gradient(150deg,#121814,#090d0b);z-index:0}
.offers-sponsor-card-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 10%,rgba(0,0,0,.52) 100%)}
.offers-sponsor-logo,.offers-sponsor-copy{position:relative;z-index:1}
.offers-sponsor-logo{width:145px;height:145px;border-radius:28px;background:#fff;padding:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 15px 34px rgba(0,0,0,.28)}
.offers-sponsor-logo img{width:100%;height:100%;object-fit:contain}
.offers-sponsor-logo span{font-size:48px;font-weight:1000;color:#0b6b3a}
.offers-sponsor-copy{margin-top:auto;padding-top:28px}
.offers-sponsor-copy>span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:#e4c978}
.offers-sponsor-copy h3{margin:7px 0 10px;font-size:28px;line-height:1.05;color:#fff}
.offers-sponsor-copy p{margin:0 0 18px;color:#d9dedb;line-height:1.55}
.offers-sponsor-copy b{color:#fff}
.legacy-heading{margin-top:46px}
.legacy-offers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.legacy-offer-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:18px;align-items:center;padding:20px;border-radius:22px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1)}
.legacy-offer-logo{width:110px;height:110px;background:#fff;border-radius:22px;padding:10px;display:flex;align-items:center;justify-content:center}
.legacy-offer-logo img{width:100%;height:100%;object-fit:contain}
.legacy-offer-card h3{margin:5px 0;color:#fff}.legacy-offer-card b{color:#e8cc78}.legacy-offer-card p{margin:7px 0 0;color:#d3d7d4}

.storefront-hero{position:relative;padding:54px 20px 44px;overflow:hidden;background:linear-gradient(135deg,var(--sp-primary),#101512 50%,var(--sp-secondary))}
.storefront-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 10%,rgba(255,255,255,.16),transparent 34%),radial-gradient(circle at 92% 76%,rgba(216,177,90,.18),transparent 32%)}
.storefront-hero-glow{position:absolute;width:480px;height:480px;border-radius:50%;filter:blur(80px);background:rgba(216,177,90,.12);right:-100px;top:-180px}
.storefront-brand-card{position:relative;z-index:1;max-width:980px;margin:auto;text-align:center}
.storefront-back{display:inline-flex;margin-bottom:20px;color:#fff;text-decoration:none;font-weight:800}
.storefront-logo-wrap{width:190px;height:190px;border-radius:36px;background:#fff;padding:18px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;box-shadow:0 25px 65px rgba(0,0,0,.34)}
.storefront-logo-wrap img{width:100%;height:100%;object-fit:contain}
.storefront-logo-wrap span{font-size:70px;font-weight:1000;color:var(--sp-primary)}
.storefront-partner-type{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(216,177,90,.16);border:1px solid rgba(216,177,90,.4);color:#f4dd94;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.storefront-brand-card h1{margin:10px 0 12px;font-size:48px;line-height:1;color:#fff}
.storefront-brand-card>p{max-width:760px;margin:0 auto;color:#edf0ee;line-height:1.7;font-size:17px}
.storefront-contact-actions,.storefront-socials{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:24px}
.storefront-contact-actions a,.storefront-socials a{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;text-decoration:none;font-weight:800;transition:.2s}
.storefront-contact-actions a:hover,.storefront-socials a:hover{background:#fff;color:#111}
.storefront-socials{margin-top:12px}.storefront-socials a{font-size:13px}.storefront-socials a span{font-size:18px}
.storefront-body{padding-top:30px}
.storefront-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:34px}
.storefront-info-grid>div{padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.1)}
.storefront-info-grid>div.wide{grid-column:1/-1}
.storefront-info-grid span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:#aeb5b0}
.storefront-info-grid b{display:block;margin-top:6px;color:#fff;line-height:1.5}
.storefront-offers-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:22px}
.storefront-offers-heading h2{margin:4px 0 5px;font-size:34px}.storefront-offers-heading p{margin:0;color:#cfd4d1}
.member-mini-card{min-width:230px;padding:15px 18px;border-radius:18px;text-decoration:none;background:linear-gradient(135deg,var(--sp-primary),var(--sp-secondary));border:1px solid rgba(216,177,90,.38);box-shadow:0 14px 35px rgba(0,0,0,.22)}
.member-mini-card span,.member-mini-card small{display:block;color:#e7e9e7}.member-mini-card b{display:block;margin:4px 0;color:#fff;font-size:18px}.member-mini-card.is-missing{background:#222;border-color:#555}
.storefront-offers-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.storefront-offer-card{position:relative;border-radius:26px;overflow:hidden;background:linear-gradient(155deg,#f8f5ed,#fff);color:#111;border:1px solid rgba(216,177,90,.25);box-shadow:0 24px 60px rgba(0,0,0,.32)}
.storefront-offer-card:before{content:"";position:absolute;inset:0 0 auto;height:8px;background:linear-gradient(90deg,var(--coupon-primary),var(--coupon-accent),var(--coupon-secondary))}
.storefront-offer-card.is-locked{filter:saturate(.78)}
.storefront-offer-ribbon{position:absolute;top:24px;right:0;padding:8px 14px 8px 18px;border-radius:18px 0 0 18px;background:var(--coupon-secondary);color:#fff;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;z-index:2}
.storefront-offer-image{height:190px;background:#eceae5}.storefront-offer-image img{width:100%;height:100%;object-fit:cover}
.storefront-offer-content{padding:30px 26px 25px}
.storefront-offer-value{display:inline-flex;padding:8px 13px;border-radius:999px;background:var(--coupon-accent);color:#111;font-weight:1000;font-size:18px}
.storefront-offer-content h3{margin:13px 0 5px;font-size:32px;line-height:1.08;color:#111}
.storefront-offer-content h4{margin:0 0 16px;color:var(--coupon-primary);font-size:16px}
.storefront-offer-content>p{color:#333;line-height:1.65}
.storefront-offer-conditions{margin-top:16px;padding:14px 16px;border-radius:16px;background:#eeeae0;border:1px solid #ddd5c4}
.storefront-offer-conditions b,.storefront-offer-conditions span{display:block}.storefront-offer-conditions span{margin-top:5px;color:#444;line-height:1.45}
.storefront-offer-validity{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #ddd5c4;font-size:13px;color:#555}.storefront-offer-validity b{color:#111}
.storefront-offer-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}
.storefront-offer-locked-copy{margin-top:18px;padding:28px 18px;border-radius:20px;text-align:center;background:#ebe8e0;border:1px dashed #aaa}
.storefront-offer-locked-copy .lock-icon{display:block;font-size:34px;margin-bottom:8px}.storefront-offer-locked-copy b{display:block;font-size:18px}.storefront-offer-locked-copy p{color:#555}

.coupon-view-page{padding:48px 20px 70px;background:radial-gradient(circle at 50% 0,rgba(11,107,58,.16),transparent 42%)}
.coupon-display-shell{max-width:1220px;margin:auto}
.coupon-display-card{display:grid;grid-template-columns:330px minmax(0,1fr);overflow:hidden;border-radius:30px;background:#f4f0e6;color:#111;box-shadow:0 34px 90px rgba(0,0,0,.5);position:relative}
.coupon-display-card:before,.coupon-display-card:after{content:"";position:absolute;left:318px;width:24px;height:24px;border-radius:50%;background:#0a0d0b;z-index:4}.coupon-display-card:before{top:-12px}.coupon-display-card:after{bottom:-12px}
.coupon-display-logo-panel{padding:28px 22px;background:linear-gradient(150deg,var(--coupon-primary),#101512 54%,var(--coupon-secondary));text-align:center;border-right:2px dashed rgba(0,0,0,.34);color:#fff}
.coupon-display-club{font-size:10px;letter-spacing:.14em;font-weight:900;color:#f1dda0}
.coupon-display-logo{width:210px;height:200px;margin:22px auto 16px;padding:16px;border-radius:28px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 42px rgba(0,0,0,.3)}
.coupon-display-logo img{width:100%;height:100%;object-fit:contain}.coupon-display-logo span{font-size:70px;font-weight:1000;color:var(--coupon-primary)}
.coupon-display-logo-panel h2{margin:0;color:var(--coupon-accent);font-size:25px}.coupon-display-logo-panel p{color:#e8ece9}
.coupon-display-main{padding:34px 40px 28px}
.coupon-display-topline{display:flex;justify-content:space-between;gap:14px;font-size:11px;letter-spacing:.11em;text-transform:uppercase;font-weight:900;color:#666}.coupon-display-topline b{color:var(--coupon-secondary)}
.coupon-display-value{margin-top:15px;color:var(--coupon-secondary);font-size:40px;font-weight:1000}
.coupon-display-main h1{margin:7px 0 4px;font-family:var(--coupon-title-font);font-size:50px;line-height:1.03;color:#111}
.coupon-display-main h3{margin:0 0 16px;color:var(--coupon-primary)}
.coupon-display-description{font-size:17px;line-height:1.65;color:#333}
.coupon-display-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}
.coupon-display-data-grid>div{padding:13px 15px;border-radius:15px;background:#fff;border:1px solid #ddd5c4}
.coupon-display-data-grid span{display:block;font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:#777}.coupon-display-data-grid b{display:block;margin-top:5px;color:#111}
.coupon-display-conditions{margin-top:15px;padding:13px 15px;border-radius:15px;background:#eae5d8;border:1px solid #d7cfbe}.coupon-display-conditions b,.coupon-display-conditions span{display:block}.coupon-display-conditions span{margin-top:5px;color:#444;line-height:1.45}
.coupon-display-footer{margin-top:16px;padding-top:13px;border-top:1px solid #d8d0bf;font-size:12px;font-weight:800;color:#5d5a54}
.coupon-display-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:24px}
.coupon-access-denied{max-width:690px}.coupon-denied-icon{font-size:56px}

@media(max-width:1000px){.offers-sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.storefront-offers-grid{grid-template-columns:1fr}.coupon-display-card{grid-template-columns:280px minmax(0,1fr)}.coupon-display-card:before,.coupon-display-card:after{left:268px}.coupon-display-logo{width:180px;height:180px}.coupon-display-main h1{font-size:42px}}
@media(max-width:760px){.offers-hub-heading,.storefront-offers-heading{align-items:flex-start;flex-direction:column}.offers-sponsor-grid,.legacy-offers-grid{grid-template-columns:1fr}.storefront-brand-card h1{font-size:38px}.storefront-logo-wrap{width:155px;height:155px}.storefront-info-grid{grid-template-columns:1fr}.storefront-info-grid>div.wide{grid-column:auto}.member-mini-card{width:100%}.coupon-display-card{grid-template-columns:1fr}.coupon-display-card:before,.coupon-display-card:after{display:none}.coupon-display-logo-panel{border-right:0;border-bottom:2px dashed rgba(0,0,0,.34)}.coupon-display-main{padding:26px 20px}.coupon-display-main h1{font-size:36px}.coupon-display-data-grid{grid-template-columns:1fr}}
@media(max-width:520px){.offers-sponsor-card{min-height:330px;padding:18px}.offers-sponsor-logo{width:120px;height:120px}.legacy-offer-card{grid-template-columns:82px minmax(0,1fr)}.legacy-offer-logo{width:82px;height:82px}.storefront-hero{padding-top:34px}.storefront-contact-actions a,.storefront-socials a{width:100%;justify-content:center}.storefront-offer-content{padding:27px 18px 20px}.storefront-offer-content h3{font-size:27px}.storefront-offer-actions .btn{width:100%;justify-content:center}.coupon-view-page{padding:24px 10px 50px}.coupon-display-logo{width:165px;height:155px}.coupon-display-actions .btn{width:100%;justify-content:center}}
@media print{.coupon-view-page{padding:0!important;background:#fff!important}.coupon-display-shell{max-width:100%!important}.coupon-display-card{box-shadow:none!important;border:1px solid #aaa!important}.coupon-display-actions,.site-header,footer{display:none!important}}

/* Sporting CMS 1.5.0 - Gallery fotografica per giornata */
.gallery-page-hero{position:relative;overflow:hidden;padding:86px 20px 72px;background:radial-gradient(circle at 18% 32%,rgba(13,141,76,.38),transparent 34%),radial-gradient(circle at 86% 20%,rgba(107,16,32,.48),transparent 35%),linear-gradient(135deg,#06110b,#0b0d0c 52%,#25070d);border-bottom:1px solid rgba(216,177,90,.22)}
.gallery-page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 46%,rgba(255,255,255,.035) 46% 48%,transparent 48% 100%);background-size:190px 190px;opacity:.5}
.gallery-page-hero-inner{position:relative;z-index:1;max-width:1180px;margin:auto}
.gallery-kicker{display:inline-flex;align-items:center;gap:8px;color:#d8b15a;font-size:11px;font-weight:1000;letter-spacing:.18em;text-transform:uppercase}
.gallery-page-hero h1{max-width:900px;margin:9px 0 14px;font-size:clamp(44px,7vw,86px);line-height:.94;letter-spacing:-.04em;color:#fff;text-transform:uppercase}
.gallery-page-hero h1 em{font-style:normal;color:#d8b15a}
.gallery-page-hero p{max-width:720px;margin:0;color:#d7ddd9;font-size:18px;line-height:1.65}
.gallery-public-section{padding-top:28px}
.gallery-filters{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:24px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.045)}
.gallery-filters label{display:grid;gap:6px;min-width:210px}.gallery-filters label span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:#aeb4b0}.gallery-filters select{width:100%;padding:12px 14px;border-radius:14px;border:1px solid rgba(216,177,90,.28);background:#101411;color:#fff;font-weight:800}
.gallery-featured-album{position:relative;display:block;min-height:540px;border-radius:32px;overflow:hidden;text-decoration:none;border:1px solid rgba(216,177,90,.3);box-shadow:0 28px 75px rgba(0,0,0,.42);isolation:isolate}
.gallery-featured-album>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gallery-featured-album:hover>img{transform:scale(1.035)}
.gallery-featured-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,8,5,.95) 0,rgba(3,8,5,.77) 38%,rgba(3,8,5,.18) 78%),linear-gradient(0deg,rgba(0,0,0,.65),transparent 50%)}
.gallery-featured-copy{position:absolute;z-index:2;left:0;bottom:0;width:min(760px,100%);padding:54px}
.gallery-featured-badges{display:flex;gap:8px;flex-wrap:wrap}.gallery-featured-badges span{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:11px;font-weight:900;letter-spacing:.05em}
.gallery-featured-copy h2{margin:16px 0 10px;font-size:clamp(34px,5vw,64px);line-height:.98;color:#fff;text-transform:uppercase;letter-spacing:-.03em}.gallery-featured-copy p{max-width:630px;margin:0 0 22px;color:#e0e4e1;font-size:17px;line-height:1.55}.gallery-featured-copy>strong{display:inline-flex;align-items:center;gap:10px;color:#f0d57c;font-size:16px}.gallery-featured-copy>strong span{font-size:24px;transition:transform .2s}.gallery-featured-album:hover .gallery-featured-copy>strong span{transform:translateX(5px)}
.gallery-album-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:26px}
.gallery-album-card{display:block;overflow:hidden;border-radius:24px;text-decoration:none;background:linear-gradient(155deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.11);box-shadow:0 18px 45px rgba(0,0,0,.25);transition:transform .25s,border-color .25s,box-shadow .25s}
.gallery-album-card:hover{transform:translateY(-6px);border-color:rgba(216,177,90,.55);box-shadow:0 26px 58px rgba(0,0,0,.35)}
.gallery-album-cover{position:relative;height:260px;overflow:hidden;background:#151816}.gallery-album-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.gallery-album-card:hover .gallery-album-cover img{transform:scale(1.055)}
.gallery-photo-count,.gallery-day-badge{position:absolute;top:14px;display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(3,7,5,.78);backdrop-filter:blur(9px);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:11px;font-weight:900}.gallery-photo-count{right:14px}.gallery-day-badge{left:14px;background:rgba(107,16,32,.86)}
.gallery-album-copy{padding:20px}.gallery-album-copy small{color:#d8b15a;font-weight:900;letter-spacing:.05em}.gallery-album-copy h3{margin:8px 0 8px;font-size:25px;line-height:1.08;color:#fff}.gallery-album-copy p{margin:0 0 14px;color:#cfd4d0;line-height:1.45}.gallery-album-copy>span{color:#e8cf7e;font-weight:900}
.gallery-empty-state{padding:62px 22px;border:1px dashed rgba(216,177,90,.35);border-radius:28px;text-align:center;background:rgba(255,255,255,.035)}.gallery-empty-state>span{font-size:56px}.gallery-empty-state h2{margin:12px 0 7px;color:#fff}.gallery-empty-state p{margin:0;color:#c8ceca}
.gallery-album-hero{position:relative;min-height:610px;overflow:hidden;display:flex;align-items:flex-end}.gallery-album-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gallery-album-hero-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,7,5,.98) 0,rgba(3,7,5,.78) 32%,rgba(3,7,5,.18) 72%),linear-gradient(90deg,rgba(3,7,5,.65),transparent 62%)}
.gallery-album-hero-content{position:relative;z-index:1;width:100%;max-width:1240px;margin:0 auto;padding:54px 24px}.gallery-back-link{display:inline-flex;margin-bottom:24px;color:#fff;text-decoration:none;font-weight:900}.gallery-back-link:hover{color:#d8b15a}.gallery-album-hero-badges{display:flex;gap:8px;flex-wrap:wrap}.gallery-album-hero-badges span{padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:11px;font-weight:900}.gallery-album-hero-content h1{max-width:980px;margin:14px 0 7px;font-size:clamp(40px,7vw,78px);line-height:.95;text-transform:uppercase;letter-spacing:-.04em;color:#fff}.gallery-album-hero-content h2{margin:0;color:#d8b15a;font-size:clamp(20px,3vw,34px)}.gallery-album-meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:18px}.gallery-album-meta span{color:#e4e8e5;font-weight:800}
.gallery-album-section{padding-top:34px}.gallery-album-intro{display:grid;grid-template-columns:260px minmax(0,1fr);gap:30px;align-items:start;margin-bottom:28px;padding:26px;border-left:4px solid #d8b15a;border-radius:0 20px 20px 0;background:rgba(255,255,255,.045)}.gallery-album-intro p{margin:0;color:#dce1de;font-size:17px;line-height:1.75}
.gallery-photo-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:dense;gap:12px}
.gallery-photo-item{position:relative;grid-column:span 4;height:310px;padding:0;border:0;border-radius:20px;overflow:hidden;cursor:zoom-in;background:#151816;box-shadow:0 12px 34px rgba(0,0,0,.24)}
.gallery-photo-item:nth-child(7n+1),.gallery-photo-item.is-featured{grid-column:span 8;height:500px}.gallery-photo-item:nth-child(7n+4){grid-column:span 5;height:380px}.gallery-photo-item:nth-child(7n+5){grid-column:span 7;height:380px}.gallery-photo-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s,filter .35s}.gallery-photo-item:hover img{transform:scale(1.04);filter:brightness(.72)}
.gallery-photo-hover{position:absolute;inset:auto 0 0;padding:45px 18px 17px;background:linear-gradient(transparent,rgba(0,0,0,.85));text-align:left;transform:translateY(12px);opacity:0;transition:.25s}.gallery-photo-item:hover .gallery-photo-hover,.gallery-photo-item:focus-visible .gallery-photo-hover{transform:none;opacity:1}.gallery-photo-hover b,.gallery-photo-hover small{display:block;color:#fff}.gallery-photo-hover small{margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gallery-lightbox[hidden]{display:none}.gallery-lightbox{position:fixed;inset:0;z-index:9999;display:grid;grid-template-columns:80px minmax(0,1fr) 80px;align-items:center;padding:28px}.gallery-lightbox-backdrop{position:absolute;inset:0;background:rgba(1,3,2,.95);backdrop-filter:blur(14px)}.gallery-lightbox-stage{position:relative;z-index:2;max-width:1500px;width:100%;height:calc(100vh - 56px);margin:auto;display:flex;flex-direction:column;align-items:center;justify-content:center}.gallery-lightbox-stage img{max-width:100%;max-height:calc(100% - 92px);object-fit:contain;border-radius:8px;box-shadow:0 25px 80px rgba(0,0,0,.55)}.gallery-lightbox-copy{width:min(900px,100%);display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding:17px 4px 0;color:#fff}.gallery-lightbox-copy strong{display:block;font-size:18px}.gallery-lightbox-copy p{margin:5px 0 0;color:#cdd2cf}.gallery-lightbox-copy>span{white-space:nowrap;color:#d8b15a;font-weight:900}.gallery-lightbox-close,.gallery-lightbox-prev,.gallery-lightbox-next{position:relative;z-index:4;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:#fff;cursor:pointer}.gallery-lightbox-close{position:absolute;top:20px;right:20px;width:48px;height:48px;border-radius:50%;font-size:30px}.gallery-lightbox-prev,.gallery-lightbox-next{width:58px;height:74px;border-radius:18px;font-size:48px;line-height:1}.gallery-lightbox-prev{grid-column:1}.gallery-lightbox-stage{grid-column:2}.gallery-lightbox-next{grid-column:3}.gallery-lightbox-open{overflow:hidden}
@media(max-width:1050px){.gallery-album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-photo-item{grid-column:span 6}.gallery-photo-item:nth-child(7n+1),.gallery-photo-item.is-featured{grid-column:span 12}.gallery-photo-item:nth-child(7n+4),.gallery-photo-item:nth-child(7n+5){grid-column:span 6}.gallery-album-intro{grid-template-columns:1fr;gap:12px}}
@media(max-width:700px){.gallery-page-hero{padding:62px 16px 50px}.gallery-page-hero p{font-size:16px}.gallery-filters{align-items:stretch}.gallery-filters label{min-width:0;width:100%}.gallery-featured-album{min-height:500px}.gallery-featured-shade{background:linear-gradient(0deg,rgba(3,8,5,.98),rgba(3,8,5,.28))}.gallery-featured-copy{padding:28px 20px}.gallery-album-grid{grid-template-columns:1fr}.gallery-album-cover{height:240px}.gallery-album-hero{min-height:520px}.gallery-album-hero-content{padding:34px 16px}.gallery-photo-grid{display:block}.gallery-photo-item,.gallery-photo-item:nth-child(n),.gallery-photo-item.is-featured{display:block;width:100%;height:270px;margin-bottom:12px}.gallery-lightbox{grid-template-columns:50px minmax(0,1fr) 50px;padding:14px 4px}.gallery-lightbox-stage{height:calc(100vh - 28px)}.gallery-lightbox-prev,.gallery-lightbox-next{width:45px;height:58px;font-size:38px}.gallery-lightbox-close{top:10px;right:10px}.gallery-lightbox-copy{padding:14px 8px 0}.gallery-lightbox-copy p{font-size:13px}}

/* Gallery più recente in homepage */
.home-gallery-panel{overflow:hidden}
.home-gallery-feature{position:relative;display:block;height:390px;border-radius:22px;overflow:hidden;text-decoration:none;border:1px solid rgba(216,177,90,.24);isolation:isolate}
.home-gallery-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.home-gallery-feature:hover>img{transform:scale(1.045)}
.home-gallery-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,8,5,.95),rgba(3,8,5,.42) 66%,rgba(3,8,5,.14)),linear-gradient(0deg,rgba(0,0,0,.66),transparent 55%)}
.home-gallery-feature>div{position:absolute;z-index:2;left:0;bottom:0;width:min(620px,100%);padding:34px}
.home-gallery-feature small{color:#e4ce80;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.home-gallery-feature h3{margin:9px 0 7px;font-size:38px;line-height:1.02;color:#fff}.home-gallery-feature p{margin:0 0 15px;color:#e0e5e2;font-size:16px}.home-gallery-feature b{color:#f0d57e}
@media(max-width:650px){.home-gallery-feature{height:340px}.home-gallery-feature>div{padding:22px}.home-gallery-feature h3{font-size:30px}}

/* Sporting Volturara 2.0 - Homepage portale ufficiale */
.portal-home{--ph-green:#075b35;--ph-burgundy:#681321;--ph-gold:#d9b45e;max-width:1500px;margin:0 auto;padding:0 22px 72px}
.portal-hero{min-height:670px;position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.8fr);align-items:center;overflow:hidden;border-radius:0 0 38px 38px;margin:0 -22px 34px;padding:74px max(38px,6vw) 42px;background:radial-gradient(circle at 82% 36%,rgba(217,180,94,.18),transparent 29%),linear-gradient(122deg,#03150d 0%,#073722 48%,#4d0f19 100%);box-shadow:0 30px 75px rgba(0,0,0,.44)}
.portal-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 55%),repeating-linear-gradient(135deg,rgba(255,255,255,.018) 0 1px,transparent 1px 10px);pointer-events:none}
.portal-hero-backdrop{position:absolute;inset:0;background:url('../img/campioni-hero.png') center/cover no-repeat;opacity:.1;mix-blend-mode:screen;filter:grayscale(.4)}
.portal-hero-copy,.portal-trophy-wrap{position:relative;z-index:2}
.portal-eyebrow,.portal-section-heading span,.portal-notice>span,.portal-history-banner>div>span,.portal-membership-card>span,.portal-last-result>span{font-size:12px;letter-spacing:.16em;font-weight:1000;color:var(--ph-gold)}
.portal-hero-copy h1{max-width:850px;margin:18px 0 20px;font-size:clamp(48px,6vw,92px);line-height:.92;letter-spacing:-.045em;text-transform:uppercase;color:#fff}
.portal-hero-copy h1 span{color:var(--ph-gold);text-shadow:0 5px 28px rgba(217,180,94,.16)}
.portal-hero-copy>p{max-width:680px;margin:0;color:#e7ebe8;font-size:20px;line-height:1.55}
.portal-hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:29px}
.portal-hero-actions .btn.ghost,.portal-history-banner .btn.ghost{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff}
.portal-hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.portal-hero-stats>div{min-width:108px;padding:13px 18px;border-radius:17px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(9px)}
.portal-hero-stats b{display:block;font-size:26px;color:#fff}.portal-hero-stats span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#cfd6d1}
.portal-trophy-wrap{height:590px;display:flex;align-items:center;justify-content:center}
.portal-trophy-wrap>img{position:relative;z-index:2;max-height:570px;max-width:92%;object-fit:contain;filter:drop-shadow(0 30px 28px rgba(0,0,0,.62))}
.portal-trophy-halo{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(217,180,94,.27),rgba(217,180,94,.07) 43%,transparent 70%);filter:blur(4px)}
.portal-trophy-label{position:absolute;z-index:3;bottom:16px;left:50%;transform:translateX(-50%);min-width:280px;text-align:center;padding:11px 17px;border-radius:14px;background:rgba(4,10,7,.78);border:1px solid rgba(217,180,94,.46);backdrop-filter:blur(10px)}
.portal-trophy-label span,.portal-trophy-label b{display:block}.portal-trophy-label span{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ph-gold)}.portal-trophy-label b{margin-top:3px;color:#fff;font-size:14px}
.portal-notice{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:16px;margin:0 0 24px;padding:18px 22px;border-radius:18px;background:#141814;border-left:5px solid var(--ph-gold)}.portal-notice b{color:#fff}.portal-notice p{margin:0;color:#d5dad6}
.portal-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:42px}
.portal-quick-grid>a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:22px;border-radius:22px;text-decoration:none;background:linear-gradient(145deg,#171b18,#101310);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px rgba(255,255,255,.04);transition:.25s transform,.25s border-color}
.portal-quick-grid>a:hover{transform:translateY(-4px);border-color:rgba(217,180,94,.6)}.portal-quick-grid>a>span{font-size:34px}.portal-quick-grid small{color:var(--ph-gold);font-size:10px;letter-spacing:.12em;font-weight:900}.portal-quick-grid h2{margin:3px 0 4px;color:#fff;font-size:19px}.portal-quick-grid p{margin:0;color:#abb2ad;font-size:13px;line-height:1.4}.portal-quick-grid>a>b{font-size:25px;color:var(--ph-gold)}
.portal-section-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px}.portal-section-heading h2{margin:4px 0 0;font-size:34px;color:#fff}.portal-section-heading>a{color:#e5cc87;font-weight:800;text-decoration:none}.portal-section-heading.compact h2{font-size:26px}
.portal-match-section,.portal-content-block,.portal-sponsors{margin-top:38px}
.portal-match-card{display:grid;grid-template-columns:210px 1fr 155px 1fr 210px;align-items:center;gap:20px;padding:27px;border-radius:30px;background:linear-gradient(110deg,#f6f3eb,#fff 48%,#f1ece1);box-shadow:0 24px 58px rgba(0,0,0,.36);color:#101310}
.portal-match-date small,.portal-match-date b,.portal-match-date span{display:block}.portal-match-date small{font-weight:900;color:#6c1321;letter-spacing:.08em}.portal-match-date b{margin:7px 0;font-size:17px}.portal-match-date span{color:#5c625e;font-size:13px}.portal-match-team{text-align:center}.portal-match-team img{width:104px;height:104px;object-fit:contain}.portal-match-team strong{display:block;margin-top:9px;font-size:17px;text-transform:uppercase;line-height:1.1}.portal-match-center{text-align:center}.portal-match-center>b{display:block;font-size:42px;color:#691423}.portal-match-center em{display:inline-flex;padding:5px 11px;border-radius:999px;background:#c92032;color:#fff;font-weight:1000;font-style:normal;font-size:11px}.portal-countdown{display:flex;justify-content:center;gap:5px;margin-top:8px}.portal-countdown>div{min-width:32px;padding:5px;border-radius:8px;background:#171b18}.portal-countdown b,.portal-countdown span{display:block;color:#fff}.portal-countdown b{font-size:13px}.portal-countdown span{font-size:8px;color:#d9b45e}.portal-match-cta{text-align:center}.portal-match-cta .btn{width:100%;justify-content:center}
.portal-two-columns{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:26px;align-items:start;margin-top:22px}.portal-main-column{min-width:0}.portal-side-column{display:grid;gap:20px;position:sticky;top:18px}
.portal-news-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:repeat(2,230px);gap:14px}.portal-news-card{position:relative;overflow:hidden;border-radius:23px;text-decoration:none;min-height:230px}.portal-news-card.featured{grid-row:1/3}.portal-news-card>img{width:100%;height:100%;object-fit:cover;transition:.35s transform}.portal-news-card:hover>img{transform:scale(1.04)}.portal-news-overlay,.portal-gallery-feature>span{position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(3,7,5,.92))}.portal-news-card>div,.portal-gallery-feature>div{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:23px}.portal-news-card small,.portal-gallery-feature small{color:#e8ce88;font-weight:800}.portal-news-card h3{margin:8px 0 11px;color:#fff;font-size:21px;line-height:1.22}.portal-news-card.featured h3{font-size:31px}.portal-news-card b,.portal-gallery-feature b{color:#fff;font-size:13px}
.portal-gallery-feature{height:430px;display:block;position:relative;overflow:hidden;border-radius:27px}.portal-gallery-feature>img{width:100%;height:100%;object-fit:cover}.portal-gallery-feature h3{margin:8px 0 12px;font-size:33px;color:#fff}
.portal-standing-card,.portal-last-result,.portal-membership-card{border-radius:24px;padding:22px;background:linear-gradient(145deg,#181c19,#0e110f);border:1px solid rgba(255,255,255,.09)}
.portal-standing-list{display:grid}.portal-standing-list>div{display:grid;grid-template-columns:25px 31px 1fr 38px;align-items:center;gap:9px;padding:11px 8px;border-top:1px solid rgba(255,255,255,.08)}.portal-standing-list>div.sporting{margin:3px -5px;border-radius:12px;background:linear-gradient(90deg,rgba(7,91,53,.5),rgba(104,19,33,.45));border:1px solid rgba(217,180,94,.42)}.portal-standing-list img{width:29px;height:29px;object-fit:contain}.portal-standing-list span{color:#fff;font-size:13px}.portal-standing-list b{color:#9ea59f}.portal-standing-list strong{color:#e9cf8a;text-align:right}
.portal-last-result{text-align:center;background:linear-gradient(145deg,#5b111e,#171817)}.portal-last-result>div{display:flex;align-items:center;justify-content:center;gap:23px;margin:17px 0 10px}.portal-last-result img{width:62px;height:62px;object-fit:contain}.portal-last-result strong{font-size:34px;color:#fff}.portal-last-result p{margin:5px 0;color:#fff;font-weight:800}.portal-last-result small{color:#d8ddd9}
.portal-membership-card{background:radial-gradient(circle at top right,rgba(217,180,94,.16),transparent 42%),linear-gradient(145deg,#073c25,#151715)}.portal-membership-card h2{font-size:28px;color:#fff;margin:10px 0}.portal-membership-card p{color:#d5dad6}.portal-progress{height:10px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden;margin:20px 0 9px}.portal-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#d9b45e,#f2d889)}
.portal-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portal-offer-card{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:17px;padding:18px;border-radius:22px;text-decoration:none;background:#f4f1e9;color:#111}.portal-offer-logo{width:90px;height:78px;border-radius:15px;background:#fff;padding:10px}.portal-offer-logo img{width:100%;height:100%;object-fit:contain}.portal-offer-card small{font-weight:900;color:#681321}.portal-offer-card h3{margin:4px 0;color:#111}.portal-offer-card p{margin:0;color:#5d635f;font-size:13px}.portal-offer-card>b{padding:10px;border-radius:12px;background:#075b35;color:#fff;font-size:18px}
.portal-shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.portal-product-card{text-decoration:none;padding:15px;border-radius:23px;background:#f5f3ed;color:#111}.portal-product-card>div{height:240px;position:relative;border-radius:17px;overflow:hidden;background:#fff}.portal-product-card img{width:100%;height:100%;object-fit:contain}.portal-product-card>div span{position:absolute;top:10px;left:10px;padding:6px 9px;border-radius:8px;background:#6b1320;color:#fff;font-size:10px;font-weight:900}.portal-product-card h3{margin:13px 0 5px;font-size:16px;color:#111}.portal-product-card p{margin:0;color:#681321;font-size:19px;font-weight:1000}
.portal-history-banner{min-height:330px;display:grid;grid-template-columns:310px 1fr;align-items:center;overflow:hidden;margin-top:45px;padding:25px 50px;border-radius:32px;background:radial-gradient(circle at 18% 50%,rgba(217,180,94,.2),transparent 27%),linear-gradient(115deg,#061d13,#075131 48%,#5c101d);box-shadow:0 25px 60px rgba(0,0,0,.35)}.portal-history-banner>img{max-height:330px;width:100%;object-fit:contain;filter:drop-shadow(0 18px 15px rgba(0,0,0,.55))}.portal-history-banner h2{margin:10px 0;font-size:40px;color:#fff}.portal-history-banner p{max-width:760px;color:#dce2de;font-size:17px}.portal-history-banner>div>div{display:flex;gap:10px;margin-top:20px}
.portal-sponsor-track{display:flex;gap:14px;overflow-x:auto;padding:5px 2px 12px;scrollbar-width:thin}.portal-sponsor-track a{flex:0 0 210px;height:125px;border-radius:19px;background:#fff;padding:16px}.portal-sponsor-track img{width:100%;height:100%;object-fit:contain}
@media(max-width:1180px){.portal-hero{grid-template-columns:1fr 420px}.portal-quick-grid{grid-template-columns:repeat(2,1fr)}.portal-match-card{grid-template-columns:170px 1fr 130px 1fr}.portal-match-cta{grid-column:1/-1}.portal-two-columns{grid-template-columns:1fr 340px}.portal-shop-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.portal-home{padding-left:14px;padding-right:14px}.portal-hero{grid-template-columns:1fr;margin-left:-14px;margin-right:-14px;padding:66px 22px 30px}.portal-trophy-wrap{height:460px;grid-row:1}.portal-trophy-wrap>img{max-height:445px}.portal-hero-copy{text-align:center}.portal-hero-copy>p{margin-left:auto;margin-right:auto}.portal-hero-actions,.portal-hero-stats{justify-content:center}.portal-two-columns{grid-template-columns:1fr}.portal-side-column{position:static;grid-template-columns:repeat(2,1fr)}.portal-standing-card{grid-column:1/-1}.portal-match-card{grid-template-columns:1fr 85px 1fr}.portal-match-date,.portal-match-cta{grid-column:1/-1;text-align:center}.portal-match-team img{width:82px;height:82px}.portal-news-grid{grid-template-columns:1fr 1fr;grid-template-rows:330px 230px}.portal-news-card.featured{grid-column:1/-1;grid-row:auto}.portal-shop-grid{grid-template-columns:repeat(2,1fr)}.portal-history-banner{grid-template-columns:230px 1fr;padding:25px}.portal-history-banner h2{font-size:32px}}
@media(max-width:620px){.portal-hero{min-height:0}.portal-trophy-wrap{height:365px}.portal-trophy-wrap>img{max-height:355px}.portal-trophy-label{bottom:0;min-width:230px}.portal-hero-copy h1{font-size:43px}.portal-hero-copy>p{font-size:16px}.portal-hero-actions .btn{width:100%;justify-content:center}.portal-hero-stats{display:grid;grid-template-columns:1fr 1fr;width:100%}.portal-quick-grid{grid-template-columns:1fr}.portal-section-heading{align-items:flex-start}.portal-section-heading h2{font-size:28px}.portal-section-heading>a{font-size:12px}.portal-match-card{padding:18px 12px;gap:10px}.portal-match-team strong{font-size:13px}.portal-match-center>b{font-size:30px}.portal-news-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none}.portal-news-card,.portal-news-card.featured{height:275px;grid-column:auto}.portal-news-card.featured h3{font-size:24px}.portal-gallery-feature{height:330px}.portal-gallery-feature h3{font-size:25px}.portal-side-column{grid-template-columns:1fr}.portal-standing-card{grid-column:auto}.portal-offer-grid,.portal-shop-grid{grid-template-columns:1fr}.portal-offer-card{grid-template-columns:70px 1fr}.portal-offer-logo{width:70px;height:70px}.portal-offer-card>b{grid-column:1/-1;text-align:center}.portal-history-banner{grid-template-columns:1fr;text-align:center;padding:22px}.portal-history-banner>img{height:245px}.portal-history-banner h2{font-size:29px}.portal-history-banner>div>div{justify-content:center;flex-wrap:wrap}.portal-product-card>div{height:260px}.portal-notice{grid-template-columns:1fr;gap:5px}.portal-trophy-halo{width:300px;height:300px}}

/* Sporting CMS 1.4.4 - Homepage approvata: hero con coppa originale e bacheca trofei */
.portal-hero.portal-hero-v2{
  min-height:570px;
  display:grid;
  grid-template-columns:minmax(300px,.95fr) minmax(280px,.78fr) minmax(360px,1.08fr);
  gap:24px;
  align-items:center;
  margin:0 calc(50% - 50vw);
  padding:34px max(28px,calc((100vw - 1460px)/2));
  border-radius:0;
  overflow:hidden;
  background:
    radial-gradient(circle at 42% 30%,rgba(212,175,55,.18),transparent 26%),
    radial-gradient(circle at 12% 80%,rgba(108,16,32,.36),transparent 32%),
    linear-gradient(110deg,#031d11 0%,#052b19 42%,#07170f 68%,#021009 100%);
}
.portal-hero.portal-hero-v2:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.08),transparent 45%,rgba(0,0,0,.18));pointer-events:none}
.portal-hero-v2 .portal-hero-backdrop{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 35%,rgba(255,255,255,.05) 0 1px,transparent 2px),radial-gradient(circle at 60% 22%,rgba(216,177,90,.08) 0 2px,transparent 3px);background-size:46px 46px,80px 80px;opacity:.55}
.portal-hero-celebration,.portal-hero-trophy-original,.portal-hero-next-match{position:relative;z-index:2}
.portal-hero-celebration{text-align:center;padding:20px 0}
.portal-hero-star{display:block;font-size:30px;color:#d8b15a;margin-bottom:4px}
.portal-hero-celebration .portal-eyebrow{display:block;margin-bottom:10px;color:#e6c46f}
.portal-hero-celebration h1{margin:0;text-transform:uppercase;line-height:.92;text-shadow:0 8px 28px rgba(0,0,0,.55)}
.portal-hero-celebration h1 small{display:block;font-size:44px;color:#fff;font-weight:1000;letter-spacing:.025em}
.portal-hero-celebration h1 span{display:block;font-size:76px;color:#d8b15a;font-weight:1000;letter-spacing:-.025em}
.portal-hero-celebration h1 strong{display:block;margin-top:10px;font-size:31px;color:#fff;letter-spacing:.045em}
.portal-hero-celebration>p{margin:26px auto 0;max-width:520px;font-size:20px;line-height:1.55;color:#f1f1ed;font-family:Georgia,serif;font-style:italic}
.portal-hero-celebration>p em{color:#e1c067}
.portal-hero-celebration .portal-hero-actions{justify-content:center;margin-top:25px}
.portal-hero-trophy-original{height:510px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.portal-hero-trophy-original img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;filter:contrast(1.05) drop-shadow(0 26px 24px rgba(0,0,0,.7));transform:scale(1.08)}
.portal-hero-next-match{padding:25px 28px;border-radius:18px;border:1px solid rgba(216,177,90,.35);background:linear-gradient(160deg,rgba(0,48,27,.94),rgba(1,26,15,.96));box-shadow:0 22px 55px rgba(0,0,0,.35);text-align:center}
.portal-next-head span{font-size:10px;letter-spacing:.16em;color:#d8b15a;font-weight:900}
.portal-next-head h2{margin:5px 0 2px;font-size:28px;color:#fff;text-transform:uppercase}
.portal-next-competition{display:block;color:#d8ddda;font-weight:800;text-transform:uppercase}
.portal-next-teams{display:grid;grid-template-columns:1fr 74px 1fr;align-items:center;gap:14px;margin:24px 0 14px}
.portal-next-teams>div:not(.portal-next-vs){min-width:0}
.portal-next-teams img{width:104px;height:104px;object-fit:contain;display:block;margin:0 auto 9px}
.portal-next-teams strong{display:block;color:#fff;font-size:16px;line-height:1.15;text-transform:uppercase;word-break:break-word}
.portal-next-vs b{font-size:40px;color:#fff}.portal-next-vs em{display:block;width:max-content;margin:0 auto 5px;padding:4px 8px;border-radius:999px;background:#b21428;color:#fff;font-size:10px;font-weight:1000;font-style:normal}
.portal-countdown-hero{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:16px auto;max-width:380px}
.portal-countdown-hero>div{padding:10px 5px;border-radius:8px;background:linear-gradient(180deg,#8e1d2b,#6d111d);box-shadow:inset 0 1px rgba(255,255,255,.15)}
.portal-countdown-hero b{display:block;font-size:24px;color:#fff}.portal-countdown-hero span{display:block;margin-top:3px;font-size:8px;text-transform:uppercase;color:#fff}
.portal-next-meta{display:grid;gap:7px;margin:17px 0;color:#fff;font-weight:800;font-size:14px}
.portal-next-buy{width:100%;justify-content:center;margin-top:7px}
.portal-next-empty{color:#d8ddda;margin:32px 0}
.portal-trophy-board{margin-top:42px;border-radius:24px;overflow:hidden;border:1px solid rgba(216,177,90,.35);background:linear-gradient(110deg,#041c11,#073d25 48%,#54101c);box-shadow:0 24px 60px rgba(0,0,0,.32)}
.portal-trophy-board-title{display:flex;align-items:center;gap:13px;padding:19px 25px;border-bottom:1px solid rgba(255,255,255,.12)}
.portal-trophy-board-title>span{font-size:34px}.portal-trophy-board-title small{display:block;color:#d8b15a;font-size:10px;letter-spacing:.17em;font-weight:900}.portal-trophy-board-title h2{margin:2px 0 0;color:#fff;font-size:30px;text-transform:uppercase}
.portal-trophy-board-main{min-height:245px;display:grid;grid-template-columns:230px minmax(0,1fr);align-items:center;gap:26px;padding:17px 35px}
.portal-trophy-board-main img{width:100%;height:230px;object-fit:contain;mix-blend-mode:screen;filter:contrast(1.05) drop-shadow(0 18px 15px rgba(0,0,0,.55))}
.portal-trophy-board-main span{color:#d8b15a;font-size:12px;letter-spacing:.14em;font-weight:900;text-transform:uppercase}
.portal-trophy-board-main h3{margin:7px 0;font-size:29px;color:#fff}.portal-trophy-board-main p{margin:0;color:#dde3df;font-size:17px}
@media(max-width:1180px){.portal-hero.portal-hero-v2{grid-template-columns:1fr .72fr 1fr}.portal-hero-celebration h1 span{font-size:60px}.portal-hero-celebration h1 small{font-size:36px}.portal-hero-celebration h1 strong{font-size:25px}.portal-hero-trophy-original{height:440px}.portal-hero-next-match{padding:22px 18px}.portal-next-teams img{width:82px;height:82px}}
@media(max-width:920px){.portal-hero.portal-hero-v2{grid-template-columns:1fr 1fr;padding:30px 20px}.portal-hero-celebration{grid-column:1/-1}.portal-hero-trophy-original{height:420px}.portal-hero-next-match{align-self:stretch}.portal-trophy-board-main{grid-template-columns:190px 1fr}}
@media(max-width:680px){.portal-hero.portal-hero-v2{grid-template-columns:1fr;padding:30px 14px}.portal-hero-celebration{grid-column:auto}.portal-hero-celebration h1 span{font-size:55px}.portal-hero-celebration h1 small{font-size:34px}.portal-hero-celebration h1 strong{font-size:22px}.portal-hero-celebration>p{font-size:17px}.portal-hero-trophy-original{height:390px}.portal-hero-next-match{padding:21px 14px}.portal-next-teams{grid-template-columns:1fr 55px 1fr;gap:8px}.portal-next-teams img{width:78px;height:78px}.portal-next-teams strong{font-size:13px}.portal-countdown-hero{gap:6px}.portal-countdown-hero b{font-size:21px}.portal-trophy-board-main{grid-template-columns:1fr;text-align:center;padding:18px}.portal-trophy-board-main img{height:260px}.portal-trophy-board-title{justify-content:center;text-align:left}}

/* Sporting CMS 1.5.1 - Homepage approvata con coppa realmente trasparente */
.portal-hero-trophy-original{overflow:visible!important}
.portal-hero-trophy-original img{
  width:auto!important;
  max-width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  mix-blend-mode:normal!important;
  background:transparent!important;
  filter:drop-shadow(0 26px 24px rgba(0,0,0,.72))!important;
  transform:none!important;
}
.portal-trophy-board-main img{
  object-fit:contain!important;
  mix-blend-mode:normal!important;
  background:transparent!important;
  filter:drop-shadow(0 18px 15px rgba(0,0,0,.58))!important;
}
@media(max-width:1180px){.portal-hero-trophy-original img{max-height:430px!important}}
@media(max-width:680px){.portal-hero-trophy-original img{max-height:380px!important}}

/* Sporting Volturara - Homepage unica: sezione inferiore compatta */
.unique-home-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:18px auto 16px;max-width:1460px}
.unique-home-actions>a{min-height:96px;display:flex;align-items:center;gap:18px;padding:18px 24px;border-radius:17px;text-decoration:none;color:#fff;box-shadow:0 9px 24px rgba(0,0,0,.18);transition:transform .2s ease,box-shadow .2s ease}
.unique-home-actions>a:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.24)}
.unique-home-actions .is-burgundy{background:linear-gradient(135deg,#75101e,#3d080f)}
.unique-home-actions .is-green{background:linear-gradient(135deg,#07552f,#012b19)}
.unique-home-actions>a>span{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:31px;border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.06)}
.unique-home-actions h2{margin:0;color:#fff;text-transform:uppercase;font-size:22px;line-height:1.05}.unique-home-actions p{margin:5px 0 0;color:#fff;font-size:14px;text-transform:uppercase}
.unique-home-dashboard{display:grid;grid-template-columns:.92fr .82fr 1.08fr 1.28fr;gap:12px;max-width:1500px;margin:0 auto 12px}
.unique-panel{background:#fff;color:#17251d;border:1px solid #dfe4e1;border-radius:13px;padding:15px;box-shadow:0 4px 16px rgba(0,0,0,.08);min-width:0}
.unique-panel header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.unique-panel header h2{margin:0;color:#103d29;font-size:19px;text-transform:uppercase}.unique-panel header a{font-size:11px;font-weight:900;color:#7b101c;text-transform:uppercase;text-decoration:none}
.unique-last-match header small{font-size:10px;font-weight:800;text-transform:uppercase}.unique-result-row{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:9px;text-align:center}.unique-result-row>div img{width:68px;height:68px;object-fit:contain}.unique-result-row>div b{display:block;font-size:11px;line-height:1.2;text-transform:uppercase;margin-top:5px}.unique-result-row>strong{font-size:36px;color:#6c101c;white-space:nowrap}.unique-result-row>strong i{font-style:normal;color:#333}.unique-small-button{display:block;width:max-content;margin:13px auto 0;padding:8px 25px;border-radius:5px;background:#71101c;color:#fff;text-transform:uppercase;text-decoration:none;font-size:11px;font-weight:900}
.unique-ranking-list{display:grid;gap:2px}.unique-ranking-list>div{display:grid;grid-template-columns:28px 1fr 35px;align-items:center;padding:5px 8px;font-size:12px}.unique-ranking-list>div.is-sporting{background:#0c5b35;color:#fff;border-radius:4px}.unique-ranking-list span{font-weight:700}.unique-ranking-list b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unique-ranking-list strong{text-align:right}
.unique-news-list{display:grid;gap:8px}.unique-news-list>a{display:grid;grid-template-columns:82px 1fr;gap:9px;text-decoration:none;color:#111;min-width:0}.unique-news-list img{width:82px;height:57px;object-fit:cover;border-radius:5px}.unique-news-list b{display:block;font-size:12px;line-height:1.2}.unique-news-list p{margin:2px 0;font-size:10px;line-height:1.2;color:#454545}.unique-news-list small{font-size:9px;color:#555}
.unique-gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:84px 84px;gap:4px}.unique-gallery-grid img{width:100%;height:100%;object-fit:cover;border-radius:4px}.unique-gallery-grid img.single{grid-column:1/-1;grid-row:1/-1}
.unique-home-bottom-grid{display:grid;grid-template-columns:1.16fr 1.14fr 1fr;gap:12px;max-width:1500px;margin:0 auto 12px}
.unique-membership-banner{min-height:190px;display:grid;grid-template-columns:1fr 230px;align-items:center;overflow:hidden;border-radius:14px;padding:20px 22px;background:linear-gradient(135deg,#71101e,#3c0710);color:#fff;box-shadow:0 6px 20px rgba(0,0,0,.15)}.unique-membership-banner small{font-size:22px;font-weight:900}.unique-membership-banner h2{margin:3px 0 10px;font-size:13px;color:#fff}.unique-membership-banner ul{list-style:none;margin:0 0 12px;padding:0;font-size:12px}.unique-membership-banner li:before{content:'✓';color:#34cb7c;font-weight:1000;margin-right:8px}.unique-membership-banner a{display:inline-block;padding:7px 30px;border-radius:5px;background:#087340;color:#fff;text-decoration:none;text-transform:uppercase;font-weight:900;font-size:11px}.unique-membership-banner img{width:220px;max-height:145px;object-fit:contain;transform:rotate(-7deg);filter:drop-shadow(0 10px 12px rgba(0,0,0,.35))}
.unique-offer-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.unique-offer-strip>a{display:flex;min-height:125px;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:9px;border:1px solid #e2e2e2;border-radius:7px;color:#222;text-decoration:none;background:#fff}.unique-offer-strip small{font-size:10px;font-weight:800}.unique-offer-strip strong{margin:8px 0 2px;color:#82121f;font-size:27px;line-height:1}.unique-offer-strip span{font-size:10px;font-weight:900;text-transform:uppercase}
.unique-product-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.unique-product-strip>a{text-align:center;text-decoration:none;color:#111;min-width:0}.unique-product-strip img{width:100%;height:95px;object-fit:contain}.unique-product-strip b{display:block;font-size:10px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unique-product-strip span{font-size:11px;font-weight:800}
.unique-trophy-sponsor-bar{max-width:1500px;margin:0 auto 24px;min-height:105px;display:grid;grid-template-columns:420px 1fr;background:linear-gradient(90deg,#031c11,#062c1c 45%,#31080d);border:1px solid rgba(216,177,90,.25);border-radius:12px;overflow:hidden;color:#fff}.unique-trophy-summary{display:grid;grid-template-columns:110px 1fr;align-items:center;padding:7px 18px;border-right:1px solid rgba(216,177,90,.25)}.unique-trophy-summary img{height:100px;width:95px;object-fit:contain;filter:drop-shadow(0 7px 8px rgba(0,0,0,.5))}.unique-trophy-summary small{color:#d8b15a;font-size:19px;font-weight:900;text-transform:uppercase}.unique-trophy-summary h2{margin:4px 0 2px;color:#fff;font-size:15px;text-transform:uppercase}.unique-trophy-summary p{margin:0;color:#fff;font-size:12px}.unique-sponsor-mini{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;overflow:hidden}.unique-sponsor-mini>span{position:absolute;opacity:0}.unique-sponsor-mini a{height:65px;min-width:125px;max-width:160px;padding:8px;background:#fff;border-radius:7px;display:grid;place-items:center}.unique-sponsor-mini img{max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:1200px){.unique-home-dashboard{grid-template-columns:1fr 1fr}.unique-home-bottom-grid{grid-template-columns:1fr 1fr}.unique-membership-banner{grid-column:1/-1}.unique-trophy-sponsor-bar{grid-template-columns:360px 1fr}.unique-home-actions h2{font-size:18px}.unique-home-actions p{font-size:12px}}
@media(max-width:800px){.unique-home-actions{grid-template-columns:1fr 1fr}.unique-home-dashboard,.unique-home-bottom-grid{grid-template-columns:1fr}.unique-membership-banner{grid-column:auto}.unique-trophy-sponsor-bar{grid-template-columns:1fr}.unique-trophy-summary{border-right:0;border-bottom:1px solid rgba(216,177,90,.25)}.unique-sponsor-mini{justify-content:flex-start;overflow-x:auto}.unique-sponsor-mini a{flex:0 0 130px}.unique-gallery-grid{grid-template-rows:130px 130px}}
@media(max-width:520px){.unique-home-actions{grid-template-columns:1fr}.unique-home-actions>a{min-height:82px;padding:14px 18px}.unique-membership-banner{grid-template-columns:1fr;text-align:center}.unique-membership-banner img{margin:12px auto 0}.unique-offer-strip,.unique-product-strip{grid-template-columns:1fr 1fr}.unique-trophy-summary{grid-template-columns:90px 1fr;padding:8px}.unique-trophy-summary img{width:80px;height:90px}.unique-trophy-summary small{font-size:16px}}

/* Sporting Volturara - Correzione contrasto homepage su pannelli chiari */
.unique-panel,
.unique-panel *,
.unique-home-bottom-grid .unique-panel,
.unique-home-bottom-grid .unique-panel *{
  text-shadow:none;
}
.unique-panel{
  background:#f8f8f6!important;
  color:#202723!important;
}
.unique-panel header h2,
.unique-panel h1,
.unique-panel h2,
.unique-panel h3,
.unique-panel h4{
  color:#103d29!important;
}
.unique-panel header a,
.unique-panel a:not(.unique-small-button):not(.btn){
  color:#71101c;
}
.unique-panel p,
.unique-panel small,
.unique-panel span,
.unique-panel li,
.unique-panel td,
.unique-panel th{
  color:#343a36;
}
.unique-panel b,
.unique-panel strong{
  color:#17251d;
}
.unique-panel .unique-ranking-list>div.is-sporting,
.unique-panel .unique-ranking-list>div.is-sporting *{
  color:#fff!important;
}
.unique-panel .unique-small-button,
.unique-panel .btn,
.unique-panel .unique-small-button *{
  color:#fff!important;
}
.unique-last-match header small{color:#5c655f!important}
.unique-result-row>strong{color:#6c101c!important}
.unique-result-row>strong i{color:#333!important}
.unique-news-list>a{color:#17251d!important}
.unique-news-list b{color:#17251d!important}
.unique-news-list p{color:#454b47!important}
.unique-news-list small{color:#626964!important}
.unique-ranking-list>div:not(.is-sporting){color:#202723!important}
.unique-ranking-list>div:not(.is-sporting) b,
.unique-ranking-list>div:not(.is-sporting) span,
.unique-ranking-list>div:not(.is-sporting) strong{color:#202723!important}
.unique-offer-strip>a,
.unique-offer-strip>a *{color:#202723!important}
.unique-offer-strip>a strong{color:#82121f!important}
.unique-product-strip>a,
.unique-product-strip>a *{color:#202723!important}
.unique-product-strip>a span{color:#4d554f!important}
.unique-membership-banner,
.unique-membership-banner *{color:#fff!important}
.unique-trophy-sponsor-bar,
.unique-trophy-sponsor-bar *{color:#fff!important}
.unique-trophy-summary small{color:#d8b15a!important}
.unique-home-actions>a,
.unique-home-actions>a *{color:#fff!important}

/* Contrasto generale delle sezioni chiare della home */
body .unique-home-dashboard .unique-panel,
body .unique-home-bottom-grid .unique-panel{
  background:#f8f8f6!important;
  border-color:#d8ded9!important;
}
body .unique-home-dashboard .unique-panel::before,
body .unique-home-bottom-grid .unique-panel::before{color:inherit}

/* Sporting Volturara - Tema premium scuro e sponsor continui */
body:has(.portal-home){
  background:
    radial-gradient(circle at 12% 20%,rgba(10,103,58,.22),transparent 34%),
    radial-gradient(circle at 88% 58%,rgba(112,15,29,.20),transparent 31%),
    linear-gradient(145deg,#030906 0%,#07130d 45%,#12070a 100%)!important;
  background-attachment:fixed!important;
}
.portal-home{
  position:relative;
  isolation:isolate;
  padding-bottom:84px!important;
}
.portal-home:before{
  content:"";
  position:absolute;
  inset:0 -30px;
  z-index:-1;
  pointer-events:none;
  opacity:.22;
  background-image:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 92%,transparent);
}
.unique-home-actions>a{
  border:1px solid rgba(216,177,90,.22)!important;
  box-shadow:0 18px 38px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08)!important;
  overflow:hidden;
  position:relative;
}
.unique-home-actions>a:after{
  content:"";
  position:absolute;
  inset:-50% auto -50% -30%;
  width:25%;
  transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  transition:left .55s ease;
}
.unique-home-actions>a:hover:after{left:120%}
body .unique-home-dashboard .unique-panel,
body .unique-home-bottom-grid .unique-panel{
  background:linear-gradient(145deg,rgba(18,34,25,.92),rgba(8,16,12,.94))!important;
  color:#eef4ef!important;
  border:1px solid rgba(216,177,90,.18)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.045)!important;
  backdrop-filter:blur(14px);
}
.unique-panel header{
  border-bottom:1px solid rgba(216,177,90,.16);
  padding-bottom:10px;
}
.unique-panel header h2,
.unique-panel h1,.unique-panel h2,.unique-panel h3,.unique-panel h4{
  color:#f5f7f5!important;
}
.unique-panel header a,
.unique-panel a:not(.unique-small-button):not(.btn){color:#e4c36f!important}
.unique-panel p,.unique-panel small,.unique-panel span,.unique-panel li,.unique-panel td,.unique-panel th{color:#bfc9c2!important}
.unique-panel b,.unique-panel strong{color:#f5f7f5!important}
.unique-last-match header small{color:#aebbb2!important}
.unique-result-row>strong{color:#e5c268!important}
.unique-result-row>strong i{color:#e7ece8!important}
.unique-ranking-list>div:not(.is-sporting){
  color:#e9efeb!important;
  border-bottom:1px solid rgba(255,255,255,.055);
}
.unique-ranking-list>div:not(.is-sporting) *{color:#e9efeb!important}
.unique-ranking-list>div.is-sporting{
  background:linear-gradient(90deg,#087141,#07502f)!important;
  box-shadow:0 6px 16px rgba(0,0,0,.22);
}
.unique-news-list>a{
  color:#f5f7f5!important;
  padding:7px;
  border-radius:9px;
  transition:background .2s ease,transform .2s ease;
}
.unique-news-list>a:hover{background:rgba(255,255,255,.055);transform:translateX(3px)}
.unique-news-list b{color:#f5f7f5!important}
.unique-news-list p,.unique-news-list small{color:#aeb9b1!important}
.unique-gallery-grid img{border:1px solid rgba(255,255,255,.08);transition:transform .25s ease,filter .25s ease}
.unique-gallery-grid:hover img{filter:brightness(.78)}
.unique-gallery-grid img:hover{transform:scale(1.035);filter:brightness(1)}
.unique-offer-strip>a{
  background:linear-gradient(155deg,rgba(111,15,29,.32),rgba(11,36,24,.72))!important;
  border:1px solid rgba(216,177,90,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.unique-offer-strip>a,.unique-offer-strip>a *{color:#f3f6f4!important}
.unique-offer-strip>a strong{color:#e5c268!important}
.unique-product-strip>a{
  padding:7px 5px;
  border-radius:10px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.055);
}
.unique-product-strip>a,.unique-product-strip>a *{color:#edf3ef!important}
.unique-product-strip>a span{color:#e5c268!important}
.unique-product-strip img{filter:drop-shadow(0 9px 10px rgba(0,0,0,.34))}
.unique-membership-banner{
  border:1px solid rgba(216,177,90,.22)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.30)!important;
}
.unique-trophy-sponsor-bar{
  grid-template-columns:minmax(350px,420px) minmax(0,1fr)!important;
  min-height:126px!important;
  background:linear-gradient(95deg,rgba(2,28,16,.98),rgba(5,48,29,.96) 42%,rgba(65,8,18,.97))!important;
  border:1px solid rgba(216,177,90,.30)!important;
  box-shadow:0 20px 48px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.045)!important;
}
.unique-sponsor-mini{
  min-width:0;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:18px!important;
  padding:14px 0 14px 18px!important;
  overflow:hidden!important;
}
.unique-sponsor-label{
  position:static!important;
  opacity:1!important;
  flex:0 0 auto;
  color:#e5c268!important;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.13em;
  text-transform:uppercase;
  white-space:nowrap;
}
.unique-sponsor-marquee{
  min-width:0;
  overflow:hidden;
  position:relative;
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.unique-sponsor-track{
  display:flex;
  align-items:center;
  gap:14px;
  width:max-content;
  will-change:transform;
  animation:uniqueSponsorFlow 55s linear infinite;
}
.unique-sponsor-marquee:hover .unique-sponsor-track{animation-play-state:paused}
.unique-sponsor-track a{
  flex:0 0 150px;
  width:150px;
  height:76px;
  padding:10px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.96)!important;
  border:1px solid rgba(216,177,90,.26);
  box-shadow:0 8px 20px rgba(0,0,0,.20);
  display:grid;
  place-items:center;
  transition:transform .2s ease,box-shadow .2s ease;
}
.unique-sponsor-track a:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.30)}
.unique-sponsor-track img{width:100%;height:100%;object-fit:contain}
@keyframes uniqueSponsorFlow{to{transform:translateX(calc(-50% - 7px))}}
@media(max-width:800px){
  .unique-trophy-sponsor-bar{grid-template-columns:1fr!important}
  .unique-sponsor-mini{grid-template-columns:1fr;gap:8px!important;padding:13px 0 15px!important}
  .unique-sponsor-label{padding-left:16px}
  .unique-sponsor-track{animation-duration:45s}
  .unique-sponsor-track a{flex-basis:132px;width:132px;height:68px}
}
@media(prefers-reduced-motion:reduce){.unique-sponsor-track{animation-play-state:paused}}

/* Pulsante indietro globale pagine pubbliche */
.public-back-wrap{max-width:1240px;margin:14px auto 0;padding:0 20px}.public-back-button{appearance:none;border:0;background:#123f2b;color:#fff;border-radius:999px;padding:10px 16px;font-weight:800;cursor:pointer;box-shadow:0 5px 16px rgba(0,0,0,.13)}.public-back-button:hover{filter:brightness(1.08);transform:translateY(-1px)}
@media(max-width:700px){.public-back-wrap{margin-top:10px;padding:0 14px}.public-back-button{padding:9px 13px}}

/* Sporting Volturara evidenziato */
.sporting-highlight{background:linear-gradient(90deg,#0a6a3d 0%,#7b2030 100%)!important;color:#fff!important;box-shadow:inset 4px 0 0 #e4bd58}
.sporting-highlight td,.sporting-highlight b,.sporting-highlight span,.sporting-highlight a{color:#fff!important}
