/* =====================================================================
   m-restyle.css — RESTYLING UI m.italianmoda.com
   Gruppo A (nov 2026): struttura comune — barra promo, barra servizi,
   header, ricerca, menu, lingua, account, finestre, footer, cookie.
   Variante B "Distintiva" (scelta da Maurizio): stessa palette del
   desktop restyled (restyle.css v24), forme arrotondate, verde piu' vivo.
   Caricato SOLO dalle pagine che includono /_header.cfm (via cfhtmlhead),
   dopo style.min.css. style.min.css (Bootstrap 4.6.2) NON va modificato.
   Cache-busting: _header.cfm -> m-restyle.css?v=N
   ===================================================================== */

/* ============ FONT (ospitati sul server, solo latino, solo pesi usati) ============ */
@font-face{font-family:'Work Sans';font-style:normal;font-weight:400;font-display:swap;src:url(../webfonts/work-sans-latin-400-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Work Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../webfonts/work-sans-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:600;font-display:swap;src:url(../webfonts/plus-jakarta-sans-latin-600-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:700;font-display:swap;src:url(../webfonts/plus-jakarta-sans-latin-700-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
/* russo (cirillico): i due font non lo coprono, si usa il font di sistema (Helvetica/Arial) */

/* ============ TOKENS ============ */
:root{
  --bg:#F5F6EF;
  --bg-alt:#ECEEE3;
  --surface:#FFFFFF;
  --text:#1B211D;
  --text-soft:#4E5B52;
  --accent:#1F5A36;          /* desktop: #21472C — variante B un po' piu' viva */
  --accent-strong:#152B1C;
  --accent-soft:#DDE9DF;
  --accent-hover:#2F7748;
  --gold:#A6832F;
  --gold-hover:#BE9A47;
  --promo-bg:#D69A34;
  --promo-text:#152B1C;
  --danger:#C0392B;
  --hairline:rgba(27,33,29,0.14);
  --hairline-strong:rgba(27,33,29,0.30);
  --shadow:0 1px 2px rgba(21,27,18,0.06);
  --shadow-lg:0 10px 30px rgba(21,27,18,0.16);
  --dim:rgba(21,43,28,0.45);
  --r:12px;                  /* campi, piccoli box */
  --r-btn:999px;             /* bottoni a pillola */
  --r-card:16px;             /* pannelli, finestre */
  --font-h:'Plus Jakarta Sans',Helvetica,Arial,sans-serif;
  --font-b:'Work Sans',Helvetica,Arial,sans-serif;
}

/* ============ BASE ============ */
body{background:var(--bg);color:var(--text);font-family:var(--font-b);-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:var(--font-h);font-weight:600;text-wrap:balance;}
.display-1,.display-2,.display-3,.display-4{font-family:var(--font-h);font-weight:600;letter-spacing:-0.01em;line-height:1.15;}
a{color:var(--accent);}
a:hover{color:var(--accent-hover);}
.modal-content{border-radius:var(--r-card);border-color:var(--hairline);}
.modal-title{font-family:var(--font-h);font-weight:600;}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;}

/* bottoni del restyling (non toccano i .btn Bootstrap delle pagine) */
.m-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-family:var(--font-b);font-weight:600;font-size:0.9rem;line-height:1.2;padding:11px 20px;border-radius:var(--r-btn);border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;}
.m-btn:hover{text-decoration:none;}
.m-btn-sm{padding:8px 15px;font-size:0.82rem;}
.m-btn-green{background:var(--accent);color:#F5F6EF;}
.m-btn-green:hover{background:var(--accent-hover);color:#F5F6EF;}
.m-btn-gold{background:var(--gold);color:var(--accent-strong);}
.m-btn-gold:hover{background:var(--gold-hover);color:var(--accent-strong);}
.m-btn-outline-light{border-color:rgba(245,246,239,0.45);color:#F5F6EF;background:transparent;}
.m-btn-outline-light:hover{border-color:#F5F6EF;color:#fff;}
.m-btn-insta{color:#fff;background:linear-gradient(45deg,#FFE322 0%,#CD3AAF 68%,#AD0066 100%);}
.m-btn-insta:hover{color:#fff;opacity:.92;}

/* ============ BARRA PROMO (_top_notification_bar.cfm, stili inline -> !important) ============ */
#im_top_notification_bar{background-color:var(--promo-bg) !important;color:var(--promo-text) !important;font-size:0.82rem !important;padding:7px 38px 7px 14px !important;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 12px;}
#im_top_notification_bar .nb-text{display:inline !important;margin:0 !important;}
#im_top_notification_bar .nb-short{font-weight:600;}
#im_top_notification_bar .nb-cta{background-color:var(--promo-text) !important;color:var(--promo-bg) !important;border-color:var(--promo-text) !important;border-radius:var(--r-btn) !important;padding:4px 13px !important;font-size:0.74rem !important;line-height:1.5 !important;}
#im_top_notification_bar .nb-close{color:var(--promo-text) !important;top:50% !important;transform:translateY(-50%);opacity:.65 !important;}
@media (max-width:767.98px){
  #im_top_notification_bar .nb-rest{display:none;}
}

/* ============ BARRA SERVIZI (verde scuro) ============ */
.m-util{background:var(--accent-strong);color:rgba(245,246,239,0.82);font-size:0.8rem;position:relative;z-index:1040;} /* sopra header sticky (1020) e avviso cookie (1030), sotto le finestre (1050) */
.m-util-in{max-width:1140px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 14px;}
.m-util-l,.m-util-r{display:flex;align-items:center;gap:6px;}
.m-util a,.m-util-btn{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:7px 8px;font-size:inherit;font-family:var(--font-b);cursor:pointer;line-height:1.2;border-radius:8px;}
.m-util a:hover,.m-util-btn:hover,.m-util .show>.m-util-btn{color:#fff;background:rgba(245,246,239,0.08);}
.m-util-l .fas,.m-util-l .fab{font-size:1rem;}
.m-util .m-util-wa{color:#C9D8CC;}
.m-util-btn.dropdown-toggle::after{margin-left:2px;opacity:.75;}
.m-flag{width:18px;height:18px;border-radius:50%;object-fit:cover;display:block;}
.m-lang-label{display:none;}
.m-avatar{width:20px;height:20px;border-radius:50%;background:var(--gold);color:var(--accent-strong);display:inline-flex;align-items:center;justify-content:center;font-size:0.62rem;}
.m-badge{background:var(--danger);color:#fff;font-size:0.66rem;font-weight:700;border-radius:10px;padding:1px 6px;line-height:1.4;}
.m-account-label{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* tendine della barra (account + lingua) */
.m-util .dropdown-menu{border-radius:var(--r-card);border:1px solid var(--hairline);box-shadow:var(--shadow-lg);padding:8px;font-size:0.9rem;margin-top:6px;}
.m-util .dropdown-item{display:block;width:100%;border-radius:10px;padding:9px 12px;color:var(--text);line-height:1.4;}
.m-util .dropdown-item:hover,.m-util .dropdown-item:focus{background:var(--accent-soft);color:var(--accent);}
.m-util .dropdown-item .fas{color:var(--accent);margin-right:4px;}
.m-account-menu{min-width:260px;}
.m-account-head{display:flex;align-items:center;gap:12px;padding:6px 8px 4px;}
.m-util .m-account-head a{padding:0;color:var(--text);display:block;}
.m-account-photo img{width:48px;height:48px;border-radius:50%;object-fit:cover;display:block;}
.m-account-name small{color:var(--text-soft);}
.m-util .m-logout,.m-util .m-logout .fas{color:var(--danger);}

/* lingua: pannello dal basso su telefono */
.m-lang-menu{list-style:none;}
.m-lang-menu .dropdown-header{font-family:var(--font-h);font-weight:600;font-size:1rem;color:var(--text);padding:6px 8px 12px;grid-column:1/-1;}
.m-lang-menu li.dropdown-item{padding:0;background:none;}
.m-util .m-lang-menu li.dropdown-item a{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;color:var(--text);border:1px solid var(--hairline);border-radius:var(--r);font-size:0.92rem;}
.m-util .m-lang-menu li.dropdown-item a:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-soft);}
.m-util .m-lang-menu li.dropdown-item.active a{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600;}
.m-lang-menu img{width:20px;height:20px;border-radius:50%;object-fit:cover;}
.m-lang-code{margin-left:auto;font-size:0.68rem;font-weight:600;text-transform:uppercase;color:var(--text-soft);}
.m-lang-menu.show{display:grid;grid-template-columns:1fr 1fr;gap:6px;}
@media (max-width:767.98px){
  .m-util .m-lang-menu{position:fixed;left:0;right:0;bottom:0;top:auto;margin:0;border-radius:var(--r-card) var(--r-card) 0 0;padding:18px 16px calc(22px + env(safe-area-inset-bottom,0px));box-shadow:0 0 0 100vmax var(--dim);z-index:1060;max-height:80vh;overflow-y:auto;}
}
@media (min-width:768px){
  .m-lang-label{display:inline;}
  .m-util .m-lang-menu{min-width:340px;}
}

/* ============ HEADER BIANCO (sticky) ============ */
.m-header{background:var(--surface);border-bottom:1px solid var(--hairline);box-shadow:var(--shadow);margin-bottom:1rem;}
.m-header-top{max-width:1140px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px 8px;}
.m-logo{display:block;flex:none;}
.m-logo img{height:42px;width:auto;display:block;}
.m-burger{width:44px;height:44px;flex:none;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--r);color:var(--text);font-size:1.15rem;cursor:pointer;transition:border-color .15s ease,color .15s ease;}
.m-burger:hover,.m-burger[aria-expanded="true"]{border-color:var(--accent);color:var(--accent);}

/* ricerca */
.m-search{max-width:1140px;margin:0 auto;padding:0 14px 12px;}
.m-search .input-group{flex-wrap:nowrap;height:44px;}
.m-search-type{margin-right:6px;}
.m-search-type > .btn{height:44px;display:inline-flex;align-items:center;gap:4px;max-width:128px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;background:var(--bg-alt);color:var(--text-soft);border:1px solid var(--hairline-strong);border-radius:var(--r) !important;font-size:0.78rem;font-weight:500;padding:0 10px 0 12px;}
.m-search-type > .btn:hover,.m-search-type.show > .btn{border-color:var(--accent);color:var(--accent);}
.m-search-type .dropdown-menu{border-radius:var(--r);border:1px solid var(--hairline);box-shadow:var(--shadow-lg);padding:6px;}
.m-search-type .dropdown-item{border-radius:8px;padding:9px 12px;text-transform:capitalize;}
.m-search-type .dropdown-item:hover{background:var(--accent-soft);color:var(--accent);}
.m-search .form-control{height:44px;border:1px solid var(--hairline-strong);border-right:0;border-radius:999px 0 0 999px !important;padding-left:16px;font-size:0.9rem;color:var(--text);background:var(--surface);box-shadow:none;}
.m-search .form-control:focus{border-color:var(--accent);box-shadow:none;}
.m-search .form-control::placeholder{color:var(--text-soft);opacity:.8;}
.m-search-btn{height:44px;min-width:50px;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--accent);color:#F5F6EF;border:1px solid var(--accent);border-radius:0 999px 999px 0 !important;padding:0 16px;font-weight:600;font-size:0.85rem;}
.m-search-btn:hover,.m-search-btn:focus{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff;}
.m-search-label{display:none;}
@media (min-width:768px){ .m-search-label{display:inline;} .m-search-type > .btn{max-width:none;} }

/* menu: sezioni apribili (dropdown Bootstrap in posizione statica) */
.m-nav{border-top:1px solid var(--hairline);background:var(--bg);}
.m-nav.show{max-height:calc(100vh - 130px);overflow-y:auto;}
.m-nav-list{list-style:none;margin:0 auto;padding:10px 12px 14px;max-width:1140px;}
.m-nav-group{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-card);margin-bottom:8px;}
.m-nav-toggle{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;font-family:var(--font-h);font-weight:600;font-size:1rem;color:var(--text);text-decoration:none;}
.m-nav-toggle:hover,.m-nav-toggle:focus{color:var(--accent);text-decoration:none;}
.m-nav-toggle.dropdown-toggle::after{content:"+";border:0;margin:0;font-family:var(--font-b);font-weight:500;font-size:1.15rem;line-height:1;vertical-align:0;color:var(--text-soft);}
.m-nav-group.show .m-nav-toggle{color:var(--accent);}
.m-nav-group.show .m-nav-toggle::after{content:"\2013";}
.m-nav .m-nav-menu{position:static;float:none;border:0;box-shadow:none;background:transparent;margin:0;padding:0 16px 12px;min-width:0;}
.m-nav .m-nav-menu.show{display:grid;grid-template-columns:1fr 1fr;gap:2px 14px;}
.m-nav .m-nav-menu .dropdown-item{padding:9px 10px;margin:0 -10px;border-radius:10px;color:var(--text);font-size:0.9rem;white-space:normal;}
.m-nav .m-nav-menu .dropdown-item:hover,.m-nav .m-nav-menu .dropdown-item:focus{background:var(--accent-soft);color:var(--accent);}
.m-nav .m-nav-menu .m-nav-app{grid-column:1/-1;color:var(--accent);font-weight:600;}

/* ============ FINESTRE (lingua consigliata, Download App) come pannello dal basso ============ */
.m-sheet .modal-content{border:0;overflow:hidden;}
.m-sheet .modal-body{padding:22px 18px;}
.m-sheet .alert-info{background:var(--surface);border:0;color:var(--text);}
.m-sheet .btn-dark{background:var(--accent);border-color:var(--accent);color:#F5F6EF;border-radius:var(--r-btn);padding:10px 20px;}
.m-sheet .btn-dark:hover{background:var(--accent-hover);border-color:var(--accent-hover);}
.m-sheet .btn-light{background:var(--surface);border:1px solid var(--hairline-strong);color:var(--text);border-radius:var(--r-btn);padding:10px 20px;}
.m-sheet .btn-light:hover{border-color:var(--accent);color:var(--accent);}
@media (max-width:575.98px){
  .m-sheet .modal-dialog,.m-sheet .modal-dialog-centered{position:fixed;left:0;right:0;bottom:0;margin:0;max-width:none;min-height:0;display:block;}
  .modal.fade.m-sheet .modal-dialog{transform:translateY(100%);transition:transform .25s ease-out;}
  .modal.show.m-sheet .modal-dialog{transform:none;}
  .m-sheet .modal-content{border-radius:var(--r-card) var(--r-card) 0 0;padding-bottom:env(safe-area-inset-bottom,0px);}
}

/* ============ FOOTER ============ */
.m-footer{background:var(--bg);border-top:1px solid var(--hairline);color:var(--text-soft);margin-top:2rem;padding:28px 0 16px;}
.m-footer-in{max-width:1140px;margin:0 auto;padding:0 16px;display:grid;grid-template-columns:1fr;gap:4px 40px;}
.m-footer-h{font-family:var(--font-b);font-size:0.76rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--text);font-weight:600;margin:0 0 12px;}
.m-footer ul{list-style:none;margin:0 0 22px;padding:0;}
.m-footer-contacts{display:flex;flex-direction:column;gap:11px;}
.m-footer-contacts a{display:inline-flex;align-items:center;gap:9px;color:var(--text-soft);font-size:0.9rem;}
.m-footer-contacts .fas,.m-footer-contacts .fab{color:var(--accent);}
.m-footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;}
.m-footer a{color:var(--text-soft);text-decoration:none;}
.m-footer a:hover{color:var(--accent);}
.m-footer-links a{font-size:0.9rem;}
.m-footer-btns{display:flex;flex-wrap:wrap;gap:10px;margin:4px 0 20px;}
.m-footer .m-btn-green,.m-footer .m-btn-green:hover,.m-footer .m-btn-insta,.m-footer .m-btn-insta:hover{color:#fff;}
.m-footer-bottom{grid-column:1/-1;border-top:1px solid var(--hairline);padding-top:14px;font-size:0.8rem;line-height:1.9;}
.m-footer-bottom p{margin:0;}
.m-footer-bottom a{text-decoration:underline;text-underline-offset:2px;}
@media (min-width:768px){
  .m-footer-in{grid-template-columns:1fr 1fr auto;align-items:start;}
}

/* ============ AVVISO COOKIE (solo visitatori IT) ============ */
/* v2: sotto i 992px l'avviso sta SOPRA la bolla della chat Chatbase ("HELP", 52px a 17px dal
   bordo in basso a destra, z-index massimo non modificabile) invece di finirci sotto */
.m-cookie{position:fixed;left:0;right:0;bottom:0;z-index:1030;padding:0 10px calc(80px + env(safe-area-inset-bottom,0px));pointer-events:none;}
@media (min-width:992px){ .m-cookie{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px));} }
.m-cookie-in{pointer-events:auto;max-width:640px;margin:0 auto;background:var(--accent-strong);color:#E9EDE3;border-radius:var(--r-card);padding:14px 16px 12px;font-size:0.84rem;line-height:1.5;box-shadow:var(--shadow-lg);text-align:left;}
.m-cookie-in a:not(.m-btn){color:#E8C877;text-decoration:underline;}
.m-cookie-btns{display:flex;gap:8px;margin-top:10px;}
.m-cookie-btns .m-btn{flex:1;padding:9px 10px;font-size:0.82rem;}

/* ============ TORNA SU ============ */
/* display gestito da jQuery fadeIn/fadeOut (inline): niente flex, centratura con line-height */
.m-totop{width:42px;height:42px;border-radius:50%;background:var(--surface);border:1px solid var(--hairline-strong);color:var(--accent);box-shadow:var(--shadow-lg);text-align:center;line-height:40px;font-size:1.2rem;padding:0;cursor:pointer;z-index:1020;right:22px !important;bottom:84px !important;} /* v2: sopra la bolla Chatbase, non sotto */
.m-totop:hover{border-color:var(--accent);}

@media (prefers-reduced-motion:reduce){ *{transition:none !important;} }

/* =====================================================================
   GRUPPO B (nov 2026) — pagine elenco per categoria:
   companies.cfm, products.cfm, catalogs.cfm, privatelabel.cfm, dropshipping.cfm
   + _nav_change_section.cfm (schede vista), _nav_breadcrumb_categorie.cfm (h1 +
   elenco categorie), _box_categorie.cfm (pillole). Le 5 pagine .cfm NON sono
   modificate: tutto e' agganciato a id/classi gia' esistenti (#items_container,
   .company_box, .product_box, #actionpanel, #dropdownnavmenucategory, #collapseFilter).
   ===================================================================== */

/* ---------- schede vista (Companies / Products / Catalogs / Private Label / Dropshipping) ---------- */
.m-views{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 0 10px;margin:0 0 4px;}
.m-views::-webkit-scrollbar{display:none;}
.m-view{flex:none;font-size:0.84rem;font-weight:600;color:var(--text-soft);text-decoration:none;padding:9px 15px;border-radius:var(--r-btn);border:1px solid var(--hairline-strong);background:var(--surface);white-space:nowrap;line-height:1.2;}
.m-view:hover{color:var(--accent);border-color:var(--accent);text-decoration:none;}
.m-view.is-active,.m-view.is-active:hover{background:var(--accent-strong);border-color:var(--accent-strong);color:#F5F6EF;}

/* ---------- titolo categoria (h1) + elenco categorie ---------- */
#dropdownnavmenucategory{display:block !important;position:relative;}
.m-cat-h1{margin:6px 0 0;font-size:inherit;line-height:1;}
.m-cat-btn.btn{display:inline;padding:0;border:0;text-align:left;white-space:normal;font-family:var(--font-h);font-weight:600;font-size:1.45rem;line-height:1.25;color:var(--text);text-decoration:none;letter-spacing:-0.005em;}
.m-cat-btn.btn:hover,.m-cat-btn.btn:focus{color:var(--accent);text-decoration:none;box-shadow:none;}
.m-cat-btn span{color:var(--hairline-strong) !important;}
.m-cat-caret{font-size:1.15rem;color:var(--accent);vertical-align:2px;margin-left:2px;}
.m-cat-desc{display:block;font-size:1rem !important;line-height:1.5;color:var(--text) !important;margin-top:10px;}
.m-cat-desc br:first-child,.m-cat-text .m-more-content > br:first-child{display:none;}
.m-cat-text{font-size:0.9rem !important;line-height:1.6;color:var(--text-soft) !important;margin-top:8px !important;font-weight:400;}
.m-cat-text a{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(31,90,54,.35);}
.m-more-cb{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
.m-more-btn{display:none;}
@media (max-width:767.98px){
  .m-more{position:relative;}
  .m-more .m-more-content{max-height:7.4em;overflow:hidden;position:relative;}
  .m-more .m-more-content::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3em;background:linear-gradient(rgba(245,246,239,0),var(--bg));}
  .m-more-cb:checked ~ .m-more-content{max-height:none;}
  .m-more-cb:checked ~ .m-more-content::after{display:none;}
  .m-more-btn{display:inline-flex;align-items:center;gap:6px;margin:4px 0 0;font-size:0.84rem;font-weight:600;color:var(--accent);cursor:pointer;}
  .m-more-btn::before{content:"+";font-size:1rem;line-height:1;}
  .m-more-cb:checked ~ .m-more-btn::before{content:"\2013";}
  .m-more-close,.m-more-cb:checked ~ .m-more-btn .m-more-open{display:none;}
  .m-more-cb:checked ~ .m-more-btn .m-more-close{display:inline;}
  .m-more-cb:focus-visible ~ .m-more-btn{outline:2px solid var(--gold);outline-offset:2px;}
}
/* elenco categorie: tendina larga; su telefono pannello dal basso */
#dropdownnavmenucategory .dropdown-menu{border-radius:var(--r-card);border:1px solid var(--hairline);box-shadow:var(--shadow-lg);padding:8px;max-height:70vh !important;min-width:300px;}
#dropdownnavmenucategory .dropdown-item{border-radius:10px;font-size:0.9rem;line-height:1.35;color:var(--text);white-space:normal;padding-top:8px !important;padding-bottom:8px !important;}
#dropdownnavmenucategory .dropdown-item strong{font-family:var(--font-h);font-weight:600;}
#dropdownnavmenucategory .dropdown-item[style*="3rem"],#dropdownnavmenucategory .dropdown-item[style*="4rem"]{color:var(--text-soft);font-size:0.85rem;}
#dropdownnavmenucategory .dropdown-item:hover,#dropdownnavmenucategory .dropdown-item:focus{background:var(--accent-soft);color:var(--accent);}
#dropdownnavmenucategory .dropdown-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600;}
#dropdownnavmenucategory .dropdown-divider{border-color:var(--hairline);margin:6px 0;}
@media (min-width:768px){
  #dropdownnavmenucategory .dropdown-menu{position:fixed !important;top:10vh !important;left:50% !important;right:auto !important;transform:translateX(-50%);width:min(560px,92vw);max-height:80vh !important;box-shadow:0 0 0 100vmax var(--dim);z-index:1060 !important;padding:14px 10px;}
}
@media (max-width:767.98px){
  #dropdownnavmenucategory .dropdown-menu{position:fixed !important;left:0 !important;right:0 !important;bottom:0 !important;top:auto !important;margin:0;min-width:0;max-height:78vh !important;border-radius:var(--r-card) var(--r-card) 0 0;padding:22px 10px calc(16px + env(safe-area-inset-bottom,0px));box-shadow:0 0 0 100vmax var(--dim);z-index:1060 !important;}
  #dropdownnavmenucategory .dropdown-menu::before{content:"";position:sticky;top:-14px;display:block;width:44px;height:4px;border-radius:2px;background:var(--hairline-strong);margin:-12px auto 10px;}
}

/* ---------- sottocategorie come pillole (solo pagine elenco, non la home) ---------- */
.m-views ~ .m-subcats{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 6px;padding:0;}
.m-views ~ .m-subcats > div{flex:none;width:auto;max-width:100%;padding:0;}
.m-views ~ .m-subcats > div > a{display:block;text-decoration:none;}
.m-views ~ .m-subcats .border-top{border:1px solid var(--hairline) !important;background:var(--surface);border-radius:var(--r-btn);padding:7px 14px !important;transition:border-color .15s ease,background .15s ease;}
.m-views ~ .m-subcats a:hover .border-top{border-color:var(--accent) !important;background:var(--accent-soft);}
.m-views ~ .m-subcats .ml-5{margin-left:0 !important;}
.m-views ~ .m-subcats h3{font-family:var(--font-b);font-weight:500;font-size:0.86rem !important;line-height:1.25;color:var(--text);margin:0 !important;}
.m-views ~ .m-subcats p{display:none !important;}
.m-views ~ .m-subcats > div:has(.fa-angle-double-left) .border-top{background:var(--accent-soft);border-color:var(--accent-soft) !important;}
.m-views ~ .m-subcats > div:has(.fa-angle-double-left) h3{color:var(--accent);font-weight:600;}
.m-views ~ .m-subcats .fa-angle-double-left{margin-right:2px;}
.m-views ~ .m-subcats.gradient-box .gradient-bottom{height:44px;padding:0;background:linear-gradient(rgba(245,246,239,0),var(--bg) 70%);text-decoration:none;}
.m-views ~ .m-subcats.gradient-box .gradient-bottom .text{background:var(--bg);color:var(--accent);font-size:0.82rem;font-weight:600;padding:4px 0 2px 8px;}
@media (max-width:576px){
  .m-views ~ .m-subcats.gradient-box-closed{height:90px;overflow:hidden;}
  .m-views ~ .m-subcats.gradient-box-opened{height:auto;overflow:visible;padding-bottom:4px;}
}
.m-views ~ hr,.m-views ~ .m-subcats + hr{border-color:var(--hairline);}

/* ---------- filtri ---------- */
#collapseFilter{border-radius:var(--r-card);border:1px solid var(--hairline);box-shadow:var(--shadow);padding:14px 16px !important;margin-top:8px;}
#collapseFilter .custom-control-label{font-size:0.95rem;cursor:pointer;}
#collapseFilter .custom-control-input:checked ~ .custom-control-label::before{background-color:var(--accent);border-color:var(--accent);}
[data-target="#collapseFilter"]{border-radius:var(--r-btn) !important;border:1px solid var(--hairline-strong) !important;background:var(--surface) !important;color:var(--text) !important;font-weight:600;font-size:0.84rem;padding:8px 15px;}
[data-target="#collapseFilter"]:hover{border-color:var(--accent) !important;color:var(--accent) !important;}
.btn-group-toggle .btn-outline-secondary{border-radius:var(--r-btn) !important;border:1px solid var(--hairline-strong);color:var(--text-soft);background:var(--surface);font-weight:600;font-size:0.82rem;margin:0 4px 6px 0 !important;flex:0 1 auto !important;padding:7px 14px;}
.btn-group-toggle .btn-outline-secondary.active,.btn-group-toggle .btn-outline-secondary:not(:disabled):not(.disabled).active{background:var(--accent-strong);border-color:var(--accent-strong);color:#F5F6EF;}
.btn-group-toggle{gap:0;}
.slider-selection{background:var(--accent-soft) !important;}
.slider-handle{background:#fff !important;border:2px solid var(--accent);}
label[for="pricerange_slider2"]{font-size:0.84rem;color:var(--text-soft);}

/* ---------- scheda azienda / catalogo (.company_box) ---------- */
.company_box.card{border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow) !important;overflow:hidden;margin:16px 0 !important;background:var(--surface);}
.company_box .card-header{background:var(--surface) !important;border-bottom:0;padding:14px 14px 10px !important;}
.company_box .card-header h3{font-family:var(--font-h);font-weight:700;font-size:1.15rem !important;padding:0 !important;}
.company_box .card-header h3 a,.company_box .card-header h3 b{color:var(--text);font-weight:700;}
.company_box .card-header small{display:block;color:var(--text-soft);font-size:0.76rem;margin-top:2px;}
.company_box .card-header small a{color:var(--text-soft);}
.company_box .badge{font-family:var(--font-b);font-size:0.66rem !important;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 9px !important;border-radius:var(--r-btn);vertical-align:3px;}
.company_box .badge-warning{background:#F3EAD3;color:#6B5418;}
.company_box .badge-danger{background:#FBE3E0;color:var(--danger);}
.company_box .badge span.d-none{display:inline !important;}
.company_box .text-warning{color:var(--gold) !important;}
/* selezione per "Contact selected" */
.selectforcontact_btn{width:36px;height:36px;border-radius:50% !important;border:1.5px solid var(--hairline-strong) !important;background:var(--surface) !important;color:transparent !important;padding:0 !important;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow) !important;}
.selectforcontact_btn .fas{font-size:0.95rem !important;color:var(--hairline-strong);}
.selectforcontact_btn.btn-primary{background:var(--accent) !important;border-color:var(--accent) !important;}
.selectforcontact_btn.btn-primary .fas{color:#fff;}
/* foto showroom con etichetta sovrapposta */
.company_box > .row.d-block{margin:0;}
.company_box > .row.d-block > .col-sm-12{position:relative;padding:0 14px;}
/* v4: spazio riservato alla copertina (tutte le thumbnail showroom sono 800x561): l'etichetta
   "Showroom" resta sopra la foto anche mentre si carica (lazyload) o se manca, e la pagina non "salta" */
.company_box > .row.d-block img{border-radius:var(--r);display:block;width:100%;height:auto;aspect-ratio:800/561;object-fit:cover;background:var(--bg-alt);}
/* v5: niente etichetta "Showroom" sulla foto (doppione del bottone Showroom tra le azioni,
   segnalato da Maurizio): la foto resta comunque cliccabile e apre lo showroom */
.company_box > .row.d-block .btn-info{display:none !important;}
.company_box > .row.d-block img{cursor:pointer;}
.company_box .card-body{padding:12px 14px 14px;}
.company_box .card-text.text-justify{text-align:left !important;font-size:0.9rem;line-height:1.55;}
.company_box .card-text.text-justify img.float-left{max-width:96px;height:auto;margin:3px 12px 6px 0 !important;border-radius:4px;}
/* caratteristiche come etichette */
.company_box .card-text small > span.text-nowrap{display:inline-block;margin:0 6px 6px 0 !important;font-size:0.74rem;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:4px 10px;border-radius:var(--r-btn);}
.company_box .card-text small > span.text-nowrap .fa-grip-horizontal{display:none;}
.company_box hr{border-color:var(--hairline);margin:10px 0;}
.company_box .card-text a .fas,.company_box .card-text a .fab{color:var(--accent);}
.company_box .card-text a{color:var(--text);}
/* bottoni azione: Contact principale verde, gli altri oro (come .btn-company-action sul desktop) */
.company_box p.card-text.text-right{display:flex;flex-wrap:wrap;gap:8px;text-align:left !important;}
.company_box p.card-text.text-right .btn,.company_box p.text-center .btn{margin:0 !important;flex:1 1 calc(50% - 4px);display:inline-flex !important;align-items:center;justify-content:center;gap:6px;border-radius:var(--r-btn);font-weight:600;font-size:0.86rem;padding:10px 12px;white-space:nowrap;}
.company_box p.card-text.text-right .btn-info{order:-1;flex-basis:100%;background:var(--accent);border-color:var(--accent);color:#F5F6EF;}
.company_box p.card-text.text-right .btn-info:hover{background:var(--accent-hover);border-color:var(--accent-hover);}
.company_box p.card-text.text-right .btn-light{background:#F3EAD3;border:1px solid rgba(166,131,47,.35);color:#5E4A16;}
.company_box p.card-text.text-right .btn-light:hover{background:#EBDDB8;}
.company_box p.text-center .btn-dark{background:var(--accent);border-color:var(--accent);color:#F5F6EF;width:100%;}
.company_box .card-header .btn-light{border-radius:var(--r-btn);background:#F3EAD3;border:1px solid rgba(166,131,47,.35);color:#5E4A16;padding:5px 10px;}
.company_box .carousel{border-radius:var(--r) !important;overflow:hidden;margin-top:10px;}

/* ---------- prodotti (products / privatelabel / dropshipping) ---------- */
#items_container .card.shadow-sm{border:1px solid var(--hairline);border-radius:var(--r-card);box-shadow:var(--shadow) !important;overflow:hidden;background:var(--surface);}
#items_container .card-img-top{border-radius:0;}
#items_container .card.shadow-sm .card-title{font-family:var(--font-b);font-size:0.72rem !important;letter-spacing:.09em;text-transform:uppercase;font-weight:700;margin-bottom:4px;}
#items_container .card.shadow-sm .card-title a,#items_container .card.shadow-sm .card-title b{color:var(--gold);font-weight:700;}
#items_container .read-more__content b{display:block;font-family:var(--font-h);font-weight:600;font-size:0.98rem;color:var(--text);line-height:1.3;margin-bottom:4px;}
#items_container .read-more__content .card-text{font-size:0.86rem;line-height:1.5;}
#items_container .read-more__btn{font-size:0.8rem;font-weight:600;color:var(--accent);}
#items_container .card.shadow-sm .btn-light{border-radius:var(--r-btn);border:1px solid var(--hairline-strong);background:var(--surface);font-weight:600;font-size:0.82rem;margin-top:8px !important;}
#items_container .card.shadow-sm .btn-light:hover{border-color:var(--accent);color:var(--accent);}
#items_container .card.shadow-sm .selectforcontact_btn{top:8px !important;right:8px !important;}
/* due colonne su telefono (scelta di Maurizio): Bricklayer (products.cfm) legge la
   larghezza del "sizer"; privatelabel/dropshipping non attivano Bricklayer sotto i 640px,
   quindi li mettiamo in griglia CSS */
@media (max-width:639.98px){
  /* flex:none: il "righello" di Bricklayer e' un elemento flex e verrebbe ristretto, falsando il conteggio colonne */
  #items_container .bricklayer-column-sizer{width:50%;flex:none;}
  #items_container .bricklayer-column{padding-left:4px;padding-right:4px;min-width:0;}
  /* griglia solo per privatelabel/dropshipping (niente .product_box, Bricklayer spento sotto i 640px) */
  #items_container.bricklayer:not(:has(.product_box)):not(:has(> .bricklayer-column)){display:grid !important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;align-items:start;}
  #items_container.bricklayer > div,#items_container .bricklayer-column > div{padding:4px !important;}
  #items_container .card.shadow-sm .card-body{padding:9px 10px 12px !important;}
  #items_container .card.shadow-sm .card-title{font-size:0.64rem !important;letter-spacing:.07em;}
  #items_container .read-more__content b{font-size:0.86rem;}
  #items_container .read-more__content .card-text{font-size:0.78rem;}
  #items_container .read-more__btn{font-size:0.74rem;}
  #items_container .card.shadow-sm .btn-light{width:100%;padding:8px 6px;font-size:0.72rem;line-height:1.2;white-space:normal;margin-top:4px !important;}
  #items_container .card.shadow-sm .text-center{text-align:center;}
  #items_container .card.shadow-sm > .card-text,#items_container .card.shadow-sm .card-body > .card-text{font-size:0.78rem;}
  #items_container .card.shadow-sm .selectforcontact_btn{width:30px;height:30px;top:6px !important;right:6px !important;}
  #items_container img[alt="New"],#items_container img[alt="Sale"]{width:64px;height:auto;}
}

/* ---------- barra azioni in basso (Contact all / Contact selected / Reset) ---------- */
#actionpanel{background:rgba(255,255,255,.97) !important;background-image:none !important;border-top:1px solid var(--hairline) !important;border-radius:0 !important;box-shadow:0 -6px 20px rgba(21,27,18,.08) !important;padding:8px 12px calc(9px + env(safe-area-inset-bottom,0px)) !important;}
#actionpanel .nav{flex-wrap:nowrap;align-items:center;gap:8px;max-width:640px !important;}
#actionpanel .nav-link{padding:4px 2px;color:var(--text-soft);font-size:0.68rem;font-weight:600;line-height:1.15;flex:0 0 74px;}
#actionpanel .nav-link br{display:none;}
#actionpanel .nav-link small{display:block;font-size:inherit;font-weight:inherit;margin-top:3px;}
#actionpanel .nav-link .fas{font-size:1.1rem !important;}
#actionpanel .nav-link.disabled{opacity:.45;}
#actionpanel .nav-link:not(.disabled){color:var(--accent);}
#actionpanel #actionpanel_btn_askthemall{flex:1 1 auto;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--accent);color:#F5F6EF;border-radius:var(--r-btn);padding:11px 14px;font-size:0.9rem;}
#actionpanel #actionpanel_btn_askthemall small{margin:0;font-size:0.9rem;}
#actionpanel #actionpanel_btn_askthemall .fas{font-size:1rem !important;}
#actionpanel #actionpanel_btn_askthemall:hover{background:var(--accent-hover);}
/* il footer non resta piu' coperto dalla barra */
body:has(#actionpanel){padding-bottom:72px;}
