*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif}.font-serif{font-family:Georgia,'Times New Roman',serif}.font-rounded{font-family:'Arial Rounded MT Bold',Inter,system-ui,sans-serif}.hero{min-height:360px;background:linear-gradient(135deg,var(--primary),#374151);background-size:cover;background-position:center;display:flex;align-items:end;color:#fff}.hero-compact .hero{min-height:220px}.hero-inner{width:min(1180px,92vw);margin:0 auto;padding:54px 0}.logo{max-width:118px;max-height:90px;object-fit:contain;border-radius:18px;background:rgba(255,255,255,.9);padding:8px}.logo.small{max-width:64px}.eyebrow,.table-pill{display:inline-flex;background:rgba(255,255,255,.16);backdrop-filter:blur(10px);padding:8px 12px;border-radius:999px;margin:10px 0}.hero h1{font-size:clamp(34px,7vw,72px);line-height:.95;margin:10px 0}.hero p{font-size:clamp(16px,2vw,22px);max-width:720px}.wrap{width:min(1180px,92vw);margin:0 auto;padding:24px 0 120px}.topbar{display:flex;gap:14px;align-items:center;padding:18px 0}.topbar h1{margin:0}.searchbar{position:sticky;top:0;z-index:20;display:flex;gap:8px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);padding:12px 0}.searchbar input{flex:1;border:0;border-radius:999px;padding:16px 20px;box-shadow:0 10px 30px rgba(0,0,0,.08);font-size:16px}.searchbar button{border:0;border-radius:999px;width:48px;background:var(--card);font-size:22px}.cat-nav{position:sticky;top:74px;z-index:19;display:flex;gap:10px;overflow:auto;padding:10px 0 18px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px)}.cat-nav a{white-space:nowrap;text-decoration:none;color:var(--text);background:var(--card);border:1px solid rgba(0,0,0,.06);padding:11px 15px;border-radius:999px;font-weight:800}.cat-nav a:hover{background:var(--primary);color:#fff}.cats-tiles .cat-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));position:static}.cats-tiles .cat-nav a{border-radius:var(--radius);padding:18px}.category{scroll-margin-top:150px;margin:22px 0 44px}.cat-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:16px}.cat-title h2{font-size:clamp(26px,4vw,44px);margin:0}.cat-title p{color:var(--muted);margin:0;max-width:520px}.products{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:18px}.product{display:grid;grid-template-columns:1fr 150px;gap:16px;background:var(--card);border-radius:var(--radius);padding:16px;border:1px solid rgba(0,0,0,.06);box-shadow:0 16px 45px rgba(17,24,39,.07);overflow:hidden}.card-image-top .product{grid-template-columns:1fr}.card-image-top .product img{order:-1;width:100%;height:220px}.card-no-image .product{grid-template-columns:1fr}.layout-compact .products{grid-template-columns:1fr}.layout-compact .product{box-shadow:none}.layout-luxury .product{box-shadow:none;border-color:color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--card) 94%,var(--accent))}.density-compact .product{padding:12px}.product img{width:150px;height:150px;border-radius:calc(var(--radius) - 6px);object-fit:cover}.badge{display:inline-flex;background:var(--accent);color:#fff;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.product h3{font-size:22px;margin:10px 0 6px}.product p{color:var(--muted);margin:0 0 10px}.chips,.meta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.chips span,.meta span{font-size:12px;color:var(--muted);background:color-mix(in srgb,var(--bg) 70%,#fff);padding:6px 8px;border-radius:999px}.price{display:flex;gap:8px;align-items:center;margin:10px 0 12px}.price strong{font-size:21px}.price del{color:var(--muted)}button.add,#sendOrder{background:var(--primary);color:#fff;border:0;border-radius:14px;padding:12px 14px;font-weight:900;cursor:pointer}.cart{position:fixed;right:18px;bottom:18px;z-index:50}.cart>button{background:var(--accent);color:#fff;border:0;border-radius:999px;padding:15px 18px;font-weight:950;box-shadow:0 18px 45px rgba(0,0,0,.22)}.cart-panel{display:none;position:absolute;right:0;bottom:60px;width:min(390px,92vw);max-height:74vh;overflow:auto;background:var(--card);border-radius:24px;padding:18px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.cart.open .cart-panel{display:block}.cart-item{border-bottom:1px solid rgba(0,0,0,.08);padding:10px 0}.cart-item h4{margin:0}.cart-item small{display:block;color:var(--muted)}.cart-panel label{display:flex;flex-direction:column;gap:5px;margin:8px 0;font-size:13px;font-weight:800}.cart-panel input,.cart-panel textarea{border:1px solid rgba(0,0,0,.12);border-radius:12px;padding:10px;font:inherit}.cart-panel textarea{min-height:70px}.modal[hidden]{display:none!important}.modal{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:80;display:grid;place-items:center;padding:20px}.modal-box{width:min(560px,96vw);max-height:88vh;overflow:auto;background:var(--card);border-radius:26px;padding:22px;position:relative}.modal-close{position:absolute;top:12px;right:12px;border:0;background:#f3f4f6;border-radius:999px;width:38px;height:38px;font-size:24px}.option-choice{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid rgba(0,0,0,.1);border-radius:14px;margin:8px 0}.qty{display:flex;align-items:center;gap:10px;margin:14px 0}.qty button{width:34px;height:34px;border-radius:999px;border:0;background:var(--primary);color:#fff}footer{text-align:center;color:var(--muted);padding:28px}@media(max-width:980px){.products{grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))}.product{grid-template-columns:1fr 120px}.product img{width:120px;height:120px}}@media(max-width:680px){.wrap{width:94vw}.products{grid-template-columns:1fr}.product{grid-template-columns:1fr 112px}.card-image-top .product img{height:190px}.hero-inner{padding:36px 0}.cat-title{display:block}.cart{left:10px;right:10px}.cart>button{width:100%}.cart-panel{left:0;right:0;width:100%}}
.detail-only{background:transparent!important;color:var(--primary)!important;border:1px solid color-mix(in srgb,var(--primary) 35%,transparent)!important}.mode-catalog .cart{display:none!important}
/* v2.6 refinements */
button,.add,.modal-actions button,.qty button{transition:transform .18s ease,box-shadow .18s ease,background .18s ease,opacity .18s ease}button:hover,.add:hover,.modal-actions button:hover,.qty button:hover{transform:translateY(-1px)}button:active,.add:active,.modal-actions button:active,.qty button:active{transform:translateY(0);opacity:.9}.add{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;box-shadow:0 12px 24px color-mix(in srgb,var(--primary) 18%,transparent)}.detail-only{background:color-mix(in srgb,var(--primary) 6%,transparent)!important}.modal{background:rgba(17,24,39,.68);backdrop-filter:blur(8px)}.modal-box{padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 100px rgba(0,0,0,.35)}#modalContent{padding:24px}.modal-close{z-index:2;box-shadow:0 8px 22px rgba(0,0,0,.12);font-weight:900;color:var(--text)}.modal-product-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-right:42px;margin-bottom:10px}.modal-product-head h2{margin:4px 0 0;font-size:clamp(24px,4vw,34px);line-height:1.05}.modal-kicker{display:inline-flex;align-items:center;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);padding:6px 10px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.modal-base-price{white-space:nowrap;background:var(--primary);color:#fff;border-radius:999px;padding:9px 13px}.modal-description{color:var(--muted);margin:0 0 18px;line-height:1.5}fieldset{border:1px solid rgba(0,0,0,.08);background:color-mix(in srgb,var(--bg) 54%,#fff);border-radius:20px;margin:14px 0;padding:14px}fieldset legend{padding:0 6px}fieldset legend span{display:inline-flex;align-items:center;gap:8px}fieldset legend em{font-style:normal;font-size:11px;text-transform:uppercase;letter-spacing:.04em;background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--muted);border-radius:999px;padding:4px 7px}fieldset>p{color:var(--muted);margin:4px 0 12px;font-size:13px}.option-choice{background:var(--card);align-items:center;cursor:pointer}.option-choice:hover{border-color:color-mix(in srgb,var(--accent) 55%,transparent);box-shadow:0 8px 22px rgba(17,24,39,.07)}.option-choice input{accent-color:var(--accent);width:18px;height:18px}.option-choice b{color:var(--accent)}.qty{justify-content:center;background:color-mix(in srgb,var(--bg) 62%,#fff);border-radius:999px;padding:8px;width:max-content}.qty button{width:42px;height:42px;font-size:22px}.qty b{min-width:34px;text-align:center}.modal-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center;position:sticky;bottom:0;background:linear-gradient(180deg,transparent,var(--card) 22%);padding-top:18px;padding-bottom:22px;margin-top:12px}.btn-primary,.btn-secondary{border:0;border-radius:16px;padding:13px 18px;font-weight:950;cursor:pointer}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 22%,transparent)}.btn-secondary{background:color-mix(in srgb,var(--muted) 12%,transparent);color:var(--text)}#modalErr{display:block;color:#b91c1c;font-weight:800;min-height:20px;margin-top:8px}.empty-options{background:color-mix(in srgb,var(--bg) 70%,#fff);border:1px dashed rgba(0,0,0,.15);border-radius:16px;padding:14px;color:var(--muted);margin:12px 0}.cart-item button{border:0;border-radius:999px;background:#fee2e2;color:#991b1b;padding:7px 10px;font-weight:800;margin-top:7px}.cart-panel #sendOrder{width:100%;margin-top:10px;min-height:46px;border-radius:16px;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 18%,transparent)}@media(max-width:680px){#modalContent{padding:18px 18px 24px}.modal-actions{flex-direction:column;padding-bottom:28px}.modal-actions button{width:100%}.modal-base-price{font-size:14px}.modal-product-head{display:block}.modal-product-head .modal-base-price{display:inline-flex;margin-top:10px}.qty{width:100%;justify-content:space-between}}

/* v2.8 product availability */
.product.is-soldout{opacity:.76;filter:saturate(.55);position:relative}.product.is-soldout img{filter:grayscale(.4)}.product-badges{display:flex;gap:6px;flex-wrap:wrap}.soldout-badge{background:#111827!important;color:#fff!important}.add.unavailable{background:#9ca3af!important;color:#fff!important;cursor:not-allowed!important;box-shadow:none!important;transform:none!important}.product.is-soldout .price strong{color:#6b7280}.product.is-soldout h3::after{content:' non disponibile';font-size:12px;color:#6b7280;font-weight:800;margin-left:6px;text-transform:uppercase;letter-spacing:.03em}
.modal-soldout-note{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:#fee2e2;color:#991b1b;font-weight:800;font-size:13px;margin-right:auto}


/* v3.1 cart close and clearer product actions */
.cart-panel{position:absolute;}
.cart-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:999px;background:#f3f4f6;color:var(--text);font-size:24px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.10)}
.cart-panel h3{padding-right:42px;}
.quick-add-action::before{content:'+';font-weight:950;}
.customize-action::before{content:'⚙';font-size:14px;}
@media(max-width:680px){
  .cart.open::before{content:'';position:fixed;inset:0;background:rgba(17,24,39,.42);backdrop-filter:blur(3px);z-index:-1;}
  .cart.open{z-index:90;}
  .cart-panel{max-height:78vh;}
  .cart-close{top:10px;right:10px;}
}

.modal-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.modal-info-grid p{background:rgba(0,0,0,.04);border-radius:14px;padding:10px;margin:0}.modal-info-grid b{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}@media(max-width:640px){.modal-info-grid{grid-template-columns:1fr}}

/* v3.6 allergen legend + free translation */
.translate-bar{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid rgba(0,0,0,.07);border-radius:999px;padding:10px 12px;margin:8px 0 14px;box-shadow:0 12px 30px rgba(17,24,39,.06);position:relative;z-index:21}.translate-bar span{font-weight:900}.translate-bar select{border:1px solid rgba(0,0,0,.12);border-radius:999px;padding:10px 12px;background:#fff;font-weight:800}.translate-bar button{border:0;border-radius:999px;background:var(--primary);color:#fff;padding:11px 15px;font-weight:950}.translate-bar small{color:var(--muted);font-weight:800}.allergen-legend{margin:48px 0 20px;padding:24px;background:color-mix(in srgb,var(--card) 88%,var(--bg));border:1px solid rgba(0,0,0,.07);border-radius:var(--radius);box-shadow:0 16px 45px rgba(17,24,39,.06)}.allergen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.allergen-grid article{background:var(--card);border:1px solid rgba(0,0,0,.06);border-radius:18px;padding:14px}.allergen-grid h3{margin:0 0 6px;font-size:17px}.allergen-grid p{margin:0;color:var(--muted);font-size:14px;line-height:1.45}@media(max-width:680px){.translate-bar{border-radius:20px;align-items:stretch;flex-direction:column}.translate-bar select,.translate-bar button{width:100%}.allergen-legend{padding:16px}.allergen-grid{grid-template-columns:1fr}}

/* v3.7 language selector with flags */
.translate-bar{display:none!important}
.language-switcher{display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--card);border:1px solid rgba(0,0,0,.07);border-radius:24px;padding:12px 14px;margin:8px 0 14px;box-shadow:0 12px 30px rgba(17,24,39,.06);position:relative;z-index:21}
.language-title{font-weight:950;white-space:nowrap;color:var(--text)}
.language-flags{display:flex;align-items:center;gap:8px;overflow:auto;padding:2px;scrollbar-width:none}.language-flags::-webkit-scrollbar{display:none}
.lang-btn{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(0,0,0,.08);background:color-mix(in srgb,var(--bg) 56%,#fff);color:var(--text);border-radius:999px;padding:8px 11px;font-weight:950;cursor:pointer;box-shadow:none;white-space:nowrap}
.lang-btn span{font-size:20px;line-height:1}.lang-btn b{font-size:12px;letter-spacing:.04em}.lang-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 20%,transparent)}
#mdTranslateMsg{color:var(--muted);font-weight:800;min-width:92px;text-align:right;font-size:12px}
@media(max-width:680px){.language-switcher{align-items:flex-start;flex-direction:column;border-radius:20px}.language-title{font-size:14px}.language-flags{width:100%;padding-bottom:2px}.lang-btn{padding:9px 12px}#mdTranslateMsg{text-align:left;min-width:0}}


/* v3.8 - Menu categorie sticky migliorato */
.cat-nav{position:sticky;top:0;z-index:35;margin:0 0 18px;padding:12px 0;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.06);scrollbar-width:none}
.searchbar + .cat-nav{top:74px}
.cat-nav::-webkit-scrollbar{display:none}
.cat-nav a{transition:.18s ease;box-shadow:0 8px 20px rgba(17,24,39,.06)}
.cat-nav a.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 12px 26px color-mix(in srgb,var(--primary) 24%,transparent)}
.req{color:#dc2626;font-weight:950}
.cart-panel input.invalid{border-color:#dc2626;background:#fff7f7;box-shadow:0 0 0 3px rgba(220,38,38,.10)}
#orderMsg.error{color:#b91c1c;font-weight:800}
#orderMsg.success{color:#047857;font-weight:800}
@media(max-width:680px){.searchbar{top:0}.searchbar + .cat-nav{top:70px}.cat-nav{gap:8px;padding:10px 0}.cat-nav a{padding:10px 13px;font-size:14px}.category{scroll-margin-top:132px}}


/* v3.9 - fix sticky categorie: non blocca lo scroll verticale */
html{scroll-behavior:auto}
.cat-nav{position:sticky;top:0;z-index:34;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y pan-x;max-width:100%}
.searchbar{z-index:36}.searchbar + .cat-nav{top:68px}
.cat-nav a{flex:0 0 auto;user-select:none;-webkit-user-select:none}
.category{scroll-margin-top:150px}
@media(max-width:680px){.searchbar + .cat-nav{top:66px}.cat-nav{padding:9px 0 12px;margin-bottom:14px}.category{scroll-margin-top:138px}}

/* v4.0 - sticky categorie realmente visibile e stabile */
.cat-nav{
  display:flex!important;
  position:sticky!important;
  top:var(--sticky-cat-top,0px)!important;
  z-index:60!important;
  gap:10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:10px 0 12px!important;
  margin:0 0 20px!important;
  background:color-mix(in srgb,var(--bg) 94%,#fff)!important;
  border-bottom:1px solid rgba(0,0,0,.07)!important;
  border-top:1px solid rgba(255,255,255,.55)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  scrollbar-width:none!important;
  touch-action:pan-x pan-y!important;
}
.cats-tiles .cat-nav{display:flex!important;grid-template-columns:none!important;position:sticky!important;}
.cat-nav::-webkit-scrollbar{display:none!important}
.cat-nav a{flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;min-height:42px!important}
.cat-nav a.active{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
.category{scroll-margin-top:var(--sticky-total-offset,150px)!important}

/* v4.0 - torna su */
.back-top{position:fixed;right:18px;bottom:86px;z-index:49;width:46px;height:46px;border:0;border-radius:999px;background:var(--primary);color:#fff;font-size:24px;font-weight:950;box-shadow:0 16px 38px rgba(0,0,0,.22);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:.18s ease}
.back-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}
.back-top:hover{transform:translateY(-2px)}

/* v4.0 - carrello mobile compatto */
.cart-fab{display:inline-flex!important;align-items:center;gap:8px!important;position:relative!important}
.cart-fab-icon{font-size:20px;line-height:1}.cart-fab-count{display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:23px;padding:0 7px;background:#fff;color:var(--accent);border-radius:999px;font-size:12px;font-weight:950;box-shadow:0 3px 10px rgba(0,0,0,.16)}
@media(max-width:680px){
  .cart{left:auto!important;right:16px!important;bottom:16px!important;z-index:70!important}
  .cart>button.cart-fab{width:58px!important;height:58px!important;padding:0!important;border-radius:999px!important;justify-content:center!important;box-shadow:0 18px 42px rgba(0,0,0,.26)!important}
  .cart-fab-text{display:none!important}.cart-fab-icon{font-size:24px}.cart-fab-count{position:absolute;right:-5px;top:-6px;min-width:24px;height:24px;background:#ef4444;color:#fff;border:2px solid #fff}
  .cart-panel{position:fixed!important;left:12px!important;right:12px!important;bottom:84px!important;width:auto!important;max-height:76vh!important;border-radius:26px!important;z-index:72!important}
  .cart.open::before{content:'';position:fixed;inset:0;background:rgba(17,24,39,.38);backdrop-filter:blur(2px);z-index:69;pointer-events:none}
  .cart.open .cart-panel{display:block!important}
  .back-top{right:16px;bottom:88px;width:44px;height:44px;font-size:22px}
  .cart.open ~ .back-top{display:none}
}

/* v4.1 - menu categorie sticky compatto con ricerca full screen */
.searchbar{display:none!important}
.sticky-category-bar{position:sticky;top:0;z-index:38;display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(16px);padding:10px 0 12px;border-bottom:1px solid rgba(0,0,0,.06)}
.sticky-category-bar .cat-nav{position:relative!important;top:auto!important;z-index:auto;flex:1;display:flex!important;grid-template-columns:none!important;gap:10px;overflow-x:auto;overflow-y:hidden;padding:0;background:transparent;backdrop-filter:none;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sticky-category-bar .cat-nav::-webkit-scrollbar{display:none}
.sticky-category-bar .cat-nav a{flex:0 0 auto;white-space:nowrap}
.cats-tiles .sticky-category-bar .cat-nav{position:relative!important;display:flex!important;grid-template-columns:none!important}
.cats-tiles .sticky-category-bar .cat-nav a{border-radius:999px;padding:11px 15px}
.sticky-search-btn{flex:0 0 auto;width:52px;height:52px;border:0;border-radius:999px;background:var(--card);color:var(--text);font-size:28px;font-weight:950;line-height:1;display:grid;place-items:center;box-shadow:0 12px 32px rgba(0,0,0,.10);cursor:pointer}
.sticky-search-btn:hover{background:var(--primary);color:#fff}.category{scroll-margin-top:88px}
.search-overlay[hidden]{display:none!important}.search-overlay{position:fixed;inset:0;z-index:120;background:rgba(17,24,39,.48);backdrop-filter:blur(8px);padding:18px;display:block}.search-overlay-panel{width:min(760px,96vw);margin:8vh auto 0;background:var(--card);border-radius:28px;padding:18px;box-shadow:0 28px 90px rgba(0,0,0,.28)}.search-overlay-head{display:flex;gap:10px;align-items:center}.search-overlay-head input{flex:1;border:0;border-radius:999px;padding:18px 22px;font-size:18px;background:color-mix(in srgb,var(--bg) 82%,#fff);outline:2px solid transparent}.search-overlay-head input:focus{outline-color:color-mix(in srgb,var(--primary) 30%,transparent)}.search-overlay-head button{width:54px;height:54px;border:0;border-radius:999px;background:color-mix(in srgb,var(--bg) 86%,#fff);font-size:30px;font-weight:900;cursor:pointer}.search-overlay-help{margin:12px 8px 0;color:var(--muted);font-size:14px}.search-active .product{transition:opacity .15s ease}.search-no-results{display:none;margin:24px 0;padding:20px;border-radius:20px;background:var(--card);color:var(--muted);text-align:center;font-weight:800}.search-no-results.show{display:block}@media(max-width:680px){.sticky-category-bar{padding:8px 0 10px}.sticky-search-btn{width:48px;height:48px;font-size:26px}.sticky-category-bar .cat-nav a{padding:10px 13px;font-size:14px}.category{scroll-margin-top:76px}.search-overlay{padding:12px}.search-overlay-panel{margin:5vh auto 0;border-radius:24px;padding:12px}.search-overlay-head input{font-size:16px;padding:16px 18px}.search-overlay-head button{width:50px;height:50px}}

/* v4.2 - ricerca inline sotto menu sticky, senza overlay full screen */
.sticky-category-bar{align-items:center!important;gap:10px!important}
.sticky-category-bar .cat-nav{min-width:0!important}
.sticky-search-btn{width:50px!important;height:50px!important;min-width:50px!important;align-self:center!important;font-size:20px!important;line-height:1!important;transform:none!important;margin:0!important}
.sticky-search-btn.active{background:var(--primary)!important;color:#fff!important}
.inline-searchbar[hidden]{display:none!important}
.inline-searchbar{position:sticky;top:calc(var(--sticky-cat-top,0px) + 72px);z-index:37;display:flex;gap:8px;align-items:center;margin:0 0 18px;padding:10px 0;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.inline-searchbar input{flex:1;border:0;border-radius:999px;padding:16px 20px;font-size:16px;background:var(--card);box-shadow:0 10px 30px rgba(0,0,0,.08);outline:2px solid transparent}
.inline-searchbar input:focus{outline-color:color-mix(in srgb,var(--primary) 30%,transparent)}
.inline-searchbar button{width:52px;height:52px;border:0;border-radius:999px;background:var(--card);font-size:28px;font-weight:900;box-shadow:0 10px 30px rgba(0,0,0,.08);cursor:pointer}.inline-searchbar button:hover{background:var(--primary);color:#fff}
.search-overlay{display:none!important}.search-lock{overflow:auto!important}
.category{scroll-margin-top:150px!important}
@media(max-width:680px){.sticky-search-btn{width:46px!important;height:46px!important;min-width:46px!important;font-size:18px!important}.inline-searchbar{top:66px;margin-bottom:14px;padding:8px 0}.inline-searchbar input{padding:14px 16px;font-size:15px}.inline-searchbar button{width:48px;height:48px}.category{scroll-margin-top:134px!important}}

/* v4.3 - allineamento icone sticky/menu e icone monocolore */
.sticky-category-bar{
  align-items:center!important;
  gap:10px!important;
}
.sticky-category-bar .cat-nav{
  align-items:center!important;
}
.sticky-search-btn{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:0!important;
  font-size:0!important;
  vertical-align:middle!important;
}
.sticky-search-btn svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
  color:currentColor!important;
}
.sticky-category-bar .cat-nav a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
}
.inline-searchbar{
  position:relative!important;
  top:auto!important;
  z-index:45!important;
  clear:both!important;
  margin:8px 0 18px!important;
  padding:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.inline-searchbar input,
.inline-searchbar button{
  position:relative!important;
  z-index:46!important;
}
.cart-fab{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}
.cart-fab-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
  line-height:0!important;
}
.cart-fab-icon svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
  color:currentColor!important;
}
@media(max-width:680px){
  .sticky-search-btn{width:50px!important;height:50px!important;min-width:50px!important}
  .sticky-search-btn svg{width:21px!important;height:21px!important}
  .sticky-category-bar .cat-nav a{min-height:50px!important}
  .inline-searchbar{margin:8px 0 14px!important;padding:0!important;top:auto!important}
  .cart-fab-text{display:none!important}
  .cart-fab{width:58px!important;height:58px!important;padding:0!important;border-radius:999px!important}
}

/* v4.4 - ricerca aperta sopra categorie, rimosso tasto ricerca sticky */
.sticky-search-btn,
.inline-searchbar{display:none!important}
#menuSearchbar.searchbar{
  position:sticky!important;
  top:0!important;
  z-index:48!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:12px 0!important;
  margin:0!important;
  background:color-mix(in srgb,var(--bg) 92%,transparent)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
#menuSearchbar input{
  flex:1!important;
  min-height:58px!important;
  border:0!important;
  border-radius:999px!important;
  padding:0 22px!important;
  box-shadow:0 12px 35px rgba(0,0,0,.08)!important;
  font-size:16px!important;
  background:var(--card)!important;
  color:var(--text)!important;
}
#menuSearchbar button{
  width:58px!important;
  height:58px!important;
  min-width:58px!important;
  border:0!important;
  border-radius:999px!important;
  background:var(--card)!important;
  color:var(--text)!important;
  font-size:26px!important;
  line-height:1!important;
  box-shadow:0 12px 35px rgba(0,0,0,.08)!important;
  cursor:pointer!important;
}
.sticky-category-bar{top:82px!important;z-index:47!important}
.category{scroll-margin-top:170px!important}
.cart-fab-icon svg{width:23px!important;height:23px!important;display:block!important;overflow:visible!important}
@media(max-width:680px){
  #menuSearchbar.searchbar{padding:10px 0!important;gap:8px!important}
  #menuSearchbar input{min-height:52px!important;font-size:15px!important;padding:0 18px!important}
  #menuSearchbar button{width:52px!important;height:52px!important;min-width:52px!important;font-size:24px!important}
  .sticky-category-bar{top:72px!important}
  .category{scroll-margin-top:154px!important}
  .cart-fab-icon svg{width:22px!important;height:22px!important}
}

/* v4.5 - ricerca fuori dallo sticky: resta sopra il menu ma scorre via */
#menuSearchbar.searchbar{
  position:relative!important;
  top:auto!important;
  z-index:10!important;
  margin:0 0 12px!important;
  padding:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.sticky-category-bar{
  top:0!important;
  z-index:47!important;
}
.category{
  scroll-margin-top:92px!important;
}
@media(max-width:680px){
  #menuSearchbar.searchbar{margin:0 0 10px!important;padding:0!important}
  .sticky-category-bar{top:0!important}
  .category{scroll-margin-top:82px!important}
}


/* v4.6 - menu categorie pulito: ricerca non sticky, categorie sticky senza righino */
#menuSearchbar.searchbar{
  position:relative!important;
  top:auto!important;
  z-index:10!important;
  margin:0 0 14px!important;
  padding:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:0!important;
}
.sticky-category-bar{
  position:sticky!important;
  top:0!important;
  z-index:47!important;
  display:block!important;
  margin:0 0 24px!important;
  padding:12px 0!important;
  background:color-mix(in srgb,var(--bg) 94%,transparent)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  border:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
.sticky-category-bar .cat-nav,
.cat-nav{
  border:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
.sticky-category-bar .cat-nav{
  position:relative!important;
  top:auto!important;
  z-index:auto!important;
  display:flex!important;
  grid-template-columns:none!important;
  gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  margin:0!important;
  padding:0 0 2px!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  scrollbar-width:none!important;
}
.sticky-category-bar .cat-nav::-webkit-scrollbar{display:none!important}
.sticky-category-bar .cat-nav a{
  flex:0 0 auto!important;
  white-space:nowrap!important;
  min-height:54px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:999px!important;
}
.category{scroll-margin-top:96px!important}
@media(max-width:680px){
  .sticky-category-bar{padding:10px 0!important;margin-bottom:20px!important}
  .sticky-category-bar .cat-nav{gap:10px!important;padding-bottom:2px!important}
  .sticky-category-bar .cat-nav a{min-height:50px!important}
  .category{scroll-margin-top:86px!important}
}


/* v4.7 - popup mobile centrati + icone coerenti stile FontAwesome */
.add::before,
.quick-add-action::before,
.customize-action::before{
  content:""!important;
  width:15px!important;
  height:15px!important;
  display:inline-block!important;
  flex:0 0 15px!important;
  background:currentColor!important;
  vertical-align:-2px!important;
  -webkit-mask-repeat:no-repeat!important;
  mask-repeat:no-repeat!important;
  -webkit-mask-position:center!important;
  mask-position:center!important;
  -webkit-mask-size:contain!important;
  mask-size:contain!important;
}
.quick-add-action::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M256%2048c13.3%200%2024%2010.7%2024%2024V232H440c13.3%200%2024%2010.7%2024%2024s-10.7%2024-24%2024H280V440c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24V280H72c-13.3%200-24-10.7-24-24s10.7-24%2024-24H232V72c0-13.3%2010.7-24%2024-24z%27/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M256%2048c13.3%200%2024%2010.7%2024%2024V232H440c13.3%200%2024%2010.7%2024%2024s-10.7%2024-24%2024H280V440c0%2013.3-10.7%2024-24%2024s-24-10.7-24-24V280H72c-13.3%200-24-10.7-24-24s10.7-24%2024-24H232V72c0-13.3%2010.7-24%2024-24z%27/%3E%3C/svg%3E")!important}
.customize-action::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M495.9%20166.6c3.2%208.7%20.5%2018.4-6.4%2024.6l-43.3%2039.4c1.1%208.3%201.7%2016.8%201.7%2025.4s-.6%2017.1-1.7%2025.4l43.3%2039.4c6.9%206.2%209.6%2015.9%206.4%2024.6c-4.4%2011.9-9.7%2023.3-15.8%2034.3l-4.7%208.1c-6.6%2011-14%2021.4-22.1%2031.2c-5.9%207.2-15.7%209.6-24.5%206.8l-55.7-17.7c-13.4%2010.3-28.2%2018.9-44%2025.4l-12.5%2057.1c-2%209.1-9%2016.3-18.2%2017.8c-13.8%202.3-28%203.5-42.5%203.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4l-55.6%2017.7c-8.8%202.8-18.6%20.3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4%206.4-24.6l43.3-39.4c-1.1-8.3-1.7-16.8-1.7-25.4s.6-17.1%201.7-25.4L22.5%20191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9%209.7-23.3%2015.8-34.3l4.7-8.1c6.6-11%2014-21.4%2022.1-31.2c5.9-7.2%2015.7-9.6%2024.5-6.8l55.7%2017.7c13.4-10.3%2028.2-18.9%2044-25.4l12.5-57.1c2-9.1%209-16.3%2018.2-17.8C227.3%201.2%20241.5%200%20256%200s28.7%201.2%2042.5%203.5c9.2%201.5%2016.2%208.7%2018.2%2017.8l12.5%2057.1c15.8%206.5%2030.6%2015.1%2044%2025.4l55.7-17.7c8.8-2.8%2018.6-.3%2024.5%206.8c8.1%209.8%2015.5%2020.2%2022.1%2031.2l4.7%208.1c6.1%2011%2011.4%2022.4%2015.8%2034.3zM256%20336a80%2080%200%201%200%200-160%2080%2080%200%201%200%200%20160z%27/%3E%3C/svg%3E")!important;mask-image:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M495.9%20166.6c3.2%208.7%20.5%2018.4-6.4%2024.6l-43.3%2039.4c1.1%208.3%201.7%2016.8%201.7%2025.4s-.6%2017.1-1.7%2025.4l43.3%2039.4c6.9%206.2%209.6%2015.9%206.4%2024.6c-4.4%2011.9-9.7%2023.3-15.8%2034.3l-4.7%208.1c-6.6%2011-14%2021.4-22.1%2031.2c-5.9%207.2-15.7%209.6-24.5%206.8l-55.7-17.7c-13.4%2010.3-28.2%2018.9-44%2025.4l-12.5%2057.1c-2%209.1-9%2016.3-18.2%2017.8c-13.8%202.3-28%203.5-42.5%203.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4l-55.6%2017.7c-8.8%202.8-18.6%20.3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4%206.4-24.6l43.3-39.4c-1.1-8.3-1.7-16.8-1.7-25.4s.6-17.1%201.7-25.4L22.5%20191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9%209.7-23.3%2015.8-34.3l4.7-8.1c6.6-11%2014-21.4%2022.1-31.2c5.9-7.2%2015.7-9.6%2024.5-6.8l55.7%2017.7c13.4-10.3%2028.2-18.9%2044-25.4l12.5-57.1c2-9.1%209-16.3%2018.2-17.8C227.3%201.2%20241.5%200%20256%200s28.7%201.2%2042.5%203.5c9.2%201.5%2016.2%208.7%2018.2%2017.8l12.5%2057.1c15.8%206.5%2030.6%2015.1%2044%2025.4l55.7-17.7c8.8-2.8%2018.6-.3%2024.5%206.8c8.1%209.8%2015.5%2020.2%2022.1%2031.2l4.7%208.1c6.1%2011%2011.4%2022.4%2015.8%2034.3zM256%20336a80%2080%200%201%200%200-160%2080%2080%200%201%200%200%20160z%27/%3E%3C/svg%3E")!important}
.detail-only::before,.unavailable::before{display:none!important;content:none!important}
.back-top{font-size:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.back-top::before{
  content:"";width:18px;height:18px;background:currentColor;display:block;
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M201.4%20137.4c12.5-12.5%2032.8-12.5%2045.3%200l160%20160c12.5%2012.5%2012.5%2032.8%200%2045.3s-32.8%2012.5-45.3%200L256%20237.3%20150.6%20342.6c-12.5%2012.5-32.8%2012.5-45.3%200s-12.5-32.8%200-45.3l160-160z%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M201.4%20137.4c12.5-12.5%2032.8-12.5%2045.3%200l160%20160c12.5%2012.5%2012.5%2032.8%200%2045.3s-32.8%2012.5-45.3%200L256%20237.3%20150.6%20342.6c-12.5%2012.5-32.8%2012.5-45.3%200s-12.5-32.8%200-45.3l160-160z%27/%3E%3C/svg%3E") center/contain no-repeat;
}
#clearSearch,.modal-close,.cart-close{font-size:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
#clearSearch::before,.modal-close::before,.cart-close::before{
  content:"";width:18px;height:18px;background:currentColor;display:block;
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M342.6%20150.6c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20178.7l-73.4-73.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3L178.7%20224l-73.4%2073.4c-12.5%2012.5-12.5%2032.8%200%2045.3s32.8%2012.5%2045.3%200L224%20269.3l73.4%2073.4c12.5%2012.5%2032.8%2012.5%2045.3%200s12.5-32.8%200-45.3L269.3%20224l73.4-73.4z%27/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20viewBox=%270%200%20512%20512%27%3E%3Cpath%20fill=%27black%27%20d=%27M342.6%20150.6c12.5-12.5%2012.5-32.8%200-45.3s-32.8-12.5-45.3%200L224%20178.7l-73.4-73.4c-12.5-12.5-32.8-12.5-45.3%200s-12.5%2032.8%200%2045.3L178.7%20224l-73.4%2073.4c-12.5%2012.5-12.5%2032.8%200%2045.3s32.8%2012.5%2045.3%200L224%20269.3l73.4%2073.4c12.5%2012.5%2032.8%2012.5%2045.3%200s12.5-32.8%200-45.3L269.3%20224l73.4-73.4z%27/%3E%3C/svg%3E") center/contain no-repeat;
}
#clearSearch::before{width:16px;height:16px}
.cart-close::before,.modal-close::before{width:17px;height:17px}
.cart-fab-icon{width:24px!important;height:24px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
.cart-fab-icon svg{width:22px!important;height:22px!important;display:block!important;fill:currentColor!important}
@media(max-width:680px){
  .modal:not([hidden]){
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:16px!important;
    overflow-y:auto!important;
  }
  .modal-box{
    width:calc(100vw - 32px)!important;
    max-width:560px!important;
    max-height:calc(100dvh - 32px)!important;
    margin:auto!important;
    border-radius:24px!important;
    transform:none!important;
  }
  #modalContent{padding:18px!important}
  .modal-product-head{padding-right:38px!important}
  .modal-close{top:10px!important;right:10px!important}
  .add::before,.quick-add-action::before,.customize-action::before{width:14px!important;height:14px!important;flex-basis:14px!important}
}


/* v4.8 - fix doppia X nella ricerca: il pulsante usa solo icona CSS/SVG */
#clearSearch{
  font-size:0!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  position:relative!important;
}
#clearSearch::before{
  text-indent:0!important;
  position:absolute!important;
  inset:0!important;
  margin:auto!important;
  width:16px!important;
  height:16px!important;
}
#clearSearch *{display:none!important}


/* v5.0 - popup ordine inviato */
.order-success-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px;background:rgba(17,24,39,.68);backdrop-filter:blur(8px)}
.order-success-box{position:relative;width:min(430px,94vw);background:var(--card);color:var(--text);border-radius:28px;padding:30px 24px 24px;text-align:center;box-shadow:0 30px 100px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.18)}
.order-success-close{position:absolute;top:12px;right:12px;border:0;background:#f3f4f6;color:var(--text);border-radius:999px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.order-success-close::before{content:"";width:17px;height:17px;background:currentColor;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3l105.4 105.3c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256l105.3-105.4z"/></svg>') center/contain no-repeat;mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3l105.4 105.3c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256l105.3-105.4z"/></svg>') center/contain no-repeat}
.order-success-icon{width:74px;height:74px;border-radius:999px;margin:0 auto 16px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);display:flex;align-items:center;justify-content:center}
.order-success-icon svg{width:46px;height:46px}.order-success-box h2{margin:0 0 8px;font-size:30px}.order-success-box p{margin:0 0 14px;color:var(--muted);line-height:1.45}.order-success-code{display:block;background:color-mix(in srgb,var(--bg) 70%,#fff);border-radius:16px;padding:12px;margin:12px 0 18px}.order-success-ok{width:100%;border:0;border-radius:16px;background:var(--primary);color:#fff;font-weight:950;padding:14px 18px;cursor:pointer;box-shadow:0 12px 28px color-mix(in srgb,var(--primary) 18%,transparent)}
@media(max-width:640px){.order-success-box{border-radius:24px;padding:28px 18px 18px}.order-success-box h2{font-size:26px}}

/* v5.1 - coperto */
.cover-charge-info{margin:34px 0 18px}.cover-charge-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:var(--card);border:1px solid rgba(17,24,39,.08);border-radius:var(--radius);padding:20px;box-shadow:0 12px 34px rgba(17,24,39,.06)}.cover-charge-card strong{font-size:24px;color:var(--accent);white-space:nowrap}.cover-charge-card p{margin:0;color:var(--muted);line-height:1.5}@media(max-width:640px){.cover-charge-card{display:block}.cover-charge-card strong{display:block;margin-bottom:8px}}

/* v7.2 - opzioni con quantità multiple */
.option-choice-qty{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid rgba(15,23,42,.10);border-radius:16px;background:#fff;margin:8px 0}
.option-choice-qty .option-qty{display:inline-flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid rgba(15,23,42,.10);border-radius:999px;padding:4px}
.option-choice-qty .option-qty button{width:30px;height:30px;border-radius:999px;border:0;background:#0f172a;color:#fff;font-weight:900;line-height:1;cursor:pointer}
.option-choice-qty .option-qty button:disabled{opacity:.35;cursor:not-allowed}
.option-choice-qty .option-qty strong{min-width:24px;text-align:center;font-size:14px}
@media(max-width:640px){.option-choice-qty{grid-template-columns:1fr auto}.option-choice-qty b{grid-column:1}.option-choice-qty .option-qty{grid-column:2;grid-row:1 / span 2}}

/* v7.4 - frontend opzioni: nasconde etichette tecniche e mostra solo obbligatorio */
.modal fieldset legend em.required-label{
  display:inline-flex;
  align-items:center;
  margin-left:10px;
  padding:5px 10px;
  border-radius:999px;
  background:#fff1f2;
  color:#9f1239;
  font-size:12px;
  line-height:1;
  font-style:normal;
  font-weight:900;
  text-transform:none;
  letter-spacing:0;
}

/* v8.0 - Categoria con immagine frontend rettangolare */
.category-with-image{margin-top:28px!important}
.category-hero-card{position:relative;width:100%;min-height:auto;aspect-ratio:auto;border-radius:calc(var(--radius) + 8px);background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden;display:flex;align-items:center;margin:0 0 18px;border:1px solid rgba(255,255,255,.18);box-shadow:0 14px 42px rgba(17,24,39,.13)}
.category-hero-card::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,24,39,.78),rgba(17,24,39,.38) 54%,rgba(17,24,39,.16)),linear-gradient(0deg,rgba(17,24,39,.32),transparent 60%);pointer-events:none}
.category-hero-content{position:relative;z-index:1;color:#fff;padding:16px 22px;max-width:780px;text-shadow:0 8px 28px rgba(0,0,0,.34)}
.category-hero-kicker{display:none!important}
.category-hero-card h2{font-size:clamp(24px,2.4vw,34px);line-height:1;margin:0 0 6px;color:#fff}
.category-hero-card p{font-size:clamp(13px,1vw,15px);line-height:1.28;margin:0;color:rgba(255,255,255,.92);max-width:680px}
@media(max-width:680px){.category-with-image{margin-top:22px!important}.category-hero-card{min-height:138px;aspect-ratio:16/7;border-radius:22px;margin-bottom:16px;align-items:flex-end}.category-hero-content{padding:22px 18px}.category-hero-card h2{font-size:clamp(28px,9vw,42px)}.category-hero-card p{font-size:14px;line-height:1.35}}

/* v8.3 - categorie senza foto: stessa card compatta con colore categoria */
.category-color-card{
  background:linear-gradient(135deg,var(--cat-color),color-mix(in srgb,var(--cat-color) 72%,#111827 28%));
}
.category-color-card::after{
  background:linear-gradient(90deg,rgba(17,24,39,.18),rgba(17,24,39,.08)),linear-gradient(0deg,rgba(17,24,39,.18),transparent 70%);
}
.category-with-color{margin-top:22px!important}
@supports not (background:color-mix(in srgb,#000 50%,#fff 50%)){
  .category-color-card{background:var(--cat-color)}
}

/* v8.4 - coerenza visuale: radius uniforme e pulsanti senza ombre */
:root{--md-ui-radius:var(--radius);}
.product,.category-hero-card,.cover-charge-card,.allergen-legend,.allergen-grid article,.modal-box,.cart-panel,.order-success-box,.language-switcher,.translate-bar,fieldset,.option-choice,.option-choice-qty,.search-no-results{border-radius:var(--md-ui-radius)!important;}
button,.add,#sendOrder,.btn-primary,.btn-secondary,.cart>button,.cart-fab,.back-top,.modal-close,.order-success-close,.order-success-ok,.qty button,.option-qty button,.cart-item button,.searchbar button,.inline-searchbar button,.lang-btn,.cat-nav a{box-shadow:none!important;}
button:hover,.add:hover,#sendOrder:hover,.btn-primary:hover,.btn-secondary:hover,.cart>button:hover,.back-top:hover,.lang-btn:hover,.cat-nav a:hover,.cat-nav a.active{box-shadow:none!important;}

/* v8.5 - categorie senza foto compatte anche su mobile */
@media(max-width:680px){
  .category-with-color{margin-top:22px!important;}
  .category-with-color .category-hero-card{
    min-height:auto!important;
    aspect-ratio:auto!important;
    align-items:center!important;
    margin-bottom:16px;
  }
  .category-with-color .category-hero-content{
    padding:16px 22px!important;
  }
  .category-with-color .category-hero-card h2{
    font-size:clamp(24px,2.4vw,34px)!important;
    line-height:1!important;
    margin:0 0 6px!important;
  }
  .category-with-color .category-hero-card p{
    font-size:clamp(13px,1vw,15px)!important;
    line-height:1.28!important;
  }
}

/* v8.6 - categorie senza foto: testo uguale alle categorie con immagine */
@media(max-width:680px){
  .category-with-color .category-hero-card h2{
    font-size:clamp(28px,9vw,42px)!important;
    line-height:1!important;
    margin:0 0 6px!important;
  }
  .category-with-color .category-hero-card p{
    font-size:14px!important;
    line-height:1.35!important;
  }
}

/* v8.7: prodotto modal senza scroll pagina e footer fisso */
body.modal-open{overflow:hidden!important;touch-action:none;}
#productModal{overscroll-behavior:contain;}
#productModal .modal-box{display:flex!important;flex-direction:column!important;overflow:hidden!important;max-height:min(92vh,860px)!important;}
#productModal #modalContent{display:flex!important;flex-direction:column!important;min-height:0!important;overflow:hidden!important;padding:0!important;}
#productModal #customForm{display:flex!important;flex-direction:column!important;min-height:0!important;max-height:min(92vh,860px)!important;}
#productModal .modal-scroll-content{overflow-y:auto!important;min-height:0!important;padding:24px 24px 14px!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;}
#productModal .modal-bottom-fixed{flex:0 0 auto!important;background:var(--card)!important;border-top:1px solid rgba(0,0,0,.08)!important;padding:12px 24px 24px!important;}
#productModal .modal-bottom-fixed .qty{margin:0 0 10px!important;}
#productModal .modal-bottom-fixed .modal-actions{position:static!important;margin:0!important;padding:0!important;background:transparent!important;}
#productModal .modal-bottom-fixed #modalErr{display:block;margin-top:8px!important;}
@media(max-width:680px){
  #productModal.modal{padding:12px!important;align-items:center!important;justify-items:center!important;}
  #productModal .modal-box{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;}
  #productModal #customForm{max-height:calc(100dvh - 24px)!important;}
  #productModal .modal-scroll-content{padding:18px 18px 12px!important;}
  #productModal .modal-bottom-fixed{padding:12px 18px calc(18px + env(safe-area-inset-bottom))!important;}
}

/* v8.8 - popup prodotto: header con maggiore impatto visivo */
#productModal .modal-scroll-content{
  padding:0 0 14px!important;
}
#productModal .modal-product-head{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:18px!important;
  margin:0 0 22px!important;
  padding:28px 76px 24px 28px!important;
  background:
    radial-gradient(circle at 10% 0%, color-mix(in srgb,var(--primary) 14%,transparent), transparent 42%),
    linear-gradient(135deg, color-mix(in srgb,var(--bg) 70%,#fff), #fff 72%);
  border-bottom:1px solid rgba(15,23,42,.08)!important;
}
#productModal .modal-product-head::after{
  content:"";
  position:absolute;
  left:28px;
  right:28px;
  bottom:-1px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),color-mix(in srgb,var(--primary) 18%,transparent));
  opacity:.28;
}
#productModal .modal-product-head h2{
  margin:10px 0 0!important;
  font-size:clamp(38px,5.4vw,58px)!important;
  line-height:.94!important;
  letter-spacing:-.05em!important;
  color:var(--text)!important;
  max-width:100%!important;
}
#productModal .modal-kicker{
  background:color-mix(in srgb,var(--primary) 12%,#fff)!important;
  color:var(--primary)!important;
  padding:8px 13px!important;
  font-size:13px!important;
  letter-spacing:.08em!important;
  border:1px solid color-mix(in srgb,var(--primary) 12%,transparent)!important;
}
#productModal .modal-base-price{
  align-self:start!important;
  justify-self:end!important;
  margin-top:2px!important;
  padding:12px 18px!important;
  border-radius:999px!important;
  font-size:20px!important;
  line-height:1!important;
  background:var(--primary)!important;
  color:#fff!important;
}
#productModal .modal-description,
#productModal .modal-info-grid,
#productModal fieldset,
#productModal .empty-options{
  margin-left:28px!important;
  margin-right:28px!important;
}
#productModal .modal-description{
  margin-top:0!important;
  margin-bottom:20px!important;
  font-size:17px!important;
}
#productModal .modal-info-grid{
  margin-bottom:24px!important;
}
#productModal fieldset{
  margin-top:20px!important;
  margin-bottom:20px!important;
}
#productModal .modal-close{
  top:20px!important;
  right:20px!important;
  width:50px!important;
  height:50px!important;
  background:color-mix(in srgb,var(--bg) 82%,#fff)!important;
}
@media(max-width:680px){
  #productModal .modal-product-head{
    display:block!important;
    margin-bottom:20px!important;
    padding:22px 70px 24px 20px!important;
  }
  #productModal .modal-product-head::after{
    left:20px;
    right:20px;
  }
  #productModal .modal-product-head h2{
    font-size:clamp(42px,12vw,58px)!important;
    line-height:.9!important;
    margin-top:10px!important;
  }
  #productModal .modal-base-price{
    display:inline-flex!important;
    margin-top:16px!important;
    font-size:19px!important;
    padding:12px 18px!important;
  }
  #productModal .modal-kicker{
    font-size:12px!important;
    padding:7px 11px!important;
  }
  #productModal .modal-description,
  #productModal .modal-info-grid,
  #productModal fieldset,
  #productModal .empty-options{
    margin-left:20px!important;
    margin-right:20px!important;
  }
  #productModal .modal-description{
    font-size:17px!important;
    margin-bottom:20px!important;
  }
  #productModal .modal-close{
    top:18px!important;
    right:18px!important;
    width:48px!important;
    height:48px!important;
  }
}


/* v9.3 - HTML personalizzato prima del footer */
.custom-html-before-footer{max-width:1180px;margin:28px auto;padding:0 18px;color:var(--text)}
.custom-html-before-footer>*:first-child{margin-top:0}.custom-html-before-footer>*:last-child{margin-bottom:0}

/* v9.9 - Frontend visual system premium/coerente */
:root{
  --md-radius:var(--radius,18px);
  --md-radius-sm:calc(var(--md-radius) - 6px);
  --md-border:rgba(15,23,42,.09);
  --md-border-strong:rgba(15,23,42,.14);
  --md-soft:color-mix(in srgb,var(--bg) 82%,#fff);
  --md-soft-2:color-mix(in srgb,var(--bg) 70%,#fff);
}
body{
  background:
    radial-gradient(circle at 14% -8%, color-mix(in srgb,var(--primary) 8%,transparent), transparent 32%),
    linear-gradient(180deg, color-mix(in srgb,var(--bg) 92%,#fff), var(--bg));
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
button,.add,.btn-primary,.btn-secondary,#sendOrder,.qty button,.cart>button,.modal-close,.cart-close,.back-top,#clearSearch{box-shadow:none!important}
.hero{
  min-height:330px;
  align-items:center;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,23,42,.42),rgba(15,23,42,.08));pointer-events:none}
.hero-inner{position:relative;z-index:1;padding:54px 0 48px}
.logo{border-radius:var(--md-radius);box-shadow:none;border:1px solid rgba(255,255,255,.4)}
.eyebrow,.table-pill{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.14);font-weight:850;letter-spacing:.01em}
.hero h1{letter-spacing:-.055em;font-weight:950;text-wrap:balance}
.hero p{line-height:1.45;color:rgba(255,255,255,.9);text-wrap:balance}
.wrap{padding-top:22px}
#menuSearchbar.searchbar{
  position:relative!important;
  top:auto!important;
  z-index:18!important;
  padding:0!important;
  margin:0 0 14px!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#menuSearchbar input{
  min-height:56px!important;
  border:1px solid var(--md-border)!important;
  background:var(--card)!important;
  box-shadow:none!important;
  border-radius:var(--md-radius)!important;
  padding:0 20px!important;
  font-weight:650;
}
#menuSearchbar input:focus{outline:3px solid color-mix(in srgb,var(--primary) 16%,transparent)!important;border-color:color-mix(in srgb,var(--primary) 28%,transparent)!important}
#menuSearchbar button{
  width:56px!important;height:56px!important;min-width:56px!important;
  border:1px solid var(--md-border)!important;background:var(--card)!important;border-radius:var(--md-radius)!important;font-size:0!important;position:relative!important
}
#menuSearchbar button::before,#menuSearchbar button::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:2px;background:currentColor;border-radius:999px;transform:translate(-50%,-50%) rotate(45deg)}
#menuSearchbar button::after{transform:translate(-50%,-50%) rotate(-45deg)}
.sticky-category-bar{
  top:0!important;z-index:42!important;
  margin:0 0 22px!important;
  padding:10px 0!important;
  background:color-mix(in srgb,var(--bg) 94%,transparent)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
  border-bottom:0!important;
}
.sticky-category-bar::after{display:none!important}
.sticky-category-bar .cat-nav{gap:8px!important;padding:0!important}
.sticky-category-bar .cat-nav a{
  min-height:44px!important;
  border-radius:999px!important;
  padding:0 16px!important;
  border:1px solid var(--md-border)!important;
  background:var(--card)!important;
  color:var(--text)!important;
  font-weight:850!important;
  font-size:14px!important;
}
.sticky-category-bar .cat-nav a.active,.sticky-category-bar .cat-nav a:hover{background:var(--primary)!important;color:#fff!important;border-color:var(--primary)!important}
.category{scroll-margin-top:86px!important;margin:20px 0 48px!important}
.category-hero-card{
  min-height:auto!important;
  height:auto!important;
  border-radius:var(--md-radius)!important;
  padding:22px 24px!important;
  display:flex!important;
  align-items:center!important;
  margin-bottom:18px!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,#fff 12%,transparent)!important;
  background-size:cover!important;
  background-position:center!important;
}
.category-color-card{background:linear-gradient(135deg,var(--cat-color),color-mix(in srgb,var(--cat-color) 78%,#111827))!important}
.category-hero-content h2{font-size:clamp(26px,3.4vw,40px)!important;line-height:1!important;margin:0!important;letter-spacing:-.035em!important;color:#fff!important}
.category-hero-content p{margin:7px 0 0!important;color:rgba(255,255,255,.86)!important;line-height:1.35!important;max-width:760px!important}
.cat-title{margin-bottom:14px!important}.cat-title h2{letter-spacing:-.04em;font-weight:950}.cat-title p{line-height:1.45}
.products{gap:14px!important}
.product{
  grid-template-columns:1fr 134px!important;
  gap:16px!important;
  padding:14px!important;
  border-radius:var(--md-radius)!important;
  border:1px solid var(--md-border)!important;
  background:color-mix(in srgb,var(--card) 96%,#fff)!important;
  box-shadow:none!important;
  transition:border-color .18s ease,transform .18s ease,background .18s ease!important;
}
.product:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 26%,transparent)!important;background:var(--card)!important}
.product img{width:134px!important;height:134px!important;border-radius:var(--md-radius-sm)!important;background:var(--md-soft)!important}
.card-image-top .product{grid-template-columns:1fr!important}.card-image-top .product img{width:100%!important;height:210px!important}
.product h3{font-size:20px!important;line-height:1.12!important;margin:8px 0 7px!important;letter-spacing:-.025em!important;font-weight:950!important}.product p{line-height:1.45!important;font-size:14px!important}.price{margin:8px 0 12px!important}.price strong{font-size:20px!important;letter-spacing:-.025em!important}.badge{border-radius:999px!important;padding:5px 9px!important;font-size:11px!important;font-weight:950!important;letter-spacing:.02em!important}.chips span,.meta span{border-radius:999px!important;background:var(--md-soft)!important;border:1px solid rgba(15,23,42,.05)!important;font-size:11.5px!important;color:color-mix(in srgb,var(--text) 72%,var(--muted))!important}
button.add{border-radius:var(--md-radius-sm)!important;min-height:42px!important;padding:0 14px!important;font-size:14px!important}.detail-only{background:transparent!important;border:1px solid color-mix(in srgb,var(--primary) 34%,transparent)!important;color:var(--primary)!important}.is-soldout{opacity:.72}.soldout-badge{background:#991b1b!important;color:#fff!important}.unavailable-btn{background:var(--md-soft)!important;color:var(--muted)!important;border:1px solid var(--md-border)!important}
.cover-charge-info,.allergen-legend,.custom-html-before-footer{border-radius:var(--md-radius)!important;background:var(--card)!important;border:1px solid var(--md-border)!important;padding:22px!important;margin-top:24px!important}.cover-charge-card{border-radius:var(--md-radius-sm)!important;background:var(--md-soft)!important;border:1px solid var(--md-border)!important;padding:18px!important}.cover-charge-card strong{font-size:24px!important;color:var(--primary)!important}.allergen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.allergen-grid article{border:1px solid var(--md-border)!important;background:var(--md-soft)!important;border-radius:var(--md-radius-sm)!important;padding:14px!important}.allergen-grid h3{margin:0 0 6px!important;font-size:16px!important}.allergen-grid p{margin:0!important;color:var(--muted)!important;line-height:1.42!important;font-size:13px!important}
.cart>button.cart-fab{background:var(--primary)!important;border:1px solid color-mix(in srgb,var(--primary) 92%,#fff)!important}.cart-panel{border-radius:var(--md-radius)!important;border:1px solid var(--md-border)!important;box-shadow:none!important}.cart-close,.modal-close{background:var(--md-soft)!important;color:var(--text)!important;border:1px solid var(--md-border)!important}.cart-panel input,.cart-panel textarea{border-radius:var(--md-radius-sm)!important;border-color:var(--md-border-strong)!important}.cart-panel input:focus,.cart-panel textarea:focus{outline:3px solid color-mix(in srgb,var(--primary) 14%,transparent)!important;border-color:color-mix(in srgb,var(--primary) 28%,transparent)!important}
#productModal .modal{background:rgba(15,23,42,.68)!important}#productModal .modal-box,.modal-box{border-radius:var(--md-radius)!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;background:var(--card)!important}#productModal .modal-product-head{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 9%,#fff),#fff)!important;border-bottom:1px solid var(--md-border)!important}#productModal .modal-product-head::after{display:none!important}#productModal .modal-product-head h2{font-size:clamp(34px,4.6vw,52px)!important;letter-spacing:-.055em!important}#productModal .modal-base-price{background:var(--primary)!important;border-radius:999px!important}#productModal fieldset{border-radius:var(--md-radius)!important;background:var(--md-soft)!important;border:1px solid var(--md-border)!important}#productModal fieldset legend{font-weight:950!important;color:var(--text)!important}#productModal fieldset legend em{background:color-mix(in srgb,var(--primary) 12%,#fff)!important;color:var(--primary)!important;border-radius:999px!important}.option-choice{border-radius:var(--md-radius-sm)!important;border:1px solid var(--md-border)!important;background:var(--card)!important}.option-choice:hover{box-shadow:none!important;border-color:color-mix(in srgb,var(--primary) 28%,transparent)!important}.modal-actions{border-top:1px solid var(--md-border)!important;background:linear-gradient(180deg,rgba(255,255,255,.88),var(--card) 32%)!important}.btn-primary{background:var(--primary)!important;color:#fff!important}.btn-secondary{background:var(--md-soft)!important;color:var(--text)!important;border:1px solid var(--md-border)!important}.qty{background:var(--md-soft)!important;border:1px solid var(--md-border)!important}.qty button{background:var(--primary)!important}
.order-success-box{border-radius:var(--md-radius)!important}.back-top{background:var(--primary)!important;border:1px solid color-mix(in srgb,var(--primary) 85%,#fff)!important;color:#fff!important}
footer{border-top:1px solid var(--md-border);margin-top:28px;background:color-mix(in srgb,var(--bg) 86%,#fff)}
@media(max-width:980px){.product{grid-template-columns:1fr 118px!important}.product img{width:118px!important;height:118px!important}.category-hero-card{padding:18px 20px!important}.category-hero-content h2{font-size:30px!important}}
@media(max-width:680px){.hero{min-height:285px}.hero-inner{padding:36px 0}.wrap{width:min(94vw,560px)!important;padding-bottom:112px}.products{gap:12px!important}.product{grid-template-columns:1fr 104px!important;gap:12px!important;padding:12px!important}.product img{width:104px!important;height:104px!important}.product h3{font-size:18px!important}.product p{font-size:13.5px!important}.price strong{font-size:18px!important}.category-hero-card{padding:16px 18px!important;margin-bottom:14px!important}.category-with-image .category-hero-card{min-height:150px!important}.category-color-card{min-height:auto!important}.category-hero-content h2{font-size:26px!important}.category-hero-content p{font-size:13px!important}.sticky-category-bar .cat-nav a{min-height:40px!important;padding:0 14px!important;font-size:13px!important}#menuSearchbar input,#menuSearchbar button{min-height:50px!important;height:50px!important;border-radius:var(--md-radius-sm)!important}#productModal .modal-box{width:min(94vw,560px)!important;border-radius:22px!important}#productModal .modal-product-head{padding:20px 66px 18px 18px!important}#productModal .modal-product-head h2{font-size:clamp(34px,10vw,46px)!important}.cart-panel{border-radius:22px!important}.allergen-grid{grid-template-columns:1fr}.cover-charge-info,.allergen-legend,.custom-html-before-footer{padding:18px!important}}

/* v10.0 - interventi frontend richiesti */
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
.font-rounded{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important}
.hero .eyebrow{display:none!important}
.logo{max-width:150px!important;max-height:96px!important;width:auto!important;height:auto!important;object-fit:contain!important;background:rgba(255,255,255,.96)!important;padding:10px!important;border-radius:var(--md-radius-sm)!important}
.logo.small{max-width:82px!important;max-height:58px!important}
#clearSearch{font-size:14px!important;font-weight:950!important;line-height:1!important;color:var(--muted)!important;background:var(--card)!important;border:1px solid var(--md-border)!important}
#clearSearch::before,#clearSearch::after{display:none!important;content:none!important}
.category-featured .category-hero-card{background:var(--cat-color)!important}
.info-product-card{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--card);border:1px solid var(--md-border);border-radius:var(--md-radius);padding:16px 18px}
.info-product-card h3,.info-section-head h3{font-size:22px;line-height:1.15;margin:0 0 6px;font-weight:950;letter-spacing:-.025em;color:var(--text)}
.info-product-card p,.info-section-head p{font-size:14px;line-height:1.45;margin:0;color:var(--muted)}
.info-card-price{font-size:21px;font-weight:950;color:var(--primary);white-space:nowrap}
.cover-charge-info{background:transparent!important;border:0!important;padding:0!important}
.cover-charge-info .cat-title,.cover-charge-card{display:none!important}
.allergen-legend .cat-title{display:none!important}
.info-section-head{margin-bottom:14px}
.product-note-field{display:flex;flex-direction:column;gap:8px;margin:14px 0;padding:14px;border:1px solid var(--md-border);border-radius:var(--md-radius-sm);background:var(--md-soft)}
.product-note-field span{font-weight:900;color:var(--text)}
.product-note-field textarea{width:100%;min-height:76px;border:1px solid var(--md-border);border-radius:var(--md-radius-sm);padding:12px;font:inherit;background:var(--card);resize:vertical;color:var(--text)}
#productModal .modal-bottom-fixed{padding-top:20px!important}
#productModal .modal-bottom-fixed .modal-actions{padding-top:6px!important}
#productModal .modal-base-price{display:inline-flex!important;align-items:center!important;gap:8px!important}
#productModal .modal-base-price del{color:rgba(255,255,255,.72)!important;font-size:.82em!important;font-weight:750!important}
#productModal .modal-base-price span{color:#fff!important;font-weight:950!important}
.cart-item small em{display:block;margin-top:3px;color:var(--muted);font-style:normal;font-weight:750}
@media(max-width:680px){.logo{max-width:124px!important;max-height:82px!important}.info-product-card{align-items:flex-start}.info-card-price{font-size:19px}}

/* v10.1 - uniforma testi card categorie/consigliati */
.category-featured .category-hero-card h2,
.category-with-image .category-hero-card h2,
.category-with-color .category-hero-card h2{
  font-size:clamp(26px,3.4vw,40px)!important;
  line-height:1!important;
  margin:0 0 6px!important;
  letter-spacing:-.035em!important;
  color:#fff!important;
  font-weight:950!important;
}
.category-featured .category-hero-card p,
.category-with-image .category-hero-card p,
.category-with-color .category-hero-card p{
  font-size:clamp(13px,1vw,15px)!important;
  line-height:1.28!important;
  margin:7px 0 0!important;
  color:rgba(255,255,255,.92)!important;
}
@media(max-width:680px){
  .category-featured .category-hero-card h2,
  .category-with-image .category-hero-card h2,
  .category-with-color .category-hero-card h2{
    font-size:clamp(28px,9vw,42px)!important;
    line-height:1!important;
    margin:0 0 6px!important;
  }
  .category-featured .category-hero-card p,
  .category-with-image .category-hero-card p,
  .category-with-color .category-hero-card p{
    font-size:14px!important;
    line-height:1.35!important;
  }
}

/* v10.2 - altezza card Consigliati uguale alle categorie senza foto */
.category-featured .category-hero-card{
  min-height:auto!important;
  height:auto!important;
  aspect-ratio:auto!important;
  padding:16px 22px!important;
  align-items:center!important;
}
.category-featured .category-hero-content{
  padding:0!important;
}
@media(max-width:980px){
  .category-featured .category-hero-card{
    min-height:auto!important;
    height:auto!important;
    aspect-ratio:auto!important;
    padding:16px 20px!important;
  }
}
@media(max-width:680px){
  .category-featured .category-hero-card{
    min-height:auto!important;
    height:auto!important;
    aspect-ratio:auto!important;
    padding:16px 18px!important;
  }
}

/* v10.3 - Consigliati identico alle categorie senza foto/colorate */
.category-featured{
  margin-top:22px!important;
}
.category-featured .category-hero-card.category-color-card{
  background:linear-gradient(135deg,var(--cat-color),color-mix(in srgb,var(--cat-color) 78%,#111827))!important;
  border-radius:var(--md-ui-radius)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:none!important;
  min-height:auto!important;
  height:auto!important;
  aspect-ratio:auto!important;
  padding:22px 24px!important;
  display:flex!important;
  align-items:center!important;
  margin:0 0 18px!important;
}
.category-featured .category-hero-card.category-color-card::after{
  display:none!important;
  content:none!important;
}
.category-featured .category-hero-content{
  padding:0!important;
  max-width:780px!important;
  text-shadow:none!important;
}
.category-featured .category-hero-card.category-color-card h2{
  font-size:clamp(26px,3.4vw,40px)!important;
  line-height:1!important;
  margin:0 0 7px!important;
  letter-spacing:-.035em!important;
  font-weight:950!important;
  color:#fff!important;
}
.category-featured .category-hero-card.category-color-card p{
  font-size:clamp(13px,1vw,15px)!important;
  line-height:1.35!important;
  margin:0!important;
  color:rgba(255,255,255,.92)!important;
}
@media(max-width:980px){
  .category-featured .category-hero-card.category-color-card{
    padding:18px 20px!important;
  }
  .category-featured .category-hero-card.category-color-card h2{
    font-size:30px!important;
  }
}
@media(max-width:680px){
  .category-featured .category-hero-card.category-color-card{
    padding:16px 18px!important;
    margin-bottom:14px!important;
  }
  .category-featured .category-hero-card.category-color-card h2{
    font-size:clamp(28px,9vw,42px)!important;
    line-height:1!important;
    margin:0 0 6px!important;
  }
  .category-featured .category-hero-card.category-color-card p{
    font-size:14px!important;
    line-height:1.35!important;
  }
}

/* v10.4 - card Consigliati e categorie senza foto: stessa identica metrica */
.category-featured,
.category-with-color{
  margin-top:22px!important;
}
.category-featured .category-hero-card.category-color-card,
.category-with-color .category-hero-card.category-color-card{
  min-height:auto!important;
  height:auto!important;
  aspect-ratio:auto!important;
  padding:22px 24px!important;
  margin:0 0 18px!important;
  display:flex!important;
  align-items:center!important;
  border-radius:var(--md-ui-radius)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:none!important;
  background:linear-gradient(135deg,var(--cat-color),color-mix(in srgb,var(--cat-color) 78%,#111827))!important;
}
.category-featured .category-hero-card.category-color-card::after,
.category-with-color .category-hero-card.category-color-card::after{
  display:none!important;
  content:none!important;
}
.category-featured .category-hero-content,
.category-with-color .category-hero-content{
  padding:0!important;
  max-width:780px!important;
  text-shadow:none!important;
}
.category-featured .category-hero-card.category-color-card h2,
.category-with-color .category-hero-card.category-color-card h2{
  font-size:clamp(26px,3.4vw,40px)!important;
  line-height:1!important;
  margin:0 0 7px!important;
  letter-spacing:-.035em!important;
  font-weight:950!important;
  color:#fff!important;
}
.category-featured .category-hero-card.category-color-card p,
.category-with-color .category-hero-card.category-color-card p{
  font-size:clamp(13px,1vw,15px)!important;
  line-height:1.35!important;
  margin:0!important;
  color:rgba(255,255,255,.92)!important;
}
@media(max-width:980px){
  .category-featured .category-hero-card.category-color-card,
  .category-with-color .category-hero-card.category-color-card{
    padding:18px 20px!important;
    margin:0 0 18px!important;
  }
  .category-featured .category-hero-card.category-color-card h2,
  .category-with-color .category-hero-card.category-color-card h2{
    font-size:30px!important;
  }
}
@media(max-width:680px){
  .category-featured,
  .category-with-color{
    margin-top:22px!important;
  }
  .category-featured .category-hero-card.category-color-card,
  .category-with-color .category-hero-card.category-color-card{
    padding:16px 18px!important;
    margin:0 0 14px!important;
    min-height:auto!important;
    height:auto!important;
    aspect-ratio:auto!important;
    align-items:center!important;
  }
  .category-featured .category-hero-card.category-color-card h2,
  .category-with-color .category-hero-card.category-color-card h2{
    font-size:clamp(28px,9vw,42px)!important;
    line-height:1!important;
    margin:0 0 6px!important;
  }
  .category-featured .category-hero-card.category-color-card p,
  .category-with-color .category-hero-card.category-color-card p{
    font-size:14px!important;
    line-height:1.35!important;
    margin:0!important;
  }
}

/* v10.5 - ripristina le categorie senza foto e adegua Consigliati a quello stile */
.category-with-color .category-hero-card.category-color-card,
.category-featured .category-hero-card.category-color-card{
  min-height:auto!important;
  height:auto!important;
  aspect-ratio:auto!important;
  padding:22px 24px!important;
  margin:0 0 18px!important;
  display:flex!important;
  align-items:center!important;
  border-radius:var(--md-ui-radius)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:none!important;
  background:linear-gradient(135deg,var(--cat-color),color-mix(in srgb,var(--cat-color) 78%,#111827))!important;
}
.category-with-color .category-hero-card.category-color-card::after,
.category-featured .category-hero-card.category-color-card::after{
  display:none!important;
  content:none!important;
}
.category-with-color .category-hero-content,
.category-featured .category-hero-content{
  padding:16px 22px!important;
  max-width:780px!important;
  text-shadow:none!important;
}
.category-with-color .category-hero-card.category-color-card h2,
.category-featured .category-hero-card.category-color-card h2{
  font-size:clamp(26px,3.4vw,40px)!important;
  line-height:1!important;
  margin:0!important;
  letter-spacing:-.035em!important;
  font-weight:950!important;
  color:#fff!important;
}
.category-with-color .category-hero-card.category-color-card p,
.category-featured .category-hero-card.category-color-card p{
  font-size:clamp(13px,1vw,15px)!important;
  line-height:1.35!important;
  margin:7px 0 0!important;
  color:rgba(255,255,255,.92)!important;
}
@media(max-width:980px){
  .category-with-color .category-hero-card.category-color-card,
  .category-featured .category-hero-card.category-color-card{
    padding:18px 20px!important;
    margin:0 0 18px!important;
  }
  .category-with-color .category-hero-content,
  .category-featured .category-hero-content{
    padding:16px 22px!important;
  }
  .category-with-color .category-hero-card.category-color-card h2,
  .category-featured .category-hero-card.category-color-card h2{
    font-size:30px!important;
  }
}
@media(max-width:680px){
  .category-with-color,
  .category-featured{
    margin-top:22px!important;
  }
  .category-with-color .category-hero-card.category-color-card,
  .category-featured .category-hero-card.category-color-card{
    padding:16px 18px!important;
    margin:0 0 14px!important;
    min-height:auto!important;
    height:auto!important;
    aspect-ratio:auto!important;
    align-items:center!important;
  }
  .category-with-color .category-hero-content,
  .category-featured .category-hero-content{
    padding:16px 22px!important;
  }
  .category-with-color .category-hero-card.category-color-card h2,
  .category-featured .category-hero-card.category-color-card h2{
    font-size:clamp(28px,9vw,42px)!important;
    line-height:1!important;
    margin:0!important;
  }
  .category-with-color .category-hero-card.category-color-card p,
  .category-featured .category-hero-card.category-color-card p{
    font-size:14px!important;
    line-height:1.35!important;
    margin:7px 0 0!important;
  }
}


/* v10.6 - correzioni frontend richieste */
#menuSearchbar.searchbar{position:relative!important;top:auto!important;z-index:18!important}
#clearSearch{font-size:0!important;line-height:1!important;color:var(--text)!important;background:var(--card)!important;border:1px solid var(--md-border)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
#clearSearch::before{content:'×'!important;display:block!important;width:auto!important;height:auto!important;background:none!important;color:currentColor!important;font-size:24px!important;font-weight:900!important;line-height:1!important}
.product{align-items:stretch!important}.p-info{display:flex!important;flex-direction:column!important;min-width:0!important}.product-action-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-top:auto!important;padding-top:10px!important}.product-button-slot{display:flex!important;gap:8px!important;flex-wrap:wrap!important}.product-action-row .price{margin:0!important;margin-left:auto!important;text-align:right!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;white-space:nowrap!important}.product-action-row .price strong{font-size:21px!important;font-weight:950!important;color:var(--primary)!important;letter-spacing:-.025em!important}.product-action-row .price del{font-size:17px!important;color:var(--muted)!important}.product-note-field{width:100%!important;margin:16px 0!important;padding:0!important;border:0!important;background:transparent!important}.product-note-field textarea{width:100%!important;display:block!important;box-sizing:border-box!important;border:1px solid var(--md-border)!important;border-radius:var(--md-radius-sm)!important;background:var(--card)!important}.modal-bottom-fixed .modal-actions{padding-top:18px!important}.modal-actions{padding-top:22px!important}.modal-base-price.has-sale{display:inline-flex!important;gap:8px!important;align-items:center!important}.modal-base-price.has-sale del{opacity:.74;color:rgba(255,255,255,.76)!important;font-size:.86em}.modal-base-price.has-sale span{font-weight:950!important}
@media(max-width:680px){.product-action-row{align-items:flex-end!important}.product-action-row .price strong{font-size:19px!important}.product-action-row .price del{font-size:15px!important}.product-button-slot .add{min-height:44px!important}.product-note-field{margin:14px 0!important}}

/* v10.7 - campo note prodotto allineato alle card opzioni nel popup */
#productModal .product-note-field{
  width:calc(100% - 48px)!important;
  margin:18px auto!important;
  padding:18px!important;
  border:1px solid var(--md-border)!important;
  border-radius:var(--md-radius)!important;
  background:var(--md-soft)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  box-sizing:border-box!important;
}
#productModal .product-note-field span{
  font-size:18px!important;
  line-height:1.1!important;
  font-weight:950!important;
  color:var(--text)!important;
}
#productModal .product-note-field textarea{
  width:100%!important;
  min-height:92px!important;
  display:block!important;
  box-sizing:border-box!important;
  border:1px solid var(--md-border)!important;
  border-radius:var(--md-radius-sm)!important;
  background:var(--card)!important;
  padding:14px 16px!important;
  font:inherit!important;
  resize:vertical!important;
  color:var(--text)!important;
}
#productModal .product-note-field textarea:focus{
  outline:3px solid color-mix(in srgb,var(--primary) 14%,transparent)!important;
  border-color:color-mix(in srgb,var(--primary) 34%,transparent)!important;
}
@media(max-width:680px){
  #productModal .product-note-field{
    width:calc(100% - 28px)!important;
    margin:16px auto!important;
    padding:14px!important;
    border-radius:var(--md-radius)!important;
  }
  #productModal .product-note-field span{font-size:17px!important;}
  #productModal .product-note-field textarea{min-height:86px!important;}
}

/* v10.8 product card layout: prezzo a destra, meta sotto descrizione */
.product{
  align-items:start!important;
}
.product .p-info{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
.product .meta{
  order:5!important;
  margin-top:10px!important;
  margin-bottom:0!important;
}
.product .product-action-row{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin-top:4px!important;
  padding-top:2px!important;
}
.product .product-button-slot{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
.product .product-action-row .price{
  margin:0!important;
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  white-space:nowrap!important;
  text-align:right!important;
  min-width:max-content!important;
}
.product .product-action-row .price strong{
  font-size:22px!important;
  font-weight:950!important;
  color:var(--primary)!important;
  letter-spacing:-.025em!important;
}
.product .product-action-row .price del{
  font-size:17px!important;
  color:var(--muted)!important;
}
.card-image-top .product .product-action-row,
.card-no-image .product .product-action-row{
  grid-column:1 / -1!important;
}
@media(max-width:680px){
  .product .product-action-row{
    align-items:center!important;
    gap:10px!important;
  }
  .product .product-action-row .price strong{font-size:20px!important;}
  .product .product-action-row .price del{font-size:15px!important;}
}

/* v10.10 - fix X azzera ricerca visibile */
#menuSearchbar #clearSearch{
  font-size:24px!important;
  line-height:1!important;
  font-weight:900!important;
  color:var(--text)!important;
  background:var(--card)!important;
  border:1px solid var(--md-border)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-indent:0!important;
  overflow:hidden!important;
}
#menuSearchbar #clearSearch::before,
#menuSearchbar #clearSearch::after,
#clearSearch::before,
#clearSearch::after{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  background:transparent!important;
}

/* v10.11 - Categoria con foto: overlay/gradiente basato sul colore categoria */
.category-with-image .category-hero-card{
  background-image:
    linear-gradient(135deg,
      color-mix(in srgb, var(--cat-color, var(--primary)) 72%, rgba(0,0,0,.70)),
      color-mix(in srgb, var(--cat-color, var(--primary)) 34%, rgba(0,0,0,.36))
    ),
    var(--cat-img) !important;
  background-size: cover !important;
  background-position: center !important;
}
.category-with-image .category-hero-card:hover{
  background-image:
    linear-gradient(135deg,
      color-mix(in srgb, var(--cat-color, var(--primary)) 82%, rgba(0,0,0,.62)),
      color-mix(in srgb, var(--cat-color, var(--primary)) 42%, rgba(0,0,0,.28))
    ),
    var(--cat-img) !important;
}

/* v10.13 - Layout frontend reali + densità applicata
   cards = Standard/attuale, compact = Compatto editoriale, luxury = Premium vetrina */
body.layout-standard .products{
  grid-template-columns:repeat(var(--cols),minmax(0,1fr));
}
body.layout-standard .product{
  grid-template-columns:1fr 150px;
}
body.layout-cards.card-no-image .product,
body.layout-standard .product:not(:has(> img)){
  grid-template-columns:1fr;
}

body.layout-compact .wrap{
  max-width:980px!important;
}
body.layout-compact .products{
  grid-template-columns:1fr!important;
  gap:12px!important;
}
body.layout-compact .product{
  grid-template-columns:1fr 112px!important;
  padding:14px!important;
  min-height:auto!important;
  border-radius:var(--md-radius)!important;
  background:color-mix(in srgb,var(--card) 96%,var(--bg))!important;
}
body.layout-compact .product > img{
  width:112px!important;
  height:112px!important;
  border-radius:calc(var(--md-radius) - 8px)!important;
}
body.layout-compact .product h3{
  font-size:20px!important;
  margin:6px 0 4px!important;
}
body.layout-compact .product p{
  font-size:14px!important;
  margin-bottom:6px!important;
}
body.layout-compact .product .meta,
body.layout-compact .product .chips{
  margin-top:6px!important;
}
body.layout-compact .product .product-action-row{
  margin-top:2px!important;
  padding-top:0!important;
}
body.layout-compact .product .add{
  min-height:40px!important;
  padding:10px 14px!important;
  border-radius:calc(var(--md-radius) - 10px)!important;
}
body.layout-compact .category{
  margin:18px 0 28px!important;
}
body.layout-compact .category-hero-card{
  min-height:auto!important;
  padding:14px 16px!important;
  margin-bottom:12px!important;
}
body.layout-compact .category-hero-content{
  padding:12px 18px!important;
}
body.layout-compact .category-hero-card h2{
  font-size:clamp(24px,3vw,34px)!important;
}
body.layout-compact .category-hero-card p{
  font-size:13px!important;
}

body.layout-luxury .wrap{
  max-width:1240px!important;
}
body.layout-luxury .products{
  grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
  gap:24px!important;
}
body.layout-luxury .product{
  grid-template-columns:1fr!important;
  padding:18px!important;
  border-radius:calc(var(--md-radius) + 4px)!important;
  border:1px solid color-mix(in srgb,var(--primary) 16%,transparent)!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card) 98%,#fff),color-mix(in srgb,var(--card) 92%,var(--bg)))!important;
}
body.layout-luxury .product > img{
  order:-1!important;
  width:100%!important;
  height:240px!important;
  border-radius:var(--md-radius)!important;
  margin-bottom:4px!important;
}
body.layout-luxury .product h3{
  font-size:clamp(24px,2.2vw,32px)!important;
}
body.layout-luxury .product .product-action-row{
  border-top:1px solid var(--md-border)!important;
  margin-top:14px!important;
  padding-top:14px!important;
}
body.layout-luxury .product .add{
  border-radius:999px!important;
  padding-inline:18px!important;
}
body.layout-luxury .category{
  margin:30px 0 58px!important;
}
body.layout-luxury .category-hero-card{
  border-radius:calc(var(--md-radius) + 8px)!important;
}
body.layout-luxury .category-hero-content{
  padding:24px 32px!important;
}

/* Densità realmente applicata */
body.density-comfortable .wrap{padding-top:28px!important;}
body.density-comfortable .products{gap:20px!important;}
body.density-comfortable .product{padding:18px!important;}
body.density-comfortable .category{margin-bottom:48px!important;}
body.density-comfortable .product h3{margin-top:10px!important;}
body.density-comfortable .meta span,
body.density-comfortable .chips span{padding:7px 10px!important;}

body.density-compact .wrap{padding-top:16px!important;padding-bottom:90px!important;}
body.density-compact .searchbar{padding:8px 0!important;}
body.density-compact .searchbar input{padding:12px 16px!important;}
body.density-compact .cat-nav{padding:8px 0 10px!important;gap:8px!important;}
body.density-compact .cat-nav a{padding:9px 13px!important;font-size:14px!important;}
body.density-compact .category{margin:16px 0 28px!important;scroll-margin-top:112px!important;}
body.density-compact .products{gap:12px!important;}
body.density-compact .product{padding:12px!important;gap:12px!important;}
body.density-compact .product > img{width:116px!important;height:116px!important;}
body.density-compact .product h3{font-size:20px!important;margin:6px 0 3px!important;}
body.density-compact .product p{font-size:14px!important;margin-bottom:6px!important;}
body.density-compact .meta,
body.density-compact .chips{gap:5px!important;margin:6px 0!important;}
body.density-compact .meta span,
body.density-compact .chips span{font-size:11px!important;padding:5px 8px!important;}
body.density-compact .product-action-row{padding-top:0!important;margin-top:0!important;}
body.density-compact .product .add{padding:10px 13px!important;min-height:40px!important;}
body.density-compact .product-action-row .price strong{font-size:19px!important;}
body.density-compact .product-action-row .price del{font-size:14px!important;}
body.density-compact .category-hero-card{padding:12px 14px!important;margin-bottom:12px!important;}
body.density-compact .category-hero-content{padding:12px 18px!important;}
body.density-compact .category-hero-card h2{font-size:clamp(24px,4vw,34px)!important;}
body.density-compact .category-hero-card p{font-size:13px!important;margin-top:5px!important;}

@media(max-width:980px){
  body.layout-standard .products{grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr));}
  body.layout-standard .product{grid-template-columns:1fr 120px;}
  body.layout-standard .product > img{width:120px;height:120px;}
  body.layout-luxury .products{grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))!important;}
  body.layout-luxury .product > img{height:210px!important;}
}
@media(max-width:680px){
  body.layout-standard .products,
  body.layout-compact .products,
  body.layout-luxury .products{grid-template-columns:1fr!important;}
  body.layout-standard .product,
  body.layout-compact .product{grid-template-columns:1fr 112px!important;}
  body.layout-luxury .product > img{height:190px!important;}
  body.density-compact .product > img{width:104px!important;height:104px!important;}
  body.density-compact .wrap{width:94vw!important;}
}


/* v10.14 - Layout realmente differenti
   Standard = stile corrente
   Lista rapida = lista operativa molto compatta
   Vetrina fotografica = card visuali con immagine dominante */

/* LISTA RAPIDA */
body.layout-compact .wrap{
  max-width:860px!important;
}
body.layout-compact .products{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
body.layout-compact .product{
  display:grid!important;
  grid-template-columns:72px 1fr!important;
  align-items:center!important;
  gap:12px!important;
  min-height:86px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  background:var(--card)!important;
  border:1px solid var(--md-border, rgba(0,0,0,.08))!important;
  box-shadow:none!important;
}
body.layout-compact.card-no-image .product,
body.layout-compact .product:not(:has(> img)){
  grid-template-columns:1fr!important;
}
body.layout-compact .product > img{
  width:72px!important;
  height:72px!important;
  border-radius:12px!important;
  object-fit:cover!important;
  order:0!important;
  margin:0!important;
}
body.layout-compact .product h3{
  font-size:17px!important;
  line-height:1.12!important;
  margin:0 0 3px!important;
}
body.layout-compact .product p{
  font-size:13px!important;
  line-height:1.25!important;
  margin:0 0 4px!important;
  max-width:62ch!important;
}
body.layout-compact .badge{
  font-size:10px!important;
  padding:4px 7px!important;
  margin-bottom:4px!important;
}
body.layout-compact .meta,
body.layout-compact .chips{
  gap:4px!important;
  margin:4px 0!important;
}
body.layout-compact .meta span,
body.layout-compact .chips span{
  font-size:10px!important;
  padding:4px 7px!important;
}
body.layout-compact .product-action-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-top:6px!important;
  padding-top:6px!important;
  border-top:1px solid var(--md-border, rgba(0,0,0,.08))!important;
}
body.layout-compact .product-action-row .price{
  margin:0!important;
  margin-left:auto!important;
  order:2!important;
}
body.layout-compact .product-action-row .price strong{
  font-size:18px!important;
}
body.layout-compact .product-action-row .price del{
  font-size:13px!important;
}
body.layout-compact .product .add{
  order:1!important;
  min-height:34px!important;
  padding:8px 12px!important;
  border-radius:12px!important;
  font-size:13px!important;
}
body.layout-compact .category{
  margin:14px 0 22px!important;
}
body.layout-compact .category-hero-card{
  min-height:0!important;
  padding:10px 13px!important;
  margin-bottom:10px!important;
  border-radius:14px!important;
}
body.layout-compact .category-hero-content{
  padding:8px 12px!important;
}
body.layout-compact .category-hero-card h2{
  font-size:22px!important;
  line-height:1.05!important;
}
body.layout-compact .category-hero-card p{
  font-size:12px!important;
  margin-top:3px!important;
}
body.layout-compact .cat-nav a{
  padding:8px 12px!important;
  font-size:13px!important;
}

/* VETRINA FOTOGRAFICA */
body.layout-luxury .wrap{
  max-width:1280px!important;
}
body.layout-luxury .products{
  display:grid!important;
  grid-template-columns:repeat(var(--cols),minmax(260px,1fr))!important;
  gap:28px!important;
}
body.layout-luxury .product{
  display:flex!important;
  flex-direction:column!important;
  min-height:100%!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:28px!important;
  background:var(--card)!important;
  border:1px solid var(--md-border, rgba(0,0,0,.08))!important;
  box-shadow:none!important;
}
body.layout-luxury .product > img{
  order:-1!important;
  width:100%!important;
  height:260px!important;
  border-radius:0!important;
  object-fit:cover!important;
  margin:0!important;
}
body.layout-luxury .product > :not(img){
  margin-left:22px!important;
  margin-right:22px!important;
}
body.layout-luxury .product .badge{
  align-self:flex-start!important;
  margin-top:22px!important;
  margin-bottom:2px!important;
}
body.layout-luxury .product h3{
  font-size:clamp(28px,2.6vw,40px)!important;
  line-height:.98!important;
  margin-top:10px!important;
  margin-bottom:8px!important;
}
body.layout-luxury .product p{
  font-size:16px!important;
  line-height:1.45!important;
  margin-bottom:12px!important;
}
body.layout-luxury .meta span,
body.layout-luxury .chips span{
  font-size:12px!important;
  padding:7px 10px!important;
}
body.layout-luxury .product-action-row{
  margin-top:auto!important;
  padding:18px 22px 22px!important;
  border-top:1px solid var(--md-border, rgba(0,0,0,.08))!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
body.layout-luxury .product-action-row .price{
  order:1!important;
  margin:0!important;
}
body.layout-luxury .product-action-row .price strong{
  font-size:28px!important;
}
body.layout-luxury .product .add{
  order:2!important;
  border-radius:999px!important;
  min-height:48px!important;
  padding:12px 18px!important;
}
body.layout-luxury .category{
  margin:38px 0 70px!important;
}
body.layout-luxury .category-hero-card{
  min-height:220px!important;
  border-radius:30px!important;
  padding:0!important;
  overflow:hidden!important;
}
body.layout-luxury .category-hero-content{
  min-height:220px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  padding:34px 38px!important;
}
body.layout-luxury .category-hero-card h2{
  font-size:clamp(42px,5vw,76px)!important;
  line-height:.92!important;
}
body.layout-luxury .category-hero-card p{
  font-size:clamp(17px,2vw,24px)!important;
  margin-top:10px!important;
}
body.layout-luxury .cat-nav a{
  padding:13px 20px!important;
  border-radius:999px!important;
}

@media(max-width:980px){
  body.layout-compact .product{grid-template-columns:64px 1fr!important;}
  body.layout-compact .product > img{width:64px!important;height:64px!important;}
  body.layout-luxury .products{grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))!important;gap:22px!important;}
  body.layout-luxury .product > img{height:220px!important;}
  body.layout-luxury .category-hero-card,
  body.layout-luxury .category-hero-content{min-height:190px!important;}
}
@media(max-width:680px){
  body.layout-compact .products{gap:7px!important;}
  body.layout-compact .product{grid-template-columns:58px 1fr!important;padding:9px!important;gap:10px!important;}
  body.layout-compact .product > img{width:58px!important;height:58px!important;}
  body.layout-compact .product-action-row{gap:8px!important;}
  body.layout-compact .product .add{font-size:12px!important;padding:8px 10px!important;}
  body.layout-luxury .products{grid-template-columns:1fr!important;gap:20px!important;}
  body.layout-luxury .product > img{height:230px!important;}
  body.layout-luxury .product > :not(img){margin-left:18px!important;margin-right:18px!important;}
  body.layout-luxury .product-action-row{padding:16px 18px 20px!important;}
  body.layout-luxury .category-hero-card,
  body.layout-luxury .category-hero-content{min-height:210px!important;}
  body.layout-luxury .category-hero-content{padding:28px 24px!important;}
}

/* v10.15 - Lista rapida = vero menu classico da ristorante
   Layout essenziale: categoria, prodotto + prezzo, descrizione solo se presente, azione sotto.
   Nessuna foto, badge, allergeni, kcal o chip nel frontend. */
body.layout-compact .wrap{
  max-width:920px!important;
}
body.layout-compact .category{
  margin:30px 0 38px!important;
}
body.layout-compact .category-hero-card,
body.layout-compact .category-with-image .category-hero-card,
body.layout-compact .featured-category-card{
  min-height:0!important;
  padding:0 0 10px!important;
  margin:0 0 12px!important;
  border-radius:0!important;
  border:0!important;
  background:none!important;
  background-image:none!important;
  color:var(--text)!important;
  overflow:visible!important;
}
body.layout-compact .category-hero-content,
body.layout-compact .featured-category-card .category-hero-content{
  min-height:0!important;
  padding:0!important;
  display:block!important;
  color:var(--text)!important;
}
body.layout-compact .category-hero-card h2,
body.layout-compact .featured-category-card h2{
  color:var(--text)!important;
  font-family:inherit!important;
  font-size:clamp(24px,3.2vw,34px)!important;
  line-height:1.05!important;
  font-weight:950!important;
  margin:0!important;
  letter-spacing:-.02em!important;
}
body.layout-compact .category-hero-card p,
body.layout-compact .featured-category-card p{
  display:none!important;
}
body.layout-compact .products{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
}
body.layout-compact .product,
body.layout-compact.card-no-image .product,
body.layout-compact .product:not(:has(> img)){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  gap:0 18px!important;
  min-height:0!important;
  padding:14px 0!important;
  border:0!important;
  border-bottom:1px solid var(--md-border, rgba(0,0,0,.10))!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.layout-compact .product:last-child{
  border-bottom:0!important;
}
body.layout-compact .product > img,
body.layout-compact .product .product-badges,
body.layout-compact .product .badge,
body.layout-compact .product .meta,
body.layout-compact .product .chips{
  display:none!important;
}
body.layout-compact .product .p-info{
  grid-column:1!important;
  grid-row:1!important;
  display:block!important;
  min-width:0!important;
}
body.layout-compact .product h3{
  font-size:18px!important;
  line-height:1.18!important;
  font-weight:900!important;
  margin:0!important;
  color:var(--text)!important;
  letter-spacing:-.01em!important;
}
body.layout-compact .product p{
  font-size:14px!important;
  line-height:1.35!important;
  margin:5px 0 0!important;
  max-width:72ch!important;
  color:var(--muted)!important;
}
body.layout-compact .product p:empty{
  display:none!important;
}
body.layout-compact .product .product-action-row{
  display:contents!important;
  border-top:0!important;
  margin:0!important;
  padding:0!important;
}
body.layout-compact .product .product-action-row .price{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  margin:0!important;
  padding:0!important;
  min-width:max-content!important;
  text-align:right!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  gap:7px!important;
  white-space:nowrap!important;
}
body.layout-compact .product .product-action-row .price strong{
  font-size:18px!important;
  line-height:1.18!important;
  font-weight:950!important;
  color:var(--text)!important;
}
body.layout-compact .product .product-action-row .price del{
  font-size:13px!important;
  color:var(--muted)!important;
}
body.layout-compact .product .product-button-slot{
  grid-column:1 / -1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  margin-top:9px!important;
}
body.layout-compact .product .add{
  min-height:34px!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
}
body.layout-compact .cat-nav a{
  padding:8px 12px!important;
  font-size:13px!important;
}

@media(max-width:680px){
  body.layout-compact .wrap{width:92vw!important;}
  body.layout-compact .category{margin:24px 0 32px!important;}
  body.layout-compact .product,
  body.layout-compact.card-no-image .product,
  body.layout-compact .product:not(:has(> img)){
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:0 12px!important;
    padding:13px 0!important;
  }
  body.layout-compact .product h3{font-size:17px!important;}
  body.layout-compact .product p{font-size:13px!important;line-height:1.32!important;}
  body.layout-compact .product .product-action-row .price strong{font-size:17px!important;}
  body.layout-compact .product .add{font-size:12px!important;padding:8px 12px!important;}
}

/* v10.16 - Lista rapida: intestazioni categoria in card compatta, senza immagine di sfondo.
   Anche le categorie con foto usano solo il colore categoria, per coerenza con le card informative. */
body.layout-compact .category-hero-card,
body.layout-compact .category-with-image .category-hero-card,
body.layout-compact .category-with-color .category-hero-card,
body.layout-compact .category-featured .category-hero-card,
body.layout-compact .featured-category-card{
  min-height:0!important;
  padding:0!important;
  margin:0 0 14px!important;
  border-radius:var(--md-radius)!important;
  border:1px solid color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#ffffff 30%)!important;
  background:var(--cat-color,var(--primary))!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#fff!important;
  overflow:hidden!important;
  display:block!important;
}
body.layout-compact .category-hero-card::before,
body.layout-compact .category-hero-card::after,
body.layout-compact .category-with-image .category-hero-card::before,
body.layout-compact .category-with-image .category-hero-card::after{
  display:none!important;
  content:none!important;
}
body.layout-compact .category-hero-content,
body.layout-compact .featured-category-card .category-hero-content{
  min-height:0!important;
  padding:16px 18px!important;
  display:block!important;
  color:#fff!important;
}
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2{
  color:#fff!important;
  font-family:inherit!important;
  font-size:22px!important;
  line-height:1.12!important;
  font-weight:950!important;
  margin:0!important;
  letter-spacing:-.02em!important;
}
body.layout-compact .category-hero-card p,
body.layout-compact .category-featured .category-hero-card p,
body.layout-compact .featured-category-card p{
  display:none!important;
}
@media(max-width:680px){
  body.layout-compact .category-hero-content,
  body.layout-compact .featured-category-card .category-hero-content{
    padding:14px 16px!important;
  }
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2{
    font-size:20px!important;
  }
}

/* v10.17 - Lista rapida: prodotti in card come Coperto + categorie colorate grandi */
body.layout-compact .category{
  margin:30px 0 36px!important;
}
body.layout-compact .category-hero-card,
body.layout-compact .category-with-image .category-hero-card,
body.layout-compact .category-with-color .category-hero-card,
body.layout-compact .category-featured .category-hero-card,
body.layout-compact .featured-category-card{
  min-height:0!important;
  padding:0!important;
  margin:0 0 16px!important;
  border-radius:var(--md-radius)!important;
  border:1px solid color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#ffffff 30%)!important;
  background:var(--cat-color,var(--primary))!important;
  background-image:none!important;
  box-shadow:none!important;
  overflow:hidden!important;
  color:#fff!important;
}
body.layout-compact .category-hero-card::before,
body.layout-compact .category-hero-card::after,
body.layout-compact .category-with-image .category-hero-card::before,
body.layout-compact .category-with-image .category-hero-card::after,
body.layout-compact .category-featured .category-hero-card::before,
body.layout-compact .category-featured .category-hero-card::after{
  display:none!important;
  content:none!important;
}
body.layout-compact .category-hero-content,
body.layout-compact .featured-category-card .category-hero-content{
  min-height:0!important;
  padding:34px 38px!important;
  color:#fff!important;
}
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2{
  color:#fff!important;
  font-size:clamp(44px,6vw,68px)!important;
  line-height:.96!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
  margin:0!important;
}
body.layout-compact .category-hero-card p,
body.layout-compact .category-featured .category-hero-card p,
body.layout-compact .featured-category-card p{
  display:none!important;
}
body.layout-compact .products{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
}
body.layout-compact .product,
body.layout-compact.card-no-image .product,
body.layout-compact .product:not(:has(> img)){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  column-gap:18px!important;
  row-gap:10px!important;
  min-height:0!important;
  padding:20px 22px!important;
  border:1px solid var(--md-border)!important;
  border-radius:var(--md-radius)!important;
  background:var(--card)!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
body.layout-compact .product:last-child{
  border-bottom:1px solid var(--md-border)!important;
}
body.layout-compact .product > img,
body.layout-compact .product .product-badges,
body.layout-compact .product .badge,
body.layout-compact .product .meta,
body.layout-compact .product .chips{
  display:none!important;
}
body.layout-compact .product .p-info{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  display:block!important;
}
body.layout-compact .product h3{
  font-size:clamp(22px,2.6vw,30px)!important;
  line-height:1.08!important;
  font-weight:950!important;
  margin:0!important;
  color:var(--text)!important;
  letter-spacing:-.035em!important;
}
body.layout-compact .product p{
  font-size:15px!important;
  line-height:1.36!important;
  color:var(--muted)!important;
  margin:8px 0 0!important;
  max-width:70ch!important;
}
body.layout-compact .product p:empty{display:none!important;}
body.layout-compact .product .product-action-row{
  display:contents!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.layout-compact .product .product-action-row .price{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:end!important;
  min-width:max-content!important;
  margin:2px 0 0!important;
  padding:0!important;
  text-align:right!important;
  display:flex!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  gap:8px!important;
  white-space:nowrap!important;
}
body.layout-compact .product .product-action-row .price strong{
  font-size:clamp(24px,2.8vw,32px)!important;
  line-height:1!important;
  font-weight:950!important;
  color:var(--text)!important;
}
body.layout-compact .product .product-action-row .price del{
  font-size:16px!important;
  color:var(--muted)!important;
}
body.layout-compact .product .product-button-slot{
  grid-column:1 / -1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin-top:4px!important;
  gap:8px!important;
}
body.layout-compact .product .add{
  min-height:42px!important;
  padding:11px 16px!important;
  border-radius:var(--md-radius-sm)!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1!important;
}
body.layout-compact .cover-charge-info .info-product-card{
  padding:20px 22px!important;
  border-radius:var(--md-radius)!important;
}
@media(max-width:680px){
  body.layout-compact .category{margin:26px 0 34px!important;}
  body.layout-compact .category-hero-content,
  body.layout-compact .featured-category-card .category-hero-content{
    padding:32px 34px!important;
  }
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2{
    font-size:clamp(42px,12vw,62px)!important;
  }
  body.layout-compact .product,
  body.layout-compact.card-no-image .product,
  body.layout-compact .product:not(:has(> img)){
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:18px!important;
    column-gap:14px!important;
    row-gap:10px!important;
  }
  body.layout-compact .product h3{font-size:24px!important;}
  body.layout-compact .product p{font-size:14px!important;margin-top:7px!important;}
  body.layout-compact .product .product-action-row .price strong{font-size:24px!important;}
  body.layout-compact .product .product-action-row .price del{font-size:14px!important;}
  body.layout-compact .product .add{min-height:40px!important;font-size:13px!important;padding:10px 14px!important;}
}

/* v10.18 - Lista rapida: titoli categoria completamente uniformi allo stile categoria senza foto */
body.layout-compact .category-featured,
body.layout-compact .category-with-image,
body.layout-compact .category-with-color{
  margin:26px 0 34px!important;
}
body.layout-compact .category-featured .category-hero-card,
body.layout-compact .category-with-image .category-hero-card,
body.layout-compact .category-with-color .category-hero-card,
body.layout-compact .featured-category-card.category-hero-card{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:auto!important;
  padding:0!important;
  border-radius:var(--md-radius)!important;
  background-image:linear-gradient(135deg,var(--cat-color),color-mix(in srgb,var(--cat-color) 78%,#111827))!important;
  background-color:var(--cat-color)!important;
  background-size:cover!important;
  background-position:center!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
body.layout-compact .category-featured .category-hero-card::after,
body.layout-compact .category-with-image .category-hero-card::after,
body.layout-compact .category-with-color .category-hero-card::after,
body.layout-compact .featured-category-card.category-hero-card::after{
  display:none!important;
  content:none!important;
}
body.layout-compact .category-featured .category-hero-content,
body.layout-compact .category-with-image .category-hero-content,
body.layout-compact .category-with-color .category-hero-content,
body.layout-compact .featured-category-card .category-hero-content{
  padding:32px 34px!important;
  max-width:none!important;
  width:100%!important;
  color:#fff!important;
  text-shadow:none!important;
}
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .category-with-image .category-hero-card h2,
body.layout-compact .category-with-color .category-hero-card h2,
body.layout-compact .featured-category-card h2{
  font-size:clamp(42px,6vw,76px)!important;
  line-height:.96!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
  margin:0!important;
  color:#fff!important;
}
body.layout-compact .category-featured .category-hero-card p,
body.layout-compact .category-with-image .category-hero-card p,
body.layout-compact .category-with-color .category-hero-card p,
body.layout-compact .featured-category-card p{
  display:none!important;
}
@media(max-width:680px){
  body.layout-compact .category-featured .category-hero-content,
  body.layout-compact .category-with-image .category-hero-content,
  body.layout-compact .category-with-color .category-hero-content,
  body.layout-compact .featured-category-card .category-hero-content{
    padding:32px 34px!important;
  }
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .category-with-image .category-hero-card h2,
  body.layout-compact .category-with-color .category-hero-card h2,
  body.layout-compact .featured-category-card h2{
    font-size:clamp(42px,12vw,62px)!important;
  }
}

/* v10.19 - Border radius pulsanti frontend uniformato */
:root{--md-button-radius:var(--md-radius, var(--radius, 18px));}
button,
a.add,
button.add,
.btn-primary,
.btn-secondary,
.detail-only,
.unavailable-btn,
#sendOrder,
#clearSearch,
.modal-close,
.cart-close,
.cart-item button,
.qty button,
.option-qty button,
.product button,
.cart-panel button,
.modal-actions button,
.order-success-box button,
.sticky-category-bar .cat-nav a,
.cat-nav a{
  border-radius:var(--md-button-radius)!important;
}

/* I pulsanti rotondi restano rotondi solo dove ha senso come controlli circolari */
.qty button,
.option-qty button{
  border-radius:999px!important;
}

/* Eccezione richiesta: carrello e torna-su nel modello mobile restano tondi */
@media(max-width:680px){
  .cart>button.cart-fab,
  .cart>button,
  .back-top{
    border-radius:999px!important;
  }
}

/* v10.20 - categorie con foto: overlay meno opaco e resa immagine più nitida */
.category-with-image .category-hero-card{
  background-image:
    linear-gradient(135deg,
      color-mix(in srgb, var(--cat-color, var(--primary)) 38%, rgba(0,0,0,.38)),
      color-mix(in srgb, var(--cat-color, var(--primary)) 14%, rgba(0,0,0,.14)) 62%,
      rgba(0,0,0,.06)
    ),
    var(--cat-img) !important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  image-rendering:auto!important;
}
.category-with-image .category-hero-card:hover{
  background-image:
    linear-gradient(135deg,
      color-mix(in srgb, var(--cat-color, var(--primary)) 46%, rgba(0,0,0,.32)),
      color-mix(in srgb, var(--cat-color, var(--primary)) 18%, rgba(0,0,0,.10)) 62%,
      rgba(0,0,0,.03)
    ),
    var(--cat-img) !important;
  background-size:cover!important;
  background-position:center center!important;
}
.category-with-image .category-hero-card::after{
  display:none!important;
  content:none!important;
}
.category-with-image .category-hero-content{
  text-shadow:0 3px 16px rgba(0,0,0,.34)!important;
}

/* v10.21 - icone caratteristiche prodotto */
.product-title-line,
.modal-product-title-line{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.product-feature-icons{
  display:inline-flex;
  align-items:center;
  gap:6px;
  vertical-align:middle;
}
.feature-icon{
  width:24px;
  height:24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:color-mix(in srgb,var(--primary) 8%,#fff);
  color:var(--primary);
  border:1px solid color-mix(in srgb,var(--primary) 14%,transparent);
  flex:0 0 auto;
}
.feature-icon svg{width:13px;height:13px;display:block}
.feature-vegetarian,.feature-vegan{color:#15803d;background:rgba(22,163,74,.09);border-color:rgba(22,163,74,.18)}
.feature-gluten-free{color:#92400e;background:rgba(217,119,6,.09);border-color:rgba(217,119,6,.18)}
.feature-spicy{color:#b91c1c;background:rgba(220,38,38,.09);border-color:rgba(220,38,38,.18)}
.modal-feature-icons .feature-icon{width:28px;height:28px}.modal-feature-icons .feature-icon svg{width:15px;height:15px}
body.layout-compact .product-feature-icons{display:none!important}
@media(max-width:680px){.feature-icon{width:22px;height:22px}.feature-icon svg{width:12px;height:12px}.modal-feature-icons .feature-icon{width:25px;height:25px}}


/* v10.22 - icone prodotto uniformi e non sballate */
.product-title-line{align-items:center}
.product-feature-icons{display:inline-flex;align-items:center;gap:5px;margin-left:8px;line-height:1;white-space:nowrap;vertical-align:middle;flex:0 0 auto}
.feature-icon{width:22px;height:22px;min-width:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:1;flex:0 0 22px;padding:0;overflow:hidden}
.feature-icon svg{width:14px;height:14px;display:block;fill:none!important;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.feature-icon svg path{fill:none!important;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.feature-vegetarian,.feature-vegan{color:#15803d;background:rgba(22,163,74,.10);border-color:rgba(22,163,74,.22)}
.feature-gluten-free{color:#92400e;background:rgba(217,119,6,.10);border-color:rgba(217,119,6,.22)}
.feature-spicy{color:#b91c1c;background:rgba(220,38,38,.10);border-color:rgba(220,38,38,.22)}
.modal-feature-icons{margin-left:10px}.modal-feature-icons .feature-icon{width:24px;height:24px;min-width:24px;flex-basis:24px}.modal-feature-icons .feature-icon svg{width:15px;height:15px}
@media(max-width:680px){.product-feature-icons{gap:4px;margin-left:6px}.feature-icon{width:20px;height:20px;min-width:20px;flex-basis:20px}.feature-icon svg{width:12.5px;height:12.5px}.modal-feature-icons .feature-icon{width:22px;height:22px;min-width:22px;flex-basis:22px}.modal-feature-icons .feature-icon svg{width:13.5px;height:13.5px}}


/* v10.23 - Product dietary icons via Font Awesome */
.feature-icon svg{display:none!important}
.feature-icon i{font-size:13px;line-height:1;display:block;color:currentColor}
.modal-feature-icons .feature-icon i{font-size:15px}
@media(max-width:680px){.feature-icon i{font-size:12.5px}.modal-feature-icons .feature-icon i{font-size:13.5px}}


/* v10.24 - legenda caratteristiche prodotto prima dei consigliati */
.product-flags-legend{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 10px;
  padding:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.2;
}
.product-flags-legend span{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 9px;
  border:1px solid rgba(17,24,39,.10);
  border-radius:var(--radius);
  background:rgba(255,255,255,.58);
  white-space:nowrap;
}
.product-flags-legend i{
  width:13px;
  min-width:13px;
  text-align:center;
  font-size:12px;
  color:var(--primary);
  line-height:1;
}
body.layout-compact .product-flags-legend{
  margin-bottom:8px;
  gap:6px;
}
body.layout-compact .product-flags-legend span{
  padding:5px 8px;
  font-size:11.5px;
}
@media(max-width:680px){
  .product-flags-legend{
    gap:6px;
    margin-bottom:8px;
    font-size:11.5px;
  }
  .product-flags-legend span{
    padding:5px 8px;
  }
  .product-flags-legend i{
    font-size:11.5px;
  }
}


/* v10.25 - legenda caratteristiche prodotto con colori assegnati */
.product-flags-legend .legend-gluten-free{
  color:#92400e;
  border-color:rgba(217,119,6,.22);
  background:rgba(217,119,6,.10);
}
.product-flags-legend .legend-vegetarian,
.product-flags-legend .legend-vegan{
  color:#15803d;
  border-color:rgba(22,163,74,.22);
  background:rgba(22,163,74,.10);
}
.product-flags-legend .legend-spicy{
  color:#b91c1c;
  border-color:rgba(220,38,38,.22);
  background:rgba(220,38,38,.10);
}
.product-flags-legend .legend-gluten-free i,
.product-flags-legend .legend-vegetarian i,
.product-flags-legend .legend-vegan i,
.product-flags-legend .legend-spicy i{
  color:currentColor;
}


/* v10.26 - verdi distinti per Vegetariano e Vegano */
.feature-vegetarian{
  color:#16a34a;
  background:rgba(34,197,94,.10);
  border-color:rgba(34,197,94,.24);
}
.feature-vegan{
  color:#166534;
  background:rgba(22,101,52,.10);
  border-color:rgba(22,101,52,.24);
}
.product-flags-legend .legend-vegetarian{
  color:#16a34a;
  border-color:rgba(34,197,94,.24);
  background:rgba(34,197,94,.10);
}
.product-flags-legend .legend-vegan{
  color:#166534;
  border-color:rgba(22,101,52,.24);
  background:rgba(22,101,52,.10);
}

/* v10.27 - informazioni attività prima del footer */
.business-info-block{
  width:min(1180px,92vw) !important;
  max-width:min(1180px,92vw) !important;
  margin:28px auto 18px;
  padding:24px 18px;
  border-radius:var(--radius);
  background:var(--card);
  border:1px solid var(--line);
  text-align:center;
  color:var(--text);
}
.business-info-logo{
  display:block;
  max-width:132px;
  max-height:92px;
  object-fit:contain;
  margin:0 auto 14px;
}
.business-info-lines{
  display:grid;
  gap:8px;
  justify-items:center;
  color:var(--muted);
  font-size:14px;
  line-height:1.45;
}
.business-info-lines p{
  margin:0;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  gap:8px;
  max-width:720px;
}
.business-info-lines i{
  margin-top:3px;
  color:var(--primary);
  width:16px;
  text-align:center;
  flex:0 0 16px;
}
.business-info-lines a{
  color:var(--text);
  font-weight:800;
  text-decoration:none;
}
.business-info-lines a:hover{text-decoration:underline;}
.business-socials{
  display:flex;
  justify-content:center;
  gap:10px;
  margin-top:16px;
}
.business-socials a{
  width:36px;
  height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius);
  background:var(--primary);
  color:#fff;
  text-decoration:none;
  border:1px solid transparent;
  transition:transform .18s ease, opacity .18s ease;
}
.business-socials a:hover{transform:translateY(-1px);opacity:.9;}
@media(max-width:680px){
  .business-info-block{width:94vw!important;max-width:94vw!important;margin-top:22px;padding:20px 14px;}
  .business-info-logo{max-width:112px;max-height:78px;}
  .business-info-lines{font-size:13px;}
  .business-info-lines p{align-items:flex-start;}
}


/* v1.6 - categorie accordion */
.category-mode-accordion .category[data-category-section] .category-hero-card{
  cursor:pointer;
  user-select:none;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.category-mode-accordion .category[data-category-section] .category-hero-content{min-width:0;}
.category-mode-accordion .category-products{
  display:none!important;
  margin-top:14px!important;
}
.category-mode-accordion .category.accordion-open .category-products{
  display:grid!important;
}
.category-mode-accordion .category-accordion-icon{
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:var(--radius)!important;
  background:rgba(255,255,255,.18);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:22px;
  line-height:1;
  border:1px solid rgba(255,255,255,.24);
}
.category-mode-accordion .category-accordion-icon::before{content:'+';}
.category-mode-accordion .category.accordion-open .category-accordion-icon::before{content:'−';}
.category-mode-normal .category-accordion-icon{display:none!important;}
@media(max-width:680px){
 .category-mode-accordion .category-accordion-icon{width:30px;height:30px;font-size:20px;}
}


/* v1.8 - Accordion automatico categorie */
.category-mode-accordion_auto .category[data-category-section] .category-hero-card{
  cursor:pointer;
  user-select:none;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
.category-mode-accordion_auto .category[data-category-section] .category-hero-content{min-width:0;}
.category-mode-accordion_auto .category-products{
  display:none!important;
  margin-top:14px!important;
}
.category-mode-accordion_auto .category.accordion-open .category-products{
  display:grid!important;
}
.category-mode-accordion_auto .category-accordion-icon{
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:var(--radius)!important;
  background:rgba(255,255,255,.18);
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:22px;
  line-height:1;
  border:1px solid rgba(255,255,255,.24);
}
.category-mode-accordion_auto .category-accordion-icon::before{content:'+';}
.category-mode-accordion_auto .category.accordion-open .category-accordion-icon::before{content:'−';}
@media(max-width:680px){
 .category-mode-accordion_auto .category-accordion-icon{width:30px;height:30px;font-size:20px;}
}

/* v1.9 - fix definitivo accordion su Standard, Lista rapida e Vetrina fotografica
   Le regole dei layout compact/luxury arrivano dopo quelle accordion e sovrascrivevano display:none/grid.
   Questo blocco finale ripristina la chiusura/apertura corretta e stabilizza l'icona. */
body.category-mode-accordion .category[data-category-section] .category-hero-card,
body.category-mode-accordion_auto .category[data-category-section] .category-hero-card{
  cursor:pointer!important;
  user-select:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}
body.category-mode-accordion .category[data-category-section] .category-hero-content,
body.category-mode-accordion_auto .category[data-category-section] .category-hero-content{
  flex:1 1 auto!important;
  min-width:0!important;
}
body.category-mode-accordion .category[data-category-section] .category-products,
body.category-mode-accordion_auto .category[data-category-section] .category-products{
  display:none!important;
  margin-top:14px!important;
}
body.category-mode-accordion.layout-cards .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto.layout-cards .category[data-category-section].accordion-open .category-products{
  display:grid!important;
  grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
}
body.category-mode-accordion.layout-compact .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto.layout-compact .category[data-category-section].accordion-open .category-products{
  display:flex!important;
  flex-direction:column!important;
}
body.category-mode-accordion.layout-luxury .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto.layout-luxury .category[data-category-section].accordion-open .category-products{
  display:grid!important;
  grid-template-columns:repeat(var(--cols),minmax(260px,1fr))!important;
}
body.category-mode-accordion .category-accordion-icon,
body.category-mode-accordion_auto .category-accordion-icon{
  position:relative!important;
  z-index:3!important;
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  margin-left:auto!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.22)!important;
  color:#fff!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-weight:900!important;
  font-size:22px!important;
  line-height:1!important;
  border:1px solid rgba(255,255,255,.32)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.18)!important;
}
body.category-mode-accordion .category-accordion-icon::before,
body.category-mode-accordion_auto .category-accordion-icon::before{content:'+'!important;}
body.category-mode-accordion .category.accordion-open .category-accordion-icon::before,
body.category-mode-accordion_auto .category.accordion-open .category-accordion-icon::before{content:'−'!important;}
body.category-mode-normal .category-accordion-icon{display:none!important;}
@media(max-width:980px){
  body.category-mode-accordion.layout-luxury .category[data-category-section].accordion-open .category-products,
  body.category-mode-accordion_auto.layout-luxury .category[data-category-section].accordion-open .category-products{
    grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  body.category-mode-accordion.layout-cards .category[data-category-section].accordion-open .category-products,
  body.category-mode-accordion_auto.layout-cards .category[data-category-section].accordion-open .category-products,
  body.category-mode-accordion.layout-luxury .category[data-category-section].accordion-open .category-products,
  body.category-mode-accordion_auto.layout-luxury .category[data-category-section].accordion-open .category-products{
    grid-template-columns:1fr!important;
  }
  body.category-mode-accordion .category-accordion-icon,
  body.category-mode-accordion_auto .category-accordion-icon{
    flex-basis:30px!important;
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
    min-height:30px!important;
    font-size:20px!important;
  }
}

/* v1.9.1 - allineamento uniforme icone accordion categorie
   Posiziona +/− in modo assoluto dentro la card, identico su Vetrina fotografica, Lista rapida e Standard. */
body.category-mode-accordion .category[data-category-section] .category-hero-card,
body.category-mode-accordion_auto .category[data-category-section] .category-hero-card{
  position:relative!important;
  padding-right:76px!important;
}
body.category-mode-accordion .category-accordion-icon,
body.category-mode-accordion_auto .category-accordion-icon{
  position:absolute!important;
  right:22px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  margin:0!important;
}
@media(max-width:680px){
  body.category-mode-accordion .category[data-category-section] .category-hero-card,
  body.category-mode-accordion_auto .category[data-category-section] .category-hero-card{
    padding-right:62px!important;
  }
  body.category-mode-accordion .category-accordion-icon,
  body.category-mode-accordion_auto .category-accordion-icon{
    right:16px!important;
  }
}

/* v1.11.0 - Layout Lusso Elite: ristoranti, bar e hotel premium */
body.layout-grand_luxury{
  --lux-bg:#080806;
  --lux-panel:#11100c;
  --lux-panel-soft:#19170f;
  --lux-gold:color-mix(in srgb,var(--accent) 72%,#d8b46a);
  --lux-gold-soft:color-mix(in srgb,var(--accent) 38%,#f5dfaa 62%);
  --lux-cream:#f7f0df;
  --lux-muted:rgba(247,240,223,.68);
  background:
    radial-gradient(circle at 18% 4%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 30vw),
    radial-gradient(circle at 82% 10%,rgba(255,255,255,.07),transparent 28vw),
    linear-gradient(180deg,#050504 0%,#0b0a07 48%,#080806 100%)!important;
  color:var(--lux-cream)!important;
}
body.layout-grand_luxury.font-system,
body.layout-grand_luxury.font-serif,
body.layout-grand_luxury.font-rounded{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
}
body.layout-grand_luxury::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.55;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent 76%);
}
body.layout-grand_luxury .hero{
  min-height:440px!important;
  align-items:center!important;
  background-color:#050504!important;
  background-size:cover!important;
  background-position:center!important;
  border-bottom:1px solid rgba(216,180,106,.28)!important;
  box-shadow:0 34px 120px rgba(0,0,0,.55)!important;
}
body.layout-grand_luxury .hero[style]{
  background-blend-mode:multiply,normal!important;
}
body.layout-grand_luxury .hero-inner{
  width:min(1180px,90vw)!important;
  padding:88px 0!important;
  text-align:center!important;
}
body.layout-grand_luxury .logo{
  max-width:118px!important;
  max-height:118px!important;
  padding:10px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(216,180,106,.46)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.38)!important;
}
body.layout-grand_luxury .hero h1,
body.layout-grand_luxury .topbar h1{
  margin:22px auto 10px!important;
  max-width:920px!important;
  color:var(--lux-cream)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(48px,8vw,112px)!important;
  line-height:.86!important;
  letter-spacing:-.07em!important;
  font-weight:700!important;
  text-shadow:0 24px 80px rgba(0,0,0,.72)!important;
}
body.layout-grand_luxury .hero p,
body.layout-grand_luxury .topbar p{
  margin:0 auto!important;
  max-width:720px!important;
  color:var(--lux-muted)!important;
  font-size:clamp(15px,1.45vw,20px)!important;
  line-height:1.65!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .table-pill,
body.layout-grand_luxury .eyebrow{
  background:rgba(216,180,106,.14)!important;
  color:var(--lux-gold-soft)!important;
  border:1px solid rgba(216,180,106,.35)!important;
}
body.layout-grand_luxury .wrap{
  width:min(1180px,90vw)!important;
  max-width:1180px!important;
  padding-top:36px!important;
}
body.layout-grand_luxury .topbar{
  justify-content:center!important;
  text-align:center!important;
  padding:46px 0 20px!important;
}
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .sticky-category-bar .cat-nav{
  background:rgba(8,8,6,.74)!important;
  backdrop-filter:blur(22px)!important;
}
body.layout-grand_luxury .searchbar{
  top:0!important;
  border-bottom:1px solid rgba(216,180,106,.16)!important;
}
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .searchbar button{
  background:rgba(255,255,255,.06)!important;
  color:var(--lux-cream)!important;
  border:1px solid rgba(216,180,106,.22)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.26)!important;
}
body.layout-grand_luxury .searchbar input::placeholder{color:rgba(247,240,223,.48)!important;}
body.layout-grand_luxury .cat-nav{
  gap:10px!important;
  padding-top:14px!important;
}
body.layout-grand_luxury .cat-nav a{
  color:var(--lux-cream)!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(216,180,106,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  font-size:12px!important;
}
body.layout-grand_luxury .cat-nav a.active,
body.layout-grand_luxury .cat-nav a:hover{
  background:linear-gradient(135deg,var(--lux-gold),#8c6a2e)!important;
  color:#090806!important;
  border-color:rgba(255,236,182,.62)!important;
}
body.layout-grand_luxury .category{
  margin:48px 0 72px!important;
  scroll-margin-top:150px!important;
}
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .category-with-image .category-hero-card,
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury .featured-category-card{
  min-height:250px!important;
  padding:0!important;
  margin:0 0 28px!important;
  border-radius:34px!important;
  border:1px solid rgba(216,180,106,.30)!important;
  overflow:hidden!important;
  background-color:var(--lux-panel)!important;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.45) 48%,rgba(0,0,0,.10)),
    var(--cat-img)!important;
  box-shadow:0 28px 95px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08)!important;
  display:flex!important;
  align-items:center!important;
}
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-hero-card.category-color-card{
  background-image:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.12),transparent 24%),
    linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#000),#070705 72%)!important;
}
body.layout-grand_luxury .category-hero-card::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  border:1px solid rgba(216,180,106,.32)!important;
  border-radius:24px!important;
  pointer-events:none!important;
  z-index:1!important;
}
body.layout-grand_luxury .category-hero-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 45%,rgba(0,0,0,.20))!important;
}
body.layout-grand_luxury .category-hero-content,
body.layout-grand_luxury .featured-category-card .category-hero-content{
  position:relative!important;
  z-index:2!important;
  padding:46px 78px!important;
  color:var(--lux-cream)!important;
  text-shadow:0 18px 60px rgba(0,0,0,.72)!important;
}
body.layout-grand_luxury .category-hero-card h2,
body.layout-grand_luxury .category-featured .category-hero-card h2,
body.layout-grand_luxury .featured-category-card h2{
  color:var(--lux-cream)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(46px,6.4vw,92px)!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
  font-weight:700!important;
  margin:0!important;
}
body.layout-grand_luxury .category-hero-card p,
body.layout-grand_luxury .category-featured .category-hero-card p,
body.layout-grand_luxury .featured-category-card p{
  display:block!important;
  max-width:620px!important;
  margin:14px 0 0!important;
  color:var(--lux-muted)!important;
  font-size:15px!important;
  line-height:1.55!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .category-accordion-icon{
  z-index:5!important;
  right:34px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:50px!important;
  height:50px!important;
  border-radius:999px!important;
  background:rgba(8,8,6,.62)!important;
  border:1px solid rgba(216,180,106,.55)!important;
  color:var(--lux-gold-soft)!important;
  box-shadow:0 12px 36px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
body.layout-grand_luxury .products{
  grid-template-columns:1fr!important;
  gap:18px!important;
}
body.layout-grand_luxury .product,
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr 190px!important;
  gap:24px!important;
  padding:24px!important;
  border-radius:28px!important;
  border:1px solid rgba(216,180,106,.20)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),
    linear-gradient(135deg,var(--lux-panel),var(--lux-panel-soft))!important;
  box-shadow:0 22px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .product::before{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(216,180,106,.55),transparent);
  pointer-events:none;
}
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  grid-template-columns:1fr!important;
}
body.layout-grand_luxury .product > img{
  order:2!important;
  width:190px!important;
  height:190px!important;
  border-radius:24px!important;
  object-fit:cover!important;
  border:1px solid rgba(216,180,106,.24)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.35)!important;
}
body.layout-grand_luxury .p-info{
  min-width:0!important;
}
body.layout-grand_luxury .product h3{
  color:var(--lux-cream)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(28px,3.2vw,44px)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
  margin:8px 0 10px!important;
  font-weight:700!important;
}
body.layout-grand_luxury .product p{
  max-width:760px!important;
  color:var(--lux-muted)!important;
  font-size:15.5px!important;
  line-height:1.65!important;
  margin:0 0 12px!important;
}
body.layout-grand_luxury .badge{
  background:rgba(216,180,106,.16)!important;
  color:var(--lux-gold-soft)!important;
  border:1px solid rgba(216,180,106,.34)!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .chips span,
body.layout-grand_luxury .meta span{
  background:rgba(255,255,255,.055)!important;
  color:rgba(247,240,223,.70)!important;
  border:1px solid rgba(216,180,106,.16)!important;
}
body.layout-grand_luxury .product-action-row{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-top:1px solid rgba(216,180,106,.16)!important;
  padding-top:18px!important;
  margin-top:10px!important;
}
body.layout-grand_luxury .price{
  margin:0!important;
  order:2!important;
}
body.layout-grand_luxury .price strong{
  color:var(--lux-gold-soft)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(26px,3vw,38px)!important;
  font-weight:700!important;
}
body.layout-grand_luxury .price del{color:rgba(247,240,223,.42)!important;}
body.layout-grand_luxury .add,
body.layout-grand_luxury #sendOrder{
  background:linear-gradient(135deg,var(--lux-gold-soft),#a9843e)!important;
  color:#090806!important;
  border:1px solid rgba(255,236,182,.52)!important;
  border-radius:999px!important;
  min-height:46px!important;
  padding:13px 22px!important;
  box-shadow:0 14px 40px rgba(216,180,106,.18)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .cart>button,
body.layout-grand_luxury .cart-fab{
  background:linear-gradient(135deg,var(--lux-gold-soft),#9d7a36)!important;
  color:#090806!important;
  border:1px solid rgba(255,236,182,.58)!important;
}
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury .modal-box,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .business-info-block,
body.layout-grand_luxury .search-no-results{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),var(--lux-panel)!important;
  color:var(--lux-cream)!important;
  border:1px solid rgba(216,180,106,.22)!important;
  box-shadow:0 28px 88px rgba(0,0,0,.34)!important;
}
body.layout-grand_luxury footer,
body.layout-grand_luxury .business-info-lines p,
body.layout-grand_luxury .allergen-legend p{color:var(--lux-muted)!important;}
body.layout-grand_luxury a{color:var(--lux-gold-soft);}
body.layout-grand_luxury.category-mode-accordion .category:not(.accordion-open) .category-products,
body.layout-grand_luxury.category-mode-accordion_auto .category:not(.accordion-open) .category-products{
  display:none!important;
}
body.layout-grand_luxury.category-mode-accordion .category.accordion-open .category-products,
body.layout-grand_luxury.category-mode-accordion_auto .category.accordion-open .category-products{
  display:grid!important;
}
@media(max-width:980px){
  body.layout-grand_luxury .hero{min-height:380px!important;}
  body.layout-grand_luxury .category-hero-content{padding:40px 58px!important;}
  body.layout-grand_luxury .product{grid-template-columns:1fr 150px!important;}
  body.layout-grand_luxury .product > img{width:150px!important;height:150px!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury .wrap{width:92vw!important;padding-bottom:120px!important;}
  body.layout-grand_luxury .hero{min-height:350px!important;}
  body.layout-grand_luxury .hero-inner{padding:58px 0!important;}
  body.layout-grand_luxury .hero h1,
  body.layout-grand_luxury .topbar h1{font-size:clamp(48px,16vw,76px)!important;}
  body.layout-grand_luxury .hero p,
  body.layout-grand_luxury .topbar p{font-size:12px!important;letter-spacing:.065em!important;}
  body.layout-grand_luxury .category{margin:32px 0 50px!important;}
  body.layout-grand_luxury .category-hero-card{min-height:210px!important;border-radius:26px!important;}
  body.layout-grand_luxury .category-hero-card::before{inset:11px!important;border-radius:18px!important;}
  body.layout-grand_luxury .category-hero-content{padding:34px 58px 34px 28px!important;}
  body.layout-grand_luxury .category-hero-card h2{font-size:clamp(42px,13vw,64px)!important;}
  body.layout-grand_luxury .category-hero-card p{font-size:12px!important;line-height:1.45!important;}
  body.layout-grand_luxury .category-accordion-icon{right:18px!important;width:42px!important;height:42px!important;}
  body.layout-grand_luxury .product,
  body.layout-grand_luxury.card-no-image .product,
  body.layout-grand_luxury .product:not(:has(> img)){
    grid-template-columns:1fr!important;
    padding:18px!important;
    border-radius:24px!important;
  }
  body.layout-grand_luxury .product > img{order:-1!important;width:100%!important;height:210px!important;}
  body.layout-grand_luxury .product-action-row{display:block!important;}
  body.layout-grand_luxury .price{margin:0 0 14px!important;}
  body.layout-grand_luxury .add{width:100%!important;}
}

/* v1.11.1 - Lusso Elite ottimizzato: leggibilità, categorie compatte, prodotto più pieno */
body.layout-grand_luxury{
  --lux-bg:#080806;
  --lux-panel:#15130f;
  --lux-panel-soft:#1d1a14;
  --lux-cream:#fff7e7;
  --lux-text:#fff7e7;
  --lux-muted:rgba(255,247,231,.78);
  --lux-border:rgba(216,180,106,.30);
  --lux-gold-soft:#d8bc78;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .wrap{
  width:min(1220px,92vw)!important;
  max-width:1220px!important;
  padding-top:24px!important;
}
body.layout-grand_luxury .hero{
  min-height:380px!important;
}
body.layout-grand_luxury .hero-inner{
  padding:66px 0!important;
}
body.layout-grand_luxury .hero h1,
body.layout-grand_luxury .topbar h1{
  color:var(--lux-text)!important;
  text-shadow:0 18px 58px rgba(0,0,0,.82)!important;
}
body.layout-grand_luxury .hero p,
body.layout-grand_luxury .topbar p,
body.layout-grand_luxury .product p,
body.layout-grand_luxury .business-info-lines p,
body.layout-grand_luxury .allergen-legend p,
body.layout-grand_luxury footer{
  color:var(--lux-muted)!important;
}
body.layout-grand_luxury .searchbar input::placeholder{
  color:rgba(255,247,231,.62)!important;
}
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .searchbar button{
  color:var(--lux-text)!important;
  background:rgba(255,255,255,.095)!important;
  border-color:rgba(216,180,106,.34)!important;
}
body.layout-grand_luxury .cat-nav{
  background:rgba(20,18,14,.86)!important;
  border-top:1px solid rgba(216,180,106,.18)!important;
  border-bottom:1px solid rgba(216,180,106,.18)!important;
  padding:10px 0!important;
}
body.layout-grand_luxury .cat-nav a{
  color:var(--lux-text)!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(216,180,106,.32)!important;
  padding:10px 16px!important;
}
body.layout-grand_luxury .category{
  margin:28px 0 42px!important;
  scroll-margin-top:132px!important;
}
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .category-with-image .category-hero-card,
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury .featured-category-card{
  min-height:150px!important;
  margin:0 0 18px!important;
  border-radius:24px!important;
  border-color:var(--lux-border)!important;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.54) 54%,rgba(0,0,0,.30)),
    var(--cat-img)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body.layout-grand_luxury .category-hero-card::before{
  inset:10px!important;
  border-radius:18px!important;
  border-color:rgba(216,180,106,.24)!important;
}
body.layout-grand_luxury .category-hero-content,
body.layout-grand_luxury .featured-category-card .category-hero-content{
  padding:28px 76px 28px 34px!important;
  color:var(--lux-text)!important;
  text-shadow:0 10px 34px rgba(0,0,0,.78)!important;
}
body.layout-grand_luxury .category-hero-card h2,
body.layout-grand_luxury .category-featured .category-hero-card h2,
body.layout-grand_luxury .featured-category-card h2{
  font-size:clamp(34px,4.2vw,60px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .category-hero-card p,
body.layout-grand_luxury .category-featured .category-hero-card p,
body.layout-grand_luxury .featured-category-card p{
  margin-top:8px!important;
  color:rgba(255,247,231,.82)!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body.layout-grand_luxury .category-accordion-icon{
  right:24px!important;
  width:38px!important;
  height:38px!important;
  color:#fff7e7!important;
  background:rgba(0,0,0,.48)!important;
}
body.layout-grand_luxury .products{
  gap:14px!important;
}
body.layout-grand_luxury .product,
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 150px!important;
  grid-template-rows:auto auto!important;
  gap:16px 22px!important;
  padding:20px 22px!important;
  border-radius:22px!important;
  min-height:0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),linear-gradient(135deg,#17150f,#11100c)!important;
  border-color:rgba(216,180,106,.26)!important;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  grid-template-columns:minmax(0,1fr) auto!important;
}
body.layout-grand_luxury .p-info{
  grid-column:1!important;
  grid-row:1!important;
}
body.layout-grand_luxury .product > img{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  width:150px!important;
  height:150px!important;
  border-radius:18px!important;
  align-self:start!important;
}
body.layout-grand_luxury .product h3{
  color:var(--lux-text)!important;
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.04!important;
  margin:6px 0 8px!important;
  letter-spacing:-.035em!important;
}
body.layout-grand_luxury .product p{
  font-size:15px!important;
  line-height:1.42!important;
  margin:0 0 9px!important;
}
body.layout-grand_luxury .product-badges:empty{display:none!important;}
body.layout-grand_luxury .badge{
  color:#fff2ce!important;
}
body.layout-grand_luxury .chips span,
body.layout-grand_luxury .meta span{
  color:rgba(255,247,231,.82)!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(216,180,106,.24)!important;
}
body.layout-grand_luxury .product-action-row{
  grid-column:1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0!important;
  padding-top:14px!important;
  border-top:1px solid rgba(216,180,106,.18)!important;
}
body.layout-grand_luxury .price strong{
  color:#d8bc78!important;
  font-size:clamp(22px,2.3vw,30px)!important;
}
body.layout-grand_luxury .price del{
  color:rgba(255,247,231,.55)!important;
}
body.layout-grand_luxury .add,
body.layout-grand_luxury #sendOrder{
  min-height:42px!important;
  padding:11px 18px!important;
  color:#090806!important;
}
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .business-info-block,
body.layout-grand_luxury .search-no-results{
  color:var(--lux-text)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),#15130f!important;
  border-color:rgba(216,180,106,.26)!important;
}
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury .allergen-card,
body.layout-grand_luxury .allergen-legend-item{
  background:rgba(255,255,255,.08)!important;
  color:var(--lux-text)!important;
  border:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .info-product-card h3,
body.layout-grand_luxury .info-product-card strong,
body.layout-grand_luxury .allergen-card h4,
body.layout-grand_luxury .allergen-card strong,
body.layout-grand_luxury .allergen-legend h3,
body.layout-grand_luxury .business-info-block strong,
body.layout-grand_luxury .business-info-block h3{
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .info-product-card p,
body.layout-grand_luxury .allergen-card p,
body.layout-grand_luxury .allergen-legend-item p{
  color:var(--lux-muted)!important;
}
body.layout-grand_luxury .modal{
  background:rgba(7,9,14,.72)!important;
  backdrop-filter:blur(10px)!important;
}
body.layout-grand_luxury .modal-box{
  background:#fbfaf7!important;
  color:#070707!important;
  border:1px solid rgba(160,132,80,.24)!important;
}
body.layout-grand_luxury .modal-box *,
body.layout-grand_luxury .modal-box h2,
body.layout-grand_luxury .modal-box h3,
body.layout-grand_luxury .modal-box label,
body.layout-grand_luxury .modal-box span,
body.layout-grand_luxury .modal-box p{
  color:#070707!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .modal-box .modal-price,
body.layout-grand_luxury .modal-box .product-modal-price,
body.layout-grand_luxury .modal-box .price-pill,
body.layout-grand_luxury .modal-box .price strong{
  color:#fff!important;
  background:#9d7d47!important;
}
body.layout-grand_luxury .modal-box input,
body.layout-grand_luxury .modal-box textarea,
body.layout-grand_luxury .modal-box .option-choice{
  background:#fff!important;
  color:#111!important;
  border-color:rgba(0,0,0,.13)!important;
}
body.layout-grand_luxury .modal-box input::placeholder,
body.layout-grand_luxury .modal-box textarea::placeholder{
  color:#777!important;
}
body.layout-grand_luxury .modal-box .qty button,
body.layout-grand_luxury .modal-box .option-qty button,
body.layout-grand_luxury .modal-box .add,
body.layout-grand_luxury .modal-box .btn-primary{
  background:#9d7d47!important;
  color:#fff!important;
}
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury .cart-close{
  color:#111!important;
  background:#f4f1ec!important;
}
@media(max-width:980px){
  body.layout-grand_luxury .hero{min-height:340px!important;}
  body.layout-grand_luxury .category-hero-card{min-height:138px!important;}
  body.layout-grand_luxury .category-hero-content{padding:26px 68px 26px 28px!important;}
  body.layout-grand_luxury .product{grid-template-columns:minmax(0,1fr) 128px!important;}
  body.layout-grand_luxury .product > img{width:128px!important;height:128px!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury .wrap{width:94vw!important;padding-top:18px!important;}
  body.layout-grand_luxury .hero{min-height:300px!important;}
  body.layout-grand_luxury .hero-inner{padding:46px 0!important;}
  body.layout-grand_luxury .category{margin:24px 0 34px!important;}
  body.layout-grand_luxury .category-hero-card{min-height:116px!important;border-radius:22px!important;}
  body.layout-grand_luxury .category-hero-content{padding:24px 58px 24px 22px!important;}
  body.layout-grand_luxury .category-hero-card h2{font-size:clamp(34px,10vw,48px)!important;}
  body.layout-grand_luxury .category-hero-card p{font-size:11px!important;margin-top:6px!important;}
  body.layout-grand_luxury .category-accordion-icon{right:16px!important;width:34px!important;height:34px!important;}
  body.layout-grand_luxury .product,
  body.layout-grand_luxury.card-no-image .product,
  body.layout-grand_luxury .product:not(:has(> img)){
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:16px!important;
    border-radius:20px!important;
  }
  body.layout-grand_luxury .product > img{
    grid-column:1!important;
    grid-row:auto!important;
    order:-1!important;
    width:100%!important;
    height:178px!important;
    border-radius:16px!important;
  }
  body.layout-grand_luxury .product h3{font-size:28px!important;}
  body.layout-grand_luxury .product p{font-size:14px!important;}
  body.layout-grand_luxury .product-action-row{
    grid-column:1!important;
    display:flex!important;
    padding-top:12px!important;
  }
  body.layout-grand_luxury .add{width:auto!important;}
  body.layout-grand_luxury .modal-box{width:min(94vw,560px)!important;border-radius:22px!important;}
}

/* v1.12.0 - Lusso Elite Dark/Light: leggibilità completa e UI luxury rifinita */
body.layout-grand_luxury,
body.layout-grand_luxury_light{
  --lux-gold:#a4834a;
  --lux-gold-soft:#d7bd7d;
  --lux-cream:#fff8ea;
  --lux-muted:rgba(255,248,234,.82);
}
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury .sticky-category-bar,
body.layout-grand_luxury .sticky-category-bar .cat-nav{
  background:rgba(8,8,6,.88)!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px)!important;
}
body.layout-grand_luxury .searchbar{
  gap:14px!important;
  padding:14px 0!important;
}
body.layout-grand_luxury .searchbar input{
  background:#fffaf0!important;
  color:#11100d!important;
  border:1px solid rgba(216,180,106,.22)!important;
  border-radius:18px!important;
  box-shadow:0 16px 38px rgba(0,0,0,.24)!important;
  font-weight:650!important;
}
body.layout-grand_luxury .searchbar input::placeholder{
  color:#8b806b!important;
  opacity:1!important;
}
body.layout-grand_luxury .searchbar button{
  flex:0 0 58px!important;
  width:58px!important;
  min-width:58px!important;
  border-radius:18px!important;
  background:#fffaf0!important;
  color:#090806!important;
  font-weight:950!important;
  box-shadow:0 16px 38px rgba(0,0,0,.24)!important;
}
body.layout-grand_luxury .cat-nav{
  margin:0!important;
  padding:12px 0 14px!important;
  gap:12px!important;
}
body.layout-grand_luxury .cat-nav a{
  background:rgba(255,255,255,.105)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
  border-radius:18px!important;
  padding:13px 20px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body.layout-grand_luxury .cat-nav a.active,
body.layout-grand_luxury .cat-nav a:hover{
  background:linear-gradient(135deg,#d7bd7d,#96743b)!important;
  color:#070604!important;
}
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .business-info-block{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),#15130f!important;
  border:1px solid rgba(216,180,106,.28)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury .allergen-legend h3,
body.layout-grand_luxury .allergen-legend .info-section-head h3,
body.layout-grand_luxury .cover-charge-info h3,
body.layout-grand_luxury .business-info-block h3{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .allergen-legend p,
body.layout-grand_luxury .cover-charge-info p,
body.layout-grand_luxury .business-info-block p{
  color:rgba(255,248,234,.78)!important;
}
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury .allergen-card,
body.layout-grand_luxury .allergen-legend-item{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(216,180,106,.24)!important;
  color:#fff8ea!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .allergen-grid article h3,
body.layout-grand_luxury .allergen-card h4,
body.layout-grand_luxury .allergen-legend-item h4,
body.layout-grand_luxury .allergen-grid article strong{
  color:#fff8ea!important;
}
body.layout-grand_luxury .allergen-grid article p,
body.layout-grand_luxury .allergen-card p,
body.layout-grand_luxury .allergen-legend-item p{
  color:rgba(255,248,234,.74)!important;
}
body.layout-grand_luxury footer{
  background:#f7f2e9!important;
  color:#11100d!important;
  border-top:1px solid rgba(216,180,106,.24)!important;
  font-weight:750!important;
}
body.layout-grand_luxury footer,
body.layout-grand_luxury footer *{
  color:#11100d!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.layout-grand_luxury footer a{color:#11100d!important;font-weight:900!important;}
body.layout-grand_luxury .modal-box{
  background:linear-gradient(180deg,#15130f,#0f0e0a)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.34)!important;
}
body.layout-grand_luxury .modal-box *,
body.layout-grand_luxury .modal-box h2,
body.layout-grand_luxury .modal-box h3,
body.layout-grand_luxury .modal-box label,
body.layout-grand_luxury .modal-box span,
body.layout-grand_luxury .modal-box p{
  color:#fff8ea!important;
}
body.layout-grand_luxury .modal-box .modal-price,
body.layout-grand_luxury .modal-box .product-modal-price,
body.layout-grand_luxury .modal-box .price-pill,
body.layout-grand_luxury .modal-box .price strong{
  background:#a4834a!important;
  color:#fff!important;
}
body.layout-grand_luxury .modal-box input,
body.layout-grand_luxury .modal-box textarea,
body.layout-grand_luxury .modal-box .option-choice{
  background:#242018!important;
  color:#fff8ea!important;
  border-color:rgba(216,180,106,.30)!important;
}
body.layout-grand_luxury .modal-box input::placeholder,
body.layout-grand_luxury .modal-box textarea::placeholder{color:rgba(255,248,234,.62)!important;}
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury .cart-close{background:#242018!important;color:#fff8ea!important;border:1px solid rgba(216,180,106,.28)!important;}

/* Lusso Elite Light eredita la struttura luxury ma usa palette chiara */
body.layout-grand_luxury_light{
  --lux-bg:#f7f1e7;
  --lux-panel:#fffaf2;
  --lux-panel-soft:#f1e6d6;
  --lux-cream:#19150f;
  --lux-text:#19150f;
  --lux-muted:#6f6556;
  --lux-border:rgba(164,131,74,.30);
  background:
    radial-gradient(circle at 14% 0%,rgba(212,183,129,.32),transparent 30vw),
    radial-gradient(circle at 86% 7%,rgba(255,255,255,.72),transparent 28vw),
    linear-gradient(180deg,#fffaf1 0%,#f4eadb 54%,#efe2d0 100%)!important;
  color:#19150f!important;
}
body.layout-grand_luxury_light::before{opacity:.28!important;background-image:linear-gradient(rgba(164,131,74,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(164,131,74,.08) 1px,transparent 1px)!important;}
body.layout-grand_luxury_light .hero{background-color:#2a2218!important;border-bottom:1px solid rgba(164,131,74,.30)!important;}
body.layout-grand_luxury_light .hero h1,
body.layout-grand_luxury_light .hero p{color:#fff8ea!important;}
body.layout-grand_luxury_light .wrap{width:min(1220px,92vw)!important;}
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury_light .cat-nav,
body.layout-grand_luxury_light .sticky-category-bar,
body.layout-grand_luxury_light .sticky-category-bar .cat-nav{
  background:rgba(247,241,231,.88)!important;
  border:0!important;
  backdrop-filter:blur(18px)!important;
}
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury_light .searchbar button{
  background:#fffdf8!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.22)!important;
  border-radius:18px!important;
  box-shadow:0 12px 30px rgba(86,67,39,.10)!important;
  font-weight:650!important;
}
body.layout-grand_luxury_light .searchbar input::placeholder{color:#8b806f!important;opacity:1!important;}
body.layout-grand_luxury_light .searchbar button{font-weight:950!important;}
body.layout-grand_luxury_light .cat-nav{padding:12px 0 14px!important;gap:12px!important;}
body.layout-grand_luxury_light .cat-nav a{
  background:#fffaf2!important;
  color:#2a2218!important;
  border:1px solid rgba(164,131,74,.28)!important;
  border-radius:18px!important;
  padding:13px 20px!important;
  box-shadow:0 8px 22px rgba(86,67,39,.08)!important;
}
body.layout-grand_luxury_light .cat-nav a.active,
body.layout-grand_luxury_light .cat-nav a:hover{background:linear-gradient(135deg,#b49358,#8d6b33)!important;color:#fff!important;}
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury_light .featured-category-card{
  min-height:150px!important;
  border-color:rgba(164,131,74,.28)!important;
  background-image:linear-gradient(90deg,rgba(255,250,242,.94),rgba(255,250,242,.74) 48%,rgba(255,250,242,.28)),var(--cat-img)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.12),inset 0 1px 0 rgba(255,255,255,.8)!important;
}
body.layout-grand_luxury_light .category-hero-card h2,
body.layout-grand_luxury_light .featured-category-card h2{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .category-hero-card p,
body.layout-grand_luxury_light .featured-category-card p{color:#6f6556!important;text-shadow:none!important;}
body.layout-grand_luxury_light .category-hero-content{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .category-accordion-icon{background:#fffaf2!important;color:#8d6b33!important;border-color:rgba(164,131,74,.38)!important;}
body.layout-grand_luxury_light .product,
body.layout-grand_luxury_light.card-no-image .product,
body.layout-grand_luxury_light .product:not(:has(> img)){
  background:linear-gradient(180deg,#fffdf8,#fff7ed)!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.10)!important;
}
body.layout-grand_luxury_light .product h3{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .product p{color:#6f6556!important;}
body.layout-grand_luxury_light .chips span,
body.layout-grand_luxury_light .meta span{background:#f4eadb!important;color:#625845!important;border-color:rgba(164,131,74,.18)!important;}
body.layout-grand_luxury_light .price strong{color:#8d6b33!important;}
body.layout-grand_luxury_light .price del{color:#9a9183!important;}
body.layout-grand_luxury_light .add,
body.layout-grand_luxury_light #sendOrder,
body.layout-grand_luxury_light .cart>button,
body.layout-grand_luxury_light .cart-fab{background:linear-gradient(135deg,#b49358,#8d6b33)!important;color:#fff!important;border-color:rgba(164,131,74,.30)!important;}
body.layout-grand_luxury_light .allergen-legend,
body.layout-grand_luxury_light .cover-charge-info,
body.layout-grand_luxury_light .business-info-block,
body.layout-grand_luxury_light .search-no-results{background:#fffaf2!important;color:#19150f!important;border:1px solid rgba(164,131,74,.22)!important;box-shadow:0 18px 50px rgba(86,67,39,.10)!important;}
body.layout-grand_luxury_light .allergen-legend h3,
body.layout-grand_luxury_light .cover-charge-info h3,
body.layout-grand_luxury_light .business-info-block h3{color:#19150f!important;}
body.layout-grand_luxury_light .allergen-legend p,
body.layout-grand_luxury_light .cover-charge-info p,
body.layout-grand_luxury_light .business-info-block p{color:#6f6556!important;}
body.layout-grand_luxury_light .allergen-grid article,
body.layout-grand_luxury_light .allergen-card,
body.layout-grand_luxury_light .allergen-legend-item{background:#fffdf8!important;color:#19150f!important;border:1px solid rgba(164,131,74,.20)!important;border-radius:16px!important;}
body.layout-grand_luxury_light .allergen-grid article h3,
body.layout-grand_luxury_light .allergen-card h4{color:#19150f!important;}
body.layout-grand_luxury_light .allergen-grid article p,
body.layout-grand_luxury_light .allergen-card p{color:#6f6556!important;}
body.layout-grand_luxury_light .modal{background:rgba(24,29,38,.48)!important;backdrop-filter:blur(10px)!important;}
body.layout-grand_luxury_light .modal-box{background:#fffdf8!important;color:#19150f!important;border:1px solid rgba(164,131,74,.24)!important;}
body.layout-grand_luxury_light .modal-box *,
body.layout-grand_luxury_light .modal-box h2,
body.layout-grand_luxury_light .modal-box h3,
body.layout-grand_luxury_light .modal-box label,
body.layout-grand_luxury_light .modal-box span,
body.layout-grand_luxury_light .modal-box p{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .modal-box input,
body.layout-grand_luxury_light .modal-box textarea,
body.layout-grand_luxury_light .modal-box .option-choice{background:#fff!important;color:#19150f!important;border-color:rgba(25,21,15,.14)!important;}
body.layout-grand_luxury_light .modal-box input::placeholder,
body.layout-grand_luxury_light .modal-box textarea::placeholder{color:#777!important;}
body.layout-grand_luxury_light .modal-box .modal-price,
body.layout-grand_luxury_light .modal-box .product-modal-price,
body.layout-grand_luxury_light .modal-box .price-pill,
body.layout-grand_luxury_light .modal-box .price strong{background:#9d7d47!important;color:#fff!important;}
body.layout-grand_luxury_light .modal-close,
body.layout-grand_luxury_light .cart-close{background:#f4efe8!important;color:#19150f!important;border:1px solid rgba(164,131,74,.18)!important;}
body.layout-grand_luxury_light footer{background:#19150f!important;color:#fff8ea!important;border-top:1px solid rgba(164,131,74,.26)!important;font-weight:750!important;}
body.layout-grand_luxury_light footer,
body.layout-grand_luxury_light footer *{color:#fff8ea!important;opacity:1!important;text-shadow:none!important;}

/* v1.12.1 - fix leggibilità luxury dark/light e rispetto colore categoria */
/* Colore categoria: le card categoria senza immagine devono usare sempre il colore impostato dal backend */
.category-with-color .category-hero-card,
.category-hero-card.category-color-card{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 92%,#000 8%),color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#000 30%))!important;
  border-color:color-mix(in srgb,var(--cat-color,var(--primary)) 72%,#fff 28%)!important;
}
.category-with-color .category-hero-card h2,
.category-with-color .category-hero-card p,
.category-hero-card.category-color-card h2,
.category-hero-card.category-color-card p{
  color:#fff!important;
  text-shadow:0 10px 28px rgba(0,0,0,.45)!important;
}
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-hero-card.category-color-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-hero-card.category-color-card{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 90%,#000 10%),color-mix(in srgb,var(--cat-color,var(--primary)) 58%,#000 42%))!important;
}
body.layout-grand_luxury_light .category-with-color .category-hero-card h2,
body.layout-grand_luxury_light .category-with-color .category-hero-card p,
body.layout-grand_luxury_light .category-hero-card.category-color-card h2,
body.layout-grand_luxury_light .category-hero-card.category-color-card p{
  color:#fff!important;
  text-shadow:0 10px 30px rgba(0,0,0,.52)!important;
}

/* Lusso Elite Dark: popup personalizzazione realmente dark */
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal.modal,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .modal{
  background:rgba(3,4,6,.78)!important;
  backdrop-filter:blur(12px)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-box,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .modal-box{
  background:linear-gradient(180deg,#181610,#0d0c08)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.38)!important;
  box-shadow:0 28px 100px rgba(0,0,0,.62)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal #modalContent,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-product-head,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions{
  background:transparent!important;
  color:#fff8ea!important;
  border-color:rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-box *,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-product-title-line,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset legend,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-note-field span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty b{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-kicker,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset legend em{
  background:rgba(216,180,106,.14)!important;
  color:#d7bd7d!important;
  border:1px solid rgba(216,180,106,.24)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-note-field,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty{
  background:#1f1c15!important;
  border:1px solid rgba(216,180,106,.26)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input{
  background:#12100b!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea::placeholder,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input::placeholder{
  color:rgba(255,248,234,.68)!important;
  opacity:1!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-secondary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-close{
  background:#242018!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-primary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty button,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-base-price{
  background:linear-gradient(135deg,#d7bd7d,#9d7d47)!important;
  color:#090806!important;
}

/* Lusso Elite Light: contrasti corretti */
body.layout-grand_luxury_light .badge,
body.layout-grand_luxury_light .product .badge,
body.layout-grand_luxury_light .modal-kicker{
  background:#f1e6d6!important;
  color:#8d6b33!important;
  border:1px solid rgba(164,131,74,.24)!important;
  opacity:1!important;
}
body.layout-grand_luxury_light .allergen-legend,
body.layout-grand_luxury_light .allergen-legend *,
body.layout-grand_luxury_light .allergen-grid article,
body.layout-grand_luxury_light .allergen-grid article *{
  text-shadow:none!important;
  opacity:1!important;
}
body.layout-grand_luxury_light .allergen-legend .info-section-head h3,
body.layout-grand_luxury_light .allergen-legend h3,
body.layout-grand_luxury_light .allergen-grid article h3,
body.layout-grand_luxury_light .allergen-card h4,
body.layout-grand_luxury_light .allergen-legend-item h4{
  color:#19150f!important;
}
body.layout-grand_luxury_light .allergen-legend .info-section-head p,
body.layout-grand_luxury_light .allergen-legend p,
body.layout-grand_luxury_light .allergen-grid article p,
body.layout-grand_luxury_light .allergen-card p,
body.layout-grand_luxury_light .allergen-legend-item p{
  color:#5f5547!important;
}
body.layout-grand_luxury_light footer,
body.layout-grand_luxury_light footer *,
body.layout-grand_luxury_light footer a{
  color:#fff8ea!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light footer a{font-weight:950!important;}

/* v1.12.2 - Lusso Elite mobile: immagine prodotto prima del testo */
@media (max-width:680px){
  body.layout-grand_luxury .product,
  body.layout-grand_luxury_light .product{
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    overflow:hidden!important;
  }
  body.layout-grand_luxury .product > img,
  body.layout-grand_luxury_light .product > img{
    order:-10!important;
    width:100%!important;
    height:220px!important;
    max-width:none!important;
    margin:0!important;
    border-radius:22px 22px 0 0!important;
    object-fit:cover!important;
    display:block!important;
  }
  body.layout-grand_luxury .product > .p-info,
  body.layout-grand_luxury_light .product > .p-info{
    order:0!important;
    width:100%!important;
  }
  body.layout-grand_luxury .product > .product-action-row,
  body.layout-grand_luxury_light .product > .product-action-row{
    order:1!important;
    width:100%!important;
  }
  body.layout-grand_luxury .product > :not(img),
  body.layout-grand_luxury_light .product > :not(img){
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* v1.12.3 - Lusso Elite Dark: footer del popup personalizzazione realmente scuro */
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-box,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-content,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal #modalContent{
  background:linear-gradient(180deg,#17140f 0%,#0e0d09 100%)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-bottom-fixed,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-footer,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-modal-footer{
  background:linear-gradient(180deg,#12100b 0%,#0b0a07 100%)!important;
  color:#fff8ea!important;
  border-top:1px solid rgba(216,180,106,.24)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .quantity-control,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-qty{
  background:#1f1c15!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.28)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .quantity-control b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .quantity-control span{
  color:#fff8ea!important;
  opacity:1!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-secondary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions .btn-secondary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal button[type="button"].btn-secondary{
  background:#201d16!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.28)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-primary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions .btn-primary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal button[type="submit"],
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .add-to-cart-modal{
  background:linear-gradient(135deg,#d8bf79,#a4834a)!important;
  color:#080705!important;
  border:0!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions::before,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-bottom-fixed::before{
  background:transparent!important;
}


/* v1.12.4 - Lusso Elite Dark/Light: badge prodotto sopra foto + spaziatura meta */
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product{
  position:relative!important;
}
body.layout-grand_luxury .product .product-badges,
body.layout-grand_luxury_light .product .product-badges{
  position:absolute!important;
  z-index:8!important;
  gap:6px!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
}
body.layout-grand_luxury .product .product-badges:empty,
body.layout-grand_luxury_light .product .product-badges:empty{
  display:none!important;
}
body.layout-grand_luxury .product .badge,
body.layout-grand_luxury_light .product .badge{
  min-height:34px!important;
  padding:8px 16px!important;
  border-radius:999px!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.18)!important;
  text-shadow:0 1px 8px rgba(0,0,0,.35)!important;
}
body.layout-grand_luxury .product .badge:not([style]),
body.layout-grand_luxury_light .product .badge:not([style]){
  background:var(--lux-gold,#a4834a)!important;
  border:1px solid rgba(255,255,255,.24)!important;
}
body.layout-grand_luxury .product .meta,
body.layout-grand_luxury_light .product .meta{
  margin-top:4px!important;
  margin-bottom:16px!important;
  padding-bottom:0!important;
}
body.layout-grand_luxury .product .chips,
body.layout-grand_luxury_light .product .chips{
  margin-top:4px!important;
  margin-bottom:6px!important;
}
body.layout-grand_luxury .product p,
body.layout-grand_luxury_light .product p{
  margin-bottom:6px!important;
}
body.layout-grand_luxury .product .product-action-row,
body.layout-grand_luxury_light .product .product-action-row{
  padding-top:16px!important;
}
/* desktop/tablet: immagine a destra, badge sovrapposto in alto a sinistra della foto */
@media (min-width:681px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    top:34px!important;
    left:calc(100% - 150px - 22px + 12px)!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    margin:0 0 8px!important;
  }
}
@media (min-width:681px) and (max-width:980px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    left:calc(100% - 128px - 22px + 10px)!important;
    top:30px!important;
  }
}
/* mobile: immagine full-width in alto, badge sopra la foto */
@media (max-width:680px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    top:28px!important;
    left:28px!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    margin:0 0 8px!important;
  }
  body.layout-grand_luxury .product .meta,
  body.layout-grand_luxury_light .product .meta{
    margin-top:2px!important;
    margin-bottom:14px!important;
  }
}

/* v1.12.5 - Lusso Elite Dark/Light: badge prodotto a bandiera, sovrapposto alla foto solo su mobile */
body.layout-grand_luxury .product .product-badges,
body.layout-grand_luxury_light .product .product-badges{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  pointer-events:none!important;
  z-index:9!important;
}
body.layout-grand_luxury .product .badge,
body.layout-grand_luxury_light .product .badge{
  min-height:36px!important;
  min-width:132px!important;
  width:max-content!important;
  max-width:min(280px,72%)!important;
  justify-content:center!important;
  padding:9px 22px 9px 18px!important;
  border-radius:0 18px 18px 0!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.16)!important;
  text-shadow:0 1px 8px rgba(0,0,0,.38)!important;
}
body.layout-grand_luxury .product .badge[style],
body.layout-grand_luxury_light .product .badge[style]{
  border-color:currentColor!important;
}
/* desktop/tablet: non sovrapposto alla foto; resta nella parte testuale/card come bandierina */
@media (min-width:681px){
  body.layout-grand_luxury .product .product-badges,
  body.layout-grand_luxury_light .product .product-badges,
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges,
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    inset:auto!important;
    margin:0 0 12px calc(-1 * clamp(16px,2vw,28px))!important;
    padding:0!important;
  }
  body.layout-grand_luxury .product .badge,
  body.layout-grand_luxury_light .product .badge{
    min-width:150px!important;
  }
}
/* mobile: sovrapposto in alto a sinistra alla foto; se manca foto, parte dal bordo sinistro della card */
@media (max-width:680px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    position:absolute!important;
    top:16px!important;
    left:0!important;
    margin:0!important;
    padding:0!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    margin:0 0 12px -16px!important;
    padding:0!important;
  }
  body.layout-grand_luxury .product:has(> img) .badge,
  body.layout-grand_luxury_light .product:has(> img) .badge{
    min-width:52%!important;
    max-width:82%!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .badge,
  body.layout-grand_luxury_light .product:not(:has(> img)) .badge{
    min-width:170px!important;
  }
  body.layout-grand_luxury .product .meta,
  body.layout-grand_luxury_light .product .meta{
    margin-top:2px!important;
    margin-bottom:14px!important;
  }
}

/* v1.12.6 - Lusso Elite Dark/Light: coperto e legenda coerenti con font, prezzo e spaziature prodotto */
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury_light .cover-charge-info,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury_light .allergen-legend{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  margin:26px 0 22px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury_light .info-product-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;
  gap:16px 22px!important;
  padding:20px 22px!important;
  border-radius:22px!important;
  min-height:0!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .info-product-card{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),linear-gradient(135deg,#17150f,#11100c)!important;
  border:1px solid rgba(216,180,106,.26)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury_light .info-product-card{
  background:linear-gradient(180deg,#fffdf8,#fff7ed)!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.10)!important;
  color:#19150f!important;
}
body.layout-grand_luxury .info-product-card::before,
body.layout-grand_luxury_light .info-product-card::before{
  content:""!important;
  position:absolute!important;
  left:22px!important;
  right:22px!important;
  top:0!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,106,.46),transparent)!important;
  pointer-events:none!important;
}
body.layout-grand_luxury_light .info-product-card::before{
  background:linear-gradient(90deg,transparent,rgba(164,131,74,.28),transparent)!important;
}
body.layout-grand_luxury .info-product-card h3,
body.layout-grand_luxury_light .info-product-card h3{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  font-weight:700!important;
  margin:0 0 8px!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .info-product-card h3{color:#fff8ea!important;}
body.layout-grand_luxury_light .info-product-card h3{color:#19150f!important;}
body.layout-grand_luxury .info-product-card p,
body.layout-grand_luxury_light .info-product-card p{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.42!important;
  margin:0!important;
  max-width:760px!important;
}
body.layout-grand_luxury .info-product-card p{color:rgba(255,248,234,.78)!important;}
body.layout-grand_luxury_light .info-product-card p{color:#6f6556!important;}
body.layout-grand_luxury .info-card-price,
body.layout-grand_luxury_light .info-card-price{
  justify-self:end!important;
  align-self:end!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(22px,2.3vw,30px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .info-card-price{color:#d8bc78!important;}
body.layout-grand_luxury_light .info-card-price{color:#8d6b33!important;}
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury_light .allergen-legend{
  border-radius:22px!important;
  padding:22px!important;
}
body.layout-grand_luxury .allergen-legend{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),#15130f!important;
  border:1px solid rgba(216,180,106,.26)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury_light .allergen-legend{
  background:#fffaf2!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.10)!important;
  color:#19150f!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head,
body.layout-grand_luxury_light .allergen-legend .info-section-head{
  margin:0 0 16px!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head h3,
body.layout-grand_luxury_light .allergen-legend .info-section-head h3,
body.layout-grand_luxury .allergen-legend > h3,
body.layout-grand_luxury_light .allergen-legend > h3{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  font-weight:700!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head h3,
body.layout-grand_luxury .allergen-legend > h3{color:#fff8ea!important;}
body.layout-grand_luxury_light .allergen-legend .info-section-head h3,
body.layout-grand_luxury_light .allergen-legend > h3{color:#19150f!important;}
body.layout-grand_luxury .allergen-legend .info-section-head p,
body.layout-grand_luxury_light .allergen-legend .info-section-head p{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.42!important;
  margin:0!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head p{color:rgba(255,248,234,.78)!important;}
body.layout-grand_luxury_light .allergen-legend .info-section-head p{color:#6f6556!important;}
body.layout-grand_luxury .allergen-grid,
body.layout-grand_luxury_light .allergen-grid{
  gap:12px!important;
}
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury_light .allergen-grid article{
  border-radius:16px!important;
  padding:15px 16px!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .allergen-grid article{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(216,180,106,.24)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury_light .allergen-grid article{
  background:#fffdf8!important;
  border:1px solid rgba(164,131,74,.20)!important;
  color:#19150f!important;
}
body.layout-grand_luxury .allergen-grid article h3,
body.layout-grand_luxury_light .allergen-grid article h3{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:18px!important;
  line-height:1.18!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
  margin:0 0 6px!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .allergen-grid article h3{color:#fff8ea!important;}
body.layout-grand_luxury_light .allergen-grid article h3{color:#19150f!important;}
body.layout-grand_luxury .allergen-grid article p,
body.layout-grand_luxury_light .allergen-grid article p{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.42!important;
  margin:0!important;
}
body.layout-grand_luxury .allergen-grid article p{color:rgba(255,248,234,.74)!important;}
body.layout-grand_luxury_light .allergen-grid article p{color:#6f6556!important;}
@media(max-width:680px){
  body.layout-grand_luxury .info-product-card,
  body.layout-grand_luxury_light .info-product-card{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:18px!important;
    border-radius:20px!important;
  }
  body.layout-grand_luxury .info-card-price,
  body.layout-grand_luxury_light .info-card-price{
    justify-self:end!important;
    font-size:28px!important;
  }
  body.layout-grand_luxury .allergen-legend,
  body.layout-grand_luxury_light .allergen-legend{
    padding:18px!important;
    border-radius:20px!important;
  }
  body.layout-grand_luxury .allergen-grid,
  body.layout-grand_luxury_light .allergen-grid{
    grid-template-columns:1fr!important;
  }
}

/* v1.12.7 - Lusso Elite Dark/Light: prezzo sempre a destra e coperto identico ai prodotti */
@media (min-width:681px){
  body.layout-grand_luxury .product:has(> img),
  body.layout-grand_luxury_light .product:has(> img){
    grid-template-columns:minmax(0,1fr) 150px!important;
  }
  body.layout-grand_luxury .product:has(> img) .product-action-row,
  body.layout-grand_luxury_light .product:has(> img) .product-action-row{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
  }
  body.layout-grand_luxury .product:has(> img) .product-button-slot,
  body.layout-grand_luxury_light .product:has(> img) .product-button-slot{
    justify-self:start!important;
  }
  body.layout-grand_luxury .product:has(> img) .price,
  body.layout-grand_luxury_light .product:has(> img) .price{
    justify-self:end!important;
    text-align:right!important;
    margin:0!important;
    min-width:max-content!important;
  }
}
@media (min-width:681px) and (max-width:980px){
  body.layout-grand_luxury .product:has(> img),
  body.layout-grand_luxury_light .product:has(> img){
    grid-template-columns:minmax(0,1fr) 128px!important;
  }
}

/* Coperto: titolo/descrizione coerenti, prezzo identico a .price strong dei prodotti */
body.layout-grand_luxury .cover-charge-info .info-product-card,
body.layout-grand_luxury_light .cover-charge-info .info-product-card{
  align-items:end!important;
}
body.layout-grand_luxury .cover-charge-info .info-card-price,
body.layout-grand_luxury_light .cover-charge-info .info-card-price,
body.layout-grand_luxury .cover-charge-info strong.info-card-price,
body.layout-grand_luxury_light .cover-charge-info strong.info-card-price{
  justify-self:end!important;
  align-self:end!important;
  text-align:right!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  min-width:max-content!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(22px,2.3vw,30px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .cover-charge-info .info-card-price,
body.layout-grand_luxury .cover-charge-info strong.info-card-price{
  color:#d8bc78!important;
}
body.layout-grand_luxury_light .cover-charge-info .info-card-price,
body.layout-grand_luxury_light .cover-charge-info strong.info-card-price{
  color:#8d6b33!important;
}
body.layout-grand_luxury .cover-charge-info .info-product-card h3,
body.layout-grand_luxury_light .cover-charge-info .info-product-card h3{
  font-size:clamp(24px,2.35vw,34px)!important;
}
body.layout-grand_luxury .cover-charge-info .info-product-card p,
body.layout-grand_luxury_light .cover-charge-info .info-product-card p{
  font-size:15px!important;
}
@media(max-width:680px){
  body.layout-grand_luxury .product:has(> img) .product-action-row,
  body.layout-grand_luxury_light .product:has(> img) .product-action-row{
    display:flex!important;
  }
  body.layout-grand_luxury .cover-charge-info .info-card-price,
  body.layout-grand_luxury_light .cover-charge-info .info-card-price,
  body.layout-grand_luxury .cover-charge-info strong.info-card-price,
  body.layout-grand_luxury_light .cover-charge-info strong.info-card-price{
    font-size:28px!important;
    justify-self:end!important;
  }
}

/* v1.12.8 - Lusso Elite Dark/Light: bordi completamente squadrati */
body.layout-grand_luxury,
body.layout-grand_luxury *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury *::after{
  border-radius:0!important;
}
body.layout-grand_luxury .hero,
body.layout-grand_luxury .hero-inner,
body.layout-grand_luxury .logo,
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .searchbar button,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury .cat-nav a,
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .category-hero-content,
body.layout-grand_luxury .featured-category-card,
body.layout-grand_luxury .product,
body.layout-grand_luxury .product img,
body.layout-grand_luxury .badge,
body.layout-grand_luxury .meta span,
body.layout-grand_luxury .chips span,
body.layout-grand_luxury button,
body.layout-grand_luxury .button,
body.layout-grand_luxury .add,
body.layout-grand_luxury #sendOrder,
body.layout-grand_luxury .cart,
body.layout-grand_luxury .cart > button,
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury .modal,
body.layout-grand_luxury .modal-box,
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury .option-choice,
body.layout-grand_luxury .qty,
body.layout-grand_luxury .qty button,
body.layout-grand_luxury input,
body.layout-grand_luxury textarea,
body.layout-grand_luxury select,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury .info-card-price,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury .floating-order-btn,
body.layout-grand_luxury .back-to-top,
body.layout-grand_luxury .language-box,
body.layout-grand_luxury .lang-btn{
  border-radius:0!important;
}

/* v1.12.9 - Lusso Elite: radius zero reale + ripristino evidenza + popup/card coerenti */
body.layout-grand_luxury,
body.layout-grand_luxury_light{
  --radius:0px!important;
}
body.layout-grand_luxury *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury *::after,
body.layout-grand_luxury_light *,
body.layout-grand_luxury_light *::before,
body.layout-grand_luxury_light *::after{
  border-radius:0!important;
}
body.layout-grand_luxury .hero,
body.layout-grand_luxury_light .hero,
body.layout-grand_luxury .hero-inner,
body.layout-grand_luxury_light .hero-inner,
body.layout-grand_luxury .logo,
body.layout-grand_luxury_light .logo,
body.layout-grand_luxury .language-switcher,
body.layout-grand_luxury_light .language-switcher,
body.layout-grand_luxury .lang-btn,
body.layout-grand_luxury_light .lang-btn,
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury .searchbar button,
body.layout-grand_luxury_light .searchbar button,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury_light .cat-nav,
body.layout-grand_luxury .cat-nav a,
body.layout-grand_luxury_light .cat-nav a,
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card::before,
body.layout-grand_luxury .category-hero-card::after,
body.layout-grand_luxury_light .category-hero-card::after,
body.layout-grand_luxury .category-accordion-icon,
body.layout-grand_luxury_light .category-accordion-icon,
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product,
body.layout-grand_luxury .product > img,
body.layout-grand_luxury_light .product > img,
body.layout-grand_luxury .badge,
body.layout-grand_luxury_light .badge,
body.layout-grand_luxury .product-badges .badge,
body.layout-grand_luxury_light .product-badges .badge,
body.layout-grand_luxury .chips span,
body.layout-grand_luxury_light .chips span,
body.layout-grand_luxury .meta span,
body.layout-grand_luxury_light .meta span,
body.layout-grand_luxury .add,
body.layout-grand_luxury_light .add,
body.layout-grand_luxury button,
body.layout-grand_luxury_light button,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury_light .cover-charge-info,
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury_light .info-product-card,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury_light .allergen-legend,
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury_light .allergen-grid article,
body.layout-grand_luxury .business-info-block,
body.layout-grand_luxury_light .business-info-block,
body.layout-grand_luxury footer,
body.layout-grand_luxury_light footer,
body.layout-grand_luxury .cart,
body.layout-grand_luxury_light .cart,
body.layout-grand_luxury .cart-fab,
body.layout-grand_luxury_light .cart-fab,
body.layout-grand_luxury .cart-fab-count,
body.layout-grand_luxury_light .cart-fab-count,
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury_light .cart-panel,
body.layout-grand_luxury .cart-close,
body.layout-grand_luxury_light .cart-close,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury_light .cart-item,
body.layout-grand_luxury .modal,
body.layout-grand_luxury_light .modal,
body.layout-grand_luxury .modal-box,
body.layout-grand_luxury_light .modal-box,
body.layout-grand_luxury #modalContent,
body.layout-grand_luxury_light #modalContent,
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury_light .modal-close,
body.layout-grand_luxury .modal-kicker,
body.layout-grand_luxury_light .modal-kicker,
body.layout-grand_luxury .modal-base-price,
body.layout-grand_luxury_light .modal-base-price,
body.layout-grand_luxury fieldset,
body.layout-grand_luxury_light fieldset,
body.layout-grand_luxury .option-choice,
body.layout-grand_luxury_light .option-choice,
body.layout-grand_luxury input,
body.layout-grand_luxury_light input,
body.layout-grand_luxury textarea,
body.layout-grand_luxury_light textarea,
body.layout-grand_luxury select,
body.layout-grand_luxury_light select,
body.layout-grand_luxury .qty,
body.layout-grand_luxury_light .qty,
body.layout-grand_luxury .qty button,
body.layout-grand_luxury_light .qty button,
body.layout-grand_luxury .modal-actions,
body.layout-grand_luxury_light .modal-actions,
body.layout-grand_luxury .btn-primary,
body.layout-grand_luxury_light .btn-primary,
body.layout-grand_luxury .btn-secondary,
body.layout-grand_luxury_light .btn-secondary,
body.layout-grand_luxury .back-top,
body.layout-grand_luxury_light .back-top{
  border-radius:0!important;
}

/* popup personalizzazione: nessuna pill residua su prezzo, kicker, quantity e pulsanti */
body.layout-grand_luxury #productModal .modal-base-price,
body.layout-grand_luxury_light #productModal .modal-base-price,
body.layout-grand_luxury #productModal .modal-kicker,
body.layout-grand_luxury_light #productModal .modal-kicker,
body.layout-grand_luxury #productModal .qty,
body.layout-grand_luxury_light #productModal .qty,
body.layout-grand_luxury #productModal .qty button,
body.layout-grand_luxury_light #productModal .qty button,
body.layout-grand_luxury #productModal .modal-close,
body.layout-grand_luxury_light #productModal .modal-close,
body.layout-grand_luxury #productModal .modal-actions button,
body.layout-grand_luxury_light #productModal .modal-actions button{
  border-radius:0!important;
}

/* card categorie: zero radius anche sulle cornici decorative */
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury .featured-category-card,
body.layout-grand_luxury_light .featured-category-card{
  border-radius:0!important;
}
body.layout-grand_luxury .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card::before{
  border-radius:0!important;
}

/* prodotti lusso: tutti coerenti con o senza foto */
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product,
body.layout-grand_luxury .product:has(> img),
body.layout-grand_luxury_light .product:has(> img),
body.layout-grand_luxury .product:not(:has(> img)),
body.layout-grand_luxury_light .product:not(:has(> img)){
  border-radius:0!important;
}
body.layout-grand_luxury .product > img,
body.layout-grand_luxury_light .product > img{
  border-radius:0!important;
}

/* sezione in evidenza ripristinata: non collassare mai e usa colore impostato */
.category-featured .category-products{display:grid!important;}
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 90%,#000 10%),color-mix(in srgb,var(--cat-color,var(--primary)) 60%,#000 40%))!important;
  border-color:color-mix(in srgb,var(--cat-color,var(--primary)) 68%,#fff 32%)!important;
  border-radius:0!important;
}
body.layout-grand_luxury .category-featured .category-hero-card h2,
body.layout-grand_luxury_light .category-featured .category-hero-card h2,
body.layout-grand_luxury .category-featured .category-hero-card p,
body.layout-grand_luxury_light .category-featured .category-hero-card p{color:#fff!important;text-shadow:0 10px 28px rgba(0,0,0,.48)!important;}

/* badge bandiera: squadrato, ma mantiene colore prodotto */
body.layout-grand_luxury .product .badge,
body.layout-grand_luxury_light .product .badge{
  border-radius:0!important;
}

/* ricerca: campo e pulsante azzera sempre squadrati */
body.layout-grand_luxury #menuSearchbar input,
body.layout-grand_luxury_light #menuSearchbar input,
body.layout-grand_luxury #clearSearch,
body.layout-grand_luxury_light #clearSearch{
  border-radius:0!important;
}

/* v1.12.10 - Lusso Elite Dark/Light: radius zero reale e definitivo su ogni elemento del frontend luxury */
body.layout-grand_luxury *,
body.layout-grand_luxury_light *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury_light *::before,
body.layout-grand_luxury *::after,
body.layout-grand_luxury_light *::after{
  border-radius:0!important;
}

body.layout-grand_luxury .category,
body.layout-grand_luxury_light .category,
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury .category-hero-card.category-color-card,
body.layout-grand_luxury_light .category-hero-card.category-color-card,
body.layout-grand_luxury .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury .featured-category-card,
body.layout-grand_luxury_light .featured-category-card{
  border-radius:0!important;
  overflow:hidden!important;
}

body.layout-grand_luxury .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card::before,
body.layout-grand_luxury .category-hero-card::after,
body.layout-grand_luxury_light .category-hero-card::after,
body.layout-grand_luxury .category-color-card::before,
body.layout-grand_luxury_light .category-color-card::before,
body.layout-grand_luxury .category-color-card::after,
body.layout-grand_luxury_light .category-color-card::after{
  border-radius:0!important;
}

body.layout-grand_luxury #menuSearchbar,
body.layout-grand_luxury_light #menuSearchbar,
body.layout-grand_luxury #menuSearchbar input,
body.layout-grand_luxury_light #menuSearchbar input,
body.layout-grand_luxury #menuSearchbar button,
body.layout-grand_luxury_light #menuSearchbar button,
body.layout-grand_luxury #clearSearch,
body.layout-grand_luxury_light #clearSearch,
body.layout-grand_luxury .sticky-category-bar,
body.layout-grand_luxury_light .sticky-category-bar,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury_light .cat-nav,
body.layout-grand_luxury .cat-nav a,
body.layout-grand_luxury_light .cat-nav a{
  border-radius:0!important;
}

body.layout-grand_luxury #productModal,
body.layout-grand_luxury_light #productModal,
body.layout-grand_luxury #productModal .modal,
body.layout-grand_luxury_light #productModal .modal,
body.layout-grand_luxury #productModal .modal-box,
body.layout-grand_luxury_light #productModal .modal-box,
body.layout-grand_luxury #productModal .modal-product-head,
body.layout-grand_luxury_light #productModal .modal-product-head,
body.layout-grand_luxury #productModal .modal-kicker,
body.layout-grand_luxury_light #productModal .modal-kicker,
body.layout-grand_luxury #productModal .modal-base-price,
body.layout-grand_luxury_light #productModal .modal-base-price,
body.layout-grand_luxury #productModal .modal-close,
body.layout-grand_luxury_light #productModal .modal-close,
body.layout-grand_luxury #productModal fieldset,
body.layout-grand_luxury_light #productModal fieldset,
body.layout-grand_luxury #productModal .option-choice,
body.layout-grand_luxury_light #productModal .option-choice,
body.layout-grand_luxury #productModal .product-note-field,
body.layout-grand_luxury_light #productModal .product-note-field,
body.layout-grand_luxury #productModal textarea,
body.layout-grand_luxury_light #productModal textarea,
body.layout-grand_luxury #productModal .qty,
body.layout-grand_luxury_light #productModal .qty,
body.layout-grand_luxury #productModal .qty button,
body.layout-grand_luxury_light #productModal .qty button,
body.layout-grand_luxury #productModal .modal-actions,
body.layout-grand_luxury_light #productModal .modal-actions,
body.layout-grand_luxury #productModal .modal-actions button,
body.layout-grand_luxury_light #productModal .modal-actions button{
  border-radius:0!important;
}

/* Mantiene visibile la sezione In evidenza in tutti i layout quando abilitata e ci sono prodotti in evidenza. */
.category-featured{display:block!important;}
.category-featured .category-products{display:grid!important;}


/* v1.12.11 - Lusso Elite: light quasi bianco + dark controls scuri */
body.layout-grand_luxury_light{
  --lux-bg:#fbfaf7!important;
  --lux-panel:#fffdfa!important;
  --lux-panel-soft:#f6f1e9!important;
  background:#fbfaf7!important;
  background-image:linear-gradient(180deg,#ffffff 0%,#fbfaf7 58%,#f8f3ea 100%)!important;
}
body.layout-grand_luxury_light::before{
  opacity:.10!important;
}
body.layout-grand_luxury_light .wrap,
body.layout-grand_luxury_light .sticky-category-bar,
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury_light .cat-nav{
  background:transparent!important;
}
body.layout-grand_luxury_light .language-switcher{
  background:#fffdfa!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.18)!important;
  box-shadow:0 14px 35px rgba(86,67,39,.08)!important;
}
body.layout-grand_luxury_light .language-title,
body.layout-grand_luxury_light .language-switcher *{
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .lang-btn{
  background:#fffdfa!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .lang-btn.active{
  background:#a4834a!important;
  color:#fff!important;
  border-color:#a4834a!important;
}
body.layout-grand_luxury_light .lang-btn.active *{color:#fff!important;}

body.layout-grand_luxury:not(.layout-grand_luxury_light) .language-switcher,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar input,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar button{
  background:#15130f!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.30)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .language-title,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .language-switcher *{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .lang-btn{
  background:#0f0e0a!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.26)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .lang-btn.active{
  background:#a4834a!important;
  color:#fff!important;
  border-color:#a4834a!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .lang-btn.active *{color:#fff!important;}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar input::placeholder{
  color:rgba(255,248,234,.70)!important;
  opacity:1!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .sticky-category-bar,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .cat-nav,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .sticky-category-bar .cat-nav{
  background:rgba(7,7,5,.92)!important;
  border:0!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury_light .searchbar button{
  background:#fffdfa!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.20)!important;
  box-shadow:0 12px 26px rgba(86,67,39,.08)!important;
}
body.layout-grand_luxury_light .searchbar input::placeholder{
  color:#7f7668!important;
  opacity:1!important;
}

/* v1.12.12 - fix reale: popup addizionali dark + ripristino sfondo Light precedente */
/* Lusso Light: torna allo sfondo caldo/elegante pre-v1.12.11 */
body.layout-grand_luxury_light{
  --lux-bg:#f7f1e7!important;
  --lux-panel:#fffaf2!important;
  --lux-panel-soft:#f1e6d6!important;
  background:
    radial-gradient(circle at 14% 0%,rgba(212,183,129,.32),transparent 30vw),
    radial-gradient(circle at 86% 7%,rgba(255,255,255,.72),transparent 28vw),
    linear-gradient(180deg,#fffaf1 0%,#f4eadb 54%,#efe2d0 100%)!important;
  color:#19150f!important;
}
body.layout-grand_luxury_light::before{
  opacity:.28!important;
  background-image:linear-gradient(rgba(164,131,74,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(164,131,74,.08) 1px,transparent 1px)!important;
}

/* Lusso Dark: tutti gli addizionali/quantità nel popup devono restare scuri e leggibili */
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-group,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-note-field{
  background:#1b1812!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.32)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty{
  background:#0d0c08!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.32)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice *,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty *,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty b{
  color:#fff8ea!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty b{
  color:#fff!important;
  font-weight:950!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-qty,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty{
  background:#15130f!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.34)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-qty .opt-count,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty strong{
  color:#fff8ea!important;
  opacity:1!important;
  font-weight:950!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-qty button,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty button,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .opt-minus,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .opt-plus{
  background:#a4834a!important;
  color:#fff!important;
  border:1px solid rgba(216,180,106,.52)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input[type="checkbox"],
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input[type="radio"]{
  background:#fff!important;
  border-color:rgba(255,248,234,.82)!important;
  accent-color:#a4834a!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input:not([type="checkbox"]):not([type="radio"]){
  background:#0d0c08!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.32)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea::placeholder,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input::placeholder{
  color:rgba(255,248,234,.66)!important;
  opacity:1!important;
}

/* Mantiene comunque il radius zero anche dopo questi fix */
body.layout-grand_luxury *,
body.layout-grand_luxury_light *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury_light *::before,
body.layout-grand_luxury *::after,
body.layout-grand_luxury_light *::after{
  border-radius:0!important;
}


/* v1.12.13 - Lusso Elite Light mobile: rimuove ombre da foto prodotto e badge/etichette prodotto */
@media (max-width:680px){
  body.layout-grand_luxury_light .product > img,
  body.layout-grand_luxury_light .product:has(> img) > img{
    box-shadow:none!important;
    filter:none!important;
    text-shadow:none!important;
  }
  body.layout-grand_luxury_light .product .product-badges,
  body.layout-grand_luxury_light .product .product-badges *,
  body.layout-grand_luxury_light .product .badge,
  body.layout-grand_luxury_light .product .badge[style]{
    box-shadow:none!important;
    text-shadow:none!important;
    filter:none!important;
  }
  body.layout-grand_luxury_light .product .badge::before,
  body.layout-grand_luxury_light .product .badge::after,
  body.layout-grand_luxury_light .product .product-badges::before,
  body.layout-grand_luxury_light .product .product-badges::after{
    box-shadow:none!important;
    text-shadow:none!important;
    filter:none!important;
  }
}

/* v2.0.15 - Frontend: categorie e prodotti dentro un'unica card
   Ogni sezione categoria diventa una card unica: titolo in alto, prodotti sotto separati da linee.
   In accordion chiuso resta visibile solo la card titolo colorata/immagine. */
body .category[data-category-section]{
  background:var(--card)!important;
  border:1px solid color-mix(in srgb,var(--text) 10%,transparent)!important;
  border-radius:var(--radius)!important;
  overflow:hidden!important;
  padding:0!important;
  box-shadow:0 16px 42px rgba(17,24,39,.07)!important;
}
body.layout-grand_luxury .category[data-category-section]{
  background:var(--lux-panel, var(--card))!important;
  border-color:rgba(216,180,106,.24)!important;
  box-shadow:0 28px 88px rgba(0,0,0,.22)!important;
}
body.layout-grand_luxury_light .category[data-category-section]{
  background:var(--card)!important;
  border-color:rgba(120,92,44,.14)!important;
  box-shadow:0 18px 44px rgba(55,43,22,.08)!important;
}
body .category[data-category-section] .category-hero-card,
body .category[data-category-section] .featured-category-card{
  margin:0!important;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body .category[data-category-section] .category-hero-card::before,
body .category[data-category-section] .category-hero-card::after{
  border-radius:0!important;
}
body .category[data-category-section] .category-products{
  background:var(--card)!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .category[data-category-section] .category-products{
  background:var(--lux-panel, var(--card))!important;
}
body.layout-grand_luxury_light .category[data-category-section] .category-products{
  background:var(--card)!important;
}
body .category[data-category-section] .category-products .product{
  margin:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  border:0!important;
  border-top:1px solid color-mix(in srgb,var(--text) 11%,transparent)!important;
  background:transparent!important;
}
body.layout-grand_luxury .category[data-category-section] .category-products .product{
  border-top-color:rgba(216,180,106,.18)!important;
}
body.layout-grand_luxury_light .category[data-category-section] .category-products .product{
  border-top-color:rgba(120,92,44,.13)!important;
}
body .category[data-category-section] .category-products .product:first-child{
  border-top:1px solid color-mix(in srgb,var(--text) 11%,transparent)!important;
}
body.layout-cards .category[data-category-section] .category-products,
body.layout-luxury .category[data-category-section] .category-products,
body.layout-grand_luxury .category[data-category-section] .category-products{
  grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
}
body.layout-compact .category[data-category-section] .category-products{
  display:flex!important;
  flex-direction:column!important;
}
body.layout-cards .category[data-category-section] .category-products .product,
body.layout-luxury .category[data-category-section] .category-products .product,
body.layout-grand_luxury .category[data-category-section] .category-products .product{
  min-width:0!important;
}
body.category-mode-normal .category[data-category-section] .category-products{
  display:grid!important;
}
body.category-mode-normal.layout-compact .category[data-category-section] .category-products{
  display:flex!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open),
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open){
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open) .category-products,
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open) .category-products{
  display:none!important;
  padding:0!important;
  margin:0!important;
}
body.category-mode-accordion .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto .category[data-category-section].accordion-open .category-products{
  display:grid!important;
}
body.category-mode-accordion.layout-compact .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto.layout-compact .category[data-category-section].accordion-open .category-products{
  display:flex!important;
  flex-direction:column!important;
}
@media(max-width:980px){
  body.layout-cards .category[data-category-section] .category-products,
  body.layout-luxury .category[data-category-section] .category-products,
  body.layout-grand_luxury .category[data-category-section] .category-products{
    grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  body .category[data-category-section]{
    border-radius:var(--radius)!important;
  }
  body.layout-grand_luxury .category[data-category-section],
  body.layout-grand_luxury_light .category[data-category-section]{
    border-radius:0!important;
  }
  body.layout-cards .category[data-category-section] .category-products,
  body.layout-luxury .category[data-category-section] .category-products,
  body.layout-grand_luxury .category[data-category-section] .category-products{
    grid-template-columns:1fr!important;
  }
  body .category[data-category-section] .category-products .product{
    border-left:0!important;
    border-right:0!important;
  }
}

/* v2.0.27 delivery */
.delivery-quote{margin:.5rem 0 0;padding:.65rem .8rem;border:1px solid rgba(0,0,0,.08);background:rgba(16,185,129,.08);font-weight:800}
.delivery-quote.error{background:rgba(239,68,68,.08);color:#991b1b}


/* v2.0.29 - Delivery Places autocomplete sopra al carrello mobile */
.pac-container{z-index:999999!important;font-family:inherit!important;border-radius:0!important;box-shadow:0 18px 48px rgba(0,0,0,.22)!important;}
.pac-item{padding:10px 12px!important;cursor:pointer!important;}

/* v2.0.35 - Carrello frontend rifinito */
.cart{z-index:90!important;}
.cart>button.cart-fab,
.cart>button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-height:58px!important;
  padding:14px 18px!important;
  border:1px solid color-mix(in srgb,var(--accent) 82%,#fff)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 94%,#fff),color-mix(in srgb,var(--accent) 76%,#000))!important;
  color:#fff!important;
  box-shadow:0 18px 44px rgba(15,23,42,.22)!important;
}
.cart-fab-text{font-weight:950!important;letter-spacing:.01em!important;}
.cart-fab-count{
  background:#fff!important;
  color:var(--accent)!important;
  border:1px solid rgba(0,0,0,.06)!important;
  box-shadow:0 7px 18px rgba(15,23,42,.18)!important;
}
.cart-panel{
  width:min(460px,calc(100vw - 24px))!important;
  max-height:min(82vh,760px)!important;
  padding:0!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#fff,#fbfaf8)!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:0 32px 96px rgba(15,23,42,.30)!important;
}
.cart-panel::before{
  content:'';
  display:block;
  height:6px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
}
.cart-panel h3{
  margin:0!important;
  padding:20px 62px 16px 22px!important;
  font-size:24px!important;
  line-height:1.05!important;
  color:var(--text)!important;
  border-bottom:1px solid rgba(15,23,42,.08)!important;
  background:rgba(255,255,255,.72)!important;
}
.cart-close{
  top:14px!important;
  right:14px!important;
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  background:#f3f4f6!important;
  color:#111827!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:none!important;
}
#cartItems{
  max-height:28vh!important;
  overflow:auto!important;
  padding:12px 18px 4px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.025),transparent)!important;
}
.cart-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:4px 12px!important;
  align-items:start!important;
  padding:13px 14px!important;
  margin:0 0 10px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(15,23,42,.045)!important;
}
.cart-item h4{
  margin:0!important;
  font-size:15px!important;
  line-height:1.25!important;
  color:var(--text)!important;
}
.cart-item small{
  grid-column:1 / -1!important;
  color:var(--muted)!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  margin-top:3px!important;
}
.cart-item b{
  grid-column:2!important;
  grid-row:1!important;
  font-size:15px!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
.cart-item button{
  grid-column:1 / -1!important;
  justify-self:start!important;
  margin-top:7px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  background:#fff1f2!important;
  color:#be123c!important;
  border:1px solid rgba(190,18,60,.13)!important;
  font-size:12px!important;
  text-transform:capitalize!important;
}
.cart-panel label,
.delivery-method-box,
#deliveryAddressWrap,
.cart-panel #orderMsg{
  margin-left:18px!important;
  margin-right:18px!important;
}
.cart-panel label{
  gap:7px!important;
  margin-top:10px!important;
  margin-bottom:10px!important;
  color:var(--text)!important;
  font-size:13px!important;
  letter-spacing:.01em!important;
}
.cart-panel label span:first-child,
.delivery-method-box strong{
  color:var(--text)!important;
  font-weight:950!important;
}
.cart-panel input,
.cart-panel textarea,
.cart-panel select{
  width:100%!important;
  min-height:46px!important;
  border:1px solid rgba(15,23,42,.12)!important;
  border-radius:16px!important;
  background:#fff!important;
  color:var(--text)!important;
  padding:12px 14px!important;
  font-size:15px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.cart-panel textarea{min-height:82px!important;resize:vertical!important;}
.cart-panel input:focus,
.cart-panel textarea:focus,
.cart-panel select:focus{
  outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)!important;
  border-color:color-mix(in srgb,var(--accent) 44%,#fff)!important;
}
.delivery-method-box{
  display:grid!important;
  gap:8px!important;
  margin-top:12px!important;
  padding:13px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.025),rgba(15,23,42,.01))!important;
}
.delivery-method-box .radio-line{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:9px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:14px!important;
  background:#fff!important;
  cursor:pointer!important;
}
.delivery-method-box input[type="radio"]{
  width:18px!important;
  min-height:18px!important;
  height:18px!important;
  padding:0!important;
  accent-color:var(--accent)!important;
}
.delivery-quote{
  margin:8px 0 0!important;
  padding:11px 13px!important;
  border-radius:14px!important;
  background:rgba(16,185,129,.10)!important;
  border:1px solid rgba(16,185,129,.18)!important;
  color:#065f46!important;
  font-size:13px!important;
}
#cartTotal{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin:14px 18px 0!important;
  padding:15px 16px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 94%,#fff),color-mix(in srgb,var(--accent) 70%,#000))!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1.1!important;
  box-shadow:0 14px 34px color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
.cart-panel #sendOrder{
  width:calc(100% - 36px)!important;
  margin:12px 18px 18px!important;
  min-height:52px!important;
  border-radius:18px!important;
  font-size:16px!important;
  letter-spacing:.01em!important;
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 78%,#000))!important;
  color:#fff!important;
}
#orderMsg{
  display:block!important;
  padding:0 0 16px!important;
  color:var(--muted)!important;
  font-weight:750!important;
}

body.layout-grand_luxury .cart-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025)),#15130f!important;
  border-color:rgba(216,180,106,.28)!important;
  color:#fff7e7!important;
}
body.layout-grand_luxury .cart-panel h3,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury .delivery-method-box,
body.layout-grand_luxury .delivery-method-box .radio-line,
body.layout-grand_luxury .cart-panel input,
body.layout-grand_luxury .cart-panel textarea,
body.layout-grand_luxury .cart-panel select{
  background:#0f0e0a!important;
  color:#fff7e7!important;
  border-color:rgba(216,180,106,.28)!important;
}
body.layout-grand_luxury .cart-item h4,
body.layout-grand_luxury .cart-panel label span:first-child,
body.layout-grand_luxury .delivery-method-box strong{color:#fff7e7!important;}
body.layout-grand_luxury .cart-item small,
body.layout-grand_luxury #orderMsg{color:rgba(255,247,231,.72)!important;}
body.layout-grand_luxury .cart-item b{color:#d8bc78!important;}
body.layout-grand_luxury .cart-close{background:#1d1a14!important;color:#fff7e7!important;border-color:rgba(216,180,106,.30)!important;}
body.layout-grand_luxury .cart-item button{background:rgba(239,68,68,.12)!important;color:#fecaca!important;border-color:rgba(239,68,68,.25)!important;}
body.layout-grand_luxury .delivery-quote{background:rgba(16,185,129,.12)!important;color:#bbf7d0!important;border-color:rgba(16,185,129,.22)!important;}

body.layout-grand_luxury .cart>button.cart-fab,
body.layout-grand_luxury_light .cart>button.cart-fab,
body.layout-grand_luxury .cart>button,
body.layout-grand_luxury_light .cart>button,
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury_light .cart-panel,
body.layout-grand_luxury .cart-panel::before,
body.layout-grand_luxury_light .cart-panel::before,
body.layout-grand_luxury .cart-close,
body.layout-grand_luxury_light .cart-close,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury_light .cart-item,
body.layout-grand_luxury .cart-item button,
body.layout-grand_luxury_light .cart-item button,
body.layout-grand_luxury .cart-panel input,
body.layout-grand_luxury_light .cart-panel input,
body.layout-grand_luxury .cart-panel textarea,
body.layout-grand_luxury_light .cart-panel textarea,
body.layout-grand_luxury .cart-panel select,
body.layout-grand_luxury_light .cart-panel select,
body.layout-grand_luxury .delivery-method-box,
body.layout-grand_luxury_light .delivery-method-box,
body.layout-grand_luxury .delivery-method-box .radio-line,
body.layout-grand_luxury_light .delivery-method-box .radio-line,
body.layout-grand_luxury .delivery-quote,
body.layout-grand_luxury_light .delivery-quote,
body.layout-grand_luxury #cartTotal,
body.layout-grand_luxury_light #cartTotal,
body.layout-grand_luxury .cart-panel #sendOrder,
body.layout-grand_luxury_light .cart-panel #sendOrder{
  border-radius:0!important;
}

@media(max-width:680px){
  .cart{left:auto!important;right:14px!important;bottom:14px!important;}
  .cart>button.cart-fab{border-radius:999px!important;}
  body.layout-grand_luxury .cart>button.cart-fab,
  body.layout-grand_luxury_light .cart>button.cart-fab{border-radius:0!important;}
  .cart-panel{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    max-height:86vh!important;
    border-radius:24px 24px 0 0!important;
  }
  .cart-panel h3{padding:18px 62px 14px 18px!important;font-size:22px!important;}
  #cartItems{max-height:24vh!important;padding-left:14px!important;padding-right:14px!important;}
  .cart-panel label,.delivery-method-box,#deliveryAddressWrap,.cart-panel #orderMsg{margin-left:14px!important;margin-right:14px!important;}
  #cartTotal{margin-left:14px!important;margin-right:14px!important;}
  .cart-panel #sendOrder{width:calc(100% - 28px)!important;margin-left:14px!important;margin-right:14px!important;}
  body.layout-grand_luxury .cart-panel,
  body.layout-grand_luxury_light .cart-panel{border-radius:0!important;}
}


/* v2.0.36 - Carrello scrollabile + pulsante sempre colore principale */
.cart-panel{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
}
.cart.open .cart-panel{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
#cartItems{
  max-height:none!important;
  overflow:visible!important;
}
.cart>button.cart-fab,
.cart>button,
body.layout-grand_luxury .cart>button.cart-fab,
body.layout-grand_luxury_light .cart>button.cart-fab,
body.layout-grand_luxury .cart>button,
body.layout-grand_luxury_light .cart>button{
  background:var(--primary)!important;
  border-color:color-mix(in srgb,var(--primary) 86%,#fff)!important;
  color:#fff!important;
}
.cart-fab-count,
body.layout-grand_luxury .cart-fab-count,
body.layout-grand_luxury_light .cart-fab-count{
  color:var(--primary)!important;
}
@media(max-width:680px){
  .cart-panel{
    max-height:86vh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
  }
  #cartItems{
    max-height:none!important;
    overflow:visible!important;
  }
}

/* v2.0.39 - riepilogo prodotti e soglia delivery nel carrello */
.cart-products-summary{
  margin:10px 0 12px!important;
  padding:14px 16px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  background:color-mix(in srgb,var(--primary) 5%,var(--card))!important;
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(17,24,39,.05)!important;
}
.cart-products-summary>div{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:950;color:var(--text)!important;}
.cart-products-summary>div span{font-size:14px;color:var(--muted)!important;text-transform:uppercase;letter-spacing:.04em;}
.cart-products-summary>div strong{font-size:18px;color:var(--text)!important;}
.cart-products-summary small{display:block;margin-top:6px;color:var(--muted)!important;font-weight:800;line-height:1.35;}
.cart-products-summary small strong{color:var(--primary)!important;}
body.layout-grand_luxury .cart-products-summary{background:rgba(216,188,120,.08)!important;border-color:rgba(216,188,120,.22)!important;border-radius:0!important;}
body.layout-grand_luxury .cart-products-summary>div,
body.layout-grand_luxury .cart-products-summary>div strong{color:#fffaf0!important;}
body.layout-grand_luxury .cart-products-summary small{color:#cfc8b9!important;}
body.layout-grand_luxury .cart-products-summary small strong{color:#d8bc78!important;}
body.layout-grand_luxury_light .cart-products-summary{background:#fffaf1!important;border-color:#eadfcb!important;border-radius:0!important;}
body.layout-grand_luxury_light .cart-products-summary small strong{color:#9b7a45!important;}

/* v2.0.45 - Colori dettagli frontend da backend */
:root{
  --line-fallback:var(--line,#e5e7eb);
}
.product,
.category[data-category-section],
.category-products,
.category-hero-card,
.featured-category-card,
.cover-charge,
.allergen-legend,
.allergen-card,
.cart-panel,
.cart-item,
.delivery-method-box,
.delivery-method-box .radio-line,
.delivery-quote,
.cart-products-summary,
.modal-box,
.option-choice,
fieldset,
.inline-searchbar input,
.inline-searchbar button,
.searchbar input,
.searchbar button{border-color:var(--line)!important;}

.product{background:var(--card)!important;color:var(--text)!important;}
.product h3,.product h2,.product-title{color:var(--text)!important;}
.product p,.product .meta,.product .chips span,.product small{color:var(--muted)!important;}
.price strong,.product .price strong,.product-price,.cover-price{color:var(--price)!important;}
.product .price del,.price del{color:var(--muted)!important;}
.badge,.product .badge,.product-badges .badge{background:var(--badge-bg)!important;color:var(--badge-text)!important;border-color:color-mix(in srgb,var(--badge-bg) 75%,#000)!important;}
button.add,#sendOrder,.btn-primary,.product .add,.cart-panel #sendOrder,.modal-actions .btn-primary{background:var(--button)!important;color:var(--button-text)!important;border-color:var(--button)!important;}
.detail-only,.btn-secondary{color:var(--button)!important;border-color:color-mix(in srgb,var(--button) 35%,transparent)!important;background:color-mix(in srgb,var(--button) 8%,transparent)!important;}

.cat-nav a,.sticky-category-bar .cat-nav a{background:var(--cat-nav-bg)!important;color:var(--cat-nav-text)!important;border-color:var(--line)!important;}
.cat-nav a.active,.cat-nav a:hover,.sticky-category-bar .cat-nav a.active,.sticky-category-bar .cat-nav a:hover{background:var(--cat-nav-active-bg)!important;color:var(--cat-nav-active-text)!important;border-color:var(--cat-nav-active-bg)!important;}
.inline-searchbar input,.searchbar input,.search-overlay-head input,.cart-panel input,.cart-panel textarea,.cart-panel select,.modal-box input,.modal-box textarea,.modal-box select{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--text)!important;}
.inline-searchbar input::placeholder,.searchbar input::placeholder,.cart-panel input::placeholder,.cart-panel textarea::placeholder{color:color-mix(in srgb,var(--muted) 72%,transparent)!important;opacity:1!important;}
.inline-searchbar button,.searchbar button,.sticky-search-btn{background:var(--cat-nav-bg)!important;color:var(--cat-nav-text)!important;border-color:var(--line)!important;}
.inline-searchbar button:hover,.sticky-search-btn:hover,.sticky-search-btn.active{background:var(--cat-nav-active-bg)!important;color:var(--cat-nav-active-text)!important;}

.cart>button,.cart>button.cart-fab,body.layout-grand_luxury .cart>button.cart-fab,body.layout-grand_luxury_light .cart>button.cart-fab{background:var(--cart-button)!important;color:var(--cart-button-text)!important;border-color:var(--cart-button)!important;}
.cart-fab-count{color:var(--cart-button)!important;background:var(--cart-button-text)!important;}
.cart-panel,body.layout-grand_luxury .cart-panel,body.layout-grand_luxury_light .cart-panel{background:var(--cart-panel-bg)!important;color:var(--cart-text)!important;border-color:var(--cart-border)!important;}
.cart-panel h3,.cart-panel label span:first-child,.cart-item h4,.cart-products-summary strong,#cartTotal{color:var(--cart-text)!important;}
.cart-item,.cart-products-summary,.delivery-method-box,.delivery-method-box .radio-line,.delivery-quote,body.layout-grand_luxury .cart-item,body.layout-grand_luxury_light .cart-item{background:var(--cart-card-bg)!important;border-color:var(--cart-border)!important;color:var(--cart-text)!important;}
.cart-item small,.cart-products-summary small,#orderMsg,.delivery-quote small{color:var(--cart-muted)!important;}
.cart-item b,.delivery-quote b{color:var(--price)!important;}
.cart-close{background:var(--cart-card-bg)!important;color:var(--cart-text)!important;border:1px solid var(--cart-border)!important;}
.cart-panel input,.cart-panel textarea,.cart-panel select{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--cart-text)!important;}

body.layout-grand_luxury .price strong,body.layout-grand_luxury_light .price strong,
body.layout-grand_luxury .product-price,body.layout-grand_luxury_light .product-price{color:var(--price)!important;}
body.layout-grand_luxury .product,body.layout-grand_luxury_light .product{border-color:var(--line)!important;}


/* v2.0.46 - colori singoli per badge prodotto e categorie */
.category-hero-card{background-color:var(--cat-color, var(--cat-nav-active-bg))!important;}
.category-color-card{background:linear-gradient(135deg,var(--cat-color, var(--cat-nav-active-bg)),color-mix(in srgb,var(--cat-color, var(--cat-nav-active-bg)) 78%,#111827))!important;}
.category-hero-card .category-hero-content h2,
.category-hero-card .category-hero-content p{color:var(--cat-text-color, var(--cat-nav-active-text))!important;}
.category-hero-card .category-accordion-icon{color:var(--cat-text-color, var(--cat-nav-active-text))!important;}
.category-with-image .category-hero-card::after{background:linear-gradient(90deg,color-mix(in srgb,var(--cat-color, #111827) 78%,transparent),rgba(17,24,39,.34) 56%,rgba(17,24,39,.12)),linear-gradient(0deg,rgba(17,24,39,.26),transparent 60%)!important;}
.product .badge:not(.soldout-badge){background:var(--badge-bg)!important;color:var(--badge-text)!important;border-color:var(--badge-bg)!important;}


/* v2.0.48 - Lusso Elite: stile luxury senza colori forzati, usa sempre i colori da Personalizzazione */
body.layout-grand_luxury{
  --lux-bg:var(--bg);
  --lux-card:var(--card);
  --lux-text:var(--text);
  --lux-muted:var(--muted);
  --lux-line:var(--line);
  --lux-primary:var(--primary);
  --lux-accent:var(--accent);
  --lux-button:var(--button);
  --lux-button-text:var(--button-text);
  --lux-price:var(--price);
  background:var(--lux-bg)!important;
  color:var(--lux-text)!important;
  letter-spacing:.01em;
}
body.layout-grand_luxury,
body.layout-grand_luxury *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury *::after{border-radius:0!important;}
body.layout-grand_luxury .hero{
  min-height:42vh!important;
  display:flex!important;
  align-items:end!important;
  border-bottom:1px solid var(--lux-line)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--lux-bg) 78%,var(--lux-primary) 22%),var(--lux-bg))!important;
  box-shadow:inset 0 -95px 120px color-mix(in srgb,var(--lux-bg) 76%,transparent)!important;
}
body.layout-grand_luxury .hero-inner{
  max-width:1180px!important;
  margin:0 auto!important;
  padding:78px 24px 54px!important;
  text-align:left!important;
  position:relative!important;
}
body.layout-grand_luxury .hero-inner::before{
  content:'';
  display:block;
  width:86px;
  height:1px;
  background:var(--lux-accent);
  margin-bottom:22px;
}
body.layout-grand_luxury .hero h1,
body.layout-grand_luxury .topbar h1{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(46px,8vw,104px)!important;
  line-height:.92!important;
  font-weight:500!important;
  letter-spacing:-.055em!important;
  color:var(--lux-text)!important;
  text-transform:none!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .hero p,
body.layout-grand_luxury .topbar p{
  color:var(--lux-accent)!important;
  font-size:clamp(14px,1.4vw,19px)!important;
  letter-spacing:.22em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .wrap{max-width:1180px!important;padding:28px 18px 90px!important;}
body.layout-grand_luxury .language-switcher,
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .sticky-category-bar{
  background:var(--lux-card)!important;
  border:1px solid var(--lux-line)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px)!important;
}
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury input,
body.layout-grand_luxury textarea,
body.layout-grand_luxury select{
  background:var(--input-bg)!important;
  color:var(--lux-text)!important;
  border:1px solid var(--input-border)!important;
}
body.layout-grand_luxury .searchbar input::placeholder{color:var(--lux-muted)!important;}
body.layout-grand_luxury .cat-nav a{
  background:var(--cat-nav-bg)!important;
  color:var(--cat-nav-text)!important;
  border:1px solid var(--lux-line)!important;
  text-transform:uppercase!important;
  letter-spacing:.13em!important;
  font-size:12px!important;
}
body.layout-grand_luxury .cat-nav a.active,
body.layout-grand_luxury .cat-nav a:hover{
  background:var(--cat-nav-active-bg)!important;
  color:var(--cat-nav-active-text)!important;
  border-color:var(--cat-nav-active-bg)!important;
}
body.layout-grand_luxury .category{
  background:var(--lux-card)!important;
  border:1px solid var(--lux-line)!important;
  margin:28px 0!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .featured-category-card{
  min-height:auto!important;
  padding:22px 26px!important;
  background:var(--cat-color,var(--cat-nav-active-bg))!important;
  border:0!important;
  border-bottom:1px solid var(--lux-line)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .category-hero-card h2,
body.layout-grand_luxury .featured-category-card h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(30px,4.2vw,54px)!important;
  font-weight:500!important;
  color:var(--cat-text-color,var(--cat-nav-active-text))!important;
  letter-spacing:-.035em!important;
  margin:0!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .category-hero-card p{color:var(--cat-text-color,var(--cat-nav-active-text))!important;opacity:.82!important;max-width:760px!important;}
body.layout-grand_luxury .category-products{display:block!important;padding:0!important;gap:0!important;background:transparent!important;}
body.layout-grand_luxury .product{
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  gap:22px!important;
  align-items:stretch!important;
  background:transparent!important;
  border:0!important;
  border-bottom:1px solid var(--lux-line)!important;
  box-shadow:none!important;
  padding:22px 26px!important;
  min-height:0!important;
}
body.layout-grand_luxury .product:last-child{border-bottom:0!important;}
body.layout-grand_luxury .product:hover{background:color-mix(in srgb,var(--lux-accent) 7%,transparent)!important;transform:none!important;}
body.layout-grand_luxury .product>img{width:132px!important;height:132px!important;object-fit:cover!important;border:1px solid var(--lux-line)!important;box-shadow:none!important;grid-row:1 / span 3!important;}
body.layout-grand_luxury .product h3{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(22px,2.4vw,34px)!important;line-height:1.02!important;font-weight:500!important;color:var(--lux-text)!important;letter-spacing:-.025em!important;margin:0 0 7px!important;}
body.layout-grand_luxury .product p{color:var(--lux-muted)!important;font-size:15px!important;line-height:1.55!important;max-width:760px!important;}
body.layout-grand_luxury .product-action-row,
body.layout-grand_luxury .product-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin-top:14px!important;}
body.layout-grand_luxury .price,
body.layout-grand_luxury .info-card-price{font-family:Georgia,'Times New Roman',serif!important;color:var(--lux-price)!important;font-size:clamp(24px,2.8vw,36px)!important;font-weight:500!important;letter-spacing:-.04em!important;}
body.layout-grand_luxury .add,
body.layout-grand_luxury button,
body.layout-grand_luxury .button,
body.layout-grand_luxury #sendOrder,
body.layout-grand_luxury .btn-primary{
  background:var(--lux-button)!important;
  color:var(--lux-button-text)!important;
  border:1px solid var(--lux-button)!important;
  box-shadow:none!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  font-weight:900!important;
}
body.layout-grand_luxury .badge{
  background:var(--badge-bg)!important;
  color:var(--badge-text)!important;
  box-shadow:none!important;
  border:0!important;
  min-width:48%!important;
  padding:8px 14px!important;
  text-align:left!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
}
body.layout-grand_luxury .meta span,
body.layout-grand_luxury .chips span{background:color-mix(in srgb,var(--lux-accent) 10%,transparent)!important;border:1px solid var(--lux-line)!important;color:var(--lux-text)!important;}
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury .modal-box{background:var(--cart-panel-bg)!important;border:1px solid var(--cart-border)!important;color:var(--cart-text)!important;box-shadow:none!important;}
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury .cart-summary-card,
body.layout-grand_luxury .delivery-quote-box,
body.layout-grand_luxury .option-choice{background:var(--cart-card-bg)!important;border:1px solid var(--cart-border)!important;color:var(--cart-text)!important;}
body.layout-grand_luxury .modal-base-price{background:transparent!important;color:var(--lux-price)!important;border:1px solid var(--lux-line)!important;}
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .cover-charge-info{background:var(--lux-card)!important;border:1px solid var(--lux-line)!important;color:var(--lux-text)!important;}
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury .info-product-card{background:var(--lux-card)!important;border:1px solid var(--lux-line)!important;color:var(--lux-text)!important;}
@media(max-width:760px){
  body.layout-grand_luxury .hero-inner{padding:64px 18px 42px!important;}
  body.layout-grand_luxury .product{display:block!important;padding:20px!important;}
  body.layout-grand_luxury .product>img{width:100%!important;height:230px!important;margin:0 0 16px!important;display:block!important;}
  body.layout-grand_luxury .product-action-row,body.layout-grand_luxury .product-bottom{align-items:flex-end!important;}
  body.layout-grand_luxury .category-hero-card{padding:18px 20px!important;}
}

/* v2.0.49 - Layout fissi: Signature Gallery + Lusso Elite Dark/Light
   Standard e Lista rapida continuano a usare i colori configurati in Personalizzazione. */
body.layout-editorial_gallery,
body.layout-luxury_dark,
body.layout-luxury_light{
  --fixed-radius:0px;
}

/* Signature Gallery (Colori fissi) - sostituisce la vecchia Vetrina Fotografica */
body.layout-editorial_gallery{
  --sg-bg:#f3efe6;
  --sg-card:#fffdf8;
  --sg-ink:#171717;
  --sg-muted:#746b5d;
  --sg-line:#d9cdb9;
  --sg-accent:#8b5e2f;
  --sg-accent-2:#27351f;
  background:var(--sg-bg)!important;
  color:var(--sg-ink)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;
}
body.layout-editorial_gallery .hero{background:linear-gradient(135deg,rgba(23,23,23,.72),rgba(23,23,23,.18)),var(--sg-accent-2)!important;min-height:36vh!important;box-shadow:none!important;border-bottom:1px solid var(--sg-line)!important;}
body.layout-editorial_gallery .hero h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(40px,7vw,86px)!important;letter-spacing:-.05em!important;font-weight:500!important;color:#fffdf8!important;text-shadow:none!important;}
body.layout-editorial_gallery .hero p{color:#f3e6c8!important;letter-spacing:.12em!important;text-transform:uppercase!important;}
body.layout-editorial_gallery .wrap{max-width:1180px!important;}
body.layout-editorial_gallery .language-switcher,
body.layout-editorial_gallery .searchbar,
body.layout-editorial_gallery .sticky-category-bar{background:rgba(255,253,248,.94)!important;border:1px solid var(--sg-line)!important;box-shadow:0 18px 45px rgba(39,53,31,.08)!important;}
body.layout-editorial_gallery .searchbar input{background:#fffdf8!important;color:var(--sg-ink)!important;border-color:var(--sg-line)!important;}
body.layout-editorial_gallery .cat-nav a{background:#fffdf8!important;color:var(--sg-ink)!important;border:1px solid var(--sg-line)!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:12px!important;}
body.layout-editorial_gallery .cat-nav a.active,
body.layout-editorial_gallery .cat-nav a:hover{background:var(--sg-accent-2)!important;color:#fffdf8!important;border-color:var(--sg-accent-2)!important;}
body.layout-editorial_gallery .category{background:var(--sg-card)!important;border:1px solid var(--sg-line)!important;box-shadow:0 22px 55px rgba(39,53,31,.08)!important;overflow:hidden!important;margin:28px 0!important;}
body.layout-editorial_gallery .category-hero-card{background:#efe3cf!important;border:0!important;border-bottom:1px solid var(--sg-line)!important;min-height:auto!important;padding:26px 30px!important;}
body.layout-editorial_gallery .category-hero-card h2{font-family:Georgia,'Times New Roman',serif!important;color:var(--sg-ink)!important;font-weight:500!important;font-size:clamp(32px,4vw,56px)!important;letter-spacing:-.04em!important;}
body.layout-editorial_gallery .category-hero-card p{color:var(--sg-muted)!important;}
body.layout-editorial_gallery .category-with-image .category-hero-card::after{background:linear-gradient(90deg,rgba(23,23,23,.70),rgba(23,23,23,.25),rgba(23,23,23,.08))!important;}
body.layout-editorial_gallery .category-with-image .category-hero-card h2,
body.layout-editorial_gallery .category-with-image .category-hero-card p{color:#fffdf8!important;}
body.layout-editorial_gallery .category-products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;padding:0!important;background:transparent!important;}
body.layout-editorial_gallery .product{display:grid!important;grid-template-columns:152px minmax(0,1fr)!important;gap:18px!important;background:transparent!important;border:0!important;border-right:1px solid var(--sg-line)!important;border-bottom:1px solid var(--sg-line)!important;box-shadow:none!important;padding:20px!important;}
body.layout-editorial_gallery .product:nth-child(2n){border-right:0!important;}
body.layout-editorial_gallery .product>img{width:152px!important;height:152px!important;object-fit:cover!important;box-shadow:none!important;}
body.layout-editorial_gallery .product h3{font-family:Georgia,'Times New Roman',serif!important;color:var(--sg-ink)!important;font-size:25px!important;font-weight:500!important;letter-spacing:-.025em!important;}
body.layout-editorial_gallery .product p{color:var(--sg-muted)!important;line-height:1.5!important;}
body.layout-editorial_gallery .price strong,.layout-editorial_gallery .product-price{color:var(--sg-accent)!important;font-family:Georgia,'Times New Roman',serif!important;font-size:25px!important;}
body.layout-editorial_gallery button.add,
body.layout-editorial_gallery #sendOrder,
body.layout-editorial_gallery .cart>button{background:var(--sg-accent-2)!important;color:#fffdf8!important;border-color:var(--sg-accent-2)!important;box-shadow:none!important;}
body.layout-editorial_gallery .badge:not(.soldout-badge){background:var(--sg-accent)!important;color:#fffdf8!important;border-color:var(--sg-accent)!important;box-shadow:none!important;}
body.layout-editorial_gallery .cart-panel,
body.layout-editorial_gallery .modal-box{background:#fffdf8!important;color:var(--sg-ink)!important;border:1px solid var(--sg-line)!important;box-shadow:0 24px 80px rgba(23,23,23,.18)!important;}

/* Lusso Elite Dark / Light - colori fissi, non dipendono dalla Personalizzazione */
body.layout-luxury_dark,
body.layout-luxury_light,
body.layout-luxury_dark *,
body.layout-luxury_light *,
body.layout-luxury_dark *::before,
body.layout-luxury_light *::before,
body.layout-luxury_dark *::after,
body.layout-luxury_light *::after{border-radius:0!important;}
body.layout-luxury_dark{
  --lx-bg:#070707;--lx-card:#11100e;--lx-card-2:#171512;--lx-text:#fff9ec;--lx-muted:#b9ad98;--lx-line:#3a3022;--lx-gold:#d5b56d;--lx-gold-2:#8f6b2f;--lx-black:#070707;
  background:radial-gradient(circle at 22% -10%,rgba(213,181,109,.14),transparent 32%),linear-gradient(180deg,#090909,#030303)!important;color:var(--lx-text)!important;
}
body.layout-luxury_light{
  --lx-bg:#f5efe3;--lx-card:#fffaf1;--lx-card-2:#f0e4cf;--lx-text:#1e1912;--lx-muted:#766a58;--lx-line:#d8c7a7;--lx-gold:#9b7437;--lx-gold-2:#6f4e22;--lx-black:#1e1912;
  background:linear-gradient(180deg,#fbf7ef,#efe4d1)!important;color:var(--lx-text)!important;
}
body.layout-luxury_dark .hero,body.layout-luxury_light .hero{min-height:46vh!important;display:flex!important;align-items:end!important;border-bottom:1px solid var(--lx-line)!important;box-shadow:none!important;background:linear-gradient(125deg,rgba(0,0,0,.74),rgba(0,0,0,.18)),var(--lx-bg)!important;}
body.layout-luxury_light .hero{background:linear-gradient(125deg,rgba(30,25,18,.12),rgba(155,116,55,.10)),#fffaf1!important;}
body.layout-luxury_dark .hero-inner,body.layout-luxury_light .hero-inner{max-width:1180px!important;margin:0 auto!important;padding:82px 24px 54px!important;text-align:left!important;}
body.layout-luxury_dark .hero-inner::before,body.layout-luxury_light .hero-inner::before{content:'';display:block;width:96px;height:1px;background:var(--lx-gold);margin-bottom:24px;}
body.layout-luxury_dark .hero h1,body.layout-luxury_light .hero h1,
body.layout-luxury_dark .topbar h1,body.layout-luxury_light .topbar h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(48px,8vw,108px)!important;line-height:.9!important;font-weight:500!important;letter-spacing:-.06em!important;color:var(--lx-text)!important;text-shadow:none!important;}
body.layout-luxury_dark .hero p,body.layout-luxury_light .hero p{color:var(--lx-gold)!important;text-transform:uppercase!important;letter-spacing:.23em!important;font-size:13px!important;}
body.layout-luxury_dark .wrap,body.layout-luxury_light .wrap{max-width:1180px!important;padding:30px 18px 92px!important;}
body.layout-luxury_dark .language-switcher,body.layout-luxury_light .language-switcher,
body.layout-luxury_dark .searchbar,body.layout-luxury_light .searchbar,
body.layout-luxury_dark .sticky-category-bar,body.layout-luxury_light .sticky-category-bar{background:var(--lx-card)!important;border:1px solid var(--lx-line)!important;box-shadow:none!important;}
body.layout-luxury_dark input,body.layout-luxury_dark textarea,body.layout-luxury_dark select,body.layout-luxury_dark .searchbar input{background:#0b0b0a!important;color:var(--lx-text)!important;border:1px solid var(--lx-line)!important;}
body.layout-luxury_light input,body.layout-luxury_light textarea,body.layout-luxury_light select,body.layout-luxury_light .searchbar input{background:#fffaf1!important;color:var(--lx-text)!important;border:1px solid var(--lx-line)!important;}
body.layout-luxury_dark .searchbar input::placeholder,body.layout-luxury_light .searchbar input::placeholder{color:var(--lx-muted)!important;}
body.layout-luxury_dark .cat-nav a,body.layout-luxury_light .cat-nav a{background:transparent!important;color:var(--lx-muted)!important;border:1px solid var(--lx-line)!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-size:11px!important;}
body.layout-luxury_dark .cat-nav a.active,body.layout-luxury_dark .cat-nav a:hover,
body.layout-luxury_light .cat-nav a.active,body.layout-luxury_light .cat-nav a:hover{background:var(--lx-gold)!important;color:var(--lx-black)!important;border-color:var(--lx-gold)!important;}
body.layout-luxury_dark .category,body.layout-luxury_light .category{background:var(--lx-card)!important;border:1px solid var(--lx-line)!important;margin:30px 0!important;overflow:hidden!important;box-shadow:none!important;}
body.layout-luxury_dark .category-hero-card,body.layout-luxury_light .category-hero-card{background:var(--lx-card-2)!important;border:0!important;border-bottom:1px solid var(--lx-line)!important;padding:24px 28px!important;min-height:auto!important;box-shadow:none!important;}
body.layout-luxury_dark .category-hero-card h2,body.layout-luxury_light .category-hero-card h2{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(34px,4.5vw,62px)!important;font-weight:500!important;letter-spacing:-.045em!important;color:var(--lx-text)!important;text-shadow:none!important;margin:0!important;}
body.layout-luxury_dark .category-hero-card p,body.layout-luxury_light .category-hero-card p{color:var(--lx-muted)!important;}
body.layout-luxury_dark .category-with-image .category-hero-card::after,body.layout-luxury_light .category-with-image .category-hero-card::after{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.32),rgba(0,0,0,.05))!important;}
body.layout-luxury_dark .category-with-image .category-hero-card h2,body.layout-luxury_light .category-with-image .category-hero-card h2,
body.layout-luxury_dark .category-with-image .category-hero-card p,body.layout-luxury_light .category-with-image .category-hero-card p{color:#fff9ec!important;}
body.layout-luxury_dark .category-products,body.layout-luxury_light .category-products{display:block!important;padding:0!important;gap:0!important;background:transparent!important;}
body.layout-luxury_dark .product,body.layout-luxury_light .product{display:grid!important;grid-template-columns:138px minmax(0,1fr)!important;gap:24px!important;align-items:stretch!important;background:transparent!important;border:0!important;border-bottom:1px solid var(--lx-line)!important;box-shadow:none!important;padding:24px 28px!important;}
body.layout-luxury_dark .product:last-child,body.layout-luxury_light .product:last-child{border-bottom:0!important;}
body.layout-luxury_dark .product>img,body.layout-luxury_light .product>img{width:138px!important;height:138px!important;object-fit:cover!important;border:1px solid var(--lx-line)!important;box-shadow:none!important;grid-row:1 / span 4!important;}
body.layout-luxury_dark .product h3,body.layout-luxury_light .product h3{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(23px,2.5vw,36px)!important;line-height:1.02!important;font-weight:500!important;letter-spacing:-.03em!important;color:var(--lx-text)!important;margin:0 0 8px!important;}
body.layout-luxury_dark .product p,body.layout-luxury_light .product p{color:var(--lx-muted)!important;font-size:15px!important;line-height:1.55!important;max-width:760px!important;}
body.layout-luxury_dark .product-action-row,body.layout-luxury_light .product-action-row,
body.layout-luxury_dark .product-bottom,body.layout-luxury_light .product-bottom{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin-top:14px!important;}
body.layout-luxury_dark .price,body.layout-luxury_light .price,
body.layout-luxury_dark .price strong,body.layout-luxury_light .price strong,
body.layout-luxury_dark .product-price,body.layout-luxury_light .product-price{font-family:Georgia,'Times New Roman',serif!important;color:var(--lx-gold)!important;font-size:clamp(24px,2.7vw,36px)!important;font-weight:500!important;letter-spacing:-.04em!important;}
body.layout-luxury_dark .add,body.layout-luxury_light .add,
body.layout-luxury_dark #sendOrder,body.layout-luxury_light #sendOrder,
body.layout-luxury_dark .cart>button,body.layout-luxury_light .cart>button,
body.layout-luxury_dark .button,body.layout-luxury_light .button{background:var(--lx-gold)!important;color:var(--lx-black)!important;border:1px solid var(--lx-gold)!important;box-shadow:none!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-weight:900!important;}
body.layout-luxury_dark .badge:not(.soldout-badge),body.layout-luxury_light .badge:not(.soldout-badge){background:var(--lx-gold)!important;color:var(--lx-black)!important;border:0!important;box-shadow:none!important;text-transform:uppercase!important;letter-spacing:.12em!important;}
body.layout-luxury_dark .meta span,body.layout-luxury_dark .chips span{background:#0b0b0a!important;border:1px solid var(--lx-line)!important;color:var(--lx-muted)!important;}
body.layout-luxury_light .meta span,body.layout-luxury_light .chips span{background:#fffaf1!important;border:1px solid var(--lx-line)!important;color:var(--lx-muted)!important;}
body.layout-luxury_dark .cart-panel,body.layout-luxury_dark .modal-box{background:#0d0d0c!important;color:var(--lx-text)!important;border:1px solid var(--lx-line)!important;box-shadow:none!important;}
body.layout-luxury_light .cart-panel,body.layout-luxury_light .modal-box{background:#fffaf1!important;color:var(--lx-text)!important;border:1px solid var(--lx-line)!important;box-shadow:none!important;}
body.layout-luxury_dark .cart-item,body.layout-luxury_dark .cart-summary-card,body.layout-luxury_dark .delivery-quote-box,body.layout-luxury_dark .option-choice,
body.layout-luxury_light .cart-item,body.layout-luxury_light .cart-summary-card,body.layout-luxury_light .delivery-quote-box,body.layout-luxury_light .option-choice{background:var(--lx-card-2)!important;border:1px solid var(--lx-line)!important;color:var(--lx-text)!important;}
body.layout-luxury_dark .modal-base-price,body.layout-luxury_light .modal-base-price{background:transparent!important;color:var(--lx-gold)!important;border:1px solid var(--lx-line)!important;}
body.layout-luxury_dark .allergen-legend,body.layout-luxury_dark .cover-charge-info,body.layout-luxury_dark .allergen-grid article,body.layout-luxury_dark .info-product-card,
body.layout-luxury_light .allergen-legend,body.layout-luxury_light .cover-charge-info,body.layout-luxury_light .allergen-grid article,body.layout-luxury_light .info-product-card{background:var(--lx-card)!important;border:1px solid var(--lx-line)!important;color:var(--lx-text)!important;}
@media(max-width:900px){body.layout-editorial_gallery .category-products{grid-template-columns:1fr!important;}body.layout-editorial_gallery .product{border-right:0!important;}}
@media(max-width:760px){
  body.layout-luxury_dark .hero-inner,body.layout-luxury_light .hero-inner{padding:64px 18px 42px!important;}
  body.layout-luxury_dark .product,body.layout-luxury_light .product,body.layout-editorial_gallery .product{display:block!important;padding:20px!important;}
  body.layout-luxury_dark .product>img,body.layout-luxury_light .product>img,body.layout-editorial_gallery .product>img{width:100%!important;height:230px!important;margin:0 0 16px!important;display:block!important;}
  body.layout-luxury_dark .product-action-row,body.layout-luxury_light .product-action-row,body.layout-editorial_gallery .product-action-row{align-items:flex-end!important;}
}


/* v2.0.50 - Ripristino Lusso Elite da v2.0.44 */
/* v1.11.0 - Layout Lusso Elite: ristoranti, bar e hotel premium */
body.layout-grand_luxury{
  --lux-bg:#080806;
  --lux-panel:#11100c;
  --lux-panel-soft:#19170f;
  --lux-gold:color-mix(in srgb,var(--accent) 72%,#d8b46a);
  --lux-gold-soft:color-mix(in srgb,var(--accent) 38%,#f5dfaa 62%);
  --lux-cream:#f7f0df;
  --lux-muted:rgba(247,240,223,.68);
  background:
    radial-gradient(circle at 18% 4%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 30vw),
    radial-gradient(circle at 82% 10%,rgba(255,255,255,.07),transparent 28vw),
    linear-gradient(180deg,#050504 0%,#0b0a07 48%,#080806 100%)!important;
  color:var(--lux-cream)!important;
}
body.layout-grand_luxury.font-system,
body.layout-grand_luxury.font-serif,
body.layout-grand_luxury.font-rounded{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
}
body.layout-grand_luxury::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.55;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px);
  background-size:58px 58px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.9),transparent 76%);
}
body.layout-grand_luxury .hero{
  min-height:440px!important;
  align-items:center!important;
  background-color:#050504!important;
  background-size:cover!important;
  background-position:center!important;
  border-bottom:1px solid rgba(216,180,106,.28)!important;
  box-shadow:0 34px 120px rgba(0,0,0,.55)!important;
}
body.layout-grand_luxury .hero[style]{
  background-blend-mode:multiply,normal!important;
}
body.layout-grand_luxury .hero-inner{
  width:min(1180px,90vw)!important;
  padding:88px 0!important;
  text-align:center!important;
}
body.layout-grand_luxury .logo{
  max-width:118px!important;
  max-height:118px!important;
  padding:10px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(216,180,106,.46)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.38)!important;
}
body.layout-grand_luxury .hero h1,
body.layout-grand_luxury .topbar h1{
  margin:22px auto 10px!important;
  max-width:920px!important;
  color:var(--lux-cream)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(48px,8vw,112px)!important;
  line-height:.86!important;
  letter-spacing:-.07em!important;
  font-weight:700!important;
  text-shadow:0 24px 80px rgba(0,0,0,.72)!important;
}
body.layout-grand_luxury .hero p,
body.layout-grand_luxury .topbar p{
  margin:0 auto!important;
  max-width:720px!important;
  color:var(--lux-muted)!important;
  font-size:clamp(15px,1.45vw,20px)!important;
  line-height:1.65!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .table-pill,
body.layout-grand_luxury .eyebrow{
  background:rgba(216,180,106,.14)!important;
  color:var(--lux-gold-soft)!important;
  border:1px solid rgba(216,180,106,.35)!important;
}
body.layout-grand_luxury .wrap{
  width:min(1180px,90vw)!important;
  max-width:1180px!important;
  padding-top:36px!important;
}
body.layout-grand_luxury .topbar{
  justify-content:center!important;
  text-align:center!important;
  padding:46px 0 20px!important;
}
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .sticky-category-bar .cat-nav{
  background:rgba(8,8,6,.74)!important;
  backdrop-filter:blur(22px)!important;
}
body.layout-grand_luxury .searchbar{
  top:0!important;
  border-bottom:1px solid rgba(216,180,106,.16)!important;
}
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .searchbar button{
  background:rgba(255,255,255,.06)!important;
  color:var(--lux-cream)!important;
  border:1px solid rgba(216,180,106,.22)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.26)!important;
}
body.layout-grand_luxury .searchbar input::placeholder{color:rgba(247,240,223,.48)!important;}
body.layout-grand_luxury .cat-nav{
  gap:10px!important;
  padding-top:14px!important;
}
body.layout-grand_luxury .cat-nav a{
  color:var(--lux-cream)!important;
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(216,180,106,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  font-size:12px!important;
}
body.layout-grand_luxury .cat-nav a.active,
body.layout-grand_luxury .cat-nav a:hover{
  background:linear-gradient(135deg,var(--lux-gold),#8c6a2e)!important;
  color:#090806!important;
  border-color:rgba(255,236,182,.62)!important;
}
body.layout-grand_luxury .category{
  margin:48px 0 72px!important;
  scroll-margin-top:150px!important;
}
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .category-with-image .category-hero-card,
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury .featured-category-card{
  min-height:250px!important;
  padding:0!important;
  margin:0 0 28px!important;
  border-radius:34px!important;
  border:1px solid rgba(216,180,106,.30)!important;
  overflow:hidden!important;
  background-color:var(--lux-panel)!important;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.45) 48%,rgba(0,0,0,.10)),
    var(--cat-img)!important;
  box-shadow:0 28px 95px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08)!important;
  display:flex!important;
  align-items:center!important;
}
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-hero-card.category-color-card{
  background-image:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.12),transparent 24%),
    linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#000),#070705 72%)!important;
}
body.layout-grand_luxury .category-hero-card::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  border:1px solid rgba(216,180,106,.32)!important;
  border-radius:24px!important;
  pointer-events:none!important;
  z-index:1!important;
}
body.layout-grand_luxury .category-hero-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 45%,rgba(0,0,0,.20))!important;
}
body.layout-grand_luxury .category-hero-content,
body.layout-grand_luxury .featured-category-card .category-hero-content{
  position:relative!important;
  z-index:2!important;
  padding:46px 78px!important;
  color:var(--lux-cream)!important;
  text-shadow:0 18px 60px rgba(0,0,0,.72)!important;
}
body.layout-grand_luxury .category-hero-card h2,
body.layout-grand_luxury .category-featured .category-hero-card h2,
body.layout-grand_luxury .featured-category-card h2{
  color:var(--lux-cream)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(46px,6.4vw,92px)!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
  font-weight:700!important;
  margin:0!important;
}
body.layout-grand_luxury .category-hero-card p,
body.layout-grand_luxury .category-featured .category-hero-card p,
body.layout-grand_luxury .featured-category-card p{
  display:block!important;
  max-width:620px!important;
  margin:14px 0 0!important;
  color:var(--lux-muted)!important;
  font-size:15px!important;
  line-height:1.55!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .category-accordion-icon{
  z-index:5!important;
  right:34px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:50px!important;
  height:50px!important;
  border-radius:999px!important;
  background:rgba(8,8,6,.62)!important;
  border:1px solid rgba(216,180,106,.55)!important;
  color:var(--lux-gold-soft)!important;
  box-shadow:0 12px 36px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
body.layout-grand_luxury .products{
  grid-template-columns:1fr!important;
  gap:18px!important;
}
body.layout-grand_luxury .product,
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr 190px!important;
  gap:24px!important;
  padding:24px!important;
  border-radius:28px!important;
  border:1px solid rgba(216,180,106,.20)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),
    linear-gradient(135deg,var(--lux-panel),var(--lux-panel-soft))!important;
  box-shadow:0 22px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .product::before{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(216,180,106,.55),transparent);
  pointer-events:none;
}
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  grid-template-columns:1fr!important;
}
body.layout-grand_luxury .product > img{
  order:2!important;
  width:190px!important;
  height:190px!important;
  border-radius:24px!important;
  object-fit:cover!important;
  border:1px solid rgba(216,180,106,.24)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.35)!important;
}
body.layout-grand_luxury .p-info{
  min-width:0!important;
}
body.layout-grand_luxury .product h3{
  color:var(--lux-cream)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(28px,3.2vw,44px)!important;
  line-height:1!important;
  letter-spacing:-.045em!important;
  margin:8px 0 10px!important;
  font-weight:700!important;
}
body.layout-grand_luxury .product p{
  max-width:760px!important;
  color:var(--lux-muted)!important;
  font-size:15.5px!important;
  line-height:1.65!important;
  margin:0 0 12px!important;
}
body.layout-grand_luxury .badge{
  background:rgba(216,180,106,.16)!important;
  color:var(--lux-gold-soft)!important;
  border:1px solid rgba(216,180,106,.34)!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .chips span,
body.layout-grand_luxury .meta span{
  background:rgba(255,255,255,.055)!important;
  color:rgba(247,240,223,.70)!important;
  border:1px solid rgba(216,180,106,.16)!important;
}
body.layout-grand_luxury .product-action-row{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  border-top:1px solid rgba(216,180,106,.16)!important;
  padding-top:18px!important;
  margin-top:10px!important;
}
body.layout-grand_luxury .price{
  margin:0!important;
  order:2!important;
}
body.layout-grand_luxury .price strong{
  color:var(--lux-gold-soft)!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(26px,3vw,38px)!important;
  font-weight:700!important;
}
body.layout-grand_luxury .price del{color:rgba(247,240,223,.42)!important;}
body.layout-grand_luxury .add,
body.layout-grand_luxury #sendOrder{
  background:linear-gradient(135deg,var(--lux-gold-soft),#a9843e)!important;
  color:#090806!important;
  border:1px solid rgba(255,236,182,.52)!important;
  border-radius:999px!important;
  min-height:46px!important;
  padding:13px 22px!important;
  box-shadow:0 14px 40px rgba(216,180,106,.18)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .cart>button,
body.layout-grand_luxury .cart-fab{
  background:linear-gradient(135deg,var(--lux-gold-soft),#9d7a36)!important;
  color:#090806!important;
  border:1px solid rgba(255,236,182,.58)!important;
}
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury .modal-box,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .business-info-block,
body.layout-grand_luxury .search-no-results{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),var(--lux-panel)!important;
  color:var(--lux-cream)!important;
  border:1px solid rgba(216,180,106,.22)!important;
  box-shadow:0 28px 88px rgba(0,0,0,.34)!important;
}
body.layout-grand_luxury footer,
body.layout-grand_luxury .business-info-lines p,
body.layout-grand_luxury .allergen-legend p{color:var(--lux-muted)!important;}
body.layout-grand_luxury a{color:var(--lux-gold-soft);}
body.layout-grand_luxury.category-mode-accordion .category:not(.accordion-open) .category-products,
body.layout-grand_luxury.category-mode-accordion_auto .category:not(.accordion-open) .category-products{
  display:none!important;
}
body.layout-grand_luxury.category-mode-accordion .category.accordion-open .category-products,
body.layout-grand_luxury.category-mode-accordion_auto .category.accordion-open .category-products{
  display:grid!important;
}
@media(max-width:980px){
  body.layout-grand_luxury .hero{min-height:380px!important;}
  body.layout-grand_luxury .category-hero-content{padding:40px 58px!important;}
  body.layout-grand_luxury .product{grid-template-columns:1fr 150px!important;}
  body.layout-grand_luxury .product > img{width:150px!important;height:150px!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury .wrap{width:92vw!important;padding-bottom:120px!important;}
  body.layout-grand_luxury .hero{min-height:350px!important;}
  body.layout-grand_luxury .hero-inner{padding:58px 0!important;}
  body.layout-grand_luxury .hero h1,
  body.layout-grand_luxury .topbar h1{font-size:clamp(48px,16vw,76px)!important;}
  body.layout-grand_luxury .hero p,
  body.layout-grand_luxury .topbar p{font-size:12px!important;letter-spacing:.065em!important;}
  body.layout-grand_luxury .category{margin:32px 0 50px!important;}
  body.layout-grand_luxury .category-hero-card{min-height:210px!important;border-radius:26px!important;}
  body.layout-grand_luxury .category-hero-card::before{inset:11px!important;border-radius:18px!important;}
  body.layout-grand_luxury .category-hero-content{padding:34px 58px 34px 28px!important;}
  body.layout-grand_luxury .category-hero-card h2{font-size:clamp(42px,13vw,64px)!important;}
  body.layout-grand_luxury .category-hero-card p{font-size:12px!important;line-height:1.45!important;}
  body.layout-grand_luxury .category-accordion-icon{right:18px!important;width:42px!important;height:42px!important;}
  body.layout-grand_luxury .product,
  body.layout-grand_luxury.card-no-image .product,
  body.layout-grand_luxury .product:not(:has(> img)){
    grid-template-columns:1fr!important;
    padding:18px!important;
    border-radius:24px!important;
  }
  body.layout-grand_luxury .product > img{order:-1!important;width:100%!important;height:210px!important;}
  body.layout-grand_luxury .product-action-row{display:block!important;}
  body.layout-grand_luxury .price{margin:0 0 14px!important;}
  body.layout-grand_luxury .add{width:100%!important;}
}

/* v1.11.1 - Lusso Elite ottimizzato: leggibilità, categorie compatte, prodotto più pieno */
body.layout-grand_luxury{
  --lux-bg:#080806;
  --lux-panel:#15130f;
  --lux-panel-soft:#1d1a14;
  --lux-cream:#fff7e7;
  --lux-text:#fff7e7;
  --lux-muted:rgba(255,247,231,.78);
  --lux-border:rgba(216,180,106,.30);
  --lux-gold-soft:#d8bc78;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .wrap{
  width:min(1220px,92vw)!important;
  max-width:1220px!important;
  padding-top:24px!important;
}
body.layout-grand_luxury .hero{
  min-height:380px!important;
}
body.layout-grand_luxury .hero-inner{
  padding:66px 0!important;
}
body.layout-grand_luxury .hero h1,
body.layout-grand_luxury .topbar h1{
  color:var(--lux-text)!important;
  text-shadow:0 18px 58px rgba(0,0,0,.82)!important;
}
body.layout-grand_luxury .hero p,
body.layout-grand_luxury .topbar p,
body.layout-grand_luxury .product p,
body.layout-grand_luxury .business-info-lines p,
body.layout-grand_luxury .allergen-legend p,
body.layout-grand_luxury footer{
  color:var(--lux-muted)!important;
}
body.layout-grand_luxury .searchbar input::placeholder{
  color:rgba(255,247,231,.62)!important;
}
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .searchbar button{
  color:var(--lux-text)!important;
  background:rgba(255,255,255,.095)!important;
  border-color:rgba(216,180,106,.34)!important;
}
body.layout-grand_luxury .cat-nav{
  background:rgba(20,18,14,.86)!important;
  border-top:1px solid rgba(216,180,106,.18)!important;
  border-bottom:1px solid rgba(216,180,106,.18)!important;
  padding:10px 0!important;
}
body.layout-grand_luxury .cat-nav a{
  color:var(--lux-text)!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(216,180,106,.32)!important;
  padding:10px 16px!important;
}
body.layout-grand_luxury .category{
  margin:28px 0 42px!important;
  scroll-margin-top:132px!important;
}
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .category-with-image .category-hero-card,
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury .featured-category-card{
  min-height:150px!important;
  margin:0 0 18px!important;
  border-radius:24px!important;
  border-color:var(--lux-border)!important;
  background-image:
    linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.54) 54%,rgba(0,0,0,.30)),
    var(--cat-img)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body.layout-grand_luxury .category-hero-card::before{
  inset:10px!important;
  border-radius:18px!important;
  border-color:rgba(216,180,106,.24)!important;
}
body.layout-grand_luxury .category-hero-content,
body.layout-grand_luxury .featured-category-card .category-hero-content{
  padding:28px 76px 28px 34px!important;
  color:var(--lux-text)!important;
  text-shadow:0 10px 34px rgba(0,0,0,.78)!important;
}
body.layout-grand_luxury .category-hero-card h2,
body.layout-grand_luxury .category-featured .category-hero-card h2,
body.layout-grand_luxury .featured-category-card h2{
  font-size:clamp(34px,4.2vw,60px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .category-hero-card p,
body.layout-grand_luxury .category-featured .category-hero-card p,
body.layout-grand_luxury .featured-category-card p{
  margin-top:8px!important;
  color:rgba(255,247,231,.82)!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body.layout-grand_luxury .category-accordion-icon{
  right:24px!important;
  width:38px!important;
  height:38px!important;
  color:#fff7e7!important;
  background:rgba(0,0,0,.48)!important;
}
body.layout-grand_luxury .products{
  gap:14px!important;
}
body.layout-grand_luxury .product,
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 150px!important;
  grid-template-rows:auto auto!important;
  gap:16px 22px!important;
  padding:20px 22px!important;
  border-radius:22px!important;
  min-height:0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),linear-gradient(135deg,#17150f,#11100c)!important;
  border-color:rgba(216,180,106,.26)!important;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury.card-no-image .product,
body.layout-grand_luxury .product:not(:has(> img)){
  grid-template-columns:minmax(0,1fr) auto!important;
}
body.layout-grand_luxury .p-info{
  grid-column:1!important;
  grid-row:1!important;
}
body.layout-grand_luxury .product > img{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  width:150px!important;
  height:150px!important;
  border-radius:18px!important;
  align-self:start!important;
}
body.layout-grand_luxury .product h3{
  color:var(--lux-text)!important;
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.04!important;
  margin:6px 0 8px!important;
  letter-spacing:-.035em!important;
}
body.layout-grand_luxury .product p{
  font-size:15px!important;
  line-height:1.42!important;
  margin:0 0 9px!important;
}
body.layout-grand_luxury .product-badges:empty{display:none!important;}
body.layout-grand_luxury .badge{
  color:#fff2ce!important;
}
body.layout-grand_luxury .chips span,
body.layout-grand_luxury .meta span{
  color:rgba(255,247,231,.82)!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(216,180,106,.24)!important;
}
body.layout-grand_luxury .product-action-row{
  grid-column:1!important;
  grid-row:2!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  margin:0!important;
  padding-top:14px!important;
  border-top:1px solid rgba(216,180,106,.18)!important;
}
body.layout-grand_luxury .price strong{
  color:#d8bc78!important;
  font-size:clamp(22px,2.3vw,30px)!important;
}
body.layout-grand_luxury .price del{
  color:rgba(255,247,231,.55)!important;
}
body.layout-grand_luxury .add,
body.layout-grand_luxury #sendOrder{
  min-height:42px!important;
  padding:11px 18px!important;
  color:#090806!important;
}
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .business-info-block,
body.layout-grand_luxury .search-no-results{
  color:var(--lux-text)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),#15130f!important;
  border-color:rgba(216,180,106,.26)!important;
}
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury .allergen-card,
body.layout-grand_luxury .allergen-legend-item{
  background:rgba(255,255,255,.08)!important;
  color:var(--lux-text)!important;
  border:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .info-product-card h3,
body.layout-grand_luxury .info-product-card strong,
body.layout-grand_luxury .allergen-card h4,
body.layout-grand_luxury .allergen-card strong,
body.layout-grand_luxury .allergen-legend h3,
body.layout-grand_luxury .business-info-block strong,
body.layout-grand_luxury .business-info-block h3{
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .info-product-card p,
body.layout-grand_luxury .allergen-card p,
body.layout-grand_luxury .allergen-legend-item p{
  color:var(--lux-muted)!important;
}
body.layout-grand_luxury .modal{
  background:rgba(7,9,14,.72)!important;
  backdrop-filter:blur(10px)!important;
}
body.layout-grand_luxury .modal-box{
  background:#fbfaf7!important;
  color:#070707!important;
  border:1px solid rgba(160,132,80,.24)!important;
}
body.layout-grand_luxury .modal-box *,
body.layout-grand_luxury .modal-box h2,
body.layout-grand_luxury .modal-box h3,
body.layout-grand_luxury .modal-box label,
body.layout-grand_luxury .modal-box span,
body.layout-grand_luxury .modal-box p{
  color:#070707!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .modal-box .modal-price,
body.layout-grand_luxury .modal-box .product-modal-price,
body.layout-grand_luxury .modal-box .price-pill,
body.layout-grand_luxury .modal-box .price strong{
  color:#fff!important;
  background:#9d7d47!important;
}
body.layout-grand_luxury .modal-box input,
body.layout-grand_luxury .modal-box textarea,
body.layout-grand_luxury .modal-box .option-choice{
  background:#fff!important;
  color:#111!important;
  border-color:rgba(0,0,0,.13)!important;
}
body.layout-grand_luxury .modal-box input::placeholder,
body.layout-grand_luxury .modal-box textarea::placeholder{
  color:#777!important;
}
body.layout-grand_luxury .modal-box .qty button,
body.layout-grand_luxury .modal-box .option-qty button,
body.layout-grand_luxury .modal-box .add,
body.layout-grand_luxury .modal-box .btn-primary{
  background:#9d7d47!important;
  color:#fff!important;
}
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury .cart-close{
  color:#111!important;
  background:#f4f1ec!important;
}
@media(max-width:980px){
  body.layout-grand_luxury .hero{min-height:340px!important;}
  body.layout-grand_luxury .category-hero-card{min-height:138px!important;}
  body.layout-grand_luxury .category-hero-content{padding:26px 68px 26px 28px!important;}
  body.layout-grand_luxury .product{grid-template-columns:minmax(0,1fr) 128px!important;}
  body.layout-grand_luxury .product > img{width:128px!important;height:128px!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury .wrap{width:94vw!important;padding-top:18px!important;}
  body.layout-grand_luxury .hero{min-height:300px!important;}
  body.layout-grand_luxury .hero-inner{padding:46px 0!important;}
  body.layout-grand_luxury .category{margin:24px 0 34px!important;}
  body.layout-grand_luxury .category-hero-card{min-height:116px!important;border-radius:22px!important;}
  body.layout-grand_luxury .category-hero-content{padding:24px 58px 24px 22px!important;}
  body.layout-grand_luxury .category-hero-card h2{font-size:clamp(34px,10vw,48px)!important;}
  body.layout-grand_luxury .category-hero-card p{font-size:11px!important;margin-top:6px!important;}
  body.layout-grand_luxury .category-accordion-icon{right:16px!important;width:34px!important;height:34px!important;}
  body.layout-grand_luxury .product,
  body.layout-grand_luxury.card-no-image .product,
  body.layout-grand_luxury .product:not(:has(> img)){
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:16px!important;
    border-radius:20px!important;
  }
  body.layout-grand_luxury .product > img{
    grid-column:1!important;
    grid-row:auto!important;
    order:-1!important;
    width:100%!important;
    height:178px!important;
    border-radius:16px!important;
  }
  body.layout-grand_luxury .product h3{font-size:28px!important;}
  body.layout-grand_luxury .product p{font-size:14px!important;}
  body.layout-grand_luxury .product-action-row{
    grid-column:1!important;
    display:flex!important;
    padding-top:12px!important;
  }
  body.layout-grand_luxury .add{width:auto!important;}
  body.layout-grand_luxury .modal-box{width:min(94vw,560px)!important;border-radius:22px!important;}
}

/* v1.12.0 - Lusso Elite Dark/Light: leggibilità completa e UI luxury rifinita */
body.layout-grand_luxury,
body.layout-grand_luxury_light{
  --lux-gold:#a4834a;
  --lux-gold-soft:#d7bd7d;
  --lux-cream:#fff8ea;
  --lux-muted:rgba(255,248,234,.82);
}
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury .sticky-category-bar,
body.layout-grand_luxury .sticky-category-bar .cat-nav{
  background:rgba(8,8,6,.88)!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px)!important;
}
body.layout-grand_luxury .searchbar{
  gap:14px!important;
  padding:14px 0!important;
}
body.layout-grand_luxury .searchbar input{
  background:#fffaf0!important;
  color:#11100d!important;
  border:1px solid rgba(216,180,106,.22)!important;
  border-radius:18px!important;
  box-shadow:0 16px 38px rgba(0,0,0,.24)!important;
  font-weight:650!important;
}
body.layout-grand_luxury .searchbar input::placeholder{
  color:#8b806b!important;
  opacity:1!important;
}
body.layout-grand_luxury .searchbar button{
  flex:0 0 58px!important;
  width:58px!important;
  min-width:58px!important;
  border-radius:18px!important;
  background:#fffaf0!important;
  color:#090806!important;
  font-weight:950!important;
  box-shadow:0 16px 38px rgba(0,0,0,.24)!important;
}
body.layout-grand_luxury .cat-nav{
  margin:0!important;
  padding:12px 0 14px!important;
  gap:12px!important;
}
body.layout-grand_luxury .cat-nav a{
  background:rgba(255,255,255,.105)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
  border-radius:18px!important;
  padding:13px 20px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
body.layout-grand_luxury .cat-nav a.active,
body.layout-grand_luxury .cat-nav a:hover{
  background:linear-gradient(135deg,#d7bd7d,#96743b)!important;
  color:#070604!important;
}
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .business-info-block{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),#15130f!important;
  border:1px solid rgba(216,180,106,.28)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury .allergen-legend h3,
body.layout-grand_luxury .allergen-legend .info-section-head h3,
body.layout-grand_luxury .cover-charge-info h3,
body.layout-grand_luxury .business-info-block h3{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .allergen-legend p,
body.layout-grand_luxury .cover-charge-info p,
body.layout-grand_luxury .business-info-block p{
  color:rgba(255,248,234,.78)!important;
}
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury .allergen-card,
body.layout-grand_luxury .allergen-legend-item{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(216,180,106,.24)!important;
  color:#fff8ea!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .allergen-grid article h3,
body.layout-grand_luxury .allergen-card h4,
body.layout-grand_luxury .allergen-legend-item h4,
body.layout-grand_luxury .allergen-grid article strong{
  color:#fff8ea!important;
}
body.layout-grand_luxury .allergen-grid article p,
body.layout-grand_luxury .allergen-card p,
body.layout-grand_luxury .allergen-legend-item p{
  color:rgba(255,248,234,.74)!important;
}
body.layout-grand_luxury footer{
  background:#f7f2e9!important;
  color:#11100d!important;
  border-top:1px solid rgba(216,180,106,.24)!important;
  font-weight:750!important;
}
body.layout-grand_luxury footer,
body.layout-grand_luxury footer *{
  color:#11100d!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.layout-grand_luxury footer a{color:#11100d!important;font-weight:900!important;}
body.layout-grand_luxury .modal-box{
  background:linear-gradient(180deg,#15130f,#0f0e0a)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.34)!important;
}
body.layout-grand_luxury .modal-box *,
body.layout-grand_luxury .modal-box h2,
body.layout-grand_luxury .modal-box h3,
body.layout-grand_luxury .modal-box label,
body.layout-grand_luxury .modal-box span,
body.layout-grand_luxury .modal-box p{
  color:#fff8ea!important;
}
body.layout-grand_luxury .modal-box .modal-price,
body.layout-grand_luxury .modal-box .product-modal-price,
body.layout-grand_luxury .modal-box .price-pill,
body.layout-grand_luxury .modal-box .price strong{
  background:#a4834a!important;
  color:#fff!important;
}
body.layout-grand_luxury .modal-box input,
body.layout-grand_luxury .modal-box textarea,
body.layout-grand_luxury .modal-box .option-choice{
  background:#242018!important;
  color:#fff8ea!important;
  border-color:rgba(216,180,106,.30)!important;
}
body.layout-grand_luxury .modal-box input::placeholder,
body.layout-grand_luxury .modal-box textarea::placeholder{color:rgba(255,248,234,.62)!important;}
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury .cart-close{background:#242018!important;color:#fff8ea!important;border:1px solid rgba(216,180,106,.28)!important;}

/* Lusso Elite Light eredita la struttura luxury ma usa palette chiara */
body.layout-grand_luxury_light{
  --lux-bg:#f7f1e7;
  --lux-panel:#fffaf2;
  --lux-panel-soft:#f1e6d6;
  --lux-cream:#19150f;
  --lux-text:#19150f;
  --lux-muted:#6f6556;
  --lux-border:rgba(164,131,74,.30);
  background:
    radial-gradient(circle at 14% 0%,rgba(212,183,129,.32),transparent 30vw),
    radial-gradient(circle at 86% 7%,rgba(255,255,255,.72),transparent 28vw),
    linear-gradient(180deg,#fffaf1 0%,#f4eadb 54%,#efe2d0 100%)!important;
  color:#19150f!important;
}
body.layout-grand_luxury_light::before{opacity:.28!important;background-image:linear-gradient(rgba(164,131,74,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(164,131,74,.08) 1px,transparent 1px)!important;}
body.layout-grand_luxury_light .hero{background-color:#2a2218!important;border-bottom:1px solid rgba(164,131,74,.30)!important;}
body.layout-grand_luxury_light .hero h1,
body.layout-grand_luxury_light .hero p{color:#fff8ea!important;}
body.layout-grand_luxury_light .wrap{width:min(1220px,92vw)!important;}
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury_light .cat-nav,
body.layout-grand_luxury_light .sticky-category-bar,
body.layout-grand_luxury_light .sticky-category-bar .cat-nav{
  background:rgba(247,241,231,.88)!important;
  border:0!important;
  backdrop-filter:blur(18px)!important;
}
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury_light .searchbar button{
  background:#fffdf8!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.22)!important;
  border-radius:18px!important;
  box-shadow:0 12px 30px rgba(86,67,39,.10)!important;
  font-weight:650!important;
}
body.layout-grand_luxury_light .searchbar input::placeholder{color:#8b806f!important;opacity:1!important;}
body.layout-grand_luxury_light .searchbar button{font-weight:950!important;}
body.layout-grand_luxury_light .cat-nav{padding:12px 0 14px!important;gap:12px!important;}
body.layout-grand_luxury_light .cat-nav a{
  background:#fffaf2!important;
  color:#2a2218!important;
  border:1px solid rgba(164,131,74,.28)!important;
  border-radius:18px!important;
  padding:13px 20px!important;
  box-shadow:0 8px 22px rgba(86,67,39,.08)!important;
}
body.layout-grand_luxury_light .cat-nav a.active,
body.layout-grand_luxury_light .cat-nav a:hover{background:linear-gradient(135deg,#b49358,#8d6b33)!important;color:#fff!important;}
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury_light .featured-category-card{
  min-height:150px!important;
  border-color:rgba(164,131,74,.28)!important;
  background-image:linear-gradient(90deg,rgba(255,250,242,.94),rgba(255,250,242,.74) 48%,rgba(255,250,242,.28)),var(--cat-img)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.12),inset 0 1px 0 rgba(255,255,255,.8)!important;
}
body.layout-grand_luxury_light .category-hero-card h2,
body.layout-grand_luxury_light .featured-category-card h2{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .category-hero-card p,
body.layout-grand_luxury_light .featured-category-card p{color:#6f6556!important;text-shadow:none!important;}
body.layout-grand_luxury_light .category-hero-content{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .category-accordion-icon{background:#fffaf2!important;color:#8d6b33!important;border-color:rgba(164,131,74,.38)!important;}
body.layout-grand_luxury_light .product,
body.layout-grand_luxury_light.card-no-image .product,
body.layout-grand_luxury_light .product:not(:has(> img)){
  background:linear-gradient(180deg,#fffdf8,#fff7ed)!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.10)!important;
}
body.layout-grand_luxury_light .product h3{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .product p{color:#6f6556!important;}
body.layout-grand_luxury_light .chips span,
body.layout-grand_luxury_light .meta span{background:#f4eadb!important;color:#625845!important;border-color:rgba(164,131,74,.18)!important;}
body.layout-grand_luxury_light .price strong{color:#8d6b33!important;}
body.layout-grand_luxury_light .price del{color:#9a9183!important;}
body.layout-grand_luxury_light .add,
body.layout-grand_luxury_light #sendOrder,
body.layout-grand_luxury_light .cart>button,
body.layout-grand_luxury_light .cart-fab{background:linear-gradient(135deg,#b49358,#8d6b33)!important;color:#fff!important;border-color:rgba(164,131,74,.30)!important;}
body.layout-grand_luxury_light .allergen-legend,
body.layout-grand_luxury_light .cover-charge-info,
body.layout-grand_luxury_light .business-info-block,
body.layout-grand_luxury_light .search-no-results{background:#fffaf2!important;color:#19150f!important;border:1px solid rgba(164,131,74,.22)!important;box-shadow:0 18px 50px rgba(86,67,39,.10)!important;}
body.layout-grand_luxury_light .allergen-legend h3,
body.layout-grand_luxury_light .cover-charge-info h3,
body.layout-grand_luxury_light .business-info-block h3{color:#19150f!important;}
body.layout-grand_luxury_light .allergen-legend p,
body.layout-grand_luxury_light .cover-charge-info p,
body.layout-grand_luxury_light .business-info-block p{color:#6f6556!important;}
body.layout-grand_luxury_light .allergen-grid article,
body.layout-grand_luxury_light .allergen-card,
body.layout-grand_luxury_light .allergen-legend-item{background:#fffdf8!important;color:#19150f!important;border:1px solid rgba(164,131,74,.20)!important;border-radius:16px!important;}
body.layout-grand_luxury_light .allergen-grid article h3,
body.layout-grand_luxury_light .allergen-card h4{color:#19150f!important;}
body.layout-grand_luxury_light .allergen-grid article p,
body.layout-grand_luxury_light .allergen-card p{color:#6f6556!important;}
body.layout-grand_luxury_light .modal{background:rgba(24,29,38,.48)!important;backdrop-filter:blur(10px)!important;}
body.layout-grand_luxury_light .modal-box{background:#fffdf8!important;color:#19150f!important;border:1px solid rgba(164,131,74,.24)!important;}
body.layout-grand_luxury_light .modal-box *,
body.layout-grand_luxury_light .modal-box h2,
body.layout-grand_luxury_light .modal-box h3,
body.layout-grand_luxury_light .modal-box label,
body.layout-grand_luxury_light .modal-box span,
body.layout-grand_luxury_light .modal-box p{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .modal-box input,
body.layout-grand_luxury_light .modal-box textarea,
body.layout-grand_luxury_light .modal-box .option-choice{background:#fff!important;color:#19150f!important;border-color:rgba(25,21,15,.14)!important;}
body.layout-grand_luxury_light .modal-box input::placeholder,
body.layout-grand_luxury_light .modal-box textarea::placeholder{color:#777!important;}
body.layout-grand_luxury_light .modal-box .modal-price,
body.layout-grand_luxury_light .modal-box .product-modal-price,
body.layout-grand_luxury_light .modal-box .price-pill,
body.layout-grand_luxury_light .modal-box .price strong{background:#9d7d47!important;color:#fff!important;}
body.layout-grand_luxury_light .modal-close,
body.layout-grand_luxury_light .cart-close{background:#f4efe8!important;color:#19150f!important;border:1px solid rgba(164,131,74,.18)!important;}
body.layout-grand_luxury_light footer{background:#19150f!important;color:#fff8ea!important;border-top:1px solid rgba(164,131,74,.26)!important;font-weight:750!important;}
body.layout-grand_luxury_light footer,
body.layout-grand_luxury_light footer *{color:#fff8ea!important;opacity:1!important;text-shadow:none!important;}

/* v1.12.1 - fix leggibilità luxury dark/light e rispetto colore categoria */
/* Colore categoria: le card categoria senza immagine devono usare sempre il colore impostato dal backend */
.category-with-color .category-hero-card,
.category-hero-card.category-color-card{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 92%,#000 8%),color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#000 30%))!important;
  border-color:color-mix(in srgb,var(--cat-color,var(--primary)) 72%,#fff 28%)!important;
}
.category-with-color .category-hero-card h2,
.category-with-color .category-hero-card p,
.category-hero-card.category-color-card h2,
.category-hero-card.category-color-card p{
  color:#fff!important;
  text-shadow:0 10px 28px rgba(0,0,0,.45)!important;
}
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury .category-hero-card.category-color-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-hero-card.category-color-card{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 90%,#000 10%),color-mix(in srgb,var(--cat-color,var(--primary)) 58%,#000 42%))!important;
}
body.layout-grand_luxury_light .category-with-color .category-hero-card h2,
body.layout-grand_luxury_light .category-with-color .category-hero-card p,
body.layout-grand_luxury_light .category-hero-card.category-color-card h2,
body.layout-grand_luxury_light .category-hero-card.category-color-card p{
  color:#fff!important;
  text-shadow:0 10px 30px rgba(0,0,0,.52)!important;
}

/* Lusso Elite Dark: popup personalizzazione realmente dark */
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal.modal,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .modal{
  background:rgba(3,4,6,.78)!important;
  backdrop-filter:blur(12px)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-box,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .modal-box{
  background:linear-gradient(180deg,#181610,#0d0c08)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.38)!important;
  box-shadow:0 28px 100px rgba(0,0,0,.62)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal #modalContent,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-product-head,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions{
  background:transparent!important;
  color:#fff8ea!important;
  border-color:rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-box *,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-product-title-line,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset legend,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-note-field span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty b{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-kicker,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset legend em{
  background:rgba(216,180,106,.14)!important;
  color:#d7bd7d!important;
  border:1px solid rgba(216,180,106,.24)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-note-field,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty{
  background:#1f1c15!important;
  border:1px solid rgba(216,180,106,.26)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input{
  background:#12100b!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea::placeholder,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input::placeholder{
  color:rgba(255,248,234,.68)!important;
  opacity:1!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-secondary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-close{
  background:#242018!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-primary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty button,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-base-price{
  background:linear-gradient(135deg,#d7bd7d,#9d7d47)!important;
  color:#090806!important;
}

/* Lusso Elite Light: contrasti corretti */
body.layout-grand_luxury_light .badge,
body.layout-grand_luxury_light .product .badge,
body.layout-grand_luxury_light .modal-kicker{
  background:#f1e6d6!important;
  color:#8d6b33!important;
  border:1px solid rgba(164,131,74,.24)!important;
  opacity:1!important;
}
body.layout-grand_luxury_light .allergen-legend,
body.layout-grand_luxury_light .allergen-legend *,
body.layout-grand_luxury_light .allergen-grid article,
body.layout-grand_luxury_light .allergen-grid article *{
  text-shadow:none!important;
  opacity:1!important;
}
body.layout-grand_luxury_light .allergen-legend .info-section-head h3,
body.layout-grand_luxury_light .allergen-legend h3,
body.layout-grand_luxury_light .allergen-grid article h3,
body.layout-grand_luxury_light .allergen-card h4,
body.layout-grand_luxury_light .allergen-legend-item h4{
  color:#19150f!important;
}
body.layout-grand_luxury_light .allergen-legend .info-section-head p,
body.layout-grand_luxury_light .allergen-legend p,
body.layout-grand_luxury_light .allergen-grid article p,
body.layout-grand_luxury_light .allergen-card p,
body.layout-grand_luxury_light .allergen-legend-item p{
  color:#5f5547!important;
}
body.layout-grand_luxury_light footer,
body.layout-grand_luxury_light footer *,
body.layout-grand_luxury_light footer a{
  color:#fff8ea!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light footer a{font-weight:950!important;}

/* v1.12.2 - Lusso Elite mobile: immagine prodotto prima del testo */
@media (max-width:680px){
  body.layout-grand_luxury .product,
  body.layout-grand_luxury_light .product{
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    overflow:hidden!important;
  }
  body.layout-grand_luxury .product > img,
  body.layout-grand_luxury_light .product > img{
    order:-10!important;
    width:100%!important;
    height:220px!important;
    max-width:none!important;
    margin:0!important;
    border-radius:22px 22px 0 0!important;
    object-fit:cover!important;
    display:block!important;
  }
  body.layout-grand_luxury .product > .p-info,
  body.layout-grand_luxury_light .product > .p-info{
    order:0!important;
    width:100%!important;
  }
  body.layout-grand_luxury .product > .product-action-row,
  body.layout-grand_luxury_light .product > .product-action-row{
    order:1!important;
    width:100%!important;
  }
  body.layout-grand_luxury .product > :not(img),
  body.layout-grand_luxury_light .product > :not(img){
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* v1.12.3 - Lusso Elite Dark: footer del popup personalizzazione realmente scuro */
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-box,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-content,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal #modalContent{
  background:linear-gradient(180deg,#17140f 0%,#0e0d09 100%)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-bottom-fixed,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-footer,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-modal-footer{
  background:linear-gradient(180deg,#12100b 0%,#0b0a07 100%)!important;
  color:#fff8ea!important;
  border-top:1px solid rgba(216,180,106,.24)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .quantity-control,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-qty{
  background:#1f1c15!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.28)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .quantity-control b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .quantity-control span{
  color:#fff8ea!important;
  opacity:1!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-secondary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions .btn-secondary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal button[type="button"].btn-secondary{
  background:#201d16!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.28)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .btn-primary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions .btn-primary,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal button[type="submit"],
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .add-to-cart-modal{
  background:linear-gradient(135deg,#d8bf79,#a4834a)!important;
  color:#080705!important;
  border:0!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-actions::before,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .modal-bottom-fixed::before{
  background:transparent!important;
}


/* v1.12.4 - Lusso Elite Dark/Light: badge prodotto sopra foto + spaziatura meta */
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product{
  position:relative!important;
}
body.layout-grand_luxury .product .product-badges,
body.layout-grand_luxury_light .product .product-badges{
  position:absolute!important;
  z-index:8!important;
  gap:6px!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
}
body.layout-grand_luxury .product .product-badges:empty,
body.layout-grand_luxury_light .product .product-badges:empty{
  display:none!important;
}
body.layout-grand_luxury .product .badge,
body.layout-grand_luxury_light .product .badge{
  min-height:34px!important;
  padding:8px 16px!important;
  border-radius:999px!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.18)!important;
  text-shadow:0 1px 8px rgba(0,0,0,.35)!important;
}
body.layout-grand_luxury .product .badge:not([style]),
body.layout-grand_luxury_light .product .badge:not([style]){
  background:var(--lux-gold,#a4834a)!important;
  border:1px solid rgba(255,255,255,.24)!important;
}
body.layout-grand_luxury .product .meta,
body.layout-grand_luxury_light .product .meta{
  margin-top:4px!important;
  margin-bottom:16px!important;
  padding-bottom:0!important;
}
body.layout-grand_luxury .product .chips,
body.layout-grand_luxury_light .product .chips{
  margin-top:4px!important;
  margin-bottom:6px!important;
}
body.layout-grand_luxury .product p,
body.layout-grand_luxury_light .product p{
  margin-bottom:6px!important;
}
body.layout-grand_luxury .product .product-action-row,
body.layout-grand_luxury_light .product .product-action-row{
  padding-top:16px!important;
}
/* desktop/tablet: immagine a destra, badge sovrapposto in alto a sinistra della foto */
@media (min-width:681px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    top:34px!important;
    left:calc(100% - 150px - 22px + 12px)!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    margin:0 0 8px!important;
  }
}
@media (min-width:681px) and (max-width:980px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    left:calc(100% - 128px - 22px + 10px)!important;
    top:30px!important;
  }
}
/* mobile: immagine full-width in alto, badge sopra la foto */
@media (max-width:680px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    top:28px!important;
    left:28px!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    margin:0 0 8px!important;
  }
  body.layout-grand_luxury .product .meta,
  body.layout-grand_luxury_light .product .meta{
    margin-top:2px!important;
    margin-bottom:14px!important;
  }
}

/* v1.12.5 - Lusso Elite Dark/Light: badge prodotto a bandiera, sovrapposto alla foto solo su mobile */
body.layout-grand_luxury .product .product-badges,
body.layout-grand_luxury_light .product .product-badges{
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  pointer-events:none!important;
  z-index:9!important;
}
body.layout-grand_luxury .product .badge,
body.layout-grand_luxury_light .product .badge{
  min-height:36px!important;
  min-width:132px!important;
  width:max-content!important;
  max-width:min(280px,72%)!important;
  justify-content:center!important;
  padding:9px 22px 9px 18px!important;
  border-radius:0 18px 18px 0!important;
  color:#fff!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.16)!important;
  text-shadow:0 1px 8px rgba(0,0,0,.38)!important;
}
body.layout-grand_luxury .product .badge[style],
body.layout-grand_luxury_light .product .badge[style]{
  border-color:currentColor!important;
}
/* desktop/tablet: non sovrapposto alla foto; resta nella parte testuale/card come bandierina */
@media (min-width:681px){
  body.layout-grand_luxury .product .product-badges,
  body.layout-grand_luxury_light .product .product-badges,
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges,
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    inset:auto!important;
    margin:0 0 12px calc(-1 * clamp(16px,2vw,28px))!important;
    padding:0!important;
  }
  body.layout-grand_luxury .product .badge,
  body.layout-grand_luxury_light .product .badge{
    min-width:150px!important;
  }
}
/* mobile: sovrapposto in alto a sinistra alla foto; se manca foto, parte dal bordo sinistro della card */
@media (max-width:680px){
  body.layout-grand_luxury .product:has(> img) .product-badges,
  body.layout-grand_luxury_light .product:has(> img) .product-badges{
    position:absolute!important;
    top:16px!important;
    left:0!important;
    margin:0!important;
    padding:0!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .product-badges,
  body.layout-grand_luxury_light .product:not(:has(> img)) .product-badges{
    position:static!important;
    margin:0 0 12px -16px!important;
    padding:0!important;
  }
  body.layout-grand_luxury .product:has(> img) .badge,
  body.layout-grand_luxury_light .product:has(> img) .badge{
    min-width:52%!important;
    max-width:82%!important;
  }
  body.layout-grand_luxury .product:not(:has(> img)) .badge,
  body.layout-grand_luxury_light .product:not(:has(> img)) .badge{
    min-width:170px!important;
  }
  body.layout-grand_luxury .product .meta,
  body.layout-grand_luxury_light .product .meta{
    margin-top:2px!important;
    margin-bottom:14px!important;
  }
}

/* v1.12.6 - Lusso Elite Dark/Light: coperto e legenda coerenti con font, prezzo e spaziature prodotto */
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury_light .cover-charge-info,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury_light .allergen-legend{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  margin:26px 0 22px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury_light .info-product-card{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:end!important;
  gap:16px 22px!important;
  padding:20px 22px!important;
  border-radius:22px!important;
  min-height:0!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .info-product-card{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),linear-gradient(135deg,#17150f,#11100c)!important;
  border:1px solid rgba(216,180,106,.26)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury_light .info-product-card{
  background:linear-gradient(180deg,#fffdf8,#fff7ed)!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.10)!important;
  color:#19150f!important;
}
body.layout-grand_luxury .info-product-card::before,
body.layout-grand_luxury_light .info-product-card::before{
  content:""!important;
  position:absolute!important;
  left:22px!important;
  right:22px!important;
  top:0!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(216,180,106,.46),transparent)!important;
  pointer-events:none!important;
}
body.layout-grand_luxury_light .info-product-card::before{
  background:linear-gradient(90deg,transparent,rgba(164,131,74,.28),transparent)!important;
}
body.layout-grand_luxury .info-product-card h3,
body.layout-grand_luxury_light .info-product-card h3{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  font-weight:700!important;
  margin:0 0 8px!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .info-product-card h3{color:#fff8ea!important;}
body.layout-grand_luxury_light .info-product-card h3{color:#19150f!important;}
body.layout-grand_luxury .info-product-card p,
body.layout-grand_luxury_light .info-product-card p{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.42!important;
  margin:0!important;
  max-width:760px!important;
}
body.layout-grand_luxury .info-product-card p{color:rgba(255,248,234,.78)!important;}
body.layout-grand_luxury_light .info-product-card p{color:#6f6556!important;}
body.layout-grand_luxury .info-card-price,
body.layout-grand_luxury_light .info-card-price{
  justify-self:end!important;
  align-self:end!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(22px,2.3vw,30px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .info-card-price{color:#d8bc78!important;}
body.layout-grand_luxury_light .info-card-price{color:#8d6b33!important;}
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury_light .allergen-legend{
  border-radius:22px!important;
  padding:22px!important;
}
body.layout-grand_luxury .allergen-legend{
  background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)),#15130f!important;
  border:1px solid rgba(216,180,106,.26)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury_light .allergen-legend{
  background:#fffaf2!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:0 18px 50px rgba(86,67,39,.10)!important;
  color:#19150f!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head,
body.layout-grand_luxury_light .allergen-legend .info-section-head{
  margin:0 0 16px!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head h3,
body.layout-grand_luxury_light .allergen-legend .info-section-head h3,
body.layout-grand_luxury .allergen-legend > h3,
body.layout-grand_luxury_light .allergen-legend > h3{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(24px,2.35vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  margin:0 0 8px!important;
  font-weight:700!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head h3,
body.layout-grand_luxury .allergen-legend > h3{color:#fff8ea!important;}
body.layout-grand_luxury_light .allergen-legend .info-section-head h3,
body.layout-grand_luxury_light .allergen-legend > h3{color:#19150f!important;}
body.layout-grand_luxury .allergen-legend .info-section-head p,
body.layout-grand_luxury_light .allergen-legend .info-section-head p{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:15px!important;
  line-height:1.42!important;
  margin:0!important;
}
body.layout-grand_luxury .allergen-legend .info-section-head p{color:rgba(255,248,234,.78)!important;}
body.layout-grand_luxury_light .allergen-legend .info-section-head p{color:#6f6556!important;}
body.layout-grand_luxury .allergen-grid,
body.layout-grand_luxury_light .allergen-grid{
  gap:12px!important;
}
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury_light .allergen-grid article{
  border-radius:16px!important;
  padding:15px 16px!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .allergen-grid article{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(216,180,106,.24)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury_light .allergen-grid article{
  background:#fffdf8!important;
  border:1px solid rgba(164,131,74,.20)!important;
  color:#19150f!important;
}
body.layout-grand_luxury .allergen-grid article h3,
body.layout-grand_luxury_light .allergen-grid article h3{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:18px!important;
  line-height:1.18!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
  margin:0 0 6px!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .allergen-grid article h3{color:#fff8ea!important;}
body.layout-grand_luxury_light .allergen-grid article h3{color:#19150f!important;}
body.layout-grand_luxury .allergen-grid article p,
body.layout-grand_luxury_light .allergen-grid article p{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.42!important;
  margin:0!important;
}
body.layout-grand_luxury .allergen-grid article p{color:rgba(255,248,234,.74)!important;}
body.layout-grand_luxury_light .allergen-grid article p{color:#6f6556!important;}
@media(max-width:680px){
  body.layout-grand_luxury .info-product-card,
  body.layout-grand_luxury_light .info-product-card{
    grid-template-columns:1fr!important;
    gap:12px!important;
    padding:18px!important;
    border-radius:20px!important;
  }
  body.layout-grand_luxury .info-card-price,
  body.layout-grand_luxury_light .info-card-price{
    justify-self:end!important;
    font-size:28px!important;
  }
  body.layout-grand_luxury .allergen-legend,
  body.layout-grand_luxury_light .allergen-legend{
    padding:18px!important;
    border-radius:20px!important;
  }
  body.layout-grand_luxury .allergen-grid,
  body.layout-grand_luxury_light .allergen-grid{
    grid-template-columns:1fr!important;
  }
}

/* v1.12.7 - Lusso Elite Dark/Light: prezzo sempre a destra e coperto identico ai prodotti */
@media (min-width:681px){
  body.layout-grand_luxury .product:has(> img),
  body.layout-grand_luxury_light .product:has(> img){
    grid-template-columns:minmax(0,1fr) 150px!important;
  }
  body.layout-grand_luxury .product:has(> img) .product-action-row,
  body.layout-grand_luxury_light .product:has(> img) .product-action-row{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
  }
  body.layout-grand_luxury .product:has(> img) .product-button-slot,
  body.layout-grand_luxury_light .product:has(> img) .product-button-slot{
    justify-self:start!important;
  }
  body.layout-grand_luxury .product:has(> img) .price,
  body.layout-grand_luxury_light .product:has(> img) .price{
    justify-self:end!important;
    text-align:right!important;
    margin:0!important;
    min-width:max-content!important;
  }
}
@media (min-width:681px) and (max-width:980px){
  body.layout-grand_luxury .product:has(> img),
  body.layout-grand_luxury_light .product:has(> img){
    grid-template-columns:minmax(0,1fr) 128px!important;
  }
}

/* Coperto: titolo/descrizione coerenti, prezzo identico a .price strong dei prodotti */
body.layout-grand_luxury .cover-charge-info .info-product-card,
body.layout-grand_luxury_light .cover-charge-info .info-product-card{
  align-items:end!important;
}
body.layout-grand_luxury .cover-charge-info .info-card-price,
body.layout-grand_luxury_light .cover-charge-info .info-card-price,
body.layout-grand_luxury .cover-charge-info strong.info-card-price,
body.layout-grand_luxury_light .cover-charge-info strong.info-card-price{
  justify-self:end!important;
  align-self:end!important;
  text-align:right!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  min-width:max-content!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(22px,2.3vw,30px)!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .cover-charge-info .info-card-price,
body.layout-grand_luxury .cover-charge-info strong.info-card-price{
  color:#d8bc78!important;
}
body.layout-grand_luxury_light .cover-charge-info .info-card-price,
body.layout-grand_luxury_light .cover-charge-info strong.info-card-price{
  color:#8d6b33!important;
}
body.layout-grand_luxury .cover-charge-info .info-product-card h3,
body.layout-grand_luxury_light .cover-charge-info .info-product-card h3{
  font-size:clamp(24px,2.35vw,34px)!important;
}
body.layout-grand_luxury .cover-charge-info .info-product-card p,
body.layout-grand_luxury_light .cover-charge-info .info-product-card p{
  font-size:15px!important;
}
@media(max-width:680px){
  body.layout-grand_luxury .product:has(> img) .product-action-row,
  body.layout-grand_luxury_light .product:has(> img) .product-action-row{
    display:flex!important;
  }
  body.layout-grand_luxury .cover-charge-info .info-card-price,
  body.layout-grand_luxury_light .cover-charge-info .info-card-price,
  body.layout-grand_luxury .cover-charge-info strong.info-card-price,
  body.layout-grand_luxury_light .cover-charge-info strong.info-card-price{
    font-size:28px!important;
    justify-self:end!important;
  }
}

/* v1.12.8 - Lusso Elite Dark/Light: bordi completamente squadrati */
body.layout-grand_luxury,
body.layout-grand_luxury *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury *::after{
  border-radius:0!important;
}
body.layout-grand_luxury .hero,
body.layout-grand_luxury .hero-inner,
body.layout-grand_luxury .logo,
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .searchbar button,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury .cat-nav a,
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury .category-hero-content,
body.layout-grand_luxury .featured-category-card,
body.layout-grand_luxury .product,
body.layout-grand_luxury .product img,
body.layout-grand_luxury .badge,
body.layout-grand_luxury .meta span,
body.layout-grand_luxury .chips span,
body.layout-grand_luxury button,
body.layout-grand_luxury .button,
body.layout-grand_luxury .add,
body.layout-grand_luxury #sendOrder,
body.layout-grand_luxury .cart,
body.layout-grand_luxury .cart > button,
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury .modal,
body.layout-grand_luxury .modal-box,
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury .option-choice,
body.layout-grand_luxury .qty,
body.layout-grand_luxury .qty button,
body.layout-grand_luxury input,
body.layout-grand_luxury textarea,
body.layout-grand_luxury select,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury .info-card-price,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury .floating-order-btn,
body.layout-grand_luxury .back-to-top,
body.layout-grand_luxury .language-box,
body.layout-grand_luxury .lang-btn{
  border-radius:0!important;
}

/* v1.12.9 - Lusso Elite: radius zero reale + ripristino evidenza + popup/card coerenti */
body.layout-grand_luxury,
body.layout-grand_luxury_light{
  --radius:0px!important;
}
body.layout-grand_luxury *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury *::after,
body.layout-grand_luxury_light *,
body.layout-grand_luxury_light *::before,
body.layout-grand_luxury_light *::after{
  border-radius:0!important;
}
body.layout-grand_luxury .hero,
body.layout-grand_luxury_light .hero,
body.layout-grand_luxury .hero-inner,
body.layout-grand_luxury_light .hero-inner,
body.layout-grand_luxury .logo,
body.layout-grand_luxury_light .logo,
body.layout-grand_luxury .language-switcher,
body.layout-grand_luxury_light .language-switcher,
body.layout-grand_luxury .lang-btn,
body.layout-grand_luxury_light .lang-btn,
body.layout-grand_luxury .searchbar,
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury .searchbar button,
body.layout-grand_luxury_light .searchbar button,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury_light .cat-nav,
body.layout-grand_luxury .cat-nav a,
body.layout-grand_luxury_light .cat-nav a,
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card::before,
body.layout-grand_luxury .category-hero-card::after,
body.layout-grand_luxury_light .category-hero-card::after,
body.layout-grand_luxury .category-accordion-icon,
body.layout-grand_luxury_light .category-accordion-icon,
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product,
body.layout-grand_luxury .product > img,
body.layout-grand_luxury_light .product > img,
body.layout-grand_luxury .badge,
body.layout-grand_luxury_light .badge,
body.layout-grand_luxury .product-badges .badge,
body.layout-grand_luxury_light .product-badges .badge,
body.layout-grand_luxury .chips span,
body.layout-grand_luxury_light .chips span,
body.layout-grand_luxury .meta span,
body.layout-grand_luxury_light .meta span,
body.layout-grand_luxury .add,
body.layout-grand_luxury_light .add,
body.layout-grand_luxury button,
body.layout-grand_luxury_light button,
body.layout-grand_luxury .cover-charge-info,
body.layout-grand_luxury_light .cover-charge-info,
body.layout-grand_luxury .info-product-card,
body.layout-grand_luxury_light .info-product-card,
body.layout-grand_luxury .allergen-legend,
body.layout-grand_luxury_light .allergen-legend,
body.layout-grand_luxury .allergen-grid article,
body.layout-grand_luxury_light .allergen-grid article,
body.layout-grand_luxury .business-info-block,
body.layout-grand_luxury_light .business-info-block,
body.layout-grand_luxury footer,
body.layout-grand_luxury_light footer,
body.layout-grand_luxury .cart,
body.layout-grand_luxury_light .cart,
body.layout-grand_luxury .cart-fab,
body.layout-grand_luxury_light .cart-fab,
body.layout-grand_luxury .cart-fab-count,
body.layout-grand_luxury_light .cart-fab-count,
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury_light .cart-panel,
body.layout-grand_luxury .cart-close,
body.layout-grand_luxury_light .cart-close,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury_light .cart-item,
body.layout-grand_luxury .modal,
body.layout-grand_luxury_light .modal,
body.layout-grand_luxury .modal-box,
body.layout-grand_luxury_light .modal-box,
body.layout-grand_luxury #modalContent,
body.layout-grand_luxury_light #modalContent,
body.layout-grand_luxury .modal-close,
body.layout-grand_luxury_light .modal-close,
body.layout-grand_luxury .modal-kicker,
body.layout-grand_luxury_light .modal-kicker,
body.layout-grand_luxury .modal-base-price,
body.layout-grand_luxury_light .modal-base-price,
body.layout-grand_luxury fieldset,
body.layout-grand_luxury_light fieldset,
body.layout-grand_luxury .option-choice,
body.layout-grand_luxury_light .option-choice,
body.layout-grand_luxury input,
body.layout-grand_luxury_light input,
body.layout-grand_luxury textarea,
body.layout-grand_luxury_light textarea,
body.layout-grand_luxury select,
body.layout-grand_luxury_light select,
body.layout-grand_luxury .qty,
body.layout-grand_luxury_light .qty,
body.layout-grand_luxury .qty button,
body.layout-grand_luxury_light .qty button,
body.layout-grand_luxury .modal-actions,
body.layout-grand_luxury_light .modal-actions,
body.layout-grand_luxury .btn-primary,
body.layout-grand_luxury_light .btn-primary,
body.layout-grand_luxury .btn-secondary,
body.layout-grand_luxury_light .btn-secondary,
body.layout-grand_luxury .back-top,
body.layout-grand_luxury_light .back-top{
  border-radius:0!important;
}

/* popup personalizzazione: nessuna pill residua su prezzo, kicker, quantity e pulsanti */
body.layout-grand_luxury #productModal .modal-base-price,
body.layout-grand_luxury_light #productModal .modal-base-price,
body.layout-grand_luxury #productModal .modal-kicker,
body.layout-grand_luxury_light #productModal .modal-kicker,
body.layout-grand_luxury #productModal .qty,
body.layout-grand_luxury_light #productModal .qty,
body.layout-grand_luxury #productModal .qty button,
body.layout-grand_luxury_light #productModal .qty button,
body.layout-grand_luxury #productModal .modal-close,
body.layout-grand_luxury_light #productModal .modal-close,
body.layout-grand_luxury #productModal .modal-actions button,
body.layout-grand_luxury_light #productModal .modal-actions button{
  border-radius:0!important;
}

/* card categorie: zero radius anche sulle cornici decorative */
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury .featured-category-card,
body.layout-grand_luxury_light .featured-category-card{
  border-radius:0!important;
}
body.layout-grand_luxury .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card::before{
  border-radius:0!important;
}

/* prodotti lusso: tutti coerenti con o senza foto */
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product,
body.layout-grand_luxury .product:has(> img),
body.layout-grand_luxury_light .product:has(> img),
body.layout-grand_luxury .product:not(:has(> img)),
body.layout-grand_luxury_light .product:not(:has(> img)){
  border-radius:0!important;
}
body.layout-grand_luxury .product > img,
body.layout-grand_luxury_light .product > img{
  border-radius:0!important;
}

/* sezione in evidenza ripristinata: non collassare mai e usa colore impostato */
.category-featured .category-products{display:grid!important;}
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 90%,#000 10%),color-mix(in srgb,var(--cat-color,var(--primary)) 60%,#000 40%))!important;
  border-color:color-mix(in srgb,var(--cat-color,var(--primary)) 68%,#fff 32%)!important;
  border-radius:0!important;
}
body.layout-grand_luxury .category-featured .category-hero-card h2,
body.layout-grand_luxury_light .category-featured .category-hero-card h2,
body.layout-grand_luxury .category-featured .category-hero-card p,
body.layout-grand_luxury_light .category-featured .category-hero-card p{color:#fff!important;text-shadow:0 10px 28px rgba(0,0,0,.48)!important;}

/* badge bandiera: squadrato, ma mantiene colore prodotto */
body.layout-grand_luxury .product .badge,
body.layout-grand_luxury_light .product .badge{
  border-radius:0!important;
}

/* ricerca: campo e pulsante azzera sempre squadrati */
body.layout-grand_luxury #menuSearchbar input,
body.layout-grand_luxury_light #menuSearchbar input,
body.layout-grand_luxury #clearSearch,
body.layout-grand_luxury_light #clearSearch{
  border-radius:0!important;
}

/* v1.12.10 - Lusso Elite Dark/Light: radius zero reale e definitivo su ogni elemento del frontend luxury */
body.layout-grand_luxury *,
body.layout-grand_luxury_light *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury_light *::before,
body.layout-grand_luxury *::after,
body.layout-grand_luxury_light *::after{
  border-radius:0!important;
}

body.layout-grand_luxury .category,
body.layout-grand_luxury_light .category,
body.layout-grand_luxury .category-hero-card,
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury .category-hero-card.category-color-card,
body.layout-grand_luxury_light .category-hero-card.category-color-card,
body.layout-grand_luxury .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury .category-featured .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury .featured-category-card,
body.layout-grand_luxury_light .featured-category-card{
  border-radius:0!important;
  overflow:hidden!important;
}

body.layout-grand_luxury .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card::before,
body.layout-grand_luxury .category-hero-card::after,
body.layout-grand_luxury_light .category-hero-card::after,
body.layout-grand_luxury .category-color-card::before,
body.layout-grand_luxury_light .category-color-card::before,
body.layout-grand_luxury .category-color-card::after,
body.layout-grand_luxury_light .category-color-card::after{
  border-radius:0!important;
}

body.layout-grand_luxury #menuSearchbar,
body.layout-grand_luxury_light #menuSearchbar,
body.layout-grand_luxury #menuSearchbar input,
body.layout-grand_luxury_light #menuSearchbar input,
body.layout-grand_luxury #menuSearchbar button,
body.layout-grand_luxury_light #menuSearchbar button,
body.layout-grand_luxury #clearSearch,
body.layout-grand_luxury_light #clearSearch,
body.layout-grand_luxury .sticky-category-bar,
body.layout-grand_luxury_light .sticky-category-bar,
body.layout-grand_luxury .cat-nav,
body.layout-grand_luxury_light .cat-nav,
body.layout-grand_luxury .cat-nav a,
body.layout-grand_luxury_light .cat-nav a{
  border-radius:0!important;
}

body.layout-grand_luxury #productModal,
body.layout-grand_luxury_light #productModal,
body.layout-grand_luxury #productModal .modal,
body.layout-grand_luxury_light #productModal .modal,
body.layout-grand_luxury #productModal .modal-box,
body.layout-grand_luxury_light #productModal .modal-box,
body.layout-grand_luxury #productModal .modal-product-head,
body.layout-grand_luxury_light #productModal .modal-product-head,
body.layout-grand_luxury #productModal .modal-kicker,
body.layout-grand_luxury_light #productModal .modal-kicker,
body.layout-grand_luxury #productModal .modal-base-price,
body.layout-grand_luxury_light #productModal .modal-base-price,
body.layout-grand_luxury #productModal .modal-close,
body.layout-grand_luxury_light #productModal .modal-close,
body.layout-grand_luxury #productModal fieldset,
body.layout-grand_luxury_light #productModal fieldset,
body.layout-grand_luxury #productModal .option-choice,
body.layout-grand_luxury_light #productModal .option-choice,
body.layout-grand_luxury #productModal .product-note-field,
body.layout-grand_luxury_light #productModal .product-note-field,
body.layout-grand_luxury #productModal textarea,
body.layout-grand_luxury_light #productModal textarea,
body.layout-grand_luxury #productModal .qty,
body.layout-grand_luxury_light #productModal .qty,
body.layout-grand_luxury #productModal .qty button,
body.layout-grand_luxury_light #productModal .qty button,
body.layout-grand_luxury #productModal .modal-actions,
body.layout-grand_luxury_light #productModal .modal-actions,
body.layout-grand_luxury #productModal .modal-actions button,
body.layout-grand_luxury_light #productModal .modal-actions button{
  border-radius:0!important;
}

/* Mantiene visibile la sezione In evidenza in tutti i layout quando abilitata e ci sono prodotti in evidenza. */
.category-featured{display:block!important;}
.category-featured .category-products{display:grid!important;}


/* v1.12.11 - Lusso Elite: light quasi bianco + dark controls scuri */
body.layout-grand_luxury_light{
  --lux-bg:#fbfaf7!important;
  --lux-panel:#fffdfa!important;
  --lux-panel-soft:#f6f1e9!important;
  background:#fbfaf7!important;
  background-image:linear-gradient(180deg,#ffffff 0%,#fbfaf7 58%,#f8f3ea 100%)!important;
}
body.layout-grand_luxury_light::before{
  opacity:.10!important;
}
body.layout-grand_luxury_light .wrap,
body.layout-grand_luxury_light .sticky-category-bar,
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury_light .cat-nav{
  background:transparent!important;
}
body.layout-grand_luxury_light .language-switcher{
  background:#fffdfa!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.18)!important;
  box-shadow:0 14px 35px rgba(86,67,39,.08)!important;
}
body.layout-grand_luxury_light .language-title,
body.layout-grand_luxury_light .language-switcher *{
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .lang-btn{
  background:#fffdfa!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.22)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .lang-btn.active{
  background:#a4834a!important;
  color:#fff!important;
  border-color:#a4834a!important;
}
body.layout-grand_luxury_light .lang-btn.active *{color:#fff!important;}

body.layout-grand_luxury:not(.layout-grand_luxury_light) .language-switcher,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar input,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar button{
  background:#15130f!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.30)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.30)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .language-title,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .language-switcher *{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .lang-btn{
  background:#0f0e0a!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.26)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .lang-btn.active{
  background:#a4834a!important;
  color:#fff!important;
  border-color:#a4834a!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .lang-btn.active *{color:#fff!important;}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar input::placeholder{
  color:rgba(255,248,234,.70)!important;
  opacity:1!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) .searchbar,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .sticky-category-bar,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .cat-nav,
body.layout-grand_luxury:not(.layout-grand_luxury_light) .sticky-category-bar .cat-nav{
  background:rgba(7,7,5,.92)!important;
  border:0!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury_light .searchbar button{
  background:#fffdfa!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.20)!important;
  box-shadow:0 12px 26px rgba(86,67,39,.08)!important;
}
body.layout-grand_luxury_light .searchbar input::placeholder{
  color:#7f7668!important;
  opacity:1!important;
}

/* v1.12.12 - fix reale: popup addizionali dark + ripristino sfondo Light precedente */
/* Lusso Light: torna allo sfondo caldo/elegante pre-v1.12.11 */
body.layout-grand_luxury_light{
  --lux-bg:#f7f1e7!important;
  --lux-panel:#fffaf2!important;
  --lux-panel-soft:#f1e6d6!important;
  background:
    radial-gradient(circle at 14% 0%,rgba(212,183,129,.32),transparent 30vw),
    radial-gradient(circle at 86% 7%,rgba(255,255,255,.72),transparent 28vw),
    linear-gradient(180deg,#fffaf1 0%,#f4eadb 54%,#efe2d0 100%)!important;
  color:#19150f!important;
}
body.layout-grand_luxury_light::before{
  opacity:.28!important;
  background-image:linear-gradient(rgba(164,131,74,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(164,131,74,.08) 1px,transparent 1px)!important;
}

/* Lusso Dark: tutti gli addizionali/quantità nel popup devono restare scuri e leggibili */
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal fieldset,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-group,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .product-note-field{
  background:#1b1812!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.32)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty{
  background:#0d0c08!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.32)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice *,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty *,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty span,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty b{
  color:#fff8ea!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-choice-qty b{
  color:#fff!important;
  font-weight:950!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-qty,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty{
  background:#15130f!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.34)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-qty .opt-count,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty b,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty strong{
  color:#fff8ea!important;
  opacity:1!important;
  font-weight:950!important;
  text-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .option-qty button,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .qty button,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .opt-minus,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal .opt-plus{
  background:#a4834a!important;
  color:#fff!important;
  border:1px solid rgba(216,180,106,.52)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input[type="checkbox"],
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input[type="radio"]{
  background:#fff!important;
  border-color:rgba(255,248,234,.82)!important;
  accent-color:#a4834a!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input:not([type="checkbox"]):not([type="radio"]){
  background:#0d0c08!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.32)!important;
}
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal textarea::placeholder,
body.layout-grand_luxury:not(.layout-grand_luxury_light) #productModal input::placeholder{
  color:rgba(255,248,234,.66)!important;
  opacity:1!important;
}

/* Mantiene comunque il radius zero anche dopo questi fix */
body.layout-grand_luxury *,
body.layout-grand_luxury_light *,
body.layout-grand_luxury *::before,
body.layout-grand_luxury_light *::before,
body.layout-grand_luxury *::after,
body.layout-grand_luxury_light *::after{
  border-radius:0!important;
}


/* v1.12.13 - Lusso Elite Light mobile: rimuove ombre da foto prodotto e badge/etichette prodotto */
@media (max-width:680px){
  body.layout-grand_luxury_light .product > img,
  body.layout-grand_luxury_light .product:has(> img) > img{
    box-shadow:none!important;
    filter:none!important;
    text-shadow:none!important;
  }
  body.layout-grand_luxury_light .product .product-badges,
  body.layout-grand_luxury_light .product .product-badges *,
  body.layout-grand_luxury_light .product .badge,
  body.layout-grand_luxury_light .product .badge[style]{
    box-shadow:none!important;
    text-shadow:none!important;
    filter:none!important;
  }
  body.layout-grand_luxury_light .product .badge::before,
  body.layout-grand_luxury_light .product .badge::after,
  body.layout-grand_luxury_light .product .product-badges::before,
  body.layout-grand_luxury_light .product .product-badges::after{
    box-shadow:none!important;
    text-shadow:none!important;
    filter:none!important;
  }
}

/* v2.0.15 - Frontend: categorie e prodotti dentro un'unica card
   Ogni sezione categoria diventa una card unica: titolo in alto, prodotti sotto separati da linee.
   In accordion chiuso resta visibile solo la card titolo colorata/immagine. */
body .category[data-category-section]{
  background:var(--card)!important;
  border:1px solid color-mix(in srgb,var(--text) 10%,transparent)!important;
  border-radius:var(--radius)!important;
  overflow:hidden!important;
  padding:0!important;
  box-shadow:0 16px 42px rgba(17,24,39,.07)!important;
}
body.layout-grand_luxury .category[data-category-section]{
  background:var(--lux-panel, var(--card))!important;
  border-color:rgba(216,180,106,.24)!important;
  box-shadow:0 28px 88px rgba(0,0,0,.22)!important;
}
body.layout-grand_luxury_light .category[data-category-section]{
  background:var(--card)!important;
  border-color:rgba(120,92,44,.14)!important;
  box-shadow:0 18px 44px rgba(55,43,22,.08)!important;
}
body .category[data-category-section] .category-hero-card,
body .category[data-category-section] .featured-category-card{
  margin:0!important;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body .category[data-category-section] .category-hero-card::before,
body .category[data-category-section] .category-hero-card::after{
  border-radius:0!important;
}
body .category[data-category-section] .category-products{
  background:var(--card)!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .category[data-category-section] .category-products{
  background:var(--lux-panel, var(--card))!important;
}
body.layout-grand_luxury_light .category[data-category-section] .category-products{
  background:var(--card)!important;
}
body .category[data-category-section] .category-products .product{
  margin:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  border:0!important;
  border-top:1px solid color-mix(in srgb,var(--text) 11%,transparent)!important;
  background:transparent!important;
}
body.layout-grand_luxury .category[data-category-section] .category-products .product{
  border-top-color:rgba(216,180,106,.18)!important;
}
body.layout-grand_luxury_light .category[data-category-section] .category-products .product{
  border-top-color:rgba(120,92,44,.13)!important;
}
body .category[data-category-section] .category-products .product:first-child{
  border-top:1px solid color-mix(in srgb,var(--text) 11%,transparent)!important;
}
body.layout-cards .category[data-category-section] .category-products,
body.layout-luxury .category[data-category-section] .category-products,
body.layout-grand_luxury .category[data-category-section] .category-products{
  grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
}
body.layout-compact .category[data-category-section] .category-products{
  display:flex!important;
  flex-direction:column!important;
}
body.layout-cards .category[data-category-section] .category-products .product,
body.layout-luxury .category[data-category-section] .category-products .product,
body.layout-grand_luxury .category[data-category-section] .category-products .product{
  min-width:0!important;
}
body.category-mode-normal .category[data-category-section] .category-products{
  display:grid!important;
}
body.category-mode-normal.layout-compact .category[data-category-section] .category-products{
  display:flex!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open),
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open){
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open) .category-products,
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open) .category-products{
  display:none!important;
  padding:0!important;
  margin:0!important;
}
body.category-mode-accordion .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto .category[data-category-section].accordion-open .category-products{
  display:grid!important;
}
body.category-mode-accordion.layout-compact .category[data-category-section].accordion-open .category-products,
body.category-mode-accordion_auto.layout-compact .category[data-category-section].accordion-open .category-products{
  display:flex!important;
  flex-direction:column!important;
}
@media(max-width:980px){
  body.layout-cards .category[data-category-section] .category-products,
  body.layout-luxury .category[data-category-section] .category-products,
  body.layout-grand_luxury .category[data-category-section] .category-products{
    grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  body .category[data-category-section]{
    border-radius:var(--radius)!important;
  }
  body.layout-grand_luxury .category[data-category-section],
  body.layout-grand_luxury_light .category[data-category-section]{
    border-radius:0!important;
  }
  body.layout-cards .category[data-category-section] .category-products,
  body.layout-luxury .category[data-category-section] .category-products,
  body.layout-grand_luxury .category[data-category-section] .category-products{
    grid-template-columns:1fr!important;
  }
  body .category[data-category-section] .category-products .product{
    border-left:0!important;
    border-right:0!important;
  }
}

/* v2.0.27 delivery */
.delivery-quote{margin:.5rem 0 0;padding:.65rem .8rem;border:1px solid rgba(0,0,0,.08);background:rgba(16,185,129,.08);font-weight:800}
.delivery-quote.error{background:rgba(239,68,68,.08);color:#991b1b}


/* v2.0.29 - Delivery Places autocomplete sopra al carrello mobile */
.pac-container{z-index:999999!important;font-family:inherit!important;border-radius:0!important;box-shadow:0 18px 48px rgba(0,0,0,.22)!important;}
.pac-item{padding:10px 12px!important;cursor:pointer!important;}

/* v2.0.35 - Carrello frontend rifinito */
.cart{z-index:90!important;}
.cart>button.cart-fab,
.cart>button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  min-height:58px!important;
  padding:14px 18px!important;
  border:1px solid color-mix(in srgb,var(--accent) 82%,#fff)!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 94%,#fff),color-mix(in srgb,var(--accent) 76%,#000))!important;
  color:#fff!important;
  box-shadow:0 18px 44px rgba(15,23,42,.22)!important;
}
.cart-fab-text{font-weight:950!important;letter-spacing:.01em!important;}
.cart-fab-count{
  background:#fff!important;
  color:var(--accent)!important;
  border:1px solid rgba(0,0,0,.06)!important;
  box-shadow:0 7px 18px rgba(15,23,42,.18)!important;
}
.cart-panel{
  width:min(460px,calc(100vw - 24px))!important;
  max-height:min(82vh,760px)!important;
  padding:0!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#fff,#fbfaf8)!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:0 32px 96px rgba(15,23,42,.30)!important;
}
.cart-panel::before{
  content:'';
  display:block;
  height:6px;
  background:linear-gradient(90deg,var(--primary),var(--accent));
}
.cart-panel h3{
  margin:0!important;
  padding:20px 62px 16px 22px!important;
  font-size:24px!important;
  line-height:1.05!important;
  color:var(--text)!important;
  border-bottom:1px solid rgba(15,23,42,.08)!important;
  background:rgba(255,255,255,.72)!important;
}
.cart-close{
  top:14px!important;
  right:14px!important;
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  background:#f3f4f6!important;
  color:#111827!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:none!important;
}
#cartItems{
  max-height:28vh!important;
  overflow:auto!important;
  padding:12px 18px 4px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.025),transparent)!important;
}
.cart-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:4px 12px!important;
  align-items:start!important;
  padding:13px 14px!important;
  margin:0 0 10px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(15,23,42,.045)!important;
}
.cart-item h4{
  margin:0!important;
  font-size:15px!important;
  line-height:1.25!important;
  color:var(--text)!important;
}
.cart-item small{
  grid-column:1 / -1!important;
  color:var(--muted)!important;
  font-size:12.5px!important;
  line-height:1.45!important;
  margin-top:3px!important;
}
.cart-item b{
  grid-column:2!important;
  grid-row:1!important;
  font-size:15px!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
.cart-item button{
  grid-column:1 / -1!important;
  justify-self:start!important;
  margin-top:7px!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  background:#fff1f2!important;
  color:#be123c!important;
  border:1px solid rgba(190,18,60,.13)!important;
  font-size:12px!important;
  text-transform:capitalize!important;
}
.cart-panel label,
.delivery-method-box,
#deliveryAddressWrap,
.cart-panel #orderMsg{
  margin-left:18px!important;
  margin-right:18px!important;
}
.cart-panel label{
  gap:7px!important;
  margin-top:10px!important;
  margin-bottom:10px!important;
  color:var(--text)!important;
  font-size:13px!important;
  letter-spacing:.01em!important;
}
.cart-panel label span:first-child,
.delivery-method-box strong{
  color:var(--text)!important;
  font-weight:950!important;
}
.cart-panel input,
.cart-panel textarea,
.cart-panel select{
  width:100%!important;
  min-height:46px!important;
  border:1px solid rgba(15,23,42,.12)!important;
  border-radius:16px!important;
  background:#fff!important;
  color:var(--text)!important;
  padding:12px 14px!important;
  font-size:15px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.cart-panel textarea{min-height:82px!important;resize:vertical!important;}
.cart-panel input:focus,
.cart-panel textarea:focus,
.cart-panel select:focus{
  outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)!important;
  border-color:color-mix(in srgb,var(--accent) 44%,#fff)!important;
}
.delivery-method-box{
  display:grid!important;
  gap:8px!important;
  margin-top:12px!important;
  padding:13px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.025),rgba(15,23,42,.01))!important;
}
.delivery-method-box .radio-line{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:9px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid rgba(15,23,42,.08)!important;
  border-radius:14px!important;
  background:#fff!important;
  cursor:pointer!important;
}
.delivery-method-box input[type="radio"]{
  width:18px!important;
  min-height:18px!important;
  height:18px!important;
  padding:0!important;
  accent-color:var(--accent)!important;
}
.delivery-quote{
  margin:8px 0 0!important;
  padding:11px 13px!important;
  border-radius:14px!important;
  background:rgba(16,185,129,.10)!important;
  border:1px solid rgba(16,185,129,.18)!important;
  color:#065f46!important;
  font-size:13px!important;
}
#cartTotal{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin:14px 18px 0!important;
  padding:15px 16px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 94%,#fff),color-mix(in srgb,var(--accent) 70%,#000))!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1.1!important;
  box-shadow:0 14px 34px color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
.cart-panel #sendOrder{
  width:calc(100% - 36px)!important;
  margin:12px 18px 18px!important;
  min-height:52px!important;
  border-radius:18px!important;
  font-size:16px!important;
  letter-spacing:.01em!important;
  background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 78%,#000))!important;
  color:#fff!important;
}
#orderMsg{
  display:block!important;
  padding:0 0 16px!important;
  color:var(--muted)!important;
  font-weight:750!important;
}

body.layout-grand_luxury .cart-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025)),#15130f!important;
  border-color:rgba(216,180,106,.28)!important;
  color:#fff7e7!important;
}
body.layout-grand_luxury .cart-panel h3,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury .delivery-method-box,
body.layout-grand_luxury .delivery-method-box .radio-line,
body.layout-grand_luxury .cart-panel input,
body.layout-grand_luxury .cart-panel textarea,
body.layout-grand_luxury .cart-panel select{
  background:#0f0e0a!important;
  color:#fff7e7!important;
  border-color:rgba(216,180,106,.28)!important;
}
body.layout-grand_luxury .cart-item h4,
body.layout-grand_luxury .cart-panel label span:first-child,
body.layout-grand_luxury .delivery-method-box strong{color:#fff7e7!important;}
body.layout-grand_luxury .cart-item small,
body.layout-grand_luxury #orderMsg{color:rgba(255,247,231,.72)!important;}
body.layout-grand_luxury .cart-item b{color:#d8bc78!important;}
body.layout-grand_luxury .cart-close{background:#1d1a14!important;color:#fff7e7!important;border-color:rgba(216,180,106,.30)!important;}
body.layout-grand_luxury .cart-item button{background:rgba(239,68,68,.12)!important;color:#fecaca!important;border-color:rgba(239,68,68,.25)!important;}
body.layout-grand_luxury .delivery-quote{background:rgba(16,185,129,.12)!important;color:#bbf7d0!important;border-color:rgba(16,185,129,.22)!important;}

body.layout-grand_luxury .cart>button.cart-fab,
body.layout-grand_luxury_light .cart>button.cart-fab,
body.layout-grand_luxury .cart>button,
body.layout-grand_luxury_light .cart>button,
body.layout-grand_luxury .cart-panel,
body.layout-grand_luxury_light .cart-panel,
body.layout-grand_luxury .cart-panel::before,
body.layout-grand_luxury_light .cart-panel::before,
body.layout-grand_luxury .cart-close,
body.layout-grand_luxury_light .cart-close,
body.layout-grand_luxury .cart-item,
body.layout-grand_luxury_light .cart-item,
body.layout-grand_luxury .cart-item button,
body.layout-grand_luxury_light .cart-item button,
body.layout-grand_luxury .cart-panel input,
body.layout-grand_luxury_light .cart-panel input,
body.layout-grand_luxury .cart-panel textarea,
body.layout-grand_luxury_light .cart-panel textarea,
body.layout-grand_luxury .cart-panel select,
body.layout-grand_luxury_light .cart-panel select,
body.layout-grand_luxury .delivery-method-box,
body.layout-grand_luxury_light .delivery-method-box,
body.layout-grand_luxury .delivery-method-box .radio-line,
body.layout-grand_luxury_light .delivery-method-box .radio-line,
body.layout-grand_luxury .delivery-quote,
body.layout-grand_luxury_light .delivery-quote,
body.layout-grand_luxury #cartTotal,
body.layout-grand_luxury_light #cartTotal,
body.layout-grand_luxury .cart-panel #sendOrder,
body.layout-grand_luxury_light .cart-panel #sendOrder{
  border-radius:0!important;
}

@media(max-width:680px){
  .cart{left:auto!important;right:14px!important;bottom:14px!important;}
  .cart>button.cart-fab{border-radius:999px!important;}
  body.layout-grand_luxury .cart>button.cart-fab,
  body.layout-grand_luxury_light .cart>button.cart-fab{border-radius:0!important;}
  .cart-panel{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    width:100%!important;
    max-height:86vh!important;
    border-radius:24px 24px 0 0!important;
  }
  .cart-panel h3{padding:18px 62px 14px 18px!important;font-size:22px!important;}
  #cartItems{max-height:24vh!important;padding-left:14px!important;padding-right:14px!important;}
  .cart-panel label,.delivery-method-box,#deliveryAddressWrap,.cart-panel #orderMsg{margin-left:14px!important;margin-right:14px!important;}
  #cartTotal{margin-left:14px!important;margin-right:14px!important;}
  .cart-panel #sendOrder{width:calc(100% - 28px)!important;margin-left:14px!important;margin-right:14px!important;}
  body.layout-grand_luxury .cart-panel,
  body.layout-grand_luxury_light .cart-panel{border-radius:0!important;}
}


/* v2.0.36 - Carrello scrollabile + pulsante sempre colore principale */
.cart-panel{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;
}
.cart.open .cart-panel{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
#cartItems{
  max-height:none!important;
  overflow:visible!important;
}
.cart>button.cart-fab,
.cart>button,
body.layout-grand_luxury .cart>button.cart-fab,
body.layout-grand_luxury_light .cart>button.cart-fab,
body.layout-grand_luxury .cart>button,
body.layout-grand_luxury_light .cart>button{
  background:var(--primary)!important;
  border-color:color-mix(in srgb,var(--primary) 86%,#fff)!important;
  color:#fff!important;
}
.cart-fab-count,
body.layout-grand_luxury .cart-fab-count,
body.layout-grand_luxury_light .cart-fab-count{
  color:var(--primary)!important;
}
@media(max-width:680px){
  .cart-panel{
    max-height:86vh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
  }
  #cartItems{
    max-height:none!important;
    overflow:visible!important;
  }
}

/* v2.0.39 - riepilogo prodotti e soglia delivery nel carrello */
.cart-products-summary{
  margin:10px 0 12px!important;
  padding:14px 16px!important;
  border:1px solid rgba(0,0,0,.08)!important;
  background:color-mix(in srgb,var(--primary) 5%,var(--card))!important;
  border-radius:18px!important;
  box-shadow:0 10px 28px rgba(17,24,39,.05)!important;
}
.cart-products-summary>div{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:950;color:var(--text)!important;}
.cart-products-summary>div span{font-size:14px;color:var(--muted)!important;text-transform:uppercase;letter-spacing:.04em;}
.cart-products-summary>div strong{font-size:18px;color:var(--text)!important;}
.cart-products-summary small{display:block;margin-top:6px;color:var(--muted)!important;font-weight:800;line-height:1.35;}
.cart-products-summary small strong{color:var(--primary)!important;}
body.layout-grand_luxury .cart-products-summary{background:rgba(216,188,120,.08)!important;border-color:rgba(216,188,120,.22)!important;border-radius:0!important;}
body.layout-grand_luxury .cart-products-summary>div,
body.layout-grand_luxury .cart-products-summary>div strong{color:#fffaf0!important;}
body.layout-grand_luxury .cart-products-summary small{color:#cfc8b9!important;}
body.layout-grand_luxury .cart-products-summary small strong{color:#d8bc78!important;}
body.layout-grand_luxury_light .cart-products-summary{background:#fffaf1!important;border-color:#eadfcb!important;border-radius:0!important;}
body.layout-grand_luxury_light .cart-products-summary small strong{color:#9b7a45!important;}


/* v2.0.50 - Lusso Elite colori fissi e radius zero */
body.layout-grand_luxury,body.layout-grand_luxury_light{--radius:0px!important;}
body.layout-grand_luxury *,body.layout-grand_luxury *::before,body.layout-grand_luxury *::after,body.layout-grand_luxury_light *,body.layout-grand_luxury_light *::before,body.layout-grand_luxury_light *::after{border-radius:0!important;}

/* v2.0.51 - Hero Lusso Elite allineato alla struttura Dark, con sfondo da Personalizzazione */
body.layout-grand_luxury .hero,
body.layout-grand_luxury_light .hero{
  min-height:440px!important;
  align-items:center!important;
  background-size:cover!important;
  background-position:center!important;
  border-bottom:1px solid rgba(216,180,106,.28)!important;
  box-shadow:0 34px 120px rgba(0,0,0,.28)!important;
}
body.layout-grand_luxury .hero:not([style]),
body.layout-grand_luxury_light .hero:not([style]){
  background:
    radial-gradient(circle at 18% 12%,rgba(255,255,255,.10),transparent 26vw),
    linear-gradient(120deg,rgba(0,0,0,.62),rgba(0,0,0,.24)),
    var(--bg)!important;
}
body.layout-grand_luxury .hero[style],
body.layout-grand_luxury_light .hero[style]{
  background-blend-mode:multiply,normal!important;
}
body.layout-grand_luxury .hero::after,
body.layout-grand_luxury_light .hero::after{
  background:
    linear-gradient(180deg,rgba(0,0,0,.32),rgba(0,0,0,.08) 42%,rgba(0,0,0,.34)),
    radial-gradient(circle at 50% 50%,transparent 0%,rgba(0,0,0,.32) 74%)!important;
}
body.layout-grand_luxury .hero-inner,
body.layout-grand_luxury_light .hero-inner{
  width:min(1180px,90vw)!important;
  padding:88px 0!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
body.layout-grand_luxury .hero .logo,
body.layout-grand_luxury_light .hero .logo{
  max-width:118px!important;
  max-height:118px!important;
  padding:10px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(216,180,106,.46)!important;
  box-shadow:0 18px 48px rgba(0,0,0,.38)!important;
}
body.layout-grand_luxury .hero h1,
body.layout-grand_luxury_light .hero h1{
  margin:22px auto 10px!important;
  max-width:920px!important;
  color:#fff8ea!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(48px,8vw,112px)!important;
  line-height:.86!important;
  letter-spacing:-.07em!important;
  font-weight:700!important;
  text-align:center!important;
  text-shadow:0 24px 80px rgba(0,0,0,.72)!important;
}
body.layout-grand_luxury .hero p,
body.layout-grand_luxury_light .hero p{
  margin:0 auto!important;
  max-width:720px!important;
  color:rgba(255,248,234,.84)!important;
  font-size:clamp(15px,1.45vw,20px)!important;
  line-height:1.65!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 14px 40px rgba(0,0,0,.58)!important;
}
body.layout-grand_luxury .hero .table-pill,
body.layout-grand_luxury_light .hero .table-pill,
body.layout-grand_luxury .hero .eyebrow,
body.layout-grand_luxury_light .hero .eyebrow{
  background:rgba(216,180,106,.14)!important;
  color:#f5dfaa!important;
  border:1px solid rgba(216,180,106,.35)!important;
  margin-top:18px!important;
}
@media(max-width:680px){
  body.layout-grand_luxury .hero,
  body.layout-grand_luxury_light .hero{min-height:330px!important;}
  body.layout-grand_luxury .hero-inner,
  body.layout-grand_luxury_light .hero-inner{padding:52px 0!important;}
  body.layout-grand_luxury .hero h1,
  body.layout-grand_luxury_light .hero h1{font-size:clamp(42px,13vw,70px)!important;}
}

/* v2.0.52 - Fix cover hero Lusso Elite: i layout fissi non devono sovrascrivere la cover caricata */
body.layout-grand_luxury .hero[style],
body.layout-grand_luxury_light .hero[style]{
  background:
    linear-gradient(180deg,rgba(0,0,0,.42),rgba(0,0,0,.12) 42%,rgba(0,0,0,.42)),
    linear-gradient(120deg,rgba(0,0,0,.58),rgba(0,0,0,.18)),
    var(--md-hero-cover)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-blend-mode:normal,normal,normal!important;
}
body.layout-grand_luxury_light .hero[style]{
  background:
    linear-gradient(180deg,rgba(42,34,24,.20),rgba(42,34,24,.06) 42%,rgba(42,34,24,.22)),
    linear-gradient(120deg,rgba(42,34,24,.30),rgba(255,250,241,.08)),
    var(--md-hero-cover)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}

/* v2.0.53 - Fix placeholder ricerca Lusso Elite Dark */
body.layout-grand_luxury #menuSearchbar.searchbar input::placeholder,
body.layout-grand_luxury .searchbar input::placeholder,
body.layout-grand_luxury input#search::placeholder{
  color:rgba(255,247,231,.88)!important;
  opacity:1!important;
}
body.layout-grand_luxury #menuSearchbar.searchbar input,
body.layout-grand_luxury input#search{
  color:#fff7e7!important;
  caret-color:#d8bc78!important;
}
body.layout-grand_luxury #menuSearchbar.searchbar input::-webkit-input-placeholder{color:rgba(255,247,231,.88)!important;opacity:1!important;}
body.layout-grand_luxury #menuSearchbar.searchbar input::-moz-placeholder{color:rgba(255,247,231,.88)!important;opacity:1!important;}
body.layout-grand_luxury #menuSearchbar.searchbar input:-ms-input-placeholder{color:rgba(255,247,231,.88)!important;opacity:1!important;}

/* v2.0.54 - Lusso Elite Dark: testo e placeholder cerca neri */
body.layout-grand_luxury #menuSearchbar.searchbar input,
body.layout-grand_luxury .searchbar input,
body.layout-grand_luxury .inline-searchbar input,
body.layout-grand_luxury .search-overlay-head input,
body.layout-grand_luxury input#search,
body.layout-grand_luxury input[type="search"]{
  color:#000000!important;
  caret-color:#000000!important;
}
body.layout-grand_luxury #menuSearchbar.searchbar input::placeholder,
body.layout-grand_luxury .searchbar input::placeholder,
body.layout-grand_luxury .inline-searchbar input::placeholder,
body.layout-grand_luxury .search-overlay-head input::placeholder,
body.layout-grand_luxury input#search::placeholder,
body.layout-grand_luxury input[type="search"]::placeholder{
  color:#000000!important;
  opacity:.72!important;
}
body.layout-grand_luxury #menuSearchbar.searchbar input::-webkit-input-placeholder,
body.layout-grand_luxury .searchbar input::-webkit-input-placeholder,
body.layout-grand_luxury .inline-searchbar input::-webkit-input-placeholder,
body.layout-grand_luxury .search-overlay-head input::-webkit-input-placeholder,
body.layout-grand_luxury input#search::-webkit-input-placeholder,
body.layout-grand_luxury input[type="search"]::-webkit-input-placeholder{
  color:#000000!important;
  opacity:.72!important;
}
body.layout-grand_luxury #menuSearchbar.searchbar input::-moz-placeholder,
body.layout-grand_luxury .searchbar input::-moz-placeholder,
body.layout-grand_luxury .inline-searchbar input::-moz-placeholder,
body.layout-grand_luxury .search-overlay-head input::-moz-placeholder,
body.layout-grand_luxury input#search::-moz-placeholder,
body.layout-grand_luxury input[type="search"]::-moz-placeholder{
  color:#000000!important;
  opacity:.72!important;
}
body.layout-grand_luxury #menuSearchbar.searchbar input:-ms-input-placeholder,
body.layout-grand_luxury .searchbar input:-ms-input-placeholder,
body.layout-grand_luxury .inline-searchbar input:-ms-input-placeholder,
body.layout-grand_luxury .search-overlay-head input:-ms-input-placeholder,
body.layout-grand_luxury input#search:-ms-input-placeholder,
body.layout-grand_luxury input[type="search"]:-ms-input-placeholder{
  color:#000000!important;
  opacity:.72!important;
}

/* v2.0.55 - Catalog mode: varianti/opzioni visibili nella card prodotto, senza pulsanti */
body.mode-catalog .product .product-button-slot,
body.mode-catalog .product button.add,
body.mode-catalog #cart,
body.mode-catalog .cart{display:none!important;}
body.mode-catalog .product-action-row{grid-column:1 / -1!important;padding-top:12px!important;margin-top:0!important;border-top:1px solid color-mix(in srgb,var(--muted) 18%,transparent)!important;}
body.mode-catalog .product-action-row .price{width:100%!important;justify-content:flex-end!important;text-align:right!important;}
.catalog-options{grid-column:1 / -1;display:flex;flex-direction:column;gap:10px;margin:10px 0 2px;padding:12px 0 0;border-top:1px solid color-mix(in srgb,var(--muted) 16%,transparent)}
.catalog-option-group{display:block;padding:10px 12px;border:1px solid color-mix(in srgb,var(--muted) 17%,transparent);background:color-mix(in srgb,var(--card) 90%,var(--bg));box-shadow:none!important;border-radius:0!important;}
.catalog-option-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px;font-size:13px;line-height:1.25;text-transform:uppercase;letter-spacing:.06em;color:var(--text)}
.catalog-option-head strong{font-weight:950;color:inherit}.catalog-option-rule{font-size:10px;font-weight:900;color:var(--muted);border:1px solid color-mix(in srgb,var(--muted) 28%,transparent);padding:3px 6px;border-radius:0!important;white-space:nowrap}.catalog-option-desc{margin:0 0 8px!important;font-size:12px!important;line-height:1.35!important;color:var(--muted)!important}.catalog-option-list{display:flex;flex-wrap:wrap;gap:7px}.catalog-option-chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:6px 9px;border:1px solid color-mix(in srgb,var(--muted) 20%,transparent);background:color-mix(in srgb,var(--bg) 62%,var(--card));font-size:12.5px;font-weight:800;line-height:1.15;color:var(--text);border-radius:0!important}.catalog-option-chip em{font-style:normal;font-weight:950;color:var(--primary);white-space:nowrap}
body.layout-luxury-dark.mode-catalog .catalog-option-group,body.layout-luxury.mode-catalog .catalog-option-group{background:rgba(255,255,255,.035)!important;border-color:rgba(212,175,55,.26)!important}body.layout-luxury-dark.mode-catalog .catalog-option-chip,body.layout-luxury.mode-catalog .catalog-option-chip{background:rgba(255,255,255,.045)!important;border-color:rgba(212,175,55,.22)!important;color:#f7efe0!important}body.layout-luxury-dark.mode-catalog .catalog-option-chip em,body.layout-luxury.mode-catalog .catalog-option-chip em{color:#d4af37!important}body.layout-luxury-light.mode-catalog .catalog-option-group{background:#fbf7ef!important;border-color:#d8c49a!important}body.layout-luxury-light.mode-catalog .catalog-option-chip{background:#fffdf8!important;border-color:#dfcfaa!important;color:#241b12!important}body.layout-luxury-light.mode-catalog .catalog-option-chip em{color:#8b6b21!important}
@media(max-width:680px){.catalog-options{gap:8px;margin-top:8px;padding-top:10px}.catalog-option-group{padding:9px 10px}.catalog-option-list{gap:6px}.catalog-option-chip{font-size:12px;padding:6px 8px}.catalog-option-head{align-items:flex-start;flex-direction:column;gap:4px}.catalog-option-rule{align-self:flex-start}}


/* v2.0.56 - Catalogo: spazi ottimizzati e descrizione gruppi opzioni nascosta */
body.mode-catalog .product{
  min-height:0!important;
  align-items:start!important;
  grid-auto-rows:auto!important;
}
body.mode-catalog .product .p-info{
  gap:0!important;
  min-height:0!important;
}
body.mode-catalog .product .p-info > *:empty,
body.mode-catalog .product .chips:empty,
body.mode-catalog .product .meta:empty,
body.mode-catalog .product-badges:empty{
  display:none!important;
  margin:0!important;
  padding:0!important;
}
body.mode-catalog .product h3{
  margin-top:8px!important;
  margin-bottom:6px!important;
}
body.mode-catalog .product p{
  margin:0 0 10px!important;
}
body.mode-catalog .catalog-options{
  margin-top:12px!important;
  padding-top:12px!important;
}
body.mode-catalog .catalog-option-desc{
  display:none!important;
}
body.mode-catalog .product-action-row{
  margin-top:10px!important;
}
body.mode-catalog .card-no-image .product,
body.mode-catalog .product:not(:has(> img)){
  grid-template-columns:1fr!important;
}
body.mode-catalog .product:not(:has(.chips)) .meta,
body.mode-catalog .product:not(:has(.meta)) .catalog-options{
  margin-top:10px!important;
}
body.mode-catalog.layout-luxury .product{
  min-height:0!important;
}
body.mode-catalog.layout-luxury .product > :not(img){
  margin-left:22px!important;
  margin-right:22px!important;
}
body.mode-catalog.layout-luxury .catalog-options{
  margin-left:22px!important;
  margin-right:22px!important;
}
@media(max-width:680px){
  body.mode-catalog .catalog-options{margin-top:10px!important;padding-top:10px!important;}
  body.mode-catalog .product-action-row{margin-top:8px!important;padding-top:10px!important;}
}

/* v2.0.57 - Categorie come card uniche e prodotti come sottocard su tutti i layout */
body .category[data-category-section]{
  display:block!important;
  margin:24px 0 44px!important;
  padding:0!important;
  overflow:hidden!important;
  background:color-mix(in srgb,var(--card) 96%,var(--bg))!important;
  border:1px solid color-mix(in srgb,var(--line) 72%,var(--text) 8%)!important;
  border-radius:var(--radius)!important;
  box-shadow:0 18px 48px rgba(17,24,39,.07)!important;
}
body .category[data-category-section] > .category-hero-card,
body .category[data-category-section] > .featured-category-card{
  width:100%!important;
  margin:0!important;
  border-top:0!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:0!important;
  box-shadow:none!important;
}
body .category[data-category-section] > .category-hero-card::before,
body .category[data-category-section] > .category-hero-card::after,
body .category[data-category-section] > .featured-category-card::before,
body .category[data-category-section] > .featured-category-card::after{
  box-shadow:none!important;
}
body .category[data-category-section] > .category-products{
  width:100%!important;
  margin:0!important;
  padding:18px!important;
  gap:14px!important;
  background:color-mix(in srgb,var(--bg) 38%,var(--card))!important;
  border-top:1px solid color-mix(in srgb,var(--line) 74%,var(--text) 9%)!important;
  overflow:visible!important;
}
body.category-mode-normal .category[data-category-section] > .category-products,
body.category-mode-accordion .category[data-category-section].accordion-open > .category-products,
body.category-mode-accordion_auto .category[data-category-section].accordion-open > .category-products{
  display:grid!important;
  grid-template-columns:repeat(var(--cols),minmax(0,1fr))!important;
}
body.layout-compact.category-mode-normal .category[data-category-section] > .category-products,
body.layout-compact.category-mode-accordion .category[data-category-section].accordion-open > .category-products,
body.layout-compact.category-mode-accordion_auto .category[data-category-section].accordion-open > .category-products{
  display:flex!important;
  flex-direction:column!important;
}
body .category[data-category-section] > .category-products > .product{
  margin:0!important;
  padding:16px!important;
  background:var(--card)!important;
  border:1px solid color-mix(in srgb,var(--line) 76%,var(--text) 8%)!important;
  border-radius:calc(var(--radius) * .82)!important;
  box-shadow:0 10px 30px rgba(17,24,39,.055)!important;
  min-width:0!important;
}
body .category[data-category-section] > .category-products > .product + .product{
  border-top:1px solid color-mix(in srgb,var(--line) 76%,var(--text) 8%)!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open),
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open){
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open) > .category-hero-card,
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open) > .category-hero-card,
body.category-mode-accordion .category[data-category-section]:not(.accordion-open) > .featured-category-card,
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open) > .featured-category-card{
  border:1px solid color-mix(in srgb,var(--line) 58%,var(--text) 10%)!important;
  box-shadow:0 12px 34px rgba(17,24,39,.075)!important;
}
body.category-mode-accordion .category[data-category-section]:not(.accordion-open) > .category-products,
body.category-mode-accordion_auto .category[data-category-section]:not(.accordion-open) > .category-products{
  display:none!important;
  height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
}
body.layout-grand_luxury .category[data-category-section],
body.layout-grand_luxury_light .category[data-category-section]{
  border-radius:0!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-hero-card,
body.layout-grand_luxury_light .category[data-category-section] > .category-hero-card,
body.layout-grand_luxury .category[data-category-section] > .featured-category-card,
body.layout-grand_luxury_light .category[data-category-section] > .featured-category-card,
body.layout-grand_luxury .category[data-category-section] > .category-products,
body.layout-grand_luxury_light .category[data-category-section] > .category-products,
body.layout-grand_luxury .category[data-category-section] > .category-products > .product,
body.layout-grand_luxury_light .category[data-category-section] > .category-products > .product,
body.layout-grand_luxury .category[data-category-section] > .category-products > .product img,
body.layout-grand_luxury_light .category[data-category-section] > .category-products > .product img{
  border-radius:0!important;
}
body.layout-grand_luxury .category[data-category-section]{
  background:rgba(22,20,15,.92)!important;
  border-color:rgba(216,180,106,.24)!important;
  box-shadow:0 28px 88px rgba(0,0,0,.28)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products{
  background:rgba(8,8,6,.64)!important;
  border-top-color:rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product{
  background:rgba(255,255,255,.045)!important;
  border-color:rgba(216,180,106,.22)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .category[data-category-section]{
  background:#fffaf2!important;
  border-color:rgba(120,92,44,.16)!important;
}
body.layout-grand_luxury_light .category[data-category-section] > .category-products{
  background:#f6efe2!important;
  border-top-color:rgba(120,92,44,.18)!important;
}
body.layout-grand_luxury_light .category[data-category-section] > .category-products > .product{
  background:#fffdf7!important;
  border-color:rgba(120,92,44,.16)!important;
  box-shadow:none!important;
}
@media(max-width:980px){
  body.category-mode-normal .category[data-category-section] > .category-products,
  body.category-mode-accordion .category[data-category-section].accordion-open > .category-products,
  body.category-mode-accordion_auto .category[data-category-section].accordion-open > .category-products{
    grid-template-columns:repeat(var(--cols-tablet),minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  body .category[data-category-section]{margin:20px 0 34px!important;}
  body .category[data-category-section] > .category-products{padding:12px!important;gap:12px!important;}
  body.category-mode-normal .category[data-category-section] > .category-products,
  body.category-mode-accordion .category[data-category-section].accordion-open > .category-products,
  body.category-mode-accordion_auto .category[data-category-section].accordion-open > .category-products{
    grid-template-columns:1fr!important;
  }
}

/* v2.0.58 - Card prodotto più definite + opzioni dark coerenti */
body .category[data-category-section] > .category-products > .product{
  border-width:1px!important;
  border-style:solid!important;
  border-color:color-mix(in srgb,var(--muted) 18%,transparent)!important;
  box-shadow:0 12px 34px rgba(15,23,42,.075)!important;
  background:color-mix(in srgb,var(--card) 96%,var(--bg))!important;
}
body .category[data-category-section] > .category-products > .product + .product{
  margin-top:0!important;
}
body.layout-compact .category[data-category-section] > .category-products > .product,
body.layout-standard .category[data-category-section] > .category-products > .product{
  border-color:color-mix(in srgb,var(--primary) 12%,rgba(15,23,42,.12))!important;
}
body .category[data-category-section] > .category-products > .product:hover{
  border-color:color-mix(in srgb,var(--primary) 28%,rgba(15,23,42,.14))!important;
  box-shadow:0 16px 42px rgba(15,23,42,.10)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product{
  background:linear-gradient(180deg,rgba(29,27,21,.96),rgba(14,13,10,.98))!important;
  border-color:rgba(205,166,86,.26)!important;
  box-shadow:0 16px 46px rgba(0,0,0,.28)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product:hover{
  border-color:rgba(205,166,86,.42)!important;
  box-shadow:0 20px 58px rgba(0,0,0,.38)!important;
}
body.layout-grand_luxury_light .category[data-category-section] > .category-products > .product{
  background:#fffdf8!important;
  border-color:rgba(120,92,44,.24)!important;
  box-shadow:0 12px 34px rgba(120,92,44,.08)!important;
}
body.layout-grand_luxury_light .category[data-category-section] > .category-products > .product:hover{
  border-color:rgba(120,92,44,.36)!important;
  box-shadow:0 16px 42px rgba(120,92,44,.12)!important;
}

/* Layout Lusso Elite Dark: opzioni/addizionali nel popup realmente scure */
body.layout-grand_luxury .modal-box{
  background:#11100c!important;
  color:#f7f0df!important;
  border-color:rgba(205,166,86,.32)!important;
}
body.layout-grand_luxury .modal-box *,
body.layout-grand_luxury .modal-box h2,
body.layout-grand_luxury .modal-box h3,
body.layout-grand_luxury .modal-box label,
body.layout-grand_luxury .modal-box span,
body.layout-grand_luxury .modal-box p{
  color:#f7f0df!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .modal-description,
body.layout-grand_luxury .modal-box fieldset>p,
body.layout-grand_luxury .modal-box .option-help,
body.layout-grand_luxury .modal-box small{
  color:rgba(247,240,223,.68)!important;
}
body.layout-grand_luxury .modal-kicker,
body.layout-grand_luxury .modal-box fieldset legend em{
  background:rgba(205,166,86,.16)!important;
  color:#e1c47c!important;
  border:1px solid rgba(205,166,86,.28)!important;
}
body.layout-grand_luxury .modal-base-price,
body.layout-grand_luxury .modal-box .modal-price,
body.layout-grand_luxury .modal-box .product-modal-price,
body.layout-grand_luxury .modal-box .price-pill,
body.layout-grand_luxury .modal-box .price strong{
  color:#0b0a07!important;
  background:#d7b96c!important;
}
body.layout-grand_luxury .modal-box fieldset,
body.layout-grand_luxury .modal-box .option-group,
body.layout-grand_luxury .modal-box .options-group{
  background:linear-gradient(180deg,rgba(30,28,22,.96),rgba(18,17,13,.98))!important;
  border-color:rgba(205,166,86,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
body.layout-grand_luxury .modal-box .option-choice,
body.layout-grand_luxury .modal-box .option-row,
body.layout-grand_luxury .modal-box .addon-row{
  background:#0d0c09!important;
  color:#f7f0df!important;
  border-color:rgba(205,166,86,.25)!important;
}
body.layout-grand_luxury .modal-box .option-choice:hover,
body.layout-grand_luxury .modal-box .option-row:hover,
body.layout-grand_luxury .modal-box .addon-row:hover{
  border-color:rgba(205,166,86,.48)!important;
  background:#15130e!important;
}
body.layout-grand_luxury .modal-box .option-choice b,
body.layout-grand_luxury .modal-box .option-price,
body.layout-grand_luxury .modal-box .price-delta{
  color:#d7b96c!important;
}
body.layout-grand_luxury .modal-box input,
body.layout-grand_luxury .modal-box textarea,
body.layout-grand_luxury .modal-box select{
  background:#090906!important;
  color:#f7f0df!important;
  border-color:rgba(205,166,86,.24)!important;
}
body.layout-grand_luxury .modal-box input::placeholder,
body.layout-grand_luxury .modal-box textarea::placeholder{
  color:rgba(247,240,223,.55)!important;
}
body.layout-grand_luxury .modal-box .qty,
body.layout-grand_luxury .modal-box .option-qty,
body.layout-grand_luxury .modal-box .addon-qty{
  background:#0d0c09!important;
  border:1px solid rgba(205,166,86,.26)!important;
  color:#f7f0df!important;
}
body.layout-grand_luxury .modal-box .qty b,
body.layout-grand_luxury .modal-box .option-qty b,
body.layout-grand_luxury .modal-box .addon-qty b,
body.layout-grand_luxury .modal-box .qty span,
body.layout-grand_luxury .modal-box .option-qty span,
body.layout-grand_luxury .modal-box .addon-qty span{
  color:#f7f0df!important;
}
body.layout-grand_luxury .modal-box .qty button,
body.layout-grand_luxury .modal-box .option-qty button,
body.layout-grand_luxury .modal-box .addon-qty button,
body.layout-grand_luxury .modal-box .btn-primary{
  background:#d7b96c!important;
  color:#0b0a07!important;
}
body.layout-grand_luxury .modal-box .btn-secondary,
body.layout-grand_luxury .modal-close{
  background:#1c1912!important;
  color:#f7f0df!important;
  border:1px solid rgba(205,166,86,.26)!important;
}
body.layout-grand_luxury .modal-actions{
  background:linear-gradient(180deg,rgba(17,16,12,0),#11100c 22%)!important;
  border-top-color:rgba(205,166,86,.18)!important;
}
body.layout-grand_luxury.mode-catalog .catalog-option-group{
  background:linear-gradient(180deg,rgba(30,28,22,.96),rgba(18,17,13,.98))!important;
  border-color:rgba(205,166,86,.28)!important;
}
body.layout-grand_luxury.mode-catalog .catalog-option-chip{
  background:#0d0c09!important;
  border-color:rgba(205,166,86,.25)!important;
  color:#f7f0df!important;
}
body.layout-grand_luxury.mode-catalog .catalog-option-chip em,
body.layout-grand_luxury.mode-catalog .catalog-option-rule{
  color:#d7b96c!important;
}


/* v2.0.59 - Lusso Elite Dark: card prodotto uguali alla legenda allergeni */
body.layout-grand_luxury .category[data-category-section] > .category-products > .product,
body.layout-grand_luxury .featured-category-products > .product,
body.layout-grand_luxury .products.category-products > .product{
  background:rgba(255,255,255,.08)!important;
  color:#fff8ea!important;
  border:1px solid rgba(216,180,106,.24)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product:hover,
body.layout-grand_luxury .featured-category-products > .product:hover,
body.layout-grand_luxury .products.category-products > .product:hover{
  background:rgba(255,255,255,.105)!important;
  border-color:rgba(216,180,106,.34)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product h3,
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .product-title-line,
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .product-title-line span,
body.layout-grand_luxury .featured-category-products > .product h3,
body.layout-grand_luxury .featured-category-products > .product .product-title-line,
body.layout-grand_luxury .featured-category-products > .product .product-title-line span,
body.layout-grand_luxury .products.category-products > .product h3,
body.layout-grand_luxury .products.category-products > .product .product-title-line,
body.layout-grand_luxury .products.category-products > .product .product-title-line span{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product p,
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .p-info > p,
body.layout-grand_luxury .featured-category-products > .product p,
body.layout-grand_luxury .featured-category-products > .product .p-info > p,
body.layout-grand_luxury .products.category-products > .product p,
body.layout-grand_luxury .products.category-products > .product .p-info > p{
  color:rgba(255,248,234,.74)!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .meta span,
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .chips span,
body.layout-grand_luxury .featured-category-products > .product .meta span,
body.layout-grand_luxury .featured-category-products > .product .chips span,
body.layout-grand_luxury .products.category-products > .product .meta span,
body.layout-grand_luxury .products.category-products > .product .chips span{
  background:rgba(255,255,255,.08)!important;
  color:rgba(255,248,234,.78)!important;
  border:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .price strong,
body.layout-grand_luxury .featured-category-products > .product .price strong,
body.layout-grand_luxury .products.category-products > .product .price strong{
  color:#fff8ea!important;
  text-shadow:none!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .price del,
body.layout-grand_luxury .featured-category-products > .product .price del,
body.layout-grand_luxury .products.category-products > .product .price del{
  color:rgba(255,248,234,.45)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .catalog-options,
body.layout-grand_luxury .featured-category-products > .product .catalog-options,
body.layout-grand_luxury .products.category-products > .product .catalog-options{
  border-top:1px solid rgba(216,180,106,.18)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .catalog-option-group,
body.layout-grand_luxury .featured-category-products > .product .catalog-option-group,
body.layout-grand_luxury .products.category-products > .product .catalog-option-group{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(216,180,106,.20)!important;
  color:#fff8ea!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .catalog-option-head strong,
body.layout-grand_luxury .featured-category-products > .product .catalog-option-head strong,
body.layout-grand_luxury .products.category-products > .product .catalog-option-head strong{
  color:#fff8ea!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .catalog-option-chip,
body.layout-grand_luxury .featured-category-products > .product .catalog-option-chip,
body.layout-grand_luxury .products.category-products > .product .catalog-option-chip{
  background:rgba(255,255,255,.08)!important;
  color:rgba(255,248,234,.82)!important;
  border:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .category[data-category-section] > .category-products > .product .catalog-option-chip em,
body.layout-grand_luxury .featured-category-products > .product .catalog-option-chip em,
body.layout-grand_luxury .products.category-products > .product .catalog-option-chip em{
  color:#d8b46a!important;
}


/* v2.0.60 - Opzioni catalogo sotto toggle e prezzo sempre in fondo */
body.mode-catalog .catalog-options-toggle{
  grid-column:1 / -1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:max-content!important;
  max-width:100%!important;
  margin:12px 0 0!important;
  padding:10px 14px!important;
  border:1px solid color-mix(in srgb,var(--primary) 52%,var(--line))!important;
  background:color-mix(in srgb,var(--primary) 12%,var(--card))!important;
  color:var(--primary)!important;
  font-weight:900!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.02em!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
body.mode-catalog .catalog-options-toggle[aria-expanded="true"]{
  background:color-mix(in srgb,var(--primary) 18%,var(--card))!important;
}
body.mode-catalog .catalog-options[hidden]{display:none!important;}
body.mode-catalog .catalog-options{
  grid-column:1 / -1!important;
  width:100%!important;
  box-sizing:border-box!important;
}
body.mode-catalog .product-action-row{
  grid-column:1 / -1!important;
  order:50!important;
  width:100%!important;
  align-self:end!important;
  margin-top:14px!important;
}
body.mode-catalog .product-action-row .product-button-slot{display:none!important;}
body.mode-catalog .product-action-row .price,
body.mode-catalog .product-action-row .product-price-right{
  margin-left:auto!important;
  justify-content:flex-end!important;
  text-align:right!important;
}
body.mode-catalog .product:not(:has(> img)) .catalog-options-toggle,
body.mode-catalog .product:not(:has(> img)) .catalog-options,
body.mode-catalog .product:not(:has(> img)) .product-action-row{
  grid-column:1 / -1!important;
}
body.layout-luxury_dark.mode-catalog .product,
body.layout-luxury_light.mode-catalog .product{
  grid-auto-rows:auto!important;
}
body.layout-luxury_dark.mode-catalog .catalog-options-toggle,
body.layout-luxury_light.mode-catalog .catalog-options-toggle{
  border-color:var(--lx-line)!important;
  background:var(--lx-card-2)!important;
  color:var(--lx-text)!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  border-radius:0!important;
}
body.layout-luxury_dark.mode-catalog .catalog-options-toggle[aria-expanded="true"],
body.layout-luxury_light.mode-catalog .catalog-options-toggle[aria-expanded="true"]{
  background:var(--lx-gold)!important;
  border-color:var(--lx-gold)!important;
  color:var(--lx-black)!important;
}
body.layout-luxury_dark.mode-catalog .catalog-options,
body.layout-luxury_light.mode-catalog .catalog-options{
  margin-left:0!important;
  margin-right:0!important;
  padding-top:14px!important;
}
body.layout-luxury_dark.mode-catalog .product-action-row,
body.layout-luxury_light.mode-catalog .product-action-row{
  grid-column:1 / -1!important;
  margin-top:16px!important;
  padding-top:16px!important;
  border-top:1px solid var(--lx-line)!important;
}
body.layout-luxury_dark.mode-catalog .product-action-row .price,
body.layout-luxury_light.mode-catalog .product-action-row .price{
  width:100%!important;
  margin-left:auto!important;
  text-align:right!important;
  justify-content:flex-end!important;
}
body.layout-luxury_dark.mode-catalog .product:not(:has(> img)) .product-action-row,
body.layout-luxury_light.mode-catalog .product:not(:has(> img)) .product-action-row{
  grid-column:1 / -1!important;
}
@media(max-width:680px){
  body.mode-catalog .catalog-options-toggle{width:100%!important;margin-top:10px!important;}
  body.mode-catalog .product-action-row{margin-top:10px!important;padding-top:12px!important;}
}

/* v2.0.61 - Catalogo: posizione pulsanti/opzioni/prezzo e stile coerente con carrello */
body.mode-catalog .product{
  position:relative!important;
}
body.mode-catalog .product > .p-info{order:1!important;}
body.mode-catalog .product > img{order:2!important;}
body.mode-catalog .product > .catalog-options-toggle{order:3!important;}
body.mode-catalog .product > .catalog-options{order:4!important;}
body.mode-catalog .product > .product-action-row{order:5!important;}

/* Pulsante Mostra/Nascondi opzioni uguale ai pulsanti ordine/carrello */
body.mode-catalog .catalog-options-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:44px!important;
  padding:12px 16px!important;
  border:0!important;
  border-radius:14px!important;
  background:var(--primary)!important;
  color:#fff!important;
  font-weight:900!important;
  font-size:14px!important;
  line-height:1!important;
  letter-spacing:0!important;
  text-transform:none!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
body.mode-catalog .catalog-options-toggle[aria-expanded="true"]{
  background:var(--primary)!important;
  color:#fff!important;
}

/* Luxury fixed: il pulsante segue il bottone carrello del layout luxury */
body.layout-grand_luxury.mode-catalog .catalog-options-toggle,
body.layout-grand_luxury_light.mode-catalog .catalog-options-toggle{
  border-radius:0!important;
  background:#d7b96c!important;
  color:#090805!important;
  border:1px solid #d7b96c!important;
  text-transform:uppercase!important;
  letter-spacing:.11em!important;
  font-size:12px!important;
}
body.layout-grand_luxury.mode-catalog .catalog-options-toggle[aria-expanded="true"],
body.layout-grand_luxury_light.mode-catalog .catalog-options-toggle[aria-expanded="true"]{
  background:#11100c!important;
  color:#d7b96c!important;
  border-color:#d7b96c!important;
}

/* Luxury Light/Dark: Mostra opzioni sempre prima del prezzo, desktop/tablet/mobile */
body.layout-grand_luxury.mode-catalog .product,
body.layout-grand_luxury_light.mode-catalog .product{
  grid-auto-flow:row!important;
}
body.layout-grand_luxury.mode-catalog .product > .catalog-options-toggle,
body.layout-grand_luxury_light.mode-catalog .product > .catalog-options-toggle,
body.layout-grand_luxury.mode-catalog .product:not(:has(> img)) > .catalog-options-toggle,
body.layout-grand_luxury_light.mode-catalog .product:not(:has(> img)) > .catalog-options-toggle{
  grid-column:1 / -1!important;
  width:max-content!important;
  max-width:100%!important;
  margin:14px 0 0!important;
}
body.layout-grand_luxury.mode-catalog .product > .catalog-options,
body.layout-grand_luxury_light.mode-catalog .product > .catalog-options,
body.layout-grand_luxury.mode-catalog .product:not(:has(> img)) > .catalog-options,
body.layout-grand_luxury_light.mode-catalog .product:not(:has(> img)) > .catalog-options{
  grid-column:1 / -1!important;
  width:100%!important;
  margin:0!important;
  padding-top:14px!important;
}
body.layout-grand_luxury.mode-catalog .product > .product-action-row,
body.layout-grand_luxury_light.mode-catalog .product > .product-action-row,
body.layout-grand_luxury.mode-catalog .product:not(:has(> img)) > .product-action-row,
body.layout-grand_luxury_light.mode-catalog .product:not(:has(> img)) > .product-action-row{
  grid-column:1 / -1!important;
  order:5!important;
  width:100%!important;
  margin-top:14px!important;
  padding-top:14px!important;
  border-top:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury.mode-catalog .product > .product-action-row .price,
body.layout-grand_luxury_light.mode-catalog .product > .product-action-row .price{
  width:100%!important;
  justify-content:flex-end!important;
  text-align:right!important;
}

/* Standard: senza foto il prezzo va sulla riga del nome a destra */
body.layout-standard.mode-catalog .product:not(:has(> img)),
body.layout-standard.mode-catalog.card-no-image .product{
  padding-right:150px!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) > .product-action-row,
body.layout-standard.mode-catalog.card-no-image .product > .product-action-row{
  position:absolute!important;
  top:16px!important;
  right:16px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  grid-column:auto!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) > .product-action-row .price,
body.layout-standard.mode-catalog.card-no-image .product > .product-action-row .price{
  margin:0!important;
  justify-content:flex-end!important;
  text-align:right!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) > .catalog-options-toggle,
body.layout-standard.mode-catalog.card-no-image .product > .catalog-options-toggle,
body.layout-standard.mode-catalog .product:not(:has(> img)) > .catalog-options,
body.layout-standard.mode-catalog.card-no-image .product > .catalog-options{
  grid-column:1 / -1!important;
}

/* Signature Gallery: senza foto il prezzo va sulla riga del nome a destra */
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)),
body.layout-editorial_gallery.mode-catalog.card-no-image .product{
  padding-right:160px!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) > .product-action-row,
body.layout-editorial_gallery.mode-catalog.card-no-image .product > .product-action-row{
  position:absolute!important;
  top:18px!important;
  right:18px!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  grid-column:auto!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) > .product-action-row .price,
body.layout-editorial_gallery.mode-catalog.card-no-image .product > .product-action-row .price{
  margin:0!important;
  justify-content:flex-end!important;
  text-align:right!important;
}

/* Lista rapida: pulsante coerente e full width su mobile quando non c'è foto */
body.layout-compact.mode-catalog .catalog-options-toggle{
  background:var(--primary)!important;
  color:#fff!important;
  border:0!important;
  border-radius:14px!important;
}
@media(max-width:680px){
  body.layout-compact.mode-catalog .product:not(:has(> img)) > .catalog-options-toggle,
  body.layout-compact.mode-catalog.card-no-image .product > .catalog-options-toggle{
    width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.layout-standard.mode-catalog .product:not(:has(> img)),
  body.layout-standard.mode-catalog.card-no-image .product,
  body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)),
  body.layout-editorial_gallery.mode-catalog.card-no-image .product{
    padding-right:118px!important;
  }
  body.layout-standard.mode-catalog .product:not(:has(> img)) > .product-action-row,
  body.layout-standard.mode-catalog.card-no-image .product > .product-action-row,
  body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) > .product-action-row,
  body.layout-editorial_gallery.mode-catalog.card-no-image .product > .product-action-row{
    top:14px!important;
    right:14px!important;
  }
  body.layout-standard.mode-catalog .product:not(:has(> img)) > .product-action-row .price strong,
  body.layout-standard.mode-catalog.card-no-image .product > .product-action-row .price strong,
  body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) > .product-action-row .price strong,
  body.layout-editorial_gallery.mode-catalog.card-no-image .product > .product-action-row .price strong{
    font-size:18px!important;
  }
}

/* v2.0.62 - Catalogo: allineamento prezzi/pulsanti opzioni per layout */
body.mode-catalog .product-inline-price{display:none!important;}
body.mode-catalog .product-title-line{min-width:0!important;}
body.mode-catalog .product-title-line > span:first-child{min-width:0!important;}
body.mode-catalog .product-action-row{order:3!important;}
body.mode-catalog .catalog-options{order:4!important;}
body.mode-catalog .product > img{order:2!important;}
body.mode-catalog .product > .p-info{order:1!important;}
body.mode-catalog .product-button-slot .catalog-options-toggle{margin:0!important;}
body.mode-catalog .product-button-slot{min-width:0!important;}

/* Luxury Dark/Light: pulsante opzioni e prezzo sempre sulla stessa riga; opzioni aperte sotto */
body.layout-grand_luxury.mode-catalog .product > .product-action-row,
body.layout-grand_luxury_light.mode-catalog .product > .product-action-row{
  grid-column:1 / -1!important;
  order:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  width:100%!important;
  margin-top:18px!important;
  padding-top:18px!important;
  border-top:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury.mode-catalog .product > .catalog-options,
body.layout-grand_luxury_light.mode-catalog .product > .catalog-options{
  grid-column:1 / -1!important;
  order:4!important;
  width:100%!important;
  margin-top:14px!important;
}
body.layout-grand_luxury.mode-catalog .product-action-row .product-button-slot,
body.layout-grand_luxury_light.mode-catalog .product-action-row .product-button-slot{
  flex:0 1 auto!important;
}
body.layout-grand_luxury.mode-catalog .product-action-row .price,
body.layout-grand_luxury_light.mode-catalog .product-action-row .price{
  flex:1 0 auto!important;
  width:auto!important;
  margin:0 0 0 auto!important;
  justify-content:flex-end!important;
  text-align:right!important;
}
body.layout-grand_luxury.mode-catalog .product-button-slot .catalog-options-toggle,
body.layout-grand_luxury_light.mode-catalog .product-button-slot .catalog-options-toggle{
  width:max-content!important;
  max-width:100%!important;
  min-height:48px!important;
  padding:14px 28px!important;
}
@media(max-width:680px){
  body.layout-grand_luxury.mode-catalog .product > .product-action-row,
  body.layout-grand_luxury_light.mode-catalog .product > .product-action-row{
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:12px!important;
  }
  body.layout-grand_luxury.mode-catalog .product-button-slot .catalog-options-toggle,
  body.layout-grand_luxury_light.mode-catalog .product-button-slot .catalog-options-toggle{
    width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

/* Standard: se manca la foto, prezzo sulla riga del nome a destra; pulsante resta sotto */
body.layout-standard.mode-catalog .product:not(:has(> img)) .product-title-line,
body.layout-standard.mode-catalog.card-no-image .product .product-title-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) .product-inline-price,
body.layout-standard.mode-catalog.card-no-image .product .product-inline-price{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  margin-left:auto!important;
  white-space:nowrap!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) .product-inline-price strong,
body.layout-standard.mode-catalog.card-no-image .product .product-inline-price strong{
  font-size:clamp(22px,4vw,30px)!important;
  font-weight:950!important;
  color:var(--primary)!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) .product-inline-price del,
body.layout-standard.mode-catalog.card-no-image .product .product-inline-price del{
  font-size:16px!important;
  color:var(--muted)!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) > .product-action-row,
body.layout-standard.mode-catalog.card-no-image .product > .product-action-row{
  position:static!important;
  display:block!important;
  width:100%!important;
  margin-top:18px!important;
  padding:0!important;
  border:0!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)) > .product-action-row .price,
body.layout-standard.mode-catalog.card-no-image .product > .product-action-row .price{
  display:none!important;
}
body.layout-standard.mode-catalog .product:not(:has(> img)),
body.layout-standard.mode-catalog.card-no-image .product{
  padding-right:16px!important;
}

/* Lista rapida: prezzo allineato al nome; pulsante opzioni sempre largo quanto la card */
body.layout-compact.mode-catalog .product .product-title-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  width:100%!important;
}
body.layout-compact.mode-catalog .product .product-inline-price{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  margin-left:auto!important;
  white-space:nowrap!important;
}
body.layout-compact.mode-catalog .product .product-inline-price strong{
  font-size:clamp(18px,3vw,24px)!important;
  font-weight:950!important;
  color:var(--primary)!important;
}
body.layout-compact.mode-catalog .product .product-inline-price del{
  font-size:14px!important;
  color:var(--muted)!important;
}
body.layout-compact.mode-catalog .product > .product-action-row{
  display:block!important;
  width:100%!important;
  margin-top:14px!important;
  padding-top:0!important;
  border:0!important;
}
body.layout-compact.mode-catalog .product > .product-action-row .price{
  display:none!important;
}
body.layout-compact.mode-catalog .product .product-button-slot,
body.layout-compact.mode-catalog .product .catalog-options-toggle{
  width:100%!important;
}
body.layout-compact.mode-catalog .product .catalog-options-toggle{
  display:flex!important;
  min-height:46px!important;
}

/* Signature Gallery: se manca la foto sempre prezzo sulla riga del nome; su mobile anche con foto */
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) .product-title-line,
body.layout-editorial_gallery.mode-catalog.card-no-image .product .product-title-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  width:100%!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) .product-inline-price,
body.layout-editorial_gallery.mode-catalog.card-no-image .product .product-inline-price{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  margin-left:auto!important;
  white-space:nowrap!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) .product-inline-price strong,
body.layout-editorial_gallery.mode-catalog.card-no-image .product .product-inline-price strong{
  font-size:clamp(22px,4vw,30px)!important;
  font-weight:950!important;
  color:var(--primary)!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) .product-inline-price del,
body.layout-editorial_gallery.mode-catalog.card-no-image .product .product-inline-price del{
  font-size:16px!important;
  color:var(--muted)!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) > .product-action-row,
body.layout-editorial_gallery.mode-catalog.card-no-image .product > .product-action-row{
  position:static!important;
  display:block!important;
  width:100%!important;
  margin-top:18px!important;
  padding:0!important;
  border:0!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)) > .product-action-row .price,
body.layout-editorial_gallery.mode-catalog.card-no-image .product > .product-action-row .price{
  display:none!important;
}
body.layout-editorial_gallery.mode-catalog .product:not(:has(> img)),
body.layout-editorial_gallery.mode-catalog.card-no-image .product{
  padding-right:16px!important;
}
@media(max-width:680px){
  body.layout-editorial_gallery.mode-catalog .product .product-title-line{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    width:100%!important;
  }
  body.layout-editorial_gallery.mode-catalog .product .product-inline-price{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:7px!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
  body.layout-editorial_gallery.mode-catalog .product .product-inline-price strong{
    font-size:22px!important;
    font-weight:950!important;
    color:var(--primary)!important;
  }
  body.layout-editorial_gallery.mode-catalog .product .product-inline-price del{
    font-size:14px!important;
    color:var(--muted)!important;
  }
  body.layout-editorial_gallery.mode-catalog .product > .product-action-row .price{
    display:none!important;
  }
  body.layout-editorial_gallery.mode-catalog .product > .product-action-row{
    position:static!important;
    display:block!important;
    width:100%!important;
    margin-top:16px!important;
    padding:0!important;
    border:0!important;
  }
}

/* v2.0.63 - Catalogo: ripristino pulsante Mostra/Nascondi opzioni nascosto dal reset catalogo */
body.mode-catalog .product .product-button-slot:has(.catalog-options-toggle){
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}
body.mode-catalog .product .product-button-slot .catalog-options-toggle{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
body.mode-catalog .product-action-row:has(.catalog-options-toggle){
  display:flex!important;
}
body.mode-catalog.layout-compact .product-action-row:has(.catalog-options-toggle),
body.mode-catalog.layout-standard .product:not(:has(> img)) > .product-action-row:has(.catalog-options-toggle),
body.mode-catalog.layout-editorial_gallery .product:not(:has(> img)) > .product-action-row:has(.catalog-options-toggle){
  display:block!important;
}
body.layout-compact.mode-catalog .product .product-button-slot:has(.catalog-options-toggle),
body.layout-compact.mode-catalog .product .product-button-slot .catalog-options-toggle{
  width:100%!important;
}
@media(max-width:680px){
  body.mode-catalog .product .product-button-slot:has(.catalog-options-toggle),
  body.mode-catalog .product .product-button-slot .catalog-options-toggle{
    width:100%!important;
  }
}

/* v2.0.64 - badge prodotto sovrapposto alla foto nei layout Lusso */
body.layout-grand_luxury .product.has-product-image,
body.layout-grand_luxury_light .product.has-product-image{
  position:relative!important;
}
body.layout-grand_luxury .product.has-product-image > .p-info > .product-badges,
body.layout-grand_luxury_light .product.has-product-image > .p-info > .product-badges{
  display:none!important;
}
body.layout-grand_luxury .luxury-image-badges,
body.layout-grand_luxury_light .luxury-image-badges{
  display:none!important;
}
body.layout-grand_luxury .product.has-product-image > .luxury-image-badges,
body.layout-grand_luxury_light .product.has-product-image > .luxury-image-badges{
  display:flex!important;
  position:absolute!important;
  z-index:8!important;
  top:20px!important;
  right:22px!important;
  left:auto!important;
  width:150px!important;
  max-width:150px!important;
  pointer-events:none!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
}
body.layout-grand_luxury .product.has-product-image > .luxury-image-badges .badge,
body.layout-grand_luxury_light .product.has-product-image > .luxury-image-badges .badge{
  border-radius:0!important;
  min-width:min(128px,100%)!important;
  justify-content:center!important;
  padding:10px 16px!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  box-shadow:0 14px 28px rgba(0,0,0,.18)!important;
}
body.layout-grand_luxury .product.has-product-image > .luxury-image-badges .soldout-badge,
body.layout-grand_luxury_light .product.has-product-image > .luxury-image-badges .soldout-badge{
  background:#111827!important;
  color:#fff!important;
  border-color:#111827!important;
}
@media(max-width:680px){
  body.layout-grand_luxury .product.has-product-image > .luxury-image-badges,
  body.layout-grand_luxury_light .product.has-product-image > .luxury-image-badges{
    top:18px!important;
    left:18px!important;
    right:auto!important;
    width:min(46vw,190px)!important;
    max-width:calc(100% - 36px)!important;
  }
  body.layout-grand_luxury .product.has-product-image > .luxury-image-badges .badge,
  body.layout-grand_luxury_light .product.has-product-image > .luxury-image-badges .badge{
    min-width:min(150px,100%)!important;
    padding:11px 16px!important;
  }
}

/* v2.0.65 - Fix catalogo/layout: badge foto Lusso, Lista rapida senza opzioni, Signature bg fisso */
.product-image-wrap{display:contents;}
body.layout-grand_luxury .product.has-product-image > .p-info > .product-badges,
body.layout-grand_luxury_light .product.has-product-image > .p-info > .product-badges{display:none!important;}
body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap{
  display:block!important;
  position:relative!important;
  grid-column:1 / -1!important;
  order:2!important;
  width:100%!important;
  margin:18px 0 0!important;
}
body.layout-grand_luxury .product.has-product-image > .product-image-wrap > img,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > img{
  display:block!important;
  width:100%!important;
  height:clamp(220px,32vw,380px)!important;
  object-fit:cover!important;
  border-radius:0!important;
  margin:0!important;
  box-shadow:none!important;
}
body.layout-grand_luxury .product.has-product-image > .product-image-wrap > .luxury-image-badges,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > .luxury-image-badges{
  display:flex!important;
  position:absolute!important;
  z-index:9!important;
  top:0!important;
  left:0!important;
  right:auto!important;
  width:auto!important;
  min-width:min(210px,52%)!important;
  max-width:calc(100% - 24px)!important;
  pointer-events:none!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
body.layout-grand_luxury .product.has-product-image > .product-image-wrap > .luxury-image-badges .badge,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > .luxury-image-badges .badge{
  border-radius:0!important;
  min-width:min(210px,100%)!important;
  justify-content:center!important;
  padding:14px 18px!important;
  font-size:13px!important;
  line-height:1!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
  box-shadow:0 16px 34px rgba(0,0,0,.24)!important;
}
body.layout-grand_luxury .product.has-product-image > .luxury-image-badges,
body.layout-grand_luxury_light .product.has-product-image > .luxury-image-badges{display:none!important;}
body.layout-grand_luxury .product.has-product-image > .product-action-row,
body.layout-grand_luxury_light .product.has-product-image > .product-action-row{order:3!important;}
body.layout-grand_luxury .product.has-product-image > .catalog-options,
body.layout-grand_luxury_light .product.has-product-image > .catalog-options{order:4!important;}

/* Lista rapida in solo catalogo: non mostrare opzioni né pulsante */
body.layout-compact.mode-catalog .product .catalog-options-toggle,
body.layout-compact.mode-catalog .product .catalog-options,
body.layout-compact.mode-catalog .product .product-action-row:has(.catalog-options-toggle){
  display:none!important;
}
body.layout-compact.mode-catalog .product .product-button-slot:has(.catalog-options-toggle){display:none!important;}

/* Signature Gallery: immagine categoria sempre sfondo fisso, senza cambio solo hover */
body.layout-editorial_gallery .category-with-image .category-hero-card{
  background-image:var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:none!important;
  filter:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card:hover{
  background-image:var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  transform:none!important;
  filter:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card::after{
  background:linear-gradient(90deg,rgba(23,23,23,.70),rgba(23,23,23,.30),rgba(23,23,23,.12))!important;
}
@media(max-width:680px){
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap{margin-top:16px!important;}
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap > img,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > img{height:clamp(210px,58vw,340px)!important;}
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap > .luxury-image-badges,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > .luxury-image-badges{min-width:min(190px,58%)!important;max-width:calc(100% - 18px)!important;}
}


/* v2.0.69 - Layout Standard: badge prodotto a bandiera */
body.layout-standard .product{
  position:relative!important;
}
body.layout-standard .product .product-badges{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
  width:100%!important;
  margin:0 0 12px 0!important;
  padding:0!important;
}
body.layout-standard .product .product-badges:empty{
  display:none!important;
}
body.layout-standard .product .product-badges .badge:not(.soldout-badge){
  min-width:33.333%!important;
  width:max-content!important;
  max-width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:0 999px 999px 0!important;
  padding:9px 18px!important;
  margin-left:-16px!important;
  min-height:38px!important;
  line-height:1!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 24px rgba(15,23,42,.10)!important;
}
body.layout-standard .product .product-badges .badge.soldout-badge{
  border-radius:0 999px 999px 0!important;
  min-width:33.333%!important;
  justify-content:center!important;
  margin-left:-16px!important;
}
@media (max-width:680px){
  body.layout-standard .product .product-badges .badge,
  body.layout-standard .product .product-badges .badge.soldout-badge{
    min-width:36%!important;
    margin-left:-16px!important;
  }
}


/* v2.0.70 - Fix reale badge bandiera layout Standard */
body.layout-standard .product{
  position:relative!important;
}
body.layout-standard .product > .p-info > .product-badges{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:100%!important;
  gap:6px!important;
  margin:0 0 12px 0!important;
  padding:0!important;
  overflow:visible!important;
}
body.layout-standard .product > .p-info > .product-badges:empty{display:none!important;}
body.layout-standard .product > .p-info > .product-badges .badge{
  min-width:33.333%!important;
  width:max-content!important;
  max-width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:0 999px 999px 0!important;
  padding:9px 18px!important;
  margin-left:calc(-1 * var(--md-standard-product-padding, 16px))!important;
  min-height:38px!important;
  line-height:1!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 24px rgba(15,23,42,.10)!important;
}
body.layout-standard .product{--md-standard-product-padding:16px;}
body.layout-standard.density-compact .product{--md-standard-product-padding:12px;}
@media (max-width:680px){
  body.layout-standard .product > .p-info > .product-badges .badge{
    min-width:36%!important;
  }
}


/* v2.0.71 - prezzo inline solo in catalogo */
body:not(.mode-catalog) .product-inline-price{display:none!important;}
body:not(.mode-catalog) .product-title-line{justify-content:flex-start!important;}

/* v2.0.72 - badge vertical center + Standard category compact */
.badge,
.product-badges .badge,
.luxury-image-badges .badge,
.soldout-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.layout-standard .product > .p-info > .product-badges .badge,
body.layout-standard .product .product-badges .badge:not(.soldout-badge),
body.layout-standard .product .product-badges .badge.soldout-badge{
  align-items:center!important;
  justify-content:center!important;
  padding-top:0!important;
  padding-bottom:0!important;
  min-height:38px!important;
  height:38px!important;
  line-height:1!important;
}
body.layout-standard .category-hero-card,
body.layout-standard .category-color-card{
  min-height:118px!important;
  padding:18px 22px!important;
  margin-bottom:14px!important;
}
body.layout-standard .category-with-image .category-hero-card{
  min-height:132px!important;
}
body.layout-standard .category-hero-content{
  padding:0!important;
}
body.layout-standard .category-hero-content h2,
body.layout-standard .category-hero-card h2,
body.layout-standard .cat-title h2{
  font-size:clamp(22px,2.8vw,34px)!important;
  line-height:1.02!important;
  margin:0 0 5px!important;
}
body.layout-standard .category-hero-content p,
body.layout-standard .category-hero-card p,
body.layout-standard .cat-title p{
  font-size:clamp(12px,1.1vw,15px)!important;
  line-height:1.28!important;
  margin:0!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card,
  body.layout-standard .category-color-card,
  body.layout-standard .category-with-image .category-hero-card{
    min-height:96px!important;
    padding:14px 16px!important;
    margin-bottom:12px!important;
  }
  body.layout-standard .category-hero-content h2,
  body.layout-standard .category-hero-card h2,
  body.layout-standard .cat-title h2{
    font-size:clamp(20px,7vw,30px)!important;
  }
}

/* v2.0.73 - Standard category titles/cards more compact; image and color categories same size */
body.layout-standard .category-hero-card,
body.layout-standard .category-color-card,
body.layout-standard .category-with-image .category-hero-card,
body.layout-standard .category-with-color .category-hero-card{
  min-height:102px!important;
  height:102px!important;
  aspect-ratio:auto!important;
  padding:14px 20px!important;
  margin-bottom:12px!important;
  display:flex!important;
  align-items:center!important;
}
body.layout-standard .category-hero-content,
body.layout-standard .category-with-image .category-hero-content,
body.layout-standard .category-with-color .category-hero-content{
  padding:0!important;
  max-width:760px!important;
}
body.layout-standard .category-hero-content h2,
body.layout-standard .category-hero-card h2,
body.layout-standard .category-with-image .category-hero-card h2,
body.layout-standard .category-with-color .category-hero-card h2,
body.layout-standard .cat-title h2{
  font-family:inherit!important;
  font-size:clamp(20px,2.3vw,29px)!important;
  line-height:1.04!important;
  margin:0 0 4px!important;
  letter-spacing:-.025em!important;
}
body.layout-standard .category-hero-content p,
body.layout-standard .category-hero-card p,
body.layout-standard .category-with-image .category-hero-card p,
body.layout-standard .category-with-color .category-hero-card p,
body.layout-standard .cat-title p{
  font-family:inherit!important;
  font-size:clamp(12px,.95vw,14px)!important;
  line-height:1.25!important;
  margin:0!important;
  letter-spacing:.02em!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card,
  body.layout-standard .category-color-card,
  body.layout-standard .category-with-image .category-hero-card,
  body.layout-standard .category-with-color .category-hero-card{
    min-height:82px!important;
    height:82px!important;
    padding:12px 14px!important;
    margin-bottom:10px!important;
  }
  body.layout-standard .category-hero-content h2,
  body.layout-standard .category-hero-card h2,
  body.layout-standard .category-with-image .category-hero-card h2,
  body.layout-standard .category-with-color .category-hero-card h2,
  body.layout-standard .cat-title h2{
    font-size:clamp(18px,5.8vw,25px)!important;
  }
  body.layout-standard .category-hero-content p,
  body.layout-standard .category-hero-card p,
  body.layout-standard .category-with-image .category-hero-card p,
  body.layout-standard .category-with-color .category-hero-card p,
  body.layout-standard .cat-title p{
    font-size:12px!important;
  }
}

/* v2.0.74 - Icone categoria + radius accordion coerente */
.category-heading-row{
  display:flex!important;
  align-items:center!important;
  gap:.72em!important;
  min-width:0!important;
}
.category-heading-row h2{
  margin:0!important;
  min-width:0!important;
}
.category-icon{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:1.25em!important;
  height:1.25em!important;
  line-height:1!important;
  color:inherit!important;
  opacity:.96!important;
}
.category-icon i{font-size:.82em!important;line-height:1!important;color:inherit!important;}
.category-hero-content{padding-right:72px!important;}
body.category-mode-normal .category-hero-content{padding-right:22px!important;}
body.layout-cards .category-hero-content h2{font-size:clamp(22px,2vw,30px)!important;}
body.layout-cards .category-with-image .category-hero-card,
body.layout-cards .category-with-color .category-hero-card{min-height:118px!important;}
body.category-mode-accordion .category[data-category-section] .category-hero-card,
body.category-mode-accordion_auto .category[data-category-section] .category-hero-card{
  border-radius:var(--md-ui-radius)!important;
  overflow:hidden!important;
}
body.layout-grand_luxury.category-mode-accordion .category[data-category-section] .category-hero-card,
body.layout-grand_luxury.category-mode-accordion_auto .category[data-category-section] .category-hero-card,
body.layout-luxury_dark.category-mode-accordion .category[data-category-section] .category-hero-card,
body.layout-luxury_dark.category-mode-accordion_auto .category[data-category-section] .category-hero-card,
body.layout-luxury_light.category-mode-accordion .category[data-category-section] .category-hero-card,
body.layout-luxury_light.category-mode-accordion_auto .category[data-category-section] .category-hero-card{
  border-radius:0!important;
}
body.category-mode-accordion .category-accordion-icon,
body.category-mode-accordion_auto .category-accordion-icon{
  right:18px!important;
  z-index:4!important;
}
@media(max-width:680px){
  .category-hero-content{padding-right:58px!important;}
  body.category-mode-normal .category-hero-content{padding-right:18px!important;}
  body.layout-cards .category-hero-content h2{font-size:clamp(21px,6.2vw,28px)!important;}
  body.layout-cards .category-with-image .category-hero-card,
  body.layout-cards .category-with-color .category-hero-card{min-height:96px!important;}
  .category-heading-row{gap:.55em!important;}
}

/* v2.0.75 - Icona categoria come sfondo decorativo laterale */
.category-hero-card{
  position:relative!important;
  overflow:hidden!important;
}
.category-hero-content{
  position:relative!important;
  z-index:2!important;
}
.category-heading-row{
  position:relative!important;
  z-index:2!important;
}
.category-heading-row .category-icon,
.category-icon{
  display:none!important;
}
.category-icon-bg{
  position:absolute!important;
  right:-.16em!important;
  top:50%!important;
  transform:translateY(-50%) rotate(-8deg)!important;
  z-index:1!important;
  pointer-events:none!important;
  user-select:none!important;
  color:var(--cat-text-color, currentColor)!important;
  opacity:.13!important;
  line-height:1!important;
  width:1.15em!important;
  height:1.15em!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:clamp(86px, 13vw, 210px)!important;
  filter:none!important;
}
.category-icon-bg i{
  font-size:1em!important;
  line-height:1!important;
  color:inherit!important;
}
.category-accordion-icon{
  z-index:5!important;
}
body.category-mode-accordion .category-hero-content,
body.category-mode-accordion_auto .category-hero-content{
  padding-right:76px!important;
}
body.category-mode-normal .category-hero-content{
  padding-right:24px!important;
}
body.layout-grand_luxury .category-icon-bg,
body.layout-grand_luxury_light .category-icon-bg{
  opacity:.10!important;
  right:-.12em!important;
  font-size:clamp(92px, 14vw, 230px)!important;
}
body.layout-compact .category-icon-bg{
  opacity:.11!important;
  font-size:clamp(68px, 10vw, 150px)!important;
}
body.layout-editorial_gallery .category-icon-bg{
  opacity:.12!important;
  font-size:clamp(90px, 13vw, 220px)!important;
}
@media(max-width:680px){
  .category-icon-bg{
    right:-.24em!important;
    font-size:clamp(78px, 28vw, 145px)!important;
    opacity:.12!important;
  }
  body.category-mode-accordion .category-hero-content,
  body.category-mode-accordion_auto .category-hero-content{
    padding-right:62px!important;
  }
  body.category-mode-normal .category-hero-content{
    padding-right:18px!important;
  }
}

/* v2.0.76 - Signature Gallery: categorie con immagine compatte come le altre + overlay leggibilità */
body.layout-editorial_gallery .category-with-image > .category-hero-card{
  min-height:0!important;
  height:auto!important;
  padding:26px 30px!important;
  display:flex!important;
  align-items:center!important;
  background-image:var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  position:relative!important;
  overflow:hidden!important;
}
body.layout-editorial_gallery .category-with-image > .category-hero-card::after{
  content:''!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  background:linear-gradient(90deg,rgba(0,0,0,.64),rgba(0,0,0,.34),rgba(0,0,0,.18))!important;
  pointer-events:none!important;
}
body.layout-editorial_gallery .category-with-image > .category-hero-card .category-hero-content{
  position:relative!important;
  z-index:2!important;
}
body.layout-editorial_gallery .category-with-image > .category-hero-card h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:500!important;
  font-size:clamp(32px,4vw,56px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  margin:0!important;
  color:#fffdf8!important;
  text-shadow:none!important;
}
body.layout-editorial_gallery .category-with-image > .category-hero-card p{
  margin:.45rem 0 0!important;
  font-size:inherit!important;
  line-height:1.45!important;
  color:rgba(255,253,248,.86)!important;
  text-shadow:none!important;
}
body.layout-editorial_gallery .category-with-image > .category-hero-card:hover{
  background-image:var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  transform:none!important;
  filter:none!important;
}


/* v2.0.77 - Signature Gallery fix reale: cover hero, categorie foto e badge stile Standard */
body.layout-editorial_gallery .hero[style]{
  background-image:linear-gradient(135deg,rgba(23,23,23,.72),rgba(23,23,23,.18)),var(--md-hero-cover)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
body.layout-editorial_gallery .category-hero-card,
body.layout-editorial_gallery .category-with-color .category-hero-card,
body.layout-editorial_gallery .category-with-image .category-hero-card,
body.layout-editorial_gallery .category-featured .category-hero-card,
body.layout-editorial_gallery .featured-category-card{
  min-height:92px!important;
  height:92px!important;
  max-height:92px!important;
  padding:0 30px!important;
  display:flex!important;
  align-items:center!important;
  border-bottom:1px solid var(--sg-line)!important;
  box-shadow:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card,
body.layout-editorial_gallery .category-with-image > .category-hero-card{
  background-image:linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.36),rgba(0,0,0,.22)),var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card:hover,
body.layout-editorial_gallery .category-with-image > .category-hero-card:hover{
  background-image:linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.36),rgba(0,0,0,.22)),var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  transform:none!important;
  filter:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card::after,
body.layout-editorial_gallery .category-with-image > .category-hero-card::after{
  display:none!important;
  content:none!important;
}
body.layout-editorial_gallery .category-hero-content,
body.layout-editorial_gallery .category-with-image .category-hero-card .category-hero-content,
body.layout-editorial_gallery .category-with-image > .category-hero-card .category-hero-content{
  padding:0!important;
  margin:0!important;
  max-width:100%!important;
  position:relative!important;
  z-index:2!important;
  text-shadow:none!important;
}
body.layout-editorial_gallery .category-hero-card h2,
body.layout-editorial_gallery .category-with-image .category-hero-card h2,
body.layout-editorial_gallery .category-with-image > .category-hero-card h2,
body.layout-editorial_gallery .featured-category-card h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:500!important;
  font-size:clamp(28px,3.2vw,46px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
  margin:0!important;
}
body.layout-editorial_gallery .category-hero-card p,
body.layout-editorial_gallery .category-with-image .category-hero-card p,
body.layout-editorial_gallery .category-with-image > .category-hero-card p,
body.layout-editorial_gallery .featured-category-card p{
  display:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card h2,
body.layout-editorial_gallery .category-with-image > .category-hero-card h2{
  color:#fffdf8!important;
  text-shadow:0 2px 14px rgba(0,0,0,.45)!important;
}
@media(max-width:680px){
  body.layout-editorial_gallery .category-hero-card,
  body.layout-editorial_gallery .category-with-color .category-hero-card,
  body.layout-editorial_gallery .category-with-image .category-hero-card,
  body.layout-editorial_gallery .category-featured .category-hero-card,
  body.layout-editorial_gallery .featured-category-card{
    min-height:82px!important;
    height:82px!important;
    max-height:82px!important;
    padding:0 20px!important;
  }
  body.layout-editorial_gallery .category-hero-card h2,
  body.layout-editorial_gallery .category-with-image .category-hero-card h2,
  body.layout-editorial_gallery .category-with-image > .category-hero-card h2{
    font-size:clamp(24px,7vw,34px)!important;
  }
}
body.layout-editorial_gallery .product{position:relative!important;}
body.layout-editorial_gallery .product > .p-info > .product-badges,
body.layout-editorial_gallery .product .product-badges{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:100%!important;
  gap:6px!important;
  margin:0 0 12px 0!important;
  padding:0!important;
  overflow:visible!important;
}
body.layout-editorial_gallery .product > .p-info > .product-badges:empty,
body.layout-editorial_gallery .product .product-badges:empty{display:none!important;}
body.layout-editorial_gallery .product > .p-info > .product-badges .badge,
body.layout-editorial_gallery .product .product-badges .badge:not(.soldout-badge),
body.layout-editorial_gallery .product .product-badges .badge.soldout-badge{
  min-width:33.333%!important;
  width:max-content!important;
  max-width:100%!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  border-radius:0 999px 999px 0!important;
  padding:0 18px!important;
  margin-left:-20px!important;
  min-height:38px!important;
  height:38px!important;
  line-height:1!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  box-shadow:0 10px 24px rgba(15,23,42,.10)!important;
}
@media(max-width:680px){
  body.layout-editorial_gallery .product > .p-info > .product-badges .badge,
  body.layout-editorial_gallery .product .product-badges .badge:not(.soldout-badge),
  body.layout-editorial_gallery .product .product-badges .badge.soldout-badge{
    min-width:36%!important;
  }
}

/* v2.0.78 - Signature Gallery: categorie uniformi, più compatte e descrizione visibile */
body.layout-editorial_gallery .category-hero-card,
body.layout-editorial_gallery .category-with-color .category-hero-card,
body.layout-editorial_gallery .category-with-image .category-hero-card,
body.layout-editorial_gallery .category-with-image > .category-hero-card,
body.layout-editorial_gallery .category-featured .category-hero-card,
body.layout-editorial_gallery .featured-category-card{
  min-height:78px!important;
  height:78px!important;
  max-height:78px!important;
  padding:0 28px!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card,
body.layout-editorial_gallery .category-with-image > .category-hero-card{
  background-image:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.34),rgba(0,0,0,.20)),var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card:hover,
body.layout-editorial_gallery .category-with-image > .category-hero-card:hover{
  background-image:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.34),rgba(0,0,0,.20)),var(--cat-img)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:none!important;
  filter:none!important;
}
body.layout-editorial_gallery .category-hero-content,
body.layout-editorial_gallery .category-with-image .category-hero-card .category-hero-content,
body.layout-editorial_gallery .category-with-image > .category-hero-card .category-hero-content,
body.layout-editorial_gallery .featured-category-card .category-hero-content{
  padding:0!important;
  margin:0!important;
  position:relative!important;
  z-index:2!important;
  max-width:calc(100% - 62px)!important;
}
body.layout-editorial_gallery .category-hero-card h2,
body.layout-editorial_gallery .category-with-color .category-hero-card h2,
body.layout-editorial_gallery .category-with-image .category-hero-card h2,
body.layout-editorial_gallery .category-with-image > .category-hero-card h2,
body.layout-editorial_gallery .category-featured .category-hero-card h2,
body.layout-editorial_gallery .featured-category-card h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:600!important;
  font-size:clamp(25px,2.25vw,34px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
  margin:0!important;
  color:inherit!important;
  text-shadow:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card h2,
body.layout-editorial_gallery .category-with-image > .category-hero-card h2{
  color:#fffdf8!important;
  text-shadow:0 2px 14px rgba(0,0,0,.45)!important;
}
body.layout-editorial_gallery .category-hero-card p,
body.layout-editorial_gallery .category-with-color .category-hero-card p,
body.layout-editorial_gallery .category-with-image .category-hero-card p,
body.layout-editorial_gallery .category-with-image > .category-hero-card p,
body.layout-editorial_gallery .category-featured .category-hero-card p,
body.layout-editorial_gallery .featured-category-card p{
  display:block!important;
  margin:5px 0 0!important;
  font-family:inherit!important;
  font-size:clamp(11px,.85vw,13px)!important;
  line-height:1.18!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:inherit!important;
  opacity:.78!important;
  max-width:100%!important;
  text-shadow:none!important;
}
body.layout-editorial_gallery .category-with-image .category-hero-card p,
body.layout-editorial_gallery .category-with-image > .category-hero-card p{
  color:rgba(255,253,248,.88)!important;
  opacity:1!important;
  text-shadow:0 2px 12px rgba(0,0,0,.42)!important;
}
body.layout-editorial_gallery .category-accordion-icon{
  right:24px!important;
  z-index:3!important;
}
@media(max-width:680px){
  body.layout-editorial_gallery .category-hero-card,
  body.layout-editorial_gallery .category-with-color .category-hero-card,
  body.layout-editorial_gallery .category-with-image .category-hero-card,
  body.layout-editorial_gallery .category-with-image > .category-hero-card,
  body.layout-editorial_gallery .category-featured .category-hero-card,
  body.layout-editorial_gallery .featured-category-card{
    min-height:72px!important;
    height:72px!important;
    max-height:72px!important;
    padding:0 20px!important;
  }
  body.layout-editorial_gallery .category-hero-content,
  body.layout-editorial_gallery .category-with-image .category-hero-card .category-hero-content,
  body.layout-editorial_gallery .category-with-image > .category-hero-card .category-hero-content{
    max-width:calc(100% - 58px)!important;
  }
  body.layout-editorial_gallery .category-hero-card h2,
  body.layout-editorial_gallery .category-with-color .category-hero-card h2,
  body.layout-editorial_gallery .category-with-image .category-hero-card h2,
  body.layout-editorial_gallery .category-with-image > .category-hero-card h2,
  body.layout-editorial_gallery .category-featured .category-hero-card h2,
  body.layout-editorial_gallery .featured-category-card h2{
    font-size:clamp(22px,6.6vw,30px)!important;
  }
  body.layout-editorial_gallery .category-hero-card p,
  body.layout-editorial_gallery .category-with-color .category-hero-card p,
  body.layout-editorial_gallery .category-with-image .category-hero-card p,
  body.layout-editorial_gallery .category-with-image > .category-hero-card p,
  body.layout-editorial_gallery .category-featured .category-hero-card p,
  body.layout-editorial_gallery .featured-category-card p{
    font-size:11px!important;
    margin-top:4px!important;
  }
  body.layout-editorial_gallery .category-accordion-icon{right:18px!important;}
}

/* v2.0.79 - Signature Gallery: sticky categorie full-bleed */
body.layout-editorial_gallery .sticky-category-bar{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  left:0 !important;
  right:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  border-radius:0 !important;
  padding-left:max(18px, calc((100vw - 1180px) / 2 + 18px)) !important;
  padding-right:max(18px, calc((100vw - 1180px) / 2 + 18px)) !important;
  box-sizing:border-box !important;
}
body.layout-editorial_gallery .sticky-category-bar .cat-nav{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
@media (max-width: 768px){
  body.layout-editorial_gallery .sticky-category-bar{
    padding-left:14px !important;
    padding-right:14px !important;
  }
}


/* v1.0.3 - Legenda caratteristiche, popup personalizza a scroll completo e icone categoria come sfondo destro */
.feature-legend .feature-legend-item h3{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 6px!important;
}
.feature-legend .feature-legend-item .feature-icon{
  margin:0!important;
  flex:0 0 auto!important;
}
.feature-legend-grid article{
  min-height:86px!important;
}

/* Personalizza prodotto: scroll dell'intero popup, non solo del blocco opzioni */
#productModal .modal-box{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  display:block!important;
  max-height:min(92vh,860px)!important;
  -webkit-overflow-scrolling:touch!important;
}
#productModal #modalContent,
#productModal #customForm{
  display:block!important;
  overflow:visible!important;
  max-height:none!important;
  min-height:0!important;
}
#productModal .modal-scroll-content{
  overflow:visible!important;
  max-height:none!important;
  min-height:0!important;
}
#productModal .modal-bottom-fixed{
  position:static!important;
  background:var(--card)!important;
  border-top:1px solid rgba(0,0,0,.08)!important;
  padding:12px 24px 24px!important;
}
#productModal .modal-actions{
  position:static!important;
  bottom:auto!important;
  background:transparent!important;
}
@media(max-width:680px){
  #productModal .modal-box{max-height:calc(100dvh - 24px)!important;}
  #productModal #customForm{max-height:none!important;}
}

/* Icona categoria sempre come watermark sul lato destro della card */
.category-hero-card{position:relative!important;overflow:hidden!important;}
.category-hero-content{position:relative!important;z-index:2!important;padding-right:74px!important;}
.category-icon-bg{
  position:absolute!important;
  right:-22px!important;
  top:50%!important;
  transform:translateY(-50%) rotate(-7deg)!important;
  z-index:1!important;
  width:150px!important;
  height:150px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:.14!important;
  pointer-events:none!important;
  color:currentColor!important;
  overflow:hidden!important;
}
.category-icon-bg i{
  font-size:128px!important;
  line-height:1!important;
  color:inherit!important;
}
.category-accordion-icon{position:relative!important;z-index:3!important;}
body.category-mode-accordion .category-hero-content,
body.category-mode-accordion_auto .category-hero-content{padding-right:104px!important;}
body.category-mode-accordion .category-icon-bg,
body.category-mode-accordion_auto .category-icon-bg{right:20px!important;opacity:.12!important;}
body.layout-grand_luxury .category-icon-bg,
body.layout-grand_luxury_light .category-icon-bg{opacity:.10!important;}
@media(max-width:680px){
  .category-hero-content{padding-right:58px!important;}
  .category-icon-bg{right:-34px!important;width:132px!important;height:132px!important;}
  .category-icon-bg i{font-size:112px!important;}
  body.category-mode-accordion .category-hero-content,
  body.category-mode-accordion_auto .category-hero-content{padding-right:88px!important;}
}


/* v1.0.4 - Icone categoria sempre watermark a destra + sottocategorie fisse */
.category-hero-card{position:relative!important;overflow:hidden!important;}
.category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:auto!important;
  right:-36px!important;
  top:50%!important;
  bottom:auto!important;
  transform:translateY(-50%) rotate(-8deg)!important;
  z-index:1!important;
  width:180px!important;
  height:180px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:.13!important;
  pointer-events:none!important;
  user-select:none!important;
  color:var(--cat-text-color,currentColor)!important;
  margin:0!important;
}
.category-hero-card > .category-icon-bg i{font-size:156px!important;line-height:1!important;color:inherit!important;}
.category-hero-card .category-heading-row .category-icon-bg,
.category-hero-content .category-icon-bg{display:none!important;}
.category-hero-content{position:relative!important;z-index:2!important;}
.category-accordion-icon{z-index:5!important;}
body.category-mode-accordion .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto .category-hero-card > .category-icon-bg{right:18px!important;width:150px!important;height:150px!important;opacity:.10!important;}
body.category-mode-accordion .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto .category-hero-card > .category-icon-bg i{font-size:132px!important;}
body.category-mode-accordion .category-hero-content,
body.category-mode-accordion_auto .category-hero-content{padding-right:112px!important;}
.subcategory-cards{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;
  gap:10px!important;
  margin:0 0 14px!important;
}
.subcategory-card{
  background:var(--subcat-color,var(--card,#fff))!important;
  color:var(--subcat-text,var(--text,#111827))!important;
  border:1px solid color-mix(in srgb,var(--line,#e5e7eb) 86%,transparent)!important;
  border-radius:var(--md-ui-radius,var(--radius,18px))!important;
  padding:13px 15px!important;
  box-shadow:0 10px 28px rgba(17,24,39,.06)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
.subcategory-card strong{font-size:14px!important;line-height:1.15!important;font-weight:900!important;letter-spacing:.01em!important;}
.subcategory-card span{font-size:12px!important;line-height:1.32!important;opacity:.72!important;}
body.layout-grand_luxury .subcategory-card,
body.layout-grand_luxury_light .subcategory-card{border-radius:0!important;box-shadow:none!important;}
body.layout-grand_luxury .subcategory-card{background:#14110d!important;color:#f8f0df!important;border-color:rgba(211,176,111,.28)!important;}
body.layout-grand_luxury_light .subcategory-card{background:#fffaf0!important;color:#241b10!important;border-color:rgba(126,86,30,.18)!important;}
@media(max-width:680px){
  .category-hero-card > .category-icon-bg{right:-44px!important;width:138px!important;height:138px!important;opacity:.11!important;}
  .category-hero-card > .category-icon-bg i{font-size:122px!important;}
  body.category-mode-accordion .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto .category-hero-card > .category-icon-bg{right:16px!important;width:118px!important;height:118px!important;}
  body.category-mode-accordion .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto .category-hero-card > .category-icon-bg i{font-size:104px!important;}
  body.category-mode-accordion .category-hero-content,
  body.category-mode-accordion_auto .category-hero-content{padding-right:92px!important;}
  .subcategory-cards{grid-template-columns:1fr!important;gap:8px!important;}
}


/* v1.0.6 - Icone categoria watermark: più centrali e leggermente più piccole */
.category-hero-card > .category-icon-bg{
  left:75%!important;
  right:auto!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:142px!important;
  height:142px!important;
  opacity:.115!important;
}
.category-hero-card > .category-icon-bg i{
  font-size:124px!important;
}
body.category-mode-accordion .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto .category-hero-card > .category-icon-bg{
  left:73%!important;
  right:auto!important;
  width:132px!important;
  height:132px!important;
  opacity:.10!important;
}
body.category-mode-accordion .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto .category-hero-card > .category-icon-bg i{
  font-size:116px!important;
}
body.layout-compact .category-hero-card > .category-icon-bg{
  left:76%!important;
  width:116px!important;
  height:116px!important;
}
body.layout-compact .category-hero-card > .category-icon-bg i{font-size:102px!important;}
body.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  left:75%!important;
  width:136px!important;
  height:136px!important;
}
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i{font-size:118px!important;}
body.layout-grand_luxury .category-hero-card > .category-icon-bg,
body.layout-grand_luxury_light .category-hero-card > .category-icon-bg{
  left:75%!important;
  width:142px!important;
  height:142px!important;
  opacity:.09!important;
}
body.layout-grand_luxury .category-hero-card > .category-icon-bg i,
body.layout-grand_luxury_light .category-hero-card > .category-icon-bg i{font-size:124px!important;}
@media(max-width:680px){
  .category-hero-card > .category-icon-bg{
    left:76%!important;
    right:auto!important;
    width:104px!important;
    height:104px!important;
    opacity:.105!important;
  }
  .category-hero-card > .category-icon-bg i{font-size:92px!important;}
  body.category-mode-accordion .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto .category-hero-card > .category-icon-bg{
    left:72%!important;
    right:auto!important;
    width:98px!important;
    height:98px!important;
  }
  body.category-mode-accordion .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto .category-hero-card > .category-icon-bg i{font-size:86px!important;}
}

/* v1.0.7 - categorie genitore/figlio */
.category-child-cards{margin:14px 0 10px!important;}
.category-child-card{position:relative!important;overflow:hidden!important;display:block!important;padding:0!important;background:var(--subcat-color,var(--card))!important;color:var(--subcat-text,var(--text))!important;border:1px solid var(--line)!important;}
.category-child-card.has-image{background-image:linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.22)),var(--subcat-img)!important;background-size:cover!important;background-position:center!important;color:#fff!important;}
.category-child-card .subcategory-card-head{position:relative!important;z-index:1!important;padding:14px 16px!important;min-height:54px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
.category-child-card .subcategory-card-head strong{font-size:15px!important;line-height:1.15!important;font-weight:900!important;}
.category-child-card .subcategory-card-head span{font-size:12px!important;line-height:1.3!important;margin-top:3px!important;opacity:.78!important;}
.category-child-card .subcategory-products{position:relative!important;z-index:2!important;margin:0!important;padding:8px!important;display:grid!important;gap:8px!important;}
.category-child-card .category-icon-bg{right:7%!important;left:auto!important;top:50%!important;transform:translateY(-50%) rotate(-8deg)!important;font-size:42px!important;opacity:.12!important;}
body.layout-grand_luxury .category-child-card,
body.layout-grand_luxury_light .category-child-card{border-radius:0!important;}

/* v1.0.8 - sottocategorie reali e Signature Gallery personalizzabile */
.subcategory-cards.category-child-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:0 18px 18px;padding:0;}
.subcategory-card.category-child-card{position:relative;overflow:hidden;background:color-mix(in srgb,var(--card) 96%,var(--bg));border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:0 10px 28px rgba(17,24,39,.055);}
.subcategory-card.category-child-card.has-image{background-image:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.20)),var(--child-img);background-size:cover;background-position:center;color:#fff;}
.subcategory-card-head{position:relative;z-index:1;display:block;padding-right:76px;}
.subcategory-card-head strong{display:block;font-size:18px;line-height:1.12;margin:0;color:inherit;}
.subcategory-card-head p{margin:5px 0 0;font-size:13px;line-height:1.35;color:inherit;opacity:.86;}
.subcategory-card .products.subcategory-products{position:relative;z-index:1;margin-top:14px;display:grid;grid-template-columns:1fr;gap:10px;}
.subcategory-card .category-child-cards{margin:14px 0 0;grid-template-columns:1fr;}
.subcategory-card .category-icon-bg{position:absolute!important;right:18px!important;left:auto!important;top:50%!important;transform:translateY(-50%)!important;width:105px!important;height:105px!important;opacity:.12!important;display:flex!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;z-index:0!important;}
.subcategory-card .category-icon-bg i{font-size:96px!important;line-height:1!important;}
.category-hero-card > .category-icon-bg{right:18%!important;left:auto!important;top:50%!important;transform:translate(50%,-50%)!important;}
@media(max-width:680px){.subcategory-cards.category-child-cards{grid-template-columns:1fr;margin:0 12px 14px}.subcategory-card.category-child-card{padding:14px}.subcategory-card-head strong{font-size:17px}}

/* Signature Gallery ora usa i colori impostati in Personalizzazione */
body.layout-editorial_gallery{
  --sg-bg:var(--bg)!important;
  --sg-card:var(--card)!important;
  --sg-ink:var(--text)!important;
  --sg-muted:var(--muted)!important;
  --sg-line:var(--line)!important;
  --sg-accent:var(--price)!important;
  --sg-accent-2:var(--primary)!important;
}
body.layout-editorial_gallery .hero{background-color:var(--bg)!important;}
body.layout-editorial_gallery .language-switcher,
body.layout-editorial_gallery .searchbar,
body.layout-editorial_gallery .sticky-category-bar{background:color-mix(in srgb,var(--bg) 92%,#fff)!important;border-color:var(--line)!important;}
body.layout-editorial_gallery .searchbar input{background:var(--input-bg)!important;color:var(--text)!important;border-color:var(--input-border)!important;}
body.layout-editorial_gallery .cat-nav a{background:var(--cat-nav-bg)!important;color:var(--cat-nav-text)!important;border-color:var(--line)!important;}
body.layout-editorial_gallery .cat-nav a.active,
body.layout-editorial_gallery .cat-nav a:hover{background:var(--cat-nav-active-bg)!important;color:var(--cat-nav-active-text)!important;border-color:var(--cat-nav-active-bg)!important;}
body.layout-editorial_gallery .category{background:var(--card)!important;border-color:var(--line)!important;}
body.layout-editorial_gallery .category-hero-card{background:var(--cat-nav-active-bg)!important;color:var(--cat-nav-active-text)!important;border-color:var(--line)!important;}
body.layout-editorial_gallery .category-hero-card h2,
body.layout-editorial_gallery .category-hero-card p{color:inherit!important;}
body.layout-editorial_gallery .category-with-image .category-hero-card h2,
body.layout-editorial_gallery .category-with-image .category-hero-card p{color:#fff!important;}
body.layout-editorial_gallery .product{background:var(--card)!important;border-color:var(--line)!important;}
body.layout-editorial_gallery .product h3{color:var(--text)!important;}
body.layout-editorial_gallery .product p{color:var(--muted)!important;}
body.layout-editorial_gallery .price strong,
body.layout-editorial_gallery .product-price{color:var(--price)!important;}
body.layout-editorial_gallery button.add,
body.layout-editorial_gallery #sendOrder,
body.layout-editorial_gallery .cart>button,
body.layout-editorial_gallery .catalog-options-toggle{background:var(--button)!important;color:var(--button-text)!important;border-color:var(--button)!important;}
body.layout-editorial_gallery .badge:not(.soldout-badge){background:var(--badge-bg)!important;color:var(--badge-text)!important;border-color:var(--badge-bg)!important;}
body.layout-editorial_gallery .cart-panel,
body.layout-editorial_gallery .modal-box{background:var(--cart-panel-bg)!important;color:var(--cart-text)!important;border-color:var(--cart-border)!important;}

/* v1.0.10 - sottocategorie come separatori nello stesso livello delle card prodotto */
.category-products > .subcategory-separator-card.category-child-separator{
  grid-column:1 / -1!important;
  position:relative!important;
  overflow:hidden!important;
  min-height:54px!important;
  padding:12px 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  background:var(--subcat-color, color-mix(in srgb,var(--card) 94%,var(--bg)))!important;
  color:var(--subcat-text,var(--text))!important;
  border:1px solid var(--line)!important;
  border-radius:calc(var(--radius) * .72)!important;
  box-shadow:0 8px 22px rgba(17,24,39,.045)!important;
  margin:6px 0 2px!important;
}
.category-products > .subcategory-separator-card.category-child-separator.has-image{
  background-image:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.18)),var(--subcat-img)!important;
  background-size:cover!important;
  background-position:center!important;
  color:#fff!important;
}
.category-products > .subcategory-separator-card .subcategory-separator-content{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  padding-right:92px!important;
}
.category-products > .subcategory-separator-card strong{
  display:block!important;
  margin:0!important;
  font-size:15px!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  color:inherit!important;
}
.category-products > .subcategory-separator-card span:not(.category-icon-bg){
  display:block!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.25!important;
  opacity:.76!important;
  color:inherit!important;
}
.category-products > .subcategory-separator-card .category-icon-bg{
  position:absolute!important;
  right:7%!important;
  left:auto!important;
  top:50%!important;
  transform:translateY(-50%) rotate(-8deg)!important;
  width:92px!important;
  height:92px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  opacity:.10!important;
  pointer-events:none!important;
  z-index:1!important;
}
.category-products > .subcategory-separator-card .category-icon-bg i{font-size:82px!important;line-height:1!important;}
body.layout-grand_luxury .category-products > .subcategory-separator-card,
body.layout-grand_luxury_light .category-products > .subcategory-separator-card{
  border-radius:0!important;
}
body.layout-grand_luxury .category-products > .subcategory-separator-card{
  background:#14110d!important;
  color:#f8f0df!important;
  border-color:rgba(211,176,111,.28)!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .category-products > .subcategory-separator-card{
  background:#fffaf0!important;
  color:#241b10!important;
  border-color:rgba(126,86,30,.18)!important;
  box-shadow:none!important;
}
@media(max-width:680px){
  .category-products > .subcategory-separator-card.category-child-separator{min-height:50px!important;padding:11px 14px!important;margin:5px 0 1px!important;}
  .category-products > .subcategory-separator-card .subcategory-separator-content{padding-right:74px!important;}
  .category-products > .subcategory-separator-card .category-icon-bg{right:4%!important;width:76px!important;height:76px!important;}
  .category-products > .subcategory-separator-card .category-icon-bg i{font-size:68px!important;}
}

/* v1.0.14 - Layout Standard: elimina lo spazio tra card categoria e divisore prodotti */
body.layout-standard .category[data-category-section] > .category-hero-card,
body.layout-standard .category[data-category-section] > .featured-category-card,
body.layout-standard .category[data-category-section] > .category-color-card{
  margin:0!important;
  border-bottom-left-radius:0!important;
  border-bottom-right-radius:0!important;
}
body.layout-standard .category[data-category-section] > .category-products{
  margin-top:0!important;
  border-top:1px solid color-mix(in srgb,var(--line) 74%,var(--text) 9%)!important;
}

/* v1.0.15 - Elite Lusso: icona watermark categoria genitore a 3/4 card */
body.layout-grand_luxury .category-hero-card > .category-icon-bg,
body.layout-grand_luxury_light .category-hero-card > .category-icon-bg{
  left:75%!important;
  right:auto!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:142px!important;
  height:142px!important;
  opacity:.09!important;
}
body.layout-grand_luxury .category-hero-card > .category-icon-bg i,
body.layout-grand_luxury_light .category-hero-card > .category-icon-bg i{font-size:124px!important;}
body.category-mode-accordion.layout-grand_luxury .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-grand_luxury .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-grand_luxury_light .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-grand_luxury_light .category-hero-card > .category-icon-bg{
  left:75%!important;
  right:auto!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
}
@media(max-width:680px){
  body.layout-grand_luxury .category-hero-card > .category-icon-bg,
  body.layout-grand_luxury_light .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-grand_luxury .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-grand_luxury .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-grand_luxury_light .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-grand_luxury_light .category-hero-card > .category-icon-bg{
    left:74%!important;
    right:auto!important;
    width:104px!important;
    height:104px!important;
    transform:translate(-50%,-50%) rotate(-8deg)!important;
  }
  body.layout-grand_luxury .category-hero-card > .category-icon-bg i,
  body.layout-grand_luxury_light .category-hero-card > .category-icon-bg i{font-size:92px!important;}
}


/* v1.0.16 - Calorie chip: un solo contenitore, nessun bordo interno su numero/unità */
.product .meta .calories-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
}
.product .meta .calories-chip span,
.product .meta > span > span{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  border-radius:0!important;
}


/* v1.0.17 - Watermark icone categorie: posizione 3/4, inclinate e contenute nel box */
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:22%!important;
  max-width:128px!important;
  min-width:78px!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  opacity:.105!important;
  pointer-events:none!important;
  z-index:1!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  font-size:clamp(68px,16vw,112px)!important;
  line-height:1!important;
  transform:none!important;
}
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  left:75%!important;
  right:auto!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:21%!important;
  max-width:118px!important;
  min-width:74px!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  left:75%!important;
  right:auto!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:18%!important;
  max-width:92px!important;
  min-width:58px!important;
  height:auto!important;
  aspect-ratio:1/1!important;
  overflow:hidden!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  font-size:clamp(52px,12vw,82px)!important;
  line-height:1!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    left:75%!important;
    width:24%!important;
    max-width:96px!important;
    min-width:66px!important;
    transform:translate(-50%,-50%) rotate(-8deg)!important;
  }
  body.layout-standard .category-hero-card > .category-icon-bg i,
  body.layout-compact .category-hero-card > .category-icon-bg i,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg i{font-size:clamp(58px,20vw,86px)!important;}
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    left:75%!important;
    width:20%!important;
    max-width:76px!important;
    min-width:52px!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{font-size:clamp(46px,16vw,68px)!important;}
}


/* v1.0.18 - Watermark categorie: icona interamente contenuta, non tagliata */
body.layout-standard .category-hero-card,
body.layout-compact .category-hero-card,
body.layout-editorial_gallery .category-hero-card,
body.layout-standard .category-products > .subcategory-separator-card,
body.layout-compact .category-products > .subcategory-separator-card,
body.layout-editorial_gallery .category-products > .subcategory-separator-card{
  overflow:hidden!important;
}
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  left:75%!important;
  right:auto!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:clamp(76px,18%,118px)!important;
  height:clamp(76px,18%,118px)!important;
  max-width:none!important;
  min-width:0!important;
  aspect-ratio:1/1!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  font-size:clamp(56px,12vw,86px)!important;
  max-width:100%!important;
  max-height:100%!important;
  line-height:1!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  left:75%!important;
  right:auto!important;
  top:50%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  width:clamp(54px,14%,78px)!important;
  height:clamp(54px,14%,78px)!important;
  max-width:none!important;
  min-width:0!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  font-size:clamp(42px,10vw,58px)!important;
  max-width:100%!important;
  max-height:100%!important;
  line-height:1!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    width:82px!important;
    height:82px!important;
  }
  body.layout-standard .category-hero-card > .category-icon-bg i,
  body.layout-compact .category-hero-card > .category-icon-bg i,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg i{font-size:60px!important;}
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    width:58px!important;
    height:58px!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{font-size:42px!important;}
}

/* v1.0.19 - Watermark categorie: centratura verticale reale e icone sottocategoria contenute */
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:96px!important;
  height:96px!important;
  max-width:22%!important;
  max-height:78%!important;
  min-width:0!important;
  min-height:0!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  display:block!important;
  width:1em!important;
  height:1em!important;
  font-size:min(72px,100%)!important;
  line-height:1!important;
  transform:translateY(.035em)!important;
  text-align:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:46px!important;
  height:46px!important;
  max-width:18%!important;
  max-height:70%!important;
  min-width:0!important;
  min-height:0!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  overflow:visible!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  display:block!important;
  width:1em!important;
  height:1em!important;
  font-size:min(34px,100%)!important;
  line-height:1!important;
  transform:translateY(.035em)!important;
  text-align:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .subcategory-separator-content,
body.layout-compact .category-products > .subcategory-separator-card .subcategory-separator-content,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .subcategory-separator-content{
  padding-right:64px!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    width:74px!important;
    height:74px!important;
    max-width:24%!important;
    max-height:74%!important;
  }
  body.layout-standard .category-hero-card > .category-icon-bg i,
  body.layout-compact .category-hero-card > .category-icon-bg i,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{font-size:min(54px,100%)!important;}
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    width:38px!important;
    height:38px!important;
    max-width:18%!important;
    max-height:64%!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{font-size:min(28px,100%)!important;}
}


/* v1.0.20 - Watermark categorie: centratura ottica verticale rispetto alla card */
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  top:50%!important;
  left:75%!important;
  width:88px!important;
  height:88px!important;
  max-width:20%!important;
  max-height:62%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:68px!important;
  line-height:0!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i::before,
body.layout-compact .category-hero-card > .category-icon-bg i::before,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:translateY(-1px)!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  top:50%!important;
  left:75%!important;
  width:42px!important;
  height:42px!important;
  max-width:14%!important;
  max-height:54%!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:30px!important;
  line-height:0!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:translateY(-1px)!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    width:70px!important;
    height:70px!important;
    max-width:22%!important;
    max-height:58%!important;
  }
  body.layout-standard .category-hero-card > .category-icon-bg i,
  body.layout-compact .category-hero-card > .category-icon-bg i,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{font-size:52px!important;}
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    width:34px!important;
    height:34px!important;
    max-width:13%!important;
    max-height:50%!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{font-size:24px!important;}
}

/* v1.0.21 - Watermark categorie: icone più grandi e centrate nella card */
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:auto!important;
  height:82%!important;
  max-width:34%!important;
  max-height:82%!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.12!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:100%!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i::before,
body.layout-compact .category-hero-card > .category-icon-bg i::before,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:translateY(0)!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:auto!important;
  height:82%!important;
  max-width:30%!important;
  max-height:82%!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.12!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:100%!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:translateY(0)!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    height:78%!important;
    max-width:32%!important;
    max-height:78%!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    height:78%!important;
    max-width:28%!important;
    max-height:78%!important;
  }
}


/* v1.0.22 - Watermark categoria: icona grande quasi quanto l'altezza della barra, con piccolo respiro sopra/sotto */
body.layout-standard .category-hero-card,
body.layout-compact .category-hero-card,
body.layout-editorial_gallery .category-hero-card,
body.layout-standard .category-products > .subcategory-separator-card,
body.layout-compact .category-products > .subcategory-separator-card,
body.layout-editorial_gallery .category-products > .subcategory-separator-card{
  position:relative!important;
  overflow:hidden!important;
}
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:auto!important;
  height:calc(100% - 22px)!important;
  max-width:none!important;
  max-height:none!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.13!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:100%!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i::before,
body.layout-compact .category-hero-card > .category-icon-bg i::before,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:none!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:auto!important;
  height:calc(100% - 12px)!important;
  max-width:none!important;
  max-height:none!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.13!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  font-size:100%!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:none!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    height:calc(100% - 18px)!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    height:calc(100% - 10px)!important;
  }
}


/* v1.0.23 - Watermark categoria proporzionato: visibile intero, non tagliato */
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  left:75%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:auto!important;
  height:68%!important;
  max-width:26%!important;
  max-height:68%!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
  opacity:.13!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  left:75%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  width:auto!important;
  height:58%!important;
  max-width:20%!important;
  max-height:58%!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
  opacity:.13!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  width:100%!important;
  height:100%!important;
  font-size:100%!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    height:64%!important;
    max-width:28%!important;
    max-height:64%!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    height:52%!important;
    max-width:22%!important;
    max-height:52%!important;
  }
}


/* v1.0.24 - Watermark categorie: icona interamente contenuta nella barra con padding reale */
body.layout-standard .category-hero-card,
body.layout-compact .category-hero-card,
body.layout-editorial_gallery .category-hero-card,
body.layout-standard .category-products > .subcategory-separator-card,
body.layout-compact .category-products > .subcategory-separator-card,
body.layout-editorial_gallery .category-products > .subcategory-separator-card{
  overflow:hidden!important;
}
body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:clamp(82px,14vw,132px)!important;
  height:clamp(82px,14vw,132px)!important;
  max-width:calc(100% - 28px)!important;
  max-height:calc(100% - 20px)!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.13!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  display:block!important;
  width:auto!important;
  height:auto!important;
  font-size:clamp(74px,12vw,116px)!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:clamp(42px,7vw,70px)!important;
  height:clamp(42px,7vw,70px)!important;
  max-width:calc(100% - 22px)!important;
  max-height:calc(100% - 14px)!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.13!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  display:block!important;
  width:auto!important;
  height:auto!important;
  font-size:clamp(36px,6vw,58px)!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    width:clamp(74px,28vw,112px)!important;
    height:clamp(74px,28vw,112px)!important;
    max-height:calc(100% - 18px)!important;
  }
  body.layout-standard .category-hero-card > .category-icon-bg i,
  body.layout-compact .category-hero-card > .category-icon-bg i,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
    font-size:clamp(66px,24vw,98px)!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    width:clamp(36px,16vw,58px)!important;
    height:clamp(36px,16vw,58px)!important;
    max-height:calc(100% - 12px)!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
    font-size:clamp(32px,14vw,50px)!important;
  }
}

/* v1.0.25 - Standard / Lista Rapida / Signature: watermark allineato come Elite Luxury */
body.layout-standard .category-hero-card,
body.layout-compact .category-hero-card,
body.layout-editorial_gallery .category-hero-card,
body.layout-standard .category-products > .subcategory-separator-card,
body.layout-compact .category-products > .subcategory-separator-card,
body.layout-editorial_gallery .category-products > .subcategory-separator-card{
  position:relative!important;
  overflow:hidden!important;
}

body.layout-standard .category-hero-card > .category-icon-bg,
body.layout-compact .category-hero-card > .category-icon-bg,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:142px!important;
  height:142px!important;
  max-width:none!important;
  max-height:calc(100% - 18px)!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.13!important;
  z-index:1!important;
  pointer-events:none!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i,
body.layout-compact .category-hero-card > .category-icon-bg i,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
  display:block!important;
  width:auto!important;
  height:auto!important;
  font-size:124px!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-hero-card > .category-icon-bg i::before,
body.layout-compact .category-hero-card > .category-icon-bg i::before,
body.layout-editorial_gallery .category-hero-card > .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:none!important;
}

body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
  position:absolute!important;
  left:75%!important;
  right:auto!important;
  top:50%!important;
  bottom:auto!important;
  width:96px!important;
  height:96px!important;
  max-width:none!important;
  max-height:calc(100% - 12px)!important;
  min-width:0!important;
  min-height:0!important;
  aspect-ratio:1/1!important;
  transform:translate(-50%,-50%) rotate(-8deg)!important;
  transform-origin:center center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  line-height:1!important;
  opacity:.13!important;
  z-index:0!important;
  pointer-events:none!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
  display:block!important;
  width:auto!important;
  height:auto!important;
  font-size:84px!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  text-align:center!important;
}
body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i::before,
body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i::before{
  display:block!important;
  line-height:1!important;
  transform:none!important;
}

@media(max-width:680px){
  body.layout-standard .category-hero-card > .category-icon-bg,
  body.layout-compact .category-hero-card > .category-icon-bg,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg{
    left:75%!important;
    width:104px!important;
    height:104px!important;
    max-height:calc(100% - 16px)!important;
    transform:translate(-50%,-50%) rotate(-8deg)!important;
  }
  body.layout-standard .category-hero-card > .category-icon-bg i,
  body.layout-compact .category-hero-card > .category-icon-bg i,
  body.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-standard .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-compact .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion.layout-editorial_gallery .category-hero-card > .category-icon-bg i,
  body.category-mode-accordion_auto.layout-editorial_gallery .category-hero-card > .category-icon-bg i{
    font-size:92px!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg{
    left:75%!important;
    width:76px!important;
    height:76px!important;
    max-height:calc(100% - 10px)!important;
    transform:translate(-50%,-50%) rotate(-8deg)!important;
  }
  body.layout-standard .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-compact .category-products > .subcategory-separator-card .category-icon-bg i,
  body.layout-editorial_gallery .category-products > .subcategory-separator-card .category-icon-bg i{
    font-size:68px!important;
  }
}

/* v1.0.26 - codice tavolo nel carrello */
.cart-panel .table-pin-field small{display:block;color:var(--cart-muted,var(--muted));font-weight:700;margin-top:2px}.cart-panel #tablePin{letter-spacing:.18em;font-weight:950;text-align:center}.cart-panel input.invalid{border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.12)}

/* v1.0.27 - OTP email ordine */
.email-otp-box .email-otp-input{width:100%;box-sizing:border-box;text-align:center;font-size:26px;font-weight:900;letter-spacing:8px;border:1px solid var(--cart-border,#e5e7eb);border-radius:16px;padding:14px 16px;margin:12px 0;background:var(--input-bg,#fff);color:var(--cart-text,#111827)}
.email-otp-box #emailOtpMsg{display:block;min-height:20px;margin:4px 0 10px;color:var(--cart-muted,#6b7280);font-weight:800}.email-otp-box #emailOtpMsg.error{color:#b91c1c}.email-otp-actions{display:flex;justify-content:center;margin-top:8px}


/* v1.0.31 - Signature Gallery: badge prodotto desktop/tablet come struttura mobile */
@media (min-width:681px){
  body.layout-editorial_gallery .product > .p-info > .product-badges,
  body.layout-editorial_gallery .product .product-badges{
    position:static!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    max-width:100%!important;
    gap:6px!important;
    margin:0 0 10px 0!important;
    padding:0!important;
    overflow:visible!important;
  }
  body.layout-editorial_gallery .product > .p-info > .product-badges .badge,
  body.layout-editorial_gallery .product .product-badges .badge,
  body.layout-editorial_gallery .product .product-badges .badge:not(.soldout-badge),
  body.layout-editorial_gallery .product .product-badges .badge.soldout-badge{
    min-width:0!important;
    width:auto!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    padding:6px 10px!important;
    margin:0!important;
    line-height:1.05!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.02em!important;
    text-transform:none!important;
    box-shadow:none!important;
    transform:none!important;
    white-space:normal!important;
    text-align:center!important;
  }
}

/* v1.0.32 - Signature Gallery desktop/tablet: card prodotto compatta e coerente; mobile invariato */
@media (min-width:681px){
  body.layout-editorial_gallery .category-products{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
    padding:24px!important;
    background:transparent!important;
  }

  body.layout-editorial_gallery .product{
    display:grid!important;
    grid-template-columns:clamp(190px,22vw,280px) minmax(0,1fr)!important;
    grid-template-rows:auto 1fr auto!important;
    grid-template-areas:
      "media info"
      "media info"
      "media actions"!important;
    column-gap:28px!important;
    row-gap:14px!important;
    align-items:stretch!important;
    min-height:260px!important;
    padding:24px!important;
    border:1px solid var(--line)!important;
    border-radius:22px!important;
    background:var(--card)!important;
    box-shadow:0 16px 40px rgba(15,23,42,.06)!important;
    overflow:hidden!important;
  }

  body.layout-editorial_gallery .product:nth-child(2n){border-right:1px solid var(--line)!important;}

  body.layout-editorial_gallery .product > img{
    grid-area:media!important;
    width:100%!important;
    height:100%!important;
    min-height:220px!important;
    max-height:320px!important;
    aspect-ratio:1/1!important;
    object-fit:cover!important;
    border-radius:18px!important;
    margin:0!important;
    display:block!important;
    box-shadow:none!important;
  }

  body.layout-editorial_gallery .product > .p-info{
    grid-area:info!important;
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
  }

  body.layout-editorial_gallery .product > .p-info > .product-badges,
  body.layout-editorial_gallery .product .product-badges{
    position:static!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:auto!important;
    max-width:100%!important;
    gap:8px!important;
    margin:0 0 12px 0!important;
    padding:0!important;
    overflow:visible!important;
  }

  body.layout-editorial_gallery .product > .p-info > .product-badges .badge,
  body.layout-editorial_gallery .product .product-badges .badge,
  body.layout-editorial_gallery .product .product-badges .badge:not(.soldout-badge),
  body.layout-editorial_gallery .product .product-badges .badge.soldout-badge{
    min-width:0!important;
    width:auto!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
    padding:8px 14px!important;
    margin:0!important;
    line-height:1.05!important;
    font-size:12px!important;
    font-weight:950!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
    box-shadow:none!important;
    transform:none!important;
    white-space:normal!important;
    text-align:center!important;
  }

  body.layout-editorial_gallery .product h3,
  body.layout-editorial_gallery .product .product-title-line{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    width:100%!important;
    margin:0 0 10px 0!important;
    font-size:clamp(30px,3vw,44px)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    color:var(--text)!important;
  }

  body.layout-editorial_gallery .product p{
    max-width:760px!important;
    margin:0 0 14px 0!important;
    font-size:17px!important;
    line-height:1.55!important;
    color:var(--muted)!important;
  }

  body.layout-editorial_gallery .product .chips,
  body.layout-editorial_gallery .product .meta{
    margin-top:4px!important;
    margin-bottom:0!important;
    gap:8px!important;
  }

  body.layout-editorial_gallery .product .chips span,
  body.layout-editorial_gallery .product .meta span{
    padding:8px 12px!important;
    border-radius:999px!important;
    font-size:13px!important;
  }

  body.layout-editorial_gallery .product > .product-action-row{
    grid-area:actions!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:18px!important;
    width:100%!important;
    margin:10px 0 0 0!important;
    padding-top:16px!important;
    border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent)!important;
  }

  body.layout-editorial_gallery .product .product-button-slot{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
  }

  body.layout-editorial_gallery .product button.add,
  body.layout-editorial_gallery .product .catalog-options-toggle{
    min-height:48px!important;
    border-radius:16px!important;
    padding:0 18px!important;
    font-size:15px!important;
    font-weight:950!important;
  }

  body.layout-editorial_gallery .product .price,
  body.layout-editorial_gallery .product .product-price-right{
    margin:0!important;
    display:flex!important;
    align-items:baseline!important;
    justify-content:flex-end!important;
    gap:10px!important;
    white-space:nowrap!important;
  }

  body.layout-editorial_gallery .price strong,
  body.layout-editorial_gallery .product-price,
  body.layout-editorial_gallery .product .product-price-right strong{
    font-size:clamp(28px,3vw,40px)!important;
    line-height:1!important;
    color:var(--price)!important;
  }

  body.layout-editorial_gallery .product:not(:has(> img)),
  body.layout-editorial_gallery.card-no-image .product{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:
      "info"
      "info"
      "actions"!important;
    min-height:auto!important;
  }
}

@media (min-width:681px) and (max-width:980px){
  body.layout-editorial_gallery .category-products{padding:18px!important;gap:16px!important;}
  body.layout-editorial_gallery .product{
    grid-template-columns:180px minmax(0,1fr)!important;
    column-gap:22px!important;
    min-height:230px!important;
    padding:20px!important;
  }
  body.layout-editorial_gallery .product > img{min-height:190px!important;max-height:260px!important;}
  body.layout-editorial_gallery .product h3,
  body.layout-editorial_gallery .product .product-title-line{font-size:clamp(28px,4vw,38px)!important;}
  body.layout-editorial_gallery .product p{font-size:16px!important;line-height:1.5!important;}
}


/* v1.0.34 - Consigli sulla cottura prodotto */
.product-cooking-advice,.modal-cooking-advice{display:grid!important;gap:6px!important;margin:10px 0 12px!important;line-height:1.25!important}
.product-cooking-advice strong,.modal-cooking-advice strong{font-size:13px!important;font-weight:950!important;color:var(--text)!important;letter-spacing:.01em!important}
.product-cooking-advice .cooking-line,.modal-cooking-advice .cooking-line{display:block!important;font-size:14px!important;font-weight:900!important;font-style:italic!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.product-cooking-advice .cooking-line.good,.modal-cooking-advice .cooking-line.good{color:#008000!important}
.product-cooking-advice .cooking-line.medium,.modal-cooking-advice .cooking-line.medium{color:#f59e0b!important}
.product-cooking-advice .cooking-line.bad,.modal-cooking-advice .cooking-line.bad{color:#ef4444!important}
body.layout-grand_luxury .product-cooking-advice strong,body.layout-grand_luxury_light .product-cooking-advice strong{font-size:14px!important}
body.layout-grand_luxury .product-cooking-advice .cooking-line,body.layout-grand_luxury_light .product-cooking-advice .cooking-line{font-size:15px!important}

/* v1.0.35 - consigli da gruppi opzioni globali */
.product-cooking-advice .cooking-line{display:flex!important;align-items:center!important;gap:7px!important}
.product-cooking-advice .cooking-line i{font-size:.95em!important;line-height:1!important;width:1.1em!important;text-align:center!important}

/* v1.0.39 - card consigli da gruppi globali, coerente con i layout */
.product-advice-card{display:grid!important;gap:10px!important;margin:12px 0 14px!important;padding:12px 14px!important;border:1px solid color-mix(in srgb,var(--line) 78%,transparent)!important;border-radius:calc(var(--radius) * .65)!important;background:color-mix(in srgb,var(--card) 82%,var(--bg) 18%)!important;box-shadow:0 8px 24px rgba(15,23,42,.05)!important;max-width:100%!important}
.product-advice-group{display:grid!important;gap:8px!important}
.product-advice-title{display:block!important;font-size:13px!important;font-weight:950!important;color:var(--text)!important;letter-spacing:.01em!important;line-height:1.18!important}
.product-advice-items{display:flex!important;flex-wrap:wrap!important;gap:7px 8px!important;align-items:center!important}
.product-advice-item{--advice-color:var(--accent);display:inline-flex!important;align-items:center!important;gap:6px!important;padding:7px 10px!important;border-radius:999px!important;border:1px solid color-mix(in srgb,var(--advice-color) 28%,transparent)!important;background:color-mix(in srgb,var(--advice-color) 11%,transparent)!important;color:var(--advice-color)!important;font-size:13px!important;font-weight:900!important;font-style:italic!important;line-height:1.1!important;max-width:100%!important}
.product-advice-item i{font-size:.95em!important;line-height:1!important;width:1.05em!important;text-align:center!important;flex:0 0 auto!important}
body.layout-grand_luxury .product-advice-card,body.layout-grand_luxury_light .product-advice-card{border-radius:0!important;background:rgba(255,255,255,.04)!important;border-color:rgba(214,184,103,.28)!important;box-shadow:none!important}
body.layout-grand_luxury .product-advice-title,body.layout-grand_luxury_light .product-advice-title{font-size:14px!important;letter-spacing:.03em!important;text-transform:uppercase!important}
/* v1.0.94 - Luxury Dark: titolo card consigli leggibile */
body.layout-grand_luxury .product-advice-title{
  color:#d6b867!important;
  opacity:1!important;
}
body.layout-grand_luxury_light .product-advice-title{
  color:#6f5522!important;
  opacity:1!important;
}

body.layout-signature_gallery .product-advice-card{background:color-mix(in srgb,var(--card) 88%,var(--accent) 6%)!important;border-radius:18px!important}
body.layout-quick_list .product-advice-card{margin-top:8px!important;margin-bottom:8px!important;padding:10px 12px!important}
@media(max-width:680px){.product-advice-card{padding:10px 12px!important}.product-advice-item{font-size:12px!important;padding:6px 9px!important}}

/* v1.0.62 - Preloader menu personalizzabile */
.md-menu-preloader{
  position:fixed!important;
  inset:0!important;
  z-index:2147483000!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:var(--md-preloader-bg,#111827)!important;
  opacity:1!important;
  visibility:visible!important;
  transition:opacity .55s ease, visibility .55s ease!important;
  pointer-events:auto!important;
}
.md-menu-preloader img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:min(var(--md-preloader-logo-size,28vmin),88vw)!important;
  max-height:min(var(--md-preloader-logo-size,28vmin),88vh)!important;
  object-fit:contain!important;
  filter:drop-shadow(0 18px 48px rgba(0,0,0,.18))!important;
}
.md-menu-preloader strong{
  color:#fff!important;
  font-size:clamp(28px,8vmin,88px)!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
  text-align:center!important;
  padding:0 24px!important;
}
.md-menu-preloader.is-hiding{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.md-preloader-lock{overflow:hidden!important;}

/* v1.0.64 - Standard: card consigli a tutta larghezza della card prodotto */
.product > .product-advice-card-full{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:none!important;
  margin:12px 0 8px!important;
}
body.layout-standard .product > .product-advice-card-full{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:none!important;
  align-self:stretch!important;
}
body.layout-standard .product > .product-advice-card-full .product-advice-items{
  width:100%!important;
}
@media(max-width:680px){
  .product > .product-advice-card-full{margin:10px 0 6px!important;}
}


/* v1.0.65 - Standard: card consigli sotto contenuto/immagine e prima della riga pulsante/prezzo */
body.layout-standard .product{
  grid-auto-flow:row!important;
  align-items:start!important;
}
body.layout-standard .product > .p-info{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
}
body.layout-standard .product > img{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
}
body.layout-standard .product:not(:has(> img)) > .p-info,
body.layout-standard.card-no-image .product > .p-info{
  grid-column:1 / -1!important;
}
body.layout-standard .product > .product-advice-card-full{
  grid-column:1 / -1!important;
  grid-row:2!important;
  width:100%!important;
  max-width:none!important;
  margin:12px 0 8px!important;
  align-self:stretch!important;
}
body.layout-standard .product > .product-action-row{
  grid-column:1 / -1!important;
  grid-row:3!important;
  margin-top:0!important;
}
@media(max-width:680px){
  body.layout-standard .product > .p-info{grid-column:1!important;grid-row:1!important;}
  body.layout-standard .product > img{grid-column:2!important;grid-row:1!important;}
  body.layout-standard .product > .product-advice-card-full{grid-column:1 / -1!important;grid-row:2!important;margin:10px 0 6px!important;}
  body.layout-standard .product > .product-action-row{grid-column:1 / -1!important;grid-row:3!important;}
}

/* v1.0.66 - Standard: badge separato; immagine allineata a titolo/descrizione su tablet/mobile */
body.layout-standard .product > .product-badges-standard-row{
  grid-column:1 / -1!important;
  grid-row:1!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  width:100%!important;
  margin:0 0 12px!important;
}
body.layout-standard .product.has-visible-badge > .p-info{
  grid-column:1!important;
  grid-row:2!important;
}
body.layout-standard .product.has-visible-badge > img{
  grid-column:2!important;
  grid-row:2!important;
  align-self:start!important;
  margin-top:0!important;
}
body.layout-standard .product.has-visible-badge > .product-advice-card-full{
  grid-column:1 / -1!important;
  grid-row:3!important;
}
body.layout-standard .product.has-visible-badge > .product-action-row{
  grid-column:1 / -1!important;
  grid-row:4!important;
}
body.layout-standard .product.has-visible-badge:not(:has(> img)) > .p-info,
body.layout-standard.card-no-image .product.has-visible-badge > .p-info{
  grid-column:1 / -1!important;
}
@media(max-width:980px){
  body.layout-standard .product.has-visible-badge > img{
    grid-row:2!important;
    align-self:start!important;
  }
}
@media(max-width:680px){
  body.layout-standard .product > .product-badges-standard-row{
    margin-bottom:10px!important;
  }
  body.layout-standard .product.has-visible-badge > .p-info{grid-column:1!important;grid-row:2!important;}
  body.layout-standard .product.has-visible-badge > img{grid-column:2!important;grid-row:2!important;align-self:start!important;}
  body.layout-standard .product.has-visible-badge > .product-advice-card-full{grid-column:1 / -1!important;grid-row:3!important;}
  body.layout-standard .product.has-visible-badge > .product-action-row{grid-column:1 / -1!important;grid-row:4!important;}
}

/* v1.0.67 - Fix Standard image/badge alignment and catalog options styling */
@media (min-width:981px){
  body.layout-standard .product.has-visible-badge{
    grid-template-columns:minmax(0,1fr) 150px!important;
    align-items:start!important;
  }
  body.layout-standard .product.has-visible-badge > .product-badges-standard-row{
    grid-column:1!important;
    grid-row:1!important;
    width:auto!important;
    max-width:100%!important;
    margin:0 0 12px!important;
    align-self:start!important;
  }
  body.layout-standard .product.has-visible-badge > .p-info{
    grid-column:1!important;
    grid-row:2!important;
  }
  body.layout-standard .product.has-visible-badge > img{
    grid-column:2!important;
    grid-row:1 / span 2!important;
    align-self:start!important;
    margin-top:0!important;
  }
  body.layout-standard .product.has-visible-badge > .product-advice-card-full{
    grid-column:1 / -1!important;
    grid-row:3!important;
  }
  body.layout-standard .product.has-visible-badge > .product-action-row{
    grid-column:1 / -1!important;
    grid-row:4!important;
  }
}

@media (max-width:980px){
  body.layout-standard .product > .product-badges-standard-row .badge{
    min-width:75%!important;
    justify-content:center!important;
    text-align:center!important;
  }
  body.layout-standard .product.has-visible-badge > .product-badges-standard-row{
    grid-column:1 / -1!important;
    grid-row:1!important;
  }
  body.layout-standard .product.has-visible-badge > .p-info{
    grid-column:1!important;
    grid-row:2!important;
  }
  body.layout-standard .product.has-visible-badge > img{
    grid-column:2!important;
    grid-row:2!important;
    align-self:start!important;
    margin-top:0!important;
  }
  body.layout-standard .product.has-visible-badge > .product-advice-card-full{
    grid-column:1 / -1!important;
    grid-row:3!important;
  }
  body.layout-standard .product.has-visible-badge > .product-action-row{
    grid-column:1 / -1!important;
    grid-row:4!important;
  }
}

body.mode-catalog .product-button-slot:has(.catalog-options-toggle){
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  overflow:visible!important;
}
body.mode-catalog .product-button-slot .catalog-options-toggle{
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  white-space:nowrap!important;
  line-height:1.1!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
@media (max-width:680px){
  body.mode-catalog .product-button-slot:has(.catalog-options-toggle),
  body.mode-catalog .product-button-slot .catalog-options-toggle{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

body.mode-catalog .catalog-options{
  border-top:1px solid color-mix(in srgb,var(--muted) 16%,transparent)!important;
  gap:12px!important;
}
body.mode-catalog .catalog-option-group{
  border-radius:calc(var(--radius) * .65)!important;
  padding:14px!important;
  border:1px solid color-mix(in srgb,var(--line) 78%,transparent)!important;
  background:color-mix(in srgb,var(--card) 86%,var(--bg) 14%)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.05)!important;
}
body.mode-catalog .catalog-option-rule{
  border-radius:999px!important;
}
body.mode-catalog .catalog-option-chip{
  border-radius:999px!important;
  padding:8px 11px!important;
  background:color-mix(in srgb,var(--bg) 58%,var(--card))!important;
}
body.layout-standard.mode-catalog .catalog-option-group{
  border-radius:calc(var(--radius) * .65)!important;
  background:color-mix(in srgb,var(--card) 88%,var(--bg) 12%)!important;
  border-color:color-mix(in srgb,var(--line) 82%,transparent)!important;
}
body.layout-standard.mode-catalog .catalog-option-chip{
  border-radius:999px!important;
}
body.layout-quick_list.mode-catalog .catalog-option-group{
  border-radius:14px!important;
  padding:12px!important;
  box-shadow:none!important;
}
body.layout-signature_gallery.mode-catalog .catalog-option-group{
  border-radius:18px!important;
  background:color-mix(in srgb,var(--card) 88%,var(--accent) 6%)!important;
}
body.layout-grand_luxury.mode-catalog .catalog-option-group,
body.layout-grand_luxury_light.mode-catalog .catalog-option-group{
  border-radius:0!important;
  box-shadow:none!important;
}

/* v1.0.68 - Standard: badge 75% tablet/mobile + catalog mobile action row */
@media (max-width:1200px){
  body.layout-standard .product > .product-badges-standard-row{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.layout-standard .product > .product-badges-standard-row .badge{
    flex:0 0 75%!important;
    width:75%!important;
    min-width:75%!important;
    max-width:75%!important;
    justify-content:center!important;
    text-align:center!important;
    display:inline-flex!important;
    white-space:nowrap!important;
  }
}

@media (min-width:981px){
  body.layout-standard .product.has-visible-badge > img{
    grid-row:1 / span 2!important;
    align-self:start!important;
    margin-top:0!important;
  }
}

@media (max-width:680px){
  body.layout-standard.mode-catalog .product > .product-action-row{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
  }
  body.layout-standard.mode-catalog .product-button-slot:has(.catalog-options-toggle){
    flex:0 0 clamp(150px,44vw,176px)!important;
    width:clamp(150px,44vw,176px)!important;
    min-width:clamp(150px,44vw,176px)!important;
    max-width:clamp(150px,44vw,176px)!important;
  }
  body.layout-standard.mode-catalog .product-button-slot .catalog-options-toggle{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    white-space:nowrap!important;
    padding-left:12px!important;
    padding-right:12px!important;
    text-align:center!important;
  }
  body.layout-standard.mode-catalog .product-action-row .price,
  body.layout-standard.mode-catalog .product-action-row .product-price-right{
    display:flex!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    margin-left:auto!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
    overflow:visible!important;
  }
  body.layout-standard.mode-catalog .product-action-row .price strong{
    font-size:clamp(18px,5.4vw,23px)!important;
    white-space:nowrap!important;
  }
}

@media (max-width:380px){
  body.layout-standard.mode-catalog .product-button-slot:has(.catalog-options-toggle){
    flex-basis:142px!important;
    width:142px!important;
    min-width:142px!important;
    max-width:142px!important;
  }
  body.layout-standard.mode-catalog .product-button-slot .catalog-options-toggle{
    font-size:13px!important;
  }
}

/* v1.0.69 - Standard mobile price row + adaptive badge width */
@media (max-width:1200px){
  body.layout-standard .product > .product-badges-standard-row{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }
  body.layout-standard .product > .product-badges-standard-row .badge:not(.soldout-badge){
    width:max-content!important;
    min-width:75%!important;
    max-width:100%!important;
    flex:0 1 auto!important;
    box-sizing:border-box!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (max-width:680px){
  body.layout-standard.mode-catalog .product .product-inline-price{
    display:none!important;
  }
  body.layout-standard.mode-catalog .product > .product-action-row{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
    margin-top:14px!important;
    padding-top:16px!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
  }
  body.layout-standard.mode-catalog .product > .product-action-row .product-button-slot{
    flex:0 1 auto!important;
    min-width:0!important;
    width:auto!important;
    max-width:calc(100% - 112px)!important;
  }
  body.layout-standard.mode-catalog .product > .product-action-row .catalog-options-toggle{
    width:auto!important;
    min-width:clamp(142px,42vw,176px)!important;
    max-width:100%!important;
    white-space:nowrap!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.layout-standard.mode-catalog .product > .product-action-row .price,
  body.layout-standard.mode-catalog .product > .product-action-row .product-price-right{
    flex:0 0 auto!important;
    min-width:max-content!important;
    margin-left:auto!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    white-space:nowrap!important;
    text-align:right!important;
    overflow:visible!important;
  }
  body.layout-standard.mode-catalog .product > .product-action-row .price strong{
    font-size:clamp(22px,7vw,30px)!important;
    white-space:nowrap!important;
  }
  body.layout-standard.mode-catalog .product.no-description:not(:has(.catalog-options-toggle)) .product-inline-price{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    float:none!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
  body.layout-standard.mode-catalog .product.no-description:not(:has(.catalog-options-toggle)) > .product-action-row{
    display:none!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
  body.layout-standard.mode-catalog .product.no-description:not(:has(.catalog-options-toggle)) .product-title-line{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
  }
}

/* v1.0.70 - Standard mobile: prezzo sempre in riga sotto se c'è foto o descrizione */
body.layout-standard .product .product-action-row .price strong,
body.layout-standard .product .product-inline-price strong,
body.layout-standard .product .product-price-right strong{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}
body.layout-standard .product .product-action-row .price del,
body.layout-standard .product .product-inline-price del,
body.layout-standard .product .product-price-right del{
  font-size:clamp(14px,2.6vw,18px)!important;
  white-space:nowrap!important;
}
@media (max-width:680px){
  body.layout-standard.mode-catalog .product.has-product-image .product-inline-price,
  body.layout-standard.mode-catalog .product.has-description .product-inline-price{
    display:none!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    margin-top:14px!important;
    padding-top:16px!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
    min-height:0!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .product-button-slot:empty,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .product-button-slot:empty{
    display:none!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .product-button-slot,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .product-button-slot{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 118px)!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .catalog-options-toggle,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .catalog-options-toggle{
    width:auto!important;
    min-width:clamp(148px,42vw,190px)!important;
    max-width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .price,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .price,
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .product-price-right,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .product-price-right{
    flex:0 0 auto!important;
    margin-left:auto!important;
    min-width:max-content!important;
    width:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .price strong,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .price strong,
  body.layout-standard.mode-catalog .product.has-product-image > .product-action-row .product-price-right strong,
  body.layout-standard.mode-catalog .product.has-description > .product-action-row .product-price-right strong{
    font-size:clamp(22px,4vw,30px)!important;
  }
  body.layout-standard.mode-catalog .product.no-description:not(.has-product-image):not(:has(.catalog-options-toggle)) .product-inline-price{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }
  body.layout-standard.mode-catalog .product.no-description:not(.has-product-image):not(:has(.catalog-options-toggle)) > .product-action-row{
    display:none!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
  body.layout-standard.mode-catalog .product.no-description:not(.has-product-image):not(:has(.catalog-options-toggle)) .product-title-line{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
  }
}


/* v1.0.71 - Standard mobile: prezzo coerente con foto/descrizione + coperto */
.product .product-action-row .price strong,
.product .product-action-row .product-price-right strong,
.product .product-inline-price strong,
.info-card-price,
.cover-charge-info .info-card-price,
.cover-charge-info strong.info-card-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1.05!important;
}
@media(max-width:680px){
  body.layout-standard .product.has-product-image .product-inline-price,
  body.layout-standard .product.has-description .product-inline-price{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    margin-top:10px!important;
    padding-top:12px!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
    min-height:0!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .product-button-slot,
  body.layout-standard .product.has-description > .product-action-row .product-button-slot{
    display:flex!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 116px)!important;
    align-items:center!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .product-button-slot:empty,
  body.layout-standard .product.has-description > .product-action-row .product-button-slot:empty{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .catalog-options-toggle,
  body.layout-standard .product.has-description > .product-action-row .catalog-options-toggle,
  body.layout-standard .product.has-product-image > .product-action-row .add,
  body.layout-standard .product.has-description > .product-action-row .add{
    width:auto!important;
    min-width:clamp(148px,42vw,190px)!important;
    max-width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
    flex:0 1 auto!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price,
  body.layout-standard .product.has-description > .product-action-row .price,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right,
  body.layout-standard .product.has-description > .product-action-row .product-price-right{
    flex:0 0 auto!important;
    margin-left:auto!important;
    min-width:max-content!important;
    width:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price strong,
  body.layout-standard .product.has-description > .product-action-row .price strong,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right strong,
  body.layout-standard .product.has-description > .product-action-row .product-price-right strong,
  body.layout-standard .info-card-price,
  body.layout-standard .cover-charge-info .info-card-price,
  body.layout-standard .cover-charge-info strong.info-card-price{
    font-size:clamp(22px,4vw,30px)!important;
    line-height:1.05!important;
  }
  body.layout-standard .product.no-description:not(.has-product-image):not(:has(.catalog-options-toggle)) .product-inline-price{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    margin-left:auto!important;
    white-space:nowrap!important;
    font-size:clamp(22px,4vw,30px)!important;
  }
  body.layout-standard .product.no-description:not(.has-product-image):not(:has(.catalog-options-toggle)) > .product-action-row{
    display:none!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
  body.layout-standard .product.no-description:not(.has-product-image):not(:has(.catalog-options-toggle)) .product-title-line{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    width:100%!important;
  }
}
/* v1.0.71 - quando il carrello non è visibile il torna-su resta in basso a destra */
body.mode-catalog .back-top,
body:not(:has(#cart)) .back-top{
  right:18px!important;
  left:auto!important;
  bottom:18px!important;
}
@media(max-width:680px){
  body.mode-catalog .back-top,
  body:not(:has(#cart)) .back-top{
    right:16px!important;
    left:auto!important;
    bottom:16px!important;
  }
}

/* v1.0.72 - Standard tablet/mobile: prezzo sempre nella riga inferiore se c'è foto o descrizione */
@media (max-width: 980px){
  body.layout-standard .product.has-product-image,
  body.layout-standard .product.has-description{
    align-items:start!important;
    row-gap:10px!important;
  }
  body.layout-standard .product.has-product-image > .p-info,
  body.layout-standard .product.has-description > .p-info{
    grid-column:1!important;
    min-width:0!important;
  }
  body.layout-standard .product.has-product-image > img{
    grid-column:2!important;
    grid-row:auto!important;
    align-self:start!important;
  }
  body.layout-standard .product.has-product-image .product-inline-price,
  body.layout-standard .product.has-description .product-inline-price{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    grid-column:1 / -1!important;
    grid-row:auto!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    margin-top:6px!important;
    padding-top:12px!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
    min-height:0!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .product-button-slot:empty,
  body.layout-standard .product.has-description > .product-action-row .product-button-slot:empty{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price,
  body.layout-standard .product.has-description > .product-action-row .price,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right,
  body.layout-standard .product.has-description > .product-action-row .product-price-right{
    margin-left:auto!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    text-align:right!important;
    white-space:nowrap!important;
    min-width:max-content!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price strong,
  body.layout-standard .product.has-description > .product-action-row .price strong,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right strong,
  body.layout-standard .product.has-description > .product-action-row .product-price-right strong{
    font-size:clamp(22px,4vw,30px)!important;
    line-height:1.05!important;
  }
  body.layout-standard .product.has-product-image .p-info p,
  body.layout-standard .product.has-description .p-info p{
    margin-bottom:4px!important;
  }
}
@media (max-width: 680px){
  body.layout-standard .product.has-product-image,
  body.layout-standard .product.has-description{
    row-gap:8px!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    margin-top:4px!important;
    padding-top:10px!important;
  }
}


/* v1.0.73 - Standard: se c'è foto o descrizione il prezzo non sta mai in linea su tablet/mobile */
@media (max-width:1180px){
  body.layout-standard .product.has-product-image .product-inline-price,
  body.layout-standard .product.has-description .product-inline-price{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    grid-column:1 / -1!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    margin-top:2px!important;
    padding-top:10px!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
    min-height:0!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .product-button-slot:empty,
  body.layout-standard .product.has-description > .product-action-row .product-button-slot:empty{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price,
  body.layout-standard .product.has-description > .product-action-row .price,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right,
  body.layout-standard .product.has-description > .product-action-row .product-price-right{
    margin-left:auto!important;
    width:auto!important;
    min-width:max-content!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price strong,
  body.layout-standard .product.has-description > .product-action-row .price strong,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right strong,
  body.layout-standard .product.has-description > .product-action-row .product-price-right strong,
  body.layout-standard .info-card-price,
  body.layout-standard .cover-charge-info .info-card-price,
  body.layout-standard .cover-charge-info strong.info-card-price{
    font-size:clamp(22px,4vw,30px)!important;
    line-height:1.05!important;
  }
  body.layout-standard .product.has-product-image,
  body.layout-standard .product.has-description{
    row-gap:6px!important;
  }
  body.layout-standard .product.has-product-image .p-info p,
  body.layout-standard .product.has-description .p-info p{
    margin-bottom:0!important;
  }
}
@media (max-width:680px){
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    margin-top:0!important;
    padding-top:9px!important;
  }
  body.layout-standard .product.has-product-image,
  body.layout-standard .product.has-description{
    row-gap:5px!important;
  }
}


/* v1.0.74 - Standard tablet/mobile: prezzo sotto se esiste foto o descrizione, icone vicino al titolo */
@media (max-width:1180px){
  body.layout-standard .product.has-product-image,
  body.layout-standard .product.has-description{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(96px,128px)!important;
    grid-auto-rows:auto!important;
    column-gap:14px!important;
    row-gap:8px!important;
    align-items:start!important;
    overflow:hidden!important;
  }
  body.layout-standard .product.has-product-image > .product-badges-standard-row,
  body.layout-standard .product.has-description > .product-badges-standard-row{
    grid-column:1 / -1!important;
  }
  body.layout-standard .product.has-product-image > .p-info,
  body.layout-standard .product.has-description > .p-info{
    grid-column:1!important;
    grid-row:auto!important;
    min-width:0!important;
  }
  body.layout-standard .product.has-product-image > img{
    grid-column:2!important;
    grid-row:auto!important;
    align-self:start!important;
    justify-self:end!important;
  }
  body.layout-standard .product.has-product-image .product-title-line,
  body.layout-standard .product.has-description .product-title-line{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    width:100%!important;
  }
  body.layout-standard .product.has-product-image .product-title-line > span:first-child,
  body.layout-standard .product.has-description .product-title-line > span:first-child{
    flex:0 1 auto!important;
    min-width:0!important;
  }
  body.layout-standard .product.has-product-image .product-feature-icons,
  body.layout-standard .product.has-description .product-feature-icons{
    margin-left:0!important;
    margin-right:0!important;
    flex:0 0 auto!important;
    display:inline-flex!important;
    justify-content:flex-start!important;
  }
  body.layout-standard .product.has-product-image .product-inline-price,
  body.layout-standard .product.has-description .product-inline-price{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    position:static!important;
    grid-column:1 / -1!important;
    grid-row:auto!important;
    order:50!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:4px 0 0!important;
    padding:10px 0 0!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .product-button-slot:empty,
  body.layout-standard .product.has-description > .product-action-row .product-button-slot:empty{
    display:none!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price,
  body.layout-standard .product.has-description > .product-action-row .price,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right,
  body.layout-standard .product.has-description > .product-action-row .product-price-right{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    align-items:center!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row .price strong,
  body.layout-standard .product.has-description > .product-action-row .price strong,
  body.layout-standard .product.has-product-image > .product-action-row .product-price-right strong,
  body.layout-standard .product.has-description > .product-action-row .product-price-right strong,
  body.layout-standard .info-card-price,
  body.layout-standard .cover-charge-info .info-card-price,
  body.layout-standard .cover-charge-info strong.info-card-price{
    display:inline!important;
    font-size:clamp(22px,4vw,30px)!important;
    line-height:1.05!important;
  }
  body.layout-standard .product.has-product-image .p-info p,
  body.layout-standard .product.has-description .p-info p{
    margin-bottom:0!important;
  }
}
@media (max-width:680px){
  body.layout-standard .product.has-product-image,
  body.layout-standard .product.has-description{
    grid-template-columns:minmax(0,1fr) 112px!important;
    column-gap:12px!important;
    row-gap:6px!important;
  }
  body.layout-standard .product.has-product-image > .product-action-row,
  body.layout-standard .product.has-description > .product-action-row{
    margin-top:2px!important;
    padding-top:9px!important;
  }
}

/* v1.0.75 - FIX REALE Standard catalogo/mobile: foto senza descrizione = prezzo sotto; icone vicino titolo */
@media (max-width:1180px){
  body.layout-standard .product.has-product-image.no-description{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(96px,128px)!important;
    grid-auto-rows:auto!important;
    column-gap:14px!important;
    row-gap:8px!important;
    align-items:start!important;
  }
  body.layout-standard .product.has-product-image.no-description > .product-badges-standard-row{grid-column:1 / -1!important;}
  body.layout-standard .product.has-product-image.no-description > .p-info{grid-column:1!important;grid-row:auto!important;min-width:0!important;}
  body.layout-standard .product.has-product-image.no-description > img{grid-column:2!important;grid-row:auto!important;align-self:start!important;justify-self:end!important;}

  /* Il prezzo NON deve stare nel titolo se c'è una foto */
  body.layout-standard .product.has-product-image.no-description .product-inline-price{display:none!important;}

  /* Forza la riga prezzo anche in catalogo: annulla le vecchie regole che nascondevano product-action-row sui no-description */
  body.layout-standard.mode-catalog .product.has-product-image.no-description:not(:has(.catalog-options-toggle)) > .product-action-row,
  body.layout-standard .product.has-product-image.no-description > .product-action-row{
    position:static!important;
    grid-column:1 / -1!important;
    grid-row:auto!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:4px 0 0!important;
    padding:10px 0 0!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image.no-description:not(:has(.catalog-options-toggle)) > .product-action-row .product-button-slot,
  body.layout-standard .product.has-product-image.no-description > .product-action-row .product-button-slot:empty{display:none!important;}
  body.layout-standard .product.has-product-image.no-description > .product-action-row .price,
  body.layout-standard .product.has-product-image.no-description > .product-action-row .product-price-right{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    align-items:center!important;
    justify-content:flex-end!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  body.layout-standard .product.has-product-image.no-description > .product-action-row .price strong,
  body.layout-standard .product.has-product-image.no-description > .product-action-row .product-price-right strong{
    display:inline!important;
    font-size:clamp(22px,4vw,30px)!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }

  /* Icone caratteristiche subito dopo il titolo, mai spinte verso la foto */
  body.layout-standard .product.has-product-image.no-description .product-title-line{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    width:100%!important;
  }
  body.layout-standard .product.has-product-image.no-description .product-title-line > span:first-child{
    flex:0 1 auto!important;
    min-width:0!important;
  }
  body.layout-standard .product.has-product-image.no-description .product-feature-icons{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    flex:0 0 auto!important;
    margin-left:0!important;
    margin-right:0!important;
  }
}
@media (max-width:680px){
  body.layout-standard .product.has-product-image.no-description{
    grid-template-columns:minmax(0,1fr) 112px!important;
    column-gap:12px!important;
    row-gap:6px!important;
  }
  body.layout-standard .product.has-product-image.no-description > .product-action-row{
    margin-top:2px!important;
    padding-top:9px!important;
  }
}

/* v1.0.76 - Standard: icone caratteristiche vicine al titolo quando prodotto ha foto ma non descrizione */
body.layout-standard .product.has-product-image.no-description .p-info{
  min-width:0!important;
}
body.layout-standard .product.has-product-image.no-description .product-title-line{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  width:auto!important;
  max-width:100%!important;
  margin-right:0!important;
}
body.layout-standard .product.has-product-image.no-description .product-title-line > span:first-child{
  flex:0 1 auto!important;
  min-width:0!important;
  max-width:100%!important;
}
body.layout-standard .product.has-product-image.no-description .product-feature-icons{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  flex:0 0 auto!important;
  margin-left:0!important;
  margin-right:0!important;
  width:auto!important;
  max-width:max-content!important;
  align-self:center!important;
}
@media(max-width:1180px){
  body.layout-standard .product.has-product-image.no-description .product-title-line{
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    justify-content:flex-start!important;
  }
  body.layout-standard .product.has-product-image.no-description .product-feature-icons{
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* v1.0.77 - Standard/catalogo: icone caratteristiche sempre attaccate al titolo quando c'è foto ma non descrizione */
@media (max-width:1180px){
  body.layout-standard.mode-catalog .product.has-product-image.no-description:not(:has(.catalog-options-toggle)) .product-title-line,
  body.layout-standard .product.has-product-image.no-description .product-title-line{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    width:max-content!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image.no-description:not(:has(.catalog-options-toggle)) .product-title-line > span:first-child,
  body.layout-standard .product.has-product-image.no-description .product-title-line > span:first-child{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    display:inline!important;
  }
  body.layout-standard.mode-catalog .product.has-product-image.no-description:not(:has(.catalog-options-toggle)) .product-feature-icons,
  body.layout-standard .product.has-product-image.no-description .product-feature-icons{
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:max-content!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
  }
}

/* v1.0.78 - indicazioni min/max gruppi opzioni e stato scelta */
.option-rule-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:10px 0 12px;
  padding:10px 12px;
  border:1px solid var(--line,#e5e7eb);
  border-radius:14px;
  background:rgba(17,24,39,.035);
  color:var(--muted,#6b7280);
  font-weight:800;
  font-size:clamp(13px,2.6vw,15px);
}
.option-rule-status{
  flex:0 0 auto;
  min-width:82px;
  text-align:center;
  padding:6px 10px;
  border-radius:999px;
  background:#fff7ed;
  color:#c2410c;
  border:1px solid #fed7aa;
  font-size:.92em;
}
.option-rule-status.ok{
  background:#ecfdf5;
  color:#047857;
  border-color:#bbf7d0;
}
.option-rule-status.warn{
  background:#fff7ed;
  color:#c2410c;
  border-color:#fed7aa;
}
.option-choice input:disabled + span,
.option-choice input:disabled ~ span{
  opacity:.55;
}
.option-qty button:disabled{
  opacity:.45;
  cursor:not-allowed;
}
@media(max-width:520px){
  .option-rule-note{align-items:flex-start;flex-direction:column;}
  .option-rule-status{min-width:0;}
}

/* v1.0.79 - nasconde indicazioni inutili per gruppi con una sola scelta obbligatoria e rimuove lo stato testuale OK */
.option-rule-status:empty{display:none!important;}


/* v1.0.80 - prezzo solo titolo + feedback aggiunta carrello */
body.layout-standard.mode-catalog .product.product-only-title .product-inline-price,
body.mode-catalog .product.product-only-title .product-inline-price{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  margin-left:auto!important;
  white-space:nowrap!important;
}
body.layout-standard.mode-catalog .product.product-only-title > .product-action-row,
body.mode-catalog .product.product-only-title > .product-action-row{
  display:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}
body.layout-standard.mode-catalog .product.product-only-title .product-title-line,
body.mode-catalog .product.product-only-title .product-title-line{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  width:100%!important;
}
body.layout-standard.mode-catalog .product.product-only-title .product-inline-price strong,
body.mode-catalog .product.product-only-title .product-inline-price strong{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}
.md-cart-toast{
  position:fixed!important;
  right:18px!important;
  bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;
  z-index:99998!important;
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  min-width:min(320px,calc(100vw - 36px))!important;
  max-width:calc(100vw - 36px)!important;
  padding:14px 16px!important;
  border-radius:calc(var(--radius) * .72)!important;
  background:color-mix(in srgb,var(--cart-panel-bg,var(--card)) 92%,var(--button) 8%)!important;
  color:var(--cart-text,var(--text))!important;
  border:1px solid color-mix(in srgb,var(--button) 32%,transparent)!important;
  box-shadow:0 18px 45px rgba(15,23,42,.18)!important;
  transform:translateY(18px) scale(.98)!important;
  opacity:0!important;
  pointer-events:none!important;
  transition:opacity .22s ease,transform .22s ease!important;
}
.md-cart-toast.show{opacity:1!important;transform:translateY(0) scale(1)!important;}
.md-cart-toast strong{font-weight:950!important;font-size:15px!important;line-height:1.15!important;color:var(--button,var(--primary))!important;}
.md-cart-toast span{font-size:14px!important;line-height:1.25!important;color:var(--cart-muted,var(--muted))!important;}
.cart-fab.md-cart-bump{animation:mdCartBump .62s cubic-bezier(.2,.9,.2,1)!important;}
.cart-fab.md-cart-bump .cart-fab-count{animation:mdCartCountPulse .62s cubic-bezier(.2,.9,.2,1)!important;}
@keyframes mdCartBump{0%{transform:scale(1)}35%{transform:scale(1.08)}70%{transform:scale(.98)}100%{transform:scale(1)}}
@keyframes mdCartCountPulse{0%{transform:scale(1)}35%{transform:scale(1.28)}100%{transform:scale(1)}}
@media(max-width:680px){
  .md-cart-toast{left:14px!important;right:14px!important;bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;min-width:0!important;max-width:none!important;}
}

/* v1.0.81 - Standard carrello attivo: prodotti solo titolo con riga aggiungi/prezzo e icone vicine al titolo */
@media (max-width:1180px){
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image){
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-rows:auto!important;
    row-gap:8px!important;
    align-items:start!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) .product-inline-price{
    display:none!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) .product-title-line{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    flex-wrap:wrap!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) .product-title-line > span:first-child{
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) .product-feature-icons,
  body.layout-standard .product.product-only-title .product-feature-icons{
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:6px!important;
    flex:0 0 auto!important;
    width:auto!important;
    max-width:max-content!important;
    margin:0!important;
    transform:none!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row{
    grid-column:1 / -1!important;
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    margin:6px 0 0!important;
    padding:10px 0 0!important;
    border-top:1px solid color-mix(in srgb,var(--muted) 22%,transparent)!important;
    min-height:0!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row .product-button-slot{
    display:flex!important;
    flex:0 1 auto!important;
    min-width:0!important;
    max-width:calc(100% - 120px)!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row .add{
    width:auto!important;
    min-width:clamp(148px,42vw,190px)!important;
    max-width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row .price,
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row .product-price-right{
    display:flex!important;
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    margin-left:auto!important;
    justify-content:flex-end!important;
    align-items:center!important;
    text-align:right!important;
    white-space:nowrap!important;
  }
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row .price strong,
  body.layout-standard:not(.mode-catalog) .product.no-description:not(.has-product-image) > .product-action-row .product-price-right strong{
    font-size:clamp(22px,4vw,30px)!important;
    line-height:1.05!important;
  }
}

/* v1.0.82 - Lista rapida: testi più piccoli, prezzo primario, opzioni catalogo visibili/minimali */
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2,
body.layout-quick_list .category-hero-card h2,
body.layout-quick_list .category-featured .category-hero-card h2,
body.layout-quick_list .featured-category-card h2{
  font-size:clamp(30px,4.2vw,52px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
body.layout-compact .category-hero-card p,
body.layout-compact .category-featured .category-hero-card p,
body.layout-compact .featured-category-card p,
body.layout-quick_list .category-hero-card p,
body.layout-quick_list .category-featured .category-hero-card p,
body.layout-quick_list .featured-category-card p{
  font-size:clamp(12px,1.4vw,15px)!important;
  line-height:1.25!important;
}
@media(max-width:680px){
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2,
  body.layout-quick_list .category-hero-card h2,
  body.layout-quick_list .category-featured .category-hero-card h2,
  body.layout-quick_list .featured-category-card h2{
    font-size:clamp(28px,8.8vw,42px)!important;
  }
}
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-inline-price strong,
body.layout-compact .price strong,
body.layout-quick_list .product-action-row .price strong,
body.layout-quick_list .product-inline-price strong,
body.layout-quick_list .price strong{
  color:var(--primary)!important;
}
body.layout-compact.mode-catalog .product .catalog-options-toggle,
body.layout-compact.mode-catalog .product .product-button-slot:has(.catalog-options-toggle),
body.layout-quick_list.mode-catalog .product .catalog-options-toggle,
body.layout-quick_list.mode-catalog .product .product-button-slot:has(.catalog-options-toggle){
  display:none!important;
}
body.layout-compact.mode-catalog .product .catalog-options,
body.layout-quick_list.mode-catalog .product .catalog-options{
  grid-column:1 / -1!important;
  grid-row:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  width:100%!important;
  margin:2px 0 0!important;
  padding:7px 0 0!important;
  border-top:1px solid color-mix(in srgb,var(--line) 70%,transparent)!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.layout-compact.mode-catalog .product .catalog-option-group,
body.layout-quick_list.mode-catalog .product .catalog-option-group{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.layout-compact.mode-catalog .product .catalog-option-head,
body.layout-quick_list.mode-catalog .product .catalog-option-head{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
  margin:0!important;
}
body.layout-compact.mode-catalog .product .catalog-option-head strong,
body.layout-quick_list.mode-catalog .product .catalog-option-head strong{
  font-size:11px!important;
  line-height:1!important;
  font-weight:950!important;
  color:var(--muted)!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
body.layout-compact.mode-catalog .product .catalog-option-rule,
body.layout-quick_list.mode-catalog .product .catalog-option-rule{
  font-size:9px!important;
  line-height:1!important;
  padding:3px 5px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--primary) 8%,transparent)!important;
  color:var(--primary)!important;
  border:1px solid color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
body.layout-compact.mode-catalog .product .catalog-option-list,
body.layout-quick_list.mode-catalog .product .catalog-option-list{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  flex-wrap:wrap!important;
  min-width:0!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip,
body.layout-quick_list.mode-catalog .product .catalog-option-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-height:0!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--primary) 6%,var(--card) 94%)!important;
  border:1px solid color-mix(in srgb,var(--primary) 13%,transparent)!important;
  color:var(--text)!important;
  font-size:11px!important;
  line-height:1.05!important;
  font-weight:800!important;
  box-shadow:none!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip em,
body.layout-quick_list.mode-catalog .product .catalog-option-chip em{
  font-size:10px!important;
  font-style:normal!important;
  font-weight:900!important;
  color:var(--primary)!important;
}
@media(max-width:680px){
  body.layout-compact.mode-catalog .product .catalog-options,
  body.layout-quick_list.mode-catalog .product .catalog-options{
    gap:5px!important;
    padding-top:6px!important;
  }
  body.layout-compact.mode-catalog .product .catalog-option-group,
  body.layout-quick_list.mode-catalog .product .catalog-option-group{
    gap:6px!important;
  }
  body.layout-compact.mode-catalog .product .catalog-option-chip,
  body.layout-quick_list.mode-catalog .product .catalog-option-chip{
    font-size:10px!important;
    padding:4px 6px!important;
  }
}


/* v1.0.83 - Lista Rapida catalogo: nasconde gruppi consiglio e mostra opzioni normali in card minimale */
body.layout-compact.mode-catalog .product .catalog-options,
body.layout-quick_list.mode-catalog .product .catalog-options{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
  margin:8px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.layout-compact.mode-catalog .product .catalog-option-group,
body.layout-quick_list.mode-catalog .product .catalog-option-group{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding:10px 12px!important;
  margin:0!important;
  border:1px solid color-mix(in srgb,var(--muted) 18%,transparent)!important;
  border-radius:16px!important;
  background:color-mix(in srgb,var(--card) 96%,var(--bg) 4%)!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--muted) 8%,transparent)!important;
}
body.layout-compact.mode-catalog .product .catalog-option-head,
body.layout-quick_list.mode-catalog .product .catalog-option-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  width:100%!important;
  margin:0 0 8px!important;
}
body.layout-compact.mode-catalog .product .catalog-option-head strong,
body.layout-quick_list.mode-catalog .product .catalog-option-head strong{
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:950!important;
  color:var(--muted)!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.layout-compact.mode-catalog .product .catalog-option-rule,
body.layout-quick_list.mode-catalog .product .catalog-option-rule{
  flex:0 0 auto!important;
  font-size:9px!important;
  line-height:1!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--muted) 7%,transparent)!important;
  color:var(--muted)!important;
  border:1px solid color-mix(in srgb,var(--muted) 18%,transparent)!important;
}
body.layout-compact.mode-catalog .product .catalog-option-list,
body.layout-quick_list.mode-catalog .product .catalog-option-list{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip,
body.layout-quick_list.mode-catalog .product .catalog-option-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:26px!important;
  max-width:100%!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--bg) 55%,var(--card) 45%)!important;
  border:1px solid color-mix(in srgb,var(--muted) 16%,transparent)!important;
  color:var(--text)!important;
  font-size:11px!important;
  line-height:1.1!important;
  font-weight:850!important;
  box-shadow:none!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip span,
body.layout-quick_list.mode-catalog .product .catalog-option-chip span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip em,
body.layout-quick_list.mode-catalog .product .catalog-option-chip em{
  flex:0 0 auto!important;
  font-size:10px!important;
  font-style:normal!important;
  font-weight:950!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
@media(max-width:680px){
  body.layout-compact.mode-catalog .product .catalog-option-group,
  body.layout-quick_list.mode-catalog .product .catalog-option-group{padding:9px 10px!important;border-radius:14px!important;}
  body.layout-compact.mode-catalog .product .catalog-option-head,
  body.layout-quick_list.mode-catalog .product .catalog-option-head{margin-bottom:7px!important;}
  body.layout-compact.mode-catalog .product .catalog-option-head strong,
  body.layout-quick_list.mode-catalog .product .catalog-option-head strong{font-size:11px!important;}
  body.layout-compact.mode-catalog .product .catalog-option-chip,
  body.layout-quick_list.mode-catalog .product .catalog-option-chip{font-size:10.5px!important;padding:5px 7px!important;}
}


/* v1.0.84 - Lista Rapida: prezzo uniforme e consigli come card opzioni minimal in catalogo */
body.layout-compact .product .price strong,
body.layout-compact .product .product-action-row .price strong,
body.layout-compact .product .product-inline-price strong,
body.layout-quick_list .product .price strong,
body.layout-quick_list .product .product-action-row .price strong,
body.layout-quick_list .product .product-inline-price strong{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  color:var(--primary)!important;
  font-weight:950!important;
}
body.layout-compact.mode-catalog .product .product-advice-card,
body.layout-quick_list.mode-catalog .product .product-advice-card{
  display:none!important;
}
body.layout-compact.mode-catalog .product .catalog-options,
body.layout-quick_list.mode-catalog .product .catalog-options{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  margin:12px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.layout-compact.mode-catalog .product .catalog-option-group,
body.layout-quick_list.mode-catalog .product .catalog-option-group{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding:12px 14px!important;
  margin:0!important;
  border:1px solid color-mix(in srgb,var(--line) 72%,var(--muted) 16%)!important;
  border-radius:18px!important;
  background:color-mix(in srgb,var(--card) 96%,var(--bg) 4%)!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--muted) 7%,transparent)!important;
}
body.layout-compact.mode-catalog .product .catalog-option-head,
body.layout-quick_list.mode-catalog .product .catalog-option-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  width:100%!important;
  margin:0 0 8px!important;
  padding:0!important;
}
body.layout-compact.mode-catalog .product .catalog-option-head strong,
body.layout-quick_list.mode-catalog .product .catalog-option-head strong{
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:950!important;
  color:var(--muted)!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
body.layout-compact.mode-catalog .product .catalog-option-rule,
body.layout-quick_list.mode-catalog .product .catalog-option-rule{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  font-size:9px!important;
  line-height:1!important;
  padding:4px 7px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--bg) 60%,var(--card) 40%)!important;
  color:var(--muted)!important;
  border:1px solid color-mix(in srgb,var(--muted) 20%,transparent)!important;
}
body.layout-compact.mode-catalog .product .catalog-option-list,
body.layout-quick_list.mode-catalog .product .catalog-option-list{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip,
body.layout-quick_list.mode-catalog .product .catalog-option-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  max-width:100%!important;
  min-height:28px!important;
  padding:6px 9px!important;
  border-radius:999px!important;
  background:color-mix(in srgb,var(--bg) 62%,var(--card) 38%)!important;
  border:1px solid color-mix(in srgb,var(--muted) 18%,transparent)!important;
  color:var(--text)!important;
  font-size:11.5px!important;
  line-height:1.1!important;
  font-weight:850!important;
  box-shadow:none!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip span,
body.layout-quick_list.mode-catalog .product .catalog-option-chip span{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.layout-compact.mode-catalog .product .catalog-option-chip em,
body.layout-quick_list.mode-catalog .product .catalog-option-chip em{
  flex:0 0 auto!important;
  font-size:10.5px!important;
  font-style:normal!important;
  font-weight:950!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
@media(max-width:680px){
  body.layout-compact.mode-catalog .product .catalog-options,
  body.layout-quick_list.mode-catalog .product .catalog-options{
    gap:8px!important;
    margin-top:10px!important;
  }
  body.layout-compact.mode-catalog .product .catalog-option-group,
  body.layout-quick_list.mode-catalog .product .catalog-option-group{
    padding:10px 11px!important;
    border-radius:15px!important;
  }
  body.layout-compact.mode-catalog .product .catalog-option-head,
  body.layout-quick_list.mode-catalog .product .catalog-option-head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:5px!important;
    margin-bottom:7px!important;
  }
  body.layout-compact.mode-catalog .product .catalog-option-head strong,
  body.layout-quick_list.mode-catalog .product .catalog-option-head strong{font-size:11px!important;}
  body.layout-compact.mode-catalog .product .catalog-option-chip,
  body.layout-quick_list.mode-catalog .product .catalog-option-chip{font-size:10.5px!important;padding:5px 7px!important;}
}

/* v1.0.85 - Lista Rapida: categorie più piccole e prezzi uniformi */
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2,
body.layout-compact .category-with-color .category-hero-card h2,
body.layout-compact .category-with-image .category-hero-card h2,
body.layout-compact .cat-title h2{
  font-size:18px!important;
  line-height:1.12!important;
  letter-spacing:-.02em!important;
}
body.layout-compact .category-hero-card p,
body.layout-compact .category-featured .category-hero-card p,
body.layout-compact .featured-category-card p{
  font-size:11px!important;
  line-height:1.25!important;
}
body.layout-compact .category-hero-card,
body.layout-compact .category-featured .category-hero-card,
body.layout-compact .featured-category-card{
  min-height:0!important;
  padding:9px 12px!important;
}
body.layout-compact .category-hero-content,
body.layout-compact .category-featured .category-hero-content,
body.layout-compact .featured-category-card .category-hero-content{
  padding:7px 10px!important;
}
body.layout-compact .product .price strong,
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-inline-price strong,
body.layout-compact .product-price-right strong,
body.layout-compact .info-card-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
}
body.layout-compact .product-inline-price{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  margin-left:auto!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
body.layout-compact .product-title-line{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px 10px!important;
  width:100%!important;
}
body.layout-compact .product-title-line > span:first-child{
  min-width:0!important;
}
body.layout-compact .product-title-line .product-feature-icons{
  margin-left:0!important;
  margin-right:0!important;
}
body.layout-compact .product .price del,
body.layout-compact .product-action-row .price del,
body.layout-compact .product-inline-price del{
  font-size:0.72em!important;
  color:var(--muted)!important;
}
@media(max-width:680px){
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2,
  body.layout-compact .cat-title h2{
    font-size:17px!important;
  }
  body.layout-compact .product .price strong,
  body.layout-compact .product-action-row .price strong,
  body.layout-compact .product-inline-price strong,
  body.layout-compact .product-price-right strong,
  body.layout-compact .info-card-price{
    font-size:clamp(22px,6vw,30px)!important;
  }
}

/* v1.0.86 - Lista Rapida: titoli categoria bilanciati e prezzo realmente uniforme */
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2,
body.layout-compact .category-with-color .category-hero-card h2,
body.layout-compact .category-with-image .category-hero-card h2,
body.layout-compact .cat-title h2,
body.layout-quick_list .category-hero-card h2,
body.layout-quick_list .category-featured .category-hero-card h2,
body.layout-quick_list .featured-category-card h2,
body.layout-quick_list .category-with-color .category-hero-card h2,
body.layout-quick_list .category-with-image .category-hero-card h2,
body.layout-quick_list .cat-title h2{
  font-size:clamp(24px,3.2vw,34px)!important;
  line-height:1.05!important;
  letter-spacing:-.025em!important;
  font-weight:950!important;
}
body.layout-compact .category-hero-content,
body.layout-compact .category-featured .category-hero-content,
body.layout-compact .featured-category-card .category-hero-content,
body.layout-quick_list .category-hero-content,
body.layout-quick_list .category-featured .category-hero-content,
body.layout-quick_list .featured-category-card .category-hero-content{
  padding:12px 14px!important;
}
body.layout-compact .category-hero-card,
body.layout-compact .category-featured .category-hero-card,
body.layout-compact .featured-category-card,
body.layout-quick_list .category-hero-card,
body.layout-quick_list .category-featured .category-hero-card,
body.layout-quick_list .featured-category-card{
  min-height:0!important;
  padding:12px 14px!important;
}
body.layout-compact .product .price,
body.layout-compact .product-action-row .price,
body.layout-compact .product-price-right,
body.layout-compact .product-inline-price,
body.layout-quick_list .product .price,
body.layout-quick_list .product-action-row .price,
body.layout-quick_list .product-price-right,
body.layout-quick_list .product-inline-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  color:var(--primary)!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}
body.layout-compact .product .price strong,
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-price-right strong,
body.layout-compact .product-inline-price strong,
body.layout-compact .info-card-price,
body.layout-quick_list .product .price strong,
body.layout-quick_list .product-action-row .price strong,
body.layout-quick_list .product-price-right strong,
body.layout-quick_list .product-inline-price strong,
body.layout-quick_list .info-card-price{
  font-size:1em!important;
  line-height:1!important;
  color:var(--primary)!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}
body.layout-compact .product-inline-price,
body.layout-quick_list .product-inline-price{
  align-self:flex-start!important;
  white-space:nowrap!important;
}
@media(max-width:680px){
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2,
  body.layout-compact .cat-title h2,
  body.layout-quick_list .category-hero-card h2,
  body.layout-quick_list .category-featured .category-hero-card h2,
  body.layout-quick_list .featured-category-card h2,
  body.layout-quick_list .cat-title h2{
    font-size:clamp(24px,7.2vw,32px)!important;
  }
  body.layout-compact .product .price,
  body.layout-compact .product-action-row .price,
  body.layout-compact .product-price-right,
  body.layout-compact .product-inline-price,
  body.layout-quick_list .product .price,
  body.layout-quick_list .product-action-row .price,
  body.layout-quick_list .product-price-right,
  body.layout-quick_list .product-inline-price{
    font-size:clamp(22px,4vw,30px)!important;
  }
}

/* v1.0.87 - Lista Rapida: titoli sezione/categoria e prezzi realmente uniformi */
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2,
body.layout-compact .category-with-color .category-hero-card h2,
body.layout-compact .category-with-image .category-hero-card h2,
body.layout-compact .cat-title h2,
body.layout-quick_list .category-hero-card h2,
body.layout-quick_list .category-featured .category-hero-card h2,
body.layout-quick_list .featured-category-card h2,
body.layout-quick_list .category-with-color .category-hero-card h2,
body.layout-quick_list .category-with-image .category-hero-card h2,
body.layout-quick_list .cat-title h2{
  font-size:clamp(32px,7vw,44px)!important;
  line-height:1.02!important;
  font-weight:950!important;
  letter-spacing:-.045em!important;
}

/* Stessa dimensione prezzo in tutte le varianti della card Lista Rapida, anche quando il prezzo è dentro h3 */
body.layout-compact .product .price,
body.layout-compact .product .price strong,
body.layout-compact .product-action-row .price,
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-price-right,
body.layout-compact .product-price-right strong,
body.layout-compact .product-inline-price,
body.layout-compact .product-inline-price strong,
body.layout-compact .cover-charge-card .price,
body.layout-compact .cover-charge-card .price strong,
body.layout-compact .cover-charge-card .info-card-price,
body.layout-quick_list .product .price,
body.layout-quick_list .product .price strong,
body.layout-quick_list .product-action-row .price,
body.layout-quick_list .product-action-row .price strong,
body.layout-quick_list .product-price-right,
body.layout-quick_list .product-price-right strong,
body.layout-quick_list .product-inline-price,
body.layout-quick_list .product-inline-price strong,
body.layout-quick_list .cover-charge-card .price,
body.layout-quick_list .cover-charge-card .price strong,
body.layout-quick_list .cover-charge-card .info-card-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
}

body.layout-compact .product h3 .product-inline-price,
body.layout-compact .product h3 .product-inline-price strong,
body.layout-quick_list .product h3 .product-inline-price,
body.layout-quick_list .product h3 .product-inline-price strong{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
}

@media(max-width:680px){
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2,
  body.layout-compact .category-with-color .category-hero-card h2,
  body.layout-compact .category-with-image .category-hero-card h2,
  body.layout-compact .cat-title h2,
  body.layout-quick_list .category-hero-card h2,
  body.layout-quick_list .category-featured .category-hero-card h2,
  body.layout-quick_list .featured-category-card h2,
  body.layout-quick_list .category-with-color .category-hero-card h2,
  body.layout-quick_list .category-with-image .category-hero-card h2,
  body.layout-quick_list .cat-title h2{
    font-size:clamp(30px,8.6vw,40px)!important;
  }
}

/* v1.0.88 - Lista Rapida: allineamento prezzo mobile definitivo e titoli categoria/evidenza uniformi */
body.layout-compact .category-hero-card h2,
body.layout-compact .category-featured .category-hero-card h2,
body.layout-compact .featured-category-card h2,
body.layout-compact .category-with-color .category-hero-card h2,
body.layout-compact .category-with-image .category-hero-card h2,
body.layout-compact .cat-title h2,
body.layout-quick_list .category-hero-card h2,
body.layout-quick_list .category-featured .category-hero-card h2,
body.layout-quick_list .featured-category-card h2,
body.layout-quick_list .category-with-color .category-hero-card h2,
body.layout-quick_list .category-with-image .category-hero-card h2,
body.layout-quick_list .cat-title h2{
  font-size:clamp(30px,6.2vw,42px)!important;
  line-height:1.04!important;
  font-weight:950!important;
  letter-spacing:-.04em!important;
}

/* Prezzo Lista Rapida: stessa misura reale, anche quando è dentro il titolo */
body.layout-compact .product .product-title-line,
body.layout-quick_list .product .product-title-line{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  align-items:flex-start!important;
  column-gap:14px!important;
  width:100%!important;
}
body.layout-compact .product .product-title-line > span:first-child,
body.layout-quick_list .product .product-title-line > span:first-child{
  grid-column:1!important;
  min-width:0!important;
}
body.layout-compact .product .product-title-line .product-feature-icons,
body.layout-quick_list .product .product-title-line .product-feature-icons{
  grid-column:1!important;
  margin-left:0!important;
  margin-right:0!important;
  justify-self:start!important;
}
body.layout-compact .product .product-title-line .product-inline-price,
body.layout-quick_list .product .product-title-line .product-inline-price{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:flex-start!important;
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  width:auto!important;
  min-width:max-content!important;
  margin:0!important;
  padding:0!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
}
body.layout-compact .product .product-title-line .product-inline-price strong,
body.layout-compact .product .product-title-line .product-inline-price del,
body.layout-quick_list .product .product-title-line .product-inline-price strong,
body.layout-quick_list .product .product-title-line .product-inline-price del{
  font-size:1em!important;
  line-height:1!important;
}
body.layout-compact .product .product-title-line .product-inline-price del,
body.layout-quick_list .product .product-title-line .product-inline-price del{
  font-size:.72em!important;
  color:var(--muted)!important;
}
body.layout-compact .product .price,
body.layout-compact .product .price strong,
body.layout-compact .product-action-row .price,
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-price-right,
body.layout-compact .product-price-right strong,
body.layout-compact .cover-charge-card .price,
body.layout-compact .cover-charge-card .price strong,
body.layout-compact .cover-charge-card .info-card-price,
body.layout-quick_list .product .price,
body.layout-quick_list .product .price strong,
body.layout-quick_list .product-action-row .price,
body.layout-quick_list .product-action-row .price strong,
body.layout-quick_list .product-price-right,
body.layout-quick_list .product-price-right strong,
body.layout-quick_list .cover-charge-card .price,
body.layout-quick_list .cover-charge-card .price strong,
body.layout-quick_list .cover-charge-card .info-card-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
}

@media(max-width:680px){
  body.layout-compact .category-hero-card h2,
  body.layout-compact .category-featured .category-hero-card h2,
  body.layout-compact .featured-category-card h2,
  body.layout-compact .category-with-color .category-hero-card h2,
  body.layout-compact .category-with-image .category-hero-card h2,
  body.layout-compact .cat-title h2,
  body.layout-quick_list .category-hero-card h2,
  body.layout-quick_list .category-featured .category-hero-card h2,
  body.layout-quick_list .featured-category-card h2,
  body.layout-quick_list .category-with-color .category-hero-card h2,
  body.layout-quick_list .category-with-image .category-hero-card h2,
  body.layout-quick_list .cat-title h2{
    font-size:clamp(30px,8.4vw,40px)!important;
  }
  body.layout-compact .product .product-title-line .product-inline-price,
  body.layout-quick_list .product .product-title-line .product-inline-price,
  body.layout-compact .product .price,
  body.layout-compact .product .price strong,
  body.layout-compact .product-action-row .price,
  body.layout-compact .product-action-row .price strong,
  body.layout-compact .product-price-right,
  body.layout-compact .product-price-right strong,
  body.layout-quick_list .product .price,
  body.layout-quick_list .product .price strong,
  body.layout-quick_list .product-action-row .price,
  body.layout-quick_list .product-action-row .price strong,
  body.layout-quick_list .product-price-right,
  body.layout-quick_list .product-price-right strong{
    font-size:clamp(22px,4vw,30px)!important;
  }
}

/* v1.0.89 - Lista Rapida: prezzo fisso a destra, titolo a sinistra con wrap controllato */
body.layout-compact .product .product-title-line,
body.layout-quick_list .product .product-title-line{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) clamp(86px,18vw,118px)!important;
  column-gap:12px!important;
  row-gap:6px!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
}
body.layout-compact .product .product-title-line > span:first-child,
body.layout-quick_list .product .product-title-line > span:first-child{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  max-width:100%!important;
  display:block!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
body.layout-compact .product .product-title-line .product-feature-icons,
body.layout-quick_list .product .product-title-line .product-feature-icons{
  grid-column:1!important;
  grid-row:2!important;
  justify-self:start!important;
  align-self:start!important;
  display:inline-flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0!important;
  max-width:100%!important;
}
body.layout-compact .product .product-title-line .product-inline-price,
body.layout-quick_list .product .product-title-line .product-inline-price{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  justify-self:end!important;
  align-self:start!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:baseline!important;
  text-align:right!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
}
body.layout-compact .product .product-title-line .product-inline-price strong,
body.layout-quick_list .product .product-title-line .product-inline-price strong,
body.layout-compact .product .product-title-line .product-inline-price del,
body.layout-quick_list .product .product-title-line .product-inline-price del{
  font-size:1em!important;
  line-height:1!important;
  color:inherit!important;
}
body.layout-compact .product .price,
body.layout-compact .product .price strong,
body.layout-compact .product-action-row .price,
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-price-right,
body.layout-compact .product-price-right strong,
body.layout-compact .cover-charge-card .price,
body.layout-compact .cover-charge-card .price strong,
body.layout-compact .cover-charge-card .info-card-price,
body.layout-quick_list .product .price,
body.layout-quick_list .product .price strong,
body.layout-quick_list .product-action-row .price,
body.layout-quick_list .product-action-row .price strong,
body.layout-quick_list .product-price-right,
body.layout-quick_list .product-price-right strong,
body.layout-quick_list .cover-charge-card .price,
body.layout-quick_list .cover-charge-card .price strong,
body.layout-quick_list .cover-charge-card .info-card-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
@media(max-width:680px){
  body.layout-compact .product .product-title-line,
  body.layout-quick_list .product .product-title-line{
    grid-template-columns:minmax(0,1fr) clamp(82px,24vw,112px)!important;
    column-gap:10px!important;
  }
}
@media(max-width:380px){
  body.layout-compact .product .product-title-line,
  body.layout-quick_list .product .product-title-line{
    grid-template-columns:minmax(0,1fr) 82px!important;
    column-gap:8px!important;
  }
}

/* v1.0.90 - Lista Rapida: titolo a sinistra + icone accanto al testo, prezzo fisso in alto a destra */
body.layout-compact .product .product-title-line,
body.layout-quick_list .product .product-title-line{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) max-content!important;
  column-gap:14px!important;
  row-gap:0!important;
  align-items:start!important;
  width:100%!important;
  min-width:0!important;
}
body.layout-compact .product .product-title-line .product-title-main,
body.layout-quick_list .product .product-title-line .product-title-main{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  max-width:100%!important;
  display:inline!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
body.layout-compact .product .product-title-line .product-title-main > span[data-i18n],
body.layout-quick_list .product .product-title-line .product-title-main > span[data-i18n]{
  display:inline!important;
}
body.layout-compact .product .product-title-line .product-feature-icons,
body.layout-quick_list .product .product-title-line .product-feature-icons{
  display:inline-flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-left:8px!important;
  margin-right:0!important;
  vertical-align:middle!important;
  justify-self:auto!important;
  align-self:auto!important;
  grid-column:auto!important;
  grid-row:auto!important;
  max-width:none!important;
}
body.layout-compact .product .product-title-line .product-inline-price,
body.layout-quick_list .product .product-title-line .product-inline-price{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:start!important;
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
}
body.layout-compact .product .product-title-line .product-inline-price strong,
body.layout-quick_list .product .product-title-line .product-inline-price strong,
body.layout-compact .product .product-title-line .product-inline-price del,
body.layout-quick_list .product .product-title-line .product-inline-price del{
  font-size:1em!important;
  line-height:1!important;
  color:inherit!important;
}
@media(max-width:680px){
  body.layout-compact .product .product-title-line,
  body.layout-quick_list .product .product-title-line{
    grid-template-columns:minmax(0,1fr) max-content!important;
    column-gap:10px!important;
  }
}


/* v1.0.91 - Lista Rapida: prezzo sempre in alto a destra, titolo a sinistra, icone attaccate al testo */
body.layout-compact .product .product-title-line,
body.layout-quick_list .product .product-title-line{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding-right:clamp(98px,24vw,132px)!important;
  box-sizing:border-box!important;
  line-height:1.08!important;
}
body.layout-compact .product .product-title-line .product-title-main,
body.layout-quick_list .product .product-title-line .product-title-main{
  display:inline!important;
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
body.layout-compact .product .product-title-line .product-title-main > span[data-i18n],
body.layout-quick_list .product .product-title-line .product-title-main > span[data-i18n]{
  display:inline!important;
}
body.layout-compact .product .product-title-line .product-feature-icons,
body.layout-quick_list .product .product-title-line .product-feature-icons{
  display:inline-flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-left:8px!important;
  margin-right:0!important;
  vertical-align:middle!important;
  justify-self:auto!important;
  align-self:auto!important;
  grid-column:auto!important;
  grid-row:auto!important;
  transform:none!important;
}
body.layout-compact .product .product-title-line .product-inline-price,
body.layout-quick_list .product .product-title-line .product-inline-price{
  position:absolute!important;
  top:.08em!important;
  right:0!important;
  display:inline-flex!important;
  align-items:baseline!important;
  justify-content:flex-end!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  text-align:right!important;
  white-space:nowrap!important;
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
body.layout-compact .product .product-title-line .product-inline-price strong,
body.layout-quick_list .product .product-title-line .product-inline-price strong,
body.layout-compact .product .product-title-line .product-inline-price del,
body.layout-quick_list .product .product-title-line .product-inline-price del{
  font-size:1em!important;
  line-height:1!important;
  color:inherit!important;
}
body.layout-compact .product .price,
body.layout-compact .product .price strong,
body.layout-compact .product-action-row .price,
body.layout-compact .product-action-row .price strong,
body.layout-compact .product-price-right,
body.layout-compact .product-price-right strong,
body.layout-compact .cover-charge-card .price,
body.layout-compact .cover-charge-card .price strong,
body.layout-compact .cover-charge-card .info-card-price,
body.layout-quick_list .product .price,
body.layout-quick_list .product .price strong,
body.layout-quick_list .product-action-row .price,
body.layout-quick_list .product-action-row .price strong,
body.layout-quick_list .product-price-right,
body.layout-quick_list .product-price-right strong,
body.layout-quick_list .cover-charge-card .price,
body.layout-quick_list .cover-charge-card .price strong,
body.layout-quick_list .cover-charge-card .info-card-price{
  font-size:clamp(22px,4vw,30px)!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  color:var(--primary)!important;
  white-space:nowrap!important;
}
@media(max-width:420px){
  body.layout-compact .product .product-title-line,
  body.layout-quick_list .product .product-title-line{
    padding-right:clamp(88px,26vw,112px)!important;
  }
  body.layout-compact .product .product-title-line .product-inline-price,
  body.layout-quick_list .product .product-title-line .product-inline-price{
    top:.12em!important;
  }
}

/* v1.0.92 - Luxury Dark: azioni sotto foto + opzioni catalogo coerenti */
body.layout-grand_luxury .product.has-product-image{
  grid-template-columns:minmax(0,1fr) 190px!important;
  grid-template-rows:auto auto!important;
  align-items:start!important;
}
body.layout-grand_luxury .product.has-product-image > .p-info{
  grid-column:1!important;
  grid-row:1 / span 2!important;
}
body.layout-grand_luxury .product.has-product-image > img,
body.layout-grand_luxury .product.has-product-image > .product-image-wrap{
  grid-column:2!important;
  grid-row:1!important;
  align-self:start!important;
}
body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
body.layout-grand_luxury .product.has-product-image > .product-image-wrap img{
  width:190px!important;
  height:190px!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row{
  grid-column:2!important;
  grid-row:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:10px!important;
  margin:0!important;
  padding-top:14px!important;
  border-top:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row .product-button-slot,
body.layout-grand_luxury .product.has-product-image > .product-action-row .add,
body.layout-grand_luxury .product.has-product-image > .product-action-row .catalog-options-toggle{
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  text-align:center!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row .price,
body.layout-grand_luxury .product.has-product-image > .product-action-row .product-price-right{
  width:100%!important;
  text-align:center!important;
  margin:0!important;
}
body.layout-grand_luxury .product.has-product-image > .catalog-options{
  grid-column:1 / -1!important;
}
body.layout-grand_luxury .catalog-options{
  margin-top:14px!important;
  padding-top:16px!important;
  border-top:1px solid rgba(216,180,106,.18)!important;
}
body.layout-grand_luxury .catalog-option-group{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)),rgba(20,18,14,.72)!important;
  border:1px solid rgba(216,180,106,.30)!important;
  border-radius:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
  padding:18px 20px!important;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury .catalog-option-head{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 12px!important;
}
body.layout-grand_luxury .catalog-option-head strong{
  color:var(--lux-text)!important;
  font-size:15px!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .catalog-option-rule{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:3px 10px!important;
  border-radius:999px!important;
  color:var(--lux-gold-soft)!important;
  background:rgba(216,180,106,.10)!important;
  border:1px solid rgba(216,180,106,.30)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury .catalog-option-list{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:9px!important;
}
body.layout-grand_luxury .catalog-option-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:34px!important;
  padding:7px 13px!important;
  border-radius:999px!important;
  color:rgba(255,247,231,.86)!important;
  background:rgba(255,255,255,.075)!important;
  border:1px solid rgba(216,180,106,.25)!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.layout-grand_luxury .catalog-option-chip em{
  color:var(--lux-gold-soft)!important;
  font-style:normal!important;
  font-weight:950!important;
}
@media(max-width:980px){
  body.layout-grand_luxury .product.has-product-image{grid-template-columns:minmax(0,1fr) 150px!important;}
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap img{width:150px!important;height:150px!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury .product.has-product-image{grid-template-columns:1fr!important;}
  body.layout-grand_luxury .product.has-product-image > .p-info{grid-column:1!important;grid-row:auto!important;}
  body.layout-grand_luxury .product.has-product-image > img,
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap{grid-column:1!important;grid-row:auto!important;order:-1!important;}
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap img{width:100%!important;height:178px!important;}
  body.layout-grand_luxury .product.has-product-image > .product-action-row{grid-column:1!important;grid-row:auto!important;align-items:stretch!important;}
  body.layout-grand_luxury .product.has-product-image > .product-action-row .price{text-align:right!important;}
  body.layout-grand_luxury .catalog-option-group{padding:14px!important;}
  body.layout-grand_luxury .catalog-option-chip{font-size:12px!important;padding:6px 10px!important;}
}

/* v1.0.93 - Luxury Dark: azione sotto foto con prezzo accanto + badge 75/100 */
body.layout-grand_luxury .product .product-badges{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:100%!important;
  gap:8px!important;
}
body.layout-grand_luxury .product .product-badges .badge,
body.layout-grand_luxury .product > .product-badges-standard-row .badge,
body.layout-grand_luxury .product .luxury-image-badges .badge{
  width:fit-content!important;
  min-width:75%!important;
  max-width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.15!important;
  padding-left:14px!important;
  padding-right:14px!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row{
  grid-column:2!important;
  grid-row:2!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0!important;
  padding-top:14px!important;
  border-top:1px solid rgba(216,180,106,.22)!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row .product-button-slot{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row .add,
body.layout-grand_luxury .product.has-product-image > .product-action-row .catalog-options-toggle{
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  text-align:center!important;
  padding-left:12px!important;
  padding-right:12px!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row .price,
body.layout-grand_luxury .product.has-product-image > .product-action-row .product-price-right{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  text-align:right!important;
  margin:0!important;
}
body.layout-grand_luxury .product.has-product-image > .product-action-row .price strong,
body.layout-grand_luxury .product.has-product-image > .product-action-row .product-price-right strong{
  font-size:clamp(22px,2.2vw,30px)!important;
  line-height:1!important;
}
@media(max-width:980px){
  body.layout-grand_luxury .product .product-badges .badge,
  body.layout-grand_luxury .product > .product-badges-standard-row .badge,
  body.layout-grand_luxury .product .luxury-image-badges .badge{
    min-width:75%!important;
    max-width:100%!important;
  }
  body.layout-grand_luxury .product.has-product-image > .product-action-row{
    flex-direction:row!important;
    align-items:center!important;
  }
}
@media(max-width:680px){
  body.layout-grand_luxury .product.has-product-image > .product-action-row{
    grid-column:1!important;
    grid-row:auto!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
  }
  body.layout-grand_luxury .product.has-product-image > .product-action-row .price{
    text-align:right!important;
  }
}

/* v1.0.95 - Luxury Light: stessa conformazione della Luxury Dark, palette chiara */
body.layout-grand_luxury_light{
  --lux-bg:#f7f1e7;
  --lux-panel:#fffaf2;
  --lux-panel-soft:#f2e7d7;
  --lux-gold:#9d7d47;
  --lux-gold-soft:#b49358;
  --lux-cream:#19150f;
  --lux-text:#19150f;
  --lux-muted:#6f6556;
  --lux-border:rgba(164,131,74,.30);
  background:
    radial-gradient(circle at 18% 4%,rgba(180,147,88,.24),transparent 30vw),
    radial-gradient(circle at 82% 10%,rgba(255,255,255,.75),transparent 28vw),
    linear-gradient(180deg,#fffaf1 0%,#f4eadb 54%,#efe2d0 100%)!important;
  color:var(--lux-text)!important;
}
body.layout-grand_luxury_light::before{
  opacity:.32!important;
  background-image:
    linear-gradient(rgba(164,131,74,.12) 1px,transparent 1px),
    linear-gradient(90deg,rgba(164,131,74,.09) 1px,transparent 1px)!important;
}
body.layout-grand_luxury_light .wrap{
  width:min(1180px,90vw)!important;
  max-width:1180px!important;
  padding-top:36px!important;
}
body.layout-grand_luxury_light .topbar{
  justify-content:center!important;
  text-align:center!important;
  padding:46px 0 20px!important;
}
body.layout-grand_luxury_light .hero{
  min-height:440px!important;
  align-items:center!important;
  background-color:#2a2218!important;
  border-bottom:1px solid rgba(164,131,74,.34)!important;
  box-shadow:0 34px 120px rgba(86,67,39,.22)!important;
}
body.layout-grand_luxury_light .hero-inner{
  width:min(1180px,90vw)!important;
  padding:88px 0!important;
  text-align:center!important;
}
body.layout-grand_luxury_light .hero h1,
body.layout-grand_luxury_light .topbar h1{
  margin:22px auto 10px!important;
  max-width:920px!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(48px,8vw,112px)!important;
  line-height:.86!important;
  letter-spacing:-.07em!important;
  font-weight:700!important;
}
body.layout-grand_luxury_light .topbar h1{color:#19150f!important;text-shadow:none!important;}
body.layout-grand_luxury_light .hero h1{color:#fff8ea!important;text-shadow:0 24px 80px rgba(0,0,0,.50)!important;}
body.layout-grand_luxury_light .hero p,
body.layout-grand_luxury_light .topbar p{
  margin:0 auto!important;
  max-width:720px!important;
  font-size:clamp(15px,1.45vw,20px)!important;
  line-height:1.65!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury_light .topbar p{color:#6f6556!important;text-shadow:none!important;}
body.layout-grand_luxury_light .hero p{color:rgba(255,248,234,.78)!important;}
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury_light .sticky-category-bar .cat-nav{
  background:rgba(247,241,231,.82)!important;
  backdrop-filter:blur(22px)!important;
}
body.layout-grand_luxury_light .searchbar{
  top:0!important;
  border-bottom:1px solid rgba(164,131,74,.18)!important;
}
body.layout-grand_luxury_light .cat-nav{
  gap:10px!important;
  padding-top:14px!important;
}
body.layout-grand_luxury_light .cat-nav a{
  color:#2a2218!important;
  background:rgba(255,250,242,.82)!important;
  border:1px solid rgba(164,131,74,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88),0 10px 28px rgba(86,67,39,.08)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  font-size:12px!important;
  border-radius:999px!important;
}
body.layout-grand_luxury_light .cat-nav a.active,
body.layout-grand_luxury_light .cat-nav a:hover{
  background:linear-gradient(135deg,#c2a260,#8d6b33)!important;
  color:#fff!important;
  border-color:rgba(164,131,74,.56)!important;
}
body.layout-grand_luxury_light .category{
  margin:48px 0 72px!important;
  scroll-margin-top:150px!important;
}
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury_light .featured-category-card{
  min-height:250px!important;
  padding:0!important;
  margin:0 0 28px!important;
  border-radius:34px!important;
  border:1px solid rgba(164,131,74,.30)!important;
  overflow:hidden!important;
  background-color:#fffaf2!important;
  background-image:
    linear-gradient(90deg,rgba(255,250,242,.96),rgba(255,250,242,.72) 48%,rgba(255,250,242,.28)),
    var(--cat-img)!important;
  box-shadow:0 28px 95px rgba(86,67,39,.16),inset 0 1px 0 rgba(255,255,255,.90)!important;
  display:flex!important;
  align-items:center!important;
}
body.layout-grand_luxury_light .category-hero-card::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  border:1px solid rgba(164,131,74,.32)!important;
  border-radius:24px!important;
  pointer-events:none!important;
  z-index:1!important;
}
body.layout-grand_luxury_light .category-hero-content,
body.layout-grand_luxury_light .featured-category-card .category-hero-content{
  position:relative!important;
  z-index:2!important;
  padding:46px 78px!important;
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-hero-card h2,
body.layout-grand_luxury_light .category-featured .category-hero-card h2,
body.layout-grand_luxury_light .featured-category-card h2{
  color:#19150f!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(46px,6.4vw,92px)!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
  font-weight:700!important;
  margin:0!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-hero-card p,
body.layout-grand_luxury_light .category-featured .category-hero-card p,
body.layout-grand_luxury_light .featured-category-card p{
  display:block!important;
  max-width:620px!important;
  margin:14px 0 0!important;
  color:#6f6556!important;
  font-size:15px!important;
  line-height:1.55!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .products{grid-template-columns:1fr!important;gap:18px!important;}
body.layout-grand_luxury_light .product,
body.layout-grand_luxury_light.card-no-image .product,
body.layout-grand_luxury_light .product:not(:has(> img)){
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr 190px!important;
  gap:24px!important;
  padding:24px!important;
  border-radius:28px!important;
  border:1px solid rgba(164,131,74,.22)!important;
  background:linear-gradient(180deg,#fffdf8,#fff7ed)!important;
  color:#19150f!important;
  box-shadow:0 22px 70px rgba(86,67,39,.12),inset 0 1px 0 rgba(255,255,255,.9)!important;
  overflow:hidden!important;
}
body.layout-grand_luxury_light .product::before{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(164,131,74,.50),transparent);
  pointer-events:none;
}
body.layout-grand_luxury_light.card-no-image .product,
body.layout-grand_luxury_light .product:not(:has(> img)){
  grid-template-columns:1fr!important;
}
body.layout-grand_luxury_light .product.has-product-image{
  grid-template-columns:minmax(0,1fr) 190px!important;
  grid-template-rows:auto auto!important;
  align-items:start!important;
}
body.layout-grand_luxury_light .product.has-product-image > .p-info{grid-column:1!important;grid-row:1 / span 2!important;}
body.layout-grand_luxury_light .product.has-product-image > img,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap{grid-column:2!important;grid-row:1!important;align-self:start!important;}
body.layout-grand_luxury_light .product > img,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap,
body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap img{
  width:190px!important;
  height:190px!important;
  border-radius:24px!important;
  object-fit:cover!important;
  box-shadow:0 18px 50px rgba(86,67,39,.16)!important;
  border:1px solid rgba(164,131,74,.20)!important;
}
body.layout-grand_luxury_light .product h3{
  color:#19150f!important;
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(27px,3.2vw,48px)!important;
  line-height:.95!important;
  letter-spacing:-.045em!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .product p{color:#6f6556!important;line-height:1.55!important;}
body.layout-grand_luxury_light .product .product-badges{display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;justify-content:flex-start!important;width:100%!important;gap:8px!important;}
body.layout-grand_luxury_light .product .product-badges .badge,
body.layout-grand_luxury_light .product > .product-badges-standard-row .badge,
body.layout-grand_luxury_light .product .luxury-image-badges .badge{
  width:fit-content!important;
  min-width:75%!important;
  max-width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  line-height:1.15!important;
  padding-left:14px!important;
  padding-right:14px!important;
  background:linear-gradient(135deg,#c2a260,#8d6b33)!important;
  color:#fff!important;
  border:1px solid rgba(164,131,74,.35)!important;
}
body.layout-grand_luxury_light .product.has-product-image > .product-action-row{
  grid-column:2!important;
  grid-row:2!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin:0!important;
  padding-top:14px!important;
  border-top:1px solid rgba(164,131,74,.22)!important;
}
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .product-button-slot{flex:1 1 auto!important;min-width:0!important;width:auto!important;}
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .add,
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .catalog-options-toggle{
  width:100%!important;
  min-width:0!important;
  white-space:normal!important;
  text-align:center!important;
  padding-left:12px!important;
  padding-right:12px!important;
}
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .price,
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .product-price-right{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  text-align:right!important;
  margin:0!important;
}
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .price strong,
body.layout-grand_luxury_light .product.has-product-image > .product-action-row .product-price-right strong{
  font-size:clamp(22px,2.2vw,30px)!important;
  line-height:1!important;
  color:#8d6b33!important;
}
body.layout-grand_luxury_light .product.has-product-image > .catalog-options{grid-column:1 / -1!important;}
body.layout-grand_luxury_light .catalog-options{
  margin-top:14px!important;
  padding-top:16px!important;
  border-top:1px solid rgba(164,131,74,.20)!important;
}
body.layout-grand_luxury_light .catalog-option-group,
body.layout-grand_luxury_light .visible-advice-card{
  background:linear-gradient(180deg,#fffdf8,#fff7ed)!important;
  border:1px solid rgba(164,131,74,.30)!important;
  border-radius:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
  padding:18px 20px!important;
  color:#19150f!important;
}
body.layout-grand_luxury_light .catalog-option-head{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px!important;margin:0 0 12px!important;}
body.layout-grand_luxury_light .catalog-option-head strong,
body.layout-grand_luxury_light .visible-advice-title{
  color:#8d6b33!important;
  font-size:15px!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury_light .catalog-option-rule{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:3px 10px!important;
  border-radius:999px!important;
  color:#8d6b33!important;
  background:rgba(164,131,74,.10)!important;
  border:1px solid rgba(164,131,74,.30)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
body.layout-grand_luxury_light .catalog-option-list{display:flex!important;flex-wrap:wrap!important;gap:9px!important;}
body.layout-grand_luxury_light .catalog-option-chip{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:34px!important;
  padding:7px 13px!important;
  border-radius:999px!important;
  color:#19150f!important;
  background:#fffaf2!important;
  border:1px solid rgba(164,131,74,.25)!important;
  font-size:13px!important;
  font-weight:800!important;
}
body.layout-grand_luxury_light .catalog-option-chip em{color:#8d6b33!important;font-style:normal!important;font-weight:950!important;}
body.layout-grand_luxury_light .visible-advice-item{
  border-radius:0!important;
  background:#fffaf2!important;
  border:1px solid rgba(164,131,74,.25)!important;
}
@media(max-width:980px){
  body.layout-grand_luxury_light .product.has-product-image{grid-template-columns:minmax(0,1fr) 150px!important;}
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap img{width:150px!important;height:150px!important;}
  body.layout-grand_luxury_light .product .product-badges .badge,
  body.layout-grand_luxury_light .product > .product-badges-standard-row .badge,
  body.layout-grand_luxury_light .product .luxury-image-badges .badge{min-width:75%!important;max-width:100%!important;}
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row{flex-direction:row!important;align-items:center!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury_light .wrap{width:94vw!important;}
  body.layout-grand_luxury_light .category-hero-content{padding:28px 24px!important;}
  body.layout-grand_luxury_light .product.has-product-image{grid-template-columns:1fr!important;}
  body.layout-grand_luxury_light .product.has-product-image > .p-info{grid-column:1!important;grid-row:auto!important;}
  body.layout-grand_luxury_light .product.has-product-image > img,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap{grid-column:1!important;grid-row:auto!important;order:-1!important;}
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap img{width:100%!important;height:178px!important;}
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row{grid-column:1!important;grid-row:auto!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;}
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row .price{text-align:right!important;}
  body.layout-grand_luxury_light .catalog-option-group,
  body.layout-grand_luxury_light .visible-advice-card{padding:14px!important;}
  body.layout-grand_luxury_light .catalog-option-chip{font-size:12px!important;padding:6px 10px!important;}
}

/* v1.0.96 - Luxury Light allineata alla Dark + pulsanti azione uniformi */
/* Luxury Light: stessa conformazione/ingombri della Luxury Dark, solo palette chiara */
body.layout-grand_luxury_light .category{
  margin:28px 0 42px!important;
  scroll-margin-top:132px!important;
}
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury_light .featured-category-card{
  min-height:150px!important;
  margin:0 0 18px!important;
  border-radius:24px!important;
  padding:0!important;
  border:1px solid rgba(164,131,74,.28)!important;
  background-color:#fffaf2!important;
  background-image:
    linear-gradient(90deg,rgba(255,250,242,.96),rgba(255,250,242,.78) 54%,rgba(255,250,242,.38)),
    var(--cat-img)!important;
  box-shadow:0 18px 55px rgba(86,67,39,.12),inset 0 1px 0 rgba(255,255,255,.90)!important;
  display:flex!important;
  align-items:center!important;
  overflow:hidden!important;
}
body.layout-grand_luxury_light .category-hero-card::before{
  inset:10px!important;
  border-radius:18px!important;
  border-color:rgba(164,131,74,.24)!important;
}
body.layout-grand_luxury_light .category-hero-content,
body.layout-grand_luxury_light .featured-category-card .category-hero-content{
  padding:28px 76px 28px 34px!important;
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-hero-card h2,
body.layout-grand_luxury_light .category-featured .category-hero-card h2,
body.layout-grand_luxury_light .featured-category-card h2{
  font-size:clamp(34px,4.2vw,60px)!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-hero-card p,
body.layout-grand_luxury_light .category-featured .category-hero-card p,
body.layout-grand_luxury_light .featured-category-card p{
  margin-top:8px!important;
  color:#6f6556!important;
  font-size:13px!important;
  line-height:1.35!important;
  letter-spacing:.05em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-accordion-icon{
  right:24px!important;
  width:38px!important;
  height:38px!important;
  background:#fffaf2!important;
  color:#8d6b33!important;
  border-color:rgba(164,131,74,.38)!important;
}

/* Luxury Dark/Light: il pulsante azione deve avere la stessa larghezza utile anche senza foto/descrizione */
body.layout-grand_luxury .product .product-action-row,
body.layout-grand_luxury_light .product .product-action-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
}
body.layout-grand_luxury .product .product-action-row .product-button-slot,
body.layout-grand_luxury_light .product .product-action-row .product-button-slot{
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
}
body.layout-grand_luxury .product .product-action-row .add,
body.layout-grand_luxury .product .product-action-row .catalog-options-toggle,
body.layout-grand_luxury_light .product .product-action-row .add,
body.layout-grand_luxury_light .product .product-action-row .catalog-options-toggle{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  white-space:nowrap!important;
  text-align:center!important;
}
body.layout-grand_luxury .product .product-action-row .price,
body.layout-grand_luxury .product .product-action-row .product-price-right,
body.layout-grand_luxury_light .product .product-action-row .price,
body.layout-grand_luxury_light .product .product-action-row .product-price-right{
  flex:0 0 auto!important;
  min-width:max-content!important;
  width:auto!important;
  margin:0!important;
  text-align:right!important;
}

@media(max-width:980px){
  body.layout-grand_luxury_light .category-hero-card,
  body.layout-grand_luxury_light .category-with-image .category-hero-card,
  body.layout-grand_luxury_light .category-with-color .category-hero-card,
  body.layout-grand_luxury_light .category-featured .category-hero-card,
  body.layout-grand_luxury_light .featured-category-card{
    min-height:138px!important;
  }
  body.layout-grand_luxury_light .category-hero-content,
  body.layout-grand_luxury_light .featured-category-card .category-hero-content{
    padding:26px 68px 26px 28px!important;
  }
}
@media(max-width:680px){
  body.layout-grand_luxury_light .category{
    margin:24px 0 34px!important;
  }
  body.layout-grand_luxury_light .category-hero-card,
  body.layout-grand_luxury_light .category-with-image .category-hero-card,
  body.layout-grand_luxury_light .category-with-color .category-hero-card,
  body.layout-grand_luxury_light .category-featured .category-hero-card,
  body.layout-grand_luxury_light .featured-category-card{
    min-height:116px!important;
    border-radius:22px!important;
  }
  body.layout-grand_luxury_light .category-hero-card::before{
    inset:11px!important;
    border-radius:18px!important;
  }
  body.layout-grand_luxury_light .category-hero-content,
  body.layout-grand_luxury_light .featured-category-card .category-hero-content{
    padding:24px 58px 24px 22px!important;
  }
  body.layout-grand_luxury_light .category-hero-card h2,
  body.layout-grand_luxury_light .category-featured .category-hero-card h2,
  body.layout-grand_luxury_light .featured-category-card h2{
    font-size:clamp(34px,10vw,48px)!important;
  }
  body.layout-grand_luxury_light .category-hero-card p,
  body.layout-grand_luxury_light .category-featured .category-hero-card p,
  body.layout-grand_luxury_light .featured-category-card p{
    font-size:11px!important;
    margin-top:6px!important;
  }
  body.layout-grand_luxury_light .category-accordion-icon{
    right:16px!important;
    width:34px!important;
    height:34px!important;
  }
  body.layout-grand_luxury .product .product-action-row,
  body.layout-grand_luxury_light .product .product-action-row{
    flex-direction:row!important;
    align-items:center!important;
  }
}


/* v1.0.97 - Luxury Light: menu/sticky come Luxury Dark + colori categoria */
/* Menu e barra sticky della Luxury Light: stessa conformazione della Dark, palette chiara */
body.layout-grand_luxury_light .searchbar,
body.layout-grand_luxury_light .sticky-category-bar .cat-nav{
  background:rgba(255,250,242,.82)!important;
  backdrop-filter:blur(22px)!important;
  -webkit-backdrop-filter:blur(22px)!important;
}
body.layout-grand_luxury_light .searchbar{
  top:0!important;
  border-bottom:1px solid rgba(164,131,74,.20)!important;
  padding:12px 0!important;
}
body.layout-grand_luxury_light .searchbar input,
body.layout-grand_luxury_light .searchbar button{
  background:rgba(255,255,255,.78)!important;
  color:#19150f!important;
  border:1px solid rgba(164,131,74,.26)!important;
  border-radius:18px!important;
  box-shadow:0 18px 55px rgba(86,67,39,.10)!important;
}
body.layout-grand_luxury_light .searchbar input::placeholder{
  color:rgba(25,21,15,.48)!important;
  opacity:1!important;
}
body.layout-grand_luxury_light .cat-nav{
  gap:10px!important;
  padding-top:14px!important;
  padding-bottom:14px!important;
}
body.layout-grand_luxury_light .cat-nav a{
  color:#2a2218!important;
  background:rgba(255,255,255,.66)!important;
  border:1px solid rgba(164,131,74,.28)!important;
  border-radius:999px!important;
  padding:11px 15px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 10px 28px rgba(86,67,39,.08)!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.layout-grand_luxury_light .cat-nav a.active,
body.layout-grand_luxury_light .cat-nav a:hover{
  background:linear-gradient(135deg,#b49358,#8d6b33)!important;
  color:#fffaf2!important;
  border-color:rgba(164,131,74,.52)!important;
}

/* Luxury Light: card categoria con stessa conformazione della Dark, ma colore categoria rispettato */
body.layout-grand_luxury_light .category{
  margin:48px 0 72px!important;
  scroll-margin-top:150px!important;
}
body.layout-grand_luxury_light .category-hero-card,
body.layout-grand_luxury_light .category-with-image .category-hero-card,
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-featured .category-hero-card,
body.layout-grand_luxury_light .featured-category-card{
  min-height:250px!important;
  padding:0!important;
  margin:0 0 28px!important;
  border-radius:34px!important;
  border:1px solid rgba(164,131,74,.30)!important;
  overflow:hidden!important;
  background-color:#fffaf2!important;
  background-image:
    linear-gradient(90deg,rgba(255,250,242,.92),rgba(255,250,242,.72) 48%,rgba(255,250,242,.18)),
    var(--cat-img)!important;
  box-shadow:0 28px 95px rgba(86,67,39,.18),inset 0 1px 0 rgba(255,255,255,.90)!important;
  display:flex!important;
  align-items:center!important;
}
body.layout-grand_luxury_light .category-hero-card::before{
  content:""!important;
  position:absolute!important;
  inset:16px!important;
  border:1px solid rgba(164,131,74,.28)!important;
  border-radius:24px!important;
  pointer-events:none!important;
  z-index:1!important;
}
body.layout-grand_luxury_light .category-hero-card::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 46%,rgba(164,131,74,.08))!important;
}
body.layout-grand_luxury_light .category-hero-content,
body.layout-grand_luxury_light .featured-category-card .category-hero-content{
  position:relative!important;
  z-index:2!important;
  padding:42px 92px 42px 50px!important;
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-hero-card h2,
body.layout-grand_luxury_light .category-featured .category-hero-card h2,
body.layout-grand_luxury_light .featured-category-card h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(48px,7vw,96px)!important;
  line-height:.86!important;
  letter-spacing:-.07em!important;
  margin:0!important;
  color:#19150f!important;
  text-shadow:none!important;
}
body.layout-grand_luxury_light .category-hero-card p,
body.layout-grand_luxury_light .category-featured .category-hero-card p,
body.layout-grand_luxury_light .featured-category-card p{
  margin:16px 0 0!important;
  color:#6f6556!important;
  font-size:clamp(13px,1.45vw,18px)!important;
  line-height:1.35!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  text-shadow:none!important;
}

/* Se la categoria ha colore impostato, la Luxury Light usa quel colore come la Dark */
body.layout-grand_luxury_light .category-with-color .category-hero-card,
body.layout-grand_luxury_light .category-hero-card.category-color-card,
body.layout-grand_luxury_light .category-hero-card[style*="--cat-color"]{
  background-color:var(--cat-color,var(--primary))!important;
  background-image:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.18),transparent 24%),
    linear-gradient(135deg,color-mix(in srgb,var(--cat-color,var(--primary)) 78%,#fff 5%),color-mix(in srgb,var(--cat-color,var(--primary)) 62%,#000 38%))!important;
  border-color:color-mix(in srgb,var(--cat-color,var(--primary)) 70%,#fff 30%)!important;
}
body.layout-grand_luxury_light .category-with-color .category-hero-card h2,
body.layout-grand_luxury_light .category-with-color .category-hero-card p,
body.layout-grand_luxury_light .category-hero-card.category-color-card h2,
body.layout-grand_luxury_light .category-hero-card.category-color-card p,
body.layout-grand_luxury_light .category-hero-card[style*="--cat-color"] h2,
body.layout-grand_luxury_light .category-hero-card[style*="--cat-color"] p{
  color:#fffaf2!important;
  text-shadow:0 16px 38px rgba(0,0,0,.46)!important;
}
body.layout-grand_luxury_light .category-with-color .category-hero-card::before,
body.layout-grand_luxury_light .category-hero-card.category-color-card::before,
body.layout-grand_luxury_light .category-hero-card[style*="--cat-color"]::before{
  border-color:rgba(255,255,255,.26)!important;
}
body.layout-grand_luxury_light .category-accordion-icon{
  right:26px!important;
  width:42px!important;
  height:42px!important;
  background:#fffaf2!important;
  color:#8d6b33!important;
  border:1px solid rgba(164,131,74,.38)!important;
}

@media(max-width:980px){
  body.layout-grand_luxury_light .category{margin:42px 0 60px!important;}
  body.layout-grand_luxury_light .category-hero-card,
  body.layout-grand_luxury_light .category-with-image .category-hero-card,
  body.layout-grand_luxury_light .category-with-color .category-hero-card,
  body.layout-grand_luxury_light .category-featured .category-hero-card,
  body.layout-grand_luxury_light .featured-category-card{min-height:190px!important;}
  body.layout-grand_luxury_light .category-hero-content,
  body.layout-grand_luxury_light .featured-category-card .category-hero-content{padding:34px 76px 34px 36px!important;}
  body.layout-grand_luxury_light .category-hero-card h2,
  body.layout-grand_luxury_light .category-featured .category-hero-card h2,
  body.layout-grand_luxury_light .featured-category-card h2{font-size:clamp(42px,7vw,74px)!important;}
}
@media(max-width:680px){
  body.layout-grand_luxury_light .category{margin:34px 0 48px!important;}
  body.layout-grand_luxury_light .category-hero-card,
  body.layout-grand_luxury_light .category-with-image .category-hero-card,
  body.layout-grand_luxury_light .category-with-color .category-hero-card,
  body.layout-grand_luxury_light .category-featured .category-hero-card,
  body.layout-grand_luxury_light .featured-category-card{
    min-height:210px!important;
    border-radius:28px!important;
  }
  body.layout-grand_luxury_light .category-hero-content,
  body.layout-grand_luxury_light .featured-category-card .category-hero-content{padding:34px 62px 34px 28px!important;}
  body.layout-grand_luxury_light .category-hero-card h2,
  body.layout-grand_luxury_light .category-featured .category-hero-card h2,
  body.layout-grand_luxury_light .featured-category-card h2{font-size:clamp(44px,13vw,70px)!important;}
  body.layout-grand_luxury_light .category-hero-card p,
  body.layout-grand_luxury_light .category-featured .category-hero-card p,
  body.layout-grand_luxury_light .featured-category-card p{font-size:12px!important;margin-top:12px!important;}
  body.layout-grand_luxury_light .category-hero-card::before{inset:14px!important;border-radius:22px!important;}
  body.layout-grand_luxury_light .category-accordion-icon{right:18px!important;width:36px!important;height:36px!important;}
}


/* v1.0.98 - Luxury Light sticky menu full width/squared */
body.layout-grand_luxury_light .sticky-category-bar{
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  padding:0!important;
  z-index:60!important;
  background:rgba(250,246,238,.94)!important;
  border-top:0!important;
  border-bottom:1px solid rgba(164,131,74,.28)!important;
  box-shadow:0 14px 34px rgba(86,67,39,.10)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
body.layout-grand_luxury_light .sticky-category-bar .cat-nav{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:10px max(12px,calc((100vw - 1220px)/2 + 12px))!important;
  display:flex!important;
  gap:8px!important;
  overflow-x:auto!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.layout-grand_luxury_light .sticky-category-bar .cat-nav a,
body.layout-grand_luxury_light .cat-nav a{
  border-radius:0!important;
  min-height:44px!important;
  padding:0 18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  background:#fffdf8!important;
  color:#2a2218!important;
  border:1px solid rgba(164,131,74,.34)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
  text-transform:uppercase!important;
  letter-spacing:.045em!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.layout-grand_luxury_light .sticky-category-bar .cat-nav a.active,
body.layout-grand_luxury_light .sticky-category-bar .cat-nav a:hover,
body.layout-grand_luxury_light .cat-nav a.active,
body.layout-grand_luxury_light .cat-nav a:hover{
  background:linear-gradient(135deg,#b49358,#8d6b33)!important;
  color:#fff!important;
  border-color:rgba(164,131,74,.58)!important;
}
body.layout-grand_luxury_light .searchbar{
  top:0!important;
  margin-top:0!important;
  border-radius:0!important;
}
@media(max-width:680px){
  body.layout-grand_luxury_light .sticky-category-bar .cat-nav{
    padding:8px 10px!important;
    gap:7px!important;
  }
  body.layout-grand_luxury_light .sticky-category-bar .cat-nav a,
  body.layout-grand_luxury_light .cat-nav a{
    min-height:40px!important;
    padding:0 14px!important;
    font-size:11px!important;
  }
}


/* v1.1.11 - avvisi disponibilità materie prime */
.product-material-warning{grid-column:1/-1;margin:12px 0 4px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--card));color:var(--text);border-radius:calc(var(--radius) * .55)}.product-material-warning strong{display:block;margin-bottom:4px}.product-material-warning ul{margin:0;padding-left:18px}.modal-material-warning{margin:12px 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--card));border-radius:12px}.modal-material-warning p{margin:4px 0}.layout-grand_luxury .product-material-warning{border-radius:0;border-color:#8d7440;background:#23231f;color:#eee5d3}.layout-grand_luxury_light .product-material-warning{border-radius:0;border-color:#b89555;background:#fffaf0;color:#2c2418}.layout-compact .product-material-warning{padding:8px 10px;font-size:.86rem}


/* =========================================================
   ViMENÙ 2.0.3 — Layout Minimal
   Layout tipografico a lista, colori interamente derivati
   dalle variabili configurabili del pannello Aspetto.
   ========================================================= */
body.layout-minimal{
  background:var(--bg);
  color:var(--text);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
body.layout-minimal .hero{
  min-height:230px;
  background-color:var(--primary);
  background-image:linear-gradient(180deg,color-mix(in srgb,var(--primary) 68%,transparent),color-mix(in srgb,var(--primary) 94%,#000)),var(--md-hero-cover,none)!important;
  background-size:cover!important;
  background-position:center!important;
  align-items:center;
  text-align:center;
}
body.layout-minimal .hero-inner{width:min(860px,92vw);padding:38px 0;margin:auto}
body.layout-minimal .hero .logo{max-width:112px;max-height:92px;border-radius:0;background:transparent;padding:0;box-shadow:none}
body.layout-minimal .hero h1{font-size:clamp(31px,6vw,52px);line-height:1.05;letter-spacing:-.035em;margin:12px 0 5px}
body.layout-minimal .hero p{font-size:15px;opacity:.86;margin:0 auto;max-width:620px}
body.layout-minimal .wrap{width:min(900px,92vw);padding:22px 0 150px}
body.layout-minimal .topbar{justify-content:center;text-align:center;padding:18px 0 8px}
body.layout-minimal .topbar .logo{border-radius:0;background:transparent;padding:0}
body.layout-minimal .searchbar{top:0;padding:10px 0;background:color-mix(in srgb,var(--bg) 94%,transparent);box-shadow:none}
body.layout-minimal .searchbar input{border:1px solid var(--line);border-radius:8px;background:var(--input-bg);box-shadow:none;padding:13px 15px;color:var(--text)}
body.layout-minimal .searchbar button{border:1px solid var(--line);border-radius:8px;background:var(--input-bg);color:var(--text)}

/* navigazione categorie fissata in basso come nel menu di riferimento */
body.layout-minimal .sticky-category-bar{
  position:fixed!important;
  left:0;right:0;bottom:0;top:auto!important;
  z-index:60;
  padding:9px max(12px,env(safe-area-inset-left)) calc(9px + env(safe-area-inset-bottom));
  background:color-mix(in srgb,var(--cat-nav-bg) 96%,transparent);
  border-top:1px solid var(--line);
  box-shadow:0 -8px 28px rgba(0,0,0,.10);
  backdrop-filter:blur(15px);
}
body.layout-minimal .cat-nav{
  position:static!important;
  width:min(900px,100%);
  margin:0 auto;
  padding:0;
  gap:7px;
  background:transparent;
  backdrop-filter:none;
  scrollbar-width:none;
}
body.layout-minimal .cat-nav::-webkit-scrollbar{display:none}
body.layout-minimal .cat-nav a{
  flex:0 0 auto;
  border:0;
  border-radius:7px;
  padding:10px 13px;
  background:var(--cat-nav-bg);
  color:var(--cat-nav-text);
  font-size:13px;
  font-weight:800;
  box-shadow:none;
}
body.layout-minimal .cat-nav a.active,
body.layout-minimal .cat-nav a:hover{
  background:var(--cat-nav-active-bg);
  color:var(--cat-nav-active-text);
}

body.layout-minimal .category{scroll-margin-top:80px;margin:0 0 36px}
body.layout-minimal .category-hero-card{
  min-height:0!important;
  margin:0;
  padding:24px 0 11px!important;
  border:0!important;
  border-bottom:2px solid var(--primary)!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  color:var(--text)!important;
  box-shadow:none!important;
  cursor:default;
}
body.layout-minimal .category-hero-card:before,
body.layout-minimal .category-hero-card:after,
body.layout-minimal .category-hero-card .category-icon-bg{display:none!important}
body.layout-minimal .category-hero-content{padding:0!important;position:relative;z-index:1}
body.layout-minimal .category-hero-card h2,
body.layout-minimal .category-hero-content h2{
  margin:0!important;
  color:var(--text)!important;
  font-size:clamp(24px,4vw,34px)!important;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.035em;
  text-transform:none;
}
body.layout-minimal .category-hero-card p{margin:6px 0 0!important;color:var(--muted)!important;font-size:14px}
body.layout-minimal .category-accordion-icon{display:none!important}
body.layout-minimal .products{display:block!important;margin:0}
body.layout-minimal .product{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"info price" "info action" "warning warning" "advice advice" "options options";
  align-items:start;
  gap:3px 18px!important;
  width:100%;
  padding:17px 0!important;
  margin:0;
  border:0!important;
  border-bottom:1px solid var(--line)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible;
}
body.layout-minimal .product:last-child{border-bottom:0!important}
body.layout-minimal .product .p-info{grid-area:info;min-width:0}
body.layout-minimal .product > img,
body.layout-minimal .product .product-image-wrap{display:none!important}
body.layout-minimal .product-badges-standard-row{grid-area:info;margin:0 0 6px}
body.layout-minimal .product-badges-standard-row:empty{display:none}
body.layout-minimal .product h3,
body.layout-minimal .product .product-title-line{
  margin:0 0 5px!important;
  font-size:17px!important;
  line-height:1.25;
  font-weight:850;
  letter-spacing:-.015em;
  color:var(--text);
}
body.layout-minimal .product .product-inline-price{display:none!important}
body.layout-minimal .product p{margin:0!important;color:var(--muted)!important;font-size:14px;line-height:1.48}
body.layout-minimal .product .chips,
body.layout-minimal .product .meta{margin:7px 0 0;gap:5px}
body.layout-minimal .product .chips span,
body.layout-minimal .product .meta span{padding:3px 0;background:transparent;border-radius:0;font-size:11px;color:var(--muted)}
body.layout-minimal .product .meta span+span:before,
body.layout-minimal .product .chips span+span:before{content:" · ";margin-right:4px}
body.layout-minimal .product-action-row{
  display:contents!important;
}
body.layout-minimal .product-price-right{
  grid-area:price;
  justify-content:flex-end;
  white-space:nowrap;
  margin:0!important;
  color:var(--price);
  line-height:1.2;
}
body.layout-minimal .product-price-right strong{font-size:16px!important;color:var(--price);font-weight:850}
body.layout-minimal .product-price-right del{font-size:12px;color:var(--muted)}
body.layout-minimal .product-button-slot{
  grid-area:action;
  align-self:start;
  justify-self:end;
  margin-top:7px;
}
body.layout-minimal .product-button-slot:empty{display:none}
body.layout-minimal .product .add,
body.layout-minimal .catalog-options-toggle{
  min-height:34px;
  padding:7px 11px!important;
  border-radius:7px!important;
  background:var(--button)!important;
  color:var(--button-text)!important;
  font-size:12px!important;
  box-shadow:none!important;
}
body.layout-minimal .product-material-warning{grid-area:warning;margin:8px 0 0;border-radius:7px}
body.layout-minimal .product-advice-card{grid-area:advice;margin:8px 0 0;border-radius:7px}
body.layout-minimal .catalog-options{grid-area:options;margin-top:8px}
body.layout-minimal .category-featured .category-hero-card{border-bottom-color:var(--accent)!important}
body.layout-minimal .badge{border-radius:4px;padding:4px 7px;font-size:10px}
body.layout-minimal .business-info-block{border-radius:0;border:0;border-top:1px solid var(--line);box-shadow:none;background:transparent}
body.layout-minimal footer{padding-bottom:95px}
body.layout-minimal .cart{bottom:76px}
body.layout-minimal .back-top{bottom:82px}

@media(max-width:680px){
  body.layout-minimal .hero{min-height:190px}
  body.layout-minimal .hero-inner{padding:28px 0}
  body.layout-minimal .wrap{width:91vw;padding-top:12px;padding-bottom:150px}
  body.layout-minimal .category-hero-card{padding-top:21px!important}
  body.layout-minimal .product{gap:3px 10px!important;padding:15px 0!important}
  body.layout-minimal .product h3,body.layout-minimal .product .product-title-line{font-size:16px!important}
  body.layout-minimal .product p{font-size:13px}
  body.layout-minimal .product-price-right strong{font-size:15px!important}
  body.layout-minimal .product-button-slot{margin-top:6px}
  body.layout-minimal .cat-nav a{padding:9px 11px;font-size:12px}
  body.layout-minimal .cart{left:10px;right:10px;bottom:74px}
  body.layout-minimal .back-top{bottom:81px}
}

/* =========================================================
   ViMENÙ 2.0.4 — Rifiniture Layout Minimal
   - badge separati dal titolo
   - barra categorie realmente aderente al fondo viewport
   ========================================================= */
body.layout-minimal .product{
  grid-template-areas:
    "badge price"
    "info action"
    "warning warning"
    "advice advice"
    "options options"!important;
  row-gap:6px!important;
}
body.layout-minimal .product-badges-standard-row{
  grid-area:badge!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:6px!important;
  width:auto!important;
  max-width:100%!important;
  min-height:0!important;
  margin:0 0 3px!important;
  padding:0!important;
  overflow:visible!important;
  z-index:1!important;
}
body.layout-minimal .product-badges-standard-row .badge{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:24px!important;
  margin:0!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  white-space:normal!important;
  line-height:1.15!important;
  font-size:10px!important;
  font-weight:800!important;
  overflow-wrap:anywhere!important;
  box-shadow:none!important;
}
body.layout-minimal .product .p-info{
  grid-area:info!important;
  padding-top:0!important;
}
body.layout-minimal .product h3,
body.layout-minimal .product .product-title-line{
  position:relative!important;
  z-index:0!important;
  clear:both!important;
}

body.layout-minimal .sticky-category-bar{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  top:auto!important;
  width:100%!important;
  margin:0!important;
  padding:8px max(10px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-bottom))!important;
  border:0!important;
  border-top:1px solid color-mix(in srgb,var(--line) 78%,transparent)!important;
  border-radius:18px 18px 0 0!important;
  background:color-mix(in srgb,var(--cat-nav-bg) 94%,transparent)!important;
  box-shadow:0 -10px 30px rgba(15,23,42,.12)!important;
  backdrop-filter:blur(18px) saturate(1.25)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.25)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
  z-index:90!important;
}
body.layout-minimal .sticky-category-bar .cat-nav{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  width:min(920px,100%)!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:2px!important;
  gap:7px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  scrollbar-width:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.layout-minimal .sticky-category-bar .cat-nav a{
  position:relative!important;
  flex:0 0 auto!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 15px!important;
  border:1px solid color-mix(in srgb,var(--line) 82%,transparent)!important;
  border-radius:12px!important;
  background:color-mix(in srgb,var(--cat-nav-bg) 88%,var(--bg))!important;
  color:var(--cat-nav-text)!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  box-shadow:0 2px 8px rgba(15,23,42,.04)!important;
  scroll-snap-align:center!important;
  transition:transform .16s ease,background .16s ease,color .16s ease,border-color .16s ease!important;
}
body.layout-minimal .sticky-category-bar .cat-nav a.active,
body.layout-minimal .sticky-category-bar .cat-nav a:hover{
  background:var(--cat-nav-active-bg)!important;
  color:var(--cat-nav-active-text)!important;
  border-color:var(--cat-nav-active-bg)!important;
  transform:translateY(-1px)!important;
  box-shadow:0 6px 16px color-mix(in srgb,var(--cat-nav-active-bg) 22%,transparent)!important;
}
body.layout-minimal .wrap{
  padding-bottom:calc(132px + env(safe-area-inset-bottom))!important;
}
body.layout-minimal footer{
  padding-bottom:calc(92px + env(safe-area-inset-bottom))!important;
}
body.layout-minimal .cart{
  bottom:calc(72px + env(safe-area-inset-bottom))!important;
}
body.layout-minimal .back-top{
  bottom:calc(78px + env(safe-area-inset-bottom))!important;
}
@media(max-width:680px){
  body.layout-minimal .product{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "badge badge"
      "info price"
      "info action"
      "warning warning"
      "advice advice"
      "options options"!important;
    gap:5px 10px!important;
  }
  body.layout-minimal .product-badges-standard-row{margin-bottom:2px!important}
  body.layout-minimal .sticky-category-bar{
    padding:7px 8px max(7px,env(safe-area-inset-bottom))!important;
    border-radius:16px 16px 0 0!important;
  }
  body.layout-minimal .sticky-category-bar .cat-nav{gap:6px!important;padding:1px!important}
  body.layout-minimal .sticky-category-bar .cat-nav a{
    min-height:40px!important;
    padding:9px 13px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
  body.layout-minimal .wrap{padding-bottom:calc(126px + env(safe-area-inset-bottom))!important}
  body.layout-minimal .cart{bottom:calc(67px + env(safe-area-inset-bottom))!important}
  body.layout-minimal .back-top{bottom:calc(73px + env(safe-area-inset-bottom))!important}
}

.cart-menu-source{display:inline-flex;font-size:.72rem;font-weight:700;letter-spacing:.02em;padding:3px 7px;border:1px solid var(--cart-border,var(--line));border-radius:999px;color:var(--cart-muted,var(--muted));margin-bottom:3px}


/* v1.1.3 — Elite Dark/Light: reset strutturale dopo introduzione product-image-wrap.
   Usa classi esplicite invece di :has(> img), perché nei layout Elite la foto è avvolta
   in .product-image-wrap per ospitare badge e overlay. */
body.layout-grand_luxury .products,
body.layout-grand_luxury_light .products{
  grid-template-columns:1fr!important;
  gap:16px!important;
}
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product{
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:auto!important;
  gap:14px 20px!important;
  min-height:0!important;
  padding:22px!important;
  overflow:hidden!important;
}
body.layout-grand_luxury .product.has-product-image,
body.layout-grand_luxury_light .product.has-product-image{
  grid-template-columns:minmax(0,1fr) 190px!important;
  grid-template-rows:auto auto!important;
  align-items:start!important;
}
body.layout-grand_luxury .product .p-info,
body.layout-grand_luxury_light .product .p-info{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  align-self:start!important;
}
body.layout-grand_luxury .product-image-wrap,
body.layout-grand_luxury_light .product-image-wrap{
  position:relative!important;
  grid-column:2!important;
  grid-row:1!important;
  width:190px!important;
  height:170px!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
  align-self:start!important;
  margin:0!important;
}
body.layout-grand_luxury .product-image-wrap img,
body.layout-grand_luxury_light .product-image-wrap img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  margin:0!important;
}
body.layout-grand_luxury .product .product-action-row,
body.layout-grand_luxury_light .product .product-action-row{
  grid-column:1 / -1!important;
  grid-row:2!important;
  width:100%!important;
  min-height:0!important;
  margin:0!important;
  padding-top:14px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:16px!important;
}
body.layout-grand_luxury .product .product-button-slot,
body.layout-grand_luxury_light .product .product-button-slot{
  min-width:0!important;
  width:auto!important;
}
body.layout-grand_luxury .product .add,
body.layout-grand_luxury_light .product .add{
  width:auto!important;
  max-width:100%!important;
  min-width:160px!important;
  min-height:44px!important;
  padding:11px 18px!important;
}
body.layout-grand_luxury .product .price,
body.layout-grand_luxury_light .product .price{
  justify-self:end!important;
  align-self:center!important;
  margin:0!important;
  min-width:max-content!important;
  text-align:right!important;
}
body.layout-grand_luxury .product h3,
body.layout-grand_luxury_light .product h3{
  margin:0 0 8px!important;
  font-size:clamp(25px,2.5vw,36px)!important;
  line-height:1.05!important;
}
body.layout-grand_luxury .product p,
body.layout-grand_luxury_light .product p{
  margin:0 0 8px!important;
  max-width:760px!important;
  font-size:15px!important;
  line-height:1.5!important;
}
body.layout-grand_luxury .product-image-wrap .luxury-image-badges,
body.layout-grand_luxury_light .product-image-wrap .luxury-image-badges{
  position:absolute!important;
  top:12px!important;
  left:0!important;
  right:auto!important;
  bottom:auto!important;
  margin:0!important;
  padding:0!important;
  z-index:3!important;
}
body.layout-grand_luxury .product-image-wrap .badge,
body.layout-grand_luxury_light .product-image-wrap .badge{
  min-width:0!important;
  max-width:165px!important;
  width:auto!important;
  padding:8px 12px!important;
  font-size:10px!important;
}
body.layout-grand_luxury .product:not(.has-product-image) .product-action-row,
body.layout-grand_luxury_light .product:not(.has-product-image) .product-action-row{
  grid-row:auto!important;
}
body.layout-grand_luxury .product:not(.has-product-image) .product-button-slot,
body.layout-grand_luxury_light .product:not(.has-product-image) .product-button-slot{
  width:100%!important;
}
body.layout-grand_luxury .product:not(.has-product-image) .add,
body.layout-grand_luxury_light .product:not(.has-product-image) .add{
  width:100%!important;
}
body.layout-grand_luxury .product:not(.has-product-image) .product-action-row,
body.layout-grand_luxury_light .product:not(.has-product-image) .product-action-row{
  grid-template-columns:minmax(0,1fr) auto!important;
}
body.layout-grand_luxury{
  --lux-gold:color-mix(in srgb,var(--accent) 72%,#d8b46a)!important;
  --lux-gold-soft:color-mix(in srgb,var(--accent) 42%,#f1d697 58%)!important;
}
body.layout-grand_luxury_light{
  --lux-gold:color-mix(in srgb,var(--accent) 66%,#a4834a)!important;
  --lux-gold-soft:color-mix(in srgb,var(--accent) 35%,#b79a68 65%)!important;
}
@media(max-width:760px){
  body.layout-grand_luxury .product.has-product-image,
  body.layout-grand_luxury_light .product.has-product-image{
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
    padding:16px!important;
  }
  body.layout-grand_luxury .product-image-wrap,
  body.layout-grand_luxury_light .product-image-wrap{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:210px!important;
    order:-1!important;
  }
  body.layout-grand_luxury .product.has-product-image .p-info,
  body.layout-grand_luxury_light .product.has-product-image .p-info{
    grid-column:1!important;
    grid-row:2!important;
  }
  body.layout-grand_luxury .product.has-product-image .product-action-row,
  body.layout-grand_luxury_light .product.has-product-image .product-action-row{
    grid-column:1!important;
    grid-row:3!important;
    grid-template-columns:1fr auto!important;
  }
  body.layout-grand_luxury .product .add,
  body.layout-grand_luxury_light .product .add{
    min-width:0!important;
  }
}


/* =========================================================
   ViMENÙ 1.1.4 — Elite Dark / Light definitive card reset
   ========================================================= */
body.layout-grand_luxury .product,
body.layout-grand_luxury_light .product{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-areas:
    "info"
    "advice"
    "warning"
    "actions"
    "options"!important;
  gap:14px!important;
  min-height:0!important;
  padding:22px!important;
  align-items:start!important;
}
body.layout-grand_luxury .product.has-product-image,
body.layout-grand_luxury_light .product.has-product-image{
  grid-template-columns:minmax(0,1fr) minmax(180px,230px)!important;
  grid-template-areas:
    "info image"
    "advice advice"
    "warning warning"
    "actions actions"
    "options options"!important;
  column-gap:24px!important;
}
body.layout-grand_luxury .product .p-info,
body.layout-grand_luxury_light .product .p-info{
  grid-area:info!important;
  grid-column:auto!important;
  grid-row:auto!important;
  position:static!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
body.layout-grand_luxury .product .product-image-wrap,
body.layout-grand_luxury_light .product .product-image-wrap{
  grid-area:image!important;
  grid-column:auto!important;
  grid-row:auto!important;
  display:block!important;
  position:relative!important;
  width:100%!important;
  height:180px!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  order:initial!important;
}
body.layout-grand_luxury .product .product-image-wrap>img,
body.layout-grand_luxury_light .product .product-image-wrap>img{
  display:block!important;
  position:static!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  object-fit:cover!important;
  border-radius:0!important;
  transform:none!important;
}
body.layout-grand_luxury .product .product-advice-card,
body.layout-grand_luxury_light .product .product-advice-card{
  grid-area:advice!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
body.layout-grand_luxury .product .product-material-warning,
body.layout-grand_luxury_light .product .product-material-warning{
  grid-area:warning!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
body.layout-grand_luxury .product .product-action-row,
body.layout-grand_luxury_light .product .product-action-row{
  grid-area:actions!important;
  grid-column:auto!important;
  grid-row:auto!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:14px 0 0!important;
  border-top:1px solid color-mix(in srgb,var(--lux-gold) 32%,transparent)!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  overflow:visible!important;
}
body.layout-grand_luxury .product .product-button-slot,
body.layout-grand_luxury_light .product .product-button-slot{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:auto!important;
  max-width:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  overflow:visible!important;
}
body.layout-grand_luxury .product .add,
body.layout-grand_luxury_light .product .add,
body.layout-grand_luxury .product .catalog-options-toggle,
body.layout-grand_luxury_light .product .catalog-options-toggle{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  width:auto!important;
  min-width:180px!important;
  max-width:min(360px,100%)!important;
  min-height:46px!important;
  margin:0!important;
  padding:11px 20px!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.layout-grand_luxury .product .price,
body.layout-grand_luxury_light .product .price,
body.layout-grand_luxury .product .product-price-right,
body.layout-grand_luxury_light .product .product-price-right{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  flex:0 0 auto!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  white-space:nowrap!important;
  text-align:right!important;
  overflow:visible!important;
}
body.layout-grand_luxury .product .price strong,
body.layout-grand_luxury_light .product .price strong{
  font-size:clamp(26px,2.5vw,38px)!important;
  line-height:1!important;
}
body.layout-grand_luxury .product .catalog-options,
body.layout-grand_luxury_light .product .catalog-options{
  grid-area:options!important;
  grid-column:auto!important;
  grid-row:auto!important;
}
body.layout-grand_luxury .product-image-wrap .luxury-image-badges,
body.layout-grand_luxury_light .product-image-wrap .luxury-image-badges{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  right:auto!important;
  bottom:auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:calc(100% - 20px)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  gap:5px!important;
  flex-wrap:wrap!important;
  z-index:4!important;
}
body.layout-grand_luxury .product-image-wrap .luxury-image-badges .badge,
body.layout-grand_luxury_light .product-image-wrap .luxury-image-badges .badge{
  width:auto!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:7px 10px!important;
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  white-space:nowrap!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
body.layout-grand_luxury .product:not(.has-product-image),
body.layout-grand_luxury_light .product:not(.has-product-image){
  grid-template-columns:1fr!important;
}
body.layout-grand_luxury .product:not(.has-product-image) .product-button-slot,
body.layout-grand_luxury_light .product:not(.has-product-image) .product-button-slot{
  flex:1 1 auto!important;
}
body.layout-grand_luxury .product:not(.has-product-image) .add,
body.layout-grand_luxury_light .product:not(.has-product-image) .add{
  width:min(100%,520px)!important;
  max-width:520px!important;
}
@media(max-width:760px){
  body.layout-grand_luxury .product,
  body.layout-grand_luxury_light .product,
  body.layout-grand_luxury .product.has-product-image,
  body.layout-grand_luxury_light .product.has-product-image{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "image"
      "info"
      "advice"
      "warning"
      "actions"
      "options"!important;
    padding:16px!important;
    gap:12px!important;
  }
  body.layout-grand_luxury .product:not(.has-product-image),
  body.layout-grand_luxury_light .product:not(.has-product-image){
    grid-template-areas:
      "info"
      "advice"
      "warning"
      "actions"
      "options"!important;
  }
  body.layout-grand_luxury .product .product-image-wrap,
  body.layout-grand_luxury_light .product .product-image-wrap{
    height:220px!important;
  }
  body.layout-grand_luxury .product .product-action-row,
  body.layout-grand_luxury_light .product .product-action-row{
    gap:12px!important;
  }
  body.layout-grand_luxury .product .add,
  body.layout-grand_luxury_light .product .add{
    min-width:0!important;
    max-width:100%!important;
  }
  body.layout-grand_luxury .product .price strong,
  body.layout-grand_luxury_light .product .price strong{
    font-size:25px!important;
  }
}
@media(max-width:480px){
  body.layout-grand_luxury .product .product-action-row,
  body.layout-grand_luxury_light .product .product-action-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
  }
  body.layout-grand_luxury .product .product-button-slot,
  body.layout-grand_luxury_light .product .product-button-slot{min-width:0!important}
  body.layout-grand_luxury .product .add,
  body.layout-grand_luxury_light .product .add{width:100%!important}
}

body.layout-grand_luxury .product.has-product-image>.p-info>.product-badges,
body.layout-grand_luxury_light .product.has-product-image>.p-info>.product-badges{
  display:none!important;
}


/* =========================================================
   ViMENÙ 1.1.6 — Elite desktop/tablet specificity fix
   Le vecchie regole Elite usavano selettori più specifici
   (.product.has-product-image > ...), quindi gli override
   generici della 1.1.4 non potevano vincere con !important.
   ========================================================= */
@media(min-width:761px){
  body.layout-grand_luxury .product.has-product-image,
  body.layout-grand_luxury_light .product.has-product-image{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) clamp(220px,24vw,310px)!important;
    grid-template-rows:auto auto auto auto!important;
    column-gap:26px!important;
    row-gap:14px!important;
    min-height:0!important;
    height:auto!important;
    padding:24px!important;
    align-items:start!important;
  }

  body.layout-grand_luxury .product.has-product-image > .p-info,
  body.layout-grand_luxury_light .product.has-product-image > .p-info{
    grid-column:1!important;
    grid-row:1!important;
    align-self:start!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    width:100%!important;
    height:clamp(210px,20vw,280px)!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-image-wrap > img,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > img{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:cover!important;
    margin:0!important;
    transform:none!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-advice-card,
  body.layout-grand_luxury_light .product.has-product-image > .product-advice-card{
    grid-column:1 / -1!important;
    grid-row:auto!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-material-warning,
  body.layout-grand_luxury_light .product.has-product-image > .product-material-warning{
    grid-column:1 / -1!important;
    grid-row:auto!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-action-row,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row{
    grid-column:1 / -1!important;
    grid-row:auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:18px!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:15px 0 0!important;
    border-top:1px solid color-mix(in srgb,var(--lux-gold) 32%,transparent)!important;
    flex-direction:initial!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-button-slot,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-button-slot{
    grid-column:1!important;
    width:100%!important;
    min-width:0!important;
    display:block!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-button-slot > .add,
  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-button-slot > .catalog-options-toggle,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-button-slot > .add,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-button-slot > .catalog-options-toggle{
    width:min(100%,520px)!important;
    min-width:0!important;
    max-width:520px!important;
    white-space:nowrap!important;
    text-align:center!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-action-row > .price,
  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-price-right,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .price,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-price-right{
    grid-column:2!important;
    width:auto!important;
    min-width:max-content!important;
    text-align:right!important;
    justify-self:end!important;
    margin:0!important;
  }

  body.layout-grand_luxury .product.has-product-image > .catalog-options,
  body.layout-grand_luxury_light .product.has-product-image > .catalog-options{
    grid-column:1 / -1!important;
    grid-row:auto!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-image-wrap > .luxury-image-badges,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > .luxury-image-badges{
    top:10px!important;
    left:10px!important;
    right:auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:calc(100% - 20px)!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-image-wrap > .luxury-image-badges .badge,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap > .luxury-image-badges .badge{
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    padding:8px 11px!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.10em!important;
    white-space:nowrap!important;
  }

  body.layout-grand_luxury .product:not(.has-product-image),
  body.layout-grand_luxury_light .product:not(.has-product-image){
    min-height:0!important;
    height:auto!important;
    padding:24px!important;
  }

  body.layout-grand_luxury .product:not(.has-product-image) > .product-action-row,
  body.layout-grand_luxury_light .product:not(.has-product-image) > .product-action-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
    width:100%!important;
  }
}

@media(min-width:761px) and (max-width:1100px){
  body.layout-grand_luxury .product.has-product-image,
  body.layout-grand_luxury_light .product.has-product-image{
    grid-template-columns:minmax(0,1fr) 220px!important;
    column-gap:18px!important;
    padding:20px!important;
  }
  body.layout-grand_luxury .product.has-product-image > .product-image-wrap,
  body.layout-grand_luxury_light .product.has-product-image > .product-image-wrap{
    height:210px!important;
  }
  body.layout-grand_luxury .product h3,
  body.layout-grand_luxury_light .product h3{
    font-size:clamp(26px,3.2vw,38px)!important;
  }
}

@media(min-width:761px){
  body.layout-grand_luxury .product.has-product-image > .product-action-row,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row,
  body.layout-grand_luxury .product.has-product-image > .catalog-options,
  body.layout-grand_luxury_light .product.has-product-image > .catalog-options{
    order:initial!important;
  }
}


/* ViMENÙ 1.1.7 — Elite: azione allineata a sinistra su tablet/desktop */
@media(min-width:761px){
  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-button-slot,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-button-slot,
  body.layout-grand_luxury .product:not(.has-product-image) > .product-action-row > .product-button-slot,
  body.layout-grand_luxury_light .product:not(.has-product-image) > .product-action-row > .product-button-slot{
    justify-self:start!important;
    align-self:center!important;
    justify-content:flex-start!important;
    text-align:left!important;
    margin:0!important;
    padding-left:0!important;
  }

  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-button-slot > .add,
  body.layout-grand_luxury .product.has-product-image > .product-action-row > .product-button-slot > .catalog-options-toggle,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-button-slot > .add,
  body.layout-grand_luxury_light .product.has-product-image > .product-action-row > .product-button-slot > .catalog-options-toggle,
  body.layout-grand_luxury .product:not(.has-product-image) > .product-action-row > .product-button-slot > .add,
  body.layout-grand_luxury_light .product:not(.has-product-image) > .product-action-row > .product-button-slot > .add{
    margin-left:0!important;
    margin-right:auto!important;
    justify-self:start!important;
  }
}


/* ViMENÙ 1.1.8 — cambio lingua: transizione elegante e non tecnica */
.md-language-transition{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:20px;
  background:color-mix(in srgb,var(--bg) 72%,transparent);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease;
}
.md-language-transition.is-visible{opacity:1;visibility:visible}
.md-language-transition-card{
  min-width:180px;
  max-width:min(82vw,300px);
  display:grid;
  justify-items:center;
  gap:8px;
  padding:22px 26px;
  border:1px solid color-mix(in srgb,var(--line) 78%,transparent);
  border-radius:max(18px,var(--radius));
  background:color-mix(in srgb,var(--card) 92%,transparent);
  color:var(--text);
  box-shadow:0 24px 70px rgba(15,23,42,.16);
}
.md-language-transition-flag{font-size:30px;line-height:1}
.md-language-transition-ring{
  width:28px;height:28px;
  border:2px solid color-mix(in srgb,var(--primary) 20%,transparent);
  border-top-color:var(--primary);
  border-radius:50%;
  animation:md-language-spin .75s linear infinite;
}
.md-language-transition-card strong{font-size:16px;line-height:1.1;text-align:center}
.md-language-transition-card small{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
body.md-language-changing main.wrap{transition:opacity .18s ease;opacity:.72}
#mdTranslateMsg:empty{display:none}
#mdTranslateMsg:not(:empty){display:block;margin-top:6px;color:var(--muted);font-size:11px;font-weight:700}
@keyframes md-language-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  .md-language-transition,.md-language-transition-ring,body.md-language-changing main.wrap{transition:none!important;animation:none!important}
}


/* ViMENÙ 1.1.15 — espansione accordion gestita via JS con altezza reale */
body.category-mode-accordion .category-products,
body.category-mode-accordion_auto .category-products{
  transform-origin:top center;
}
body.category-mode-accordion .category-accordion-icon,
body.category-mode-accordion_auto .category-accordion-icon{
  transition:transform .24s ease,background-color .24s ease,box-shadow .24s ease!important;
}
body.category-mode-accordion .category.accordion-open .category-accordion-icon,
body.category-mode-accordion_auto .category.accordion-open .category-accordion-icon{
  transform:scale(.96);
}
@media(prefers-reduced-motion:reduce){
  body.category-mode-accordion .category-accordion-icon,
  body.category-mode-accordion_auto .category-accordion-icon{
    transition:none!important;
  }
}


/* ViMENÙ 1.1.16 — stabilità scroll accordion automatico */
body.category-mode-accordion_auto .category-products{
  overflow-anchor:none;
}
body.category-mode-accordion_auto .category-hero-card{
  overflow-anchor:auto;
}
body.md-accordion-transitioning{
  overscroll-behavior-y:contain;
}


/* ViMENÙ 1.1.17 — accordion automatico progressivo e stabile */
body.category-mode-accordion_auto .category[data-category-section],
body.category-mode-accordion_auto .category-products{
  overflow-anchor:none;
}
body.category-mode-accordion_auto .category[data-category-section].accordion-open .category-products{
  transform-origin:top center;
}
