/* LAB-X Professional — UI core (scritto a mano, senza build step).
   Replica la struttura di MIOBUK ricolorata blu + EB Garamond.
   Caricato SEMPRE da functions.php (live e draft). */

:root{
  --ink:#0B2730;
  --ink-soft:#5A6E74;
  --body:#1E2D33;
  --paper:#FFFFFF;
  --paper-2:#F4F8F9;
  --line:rgba(11,39,48,.12);
  --line-strong:rgba(11,39,48,.22);
  --blue:#1C7FB0;
  --blue-deep:#14618A;
  --cyan:#55BDEE;
  --footer-bg:#DCE7EA;
  --px:clamp(20px,6vw,120px);
  --header-h:56px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --label:.155em;
  --serif:"Plus Jakarta Sans","Segoe UI",system-ui,-apple-system,sans-serif;
  --ui:"Plus Jakarta Sans","Segoe UI",system-ui,-apple-system,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
input,select,textarea,button,optgroup{font-family:inherit;font-size:inherit;}
[x-cloak]{display:none !important;}

body.labx-body{
  margin:0;
  background:var(--paper);
  color:var(--body);
  font-family:var(--serif);
  font-size:0.9375rem;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.labx-body a{color:var(--blue);text-decoration:none;transition:color .2s var(--ease);}
.labx-body a:hover{color:var(--blue-deep);}
.labx-body h1,.labx-body h2,.labx-body h3,.labx-body h4{font-family:var(--serif);font-weight:500;color:var(--ink);line-height:1.16;margin:0 0 .5em;}

.labx-label{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:500;line-height:1;}

/* ================= HEADER (sticky, adattivo) ================= */
.labx-header{position:sticky;top:0;z-index:60;background:var(--ink);border-bottom:1px solid rgba(255,255,255,.10);transition:background .3s var(--ease),border-color .3s var(--ease);}
.labx-header.is-dark{background:transparent;border-color:transparent;}
.labx-header__bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:var(--header-h);padding:0 var(--px);}
.labx-header__left{justify-self:start;}
.labx-header__center{justify-self:center;display:flex;}
.labx-header__right{justify-self:end;}

.labx-logo{display:block;width:auto;}
.labx-header .labx-logo{height:30px !important;max-height:30px !important;width:auto !important;}
@media(max-width:600px){.labx-header .labx-logo{height:26px !important;max-height:26px !important;}}
.labx-logo--dark{display:none;}
.labx-logo--light{display:block;}

.labx-menu-btn{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:6px 0;margin:0;cursor:pointer;color:#fff;transition:color .2s var(--ease);}
.labx-menu-btn:hover{color:var(--cyan);}
.labx-menu-btn svg{display:block;}
@media(max-width:600px){.labx-menu-btn__label{display:none;}}

.labx-util{display:flex;align-items:center;gap:18px;}
.labx-lang{display:inline-flex;gap:8px;align-items:center;color:rgba(255,255,255,.7);}
.labx-lang span{color:rgba(255,255,255,.35);}
.labx-lang a{position:relative;color:rgba(255,255,255,.7);text-decoration:none;transition:color .2s var(--ease);}
.labx-lang a.is-active{color:#fff;font-weight:600;}
.labx-lang a:hover{color:var(--cyan);}
.labx-lang a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:currentColor;transition:width .25s var(--ease);}
.labx-lang a:hover::after{width:100%;}
@media(max-width:600px){.labx-lang{display:none;}}
.labx-iconbtn{background:none;border:0;padding:4px;margin:0;cursor:pointer;color:#fff;display:inline-flex;transition:color .2s var(--ease);}
.labx-iconbtn:hover{color:var(--cyan);}

.labx-main--hero{margin-top:calc(var(--header-h) * -1);}

.labx-search{border-bottom:1px solid var(--line);background:var(--paper);}
.labx-search__inner{display:flex;align-items:center;gap:14px;padding:14px var(--px);margin:0;}
.labx-search input{flex:1;border:0;background:none;outline:none;font-family:var(--serif);font-size:1.35rem;color:var(--ink);padding:6px 0;}
.labx-search input::placeholder{color:var(--ink-soft);}

/* ================= DRAWER (sinistra) ================= */
.labx-scrim{position:fixed;inset:0;z-index:70;background:rgba(11,39,48,.45);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .42s var(--ease),visibility .42s;}
.labx-scrim.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.labx-drawer{position:fixed;top:0;left:0;bottom:0;z-index:80;width:min(460px,88vw);background:var(--paper);box-shadow:0 0 80px rgba(11,39,48,.18);display:flex;flex-direction:column;padding:0 clamp(24px,5vw,56px) 40px;transform:translateX(-100%);visibility:hidden;transition:transform .46s var(--ease),visibility .46s;overflow-y:auto;}
.labx-drawer.is-open{transform:translateX(0);visibility:visible;}
.labx-drawer__top{display:flex;align-items:center;justify-content:flex-start;height:var(--header-h);flex-shrink:0;}
.labx-drawer__close{display:inline-flex;align-items:center;gap:9px;background:none;border:0;padding:6px 0;margin:0;cursor:pointer;color:var(--ink);}
.labx-drawer__close:hover{color:var(--blue);}
.labx-drawer__close svg{display:block;}
.labx-drawer__nav{display:flex;flex-direction:column;margin-top:clamp(20px,5vh,48px);}
.labx-drawer__nav a{font-family:var(--ui);font-size:.95rem;font-weight:500;text-transform:uppercase;letter-spacing:.14em;line-height:1.2;color:var(--ink);padding:12px 0;transition:color .25s var(--ease),padding-left .25s var(--ease);}
.labx-drawer__nav a:hover{color:var(--blue);padding-left:10px;}
.labx-drawer__foot{margin-top:auto;padding-top:32px;}
.labx-drawer__langs{display:flex;gap:14px;}
.labx-drawer__langs a{color:var(--ink-soft);}
.labx-drawer__langs a:hover{color:var(--blue);}
.labx-drawer__langs .is-active{color:var(--ink);font-weight:600;}

/* ================= CONTENUTO BASE ================= */
.labx-container{max-width:1180px;margin:0 auto;padding:64px var(--px);}
.labx-container p{margin:0 0 1em;}

/* ================= FOOTER (scuro, colore splash) ================= */
.labx-footer{background:var(--ink);color:var(--paper);margin-top:96px;}
.labx-footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px;padding:60px var(--px) 40px;}
.labx-footer__brand img{height:40px !important;max-height:40px !important;width:auto !important;display:block;margin-bottom:16px;}
.labx-footer__brand p{margin:0;color:#8AA6AE;font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:9px;line-height:1.9;}
.labx-footer h3{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:9px;font-weight:500;color:var(--cyan);margin:0 0 16px;}
.labx-footer ul{list-style:none;margin:0;padding:0;}
.labx-footer li{margin-bottom:6px;}
.labx-footer__legal-item{margin-top:16px;}
.labx-footer__legal-item:first-of-type{padding-top:14px;border-top:1px solid rgba(255,255,255,.12);}
.labx-footer__grid a{position:relative;display:inline-block;font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:9px;font-weight:500;color:var(--paper);}
.labx-footer__grid a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:currentColor;transition:width .28s var(--ease);}
.labx-footer__grid a:hover{color:var(--paper);}
.labx-footer__grid a:hover::after{width:100%;}
.labx-footer__bottom{border-top:1px solid rgba(255,255,255,.12);}
.labx-footer__bottom-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:18px var(--px);font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:9px;color:#8AA6AE;}
.labx-footer__bottom-inner a{position:relative;color:var(--paper);}
.labx-footer__bottom-inner a::after{content:"";position:absolute;left:0;bottom:-3px;width:0;height:1px;background:currentColor;transition:width .28s var(--ease);}
.labx-footer__bottom-inner a:hover::after{width:100%;}
@media(max-width:860px){.labx-footer__grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.labx-footer__grid{grid-template-columns:1fr;gap:30px;}.labx-footer__bottom-inner{flex-direction:column;align-items:flex-start;}}

/* ================= WOOCOMMERCE (skin base, in attesa del template catalogo) ================= */
.woocommerce,.woocommerce-page{font-family:var(--serif);}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--ui);font-weight:500;font-size:1rem;line-height:1.3;color:var(--ink);}
.woocommerce ul.products li.product .price{color:var(--ink-soft);font-family:var(--ui);font-size:.95rem;}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce .button,.woocommerce #respond input#submit{background:var(--blue);color:#fff;border:0;border-radius:3px;font-family:var(--ui);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:500;padding:13px 22px;transition:background .2s var(--ease);}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce .button:hover,.woocommerce #respond input#submit:hover{background:var(--blue-deep);color:#fff;}
.woocommerce span.onsale{background:var(--cyan);color:var(--ink);}
.woocommerce .product_title,.woocommerce .products h2{font-family:var(--ui);color:var(--ink);}
.woocommerce-breadcrumb{font-family:var(--ui);text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--ink-soft);}

/* ================= HOME — HERO ================= */
.labx-main{display:block;}
.labx-hero{position:relative;min-height:clamp(440px,76vh,720px);display:flex;align-items:center;padding:80px var(--px);background:#0B2730 center/cover no-repeat;overflow:hidden;}
.labx-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0;}
.labx-hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;}
.labx-hero--labx::before{background:linear-gradient(90deg,rgba(11,39,48,.92) 0%,rgba(11,39,48,.60) 44%,rgba(11,39,48,.18) 100%);}
.labx-hero--eco::before{background:linear-gradient(90deg,rgba(6,32,26,.92) 0%,rgba(13,61,42,.60) 44%,rgba(20,120,80,.24) 100%);}
.labx-hero__box{position:relative;z-index:2;max-width:560px;background:rgba(11,39,48,.40);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);border:1px solid rgba(255,255,255,.15);padding:clamp(28px,4vw,48px);color:#fff;}
.labx-hero--eco .labx-hero__box{background:rgba(6,32,26,.42);}
.labx-hero__eyebrow{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:500;color:var(--cyan);}
.labx-hero--eco .labx-hero__eyebrow{color:#6FE3A8;}
.labx-hero__title{font-family:var(--ui);font-weight:600;font-size:clamp(1.25rem,2.6vw,1.8rem);line-height:1.14;color:#fff !important;margin:8px 0 12px;}
.labx-hero__text{color:#D7E4E8;font-size:.9rem;line-height:1.6;margin:0 0 22px;max-width:42ch;}
.labx-btn{display:inline-flex;align-items:center;gap:10px;background:var(--blue);color:#fff !important;font-family:var(--ui);text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:600;padding:14px 24px;border-radius:3px;transition:background .2s var(--ease),color .2s var(--ease);}
.labx-btn:hover{background:var(--cyan);color:var(--ink) !important;}
.labx-hero--eco .labx-btn{background:#1F7A4D;}
.labx-hero--eco .labx-btn:hover{background:#6FE3A8;color:#06201A !important;}
.labx-hero--right{justify-content:flex-end;}
.labx-hero--cert::before{background:linear-gradient(270deg,rgba(11,39,48,.92) 0%,rgba(11,39,48,.60) 44%,rgba(11,39,48,.18) 100%);}
.labx-hero--cert .labx-hero__eyebrow{color:var(--cyan);}

/* sezione prodotti in evidenza */
.labx-featured{background:var(--paper);}
.labx-featured__inner{max-width:1180px;margin:0 auto;padding:72px var(--px);}
.labx-featured__eyebrow{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:500;color:var(--blue);}
.labx-featured__title{font-family:var(--ui);font-weight:600;font-size:clamp(1.25rem,2.6vw,1.8rem);color:var(--ink);margin:8px 0 28px;}

/* ================= SHOP / CATALOGO ================= */
.labx-shop{max-width:1280px;margin:0 auto;padding:44px var(--px) 80px;display:grid;grid-template-columns:248px 1fr;gap:40px;align-items:start;}
.labx-shop__head{margin-bottom:22px;}
.labx-shop__title{font-family:var(--ui);font-weight:600;font-size:clamp(1.4rem,3vw,2rem);color:var(--ink);margin:0 0 6px;}
.labx-shop__empty{color:var(--ink-soft);}
@media(max-width:860px){.labx-shop{grid-template-columns:1fr;}}

.labx-filters{position:sticky;top:calc(var(--header-h) + 16px);font-family:var(--ui);border:1px solid var(--line);border-radius:4px;padding:18px;background:var(--paper);}
.labx-filters__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;}
.labx-filters__title{text-transform:uppercase;letter-spacing:var(--label);font-size:12px;font-weight:600;color:var(--ink);}
.labx-filters__reset{text-transform:uppercase;letter-spacing:var(--label);font-size:10px;color:var(--ink-soft);}
.labx-filters__reset:hover{color:var(--blue);}
.labx-filter-group{border:0;border-top:1px solid var(--line);margin:0;padding:14px 0 4px;}
.labx-filter-group__label{text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:600;color:var(--blue);padding:0;margin-bottom:10px;}
.labx-filter-group ul{list-style:none;margin:0;padding:0;}
.labx-filter-group li{margin-bottom:8px;}
.labx-filter-opt{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--body);cursor:pointer;}
.labx-filter-opt input{accent-color:var(--blue);width:15px;height:15px;flex-shrink:0;}
.labx-filters__apply{width:100%;justify-content:center;margin-top:16px;}

/* Filtri: linguetta "Filtra" + sidebar off-canvas, solo mobile */
.labx-filters-toggle,.labx-filters-close,.labx-filters-backdrop{display:none;}
@media(max-width:860px){
	.labx-shop{position:relative;}
	.labx-filters-toggle{display:inline-flex;align-items:center;gap:9px;position:sticky;top:calc(var(--header-h) + 8px);z-index:30;background:var(--ink);color:#fff;font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:600;border:0;border-radius:3px;padding:11px 16px;cursor:pointer;margin-bottom:18px;}
	.labx-filters-toggle svg{display:block;}
	.labx-filters-backdrop{display:block;position:fixed;inset:0;background:rgba(11,39,48,.5);z-index:79;}
	.labx-shop__side{position:fixed;top:0;left:0;bottom:0;width:min(330px,86vw);background:var(--paper);z-index:80;transform:translateX(-100%);transition:transform .3s var(--ease);overflow-y:auto;padding:18px;box-shadow:0 0 40px rgba(0,0,0,.25);}
	.labx-shop__side.is-open{transform:none;}
	.labx-shop__side .labx-filters{position:static;border:0;padding:0;background:none;}
	.labx-filters-close{display:inline-flex;align-items:center;gap:8px;background:none;border:0;color:var(--ink);cursor:pointer;margin:0 0 10px auto;text-transform:uppercase;letter-spacing:var(--label);font-size:11px;}
	.labx-filters-close svg{display:block;}
}

/* scheda prodotto singola: wrapper con margini laterali, senza sidebar widget */
.labx-product{max-width:1180px;margin:0 auto;padding:40px var(--px) 80px;}
.labx-product div.product{margin:0;}
.labx-placeholder{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;background:#F4F6F7;}

/* badge Ecolabel sull'immagine prodotto (inset logico: corretto anche in RTL) */
.woocommerce ul.products li.product .woocommerce-loop-product__link{position:relative;display:block;}
.labx-product div.product{position:relative;}
.labx-eco-badge{position:absolute;inset-block-start:10px;inset-inline-start:10px;z-index:3;line-height:0;pointer-events:none;}
.labx-eco-badge img{width:44px!important;height:44px!important;object-fit:contain;background:#fff;border-radius:6px;padding:3px;box-shadow:0 1px 4px rgba(11,39,48,.12);}
.labx-eco-badge--pdp img{width:64px!important;height:64px!important;}
@media (max-width:600px){.labx-eco-badge img{width:36px!important;height:36px!important;}}

/* schede PDF nella scheda prodotto */
.labx-datasheets{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:22px 0;}
.labx-datasheets__label{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;color:var(--ink-soft);width:100%;}
.labx-ds-btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--ui);font-size:12px;font-weight:500;color:var(--ink) !important;border:1px solid var(--line);border-radius:3px;padding:10px 14px;transition:border-color .2s var(--ease),color .2s var(--ease);}
.labx-ds-btn:hover{border-color:var(--blue);color:var(--blue) !important;}
.labx-ds-ico{font-family:var(--ui);font-size:9px;font-weight:700;letter-spacing:.05em;background:var(--blue);color:#fff;padding:3px 5px;border-radius:2px;}

/* CTA richiedi informazioni */
.labx-cta-wrap{margin:22px 0 0;}
.labx-cta-info.button,.woocommerce .labx-cta-info.button{display:inline-flex;align-items:center;background:var(--blue);color:#fff !important;font-family:var(--ui);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:600;padding:15px 28px;border-radius:3px;}
.labx-cta-info.button:hover,.woocommerce .labx-cta-info.button:hover{background:var(--cyan);color:var(--ink) !important;}

/* ================= LA MIA SELEZIONE ================= */
.labx-sel-link{position:relative;display:inline-flex;align-items:center;color:var(--ink);transition:color .2s var(--ease);}
.labx-sel-link:hover{color:var(--blue);}
.labx-sel-count{position:absolute;top:-7px;right:-9px;min-width:15px;height:15px;padding:0 4px;border-radius:8px;background:var(--blue);color:#fff;font-family:var(--ui);font-size:9px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1;}
.labx-sel-count.is-empty{display:none;}
.labx-header.is-dark .labx-sel-link{color:#fff;}
.labx-header.is-dark .labx-sel-link:hover{color:var(--cyan);}
.labx-header.is-dark .labx-sel-count{background:var(--cyan);color:var(--ink);}

.labx-sel-btn{display:inline-flex;align-items:center;gap:8px;cursor:pointer;background:none;border:1px solid var(--line);border-radius:3px;color:var(--ink);font-family:var(--ui);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:600;padding:9px 14px;transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease);}
.labx-sel-btn:hover{border-color:var(--blue);color:var(--blue);}
.labx-sel-btn.is-on{background:var(--blue);border-color:var(--blue);color:#fff;}
.labx-sel-btn__ico{font-size:13px;line-height:1;}
.labx-sel-btn.is-on .labx-sel-btn__ico{content:"";}
.labx-sel-btn--loop{margin-top:10px;width:100%;justify-content:center;}
.labx-sel-btn--pdp{margin-top:14px;}

.labx-selection__title{font-family:var(--ui);font-weight:600;font-size:clamp(1.6rem,3vw,2.2rem);color:var(--ink);margin:0 0 24px;}
.labx-selection__empty{color:var(--ink-soft);}
.labx-selection__list{display:flex;flex-direction:column;margin-bottom:28px;}
.labx-sel-card{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);}
.labx-sel-card__img{width:64px;height:64px;flex-shrink:0;background:var(--paper-2);display:block;overflow:hidden;}
.labx-sel-card__img img{width:100%;height:100%;object-fit:cover;}
.labx-sel-card__name{flex:1;font-family:var(--ui);font-size:14px;color:var(--ink);}
.labx-sel-card__rm{background:none;border:0;font-size:22px;line-height:1;color:var(--ink-soft);cursor:pointer;padding:6px;}
.labx-sel-card__rm:hover{color:#c0392b;}

/* striscia certificazioni */
.labx-certstrip{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.labx-certstrip__inner{max-width:1180px;margin:0 auto;padding:40px var(--px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;}
.labx-certstrip__txt{font-family:var(--ui);text-transform:uppercase;letter-spacing:.1em;font-size:13px;font-weight:500;color:var(--ink);}
.labx-certstrip .labx-btn{background:var(--ink);}
.labx-certstrip .labx-btn:hover{background:var(--blue);color:#fff;}

/* ================= CONTATTI ================= */
.labx-contact{max-width:760px;margin:0 auto;padding:64px var(--px) 90px;}
.labx-contact__eyebrow{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:500;color:var(--blue);}
.labx-contact__title{font-family:var(--ui);font-weight:600;font-size:clamp(1.5rem,3.4vw,2.2rem);color:var(--ink);margin:8px 0 12px;}
.labx-contact__text{color:var(--ink-soft);font-size:.95rem;line-height:1.6;margin:0 0 28px;max-width:54ch;}
.labx-contact__notice{font-family:var(--ui);font-size:.9rem;padding:13px 16px;border-radius:4px;margin:0 0 22px;}
.labx-contact__notice--ok{background:rgba(31,122,77,.12);color:#1F7A4D;border:1px solid rgba(31,122,77,.30);}
.labx-contact__notice--err{background:rgba(207,46,46,.10);color:#b3322c;border:1px solid rgba(207,46,46,.30);}
.labx-contact__form{display:flex;flex-direction:column;gap:18px;}
.labx-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:600px){.labx-field-row{grid-template-columns:1fr;}}
.labx-field{display:flex;flex-direction:column;gap:7px;}
.labx-field label{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:500;color:var(--ink-soft);}
.labx-field input,.labx-field textarea{font-family:var(--ui);font-size:.95rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:12px 14px;outline:none;transition:border-color .2s var(--ease);}
.labx-field input:focus,.labx-field textarea:focus{border-color:var(--blue);}
.labx-field textarea{resize:vertical;}
.labx-field--hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.labx-contact__submit{align-self:flex-start;border:0;cursor:pointer;margin-top:4px;}
.labx-contact__privacy{font-size:.8rem;color:var(--ink-soft);margin:2px 0 0;}
.labx-contact__privacy a{color:var(--blue);text-decoration:underline;}
.labx-consent{display:flex;align-items:flex-start;gap:11px;font-size:.9rem;line-height:1.55;color:var(--ink-soft);cursor:pointer;margin-top:2px;}
.labx-consent input{accent-color:var(--blue);width:17px;height:17px;flex-shrink:0;margin-top:2px;cursor:pointer;}
.labx-consent a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;}

/* form rivenditore: sezioni, select, griglia caselle */
.labx-contact--wide{max-width:940px;}
.labx-fieldset{border:1px solid var(--line);border-radius:4px;padding:22px 24px 26px;margin:0;display:flex;flex-direction:column;gap:18px;}
.labx-fieldset__legend{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:12px;font-weight:600;color:var(--blue);padding:0 8px;}
.labx-field__label{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:11px;font-weight:500;color:var(--ink-soft);}
.labx-field select{font-family:var(--ui);font-size:.95rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:12px 14px;outline:none;cursor:pointer;transition:border-color .2s var(--ease);}
.labx-field select:focus{border-color:var(--blue);}
.labx-checkgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 18px;margin-top:2px;}
.labx-radiorow{display:flex;gap:24px;margin-top:2px;}
.labx-checkgrid__item{display:flex;align-items:center;gap:9px;font-size:.92rem;color:var(--body);cursor:pointer;}
.labx-checkgrid__item input{accent-color:var(--blue);width:16px;height:16px;flex-shrink:0;cursor:pointer;}
@media(max-width:600px){.labx-fieldset{padding:18px 16px 20px;}}

/* ================= HEADER: barra BIANCA quando si scorre ================= */
/* Regole in coda: vincono su .is-dark a parità di specificità. */
.labx-header.is-scrolled{background:var(--paper);border-bottom-color:var(--line);}
.labx-header.is-scrolled .labx-logo--light{display:none;}
.labx-header.is-scrolled .labx-logo--dark{display:block;}
.labx-header.is-scrolled .labx-menu-btn,.labx-header.is-scrolled .labx-iconbtn{color:var(--ink);}
.labx-header.is-scrolled .labx-menu-btn:hover,.labx-header.is-scrolled .labx-iconbtn:hover{color:var(--blue);}
.labx-header.is-scrolled .labx-lang{color:var(--ink-soft);}
.labx-header.is-scrolled .labx-lang span{color:var(--line-strong);}
.labx-header.is-scrolled .labx-lang a{color:var(--ink-soft);}
.labx-header.is-scrolled .labx-lang a.is-active{color:var(--ink);}
.labx-header.is-scrolled .labx-lang a:hover{color:var(--blue);}
.labx-header.is-scrolled .labx-sel-count{background:var(--blue);color:#fff;}

/* ================= TIPOGRAFIA: +2px su tutto ================= */
/* Ogni misura del sito aumentata di 2px rispetto ai valori originali. */
body.labx-body{font-size:1.0625rem;}                                   /* 15 -> 17 */
.labx-search input{font-size:1.475rem;}                                /* 21.6 -> 23.6 */
.labx-drawer__nav a{font-size:1.075rem;}                               /* 15.2 -> 17.2 */
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1.125rem;} /* 16 -> 18 */
.woocommerce ul.products li.product .price{font-size:1.075rem;}
.labx-hero__text{font-size:1.025rem;}                                  /* 14.4 -> 16.4 */
.labx-contact__text,.labx-field input,.labx-field textarea{font-size:1.075rem;}
.labx-contact__notice{font-size:1.025rem;}
.labx-contact__privacy{font-size:.925rem;}

/* titoli fluidi: minimo e massimo alzati di 2px */
.labx-hero__title,.labx-featured__title{font-size:clamp(1.375rem,2.8vw,1.925rem);}
.labx-shop__title{font-size:clamp(1.525rem,3.2vw,2.125rem);}
.labx-selection__title{font-size:clamp(1.725rem,3.2vw,2.325rem);}
.labx-contact__title{font-size:clamp(1.625rem,3.6vw,2.325rem);}

/* micro-testi in px */
.labx-ds-ico,.labx-sel-count{font-size:11px;}                          /* 9 -> 11 */
.labx-filters__reset,.labx-sel-btn{font-size:12px;}                    /* 10 -> 12 */
.labx-label,.labx-footer__brand p,.labx-footer h3,.labx-footer__grid a,
.labx-footer__bottom-inner,.woocommerce-breadcrumb,.labx-hero__eyebrow,
.labx-btn,.labx-featured__eyebrow,.labx-filter-group__label,
.labx-datasheets__label,.labx-contact__eyebrow,.labx-field label,
.labx-filters-toggle,.labx-filters-close{font-size:13px;}              /* 11 -> 13 */
.labx-filters__title,.labx-ds-btn,.labx-cta-info.button,
.woocommerce .labx-cta-info.button{font-size:14px;}                    /* 12 -> 14 */
.labx-filter-opt,.labx-certstrip__txt,.labx-sel-btn__ico,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce .button,.woocommerce #respond input#submit{font-size:15px;} /* 13 -> 15 */
.labx-sel-card__name{font-size:16px;}                                  /* 14 -> 16 */
.labx-sel-card__rm{font-size:24px;}                                    /* 22 -> 24 */

/* ================= PAGINE LEGALI (Privacy / Cookie) ================= */
.labx-legal{max-width:1180px;margin:0 auto;padding:56px var(--px) 96px;}
.labx-legal__head{padding-bottom:26px;border-bottom:1px solid var(--line);margin-bottom:34px;}
.labx-legal__eyebrow{display:block;font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:13px;font-weight:500;color:var(--blue);}
.labx-legal__title{font-family:var(--ui);font-weight:600;font-size:clamp(1.625rem,3.6vw,2.325rem);color:var(--ink);margin:10px 0 8px;}
.labx-legal__updated{margin:0;font-family:var(--ui);font-size:13px;color:var(--ink-soft);}

.labx-legal__body{color:var(--body);line-height:1.75;}
.labx-legal__body h2{font-family:var(--ui);font-weight:600;font-size:1.2rem;color:var(--ink);margin:44px 0 14px;padding-left:14px;border-left:3px solid var(--blue);line-height:1.3;}
.labx-legal__body h2:first-child{margin-top:0;}
.labx-legal__body h3{font-family:var(--ui);font-weight:600;font-size:1.05rem;color:var(--ink);margin:30px 0 10px;}
.labx-legal__body p{margin:0 0 16px;}
.labx-legal__body ul,.labx-legal__body ol{margin:0 0 18px;padding-left:22px;}
.labx-legal__body li{margin-bottom:10px;}
.labx-legal__body ul{list-style:none;padding-left:0;}
.labx-legal__body ul li{position:relative;padding-left:20px;}
.labx-legal__body ul li::before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--cyan);}
.labx-legal__body a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;}
.labx-legal__body a:hover{color:var(--blue-deep);}
.labx-legal__body strong{color:var(--ink);font-weight:600;}

.labx-legal__body .labx-legal__lead{background:var(--paper-2);border:1px solid var(--line);border-radius:4px;padding:20px 22px;font-family:var(--ui);font-size:.92rem;line-height:1.75;color:var(--ink-soft);margin-bottom:22px;}
.labx-legal__body .labx-legal__intro{font-size:1.05rem;color:var(--ink);margin-bottom:34px;}
.labx-legal__body .labx-legal__sign{margin-top:44px;padding-top:22px;border-top:1px solid var(--line);font-family:var(--ui);font-size:.9rem;color:var(--ink-soft);}

.labx-legal__foot{display:flex;flex-wrap:wrap;gap:22px;margin-top:52px;padding-top:24px;border-top:1px solid var(--line);}
.labx-legal__link{font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:13px;font-weight:500;color:var(--ink-soft);}
.labx-legal__link:hover{color:var(--blue);}
@media(max-width:600px){.labx-legal{padding-top:36px;}.labx-legal__body h2{margin-top:34px;}}

/* ================= SUPPORTO RTL (arabo) =================
   TranslatePress imposta dir="rtl" sull'elemento <html>: le proprietà logiche
   si specchiano da sole, queste regole sistemano quelle fisiche rimaste. */
[dir="rtl"] body.labx-body{font-family:"Noto Sans Arabic","Plus Jakarta Sans",system-ui,sans-serif;}
[dir="rtl"] .labx-hero__title,[dir="rtl"] .labx-hero__text,[dir="rtl"] .labx-hero__eyebrow,
[dir="rtl"] .labx-featured__title,[dir="rtl"] .labx-shop__title,[dir="rtl"] .labx-legal__title,
[dir="rtl"] .labx-contact__title,[dir="rtl"] .labx-btn,[dir="rtl"] .labx-label{font-family:"Noto Sans Arabic","Plus Jakarta Sans",system-ui,sans-serif;}

/* pannello menu: entra da destra */
[dir="rtl"] .labx-drawer{left:auto;right:0;transform:translateX(100%);}
[dir="rtl"] .labx-drawer.is-open{transform:translateX(0);}

/* sidebar filtri off-canvas su mobile: entra da destra */
@media(max-width:860px){
	[dir="rtl"] .labx-shop__side{left:auto;right:0;transform:translateX(100%);}
	[dir="rtl"] .labx-shop__side.is-open{transform:none;}
	[dir="rtl"] .labx-filters-close{margin:0 auto 10px 0;}
}

/* pagine legali: barra dei titoli e punti elenco sul lato destro */
[dir="rtl"] .labx-legal__body h2{padding-left:0;padding-right:14px;border-left:0;border-right:3px solid var(--blue);}
[dir="rtl"] .labx-legal__body ol{padding-left:0;padding-right:22px;}
[dir="rtl"] .labx-legal__body ul li{padding-left:0;padding-right:20px;}
[dir="rtl"] .labx-legal__body ul li::before{left:auto;right:2px;}

/* sottolineatura animata dei link lingua */
[dir="rtl"] .labx-lang a::after{left:auto;right:0;}

/* Selettore lingue: gestito dal selettore nativo di TranslatePress,
   configurato dal pannello del plugin. Nessuna regola custom nel tema. */

/* ── Tabella specifiche scheda prodotto ─────────────────────────────────── */
.labx-specs{margin:1.25rem 0;border-top:1px solid var(--line);}
.labx-specs__row{
  display:grid;
  grid-template-columns:minmax(9rem,13rem) 1fr;
  gap:.4rem 1.5rem;
  padding:.7rem 0;
  border-bottom:1px solid var(--line);
}
.labx-specs__k{
  margin:0;
  font-family:var(--ui);
  font-size:.75rem;
  font-weight:600;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:var(--ink-2);
}
.labx-specs__v{margin:0;font-size:.95rem;line-height:1.5;color:var(--ink);}
@media (max-width:600px){
  .labx-specs__row{grid-template-columns:1fr;gap:.15rem;}
}
[dir="rtl"] .labx-specs__row{direction:rtl;}

/* ── Tab "Modo d'uso" ──────────────────────────────────────────────────── */
.labx-modo-uso{max-width:72ch;font-size:1rem;line-height:1.65;color:var(--ink);}
.labx-modo-uso p{margin:0 0 .85rem;}
.labx-modo-uso ol{margin:0 0 .85rem;padding-left:1.4rem;list-style:decimal;}
.labx-modo-uso li{margin:0 0 .4rem;padding-left:.25rem;}
[dir="rtl"] .labx-modo-uso ol{padding-left:0;padding-right:1.4rem;}

/* =====================================================================
   RESTYLING "CHIARO" (set 2026, richiesta cliente): il marchio deve
   comunicare il pulito -> header e footer bianchi, home su fondo bianco.
   Regole in coda: prevalgono su quelle precedenti.
   ===================================================================== */

/* Header sempre bianco, logo per sfondi chiari */
.labx-header,.labx-header.is-dark{background:var(--paper);border-bottom:1px solid var(--line);}
.labx-header .labx-logo--light,.labx-header.is-dark .labx-logo--light{display:none;}
.labx-header .labx-logo--dark,.labx-header.is-dark .labx-logo--dark{display:block;}
.labx-header .labx-menu-btn,.labx-header .labx-iconbtn,.labx-header.is-dark .labx-menu-btn,.labx-header.is-dark .labx-iconbtn,.labx-header.is-dark .labx-sel-link{color:var(--ink);}
.labx-header .labx-menu-btn:hover,.labx-header .labx-iconbtn:hover,.labx-header.is-dark .labx-sel-link:hover{color:var(--blue);}
.labx-header.is-dark .labx-sel-count{background:var(--blue);color:#fff;}
.labx-main--hero{margin-top:0;}

/* Footer chiaro */
.labx-footer{background:var(--paper-2);color:var(--ink);border-top:1px solid var(--line);}
.labx-footer__brand p{color:var(--ink-soft);}
.labx-footer h3{color:var(--blue);}
.labx-footer__grid a,.labx-footer__grid a:hover,.labx-footer__bottom-inner a{color:var(--ink);}
.labx-footer__legal-item:first-of-type{border-top-color:var(--line);}
.labx-footer__bottom{border-top-color:var(--line);}
.labx-footer__bottom-inner{color:var(--ink-soft);}

/* Tipografia editoriale home */
.labx-eyebrow{display:inline-block;font-family:var(--ui);text-transform:uppercase;letter-spacing:var(--label);font-size:13px;font-weight:500;color:var(--blue);}
.labx-eyebrow--green{color:#1F7A4D;}
.labx-body .labx-display{font-family:var(--ui);font-weight:300;font-size:clamp(2.4rem,5.2vw,4.4rem);line-height:1.04;letter-spacing:-.02em;color:var(--ink);margin:14px 0 20px;}
.labx-body .labx-display--md{font-size:clamp(1.9rem,3.4vw,2.8rem);margin:10px 0 18px;}
.labx-lead{font-size:1.1rem;line-height:1.65;color:var(--body);max-width:46ch;margin:0 0 30px;}
.labx-actions{display:flex;flex-wrap:wrap;gap:14px;}
.labx-btn-outline{display:inline-flex;align-items:center;justify-content:center;min-width:220px;padding:17px 30px;border:1px solid var(--ink);background:transparent;color:var(--ink) !important;font-family:var(--ui);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:500;transition:background .2s var(--ease),color .2s var(--ease);}
.labx-btn-outline:hover{background:var(--ink);color:#fff !important;}

/* Sezioni split testo / packshot */
.labx-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,80px);max-width:1440px;margin:0 auto;padding:clamp(40px,7vw,96px) var(--px);background:var(--paper);}
.labx-split--hero{min-height:calc(88vh - var(--header-h));padding-top:clamp(24px,4vw,56px);}
.labx-split--reverse .labx-split__text{order:2;}
.labx-split--tint{max-width:none;background:#F3F8F5;}
.labx-split--tint > *{max-width:640px;}
.labx-split--tint .labx-split__media{justify-self:end;}
.labx-split__media{display:flex;justify-content:center;}
.labx-split__img{display:block;width:100%;max-width:640px;height:auto;aspect-ratio:1/1;object-fit:contain;mix-blend-mode:multiply;}
@media(max-width:860px){
	.labx-split{grid-template-columns:1fr;min-height:0;}
	.labx-split--reverse .labx-split__text{order:0;}
	.labx-split__media{order:-1;}
	.labx-split__img{max-width:420px;}
	.labx-split--tint .labx-split__media{justify-self:center;}
	.labx-btn-outline{min-width:0;flex:1 1 auto;}
}

/* ── HERO ANIMATA (home) ─────────────────────────────────────────────── */
.labx-hero2{--accent:#1C7FB0;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,80px);max-width:1440px;margin:0 auto;min-height:calc(88vh - var(--header-h));padding:clamp(24px,4vw,56px) var(--px) clamp(40px,5vw,72px);overflow:hidden;}
.labx-hero2__brand{margin:0 0 6px;font-size:inherit;line-height:1;}
.labx-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.labx-shop__intro{margin:10px 0 0;max-width:72ch;color:var(--color-secondary,#5d6b70);font-size:1rem;line-height:1.55;}
.labx-shop__intro p{margin:0;}
.labx-hero2__copies{display:grid;}
.labx-hero2__copy{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(22px);transition:opacity .7s var(--ease),transform .8s var(--ease),visibility 0s .8s;}
.labx-hero2__copy.is-active{opacity:1;visibility:visible;transform:none;transition:opacity .8s var(--ease) .25s,transform .9s var(--ease) .25s,visibility 0s;}
.labx-hero2__copy.is-leaving{transform:translateY(-18px);}
.labx-hero2__cat{display:inline-flex;align-items:center;gap:10px;margin-top:10px;font-family:var(--ui);font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);transition:color .6s var(--ease);}
.labx-hero2__cat::before{content:"";width:28px;height:2px;background:currentColor;}
.labx-body .labx-hero2__title{margin:14px 0 18px;}
.labx-hero2__lead{min-height:3.3em;}
.labx-hero2__more{display:inline-flex;gap:8px;margin:-10px 0 30px;font-family:var(--ui);font-size:14px;font-weight:500;color:var(--ink) !important;border-bottom:1px solid var(--accent);padding-bottom:3px;transition:border-color .6s var(--ease);}
.labx-hero2__more:hover{color:var(--accent) !important;}
.labx-hero2__cta{position:relative;z-index:2;}
/* CTA hero: azzurro della "X" del logo LAB-X */
/* CTA: restano outline; solo al passaggio del mouse fondo azzurro X del logo + testo bianco */
.labx-btn-outline:hover,.labx-hero2__cta .labx-btn-outline:hover{background:var(--cyan);border-color:var(--cyan);color:#fff !important;}
/* "Richiedi informazioni": al contrario -> pieno azzurro X con testo bianco;
   al passaggio del mouse fondo bianco, testo e bordo azzurro. */
.labx-btn-outline.labx-btn--cyan{background:var(--cyan);border-color:var(--cyan);color:#fff !important;}
.labx-btn-outline.labx-btn--cyan:hover,.labx-hero2__cta .labx-btn-outline.labx-btn--cyan:hover{background:#fff;border-color:var(--cyan);color:var(--cyan) !important;}
/* colore unico (niente colore per prodotto) */
.labx-hero2{--accent:var(--ink) !important;}
.labx-hero2__halo{display:none !important;}
.labx-body .labx-hero2__title{margin-top:18px;}
.labx-hero2__nav{display:flex;gap:10px;margin-top:40px;}
.labx-hero2__dot{position:relative;width:46px;height:18px;padding:0;border:0;background:none;cursor:pointer;}
.labx-hero2__dot::before,.labx-hero2__dot span{content:"";position:absolute;left:0;top:8px;height:2px;border-radius:2px;}
.labx-hero2__dot::before{right:0;background:var(--line-strong);}
.labx-hero2__dot span{width:0;background:var(--accent);}
.labx-hero2__dot.is-active span{width:100%;}
.labx-hero2.is-playing .labx-hero2__dot.is-active span{width:0;animation:labxDot 5.5s linear forwards;}
@keyframes labxDot{to{width:100%;}}
.labx-hero2__stage{position:relative;display:grid;place-items:center;aspect-ratio:1/1;max-width:640px;width:100%;justify-self:center;margin-top:clamp(40px,7vw,110px);}
@media(max-width:860px){.labx-hero2__stage{margin-top:48px;max-width:320px !important;}}
/* alone = mezza sfera appoggiata alla base del prodotto, come fondale leggero */
/* alone: bagliore morbido e basso alla base del prodotto (niente bordi netti), sfuma nel bianco */
.labx-hero2__halo{position:absolute;left:50%;bottom:4%;width:70%;height:34%;transform:translateX(-50%) scale(1);transform-origin:50% 100%;border-radius:50%;background:radial-gradient(ellipse at 50% 70%,color-mix(in srgb,var(--accent) 22%,transparent) 0%,color-mix(in srgb,var(--accent) 9%,transparent) 40%,transparent 72%);filter:blur(22px);transition:background .9s var(--ease),transform .7s cubic-bezier(.16,1,.3,1);}
.labx-hero2__stage:hover .labx-hero2__halo{transform:translateX(-50%) scale(1.18);}
.labx-hero2__prod{grid-area:1/1;position:relative;display:block;width:100%;opacity:0;visibility:hidden;transform:translateY(60px) scale(.94);filter:blur(6px);transition:opacity .7s var(--ease),transform .9s var(--ease),filter .7s var(--ease),visibility 0s .9s;}
.labx-hero2__prod.is-active{opacity:1;visibility:visible;transform:none;filter:none;transition:opacity .9s var(--ease) .15s,transform 1.1s cubic-bezier(.16,1,.3,1) .15s,filter .8s var(--ease) .15s,visibility 0s;}
.labx-hero2__prod.is-leaving{transform:translateY(-40px) scale(1.04);}
.labx-hero2__img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;mix-blend-mode:multiply;transform-origin:50% 91.5%;transform:scale(1.22);transition:transform .7s cubic-bezier(.16,1,.3,1);}
/* prodotto piu' grande (scala dalla base); hover: cresce ancora verso l'alto, stessa base */
.labx-hero2__stage:hover .labx-hero2__prod.is-active .labx-hero2__img{transform:scale(1.3);}
@media(max-width:860px){
	.labx-hero2{grid-template-columns:1fr;min-height:0;gap:8px;padding-top:12px;}
	.labx-hero2__stage{order:-1;max-width:380px;}
	.labx-hero2__nav{margin-top:28px;}
	.labx-hero2__lead{min-height:4.9em;}
}
@media(prefers-reduced-motion:reduce){
	.labx-hero2__copy,.labx-hero2__prod{transition:opacity .2s linear !important;transform:none !important;filter:none !important;}
	.labx-hero2__img,.labx-hero2__halo{transition:none !important;}
}

/* In evidenza + categorie + certificazioni */
.labx-featured__inner{max-width:1280px;padding:clamp(56px,7vw,96px) var(--px);}
.labx-cats{background:var(--paper);border-top:1px solid var(--line);}
.labx-cats__inner{max-width:1280px;margin:0 auto;padding:clamp(56px,7vw,96px) var(--px);}
.labx-cats__list{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
.labx-cats__list li{background:var(--paper);}
.labx-cats__list a{display:flex;flex-direction:column;gap:6px;padding:26px 24px;color:var(--ink);transition:background .2s var(--ease);}
.labx-cats__list a:hover{background:var(--paper-2);color:var(--blue);}
.labx-cats__list span{font-family:var(--ui);font-size:1.15rem;font-weight:500;}
.labx-cats__list small{font-family:var(--ui);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);}
@media(max-width:860px){.labx-cats__list{grid-template-columns:1fr 1fr;}}
.labx-certband{background:var(--paper-2);border-top:1px solid var(--line);}
.labx-certband__inner{max-width:1280px;margin:0 auto;padding:clamp(48px,6vw,80px) var(--px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;}
.labx-certband .labx-lead{margin-bottom:0;}
.labx-footer{margin-top:0;}

/* Card prodotto: allineamento costante anche con nomi su 2 righe */
/* Griglia a CSS grid esplicita: indipendente dal CSS WooCommerce (che in home,
   via shortcode, puo' non essere caricato e rompeva la sezione "In evidenza"). */
/* lo shortcode [products] avvolge la griglia in div.woocommerce.columns-4: anche li' va annullata la multi-colonna Tailwind */
.woocommerce[class*="columns-"],ul.products[class*="columns-"]{columns:auto !important;column-count:auto !important;column-width:auto !important;}
/* columns:auto -> neutralizza l'utility Tailwind .columns-4 (multi-colonna) che collide con la classe WooCommerce */
.woocommerce ul.products,.woocommerce-page ul.products{columns:auto !important;column-count:auto !important;column-width:auto !important;width:100% !important;max-width:none !important;display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 28px;margin:0;padding:0;list-style:none;}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:1024px){.woocommerce ul.products,.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:768px){.woocommerce ul.products,.woocommerce ul.products.columns-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px;}}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none !important;content:none !important;}
.woocommerce ul.products li.product{display:flex !important;flex-direction:column;float:none !important;width:auto !important;margin:0 !important;padding:0;min-width:0;}
.woocommerce ul.products li.product img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:contain;margin:0 0 14px;}
.woocommerce ul.products li.product .labx-sel-btn--loop{width:100%;justify-content:center;}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1 1 auto;}
/* nome prodotto sempre su UNA riga: font leggermente ridotto; i nomi molto lunghi
   finiscono con "…" invece di andare a capo, cosi' la griglia resta allineata. */
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:clamp(.82rem,1.05vw,.98rem) !important;letter-spacing:-.005em;line-height:1.3;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:0;}
.woocommerce ul.products li.product .labx-sel-btn--loop{margin-top:auto;}
.woocommerce ul.products li.product img{background:var(--paper);}

/* Filtri istantanei: feedback di caricamento */
.labx-shop__main{transition:opacity .15s var(--ease);}
.labx-shop__main.is-loading{opacity:.45;pointer-events:none;}

/* Pulsante WhatsApp flottante (footer.php) */
.labx-body .labx-wa{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;align-items:center;gap:12px;padding:8px 20px 8px 8px;border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 10px 30px -8px rgba(11,39,48,.35),0 0 0 1px rgba(11,39,48,.06);transition:transform .25s var(--ease),box-shadow .25s var(--ease);}
.labx-body .labx-wa:hover{color:var(--ink);transform:translateY(-3px);box-shadow:0 16px 36px -10px rgba(11,39,48,.45),0 0 0 1px rgba(37,211,102,.4);}
.labx-wa__icon{position:relative;flex:0 0 auto;width:48px;height:48px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;}
.labx-wa__icon::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 0 rgba(37,211,102,.55);animation:labxWaPulse 2.4s var(--ease) infinite;}
.labx-wa__text{display:flex;flex-direction:column;line-height:1.2;font-family:var(--ui);}
.labx-wa__text small{font-size:12px;color:var(--ink-soft);font-weight:500;}
.labx-wa__text strong{font-size:14.5px;font-weight:700;letter-spacing:-.005em;}
@keyframes labxWaPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.55);}70%{box-shadow:0 0 0 14px rgba(37,211,102,0);}100%{box-shadow:0 0 0 0 rgba(37,211,102,0);}}
@media(prefers-reduced-motion:reduce){.labx-wa__icon::after{animation:none;}}
@media(max-width:600px){.labx-body .labx-wa{right:14px;bottom:14px;padding:6px 14px 6px 6px;gap:9px;}.labx-wa__icon{width:42px;height:42px;}.labx-wa__text small{font-size:11px;}.labx-wa__text strong{font-size:13px;}}
[dir="rtl"] .labx-body .labx-wa,.labx-body[dir="rtl"] .labx-wa{right:auto;left:20px;}

/* Pagina Certificazioni (page-certificazioni.php) */
.labx-certs__inner{max-width:1280px;margin:0 auto;padding:0 var(--px);}
.labx-certs__hero{background:var(--paper-2);border-bottom:1px solid var(--line);padding:clamp(56px,7vw,104px) 0 clamp(40px,5vw,64px);}
.labx-certs__hero .labx-lead{max-width:760px;}
.labx-certs__index{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.labx-certs__index a{display:inline-block;padding:7px 14px;border:1px solid var(--line-strong);border-radius:999px;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ink);background:var(--paper);}
.labx-certs__index a:hover{border-color:var(--blue);color:var(--blue);}
.labx-certs__group{padding:clamp(48px,6vw,88px) 0 0;}
.labx-certs__group:last-of-type{padding-bottom:clamp(48px,6vw,88px);}
.labx-certs__head{margin-bottom:28px;}
.labx-certs__h2{margin:6px 0 0;font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:700;letter-spacing:-.015em;color:var(--ink);line-height:1.2;}
.labx-certs__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.labx-cert{display:grid;grid-template-columns:88px 1fr;gap:22px;align-items:start;padding:28px;border:1px solid var(--line);border-radius:14px;background:var(--paper);scroll-margin-top:calc(var(--header-h) + 24px);transition:border-color .2s var(--ease),box-shadow .2s var(--ease);}
.labx-cert:hover{border-color:var(--line-strong);box-shadow:0 10px 30px -18px rgba(11,39,48,.35);}
.labx-cert__badge{width:88px;height:88px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--ink);color:#fff;box-shadow:inset 0 0 0 4px var(--ink),inset 0 0 0 5px rgba(85,189,238,.55);}
.labx-cert__badge span{font-size:12px;font-weight:700;letter-spacing:.04em;line-height:1.15;padding:0 8px;}
.labx-cert__code{margin:0;font-size:1.2rem;font-weight:700;color:var(--ink);letter-spacing:-.01em;}
.labx-cert__name{margin:2px 0 12px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--blue);}
.labx-cert__text{margin:0;color:var(--ink-soft);font-size:.92rem;line-height:1.65;}
.labx-cert__link{display:inline-block;margin-top:14px;font-weight:600;font-size:14px;}
#ecolabel-ue .labx-cert__badge{background:#1F7A4D;box-shadow:inset 0 0 0 4px #1F7A4D,inset 0 0 0 5px rgba(255,255,255,.5);}
#ecolabel-ue .labx-cert__name{color:#1F7A4D;}
@media(max-width:960px){.labx-certs__grid{grid-template-columns:1fr;}}
@media(max-width:560px){.labx-cert{grid-template-columns:1fr;gap:14px;padding:22px;}.labx-cert__badge{width:72px;height:72px;}}

/* ===== FOOTER: testo uniforme e piccolo + dati societari discreti ===== */
.labx-footer__brand p,.labx-footer h3,.labx-footer__grid a,.labx-footer__bottom-inner,.labx-footer__bottom-inner a,.labx-footer__company{
	font-family:var(--ui) !important;font-size:10px !important;font-weight:500 !important;letter-spacing:.12em !important;text-transform:uppercase !important;line-height:1.9 !important;}
.labx-footer__company{flex-basis:100%;opacity:.6;letter-spacing:.06em !important;}

