/* Tuttoballo global header — aligned with the plum/fuchsia design system */
:root{--tb-header-ink:#18141c;--tb-header-plum:#6f1d55;--tb-header-fuchsia:#c42b7b;--tb-header-cream:#fff8f3;--tb-header-line:#eadfe7}
body.tb-header-refresh .site-header{min-height:74px;margin-bottom:0;color:#fff;background:radial-gradient(circle at 78% -35%,rgba(255,183,212,.34),transparent 31%),linear-gradient(132deg,#271126 0%,#591947 52%,#8f1e61 100%)!important;border-bottom:1px solid rgba(255,255,255,.13);box-shadow:0 10px 30px rgba(49,15,39,.18);z-index:1003}
body.tb-header-refresh .site-header-content{width:100%;max-width:1180px;min-height:74px;padding:0 20px;gap:16px}
body.tb-header-refresh .site-logo,body.tb-header-refresh .site-name{padding:0;line-height:0}
body.tb-header-refresh .site-logo img{display:block;width:auto;max-height:62px;filter:brightness(0) invert(1);transition:transform .2s ease}
body.tb-header-refresh .site-logo a:hover img{transform:translateY(-1px)}
body.tb-header-refresh .search-header form{border-radius:14px;overflow:hidden;box-shadow:0 8px 24px rgba(20,4,17,.16)}
body.tb-header-refresh .search-header input{min-height:44px;border:1px solid rgba(255,255,255,.3)!important;background:rgba(255,255,255,.95)!important;border-radius:14px!important;color:var(--tb-header-ink)!important}
body.tb-header-refresh .search-header button{color:var(--tb-header-plum)!important}
body.tb-header-refresh #menu>ul>li{background:transparent}
body.tb-header-refresh #menu>ul>li>a{display:flex;align-items:center;min-height:42px;padding:0 14px!important;border-radius:11px;color:#fff!important;font-weight:750;letter-spacing:.01em;transition:background .2s ease,transform .2s ease}
body.tb-header-refresh #menu>ul>li>a:hover{background:rgba(255,255,255,.13);transform:translateY(-1px)}
body.tb-header-refresh #menu>ul>li>ul{padding:8px;border:1px solid var(--tb-header-line);border-radius:14px;background:#fff;box-shadow:0 18px 42px rgba(42,15,34,.18)}
body.tb-header-refresh #menu>ul>li>ul a{border-radius:8px;color:var(--tb-header-ink)!important}
body.tb-header-refresh #menu>ul>li>ul a:hover{background:#f8edf4;color:var(--tb-header-plum)!important}
body.tb-header-refresh #vcs-header-auth{top:14px;right:18px}
body.tb-header-refresh #vcs-header-auth .vcs-hdr-btn{min-height:46px;padding:10px 18px;border:1px solid rgba(255,255,255,.24);border-radius:14px;background:rgba(255,255,255,.11)!important;box-shadow:0 10px 26px rgba(31,7,24,.2);backdrop-filter:blur(12px)}
body.tb-header-refresh #vcs-header-auth .vcs-hdr-btn:hover{background:rgba(255,255,255,.19)!important}
body.tb-header-refresh .tb-header-overlay{position:fixed;inset:74px 0 0;z-index:1000;background:rgba(24,8,20,.62);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease;backdrop-filter:blur(3px)}
body.tb-header-refresh.tb-menu-open .tb-header-overlay{opacity:1;visibility:visible;pointer-events:auto}
body.tb-header-refresh.tb-menu-open{overflow:hidden}

/* Footer: same plum/fuchsia surface and soft-glass language as the header. */
body.tb-header-refresh footer{position:relative;overflow:hidden;margin:0!important;color:#f7eaf1!important;background:radial-gradient(circle at 82% 8%,rgba(255,183,212,.24),transparent 26%),radial-gradient(circle at 8% 92%,rgba(240,93,94,.16),transparent 32%),linear-gradient(132deg,#271126 0%,#591947 52%,#8f1e61 100%)!important;border-top:1px solid rgba(255,255,255,.16);box-shadow:inset 0 1px rgba(255,255,255,.08)}
body.tb-header-refresh footer:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.2) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,#000 40%,transparent)}
body.tb-header-refresh footer .content-footer{position:relative;z-index:1;max-width:1180px;margin:0 auto!important;padding:58px 28px 48px!important;background:transparent!important;box-shadow:none!important}
body.tb-header-refresh footer .widget-content-footer{display:grid!important;grid-template-columns:minmax(165px,.72fr) minmax(190px,1fr) minmax(190px,.85fr);gap:38px;align-items:start}
body.tb-header-refresh footer .widget-content-footer>.widget-area:nth-of-type(3){display:none!important}
body.tb-header-refresh footer .logo-footer{margin:0!important;padding:0!important;line-height:0}
body.tb-header-refresh footer .logo-footer img{display:block;width:auto;max-width:118px;max-height:112px;filter:brightness(0) invert(1);opacity:.96}
body.tb-header-refresh footer .widget-area{margin:0!important;min-width:0;color:#f1dce9!important}
body.tb-header-refresh footer .widget-area h4,body.tb-header-refresh footer .widget-area .widget-title{position:relative;margin:0 0 16px!important;padding:0 0 10px!important;color:#fff!important;font-size:.75rem!important;font-weight:900!important;letter-spacing:.12em!important;line-height:1.2!important;text-transform:uppercase!important}
body.tb-header-refresh footer .widget-area h4:after,body.tb-header-refresh footer .widget-area .widget-title:after{content:"";position:absolute;bottom:0;left:0;width:26px;height:2px;border-radius:2px;background:#ffb7d4}
body.tb-header-refresh footer .widget-area ul{margin:0!important;padding:0!important;list-style:none!important}
body.tb-header-refresh footer .widget-area li{margin:0!important;padding:0!important}
body.tb-header-refresh footer .widget-area a{display:inline-flex!important;align-items:center;min-height:30px;color:#f4e4ee!important;font-size:.91rem;text-decoration:none!important;transition:color .18s ease,transform .18s ease}
body.tb-header-refresh footer .widget-area a:before{content:"›";display:inline-block;margin-right:8px;color:#ffb7d4;font-size:1.2rem;line-height:1;transition:transform .18s ease}
body.tb-header-refresh footer .widget-area a:hover{color:#fff!important;transform:translateX(3px)}
body.tb-header-refresh footer .widget-area a:hover:before{transform:translateX(2px)}
body.tb-header-refresh footer .nsl-container{margin:0!important}
body.tb-header-refresh footer .nsl-container a:before{content:none!important}
body.tb-header-refresh footer .nsl-button{min-height:46px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:13px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 10px 25px rgba(24,5,19,.18)!important;transition:transform .18s ease,box-shadow .18s ease!important}
body.tb-header-refresh footer .nsl-button:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(24,5,19,.25)!important}
body.tb-header-refresh .go-top{position:relative!important;z-index:2;margin:0!important;padding:14px 20px!important;border:0!important;border-radius:0!important;color:#fff!important;background:linear-gradient(90deg,#5a1b48,#84255f)!important;box-shadow:inset 0 1px rgba(255,255,255,.12)}
body.tb-header-refresh .go-top:hover{background:linear-gradient(90deg,#6f1d55,#9b2d70)!important}
body.tb-header-refresh .go-top .arrow{border-color:#fff!important}

@media(min-width:1050px){
 body.tb-header-refresh .site-header-content{padding-right:215px}
 body.tb-header-refresh #nav-icon{display:none!important}
 body.tb-header-refresh #menu{transform:none!important}
}

@media(max-width:1049px){
 body.tb-header-refresh{padding-top:72px!important}
 body.tb-header-refresh .site-header{position:fixed!important;top:0;left:0;right:0;min-height:72px;height:72px}
 body.tb-header-refresh .site-header-content{min-height:72px;height:72px;padding:0 72px;justify-content:center}
 body.tb-header-refresh .site-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1}
 body.tb-header-refresh .site-logo img{max-height:60px;max-width:70px}
 body.tb-header-refresh .site-header-content>div:last-child{position:absolute;left:12px;top:12px;width:48px;height:48px;margin:0;z-index:3}
 body.tb-header-refresh #nav-icon{position:static!important;display:grid!important;place-items:center;width:48px!important;height:48px!important;line-height:1!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.32);border-radius:14px;background:rgba(255,255,255,.11)!important;box-shadow:0 8px 20px rgba(28,6,22,.2);cursor:pointer;z-index:1004!important;-webkit-tap-highlight-color:transparent}
 body.tb-header-refresh #nav-icon:hover,body.tb-header-refresh #nav-icon:focus-visible{background:rgba(255,255,255,.2)!important;outline:2px solid #ffc2d9;outline-offset:2px}
 body.tb-header-refresh #nav-icon .circle{position:relative;width:24px;height:20px}
 body.tb-header-refresh #nav-icon .line{left:0;width:24px;height:2px;background:#fff!important;border-radius:3px;transform-origin:center;transition:top .2s ease,transform .2s ease,opacity .15s ease}
 body.tb-header-refresh #nav-icon .top{top:2px}
 body.tb-header-refresh #nav-icon .middle{top:9px}
 body.tb-header-refresh #nav-icon .bottom{top:16px}
 body.tb-header-refresh #nav-icon[aria-expanded="true"] .top{top:9px;transform:rotate(45deg)}
 body.tb-header-refresh #nav-icon[aria-expanded="true"] .middle{opacity:0}
 body.tb-header-refresh #nav-icon[aria-expanded="true"] .bottom{top:9px;transform:rotate(-45deg)}
 body.tb-header-refresh #menu{position:fixed!important;display:block!important;top:72px!important;bottom:0!important;left:0!important;right:auto!important;width:min(88vw,370px)!important;height:calc(100dvh - 72px)!important;max-height:none!important;margin:0!important;padding:14px 14px 34px!important;border:0!important;border-radius:0 22px 0 0!important;background:var(--tb-header-cream)!important;box-shadow:18px 0 45px rgba(39,17,38,.22);overflow-y:auto!important;transform:translateX(-105%)!important;transition:transform .22s ease!important;z-index:1002!important}
 body.tb-header-refresh #btn-menu:checked~#menu{transform:translateX(0)!important}
 body.tb-header-refresh #menu .search-responsive{display:block!important;margin:0 0 12px;padding:0;background:transparent!important;border:0}
 body.tb-header-refresh #menu .search-responsive form{display:flex;border:1px solid var(--tb-header-line);border-radius:13px;background:#fff;overflow:hidden}
 body.tb-header-refresh #menu .search-responsive input{height:48px!important;border:0!important;background:#fff!important;color:var(--tb-header-ink)!important;font-size:15px!important}
 body.tb-header-refresh #menu .search-responsive .s-btn{height:48px!important;color:var(--tb-header-plum)!important}
 body.tb-header-refresh #menu>ul{font-size:16px!important}
 body.tb-header-refresh #menu>ul>li{display:block!important;width:100%!important;margin:0 0 7px!important;border:1px solid var(--tb-header-line);border-radius:13px;background:#fff!important;overflow:hidden}
 body.tb-header-refresh #menu>ul>li>a{min-height:50px;padding:0 16px!important;border-radius:0;color:var(--tb-header-ink)!important;font-weight:800}
 body.tb-header-refresh #menu>ul>li>a:hover{background:#f8edf4!important;color:var(--tb-header-plum)!important;transform:none}
 body.tb-header-refresh #menu>ul>li>ul{padding:0 8px!important;border:0;border-top:1px solid var(--tb-header-line);border-radius:0;box-shadow:none;background:#fff}
 body.tb-header-refresh #menu>ul>li>ul a{padding:11px 12px!important;color:#4c3e49!important}
 body.tb-header-refresh #vcs-header-auth{position:fixed;top:13px;right:12px;z-index:1004}
 body.tb-header-refresh #vcs-header-auth .vcs-hdr-btn{display:grid;width:46px;height:46px;min-height:46px;padding:0!important;place-items:center;border-radius:14px!important;background:rgba(255,255,255,.11)!important}
 body.tb-header-refresh #vcs-header-auth .vcs-hdr-icon{font-size:19px;line-height:1}
 body.tb-header-refresh #vcs-header-auth .vcs-hdr-text{display:none!important}
 body.tb-header-refresh .tb-header-overlay{inset:72px 0 0}
 body.tb-header-refresh footer .content-footer{padding:42px 22px 38px!important}
 body.tb-header-refresh footer .widget-content-footer{display:flex!important;flex-direction:column;gap:32px}
 body.tb-header-refresh footer .logo-footer img{max-width:106px;max-height:98px}
 body.tb-header-refresh footer .widget-area{width:100%}
 body.tb-header-refresh footer .widget-area:empty{display:none!important}
 body.tb-header-refresh footer .widget-area h4,body.tb-header-refresh footer .widget-area .widget-title{margin-bottom:13px!important}
 body.tb-header-refresh footer .widget-area a{min-height:29px}
 body.tb-header-refresh .go-top{padding:13px 20px!important}
}

@media(max-width:380px){
 body.tb-header-refresh .site-header-content{padding-left:66px;padding-right:66px}
 body.tb-header-refresh .site-header-content>div:last-child{left:9px}
 body.tb-header-refresh #vcs-header-auth{right:9px}
}

@media(prefers-reduced-motion:reduce){body.tb-header-refresh #menu,body.tb-header-refresh .tb-header-overlay,body.tb-header-refresh #nav-icon .line,body.tb-header-refresh footer .widget-area a{transition:none!important}}
