/* Borsani - header flottante: Grafite con logo bianco, poi Pietra con logo predefinito allo scroll (Mr. Soluzioni Digitali) */
#header.ct-header{position:sticky;top:0;z-index:100;padding:14px 16px 0;background:transparent!important;pointer-events:none}
.admin-bar #header.ct-header{top:32px}
@media (max-width:782px){.admin-bar #header.ct-header{top:46px}}
@media (max-width:600px){.admin-bar #header.ct-header{top:0}}
#header [data-device]{background:transparent!important}
#header [data-row]{pointer-events:auto}
#header [data-row="middle"]{max-width:1340px;margin:0 auto;border-radius:6px;background:#231F1C!important;border:0!important;box-shadow:0 18px 40px -28px rgba(35,31,28,.55);transition:background .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,backdrop-filter .45s}
#header [data-row="middle"]>.ct-container{min-height:76px;height:76px;padding-inline:26px;max-width:none;width:100%;transition:height .45s cubic-bezier(.2,.7,.2,1),min-height .45s cubic-bezier(.2,.7,.2,1)}

/* centratura verticale esatta: logo, menu, pulsante, hamburger */
#header [data-row="middle"]>.ct-container{align-items:center}
#header [data-row="middle"] [data-column]{display:flex;align-items:center;height:100%}
#header [data-id="logo"]{display:flex;align-items:center;align-self:center;height:auto;margin-block:0!important}
#header .site-logo-container{display:flex;align-items:center;line-height:0}
#header .site-logo-container img{display:block;margin:0}
#header [data-id="menu"]>ul{align-items:center;height:100%}
#header [data-id="menu"]>ul>li>a{display:flex;align-items:center}
#header .ct-header-cta{display:flex;align-items:center;align-self:center}
#header .ct-header-cta .ct-button{display:inline-flex;align-items:center;justify-content:center}
#header .ct-header-trigger{display:flex;align-items:center;align-self:center}
@supports (text-box:trim-both cap alphabetic){
 #header [data-id="menu"]>ul>li>a,#header .ct-header-cta .ct-button{text-box:trim-both cap alphabetic}
}

/* logo: bianco all'inizio */
#header .site-logo-container img{max-height:40px;width:auto;filter:brightness(0) invert(1);transition:filter .45s,max-height .45s cubic-bezier(.2,.7,.2,1)}

/* menu */
#header [data-id="menu"]>ul>li>a{color:#EEE8E0!important;font-size:13px;font-weight:600;letter-spacing:.06em;position:relative;transition:color .3s}
#header [data-id="menu"]>ul>li>a::after{content:"";position:absolute;left:var(--menu-item-padding,12px);right:var(--menu-item-padding,12px);bottom:calc(50% - 14px);height:2px;background:#DA291C;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
#header [data-id="menu"]>ul>li>a:hover{color:#fff!important}
#header [data-id="menu"]>ul>li>a:hover::after,#header [data-id="menu"]>ul>li.current-menu-item>a::after,#header [data-id="menu"]>ul>li.current_page_item>a::after,#header [data-id="menu"]>ul>li.current-menu-ancestor>a::after{transform:scaleX(1)}
#header [data-id="menu"]>ul>li.current-menu-item>a,#header [data-id="menu"]>ul>li.current_page_item>a{color:#fff!important}

/* pulsante */
#header .ct-header-cta .ct-button{background:#DA291C!important;color:#fff!important;border:0!important;border-radius:4px!important;font:600 13px/1 "Archivo",sans-serif!important;letter-spacing:.02em;padding:0 20px!important;min-height:44px;transition:background .25s}
#header .ct-header-cta .ct-button:hover{background:#B5200F!important}
#header .ct-header-cta{margin-left:14px}

/* hamburger mobile */
#header .ct-header-trigger{--theme-icon-color:#EEE8E0;color:#EEE8E0}

/* ---- dopo lo scroll: Pietra traslucido, logo predefinito ---- */
html.bh-scrolled #header [data-row="middle"]{background:rgba(238,232,224,.86)!important;-webkit-backdrop-filter:blur(14px) saturate(1.15);backdrop-filter:blur(14px) saturate(1.15);box-shadow:inset 0 0 0 1px rgba(35,31,28,.08),0 14px 34px -22px rgba(35,31,28,.45)}
html.bh-scrolled #header [data-row="middle"]>.ct-container{min-height:64px;height:64px}
html.bh-scrolled #header .site-logo-container img{filter:none;max-height:36px}
html.bh-scrolled #header [data-id="menu"]>ul>li>a{color:#231F1C!important}
html.bh-scrolled #header [data-id="menu"]>ul>li>a:hover,html.bh-scrolled #header [data-id="menu"]>ul>li.current-menu-item>a,html.bh-scrolled #header [data-id="menu"]>ul>li.current_page_item>a{color:#DA291C!important}
html.bh-scrolled #header .ct-header-trigger{--theme-icon-color:#231F1C;color:#231F1C}

/* sottomenu */
#header [data-id="menu"] .sub-menu{border-radius:6px;overflow:hidden}

@media (max-width:1240px){
 #header [data-id="menu"]>ul>li>a{--menu-item-padding:8px;padding-inline:8px!important;letter-spacing:.03em}
 #header .ct-header-cta{margin-left:8px}
 #header .ct-header-cta .ct-button{padding:0 14px!important}
 #header [data-row="middle"]>.ct-container{padding-inline:18px}
}
@media (max-width:1120px){
 #header [data-device="desktop"] [data-id="menu"]>ul>li:first-child{display:none}
}
@media (max-width:999px){
 #header.ct-header{padding:10px 10px 0}
 #header [data-row="middle"]>.ct-container{min-height:64px;height:64px;padding-inline:18px}
 #header .site-logo-container img{max-height:32px}
 html.bh-scrolled #header [data-row="middle"]>.ct-container{min-height:58px;height:58px}
 html.bh-scrolled #header .site-logo-container img{max-height:30px}
}
@media (prefers-reduced-motion:reduce){#header *,#header [data-row]{transition:none!important}}

/* ===== Menu mobile a schermo intero ===== */
#offcanvas.ct-panel{background:#231F1C!important;color:#EEE8E0;font-family:"Archivo",sans-serif}
#offcanvas .ct-panel-inner,#offcanvas .ct-panel-content{background:transparent!important}
#offcanvas .ct-panel-actions{padding:20px 20px 0;justify-content:flex-end}
#offcanvas .ct-toggle-close{width:46px;height:46px;border-radius:50%;border:1px solid rgba(238,232,224,.3)!important;display:grid;place-items:center;--theme-icon-color:#EEE8E0;color:#EEE8E0;transition:background .25s,border-color .25s}
#offcanvas .ct-toggle-close:hover{background:#DA291C;border-color:#DA291C!important;--theme-icon-color:#fff}
#offcanvas .ct-toggle-close svg{width:14px;height:14px}
#offcanvas .ct-panel-content-inner{display:flex;flex-direction:column;gap:0;padding:12px 28px 36px!important;}

/* voci */
#offcanvas .mobile-menu{counter-reset:bm;width:100%;margin:0!important}
#offcanvas .mobile-menu>ul{width:100%}
#offcanvas .mobile-menu>ul>li{counter-increment:bm;border-bottom:1px solid rgba(238,232,224,.12)}
#offcanvas .mobile-menu>ul>li>a,#offcanvas .mobile-menu>ul>li>.ct-sub-menu-parent>a{display:flex;align-items:baseline;gap:14px;padding:11px 0!important;font-weight:600;font-stretch:125%;font-size:clamp(26px,7.6vw,36px);line-height:1.05;letter-spacing:-.015em;color:#EEE8E0!important;text-transform:none}
#offcanvas .mobile-menu>ul>li>a::before,#offcanvas .mobile-menu>ul>li>.ct-sub-menu-parent>a::before{content:counter(bm,decimal-leading-zero);font-size:12px;font-weight:600;font-stretch:100%;letter-spacing:.12em;color:#8F867D;min-width:22px}
#offcanvas .mobile-menu>ul>li.current-menu-item>a,#offcanvas .mobile-menu>ul>li.current-menu-item>.ct-sub-menu-parent>a{color:#fff!important}
#offcanvas .mobile-menu>ul>li.current-menu-item>a::before,#offcanvas .mobile-menu>ul>li.current-menu-item>.ct-sub-menu-parent>a::before{color:#DA291C}
#offcanvas .mobile-menu>ul>li>a:active{color:#DA291C!important}
#offcanvas .mobile-menu .ct-toggle-dropdown-mobile{--theme-icon-color:#EEE8E0}

/* pulsante */
#offcanvas .ct-header-cta{width:100%;margin-top:26px}
#offcanvas .ct-header-cta .ct-button{width:100%;min-height:56px;justify-content:center;background:#DA291C!important;color:#fff!important;border-radius:4px!important;font:600 16px/1 "Archivo",sans-serif!important}

/* contatti e social */
#offcanvas .ct-header-text{width:100%;margin-top:auto;padding-top:28px}
#offcanvas .bm-info{display:grid;gap:14px;font-size:15px;line-height:1.5;color:#EEE8E0}
#offcanvas .bm-info__row{display:grid;grid-template-columns:96px 1fr;gap:12px}
#offcanvas .bm-k{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#8F867D;padding-top:3px}
#offcanvas .bm-info a{color:#EEE8E0;text-decoration:underline;text-decoration-color:rgba(218,41,28,.7);text-underline-offset:4px}
#offcanvas .bm-socials{display:flex;gap:10px;list-style:none;margin:10px 0 0;padding:0}
#offcanvas .bm-social{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(238,232,224,.28);border-radius:50%;color:#EEE8E0}
#offcanvas .bm-social svg{width:18px;height:18px;fill:currentColor}

/* entrata in sequenza */
@media (prefers-reduced-motion:no-preference){
 #offcanvas .mobile-menu>ul>li,#offcanvas .ct-header-cta,#offcanvas .ct-header-text{opacity:0;transform:translateY(18px);transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
 #offcanvas.active .mobile-menu>ul>li,#offcanvas.active .ct-header-cta,#offcanvas.active .ct-header-text{opacity:1;transform:none}
 #offcanvas.active .mobile-menu>ul>li:nth-child(1){transition-delay:.08s}
 #offcanvas.active .mobile-menu>ul>li:nth-child(2){transition-delay:.12s}
 #offcanvas.active .mobile-menu>ul>li:nth-child(3){transition-delay:.16s}
 #offcanvas.active .mobile-menu>ul>li:nth-child(4){transition-delay:.20s}
 #offcanvas.active .mobile-menu>ul>li:nth-child(5){transition-delay:.24s}
 #offcanvas.active .mobile-menu>ul>li:nth-child(6){transition-delay:.28s}
 #offcanvas.active .mobile-menu>ul>li:nth-child(7){transition-delay:.32s}
 #offcanvas.active .ct-header-cta{transition-delay:.38s}
 #offcanvas.active .ct-header-text{transition-delay:.44s}
}
/* schermi bassi */
#offcanvas[data-behaviour="modal"]{display:flex;flex-direction:column;height:100%;max-height:100dvh}\n#offcanvas .ct-panel-content[data-device="mobile"]{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}\n#offcanvas .ct-panel-content[data-device="mobile"] .ct-panel-content-inner{min-height:100%}
@media (max-height:720px){
 #offcanvas .mobile-menu>ul>li>a,#offcanvas .mobile-menu>ul>li>.ct-sub-menu-parent>a{padding:8px 0!important;font-size:26px}
 #offcanvas .ct-header-cta{margin-top:18px}
 #offcanvas .ct-header-cta .ct-button{min-height:50px}
 #offcanvas .ct-header-text{padding-top:20px}
 #offcanvas .bm-info{gap:10px;font-size:14px}
}

/* ===== Header trasparente sopra le hero fotografiche (Home, Storia, Servizi) ===== */
body.bh-transparent #header.ct-header{position:fixed;left:0;right:0}
html:not(.bh-scrolled) body.bh-transparent #header [data-row="middle"]{background:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none}
html:not(.bh-scrolled) body.bh-transparent #header [data-row="middle"]::after{content:"";position:absolute;left:26px;right:26px;bottom:0;height:1px;background:rgba(255,255,255,.22);pointer-events:none}
html:not(.bh-scrolled) body.bh-transparent #header [data-row="middle"]{position:relative}
html:not(.bh-scrolled) body.bh-transparent #header [data-id="menu"]>ul>li>a{color:#fff!important}
