/* v37: header con icone social + ricerca */
.nav-act{display:flex;align-items:center;gap:8px;margin-left:auto}
.nav .nav-act .btn{margin-left:0;padding:9px 14px;font-size:15px}
.ib{display:inline-flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;padding:0;border-radius:50%;border:1px solid transparent;color:#fff;cursor:pointer;text-decoration:none;transition:transform .2s,filter .2s,box-shadow .2s,border-color .2s}
.ib svg{width:19px;height:19px;display:block}
.ib-ig{background:linear-gradient(45deg,#f09433,#dc2743 55%,#bc1888);box-shadow:0 6px 20px -10px rgba(220,39,67,.9)}
.ib-tw{background:#9146FF;box-shadow:0 6px 20px -10px rgba(145,70,255,.9)}
.ib-sr{background:rgba(255,255,255,.04);border-color:var(--line);color:var(--gold)}
.ib:hover{transform:translateY(-2px);filter:brightness(1.1)}
.ib-sr:hover{border-color:var(--gold)}
.ib:focus-visible,.sr-x:focus-visible,.sr-chip:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media (min-width:1281px){.nav-act{margin-left:24px}}
@media (max-width:520px){.nav-act{gap:6px}.ib{width:36px;height:36px}.ib svg{width:18px;height:18px}.nav .nav-act .btn{padding:9px 12px;font-size:14px}}
.sr{position:fixed;inset:0;z-index:100;display:none;background:rgba(8,5,6,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow-y:auto;overscroll-behavior:contain}
.sr.open{display:block;animation:srIn .18s ease-out}
@keyframes srIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.sr-box{max-width:660px;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 18px 48px}
.sr-top{display:flex;align-items:center;gap:12px;border-bottom:2px solid var(--gold);padding:14px 0}
.sr-top>svg{width:24px;height:24px;flex:none;color:var(--gold)}
.sr-in{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--bone);font:600 24px var(--f-display);letter-spacing:.05em;padding:4px 0;-webkit-appearance:none;appearance:none;border-radius:0}
.sr-in::placeholder{color:var(--ash);opacity:.7}
.sr-in::-webkit-search-cancel-button,.sr-in::-webkit-search-decoration{display:none}
.sr-x{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--bone);font-size:16px;line-height:1;cursor:pointer}
.sr-x:hover{border-color:var(--gold)}
.sr-sug{margin-top:22px;display:flex;flex-wrap:wrap;gap:8px}
.sr-lab{flex:0 0 100%;color:var(--ash);font:600 13px var(--f-display);letter-spacing:.16em;text-transform:uppercase}
.sr-chip{border:1px solid var(--line);border-radius:999px;padding:8px 16px;color:var(--bone);background:rgba(255,255,255,.03);font:600 15px var(--f-display);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,color .2s}
.sr-chip:hover{border-color:var(--gold);color:var(--gold)}
.sr-res{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}
.sr-res a{display:block;padding:14px 16px;border:1px solid var(--line);border-left:3px solid var(--ember);border-radius:8px;background:rgba(255,255,255,.025);text-decoration:none;transition:border-color .2s,background .2s}
.sr-res a:hover,.sr-res a:focus{border-color:var(--gold);background:rgba(232,184,94,.07);outline:0}
.sr-k{display:block;color:var(--gold);font:600 12px var(--f-display);letter-spacing:.16em;text-transform:uppercase;margin-bottom:2px}
.sr-t{display:block;color:var(--bone);font:700 19px/1.2 var(--f-display);letter-spacing:.05em;text-transform:uppercase}
.sr-d{display:block;color:var(--ash);font:400 14px/1.45 var(--f-body);margin-top:5px}
.sr-none{color:var(--ash);font:400 15px/1.5 var(--f-body);padding:8px 2px}
@media (prefers-reduced-motion:reduce){.sr.open{animation:none}.ib,.sr-chip,.sr-res a{transition:none}}

/* v41: testo leggermente piu grande su desktop (richiesta di Davide); su telefono invariato */
@media(min-width:900px){body>*:not(.nav):not(.ticker):not(script):not(style):not(#sr){zoom:1.1}}

/* v74: menu più largo su desktop per le nuove voci (Mappe, Classi, Galleria, UI, La gilda) */
@media (min-width:1281px){.nav .wrap{max-width:1380px}.links{gap:18px;letter-spacing:.09em}}
/* v77: menu più compatto tra 1281 e 1600 px, così "Officer e roster" ci sta senza tagliare Candidati */
@media (min-width:1281px) and (max-width:1600px){.nav .wrap{gap:14px}.nav .brand{margin-right:6px}.nav .links{gap:13px;font-size:14px;letter-spacing:.07em}.nav .nav-act{margin-left:10px;gap:6px}.nav .ib{width:34px;height:34px}.nav .nav-act .btn{padding:8px 12px;font-size:14px}}

/* v86: voce Counselor nel menu, compattato tra 1281 e 1500 px perche Candidati resti visibile */
@media (min-width:1281px) and (max-width:1500px){.nav .links{gap:9px;font-size:13px;letter-spacing:.04em}.nav .links a.nw::after{margin-left:4px;width:6px;height:6px}.nav .wrap{gap:10px}.nav .nav-act{margin-left:6px;gap:5px}.nav .nav-act .btn{padding:8px 10px;font-size:13px}}
