/* ========================================================================
   LABORATORIO MATILDA — Reskin (blog 29, smartiweb.it multisite)
   Riskin del sito Uncode esistente: cambia FONT e COLORI, mantiene struttura.
   Design: minimale/schematico, MONOCROMO (nero/grigio scuro, niente rosso),
   font Azeret Mono sui titoli. NON tocca il child theme.
   Stato: v2 — validata in anteprima sulla home (2026-06-26).
   ======================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Azeret+Mono:wght@400;500;600;700&family=Work+Sans:wght@400;500;600&display=swap');

:root{
  --m-bg:#faf8f5;     /* off-white sfondo */
  --m-ink:#191A18;    /* near-black testo e titoli */
  --m-muted:#8a847c;  /* grigio-talpa (hover, dettagli) */
  --m-cream:#FAF5DE;  /* crema sezioni alternate */
}

/* ── Base ── */
body{ background:var(--m-bg)!important; font-size:18px!important; }
body,p,li,.text-color-default,.style-light p,.uncode-body-overlay{
  font-family:'Azeret Mono',ui-monospace,monospace!important;
  color:var(--m-ink);
}
/* ── Font unico su TUTTO il sito: Azeret Mono anche sul corpo testo (richiesta cliente) ── */
body,p,li,ul,ol,dl,dt,dd,a,span,small,strong,em,b,
h1,h2,h3,h4,h5,h6,table,thead,tbody,tr,td,th,caption,
summary,details,blockquote,figure,figcaption,label,legend,div,
input,textarea,select,button,
.text-color-default,.style-light p,.uncode-body-overlay,.icon-box,.btn,.button{
  font-family:'Azeret Mono',ui-monospace,monospace!important;
}
/* icone + stelle rating Uncode: NON devono diventare mono, restano nel loro font glifo */
i,.fa,[class^="fa-"],[class*=" fa-"],.uncodeicon,
.uncode-star-rating,.uncode-star-rating span,.uncode_star_rating,.uncode_star_rating span{
  font-family:'uncodeicon','Font Awesome 5 Free',FontAwesome!important;
}
/* widget recensioni Google: le stelline sono il carattere ★, che Azeret Mono non ha → font di sistema */
.grw-widget,.grw-widget *{
  font-family:-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
}
.uncode-body-overlay{ font-size:18px; }            /* testi più grandi */
/* descrizioni item gallery/carousel un filo più grandi */
.t-entry-text,.t-entry-text p,.gallery .description{ font-size:18px!important; }
/* Paragrafi del corpo più grandi ovunque (i lead .h4 restano grandi) */
.heading-text p:not(.h1):not(.h2):not(.h3):not(.h4):not(.h5){ font-size:19px!important; line-height:1.75!important; }

/* ── Bottoni squadrati (erano stondati) ── */
.btn,a.btn,.btn-circle,[class*="btn-circle"],.menu-btn-container,.menu-btn-container > a{ border-radius:0!important; }

/* ── Titoli → Azeret Mono (retro-mono) ── */
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.heading-text{
  font-family:'Azeret Mono',ui-monospace,monospace!important;
  letter-spacing:.3px;
}
/* Titoli degli item carousel/gallery (erano graziati/marroni) → Azeret Mono monocromo */
.t-entry-title,.t-entry-meta,.t-entry-meta *,.gallery-title,[class*="t-entry-title"]{
  font-family:'Azeret Mono',ui-monospace,monospace!important;
  color:var(--m-ink)!important;
}
/* override ad alta specificità: titoli-card gallery (regola inline Uncode Outfit/marrone) */
.tmb .t-inside .t-entry-text .t-entry-text-tc .t-entry p.t-entry-meta span,
.tmb .t-entry p.t-entry-meta span{
  font-family:'Azeret Mono',ui-monospace,monospace!important;
  color:var(--m-ink)!important;
  font-size:19px!important;
}

/* ── Etichette / occhielli → mono uppercase ── */
.pre-title,.label,.text-uppercase,.lead-style{
  font-family:'Azeret Mono',monospace!important;
  text-transform:uppercase; letter-spacing:2px;
}

/* ── MONOCROMO: niente rosso/arancio/oro ── */
.text-accent-color{ color:var(--m-ink)!important; }
a:hover{ color:var(--m-muted)!important; }
.fa-heart{ color:var(--m-ink)!important; }         /* cuore footer → nero */
/* hl-text Uncode (oro #caa077 nella CTA) → monocromo */
.hl-text,.uncode-hl-text{ color:var(--m-ink)!important; }
[style*="caa077"],[style*="#caa077"]{ color:var(--m-ink)!important; background-color:transparent!important; }

/* ── Via i separatori dashed/dotted (sporcano) ── */
hr.unseparator.dashed,.unseparator.dashed,hr.dashed{ border-style:none!important; }

/* ── Via gli shape-divider SVG decorativi di Uncode (le "fasce") ── */
.uncode-divider-wrap{ display:none!important; }

/* ── Via le icone SVG decorative Matilda ── */
.icon-media img[src*="Matilda-icon"]{ display:none!important; }
.icon-media:has(img[src*="Matilda-icon"]){ display:none!important; }

/* ── Flatten di sicurezza: nessun gradiente ── */
[style*="gradient"]{ background-image:none!important; }

/* (rimosso il mapping beige→crema: la home tiene la sua palette neutra, niente giallino) */

/* ── "Chiamaci" nel menu: outline rettangolare, padding uniforme ── */
.menu-wrapper .menu-horizontal-inner .navbar-nav li.menu-btn-container > a{
  border:1px solid currentColor!important; border-radius:0!important;
  padding-top:8px!important; padding-bottom:8px!important;
  padding-left:18px!important; padding-right:18px!important;
}
.menu-wrapper li.menu-btn-container > a .fa,.menu-wrapper li.menu-btn-container > a i{ display:none!important; }

/* ── Logo a colori sulle pagine interne (header trasparente su sfondo bianco) ── */
body:not(.home) .menu-wrapper .logo-image img,
body:not(.home) .menu-wrapper .main-logo img{
  content:url('https://smartiweb.it/laboratoriomatilda/wp-content/uploads/sites/29/2026/01/Matilda-Logo-brown.png')!important;
  height:80px!important; width:auto!important; object-fit:contain!important; object-position:left center!important;
}
/* Laboratorio (268): header scuro (menu bianco) -> logo BIANCO */
body.page-id-268 .menu-wrapper .logo-image img,
body.page-id-268 .menu-wrapper .main-logo img{
  content:url('https://smartiweb.it/laboratoriomatilda/wp-content/uploads/sites/29/2026/01/Matilda-Logo-light.png')!important;
}
/* Riparazioni (354), Brand (355), Contatti (272): logo NERO (stesso del footer) invece del marrone — dimensioni invariate (80px dalla regola base) */
body.page-id-354 .menu-wrapper .logo-image img,
body.page-id-354 .menu-wrapper .main-logo img,
body.page-id-355 .menu-wrapper .logo-image img,
body.page-id-355 .menu-wrapper .main-logo img,
body.page-id-272 .menu-wrapper .logo-image img,
body.page-id-272 .menu-wrapper .main-logo img,
body.page-id-535 .menu-wrapper .logo-image img,
body.page-id-535 .menu-wrapper .main-logo img{
  content:url('https://smartiweb.it/laboratoriomatilda/wp-content/uploads/sites/29/2026/01/LaboratorioMatilda_Logo-Light.png')!important;
}
/* ── Voce di menu CURRENT: sottolineatura coerente (currentColor si adatta a bianco/ink); il colore pieno lo forza il JS del plugin ── */
body:not(.home) .menu-wrapper .navbar-nav li.menu-item.current-menu-item > a,
body:not(.home) .menu-wrapper .navbar-nav li.menu-item.current_page_item > a{ border-bottom:0!important; text-decoration:underline!important; text-decoration-thickness:2px!important; text-underline-offset:6px!important; }

/* ===== LISTINO — schematico, bordi neri, accordion ===== */
.matilda-listino{ text-align:left; }  /* la colonna padre è centrata: forziamo le lavorazioni a sinistra */
/* TAB principali: outline neri + bordo base continuo full-width */
.matilda-listino-tabs .vc_tta-tabs-list{ border-bottom:2px solid #191A18!important; display:flex!important; flex-wrap:wrap; gap:6px; margin:0!important; padding:0!important; }
.matilda-listino-tabs .vc_tta-tabs-list .vc_tta-tab{ border:1px solid #191A18!important; border-bottom:none!important; margin:0!important; background:transparent!important; border-radius:0!important; }
.matilda-listino-tabs .vc_tta-tab > a{ font-family:'Azeret Mono',ui-monospace,monospace!important; text-transform:uppercase; letter-spacing:1px; font-size:.9rem!important; color:#191A18!important; background:transparent!important; border:none!important; padding:.85rem 1.5rem!important; margin:0!important; }
.matilda-listino-tabs .vc_tta-tab.vc_active{ background:#191A18!important; }
.matilda-listino-tabs .vc_tta-tab.vc_active > a{ color:#fff!important; }
.matilda-listino-tabs .vc_tta-panels,.matilda-listino-tabs .vc_tta-panel,.matilda-listino-tabs .vc_tta-panels-container{ border:none!important; background:transparent!important; }
.matilda-listino-tabs > .vc_tta-panels-container > .vc_tta-panels > .vc_tta-panel > .vc_tta-panel-body{ padding:1.6rem 0 0!important; }
/* MOBILE: i 3 tab principali diventano accordion-heading → stesso stile nero del desktop */
.matilda-listino-tabs .vc_tta-panel-heading{ background:#191A18!important; border:none!important; border-radius:0!important; margin:0 0 5px!important; }
.matilda-listino-tabs .vc_tta-panel-heading .vc_tta-panel-title,.matilda-listino-tabs .vc_tta-panel-heading .vc_tta-panel-title > a{ font-family:'Azeret Mono',ui-monospace,monospace!important; text-transform:uppercase!important; letter-spacing:1px!important; font-size:.9rem!important; font-weight:500!important; color:#fff!important; background:transparent!important; padding:1rem 1.3rem!important; }
.matilda-listino-tabs .vc_tta-panel-heading .vc_tta-controls-icon{ color:#fff!important; }
.matilda-listino-tabs .vc_tta-panel-heading .vc_tta-controls-icon::before,.matilda-listino-tabs .vc_tta-panel-heading .vc_tta-controls-icon::after{ border-color:#fff!important; }
/* INTRO boxata dentro il tab */
.matilda-listino .lst-intro-box{ border:1px solid #191A18; padding:1.1rem 1.3rem; margin-bottom:1.6rem; }
.matilda-listino .lst-intro-box p{ margin:0 0 .6rem; font-size:1rem; color:#3a3a36; line-height:1.7; }
.matilda-listino .lst-intro-box p:last-child{ margin-bottom:0; }
.matilda-listino .acc-intro{ font-size:.98rem; color:#5A5450; line-height:1.7; margin:0; padding:1.1rem 1.3rem; border-bottom:1px solid #191A18; }
/* ACCORDION sotto-categorie: <details> nativo a box neri */
.matilda-listino .lst-acc{ border:1px solid #191A18; margin-bottom:-1px; background:transparent; }
.matilda-listino .lst-acc > summary{ font-family:'Azeret Mono',ui-monospace,monospace; text-transform:uppercase; letter-spacing:.5px; font-size:.92rem; color:#191A18; padding:1rem 1.3rem; cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.matilda-listino .lst-acc > summary::-webkit-details-marker{ display:none; }
.matilda-listino .lst-acc > summary::after{ content:"+"; font-family:'Azeret Mono',monospace; font-size:1.25rem; line-height:1; }
.matilda-listino .lst-acc[open] > summary::after{ content:"\2013"; }
.matilda-listino .lst-acc > summary:hover{ background:#191A18; color:#fff; }
.matilda-listino .lst-acc[open] > summary{ background:#191A18; color:#fff; }
.matilda-listino .lst-acc:last-of-type{ margin-bottom:0; }  /* ultima riga: border-bottom visibile */
.matilda-listino .lst-acc-body{ padding:0; }                /* la tabella va full-width nel box */
/* TABELLE: bordi neri + padding ── prezzi ordinati */
.matilda-listino .price-table{ width:100%; border-collapse:collapse; margin:0; }
.matilda-listino .price-table th{ text-align:left; padding:.7rem 1.3rem; font-family:'Azeret Mono',monospace; font-size:14px; letter-spacing:1px; text-transform:uppercase; color:#8a847c; font-weight:400; border-bottom:1px solid #191A18; }
.matilda-listino .price-table td{ padding:.95rem 1.3rem; font-size:14px; font-weight:500; border-bottom:1px solid #191A18; vertical-align:top; color:var(--m-ink); }
.matilda-listino .price-table tr:last-child td{ border-bottom:none; }
.matilda-listino .price-table td:last-child{ text-align:right; }
.matilda-listino .pv{ display:flex; flex-direction:column; gap:.35rem; }
.matilda-listino .pv span{ white-space:nowrap; display:flex; justify-content:space-between; gap:1rem; }
.matilda-listino .pv .m{ color:#5A5450; }
.matilda-listino .pv .v,.matilda-listino .ps{ font-weight:500; font-family:'Azeret Mono',monospace; color:var(--m-ink); }
.matilda-listino .brand-note{ font-size:14px; font-weight:500; color:#8a847c; margin-top:.4rem; }
.matilda-listino .price-brand-header td{ padding:1.4rem 1.3rem .5rem; font-family:'Azeret Mono',monospace; font-size:.82rem; letter-spacing:2px; text-transform:uppercase; font-weight:600; color:var(--m-ink); border-bottom:1px solid #191A18; text-align:left!important; }
.matilda-listino .listino-note{ margin-top:2rem; color:#5A5450; font-size:.98rem; }

/* ===== BRAND — accordion full-width (titolo + tag categoria) ===== */
.matilda-brand{ text-align:left; }
.matilda-brand .brand-acc{ border:1px solid #191A18; margin-bottom:-1px; background:transparent; }
.matilda-brand .brand-acc:last-of-type{ margin-bottom:0; }
.matilda-brand .brand-acc > summary{ display:flex; align-items:center; gap:1rem; padding:1.1rem 1.3rem; cursor:pointer; list-style:none; }
.matilda-brand .brand-acc > summary::-webkit-details-marker{ display:none; }
.matilda-brand .ba-title{ flex:1; font-family:'Azeret Mono',ui-monospace,monospace; font-size:.95rem; text-transform:uppercase; letter-spacing:.5px; color:#191A18; }
.matilda-brand .ba-tag{ font-family:'Azeret Mono',monospace; font-size:.68rem; text-transform:uppercase; letter-spacing:1px; border:1px solid #191A18; padding:.28rem .65rem; color:#191A18; white-space:nowrap; }
.matilda-brand .brand-acc > summary::after{ content:"+"; font-family:'Azeret Mono',monospace; font-size:1.25rem; line-height:1; color:#191A18; }
.matilda-brand .brand-acc[open] > summary::after{ content:"\2013"; }
.matilda-brand .brand-acc > summary:hover,.matilda-brand .brand-acc[open] > summary{ background:#191A18; }
.matilda-brand .brand-acc > summary:hover .ba-title,.matilda-brand .brand-acc[open] > summary .ba-title,
.matilda-brand .brand-acc > summary:hover::after,.matilda-brand .brand-acc[open] > summary::after{ color:#fff; }
.matilda-brand .brand-acc > summary:hover .ba-tag,.matilda-brand .brand-acc[open] > summary .ba-tag{ color:#fff; border-color:#fff; }
.matilda-brand .ba-body{ padding:1.3rem 1.3rem 1.4rem; }
.matilda-brand .ba-body p{ font-size:1rem; line-height:1.7; color:#3a3a36; margin:0 0 .8rem; }
.matilda-brand .ba-body p:last-of-type{ margin-bottom:0; }
.matilda-brand .ba-body .price-inline{ font-family:'Azeret Mono',monospace; font-size:.9rem; color:#8a847c; margin:1rem 0 0; }
.matilda-brand .ba-link{ display:inline-block; margin-top:1rem; font-family:'Azeret Mono',monospace; font-size:.8rem; text-transform:uppercase; letter-spacing:1px; color:#191A18; border-bottom:1px solid #191A18; text-decoration:none; }
.matilda-brand .ba-link:hover{ color:#8a847c; border-color:#8a847c; }
@media (max-width:600px){ .matilda-brand .brand-acc > summary{ flex-wrap:wrap; } .matilda-brand .ba-title{ flex:1 1 100%; } }

/* ===== BRAND — marquee full-screen (scorrimento continuo) ===== */
.brand-marquee{ width:100vw; position:relative; left:50%; margin-left:-50vw; overflow:hidden; border-top:1px solid #191A18; border-bottom:1px solid #191A18; padding:1.4rem 0; }
.brand-marquee .bm-track{ display:flex; width:max-content; animation:bmScroll 80s linear infinite; will-change:transform; }
.brand-marquee .bm-set{ font-family:'Azeret Mono',ui-monospace,monospace; font-size:clamp(1.4rem,3vw,2.3rem); font-weight:500; text-transform:uppercase; letter-spacing:2px; color:#191A18; white-space:nowrap; padding-right:2.5rem; }
@keyframes bmScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.brand-marquee:hover .bm-track{ animation-play-state:paused; }
@media (prefers-reduced-motion:reduce){ .brand-marquee .bm-track{ animation:none; } }
/* variante INLINE (home, dentro colonna 1/2 — niente full-bleed) */
.brand-marquee.bm-inline{ width:100%; left:auto; margin-left:0; padding:1.1rem 0; }
.brand-marquee.bm-inline .bm-set{ font-size:clamp(1.05rem,2.4vw,1.55rem); letter-spacing:1.5px; padding-right:2rem; }
.brand-marquee.bm-inline .bm-track{ animation-duration:45s; }

/* ===== LAVORI — blocco prima/dopo (slider cursore) + tag/didascalia ===== */
.m-work{ margin-top:1.5rem; border-top:1px solid #191A18; padding-top:1.4rem; }
.m-work-eyebrow{ font-family:'Azeret Mono',ui-monospace,monospace; font-size:.68rem; letter-spacing:1.5px; text-transform:uppercase; color:#8a847c; display:block; margin-bottom:.8rem; }
.m-ba{ position:relative; width:100%; overflow:hidden; border:1px solid #191A18; line-height:0; touch-action:pan-y; --pos:50%; }
.m-ba > img{ display:block; width:100%; height:auto; }
.m-ba-over{ position:absolute; inset:0; clip-path:inset(0 calc(100% - var(--pos)) 0 0); }
.m-ba-over img{ display:block; width:100%; height:auto; }
.m-ba-div{ position:absolute; top:0; bottom:0; left:var(--pos); width:2px; margin-left:-1px; background:#fff; box-shadow:0 0 0 1px rgba(25,26,24,.35); pointer-events:none; }
.m-ba-handle{ position:absolute; top:50%; left:var(--pos); width:40px; height:40px; margin:-20px 0 0 -20px; border-radius:50%; background:#191A18; border:2px solid #fff; pointer-events:none; display:flex; align-items:center; justify-content:center; }
.m-ba-handle::before{ content:"\2039  \203A"; color:#fff; font-family:'Azeret Mono',monospace; font-size:.85rem; line-height:1; letter-spacing:1px; }
.m-ba-tag{ position:absolute; top:.7rem; font-family:'Azeret Mono',monospace; font-size:.6rem; letter-spacing:1.5px; text-transform:uppercase; color:#fff; background:rgba(25,26,24,.8); padding:.26rem .55rem; pointer-events:none; line-height:1; }
.m-ba-tag-l{ left:.7rem; } .m-ba-tag-r{ right:.7rem; }
.m-ba-range{ position:absolute; inset:0; width:100%; height:100%; margin:0; opacity:0; cursor:ew-resize; -webkit-appearance:none; appearance:none; background:transparent; }
.m-ba-range::-webkit-slider-thumb{ -webkit-appearance:none; width:44px; height:240px; cursor:ew-resize; }
.m-ba-range::-moz-range-thumb{ width:44px; height:240px; border:0; background:transparent; cursor:ew-resize; }
.m-work-cap{ font-size:.95rem; color:#3a3a36; margin:.95rem 0 0; line-height:1.6; }
.m-work-tags{ display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.85rem; }
.m-work-tags span{ font-family:'Azeret Mono',monospace; font-size:.62rem; letter-spacing:1px; text-transform:uppercase; color:#191A18; border:1px solid #191A18; padding:.24rem .55rem; line-height:1; }

/* ===== LAVORI — griglia video (poster + play → player inline) ===== */
.m-videos-grid{ display:grid; grid-template-columns:1fr 1fr; gap:1.4rem; text-align:left; max-width:1000px; margin:0 auto; }
@media(max-width:680px){ .m-videos-grid{ grid-template-columns:1fr; } }
.m-video{ border:1px solid #191A18; background:#fff; }
.m-video-play{ position:relative; display:block; width:100%; aspect-ratio:16/9; padding:0; margin:0; border:0; background:#191A18; cursor:pointer; overflow:hidden; }
.m-video-poster{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease, filter .4s; }
.m-video-play:hover .m-video-poster{ transform:scale(1.05); filter:brightness(.82); }
.m-video-btn{ position:absolute; top:50%; left:50%; width:70px; height:70px; margin:-35px 0 0 -35px; border-radius:50%; background:rgba(25,26,24,.66); border:2px solid #fff; transition:background .25s; }
.m-video-play:hover .m-video-btn{ background:#191A18; }
.m-video-btn::before{ content:""; position:absolute; top:50%; left:53%; transform:translate(-50%,-50%); border-style:solid; border-width:11px 0 11px 19px; border-color:transparent transparent transparent #fff; }
.m-video-title{ display:block; font-family:'Azeret Mono',ui-monospace,monospace; font-size:.78rem; letter-spacing:1px; text-transform:uppercase; color:#191A18; padding:.9rem 1.1rem; border-top:1px solid #191A18; }
.m-video iframe{ display:block; width:100%; aspect-ratio:16/9; border:0; background:#191A18; }
/* variante FULL-WIDTH / full-screen (sezione video grande, a tutta larghezza) */
.m-videos-grid.m-full{ width:100vw; position:relative; left:50%; margin-left:-50vw; max-width:none; grid-template-columns:1fr 1fr; gap:0; margin-top:2.5rem; border-top:1px solid #191A18; }
.m-videos-grid.m-full .m-video{ border:0; border-bottom:1px solid #191A18; }
.m-videos-grid.m-full .m-video:nth-child(odd){ border-right:1px solid #191A18; }
@media(max-width:680px){ .m-videos-grid.m-full{ grid-template-columns:1fr; } .m-videos-grid.m-full .m-video:nth-child(odd){ border-right:0; } }

/* ===== LAVORI — sequenze fasi (scroll orizzontale) ===== */
.m-works{ text-align:left; }
.m-seq{ margin-bottom:3.4rem; }
.m-seq:last-child{ margin-bottom:0; }
.m-seq-title{ font-family:'Azeret Mono',ui-monospace,monospace; font-size:1.05rem; text-transform:uppercase; letter-spacing:.5px; color:#191A18; margin:0 0 .7rem; }
.m-seq .m-work-tags{ margin-top:0; }
.m-seq-cap{ font-size:.98rem; color:#3a3a36; line-height:1.6; margin:.8rem 0 1.1rem; max-width:760px; }
.m-seq-track{ display:flex; gap:1px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-behavior:smooth; border:1px solid #191A18; background:#191A18; -webkit-overflow-scrolling:touch; scrollbar-width:thin; scrollbar-color:#191A18 #e9e4dc; }
.m-seq-track::-webkit-scrollbar{ height:6px; }
.m-seq-track::-webkit-scrollbar-thumb{ background:#191A18; }
.m-seq-slide{ flex:0 0 auto; width:clamp(240px,38%,400px); scroll-snap-align:start; margin:0; background:#fff; position:relative; line-height:0; }
.m-seq-slide img{ display:block; width:100%; aspect-ratio:4/3; object-fit:cover; }
.m-seq-slide figcaption{ position:absolute; top:.6rem; left:.6rem; font-family:'Azeret Mono',monospace; font-size:.58rem; letter-spacing:1px; text-transform:uppercase; color:#fff; background:rgba(25,26,24,.82); padding:.24rem .5rem; line-height:1; }
.m-seq-nav{ display:flex; gap:.5rem; margin-top:.85rem; }
.m-seq-nav button{ width:44px; height:44px; border:1px solid #191A18; background:#fff; color:#191A18; font-family:'Azeret Mono',monospace; font-size:1.3rem; line-height:1; cursor:pointer; transition:background .2s,color .2s; }
.m-seq-nav button:hover{ background:#191A18; color:#fff; }

/* ===== COME FUNZIONA — tabella boxata (righe full-width, contenuto in gabbia) ===== */
.m-howto{ width:100vw; position:relative; left:50%; margin-left:-50vw; text-align:left; }
.m-howto-row{ border-bottom:1px solid #191A18; }
.m-howto-row:first-child{ border-bottom:0; }
.m-howto-row:last-child{ border-bottom:0; }
.m-howto-inner{ max-width:1140px; margin:0 auto; }
.m-howto-eyebrow{ font-family:'Azeret Mono',ui-monospace,monospace; font-size:.7rem; letter-spacing:2px; text-transform:uppercase; color:#8a847c; padding:1.1rem 2rem; }
.m-howto-title{ font-family:'Azeret Mono',ui-monospace,monospace; font-size:clamp(1.6rem,3.6vw,2.4rem); font-weight:500; color:#191A18; letter-spacing:-.5px; padding:2.1rem 2rem; line-height:1.15; }
.m-howto-grid{ display:grid; grid-template-columns:repeat(3,1fr); }
.m-howto-step{ padding:2.4rem 2rem; border-left:1px solid #191A18; }
.m-howto-step:first-child{ border-left:0; }
.m-howto-num{ display:block; font-family:'Azeret Mono',monospace; font-size:.82rem; color:#8a847c; letter-spacing:1px; margin-bottom:1.1rem; }
.m-howto-step h4{ font-family:'Azeret Mono',monospace; font-size:1.02rem; text-transform:uppercase; letter-spacing:.5px; color:#191A18; margin:0 0 .7rem; font-weight:500; }
.m-howto-step p{ font-size:1rem; line-height:1.65; color:#3a3a36; margin:0; }
@media(max-width:760px){ .m-howto-grid{ grid-template-columns:1fr; } .m-howto-step{ border-left:0; border-top:1px solid #191A18; } .m-howto-step:first-child{ border-top:0; } }
/* riga CTA dentro la tabella */
.m-howto-cta .m-howto-inner{ display:flex; align-items:center; justify-content:space-between; gap:1.4rem 2.5rem; padding:1.9rem 2rem; flex-wrap:wrap; }
.m-howto-cta-text{ font-size:1.1rem; color:#191A18; line-height:1.4; }
.m-howto-cta-text strong{ font-weight:500; display:block; }
.m-howto-cta-text span{ display:block; color:#5A5450; font-size:.92rem; margin-top:.35rem; max-width:520px; }
.m-howto-cta-actions{ display:flex; align-items:center; gap:1.6rem; flex-wrap:wrap; }
.m-howto .m-btn{ font-family:'Azeret Mono',monospace; font-size:.78rem; letter-spacing:1px; text-transform:uppercase; text-decoration:none; white-space:nowrap; }
.m-howto .m-btn-dark{ background:#191A18; color:#fff; border:1px solid #191A18; padding:.95rem 1.7rem; transition:background .2s,color .2s; }
.m-howto .m-btn-dark:hover{ background:transparent; color:#191A18; }
.m-howto .m-btn-link{ color:#191A18; border-bottom:1px solid #191A18; padding-bottom:3px; }
.m-howto .m-btn-link:hover{ color:#5A5450; border-color:#5A5450; }
@media(max-width:760px){ .m-howto-cta .m-howto-inner{ flex-direction:column; align-items:flex-start; } }
/* niente angoli stondati: gallery "Alcuni risultati" (override scoped sulla gallery) */
#gallery-200181 img,#gallery-200181 figure,#gallery-200181 .tmb,#gallery-200181 [class*="round"]{ border-radius:0!important; }
/* sul Listino (354): gabbia "Come funziona" allineata alla larghezza delle tabelle listino */
.page-id-354 .m-howto-inner{ max-width:984px; }

/* ===== HOME — coerenza col Laboratorio ===== */
/* niente angoli stondati su tutta la home */
body.home img,body.home .uncode-single-media-wrapper,body.home figure,body.home .tmb,body.home .t-inside,body.home [class*="img-round"]{ border-radius:0!important; }
/* spaziatura sezioni uniforme su TUTTE le pagine (solo contenuto post, non footer) -> gap ~120px costanti */
.post-content > .vc_row > .row{ padding-top:60px!important; padding-bottom:60px!important; }
@media(max-width:760px){ .post-content > .vc_row > .row{ padding-top:42px!important; padding-bottom:42px!important; } }
/* fascia prodotti -> carousel/marquee full-width boxato, loghi grandi in scala di grigi */
.logo-marquee{ width:100vw; position:relative; left:50%; margin-left:-50vw; overflow:hidden; border-top:1px solid #191A18; border-bottom:1px solid #191A18; }
.logo-marquee .lm-track{ display:flex; width:max-content; animation:lmScroll 55s linear infinite; will-change:transform; }
.logo-marquee .lm-logo{ flex:0 0 auto; width:clamp(280px,28vw,400px); height:280px; border-right:1px solid #191A18; display:flex; align-items:center; justify-content:center; padding:2.5rem 3rem; box-sizing:border-box; }
.logo-marquee .lm-logo img{ max-width:100%; max-height:175px; width:auto; height:auto; filter:grayscale(100%); opacity:.7; transition:filter .3s,opacity .3s; }
.logo-marquee .lm-logo img[src*="collonil"]{ transform:scale(.85); }  /* Collonil ~15% più piccolo per uniformità */
.logo-marquee .lm-logo:hover img{ filter:grayscale(0); opacity:1; }
@keyframes lmScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.logo-marquee:hover .lm-track{ animation-play-state:paused; }
@media (prefers-reduced-motion:reduce){ .logo-marquee .lm-track{ animation:none; } }
@media(max-width:760px){ .logo-marquee .lm-logo{ width:62vw; height:200px; padding:1.1rem 1.3rem; } .logo-marquee .lm-logo img{ max-height:160px; max-width:100%; } }
/* griglia specializzazioni (Cosa facciamo) — box hairline */
.m-specs{ display:grid; grid-template-columns:repeat(3,1fr); max-width:1100px; margin:2.4rem auto 0; border-top:1px solid #191A18; border-left:1px solid #191A18; text-align:left; }
.m-spec{ border-right:1px solid #191A18; border-bottom:1px solid #191A18; padding:2rem 1.8rem; }
.m-spec h4{ font-family:'Azeret Mono',ui-monospace,monospace; font-size:1rem; text-transform:uppercase; letter-spacing:.5px; color:#191A18; margin:0 0 .7rem; font-weight:500; }
.m-spec p{ font-size:.97rem; line-height:1.6; color:#3a3a36; margin:0; }
@media(max-width:760px){ .m-specs{ grid-template-columns:1fr; } }

/* ── Mobile: tabella listino leggibile (evita overflow → prezzi tagliati) ── */
@media(max-width:768px){
  .matilda-listino .price-table{ table-layout:fixed; }
  .matilda-listino .price-table th,
  .matilda-listino .price-table td{ padding-left:.8rem!important; padding-right:.8rem!important; }
  .matilda-listino .price-table th:first-child,
  .matilda-listino .price-table td:first-child{ width:54%; }
  .matilda-listino .price-table th:last-child,
  .matilda-listino .price-table td:last-child{ width:46%; }
  .matilda-listino .pv span{ white-space:normal; }
  .matilda-listino .lst-acc > summary{ padding:.9rem 1rem; }
}

/* ── Carosello fotografico full-bleed (pagina Prodotti) — riusa l'animazione lmScroll ── */
.photo-marquee{ width:100vw; position:relative; left:50%; margin-left:-50vw; overflow:hidden; border-top:1px solid #191A18; border-bottom:1px solid #191A18; }
.photo-marquee .pm-track{ display:flex; width:max-content; animation:lmScroll 60s linear infinite; will-change:transform; }
.photo-marquee .pm-item{ flex:0 0 auto; width:clamp(240px,26vw,360px); height:300px; border-right:1px solid #191A18; overflow:hidden; }
.photo-marquee .pm-item a{ display:block; width:100%; height:100%; cursor:pointer; }
.photo-marquee .pm-item img{ width:100%; height:100%; object-fit:cover; display:block; }
.photo-marquee:hover .pm-track{ animation-play-state:paused; }
@media (prefers-reduced-motion:reduce){ .photo-marquee .pm-track{ animation:none; } }
@media(max-width:760px){ .photo-marquee .pm-item{ width:72vw; height:240px; } }
/* Lightbox custom (carosello Prodotti) — nessuna dipendenza dal tema */
.m-lightbox{ position:fixed; inset:0; z-index:100000; background:rgba(20,22,24,.93); display:flex; align-items:center; justify-content:center; }
.m-lightbox[hidden]{ display:none; }
.m-lightbox img{ max-width:90vw; max-height:86vh; object-fit:contain; box-shadow:0 10px 50px rgba(0,0,0,.5); }
.m-lb-btn{ position:absolute; background:none; border:0; color:#fff; cursor:pointer; font-family:'Azeret Mono',ui-monospace,monospace; line-height:1; padding:10px 16px; -webkit-tap-highlight-color:transparent; }
.m-lb-btn:hover{ color:#bbb; }
.m-lb-close{ top:14px; right:18px; font-size:34px; }
.m-lb-prev,.m-lb-next{ top:50%; transform:translateY(-50%); font-size:50px; }
.m-lb-prev{ left:6px; } .m-lb-next{ right:6px; }
@media(max-width:600px){ .m-lb-prev,.m-lb-next{ font-size:38px; } .m-lightbox img{ max-width:94vw; } }

/* ── Menu mobile: overlay full-screen con blur, voci centrate ── */
@media (max-width:959px){
  body.open-overlay-menu .menu-container{
    position:fixed!important; top:0!important; left:0!important;
    width:100vw!important; height:100dvh!important; min-height:100vh!important;
    background:rgba(250,248,245,.85)!important;
    -webkit-backdrop-filter:blur(18px)!important; backdrop-filter:blur(18px)!important;
    overflow-y:auto!important; z-index:1000!important;
  }
  /* i figli non devono coprire il blur con il bianco pieno */
  body.open-overlay-menu .main-menu-container,
  body.open-overlay-menu .row-menu,
  body.open-overlay-menu .row-menu-inner,
  body.open-overlay-menu .menu-horizontal,
  body.open-overlay-menu .menu-horizontal-inner,
  body.open-overlay-menu .navbar-main,
  body.open-overlay-menu .navbar-nav,
  body.open-overlay-menu .menu-primary-inner,
  body.open-overlay-menu .menu-primary-inner > li,
  body.open-overlay-menu .menu-primary-inner > li > a{ background:transparent!important; }
  /* X di chiusura visibile sull'overlay chiaro (le barre erano bianche/trasparenti) */
  body.open-overlay-menu .mobile-menu-button .lines::before,
  body.open-overlay-menu .mobile-menu-button .lines::after{ background-color:#191A18!important; }
  /* nav centrato orizzontalmente e verticalmente (sotto la barra logo/hamburger) */
  body.open-overlay-menu .menu-horizontal{ display:flex!important; align-items:center!important; min-height:calc(100dvh - 54px)!important; width:100%!important; }
  body.open-overlay-menu .menu-horizontal-inner,
  body.open-overlay-menu .navbar-main,
  body.open-overlay-menu .menu-primary-inner{ width:100%!important; }
  body.open-overlay-menu .menu-primary-inner{ text-align:center!important; }
  body.open-overlay-menu .menu-primary-inner > li{ display:block!important; width:100%!important; text-align:center!important; float:none!important; }
  body.open-overlay-menu .menu-primary-inner > li > a{ display:block!important; text-align:center!important; }
  /* "Chiamaci" come le altre voci (niente pillola) — il font 30px e la rimozione del bordo/margine li forza il JS del plugin */
  body.open-overlay-menu .menu-btn-container > a{ background:transparent!important; }
}

/* ── Pulsante X dedicato per chiudere il menu mobile (l'hamburger→X del tema resta invisibile sull'overlay chiaro) ── */
.m-menu-close{ display:none; position:fixed; top:8px; right:16px; z-index:100001; background:none; border:0; font-family:'Azeret Mono',ui-monospace,monospace; font-size:42px; line-height:1; color:#191A18; cursor:pointer; padding:6px 12px; -webkit-tap-highlight-color:transparent; }
.m-menu-close:hover{ color:#8a847c; }
body.open-overlay-menu .m-menu-close{ display:block; }
body.open-overlay-menu .mobile-menu-button{ visibility:hidden!important; }

/* ── Borse & Giacche: listino nascosto (solo intro; accordion prezzi pronti da riattivare rimuovendo questa regola) ── */
.matilda-listino-tabs #bo .lst-acc,
.matilda-listino-tabs #gi .lst-acc{ display:none!important; }

/* ── Pagina Brand: prezzi indicativi nascosti (pronti da riattivare rimuovendo questa regola) ── */
.brand-acc .price-inline{ display:none!important; }

/* ── Footer: testi delle info al massimo 20px (erano h4 = 25px) ── */
.site-footer .icon-box,.site-footer .icon-box *{ font-size:20px!important; }

/* ── Pulsanti: via il verde (#2F4F4F / color-142613) → monocromo ink ── */
.btn.btn-color-142613.btn-outline:not(.btn-text-skin),
.btn-color-142613,.btn-color-142613:link,.btn-color-142613:visited{ color:#191A18!important; border-color:#191A18!important; }
.btn-color-142613 .btn-fill,.btn-color-142613 .button-bg{ background-color:#191A18!important; }
.btn.btn-color-142613.btn-outline:not(.btn-text-skin):hover,
.btn.btn-color-142613.btn-outline:not(.btn-text-skin):focus,
.btn-color-142613:hover,.btn-color-142613:focus,.btn-color-142613:active{ color:#fff!important; border-color:#191A18!important; background-color:#191A18!important; }
