:root{--orange:#e94b0a;--black:#070a0d;--ink:#11151a;--muted:#69717d;--line:#e6e8eb;--soft:#f7f7f8;--white:#fff;--shadow:0 24px 70px rgba(0,0,0,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.5}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.container{width:min(1180px,calc(100% - 40px));margin:0 auto}.site-header{position:fixed;top:0;left:0;right:0;height:84px;z-index:10;color:#fff;background:linear-gradient(to bottom,rgba(4,6,9,.94),rgba(4,6,9,.58),rgba(4,6,9,0))}.nav{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.mark{width:48px;height:48px;background:var(--orange);display:grid;place-items:center;flex:0 0 auto}.mark svg{width:36px;height:28px}.word{display:flex;align-items:baseline;gap:3px;color:#fff;font-weight:850;font-size:32px;letter-spacing:-.055em;line-height:.86}.lab{color:var(--orange);font-family:"Brush Script MT","Segoe Script",cursive;font-size:.62em;font-weight:400;transform:rotate(-8deg) translateY(-1px);display:inline-block;margin-left:2px;letter-spacing:-.04em}.sub{display:block;color:rgba(255,255,255,.78);font-size:11px;letter-spacing:.02em;margin-top:4px}.menu{display:flex;gap:28px;align-items:center;font-size:12px;text-transform:uppercase;font-weight:800;letter-spacing:.055em}.menu a{opacity:.9;padding:32px 0;position:relative}.menu a:hover,.menu a.active{color:var(--orange);opacity:1}.menu a.active:after{content:"";position:absolute;left:0;right:0;bottom:22px;height:2px;background:var(--orange)}.icons{display:flex;gap:12px}.ico{width:36px;height:36px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.05)}.hero{min-height:750px;color:#fff;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.76) 35%,rgba(0,0,0,.25) 64%,rgba(0,0,0,.75) 100%),url("hero-banchi-lavoro.jpg") center/cover no-repeat,#111;position:relative;overflow:hidden}.hero-inner{min-height:750px;display:grid;align-items:center;padding-top:80px}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--orange);text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.14em;margin-bottom:24px}.eyebrow:before{content:"";width:38px;height:2px;background:var(--orange)}h1{margin:0;font-size:clamp(48px,7vw,92px);line-height:.92;letter-spacing:-.06em;text-transform:uppercase;max-width:620px}.hero p{font-size:clamp(18px,2vw,24px);color:rgba(255,255,255,.88);max-width:460px;margin:28px 0 34px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border:1px solid transparent;font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.06em;transition:.2s}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{filter:brightness(.92);transform:translateY(-1px)}.btn-ghost{border-color:rgba(255,255,255,.6);color:#fff;background:rgba(255,255,255,.04)}.btn-ghost:hover{background:rgba(255,255,255,.1);transform:translateY(-1px)}.cta-row{display:flex;gap:16px;flex-wrap:wrap}section{padding:84px 0}.section-kicker{color:var(--orange);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}h2{font-size:clamp(30px,4vw,48px);line-height:1.02;letter-spacing:-.045em;text-transform:uppercase;margin:0}.lead{color:#333b45;max-width:650px;margin:22px 0 0}.intro-grid{display:grid;grid-template-columns:1.05fr 1.65fr;gap:80px;align-items:start}.features{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}.feature{border-right:1px solid var(--line);padding:0 26px;min-height:180px}.feature svg{width:40px;height:40px;stroke-width:1.35}.feature strong{display:block;margin:16px 0 8px;text-transform:uppercase;font-size:14px}.feature p{margin:0;color:var(--muted);font-size:14px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:32px}.see-all{text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.07em}.see-all:hover{color:var(--orange)}.solution-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}.solution-card{height:292px;position:relative;background:#111;overflow:hidden;box-shadow:var(--shadow)}.solution-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.06);transition:.35s}.solution-card:hover img{transform:scale(1.05)}.solution-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.92),rgba(0,0,0,.18) 60%,transparent)}.solution-content{position:absolute;left:18px;right:18px;bottom:18px;z-index:1;color:#fff;display:flex;align-items:end;justify-content:space-between;gap:10px}.solution-content h3{font-size:16px;line-height:1.1;margin:0;text-transform:uppercase}.arrow{color:var(--orange);font-size:26px}.promo{margin-top:44px;min-height:230px;color:#fff;padding:48px 62px;background:linear-gradient(90deg,rgba(8,11,14,.96),rgba(8,11,14,.72),rgba(8,11,14,.35)),url("struttura-officina.jpg") center/cover no-repeat,#111;display:grid;align-items:center}.promo p{color:rgba(255,255,255,.82);max-width:470px}.products{background:#fafafa}.product-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}.product{background:#fff;border:1px solid var(--line);transition:.22s}.product:hover{transform:translateY(-4px);box-shadow:0 18px 55px rgba(0,0,0,.1)}.product-media{aspect-ratio:1/1;background:linear-gradient(145deg,#f5f6f7,#fff);display:grid;place-items:center;overflow:hidden}.product-media img{width:86%;height:86%;object-fit:contain}.product-info{padding:18px}.product h3{margin:0 0 12px;font-size:16px;line-height:1.18}.price-row{display:flex;justify-content:space-between;align-items:flex-end;gap:10px}.price{font-weight:900}.tax{font-size:11px;color:var(--muted)}.swatches{display:flex;gap:8px;margin-top:18px}.sw{width:8px;height:8px;border-radius:50%;background:#222}.sw.silver{background:#b9bec4}.sw.orange{background:var(--orange)}.callout{margin-top:44px;background:#fff;border:1px solid var(--line);padding:42px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}.callout p{color:var(--muted);margin:12px 0 0;max-width:720px}.btn-dark{background:var(--black);color:#fff}.btn-dark:hover{background:#1c232b;transform:translateY(-1px)}.project-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}.project-large,.project-small{position:relative;background:#111;overflow:hidden;min-height:440px}.project-small{min-height:209px}.project-stack{display:grid;gap:22px}.project-grid img{width:100%;height:100%;object-fit:cover;opacity:.86}.project-label{position:absolute;left:22px;bottom:22px;right:22px;color:#fff}.project-label span{color:var(--orange);font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.12em}.project-label h3{font-size:24px;line-height:1.1;margin:6px 0 0}.process{background:#090d12;color:#fff;position:relative;overflow:hidden}.process .lead{color:rgba(255,255,255,.7)}.steps{margin-top:48px;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.14)}.step{background:#090d12;padding:34px;min-height:220px}.step span{color:var(--orange);font-weight:900;letter-spacing:.14em}.step h3{text-transform:uppercase;margin:26px 0 12px}.step p{color:rgba(255,255,255,.68);margin:0}footer{background:#050608;color:#fff;padding:64px 0 34px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:42px}.footer-brand p,.footer-col a,.footer-col p{color:rgba(255,255,255,.64);font-size:14px}.footer-col h4{text-transform:uppercase;font-size:13px;letter-spacing:.1em;margin:0 0 18px}.footer-col a{display:block;margin:10px 0}.footer-col a:hover{color:var(--orange)}.footer-bottom{margin-top:48px;padding-top:26px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;color:rgba(255,255,255,.45);font-size:13px}@media(max-width:980px){.menu,.icons{display:none}.intro-grid,.project-grid,.callout{grid-template-columns:1fr}.features{grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.feature{padding:28px;border-bottom:1px solid var(--line)}.solution-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.container{width:calc(100% - 28px)}.word{font-size:27px}.mark{width:42px;height:42px}.hero,.hero-inner{min-height:680px}h1{font-size:48px}section{padding:58px 0}.features,.solution-grid,.product-grid,.steps,.footer-grid{grid-template-columns:1fr}.promo{padding:34px 22px}.section-head{align-items:flex-start;flex-direction:column}.callout{padding:28px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:8px 0}}

/* Logo Mecano Lab V4 - header senza cartellone bianco */
.brand-word-logo{display:inline-flex;align-items:center;gap:11px;color:#fff;line-height:1;background:transparent!important;padding:0!important;box-shadow:none!important;min-width:0!important}
.brand-mark{width:42px;height:42px;display:grid;place-items:center;background:var(--orange);color:#050608;flex:0 0 auto;box-shadow:0 8px 22px rgba(0,0,0,.22)}
.brand-mark svg{width:36px;height:28px;overflow:visible}
.brand-lines{display:flex;flex-direction:column;align-items:flex-start;gap:4px;transform:translateY(1px)}
.brand-name{font-size:31px;font-weight:900;letter-spacing:-.065em;color:#fff;line-height:.78;text-transform:lowercase;white-space:nowrap}
.brand-name em{font-family:"Brush Script MT","Segoe Script",cursive;font-style:normal;font-weight:400;color:var(--orange);font-size:.64em;letter-spacing:-.07em;display:inline-block;transform:rotate(-10deg) translate(-2px,-1px);margin-left:0}
.brand-subline{font-size:9px;font-weight:500;letter-spacing:.035em;color:rgba(255,255,255,.72);line-height:1;text-transform:lowercase;margin-left:2px;white-space:nowrap}
.footer-logo{margin-bottom:18px;color:#fff}
.footer-logo .brand-mark{box-shadow:none}
.site-header .nav{align-items:center}
@media(max-width:620px){.brand-word-logo{gap:8px}.brand-mark{width:36px;height:36px}.brand-mark svg{width:31px;height:24px}.brand-name{font-size:25px}.brand-subline{font-size:7.5px}.nav{height:72px}.site-header{height:72px}}

/* Mecano Lab V5 - mockup hero e categorie prodotto */
.brand-image{display:block;width:250px;max-width:30vw;background:transparent!important;padding:0!important;box-shadow:none!important;line-height:0}
.brand-image img{width:100%;height:auto;display:block;filter:none}
.site-header{height:96px;background:linear-gradient(to bottom,rgba(3,7,11,.98),rgba(3,7,11,.72),rgba(3,7,11,0))}
.nav{height:96px}.menu a{padding:36px 0}.menu a.active:after{bottom:25px}
.hero{min-height:700px;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 26%,rgba(0,0,0,.38) 62%,rgba(0,0,0,.44) 100%),url("hero-banchi-lavoro.jpg") center/cover no-repeat,#101418}
.hero-inner{min-height:700px;padding-top:95px;align-items:center}.hero h1{font-size:clamp(48px,5.3vw,74px);line-height:1.02;letter-spacing:-.045em;max-width:430px}.hero p{font-size:22px;line-height:1.35;margin:28px 0 30px;max-width:370px}.hero-dots{display:flex;gap:18px;align-items:center;margin-top:62px;color:#fff;font-size:13px}.hero-dots span:first-child{color:var(--orange)}.hero-dots i{width:32px;height:1px;background:var(--orange);display:block}.intro-section{padding:62px 0}.intro-grid{grid-template-columns:.85fr 1.6fr;gap:60px}.intro-grid h2{font-size:34px}.btn-outline{border-color:#15191f;color:#15191f;background:transparent;margin-top:24px}.btn-outline:hover{background:#15191f;color:#fff}.solutions-section{padding-top:24px}.solution-grid-six{grid-template-columns:repeat(3,1fr);gap:22px}.solution-grid-six .solution-card{height:310px}.products .section-head{margin-bottom:20px}.category-block{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}.category-block:last-of-type{border-bottom:1px solid var(--line)}.category-block span{display:inline-block;color:var(--orange);font-weight:900;letter-spacing:.12em;font-size:12px;margin-bottom:8px}.category-block h3{margin:0 0 8px;text-transform:uppercase;font-size:24px;line-height:1.05;letter-spacing:-.02em}.category-block p{margin:0;color:var(--muted);max-width:760px}.category-block a{text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.06em;white-space:nowrap}.category-block a:hover{color:var(--orange)}.product-grid-featured{margin-top:42px;grid-template-columns:repeat(4,1fr)}.footer-logo-img{width:250px;max-width:100%;height:auto;margin-bottom:18px}.footer-brand{min-width:0}.footer-brand img{display:block}
@media(max-width:980px){.brand-image{width:220px;max-width:60vw}.solution-grid-six{grid-template-columns:repeat(2,1fr)}.product-grid-featured{grid-template-columns:repeat(2,1fr)}.category-block{grid-template-columns:1fr}.hero h1{max-width:520px}}
@media(max-width:620px){.brand-image{width:178px;max-width:72vw}.site-header,.nav{height:74px}.hero,.hero-inner{min-height:650px}.hero-inner{padding-top:80px}.hero h1{font-size:44px}.hero p{font-size:18px}.solution-grid-six,.product-grid-featured{grid-template-columns:1fr}.category-block h3{font-size:21px}.footer-logo-img{width:210px}}

/* Mecano Lab V6 - logo definitivo, dropdown prodotti, portfolio e WooCommerce ready */
.brand-final{width:330px;max-width:34vw}
.brand-final img{width:100%;height:auto;display:block}
.menu{position:relative;gap:26px}.menu-item{position:relative}.menu-item>a{display:inline-flex;align-items:center;gap:5px}.dropdown-caret{font-size:13px;color:var(--orange);line-height:1;transform:translateY(-1px)}.dropdown-menu{position:absolute;top:calc(100% - 8px);left:50%;transform:translateX(-50%) translateY(8px);width:310px;background:rgba(6,9,13,.96);border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 70px rgba(0,0,0,.32);padding:12px;opacity:0;visibility:hidden;pointer-events:none;transition:.18s;backdrop-filter:blur(10px)}.dropdown-menu:before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px}.menu-item:hover .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.dropdown-menu a{display:block;padding:12px 13px!important;color:rgba(255,255,255,.84)!important;text-transform:none;font-size:13px;letter-spacing:.01em;font-weight:700;border-bottom:1px solid rgba(255,255,255,.08);line-height:1.22}.dropdown-menu a:last-child{border-bottom:0}.dropdown-menu a:hover{background:rgba(233,75,10,.12);color:#fff!important}.menu .has-dropdown>a:after{display:none!important}
.products-categories{padding-top:70px}.category-deep{grid-template-columns:180px 1fr auto;padding:28px 0}.category-deep>img{width:180px;height:118px;object-fit:cover;border:1px solid var(--line);box-shadow:0 12px 34px rgba(0,0,0,.06)}.shop-standard{background:#fff;padding-top:72px}.portfolio-section{background:#fafafa}.portfolio-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.portfolio-filters a{border:1px solid var(--line);background:#fff;padding:12px 15px;text-transform:uppercase;font-size:12px;font-weight:900;letter-spacing:.055em}.portfolio-filters a:hover{border-color:var(--orange);color:var(--orange)}
.woocommerce-page-content{padding:140px 0 80px;background:#fff;min-height:70vh}.woocommerce-page-content .container{max-width:1180px}.woocommerce .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--orange)!important;color:#fff!important;border-radius:0!important;text-transform:uppercase;font-weight:900!important;font-size:12px!important;letter-spacing:.05em!important;padding:14px 18px!important}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{border:1px solid var(--line);padding:0 0 18px;background:#fff;box-shadow:0 10px 35px rgba(0,0,0,.05)}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 18px!important;color:var(--ink);font-weight:800}.woocommerce ul.products li.product .price{padding:0 18px;color:var(--ink)!important}.woocommerce div.product{padding-top:20px}.woocommerce div.product .product_title{text-transform:uppercase;letter-spacing:-.03em}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink)!important}
@media(max-width:1100px){.brand-final{width:285px}.menu{gap:18px}.menu a{font-size:11px}.dropdown-menu{left:auto;right:0;transform:translateY(8px)}.menu-item:hover .dropdown-menu{transform:translateY(0)}}
@media(max-width:980px){.brand-final{width:245px;max-width:62vw}.category-deep{grid-template-columns:150px 1fr}.category-deep>a{grid-column:2}.category-deep>img{width:150px;height:110px}.dropdown-menu{display:none}.menu-item{display:none}}
@media(max-width:620px){.brand-final{width:205px;max-width:76vw}.category-deep{grid-template-columns:1fr}.category-deep>img{width:100%;height:180px}.category-deep>a{grid-column:auto}.shop-standard{padding-top:56px}}


/* Mecano Lab V7 - correzioni richieste */
.brand-final{width:286px;max-width:28vw}
.site-header{height:86px}
.nav{height:86px}
.menu a{padding:31px 0}
.menu a.active:after{bottom:20px}

.hero{
  --hero-image:url("hero-1.jpg");
  min-height:720px;
  background:
    linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.82) 29%,rgba(0,0,0,.34) 64%,rgba(0,0,0,.42) 100%),
    var(--hero-image) center center/cover no-repeat,#101418;
  transition:background-image .25s ease;
}
.hero-inner{min-height:720px;padding-top:82px}
.hero h1{max-width:760px;font-size:clamp(54px,5.1vw,78px);line-height:.98;letter-spacing:-.055em}
.hero p{margin-top:26px}
.hero-dots{gap:14px}
.hero-dot{
  appearance:none;border:0;background:transparent;color:#fff;padding:4px 0;
  font:inherit;font-weight:800;cursor:pointer;opacity:.9;
}
.hero-dot.is-active{color:var(--orange)}
.hero-dot:hover{color:var(--orange)}
.hero-dots i{width:36px;height:1px;background:var(--orange);display:block}

.contact-section{background:#fff;padding:82px 0 92px}
.contact-head{align-items:flex-end}
.contact-head .lead{max-width:680px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:34px;margin-top:34px}
.contact-card{background:#080c11;color:#fff;padding:38px;border-left:4px solid var(--orange);min-height:360px}
.contact-card h3{font-size:34px;margin:0 0 24px;text-transform:uppercase;letter-spacing:-.04em}
.contact-card p{color:rgba(255,255,255,.72);font-size:16px;line-height:1.45;margin:0 0 22px}
.contact-card strong{color:#fff;text-transform:uppercase;font-size:12px;letter-spacing:.08em}
.contact-card a{color:#fff;text-decoration:none}
.contact-card a:hover{color:var(--orange)}
.map-wrap{min-height:360px;border:1px solid var(--line);overflow:hidden;background:#f2f2f2}
.map-wrap iframe{width:100%;height:100%;min-height:360px;border:0;display:block}

footer .footer-bottom{gap:20px}
footer .footer-bottom span:first-child{max-width:720px;line-height:1.5}

.page-header{position:sticky;background:#05080d}
.request-page{background:#fff;color:var(--ink)}
.request-hero{padding:170px 0 70px;background:#080c11;color:#fff}
.request-hero h1{max-width:980px;font-size:clamp(44px,5vw,76px);line-height:1;letter-spacing:-.055em;margin:18px 0 22px;text-transform:uppercase}
.request-hero p{max-width:720px;color:rgba(255,255,255,.72);font-size:21px;line-height:1.45}
.request-content{padding:80px 0}
.request-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:start}
.request-info h2{font-size:36px;line-height:1.05;text-transform:uppercase;margin:0 0 24px}
.check-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.check-list li{padding:16px 0 16px 34px;border-bottom:1px solid var(--line);position:relative;color:var(--muted);line-height:1.45}
.check-list li:before{content:"✓";position:absolute;left:0;top:15px;color:var(--orange);font-weight:900}
.request-contact-mini{margin-top:34px;padding:26px;background:#f6f6f6;border-left:4px solid var(--orange)}
.request-contact-mini a{font-weight:800}
.request-contact-mini a:hover{color:var(--orange)}
.request-form{background:#fafafa;border:1px solid var(--line);padding:34px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.request-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:900}
.request-form input,.request-form select,.request-form textarea{border:1px solid var(--line);background:#fff;padding:14px 13px;font:inherit;font-size:15px;text-transform:none;letter-spacing:0;font-weight:500;color:var(--ink);border-radius:0}
.request-form textarea,.request-form label:nth-last-of-type(1){grid-column:1/-1}
.request-form button{grid-column:1/-1;border:0;cursor:pointer;justify-self:start}
.form-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:13px;line-height:1.45}

@media(max-width:1100px){
  .brand-final{width:250px;max-width:34vw}
  .hero h1{max-width:680px}
}
@media(max-width:980px){
  .brand-final{width:228px;max-width:62vw}
  .contact-grid,.request-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .brand-final{width:198px;max-width:76vw}
  .site-header,.nav{height:76px}
  .hero,.hero-inner{min-height:680px}
  .hero h1{font-size:46px;max-width:100%}
  .contact-section{padding:58px 0}
  .contact-card{padding:28px}
  .request-hero{padding:130px 0 54px}
  .request-form{grid-template-columns:1fr;padding:24px}
}

/* Mecano Lab V8 - logo SVG, hero a 5 slide e form reale */
.brand-final{width:252px;max-width:27vw;align-items:center}
.brand-final img{width:100%;height:auto;max-height:62px;object-fit:contain;object-position:left center;display:block}
.footer-logo-img{width:260px;height:auto;max-height:76px;object-fit:contain;object-position:left center}
.site-header{height:82px;background:linear-gradient(to bottom,rgba(4,6,9,.96),rgba(4,6,9,.72),rgba(4,6,9,.05))}
.nav{height:82px}.menu a{padding:29px 0}.menu a.active:after{bottom:18px}
.hero{min-height:720px;background:linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.78) 31%,rgba(0,0,0,.25) 66%,rgba(0,0,0,.35) 100%),var(--hero-image) center center/cover no-repeat,#101418}.hero-inner{min-height:720px}
.hero h1{max-width:720px;font-size:clamp(50px,5vw,74px);line-height:.96;letter-spacing:-.05em}.hero h1 span{white-space:nowrap}.hero p{font-size:clamp(18px,1.7vw,22px)}
.hero-dots{display:flex;align-items:center;gap:13px;margin-top:52px}.hero-dots i{order:2}.hero-dot:nth-of-type(1){order:1}.hero-dot:nth-of-type(2){order:3}.hero-dot:nth-of-type(3){order:4}.hero-dot:nth-of-type(4){order:5}.hero-dot:nth-of-type(5){order:6}.hero-dot{font-size:12px;letter-spacing:.08em}
.page-header{background:#05080d}.request-page .page-header{position:sticky}.form-success{display:block}.form-success h3{font-size:28px;text-transform:uppercase;margin:0 0 12px}.form-success p{font-size:18px;color:var(--muted);margin:0}.request-form input[type=file]{padding:12px;background:#fff}.privacy-check{grid-column:1/-1;display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px!important;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;font-weight:600!important;color:var(--muted)}.privacy-check input{width:auto;margin-top:3px}
.request-form label:nth-last-of-type(2){grid-column:1/-1}.request-form label:nth-last-of-type(1){grid-column:1/-1}
@media(max-width:1100px){.brand-final{width:225px;max-width:34vw}.brand-final img{max-height:58px}.hero h1{font-size:clamp(48px,5.5vw,68px)}}
@media(max-width:980px){.brand-final{width:215px;max-width:62vw}.hero{background-position:center center}.hero h1{max-width:560px}}
@media(max-width:620px){.brand-final{width:190px;max-width:76vw}.site-header,.nav{height:74px}.brand-final img{max-height:54px}.hero,.hero-inner{min-height:680px}.hero h1{font-size:44px}.hero h1 span{white-space:normal}.hero-dots{margin-top:38px}.request-form label:nth-last-of-type(2){grid-column:auto}}

/* Mecano Lab V9 - correzioni logo, hero e form */
.brand-final{width:334px!important;max-width:34vw!important}
.brand-final img{max-height:76px!important;width:100%!important;object-fit:contain!important;object-position:left center!important}
.site-header{height:92px!important;background:linear-gradient(to bottom,rgba(4,6,9,.98),rgba(4,6,9,.80),rgba(4,6,9,.10))!important}
.nav{height:92px!important}
.menu a{padding:34px 0!important}
.menu a.active:after{bottom:22px!important}
.hero{background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.72) 30%,rgba(0,0,0,.20) 68%,rgba(0,0,0,.35) 100%),var(--hero-image) center top/cover no-repeat,#101418!important}
.hero-inner{padding-top:96px!important}
.optional{font-weight:600;color:var(--muted);text-transform:none;letter-spacing:0;font-size:11px;margin-left:4px}
.form-error{display:block;background:#fff4f0;border-color:#ffd1c1}.form-error h3{font-size:28px;text-transform:uppercase;margin:0 0 12px;color:#9c2500}.form-error p{font-size:17px;color:#333;margin:0}.form-error a{font-weight:900;color:var(--orange)}
@media(max-width:1100px){.brand-final{width:300px!important;max-width:38vw!important}.brand-final img{max-height:70px!important}}
@media(max-width:980px){.brand-final{width:260px!important;max-width:62vw!important}.site-header,.nav{height:84px!important}.hero-inner{padding-top:88px!important}}
@media(max-width:620px){.brand-final{width:220px!important;max-width:76vw!important}.brand-final img{max-height:60px!important}.site-header,.nav{height:76px!important}.hero-inner{padding-top:78px!important}.hero{background-position:center top!important}}

/* Mecano Lab V10 - correzioni logo/header/footer e form */
.site-header{height:108px!important;background:linear-gradient(to bottom,rgba(4,6,9,.98),rgba(4,6,9,.82),rgba(4,6,9,.08))!important}
.nav{height:108px!important;align-items:flex-start!important;padding-top:18px!important}
.brand-final{width:430px!important;max-width:42vw!important;flex:0 0 auto!important}
.brand-final img{width:100%!important;max-height:92px!important;height:auto!important;object-fit:contain!important;object-position:left center!important}
.menu{padding-top:10px!important}
.menu a{padding:32px 0!important}.menu a.active:after{bottom:20px!important}
.icons{padding-top:10px!important}
.hero-inner{padding-top:116px!important}
.footer-logo-img{width:390px!important;max-width:100%!important;max-height:110px!important;height:auto!important;object-fit:contain!important;object-position:left center!important;margin-bottom:22px!important}
.footer-brand p{max-width:360px}
.request-form{align-items:start!important}
.request-form label{min-width:0!important;align-self:start!important;line-height:1.2!important}
.request-form input,.request-form select,.request-form textarea{width:100%!important;margin-top:0!important}
.request-form .full-field{grid-column:1/-1!important}
.optional{font-weight:700!important;color:#8a929c!important;text-transform:none!important;letter-spacing:0!important;font-size:11px!important;margin-left:4px!important;white-space:nowrap!important}
.request-page + .contact-section{display:none}
.page-footer-spacer{margin-top:0}
@media(max-width:1280px){.brand-final{width:360px!important;max-width:36vw!important}.menu{gap:22px!important}.hero-inner{padding-top:106px!important}}
@media(max-width:1100px){.brand-final{width:320px!important;max-width:38vw!important}.site-header,.nav{height:98px!important}.nav{padding-top:15px!important}.hero-inner{padding-top:100px!important}.footer-logo-img{width:320px!important}}
@media(max-width:980px){.brand-final{width:295px!important;max-width:64vw!important}.site-header,.nav{height:90px!important}.nav{align-items:center!important;padding-top:0!important}.menu,.icons{display:none!important}.hero-inner{padding-top:92px!important}}
@media(max-width:620px){.brand-final{width:250px!important;max-width:78vw!important}.brand-final img{max-height:70px!important}.site-header,.nav{height:82px!important}.hero-inner{padding-top:84px!important}.footer-logo-img{width:250px!important}.request-form .full-field{grid-column:auto!important}}

/* Mecano Lab V11 - loghi crop/allineati e form riallineato */
.site-header .container.nav,
footer .container{
  width:min(1180px,calc(100% - 40px))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.brand-final{
  width:390px!important;
  max-width:39vw!important;
  margin-left:0!important;
  transform:none!important;
}
.brand-final img{
  width:100%!important;
  height:auto!important;
  max-height:98px!important;
  object-fit:contain!important;
  object-position:left center!important;
}
.footer-logo-img{
  width:430px!important;
  max-width:100%!important;
  max-height:118px!important;
  height:auto!important;
  object-fit:contain!important;
  object-position:left center!important;
  margin-left:0!important;
  margin-bottom:22px!important;
}
.request-form{
  gap:20px 22px!important;
  align-items:start!important;
}
.request-form label{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  min-width:0!important;
  align-self:start!important;
}
.request-form .label-title{
  display:flex!important;
  align-items:baseline!important;
  gap:4px!important;
  min-height:15px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.request-form input,
.request-form select,
.request-form textarea{
  width:100%!important;
  margin:0!important;
}
.request-form .optional{
  display:inline!important;
  margin-left:4px!important;
  position:static!important;
  font-size:11px!important;
  line-height:1!important;
}
.request-form .full-field{
  grid-column:1/-1!important;
}
.privacy-check{
  display:grid!important;
  grid-template-columns:18px 1fr!important;
  align-items:start!important;
  column-gap:10px!important;
  row-gap:0!important;
  padding-top:2px!important;
  text-transform:none!important;
  letter-spacing:0!important;
  font-size:14px!important;
  font-weight:600!important;
  color:var(--muted)!important;
}
.privacy-check input[type="checkbox"]{
  width:16px!important;
  height:16px!important;
  margin:2px 0 0 0!important;
  padding:0!important;
  justify-self:start!important;
}
.privacy-check span{
  display:block!important;
  line-height:1.35!important;
}
@media(max-width:1280px){
  .brand-final{width:360px!important;max-width:35vw!important}
  .footer-logo-img{width:390px!important}
}
@media(max-width:1100px){
  .brand-final{width:320px!important;max-width:38vw!important}
  .footer-logo-img{width:340px!important}
}
@media(max-width:980px){
  .brand-final{width:300px!important;max-width:64vw!important}
  .request-form{grid-template-columns:1fr!important}
}
@media(max-width:620px){
  .brand-final{width:260px!important;max-width:78vw!important}
  .footer-logo-img{width:270px!important}
  .request-form .label-title{white-space:normal!important}
}

/* Mecano Lab V12 - checkbox/privacy, dimensioni opzionale e header pulito */
.site-header{
  background:rgba(4,7,11,.96)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
}
.page-header{
  background:rgba(4,7,11,.96)!important;
}
.request-form label.privacy-check{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  grid-column:1/-1!important;
  padding-top:2px!important;
  margin:0!important;
  text-transform:none!important;
  letter-spacing:0!important;
  font-size:14px!important;
  font-weight:600!important;
  color:var(--muted)!important;
  line-height:1.35!important;
}
.request-form label.privacy-check input[type="checkbox"]{
  flex:0 0 16px!important;
  width:16px!important;
  height:16px!important;
  margin:0!important;
  padding:0!important;
}
.request-form label.privacy-check span{
  display:inline!important;
  margin:0!important;
  line-height:1.35!important;
}
.request-form .label-title .optional{
  display:inline-block!important;
  vertical-align:baseline!important;
  margin-left:5px!important;
}

/* Mecano Lab V13 - header sfumato, logo più equilibrato e immagini modificabili da Customizer */
.site-header{
  height:96px!important;
  background:linear-gradient(to bottom,rgba(4,7,11,.98) 0%,rgba(4,7,11,.88) 54%,rgba(4,7,11,.48) 78%,rgba(4,7,11,0) 100%)!important;
  box-shadow:none!important;
}
.page-header{
  background:linear-gradient(to bottom,rgba(4,7,11,.98) 0%,rgba(4,7,11,.88) 54%,rgba(4,7,11,.48) 78%,rgba(4,7,11,0) 100%)!important;
  box-shadow:none!important;
}
.nav{height:96px!important;align-items:flex-start!important;padding-top:13px!important}
.brand-final{width:340px!important;max-width:35vw!important;flex:0 0 auto!important}
.brand-final img{width:100%!important;max-height:80px!important;height:auto!important;object-fit:contain!important;object-position:left center!important}
.menu{padding-top:12px!important}.icons{padding-top:11px!important}.menu a{padding:31px 0!important}.menu a.active:after{bottom:20px!important}
.hero{background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.72) 30%,rgba(0,0,0,.20) 68%,rgba(0,0,0,.35) 100%),var(--hero-image) center top/cover no-repeat,#101418!important}
.hero-inner{padding-top:104px!important}
.promo{background:linear-gradient(90deg,rgba(8,11,14,.96),rgba(8,11,14,.72),rgba(8,11,14,.35)),var(--promo-image) center/cover no-repeat,#111!important}
@media(max-width:1280px){.brand-final{width:315px!important;max-width:33vw!important}.menu{gap:20px!important}.footer-logo-img{width:390px!important}}
@media(max-width:1100px){.brand-final{width:285px!important;max-width:35vw!important}.site-header,.nav{height:90px!important}.nav{padding-top:12px!important}.hero-inner{padding-top:94px!important}.footer-logo-img{width:340px!important}}
@media(max-width:980px){.brand-final{width:275px!important;max-width:64vw!important}.site-header,.nav{height:84px!important}.nav{align-items:center!important;padding-top:0!important}.menu,.icons{display:none!important}.hero-inner{padding-top:88px!important}}
@media(max-width:620px){.brand-final{width:245px!important;max-width:78vw!important}.brand-final img{max-height:66px!important}.site-header,.nav{height:78px!important}.hero-inner{padding-top:82px!important}.footer-logo-img{width:270px!important}}


/* Mecano Lab V14 - footer legale, subpage header, hero su misura, icone */
.home .site-header{
  background:linear-gradient(to bottom,rgba(4,6,9,.96) 0%,rgba(4,6,9,.78) 52%,rgba(4,6,9,.28) 78%,rgba(4,6,9,0) 100%)!important;
  box-shadow:none!important;
}
.page-header{
  background:linear-gradient(to bottom,rgba(4,7,11,.98) 0%,rgba(4,7,11,.96) 70%,rgba(4,7,11,.93) 100%)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24)!important;
}
.request-page .page-header,
.legal-page + #footer,
body.page:not(.home) .site-header{
  backdrop-filter:none!important;
}
.request-hero{
  padding:132px 0 34px!important;
  background:#080c11!important;
}
.request-hero .container{max-width:1180px}
.request-hero h1{
  max-width:900px!important;
  font-size:clamp(36px,4.3vw,62px)!important;
  line-height:.98!important;
  margin:14px 0 14px!important;
}
.request-hero p{
  max-width:760px!important;
  font-size:18px!important;
  line-height:1.45!important;
  margin:0!important;
}
.features{align-items:start!important}
.feature{padding:0 28px;min-height:210px}
.feature svg{width:56px!important;height:56px!important;stroke-width:1.6!important;stroke-linecap:round;stroke-linejoin:round;color:#444c56}
.feature strong{margin:18px 0 10px!important;font-size:15px!important;letter-spacing:.02em}
.feature p{font-size:15px!important;line-height:1.5!important}
.footer-grid{grid-template-columns:1.25fr 1fr 1fr 1fr 1fr!important;gap:34px!important}
.footer-col-legal a{white-space:nowrap}
.page-header .container.nav,
.request-page .container.nav,
.legal-page .container.nav,
.site-header .container.nav{align-items:flex-start}
.legal-page .page-header,
.request-page .page-header{height:92px!important}
.legal-page .nav,
.request-page .nav{height:92px!important;padding-top:14px!important}
.legal-page{background:#fff}
.legal-hero{padding:138px 0 34px;background:#080c11;color:#fff}
.legal-hero h1{max-width:900px;font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:-.05em;text-transform:uppercase;margin:10px 0 0}
.legal-content{padding:48px 0 82px}
.legal-content-inner{max-width:900px}
.legal-content-inner h2{font-size:28px;margin:34px 0 14px;line-height:1.08}
.legal-content-inner p,.legal-content-inner li{font-size:17px;color:#2a3138;line-height:1.7}
@media(max-width:1180px){
  .footer-grid{grid-template-columns:1.2fr 1fr 1fr 1fr!important}
  .footer-brand{grid-column:1/-1}
}
@media(max-width:980px){
  .home .site-header,.page-header{background:rgba(4,7,11,.96)!important}
  .footer-grid{grid-template-columns:1fr 1fr!important}
  .request-hero{padding:118px 0 28px!important}
}
@media(max-width:620px){
  .footer-grid{grid-template-columns:1fr!important}
  .request-hero h1{font-size:38px!important}
  .legal-hero{padding:118px 0 26px}
}


/* Mecano Lab V15 - icone mockup, social header, testi personalizzabili */
.home .site-header{
  background:linear-gradient(to bottom,rgba(4,6,9,.96) 0%,rgba(4,6,9,.82) 48%,rgba(4,6,9,.32) 76%,rgba(4,6,9,0) 100%)!important;
  box-shadow:none!important;
}
body.page:not(.home) .site-header,
.page-header{
  background:#05080d!important;
  box-shadow:0 10px 22px rgba(0,0,0,.22)!important;
}
.header-extras{display:flex;align-items:center;gap:18px;margin-left:auto}
.header-social{display:flex;align-items:center;gap:10px;padding-left:16px;margin-left:2px;border-left:1px solid rgba(255,255,255,.16)}
.header-social a{font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:rgba(255,255,255,.78)}
.header-social a:hover{color:var(--orange)}
.icons{display:flex;gap:10px;padding-top:0!important}
.ico{width:38px;height:38px;border:1px solid rgba(255,255,255,.22);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.04);color:#fff}
.ico:hover{border-color:rgba(233,75,10,.7);color:var(--orange);background:rgba(233,75,10,.08)}
.ico svg{width:18px;height:18px}
.feature{padding:0 26px!important;min-height:216px!important}
.feature svg{width:52px!important;height:52px!important;stroke-width:2!important;stroke-linecap:round;stroke-linejoin:round;color:#49525d}
.feature strong{margin:18px 0 10px!important;font-size:15px!important}
.feature.feature-italy svg{color:#444d58}
.feature.feature-italy svg rect{stroke:none}
@media(max-width:1280px){.header-social a{font-size:10px}.header-extras{gap:14px}}
@media(max-width:1100px){.header-social{display:none}}
@media(max-width:980px){.header-extras{display:none}}


/* Mecano Lab V16 - allineamento header, social solo icone, icone vantaggi centrate, mappa mobile */
.site-header .nav{
  display:grid!important;
  grid-template-columns:auto minmax(420px,1fr) auto!important;
  align-items:center!important;
  gap:28px!important;
  height:96px!important;
}
.brand-final{
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
}
.brand-final img{display:block!important}
.menu{
  justify-self:center!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  gap:26px!important;
  white-space:nowrap!important;
}
.menu a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.header-extras{
  justify-self:end!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin-left:0!important;
}
.shop-icons{display:flex!important;align-items:center!important;gap:8px!important}
.header-social{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  margin-left:2px!important;
  padding-left:16px!important;
  border-left:1px solid rgba(255,255,255,.62)!important;
}
.header-social a,
.footer-social a{
  width:34px!important;
  height:34px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  color:#fff!important;
  background:rgba(255,255,255,.035)!important;
  font-size:0!important;
}
.header-social a:hover,
.footer-social a:hover{color:var(--orange)!important;border-color:rgba(233,75,10,.75)!important;background:rgba(233,75,10,.09)!important}
.header-social svg,
.footer-social svg{width:17px!important;height:17px!important;fill:currentColor;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.header-social a[aria-label="Instagram"] svg,
.footer-social a[aria-label="Instagram"] svg{fill:none}
.icons .ico{width:36px!important;height:36px!important}
.icons .ico svg{width:18px!important;height:18px!important}
.feature{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  text-align:center!important;
}
.feature svg{margin:0 auto 0!important}
.feature strong,
.feature p{text-align:center!important}
.feature p{max-width:180px!important;margin-left:auto!important;margin-right:auto!important}
.footer-social{display:flex!important;gap:9px!important;margin-top:22px!important;align-items:center!important}
.footer-social a{border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.025)!important}
@media(max-width:1360px){
  .site-header .nav{gap:20px!important;grid-template-columns:auto minmax(360px,1fr) auto!important}
  .menu{gap:20px!important}
  .header-social a{width:32px!important;height:32px!important}
  .icons .ico{width:34px!important;height:34px!important}
}
@media(max-width:1220px){
  .header-social{display:none!important}
  .site-header .nav{grid-template-columns:auto 1fr auto!important}
  .menu{gap:16px!important}
}
@media(max-width:1040px){
  .header-extras{display:none!important}
  .site-header .nav{grid-template-columns:auto 1fr!important}
}


/* Mecano Lab V18 - fix menu prodotti verticale + social coerenti */
.menu .dropdown-menu{
  width:340px!important;
  min-width:340px!important;
  white-space:normal!important;
  display:block!important;
}
.menu .dropdown-menu a{
  display:block!important;
  width:100%!important;
  white-space:normal!important;
  text-align:left!important;
  justify-content:flex-start!important;
  line-height:1.25!important;
  padding:12px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}
.menu .dropdown-menu a:last-child{border-bottom:0!important}
.header-social a[aria-label="Facebook"] svg,
.footer-social a[aria-label="Facebook"] svg{width:16px!important;height:18px!important;fill:currentColor!important;stroke:none!important}
.header-social a[aria-label="YouTube"] svg,
.footer-social a[aria-label="YouTube"] svg{width:18px!important;height:18px!important;fill:currentColor!important;stroke:none!important}
.header-social a[aria-label="YouTube"] svg path,
.footer-social a[aria-label="YouTube"] svg path{fill:currentColor!important;stroke:none!important}
.header-social a[aria-label="Instagram"] svg,
.footer-social a[aria-label="Instagram"] svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}


/* Mecano Lab V19 - icona su misura + pallini hero */
.hero-dots{display:flex!important;align-items:center!important;gap:12px!important;margin-top:52px!important}
.hero-dots i{display:none!important}
.hero-dot{width:11px!important;height:11px!important;min-width:11px!important;min-height:11px!important;padding:0!important;border-radius:50%!important;border:1.5px solid rgba(255,255,255,.75)!important;background:transparent!important;font-size:0!important;line-height:0!important;box-shadow:none!important;opacity:1!important;cursor:pointer!important;transition:all .18s ease}
.hero-dot:hover{border-color:#fff!important;background:rgba(255,255,255,.2)!important}
.hero-dot.is-active{background:var(--orange)!important;border-color:var(--orange)!important;transform:scale(1.08)!important}
.feature-custom .feature-icon-image{width:56px!important;height:56px!important;object-fit:contain!important;display:block!important;margin:0 auto 0!important;filter:grayscale(1) contrast(1.1)}
@media(max-width:620px){.hero-dots{margin-top:38px!important;gap:10px!important}.hero-dot{width:10px!important;height:10px!important;min-width:10px!important;min-height:10px!important}}


/* Mecano Lab V20 - pagine categoria/portfolio editabili */
.category-content{padding-top:150px}
.category-content-inner{max-width:1180px}
.category-page-hero{
  display:grid;
  grid-template-columns:1fr 420px;
  gap:54px;
  align-items:center;
  margin-bottom:56px;
}
.category-page-hero h1{font-size:clamp(38px,5vw,70px);line-height:.95;text-transform:uppercase;margin:12px 0 24px}
.category-page-hero p{font-size:18px;line-height:1.7;color:#5b6470;margin-bottom:28px}
.category-page-hero img{width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:0 18px 45px rgba(0,0,0,.12)}
.wp-editable-content{font-size:17px;line-height:1.8;color:#26303b}
@media(max-width:900px){
  .category-page-hero{grid-template-columns:1fr;gap:28px}
  .category-content{padding-top:120px}
}


/* Mecano Lab V21 - header mobile hamburger + mappa utilizzabile */
.mobile-menu-toggle{display:none}


@media(max-width:980px){
  .site-header{
    height:auto!important;
    min-height:82px!important;
  }

  .site-header .nav{
    height:82px!important;
    max-width:100%!important;
    padding:0 18px!important;
    display:grid!important;
    grid-template-columns:auto 1fr auto!important;
    gap:12px!important;
    align-items:center!important;
  }

  .brand-final{
    justify-self:start!important;
    max-width:235px!important;
    overflow:hidden!important;
    z-index:1002!important;
  }

  .brand-final img{
    width:220px!important;
    max-width:220px!important;
    height:auto!important;
    display:block!important;
  }

  .mobile-menu-toggle{
    display:flex!important;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
    width:44px;
    height:44px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:50%;
    background:rgba(255,255,255,.05);
    color:#fff;
    justify-self:end;
    grid-column:3;
    z-index:1003;
  }

  .mobile-menu-toggle span{
    width:18px;
    height:2px;
    background:#fff;
    border-radius:2px;
    display:block;
    transition:transform .2s ease, opacity .2s ease;
  }

  .site-header.mobile-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .site-header.mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}
  .site-header.mobile-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  .site-header .menu{
    position:absolute!important;
    left:18px!important;
    right:18px!important;
    top:82px!important;
    display:none!important;
    grid-column:auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding:12px!important;
    background:rgba(4,7,11,.96)!important;
    border:1px solid rgba(255,255,255,.12)!important;
    box-shadow:0 18px 44px rgba(0,0,0,.38)!important;
    z-index:1001!important;
    white-space:normal!important;
  }

  .site-header.mobile-menu-open .menu{
    display:flex!important;
  }

  .site-header .menu a{
    display:flex!important;
    width:100%!important;
    padding:14px 12px!important;
    line-height:1.1!important;
    justify-content:flex-start!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    white-space:normal!important;
  }

  .site-header .menu a:last-child{border-bottom:0!important}

  .site-header .dropdown{
    width:100%!important;
  }

  .site-header .dropdown-menu{
    position:static!important;
    opacity:1!important;
    pointer-events:auto!important;
    transform:none!important;
    visibility:visible!important;
    display:none!important;
    min-width:0!important;
    width:100%!important;
    margin:0!important;
    padding:6px 0 6px 12px!important;
    border:0!important;
    background:rgba(255,255,255,.05)!important;
    box-shadow:none!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    display:block!important;
  }

  .site-header .dropdown-menu a{
    font-size:11px!important;
    padding:10px 12px!important;
    color:rgba(255,255,255,.84)!important;
  }

  .header-extras{
    display:flex!important;
    grid-column:2!important;
    justify-self:end!important;
    gap:8px!important;
    margin-right:4px!important;
    z-index:1002!important;
  }

  .shop-icons{display:flex!important;gap:7px!important}

  .icons .ico{
    width:36px!important;
    height:36px!important;
  }

  .header-social{display:none!important}

  .hero{
    padding-top:82px!important;
  }

}

@media(max-width:520px){
  .site-header .nav{
    padding:0 14px!important;
    grid-template-columns:auto 1fr auto!important;
  }

  .brand-final{
    max-width:190px!important;
  }

  .brand-final img{
    width:190px!important;
    max-width:190px!important;
  }

  .icons .ico{
    width:34px!important;
    height:34px!important;
  }

  .mobile-menu-toggle{
    width:40px;
    height:40px;
  }

  .header-extras{
    gap:6px!important;
  }
}

@media(max-width:390px){
  .brand-final{
    max-width:165px!important;
  }

  .brand-final img{
    width:165px!important;
    max-width:165px!important;
  }

  .shop-icons .ico{
    width:32px!important;
    height:32px!important;
  }

  .mobile-menu-toggle{
    width:38px;
    height:38px;
  }
}


/* Mecano Lab V22 - mobile header completo + vantaggi 2x2 */
@media(max-width:980px){
  .site-header{
    min-height:96px!important;
    height:auto!important;
  }

  .site-header .nav{
    height:96px!important;
    padding:0 18px!important;
    grid-template-columns:auto 1fr auto!important;
    gap:10px!important;
  }

  .brand-final{
    max-width:255px!important;
    width:255px!important;
  }

  .brand-final img{
    width:255px!important;
    max-width:255px!important;
  }

  .header-extras{
    display:flex!important;
    grid-column:2!important;
    justify-self:end!important;
    align-items:center!important;
    gap:7px!important;
    margin-right:2px!important;
  }

  .shop-icons{
    display:flex!important;
    gap:7px!important;
  }

  .icons .ico{
    width:36px!important;
    height:36px!important;
  }

  .header-social{
    display:flex!important;
    padding-left:9px!important;
    margin-left:2px!important;
    gap:6px!important;
    border-left:1px solid rgba(255,255,255,.5)!important;
  }

  .header-social a{
    width:32px!important;
    height:32px!important;
  }

  .header-social svg{
    width:15px!important;
    height:15px!important;
  }

  .mobile-menu-toggle{
    display:flex!important;
    grid-column:3!important;
    justify-self:end!important;
    width:42px!important;
    height:42px!important;
    z-index:1003!important;
  }

  .site-header .menu{
    top:96px!important;
  }

  .hero{
    padding-top:96px!important;
  }

  .intro-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:34px!important;
    padding-top:54px!important;
    padding-bottom:54px!important;
  }

  .intro-text{
    max-width:100%!important;
  }

  .intro-text h2{
    font-size:34px!important;
    line-height:1.05!important;
    max-width:360px!important;
  }

  .intro-text .lead{
    max-width:100%!important;
  }

  .features{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:0!important;
    width:100%!important;
  }

  .feature{
    min-height:210px!important;
    padding:28px 18px!important;
    border-left:0!important;
    border-top:1px solid #e5e8ec!important;
    border-right:1px solid #e5e8ec!important;
    justify-content:flex-start!important;
  }

  .feature:nth-child(odd){
    border-left:1px solid #e5e8ec!important;
  }

  .feature svg,
  .feature .feature-icon-image{
    margin-bottom:14px!important;
  }

  .feature strong{
    margin:10px 0 10px!important;
  }

  .feature p{
    font-size:15px!important;
    line-height:1.45!important;
    max-width:170px!important;
  }
}

@media(max-width:720px){
  .site-header .nav{
    padding:0 14px!important;
    gap:7px!important;
  }

  .brand-final{
    width:238px!important;
    max-width:238px!important;
  }

  .brand-final img{
    width:238px!important;
    max-width:238px!important;
  }

  .header-social a{
    width:30px!important;
    height:30px!important;
  }

  .icons .ico{
    width:34px!important;
    height:34px!important;
  }

  .mobile-menu-toggle{
    width:40px!important;
    height:40px!important;
  }
}

@media(max-width:600px){
  .site-header .nav{
    grid-template-columns:auto auto auto!important;
    justify-content:space-between!important;
  }

  .brand-final{
    width:230px!important;
    max-width:230px!important;
  }

  .brand-final img{
    width:230px!important;
    max-width:230px!important;
  }

  .header-extras{
    grid-column:2!important;
  }

  .header-social{
    display:none!important;
  }

  .mobile-menu-toggle{
    display:flex!important;
    grid-column:3!important;
  }
}

@media(max-width:430px){
  .site-header{
    min-height:92px!important;
  }

  .site-header .nav{
    height:92px!important;
    padding:0 12px!important;
    gap:6px!important;
  }

  .brand-final{
    width:215px!important;
    max-width:215px!important;
  }

  .brand-final img{
    width:215px!important;
    max-width:215px!important;
  }

  .icons .ico{
    width:32px!important;
    height:32px!important;
  }

  .mobile-menu-toggle{
    width:38px!important;
    height:38px!important;
  }

  .site-header .menu{
    top:92px!important;
    left:12px!important;
    right:12px!important;
  }

  .hero{
    padding-top:92px!important;
  }

  .hero-copy h1{
    font-size:48px!important;
    line-height:.97!important;
  }

  .features{
    grid-template-columns:1fr 1fr!important;
  }

  .feature{
    padding:24px 12px!important;
    min-height:205px!important;
  }

  .feature svg{
    width:44px!important;
    height:44px!important;
  }

  .feature-custom .feature-icon-image{
    width:46px!important;
    height:46px!important;
  }

  .feature strong{
    font-size:13px!important;
  }

  .feature p{
    font-size:14px!important;
    max-width:145px!important;
  }
}

@media(max-width:370px){
  .brand-final{
    width:195px!important;
    max-width:195px!important;
  }

  .brand-final img{
    width:195px!important;
    max-width:195px!important;
  }

  .shop-icons .ico{
    width:30px!important;
    height:30px!important;
  }

  .mobile-menu-toggle{
    width:36px!important;
    height:36px!important;
  }
}


/* Mecano Lab V23 - hamburger sempre visibile + spazi mobile più compatti */
@media(max-width:980px){
  body{overflow-x:hidden!important}

  .site-header{
    min-height:88px!important;
  }

  .site-header .nav{
    height:88px!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    max-width:100%!important;
    width:100%!important;
    box-sizing:border-box!important;
  }

  .brand-final{
    flex:0 0 auto!important;
    width:255px!important;
    max-width:255px!important;
    min-width:0!important;
    margin-right:auto!important;
  }

  .brand-final img{
    width:255px!important;
    max-width:255px!important;
  }

  .header-extras{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:8px!important;
    margin-left:8px!important;
    margin-right:52px!important; /* spazio fisso per hamburger */
  }

  .shop-icons{
    display:flex!important;
    gap:8px!important;
  }

  .icons .ico{
    width:36px!important;
    height:36px!important;
  }

  .header-social{
    display:flex!important;
    padding-left:10px!important;
    margin-left:4px!important;
    gap:6px!important;
    border-left:1px solid rgba(255,255,255,.5)!important;
  }

  .header-social a{
    width:31px!important;
    height:31px!important;
  }

  .mobile-menu-toggle{
    display:flex!important;
    position:absolute!important;
    right:12px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    width:42px!important;
    height:42px!important;
    z-index:99999!important;
    flex:0 0 auto!important;
    align-items:center!important;
    justify-content:center!important;
    flex-direction:column!important;
    gap:5px!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .mobile-menu-toggle{
    transform:translateY(-50%)!important;
  }

  .site-header.mobile-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)!important}
  .site-header.mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0!important}
  .site-header.mobile-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)!important}

  .site-header .menu{
    top:88px!important;
    left:12px!important;
    right:12px!important;
    max-height:calc(100vh - 110px)!important;
    overflow:auto!important;
  }

  .hero{
    padding-top:88px!important;
  }

  .intro-grid{
    padding-top:34px!important;
    padding-bottom:34px!important;
    gap:24px!important;
  }

  .intro,
  section.intro{
    padding-top:34px!important;
    padding-bottom:34px!important;
  }

  .products,
  .featured,
  .contact-section,
  .lightbox-strip{
    padding-top:38px!important;
    padding-bottom:38px!important;
  }

  .intro-text h2{
    margin-top:0!important;
    margin-bottom:22px!important;
  }

  .intro-text .lead{
    margin-bottom:18px!important;
  }

  .features{
    margin-top:8px!important;
  }
}

@media(max-width:720px){
  .site-header .nav{
    height:86px!important;
    padding:0 10px!important;
  }

  .site-header{
    min-height:86px!important;
  }

  .brand-final{
    width:238px!important;
    max-width:238px!important;
  }

  .brand-final img{
    width:238px!important;
    max-width:238px!important;
  }

  .header-extras{
    margin-left:10px!important;
    margin-right:50px!important;
  }

  .mobile-menu-toggle{
    width:40px!important;
    height:40px!important;
    right:10px!important;
  }

  .site-header .menu{
    top:86px!important;
    left:10px!important;
    right:10px!important;
  }

  .hero{
    padding-top:86px!important;
  }
}

@media(max-width:600px){
  .site-header .nav{
    height:86px!important;
    padding:0 10px!important;
  }

  .brand-final{
    width:230px!important;
    max-width:230px!important;
  }

  .brand-final img{
    width:230px!important;
    max-width:230px!important;
  }

  .header-extras{
    display:flex!important;
    margin-left:auto!important;
    margin-right:50px!important;
  }

  .header-social{
    display:none!important;
  }

  .shop-icons .ico{
    width:35px!important;
    height:35px!important;
  }

  .mobile-menu-toggle{
    display:flex!important;
    right:10px!important;
  }
}

@media(max-width:430px){
  .site-header{
    min-height:84px!important;
  }

  .site-header .nav{
    height:84px!important;
    padding:0 8px!important;
    gap:4px!important;
  }

  .brand-final{
    width:214px!important;
    max-width:214px!important;
  }

  .brand-final img{
    width:214px!important;
    max-width:214px!important;
  }

  .header-extras{
    margin-left:auto!important;
    margin-right:46px!important;
    gap:5px!important;
  }

  .shop-icons{
    gap:6px!important;
  }

  .shop-icons .ico{
    width:34px!important;
    height:34px!important;
  }

  .mobile-menu-toggle{
    width:38px!important;
    height:38px!important;
    right:8px!important;
  }

  .site-header .menu{
    top:84px!important;
    left:8px!important;
    right:8px!important;
  }

  .hero{
    padding-top:84px!important;
  }

  .hero-copy{
    padding-top:30px!important;
  }

  .hero-copy h1{
    font-size:46px!important;
  }

  .hero-dots{
    margin-top:28px!important;
  }

  .intro-grid{
    padding-top:24px!important;
    padding-bottom:28px!important;
  }

  .products,
  .featured,
  .contact-section,
  .lightbox-strip{
    padding-top:30px!important;
    padding-bottom:30px!important;
  }
}

@media(max-width:390px){
  .brand-final{
    width:200px!important;
    max-width:200px!important;
  }

  .brand-final img{
    width:200px!important;
    max-width:200px!important;
  }

  .shop-icons .ico{
    width:32px!important;
    height:32px!important;
  }

  .mobile-menu-toggle{
    width:36px!important;
    height:36px!important;
  }
}


/* Mecano Lab V24 - dropdown prodotti mobile + logo appena più grande + footer copyright */
.dropdown-toggle{display:none}

.footer-copyright .copy-main,
.footer-copyright .copy-details{display:inline}

@media(max-width:980px){
  .brand-final{
    width:263px!important;
    max-width:263px!important;
  }

  .brand-final img{
    width:263px!important;
    max-width:263px!important;
  }

  .site-header .dropdown{
    position:relative!important;
  }

  .site-header .dropdown > a{
    padding-right:48px!important;
  }

  .dropdown-toggle{
    display:flex!important;
    position:absolute!important;
    right:8px!important;
    top:4px!important;
    width:40px!important;
    height:40px!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    background:transparent!important;
    color:#fff!important;
    z-index:2!important;
  }

  .dropdown-toggle span{
    width:10px!important;
    height:10px!important;
    border-right:2px solid currentColor!important;
    border-bottom:2px solid currentColor!important;
    transform:rotate(45deg)!important;
    margin-top:-5px!important;
    transition:transform .18s ease, margin .18s ease!important;
  }

  .dropdown.dropdown-open .dropdown-toggle span{
    transform:rotate(-135deg)!important;
    margin-top:5px!important;
  }

  .site-header .dropdown-menu{
    display:none!important;
    opacity:1!important;
    pointer-events:auto!important;
    visibility:visible!important;
    transform:none!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open .dropdown-menu{
    display:block!important;
  }

  .site-header.mobile-menu-open .dropdown:not(.dropdown-open) .dropdown-menu{
    display:none!important;
  }

  .site-header .dropdown-menu a{
    text-transform:none!important;
    letter-spacing:.02em!important;
    font-size:12px!important;
    line-height:1.25!important;
  }

  .footer-copy{
    gap:8px!important;
  }

  .footer-copyright{
    display:block!important;
    line-height:1.55!important;
  }

  .footer-copyright .copy-main{
    display:block!important;
  }

  .footer-copyright .copy-details{
    display:block!important;
  }
}

@media(max-width:720px){
  .brand-final{
    width:246px!important;
    max-width:246px!important;
  }

  .brand-final img{
    width:246px!important;
    max-width:246px!important;
  }
}

@media(max-width:600px){
  .brand-final{
    width:238px!important;
    max-width:238px!important;
  }

  .brand-final img{
    width:238px!important;
    max-width:238px!important;
  }
}

@media(max-width:430px){
  .brand-final{
    width:222px!important;
    max-width:222px!important;
  }

  .brand-final img{
    width:222px!important;
    max-width:222px!important;
  }
}

@media(max-width:390px){
  .brand-final{
    width:206px!important;
    max-width:206px!important;
  }

  .brand-final img{
    width:206px!important;
    max-width:206px!important;
  }
}


/* Mecano Lab V25 - pagine categoria/portfolio/azienda sistemate */
.ml-page-content{
  padding-top:150px;
  background:#fff;
  color:#0d141c;
}

.ml-page-inner{
  width:min(1180px, calc(100% - 56px));
  margin:0 auto;
}

.category-content{
  padding-top:155px!important;
  padding-bottom:70px!important;
}

.category-content-inner{
  max-width:1180px!important;
}

.ml-card-hero{
  display:grid!important;
  grid-template-columns:minmax(0, 1.05fr) minmax(340px, .95fr)!important;
  align-items:center!important;
  gap:70px!important;
  margin:0 auto 46px!important;
  padding:0!important;
}

.ml-card-hero h1,
.generic-page h1{
  font-size:clamp(44px, 5vw, 82px)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  text-transform:uppercase!important;
  margin:12px 0 24px!important;
  max-width:760px!important;
}

.ml-card-hero p{
  font-size:18px!important;
  line-height:1.7!important;
  color:#5d6570!important;
  max-width:660px!important;
  margin:0 0 28px!important;
}

.ml-card-hero img{
  width:100%!important;
  max-width:520px!important;
  justify-self:end!important;
  aspect-ratio:4/3!important;
  object-fit:cover!important;
  box-shadow:0 26px 70px rgba(0,0,0,.15)!important;
}

.wp-editable-content{
  max-width:900px;
  margin-top:34px;
}

.wp-editable-content p{
  font-size:17px;
  line-height:1.8;
  color:#4d5662;
}

.wp-editable-content .btn,
.ml-card-hero .btn{
  display:inline-flex!important;
  margin-top:4px!important;
}

.company-page{
  padding-top:150px;
}

.company-hero{
  padding:30px 0 80px;
  background:linear-gradient(180deg, #fff 0%, #f7f8f9 100%);
}

.company-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);
  align-items:center;
  gap:70px;
}

.company-copy h1{
  font-size:clamp(52px, 6vw, 94px);
  line-height:.9;
  letter-spacing:-.06em;
  text-transform:uppercase;
  margin:14px 0 26px;
  max-width:760px;
}

.company-copy p{
  font-size:19px;
  line-height:1.75;
  color:#515b66;
  max-width:680px;
}

.company-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}

.company-highlights strong{
  display:inline-flex;
  align-items:center;
  min-height:46px;
  padding:12px 16px;
  border:1px solid #dfe3e8;
  background:#fff;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:13px;
}

.company-image img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  box-shadow:0 26px 70px rgba(0,0,0,.15);
}

@media(max-width:980px){
  .ml-page-content,
  .category-content,
  .company-page{
    padding-top:112px!important;
  }

  .ml-page-inner{
    width:min(100% - 32px, 720px);
  }

  .ml-card-hero,
  .company-hero-grid{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .ml-card-hero img,
  .company-image img{
    max-width:100%!important;
    justify-self:start!important;
  }

  .ml-card-hero h1,
  .company-copy h1,
  .generic-page h1{
    font-size:44px!important;
    line-height:.96!important;
  }

  .ml-card-hero p,
  .company-copy p{
    font-size:17px!important;
  }

  .company-hero{
    padding:20px 0 48px!important;
  }
}

@media(max-width:520px){
  .ml-page-inner{
    width:calc(100% - 28px);
  }

  .ml-card-hero h1,
  .company-copy h1,
  .generic-page h1{
    font-size:38px!important;
  }

  .category-content{
    padding-bottom:46px!important;
  }

  .company-highlights{
    flex-direction:column;
  }
}


/* Mecano Lab V26 - menu mobile vicino all'hamburger + prodotti espandibile */
@media(max-width:980px){
  .site-header .menu{
    left:auto!important;
    right:12px!important;
    top:74px!important;
    width:min(270px, calc(100vw - 28px))!important;
    max-width:min(270px, calc(100vw - 28px))!important;
    padding:10px 14px!important;
    transform:none!important;
    z-index:99990!important;
  }

  .site-header .menu a{
    padding:13px 12px!important;
    justify-content:center!important;
    text-align:center!important;
  }

  .site-header .dropdown{
    width:100%!important;
  }

  .site-header .dropdown > a{
    padding-right:38px!important;
  }

  .dropdown-toggle{
    display:flex!important;
    position:absolute!important;
    top:5px!important;
    right:0!important;
    width:38px!important;
    height:38px!important;
    border:0!important;
    background:transparent!important;
    color:#fff!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:3!important;
  }

  .dropdown-toggle span{
    width:10px!important;
    height:10px!important;
    border-right:2px solid currentColor!important;
    border-bottom:2px solid currentColor!important;
    transform:rotate(45deg)!important;
    margin-top:-5px!important;
    display:block!important;
  }

  .dropdown.dropdown-open .dropdown-toggle span{
    transform:rotate(-135deg)!important;
    margin-top:5px!important;
  }

  .site-header .dropdown-menu{
    position:static!important;
    display:none!important;
    width:100%!important;
    min-width:0!important;
    padding:6px 0 8px!important;
    margin:0!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    background:rgba(255,255,255,.05)!important;
    border:0!important;
    box-shadow:none!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open .dropdown-menu{
    display:block!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open .dropdown-menu a{
    display:block!important;
    font-size:11px!important;
    line-height:1.25!important;
    padding:9px 8px!important;
    white-space:normal!important;
    text-align:center!important;
    text-transform:none!important;
    letter-spacing:.01em!important;
    color:rgba(255,255,255,.86)!important;
  }
}

@media(max-width:430px){
  .site-header .menu{
    top:70px!important;
    right:8px!important;
    width:min(250px, calc(100vw - 20px))!important;
    max-width:min(250px, calc(100vw - 20px))!important;
  }
}

/* Mecano Lab V26 - pagine categoria/portfolio/azienda rifinite */
.ml-page-content{
  padding-top:150px;
  background:#fff;
  color:#0d141c;
}
.ml-page-inner{
  width:min(1180px, calc(100% - 56px));
  margin:0 auto;
}
.category-content{
  padding-top:150px!important;
  padding-bottom:70px!important;
}
.ml-card-hero{
  display:grid!important;
  grid-template-columns:minmax(0, 1.05fr) minmax(340px, .95fr)!important;
  align-items:center!important;
  gap:70px!important;
  margin:0 auto 46px!important;
  padding:0!important;
}
.ml-card-hero h1,
.generic-page h1{
  font-size:clamp(44px, 5vw, 82px)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  text-transform:uppercase!important;
  margin:12px 0 24px!important;
  max-width:760px!important;
}
.ml-card-hero p{
  font-size:18px!important;
  line-height:1.7!important;
  color:#5d6570!important;
  max-width:660px!important;
  margin:0 0 28px!important;
}
.ml-card-hero img{
  width:100%!important;
  max-width:520px!important;
  justify-self:end!important;
  aspect-ratio:4/3!important;
  object-fit:cover!important;
  box-shadow:0 26px 70px rgba(0,0,0,.15)!important;
}
.wp-editable-content{
  max-width:900px;
  margin-top:34px;
}
.wp-editable-content p{
  font-size:17px;
  line-height:1.8;
  color:#4d5662;
}
.company-page{
  padding-top:150px;
}
.company-hero{
  padding:20px 0 70px;
  background:linear-gradient(180deg, #fff 0%, #f7f8f9 100%);
}
.company-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  align-items:center;
  gap:70px;
}
.company-copy h1{
  font-size:clamp(42px, 5vw, 72px);
  line-height:.96;
  letter-spacing:-.05em;
  text-transform:uppercase;
  margin:14px 0 24px;
  max-width:700px;
}
.company-copy p{
  font-size:19px;
  line-height:1.75;
  color:#515b66;
  max-width:680px;
}
.company-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.company-highlights strong{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:12px 16px;
  border:1px solid #dfe3e8;
  background:#fff;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:13px;
}
.company-image img,
.company-gallery img{
  width:100%;
  object-fit:cover;
  box-shadow:0 26px 70px rgba(0,0,0,.15);
}
.company-image img{aspect-ratio:4/3}
.company-story{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:70px;
  padding:70px 0;
}
.company-timeline{
  position:relative;
  display:grid;
  gap:0;
  margin-top:24px;
}
.company-timeline article{
  position:relative;
  padding:0 0 30px 34px;
  border-left:2px solid #e64a0a;
}
.company-timeline article:before{
  content:"";
  position:absolute;
  left:-7px;
  top:0;
  width:12px;
  height:12px;
  border-radius:50%;
  background:#e64a0a;
}
.company-timeline strong{
  display:block;
  font-size:28px;
  letter-spacing:-.04em;
  color:#0d141c;
}
.company-timeline p{
  margin:8px 0 0;
  color:#56616d;
  line-height:1.7;
}
.company-gallery{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  align-content:start;
}
.company-gallery img{
  aspect-ratio:3/4;
}
.company-gallery img:nth-child(2){
  margin-top:52px;
}

@media(max-width:980px){
  .ml-page-content,
  .category-content,
  .company-page{
    padding-top:112px!important;
  }
  .ml-page-inner{
    width:min(100% - 32px, 720px);
  }
  .ml-card-hero,
  .company-hero-grid,
  .company-story{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .ml-card-hero img,
  .company-image img{
    max-width:100%!important;
    justify-self:start!important;
  }
  .ml-card-hero h1,
  .generic-page h1{
    font-size:44px!important;
    line-height:.96!important;
  }
  .company-copy h1{
    font-size:38px!important;
  }
  .ml-card-hero p,
  .company-copy p{
    font-size:17px!important;
  }
  .company-hero{
    padding:18px 0 42px!important;
  }
  .company-story{
    padding:46px 0!important;
  }
}

@media(max-width:520px){
  .ml-page-inner{
    width:calc(100% - 28px);
  }
  .ml-card-hero h1,
  .generic-page h1{
    font-size:38px!important;
  }
  .company-gallery{
    grid-template-columns:1fr!important;
  }
  .company-gallery img:nth-child(2){
    margin-top:0;
  }
}


/* Mecano Lab V27 - fix finali */
.footer-copyright .copy-main,
.footer-copyright .copy-sep,
.footer-copyright .copy-details{display:inline!important}
.footer-copyright .copy-main::after{content:" ";}

@media(max-width:980px){
  .footer-copyright .copy-main,
  .footer-copyright .copy-details{display:block!important}
  .footer-copyright .copy-sep{display:none!important}
}

/* Hamburger deve stare sopra tutto e deve essere cliccabile */
@media(max-width:980px){
  .mobile-menu-toggle{
    display:flex!important;
    position:absolute!important;
    right:12px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:2147483000!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    opacity:1!important;
    visibility:visible!important;
  }

  .site-header.mobile-menu-open .mobile-menu-toggle{
    transform:translateY(-50%)!important;
  }

  .site-header .menu{
    position:absolute!important;
    top:76px!important;
    right:12px!important;
    left:auto!important;
    width:min(272px, calc(100vw - 24px))!important;
    max-width:min(272px, calc(100vw - 24px))!important;
    display:none!important;
    z-index:2147482000!important;
    padding:10px 14px!important;
  }

  .site-header.mobile-menu-open .menu{
    display:flex!important;
  }

  .site-header .menu a{
    justify-content:center!important;
    text-align:center!important;
    width:100%!important;
  }

  .site-header .dropdown{position:relative!important;width:100%!important}
  .site-header .dropdown > a{padding-right:38px!important}

  .dropdown-toggle{
    display:flex!important;
    position:absolute!important;
    right:0!important;
    top:4px!important;
    width:38px!important;
    height:38px!important;
    align-items:center!important;
    justify-content:center!important;
    border:0!important;
    background:transparent!important;
    color:#fff!important;
    z-index:2147482500!important;
    pointer-events:auto!important;
  }

  .dropdown-toggle span{
    display:block!important;
    width:10px!important;
    height:10px!important;
    border-right:2px solid #fff!important;
    border-bottom:2px solid #fff!important;
    transform:rotate(45deg)!important;
    margin-top:-5px!important;
  }

  .dropdown.dropdown-open .dropdown-toggle span{
    transform:rotate(-135deg)!important;
    margin-top:5px!important;
  }

  .site-header .dropdown-menu{
    position:static!important;
    display:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    background:rgba(255,255,255,.06)!important;
    border:0!important;
    box-shadow:none!important;
    padding:8px 0!important;
    margin:0!important;
    width:100%!important;
    min-width:0!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open .dropdown-menu{
    display:block!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open .dropdown-menu a{
    display:block!important;
    padding:9px 10px!important;
    font-size:11px!important;
    line-height:1.25!important;
    text-transform:none!important;
    white-space:normal!important;
    color:rgba(255,255,255,.86)!important;
  }
}

@media(max-width:430px){
  .site-header .menu{
    top:70px!important;
    right:8px!important;
  }
}

/* Azienda pagina più ordinata */
.company-copy h1{
  font-size:clamp(38px,4.6vw,66px)!important;
}
.company-gallery img{
  filter:none!important;
}

/* Personalizza: sezioni ordinate sono in Aspetto > Personalizza con prefisso Mecano */


/* Mecano Lab V28 - fix voce Prodotti nel menu mobile */
@media(max-width:980px){
  .site-header .menu .menu-item.has-dropdown,
  .site-header .menu .menu-item.dropdown{
    display:block !important;
    width:100% !important;
  }

  .site-header .menu .menu-item.has-dropdown > a,
  .site-header .menu .menu-item.dropdown > a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    padding:14px 42px 14px 12px !important;
  }

  .site-header .menu .dropdown-caret{
    display:none !important;
  }

  .site-header.mobile-menu-open .menu .menu-item.dropdown.dropdown-open > .dropdown-menu,
  .site-header.mobile-menu-open .menu .menu-item.has-dropdown.dropdown-open > .dropdown-menu{
    display:block !important;
    margin-top:-2px !important;
    margin-bottom:8px !important;
  }

  .site-header .menu .menu-item.dropdown .dropdown-menu a,
  .site-header .menu .menu-item.has-dropdown .dropdown-menu a{
    text-align:center !important;
    justify-content:center !important;
  }
}


/* Mecano Lab V29 - microfix menu mobile, logo desktop, mappa mobile */
@media(min-width:981px){
  .brand-final{width:292px !important;max-width:292px !important;}
}
@media(max-width:980px){
  .site-header .menu{text-align:center !important;}
  .site-header .menu > a,
  .site-header .menu .menu-item.has-dropdown > a,
  .site-header .menu .menu-item.dropdown > a{
    display:grid !important;grid-template-columns:38px 1fr 38px !important;align-items:center !important;justify-items:center !important;width:100% !important;min-height:58px !important;padding:0 !important;text-align:center !important;
  }
  .site-header .menu > a::before,
  .site-header .menu .menu-item.has-dropdown > a::before,
  .site-header .menu .menu-item.dropdown > a::before{content:"" !important;grid-column:1 !important;}
  .site-header .menu > a{grid-template-columns:1fr !important;}
  .site-header .menu a.active:after,.site-header .menu a[aria-current="page"]:after{display:none !important;content:none !important;}
  .site-header.mobile-menu-open .menu a.active,.site-header.mobile-menu-open .menu a[aria-current="page"]{color:var(--orange) !important;text-decoration:none !important;border-bottom:0 !important;box-shadow:none !important;}
  .site-header .menu .menu-item.has-dropdown > a,.site-header .menu .menu-item.dropdown > a{color:#fff !important;}
  .dropdown-toggle{right:0 !important;top:10px !important;width:38px !important;height:38px !important;}
  .site-header .menu .menu-item.has-dropdown > .dropdown-toggle,.site-header .menu .menu-item.dropdown > .dropdown-toggle{position:absolute !important;right:0 !important;top:10px !important;}
  .site-header .menu .menu-item.has-dropdown > .dropdown-toggle span,.site-header .menu .menu-item.dropdown > .dropdown-toggle span{border-right:3px solid #fff !important;border-bottom:3px solid #fff !important;}
}

/* Mecano Lab V32 - Hero slideshow con fade */
.hero{
  background:#080b0f !important;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.76) 35%,rgba(0,0,0,.25) 64%,rgba(0,0,0,.75) 100%);
  pointer-events:none;
}
.hero-bg-layer{
  position:absolute;
  inset:0;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:0;
  transition:opacity 950ms ease-in-out, transform 6500ms ease;
  transform:scale(1.015);
  z-index:0;
  will-change:opacity;
}
.hero-bg-layer.is-active{
  opacity:1;
  transform:scale(1.04);
}
.hero-inner,
.hero-dots{
  position:relative;
  z-index:2;
}
@media(prefers-reduced-motion:reduce){
  .hero-bg-layer{transition:none!important;transform:none!important}
}

/* Mecano Lab V32 - WooCommerce prodotti integrati */
.ml-category-ready-products{
  padding:54px 0 0;
}
.ml-ready-products-grid.products{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.shop-standard .ml-ready-products-grid.products{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.ml-ready-products-grid.products li.product{
  width:auto!important;
  float:none!important;
  margin:0!important;
  background:#fff;
  border:1px solid var(--line);
  padding:16px;
  box-shadow:0 14px 44px rgba(0,0,0,.06);
}
.ml-ready-products-grid.products li.product img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:contain;
  background:#f7f7f8;
}
.ml-ready-products-grid .woocommerce-loop-product__title{
  font-size:16px;
  line-height:1.2;
  color:var(--ink);
  text-transform:none;
}
.ml-variant-button{
  margin-top:10px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:40px!important;
  padding:0 14px!important;
  background:#111!important;
  color:#fff!important;
  border-radius:0!important;
  text-transform:uppercase!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
}
.ml-wc-note{
  margin-top:32px;
  padding:22px 24px;
  background:#f7f7f8;
  border-left:4px solid var(--orange);
  color:#3a414a;
}
@media(max-width:980px){
  .ml-ready-products-grid.products,
  .shop-standard .ml-ready-products-grid.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:560px){
  .ml-ready-products-grid.products,
  .shop-standard .ml-ready-products-grid.products{
    grid-template-columns:1fr;
  }
}


/* Mecano Lab V34 - Hero fade + leggero scorrimento */
.hero-bg-layer{
  opacity:0 !important;
  transform:translateX(22px) scale(1.025) !important;
  transition:opacity 950ms ease-in-out, transform 1400ms ease-in-out !important;
  will-change:opacity, transform;
}
.hero-bg-layer.is-active{
  opacity:1 !important;
  transform:translateX(0) scale(1.035) !important;
}
@media(max-width:767px){
  .hero-bg-layer{
    transform:translateX(14px) scale(1.025) !important;
  }
  .hero-bg-layer.is-active{
    transform:translateX(0) scale(1.035) !important;
  }
}
@media(prefers-reduced-motion:reduce){
  .hero-bg-layer,
  .hero-bg-layer.is-active{
    transition:none !important;
    transform:none !important;
  }
}


/* Mecano Lab V35 - menu mobile: separatori e centratura verticale */
@media(max-width:980px){

  .site-header.mobile-menu-open .menu{
    display:block !important;
    padding:0 26px !important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item{
    min-height:108px !important;
    height:108px !important;
    margin:0 !important;
    padding:0 !important;
    border-top:0 !important;
    border-bottom:1px solid rgba(255,255,255,.13) !important;
    box-shadow:none !important;
  }

  .site-header.mobile-menu-open .menu > a:first-child,
  .site-header.mobile-menu-open .menu > a.active:first-child,
  .site-header.mobile-menu-open .menu > a[aria-current="page"]:first-child{
    border-bottom:1px solid rgba(255,255,255,.13) !important;
  }

  .site-header.mobile-menu-open .menu > a:last-child,
  .site-header.mobile-menu-open .menu > .menu-item:last-child{
    border-bottom:0 !important;
  }

  .site-header.mobile-menu-open .menu > a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:108px !important;
    line-height:1 !important;
    padding:0 !important;
    text-align:center !important;
  }

  .site-header.mobile-menu-open .menu > .menu-item{
    position:relative !important;
  }

  .site-header.mobile-menu-open .menu > .menu-item > a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    height:108px !important;
    line-height:1 !important;
    padding:0 54px !important;
    text-align:center !important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    position:absolute !important;
    right:18px !important;
    top:0 !important;
    width:54px !important;
    height:108px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
  }

  .site-header.mobile-menu-open .menu .dropdown-caret{
    position:absolute !important;
    right:20px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    margin:0 !important;
    line-height:1 !important;
  }

  .site-header.mobile-menu-open .menu a.active::after,
  .site-header.mobile-menu-open .menu a[aria-current="page"]::after{
    display:none !important;
    content:none !important;
  }

  .site-header.mobile-menu-open .menu a.active,
  .site-header.mobile-menu-open .menu a[aria-current="page"]{
    box-shadow:none !important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open{
    height:auto !important;
    min-height:108px !important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open > a{
    border-bottom:1px solid rgba(255,255,255,.10) !important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    position:static !important;
    padding:0 !important;
    margin:0 !important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    min-height:64px !important;
    height:auto !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:16px 8px !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
    line-height:1.2 !important;
    text-align:center !important;
  }
}

@media(max-width:420px){
  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item,
  .site-header.mobile-menu-open .menu > .menu-item > a,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:92px !important;
    min-height:92px !important;
  }
}


/* Mecano Lab V36 - menu mobile uniforme, tendina prodotti centrata e richiudibile */
@media(max-width:980px){

  /* Stessa posizione/dimensione del pannello menu su homepage, pagine standard e pagina su misura */
  .site-header.mobile-menu-open .menu{
    position:absolute !important;
    top:132px !important;
    left:27% !important;
    right:16px !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 26px !important;
    background:rgba(4,7,11,.92) !important;
    border:1px solid rgba(255,255,255,.12) !important;
  }

  .admin-bar .site-header.mobile-menu-open .menu{
    top:132px !important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item{
    min-height:92px !important;
    height:92px !important;
    padding:0 !important;
    margin:0 !important;
    border-bottom:1px solid rgba(255,255,255,.13) !important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:92px !important;
    height:92px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    line-height:1 !important;
    text-align:center !important;
  }

  .site-header.mobile-menu-open .menu > .menu-item > a{
    padding-left:54px !important;
    padding-right:54px !important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle,
  .site-header.mobile-menu-open .menu .dropdown-caret{
    z-index:6 !important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    top:0 !important;
    right:10px !important;
    width:66px !important;
    height:92px !important;
    min-height:92px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
  }

  .site-header.mobile-menu-open .menu .dropdown-caret{
    right:23px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open{
    height:auto !important;
    min-height:92px !important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    position:static !important;
    display:none !important;
    width:100% !important;
    margin:0 0 16px 0 !important;
    padding:0 !important;
    background:rgba(255,255,255,.045) !important;
    border:0 !important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open > .dropdown-menu,
  .site-header.mobile-menu-open .menu-item.dropdown-open > .dropdown-menu{
    display:block !important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    box-sizing:border-box !important;
    min-height:58px !important;
    height:58px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 12px !important;
    margin:0 !important;
    line-height:1.15 !important;
    text-align:center !important;
    border-bottom:1px solid rgba(255,255,255,.075) !important;
    vertical-align:middle !important;
  }

  .site-header.mobile-menu-open .dropdown-menu a:first-child,
  .site-header.mobile-menu-open .dropdown-menu a:last-child{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  .site-header.mobile-menu-open .dropdown-menu a:last-child{
    border-bottom:0 !important;
  }
}

@media(max-width:420px){
  .site-header.mobile-menu-open .menu{
    left:27% !important;
    right:16px !important;
    top:132px !important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item,
  .site-header.mobile-menu-open .menu > .menu-item > a,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    min-height:88px !important;
    height:88px !important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    min-height:56px !important;
    height:56px !important;
    font-size:14px !important;
  }
}


/* Mecano Lab V37 - Portfolio homepage cliccabile e pagina portfolio a sezioni */
.section-link,
.section-title-link{
  color:inherit;
  text-decoration:none;
}
.section-link:hover,
.section-title-link:hover{
  color:var(--orange);
}

.project-large,
.project-small{
  display:block;
  color:#fff;
  text-decoration:none;
}
.project-large:hover img,
.project-small:hover img{
  transform:scale(1.035);
}
.project-grid img{
  transition:transform .35s ease, opacity .35s ease;
}

.portfolio-page{
  padding-top:150px;
  background:#fff;
}
.portfolio-page .portfolio-hero{
  margin-bottom:70px!important;
}
.portfolio-cases{
  display:grid;
  gap:74px;
  margin:36px 0 70px;
}
.portfolio-case{
  display:grid;
  grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);
  gap:62px;
  align-items:center;
  padding:0 0 70px;
  border-bottom:1px solid var(--line);
}
.portfolio-case.is-reverse .portfolio-case-media{
  order:2;
}
.portfolio-case.is-reverse .portfolio-case-copy{
  order:1;
}
.portfolio-case-media img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  box-shadow:0 26px 70px rgba(0,0,0,.14);
}
.portfolio-case-copy h2{
  font-size:clamp(34px,4.2vw,58px);
  line-height:1;
  letter-spacing:-.045em;
  margin:10px 0 22px;
}
.portfolio-case-copy p{
  font-size:18px;
  line-height:1.8;
  color:#56616d;
  max-width:650px;
}
.portfolio-final-cta{
  text-align:center;
  margin:24px 0 80px;
}
.portfolio-final-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  padding:0 28px;
  background:#111;
  color:#fff;
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:.055em;
  font-size:13px;
}
.portfolio-final-cta a:hover{
  background:var(--orange);
}

@media(max-width:980px){
  .portfolio-page{
    padding-top:112px;
  }
  .portfolio-case,
  .portfolio-case.is-reverse{
    grid-template-columns:1fr;
    gap:28px;
    padding-bottom:50px;
  }
  .portfolio-case.is-reverse .portfolio-case-media,
  .portfolio-case.is-reverse .portfolio-case-copy{
    order:initial;
  }
  .portfolio-case-copy h2{
    font-size:38px;
  }
}


/* Mecano Lab V38 - Pannelli Retroilluminati più evidenti + categorie cliccabili */
.footer-logo-link{
  display:inline-block;
  line-height:0;
}
.footer-logo-link:hover{
  opacity:.86;
}
.dropdown-menu .dropdown-external{
  color:#fff!important;
  background:rgba(233,75,10,.18)!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  font-weight:900!important;
}
.dropdown-menu .dropdown-external:hover{
  background:var(--orange)!important;
  color:#fff!important;
}

.category-block-link{
  color:inherit;
  text-decoration:none;
}
.category-block-link:hover h3,
.category-block-link:hover .category-action{
  color:var(--orange);
}
.category-action{
  text-transform:uppercase;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  white-space:nowrap;
  color:#11151a;
}

.category-pannelli-highlight{
  margin-top:12px;
  padding:34px!important;
  background:linear-gradient(135deg, #e94b0a 0%, #ff6a21 100%)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 22px 60px rgba(233,75,10,.22);
}
.category-pannelli-highlight span,
.category-pannelli-highlight h3,
.category-pannelli-highlight p,
.category-pannelli-highlight .category-action{
  color:#fff!important;
}
.category-pannelli-highlight p{
  color:rgba(255,255,255,.86)!important;
}
.pannelli-highlight-mark{
  width:180px;
  height:118px;
  display:grid;
  place-items:center;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.26);
  font-weight:950;
  font-size:42px;
  letter-spacing:-.08em;
}
.category-pannelli-highlight:hover{
  filter:brightness(.96);
}
.category-pannelli-highlight:hover h3,
.category-pannelli-highlight:hover .category-action{
  color:#fff!important;
}

@media(max-width:980px){
  .pannelli-highlight-mark{
    width:100%;
    height:90px;
  }
}


/* Mecano Lab V39 - highlight pannelli più elegante */
.category-pannelli-highlight{
  margin-top:18px!important;
  padding:28px!important;
  background:#11151a!important;
  color:#fff!important;
  border:1px solid rgba(233,75,10,.55)!important;
  border-left:6px solid var(--orange)!important;
  box-shadow:0 16px 46px rgba(0,0,0,.10)!important;
}
.category-pannelli-highlight span{
  color:var(--orange)!important;
}
.category-pannelli-highlight h3,
.category-pannelli-highlight .category-action{
  color:#fff!important;
}
.category-pannelli-highlight p{
  color:rgba(255,255,255,.72)!important;
}
.pannelli-highlight-mark{
  background:rgba(233,75,10,.14)!important;
  border:1px solid rgba(233,75,10,.38)!important;
  color:#fff!important;
  font-size:34px!important;
  letter-spacing:-.06em!important;
}
.category-pannelli-highlight:hover{
  filter:none!important;
  border-color:var(--orange)!important;
  transform:translateY(-1px);
}

/* Mecano Lab V39 - menu mobile corretto: più piccolo, vicino hamburger, dropdown funzionante */
@media(max-width:980px){
  .site-header.mobile-menu-open .menu{
    position:absolute!important;
    top:96px!important;
    right:16px!important;
    left:auto!important;
    width:min(505px, calc(100vw - 194px))!important;
    min-width:0!important;
    max-width:505px!important;
    margin:0!important;
    padding:0 24px!important;
    background:rgba(4,7,11,.93)!important;
    border:1px solid rgba(255,255,255,.14)!important;
    box-shadow:0 22px 70px rgba(0,0,0,.35)!important;
    overflow:visible!important;
  }

  .admin-bar .site-header.mobile-menu-open .menu{
    top:96px!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item{
    height:76px!important;
    min-height:76px!important;
    margin:0!important;
    padding:0!important;
    border-bottom:1px solid rgba(255,255,255,.12)!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a{
    height:76px!important;
    min-height:76px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 54px!important;
    line-height:1!important;
    text-align:center!important;
  }

  .site-header.mobile-menu-open .menu > a:first-child{
    border-bottom:1px solid rgba(255,255,255,.12)!important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    display:flex!important;
    position:absolute!important;
    right:8px!important;
    top:0!important;
    width:64px!important;
    height:76px!important;
    min-height:76px!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:100!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    background:transparent!important;
    border:0!important;
  }

  .site-header.mobile-menu-open .menu .dropdown-caret{
    position:absolute!important;
    right:22px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:90!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open{
    height:auto!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    position:static!important;
    display:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    width:100%!important;
    margin:0 0 14px 0!important;
    padding:0!important;
    background:rgba(255,255,255,.045)!important;
    border:0!important;
    box-shadow:none!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open > .dropdown-menu,
  .site-header.mobile-menu-open .menu-item.dropdown-open > .dropdown-menu{
    display:block!important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    height:50px!important;
    min-height:50px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 10px!important;
    margin:0!important;
    line-height:1.15!important;
    font-size:14px!important;
    text-align:center!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    background:rgba(233,75,10,.16)!important;
    color:#fff!important;
    letter-spacing:.04em!important;
  }
}

@media(max-width:520px){
  .site-header.mobile-menu-open .menu{
    top:86px!important;
    right:14px!important;
    width:calc(100vw - 208px)!important;
    padding:0 18px!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item,
  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:66px!important;
    min-height:66px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    height:46px!important;
    min-height:46px!important;
    font-size:13px!important;
  }
}


/* Mecano Lab V40 - menu mobile/landscape e dropdown prodotti definitivo */
@media(max-width:980px){
  .site-header.mobile-menu-open .menu{
    max-height:calc(100vh - 120px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a{
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item > a{
    padding-left:54px!important;
    padding-right:54px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    height:54px!important;
    min-height:54px!important;
    line-height:1.05!important;
    white-space:normal!important;
    text-align:center!important;
    color:#fff!important;
    background:rgba(233,75,10,.18)!important;
    letter-spacing:.055em!important;
    font-weight:900!important;
  }

  .site-header.mobile-menu-open .dropdown.dropdown-open > .dropdown-menu,
  .site-header.mobile-menu-open .menu-item.dropdown-open > .dropdown-menu{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

/* Telefono in orizzontale: menu più compatto e scrollabile */
@media(max-width:980px) and (max-height:520px){
  .site-header.mobile-menu-open .menu{
    top:72px!important;
    right:12px!important;
    width:min(430px, calc(100vw - 170px))!important;
    max-height:calc(100vh - 82px)!important;
    padding:0 16px!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item,
  .site-header.mobile-menu-open .menu > .menu-item > a,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:46px!important;
    min-height:46px!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a{
    font-size:12px!important;
    line-height:1!important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    width:54px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    margin-bottom:8px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    height:34px!important;
    min-height:34px!important;
    font-size:11px!important;
    line-height:1.05!important;
    padding:0 8px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    height:38px!important;
    min-height:38px!important;
    font-size:10px!important;
  }
}

/* Telefoni molto stretti: evita che Su misura vada a capo */
@media(max-width:420px){
  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a{
    font-size:14px!important;
    letter-spacing:.045em!important;
  }
}


/* Mecano Lab V41 - mobile menu final: linea Home, freccia vicino testo, landscape */
@media(max-width:980px){

  .site-header.mobile-menu-open .menu{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior:contain!important;
  }

  /* Linea tra Home e Prodotti: forzata anche quando Home è active */
  .site-header.mobile-menu-open .menu > a:first-child{
    border-bottom:1px solid rgba(255,255,255,.16)!important;
    box-shadow:inset 0 -1px 0 rgba(255,255,255,.06)!important;
  }

  .site-header.mobile-menu-open .menu > a:first-child::after{
    display:none!important;
    content:none!important;
  }

  /* Prodotti: testo e freccia vicini, non freccia a bordo destro */
  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown,
  .site-header.mobile-menu-open .menu > .dropdown{
    position:relative!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a,
  .site-header.mobile-menu-open .menu > .dropdown > a{
    justify-content:center!important;
    gap:10px!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown > a .dropdown-caret{
    position:static!important;
    display:inline-flex!important;
    transform:none!important;
    margin-left:8px!important;
    line-height:1!important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    z-index:80!important;
    cursor:pointer!important;
    background:transparent!important;
    border:0!important;
    opacity:0!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open > a .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown.dropdown-open > a .dropdown-caret{
    transform:rotate(180deg)!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    position:static!important;
    display:none!important;
    width:100%!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }

  .site-header.mobile-menu-open .menu-item.dropdown-open > .dropdown-menu,
  .site-header.mobile-menu-open .dropdown.dropdown-open > .dropdown-menu{
    display:block!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:normal!important;
    line-height:1.08!important;
    color:#fff!important;
    background:rgba(233,75,10,.18)!important;
    border-top:1px solid rgba(233,75,10,.35)!important;
  }
}

/* Mobile in orizzontale: fisso a schermo, compatto, scrollabile */
@media(max-width:980px) and (orientation:landscape){
  .site-header.mobile-menu-open .menu{
    position:fixed!important;
    top:92px!important;
    right:12px!important;
    left:auto!important;
    width:min(520px, 54vw)!important;
    max-width:520px!important;
    max-height:calc(100dvh - 104px)!important;
    padding:0 14px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    z-index:2147482500!important;
  }

  .admin-bar .site-header.mobile-menu-open .menu{
    top:92px!important;
    max-height:calc(100dvh - 104px)!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item,
  .site-header.mobile-menu-open .menu > .menu-item > a,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:42px!important;
    min-height:42px!important;
  }

  .site-header.mobile-menu-open .menu > a,
  .site-header.mobile-menu-open .menu > .menu-item > a{
    font-size:11px!important;
    letter-spacing:.04em!important;
    line-height:1!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    margin:0 0 6px 0!important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    height:31px!important;
    min-height:31px!important;
    font-size:10.5px!important;
    line-height:1.04!important;
    padding:0 8px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    height:36px!important;
    min-height:36px!important;
    font-size:10px!important;
  }
}

/* Browser senza dvh */
@media(max-width:980px) and (orientation:landscape){
  @supports not (height:100dvh){
    .site-header.mobile-menu-open .menu{
      max-height:calc(100vh - 104px)!important;
    }
  }
}


/* Mecano Lab V42 - microfix finale menu mobile + vantaggi */
@media(max-width:980px){
  /* Linea tra Home e Prodotti senza toccare apertura dropdown */
  .site-header.mobile-menu-open .menu > a:first-child{
    position:relative!important;
    border-bottom:0!important;
    box-shadow:none!important;
  }
  .site-header.mobile-menu-open .menu > a:first-child::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:1px!important;
    background:rgba(255,255,255,.16)!important;
    pointer-events:none!important;
  }

  /* Griglia vantaggi mobile 2x2 perfettamente allineata */
  .features{
    display:grid!important;
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
    align-items:stretch!important;
    gap:0!important;
  }
  .feature{
    min-height:245px!important;
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding:30px 18px!important;
    border:1px solid var(--line)!important;
    margin:0!important;
  }
  .feature svg,
  .feature .feature-icon-image{
    flex:0 0 auto!important;
    margin-bottom:22px!important;
  }
  .feature strong{
    min-height:22px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin-bottom:14px!important;
  }
  .feature p{
    margin:0!important;
    max-width:230px!important;
  }
}

@media(max-width:520px){
  .features{
    grid-template-columns:repeat(2, minmax(0, 1fr))!important;
  }
  .feature{
    min-height:255px!important;
    padding:26px 14px!important;
  }
  .feature p{
    font-size:16px!important;
    line-height:1.45!important;
  }
}

@media(max-width:360px){
  .feature{
    min-height:270px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
}


/* Mecano Lab V43 - dropdown mobile: link cliccabili, freccia separata */
@media(max-width:980px){
  /* Prodotti deve essere un link verso la sezione prodotti; solo la freccia/tasto apre la tendina */
  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link{
    pointer-events:auto!important;
    position:relative!important;
    z-index:2!important;
    padding-left:18px!important;
    padding-right:42px!important;
    gap:8px!important;
    justify-content:center!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown > a .dropdown-caret{
    position:static!important;
    margin-left:8px!important;
    transform:none!important;
    pointer-events:none!important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    position:absolute!important;
    top:0!important;
    left:50%!important;
    right:auto!important;
    width:58px!important;
    height:76px!important;
    min-height:76px!important;
    transform:translateX(44px)!important;
    z-index:12!important;
    opacity:0!important;
    background:transparent!important;
    border:0!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    padding:0!important;
    margin:0!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open > a .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown.dropdown-open > a .dropdown-caret{
    transform:rotate(180deg)!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    z-index:20!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    position:relative!important;
    z-index:30!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    white-space:normal!important;
  }

  .site-header.mobile-menu-open .menu > a:first-child::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:1px!important;
    background:rgba(255,255,255,.16)!important;
    pointer-events:none!important;
  }
}

@media(max-width:980px) and (orientation:landscape){
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:42px!important;
    min-height:42px!important;
    transform:translateX(38px)!important;
  }
}

@media(max-width:520px){
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:66px!important;
    min-height:66px!important;
    transform:translateX(42px)!important;
  }
}


/* Mecano Lab V44 - Prodotti mobile: tutta la riga espande, testo centrato, freccia a destra */
@media(max-width:980px){
  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown,
  .site-header.mobile-menu-open .menu > .dropdown{
    position:relative!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link{
    position:relative!important;
    z-index:4!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:76px!important;
    min-height:76px!important;
    padding:0 58px!important;
    text-align:center!important;
    line-height:1!important;
    white-space:nowrap!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link .dropdown-caret{
    position:absolute!important;
    right:22px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    margin:0!important;
    line-height:1!important;
    pointer-events:none!important;
    color:var(--orange)!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open > a.products-main-link .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown.dropdown-open > a.products-main-link .dropdown-caret{
    transform:translateY(-50%) rotate(180deg)!important;
  }

  .site-header.mobile-menu-open .menu .dropdown-toggle{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:76px!important;
    min-height:76px!important;
    transform:none!important;
    z-index:10!important;
    opacity:0!important;
    background:transparent!important;
    border:0!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    padding:0!important;
    margin:0!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    position:static!important;
    display:none!important;
    z-index:30!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .menu-item.dropdown-open > .dropdown-menu,
  .site-header.mobile-menu-open .dropdown.dropdown-open > .dropdown-menu{
    display:block!important;
  }

  .site-header.mobile-menu-open .dropdown-menu a{
    position:relative!important;
    z-index:40!important;
    pointer-events:auto!important;
  }

  .site-header.mobile-menu-open .menu > a:first-child::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:1px!important;
    background:rgba(255,255,255,.16)!important;
    pointer-events:none!important;
  }
}

@media(max-width:980px) and (orientation:landscape){
  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:42px!important;
    min-height:42px!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link{
    padding:0 50px!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link .dropdown-caret{
    right:20px!important;
  }
}

@media(max-width:520px){
  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu .dropdown-toggle{
    height:66px!important;
    min-height:66px!important;
  }
}


/* Mecano Lab V45 - microfix grafici menu mobile */
@media(max-width:980px){
  /* Leggermente più trasparente, senza cambiare layout */
  .site-header.mobile-menu-open .menu{
    background:rgba(4,7,11,.89)!important;
  }

  /* Freccia Prodotti separata dalla scritta ma non buttata al bordo */
  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link{
    padding-left:44px!important;
    padding-right:44px!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link .dropdown-caret{
    left:calc(50% + 68px)!important;
    right:auto!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    margin:0!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.dropdown-open > a.products-main-link .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown.dropdown-open > a.products-main-link .dropdown-caret{
    transform:translateY(-50%) rotate(180deg)!important;
  }

  /* Respiro sotto l'ultima voce del dropdown prima del separatore */
  .site-header.mobile-menu-open .dropdown-menu{
    margin-bottom:18px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    margin-bottom:4px!important;
  }
}

/* In orizzontale manteniamo dimensioni e posizione già buone, aggiungendo solo respiro */
@media(max-width:980px) and (orientation:landscape){
  .site-header.mobile-menu-open .menu{
    background:rgba(4,7,11,.89)!important;
  }

  .site-header.mobile-menu-open .menu > .menu-item.has-dropdown > a.products-main-link .dropdown-caret,
  .site-header.mobile-menu-open .menu > .dropdown > a.products-main-link .dropdown-caret{
    left:calc(50% + 62px)!important;
    right:auto!important;
  }

  .site-header.mobile-menu-open .dropdown-menu{
    margin-bottom:14px!important;
  }

  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    margin-bottom:5px!important;
  }
}


/* Mecano Lab V46 Corretta - sezione Mecano System compatta */
.mecano-system-section{padding:24px 0 12px;background:#fff;}
.mecano-system-heading{display:block;margin-bottom:18px;}
.mecano-system-heading h2{font-size:clamp(28px,3.2vw,40px);}
.mecano-system-heading p{max-width:860px;margin:10px 0 0;color:var(--muted);font-size:15px;}
.mecano-system-microclaim{display:inline-block;margin-top:10px;color:var(--orange);font-size:11px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;white-space:nowrap;}
.mecano-system-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.mecano-system-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:18px;align-items:center;border:1px solid var(--line);padding:14px;background:#fff;transition:.2s ease;text-decoration:none;}
.mecano-system-card:hover{transform:translateY(-2px);box-shadow:0 16px 42px rgba(0,0,0,.07);border-color:rgba(233,75,10,.3);}
.mecano-system-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#111;}
.mecano-system-media img{width:100%;height:100%;object-fit:cover;display:block;}
.mecano-system-play{position:absolute;right:14px;bottom:14px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(10,12,16,.78);color:#fff;border:1px solid rgba(255,255,255,.4);font-size:13px;line-height:1;transition:.2s ease;}
.mecano-system-card:hover .mecano-system-play{background:var(--orange);border-color:var(--orange);color:#fff;}
.mecano-system-copy strong{display:block;font-size:17px;line-height:1.18;text-transform:uppercase;margin-bottom:8px;}
.mecano-system-copy small{display:block;color:var(--muted);font-size:13.5px;line-height:1.5;}
.pannelli-highlight-mark-image{padding:0!important;overflow:hidden;background:transparent!important;}
.pannelli-highlight-mark-image img{width:100%;height:100%;object-fit:cover;}
@media(max-width:1100px){.mecano-system-card{grid-template-columns:1fr}.mecano-system-copy strong{font-size:16px}}
@media(max-width:620px){.mecano-system-section{padding:12px 0 6px}.mecano-system-heading{margin-bottom:14px}.mecano-system-copy strong{font-size:15px}.mecano-system-copy small{font-size:12.5px}.mecano-system-play{width:40px;height:40px;right:12px;bottom:12px}}


/* Mecano Lab V46.2 - copertine video ingrandibili e play dedicato */
.mecano-system-card{cursor:default;}
.mecano-system-media{position:relative;}
.mecano-system-zoom{display:block;width:100%;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in;overflow:hidden;}
.mecano-system-zoom img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .22s ease;}
.mecano-system-zoom:hover img{transform:scale(1.015);}
.mecano-system-play{right:14px!important;bottom:14px!important;left:auto!important;background:rgba(5,7,10,.84)!important;border:1px solid rgba(255,255,255,.48)!important;color:#fff!important;text-decoration:none!important;z-index:4;}
.mecano-system-play span{display:block;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid #fff;margin-left:3px;}
.mecano-system-play:hover{background:var(--orange)!important;border-color:var(--orange)!important;}
.mecano-system-card:hover .mecano-system-play{background:rgba(5,7,10,.84)!important;border-color:rgba(255,255,255,.48)!important;}
.mecano-system-card:hover .mecano-system-play:hover{background:var(--orange)!important;border-color:var(--orange)!important;}

.mecano-system-lightbox{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(3,5,8,.94);z-index:2147483600;}
.mecano-system-lightbox.is-open{display:flex;}
.mecano-system-lightbox img{max-width:min(1400px,94vw);max-height:90vh;width:auto;height:auto;object-fit:contain;box-shadow:0 30px 90px rgba(0,0,0,.5);}
.mecano-system-lightbox-close{position:absolute;top:18px;right:22px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.42);color:#fff;font-size:30px;line-height:1;cursor:pointer;display:grid;place-items:center;}
.mecano-system-lightbox-close:hover{background:var(--orange);border-color:var(--orange);}
body.mecano-lightbox-open{overflow:hidden;}

@media(max-width:620px){
  .mecano-system-grid{gap:10px!important;}
  .mecano-system-card{padding:7px!important;gap:9px!important;}
  .mecano-system-media{width:100%;}
  .mecano-system-play{width:36px!important;height:36px!important;right:8px!important;bottom:8px!important;}
  .mecano-system-play span{border-top-width:6px;border-bottom-width:6px;border-left-width:10px;}
  .mecano-system-copy strong{font-size:13.5px!important;line-height:1.15!important;}
  .mecano-system-copy small{font-size:11.5px!important;line-height:1.35!important;}
  .mecano-system-lightbox{padding:12px;}
  .mecano-system-lightbox-close{top:10px;right:10px;width:42px;height:42px;font-size:26px;}
}


/* Mecano Lab V46.3 - hero più compatta e titoli video cliccabili */
.hero,
.hero-inner{
  min-height:0!important;
}
.hero-inner{
  padding-bottom:44px!important;
}
.mecano-system-title-link{
  display:block;
  color:var(--ink);
  font-size:17px;
  line-height:1.18;
  font-weight:800;
  text-transform:uppercase;
  margin-bottom:8px;
  transition:color .2s ease;
}
.mecano-system-title-link:hover,
.mecano-system-title-link:focus{
  color:var(--orange);
}

@media(min-width:981px){
  .hero-inner{
    padding-top:100px!important;
    padding-bottom:38px!important;
  }
  .hero-dots{
    margin-top:46px!important;
  }
}

@media(max-width:980px){
  .hero-inner{
    padding-bottom:38px!important;
  }
}

@media(max-width:620px){
  .hero-inner{
    padding-top:82px!important;
    padding-bottom:34px!important;
  }
  .hero-dots{
    margin-top:34px!important;
  }
  .mecano-system-title-link{
    font-size:13.5px!important;
    line-height:1.15!important;
  }
}


/* Mecano Lab V46 Finale 3 - allineamento vantaggi */
.features{align-items:stretch!important;}
.feature{
  display:grid!important;
  grid-template-rows:56px minmax(34px,auto) auto!important;
  align-content:start!important;
  text-align:center!important;
}
.feature svg,
.feature .feature-icon-image{
  width:44px!important;
  height:44px!important;
  margin:0 auto!important;
  align-self:center!important;
  object-fit:contain!important;
}
.feature strong{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:34px!important;
  margin:0!important;
  line-height:1.18!important;
}
.feature p{margin:8px 0 0!important;}
@media(max-width:620px){
  .feature{grid-template-rows:52px minmax(32px,auto) auto!important;}
  .feature svg,.feature .feature-icon-image{width:42px!important;height:42px!important;}
}


/* Mecano Lab V47 - form, vantaggi e pagine prodotto */
.request-form select[name="categoria"]{
  font-size:13.5px!important;
  letter-spacing:-.012em!important;
  padding-right:30px!important;
}
@media(max-width:980px){
  .request-grid>.request-form,
  .request-grid>.form-success,
  .request-grid>.form-error{order:1!important;}
  .request-grid>.request-info{order:2!important;}
}

/* Allineamento rigoroso dei quattro vantaggi */
.features{align-items:stretch!important;}
.feature{
  display:grid!important;
  grid-template-rows:56px 42px minmax(0,auto)!important;
  align-content:start!important;
}
.feature svg,.feature .feature-icon-image{
  width:44px!important;
  height:44px!important;
  margin:0 auto!important;
  align-self:center!important;
  object-fit:contain!important;
}
.feature strong{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  line-height:1.15!important;
}
.feature p{margin:8px 0 0!important;}

/* Pagine categoria prodotto V47 */
.product-page-description{
  max-width:920px;
  margin:8px 0 44px;
}
.product-page-description p,
.product-page-detail-copy p{
  margin:0;
  color:#4d5662;
  font-size:17px;
  line-height:1.8;
}
.product-page-detail{
  display:grid;
  grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);
  gap:54px;
  align-items:center;
  margin:42px 0;
  padding:34px 0;
  border-top:1px solid var(--line);
}
.product-page-detail.is-reverse figure{order:2;}
.product-page-detail.is-reverse .product-page-detail-copy{order:1;}
.product-page-detail figure{margin:0;}
.product-page-detail figure img{
  width:100%;
  max-height:470px;
  object-fit:cover;
  box-shadow:0 18px 46px rgba(0,0,0,.1);
}
.product-page-editor-content{margin:42px 0;}
.product-page-bottom-cta{
  display:flex;
  justify-content:center;
  padding:38px 0 8px;
}
@media(max-width:980px){
  .product-page-detail,
  .product-page-detail.is-reverse{
    grid-template-columns:1fr;
    gap:22px;
    margin:28px 0;
    padding:26px 0;
  }
  .product-page-detail.is-reverse figure,
  .product-page-detail.is-reverse .product-page-detail-copy{order:initial;}
}
@media(max-width:620px){
  .feature{grid-template-rows:52px 38px minmax(0,auto)!important;}
  .feature strong{height:38px!important;min-height:38px!important;}
  .request-form select[name="categoria"]{font-size:14px!important;letter-spacing:0!important;}
  .product-page-description p,.product-page-detail-copy p{font-size:16px;line-height:1.7;}
}


/* Mecano Lab V48 - ordine mobile form Su misura e upload sicuro */
.request-grid{
  grid-template-areas:
    "info form"
    "contact form";
}
.request-grid>.request-info{grid-area:info;}
.request-grid>.request-form,
.request-grid>.form-success,
.request-grid>.form-error{grid-area:form;}
.request-grid>.request-contact-mini{grid-area:contact;margin-top:0;}
.request-form input[type="file"]{font-size:13px;}
.request-form .form-note{font-size:12px;line-height:1.45;color:var(--muted);}
@media(max-width:980px){
  .request-grid{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "info"
      "form"
      "contact"!important;
  }
  .request-grid>.request-info,
  .request-grid>.request-form,
  .request-grid>.form-success,
  .request-grid>.form-error,
  .request-grid>.request-contact-mini{order:initial!important;}
  .request-grid>.request-contact-mini{margin-top:0!important;}
}


/* Mecano Lab V49 - box contatto sotto checklist desktop, ultimo su mobile */
.request-grid{
  grid-template-columns:.85fr 1.15fr!important;
  grid-template-areas:none!important;
  align-items:start!important;
}
.request-side{min-width:0;}
.request-side .request-contact-mini{margin-top:34px;}
.request-grid>.request-form,
.request-grid>.form-success,
.request-grid>.form-error{min-width:0;}
@media(max-width:980px){
  .request-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:28px!important;
  }
  .request-side{display:contents!important;}
  .request-info{order:1!important;}
  .request-grid>.request-form,
  .request-grid>.form-success,
  .request-grid>.form-error{order:2!important;width:100%!important;}
  .request-contact-mini{order:3!important;width:100%!important;margin-top:0!important;}
}

/* Mecano Lab V50 - correzione definitiva impaginazione Su misura desktop */
@media(min-width:981px){
  .request-grid{
    display:grid!important;
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;
    grid-template-areas:none!important;
    gap:54px!important;
    align-items:start!important;
  }
  .request-grid>.request-side{
    grid-column:1!important;
    grid-row:1!important;
    grid-area:auto!important;
    width:100%!important;
    min-width:0!important;
    align-self:start!important;
  }
  .request-grid>.request-form,
  .request-grid>.form-success,
  .request-grid>.form-error{
    grid-column:2!important;
    grid-row:1!important;
    grid-area:auto!important;
    width:100%!important;
    min-width:0!important;
    align-self:start!important;
    margin:0!important;
  }
  .request-side .request-info,
  .request-side .request-contact-mini{
    width:100%!important;
    max-width:none!important;
  }
  .request-side .request-contact-mini{
    margin-top:34px!important;
  }
}

/* Mecano Lab V50 - immagini aggiuntive Azienda */
.company-free-content{margin-bottom:0!important;}
.company-extra-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  padding:12px 0 72px;
}
.company-extra-gallery.is-single{grid-template-columns:minmax(0,760px);}
.company-extra-gallery figure{margin:0;}
.company-extra-gallery img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  box-shadow:0 22px 60px rgba(0,0,0,.12);
}
.company-extra-gallery figcaption{
  margin-top:10px;
  color:#69717d;
  font-size:13px;
  line-height:1.5;
}

/* Mecano Lab V50 - Team opzionale */
.company-team-section{
  padding:72px 0 84px;
  background:#f6f7f8;
}
.company-team-heading{max-width:760px;margin-bottom:34px;}
.company-team-heading h2{
  margin:0;
  font-size:clamp(32px,4vw,48px);
  line-height:1.02;
  text-transform:uppercase;
}
.company-team-heading p{
  margin:16px 0 0;
  color:#5d6570;
  font-size:17px;
  line-height:1.7;
}
.company-team-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.company-team-card{
  background:#fff;
  border:1px solid #e5e8eb;
  box-shadow:0 16px 42px rgba(0,0,0,.06);
}
.company-team-card>img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
}
.company-team-copy{padding:22px;}
.company-team-copy h3{
  margin:0 0 6px;
  font-size:21px;
  line-height:1.15;
  text-transform:uppercase;
}
.company-team-copy>strong{
  display:block;
  color:var(--orange);
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.company-team-copy p{
  margin:14px 0 0;
  color:#626b76;
  font-size:14px;
  line-height:1.6;
}
.company-team-contacts{
  display:grid;
  gap:5px;
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid #eceef0;
}
.company-team-contacts a{
  color:#20262d;
  font-size:13px;
  font-weight:700;
  overflow-wrap:anywhere;
}
.company-team-contacts a:hover{color:var(--orange);}
.company-team-card.no-image{display:flex;align-items:stretch;}
.company-team-card.no-image .company-team-copy{width:100%;}

@media(max-width:980px){
  .company-extra-gallery{padding:6px 0 52px;}
  .company-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:620px){
  .company-extra-gallery{grid-template-columns:1fr;gap:18px;padding-bottom:42px;}
  .company-team-section{padding:52px 0 60px;}
  .company-team-grid{grid-template-columns:1fr;}
}

/* Mecano Lab V51 - collegamenti nei testi e galleria Azienda */
.ml-inline-link{
  color:var(--orange);
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .18s ease, opacity .18s ease;
}
.ml-inline-link:hover{color:#b93805;}

@media(min-width:981px){
  .company-gallery{
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    gap:28px;
    padding-top:8px;
    align-items:start;
  }
  .company-gallery img:first-child{
    width:94%;
    justify-self:start;
  }
  .company-gallery img:nth-child(2){
    width:92%;
    justify-self:end;
    margin-top:112px;
  }
}


/* Mecano Lab V52 - galleria Azienda desktop ordinata */
@media(min-width:981px){
  .company-story{
    grid-template-columns:minmax(0,.92fr) minmax(480px,1.08fr)!important;
    gap:64px!important;
    align-items:start!important;
  }
  .company-gallery{
    grid-template-columns:1fr!important;
    gap:22px!important;
    padding-top:8px!important;
    align-content:start!important;
  }
  .company-gallery img:first-child,
  .company-gallery img:nth-child(2){
    width:100%!important;
    max-width:none!important;
    justify-self:stretch!important;
    margin-top:0!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
  }
}


/* Mecano Lab V53 - Azienda più compatta su desktop e ordine Hero 1-7 */
@media(min-width:981px){
  .company-story{
    padding-top:54px!important;
    padding-bottom:18px!important;
    margin-bottom:0!important;
  }
  .company-gallery{
    gap:18px!important;
  }
  .company-gallery img:first-child,
  .company-gallery img:nth-child(2){
    height:clamp(190px,16vw,235px)!important;
    aspect-ratio:auto!important;
    object-fit:cover!important;
  }
  .company-free-content{
    padding-top:22px!important;
    padding-bottom:44px!important;
    margin-top:0!important;
  }
}


/* Mecano Lab V54 - ordine hero deterministico 1→7 */
.hero-slides{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;}
.hero-slides .hero-bg-layer{position:absolute;inset:0;}


/* Mecano Lab V56 - hero ordinata e immagini timeline 3/4 */
.hero-slides .hero-bg-layer{z-index:0;}
.hero-slides .hero-bg-layer.is-front{z-index:1;}
.hero-dots .hero-dot{order:initial!important;}
.company-gallery .company-gallery-extra{margin:0;}
.company-gallery .company-gallery-extra img{
  display:block;
  width:100%;
  object-fit:cover;
  box-shadow:0 22px 60px rgba(0,0,0,.12);
}
.company-gallery .company-gallery-extra figcaption{
  margin-top:8px;
  color:#69717d;
  font-size:13px;
  line-height:1.45;
}
@media(min-width:981px){
  .company-gallery .company-gallery-extra img{
    height:clamp(190px,16vw,235px)!important;
    aspect-ratio:auto!important;
  }
}
@media(max-width:980px){
  .company-gallery .company-gallery-extra img{width:100%;}
}


/* Mecano Lab V65 - rifinitura pagina prodotto WooCommerce */
.single-product .woocommerce-page-content{
  padding-top:120px;
}

.single-product .woocommerce div.product{
  padding-top:0;
}

.single-product .woocommerce div.product .product_title{
  margin:0 0 18px;
  max-width:none;
  font-size:clamp(34px,3.6vw,54px);
  line-height:1.02;
  letter-spacing:-.04em;
  text-transform:none;
  overflow-wrap:anywhere;
}

.single-product .woocommerce div.product .summary{
  padding-top:6px;
}

.single-product .woocommerce div.product p.price,
.single-product .woocommerce div.product span.price{
  margin:0 0 22px;
  font-size:clamp(22px,2vw,30px);
  line-height:1.2;
  font-weight:900;
}

.single-product .woocommerce div.product form.cart{
  margin-bottom:24px;
}

.single-product .woocommerce div.product form.cart .variations{
  width:100%;
  margin:0 0 20px;
  border:0;
}

.single-product .woocommerce div.product form.cart .variations tbody{
  display:block;
  width:100%;
}

.single-product .woocommerce div.product form.cart .variations tr{
  display:grid;
  grid-template-columns:minmax(145px,.8fr) minmax(190px,1.2fr);
  align-items:center;
  gap:16px;
  width:100%;
  margin:0 0 13px;
}

.single-product .woocommerce div.product form.cart .variations th,
.single-product .woocommerce div.product form.cart .variations td{
  display:block;
  width:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  text-align:left!important;
}

.single-product .woocommerce div.product form.cart .variations label{
  display:block;
  margin:0;
  font-size:14px;
  line-height:1.35;
  font-weight:850;
}

.single-product .woocommerce div.product form.cart .variations select{
  width:100%;
  min-height:44px;
  margin:0;
  padding:8px 36px 8px 11px;
  border:1px solid #aeb4ba;
  border-radius:0;
  background:#fff;
  font:inherit;
}

.single-product .woocommerce div.product form.cart .reset_variations{
  display:inline-block;
  margin-top:7px;
  font-size:13px;
}

.single-product .woocommerce div.product .single_variation_wrap{
  margin-top:8px;
}

.single-product .woocommerce div.product .woocommerce-variation-price{
  margin:0 0 18px;
}

.single-product .woocommerce div.product form.cart .woocommerce-variation-add-to-cart{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}

.single-product .woocommerce div.product form.cart div.quantity{
  float:none;
  margin:0;
}

.single-product .woocommerce div.product form.cart .quantity .qty{
  width:70px;
  min-height:46px;
  border:1px solid #aeb4ba;
}

.single-product .woocommerce div.product .product_meta{
  margin-top:22px;
  font-size:14px;
  line-height:1.6;
}

.single-product .woocommerce div.product .woocommerce-tabs{
  clear:both;
  padding-top:24px;
}

.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{
  margin:0 0 30px!important;
  padding:0!important;
}

.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li{
  border-radius:0!important;
}

.single-product .woocommerce div.product .woocommerce-tabs .panel{
  margin:0!important;
}

.single-product .woocommerce div.product .woocommerce-Tabs-panel{
  font-size:17px;
  line-height:1.65;
}

.single-product .woocommerce div.product .woocommerce-Tabs-panel h2{
  margin:0 0 22px;
  max-width:none;
  font-size:clamp(32px,3.2vw,48px);
  line-height:1.04;
  letter-spacing:-.035em;
}

.single-product .woocommerce div.product .woocommerce-Tabs-panel h3{
  margin:32px 0 16px;
  font-size:clamp(24px,2.3vw,34px);
  line-height:1.1;
}

.single-product .woocommerce div.product .woocommerce-Tabs-panel p{
  margin:0 0 18px;
}

.single-product .woocommerce div.product .woocommerce-Tabs-panel img{
  max-width:100%;
  height:auto;
}

.single-product .woocommerce div.product .woocommerce-Tabs-panel table{
  font-size:16px;
  line-height:1.45;
}

.single-product .mecano-check-list{
  list-style:none;
  display:grid;
  gap:16px;
  margin:24px 0 28px;
  padding:0;
}

.single-product .mecano-check-list li{
  position:relative;
  margin:0;
  padding:0 0 0 38px;
}

.single-product .mecano-check-list li::before{
  content:"\2713";
  position:absolute;
  top:.02em;
  left:0;
  color:var(--orange);
  font-size:25px;
  line-height:1;
  font-weight:900;
}

@media (max-width:768px){
  .single-product .woocommerce-page-content{
    padding-top:102px;
  }

  .single-product .woocommerce div.product .product_title{
    font-size:34px;
    line-height:1.04;
  }

  .single-product .woocommerce div.product form.cart .variations tr{
    grid-template-columns:1fr;
    gap:6px;
    margin-bottom:16px;
  }

  .single-product .woocommerce div.product .woocommerce-Tabs-panel{
    font-size:16px;
  }

  .single-product .woocommerce div.product .woocommerce-Tabs-panel table{
    font-size:14px;
  }
}


/* Mecano Lab V66 - punto focale Hero distinto per tablet e mobile */
@media (max-width:980px){
  .hero-bg-layer{
    background-position:var(--hero-tablet-x, 50%) center !important;
  }
}
@media (max-width:620px){
  .hero-bg-layer{
    background-position:var(--hero-mobile-x, 50%) center !important;
  }
}


/* Mecano Lab V67 - layout definitivo prodotto WooCommerce */
body.single-product .woocommerce-page-content{
  padding:126px 0 82px!important;
}

body.single-product .woocommerce-page-content > .container{
  width:min(1220px,calc(100% - 40px));
  max-width:1220px;
}

body.single-product .woocommerce-page-content .woocommerce div.product{
  padding-top:18px!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .summary h1.product_title,
.woocommerce-page-content .woocommerce div.product .summary h1.product_title{
  margin:0 0 18px!important;
  max-width:520px!important;
  font-size:clamp(30px,2.35vw,40px)!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .summary{
  padding-top:14px!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product p.price,
body.single-product .woocommerce-page-content .woocommerce div.product span.price{
  margin:0 0 24px!important;
  font-size:24px!important;
  line-height:1.15!important;
  font-weight:900!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations tr{
  grid-template-columns:92px minmax(0,1fr)!important;
  gap:12px!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations label{
  font-size:14px!important;
  line-height:1.25!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations select{
  min-height:42px!important;
  font-size:14px!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product form.cart .woocommerce-variation-add-to-cart{
  gap:12px!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .product_meta{
  margin-top:18px!important;
  padding-top:16px;
  border-top:1px solid #e3e6e9;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs{
  padding-top:58px!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs{
  display:flex;
  flex-wrap:wrap;
  gap:0;
  border-bottom:1px solid #dfe2e5;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs::before{
  display:none!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-bottom:3px solid transparent!important;
  background:transparent!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li::after{
  display:none!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li a{
  padding:13px 18px!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  border-bottom-color:var(--orange)!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs .panel{
  padding-top:6px;
}

@media (min-width:981px){
  body.single-product .woocommerce-page-content .woocommerce div.product div.images{
    float:left!important;
    width:53%!important;
    margin:0 0 52px!important;
  }

  body.single-product .woocommerce-page-content .woocommerce div.product div.summary{
    float:right!important;
    width:42.5%!important;
    margin:0 0 52px!important;
  }
}

@media (max-width:980px){
  body.single-product .woocommerce-page-content{
    padding-top:106px!important;
  }

  body.single-product .woocommerce-page-content .woocommerce div.product .summary h1.product_title,
  .woocommerce-page-content .woocommerce div.product .summary h1.product_title{
    max-width:none!important;
    font-size:clamp(30px,5.8vw,40px)!important;
  }
}

@media (max-width:620px){
  body.single-product .woocommerce-page-content > .container{
    width:calc(100% - 28px);
  }

  body.single-product .woocommerce-page-content .woocommerce div.product .summary h1.product_title,
  .woocommerce-page-content .woocommerce div.product .summary h1.product_title{
    font-size:30px!important;
    line-height:1.08!important;
  }

  body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations tr{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }

  body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li{
    width:100%;
  }

  body.single-product .woocommerce-page-content .woocommerce div.product .woocommerce-tabs ul.tabs li a{
    display:block!important;
    width:100%;
    padding:11px 4px!important;
  }
}


/* ============================================================
   MECANO LAB V72 - SCHEDA PRODOTTO ISOLATA E STABILE
   ============================================================ */
body.single-product .woocommerce-page-content{
  padding:122px 0 84px!important;
}
body.single-product .woocommerce-page-content>.container{
  width:min(1240px,calc(100% - 40px))!important;
  max-width:1240px!important;
}
.mecano-product-shell{
  --mecano-orange:#f15a13;
  --mecano-ink:#101820;
  --mecano-muted:#667085;
  --mecano-border:#e4e8ed;
  --mecano-soft:#f6f7f9;
}
.mecano-product-shell::after{content:"";display:block;clear:both;}
.mecano-product-top{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr)!important;
  gap:42px!important;
  align-items:start!important;
}
.mecano-product-gallery,
.mecano-product-buy{
  min-width:0!important;
}
.mecano-product-gallery .woocommerce-product-gallery,
.mecano-product-gallery .woocommerce-product-gallery.images{
  float:none!important;
  width:100%!important;
  margin:0!important;
  padding:16px!important;
  overflow:hidden!important;
  border:1px solid var(--mecano-border)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(16,24,32,.07)!important;
}
.mecano-product-gallery .woocommerce-product-gallery__wrapper,
.mecano-product-gallery .woocommerce-product-gallery__image,
.mecano-product-gallery img{
  border-radius:15px!important;
}
.mecano-product-buy .summary,
.mecano-product-buy .summary.entry-summary{
  float:none!important;
  width:100%!important;
  margin:0!important;
  padding:30px!important;
  border:1px solid var(--mecano-border)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 44px rgba(16,24,32,.07)!important;
}
.mecano-product-buy h1.product_title,
.mecano-product-buy h1.mecano-product-title{
  margin:0 0 16px!important;
  max-width:100%!important;
  font-size:clamp(34px,3.2vw,46px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
.mecano-product-buy p.price,
.mecano-product-buy span.price{
  display:block!important;
  margin:0 0 22px!important;
  padding:0 0 18px!important;
  border-bottom:1px solid var(--mecano-border)!important;
  color:var(--mecano-ink)!important;
  font-size:28px!important;
  line-height:1.1!important;
  font-weight:900!important;
}
.mecano-product-buy form.cart{
  margin:0!important;
}
.mecano-product-buy table.variations{
  display:block!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:16px!important;
  border:1px solid #e8ebef!important;
  border-radius:16px!important;
  background:var(--mecano-soft)!important;
}
.mecano-product-buy table.variations tbody{
  display:grid!important;
  gap:12px!important;
}
.mecano-product-buy table.variations tr{
  display:grid!important;
  grid-template-columns:92px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  margin:0!important;
}
.mecano-product-buy table.variations th,
.mecano-product-buy table.variations td{
  display:block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  text-align:left!important;
}
.mecano-product-buy table.variations th.label,
.mecano-product-buy table.variations .label{
  color:var(--mecano-ink)!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-transform:uppercase!important;
}
.mecano-product-buy table.variations select{
  display:block!important;
  width:100%!important;
  min-height:46px!important;
  margin:0!important;
  padding:0 42px 0 13px!important;
  border:1px solid #cfd6de!important;
  border-radius:10px!important;
  background-color:#fff!important;
  color:var(--mecano-ink)!important;
  font-size:14px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.mecano-product-buy table.variations select:hover,
.mecano-product-buy table.variations select:focus{
  border-color:var(--mecano-orange)!important;
  box-shadow:0 0 0 3px rgba(241,90,19,.10)!important;
  outline:none!important;
}
.mecano-product-buy .reset_variations{
  display:inline-block!important;
  margin:8px 0 0!important;
  color:var(--mecano-orange)!important;
  font-size:12px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.mecano-product-buy .single_variation_wrap{
  margin-top:0!important;
}
.mecano-product-buy .woocommerce-variation-price{
  margin:0 0 14px!important;
}
.mecano-product-buy .woocommerce-variation-add-to-cart,
.mecano-product-buy .variations_button{
  display:grid!important;
  grid-template-columns:74px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:center!important;
  width:100%!important;
  margin-top:0!important;
}
.mecano-product-buy .quantity{
  float:none!important;
  width:74px!important;
  margin:0!important;
}
.mecano-product-buy .quantity .qty{
  width:74px!important;
  height:52px!important;
  min-height:52px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #cfd6de!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--mecano-ink)!important;
  font-size:16px!important;
  font-weight:800!important;
  text-align:center!important;
}
.mecano-product-buy .single_add_to_cart_button,
.mecano-product-buy button.single_add_to_cart_button{
  width:100%!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 22px!important;
  border:0!important;
  border-radius:11px!important;
  background:var(--mecano-orange)!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
  box-shadow:0 12px 24px rgba(241,90,19,.22)!important;
  transition:transform .18s ease,background .18s ease,box-shadow .18s ease!important;
}
.mecano-product-buy .single_add_to_cart_button:hover,
.mecano-product-buy .single_add_to_cart_button:focus{
  transform:translateY(-1px)!important;
  background:#d94d0b!important;
  box-shadow:0 16px 28px rgba(241,90,19,.28)!important;
}
/* Nasconde solo il pulsante WhatsApp interno alla scheda, non il widget flottante. */
.mecano-product-buy [class*="whatsapp"],
.mecano-product-buy [class*="WhatsApp"],
.mecano-product-buy [class*="nta-wa"],
.mecano-product-buy [class*="wa__btn"],
.mecano-product-buy [id*="whatsapp"]{
  display:none!important;
}
.mecano-product-buy a[href*="richiedi"],
.mecano-product-buy a[href*="su-misura"]{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:48px!important;
  margin:18px 0 0!important;
  padding:0 18px!important;
  border-radius:11px!important;
  background:var(--mecano-ink)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.025em!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
}
.mecano-product-buy a[href*="richiedi"]:hover,
.mecano-product-buy a[href*="su-misura"]:hover{
  background:#28323c!important;
}
.mecano-product-buy .product_meta{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin:16px 0 0!important;
  padding:16px 0 0!important;
  border-top:1px solid var(--mecano-border)!important;
  color:var(--mecano-muted)!important;
  font-size:12px!important;
  line-height:1.35!important;
}
.mecano-product-buy .product_meta>span{
  display:block!important;
  min-width:0!important;
  padding:10px 11px!important;
  border:1px solid var(--mecano-border)!important;
  border-radius:10px!important;
  background:var(--mecano-soft)!important;
}
.mecano-product-buy .product_meta .sku,
.mecano-product-buy .product_meta a{
  color:var(--mecano-orange)!important;
  font-weight:900!important;
  text-decoration:none!important;
}
.mecano-product-buy .product_meta a:hover{text-decoration:underline!important;}
.mecano-product-details{
  margin-top:48px!important;
}
.mecano-product-details .woocommerce-tabs{
  float:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.mecano-product-details .woocommerce-tabs ul.tabs{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0 0 16px!important;
  padding:0!important;
  border:0!important;
}
.mecano-product-details .woocommerce-tabs ul.tabs::before,
.mecano-product-details .woocommerce-tabs ul.tabs li::before,
.mecano-product-details .woocommerce-tabs ul.tabs li::after{
  display:none!important;
}
.mecano-product-details .woocommerce-tabs ul.tabs li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.mecano-product-details .woocommerce-tabs ul.tabs li a{
  display:flex!important;
  align-items:center!important;
  min-height:44px!important;
  padding:0 15px!important;
  border:1px solid var(--mecano-border)!important;
  border-radius:10px!important;
  background:var(--mecano-soft)!important;
  color:var(--mecano-ink)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
}
.mecano-product-details .woocommerce-tabs ul.tabs li.active a,
.mecano-product-details .woocommerce-tabs ul.tabs li a:hover{
  border-color:var(--mecano-orange)!important;
  background:#fff!important;
  color:var(--mecano-ink)!important;
}
.mecano-product-details .woocommerce-tabs .panel{
  margin:0!important;
  padding:30px!important;
  border:1px solid var(--mecano-border)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(16,24,32,.045)!important;
}
.mecano-product-details .woocommerce-tabs .panel h2:first-child{
  margin:0 0 18px!important;
  font-size:clamp(32px,3vw,48px)!important;
  line-height:1!important;
  letter-spacing:-.03em!important;
}
.mecano-product-details .mecano-check-list{
  margin:24px 0 28px!important;
}
@media(max-width:980px){
  body.single-product .woocommerce-page-content{padding-top:104px!important;}
  .mecano-product-top{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }
  .mecano-product-buy h1.product_title,
  .mecano-product-buy h1.mecano-product-title{
    font-size:38px!important;
  }
}
@media(max-width:620px){
  body.single-product .woocommerce-page-content>.container{
    width:calc(100% - 28px)!important;
  }
  .mecano-product-gallery .woocommerce-product-gallery,
  .mecano-product-gallery .woocommerce-product-gallery.images{
    padding:10px!important;
    border-radius:16px!important;
  }
  .mecano-product-buy .summary,
  .mecano-product-buy .summary.entry-summary{
    padding:20px!important;
    border-radius:16px!important;
  }
  .mecano-product-buy h1.product_title,
  .mecano-product-buy h1.mecano-product-title{
    font-size:31px!important;
  }
  .mecano-product-buy p.price,
  .mecano-product-buy span.price{
    font-size:24px!important;
  }
  .mecano-product-buy table.variations tr{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  .mecano-product-buy .woocommerce-variation-add-to-cart,
  .mecano-product-buy .variations_button{
    grid-template-columns:68px minmax(0,1fr)!important;
  }
  .mecano-product-buy .quantity,
  .mecano-product-buy .quantity .qty{
    width:68px!important;
  }
  .mecano-product-buy .product_meta{
    grid-template-columns:1fr!important;
  }
  .mecano-product-details .woocommerce-tabs ul.tabs{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .mecano-product-details .woocommerce-tabs ul.tabs li a{
    justify-content:center!important;
  }
  .mecano-product-details .woocommerce-tabs .panel{
    padding:20px 16px!important;
    border-radius:15px!important;
  }
}

/* ============================================================
   MECANO LAB V74 - SPAZIATURA SCHEDA PRODOTTO
   I tre wrapper del template WooCommerce sono elementi <section>
   e non devono ereditare il padding globale delle sezioni del sito.
   ============================================================ */
body.single-product .mecano-product-top > section.mecano-product-gallery,
body.single-product .mecano-product-top > section.mecano-product-buy,
body.single-product section.mecano-product-details{
  padding-top:0!important;
  padding-bottom:0!important;
}
body.single-product section.mecano-product-details{
  margin-top:40px!important;
}

/* ============================================================
   MECANO LAB V75 - PAGINE INFORMATIVE
   Gerarchia tipografica più adatta ai testi legali/informativi,
   senza modificare categorie, portfolio, azienda o homepage.
   ============================================================ */
body.page .generic-page{
  padding-top:122px!important;
  padding-bottom:78px!important;
}
body.page .generic-page .wp-editable-content{
  margin-top:0!important;
}
body.page .generic-page .eyebrow{
  margin-bottom:16px!important;
}
body.page .generic-page h1{
  font-size:clamp(40px,4.1vw,60px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  margin:8px 0 30px!important;
  max-width:900px!important;
}
body.page .generic-page h2{
  font-size:clamp(28px,2.8vw,38px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:34px 0 14px!important;
}
body.page .generic-page h3{
  font-size:clamp(22px,2.1vw,29px)!important;
  line-height:1.12!important;
  letter-spacing:-.025em!important;
  margin:28px 0 12px!important;
}
body.page .generic-page h4{
  font-size:20px!important;
  line-height:1.2!important;
  margin:24px 0 10px!important;
}

@media(max-width:980px){
  body.page .generic-page{
    padding-top:108px!important;
    padding-bottom:62px!important;
  }
  body.page .generic-page h1{
    font-size:44px!important;
  }
  body.page .generic-page h2{
    font-size:32px!important;
  }
}

@media(max-width:620px){
  body.page .generic-page{
    padding-top:96px!important;
    padding-bottom:48px!important;
  }
  body.page .generic-page .eyebrow{
    margin-bottom:13px!important;
  }
  body.page .generic-page h1{
    font-size:36px!important;
    line-height:1!important;
    margin-bottom:24px!important;
  }
  body.page .generic-page h2{
    font-size:28px!important;
    margin-top:30px!important;
  }
  body.page .generic-page h3{
    font-size:23px!important;
  }
}



/* ============================================================
   MECANO LAB V77/V80 - scheda prodotto semplice generata dal tema
   ============================================================ */
.single-product .mecano-product-simple-content{
  margin:0 0 28px;
}
.single-product .mecano-product-simple-intro,
.single-product .mecano-product-simple-after{
  max-width:100%;
}
.single-product .mecano-product-section-title{
  margin:34px 0 14px!important;
  font-size:clamp(23px,2.1vw,32px)!important;
  line-height:1.12!important;
  letter-spacing:-.02em!important;
}
.single-product .mecano-product-table-wrap{
  width:100%;
  overflow-x:auto;
  margin:18px 0 28px;
  border-radius:0;
}
.single-product table.mecano-product-data-table{
  width:100%;
  min-width:560px;
  border-collapse:collapse;
  table-layout:fixed;
  border:1px solid #b5b5b5;
  font-size:16px;
  line-height:1.35;
}
.single-product table.mecano-product-data-table th,
.single-product table.mecano-product-data-table td{
  padding:10px 12px;
  border:1px solid #b5b5b5;
  vertical-align:middle;
  text-align:center;
}
.single-product table.mecano-product-data-table thead th{
  background:#eeeeee;
  font-weight:800;
}
.single-product table.mecano-product-data-table tbody tr:nth-child(even){
  background:#fafafa;
}
.single-product table.mecano-product-spec-table th{
  width:34%;
  text-align:left;
  font-weight:800;
}
.single-product table.mecano-product-spec-table td{
  width:66%;
  text-align:left;
}
.single-product .mecano-product-note{
  margin:22px 0 28px;
  padding:16px 18px;
  border-left:4px solid var(--orange, #f15a13);
  border-radius:12px;
  background:#f7f8fa;
  color:#2c3440;
}
.single-product .mecano-product-note p{
  display:inline;
  margin:0!important;
}
.single-product .mecano-product-note-label{
  font-weight:800;
}

.single-product .mecano-product-details .woocommerce-Tabs-panel--description img,
.single-product .mecano-product-details .woocommerce-Tabs-panel--description a img{
  cursor:zoom-in;
}
@media(max-width:620px){
  .single-product table.mecano-product-data-table{
    min-width:520px;
    font-size:14px;
  }
  .single-product table.mecano-product-data-table th,
  .single-product table.mecano-product-data-table td{
    padding:9px 10px;
  }
}


/* ============================================================
   MECANO LAB V78 - immagini tecniche dal box prodotto semplice
   ============================================================ */
.single-product .mecano-product-tech-images{
  margin:24px 0 30px;
}
.single-product .mecano-product-tech-images a.mecano-description-lightbox{
  margin:24px auto;
}
.single-product .mecano-product-tech-image{
  display:block;
  max-width:100%;
  height:auto;
  margin:0 auto!important;
}

/* ============================================================
   MECANO LAB V81 - ANTEPRIME PRODOTTO UNIFORMI
   Uniforma le card WooCommerce usate in homepage, categorie e shop.
   Il pulsante “Richiedi variante o su misura” nelle anteprime è ora
   opzionale da Personalizza > WooCommerce e disattivato di default.
   ============================================================ */
.woocommerce ul.products.ml-ready-products-grid,
.woocommerce-page ul.products.ml-ready-products-grid,
ul.products.ml-ready-products-grid{
  display:grid!important;
  gap:24px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  float:none!important;
  clear:both!important;
}
.woocommerce ul.products.ml-ready-products-grid::before,
.woocommerce ul.products.ml-ready-products-grid::after,
.woocommerce-page ul.products.ml-ready-products-grid::before,
.woocommerce-page ul.products.ml-ready-products-grid::after,
ul.products.ml-ready-products-grid::before,
ul.products.ml-ready-products-grid::after{
  content:none!important;
  display:none!important;
}
.shop-standard ul.products.ml-ready-products-grid,
.woocommerce ul.products.columns-4.ml-ready-products-grid,
.woocommerce-page ul.products.columns-4.ml-ready-products-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.ml-category-ready-products ul.products.ml-ready-products-grid,
.woocommerce ul.products.columns-3.ml-ready-products-grid,
.woocommerce-page ul.products.columns-3.ml-ready-products-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product,
.woocommerce-page ul.products.ml-ready-products-grid li.product,
ul.products.ml-ready-products-grid li.product{
  width:auto!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  padding:16px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  text-align:left!important;
  background:#fff!important;
  border:1px solid var(--line)!important;
  box-shadow:0 14px 44px rgba(0,0,0,.06)!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products.ml-ready-products-grid li.product a.woocommerce-LoopProduct-link,
ul.products.ml-ready-products-grid li.product a.woocommerce-LoopProduct-link{
  display:block!important;
  color:inherit!important;
  text-align:left!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product img,
.woocommerce-page ul.products.ml-ready-products-grid li.product img,
ul.products.ml-ready-products-grid li.product img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  object-fit:contain!important;
  background:#f7f7f8!important;
  margin:0 0 14px!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products.ml-ready-products-grid li.product .woocommerce-loop-product__title,
ul.products.ml-ready-products-grid li.product .woocommerce-loop-product__title{
  margin:0 0 4px!important;
  padding:0!important;
  text-align:left!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:800!important;
  color:var(--ink)!important;
  min-height:auto!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product .price,
.woocommerce-page ul.products.ml-ready-products-grid li.product .price,
ul.products.ml-ready-products-grid li.product .price{
  display:block!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  color:var(--ink)!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product a.button,
.woocommerce-page ul.products.ml-ready-products-grid li.product a.button,
ul.products.ml-ready-products-grid li.product a.button{
  align-self:flex-start!important;
  margin:14px 0 0!important;
}
.woocommerce ul.products.ml-ready-products-grid li.product .ml-variant-button,
.woocommerce-page ul.products.ml-ready-products-grid li.product .ml-variant-button,
ul.products.ml-ready-products-grid li.product .ml-variant-button{
  margin-top:14px!important;
}
@media(max-width:980px){
  .shop-standard ul.products.ml-ready-products-grid,
  .ml-category-ready-products ul.products.ml-ready-products-grid,
  .woocommerce ul.products.columns-4.ml-ready-products-grid,
  .woocommerce-page ul.products.columns-4.ml-ready-products-grid,
  .woocommerce ul.products.columns-3.ml-ready-products-grid,
  .woocommerce-page ul.products.columns-3.ml-ready-products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  .shop-standard ul.products.ml-ready-products-grid,
  .ml-category-ready-products ul.products.ml-ready-products-grid,
  .woocommerce ul.products.columns-4.ml-ready-products-grid,
  .woocommerce-page ul.products.columns-4.ml-ready-products-grid,
  .woocommerce ul.products.columns-3.ml-ready-products-grid,
  .woocommerce-page ul.products.columns-3.ml-ready-products-grid{
    grid-template-columns:1fr!important;
  }
}

/* ============================================================
   MECANO LAB V82 - card prodotti, varianti e CTA finale
   ============================================================ */
.ml-ready-products-grid.products{
  align-items:stretch;
}
.ml-ready-products-grid.products li.product,
.woocommerce ul.products.ml-ready-products-grid li.product,
.woocommerce-page ul.products.ml-ready-products-grid li.product{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  text-align:left!important;
  min-height:100%;
}
.ml-ready-products-grid.products li.product a.woocommerce-LoopProduct-link,
.ml-ready-products-grid.products li.product a.woocommerce-loop-product__link{
  display:block!important;
  color:inherit!important;
  text-decoration:none!important;
}
.ml-ready-products-grid.products li.product img{
  display:block!important;
  margin:0 0 14px!important;
}
.ml-ready-products-grid.products li.product .woocommerce-loop-product__title{
  min-height:0!important;
  margin:0 0 6px!important;
  padding:0!important;
  font-size:16px!important;
  line-height:1.22!important;
  font-weight:850!important;
  text-align:left!important;
}
.ml-ready-products-grid.products li.product .price{
  display:block!important;
  margin:0 0 10px!important;
  padding:0!important;
  color:var(--ink)!important;
  font-size:15px!important;
  line-height:1.25!important;
  font-weight:850!important;
  text-align:left!important;
}
.ml-ready-products-grid.products li.product .button:not(.ml-variant-button),
.ml-ready-products-grid.products li.product a.add_to_cart_button,
.ml-ready-products-grid.products li.product a.product_type_variable{
  align-self:flex-start!important;
  margin-top:auto!important;
  padding:0!important;
  min-height:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--ink)!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.ml-ready-products-grid.products li.product .button:not(.ml-variant-button):hover,
.ml-ready-products-grid.products li.product a.add_to_cart_button:hover,
.ml-ready-products-grid.products li.product a.product_type_variable:hover{
  color:var(--orange)!important;
}

body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations tr{
  grid-template-columns:122px minmax(190px,420px)!important;
  gap:14px!important;
  align-items:center!important;
}
body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations td.value{
  max-width:420px!important;
}
body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations select{
  width:100%!important;
}
body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations label{
  line-height:1.2!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
body.single-product .woocommerce-page-content .woocommerce div.product form.cart .reset_variations{
  grid-column:2!important;
}
.ml-variant-button-bottom-wrap{
  clear:both;
  display:flex;
  justify-content:center;
  margin:34px 0 6px;
  padding-top:12px;
}
.ml-variant-button-bottom-wrap .ml-variant-button-bottom{
  min-width:min(420px,100%)!important;
}
@media(max-width:620px){
  body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations tr{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }
  body.single-product .woocommerce-page-content .woocommerce div.product form.cart .variations td.value{
    max-width:none!important;
  }
  body.single-product .woocommerce-page-content .woocommerce div.product form.cart .reset_variations{
    grid-column:auto!important;
  }
}


/* ============================================================
   MECANO LAB V83 - PDF istruzioni di montaggio prodotto
   ============================================================ */
.single-product .mecano-product-manual{
  margin-top:28px;
  padding-top:18px;
  border-top:1px solid #e6e9ee;
  display:flex;
  justify-content:flex-start;
}
.single-product .mecano-product-manual-button{
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:auto!important;
  min-height:42px;
  padding:11px 16px!important;
  border:1px solid #d8dde5!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#101820!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  box-shadow:0 10px 24px rgba(16,24,32,.06)!important;
}
.single-product .mecano-product-manual-button:hover,
.single-product .mecano-product-manual-button:focus{
  border-color:#f45100!important;
  color:#f45100!important;
  transform:translateY(-1px);
}
.single-product .mecano-product-manual-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  height:24px;
  padding:0 6px;
  border-radius:7px;
  background:#f45100;
  color:#fff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
}
@media(max-width:640px){
  .single-product .mecano-product-manual{justify-content:stretch;}
  .single-product .mecano-product-manual-button{width:100%!important;justify-content:center;text-align:center;}
}

/* ============================================================
   MECANO LAB V84 - varianti prodotto: etichette e select allineate
   Override mirato al layout custom .mecano-product-buy, senza dipendere
   dal wrapper .woocommerce che su alcune installazioni non è presente.
   ============================================================ */
body.single-product .mecano-product-buy table.variations tr{
  grid-template-columns:132px minmax(220px,420px)!important;
  gap:16px!important;
  justify-content:start!important;
  align-items:center!important;
}
body.single-product .mecano-product-buy table.variations th.label,
body.single-product .mecano-product-buy table.variations .label{
  white-space:nowrap!important;
  line-height:1.2!important;
}
body.single-product .mecano-product-buy table.variations td.value{
  width:100%!important;
  max-width:420px!important;
}
body.single-product .mecano-product-buy table.variations select{
  width:100%!important;
  max-width:420px!important;
}
body.single-product .mecano-product-buy table.variations .reset_variations{
  grid-column:2!important;
}
@media(max-width:720px){
  body.single-product .mecano-product-buy table.variations tr{
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  body.single-product .mecano-product-buy table.variations th.label,
  body.single-product .mecano-product-buy table.variations .label{
    white-space:normal!important;
  }
  body.single-product .mecano-product-buy table.variations td.value,
  body.single-product .mecano-product-buy table.variations select{
    max-width:none!important;
  }
  body.single-product .mecano-product-buy table.variations .reset_variations{
    grid-column:auto!important;
  }
}

/* ============================================================
   MECANO LAB V85 - microfix solo allineamenti richiesti
   - varianti prodotto: etichette allineate al centro della select
   - tab Descrizione leggermente rientrata dal bordo sinistro
   - menu mobile: voci dropdown centrate verticalmente
   ============================================================ */
body.single-product .mecano-product-buy table.variations tr{
  display:grid!important;
  grid-template-columns:132px minmax(220px,420px)!important;
  gap:16px!important;
  align-items:start!important;
  justify-content:start!important;
}
body.single-product .mecano-product-buy table.variations th.label,
body.single-product .mecano-product-buy table.variations .label{
  display:flex!important;
  align-items:center!important;
  min-height:46px!important;
  padding:0!important;
  margin:0!important;
  white-space:nowrap!important;
  line-height:1.15!important;
}
body.single-product .mecano-product-buy table.variations th.label label,
body.single-product .mecano-product-buy table.variations .label label{
  display:block!important;
  margin:0!important;
  padding:0!important;
  line-height:1.15!important;
}
body.single-product .mecano-product-buy table.variations td.value{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:420px!important;
  padding:0!important;
  margin:0!important;
}
body.single-product .mecano-product-buy table.variations select{
  width:100%!important;
  max-width:420px!important;
  min-height:46px!important;
  height:46px!important;
}
body.single-product .mecano-product-buy table.variations .reset_variations{
  align-self:flex-start!important;
  margin:8px 0 0!important;
  grid-column:auto!important;
}
body.single-product .mecano-product-details .woocommerce-tabs ul.tabs{
  padding-left:8px!important;
}
@media(max-width:720px){
  body.single-product .mecano-product-buy table.variations tr{
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  body.single-product .mecano-product-buy table.variations th.label,
  body.single-product .mecano-product-buy table.variations .label{
    min-height:auto!important;
    white-space:normal!important;
  }
  body.single-product .mecano-product-buy table.variations td.value,
  body.single-product .mecano-product-buy table.variations select{
    max-width:none!important;
  }
  body.single-product .mecano-product-details .woocommerce-tabs ul.tabs{
    padding-left:0!important;
  }
}
@media(max-width:980px){
  .site-header.mobile-menu-open .dropdown-menu a,
  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    line-height:1.16!important;
    padding:0 12px!important;
    transform:translateY(1px);
  }
}


/* ============================================================
   MECANO LAB V86 - microfix mirati richiesti
   - form su misura: ancore prodotto standard/form
   - card prodotto: niente "Scegli", card intera cliccabile
   - menu mobile: voci dropdown centrate verticalmente
   - CTA finale prodotto: più respiro
   ============================================================ */
#ml-request-info,
#ml-request-form{
  scroll-margin-top:112px;
}
@media(max-width:780px){
  #ml-request-info,
  #ml-request-form{
    scroll-margin-top:92px;
  }
}

.ml-ready-products-grid.products li.product,
.woocommerce ul.products.ml-ready-products-grid li.product,
.woocommerce-page ul.products.ml-ready-products-grid li.product{
  cursor:pointer!important;
}
.ml-ready-products-grid.products li.product a.product_type_variable,
.ml-ready-products-grid.products li.product a.add_to_cart_button,
.ml-ready-products-grid.products li.product .button:not(.ml-variant-button),
.woocommerce ul.products.ml-ready-products-grid li.product a.product_type_variable,
.woocommerce ul.products.ml-ready-products-grid li.product a.add_to_cart_button,
.woocommerce ul.products.ml-ready-products-grid li.product .button:not(.ml-variant-button),
.woocommerce-page ul.products.ml-ready-products-grid li.product a.product_type_variable,
.woocommerce-page ul.products.ml-ready-products-grid li.product a.add_to_cart_button,
.woocommerce-page ul.products.ml-ready-products-grid li.product .button:not(.ml-variant-button){
  display:none!important;
}
.ml-ready-products-grid.products li.product a.woocommerce-LoopProduct-link,
.ml-ready-products-grid.products li.product a.woocommerce-loop-product__link,
.woocommerce ul.products.ml-ready-products-grid li.product a.woocommerce-LoopProduct-link,
.woocommerce ul.products.ml-ready-products-grid li.product a.woocommerce-loop-product__link,
.woocommerce-page ul.products.ml-ready-products-grid li.product a.woocommerce-LoopProduct-link,
.woocommerce-page ul.products.ml-ready-products-grid li.product a.woocommerce-loop-product__link{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
}
.ml-ready-products-grid.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products.ml-ready-products-grid li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products.ml-ready-products-grid li.product .woocommerce-loop-product__title{
  min-height:2.45em!important;
  display:flex!important;
  align-items:flex-start!important;
}
.ml-ready-products-grid.products li.product .price,
.woocommerce ul.products.ml-ready-products-grid li.product .price,
.woocommerce-page ul.products.ml-ready-products-grid li.product .price{
  min-height:1.25em!important;
}

body.single-product .ml-variant-button-bottom-wrap{
  margin:50px 0 34px!important;
  padding-top:0!important;
  justify-content:center!important;
}
body.single-product .ml-variant-button-bottom-wrap .ml-variant-button-bottom{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}

@media(max-width:980px){
  .site-header.mobile-menu-open .dropdown-menu a,
  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:74px!important;
    padding:4px 14px 0!important;
    text-align:center!important;
    line-height:1.16!important;
    transform:none!important;
  }
  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    min-height:84px!important;
    line-height:1.08!important;
    padding-top:5px!important;
  }
}
@media(max-width:520px){
  .site-header.mobile-menu-open .dropdown-menu a{
    min-height:70px!important;
    padding-top:5px!important;
  }
  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    min-height:82px!important;
    padding-top:6px!important;
  }
}

/* ============================================================
   MECANO LAB V87 - SOLO MICROFIX RICHIESTI
   - ripristino dimensioni menu mobile dropdown tipo v85, con centratura più pulita
   - meno spazio vuoto in alto su mobile per categorie, su misura, portfolio e azienda
   ============================================================ */
@media(max-width:980px){
  .site-header.mobile-menu-open .dropdown-menu a{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:50px!important;
    min-height:50px!important;
    padding:0 10px!important;
    margin:0!important;
    text-align:center!important;
    line-height:1.15!important;
    transform:translateY(1px)!important;
  }
  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:54px!important;
    min-height:54px!important;
    padding:0 10px!important;
    margin:0!important;
    text-align:center!important;
    line-height:1.08!important;
    white-space:normal!important;
    transform:translateY(1px)!important;
  }
}
@media(max-width:520px){
  .site-header.mobile-menu-open .dropdown-menu a{
    height:46px!important;
    min-height:46px!important;
    padding:0 8px!important;
    font-size:13px!important;
    line-height:1.14!important;
    transform:translateY(1px)!important;
  }
  .site-header.mobile-menu-open .dropdown-menu .dropdown-external{
    height:54px!important;
    min-height:54px!important;
    padding:0 8px!important;
    line-height:1.06!important;
    transform:translateY(1px)!important;
  }
}
@media(max-width:780px){
  .category-content,
  .ml-page-content,
  .company-page{
    padding-top:62px!important;
  }
  .company-hero{
    padding-top:0!important;
  }
  .request-hero{
    padding-top:92px!important;
    padding-bottom:42px!important;
  }
  .request-content{
    padding-top:48px!important;
  }
}
@media(max-width:520px){
  .category-content,
  .ml-page-content,
  .company-page{
    padding-top:54px!important;
  }
  .request-hero{
    padding-top:86px!important;
    padding-bottom:38px!important;
  }
}

/* ============================================================
   MECANO LAB V88 - RESTYLING LEGGERO SOLO CARRELLO / CHECKOUT / ACCOUNT
   Non tocca schede prodotto, homepage, categorie, form su misura o menu.
   ============================================================ */
body.woocommerce-cart .woocommerce-page-content,
body.woocommerce-checkout .woocommerce-page-content,
body.woocommerce-account .woocommerce-page-content{
  padding-top:128px!important;
  padding-bottom:82px!important;
  background:#fff!important;
}
body.woocommerce-cart .woocommerce-page-content>.container,
body.woocommerce-checkout .woocommerce-page-content>.container,
body.woocommerce-account .woocommerce-page-content>.container{
  width:min(1120px,calc(100% - 40px))!important;
  max-width:1120px!important;
}
body.woocommerce-cart .woocommerce-page-content .eyebrow,
body.woocommerce-checkout .woocommerce-page-content .eyebrow,
body.woocommerce-account .woocommerce-page-content .eyebrow{
  margin-bottom:28px!important;
}
body.woocommerce-cart .woocommerce-page-content h1,
body.woocommerce-checkout .woocommerce-page-content h1,
body.woocommerce-account .woocommerce-page-content h1,
body.woocommerce-cart .woocommerce-page-content .entry-title,
body.woocommerce-checkout .woocommerce-page-content .entry-title,
body.woocommerce-account .woocommerce-page-content .entry-title{
  max-width:none!important;
  font-size:clamp(42px,4.2vw,64px)!important;
  line-height:.98!important;
  letter-spacing:-.052em!important;
  margin-bottom:34px!important;
}

/* Contenitori principali */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-checkout form.checkout,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-cart .cart_totals,
body.woocommerce-checkout #order_review{
  background:#fff;
}
body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table,
body.woocommerce-account table.shop_table{
  border:0!important;
  border-collapse:collapse!important;
  border-radius:0!important;
  font-size:15px;
}
body.woocommerce-cart table.shop_table th,
body.woocommerce-checkout table.shop_table th,
body.woocommerce-account table.shop_table th{
  padding:15px 0!important;
  border:0!important;
  border-bottom:1px solid #dfe3e8!important;
  color:#1d252f;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
}
body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table td,
body.woocommerce-account table.shop_table td{
  border:0!important;
  border-bottom:1px solid #e4e7eb!important;
  padding:18px 0!important;
  vertical-align:middle!important;
}
body.woocommerce-cart table.shop_table .product-name a,
body.woocommerce-checkout table.shop_table .product-name a,
body.woocommerce-account table.shop_table a{
  color:#101820!important;
  font-weight:800!important;
  line-height:1.25!important;
}
body.woocommerce-cart table.shop_table .product-name a:hover,
body.woocommerce-checkout table.shop_table .product-name a:hover,
body.woocommerce-account table.shop_table a:hover{
  color:var(--orange)!important;
}

/* Pulsanti e campi WooCommerce */
body.woocommerce-cart .woocommerce .button,
body.woocommerce-checkout .woocommerce .button,
body.woocommerce-account .woocommerce .button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-checkout .woocommerce button.button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-checkout .woocommerce input.button,
body.woocommerce-account .woocommerce input.button{
  min-height:48px!important;
  border:0!important;
  border-radius:0!important;
  background:#202832!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:0 22px!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:none!important;
}
body.woocommerce-cart .woocommerce .button:hover,
body.woocommerce-checkout .woocommerce .button:hover,
body.woocommerce-account .woocommerce .button:hover{
  background:var(--orange)!important;
  color:#fff!important;
}
body.woocommerce-checkout #place_order,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  width:100%!important;
  min-height:54px!important;
  background:#202832!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.woocommerce-checkout #place_order:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
  background:var(--orange)!important;
}
body.woocommerce-cart input.input-text,
body.woocommerce-checkout input.input-text,
body.woocommerce-account input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-account textarea,
body.woocommerce-checkout select,
body.woocommerce-account select,
body.woocommerce-cart select{
  min-height:48px!important;
  border:1px solid #cfd5dc!important;
  border-radius:0!important;
  background:#fff!important;
  color:#1a222c!important;
  padding:0 14px!important;
  font-size:15px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout textarea,
body.woocommerce-account textarea{
  min-height:110px!important;
  padding-top:12px!important;
}
body.woocommerce-cart input.input-text:focus,
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-account input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-account textarea:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-account select:focus{
  outline:0!important;
  border-color:var(--orange)!important;
  box-shadow:0 0 0 3px rgba(233,75,10,.12)!important;
}

/* Carrello */
body.woocommerce-cart .woocommerce{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.72fr);
  gap:58px;
  align-items:start;
}
body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .return-to-shop{
  grid-column:1/-1;
}
body.woocommerce-cart .cart-collaterals,
body.woocommerce-cart .cart_totals{
  width:100%!important;
  float:none!important;
}
body.woocommerce-cart .cart_totals{
  padding:0!important;
}
body.woocommerce-cart .cart_totals h2{
  font-size:clamp(34px,3.3vw,50px)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  margin:0 0 24px!important;
}
body.woocommerce-cart .woocommerce-cart-form__cart-item .product-thumbnail img{
  width:72px!important;
  height:72px!important;
  object-fit:cover!important;
  border:1px solid #eef0f2;
}
body.woocommerce-cart .product-quantity .quantity{
  display:inline-flex!important;
  align-items:center!important;
}
body.woocommerce-cart .product-quantity input.qty{
  width:70px!important;
  min-height:38px!important;
  text-align:center!important;
}
body.woocommerce-cart .product-remove a.remove{
  color:#1f2833!important;
  font-size:22px!important;
  line-height:1!important;
}
body.woocommerce-cart .product-remove a.remove:hover{
  color:#fff!important;
  background:var(--orange)!important;
}
body.woocommerce-cart .cart_totals table.shop_table td,
body.woocommerce-cart .cart_totals table.shop_table th{
  padding:16px 0!important;
}
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td{
  font-size:22px!important;
  color:#1a222c!important;
}

/* Checkout: colonne, riepilogo e testo legale */
body.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr)!important;
  gap:56px!important;
  align-items:start!important;
}
body.woocommerce-checkout #customer_details,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  float:none!important;
  width:100%!important;
}
body.woocommerce-checkout #customer_details{
  grid-column:1;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  grid-column:2;
}
body.woocommerce-checkout #order_review_heading{
  align-self:start;
  margin:0 0 18px!important;
  font-size:clamp(30px,2.8vw,42px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout #order_review{
  border:1px solid #dfe3e8;
  padding:0 18px 20px;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  color:#1d252f;
  text-transform:uppercase;
}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  color:#1e2731;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:start!important;
  border-bottom:1px solid #e4e7eb!important;
  padding:16px 0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td{
  display:block!important;
  border:0!important;
  padding:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td.product-name{
  min-width:0!important;
  width:auto!important;
  color:#202832!important;
  font-size:14px!important;
  font-weight:700!important;
  line-height:1.25!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td.product-name img{
  float:left!important;
  width:56px!important;
  height:56px!important;
  object-fit:cover!important;
  margin:0 12px 8px 0!important;
  border:1px solid #eef0f2;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td.product-total{
  white-space:nowrap!important;
  text-align:right!important;
  color:#202832!important;
  font-weight:800!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name .variation{
  clear:both!important;
  margin:7px 0 0!important;
  color:#616b77!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.35!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name .variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name .variation dd{
  display:inline!important;
  float:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  padding:15px 0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot .order-total td{
  font-size:20px!important;
  color:#1a222c!important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text{
  margin:22px 0 14px!important;
  color:#2e3742!important;
  font-size:14px!important;
  line-height:1.55!important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-privacy-policy-text a{
  color:var(--orange)!important;
  font-weight:800!important;
  text-decoration:underline!important;
  text-underline-offset:3px;
}
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-message{
  border-top-color:var(--orange)!important;
  background:#fff7f2!important;
  color:#222b35!important;
}
body.woocommerce-checkout .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-error::before,
body.woocommerce-checkout .woocommerce-message::before,
body.woocommerce-cart .woocommerce-info::before,
body.woocommerce-cart .woocommerce-error::before,
body.woocommerce-cart .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before,
body.woocommerce-account .woocommerce-message::before{
  color:var(--orange)!important;
}

/* Account: navigazione, indirizzi e link azione più visibili */
body.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  gap:64px;
  align-items:start;
}
body.woocommerce-account .woocommerce-notices-wrapper,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info{
  grid-column:1/-1;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #e1e5ea;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0!important;
  border-bottom:1px solid #e1e5ea;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{
  border-bottom:0;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block!important;
  padding:14px 16px!important;
  color:#1f2833!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  color:#fff!important;
  background:#1f2833!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  min-width:0;
}
body.woocommerce-account .woocommerce-MyAccount-content p:first-child{
  margin-top:0;
}
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address{
  border:1px solid #e1e5ea;
  padding:24px!important;
  min-height:230px;
}
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-columns--addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:26px!important;
}
body.woocommerce-account .woocommerce-Address-title,
body.woocommerce-account .woocommerce-column__title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-bottom:14px!important;
}
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  margin:0!important;
  font-size:clamp(25px,2.4vw,36px)!important;
  line-height:1.03!important;
  letter-spacing:-.04em!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account .edit,
body.woocommerce-account .woocommerce-MyAccount-content a[href*="edit-address"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:0 14px!important;
  border:1px solid #d6dce3!important;
  color:#1f2833!important;
  background:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content a[href*="edit-address"]:hover{
  border-color:var(--orange)!important;
  background:var(--orange)!important;
  color:#fff!important;
}
body.woocommerce-account address{
  color:#3d4651;
  font-style:normal!important;
  line-height:1.65!important;
}

@media(max-width:980px){
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-account .woocommerce{
    display:block!important;
  }
  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review,
  body.woocommerce-account .woocommerce-MyAccount-content{
    margin-top:36px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation{
    margin-bottom:28px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:620px){
  body.woocommerce-cart .woocommerce-page-content,
  body.woocommerce-checkout .woocommerce-page-content,
  body.woocommerce-account .woocommerce-page-content{
    padding-top:100px!important;
    padding-bottom:56px!important;
  }
  body.woocommerce-cart .woocommerce-page-content>.container,
  body.woocommerce-checkout .woocommerce-page-content>.container,
  body.woocommerce-account .woocommerce-page-content>.container{
    width:calc(100% - 28px)!important;
  }
  body.woocommerce-cart .woocommerce-page-content h1,
  body.woocommerce-checkout .woocommerce-page-content h1,
  body.woocommerce-account .woocommerce-page-content h1,
  body.woocommerce-cart .woocommerce-page-content .entry-title,
  body.woocommerce-checkout .woocommerce-page-content .entry-title,
  body.woocommerce-account .woocommerce-page-content .entry-title{
    font-size:42px!important;
    margin-bottom:26px!important;
  }
  body.woocommerce-cart table.shop_table_responsive tr,
  body.woocommerce-account table.shop_table_responsive tr{
    border-bottom:1px solid #e2e6eb!important;
  }
  body.woocommerce-cart table.shop_table_responsive tr td,
  body.woocommerce-account table.shop_table_responsive tr td{
    border-bottom:0!important;
    padding:12px 0!important;
  }
  body.woocommerce-checkout #order_review{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td.product-total{
    text-align:left!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address{
    padding:20px!important;
  }
}


/* ============================================================
   MECANO LAB V89 - restyling reale WooCommerce Blocks / Account
   Solo pagine carrello, checkout, account e header prodotti WooCommerce.
   ============================================================ */
body.woocommerce-cart .woocommerce-page-content,
body.woocommerce-checkout .woocommerce-page-content,
body.woocommerce-account .woocommerce-page-content{
  padding-top:118px!important;
  padding-bottom:88px!important;
}
body.woocommerce-cart .woocommerce-page-content>.container,
body.woocommerce-checkout .woocommerce-page-content>.container,
body.woocommerce-account .woocommerce-page-content>.container{
  width:min(1160px,calc(100% - 44px))!important;
  margin:0 auto!important;
}
body.woocommerce-cart .woocommerce-page-content h1,
body.woocommerce-checkout .woocommerce-page-content h1,
body.woocommerce-account .woocommerce-page-content h1,
body.woocommerce-cart .woocommerce-page-content .entry-title,
body.woocommerce-checkout .woocommerce-page-content .entry-title,
body.woocommerce-account .woocommerce-page-content .entry-title{
  margin:0 0 46px!important;
  font-size:clamp(46px,4.4vw,68px)!important;
  letter-spacing:-.055em!important;
  line-height:.98!important;
  color:#1d252f!important;
}
body.woocommerce-cart .woocommerce-page-content a,
body.woocommerce-checkout .woocommerce-page-content a,
body.woocommerce-account .woocommerce-page-content a{
  color:#1d252f;
  text-decoration:none;
  transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
body.woocommerce-cart .woocommerce-page-content a:hover,
body.woocommerce-checkout .woocommerce-page-content a:hover,
body.woocommerce-account .woocommerce-page-content a:hover{
  color:var(--orange)!important;
}

/* WooCommerce Blocks - carrello e checkout */
body.woocommerce-cart .wc-block-cart,
body.woocommerce-checkout .wc-block-checkout{
  font-family:inherit!important;
  color:#1d252f!important;
}
body.woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-components-sidebar-layout{
  align-items:flex-start!important;
  gap:56px!important;
}
body.woocommerce-cart .wc-block-components-main,
body.woocommerce-checkout .wc-block-components-main{
  padding-right:0!important;
}
body.woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-components-sidebar{
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:28px!important;
  box-shadow:0 20px 55px rgba(16,24,34,.07)!important;
}
body.woocommerce-cart .wc-block-cart__totals-title,
body.woocommerce-checkout .wc-block-components-order-summary__button-text,
body.woocommerce-checkout .wc-block-components-sidebar .wc-block-components-order-summary__title,
body.woocommerce-checkout .wc-block-components-sidebar h2,
body.woocommerce-checkout .wc-block-components-main h2,
body.woocommerce-checkout .wc-block-checkout__form h2,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3{
  color:#1d252f!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
  line-height:1.05!important;
}
body.woocommerce-checkout .wc-block-components-title,
body.woocommerce-checkout .wc-block-components-checkout-step__title,
body.woocommerce-checkout .wc-block-components-main h2{
  font-size:clamp(28px,2.8vw,42px)!important;
  text-transform:uppercase!important;
  margin-bottom:22px!important;
}
body.woocommerce-checkout .wc-block-components-checkout-step{
  border:0!important;
  padding:0 0 36px!important;
  margin:0 0 34px!important;
  border-bottom:1px solid #e1e5ea!important;
}
body.woocommerce-cart .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
body.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-address-form input,
body.woocommerce-checkout .wc-block-components-address-form select,
body.woocommerce-checkout .wc-block-components-address-form textarea{
  min-height:54px!important;
  border:1px solid #cfd5dc!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:#fff!important;
  color:#1d252f!important;
  font-size:15px!important;
}
body.woocommerce-cart .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
body.woocommerce-checkout .wc-block-components-address-form input:focus,
body.woocommerce-checkout .wc-block-components-address-form select:focus,
body.woocommerce-checkout .wc-block-components-address-form textarea:focus{
  border-color:var(--orange)!important;
  box-shadow:0 0 0 3px rgba(233,75,10,.12)!important;
  outline:0!important;
}
body.woocommerce-cart .wc-block-components-button,
body.woocommerce-checkout .wc-block-components-button,
body.woocommerce-account .woocommerce-button,
body.woocommerce-account button.button,
body.woocommerce-account a.button,
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button{
  border:0!important;
  border-radius:0!important;
  background:#202832!important;
  color:#fff!important;
  min-height:54px!important;
  padding:0 24px!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
}
body.woocommerce-cart .wc-block-components-button:hover,
body.woocommerce-checkout .wc-block-components-button:hover,
body.woocommerce-account .woocommerce-button:hover,
body.woocommerce-account button.button:hover,
body.woocommerce-account a.button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover{
  background:var(--orange)!important;
  color:#fff!important;
}

/* Prodotti nel carrello e riepilogo: niente titolo spezzato a caso */
body.woocommerce-cart .wc-block-cart-items__row,
body.woocommerce-checkout .wc-block-components-order-summary-item{
  border-bottom:1px solid #e3e7ec!important;
}
body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name{
  display:block!important;
  color:#101820!important;
  font-size:16px!important;
  font-weight:850!important;
  line-height:1.22!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  max-width:100%!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:start!important;
  padding:18px 0!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__image{
  width:72px!important;
  min-width:72px!important;
  grid-column:1!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__image img,
body.woocommerce-cart .wc-block-cart-item__image img{
  width:72px!important;
  height:72px!important;
  object-fit:cover!important;
  border:1px solid #eef0f2!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__description{
  grid-column:2!important;
  min-width:0!important;
  padding:0!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price{
  grid-column:3!important;
  white-space:nowrap!important;
  color:#1d252f!important;
  font-weight:850!important;
}
body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-details,
body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details{
  color:#59636f!important;
  font-size:13px!important;
  line-height:1.45!important;
  margin-top:7px!important;
}
body.woocommerce-checkout .wc-block-components-product-details li,
body.woocommerce-cart .wc-block-components-product-details li{
  margin:0!important;
}
body.woocommerce-checkout .wc-block-components-totals-wrapper,
body.woocommerce-cart .wc-block-components-totals-wrapper{
  border-top:1px solid #e1e5ea!important;
  padding:18px 0!important;
}
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-item__value{
  color:#1d252f!important;
  font-weight:750!important;
}
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  font-size:24px!important;
  font-weight:900!important;
}
body.woocommerce-checkout .wc-block-components-panel__button,
body.woocommerce-cart .wc-block-components-panel__button{
  color:#1d252f!important;
  font-weight:750!important;
}
body.woocommerce-checkout .wc-block-components-panel__button:hover,
body.woocommerce-cart .wc-block-components-panel__button:hover{
  color:var(--orange)!important;
}

/* Testo legale checkout blocks */
body.woocommerce-checkout .wc-block-checkout__terms,
body.woocommerce-checkout .wc-block-components-terms-and-conditions,
body.woocommerce-checkout .wc-block-components-privacy-policy-text,
body.woocommerce-checkout .wc-block-components-checkbox__label{
  color:#2e3742!important;
  font-size:14px!important;
  line-height:1.55!important;
}
body.woocommerce-checkout .wc-block-checkout__terms a,
body.woocommerce-checkout .wc-block-components-terms-and-conditions a,
body.woocommerce-checkout .wc-block-components-privacy-policy-text a,
body.woocommerce-checkout .wc-block-components-checkbox__label a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-privacy-policy-text a{
  color:var(--orange)!important;
  font-weight:900!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* Account / indirizzi: impaginazione robusta e coerente */
body.woocommerce-account .woocommerce{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:54px!important;
  align-items:start!important;
  width:100%!important;
}
body.woocommerce-account .woocommerce-notices-wrapper,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info{
  grid-column:1/-1!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  width:auto!important;
  float:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  font-size:18px!important;
  line-height:1.65!important;
  color:#2e3742!important;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  max-width:760px!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  box-shadow:0 20px 55px rgba(16,24,34,.06)!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  padding:0 18px!important;
  color:#1d252f!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
  text-transform:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#202832!important;
  color:#fff!important;
}
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button){
  color:var(--orange)!important;
  font-weight:850!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-columns--addresses,
body.woocommerce-account .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:28px!important;
  margin-top:24px!important;
}
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address,
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2{
  float:none!important;
  width:auto!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:26px!important;
  box-shadow:0 18px 42px rgba(16,24,34,.055)!important;
}
body.woocommerce-account .woocommerce-Address-title,
body.woocommerce-account .woocommerce-column__title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 18px!important;
}
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  font-size:clamp(27px,2.5vw,38px)!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  color:#1d252f!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account .edit,
body.woocommerce-account .woocommerce-MyAccount-content a[href*="edit-address"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:42px!important;
  padding:0 16px!important;
  border:1px solid #202832!important;
  background:#202832!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content a[href*="edit-address"]:hover{
  border-color:var(--orange)!important;
  background:var(--orange)!important;
  color:#fff!important;
}
body.woocommerce-account address{
  color:#3d4651!important;
  font-size:16px!important;
  line-height:1.7!important;
}

@media(max-width:980px){
  body.woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-components-sidebar-layout,
  body.woocommerce-account .woocommerce{
    display:block!important;
  }
  body.woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-components-sidebar{
    margin-top:34px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation{
    margin-bottom:30px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:620px){
  body.woocommerce-cart .woocommerce-page-content,
  body.woocommerce-checkout .woocommerce-page-content,
  body.woocommerce-account .woocommerce-page-content{
    padding-top:84px!important;
    padding-bottom:58px!important;
  }
  body.woocommerce-cart .woocommerce-page-content>.container,
  body.woocommerce-checkout .woocommerce-page-content>.container,
  body.woocommerce-account .woocommerce-page-content>.container{
    width:calc(100% - 28px)!important;
  }
  body.woocommerce-cart .woocommerce-page-content h1,
  body.woocommerce-checkout .woocommerce-page-content h1,
  body.woocommerce-account .woocommerce-page-content h1,
  body.woocommerce-cart .woocommerce-page-content .entry-title,
  body.woocommerce-checkout .woocommerce-page-content .entry-title,
  body.woocommerce-account .woocommerce-page-content .entry-title{
    font-size:40px!important;
    margin-bottom:28px!important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item{
    grid-template-columns:64px minmax(0,1fr)!important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__image{
    width:64px!important;
    min-width:64px!important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__image img,
  body.woocommerce-cart .wc-block-cart-item__image img{
    width:64px!important;
    height:64px!important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__total-price{
    grid-column:2!important;
    text-align:left!important;
    margin-top:4px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address,
  body.woocommerce-account .u-column1,
  body.woocommerce-account .u-column2{
    padding:22px!important;
  }
}

/* ============================================================
   MECANO LAB V90 - WooCommerce serio su pagine generate da page.php
   Carrello / checkout / account. Non tocca home, categorie, prodotto,
   menu mobile, form su misura, portfolio o azienda.
   ============================================================ */
body.woocommerce-cart .generic-page,
body.woocommerce-checkout .generic-page,
body.woocommerce-account .generic-page{
  padding-top:118px!important;
  padding-bottom:86px!important;
  background:#fff!important;
}
body.woocommerce-cart .generic-page .ml-page-inner.wp-editable-content,
body.woocommerce-checkout .generic-page .ml-page-inner.wp-editable-content,
body.woocommerce-account .generic-page .ml-page-inner.wp-editable-content{
  width:min(1240px,calc(100% - 64px))!important;
  max-width:1240px!important;
  margin:0 auto!important;
}
body.woocommerce-cart .generic-page h1,
body.woocommerce-checkout .generic-page h1,
body.woocommerce-account .generic-page h1{
  margin:8px 0 42px!important;
  max-width:none!important;
  font-size:clamp(42px,4.1vw,64px)!important;
  line-height:.98!important;
  letter-spacing:-.05em!important;
}
body.woocommerce-cart .generic-page .eyebrow,
body.woocommerce-checkout .generic-page .eyebrow,
body.woocommerce-account .generic-page .eyebrow{
  margin-bottom:18px!important;
}

/* Base Woo: tipografia, link, pulsanti e campi coerenti */
body.woocommerce-cart .wp-editable-content .woocommerce,
body.woocommerce-checkout .wp-editable-content .woocommerce,
body.woocommerce-account .wp-editable-content .woocommerce,
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout{
  color:#1d252f!important;
  font-family:inherit!important;
  max-width:none!important;
}
body.woocommerce-cart .wp-editable-content a,
body.woocommerce-checkout .wp-editable-content a,
body.woocommerce-account .wp-editable-content a{
  color:#1d252f!important;
  text-decoration:none!important;
  transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
body.woocommerce-cart .wp-editable-content a:hover,
body.woocommerce-checkout .wp-editable-content a:hover,
body.woocommerce-account .wp-editable-content a:hover{
  color:var(--orange)!important;
}
body.woocommerce-cart .woocommerce .button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-checkout .woocommerce .button,
body.woocommerce-checkout .woocommerce button.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-checkout .woocommerce input.button,
body.woocommerce-account .woocommerce .button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce input.button,
body.woocommerce-cart .wc-block-components-button,
body.woocommerce-checkout .wc-block-components-button,
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button{
  min-height:52px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  background:#202832!important;
  color:#fff!important;
  padding:0 24px!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
  line-height:1.1!important;
  box-shadow:none!important;
}
body.woocommerce-cart .woocommerce .button:hover,
body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-cart .woocommerce a.button:hover,
body.woocommerce-cart .woocommerce input.button:hover,
body.woocommerce-checkout .woocommerce .button:hover,
body.woocommerce-checkout .woocommerce button.button:hover,
body.woocommerce-checkout .woocommerce a.button:hover,
body.woocommerce-checkout .woocommerce input.button:hover,
body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce button.button:hover,
body.woocommerce-account .woocommerce a.button:hover,
body.woocommerce-account .woocommerce input.button:hover,
body.woocommerce-cart .wc-block-components-button:hover,
body.woocommerce-checkout .wc-block-components-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover{
  background:var(--orange)!important;
  color:#fff!important;
}
body.woocommerce-cart input.input-text,
body.woocommerce-checkout input.input-text,
body.woocommerce-account input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-account textarea,
body.woocommerce-checkout select,
body.woocommerce-account select,
body.woocommerce-cart select,
body.woocommerce-cart .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox-control input,
body.woocommerce-checkout .wc-block-components-address-form input,
body.woocommerce-checkout .wc-block-components-address-form select,
body.woocommerce-checkout .wc-block-components-address-form textarea{
  min-height:50px!important;
  width:100%!important;
  border:1px solid #cfd5dc!important;
  border-radius:0!important;
  background:#fff!important;
  color:#1d252f!important;
  padding:0 14px!important;
  font-size:15px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout textarea,
body.woocommerce-account textarea,
body.woocommerce-checkout .wc-block-components-address-form textarea{
  min-height:104px!important;
  padding-top:12px!important;
}
body.woocommerce-cart input.input-text:focus,
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-account input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-account textarea:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-account select:focus,
body.woocommerce-cart select:focus,
body.woocommerce-cart .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-combobox-control input:focus,
body.woocommerce-checkout .wc-block-components-address-form input:focus,
body.woocommerce-checkout .wc-block-components-address-form select:focus,
body.woocommerce-checkout .wc-block-components-address-form textarea:focus{
  outline:0!important;
  border-color:var(--orange)!important;
  box-shadow:0 0 0 3px rgba(233,75,10,.12)!important;
}
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message{
  grid-column:1/-1!important;
  border-top-color:var(--orange)!important;
  background:#fff7f2!important;
  color:#202832!important;
  line-height:1.55!important;
}

/* CARRELLO - classico */
body.woocommerce-cart .wp-editable-content > .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,390px)!important;
  gap:42px!important;
  align-items:start!important;
  width:100%!important;
}
body.woocommerce-cart form.woocommerce-cart-form{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
}
body.woocommerce-cart .cart-collaterals{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  float:none!important;
  margin:0!important;
}
body.woocommerce-cart .cart_totals{
  width:100%!important;
  float:none!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:28px!important;
  box-shadow:0 22px 55px rgba(16,24,34,.07)!important;
}
body.woocommerce-cart .cart_totals h2{
  margin:0 0 22px!important;
  font-size:clamp(30px,2.8vw,42px)!important;
  line-height:1.03!important;
  letter-spacing:-.04em!important;
  color:#1d252f!important;
}
body.woocommerce-cart table.shop_table{
  width:100%!important;
  border:0!important;
  border-collapse:collapse!important;
  table-layout:auto!important;
}
body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td{
  border:0!important;
  border-bottom:1px solid #e2e6eb!important;
  vertical-align:middle!important;
}
body.woocommerce-cart table.shop_table th{
  padding:14px 0!important;
  color:#1d252f!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
}
body.woocommerce-cart table.shop_table td{
  padding:18px 0!important;
  color:#2f3844!important;
  font-size:15px!important;
}
body.woocommerce-cart table.cart td.product-thumbnail{
  width:88px!important;
  padding-right:18px!important;
}
body.woocommerce-cart table.cart img{
  width:78px!important;
  height:78px!important;
  object-fit:cover!important;
  border:1px solid #eef0f2!important;
}
body.woocommerce-cart table.cart td.product-name{
  min-width:0!important;
}
body.woocommerce-cart table.cart td.product-name a,
body.woocommerce-cart .wc-block-components-product-name{
  color:#101820!important;
  font-size:16px!important;
  font-weight:850!important;
  line-height:1.25!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
body.woocommerce-cart table.cart td.product-price,
body.woocommerce-cart table.cart td.product-subtotal{
  white-space:nowrap!important;
  text-align:right!important;
  font-weight:800!important;
  color:#1d252f!important;
}
body.woocommerce-cart .quantity{
  display:inline-flex!important;
  align-items:center!important;
}
body.woocommerce-cart .quantity input.qty{
  width:68px!important;
  min-height:38px!important;
  padding:0!important;
  text-align:center!important;
}
body.woocommerce-cart .product-remove a.remove{
  color:#202832!important;
  font-size:22px!important;
}
body.woocommerce-cart .product-remove a.remove:hover{
  color:#fff!important;
  background:var(--orange)!important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  width:100%!important;
  margin-top:10px!important;
}

/* CARRELLO - blocchi WooCommerce */
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar-layout,
body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,390px)!important;
  gap:42px!important;
  align-items:start!important;
}
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-main,
body.woocommerce-cart .wc-block-cart .wc-block-components-main{
  grid-column:1!important;
  width:auto!important;
  max-width:none!important;
  padding-right:0!important;
}
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar,
body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar{
  grid-column:2!important;
  width:auto!important;
  max-width:none!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:28px!important;
  box-shadow:0 22px 55px rgba(16,24,34,.07)!important;
}
body.woocommerce-cart .wc-block-cart-items__row{
  border-bottom:1px solid #e2e6eb!important;
}
body.woocommerce-cart .wc-block-cart-item__image img{
  width:78px!important;
  height:78px!important;
  object-fit:cover!important;
}
body.woocommerce-cart .wc-block-components-product-details,
body.woocommerce-cart .wc-block-components-product-metadata{
  color:#59636f!important;
  font-size:13px!important;
  line-height:1.45!important;
}

/* CHECKOUT - classico */
body.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(400px,440px)!important;
  gap:44px!important;
  align-items:start!important;
  width:100%!important;
}
body.woocommerce-checkout #customer_details{
  grid-column:1!important;
  min-width:0!important;
  width:100%!important;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  grid-column:2!important;
  width:100%!important;
  float:none!important;
}
body.woocommerce-checkout #order_review_heading{
  margin:0 0 16px!important;
  font-size:clamp(25px,2.2vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout #order_review{
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:24px!important;
  box-shadow:0 22px 55px rgba(16,24,34,.07)!important;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{
  margin:0 0 24px!important;
  color:#1d252f!important;
  font-size:clamp(29px,2.7vw,42px)!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px 18px!important;
}
body.woocommerce-checkout .form-row{
  width:100%!important;
  float:none!important;
  margin:0 0 18px!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-address-fields__field-wrapper .form-row{
  margin:0!important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  color:#1d252f!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  margin-bottom:7px!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) auto!important;
  gap:13px!important;
  align-items:start!important;
  padding:16px 0!important;
  border-bottom:1px solid #e2e6eb!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item td{
  display:block!important;
  border:0!important;
  padding:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  grid-column:2!important;
  min-width:0!important;
  color:#101820!important;
  font-size:15px!important;
  font-weight:850!important;
  line-height:1.23!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name img{
  grid-column:1!important;
  float:none!important;
  width:72px!important;
  height:72px!important;
  object-fit:cover!important;
  margin:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
  grid-column:3!important;
  white-space:nowrap!important;
  text-align:right!important;
  color:#1d252f!important;
  font-weight:850!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation{
  margin:7px 0 0!important;
  color:#59636f!important;
  font-size:12px!important;
  line-height:1.4!important;
  font-weight:500!important;
}
body.woocommerce-checkout #place_order{
  width:100%!important;
  margin-top:14px!important;
}

/* CHECKOUT - blocchi WooCommerce */
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(410px,450px)!important;
  gap:44px!important;
  align-items:start!important;
}
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-main,
body.woocommerce-checkout .wc-block-checkout .wc-block-components-main{
  grid-column:1!important;
  width:auto!important;
  max-width:none!important;
  padding-right:0!important;
}
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar,
body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar{
  grid-column:2!important;
  width:auto!important;
  max-width:none!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:26px!important;
  box-shadow:0 22px 55px rgba(16,24,34,.07)!important;
}
body.woocommerce-checkout .wc-block-components-title,
body.woocommerce-checkout .wc-block-components-checkout-step__title{
  color:#1d252f!important;
  font-size:clamp(28px,2.6vw,40px)!important;
  line-height:1.06!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .wc-block-components-checkout-step{
  margin:0 0 30px!important;
  padding:0 0 30px!important;
  border-bottom:1px solid #e2e6eb!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:start!important;
  padding:16px 0!important;
  border-bottom:1px solid #e2e6eb!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__image{
  grid-column:1!important;
  width:72px!important;
  min-width:72px!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__image img{
  width:72px!important;
  height:72px!important;
  object-fit:cover!important;
  border:1px solid #eef0f2!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__description{
  grid-column:2!important;
  min-width:0!important;
  padding:0!important;
}
body.woocommerce-checkout .wc-block-components-order-summary-item__total-price{
  grid-column:3!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-weight:850!important;
  color:#1d252f!important;
}
body.woocommerce-checkout .wc-block-components-product-name,
body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name{
  display:block!important;
  color:#101820!important;
  font-size:15px!important;
  font-weight:850!important;
  line-height:1.22!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
}
body.woocommerce-checkout .wc-block-components-product-metadata,
body.woocommerce-checkout .wc-block-components-product-details{
  color:#59636f!important;
  font-size:12.5px!important;
  line-height:1.4!important;
  margin-top:7px!important;
}
body.woocommerce-checkout .wc-block-checkout__terms,
body.woocommerce-checkout .wc-block-components-terms-and-conditions,
body.woocommerce-checkout .wc-block-components-privacy-policy-text,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text{
  color:#2e3742!important;
  font-size:15px!important;
  line-height:1.55!important;
  margin:18px 0 12px!important;
}
body.woocommerce-checkout .wc-block-checkout__terms a,
body.woocommerce-checkout .wc-block-components-terms-and-conditions a,
body.woocommerce-checkout .wc-block-components-privacy-policy-text a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-privacy-policy-text a{
  color:var(--orange)!important;
  font-weight:900!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* ACCOUNT - impaginazione orizzontale reale */
body.woocommerce-account .wp-editable-content > .woocommerce{
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:38px!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  grid-column:1!important;
  grid-row:1!important;
  width:250px!important;
  max-width:250px!important;
  min-width:0!important;
  float:none!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  box-shadow:0 20px 52px rgba(16,24,34,.06)!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0!important;
  border-bottom:1px solid #e2e6eb!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{
  border-bottom:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  padding:0 18px!important;
  color:#1d252f!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.035em!important;
  text-decoration:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#202832!important;
  color:#fff!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  float:none!important;
  margin:0!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:30px!important;
  box-shadow:0 20px 52px rgba(16,24,34,.06)!important;
  color:#2e3742!important;
  font-size:16px!important;
  line-height:1.65!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > p:first-child{
  margin-top:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content p{
  max-width:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button){
  color:var(--orange)!important;
  font-weight:850!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3,
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  color:#1d252f!important;
  font-weight:900!important;
  font-size:clamp(25px,2.2vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-columns--addresses,
body.woocommerce-account .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:24px!important;
  margin:24px 0 0!important;
}
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address,
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2{
  float:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:24px!important;
  box-shadow:0 12px 34px rgba(16,24,34,.045)!important;
}
body.woocommerce-account .woocommerce-Address-title,
body.woocommerce-account .woocommerce-column__title{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 16px!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account .edit,
body.woocommerce-account .woocommerce-MyAccount-content a[href*="edit-address"]{
  min-height:40px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 15px!important;
  border:1px solid #202832!important;
  background:#202832!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content a[href*="edit-address"]:hover{
  border-color:var(--orange)!important;
  background:var(--orange)!important;
  color:#fff!important;
}
body.woocommerce-account address{
  color:#3d4651!important;
  font-style:normal!important;
  font-size:15px!important;
  line-height:1.7!important;
}
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table{
  width:100%!important;
  border:0!important;
  border-collapse:collapse!important;
}
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table th,
body.woocommerce-account .woocommerce-MyAccount-content table.shop_table td{
  border:0!important;
  border-bottom:1px solid #e2e6eb!important;
  padding:14px 0!important;
}
body.woocommerce-account .woocommerce-EditAccountForm,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px 18px!important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row,
body.woocommerce-account .woocommerce-address-fields .form-row{
  width:100%!important;
  float:none!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-EditAccountForm .form-row-wide,
body.woocommerce-account .woocommerce-EditAccountForm fieldset,
body.woocommerce-account .woocommerce-EditAccountForm p:last-child,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide,
body.woocommerce-account .woocommerce-address-fields p:last-child{
  grid-column:1/-1!important;
}
body.woocommerce-account .woocommerce-EditAccountForm fieldset{
  border:1px solid #dfe3e8!important;
  padding:20px!important;
  margin:14px 0 0!important;
}
body.woocommerce-account .woocommerce-EditAccountForm legend{
  padding:0 8px!important;
  color:#1d252f!important;
  font-size:18px!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
}

/* Responsive Woo */
@media(max-width:1050px){
  body.woocommerce-cart .wp-editable-content > .woocommerce,
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar-layout,
  body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout,
  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout,
  body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar-layout,
  body.woocommerce-account .wp-editable-content > .woocommerce{
    display:block!important;
  }
  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar,
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review,
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar,
  body.woocommerce-account .woocommerce-MyAccount-content{
    margin-top:30px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation{
    width:100%!important;
    max-width:none!important;
    margin-bottom:0!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:700px){
  body.woocommerce-cart .generic-page,
  body.woocommerce-checkout .generic-page,
  body.woocommerce-account .generic-page{
    padding-top:72px!important;
    padding-bottom:58px!important;
  }
  body.woocommerce-cart .generic-page .ml-page-inner.wp-editable-content,
  body.woocommerce-checkout .generic-page .ml-page-inner.wp-editable-content,
  body.woocommerce-account .generic-page .ml-page-inner.wp-editable-content{
    width:calc(100% - 28px)!important;
  }
  body.woocommerce-cart .generic-page h1,
  body.woocommerce-checkout .generic-page h1,
  body.woocommerce-account .generic-page h1{
    font-size:40px!important;
    margin-bottom:28px!important;
  }
  body.woocommerce-cart table.shop_table_responsive tr,
  body.woocommerce-account table.shop_table_responsive tr{
    border-bottom:1px solid #e2e6eb!important;
  }
  body.woocommerce-cart table.shop_table_responsive tr td,
  body.woocommerce-account table.shop_table_responsive tr td{
    border-bottom:0!important;
    padding:10px 0!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-address-fields__field-wrapper,
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses,
  body.woocommerce-account .woocommerce-EditAccountForm,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content,
  body.woocommerce-cart .cart_totals,
  body.woocommerce-checkout #order_review,
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-sidebar,
  body.woocommerce-cart .wc-block-cart .wc-block-components-sidebar,
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar,
  body.woocommerce-checkout .wc-block-checkout .wc-block-components-sidebar{
    padding:20px!important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item{
    grid-template-columns:64px minmax(0,1fr)!important;
  }
  body.woocommerce-checkout .wc-block-components-order-summary-item__total-price,
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
    grid-column:2!important;
    text-align:left!important;
    margin-top:4px!important;
  }
}

/* ============================================================
   MECANO LAB V91 - rifinitura WooCommerce account/cart/checkout
   Corregge solo: indirizzi account, link dashboard, testo pulsante
   carrello, allineamento valori nei campi checkout. Non tocca home,
   menu mobile, schede prodotto, categorie, form su misura o portfolio.
   ============================================================ */

/* Account: evita card indirizzi sfalsate/compresse e pulsanti che escono dal box */
body.woocommerce-account .woocommerce-MyAccount-content{
  overflow:visible!important;
}
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-columns--addresses,
body.woocommerce-account .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:26px!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
}
body.woocommerce-account .woocommerce-Addresses::before,
body.woocommerce-account .woocommerce-Addresses::after,
body.woocommerce-account .woocommerce-columns--addresses::before,
body.woocommerce-account .woocommerce-columns--addresses::after,
body.woocommerce-account .u-columns.woocommerce-Addresses::before,
body.woocommerce-account .u-columns.woocommerce-Addresses::after{
  display:none!important;
  content:none!important;
}
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address,
body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2{
  float:none!important;
  clear:none!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-account .woocommerce-Address-title,
body.woocommerce-account header.woocommerce-Address-title{
  display:block!important;
  margin:0 0 18px!important;
}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 0 14px!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-Address-title .edit{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.15!important;
}

/* Dashboard account: il link "indirizzi di spedizione e fatturazione" deve restare link testuale, non bottone nero */
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="edit-address"],
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-content-wrapper > p a[href*="edit-address"]{
  display:inline!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  font-size:inherit!important;
  font-weight:850!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
  white-space:normal!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="edit-address"]:hover,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-content-wrapper > p a[href*="edit-address"]:hover{
  background:transparent!important;
  color:#101820!important;
}

/* Account: messaggi/ordini vuoti ordinati dentro il riquadro, senza colonne strette */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message{
  width:100%!important;
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:22px 24px!important;
  border:1px solid #f0d6c8!important;
  border-top:3px solid var(--orange)!important;
  background:#fff7f2!important;
  color:#202832!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button{
  flex:0 0 auto!important;
  margin:0!important;
}

/* Carrello: testo del pulsante sempre visibile anche con i blocchi WooCommerce */
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:visited,
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-cart__submit-button:visited,
body.woocommerce-cart .wc-block-components-button,
body.woocommerce-cart .wc-block-components-button:visited{
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button *,
body.woocommerce-cart .wc-block-cart__submit-button *,
body.woocommerce-cart .wc-block-components-button *,
body.woocommerce-cart .wc-block-components-button__text{
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-indent:0!important;
  line-height:1.15!important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-components-button:hover{
  color:#fff!important;
}

/* Checkout blocks: valori compilati centrati correttamente nei box con etichetta flottante */
body.woocommerce-checkout .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-combobox,
body.woocommerce-checkout .wc-block-components-combobox-control,
body.woocommerce-checkout .wc-block-components-address-form .wc-block-components-text-input{
  position:relative!important;
}
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-form .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-address-form input,
body.woocommerce-checkout .wc-block-components-combobox-control input.components-combobox-control__input,
body.woocommerce-checkout .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input{
  height:56px!important;
  min-height:56px!important;
  padding:20px 14px 7px!important;
  line-height:1.2!important;
  display:block!important;
  box-sizing:border-box!important;
  vertical-align:middle!important;
}
body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-combobox-control label,
body.woocommerce-checkout .wc-block-components-combobox label,
body.woocommerce-checkout .wc-block-components-address-form label{
  top:7px!important;
  left:14px!important;
  right:auto!important;
  transform:none!important;
  font-size:11px!important;
  line-height:1!important;
  color:#626d79!important;
  pointer-events:none!important;
  max-width:calc(100% - 28px)!important;
}
body.woocommerce-checkout .wc-block-components-address-form select,
body.woocommerce-checkout select{
  height:56px!important;
  min-height:56px!important;
  padding:15px 40px 7px 14px!important;
  line-height:1.2!important;
}

/* Checkout classico: stesso allineamento dei valori nei campi */
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row select,
body.woocommerce-account .form-row input.input-text,
body.woocommerce-account .form-row select{
  height:52px!important;
  min-height:52px!important;
  line-height:1.25!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

@media(max-width:900px){
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message{
    display:block!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Message .button{
    margin-top:14px!important;
  }
}

/* ============================================================
   MECANO LAB V92 - campi fiscali checkout
   ============================================================ */
body.woocommerce-checkout .mecano-tax-field,
body.woocommerce-checkout .wc-block-components-checkout-step__content .wc-block-components-text-input,
body.woocommerce-checkout .wc-block-components-checkout-step__content .wc-block-components-select {
  box-sizing:border-box;
}
body.woocommerce-checkout .mecano-tax-field input,
body.woocommerce-checkout .mecano-tax-field select {
  min-height:58px;
}
body.woocommerce-checkout .wc-block-components-checkout-step__content [id*="mecanolab"] input,
body.woocommerce-checkout .wc-block-components-checkout-step__content [id*="mecanolab"] select {
  min-height:58px;
}
body.woocommerce-checkout .wc-block-components-checkout-step__content [id*="mecanolab"] label,
body.woocommerce-checkout .mecano-tax-field label {
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
}
body.woocommerce-checkout .wc-block-components-checkout-step__content [id*="mecanolab/customer-type"],
body.woocommerce-checkout .mecano-tax-type {
  margin-top:18px!important;
}

/* ============================================================
   MECANO LAB V93 - solo account indirizzi + rifinitura campi ordine
   ============================================================ */

/* Account / Indirizzi: riquadri allineati, nessun pulsante nero pesante */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:28px!important;
  align-items:stretch!important;
  width:100%!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  min-height:250px!important;
  padding:30px!important;
  border:1px solid #e1e5ea!important;
  background:#fff!important;
  box-shadow:0 20px 50px rgba(16,24,32,.04)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:20px!important;
  align-items:center!important;
  margin:0 0 18px!important;
  width:100%!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
  margin:0!important;
  font-size:clamp(28px,2.25vw,36px)!important;
  line-height:1.04!important;
  letter-spacing:-.043em!important;
  color:#202832!important;
  min-width:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit{
  min-height:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
  white-space:normal!important;
  line-height:1.25!important;
  text-align:right!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit:hover{
  background:transparent!important;
  color:#101820!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 address{
  margin:0!important;
  max-width:100%!important;
  color:#3d4651!important;
  font-size:16px!important;
  line-height:1.65!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}

/* Account / Indirizzi: i link della bacheca restano link, non bottoni */
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="edit-address"],
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="orders"],
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="edit-account"]{
  display:inline!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  font-size:inherit!important;
  font-weight:850!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="edit-address"]:hover,
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="orders"]:hover,
body.woocommerce-account .woocommerce-MyAccount-content > p a[href*="edit-account"]:hover{
  color:#101820!important;
  background:transparent!important;
}

/* Form account/checkout: campi chiari e valori centrati nei box */
body.woocommerce-account .woocommerce-address-fields .form-row,
body.woocommerce-account .woocommerce-EditAccountForm .form-row,
body.woocommerce-checkout .form-row{
  margin-bottom:18px!important;
}
body.woocommerce-account .woocommerce-address-fields .form-row label,
body.woocommerce-account .woocommerce-EditAccountForm .form-row label,
body.woocommerce-checkout .form-row label{
  display:block!important;
  margin-bottom:7px!important;
  color:#202832!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
}
body.woocommerce-account .woocommerce-address-fields input.input-text,
body.woocommerce-account .woocommerce-address-fields select,
body.woocommerce-account .woocommerce-EditAccountForm input.input-text,
body.woocommerce-account .woocommerce-EditAccountForm select,
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout select,
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox-control input.components-combobox-control__input{
  height:54px!important;
  min-height:54px!important;
  display:block!important;
  box-sizing:border-box!important;
  padding:0 14px!important;
  line-height:54px!important;
  color:#202832!important;
  font-size:15px!important;
}
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox-control input.components-combobox-control__input{
  padding-top:18px!important;
  padding-bottom:6px!important;
  line-height:1.2!important;
}
body.woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wc-block-components-combobox-control label{
  top:7px!important;
  line-height:1!important;
}

/* Mantiene visibile il testo del bottone carrello anche se WooCommerce Blocks aggiunge layer interni */
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-block-components-button:not(.is-link){
  color:#fff!important;
  background:#202832!important;
  opacity:1!important;
}
body.woocommerce-cart .wc-block-cart__submit-button span,
body.woocommerce-cart .wc-block-components-button__text,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
}
body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-block-components-button:not(.is-link):hover{
  background:var(--orange)!important;
  color:#fff!important;
}

@media(max-width:980px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit{
    text-align:left!important;
  }
}

/* ============================================================
   MECANO LAB V94 - rifinitura finale indirizzi / checkout fiscale
   Solo WooCommerce account, indirizzi e checkout.
   ============================================================ */
/* Pagina indirizzi: link aggiungi/modifica puliti, non bottoni neri né testi spezzati */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:30px!important;
  align-items:stretch!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2{
  min-height:0!important;
  padding:30px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
  display:block!important;
  text-align:left!important;
  margin:0 0 18px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
  display:block!important;
  width:100%!important;
  margin:0 0 12px!important;
  text-align:left!important;
  font-size:clamp(27px,2.15vw,34px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
  color:#202832!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address .edit,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 .edit,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 .edit{
  display:inline-block!important;
  width:auto!important;
  max-width:none!important;
  min-height:0!important;
  padding:0!important;
  margin:0 0 8px!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.25!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
  white-space:nowrap!important;
  text-align:left!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address .edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 .edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 .edit:hover{
  background:transparent!important;
  color:#101820!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 address{
  margin-top:auto!important;
  padding-top:6px!important;
  font-size:16px!important;
  line-height:1.65!important;
}

/* Form indirizzi account: griglia stabile e niente colonne strette */
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 20px!important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row{
  float:none!important;
  width:100%!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_customer_type_field,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_company_field,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_codice_fiscale_field,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_address_1_field,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_address_2_field,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #shipping_address_1_field,
body.woocommerce-account .woocommerce-address-fields__field-wrapper #shipping_address_2_field{
  grid-column:1/-1!important;
}
body.woocommerce-account .woocommerce-address-fields__field-wrapper label,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper label,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper label{
  white-space:normal!important;
}

/* Checkout: mette i dati fiscali nel blocco indirizzo e nasconde note ordine superflue */
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .wc-block-checkout__order-notes,
body.woocommerce-checkout [id*="order-notes"]{
  display:none!important;
}
body.woocommerce-checkout #ship-to-different-address{
  margin:18px 0 20px!important;
  padding:16px 18px!important;
  border:1px solid #e1e5ea!important;
  background:#fff!important;
}
body.woocommerce-checkout #ship-to-different-address label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  font-size:14px!important;
  font-weight:850!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  color:#202832!important;
}
body.woocommerce-checkout #ship-to-different-address input{
  width:18px!important;
  height:18px!important;
  accent-color:var(--orange)!important;
}

/* Campi fiscali: labels pulite, obbligatorio/facoltativo gestito via JS */
body.woocommerce-checkout #billing_company_field,
body.woocommerce-account #billing_company_field,
body.woocommerce-checkout .mecano-business-field,
body.woocommerce-account .mecano-business-field{
  transition:opacity .15s ease!important;
}
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-account #billing_customer_type_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-account #billing_codice_fiscale_field{
  grid-column:1/-1!important;
}

@media(max-width:980px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit{
    white-space:normal!important;
  }
}

/* ============================================================
   MECANO LAB V95 - WooCommerce checkout/account polish
   Solo account, indirizzi, carrello e checkout.
   ============================================================ */
/* Account > Indirizzi: link azione su due righe coerenti, sotto il titolo, allineati a sinistra */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
  display:block!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3{
  text-align:left!important;
  margin:0 0 14px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit{
  display:inline-flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:1px!important;
  max-width:220px!important;
  margin:0 0 16px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  box-shadow:none!important;
  line-height:1.2!important;
  white-space:normal!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit span,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit span{
  display:block!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit:hover{
  color:#101820!important;
  background:transparent!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 address{
  margin-top:0!important;
}

/* Nasconde i pulsanti PayPal Express su prodotto/carrello/inizio checkout: PayPal resta disponibile come normale metodo di pagamento nel checkout. */
body.single-product .ppc-button-wrapper,
body.single-product .paypal-button-container,
body.single-product .paypal-buttons,
body.single-product [id*="paypal-button"],
body.single-product [class*="paypal-button"],
body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-cart .paypal-button-container,
body.woocommerce-cart .paypal-buttons,
body.woocommerce-cart .wc-block-components-express-payment,
body.woocommerce-cart .wc-block-cart__payment-options,
body.woocommerce-cart [id*="paypal-button"],
body.woocommerce-cart [class*="paypal-button"],
body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-checkout__express-payment,
body.woocommerce-checkout .wc-block-components-express-payment-continue-rule,
body.woocommerce-checkout .ppc-button-wrapper.ppcp-dcc-order-button,
body.woocommerce-checkout .ppc-button-wrapper[class*="express"],
body.woocommerce-checkout [data-block-name="woocommerce/checkout-express-payment-block"]{
  display:none!important;
}

/* Checkout: tipo cliente e dati fiscali più vicini all'inizio, niente blocco fiscale disperso in fondo. */
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-account #billing_customer_type_field{
  order:-20!important;
  grid-column:1/-1!important;
}
body.woocommerce-checkout #billing_email_field{
  order:-19!important;
  grid-column:1/-1!important;
}
body.woocommerce-checkout #billing_company_field,
body.woocommerce-account #billing_company_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-account #billing_codice_fiscale_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout .mecano-business-field,
body.woocommerce-account .mecano-business-field{
  min-width:0!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  align-items:start!important;
}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  line-height:1.25!important;
}

/* WooCommerce Blocks: contenitori dei campi Mecano ordinati e ben leggibili. */
body.woocommerce-checkout [id*="mecanolab/customer-type"],
body.woocommerce-checkout [id*="mecanolab/fiscal-code"],
body.woocommerce-checkout [id*="mecanolab/vat-number"],
body.woocommerce-checkout [id*="mecanolab/sdi-code"]{
  width:100%!important;
  max-width:none!important;
}
body.woocommerce-checkout .mecano-v95-hidden{
  display:none!important;
}
body.woocommerce-checkout .mecano-v95-customer-type-row{
  margin-bottom:16px!important;
}
body.woocommerce-checkout .mecano-v95-tax-row{
  margin-top:12px!important;
}

@media(max-width:980px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit span,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit span{
    white-space:normal!important;
  }
}

/* ============================================================
   MECANO LAB V96 - rifinitura definitiva account/indirizzi/checkout
   Solo WooCommerce: account, indirizzi, carrello, checkout.
   ============================================================ */
/* Account > Indirizzi: due card ordinate, titoli coerenti, link su una riga allineati a sinistra */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:32px!important;
  align-items:stretch!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2{
  padding:34px!important;
  min-height:250px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
  width:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:14px!important;
  margin:0 0 28px!important;
  padding:0!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3{
  display:block!important;
  float:none!important;
  width:100%!important;
  max-width:360px!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  font-size:clamp(28px,2.05vw,36px)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  color:#202832!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2 span,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 span,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2 span,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3 span{
  display:block!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address .edit,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 .edit,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 .edit{
  float:none!important;
  clear:both!important;
  position:static!important;
  display:inline-block!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  box-shadow:none!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.25!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-align:left!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit span,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit span{
  display:inline!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit:hover{
  color:#101820!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1 address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2 address{
  margin:0!important;
  padding:0!important;
  max-width:100%!important;
  font-size:17px!important;
  line-height:1.65!important;
  color:#46515d!important;
}

/* Checkout classico controllato: griglia pulita, campo cliente subito dopo email */
body.woocommerce-checkout form.checkout{
  align-items:flex-start!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px 20px!important;
  align-items:start!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row{
  float:none!important;
  width:100%!important;
  margin:0!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-account #billing_customer_type_field,
body.woocommerce-account #billing_company_field,
body.woocommerce-account #billing_codice_fiscale_field,
body.woocommerce-account #billing_address_1_field,
body.woocommerce-account #billing_address_2_field,
body.woocommerce-account #billing_country_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  display:block!important;
  margin:0 0 6px!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#202832!important;
}
body.woocommerce-checkout .form-row input,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-account .form-row input,
body.woocommerce-account .form-row select,
body.woocommerce-account .form-row textarea{
  min-height:56px!important;
  padding:18px 16px 8px!important;
  font-size:16px!important;
  line-height:1.2!important;
  color:#202832!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout #billing_customer_type,
body.woocommerce-account #billing_customer_type{
  padding:0 16px!important;
  min-height:58px!important;
  background-position:right 16px center!important;
}
body.woocommerce-checkout #ship-to-different-address{
  margin:24px 0 18px!important;
  padding:18px 20px!important;
  border:1px solid #e1e5ea!important;
  background:#fff!important;
}
body.woocommerce-checkout #ship-to-different-address label{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0!important;
  font-size:15px!important;
  line-height:1.3!important;
  font-weight:850!important;
  text-transform:none!important;
  letter-spacing:.01em!important;
  color:#202832!important;
}
body.woocommerce-checkout #ship-to-different-address input{
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
  padding:0!important;
  accent-color:var(--orange)!important;
}
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout .wc-block-checkout__order-notes,
body.woocommerce-checkout [id*="order-notes"]{
  display:none!important;
}

/* Nasconde messaggi PayPal Pay Later / Paga in 3 rate fuori dal metodo pagamento finale */
body.single-product .ppcp-messages,
body.single-product .ppcp-messages-container,
body.single-product .paypal-messages,
body.single-product [data-pp-message],
body.single-product [class*="paylater"],
body.single-product [id*="paylater"],
body.woocommerce-cart .ppcp-messages,
body.woocommerce-cart .ppcp-messages-container,
body.woocommerce-cart .paypal-messages,
body.woocommerce-cart [data-pp-message],
body.woocommerce-cart [class*="paylater"],
body.woocommerce-cart [id*="paylater"],
body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-checkout__express-payment,
body.woocommerce-checkout .wc-block-components-express-payment-continue-rule{
  display:none!important;
}

/* Se il vecchio Checkout Block rimane in cache per un giro, non mostrare il campo duplicato/freccia isolata sotto Tipo cliente */
body.woocommerce-checkout .mecano-v96-hidden,
body.woocommerce-account .mecano-v96-hidden{
  display:none!important;
}
body.woocommerce-checkout .mecano-v96-customer-type .wc-block-components-select__expand,
body.woocommerce-checkout .mecano-v96-customer-type svg{
  top:50%!important;
  transform:translateY(-50%)!important;
}

@media(max-width:980px){
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3{
    max-width:none!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit{
    white-space:normal!important;
  }
}

/* ============================================================
   Mecano Lab V99 - WooCommerce carrello/checkout/account stabile
   Solo aree WooCommerce. Non tocca home, menu, prodotti o pagine custom.
   ============================================================ */
body.woocommerce-cart .generic-page,
body.woocommerce-checkout .generic-page,
body.woocommerce-account .generic-page{
  max-width:1460px!important;
  width:calc(100% - 96px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.woocommerce-cart .generic-page .generic-page-content,
body.woocommerce-checkout .generic-page .generic-page-content,
body.woocommerce-account .generic-page .generic-page-content{
  max-width:none!important;
  width:100%!important;
}
body.woocommerce-cart .generic-page-title,
body.woocommerce-checkout .generic-page-title,
body.woocommerce-account .generic-page-title{
  margin-bottom:46px!important;
}

/* Account generale */
body.woocommerce-account .woocommerce{
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  gap:44px!important;
  align-items:start!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation{
  width:auto!important;
  float:none!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #e2e7ec!important;
  background:#fff!important;
  box-shadow:0 24px 60px rgba(16,24,32,.08)!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  margin:0!important;
  border-bottom:1px solid #e2e7ec!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0!important;}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block!important;
  padding:19px 22px!important;
  color:#202832!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  background:#101820!important;
  color:#fff!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  width:auto!important;
  float:none!important;
  max-width:none!important;
  min-width:0!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content > p,
body.woocommerce-account .woocommerce-MyAccount-content > form,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-message,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-info,
body.woocommerce-account .woocommerce-MyAccount-content > .woocommerce-error{
  margin-left:0!important;
  margin-right:0!important;
}

/* Account indirizzi: due card uguali, link allineati a sinistra e su una riga */
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:30px!important;
  align-items:stretch!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
body.woocommerce-account .woocommerce-MyAccount-content .u-column2{
  border:1px solid #e1e6eb!important;
  background:#fff!important;
  box-shadow:0 30px 70px rgba(16,24,32,.08)!important;
  padding:36px!important;
  min-height:260px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  width:100%!important;
  margin:0 0 26px!important;
  padding:0!important;
  gap:12px!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  display:block!important;
  color:#202832!important;
  font-size:clamp(28px,2vw,36px)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
  text-align:left!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2 span,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 span,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2 span,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3 span{
  display:block!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit{
  float:none!important;
  position:static!important;
  display:inline-block!important;
  align-self:flex-start!important;
  margin:0!important;
  padding:0!important;
  width:auto!important;
  max-width:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#f45100!important;
  text-align:left!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit:hover,
body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit:hover{
  color:#101820!important;
}
body.woocommerce-account .woocommerce-MyAccount-content address{
  margin:0!important;
  color:#46515d!important;
  font-size:17px!important;
  line-height:1.65!important;
}

/* Account metodi pagamento / notices */
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error{
  position:relative!important;
  display:block!important;
  margin:0 0 24px!important;
  padding:22px 26px 22px 58px!important;
  border:1px solid #f45100!important;
  border-top:3px solid #f45100!important;
  background:#fff7f2!important;
  color:#202832!important;
  font-size:16px!important;
  line-height:1.5!important;
  box-shadow:none!important;
}
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-error::before,
body.woocommerce-checkout .woocommerce-info::before,
body.woocommerce-checkout .woocommerce-message::before,
body.woocommerce-checkout .woocommerce-error::before{
  position:absolute!important;
  left:24px!important;
  top:24px!important;
  color:#f45100!important;
  font-size:18px!important;
  line-height:1!important;
}
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-message .button,
body.woocommerce-account .woocommerce-error .button{
  margin-top:14px!important;
}

/* Bottoni WooCommerce coerenti */
body.woocommerce-cart .button,
body.woocommerce-checkout .button,
body.woocommerce-account .button,
body.woocommerce-cart button.button,
body.woocommerce-checkout button.button,
body.woocommerce-account button.button,
body.woocommerce-cart a.button,
body.woocommerce-checkout a.button,
body.woocommerce-account a.button{
  min-height:56px!important;
  padding:0 28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#101820!important;
  color:#fff!important;
  border:1px solid #101820!important;
  border-radius:0!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  transition:.2s ease!important;
}
body.woocommerce-cart .button:hover,
body.woocommerce-checkout .button:hover,
body.woocommerce-account .button:hover,
body.woocommerce-cart button.button:hover,
body.woocommerce-checkout button.button:hover,
body.woocommerce-account button.button:hover,
body.woocommerce-cart a.button:hover,
body.woocommerce-checkout a.button:hover,
body.woocommerce-account a.button:hover{
  background:#f45100!important;
  border-color:#f45100!important;
  color:#fff!important;
}

/* Checkout classico: layout compatto e ordinato */
body.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1.7fr) minmax(360px,.9fr)!important;
  gap:46px!important;
  align-items:start!important;
}
body.woocommerce-checkout form.checkout #customer_details{
  grid-column:1!important;
  width:100%!important;
}
body.woocommerce-checkout form.checkout #order_review_heading,
body.woocommerce-checkout form.checkout #order_review{
  grid-column:2!important;
  width:100%!important;
}
body.woocommerce-checkout form.checkout #order_review{
  border:1px solid #e1e6eb!important;
  background:#fff!important;
  box-shadow:0 30px 70px rgba(16,24,32,.08)!important;
  padding:28px!important;
  position:sticky!important;
  top:120px!important;
}
body.woocommerce-checkout form.checkout #order_review_heading{
  margin:0 0 14px!important;
  font-size:24px!important;
  line-height:1.2!important;
  letter-spacing:-.02em!important;
}
body.woocommerce-checkout .col2-set{
  width:100%!important;
  float:none!important;
}
body.woocommerce-checkout .col2-set .col-1,
body.woocommerce-checkout .col2-set .col-2{
  width:100%!important;
  float:none!important;
  margin:0!important;
}
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields{
  border:1px solid #e1e6eb!important;
  background:#fff!important;
  padding:32px!important;
  margin:0 0 28px!important;
  box-shadow:0 22px 55px rgba(16,24,32,.06)!important;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-account .woocommerce-address-fields h2,
body.woocommerce-account .woocommerce-address-fields h3{
  color:#202832!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:17px 22px!important;
  align-items:start!important;
}
body.woocommerce-checkout .form-row,
body.woocommerce-account .form-row{
  float:none!important;
  width:100%!important;
  margin:0!important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-account #billing_customer_type_field,
body.woocommerce-account #billing_company_field,
body.woocommerce-account #billing_codice_fiscale_field,
body.woocommerce-account #billing_address_1_field,
body.woocommerce-account #billing_address_2_field,
body.woocommerce-account #billing_country_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-account #billing_country_field,
body.woocommerce-account #shipping_country_field{
  display:none!important;
}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  display:block!important;
  margin:0 0 7px!important;
  color:#202832!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .form-row input,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-account .form-row input,
body.woocommerce-account .form-row select,
body.woocommerce-account .form-row textarea{
  width:100%!important;
  min-height:58px!important;
  padding:17px 16px!important;
  border:1px solid #d8dfe5!important;
  background:#fff!important;
  color:#202832!important;
  font-size:16px!important;
  line-height:1.3!important;
  box-sizing:border-box!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.woocommerce-checkout .form-row input:focus,
body.woocommerce-checkout .form-row select:focus,
body.woocommerce-checkout .form-row textarea:focus,
body.woocommerce-account .form-row input:focus,
body.woocommerce-account .form-row select:focus,
body.woocommerce-account .form-row textarea:focus{
  border-color:#f45100!important;
  outline:none!important;
}
body.woocommerce-checkout #billing_customer_type,
body.woocommerce-account #billing_customer_type{
  padding-top:0!important;
  padding-bottom:0!important;
  font-weight:650!important;
}
body.woocommerce-checkout #ship-to-different-address{
  margin:0 0 22px!important;
  padding:18px 22px!important;
  border:1px solid #e1e6eb!important;
  background:#fff!important;
}
body.woocommerce-checkout #ship-to-different-address label{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0!important;
  color:#202832!important;
  font-size:15px!important;
  font-weight:850!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.woocommerce-checkout #ship-to-different-address input{
  width:18px!important;
  height:18px!important;
  min-height:18px!important;
  padding:0!important;
  accent-color:#f45100!important;
}
body.woocommerce-checkout .woocommerce-additional-fields{display:none!important;}
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td,
body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td{
  padding:16px 0!important;
  border-color:#e1e6eb!important;
  color:#202832!important;
}
body.woocommerce-checkout table.shop_table .product-name,
body.woocommerce-cart table.shop_table .product-name{
  font-weight:800!important;
  line-height:1.35!important;
}
body.woocommerce-checkout #payment{
  background:transparent!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  border:1px solid #e1e6eb!important;
  background:#fff!important;
  padding:0!important;
}
body.woocommerce-checkout #payment ul.payment_methods li{
  padding:18px 18px!important;
  border-bottom:1px solid #e1e6eb!important;
}
body.woocommerce-checkout #payment ul.payment_methods li:last-child{border-bottom:0!important;}
body.woocommerce-checkout #place_order{
  width:100%!important;
  margin-top:18px!important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a{color:#f45100!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:3px!important;}

/* Carrello classico: prodotti a sinistra, totale a destra */
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals{
  float:none!important;
}
body.woocommerce-cart .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1.65fr) minmax(360px,.9fr)!important;
  gap:46px!important;
  align-items:start!important;
}
body.woocommerce-cart .woocommerce-notices-wrapper{
  grid-column:1/-1!important;
}
body.woocommerce-cart .woocommerce-cart-form{
  grid-column:1!important;
  width:100%!important;
}
body.woocommerce-cart .cart-collaterals{
  grid-column:2!important;
  width:100%!important;
}
body.woocommerce-cart .cart_totals{
  float:none!important;
  width:100%!important;
  border:1px solid #e1e6eb!important;
  background:#fff!important;
  padding:30px!important;
  box-shadow:0 30px 70px rgba(16,24,32,.08)!important;
  position:sticky!important;
  top:120px!important;
}
body.woocommerce-cart .cart_totals h2{
  margin:0 0 26px!important;
  color:#202832!important;
  font-size:clamp(32px,3vw,48px)!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  text-transform:uppercase!important;
}
body.woocommerce-cart .wc-proceed-to-checkout .checkout-button{
  width:100%!important;
}
body.woocommerce-cart .product-thumbnail img{
  width:92px!important;
  height:92px!important;
  object-fit:cover!important;
}
body.woocommerce-cart .product-name a{
  color:#202832!important;
  font-weight:850!important;
  text-decoration:none!important;
}
body.woocommerce-cart .product-name a:hover{color:#f45100!important;}

/* Nasconde PayPal Express / Pay Later fuori dai metodi pagamento finali */
body.single-product .ppcp-messages,
body.single-product .ppcp-messages-container,
body.single-product .paypal-messages,
body.single-product [data-pp-message],
body.single-product [class*="paylater"],
body.single-product [id*="paylater"],
body.single-product [class*="PayLater"],
body.woocommerce-cart .ppcp-messages,
body.woocommerce-cart .ppcp-messages-container,
body.woocommerce-cart .paypal-messages,
body.woocommerce-cart [data-pp-message],
body.woocommerce-cart [class*="paylater"],
body.woocommerce-cart [id*="paylater"],
body.woocommerce-cart [class*="PayLater"],
body.woocommerce-cart .wc-block-cart__payment-options,
body.woocommerce-checkout .wc-block-components-express-payment,
body.woocommerce-checkout .wc-block-checkout__express-payment,
body.woocommerce-checkout .wc-block-components-express-payment-continue-rule{
  display:none!important;
}

@media(max-width:1024px){
  body.woocommerce-cart .generic-page,
  body.woocommerce-checkout .generic-page,
  body.woocommerce-account .generic-page{
    width:calc(100% - 40px)!important;
  }
  body.woocommerce-account .woocommerce,
  body.woocommerce-cart .woocommerce,
  body.woocommerce-checkout form.checkout{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  body.woocommerce-checkout form.checkout #customer_details,
  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review,
  body.woocommerce-cart .woocommerce-cart-form,
  body.woocommerce-cart .cart-collaterals{
    grid-column:1!important;
  }
  body.woocommerce-checkout form.checkout #order_review,
  body.woocommerce-cart .cart_totals{
    position:static!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-columns--addresses,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr!important;
  }
}

/* ============================================================
   MECANO LAB V100 - WooCommerce cleanup definitivo
   Solo carrello / checkout / account. Overrides in fondo per
   chiudere conflitti delle versioni precedenti.
   ============================================================ */
body.woocommerce-cart .woocommerce-page-content>.container,
body.woocommerce-checkout .woocommerce-page-content>.container,
body.woocommerce-account .woocommerce-page-content>.container,
body.woocommerce-cart .generic-page .ml-page-inner.wp-editable-content,
body.woocommerce-checkout .generic-page .ml-page-inner.wp-editable-content,
body.woocommerce-account .generic-page .ml-page-inner.wp-editable-content{
  width:min(1280px,calc(100% - 64px))!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.woocommerce-cart .generic-page,
body.woocommerce-checkout .generic-page,
body.woocommerce-account .generic-page,
body.woocommerce-cart .woocommerce-page-content,
body.woocommerce-checkout .woocommerce-page-content,
body.woocommerce-account .woocommerce-page-content{
  padding-top:118px!important;
  padding-bottom:86px!important;
  background:#fff!important;
}

/* Nasconde coupon buttati in alto o dentro al carrello finché non servono. */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon,
body.woocommerce-cart .coupon,
body.woocommerce-cart .actions .coupon,
body.woocommerce-cart td.actions .coupon,
body.woocommerce-cart .cart-collaterals .coupon{
  display:none!important;
}
body.woocommerce-cart td.actions{
  text-align:right!important;
}

/* Nasconde PayPal Express / Pay Later / messaggi rate fuori dal metodo pagamento finale. */
body.single-product .ppcp-messages,
body.single-product .ppcp-messages-container,
body.single-product .paypal-messages,
body.single-product [data-pp-message],
body.single-product .ppc-button-wrapper,
body.single-product .paypal-button-container,
body.single-product .paypal-buttons,
body.woocommerce-cart .ppcp-messages,
body.woocommerce-cart .ppcp-messages-container,
body.woocommerce-cart .paypal-messages,
body.woocommerce-cart [data-pp-message],
body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-cart .paypal-button-container,
body.woocommerce-cart .paypal-buttons,
body.woocommerce-checkout .woocommerce-form-login-toggle + .ppcp-messages,
body.woocommerce-checkout .woocommerce-form-coupon-toggle + .ppcp-messages,
body.woocommerce-checkout .ppcp-messages:not(#payment .ppcp-messages):not(.woocommerce-checkout-payment .ppcp-messages),
body.woocommerce-checkout .ppcp-messages-container:not(#payment .ppcp-messages-container):not(.woocommerce-checkout-payment .ppcp-messages-container),
body.woocommerce-checkout [data-pp-message]:not(#payment [data-pp-message]):not(.woocommerce-checkout-payment [data-pp-message]){
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}

/* Bottoni, campi e link coerenti. */
body.woocommerce-cart .woocommerce .button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-cart .woocommerce input.button,
body.woocommerce-checkout .woocommerce .button,
body.woocommerce-checkout .woocommerce button.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-checkout .woocommerce input.button,
body.woocommerce-account .woocommerce .button,
body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce a.button,
body.woocommerce-account .woocommerce input.button{
  min-height:52px!important;
  border:0!important;
  border-radius:0!important;
  background:#202832!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0 24px!important;
  text-transform:uppercase!important;
  letter-spacing:.065em!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.1!important;
  opacity:1!important;
}
body.woocommerce-cart .woocommerce .button:hover,
body.woocommerce-cart .woocommerce button.button:hover,
body.woocommerce-cart .woocommerce a.button:hover,
body.woocommerce-cart .woocommerce input.button:hover,
body.woocommerce-checkout .woocommerce .button:hover,
body.woocommerce-checkout .woocommerce button.button:hover,
body.woocommerce-checkout .woocommerce a.button:hover,
body.woocommerce-checkout .woocommerce input.button:hover,
body.woocommerce-account .woocommerce .button:hover,
body.woocommerce-account .woocommerce button.button:hover,
body.woocommerce-account .woocommerce a.button:hover,
body.woocommerce-account .woocommerce input.button:hover{
  background:var(--orange)!important;
  color:#fff!important;
}
body.woocommerce-cart input.input-text,
body.woocommerce-checkout input.input-text,
body.woocommerce-account input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-account textarea,
body.woocommerce-checkout select,
body.woocommerce-account select,
body.woocommerce-cart select{
  width:100%!important;
  min-height:52px!important;
  border:1px solid #cfd5dc!important;
  border-radius:0!important;
  background:#fff!important;
  color:#1d252f!important;
  padding:0 16px!important;
  font-size:15px!important;
  line-height:52px!important;
  box-shadow:none!important;
}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-account input.input-text:focus,
body.woocommerce-checkout select:focus,
body.woocommerce-account select:focus{
  outline:0!important;
  border-color:var(--orange)!important;
  box-shadow:0 0 0 3px rgba(233,75,10,.12)!important;
}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  color:#202832!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  margin-bottom:7px!important;
}
body.woocommerce-checkout .form-row label .required,
body.woocommerce-account .form-row label .required,
body.woocommerce-checkout abbr.required,
body.woocommerce-account abbr.required{
  color:var(--orange)!important;
  text-decoration:none!important;
}
body.woocommerce-checkout .mecano-country-hidden,
body.woocommerce-account .mecano-country-hidden,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-account #billing_country_field,
body.woocommerce-account #shipping_country_field{
  display:none!important;
}

/* CHECKOUT classico: sinistra form, destra riepilogo; niente colonne strozzate. */
body.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(390px,430px)!important;
  gap:52px!important;
  align-items:start!important;
}
body.woocommerce-checkout #customer_details{
  grid-column:1!important;
  width:100%!important;
  float:none!important;
  min-width:0!important;
  border:1px solid #e0e5eb!important;
  padding:32px!important;
  box-shadow:0 20px 54px rgba(16,24,34,.055)!important;
  background:#fff!important;
}
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout #order_review{
  grid-column:2!important;
  width:100%!important;
  float:none!important;
  min-width:0!important;
}
body.woocommerce-checkout #order_review_heading{
  margin:0 0 16px!important;
  font-size:clamp(28px,2.4vw,38px)!important;
  line-height:1.06!important;
  letter-spacing:-.035em!important;
  text-transform:uppercase!important;
  color:#1d252f!important;
}
body.woocommerce-checkout #order_review{
  border:1px solid #dfe3e8!important;
  background:#fff!important;
  padding:26px!important;
  box-shadow:0 20px 54px rgba(16,24,34,.065)!important;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{
  margin:0 0 28px!important;
  color:#1d252f!important;
  font-size:clamp(28px,2.6vw,42px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 24px!important;
  align-items:start!important;
}
body.woocommerce-checkout .form-row,
body.woocommerce-account .form-row{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_customer_type_field,
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-account .form-row-wide,
body.woocommerce-account #billing_customer_type_field,
body.woocommerce-account #billing_company_field,
body.woocommerce-account #billing_codice_fiscale_field,
body.woocommerce-account #billing_address_1_field,
body.woocommerce-account #billing_address_2_field,
body.woocommerce-account #shipping_customer_type_field,
body.woocommerce-account #shipping_company_field,
body.woocommerce-account #shipping_address_1_field,
body.woocommerce-account #shipping_address_2_field{
  grid-column:1/-1!important;
}
body.woocommerce-checkout .woocommerce-shipping-fields{
  margin-top:34px!important;
  border-top:1px solid #e3e7ec!important;
  padding-top:28px!important;
}
body.woocommerce-checkout .woocommerce-shipping-fields h3 label{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  margin:0!important;
  color:#1d252f!important;
  font-size:18px!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-transform:none!important;
  font-weight:800!important;
}
body.woocommerce-checkout .woocommerce-shipping-fields h3 input{
  width:18px!important;
  height:18px!important;
  margin:0!important;
  accent-color:var(--orange)!important;
}

/* Riepilogo ordine classico leggibile. */
body.woocommerce-checkout table.shop_table,
body.woocommerce-cart table.shop_table{
  width:100%!important;
  border:0!important;
  border-collapse:collapse!important;
  table-layout:auto!important;
}
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td,
body.woocommerce-cart table.shop_table th,
body.woocommerce-cart table.shop_table td{
  border:0!important;
  border-bottom:1px solid #e2e6eb!important;
  padding:16px 0!important;
  vertical-align:top!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th,
body.woocommerce-cart table.shop_table thead th{
  color:#1d252f!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tbody tr.cart_item{
  display:table-row!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-name{
  width:72%!important;
  color:#1d252f!important;
  font-size:15px!important;
  font-weight:800!important;
  line-height:1.28!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td.product-total{
  width:28%!important;
  text-align:right!important;
  white-space:nowrap!important;
  color:#1d252f!important;
  font-weight:850!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation{
  margin:8px 0 0!important;
  color:#5c6672!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.35!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation dt,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .variation dd{
  display:inline!important;
  float:none!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td{
  vertical-align:top!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table ul#shipping_method li{
  margin:0 0 10px!important;
  line-height:1.35!important;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
  color:#1d252f!important;
  font-size:22px!important;
  font-weight:900!important;
}
body.woocommerce-checkout .woocommerce-checkout-payment{
  margin-top:24px!important;
}
body.woocommerce-checkout #payment{
  background:#fff!important;
  border-radius:0!important;
}
body.woocommerce-checkout #payment ul.payment_methods{
  border:1px solid #dfe3e8!important;
  padding:0!important;
  margin:0 0 22px!important;
}
body.woocommerce-checkout #payment ul.payment_methods li{
  padding:16px 18px!important;
  border-bottom:1px solid #e7eaef!important;
}
body.woocommerce-checkout #payment ul.payment_methods li:last-child{
  border-bottom:0!important;
}
body.woocommerce-checkout #place_order{
  width:100%!important;
  min-height:56px!important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text{
  margin:20px 0 14px!important;
  font-size:14px!important;
  line-height:1.55!important;
  color:#2d3742!important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-privacy-policy-text a{
  color:var(--orange)!important;
  font-weight:850!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* CARRELLO classico pulito. */
body.woocommerce-cart .wp-editable-content>.woocommerce,
body.woocommerce-cart .woocommerce-page-content .woocommerce{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(360px,420px)!important;
  gap:46px!important;
  align-items:start!important;
}
body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info{
  grid-column:1/-1!important;
}
body.woocommerce-cart form.woocommerce-cart-form{
  grid-column:1!important;
  width:100%!important;
  min-width:0!important;
  float:none!important;
}
body.woocommerce-cart .cart-collaterals{
  grid-column:2!important;
  width:100%!important;
  float:none!important;
  min-width:0!important;
}
body.woocommerce-cart .cart_totals{
  width:100%!important;
  float:none!important;
  border:1px solid #dfe3e8!important;
  padding:28px!important;
  background:#fff!important;
  box-shadow:0 20px 54px rgba(16,24,34,.065)!important;
}
body.woocommerce-cart .cart_totals h2{
  margin:0 0 24px!important;
  color:#1d252f!important;
  font-size:clamp(30px,2.7vw,42px)!important;
  line-height:1.04!important;
  letter-spacing:-.04em!important;
}
body.woocommerce-cart table.cart td.product-name{
  min-width:280px!important;
  font-size:15px!important;
  line-height:1.3!important;
}
body.woocommerce-cart table.cart td.product-name a{
  color:#1d252f!important;
  font-weight:850!important;
}
body.woocommerce-cart table.cart td.product-thumbnail img{
  width:74px!important;
  height:74px!important;
  object-fit:cover!important;
  border:1px solid #eef0f2!important;
}
body.woocommerce-cart table.cart td.product-price,
body.woocommerce-cart table.cart td.product-subtotal{
  white-space:nowrap!important;
  font-weight:850!important;
}
body.woocommerce-cart table.cart td.product-quantity .qty{
  width:70px!important;
  min-height:42px!important;
  text-align:center!important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  width:100%!important;
  min-height:56px!important;
  margin:20px 0 0!important;
}

/* ACCOUNT: card, avvisi, metodi pagamento, indirizzi. */
body.woocommerce-account .woocommerce{
  display:grid!important;
  grid-template-columns:250px minmax(0,1fr)!important;
  gap:46px!important;
  align-items:start!important;
}
body.woocommerce-account .woocommerce-notices-wrapper,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-account .woocommerce-info{
  grid-column:1/-1!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #e1e5ea!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{
  border-bottom:1px solid #e1e5ea!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{border-bottom:0!important;}
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block!important;
  padding:16px 18px!important;
  color:#1d252f!important;
  font-size:13px!important;
  font-weight:850!important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation a:hover{
  color:#fff!important;
  background:#1f2833!important;
}
body.woocommerce-account .woocommerce-MyAccount-content{
  min-width:0!important;
  border:1px solid #e0e5eb!important;
  padding:30px 32px!important;
  box-shadow:0 20px 54px rgba(16,24,34,.055)!important;
  background:#fff!important;
}
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-columns--addresses{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:28px!important;
}
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address{
  min-height:220px!important;
  border:1px solid #e1e5ea!important;
  padding:28px!important;
  background:#fff!important;
}
body.woocommerce-account .woocommerce-Address-title,
body.woocommerce-account header.woocommerce-Address-title{
  display:block!important;
  margin:0 0 22px!important;
}
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account header.woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  display:block!important;
  margin:0 0 12px!important;
  color:#1d252f!important;
  font-size:clamp(26px,2.4vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account header.woocommerce-Address-title a.edit{
  display:inline-block!important;
  float:none!important;
  clear:both!important;
  min-height:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--orange)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.06em!important;
  line-height:1.2!important;
  text-transform:uppercase!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
  white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit:hover,
body.woocommerce-account header.woocommerce-Address-title a.edit:hover{
  background:transparent!important;
  color:#1d252f!important;
}
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error{
  position:relative!important;
  border-top:3px solid var(--orange)!important;
  background:#fff7f2!important;
  color:#1d252f!important;
  padding:18px 20px 18px 52px!important;
  line-height:1.5!important;
}
body.woocommerce-account .woocommerce-info:before,
body.woocommerce-account .woocommerce-message:before,
body.woocommerce-account .woocommerce-error:before,
body.woocommerce-checkout .woocommerce-info:before,
body.woocommerce-checkout .woocommerce-message:before,
body.woocommerce-checkout .woocommerce-error:before,
body.woocommerce-cart .woocommerce-info:before,
body.woocommerce-cart .woocommerce-message:before,
body.woocommerce-cart .woocommerce-error:before{
  top:18px!important;
  left:20px!important;
  color:var(--orange)!important;
}
body.woocommerce-account .woocommerce-info .button,
body.woocommerce-account .woocommerce-message .button{
  margin-left:14px!important;
}

@media(max-width:1050px){
  body.woocommerce-checkout form.checkout,
  body.woocommerce-cart .wp-editable-content>.woocommerce,
  body.woocommerce-cart .woocommerce-page-content .woocommerce,
  body.woocommerce-account .woocommerce{
    display:block!important;
  }
  body.woocommerce-checkout #order_review_heading,
  body.woocommerce-checkout #order_review,
  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-account .woocommerce-MyAccount-content{
    margin-top:34px!important;
  }
}
@media(max-width:720px){
  body.woocommerce-cart .woocommerce-page-content>.container,
  body.woocommerce-checkout .woocommerce-page-content>.container,
  body.woocommerce-account .woocommerce-page-content>.container,
  body.woocommerce-cart .generic-page .ml-page-inner.wp-editable-content,
  body.woocommerce-checkout .generic-page .ml-page-inner.wp-editable-content,
  body.woocommerce-account .generic-page .ml-page-inner.wp-editable-content{
    width:calc(100% - 28px)!important;
  }
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review,
  body.woocommerce-cart .cart_totals,
  body.woocommerce-account .woocommerce-MyAccount-content{
    padding:22px!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper,
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body.woocommerce-cart table.cart td.product-name{
    min-width:0!important;
  }
}

/* ============================================================
   MECANO LAB V101 - WooCommerce final overrides
   ============================================================ */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon,
body.woocommerce-cart .coupon,
body.woocommerce-cart td.actions .coupon,
body.woocommerce-cart .cart-collaterals .coupon{display:none!important;}

body.single-product .ppcp-messages,
body.single-product .ppcp-messages-container,
body.single-product .paypal-messages,
body.single-product [data-pp-message],
body.single-product .ppc-button-wrapper,
body.single-product .paypal-button-container,
body.single-product .paypal-buttons,
body.woocommerce-cart .ppcp-messages,
body.woocommerce-cart .ppcp-messages-container,
body.woocommerce-cart .paypal-messages,
body.woocommerce-cart [data-pp-message],
body.woocommerce-cart .ppc-button-wrapper,
body.woocommerce-cart .paypal-button-container,
body.woocommerce-cart .paypal-buttons,
body.woocommerce-checkout .ppcp-messages:not(#payment .ppcp-messages):not(.woocommerce-checkout-payment .ppcp-messages),
body.woocommerce-checkout .ppcp-messages-container:not(#payment .ppcp-messages-container):not(.woocommerce-checkout-payment .ppcp-messages-container),
body.woocommerce-checkout [data-pp-message]:not(#payment [data-pp-message]):not(.woocommerce-checkout-payment [data-pp-message]){
  display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;
}

body.woocommerce-checkout .optional,
body.woocommerce-account .optional,
body.woocommerce-cart .optional{display:none!important;}
body.woocommerce-checkout .form-row label .required,
body.woocommerce-account .form-row label .required{color:#f45100!important;text-decoration:none!important;}
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-account #billing_country_field,
body.woocommerce-account #shipping_country_field,
body.woocommerce-checkout .mecano-country-hidden,
body.woocommerce-account .mecano-country-hidden{display:none!important;}

/* Checkout: blocchi in alto, riepilogo sempre allineato in alto a destra. */
body.woocommerce-checkout form.checkout{
  display:grid!important;
  grid-template-columns:minmax(0,1.55fr) minmax(390px,.85fr)!important;
  gap:44px!important;
  align-items:start!important;
}
body.woocommerce-checkout #customer_details{grid-column:1!important;grid-row:1!important;width:100%!important;min-width:0!important;}
body.woocommerce-checkout #order_review_heading{display:none!important;}
body.woocommerce-checkout #order_review{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:30px!important;
  border:1px solid #dfe4ea!important;
  background:#fff!important;
  box-shadow:0 24px 60px rgba(16,24,32,.07)!important;
  position:sticky!important;
  top:118px!important;
}
body.woocommerce-checkout #order_review:before{
  content:'Il tuo ordine';
  display:block!important;
  margin:0 0 22px!important;
  color:#202832!important;
  font-size:26px!important;
  line-height:1.1!important;
  font-weight:900!important;
  letter-spacing:-.02em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields{
  border:1px solid #e1e6eb!important;
  background:#fff!important;
  padding:32px!important;
  margin:0 0 28px!important;
  box-shadow:0 22px 55px rgba(16,24,32,.055)!important;
}
body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3{
  margin:0 0 28px!important;
  color:#202832!important;
  font-size:clamp(28px,2.25vw,40px)!important;
  line-height:1.08!important;
  font-weight:900!important;
  letter-spacing:-.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 24px!important;
  align-items:start!important;
}
body.woocommerce-checkout .form-row,
body.woocommerce-account .form-row{float:none!important;width:100%!important;margin:0!important;min-width:0!important;}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_customer_type_field,
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #shipping_email_field,
body.woocommerce-account .form-row-wide,
body.woocommerce-account #billing_customer_type_field,
body.woocommerce-account #billing_email_field,
body.woocommerce-account #billing_company_field,
body.woocommerce-account #billing_codice_fiscale_field,
body.woocommerce-account #billing_address_1_field,
body.woocommerce-account #billing_address_2_field,
body.woocommerce-account #shipping_customer_type_field,
body.woocommerce-account #shipping_company_field,
body.woocommerce-account #shipping_address_1_field,
body.woocommerce-account #shipping_address_2_field,
body.woocommerce-account #shipping_email_field{grid-column:1/-1!important;}
body.woocommerce-checkout .form-row label,
body.woocommerce-account .form-row label{
  display:block!important;margin:0 0 7px!important;color:#202832!important;font-size:12px!important;line-height:1.25!important;font-weight:850!important;letter-spacing:.055em!important;text-transform:uppercase!important;
}
body.woocommerce-checkout .form-row input.input-text,
body.woocommerce-checkout .form-row select,
body.woocommerce-checkout .form-row textarea,
body.woocommerce-account .form-row input.input-text,
body.woocommerce-account .form-row select,
body.woocommerce-account .form-row textarea{
  width:100%!important;min-height:58px!important;padding:15px 16px!important;border:1px solid #d8dfe5!important;background:#fff!important;color:#202832!important;font-size:16px!important;line-height:1.35!important;border-radius:0!important;box-shadow:none!important;box-sizing:border-box!important;
}
body.woocommerce-checkout .form-row input:focus,
body.woocommerce-checkout .form-row select:focus,
body.woocommerce-account .form-row input:focus,
body.woocommerce-account .form-row select:focus{border-color:#f45100!important;outline:none!important;}
body.woocommerce-checkout .select2-container .select2-selection--single,
body.woocommerce-account .select2-container .select2-selection--single{height:58px!important;border:1px solid #d8dfe5!important;border-radius:0!important;display:flex!important;align-items:center!important;}
body.woocommerce-checkout .select2-container .select2-selection__rendered,
body.woocommerce-account .select2-container .select2-selection__rendered{line-height:58px!important;padding-left:16px!important;color:#202832!important;font-size:16px!important;}
body.woocommerce-checkout .select2-container .select2-selection__arrow,
body.woocommerce-account .select2-container .select2-selection__arrow{height:58px!important;}
body.woocommerce-checkout .woocommerce-additional-fields{display:none!important;}

/* Checkbox spedizione diversa: ordinato e leggibile. */
body.woocommerce-checkout #ship-to-different-address{margin:8px 0 22px!important;padding:0!important;}
body.woocommerce-checkout #ship-to-different-address label{
  display:flex!important;align-items:center!important;gap:12px!important;margin:0!important;padding:18px 22px!important;border:1px solid #e1e6eb!important;background:#fff!important;color:#202832!important;font-size:15px!important;font-weight:850!important;text-transform:none!important;letter-spacing:0!important;
}
body.woocommerce-checkout #ship-to-different-address input{width:18px!important;height:18px!important;min-height:18px!important;padding:0!important;accent-color:#f45100!important;}

/* Riepilogo ordine checkout: niente colonne strozzate né caratteri casuali. */
body.woocommerce-checkout #order_review table.shop_table{width:100%!important;table-layout:fixed!important;margin:0!important;border:0!important;}
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{padding:14px 0!important;border-color:#e1e6eb!important;color:#202832!important;font-size:14px!important;line-height:1.35!important;vertical-align:top!important;}
body.woocommerce-checkout #order_review table.shop_table th{font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:900!important;}
body.woocommerce-checkout #order_review table.shop_table td.product-name{width:68%!important;font-size:14px!important;font-weight:850!important;word-break:normal!important;overflow-wrap:break-word!important;}
body.woocommerce-checkout #order_review table.shop_table td.product-total{width:32%!important;text-align:right!important;white-space:nowrap!important;font-weight:900!important;}
body.woocommerce-checkout #order_review .product-quantity{font-weight:900!important;margin-left:3px!important;}
body.woocommerce-checkout #order_review tfoot th{width:48%!important;font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important;}
body.woocommerce-checkout #order_review tfoot td{text-align:right!important;font-size:15px!important;font-weight:850!important;}
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td{font-size:22px!important;line-height:1.1!important;font-weight:900!important;}
body.woocommerce-checkout #order_review ul#shipping_method{margin:0!important;padding:0!important;list-style:none!important;text-align:left!important;}
body.woocommerce-checkout #order_review ul#shipping_method li{margin:0 0 9px!important;display:flex!important;gap:8px!important;align-items:flex-start!important;font-size:14px!important;line-height:1.35!important;}
body.woocommerce-checkout #order_review ul#shipping_method li label{font-size:14px!important;line-height:1.35!important;font-weight:750!important;text-transform:none!important;letter-spacing:0!important;}
body.woocommerce-checkout #order_review ul#shipping_method input{margin-top:2px!important;accent-color:#f45100!important;}
body.woocommerce-checkout .woocommerce-shipping-destination,
body.woocommerce-checkout .woocommerce-shipping-calculator{font-size:14px!important;line-height:1.45!important;margin:8px 0 0!important;color:#56616d!important;}
body.woocommerce-checkout #payment{background:transparent!important;margin-top:22px!important;}
body.woocommerce-checkout #payment ul.payment_methods{border:1px solid #e1e6eb!important;background:#fff!important;padding:0!important;}
body.woocommerce-checkout #payment ul.payment_methods li{padding:18px!important;border-bottom:1px solid #e1e6eb!important;}
body.woocommerce-checkout #place_order{width:100%!important;min-height:58px!important;margin-top:18px!important;}

/* Carrello: tabella ordinata e riepilogo coerente. */
body.woocommerce-cart .wp-editable-content>.woocommerce,
body.woocommerce-cart .woocommerce-page-content .woocommerce{display:grid!important;grid-template-columns:minmax(0,1.55fr) minmax(390px,.85fr)!important;gap:44px!important;align-items:start!important;}
body.woocommerce-cart form.woocommerce-cart-form{grid-column:1!important;width:100%!important;min-width:0!important;}
body.woocommerce-cart .cart-collaterals{grid-column:2!important;width:100%!important;min-width:0!important;margin:0!important;}
body.woocommerce-cart table.cart{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;}
body.woocommerce-cart table.cart th,
body.woocommerce-cart table.cart td{vertical-align:middle!important;padding:18px 8px!important;border-color:#e1e6eb!important;color:#202832!important;font-size:14px!important;line-height:1.35!important;}
body.woocommerce-cart table.cart th{font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:900!important;}
body.woocommerce-cart table.cart .product-remove{width:30px!important;text-align:left!important;}
body.woocommerce-cart table.cart .product-thumbnail{width:88px!important;}
body.woocommerce-cart table.cart .product-name{width:auto!important;min-width:0!important;}
body.woocommerce-cart table.cart .product-price{width:105px!important;text-align:right!important;white-space:nowrap!important;font-weight:850!important;}
body.woocommerce-cart table.cart .product-quantity{width:110px!important;text-align:center!important;}
body.woocommerce-cart table.cart .product-subtotal{width:105px!important;text-align:right!important;white-space:nowrap!important;font-weight:900!important;}
body.woocommerce-cart table.cart td.product-name a{color:#202832!important;font-size:16px!important;line-height:1.25!important;font-weight:850!important;text-decoration:none!important;}
body.woocommerce-cart table.cart td.product-thumbnail img{width:74px!important;height:74px!important;object-fit:cover!important;border:1px solid #eef0f2!important;}
body.woocommerce-cart table.cart td.product-quantity .qty{width:70px!important;min-height:44px!important;padding:8px!important;text-align:center!important;}
body.woocommerce-cart table.cart td.actions{padding-top:22px!important;text-align:right!important;}
body.woocommerce-cart table.cart td.actions .button{min-width:210px!important;}
body.woocommerce-cart .cart_totals{width:100%!important;border:1px solid #dfe4ea!important;padding:30px!important;background:#fff!important;box-shadow:0 24px 60px rgba(16,24,32,.07)!important;}
body.woocommerce-cart .cart_totals h2{margin:0 0 24px!important;color:#202832!important;font-size:clamp(30px,2.7vw,42px)!important;line-height:1.05!important;letter-spacing:-.04em!important;font-weight:900!important;text-transform:uppercase!important;}
body.woocommerce-cart .cart_totals table{width:100%!important;table-layout:fixed!important;}
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td{padding:15px 0!important;font-size:14px!important;line-height:1.4!important;vertical-align:top!important;border-color:#e1e6eb!important;}
body.woocommerce-cart .cart_totals th{width:42%!important;font-size:12px!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:900!important;}
body.woocommerce-cart .cart_totals td{text-align:right!important;font-weight:800!important;}
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td{font-size:22px!important;line-height:1.1!important;font-weight:900!important;}
body.woocommerce-cart .cart_totals ul#shipping_method{margin:0!important;padding:0!important;list-style:none!important;text-align:left!important;}
body.woocommerce-cart .cart_totals ul#shipping_method li{margin:0 0 9px!important;display:flex!important;gap:8px!important;align-items:flex-start!important;font-size:14px!important;line-height:1.35!important;}
body.woocommerce-cart .cart_totals ul#shipping_method label{font-size:14px!important;line-height:1.35!important;font-weight:750!important;text-transform:none!important;letter-spacing:0!important;}
body.woocommerce-cart .cart_totals ul#shipping_method input{margin-top:2px!important;accent-color:#f45100!important;}
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-cart .shipping-calculator-button{font-size:14px!important;line-height:1.45!important;margin:8px 0 0!important;color:#56616d!important;}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%!important;min-height:58px!important;margin-top:22px!important;}

/* Account indirizzi e metodi di pagamento */
body.woocommerce-account .woocommerce-MyAccount-content{min-width:0!important;}
body.woocommerce-account .woocommerce-Address-title,
body.woocommerce-account header.woocommerce-Address-title{display:block!important;margin:0 0 22px!important;text-align:left!important;}
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account header.woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  display:block!important;margin:0 0 14px!important;max-width:290px!important;color:#202832!important;font-size:clamp(27px,2.3vw,34px)!important;line-height:1.05!important;font-weight:900!important;letter-spacing:-.045em!important;text-transform:uppercase!important;text-align:left!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account header.woocommerce-Address-title a.edit{
  display:block!important;float:none!important;clear:both!important;width:max-content!important;max-width:100%!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;color:#f45100!important;font-size:12px!important;line-height:1.2!important;font-weight:900!important;letter-spacing:.055em!important;text-transform:uppercase!important;text-decoration:underline!important;text-underline-offset:4px!important;white-space:nowrap!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit:hover,
body.woocommerce-account header.woocommerce-Address-title a.edit:hover{color:#202832!important;background:transparent!important;}
body.woocommerce-account .woocommerce-PaymentMethods,
body.woocommerce-account .woocommerce-PaymentMethods + .woocommerce-Message,
body.woocommerce-account .woocommerce-info{font-size:15px!important;line-height:1.5!important;}
body.woocommerce-account .woocommerce-info .button{margin-top:12px!important;margin-left:0!important;}

@media(max-width:1100px){
  body.woocommerce-checkout form.checkout,
  body.woocommerce-cart .wp-editable-content>.woocommerce,
  body.woocommerce-cart .woocommerce-page-content .woocommerce{display:block!important;}
  body.woocommerce-checkout #order_review,
  body.woocommerce-cart .cart-collaterals{margin-top:34px!important;position:static!important;}
}
@media(max-width:720px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper,
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses{grid-template-columns:1fr!important;}
  body.woocommerce-cart table.cart{table-layout:auto!important;}
  body.woocommerce-cart table.cart .product-price,
  body.woocommerce-cart table.cart .product-quantity,
  body.woocommerce-cart table.cart .product-subtotal{width:auto!important;text-align:left!important;}
  body.woocommerce-cart table.cart td.actions{text-align:left!important;}
}

/* ============================================================
   MECANO LAB V102 - rifiniture WooCommerce richieste
   ============================================================ */

/* Niente parentesi vuote/facoltativo nelle label: resta solo l'asterisco nativo. */
body.woocommerce .optional,
body.woocommerce-page .optional{display:none!important;}
body.woocommerce abbr.required,
body.woocommerce-page abbr.required{color:#f45100!important;text-decoration:none!important;border:0!important;}

/* Account > Indirizzi: titoli coerenti e link in una riga a sinistra. */
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account header.woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account header.woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  display:block!important;
  margin:0 0 14px!important;
  max-width:245px!important;
  color:#202832!important;
  font-size:clamp(27px,2.3vw,34px)!important;
  line-height:1.05!important;
  font-weight:900!important;
  letter-spacing:-.045em!important;
  text-transform:uppercase!important;
  text-align:left!important;
  word-break:normal!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account header.woocommerce-Address-title a.edit{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:max-content!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  white-space:nowrap!important;
}

/* Carrello: colonne prodotti/varianti più pulite e allineate. */
body.woocommerce-cart table.cart th,
body.woocommerce-cart table.cart td{vertical-align:middle!important;}
body.woocommerce-cart table.cart td.product-name a{
  display:block!important;
  margin-bottom:8px!important;
  font-size:16px!important;
  line-height:1.25!important;
}
body.woocommerce-cart table.cart td.product-price,
body.woocommerce-cart table.cart td.product-subtotal{
  text-align:right!important;
  white-space:nowrap!important;
  font-size:15px!important;
  line-height:1.25!important;
}
body.woocommerce-cart table.cart td.product-quantity{text-align:center!important;}
body.woocommerce-cart table.cart td.product-quantity .qty{
  width:68px!important;
  min-height:52px!important;
  font-size:15px!important;
  line-height:1!important;
}
body.woocommerce-cart table.cart dl.variation,
body.woocommerce-checkout #order_review dl.variation{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  column-gap:7px!important;
  row-gap:3px!important;
  margin:8px 0 0!important;
  padding:0!important;
  font-size:13px!important;
  line-height:1.35!important;
  color:#56616d!important;
}
body.woocommerce-cart table.cart dl.variation dt,
body.woocommerce-cart table.cart dl.variation dd,
body.woocommerce-checkout #order_review dl.variation dt,
body.woocommerce-checkout #order_review dl.variation dd{
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
  display:block!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:600!important;
}
body.woocommerce-cart table.cart dl.variation dt,
body.woocommerce-checkout #order_review dl.variation dt{font-weight:800!important;color:#202832!important;}
body.woocommerce-cart table.cart dl.variation dd,
body.woocommerce-checkout #order_review dl.variation dd{font-weight:600!important;color:#56616d!important;}
body.woocommerce-cart table.cart dl.variation dd p,
body.woocommerce-checkout #order_review dl.variation dd p{
  margin:0!important;
  padding:0!important;
  display:inline!important;
  font:inherit!important;
  line-height:inherit!important;
}

/* Riepilogo carrello/checkout: testi coerenti, niente dimensioni casuali. */
body.woocommerce-cart .cart_totals th,
body.woocommerce-cart .cart_totals td,
body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  font-size:14px!important;
  line-height:1.35!important;
}
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td,
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td{
  font-size:21px!important;
  line-height:1.15!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart .cart_totals .shipping-calculator-button,
body.woocommerce-checkout #order_review .woocommerce-shipping-destination,
body.woocommerce-checkout #order_review .shipping-calculator-button{
  font-size:13px!important;
  line-height:1.4!important;
  font-weight:600!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method li label,
body.woocommerce-checkout #order_review ul#shipping_method li label{
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
  font-size:12px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

/* Checkout: prodotti nel box ordine più compatti e leggibili. */
body.woocommerce-checkout #order_review table.shop_table{table-layout:fixed!important;width:100%!important;}
body.woocommerce-checkout #order_review table.shop_table td.product-name,
body.woocommerce-checkout #order_review table.shop_table th.product-name{
  width:70%!important;
  font-size:14px!important;
  line-height:1.3!important;
  font-weight:850!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-total,
body.woocommerce-checkout #order_review table.shop_table th.product-total{
  width:30%!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:14px!important;
  line-height:1.3!important;
}
body.woocommerce-checkout #order_review .product-quantity{font-size:13px!important;font-weight:900!important;white-space:nowrap!important;}

/* Frase termini/privacy più sobria. */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text,
body.woocommerce-checkout .form-row.place-order{
  font-size:15px!important;
  line-height:1.5!important;
  color:#56616d!important;
}
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-privacy-policy-text a,
body.woocommerce-checkout .form-row.place-order a{
  font-size:inherit!important;
  line-height:inherit!important;
  font-weight:800!important;
}

@media(max-width:720px){
  body.woocommerce-account .woocommerce-Address-title h2,
  body.woocommerce-account header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Address-title h3,
  body.woocommerce-account header.woocommerce-Address-title h3{max-width:220px!important;}
  body.woocommerce-cart table.cart td.product-price,
  body.woocommerce-cart table.cart td.product-subtotal{text-align:left!important;}
}

/* ============================================================
   MECANO LAB V103 - ultime rifiniture WooCommerce
   ============================================================ */

/* Frase legale unica: niente checkbox gigante, niente duplicazioni. */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-privacy-policy-text{
  display:none!important;
}
body.woocommerce-checkout .mecano-checkout-legal-note{
  margin:18px 0 0!important;
  padding:0!important;
  color:#56616d!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:650!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .mecano-checkout-legal-note a{
  color:#f45100!important;
  font-size:inherit!important;
  line-height:inherit!important;
  font-weight:850!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
body.woocommerce-checkout .form-row.place-order{
  margin:0!important;
  padding:0!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body.woocommerce-checkout .form-row.place-order .woocommerce-form__label-for-checkbox,
body.woocommerce-checkout .form-row.place-order input[type="checkbox"],
body.woocommerce-checkout .form-row.place-order .woocommerce-terms-and-conditions-checkbox-text{
  display:none!important;
}

/* Coupon: piccolo, facoltativo, non invasivo. */
body.woocommerce-checkout .mecano-mini-coupon{
  margin:18px 0 0!important;
  padding:14px 0 0!important;
  border-top:1px solid #e1e6eb!important;
}
body.woocommerce-checkout .mecano-mini-coupon__toggle{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  color:#f45100!important;
  cursor:pointer!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}
body.woocommerce-checkout .mecano-mini-coupon__panel{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  margin-top:12px!important;
}
body.woocommerce-checkout .mecano-mini-coupon__panel[hidden]{display:none!important;}
body.woocommerce-checkout .mecano-mini-coupon input{
  min-height:44px!important;
  padding:10px 12px!important;
  border:1px solid #d8dfe5!important;
  font-size:14px!important;
}
body.woocommerce-checkout .mecano-mini-coupon .button{
  min-height:44px!important;
  padding:0 16px!important;
  background:#1f2833!important;
  color:#fff!important;
  border:0!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body.woocommerce-checkout .mecano-mini-coupon .button:hover{background:#f45100!important;color:#fff!important;}

/* Carrello: coupon funzionale ma ordinato sotto ai prodotti. */
body.woocommerce-cart td.actions .coupon,
body.woocommerce-cart table.cart td.actions .coupon{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  width:min(100%,640px)!important;
  margin:0 0 14px!important;
  float:none!important;
}
body.woocommerce-cart table.cart td.actions .coupon input.input-text{
  width:100%!important;
  min-height:48px!important;
  padding:12px 14px!important;
  border:1px solid #d8dfe5!important;
  font-size:14px!important;
}
body.woocommerce-cart table.cart td.actions .coupon .button{
  min-height:48px!important;
  padding:0 18px!important;
  white-space:nowrap!important;
}

/* Ordine campi coerente e senza parentesi inutili. */
body.woocommerce label .optional,
body.woocommerce-page label .optional{display:none!important;}
body.woocommerce label{word-spacing:normal!important;}
body.woocommerce .form-row label::after{content:''!important;}
body.woocommerce .form-row label abbr.required{margin-left:4px!important;}

/* Riepilogo ordine con miniatura prodotto e titolo leggibile. */
body.woocommerce-checkout #order_review table.shop_table{
  table-layout:auto!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-name,
body.woocommerce-checkout #order_review table.shop_table th.product-name{
  width:auto!important;
  min-width:0!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-total,
body.woocommerce-checkout #order_review table.shop_table th.product-total{
  width:112px!important;
  min-width:92px!important;
}
body.woocommerce-checkout .mecano-order-product-line{
  display:flex!important;
  align-items:flex-start!important;
  gap:10px!important;
  min-width:0!important;
}
body.woocommerce-checkout .mecano-order-thumb{
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
  object-fit:cover!important;
  border:1px solid #eef0f2!important;
  background:#fff!important;
}
body.woocommerce-checkout .mecano-order-product-text{
  display:block!important;
  min-width:0!important;
  color:#202832!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:850!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
}
body.woocommerce-checkout #order_review dl.variation,
body.woocommerce-cart table.cart dl.variation{
  grid-template-columns:max-content minmax(0,1fr)!important;
  column-gap:8px!important;
  row-gap:2px!important;
  margin-top:7px!important;
  font-size:12px!important;
  line-height:1.35!important;
}
body.woocommerce-checkout #order_review dl.variation dt,
body.woocommerce-checkout #order_review dl.variation dd,
body.woocommerce-cart table.cart dl.variation dt,
body.woocommerce-cart table.cart dl.variation dd{
  font-size:12px!important;
  line-height:1.35!important;
}
body.woocommerce-checkout #order_review dl.variation dd p,
body.woocommerce-cart table.cart dl.variation dd p{display:inline!important;margin:0!important;}

/* Traduzione/impaginazione forzata della riga spedizione, anche mobile. */
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
  font-size:0!important;
  line-height:0!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th::before,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th::before{
  content:'Spedizione';
  display:block!important;
  font-size:12px!important;
  line-height:1.35!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#202832!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method li,
body.woocommerce-checkout #order_review ul#shipping_method li{
  align-items:flex-start!important;
  text-align:left!important;
}
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-checkout .woocommerce-shipping-destination{
  text-align:left!important;
  font-size:13px!important;
  line-height:1.4!important;
}

/* Account indirizzi: titoli e link non devono uscire dal box. */
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address{
  overflow:hidden!important;
}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account header.woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account header.woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  max-width:260px!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account header.woocommerce-Address-title a.edit{
  max-width:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Login mobile/account: checkbox ricordami normale e allineata. */
body.woocommerce-account form.woocommerce-form-login .form-row label.woocommerce-form__label-for-checkbox,
body.woocommerce-account form.login .form-row label.woocommerce-form__label-for-checkbox{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:10px 0 18px!important;
  color:#202832!important;
  font-size:14px!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
body.woocommerce-account form.woocommerce-form-login input[type="checkbox"],
body.woocommerce-account form.login input[type="checkbox"]{
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#f45100!important;
}

@media(max-width:900px){
  body.woocommerce-cart .wp-editable-content>.woocommerce,
  body.woocommerce-cart .woocommerce-page-content .woocommerce,
  body.woocommerce-checkout form.checkout{
    display:block!important;
  }
  body.woocommerce-cart .cart-collaterals,
  body.woocommerce-checkout #order_review{
    margin-top:28px!important;
    position:static!important;
  }
}

@media(max-width:720px){
  body.woocommerce-account .woocommerce-Address-title h2,
  body.woocommerce-account header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Address-title h3,
  body.woocommerce-account header.woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-column__title{
    max-width:100%!important;
    font-size:30px!important;
    line-height:1.08!important;
  }
  body.woocommerce-account .woocommerce-Address-title a.edit,
  body.woocommerce-account header.woocommerce-Address-title a.edit{
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    font-size:11px!important;
    line-height:1.25!important;
    letter-spacing:.045em!important;
  }
  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address{
    padding:24px!important;
  }

  body.woocommerce-cart .cart_totals,
  body.woocommerce-checkout #order_review{
    padding:24px!important;
  }
  body.woocommerce-cart .cart_totals h2,
  body.woocommerce-checkout #order_review:before{
    font-size:30px!important;
    line-height:1.08!important;
  }
  body.woocommerce-cart .cart_totals table,
  body.woocommerce-cart .cart_totals tbody,
  body.woocommerce-cart .cart_totals tr,
  body.woocommerce-cart .cart_totals th,
  body.woocommerce-cart .cart_totals td{
    display:block!important;
    width:100%!important;
    text-align:left!important;
  }
  body.woocommerce-cart .cart_totals th,
  body.woocommerce-cart .cart_totals td{
    padding:8px 0!important;
  }
  body.woocommerce-cart .cart_totals ul#shipping_method li{
    display:flex!important;
    gap:10px!important;
    align-items:flex-start!important;
  }
  body.woocommerce-cart .cart_totals .order-total th,
  body.woocommerce-cart .cart_totals .order-total td{
    display:inline-block!important;
    width:auto!important;
    vertical-align:baseline!important;
  }
  body.woocommerce-cart .cart_totals .order-total td{float:right!important;}

  body.woocommerce-checkout #order_review table.shop_table,
  body.woocommerce-checkout #order_review table.shop_table tbody,
  body.woocommerce-checkout #order_review table.shop_table tfoot,
  body.woocommerce-checkout #order_review table.shop_table tr,
  body.woocommerce-checkout #order_review table.shop_table th,
  body.woocommerce-checkout #order_review table.shop_table td{
    display:block!important;
    width:100%!important;
    text-align:left!important;
  }
  body.woocommerce-checkout #order_review table.shop_table thead{display:none!important;}
  body.woocommerce-checkout #order_review table.shop_table td.product-total{
    text-align:left!important;
    padding-top:4px!important;
    font-weight:900!important;
  }
  body.woocommerce-checkout #order_review table.shop_table tfoot tr{
    padding:12px 0!important;
    border-top:1px solid #e1e6eb!important;
  }
  body.woocommerce-checkout #order_review table.shop_table tfoot th,
  body.woocommerce-checkout #order_review table.shop_table tfoot td{
    padding:2px 0!important;
  }
  body.woocommerce-checkout #order_review table.shop_table tfoot td{
    text-align:left!important;
  }
  body.woocommerce-checkout #order_review ul#shipping_method li{
    display:flex!important;
    gap:10px!important;
  }
  body.woocommerce-checkout .mecano-order-product-line{
    gap:10px!important;
  }
  body.woocommerce-checkout .mecano-order-product-text{
    font-size:14px!important;
  }
  body.woocommerce-checkout .mecano-checkout-legal-note{
    font-size:12px!important;
    line-height:1.45!important;
  }
  body.woocommerce-checkout .mecano-mini-coupon__panel,
  body.woocommerce-cart td.actions .coupon,
  body.woocommerce-cart table.cart td.actions .coupon{
    grid-template-columns:1fr!important;
  }
}

/* ============================================================
   MECANO LAB V104 - ritocchi finali WooCommerce richiesti
   ============================================================ */

/* Checkout/account: ordine visivo campi e larghezze coerenti. */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px 24px!important;
  align-items:start!important;
}
body.woocommerce-checkout .form-row,
body.woocommerce-account .woocommerce-address-fields .form-row{
  width:auto!important;
  float:none!important;
  margin:0!important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-account .woocommerce-address-fields .form-row-wide{
  grid-column:1 / -1!important;
}
body.woocommerce-checkout .form-row-first,
body.woocommerce-account .woocommerce-address-fields .form-row-first{
  grid-column:1!important;
}
body.woocommerce-checkout .form-row-last,
body.woocommerce-account .woocommerce-address-fields .form-row-last{
  grid-column:2!important;
}
body.woocommerce-checkout .mecano-country-hidden,
body.woocommerce-account .mecano-country-hidden{
  display:none!important;
}

/* Carrello desktop: usa spazio orizzontale, niente colonna subtotale prodotto duplicata. */
body.woocommerce-cart table.cart th.product-subtotal,
body.woocommerce-cart table.cart td.product-subtotal{
  display:none!important;
}
body.woocommerce-cart table.cart{
  table-layout:fixed!important;
}
body.woocommerce-cart table.cart .product-remove{width:34px!important;}
body.woocommerce-cart table.cart .product-thumbnail{width:92px!important;}
body.woocommerce-cart table.cart .product-name{width:auto!important;}
body.woocommerce-cart table.cart .product-price{width:118px!important;text-align:right!important;}
body.woocommerce-cart table.cart .product-quantity{width:120px!important;text-align:center!important;}
body.woocommerce-cart table.cart td.product-name a{
  display:block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin-bottom:0!important;
}
body.woocommerce-cart table.cart td.product-name dl.variation{
  margin-top:8px!important;
}

/* Il coupon del carrello non deve stare grande nella tabella prodotti. */
body.woocommerce-cart table.cart td.actions .coupon,
body.woocommerce-cart td.actions .coupon{
  display:none!important;
}
body.woocommerce-cart table.cart td.actions{
  text-align:right!important;
}

/* Mini coupon nel riepilogo carrello, uguale come logica a quello checkout. */
body.woocommerce-cart .mecano-cart-mini-coupon,
body.woocommerce-checkout .mecano-mini-coupon{
  margin:18px 0 0!important;
  padding:14px 0 0!important;
  border-top:1px solid #e1e6eb!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon .mecano-mini-coupon__toggle,
body.woocommerce-checkout .mecano-mini-coupon__toggle{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  color:#f45100!important;
  cursor:pointer!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon .mecano-mini-coupon__panel{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px!important;
  margin-top:12px!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon .mecano-mini-coupon__panel[hidden]{display:none!important;}
body.woocommerce-cart .mecano-cart-mini-coupon input{
  width:100%!important;
  min-height:44px!important;
  padding:10px 12px!important;
  border:1px solid #d8dfe5!important;
  font-size:14px!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon .button{
  min-height:44px!important;
  padding:0 16px!important;
  background:#1f2833!important;
  color:#fff!important;
  border:0!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon .button:hover{background:#f45100!important;color:#fff!important;}

/* Riepilogo checkout: miniatura più utile, titolo leggibile, prezzo non schiacciato. */
body.woocommerce-checkout #order_review table.shop_table{
  table-layout:auto!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-name,
body.woocommerce-checkout #order_review table.shop_table th.product-name{
  width:auto!important;
  min-width:0!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-total,
body.woocommerce-checkout #order_review table.shop_table th.product-total{
  width:92px!important;
  min-width:84px!important;
  text-align:right!important;
  white-space:nowrap!important;
}
body.woocommerce-checkout .mecano-order-product-line{
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  min-width:0!important;
}
body.woocommerce-checkout .mecano-order-thumb{
  width:56px!important;
  height:56px!important;
  object-fit:cover!important;
}
body.woocommerce-checkout .mecano-order-product-text,
body.woocommerce-checkout .mecano-order-product-text a{
  min-width:0!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:850!important;
  color:#202832!important;
  text-decoration:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
body.woocommerce-checkout #order_review .product-quantity{
  white-space:nowrap!important;
  font-size:12px!important;
  font-weight:900!important;
}

/* Account indirizzi mobile: niente tagli a destra dei titoli/link. */
body.woocommerce-account .woocommerce-Addresses,
body.woocommerce-account .woocommerce-columns--addresses{
  overflow:visible!important;
}
body.woocommerce-account .woocommerce-Address,
body.woocommerce-account .woocommerce-column--billing-address,
body.woocommerce-account .woocommerce-column--shipping-address{
  box-sizing:border-box!important;
  min-width:0!important;
}
body.woocommerce-account .woocommerce-Address-title h2,
body.woocommerce-account header.woocommerce-Address-title h2,
body.woocommerce-account .woocommerce-Address-title h3,
body.woocommerce-account header.woocommerce-Address-title h3,
body.woocommerce-account .woocommerce-column__title{
  max-width:100%!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
body.woocommerce-account .woocommerce-Address-title a.edit,
body.woocommerce-account header.woocommerce-Address-title a.edit{
  display:inline-block!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

@media(max-width:900px){
  body.woocommerce-cart .woocommerce-page-content>.container,
  body.woocommerce-checkout .woocommerce-page-content>.container,
  body.woocommerce-account .woocommerce-page-content>.container{
    width:calc(100% - 32px)!important;
  }
}

@media(max-width:720px){
  /* Meno spazio vuoto in alto sulle pagine WooCommerce. */
  body.woocommerce-cart .woocommerce-page-content,
  body.woocommerce-checkout .woocommerce-page-content,
  body.woocommerce-account .woocommerce-page-content{
    padding-top:68px!important;
    padding-bottom:48px!important;
  }
  body.woocommerce-cart .woocommerce-page-content h1,
  body.woocommerce-checkout .woocommerce-page-content h1,
  body.woocommerce-account .woocommerce-page-content h1,
  body.woocommerce-cart .woocommerce-page-content .entry-title,
  body.woocommerce-checkout .woocommerce-page-content .entry-title,
  body.woocommerce-account .woocommerce-page-content .entry-title{
    font-size:38px!important;
    line-height:1.02!important;
    margin-bottom:24px!important;
  }

  body.woocommerce-checkout form.checkout,
  body.woocommerce-checkout form.checkout #customer_details,
  body.woocommerce-checkout form.checkout #order_review_heading,
  body.woocommerce-checkout form.checkout #order_review{
    width:100%!important;
    max-width:100%!important;
  }
  body.woocommerce-checkout form.checkout{
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout #order_review{
    padding:20px!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    display:block!important;
  }
  body.woocommerce-checkout .form-row,
  body.woocommerce-account .woocommerce-address-fields .form-row{
    display:block!important;
    width:100%!important;
    margin:0 0 16px!important;
  }

  /* Carrello mobile: scheda prodotto pulita, con miniatura e senza etichette appiccicate. */
  body.woocommerce-cart table.cart thead{display:none!important;}
  body.woocommerce-cart table.cart,
  body.woocommerce-cart table.cart tbody,
  body.woocommerce-cart table.cart tr,
  body.woocommerce-cart table.cart td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  body.woocommerce-cart table.cart tr.cart_item{
    position:relative!important;
    display:grid!important;
    grid-template-columns:78px minmax(0,1fr)!important;
    gap:8px 14px!important;
    padding:18px 0!important;
    border-bottom:1px solid #e1e6eb!important;
  }
  body.woocommerce-cart table.cart tr.cart_item td{
    padding:0!important;
    border:0!important;
  }
  body.woocommerce-cart table.cart tr.cart_item td::before{
    display:none!important;
    content:''!important;
  }
  body.woocommerce-cart table.cart td.product-remove{
    position:absolute!important;
    left:0!important;
    top:18px!important;
    width:22px!important;
    z-index:2!important;
  }
  body.woocommerce-cart table.cart td.product-thumbnail{
    display:block!important;
    grid-column:1!important;
    grid-row:1 / span 4!important;
    padding-left:26px!important;
  }
  body.woocommerce-cart table.cart td.product-thumbnail a,
  body.woocommerce-cart table.cart td.product-thumbnail img{
    display:block!important;
  }
  body.woocommerce-cart table.cart td.product-thumbnail img{
    width:52px!important;
    height:52px!important;
    object-fit:cover!important;
  }
  body.woocommerce-cart table.cart td.product-name,
  body.woocommerce-cart table.cart td.product-price,
  body.woocommerce-cart table.cart td.product-quantity{
    grid-column:2!important;
    text-align:left!important;
  }
  body.woocommerce-cart table.cart td.product-name a{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    font-size:15px!important;
    line-height:1.25!important;
  }
  body.woocommerce-cart table.cart td.product-price{
    font-size:14px!important;
    font-weight:850!important;
  }
  body.woocommerce-cart table.cart td.product-quantity{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    margin-top:4px!important;
  }
  body.woocommerce-cart table.cart td.product-quantity:before{
    content:'Quantità';
    display:inline-block!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
    color:#202832!important;
  }
  body.woocommerce-cart table.cart td.product-quantity .qty{
    width:62px!important;
    height:42px!important;
    min-height:42px!important;
  }
  body.woocommerce-cart table.cart td.product-subtotal{display:none!important;}
  body.woocommerce-cart table.cart td.actions{
    padding:18px 0 0!important;
    text-align:left!important;
  }
  body.woocommerce-cart table.cart td.actions .button{
    width:100%!important;
  }

  body.woocommerce-cart .cart_totals,
  body.woocommerce-checkout #order_review{
    padding:20px!important;
  }
  body.woocommerce-cart .cart_totals h2,
  body.woocommerce-checkout #order_review:before{
    font-size:28px!important;
    line-height:1.08!important;
  }
  body.woocommerce-cart .cart_totals th,
  body.woocommerce-cart .cart_totals td,
  body.woocommerce-checkout #order_review table.shop_table th,
  body.woocommerce-checkout #order_review table.shop_table td{
    font-size:13px!important;
    line-height:1.35!important;
  }
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th::before,
  body.woocommerce-checkout #order_review .woocommerce-shipping-totals th::before{
    font-size:11px!important;
  }
  body.woocommerce-cart .woocommerce-shipping-destination,
  body.woocommerce-checkout .woocommerce-shipping-destination{
    font-size:12px!important;
    line-height:1.35!important;
  }
  body.woocommerce-cart .mecano-cart-mini-coupon .mecano-mini-coupon__panel,
  body.woocommerce-checkout .mecano-mini-coupon__panel{
    grid-template-columns:1fr!important;
  }

  body.woocommerce-checkout #order_review table.shop_table,
  body.woocommerce-checkout #order_review table.shop_table tbody,
  body.woocommerce-checkout #order_review table.shop_table tfoot,
  body.woocommerce-checkout #order_review table.shop_table tr,
  body.woocommerce-checkout #order_review table.shop_table th,
  body.woocommerce-checkout #order_review table.shop_table td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
  }
  body.woocommerce-checkout #order_review table.shop_table thead{display:none!important;}
  body.woocommerce-checkout #order_review table.shop_table tr.cart_item{
    padding:12px 0!important;
  }
  body.woocommerce-checkout #order_review table.shop_table td.product-total{
    text-align:left!important;
    width:100%!important;
    min-width:0!important;
  }
  body.woocommerce-checkout .mecano-order-product-line{
    grid-template-columns:52px minmax(0,1fr)!important;
  }
  body.woocommerce-checkout .mecano-order-thumb{
    width:52px!important;
    height:52px!important;
  }
  body.woocommerce-checkout .mecano-order-product-text,
  body.woocommerce-checkout .mecano-order-product-text a{
    font-size:13px!important;
    line-height:1.25!important;
  }

  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses{
    display:block!important;
    width:100%!important;
  }
  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address{
    width:100%!important;
    max-width:100%!important;
    padding:20px!important;
    margin:0 0 22px!important;
  }
  body.woocommerce-account .woocommerce-Address-title h2,
  body.woocommerce-account header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Address-title h3,
  body.woocommerce-account header.woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-column__title{
    font-size:25px!important;
    line-height:1.1!important;
    letter-spacing:-.035em!important;
    max-width:100%!important;
  }
  body.woocommerce-account .woocommerce-Address-title a.edit,
  body.woocommerce-account header.woocommerce-Address-title a.edit{
    font-size:10px!important;
    letter-spacing:.035em!important;
    line-height:1.25!important;
    max-width:100%!important;
  }
}

/* ============================================================
   MECANO LAB V105 - microfix WooCommerce finale
   ============================================================ */

/* Campi checkout/account: ordine e colonne stabili, senza parentesi inutili. */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0 28px!important;
}
body.woocommerce-checkout .form-row,
body.woocommerce-account .woocommerce-address-fields .form-row{
  box-sizing:border-box!important;
  margin:0 0 18px!important;
}
body.woocommerce-checkout .form-row-wide,
body.woocommerce-account .woocommerce-address-fields .form-row-wide{
  width:100%!important;
  flex:0 0 100%!important;
  clear:both!important;
}
body.woocommerce-checkout .form-row-first,
body.woocommerce-account .woocommerce-address-fields .form-row-first,
body.woocommerce-checkout .form-row-last,
body.woocommerce-account .woocommerce-address-fields .form-row-last{
  width:calc(50% - 14px)!important;
  flex:0 0 calc(50% - 14px)!important;
  clear:none!important;
  float:none!important;
}
body.woocommerce-checkout .mecano-country-hidden,
body.woocommerce-account .mecano-country-hidden{display:none!important;}
body.woocommerce-checkout label .optional,
body.woocommerce-account label .optional,
body.woocommerce-cart label .optional{display:none!important;}
body.woocommerce-checkout label,
body.woocommerce-account .woocommerce-address-fields label{
  white-space:normal!important;
  word-spacing:normal!important;
}
body.woocommerce-checkout #billing_phone_field,
body.woocommerce-account #billing_phone_field,
body.woocommerce-checkout #shipping_phone_field,
body.woocommerce-account #shipping_phone_field,
body.woocommerce-checkout #billing_partita_iva_field,
body.woocommerce-account #billing_partita_iva_field,
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-account #billing_codice_fiscale_field,
body.woocommerce-checkout #billing_codice_sdi_field,
body.woocommerce-account #billing_codice_sdi_field{
  width:100%!important;
  flex:0 0 100%!important;
  clear:both!important;
  float:none!important;
}

/* Riepilogo checkout: niente intestazione Subtotale sopra il prodotto, miniatura e titolo con spazio reale. */
body.woocommerce-checkout #order_review table.shop_table thead{
  display:none!important;
}
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:8px 14px!important;
  align-items:start!important;
  padding:16px 0!important;
  border-bottom:1px solid #e3e7ec!important;
}
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td{
  display:block!important;
  padding:0!important;
  border:0!important;
  width:auto!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-name{
  min-width:0!important;
  width:auto!important;
}
body.woocommerce-checkout #order_review table.shop_table td.product-total{
  min-width:78px!important;
  width:auto!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:14px!important;
  line-height:1.25!important;
  font-weight:850!important;
}
body.woocommerce-checkout .mecano-order-product-line{
  display:grid!important;
  grid-template-columns:60px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
}
body.woocommerce-checkout .mecano-order-thumb{
  width:60px!important;
  height:60px!important;
  object-fit:cover!important;
}
body.woocommerce-checkout .mecano-order-product-text,
body.woocommerce-checkout .mecano-order-product-text a{
  display:block!important;
  max-width:none!important;
  min-width:0!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:850!important;
  color:#202832!important;
  text-decoration:none!important;
}
body.woocommerce-checkout #order_review dl.variation{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  gap:2px 7px!important;
  margin:7px 0 0!important;
  font-size:12px!important;
  line-height:1.3!important;
}
body.woocommerce-checkout #order_review dl.variation dt,
body.woocommerce-checkout #order_review dl.variation dd{
  display:block!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:none!important;
  font-size:12px!important;
  line-height:1.3!important;
}
body.woocommerce-checkout #order_review .product-quantity{
  display:inline-block!important;
  margin-top:4px!important;
  font-size:12px!important;
  font-weight:900!important;
}

/* Carrello: il coupon grande del blocco prodotti resta nascosto; quello piccolo resta sotto il totale. */
body.woocommerce-cart table.cart td.actions .coupon,
body.woocommerce-cart td.actions .coupon,
body.woocommerce-cart .shop_table.cart .coupon{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon{
  display:block!important;
  visibility:visible!important;
  height:auto!important;
  overflow:visible!important;
}

/* Spedizione: rimuove il data-title mobile inglese “Shipment:” e allinea radio/testi. */
body.woocommerce-cart .woocommerce-shipping-totals td::before,
body.woocommerce-checkout .woocommerce-shipping-totals td::before,
body.woocommerce-cart .woocommerce-shipping-totals td:before,
body.woocommerce-checkout .woocommerce-shipping-totals td:before{
  content:''!important;
  display:none!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
  font-size:0!important;
  line-height:0!important;
  white-space:normal!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th::before,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th::before{
  content:'Spedizione'!important;
  display:block!important;
  font-size:12px!important;
  line-height:1.3!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#202832!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method,
body.woocommerce-checkout #order_review ul#shipping_method{
  margin:0!important;
  padding:0!important;
  list-style:none!important;
  text-align:left!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method li,
body.woocommerce-checkout #order_review ul#shipping_method li{
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:start!important;
  margin:0 0 10px!important;
  text-align:left!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method input,
body.woocommerce-checkout #order_review ul#shipping_method input{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  margin:2px 0 0!important;
  padding:0!important;
  accent-color:#f45100!important;
}
body.woocommerce-cart .cart_totals ul#shipping_method label,
body.woocommerce-checkout #order_review ul#shipping_method label{
  margin:0!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:750!important;
  text-transform:none!important;
  letter-spacing:0!important;
  color:#202832!important;
}
body.woocommerce-cart .woocommerce-shipping-destination,
body.woocommerce-checkout .woocommerce-shipping-destination,
body.woocommerce-cart .shipping-calculator-button,
body.woocommerce-checkout .shipping-calculator-button{
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:left!important;
  color:#56616d!important;
}
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td,
body.woocommerce-checkout #order_review .order-total th,
body.woocommerce-checkout #order_review .order-total td{
  font-size:20px!important;
  line-height:1.15!important;
}

/* Login/account: checkbox Ricordami normale e allineata. */
body.woocommerce-account form.woocommerce-form-login .form-row label.woocommerce-form__label-for-checkbox,
body.woocommerce-account form.login .form-row label.woocommerce-form__label-for-checkbox,
body.woocommerce-account form.woocommerce-form-login label.mecano-remember-fixed,
body.woocommerce-account form.login label.mecano-remember-fixed{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
  width:auto!important;
  max-width:max-content!important;
  margin:12px 0 16px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#202832!important;
}
body.woocommerce-account form.woocommerce-form-login input#rememberme,
body.woocommerce-account form.login input#rememberme,
body.woocommerce-account form.woocommerce-form-login input[name="rememberme"],
body.woocommerce-account form.login input[name="rememberme"],
body.woocommerce-account form.woocommerce-form-login .woocommerce-form__input-checkbox,
body.woocommerce-account form.login .woocommerce-form__input-checkbox{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #aeb7c2!important;
  box-shadow:none!important;
  background:#fff!important;
  accent-color:#f45100!important;
}
body.woocommerce-account form.woocommerce-form-login .mecano-remember-row-fixed,
body.woocommerce-account form.login .mecano-remember-row-fixed{
  display:block!important;
  margin:0 0 10px!important;
  padding:0!important;
  text-align:left!important;
}

@media(max-width:720px){
  body.woocommerce-cart .woocommerce-page-content,
  body.woocommerce-checkout .woocommerce-page-content,
  body.woocommerce-account .woocommerce-page-content{
    padding-top:46px!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields,
  body.woocommerce-checkout .woocommerce-shipping-fields,
  body.woocommerce-checkout #order_review,
  body.woocommerce-account form.login,
  body.woocommerce-account form.woocommerce-form-login{
    padding:18px!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    display:block!important;
  }
  body.woocommerce-checkout .form-row,
  body.woocommerce-account .woocommerce-address-fields .form-row,
  body.woocommerce-checkout .form-row-first,
  body.woocommerce-account .woocommerce-address-fields .form-row-first,
  body.woocommerce-checkout .form-row-last,
  body.woocommerce-account .woocommerce-address-fields .form-row-last,
  body.woocommerce-checkout .form-row-wide,
  body.woocommerce-account .woocommerce-address-fields .form-row-wide{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    display:block!important;
    float:none!important;
    clear:both!important;
    margin:0 0 14px!important;
  }
  body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item{
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.woocommerce-checkout #order_review table.shop_table td.product-total{
    text-align:left!important;
    min-width:0!important;
    margin-left:72px!important;
  }
  body.woocommerce-checkout .mecano-order-product-line{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:12px!important;
  }
  body.woocommerce-checkout .mecano-order-product-text,
  body.woocommerce-checkout .mecano-order-product-text a{
    font-size:13px!important;
    line-height:1.28!important;
  }
  body.woocommerce-cart .cart_totals,
  body.woocommerce-checkout #order_review{
    padding:18px!important;
  }
  body.woocommerce-cart .cart_totals h2,
  body.woocommerce-checkout #order_review:before{
    font-size:27px!important;
    line-height:1.08!important;
    margin-bottom:20px!important;
  }
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals td,
  body.woocommerce-checkout #order_review .woocommerce-shipping-totals th,
  body.woocommerce-checkout #order_review .woocommerce-shipping-totals td{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    text-align:left!important;
  }
  body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
  body.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
    margin-bottom:10px!important;
  }
  body.woocommerce-cart .cart_totals ul#shipping_method li,
  body.woocommerce-checkout #order_review ul#shipping_method li{
    grid-template-columns:20px minmax(0,1fr)!important;
    gap:8px!important;
  }
  body.woocommerce-cart .cart_totals .order-total th,
  body.woocommerce-cart .cart_totals .order-total td{
    display:inline-block!important;
    width:auto!important;
    float:none!important;
    vertical-align:baseline!important;
  }
  body.woocommerce-cart .cart_totals .order-total th{margin-right:14px!important;}
  body.woocommerce-account .woocommerce-Address-title h2,
  body.woocommerce-account header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Address-title h3,
  body.woocommerce-account header.woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-column__title{
    font-size:24px!important;
    line-height:1.08!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  body.woocommerce-account .woocommerce-Address-title a.edit,
  body.woocommerce-account header.woocommerce-Address-title a.edit{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:visible!important;
    word-break:normal!important;
    font-size:10px!important;
    line-height:1.25!important;
  }
}

/* ============================================================
   MECANO LAB V106 - correzioni definitive solo WooCommerce
   ============================================================ */

/* CHECKOUT: riepilogo "Il tuo ordine" senza prezzo sovrapposto al nome prodotto. */
body.woocommerce-checkout #order_review table.shop_table,
body.woocommerce-checkout #order_review table.shop_table tbody{
  display:block!important;
  width:100%!important;
  table-layout:auto!important;
}
body.woocommerce-checkout #order_review table.shop_table thead{display:none!important;}
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item{
  display:block!important;
  position:relative!important;
  width:100%!important;
  min-height:74px!important;
  padding:14px 92px 14px 0!important;
  border-bottom:1px solid #e3e7ec!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td.product-name,
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td.product-total{
  display:block!important;
  padding:0!important;
  border:0!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td.product-name{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  padding-right:0!important;
}
body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td.product-total{
  position:absolute!important;
  right:0!important;
  top:16px!important;
  width:82px!important;
  min-width:82px!important;
  max-width:82px!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:850!important;
  color:#202832!important;
  z-index:2!important;
}
body.woocommerce-checkout .mecano-order-product-line,
body.woocommerce-checkout .mecano-order-product-line-v106{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr)!important;
  gap:12px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
body.woocommerce-checkout .mecano-order-thumb-wrap,
body.woocommerce-checkout .mecano-order-thumb-wrap a,
body.woocommerce-checkout .mecano-order-thumb{
  display:block!important;
}
body.woocommerce-checkout .mecano-order-thumb{
  width:58px!important;
  height:58px!important;
  object-fit:cover!important;
  flex:0 0 58px!important;
}
body.woocommerce-checkout .mecano-order-product-text,
body.woocommerce-checkout .mecano-order-product-text a{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-size:13px!important;
  line-height:1.28!important;
  font-weight:850!important;
  color:#202832!important;
  text-decoration:none!important;
}
body.woocommerce-checkout #order_review .product-quantity{
  display:block!important;
  margin:8px 0 0 70px!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:900!important;
  color:#202832!important;
}
body.woocommerce-checkout #order_review dl.variation{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  gap:3px 8px!important;
  margin:8px 0 0 70px!important;
  max-width:calc(100% - 70px)!important;
  font-size:12px!important;
  line-height:1.25!important;
}
body.woocommerce-checkout #order_review dl.variation dt,
body.woocommerce-checkout #order_review dl.variation dd,
body.woocommerce-checkout #order_review dl.variation p{
  display:block!important;
  float:none!important;
  clear:none!important;
  margin:0!important;
  padding:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* SPEDIZIONE: niente doppioni e niente Shipment mobile. */
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
  font-size:12px!important;
  line-height:1.3!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#202832!important;
  white-space:normal!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th::before,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th::before,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals td::before,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals td::before,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals td:before,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals td:before{
  content:none!important;
  display:none!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th{
  font-size:0!important;
}
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals th::after,
body.woocommerce-checkout #order_review .woocommerce-shipping-totals th::after{
  content:'Spedizione'!important;
  display:block!important;
  font-size:12px!important;
  line-height:1.3!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
  color:#202832!important;
}

/* CHECKOUT LOGIN: checkbox "Ricordami" normale anche nella pagina pagamento. */
body.woocommerce-checkout form.login label.woocommerce-form__label-for-checkbox,
body.woocommerce-checkout form.woocommerce-form-login label.woocommerce-form__label-for-checkbox,
body.woocommerce-checkout form.login label.mecano-remember-fixed,
body.woocommerce-checkout form.woocommerce-form-login label.mecano-remember-fixed,
body.woocommerce-account form.login label.woocommerce-form__label-for-checkbox,
body.woocommerce-account form.woocommerce-form-login label.woocommerce-form__label-for-checkbox{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
  width:auto!important;
  max-width:max-content!important;
  margin:12px 0 16px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  color:#202832!important;
}
body.woocommerce-checkout form.login input#rememberme,
body.woocommerce-checkout form.woocommerce-form-login input#rememberme,
body.woocommerce-checkout form.login input[name="rememberme"],
body.woocommerce-checkout form.woocommerce-form-login input[name="rememberme"],
body.woocommerce-checkout form.login .woocommerce-form__input-checkbox,
body.woocommerce-checkout form.woocommerce-form-login .woocommerce-form__input-checkbox,
body.woocommerce-account form.login input#rememberme,
body.woocommerce-account form.woocommerce-form-login input#rememberme,
body.woocommerce-account form.login input[name="rememberme"],
body.woocommerce-account form.woocommerce-form-login input[name="rememberme"]{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  position:static!important;
  display:inline-block!important;
  float:none!important;
  clear:none!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  border:1px solid #aeb7c2!important;
  box-shadow:none!important;
  background:#fff!important;
  accent-color:#f45100!important;
  vertical-align:middle!important;
}
body.woocommerce-checkout form.login .mecano-remember-row-fixed,
body.woocommerce-checkout form.woocommerce-form-login .mecano-remember-row-fixed,
body.woocommerce-account form.login .mecano-remember-row-fixed,
body.woocommerce-account form.woocommerce-form-login .mecano-remember-row-fixed{
  display:block!important;
  margin:0 0 10px!important;
  padding:0!important;
  text-align:left!important;
}

/* ACCOUNT INDIRIZZI MOBILE: link e titoli non devono uscire/tagliarsi. */
@media(max-width:720px){
  html, body{overflow-x:hidden!important;}
  body.woocommerce-account .woocommerce-page-content,
  body.woocommerce-account .woocommerce-page-content>.container,
  body.woocommerce-account .woocommerce-MyAccount-content,
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
  body.woocommerce-account .woocommerce-page-content>.container{
    width:calc(100vw - 28px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:24px 18px!important;
    margin:0 0 22px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  body.woocommerce-account .woocommerce-Address-title,
  body.woocommerce-account header.woocommerce-Address-title{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    text-align:left!important;
  }
  body.woocommerce-account .woocommerce-Address-title h2,
  body.woocommerce-account header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Address-title h3,
  body.woocommerce-account header.woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-column__title{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    font-size:25px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body.woocommerce-account .woocommerce-Address-title a.edit,
  body.woocommerce-account header.woocommerce-Address-title a.edit{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:10px 0 0!important;
    padding:0!important;
    text-align:left!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    font-size:10px!important;
    line-height:1.35!important;
    letter-spacing:.04em!important;
  }
  body.woocommerce-account .woocommerce-Address address{
    font-size:16px!important;
    line-height:1.55!important;
    letter-spacing:0!important;
    word-spacing:normal!important;
    overflow-wrap:break-word!important;
  }

  body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item{
    min-height:64px!important;
    padding:12px 0!important;
  }
  body.woocommerce-checkout #order_review table.shop_table tbody tr.cart_item td.product-total{
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    text-align:left!important;
    margin:8px 0 0 64px!important;
  }
  body.woocommerce-checkout .mecano-order-product-line,
  body.woocommerce-checkout .mecano-order-product-line-v106{
    grid-template-columns:52px minmax(0,1fr)!important;
    gap:12px!important;
  }
  body.woocommerce-checkout .mecano-order-thumb{width:52px!important;height:52px!important;}
  body.woocommerce-checkout #order_review .product-quantity,
  body.woocommerce-checkout #order_review dl.variation{
    margin-left:64px!important;
    max-width:calc(100% - 64px)!important;
  }
}


/* ============================================================
   MECANO LAB V107 - microfix finale checkout/indirizzi mobile
   ============================================================ */

/* Checkout: più respiro tra il box del campo precedente e la label del campo successivo. */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row{
  margin-bottom:22px!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row > label,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row > label{
  display:block!important;
  margin:0 0 9px!important;
  padding-top:5px!important;
  line-height:1.25!important;
}

/* Account > Indirizzi da mobile: nessun testo deve uscire/tagliarsi dal box. */
@media(max-width:720px){
  body.woocommerce-account .woocommerce-page-content,
  body.woocommerce-account .woocommerce-page-content .container,
  body.woocommerce-account .woocommerce-page-content>.container,
  body.woocommerce-account .woocommerce-MyAccount-content,
  body.woocommerce-account .woocommerce-Addresses,
  body.woocommerce-account .woocommerce-columns--addresses,
  body.woocommerce-account .u-columns.woocommerce-Addresses{
    overflow-x:hidden!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column2{
    overflow:hidden!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .woocommerce-Address-title,
  body.woocommerce-account header.woocommerce-Address-title,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 22px!important;
    padding:0!important;
    overflow:visible!important;
    text-align:left!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .woocommerce-Address-title h2,
  body.woocommerce-account header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-Address-title h3,
  body.woocommerce-account header.woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-column__title,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 12px!important;
    padding:0!important;
    overflow:visible!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    hyphens:none!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .woocommerce-Address-title h2 span,
  body.woocommerce-account header.woocommerce-Address-title h2 span,
  body.woocommerce-account .woocommerce-Address-title h3 span,
  body.woocommerce-account header.woocommerce-Address-title h3 span,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h2 span,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title h3 span,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h2 span,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title h3 span{
    display:inline!important;
    white-space:normal!important;
  }

  body.woocommerce-account .woocommerce-Address-title a.edit,
  body.woocommerce-account header.woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address .edit,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column1 .edit,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column2 .edit{
    display:block!important;
    float:none!important;
    clear:both!important;
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 20px!important;
    padding:0!important;
    overflow:visible!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    text-overflow:clip!important;
    text-align:left!important;
    font-size:11px!important;
    line-height:1.35!important;
    letter-spacing:.045em!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-account .woocommerce-Address address,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address address,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column1 address,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column2 address{
    max-width:100%!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }
}

/* ============================================================
   MECANO LAB V108 - microfix finali WooCommerce
   ============================================================ */

/* Checkout/account: ordine visuale stabile dei campi, senza rompere il desktop. */
body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-account #billing_customer_type_field{order:1!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_email_field,
body.woocommerce-account #billing_email_field{order:2!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_company_field,
body.woocommerce-account #billing_company_field{order:3!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_first_name_field,
body.woocommerce-account #billing_first_name_field{order:3!important;grid-column:auto!important;}
body.woocommerce-checkout #billing_last_name_field,
body.woocommerce-account #billing_last_name_field{order:3!important;grid-column:auto!important;}
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-account #billing_address_1_field{order:10!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-account #billing_address_2_field{order:11!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_city_field,
body.woocommerce-account #billing_city_field{order:12!important;grid-column:auto!important;}
body.woocommerce-checkout #billing_state_field,
body.woocommerce-account #billing_state_field{order:12!important;grid-column:auto!important;}
body.woocommerce-checkout #billing_postcode_field,
body.woocommerce-account #billing_postcode_field{order:13!important;grid-column:auto!important;}
body.woocommerce-checkout #billing_phone_field,
body.woocommerce-account #billing_phone_field{order:14!important;grid-column:auto!important;}
body.woocommerce-checkout #billing_partita_iva_field,
body.woocommerce-account #billing_partita_iva_field{order:15!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_codice_fiscale_field,
body.woocommerce-account #billing_codice_fiscale_field{order:16!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_codice_sdi_field,
body.woocommerce-account #billing_codice_sdi_field{order:17!important;grid-column:1/-1!important;}

body.woocommerce-checkout #shipping_customer_type_field,
body.woocommerce-account #shipping_customer_type_field{order:1!important;grid-column:1/-1!important;}
body.woocommerce-checkout #shipping_email_field,
body.woocommerce-account #shipping_email_field{order:2!important;grid-column:1/-1!important;}
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-account #shipping_company_field{order:3!important;grid-column:1/-1!important;}
body.woocommerce-checkout #shipping_first_name_field,
body.woocommerce-account #shipping_first_name_field{order:3!important;grid-column:auto!important;}
body.woocommerce-checkout #shipping_last_name_field,
body.woocommerce-account #shipping_last_name_field{order:3!important;grid-column:auto!important;}

/* Desktop: nome e cognome allineati sulla stessa riga sotto l'email. */
@media(min-width:721px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_first_name_field,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper #billing_last_name_field,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_first_name_field,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper #billing_last_name_field{
    grid-column:auto!important;
  }
}

/* Mobile: una sola colonna pulita, quindi niente inversioni o campi tagliati. */
@media(max-width:720px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row{
    grid-column:1/-1!important;
  }
}

/* Coupon: il pannello si apre/chiude davvero sia in carrello sia in checkout. */
body.woocommerce-cart .mecano-cart-mini-coupon .mecano-mini-coupon__panel:not([hidden]),
body.woocommerce-checkout .mecano-mini-coupon__panel:not([hidden]){
  display:grid!important;
  visibility:visible!important;
  height:auto!important;
  overflow:visible!important;
}
body.woocommerce-cart .mecano-cart-mini-coupon .mecano-mini-coupon__panel[hidden],
body.woocommerce-checkout .mecano-mini-coupon__panel[hidden]{
  display:none!important;
}

/* ============================================================
   MECANO LAB V109 - fix mirati finali WooCommerce
   ============================================================ */

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-account .woocommerce-address-fields__field-wrapper{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  column-gap:28px!important;
  row-gap:0!important;
  align-items:start!important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row{
  width:100%!important;
  float:none!important;
  clear:none!important;
  margin:0 0 22px!important;
  box-sizing:border-box!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-wide,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide{
  grid-column:1/-1!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-first{
  grid-column:1/2!important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-last{
  grid-column:2/3!important;
}

body.woocommerce-checkout #billing_customer_type_field,
body.woocommerce-account #billing_customer_type_field,
body.woocommerce-checkout #shipping_customer_type_field,
body.woocommerce-account #shipping_customer_type_field{order:1!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_email_field,
body.woocommerce-account #billing_email_field,
body.woocommerce-checkout #shipping_email_field,
body.woocommerce-account #shipping_email_field{order:2!important;grid-column:1/-1!important;}
body.woocommerce-checkout #billing_first_name_field,
body.woocommerce-account #billing_first_name_field,
body.woocommerce-checkout #shipping_first_name_field,
body.woocommerce-account #shipping_first_name_field{order:3!important;grid-column:1/2!important;}
body.woocommerce-checkout #billing_last_name_field,
body.woocommerce-account #billing_last_name_field,
body.woocommerce-checkout #shipping_last_name_field,
body.woocommerce-account #shipping_last_name_field{order:3!important;grid-column:2/3!important;}
body.woocommerce-checkout #billing_company_field,
body.woocommerce-account #billing_company_field,
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-account #shipping_company_field{order:3!important;grid-column:1/-1!important;}

/* Stato iniziale sicuro: niente duplicazioni. Il JS V109 aggiorna le classi body appena caricato. */
body.woocommerce-checkout:not(.mecano-billing-business) #billing_company_field,
body.woocommerce-account:not(.mecano-billing-business) #billing_company_field,
body.woocommerce-checkout:not(.mecano-billing-business) #billing_partita_iva_field,
body.woocommerce-account:not(.mecano-billing-business) #billing_partita_iva_field,
body.woocommerce-checkout:not(.mecano-billing-business) #billing_codice_sdi_field,
body.woocommerce-account:not(.mecano-billing-business) #billing_codice_sdi_field{
  display:none!important;
}
body.woocommerce-checkout.mecano-billing-business #billing_first_name_field,
body.woocommerce-account.mecano-billing-business #billing_first_name_field,
body.woocommerce-checkout.mecano-billing-business #billing_last_name_field,
body.woocommerce-account.mecano-billing-business #billing_last_name_field{
  display:none!important;
}
body.woocommerce-checkout:not(.mecano-shipping-business) #shipping_company_field,
body.woocommerce-account:not(.mecano-shipping-business) #shipping_company_field{
  display:none!important;
}
body.woocommerce-checkout.mecano-shipping-business #shipping_first_name_field,
body.woocommerce-account.mecano-shipping-business #shipping_first_name_field,
body.woocommerce-checkout.mecano-shipping-business #shipping_last_name_field,
body.woocommerce-account.mecano-shipping-business #shipping_last_name_field{
  display:none!important;
}

body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row > label,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row > label,
body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row > label{
  margin:0 0 10px!important;
  padding-top:6px!important;
}

/* Coupon: feedback visibile e coerente. */
body.woocommerce-checkout .mecano-coupon-notice,
body.woocommerce-cart .mecano-coupon-notice{
  margin:0 0 24px!important;
}

@media(max-width:720px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    grid-template-columns:1fr!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-first,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-last{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
  }

  body.woocommerce-account .woocommerce-Address,
  body.woocommerce-account .woocommerce-column--billing-address,
  body.woocommerce-account .woocommerce-column--shipping-address,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column1,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column2{
    overflow:visible!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.woocommerce-account .woocommerce-Address-title,
  body.woocommerce-account header.woocommerce-Address-title,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title{
    overflow:visible!important;
    max-width:100%!important;
  }
  body.woocommerce-account .woocommerce-Address-title a.edit,
  body.woocommerce-account header.woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content header.woocommerce-Address-title a.edit,
  body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address .edit,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column1 .edit,
  body.woocommerce-account .woocommerce-MyAccount-content .u-column2 .edit{
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
    font-size:10px!important;
    line-height:1.35!important;
    letter-spacing:.015em!important;
    text-align:left!important;
  }
}

/* ============================================================
   MECANO LAB V110 - ultimo fix mirato coupon + mobile privato
   ============================================================ */

/* Mobile reale: niente griglie strette/box microscopici nei dati checkout/account. */
@media (max-width: 820px){
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-first,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-last,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row-wide,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-first,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-last,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row-wide{
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 0 24px!important;
    padding:0!important;
    grid-column:1 / -1!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row > label,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row > label,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row > label{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 0 10px!important;
    padding:0!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow:visible!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row input.input-text,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row select,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row textarea,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row input.input-text,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row select,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper .form-row textarea,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row input.input-text,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row select,
  body.woocommerce-account .woocommerce-address-fields__field-wrapper .form-row textarea,
  body.woocommerce-checkout .select2-container,
  body.woocommerce-account .select2-container{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.woocommerce-checkout.mecano-billing-private #billing_company_field,
  body.woocommerce-checkout.mecano-billing-private #billing_partita_iva_field,
  body.woocommerce-checkout.mecano-billing-private #billing_codice_sdi_field,
  body.woocommerce-account.mecano-billing-private #billing_company_field,
  body.woocommerce-account.mecano-billing-private #billing_partita_iva_field,
  body.woocommerce-account.mecano-billing-private #billing_codice_sdi_field,
  body.woocommerce-checkout:not(.mecano-billing-business) #billing_company_field,
  body.woocommerce-checkout:not(.mecano-billing-business) #billing_partita_iva_field,
  body.woocommerce-checkout:not(.mecano-billing-business) #billing_codice_sdi_field,
  body.woocommerce-account:not(.mecano-billing-business) #billing_company_field,
  body.woocommerce-account:not(.mecano-billing-business) #billing_partita_iva_field,
  body.woocommerce-account:not(.mecano-billing-business) #billing_codice_sdi_field{
    display:none!important;
  }
  body.woocommerce-checkout.mecano-billing-business #billing_first_name_field,
  body.woocommerce-checkout.mecano-billing-business #billing_last_name_field,
  body.woocommerce-account.mecano-billing-business #billing_first_name_field,
  body.woocommerce-account.mecano-billing-business #billing_last_name_field{
    display:none!important;
  }
}

/* Desktop: email a tutta riga, sotto nome+cognome affiancati. */
@media (min-width: 821px){
  body.woocommerce-checkout #billing_email_field,
  body.woocommerce-account #billing_email_field{grid-column:1 / -1!important;}
  body.woocommerce-checkout #billing_first_name_field,
  body.woocommerce-account #billing_first_name_field{grid-column:1 / 2!important;}
  body.woocommerce-checkout #billing_last_name_field,
  body.woocommerce-account #billing_last_name_field{grid-column:2 / 3!important;}
}

/* Coupon: pannello sempre apribile. */
body.woocommerce-cart .mecano-mini-coupon__panel:not([hidden]),
body.woocommerce-checkout .mecano-mini-coupon__panel:not([hidden]){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  overflow:visible!important;
}
body.woocommerce-cart .mecano-mini-coupon__panel[hidden],
body.woocommerce-checkout .mecano-mini-coupon__panel[hidden]{
  display:none!important;
}
@media(max-width:720px){
  body.woocommerce-cart .mecano-mini-coupon__panel:not([hidden]),
  body.woocommerce-checkout .mecano-mini-coupon__panel:not([hidden]){
    grid-template-columns:1fr!important;
  }
}


/* ============================================================
   MECANO LAB V111 - fix mirato checkout mobile: crea account
   ============================================================ */

/* Il checkbox "Creare un account?" non deve diventare un quadratone né uscire dal flusso. */
body.woocommerce-checkout .woocommerce-account-fields,
body.woocommerce-checkout .woocommerce-account-fields .create-account{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  clear:both!important;
  float:none!important;
  overflow:visible!important;
}

body.woocommerce-checkout .woocommerce-account-fields{
  margin:14px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.woocommerce-checkout .woocommerce-account-fields > .form-row,
body.woocommerce-checkout .woocommerce-account-fields p.form-row,
body.woocommerce-checkout .woocommerce-account-fields .form-row.create-account{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0 0 18px!important;
  padding:0!important;
  clear:both!important;
  float:none!important;
  text-align:left!important;
  box-sizing:border-box!important;
}

body.woocommerce-checkout .woocommerce-account-fields label.checkbox,
body.woocommerce-checkout .woocommerce-account-fields label.woocommerce-form__label-for-checkbox,
body.woocommerce-checkout .woocommerce-account-fields label.woocommerce-form__label{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:left!important;
  color:#202832!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}

body.woocommerce-checkout .woocommerce-account-fields input#createaccount,
body.woocommerce-checkout .woocommerce-account-fields input[name="createaccount"],
body.woocommerce-checkout .woocommerce-account-fields input[type="checkbox"],
body.woocommerce-checkout input#createaccount[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  position:static!important;
  display:inline-block!important;
  float:none!important;
  clear:none!important;
  flex:0 0 18px!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  max-width:18px!important;
  max-height:18px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  border:1px solid #aeb7c2!important;
  border-radius:2px!important;
  background:#fff!important;
  box-shadow:none!important;
  accent-color:#f45100!important;
  vertical-align:middle!important;
}

body.woocommerce-checkout .woocommerce-account-fields label span,
body.woocommerce-checkout .woocommerce-account-fields .woocommerce-form__label-for-checkbox span{
  display:inline!important;
  width:auto!important;
  max-width:calc(100% - 30px)!important;
  margin:0!important;
  padding:0!important;
  line-height:1.3!important;
  white-space:normal!important;
  overflow:visible!important;
  overflow-wrap:break-word!important;
}

@media(max-width:720px){
  body.woocommerce-checkout .woocommerce-account-fields{
    margin:8px 0 0!important;
    padding:0!important;
  }
  body.woocommerce-checkout .woocommerce-account-fields .form-row.create-account,
  body.woocommerce-checkout .woocommerce-account-fields > .form-row,
  body.woocommerce-checkout .woocommerce-account-fields p.form-row{
    margin:0 0 16px!important;
  }
  body.woocommerce-checkout .woocommerce-account-fields label.checkbox,
  body.woocommerce-checkout .woocommerce-account-fields label.woocommerce-form__label-for-checkbox,
  body.woocommerce-checkout .woocommerce-account-fields label.woocommerce-form__label{
    display:flex!important;
    align-items:center!important;
    font-size:12px!important;
    line-height:1.25!important;
    letter-spacing:.045em!important;
  }
}


/* Mecano Lab V112 - protezione discreta del form Richiedi su misura */
.mecanolab-honeypot {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.request-form .mecanolab-turnstile {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  margin: 2px 0 8px;
  overflow: visible;
}
.request-form .mecanolab-turnstile .cf-turnstile,
.request-form .mecanolab-turnstile iframe {
  max-width: 100%;
}
.request-form .mecanolab-turnstile-unavailable {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #de5307;
  color: #202833;
  background: #fff8f3;
  font-size: 14px;
  line-height: 1.45;
}

/* ============================================================
   Mecano Lab V113 - allineamento acquisto prodotti semplici
   Il form dei prodotti senza varianti usa una riga flex dedicata:
   quantità a sinistra e pulsante a destra, senza sovrapposizioni.
   I prodotti variabili restano invariati.
   ============================================================ */
.mecano-product-shell.product-type-simple .mecano-product-buy form.cart{
  display:flex!important;
  align-items:stretch!important;
  gap:12px!important;
  width:100%!important;
}
.mecano-product-shell.product-type-simple .mecano-product-buy form.cart .quantity{
  flex:0 0 74px!important;
  width:74px!important;
  margin:0!important;
  float:none!important;
}
.mecano-product-shell.product-type-simple .mecano-product-buy form.cart .single_add_to_cart_button{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  float:none!important;
  clear:none!important;
}
@media (max-width:700px){
  .mecano-product-shell.product-type-simple .mecano-product-buy form.cart{
    gap:10px!important;
  }
  .mecano-product-shell.product-type-simple .mecano-product-buy form.cart .quantity{
    flex-basis:68px!important;
    width:68px!important;
  }
}


/* ============================================================
   MECANO LAB V115 - modello prodotto su riga dedicata
   Solo titoli nelle card WooCommerce e nella scheda prodotto.
   ============================================================ */
.woocommerce-loop-product__title.mecano-split-product-title{
  flex-direction:column!important;
  align-items:flex-start!important;
}
.woocommerce-loop-product__title.mecano-split-product-title .mecano-product-title-main,
.woocommerce-loop-product__title.mecano-split-product-title .mecano-product-title-model,
.single-product h1.mecano-split-product-title .mecano-product-title-main,
.single-product h1.mecano-split-product-title .mecano-product-title-model{
  display:block!important;
  width:100%!important;
}

/* ============================================================
   MECANO LAB V116 - fallback visuale titoli prodotto
   ============================================================ */
.woocommerce-loop-product__title.mecano-split-product-title .mecano-product-title-main,
.woocommerce-loop-product__title.mecano-split-product-title .mecano-product-title-model,
body.single-product h1.mecano-split-product-title .mecano-product-title-main,
body.single-product h1.mecano-split-product-title .mecano-product-title-model{
  display:block!important;
  width:100%!important;
}
