/* Menu del sito (bozza menu B, 29/10/2026). Caricato dal modulo «Menu aree tematiche», che sta nel mega menu di Helix
 * su «Aree Tematiche» e quindi è presente in tutte le pagine. Classi: intestazione Helix (#sp-header, .sp-megamenu-parent),
 * voce mega «ff-mega» (classe personalizzata della voce 193), pulsante «ff-nav-cta» (classe link della voce Associati 114),
 * pannello .ffm-*, menu per telefono .offcanvas-menu (decorato da menu.js). */
#sp-header{--ffr:#b14147;--ffrv:#c8102e;--ffrd:#9e0c24;--ffink:#1a1a1a;--ffmu:#6b6b6b;--ffln:#ececec;--ffalt:#faf6f6;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-bottom:1px solid var(--ffln);box-shadow:0 6px 24px rgba(0,0,0,.06)!important}

/* voci */
#sp-header .sp-megamenu-parent{display:flex!important;align-items:center;gap:4px;margin:0}
@media (max-width:991.98px){#sp-header .sp-megamenu-parent{display:none!important}}
#sp-header .sp-megamenu-parent>li{display:flex;align-items:center;padding:0;margin:0}
#sp-header .sp-megamenu-parent>li>a,#sp-header .sp-megamenu-parent>li>span{display:inline-flex;align-items:center;gap:4px;line-height:1.2!important;padding:10px 14px!important;border-radius:999px;font-family:Montserrat,sans-serif;font-weight:600;font-size:15px;color:var(--ffink)!important;transition:background .2s,color .2s;cursor:pointer}
#sp-header .sp-megamenu-parent>li>a:hover,#sp-header .sp-megamenu-parent>li>span:hover,#sp-header .sp-megamenu-parent>li:hover>span{background:var(--ffalt)}
#sp-header .sp-megamenu-parent>li.active>a,#sp-header .sp-megamenu-parent>li.ff-mega:hover>span,#sp-header .sp-megamenu-parent>li.ff-mega:focus-within>span{background:#fbe9ec;color:var(--ffrd)!important}
#sp-header .sp-megamenu-parent>li.sp-has-child>span::after,#sp-header .sp-megamenu-parent>li.sp-has-child>a::after{transition:transform .2s}
#sp-header .sp-megamenu-parent>li.sp-has-child:hover>span::after{transform:rotate(180deg)}
/* «Associati» (voce 114) e «Accedi» come pulsanti */
#sp-header .sp-megamenu-parent>li>a.ff-nav-cta{background:var(--ffr);color:#fff!important;font-weight:700;font-size:14px;padding:11px 20px!important;margin-left:6px;box-shadow:0 8px 18px rgba(177,65,71,.28)}
#sp-header .sp-megamenu-parent>li>a.ff-nav-cta:hover{background:var(--ffrd)}
#sp-header .sp-megamenu-parent>li:has(>a.ff-nav-cta){order:10}
#sp-header .header-modules{margin-left:8px}
#sp-header .sp-sign-in{display:inline-flex;align-items:center;gap:6px;font-family:Montserrat,sans-serif;font-weight:700;font-size:14px;color:var(--ffr)!important;padding:9px 16px;border:2px solid #ecd3d6;border-radius:999px;line-height:1.2;transition:border-color .2s,background .2s}
#sp-header .sp-sign-in:hover{border-color:var(--ffr);background:#fff}
#sp-header .sp-sign-in .fa-user{margin:0!important}
/* portatili piccoli (992-1199): voci più strette, «Accedi» solo icona, tutto su una riga */
@media (min-width:992px) and (max-width:1199.98px){
 #sp-header .container-inner>.row{flex-wrap:nowrap}
 #sp-header .sp-megamenu-parent{gap:0}
 #sp-header .sp-megamenu-parent>li>a,#sp-header .sp-megamenu-parent>li>span{padding:9px 10px!important;font-size:14px}
 #sp-header .sp-megamenu-parent>li>a.ff-nav-cta{padding:10px 15px!important;font-size:13.5px;margin-left:4px}
 #sp-header .sp-sign-in{padding:9px 11px}
 #sp-header .sp-sign-in .signin-text{display:none!important}
}
@media (min-width:992px){
 #sp-header #offcanvas-toggler{display:none!important}
 #sp-header .sp-megamenu-parent{order:1}
 #sp-header .header-modules{order:2}
}

/* pannello delle aree (mega menu a tutta larghezza sotto l'intestazione) */
#sp-header .sp-megamenu-parent>li.ff-mega{position:static}
/* il pannello si allinea all'intestazione: tutti i contenitori tra lui e #sp-header devono essere «static» */
#sp-header #sp-menu,#sp-header #sp-menu>.sp-column,#sp-header .sp-megamenu-wrapper,#sp-header .sp-megamenu-parent,#sp-header>.container,#sp-header .container-inner,#sp-header .container-inner>.row{position:static!important}
#sp-header .ff-mega>.sp-dropdown{left:0!important;right:0!important;top:100%!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff;border-top:1px solid var(--ffln);box-shadow:0 30px 60px rgba(0,0,0,.18)}
/* ponte invisibile tra la voce e il pannello: scendendo col mouse non si esce dalla voce (altrimenti il pannello si chiude) */
#sp-header .ff-mega>.sp-dropdown{overflow:visible!important}
#sp-header .ff-mega>.sp-dropdown::before{content:"";position:absolute;left:0;right:0;top:-30px;height:31px;background:transparent}
#sp-header .ff-mega>.sp-dropdown .sp-dropdown-inner{background:#fff;padding:0!important;box-shadow:none!important;border-radius:0}
#sp-header .ff-mega>.sp-dropdown .row{margin:0}
#sp-header .ff-mega>.sp-dropdown .row>[class*=col-]{padding:0;width:100%;max-width:none;flex:1 1 100%}
#sp-header .ff-mega>.sp-dropdown .sp-mega-group,#sp-header .ff-mega>.sp-dropdown .sp-mega-group>li{list-style:none;margin:0;padding:0}
.ffm{display:grid;grid-template-columns:240px minmax(0,1fr) 270px;gap:30px;max-width:1200px;margin:0 auto;padding:30px 24px 32px;font-family:Montserrat,sans-serif;text-align:left}
.ffm-kick{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#b14147;margin-bottom:8px}
.ffm .ffm-tit{font-size:24px;font-weight:800;color:#1a1a1a;line-height:1.15;margin:0 0 10px}
.ffm .ffm-txt{font-size:14px;line-height:1.55;color:#6b6b6b;margin:0 0 16px}
.ffm a{text-decoration:none!important}
.ffm .ffm-lnk{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:#b14147!important;font-size:14px}
.ffm .ffm-lnk .fas{font-size:12px;transition:transform .2s}
.ffm .ffm-lnk:hover .fas,.ffm-news:hover .ffm-lnk .fas{transform:translateX(3px)}
.ffm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 14px;align-content:start;list-style:none;margin:0;padding:0}
.ffm-grid li{margin:0;padding:0}
.ffm .ffm-area{display:flex;align-items:center;gap:14px;padding:10px 12px;border-radius:16px;transition:background .2s}
.ffm .ffm-area:hover,.ffm .ffm-area:focus-visible{background:#faf6f6}
.ffm-ai{flex:none;width:48px;height:48px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;font-size:21px;transition:transform .2s}
.ffm-area:hover .ffm-ai{transform:scale(1.06)}
.ffm-at{display:flex;flex-direction:column;gap:1px;min-width:0;line-height:1.3}
.ffm-an{font-size:14.5px;font-weight:800;letter-spacing:.03em;color:#1a1a1a}
.ffm-an i{font-style:normal;color:#c8102e}
.ffm-at small{font-size:12.5px;color:#6b6b6b}
.ffm-at small.ffm-ac{font-size:11.5px;color:#999}
.ffm-ac em{font-style:normal;color:#c8102e;font-weight:700}
.ffm .ffm-news{display:flex;flex-direction:column;background:#faf6f6;border-radius:20px;overflow:hidden;align-self:start;transition:box-shadow .2s}
.ffm .ffm-news:hover{box-shadow:0 12px 26px rgba(0,0,0,.1)}
.ffm-news-img{position:relative;display:block;aspect-ratio:16/10;background:#eee center/cover}
.ffm-news-img .ffm-an{position:absolute;left:10px;top:10px;background:#fff;border-radius:999px;padding:4px 10px;font-size:11px}
.ffm-news-b{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px}
.ffm-news-b small{font-size:11.5px;font-weight:600;color:#6b6b6b}
.ffm-news-b b{font-size:14.5px;line-height:1.35;color:#1a1a1a}
@media (max-width:1199.98px){.ffm{grid-template-columns:minmax(0,1fr) 250px}.ffm-intro{display:none}}

/* telefono: intestazione */
.ffm-cta-mob{display:none}
@media (max-width:991.98px){
 #sp-header .ffm-cta-mob{display:inline-flex;align-items:center;font-family:Montserrat,sans-serif;font-weight:700;font-size:13px;color:#fff!important;background:#b14147;border-radius:999px;padding:8px 14px;margin:0 8px;line-height:1.2;white-space:nowrap}
 #sp-header .sp-sign-in{padding:7px 10px;border-width:0}
 #sp-header #offcanvas-toggler{width:42px;height:42px;border-radius:12px;background:#faf6f6;justify-content:center}
}

/* telefono: pannello del menu bianco a tutto schermo, aree a griglia con icone */
body .offcanvas-menu{background:#fff!important;width:min(100vw,440px)!important}
body.ltr.offcanvs-position-right .offcanvas-menu{right:calc(-1 * min(100vw,440px))!important}
body.ltr.offcanvs-position-right.offcanvas-active .offcanvas-menu{right:0!important}
body .offcanvas-menu .burger-icon>span{background:#1a1a1a!important}
body .offcanvas-menu .offcanvas-inner{padding:4px 18px 24px}
body .offcanvas-menu .offcanvas-inner ul.menu{display:flex;flex-direction:column}
body .offcanvas-menu .offcanvas-inner ul.menu>li{border-bottom:1px solid #ececec;margin:0;padding:0}
body .offcanvas-menu .offcanvas-inner ul.menu>li>a,body .offcanvas-menu .offcanvas-inner ul.menu>li>span{display:flex!important;align-items:center;justify-content:space-between;padding:14px 6px!important;font-family:Montserrat,sans-serif;font-size:17px!important;font-weight:700!important;color:#1a1a1a!important;opacity:1!important}
body .offcanvas-menu .offcanvas-inner ul.menu>li>a::after{content:"\f054";font-family:"Font Awesome 6 Free";font-weight:900;font-size:12px;color:#bbb}
body .offcanvas-menu .offcanvas-inner ul.menu>li.active>a{color:#9e0c24!important}
body .offcanvas-menu .offcanvas-inner ul.menu>li.ffm-off-aree>span{color:#9e0c24!important;cursor:default}
body .offcanvas-menu .offcanvas-inner ul.menu>li.ffm-off-aree .menu-toggler{display:none!important}
body .offcanvas-menu .offcanvas-inner ul.menu>li.ffm-off-aree>ul.menu-child{display:grid!important;grid-template-columns:1fr 1fr;gap:6px;padding:0 0 14px!important;margin:0!important;height:auto!important;opacity:1!important;visibility:visible!important}
body .offcanvas-menu .offcanvas-inner ul.menu>li.ffm-off-aree>ul.menu-child>li{margin:0;padding:0;border:0}
body .offcanvas-menu .offcanvas-inner ul.menu>li.ffm-off-aree>ul.menu-child>li>a{display:flex!important;align-items:center;gap:8px;padding:8px!important;border-radius:14px;background:#faf6f6;font-family:Montserrat,sans-serif;font-size:12px!important;font-weight:800!important;letter-spacing:.02em;color:#1a1a1a!important;line-height:1.2;opacity:1!important}
body .offcanvas-menu .offcanvas-inner ul.menu li a .ffm-off-t span{color:#1a1a1a!important}
body .offcanvas-menu .offcanvas-inner ul.menu li a .ffm-off-t span i{color:#c8102e!important}
body .offcanvas-menu .offcanvas-inner ul.menu li a .ffm-off-ic span{color:inherit!important}
.ffm-off-ic{flex:none;width:36px;height:36px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-size:16px}
.ffm-off-t{display:flex;flex-direction:column;min-width:0}
.ffm-off-t i{font-style:normal;color:#c8102e}
.ffm-off-t small{font-size:10.5px;font-weight:500;letter-spacing:0;color:#6b6b6b;line-height:1.25;margin-top:2px}
body .offcanvas-menu .offcanvas-inner ul.menu>li>a.ff-nav-cta{justify-content:center;margin:16px 0 4px;background:#b14147;color:#fff!important;border-radius:999px;padding:14px!important;font-size:15.5px!important}
body .offcanvas-menu .offcanvas-inner ul.menu>li:has(>a.ff-nav-cta){border-bottom:0;order:10}
body .offcanvas-menu .offcanvas-inner ul.menu>li>a.ff-nav-cta::after{content:none}
@media (prefers-reduced-motion:reduce){.ffm .ffm-area,.ffm-ai,.ffm .ffm-lnk .fas,#sp-header .sp-megamenu-parent>li>a{transition:none}}
