/* VSFF Servizi 2026: accesso streaming e download documenti (grafica 2026) */
.vsffsrv,.vsffsrv-doc{--srv-blu:#1d345c;--srv-azzurro:#85CCF5;--srv-chiaro:#e8f4fd;max-width:880px;margin:0 auto;font-family:'Jost',sans-serif;color:var(--srv-blu)}
.vsffsrv__msg{background:var(--srv-chiaro);padding:28px;text-align:center;font-size:18px}
.vsffsrv__scelta{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}
.vsffsrv__tab{flex:1;min-width:220px;border:1px solid var(--srv-blu);background:#fff;color:var(--srv-blu);padding:12px 16px;font-weight:500;letter-spacing:.04em;cursor:pointer}
.vsffsrv__tab.is-attivo{background:var(--srv-blu);color:#fff}
.vsffsrv__pannello{background:var(--srv-chiaro);padding:24px}
.vsffsrv__form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.vsffsrv__form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:500}
.vsffsrv__form input{border:1px solid #b9cbe0;padding:10px 12px;font-size:16px;background:#fff}
.vsffsrv__form .vsffsrv__btn{grid-column:1 / -1;justify-self:start}
.vsffsrv__btn{background:var(--srv-blu);color:#fff;border:0;padding:12px 28px;letter-spacing:.06em;cursor:pointer}
.vsffsrv__btn:hover{background:#2a4a80}
.vsffsrv__errore{background:#fff;border-left:4px solid #c0392b;padding:10px 14px;margin:0 0 16px}
.vsffsrv__video{position:relative;padding-bottom:56.25%;height:0;background:#000}
.vsffsrv__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vsffsrv__alt{font-size:14px;margin-top:10px}
.vsffsrv__alt a{color:var(--srv-blu);text-decoration:underline}
.vsffsrv-doc__griglia{display:flex;flex-wrap:wrap;gap:50px}
/* card identiche a quelle della sezione Documents (.docbox2026): riquadro 210px + titolo maiuscolo */
.vsffsrv-doc__card{all:unset;box-sizing:border-box;width:210px;cursor:pointer;display:flex;flex-direction:column;gap:24px}
.vsffsrv-doc__card:focus-visible{outline:2px solid var(--srv-blu);outline-offset:4px}
.vsffsrv-doc__icona{display:block;width:100%;height:auto}
.vsffsrv-doc__titolo{font-family:'Jost',sans-serif;font-size:17px;font-weight:600;letter-spacing:1.36px;text-transform:uppercase;color:#111;line-height:1.3}
.vsffsrv-doc__card:hover .vsffsrv-doc__titolo{text-decoration:underline}
@media (max-width:767px){.vsffsrv-doc__griglia{gap:16px}.vsffsrv-doc__card{width:calc((100% - 16px)/2)}.vsffsrv-doc__titolo{font-size:14px}}
.vsffsrv-doc__modale{position:fixed;inset:0;background:rgba(29,52,92,.75);z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}
.vsffsrv-doc__modale[hidden]{display:none}
.vsffsrv-doc__box{background:#fff;max-width:620px;width:100%;max-height:90vh;overflow:auto;padding:32px 28px;position:relative}
.vsffsrv-doc__chiudi{position:absolute;top:8px;right:12px;border:0;background:none;font-size:32px;line-height:1;color:var(--srv-blu);cursor:pointer}
.vsffsrv-doc__nome{font-size:20px;font-weight:600;margin:0 0 16px}
.vsffsrv-doc__link a{color:var(--srv-blu);text-decoration:underline;font-weight:500}
@media (max-width:600px){.vsffsrv__form{grid-template-columns:1fr}.vsffsrv__pannello{padding:16px}}
/* form documenti nel popup bianco: il tema colora le etichette Ninja Forms di bianco (pensate per fondo blu) */
.vsffsrv-doc__box .nf-form-cont label,.vsffsrv-doc__box .nf-form-cont .nf-field-description,.vsffsrv-doc__box .nf-form-cont .nf-form-fields-required,.vsffsrv-doc__box .nf-response-msg{color:var(--srv-blu)!important}
.vsffsrv-doc__box .nf-form-cont .nf-field-element input[type=button],.vsffsrv-doc__box .nf-form-cont .submit-container input{background:var(--srv-blu)!important;color:#fff!important;border:0!important;padding:12px 28px!important;letter-spacing:.06em}
.vsffsrv-doc__box .nf-form-cont label a{color:var(--srv-blu)!important;text-decoration:underline}
.vsffsrv__attesa{text-align:center;padding:24px}

/* riquadro del consenso YouTube dentro il player 16:9 */
.vsffsrv__video .vsff-yt-facade{position:absolute!important;inset:0;aspect-ratio:auto!important;height:100%}
/* documenti con form nella sezione Documents della home: stessa larghezza delle card esistenti */
.docform2026 .vsffsrv-doc{max-width:var(--doc26-max,1280px);margin-top:50px}
/* --- v1.2: sezione larga come la griglia della pagina + popup della diretta --- */
.vsffsrv-sezione{max-width:var(--ag26-max,1253px);margin:0 auto;background:var(--srv-chiaro,#e8f4fd);padding:40px 24px;text-align:center;font-family:'Jost',sans-serif;color:#1d345c}
.vsffsrv-sezione__testo{font-size:20px;margin:0 0 20px}
.vsffsrv-sezione .vsffsrv__btn,.vsffsrv-modale .vsffsrv__btn{background:#1d345c;color:#fff;border:0;padding:14px 32px;letter-spacing:.06em;cursor:pointer;font-family:'Jost',sans-serif}
.vsffsrv-modale{position:fixed;inset:0;z-index:10001;background:rgba(29,52,92,.8);display:flex;align-items:center;justify-content:center;padding:16px}
.vsffsrv-modale[hidden]{display:none}
.vsffsrv-modale__box{position:relative;background:#85CCF5;width:min(1253px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:40px 32px 32px}
.vsffsrv-modale__chiudi{position:absolute;top:10px;right:14px;border:0;background:none;font-size:36px;line-height:1;color:#1d345c;cursor:pointer}
.vsffsrv-modale__titolo{font-family:'Jost',sans-serif;font-size:30px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-align:center;color:#111;margin:0 0 24px}
.vsffsrv-modale .vsffsrv{max-width:none}
/* il player occupa la larghezza ma resta tutto visibile senza scroll (16:9 limitato dall'altezza della finestra) */
.vsffsrv-modale .vsffsrv__video{padding-bottom:0;height:auto;aspect-ratio:16/9;max-height:calc(100vh - 220px);margin:0 auto;width:min(100%,calc((100vh - 220px) * 16 / 9))}
html.vsffsrv-aperto,html.vsffsrv-aperto body{overflow:hidden}
@media (max-width:600px){.vsffsrv-modale__box{padding:36px 14px 16px}.vsffsrv-modale__titolo{font-size:22px}.vsffsrv-sezione__testo{font-size:17px}}
/* card con form spostate nella riga delle card Documents: occupano la colonna come le altre */
.docbox2026 .vsffsrv-doc__card{width:100%}
.vsffsrv-doc__griglia[hidden]{display:none}
.docform2026 .vsffsrv-doc{margin-top:0}
/* copertina "tappo" 16:9 quando la diretta non è attiva */
.vsffsrv--chiuso{max-width:1253px}
.vsffsrv__copertina{aspect-ratio:16/9;background:var(--srv-chiaro,#e8f4fd)}
.vsffsrv__copertina-img{display:block;width:100%;height:100%;object-fit:cover}
.vsffsrv-modale .vsffsrv__copertina{max-height:calc(100vh - 220px);margin:0 auto;width:min(100%,calc((100vh - 220px) * 16 / 9))}
.vsffsrv__nota{text-align:center;font-size:17px;font-weight:300;margin:14px 0 0}
