:root{
  --nero:#0a0a0a;--nero-2:#141414;--nero-3:#1f1f1f;
  --oro:#EDAC2F;--oro-scuro:#c78f1e;--oro-chiaro:#f6d27a;
  --bianco:#ffffff;--carta:#F3EEE4;--carta-2:#EAE3D5;--grigio:#6f6a60;--grigio-chiaro:#dcd5c6;--testo:#0c0c0c;
  --oro-grad:linear-gradient(100deg,#f7d77c 0%,#EDAC2F 45%,#b8801a 100%);
  --font-titoli:"Archivo","Archivo Black",Impact,sans-serif;--font-testo:"Manrope","Helvetica Neue",Arial,sans-serif;
  --raggio:18px;--max:1280px;--gutter:clamp(18px,4vw,48px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-testo);color:var(--testo);background:var(--carta);line-height:1.6;font-size:17px;overflow-wrap:anywhere;font-weight:500}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--font-titoli);font-weight:800;font-stretch:125%;letter-spacing:-.02em;line-height:1;margin:0 0 .45em}
h1{font-size:clamp(38px,6vw,84px)}h2{font-size:clamp(28px,3.6vw,50px)}h3{font-size:clamp(18px,1.6vw,22px);letter-spacing:-.01em;line-height:1.2}h4{font-size:17px}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);min-width:0}
.iban-box dd,.contatto-card,.riepilogo dd{overflow-wrap:anywhere}
.kicker{font-family:var(--font-testo);font-weight:800;color:var(--oro-scuro);letter-spacing:.22em;font-size:12px;text-transform:uppercase;display:block;margin-bottom:14px}
.scura .kicker,.hero .kicker,.pagehead .kicker{color:var(--oro)}
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-testo);font-weight:800;font-size:14px;letter-spacing:.06em;padding:15px 26px;border-radius:999px;border:2px solid var(--oro);background:var(--oro);color:var(--nero);cursor:pointer;transition:.18s;text-transform:uppercase;line-height:1}
.btn:hover{background:var(--oro-chiaro);border-color:var(--oro-chiaro)}
.btn.ghost{background:transparent;color:var(--bianco)}.btn.ghost:hover{background:var(--oro);color:var(--nero)}
.btn.dark{background:var(--nero);border-color:var(--nero);color:var(--bianco)}.btn.dark:hover{background:var(--nero-3);border-color:var(--nero-3)}
.btn.small{font-size:12px;padding:11px 18px}
.sez{padding:clamp(48px,7vw,96px) 0}
.sez.scura{background:var(--nero);color:var(--bianco);border-radius:var(--raggio)}
.sez.bianca{background:var(--bianco)}
.sez-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px;flex-wrap:wrap}
.sez-head h2{margin:0}
.link-oro{font-family:var(--font-testo);font-weight:800;letter-spacing:.12em;font-size:12px;color:var(--oro-scuro);text-transform:uppercase;border-bottom:2px solid transparent}
.link-oro:hover{border-color:currentColor}
.scura .link-oro{color:var(--oro)}
.griglia{display:grid;gap:24px}
.g2{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr))}
.g3{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.g4{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}
.g5{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr))}

/* header */
.topbar{background:var(--nero-2);color:#bbb;font-size:13px;border-bottom:1px solid #222}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:34px;flex-wrap:wrap}
.topbar a:hover{color:var(--oro)}
.topbar .contatti{display:flex;gap:18px;flex-wrap:wrap}
.header{position:fixed;top:14px;left:0;right:0;z-index:50;color:#fff;pointer-events:none}
.header .wrap{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:66px;background:#0c0c0c;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:0 10px 0 22px;max-width:calc(var(--max) - 40px);box-shadow:0 10px 40px rgba(0,0,0,.18)}
body{padding-top:0}
main>section:first-child:not(.hero){padding-top:110px}
.topbar{display:none}
.logo{display:flex;align-items:center;gap:12px;color:#fff}.logo img,.logo .mlogo{height:36px;width:auto}.brand{display:flex;flex-direction:column;line-height:1}.brand b{font-family:var(--font-titoli);font-weight:800;font-stretch:125%;font-size:14px;letter-spacing:0;text-transform:uppercase}.brand small{font-family:var(--font-testo);font-weight:800;font-size:9px;letter-spacing:.3em;color:var(--oro);margin-top:4px;text-transform:uppercase}
.nav{display:flex;gap:4px;align-items:center}
.nav>a,.nav .dd>button{font-family:var(--font-testo);font-weight:700;font-size:13.5px;letter-spacing:.04em;padding:10px 13px;color:#ddd;background:none;border:0;cursor:pointer;border-radius:999px;line-height:1;transition:.2s}
.nav>a:hover,.nav>a.att,.nav .dd>button:hover{color:var(--nero);background:var(--oro)}
.nav .dd{position:relative}.nav .dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:16px}
.nav .dd-menu{display:none;position:absolute;top:calc(100% + 12px);left:0;background:#0c0c0c;min-width:250px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:16px;z-index:60}
.nav .dd:hover .dd-menu,.nav .dd:focus-within .dd-menu{display:block}
.nav .dd-menu a{display:block;padding:10px 14px;font-size:14px;color:#ddd;border-radius:10px}
.nav .dd-menu a:hover{background:var(--oro);color:var(--nero)}
.header-right{display:flex;align-items:center;gap:10px}
.lang{position:relative}
.lang>button{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#ddd;padding:9px 12px;border-radius:999px;font:inherit;font-weight:700;font-size:12px;cursor:pointer;text-transform:uppercase;letter-spacing:.06em}
.lang-menu{display:none;position:absolute;right:0;top:calc(100% + 10px);background:rgba(12,12,12,.94);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:8px;z-index:70;width:min(92vw,520px);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:2px;max-height:70vh;overflow:auto}
.lang.open .lang-menu{display:grid}
.lang-menu a{padding:7px 10px;font-size:14px;color:#ddd;border-radius:3px;display:flex;gap:8px;align-items:center}
.lang-menu a:hover,.lang-menu a.att{background:#222;color:var(--oro)}
.lang-menu a small{color:#888;text-transform:uppercase;font-size:11px;width:22px}
.burger{display:none;background:var(--oro);border:0;color:var(--nero);width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:20px;line-height:1}
.mnav{display:none;position:fixed;inset:0;background:var(--nero);z-index:100;overflow:auto;padding:24px var(--gutter)}
.mnav.open{display:block}
.mnav .chiudi{position:absolute;right:var(--gutter);top:18px;background:none;border:1px solid #333;color:#fff;width:44px;height:44px;border-radius:4px;font-size:22px;cursor:pointer}
.mnav a{display:block;font-family:var(--font-titoli);font-weight:700;font-size:28px;letter-spacing:-.02em;color:#fff;padding:12px 0;border-bottom:1px solid #1e1e1e}
.mnav a.sub{font-size:16px;color:#bbb;padding:9px 0 9px 18px;font-family:var(--font-testo);font-weight:600}
.mnav a:hover{color:var(--oro)}
.mnav .msocial{display:flex;gap:14px;margin-top:24px}
.mnav .msocial a{border:0;font-family:var(--font-testo);font-size:14px;text-transform:none;letter-spacing:0;color:#aaa}
@media (max-width:1060px){.nav{display:none}.burger{display:inline-flex;align-items:center;justify-content:center}}
@media (max-width:640px){.header{top:10px}.header .wrap{min-height:58px;padding:0 8px 0 16px;margin:0 10px}}
@media (max-width:640px){.topbar{display:none}.logo img,.logo .mlogo{height:38px}.brand b{font-size:13px}.brand small{font-size:8px;letter-spacing:.2em}.hero .m-mark{width:70vw;right:-20%;top:0}}

/* hero */
.hero{position:relative;background:var(--nero);color:#fff;min-height:min(78vh,720px);display:flex;align-items:flex-end;overflow:hidden}
.hero .bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;opacity:.55}
.hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.1) 0%,rgba(10,10,10,.85) 75%,var(--nero) 100%)}
.hero .m-mark{position:absolute;right:-4%;top:-6%;width:min(52vw,560px);opacity:.08;pointer-events:none}
.hero .wrap{position:relative;padding-top:80px;padding-bottom:64px}
.hero h1{max-width:12ch;margin-bottom:16px}
.hero p{max-width:56ch;font-size:19px;color:#ddd;margin-bottom:28px}
.hero .azioni{display:flex;gap:12px;flex-wrap:wrap}
.pagehead{background:var(--nero);color:#fff;padding:clamp(120px,16vw,170px) 0 clamp(32px,4vw,56px);position:relative;overflow:hidden;border-radius:0 0 var(--raggio) var(--raggio)}
.pagehead.con-foto{min-height:440px;display:flex;align-items:flex-end}
.pagehead .bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35}
.pagehead .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.2),var(--nero))}
.pagehead .wrap{position:relative}
.pagehead h1{margin-bottom:6px}
.pagehead .sotto{color:#ccc;font-size:19px;max-width:70ch}

/* card */
.card{background:var(--bianco);border-radius:var(--raggio);overflow:hidden;box-shadow:0 1px 0 rgba(0,0,0,.04);display:flex;flex-direction:column;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s;color:var(--testo)}
.card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -20px rgba(0,0,0,.35)}
.card .img{aspect-ratio:16/10;background:var(--nero-3);overflow:hidden}
.card .img img{width:100%;height:100%;object-fit:cover}
.card .img.ph{display:flex;align-items:center;justify-content:center}
.card .img.ph img{width:36%;height:auto;opacity:.35}
.card .body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.card h3{margin:0;font-size:19px;line-height:1.2}
.card p{margin:0;color:var(--grigio);font-size:15px}
.card .meta{display:flex;gap:10px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--grigio)}
.tag{display:inline-block;background:var(--oro);color:var(--nero);font-family:var(--font-testo);font-weight:800;font-size:10.5px;letter-spacing:.12em;padding:5px 10px;border-radius:999px;text-transform:uppercase}
.tag.scuro{background:var(--nero);color:var(--oro)}
.scura .card{background:var(--nero-2);color:#fff}.scura .card p{color:#aaa}
.card.squadra .img{aspect-ratio:4/3}
.card.squadra .body{border-top:3px solid var(--oro)}

/* filtri */
.filtri{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.filtri a{font-family:var(--font-testo);font-weight:700;font-size:13px;letter-spacing:.02em;padding:10px 16px;border:1px solid var(--grigio-chiaro);border-radius:999px;background:#fff;line-height:1}
.filtri a.att,.filtri a:hover{background:var(--nero);color:var(--oro);border-color:var(--nero)}
.filtri .sep{width:1px;background:var(--grigio-chiaro);margin:0 6px}

/* prosa */
.prosa{max-width:76ch;font-size:18px;overflow-wrap:anywhere}
.prosa h2{font-size:30px;margin-top:1.4em}.prosa h3{font-size:22px;margin-top:1.2em}
.prosa img{border-radius:var(--raggio);margin:1.2em 0}
.prosa ul,.prosa ol{padding-left:1.3em}.prosa li{margin:.3em 0}
.prosa a{color:var(--oro-scuro);text-decoration:underline}
.prosa blockquote{border-left:4px solid var(--oro);margin:1.2em 0;padding:.4em 1em;color:var(--grigio);font-style:italic}
.prosa figure{margin:1.2em 0}.prosa figcaption{font-size:14px;color:var(--grigio)}
.prosa table{border-collapse:collapse;width:100%;font-size:15px}.prosa td,.prosa th{border:1px solid var(--grigio-chiaro);padding:6px 10px}
.prosa iframe{max-width:100%}
.articolo{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px}
@media (max-width:900px){.articolo{grid-template-columns:1fr}}
.cover{border-radius:var(--raggio);overflow:hidden;margin-bottom:28px}
.cover img{width:100%;aspect-ratio:16/8;object-fit:cover}
.aside h3{font-family:var(--font-testo);font-weight:800;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--grigio);margin-bottom:12px}
.aside .mini{display:flex;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--grigio-chiaro)}
.aside .mini img{width:72px;height:54px;object-fit:cover;border-radius:4px;flex:none}
.aside .mini span{font-size:15px;line-height:1.3}
.paginazione{display:flex;gap:8px;justify-content:center;margin-top:36px;flex-wrap:wrap}
.paginazione a,.paginazione span{padding:8px 14px;border:1px solid var(--grigio-chiaro);border-radius:4px;font-size:14px}
.paginazione .att{background:var(--nero);color:var(--oro);border-color:var(--nero)}

/* roster */
.roster{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:18px}
@media (max-width:640px){.roster{grid-template-columns:repeat(2,1fr);gap:10px}.gioc .num{font-size:26px}.gioc .nome{font-size:18px}}
.gioc{background:#fff;border-radius:var(--raggio);overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.06);position:relative}
.gioc .foto{aspect-ratio:4/5;background:linear-gradient(180deg,#2a2a2a,#0d0d0d);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.gioc .foto img{width:100%;height:100%;object-fit:cover;object-position:top}
.gioc .foto .ph{width:50%;opacity:.25;margin-bottom:12%}
.gioc .num{position:absolute;top:10px;left:12px;font-family:var(--font-titoli);font-weight:800;font-size:26px;color:var(--oro);text-shadow:0 2px 6px rgba(0,0,0,.6);line-height:1}
.gioc .info{padding:12px 14px 14px}
.gioc .nome{font-family:var(--font-titoli);font-weight:700;font-size:15px;line-height:1.1;letter-spacing:-.01em}
.gioc .nome small{display:block;font-family:var(--font-testo);font-weight:600;font-size:13px;color:var(--grigio);margin-top:2px}
.gioc .dett{font-size:13px;color:var(--grigio);margin-top:4px;display:flex;gap:10px;flex-wrap:wrap}
.gioc .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:10px;border-top:1px solid var(--grigio-chiaro);padding-top:8px}
.gioc .stats div{text-align:center}.gioc .stats b{display:block;font-family:var(--font-titoli);font-size:15px;line-height:1}.gioc .stats small{font-size:10px;letter-spacing:.1em;color:var(--grigio);text-transform:uppercase}
.staff-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:16px}
.staff-card{display:flex;gap:14px;align-items:center;background:#fff;border-radius:var(--raggio);padding:12px 14px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.staff-card .avatar{width:56px;height:56px;border-radius:50%;background:var(--nero-3);flex:none;overflow:hidden;display:flex;align-items:center;justify-content:center}
.staff-card .avatar img{width:100%;height:100%;object-fit:cover;object-position:top}
.staff-card .avatar .ph{width:55%;opacity:.35}
.staff-card b{font-family:var(--font-titoli);font-weight:700;font-size:14px;letter-spacing:-.01em;display:block;line-height:1.15}
.staff-card small{color:var(--grigio);font-size:13px;line-height:1.25;display:block}
.scura .staff-card{background:var(--nero-2);color:#fff}.scura .staff-card small{color:#aaa}
.altre-squadre{display:flex;gap:8px;flex-wrap:wrap}
.altre-squadre a{font-weight:700;font-size:13px;padding:9px 14px;border:1px solid #333;border-radius:999px;color:#ddd}
.altre-squadre a:hover{border-color:var(--oro);color:var(--oro)}

/* factory / servizi */
.servizi{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:20px}
.servizio{background:var(--nero-2);border:1px solid #262626;border-top:3px solid var(--oro);border-radius:var(--raggio);padding:26px 26px 24px;color:#fff}
.servizio h3{color:var(--oro);margin-bottom:8px}
.servizio p{color:#bbb;font-size:15px}
.servizio ul{padding-left:1.1em;margin:8px 0;color:#ddd;font-size:15px}.servizio li{margin:4px 0}
.servizio .num{font-family:var(--font-titoli);font-weight:800;font-size:40px;color:#2c2c2c;line-height:1;float:right;margin:-8px -4px 0 0}
.obiettivi{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:14px}
.obiettivo{background:#fff;border-radius:var(--raggio);padding:22px 20px;box-shadow:0 1px 2px rgba(0,0,0,.06);font-size:16px;border-left:4px solid var(--oro)}
.obiettivo b{font-family:var(--font-titoli);font-weight:800;font-size:26px;color:var(--oro);display:block;line-height:1;margin-bottom:10px}
.cta-box{background:linear-gradient(135deg,var(--oro),var(--oro-chiaro));color:var(--nero);border-radius:var(--raggio);padding:clamp(28px,4vw,48px);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-box h2{margin:0 0 4px}.cta-box p{margin:0;max-width:60ch}

/* formule iscrizione */
.formule{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:20px}
.formula{background:#fff;border-radius:var(--raggio);padding:26px;box-shadow:0 1px 2px rgba(0,0,0,.06);display:flex;flex-direction:column}
.formula h3{margin-bottom:4px;font-size:24px}.formula .cat{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--oro-scuro);margin-bottom:12px}
.formula p{font-size:15px;color:var(--grigio)}
.formula ul{padding-left:1.1em;font-size:15px;margin:auto 0 0}.formula li{margin:5px 0}
.formula.gold{border-top:4px solid var(--oro)}.formula.silver{border-top:4px solid #b9b9b9}.formula.mini{border-top:4px solid var(--nero)}
.iban-box{background:var(--nero);color:#fff;border-radius:var(--raggio);padding:24px 26px;font-size:15px}
.iban-box dt{color:var(--oro);font-weight:800;letter-spacing:.14em;font-size:11px;text-transform:uppercase;margin-top:12px}
.iban-box dd{margin:0;font-size:17px;word-break:break-all}
.iban-box dl{margin:0}
.passi{counter-reset:p;display:grid;gap:14px}
.passo{background:#fff;border-radius:var(--raggio);padding:20px 22px 20px 70px;position:relative;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.passo::before{counter-increment:p;content:counter(p);position:absolute;left:20px;top:18px;font-family:var(--font-titoli);font-weight:800;font-size:26px;color:var(--oro);line-height:1}
.passo h3{font-size:24px;margin-bottom:6px}.passo p{font-size:15px;margin-bottom:.5em}.passo ul{font-size:15px;padding-left:1.2em;margin:.3em 0}

/* attivita */
.pacchetti{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:14px}
.pacchetto{background:#fff;border:2px solid var(--grigio-chiaro);border-radius:var(--raggio);padding:18px;cursor:pointer;display:block;position:relative}
.pacchetto input{position:absolute;opacity:0}
.pacchetto:has(input:checked){border-color:var(--oro);box-shadow:0 0 0 3px rgba(237,172,47,.25)}
.pacchetto b{font-family:var(--font-titoli);font-weight:700;font-size:15px;display:block;line-height:1.15}
.pacchetto .prezzo{font-family:var(--font-titoli);font-weight:800;font-size:22px;color:var(--oro-scuro);line-height:1;margin:8px 0}
.pacchetto p{font-size:14px;color:var(--grigio);margin:0}
.info-riga{display:flex;gap:28px;flex-wrap:wrap;margin:10px 0 0;color:#ccc;font-size:15px}
.info-riga b{color:var(--oro);font-weight:800;letter-spacing:.14em;font-size:11px;text-transform:uppercase;margin-right:8px}
.dett-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:48px;align-items:start}
@media (max-width:960px){.dett-layout{grid-template-columns:1fr}}
.box-prenota{background:#fff;border-radius:var(--raggio);padding:26px;box-shadow:0 8px 30px rgba(0,0,0,.08);position:sticky;top:96px}
.box-prenota h3{margin-bottom:12px}
.riepilogo{background:#fff;border-radius:var(--raggio);padding:24px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.riepilogo dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--grigio);margin-top:10px}.riepilogo dd{margin:0;font-size:17px}
.avviso{background:#fff7e0;border:1px solid #f1d58c;border-radius:var(--raggio);padding:14px 18px;font-size:15px}
.ok-box{background:#e9f7ea;border:1px solid #b6e2b8;border-radius:var(--raggio);padding:22px;font-size:16px}
.ok-box h2{margin-bottom:6px}

/* form */
.form{display:grid;gap:14px}
.form .riga{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px}
.form label{display:block;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--grigio);margin-bottom:5px}
.form input,.form select,.form textarea{width:100%;font:inherit;font-size:16px;padding:11px 12px;border:1px solid var(--grigio-chiaro);border-radius:4px;background:#fff;color:var(--testo)}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--oro);border-color:var(--oro)}
.form .err input,.form .err select,.form .err textarea{border-color:#c62828;background:#fff5f5}
.form .check{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--grigio);text-transform:none;letter-spacing:0}
.form .check input{width:auto;margin-top:3px}
.form fieldset{border:0;padding:0;margin:8px 0 0}
.form legend{font-family:var(--font-titoli);font-weight:700;font-size:18px;margin-bottom:12px;color:var(--nero)}
.form .hp{position:absolute;left:-9999px}
.errore{background:#fdecea;border:1px solid #f5c2c0;color:#8a1c1c;border-radius:4px;padding:10px 14px;font-size:14px}
.radio-pill{display:flex;gap:8px;flex-wrap:wrap}
.radio-pill label{border:1px solid var(--grigio-chiaro);border-radius:999px;padding:9px 16px;cursor:pointer;text-transform:none;letter-spacing:0;font-size:15px;color:var(--testo);background:#fff;margin:0;display:flex;gap:8px;align-items:center}
.radio-pill label:has(input:checked){background:var(--nero);color:var(--oro);border-color:var(--nero)}
.radio-pill input{width:auto;margin:0}

/* partner */
.loghi{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr));gap:16px}
.loghi a,.loghi div{background:#fff;border-radius:var(--raggio);aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;padding:20px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.loghi img{max-height:80px;width:auto;max-width:100%;object-fit:contain}
.loghi .nome{font-weight:800;font-size:15px;text-align:center;color:var(--grigio)}
.scura .loghi a,.scura .loghi div{background:#fff}

/* social */
.social-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:16px}
.social-card{background:#fff;border-radius:var(--raggio);padding:26px 22px;text-align:center;box-shadow:0 1px 2px rgba(0,0,0,.06);border-top:4px solid var(--oro)}
.social-card b{font-family:var(--font-titoli);font-weight:700;font-size:20px;display:block}
.social-card small{color:var(--grigio);display:block;margin:4px 0 14px;word-break:break-all}
.embeds{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));gap:20px;align-items:start}
.embeds .embed{background:#fff;border-radius:var(--raggio);overflow:hidden;min-height:200px}
.embeds iframe{width:100%;border:0}

/* contatti */
.contatti-griglia{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:18px}
.contatto-card{background:#fff;border-radius:var(--raggio);padding:22px;box-shadow:0 1px 2px rgba(0,0,0,.06)}
.contatto-card h3{font-family:var(--font-testo);font-weight:800;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--oro-scuro);margin-bottom:10px}
.contatto-card a{display:block;padding:3px 0}.contatto-card a:hover{color:var(--oro-scuro)}
.mappa{border-radius:var(--raggio);overflow:hidden;background:#ddd}
.mappa iframe{width:100%;height:380px;border:0;display:block}

/* footer */
.footer{background:var(--nero);color:#aaa;padding:56px 0 28px;font-size:14px}
.footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:36px}
@media (max-width:860px){.footer .cols{grid-template-columns:1fr 1fr}}@media (max-width:520px){.footer .cols{grid-template-columns:1fr}}
.footer h4{font-family:var(--font-testo);font-weight:800;color:var(--oro);letter-spacing:.16em;font-size:11px;text-transform:uppercase;margin-bottom:14px}
.footer a{display:block;padding:3px 0}.footer a:hover{color:var(--oro)}
.footer .flogo img{height:120px;width:auto;margin-bottom:14px}
.footer .social a{display:inline-flex;margin-right:12px}
.footer .bottom{border-top:1px solid #222;margin-top:36px;padding-top:18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#777}
.footer .bottom a{display:inline;padding:0 10px 0 0}

.vuoto{padding:40px;text-align:center;color:var(--grigio);background:#fff;border-radius:var(--raggio)}
.flash{background:var(--oro);color:var(--nero);padding:10px var(--gutter);text-align:center;font-size:15px}
[dir=rtl] .hero h1,[dir=rtl] .pagehead{text-align:right}
@media print{.header,.topbar,.footer,.mnav,.btn{display:none!important}}
