/* =========================================================================
   Blu Mattone - stile del sito (ricostruzione fedele del sito Hostinger)
   Colori e spaziature principali: sezione ":root".
   ========================================================================= */
:root{
	--bm-bg:#E8E8E8;
	--bm-ink:#212121;
	--bm-black:#212121;
	--bm-title:#212121;
	--bm-text:#333;
	--bm-soft:#666;
	--bm-gray:#B3B3B3;
	--bm-light:#E8E8E8;
	--bm-cream:#F5F5DC;
	--bm-gold:#A68A3F;
	--bm-dark:#1A1A1A;
	--bm-line:rgba(33,33,33,.12);
	--bm-pad:var(--wp--style--root--padding-left, clamp(28px,7.5vw,108px));
	--bm-wrap:1224px;
	--bm-sec:128px;          /* spazio sopra e sotto ogni sezione */
	--bm-head-gap:80px;      /* spazio tra titolo di sezione e contenuto */
	--bm-hh:96px;            /* altezza header */
	--bm-ease:cubic-bezier(.4,0,.15,1);
	--bm-out:cubic-bezier(.16,1,.3,1);
	interpolate-size:allow-keywords;
}
@media (max-width:1024px){:root{--bm-sec:96px;--bm-head-gap:56px}}
@media (max-width:781px){:root{--bm-sec:64px;--bm-head-gap:40px;--bm-hh:84px}}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bm-bg);color:var(--bm-ink);font-family:"BM Poppins",Poppins,"Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.8;
	-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}
img,video,svg{max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
h1,h2,h3,h4,h5,h6{margin:0 0 .5em;font-weight:700;line-height:1.2;color:var(--bm-title)}
p{margin:0 0 1.2em}
strong,b{font-weight:900}
.bm-sr,.screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.bm-skip{position:fixed;left:16px;top:-80px;z-index:10000;padding:12px 18px;background:#fff;color:#000;font-weight:500;text-decoration:none;transition:top .2s}
.bm-skip:focus{top:16px}

/* titoli di sezione */
h2.wp-block-heading{font-size:63px;font-weight:700;line-height:1;letter-spacing:0;color:var(--bm-title);margin:0}
h2.wp-block-heading.bm-h-md,h3.wp-block-heading.bm-h-md{font-size:48px;line-height:1.2}
h2.wp-block-heading.bm-h-sm,h3.wp-block-heading.bm-h-sm,h4.wp-block-heading.bm-h-sm{font-size:32px;line-height:1.3}
@media (max-width:1024px){h2.wp-block-heading{font-size:48px}h2.wp-block-heading.bm-h-md,h3.wp-block-heading.bm-h-md{font-size:38px}}
@media (max-width:781px){h2.wp-block-heading{font-size:32px;line-height:1.2}h2.wp-block-heading.bm-h-md,h3.wp-block-heading.bm-h-md{font-size:28px}h2.wp-block-heading.bm-h-sm,h3.wp-block-heading.bm-h-sm,h4.wp-block-heading.bm-h-sm{font-size:24px}}

/* etichetta "- METODO" */
.is-style-bm-label{margin:0 0 24px;font-size:16px;font-weight:300;line-height:1.8;color:var(--bm-black)}
@media (max-width:781px){.is-style-bm-label{font-size:14px;margin-bottom:14px}}

/* testo */
.bm-content :where(p){color:var(--bm-ink)}
.bm-lead{font-size:16px;font-weight:300;line-height:1.8;color:var(--bm-text)}
@media (max-width:781px){body{font-size:14px}.bm-content :where(p){font-size:14px;line-height:1.7}}

/* ---------- pulsanti ---------- */
.wp-block-button__link,.bm-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:47px;padding:0 32px;border:2px solid var(--bm-gray);border-radius:25px;background:transparent;
	color:var(--bm-light);font:400 17px/1 "BM Poppins",Poppins,Arial,sans-serif;text-decoration:none;cursor:pointer;
	background:transparent linear-gradient(var(--bm-cream),var(--bm-cream)) no-repeat 100% 0/0 100%;transition:background-size .6s var(--bm-out),background-color .35s ease,color .35s ease,border-color .35s ease,translate .5s var(--bm-out)}
.wp-block-button__link:hover,.bm-btn:hover{background-position:0 0;background-size:100% 100%;border-color:var(--bm-cream);color:#212121}
/* pulsante crema (inviti all'azione) */
.is-style-bm-solid .wp-block-button__link,.bm-btn--cream{gap:10px;min-height:0;padding:16px 38px;border:0;border-radius:50px;background:var(--bm-cream);color:#212121;font-size:14.5px;font-weight:500;animation:bm-pulse 3.2s ease-in-out infinite}
.is-style-bm-solid .wp-block-button__link::after,.bm-btn--cream::after{content:"";width:15px;height:15px;flex:none;background:currentColor;transition:transform .3s ease;
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E") center/contain no-repeat}
.is-style-bm-solid .wp-block-button__link:hover,.bm-btn--cream:hover{animation:none;background:#fff;color:#212121}
.is-style-bm-solid .wp-block-button__link:hover::after,.bm-btn--cream:hover::after{transform:translateX(4px)}
@media (max-width:600px){.is-style-bm-solid .wp-block-button__link,.bm-btn--cream{padding:13px 28px;font-size:13px}}
/* pulsante piccolo con bordo (es. "Vai al servizio") */
.bm-btn--line{min-height:0;padding:10px 24px;border:1px solid rgba(33,33,33,.25);border-radius:50px;color:rgba(33,33,33,.4);font-size:12px;font-weight:400;letter-spacing:.07em;text-transform:uppercase}

/* ---------- header (sopra la prima immagine, come nel sito originale) ---------- */
.bm-header{position:absolute;top:0;left:0;right:0;z-index:100;color:#fff}
.bm-header__in{display:flex;align-items:center;gap:32px;max-width:calc(var(--bm-wrap) + 2*var(--bm-pad));height:var(--bm-hh);margin:0 auto;padding:0 var(--bm-pad)}
.bm-header__logo{display:block;flex:none;width:110px;margin-left:16px;color:#fff;line-height:0}
.bm-header__logo svg{display:block;width:100%;height:auto;fill:currentColor}
.bm-nav{margin-left:auto}
.bm-nav__list{display:flex;align-items:center;gap:36px;margin:0;padding:0;list-style:none}
.bm-nav__list>li{position:relative}
.bm-nav__list a{display:inline-flex;align-items:center;gap:8px;padding:8px 0;color:var(--bm-gray);font-size:16px;font-weight:400;line-height:1.3;text-decoration:none;transition:color .25s ease}
.bm-nav__list a:hover,.bm-nav__list .current-menu-item>a,.bm-nav__list .current-menu-ancestor>a{color:#fff}
.bm-nav__list>li>a{position:relative}
.bm-nav__list>li>a::before{content:"";position:absolute;left:0;right:0;bottom:5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:100% 50%;transition:transform .5s var(--bm-out)}
.bm-nav__list>.menu-item-has-children>a::before{right:13px}
.bm-nav__list>li>a:hover::before,.bm-nav__list>.current-menu-item>a::before,.bm-nav__list>.current_page_item>a::before{transform:scaleX(1);transform-origin:0 50%}
.bm-nav__list .sub-menu a{transition:color .25s ease,padding-left .4s var(--bm-out)}
.bm-nav__list .sub-menu a:hover{padding-left:28px}
.bm-nav__list .menu-item-has-children>a::after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;transition:transform .25s ease}
.bm-nav__list .menu-item-has-children:hover>a::after,.bm-nav__list .menu-item-has-children:focus-within>a::after{transform:rotate(180deg)}
.bm-nav__list .sub-menu{position:absolute;top:100%;right:-16px;min-width:300px;margin:0;padding:10px 0;list-style:none;background:rgba(29,30,32,.94);border-radius:10px;
	opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .25s ease,transform .3s ease,visibility 0s .25s}
.bm-nav__list li:hover>.sub-menu,.bm-nav__list li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.bm-nav__list .sub-menu a{display:flex;padding:10px 22px;font-size:15px}
.bm-burger{display:none;position:relative;width:44px;height:44px;margin-left:auto;padding:0;border:0;background:none;color:#fff;cursor:pointer}
.bm-burger__l{position:absolute;left:10px;right:10px;height:2px;background:currentColor;transition:transform .35s ease}
.bm-burger__l:first-child{top:16px}.bm-burger__l:nth-child(2){top:26px}
.bm-burger[aria-expanded="true"] .bm-burger__l:first-child{transform:translateY(5px) rotate(45deg)}
.bm-burger[aria-expanded="true"] .bm-burger__l:nth-child(2){transform:translateY(-5px) rotate(-45deg)}
.bm-intro .bm-header{opacity:0;pointer-events:none;transition:opacity .6s ease}
.bm-header.is-light{color:#212121}
.bm-header.is-light .bm-header__logo,.bm-header.is-light .bm-burger{color:#212121}
.bm-header.is-light .bm-nav__list>li>a{color:rgba(33,33,33,.65)}
.bm-header.is-light .bm-nav__list>li>a:hover,.bm-header.is-light .bm-nav__list>.current-menu-item>a,.bm-header.is-light .bm-nav__list>.current-menu-ancestor>a,.bm-header.is-light .bm-nav__list>.current_page_item>a{color:#212121}
.bm-menu-open .bm-header.is-light .bm-header__logo,.bm-menu-open .bm-header.is-light .bm-burger{color:#fff}
.bm-header__logo,.bm-nav__list a,.bm-burger{transition:color .3s ease}
@media (max-width:920px){
	.bm-nav{display:none}
	.bm-burger{display:block}
	.bm-header__logo{width:96px;margin-left:0}
}
/* menu mobile */
.bm-menu{position:fixed;inset:0;z-index:99;padding:calc(var(--bm-hh) + 16px) var(--bm-pad) 32px;background:var(--bm-ink);overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility 0s .35s}
.bm-menu[hidden]{display:block}
.bm-menu.is-open{opacity:1;visibility:visible;transition-delay:0s}
.bm-menu-open .bm-header{position:fixed}
.bm-menu__list{margin:0;padding:0;list-style:none}
.bm-menu__list>li{border-bottom:1px solid rgba(255,255,255,.1)}
.bm-menu__list a{display:block;padding:16px 0;color:#fff;font-size:22px;font-weight:500;text-decoration:none}
.bm-menu__list .sub-menu{margin:-6px 0 12px;padding:0 0 0 16px;list-style:none}
.bm-menu__list .sub-menu a{padding:8px 0;color:var(--bm-gray);font-size:16px;font-weight:400}
.bm-menu__foot{margin-top:32px;color:var(--bm-gray);font-size:14px}
.bm-menu__foot a{text-decoration:none}
@media (min-width:921px){.bm-menu{display:none!important}}

/* ---------- impaginazione ---------- */
.bm-main{display:block}
.bm-content>.alignfull{margin-top:0!important;margin-bottom:0!important}
.bm-content .is-layout-constrained>:where(:not(.alignfull):not(.alignwide)){max-width:var(--bm-wrap)}

/* sezione grigia */
.bm-sec{position:relative;padding-top:var(--bm-sec);padding-bottom:var(--bm-sec);background-color:var(--bm-bg)}
.bm-sec>*{margin-block-start:0}
/* riga che divide le sezioni (si disegna quando entra nello schermo) */
.bm-sec--rule::after{content:"";position:absolute;left:max(var(--bm-pad),calc((100% - var(--bm-wrap))/2));right:max(var(--bm-pad),calc((100% - var(--bm-wrap))/2));bottom:0;height:1px;background:var(--bm-gray);transform-origin:0 50%;transition:transform 1.8s cubic-bezier(.65,0,.15,1)}
.bm-js .bm-sec--rule:not(.is-drawn)::after{transform:scaleX(0)}
/* sezione scura con cemento (sfondo fisso come nell'originale) */
.bm-sec--dark{color:#fff;background-color:#2a2b2d;background-image:var(--bm-concrete,none);background-size:cover;background-position:center}
.bm-sec--dark::before{content:"";position:absolute;inset:0;background:rgba(29,30,32,.47);pointer-events:none}
.bm-sec--dark>*{position:relative;z-index:1}
.bm-sec--dark h2.wp-block-heading,.bm-sec--dark h3.wp-block-heading{color:#fff}
.bm-sec--dark .is-style-bm-label{color:var(--bm-gray)}
@media (min-width:1025px) and (hover:hover){.bm-sec--dark{background-attachment:fixed}}

/* intestazione di sezione: etichetta + titolo a sinistra, testo a destra */
.bm-head{margin-bottom:var(--bm-head-gap)!important;gap:40px!important;align-items:flex-end!important}
.bm-head>.wp-block-column:last-child{display:flex;justify-content:flex-end}
.bm-head>.wp-block-column:last-child>p{max-width:503px;margin:0;font-size:16px;line-height:1.8;color:var(--bm-black)}
.bm-head h2.wp-block-heading{max-width:654px}
.bm-sec--dark .bm-head>.wp-block-column:last-child>p{color:#fff}
@media (max-width:781px){.bm-head{gap:18px!important}.bm-head>.wp-block-column:last-child{justify-content:flex-start}.bm-head>.wp-block-column:last-child>p{font-size:14px;max-width:none}}

/* ---------- hero delle pagine (foto + testo centrato) ---------- */
.wp-block-cover.bm-hero{min-height:735px!important;padding:calc(var(--bm-hh) + 40px) var(--bm-pad) 80px;color:#fff;text-align:center}
.bm-hero .wp-block-cover__inner-container{max-width:760px;margin:0 auto}
.bm-hero h1.wp-block-heading{margin:0 auto 16px;max-width:620px;font-size:64px;font-weight:700;line-height:1.3;letter-spacing:-.06em;color:#fff}
.bm-hero h1+p{margin:0 auto 28px;max-width:362px;font-size:16px;font-weight:300;line-height:1.3;color:#fff}
.bm-hero .wp-block-buttons{justify-content:center}
@media (max-width:781px){.wp-block-cover.bm-hero{min-height:560px!important}.bm-hero h1.wp-block-heading{font-size:38px;letter-spacing:-.04em}.bm-hero .wp-block-button__link{font-size:15px;min-height:42px;padding:0 24px}}
/* intestazione delle pagine senza foto (Gallery, Privacy): grigio chiaro come il resto */
.bm-pagehead{max-width:calc(var(--bm-wrap) + 2*var(--bm-pad));margin:0 auto;padding:calc(var(--bm-hh) + 72px) var(--bm-pad) 0;color:var(--bm-ink);text-align:center}
.bm-pagehead__title{margin:0;font-size:63px;font-weight:700;line-height:1;color:var(--bm-ink)}
.bm-pagehead__sub{max-width:640px;margin:18px auto 0;font-size:16px;font-weight:300;line-height:1.8;color:var(--bm-ink)}
.bm-pagehead+.bm-content>.bm-sec:first-child{padding-top:var(--bm-head-gap)}
@media (max-width:1024px){.bm-pagehead__title{font-size:48px}}
@media (max-width:781px){.bm-pagehead{padding-top:calc(var(--bm-hh) + 40px)}.bm-pagehead__title{font-size:32px;line-height:1.2}.bm-pagehead__sub{font-size:14px}}

/* hero della home: versione statica (senza JavaScript o con movimento ridotto) */
.wp-block-cover.bm-hero-intro{min-height:max(640px,100vh)!important;min-height:max(640px,100svh)!important;padding-bottom:clamp(170px,22vh,220px)}
.bm-hero-intro .wp-block-cover__inner-container{display:flex;flex-direction:column;align-items:center;position:static;max-width:none}
.bm-hero-intro .wp-block-cover__inner-container>*{position:relative;z-index:1}
.bm-hero-intro h1.wp-block-heading{max-width:none;margin:0 auto;font-size:clamp(2.6rem,min(8.8vw,16.5vh),9.4rem);font-weight:800;line-height:.95;letter-spacing:-.012em;text-transform:uppercase;color:#F5F5DE}
.bm-hero-intro h1+p{margin:clamp(14px,1.8vw,28px) auto 0;max-width:24em;font-size:clamp(1rem,.9rem + .5vw,1.3rem);font-weight:700;line-height:1.4}
.bm-hero-intro .wp-block-buttons{justify-content:center;margin-top:clamp(18px,2.2vw,36px)}
.bm-hero-words{display:none!important}
.bm-hero-intro .is-style-bm-stats{position:absolute;z-index:2;left:max(var(--bm-pad),11%);right:max(var(--bm-pad),11%);bottom:clamp(14px,2.6vh,28px);text-align:left}
@media (max-width:640px){.wp-block-cover.bm-hero-intro{padding-bottom:230px}.bm-hero-intro h1.wp-block-heading{font-size:13vw}.bm-hero-intro .is-style-bm-stats{left:16px;right:16px}}
.is-style-bm-stats{position:relative;display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.32);color:#fff}
.is-style-bm-stats li{position:relative;padding:20px 12px 6px 22px;min-width:0;font-size:12px;font-weight:400;letter-spacing:.18em;text-transform:uppercase;line-height:1.35}
.is-style-bm-stats li+li{border-left:1px solid rgba(255,255,255,.22)}
.is-style-bm-stats strong{display:block;margin-bottom:12px;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:700;line-height:1;letter-spacing:-.01em;color:#fff}
@media (max-width:640px){
	.is-style-bm-stats{grid-template-columns:repeat(2,1fr)}
	.is-style-bm-stats li{padding:14px 8px 4px 14px;font-size:10px;letter-spacing:.12em}
	.is-style-bm-stats li:nth-child(odd){padding-left:0;border-left:0}
	.is-style-bm-stats li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.22);margin-top:10px}
	.is-style-bm-stats strong{font-size:2rem;margin-bottom:8px}
}

/* ---------- manifesto ---------- */
.bm-manifesto{gap:40px!important}
.bm-manifesto .bm-quote{margin:0 0 56px;font-size:35px;font-weight:400;line-height:1.3;color:var(--bm-black)}
.bm-founders{display:flex;align-items:center;gap:22px}
.bm-founders__pics{display:flex;flex:none}
.bm-founders__pics .wp-block-image{margin:0!important;width:51px;height:51px;border-radius:50%;overflow:hidden;border:2px solid var(--bm-bg)}
.bm-founders__pics .wp-block-image+.wp-block-image{margin-left:-12px!important}
.bm-founders__pics img{width:100%;height:100%;object-fit:cover}
.bm-founders h3,.bm-founders h4{margin:0;font-size:24px;font-weight:700;line-height:1.3;color:var(--bm-black)}
.bm-founders p{margin:0;font-size:14px;font-weight:300;line-height:1.3;color:var(--bm-black)}
@media (max-width:781px){.bm-manifesto .bm-quote{font-size:20px;margin-bottom:32px}.bm-founders h3,.bm-founders h4{font-size:20px}}

/* ---------- cosa facciamo (3 servizi con effetto macchina da scrivere) ---------- */
.bm-services{gap:0!important}
.bm-services>.wp-block-column{display:flex;flex-direction:column;padding:0 48px;border-right:1px solid var(--bm-line)}
.bm-services>.wp-block-column:first-child{padding-left:0}
.bm-services>.wp-block-column:last-child{padding-right:0;border-right:0}
.bm-svc-num{position:relative;margin:0 0 28px!important;height:1.05em;font-size:120px;font-weight:300;line-height:1;color:rgba(33,33,33,.15)}
.bm-svc-num .a,.bm-svc-num .b{position:absolute;top:0;left:0}
.bm-svc-num .a{transition:opacity .5s ease}
.bm-svc-num .b{font-weight:700;opacity:0;transition:opacity .5s ease,color .9s cubic-bezier(.4,0,.2,1) .3s,text-shadow .9s cubic-bezier(.4,0,.2,1) .3s}
.bm-services h3.wp-block-heading{min-height:64px;margin:0 0 14px;font-size:24px;font-weight:700;line-height:1.3;color:#212121}
.bm-services>.wp-block-column>p:not(.bm-svc-num){flex:1;min-height:82px;margin:0 0 28px;font-size:16px;font-weight:300;line-height:1.65;color:#999;transition:color .5s ease}
.bm-services .wp-block-buttons{margin:0}
.bm-services .wp-block-button__link{min-height:0;padding:10px 24px;border:1px solid rgba(33,33,33,.25);border-radius:50px;color:rgba(33,33,33,.4);font-size:12px;font-weight:400;letter-spacing:.07em;text-transform:uppercase;
	transition:background .9s cubic-bezier(.4,0,.2,1) .45s,color .5s ease .45s,border-color .9s cubic-bezier(.4,0,.2,1) .45s,opacity .4s ease}
.bm-services>.wp-block-column:hover .bm-svc-num .a{opacity:0}
.bm-services>.wp-block-column:hover .bm-svc-num .b{opacity:1;color:var(--bm-cream);text-shadow:0 0 28px rgba(245,245,180,.08)}
.bm-services>.wp-block-column:hover>p:not(.bm-svc-num){color:#212121}
.bm-services>.wp-block-column:hover .wp-block-button__link{background:var(--bm-cream);color:#212121;border-color:var(--bm-cream)}
.bm-js .bm-services.is-typing .wp-block-buttons{opacity:0;pointer-events:none}
.bm-js .bm-services.is-typing .wp-block-buttons.is-shown{opacity:1;pointer-events:auto;transition:opacity .4s ease}
.bm-cursor{animation:bm-blink .65s step-end infinite}
@media (max-width:781px){
	.bm-services>.wp-block-column{padding:0 0 36px!important;margin-bottom:36px;border-right:0;border-bottom:1px solid var(--bm-line)}
	.bm-services>.wp-block-column:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0!important}
	.bm-svc-num{font-size:80px}
	.bm-services h3.wp-block-heading{font-size:20px;min-height:0}
	.bm-services>.wp-block-column>p:not(.bm-svc-num){font-size:14px;min-height:0}
}

/* ---------- ultimi progetti (schede a fisarmonica) ---------- */
.bm-ca{position:relative}
.bm-ca-wrap{display:flex;gap:10px;height:460px;width:100%}
.bm-ca-card{position:relative;flex:0 0 72px;border-radius:20px;overflow:hidden;cursor:pointer;transition:flex .75s var(--bm-ease);border:0;padding:0;background:none;font:inherit;text-align:left;color:inherit}
.bm-ca-card.active{flex:1}
.bm-ca-bg{position:absolute;inset:0;background-color:#e8e8e8}
.bm-ca-bg-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:grayscale(1);transform:scale(1.12);transition:opacity .6s ease,transform 1.6s var(--bm-out),filter .6s ease}
.bm-ca-card.active .bm-ca-bg-photo{opacity:1;transform:none}
.bm-ca-card.selected .bm-ca-bg-photo{filter:grayscale(0)}
.bm-ca-bg-band{position:absolute;inset:0;background-color:#e8e8e8;opacity:.93;clip-path:inset(0 100% 0 0);transition:clip-path .7s var(--bm-ease)}
.bm-ca-card.active .bm-ca-bg-band{clip-path:inset(0 50% 0 0)}
.bm-ca-num-closed{position:absolute;left:0;right:0;bottom:24px;text-align:center;font-size:20px;font-weight:700;color:#212121;line-height:1;transition:opacity .3s ease .75s,color .3s ease}
.bm-ca-card:not(.active):hover .bm-ca-num-closed{color:var(--bm-gold)}
.bm-ca-card.active .bm-ca-num-closed{opacity:0;transition:opacity .2s ease}
.bm-ca-content{position:absolute;left:24px;width:240px;bottom:24px;opacity:0;transform:translateY(6px);transition:opacity .4s ease .3s,transform .45s var(--bm-ease) .3s}
.bm-ca-card.active .bm-ca-content{opacity:1;transform:none}
.bm-ca-num{display:block;margin-bottom:12px;font-size:40px;font-weight:700;color:#212121;line-height:1}
.bm-ca-title{display:block;font-size:16px;font-weight:700;color:#212121;line-height:1.3}
.bm-ca-sub{display:block;margin-top:2px;font-size:13px;font-weight:300;color:rgba(33,33,33,.55);line-height:1.4}
.bm-ca-mobile{display:none}
.bm-ca-panel{overflow:hidden;max-height:0;opacity:0;margin-top:0;transition:max-height .7s var(--bm-ease),opacity .45s ease,margin-top .5s ease}
.bm-ca-panel.open{opacity:1;margin-top:12px}
.bm-ca-panel-inner{position:relative;margin-top:8px;padding:44px 32px 40px;border-radius:16px;border-top:1px solid rgba(255,255,255,.08);background:rgba(33,33,33,.78);color:#fff}
.bm-ca-bgnum{position:absolute;top:-10px;right:0;font-size:200px;font-weight:700;line-height:1;letter-spacing:-.04em;color:rgba(255,255,255,.04);pointer-events:none;user-select:none}
.bm-ca-close{position:absolute;top:40px;right:28px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;background:none;color:rgba(255,255,255,.3);font:300 22px/1 inherit;cursor:pointer;transition:color .2s ease}
.bm-ca-close:hover{color:#fff}
.bm-ca-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px;padding-right:40px}
.bm-ca-ptitle{margin:0;font-size:26px;font-weight:700;line-height:1.2;color:#fff}
.bm-ca-date{padding-top:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--bm-gray);white-space:nowrap}
.bm-ca-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px;margin:0 0 28px;padding-bottom:28px;border-bottom:1px solid rgba(255,255,255,.08)}
.bm-ca-meta>div{display:flex;align-items:flex-start;gap:12px}
.bm-ca-micon{display:flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;margin-top:1px;border-radius:8px;background:rgba(255,255,255,.06)}
.bm-ca-micon svg{width:15px;height:15px;fill:none;stroke:var(--bm-gray);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.bm-ca-mlabel{display:block;margin-bottom:3px;font-size:9px;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--bm-gray)}
.bm-ca-mvalue{display:block;margin:0;font-size:13px;font-weight:400;line-height:1.3;color:#fff}
.bm-ca-body{display:grid;grid-template-columns:1fr 1fr 200px;gap:0 40px;margin-bottom:28px;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.08)}
.bm-ca-label{margin-bottom:14px;font-size:10px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--bm-gray)}
.bm-ca-text{font-size:14px;font-weight:300;line-height:1.75;color:#fff}
.bm-ca-text p{margin:0 0 .8em;color:#fff}
.bm-ca-result{padding-left:32px;border-left:1px solid rgba(255,255,255,.1)}
.bm-ca-stat{margin-bottom:8px;font-size:36px;font-weight:700;line-height:1;color:var(--bm-cream)}
.bm-ca-rtext{font-size:12px;font-weight:300;line-height:1.5;color:var(--bm-gray)}
.bm-ca-media-wrap{position:relative}
.bm-ca-media{display:flex;gap:10px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}
.bm-ca-media::-webkit-scrollbar{height:5px}
.bm-ca-media::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:4px}
.bm-ca-item{position:relative;flex:0 0 190px;aspect-ratio:9/16;padding:0;border:0;border-radius:10px;overflow:hidden;background:#e8e8e8;cursor:pointer}
.bm-ca-item.is-video{background:#1a1a1a}
.bm-ca-item img,.bm-ca-item video{display:block;width:100%;height:100%;object-fit:cover}
.bm-ca-item.is-video::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.2)}
.bm-ca-item.is-video::after{content:"";position:absolute;left:50%;top:50%;width:42px;height:42px;margin:-21px 0 0 -21px;border-radius:50%;
	background:rgba(255,255,255,.9) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42'%3E%3Cpath d='M17 13l12 8-12 8z' fill='%23212121'/%3E%3C/svg%3E") center/42px no-repeat}
.bm-ca-arrow{position:absolute;top:0;bottom:0;z-index:2;display:none;align-items:center;width:44px;padding:0 0 0 6px;border:0;background:linear-gradient(to right,rgba(33,33,33,.95),rgba(33,33,33,0));cursor:pointer;transition:opacity .25s ease}
.bm-ca-arrow.next{right:0;justify-content:flex-end;padding:0 6px 0 0;background:linear-gradient(to left,rgba(33,33,33,.95),rgba(33,33,33,0))}
.bm-ca-media-wrap.has-nav .bm-ca-arrow{display:flex}
.bm-ca-arrow:disabled{opacity:0;pointer-events:none}
.bm-ca-arrow span{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.1);transition:background .2s ease}
.bm-ca-arrow:hover span{background:rgba(255,255,255,.2)}
.bm-ca-arrow svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bm-ca-arrow.prev svg{transform:scaleX(-1)}
.bm-ca-cta{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}
.bm-ca-cta span{font-size:13px;font-weight:300;color:var(--bm-gray)}
.bm-ca-cta a{display:inline-block;padding:10px 26px;border:1px solid var(--bm-gray);border-radius:50px;color:var(--bm-gray);font-size:12px;font-weight:400;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;transition:background .35s ease,color .3s ease,border-color .35s ease}
.bm-ca-cta a:hover{background:var(--bm-cream);color:#212121;border-color:var(--bm-cream)}
.bm-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(10,9,8,.96);opacity:0;pointer-events:none;transition:opacity .35s ease}
.bm-lightbox.open{opacity:1;pointer-events:auto}
.bm-lightbox img,.bm-lightbox video{display:block;max-width:92vw;max-height:92vh;width:auto;height:auto;border-radius:20px;transform:scale(.94);opacity:0;transition:transform .7s var(--bm-out),opacity .45s ease}
.bm-lightbox.open img,.bm-lightbox.open video{transform:none;opacity:1}
.bm-lightbox__close{position:absolute;top:28px;right:32px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font:300 22px/1 inherit;cursor:pointer}
.bm-lightbox__close:hover{background:rgba(255,255,255,.2)}
@media (max-width:700px){
	.bm-ca-wrap{flex-direction:column;height:auto}
	.bm-ca-card{flex:none!important;width:100%;height:76px;border-radius:14px}
	.bm-ca-bg-photo,.bm-ca-bg-band,.bm-ca-num-closed,.bm-ca-content{display:none}
	.bm-ca-mobile{position:relative;z-index:2;display:flex;align-items:center;gap:16px;height:100%;padding:0 20px}
	.bm-ca-mobile b{flex:none;width:32px;font-size:22px;font-weight:700;color:rgba(33,33,33,.35)}
	.bm-ca-mobile span{font-size:15px;font-weight:700;line-height:1.3;color:#212121}
	.bm-ca-mobile em{display:block;margin-top:2px;font-size:12px;font-style:normal;font-weight:300;color:rgba(33,33,33,.55)}
	.bm-ca-card.selected .bm-ca-bg{background:var(--bm-cream)}
	.bm-ca-body{grid-template-columns:1fr}
	.bm-ca-result{margin-top:8px;padding:20px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.1)}
	.bm-ca-meta{grid-template-columns:1fr 1fr;gap:16px}
	.bm-ca-ptitle{font-size:20px}
	.bm-ca-panel-inner{padding:32px 20px 28px}
	.bm-ca-item{flex-basis:120px}
}

/* ---------- clienti & partners ---------- */
.bm-partners-title{margin-top:96px!important;text-align:center}
h3.wp-block-heading.bm-partners-title{font-size:32px;font-weight:700;line-height:1.3;color:var(--bm-light)}
.bm-logos{position:relative;width:100%;overflow:hidden;padding:50px 0;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 12%,#000 88%,transparent 100%)}
.bm-logos__track{display:flex;align-items:center;gap:80px;width:max-content;animation:bm-marquee var(--bm-mq,45.6s) linear infinite}
.bm-logos .wp-block-image,.bm-logos figure{flex:0 0 auto;margin:0!important}
.bm-logos img{display:block;width:auto!important;height:70.56px!important;max-width:none;opacity:.75;filter:grayscale(100%);transform:scale(.95);transition:all .25s ease}
.bm-logos img:hover{opacity:1;filter:none;transform:none}
@media (hover:hover){.bm-logos:hover .bm-logos__track{animation-play-state:paused}}
.bm-logos:not(.is-ready){display:flex;flex-wrap:wrap;justify-content:center;gap:48px}
@media (max-width:781px){.bm-partners-title{margin-top:64px!important}h3.wp-block-heading.bm-partners-title{font-size:24px}.bm-logos{padding:32px 0}.bm-logos img{height:52px!important}}

/* ---------- contatti ---------- */
.bm-contact-grid{gap:40px!important;align-items:flex-start!important}
.bm-contact-grid>.wp-block-column:first-child{max-width:503px}
.bm-contact-grid .wp-block-image{margin:0}
.bm-contact-grid .wp-block-image img{display:block;width:100%;aspect-ratio:606/493;object-fit:cover}
.bm-form{display:flex;flex-direction:column;gap:24px}
.bm-form__trap{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.bm-field{display:flex;flex-direction:column;gap:6px}
.bm-field>label:not(.bm-check){position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bm-field input[type=text],.bm-field input[type=tel],.bm-field input[type=email],.bm-field textarea{width:100%;height:48px;padding:0 16px;border:1px solid transparent;border-radius:10px;background:#fff;color:#1D1E20;
	font:300 14px/1.4 "BM Poppins",Poppins,Arial,sans-serif;outline:0;transition:border-color .3s ease,box-shadow .3s ease}
.bm-field textarea{height:100px;padding:14px 16px;resize:vertical}
.bm-field ::placeholder{color:#8a8a8a;opacity:1}
.bm-field input:focus,.bm-field textarea:focus{border-color:#1D1E20;box-shadow:0 0 0 4px rgba(29,30,32,.06)}
.bm-field.is-invalid input,.bm-field.is-invalid textarea{border-color:#c0392b}
.bm-field__err{font-size:12px;color:#c0392b}
.bm-field__err:empty{display:none}
.bm-field--check{flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:8px}
.bm-field--check input{flex:none;width:14px;height:14px;margin:4px 0 0;accent-color:#1D1E20}
.bm-field--check label{flex:1;font-size:13px;font-weight:300;line-height:1.6;color:#1D1E20}
.bm-field--check .bm-field__err{flex-basis:100%}
.bm-form__foot{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.bm-form button[type=submit]{display:inline-flex;align-items:center;justify-content:center;height:47px;padding:0 30px;border:1px solid var(--bm-gray);border-radius:25px;background:transparent;color:var(--bm-gray);
	font:300 16px/1 "BM Poppins",Poppins,Arial,sans-serif;cursor:pointer;background:transparent linear-gradient(#1D1E20,#1D1E20) no-repeat 100% 0/0 100%;transition:background-size .6s var(--bm-out),color .35s ease,border-color .35s ease}
.bm-form button[type=submit]:hover{background-position:0 0;background-size:100% 100%;border-color:#1D1E20;color:#fff}
.bm-form button[disabled]{opacity:.6;cursor:wait}
.bm-form__status:empty{display:none}
.bm-form__status,.bm-form__notice{margin:0;font-size:14px;font-weight:400}
.bm-form__status .is-err,.bm-form__notice.is-err{color:#c0392b}
.bm-form.is-sent .bm-field,.bm-form.is-sent button{display:none}
.bm-form.is-sent .bm-form__status{font-size:20px;font-weight:700;line-height:1.4;color:#1D1E20}
@media (max-width:781px){.bm-contact-grid>.wp-block-column:first-child{max-width:none}}

/* ---------- recensioni Google ---------- */
.bm-reviews-head{display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;gap:24px;margin-bottom:56px}
.bm-reviews-head h2.wp-block-heading{max-width:503px}
.bm-gr-badge{display:flex;align-items:center;gap:16px;padding:20px 28px;border-radius:16px;background:#fff}
.bm-gr-badge svg{flex:none;width:30px;height:30px}
.bm-gr-score{font-size:40px;font-weight:700;line-height:1;color:#212121}
.bm-gr-score small{margin-left:6px;font-size:13px;font-weight:400;letter-spacing:1px}
.bm-gr-count{margin-top:4px;font-size:12px;letter-spacing:.06em;color:rgba(33,33,33,.55)}
.bm-gr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.bm-gr-card{margin:0;padding:24px;border-radius:14px;background:#fff}
.bm-gr-stars{margin-bottom:14px;font-size:14px;color:#212121;letter-spacing:1px}
.bm-gr-text{padding:0;border:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;margin:0 0 20px;font-size:14px;font-weight:300;line-height:1.7;color:#333}
.bm-gr-author{display:flex;align-items:center;gap:10px}
.bm-gr-avatar{display:flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:50%;background:#e8e8e8;color:#212121;font-size:12px;font-weight:700}
.bm-gr-name{font-size:13px;font-weight:500;color:#212121;line-height:1.4}
.bm-gr-time{font-size:11px;color:rgba(33,33,33,.45);line-height:1.4}
.bm-gr-cta{display:flex;flex-direction:column;justify-content:space-between;padding:28px 24px;border-radius:14px;background:#212121}
.bm-gr-cta__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:18px;border-radius:50%;background:rgba(245,245,220,.12)}
.bm-gr-cta__icon svg{width:18px;height:18px;fill:none;stroke:var(--bm-cream);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bm-gr-cta__t{margin:0 0 6px;font-size:17px;font-weight:700;line-height:1.4;color:#fff}
.bm-gr-cta__s{margin:0 0 24px;font-size:13px;font-weight:300;line-height:1.6;color:var(--bm-gray)}
.bm-gr-cta a{align-self:flex-start;display:inline-block;padding:12px 26px;border-radius:50px;background:var(--bm-cream);color:#212121;font-size:12px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;transition:opacity .2s ease}
.bm-gr-cta a:hover{opacity:.85}
@media (max-width:1024px){.bm-gr-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){
	.bm-reviews-head{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:28px}
	.bm-gr-badge{gap:10px;padding:10px 16px;border-radius:12px}
	.bm-gr-badge svg{width:20px;height:20px}
	.bm-gr-score{font-size:20px}.bm-gr-score small{font-size:10px}.bm-gr-count{font-size:10px;margin-top:2px}
	.bm-gr-grid{display:flex;overflow-x:auto;gap:14px;margin:-4px calc(-1 * var(--bm-pad)) 0;padding:4px var(--bm-pad) 12px;scroll-snap-type:x mandatory;scrollbar-width:none}
	.bm-gr-grid::-webkit-scrollbar{display:none}
	.bm-gr-card,.bm-gr-cta{flex:0 0 82%;scroll-snap-align:start}
	.bm-gr-text{-webkit-line-clamp:6}
}

/* ---------- pagine servizio ---------- */
.bm-prose p{max-width:none;margin:0 0 1.4em;font-size:16px;line-height:1.8;color:var(--bm-ink)}
.bm-prose p:last-child{margin-bottom:0}
.bm-prose strong{font-weight:900}
.bm-problem-text{margin-top:56px!important;color:var(--bm-text)!important}
.bm-steps-title{margin-top:96px!important;margin-bottom:24px!important}
@media (max-width:781px){.bm-prose p{font-size:14px;line-height:1.7}.bm-problem-text{margin-top:32px!important}.bm-steps-title{margin-top:56px!important}}
/* come lavoriamo */
.bm-steps{position:relative;gap:32px!important;padding:24px 0 0;align-items:flex-start!important}
.bm-steps>.wp-block-column{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.bm-steps>.wp-block-column:not(:last-child)::after{content:"";position:absolute;top:46px;right:-36px;width:40px;height:16px;
	background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 14' fill='none' stroke='rgba(33,33,33,0.3)' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='0' y1='7' x2='28' y2='7'/%3E%3Cpath d='M22 1l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
.bm-steps .wp-block-image{display:flex;align-items:center;justify-content:center;width:108px;height:108px;margin:0 0 28px!important;border:1px solid rgba(33,33,33,.08);border-radius:50%;background:#fff}
.bm-steps .wp-block-image img{width:auto!important;max-width:44px;max-height:44px;height:auto!important}
.bm-step-num{margin:0 0 10px!important;font-size:12px!important;letter-spacing:.1em;color:rgba(33,33,33,.45)!important}
.bm-steps h3.wp-block-heading,.bm-steps h4.wp-block-heading{margin:0 0 12px;font-size:20px;font-weight:700;line-height:1.3;color:#212121}
.bm-steps>.wp-block-column>p:last-child{max-width:300px;margin:0;font-size:14.5px;font-weight:300;line-height:1.65;color:var(--bm-soft)}
@media (max-width:781px){
	.bm-steps{gap:56px!important}
	.bm-steps>.wp-block-column:not(:last-child)::after{top:auto;bottom:-36px;right:auto;left:50%;margin-left:-20px;transform:rotate(90deg)}
	.bm-steps .wp-block-image{width:84px;height:84px;margin-bottom:22px!important}
	.bm-steps .wp-block-image img{max-width:34px;max-height:34px}
	.bm-steps h3.wp-block-heading,.bm-steps h4.wp-block-heading{font-size:17px}
	.bm-steps>.wp-block-column>p:last-child{font-size:13.5px;max-width:280px}
}
/* per chi */
.bm-fit{gap:80px!important;padding:24px 0 0}
.bm-fit>.wp-block-column:first-child{padding-right:80px;border-right:1px solid var(--bm-line)}
.bm-fit-label{margin:0 0 30px!important;font-size:12.5px!important;font-weight:700!important;letter-spacing:.1em;text-transform:uppercase;color:var(--bm-gold)!important}
.bm-fit>.wp-block-column:last-child .bm-fit-label{color:rgba(33,33,33,.4)!important}
.is-style-bm-check,.is-style-bm-cross{display:flex;flex-direction:column;gap:26px;margin:0;padding:0;list-style:none}
.is-style-bm-check li,.is-style-bm-cross li{position:relative;padding-left:35px;font-size:16.5px;font-weight:300;line-height:1.5;color:#333}
.is-style-bm-cross li{color:rgba(33,33,33,.5)}
.is-style-bm-check li::before,.is-style-bm-cross li::before{content:"";position:absolute;left:0;top:3px;width:19px;height:19px;background:var(--bm-gold);
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat;
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/contain no-repeat}
.is-style-bm-cross li::before{background:rgba(33,33,33,.35);
	-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");
	mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E")}
@media (max-width:781px){
	.bm-fit{gap:40px!important}
	.bm-fit>.wp-block-column:first-child{padding:0 0 36px;border-right:0;border-bottom:1px solid var(--bm-line)}
	.is-style-bm-check,.is-style-bm-cross{gap:20px}
	.is-style-bm-check li,.is-style-bm-cross li{padding-left:30px;font-size:14.5px}
	.is-style-bm-check li::before,.is-style-bm-cross li::before{width:16px;height:16px}
}
/* supporto completo: etichette bianche */
.bm-support-head{margin-top:var(--bm-sec)!important}
.is-style-bm-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:0;padding:24px 0 0;list-style:none}
.is-style-bm-tags li{padding:14px 26px;border-radius:50px;background:#fff;font-size:15px;font-weight:400;line-height:1.3;color:#212121}
@media (max-width:480px){.is-style-bm-tags{gap:10px}.is-style-bm-tags li{padding:10px 18px;font-size:13px}}
/* riquadro scuro "Iniziamo da una conversazione" */
.bm-cta-card{position:relative;overflow:hidden;padding:76px 24px!important;border-radius:24px;background:linear-gradient(rgba(26,26,26,.65),rgba(26,26,26,.65)),var(--bm-concrete,none) center/cover #1a1a1a;text-align:center}
.bm-cta-card::before{content:'"';position:absolute;top:-30px;left:24px;font:700 220px/1 Georgia,serif;color:rgba(255,255,255,.035);pointer-events:none;user-select:none}
.bm-cta-card::after{content:"";position:absolute;top:50%;left:50%;width:520px;height:520px;background:radial-gradient(circle,rgba(245,245,220,.16) 0,rgba(245,245,220,0) 70%);transform:translate(calc(-50% + var(--gx,0px)),calc(-50% + var(--gy,0px)));transition:transform 1.2s var(--bm-out);animation:bm-breathe 6s ease-in-out infinite;pointer-events:none}
.bm-cta-card>*{position:relative;z-index:1;max-width:620px;margin-left:auto!important;margin-right:auto!important}
.bm-cta-card h2.wp-block-heading{margin:0 auto 18px;font-size:34px;font-weight:700;line-height:1.3;color:#fff}
.bm-cta-card p{margin:0 auto 36px!important;font-size:15.5px;font-weight:300;line-height:1.7;color:var(--bm-gray)!important}
.bm-cta-card .wp-block-buttons{justify-content:center}
@media (max-width:600px){.bm-cta-card{padding:56px 20px!important}.bm-cta-card h2.wp-block-heading{font-size:26px}.bm-cta-card p{font-size:14px}.bm-cta-card::before{font-size:140px;top:-14px}}
/* FAQ */
.bm-faq{margin-top:var(--bm-head-gap)!important}
.bm-faq-eyebrow{margin:0 0 18px!important;font-size:12px!important;letter-spacing:.12em;color:rgba(33,33,33,.55)!important}
.bm-faq .wp-block-details{margin:0!important;border-bottom:1px solid rgba(33,33,33,.15)}
.bm-faq .wp-block-details:first-of-type{border-top:1px solid rgba(33,33,33,.15)}
.bm-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;font-size:15px;font-weight:500;line-height:1.5;color:#212121;cursor:pointer;list-style:none}
.bm-faq summary::-webkit-details-marker{display:none}
.bm-faq summary::after{content:"";flex:none;width:18px;height:18px;background:linear-gradient(#888,#888) center/18px 2px no-repeat,linear-gradient(#888,#888) center/2px 18px no-repeat;border-radius:2px;transition:transform .5s cubic-bezier(.4,0,.15,1),background-size .3s ease}
.bm-faq .bm-faq-a{overflow:hidden;max-height:0;opacity:0;transition:max-height .6s cubic-bezier(.4,0,.15,1),opacity .45s ease}
.bm-faq details.is-open .bm-faq-a{opacity:1}
.bm-faq .bm-faq-a>*{max-width:820px;margin:0;padding-bottom:18px;font-size:14px;font-weight:300;line-height:1.7;color:#555}
.bm-faq details:not(.bm-faq-ready)>:not(summary){max-width:820px;margin:0;padding-bottom:18px;font-size:14px;font-weight:300;line-height:1.7;color:#555}
.bm-faq details.is-open summary::after{transform:rotate(90deg);background-size:18px 2px,2px 0}
@media (max-width:600px){.bm-faq summary{font-size:13.5px}.bm-faq .bm-faq-a>*{font-size:13px;line-height:1.6}}

/* ---------- galleria ---------- */
.wp-block-gallery.bm-gallery{display:block!important;columns:3 300px;column-gap:16px}
.wp-block-gallery.bm-gallery .wp-block-image{width:100%!important;margin:0 0 16px!important;break-inside:avoid;overflow:hidden;border-radius:10px}
.wp-block-gallery.bm-gallery .wp-block-image img{display:block;width:100%;height:auto!important;object-fit:initial!important;transition:transform 1.2s var(--bm-out),filter .6s ease}
.wp-block-gallery.bm-gallery .wp-block-image{cursor:zoom-in}
.wp-block-gallery.bm-gallery .wp-block-image:hover img{transform:scale(1.05)}

/* ---------- testi lunghi (privacy) ---------- */
.bm-legal{max-width:820px}
.bm-legal h2.wp-block-heading{margin:2em 0 .6em;font-size:24px;font-weight:700;line-height:1.3}
.bm-legal p,.bm-legal li{font-size:15px;line-height:1.8;color:var(--bm-text)}

/* ---------- scheda progetto (pagina singola) ---------- */
.bm-single-project{position:relative;padding:calc(var(--bm-hh) + 56px) var(--bm-pad) var(--bm-sec);background:#2a2b2d var(--bm-concrete,none) center/cover}
.bm-single-project .bm-ca-panel-inner{max-width:var(--bm-wrap);margin:0 auto}

/* ---------- footer ---------- */
.bm-footer{background:var(--bm-bg);color:#212121}
.bm-footer__in{display:grid;grid-template-columns:205px 1fr auto;gap:0 0;max-width:calc(var(--bm-wrap) + 2*var(--bm-pad));margin:0 auto;padding:80px var(--bm-pad) 82px}
.bm-footer__h{margin:0 0 30px;font-size:20px;font-weight:400;line-height:1.3;color:#212121}
.bm-footer p,.bm-footer li{margin:0 0 19px;font-size:16px;font-weight:400;line-height:1.3;color:#212121}
.bm-footer ul{margin:0;padding:0;list-style:none}
.bm-footer a{text-decoration:none}
.bm-footer__links a{color:#212121;text-decoration:underline;text-underline-offset:3px}
.bm-footer a:hover{text-decoration:underline}
.bm-social{display:flex;gap:16px;align-self:start;margin-top:43px}
.bm-social a{display:block;width:20px;height:20px;color:#212121}
.bm-social svg{display:block;width:20px;height:20px;fill:currentColor}
@media (max-width:781px){
	.bm-footer__in{grid-template-columns:1fr;padding:40px var(--bm-pad) 48px}
	.bm-footer__contacts{order:-1}
	.bm-footer__h{margin-bottom:14px;font-size:18px}
	.bm-footer p,.bm-footer li{margin-bottom:10px;font-size:13px}
	.bm-footer__links{margin-top:24px}
	.bm-social{margin-top:24px}
}

/* ---------- animazioni ---------- */
@keyframes bm-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes bm-pulse{0%,100%{box-shadow:0 0 0 0 rgba(245,245,220,.35)}50%{box-shadow:0 0 0 14px rgba(245,245,220,0)}}
@keyframes bm-blink{50%{opacity:0}}
@keyframes bm-breathe{0%,100%{opacity:.75}50%{opacity:1}}

/* =========================================================================
   Movimento: comparse allo scroll, titoli parola per parola, intestazioni fisse.
   Stessa curva e lo stesso ritmo della hero animata della home.
   ========================================================================= */

/* intestazione con foto ferma: il contenuto le scorre sopra */
.bm-content>.wp-block-cover.bm-stick{position:sticky;top:var(--bm-stick-top,0px);z-index:0}
.bm-stick~*{position:relative;z-index:1}
.bm-stick+*{box-shadow:0 -28px 60px -24px rgba(0,0,0,.5)}
.bm-stick>.wp-block-cover__inner-container,.bm-stick.bm-hero-intro>.wp-block-cover__inner-container{will-change:transform,opacity}
.bm-cov-shade{position:absolute;inset:0;z-index:5;background:#0b0b0c;opacity:0;pointer-events:none}

/* header: entra dall'alto (pagine senza intro) */
.bm-hd .bm-header__in{animation:bm-down 1.1s var(--bm-out) .1s backwards}

/* hero delle pagine servizio: foto che si assesta e velo che si apre */
.bm-js .bm-hero .wp-block-cover__image-background{animation:bm-settle 2.6s var(--bm-out) backwards}
.bm-js .bm-hero .wp-block-cover__background{animation:bm-unveil 1.8s ease backwards}

/* comparsa semplice (dal basso) */
.bm-js .bm-up:not(.is-in){opacity:0}
.bm-up.is-in{animation:bm-up 1.1s var(--bm-out) var(--rd,0s) backwards}
/* etichetta "- SEZIONE": scivola da sinistra stringendo la spaziatura */
.bm-js .bm-lab:not(.is-in){opacity:0}
.bm-lab.is-in{animation:bm-lab 1.2s var(--bm-out) var(--rd,0s) backwards}
/* titoli: ogni parola sale da dietro una maschera */
.bm-split .bm-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .02em .14em;margin:-.06em -.02em -.14em}
.bm-split .bm-wi{display:inline-block;transform-origin:0 100%}
.bm-js .bm-split:not(.is-in) .bm-wi{transform:translate3d(0,120%,0)}
.bm-split.is-in .bm-wi{animation:bm-word 1.15s var(--bm-out) calc(var(--rd,0s) + min(var(--wi,0),16) * 42ms) backwards}
/* foto: si scoprono dal basso con uno zoom che si assesta */
.bm-js .bm-clip:not(.is-in) img{clip-path:inset(100% 0 0 0)}
.bm-clip.is-in img{animation:bm-clip 1.3s cubic-bezier(.77,0,.18,1) var(--rd,0s) backwards,bm-zoomout 2s var(--bm-out) var(--rd,0s) backwards}
.bm-par{overflow:hidden}
.bm-par img{scale:1.1}
/* gruppi: gli elementi arrivano uno dopo l'altro */
.bm-js .bm-grp:not(.is-in)>*{opacity:0}
.bm-grp.is-in>*{animation:bm-up 1s var(--bm-out) calc(var(--rd,0s) + min(var(--i,0),10) * 85ms) backwards}
/* riquadro scuro: si apre dal centro */
.bm-js .bm-card:not(.is-in){opacity:0}
.bm-card.is-in{animation:bm-card 1.4s var(--bm-out) var(--rd,0s) backwards}

/* manifesto: le parole si accendono mentre si scorre */
.bm-hl .bm-w{display:inline}
.bm-hl .bm-wi{display:inline;opacity:var(--o,1);transition:opacity .35s linear}

/* fondatori: foto che si posano una alla volta */
.bm-founders.is-in .bm-founders__pics .wp-block-image{animation:bm-pop .9s cubic-bezier(.34,1.56,.64,1) calc(var(--rd,0s) + .15s) backwards}
.bm-founders.is-in .bm-founders__pics .wp-block-image+.wp-block-image{animation-delay:calc(var(--rd,0s) + .3s)}

/* come lavoriamo: cerchi che si posano, frecce che si disegnano */
.bm-steps.bm-grp.is-in>*{animation-delay:calc(var(--rd,0s) + var(--i,0) * 160ms)}
.bm-steps.is-in .wp-block-image{animation:bm-pop 1s cubic-bezier(.34,1.56,.64,1) calc(var(--rd,0s) + var(--i,0) * 160ms + .1s) backwards}
.bm-js .bm-steps:not(.is-in)>.wp-block-column::after{clip-path:inset(0 100% 0 0)}
.bm-steps.is-in>.wp-block-column::after{animation:bm-draw .9s var(--bm-out) calc(var(--rd,0s) + var(--i,0) * 160ms + .55s) backwards}
.bm-steps .wp-block-image{transition:transform .6s var(--bm-out),box-shadow .6s var(--bm-out)}
@media (hover:hover){.bm-steps>.wp-block-column:hover .wp-block-image{transform:translateY(-6px);box-shadow:0 22px 40px -22px rgba(0,0,0,.3)}}

/* per chi: voci da sinistra, spunte che scattano */
.is-style-bm-check.bm-grp.is-in>li,.is-style-bm-cross.bm-grp.is-in>li{animation-name:bm-x;animation-delay:calc(var(--rd,0s) + var(--i,0) * 90ms)}
.is-style-bm-check.is-in>li::before,.is-style-bm-cross.is-in>li::before{animation:bm-pop .7s cubic-bezier(.34,1.56,.64,1) calc(var(--rd,0s) + var(--i,0) * 90ms + .3s) backwards}

/* etichette bianche: piccolo rimbalzo in sequenza */
.is-style-bm-tags.bm-grp.is-in>li{animation:bm-tag .8s cubic-bezier(.34,1.4,.64,1) calc(var(--rd,0s) + var(--i,0) * 55ms) backwards}

/* progetti: schede che salgono in sequenza */
.bm-js .bm-ca-wrap.bm-grp:not(.is-in)>.bm-ca-card{opacity:0}
.bm-ca-wrap.bm-grp.is-in>.bm-ca-card{animation:bm-rise 1.2s var(--bm-out) calc(var(--rd,0s) + var(--i,0) * 90ms) backwards}
/* scheda progetto aperta: i blocchi entrano in cascata */
.bm-ca-panel.open .bm-ca-panel-inner>*,.bm-js .bm-single-project .bm-ca-panel-inner>*{animation:bm-up .9s var(--bm-out) calc(.12s + var(--i,0) * 70ms) backwards}
.bm-ca-panel.open .bm-ca-panel-inner>.bm-ca-bgnum,.bm-js .bm-single-project .bm-ca-bgnum{animation:bm-bgnum 1.6s var(--bm-out) .1s backwards}
.bm-ca-panel.open .bm-ca-panel-inner>.bm-ca-close{animation:bm-fade .6s ease .4s backwards}
.bm-ca-panel.open .bm-ca-item,.bm-js .bm-single-project .bm-ca-item{animation:bm-in-r 1s var(--bm-out) calc(.35s + min(var(--j,0),8) * 70ms) backwards}
.bm-ca-panel.open .bm-ca-stat{animation:bm-pop .9s cubic-bezier(.34,1.56,.64,1) .5s backwards}
.bm-ca-item img,.bm-ca-item video{transition:transform 1s var(--bm-out)}
@media (hover:hover){.bm-ca-item:hover img,.bm-ca-item:hover video{transform:scale(1.06)}}

/* recensioni: punteggio che conta */
.bm-gr-score{font-variant-numeric:tabular-nums}
.bm-gr-badge.is-in small{animation:bm-fade .8s ease calc(var(--rd,0s) + 1s) backwards}

@keyframes bm-up{from{opacity:0;transform:translate3d(0,36px,0)}}
@keyframes bm-down{from{opacity:0;transform:translate3d(0,-24px,0)}}
@keyframes bm-x{from{opacity:0;transform:translate3d(-22px,0,0)}}
@keyframes bm-in-r{from{opacity:0;transform:translate3d(48px,0,0)}}
@keyframes bm-fade{from{opacity:0}}
@keyframes bm-lab{from{opacity:0;transform:translate3d(-18px,0,0);letter-spacing:.18em}}
@keyframes bm-word{from{transform:translate3d(0,120%,0) rotate(5deg)}}
@keyframes bm-clip{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes bm-zoomout{from{scale:1.28}}
@keyframes bm-settle{from{scale:1.16}}
@keyframes bm-unveil{from{opacity:1}}
@keyframes bm-pop{from{opacity:0;transform:scale(.4)}}
@keyframes bm-tag{from{opacity:0;transform:translate3d(0,14px,0) scale(.8)}}
@keyframes bm-draw{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes bm-rise{from{opacity:0;transform:translate3d(0,70px,0)}}
@keyframes bm-card{from{opacity:0;clip-path:inset(12% 10% round 24px);transform:scale(.96)}to{opacity:1;clip-path:inset(0 0 round 24px);transform:none}}
@keyframes bm-bgnum{from{opacity:0;transform:translate3d(60px,0,0)}}
