/********************************************************
			Coderplace Custom Styles
********************************************************/
.tm-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}
.cp-carousel {
  display: none;
  position: relative;
  float: left;
  width: 100%;
  margin: 0;
}
.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0px, 0px, 0px);
  -ms-transform: translate3d(0px, 0px, 0px);
  -o-transform: translate3d(0px, 0px, 0px);
  -moz-transform: translate3d(0px, 0px, 0px);
  display: flex!important;
  flex-wrap: wrap;
}
.owl-carousel .owl-wrapper:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}
.owl-carousel .owl-wrapper-outer {
    overflow-x: clip;
    position: relative;
    float: left;
    width: 100%;
    padding: 0;
}
.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  -moz-transition: height 500ms ease-in-out;
  -ms-transition: height 500ms ease-in-out;
  -o-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out;
}
.owl-carousel .owl-item {
  float: left;
  display: flex;
  height: auto;
}
#cptestimonial .owl-wrapper-outer .owl-item {
  display: block;
}
.owl-carousel .owl-item .manu_image a {
  display: inline-block;
}
.owl-carousel .owl-item .manu_image a img {
  max-width: 100%;
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  /* fix */
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  text-align: center;
}

/* mouse grab icon */
.customNavigation {
	position: absolute;
	z-index: 9;
	width: 100%;
	top: 50%;
	direction: ltr !important;
	right: 0;
	left: auto;
  opacity: 0;
  -khtml-opacity: 0;
-webkit-opacity: 0;
-moz-opacity: 0;
}
.products .customNavigation {
	top: 48%;
}
.tmcategorylist .customNavigation, .testimonial-block-part .customNavigation {
	top: 54%;
}
.tmcategorylist:hover .customNavigation {
	opacity: 1;
	-khtml-opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
}
.customNavigation a.prev::before {
	content: "\E314";
	font-family: "Material Icons";
	position: absolute;
	font-size: 20px;
	right: 5px;
	top: -1px;
	color: #808080;
}
.customNavigation a.next::before {
	content: "\E315";
	font-family: "Material Icons";
	position: absolute;
	font-size: 20px;
	position: absolute;
	right: 3px;
	top: -1px;
	color: #808080;
}
#tmtestimonialcmsblock .customNavigation {
  top: -24px;
  z-index: 5;
  right: 15px;
}
#index #tmtestimonialcmsblock .customNavigation {
  top: -40px;
  right: 0;
}
.special-products .customNavigation {
	top: 52%;
}
.special-products:hover .customNavigation, 
.products:hover .customNavigation,
.testimonial-block-part:hover .customNavigation,
.tmblog-latest:hover .customNavigation, 
#tminstagramblock:hover .customNavigation,
.product-accessories:hover .customNavigation,
.productscategory-products:hover .customNavigation{
  opacity: 1;
  -khtml-opacity: 1;
  -webkit-opacity: 1;
  -moz-opacity: 1;
}
.lastest_block .customNavigation {
	top: 44%;
}
.customNavigation i {
	color: #222 !important;
	cursor: pointer;
	font-size: 0;
	font-weight: 500;
	height: 38px;
	line-height: 32px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	text-align: center;
	width: 38px;
	background: transparent;
	border-radius: 0;
	font-style: unset;
	box-shadow: 0px 0px 16px 0px rgba(0,0,0,0.11);
}

.customNavigation i.prev {
	background: transparent;
	right: auto;
	background: #fff;
	border-radius: 50%;
	left: -5px;
}
.customNavigation i.next {
	background: transparent;
	right: 0px;
	background: #fff;
	border-radius: 50%;
	right: -5px;
}
.tmcategorylist .customNavigation i.prev, 
.testimonial-block-part .customNavigation i.prev, 
#tminstagramblock .btn.prev.instagram_prev,
.special-products .customNavigation i.prev{
	left: -20px;
}
.tmcategorylist .customNavigation i.next, 
.testimonial-block-part .customNavigation i.next, 
#tminstagramblock .btn.next.instagram_next,
.special-products .customNavigation i.next  {
  right: -20px;
}
.customNavigation i.prev::before {
	content: '';
	-webkit-mask-image: url(../img/megnor/pro-left.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../img/megnor/pro-left.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: #000;
	mask-size: 14px;
	font-size: 14px;
	width: 38px;
	height: 38px;
	display: block;
  -webkit-mask-size: 14px;
}
#tmtestimonialcmsblock .customNavigation i.prev::before {
  right: 1px;
  font-weight: 500;
}
#tmtestimonialcmsblock .customNavigation i.next::before {
  right: 0;
  font-weight: 500;
}
.customNavigation i.next::before {
	content: '';
	-webkit-mask-image: url(../img/megnor/pro-right.svg);
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-image: url(../img/megnor/pro-right.svg);
	mask-position: center;
	mask-repeat: no-repeat;
	background-color: #000;
	mask-size: 14px;
	font-size: 14px;
	width: 38px;
	height: 38px;
	display: block;
  -webkit-mask-size: 14px;
}
.customNavigation i.next:hover::before,.customNavigation i.prev:hover::before  {
  color: #fff;
}
#cpleftbanner1 img,
#cpleftbanner2 img {
  max-width: 100%;
}
#cpleftbanner1 li,
#cpleftbanner2 li {
  overflow: hidden;
  position: relative;
  float: left;
  border-radius: 5px;
}
#cpleftbanner1 li a,
#cpleftbanner2 li a {
  display: inline-block;
  position: relative;
  overflow: hidden;
  vertical-align: top;
}
.footer-container .links.lastest_block .customNavigation i.prev:hover {
  color: #9bbab1 !important;
}
.footer-container .links.lastest_block .customNavigation i.next:hover {
  color: #9bbab1 !important;
}

@media (max-width: 1449px) {
  .tmcategorylist .customNavigation i.prev, 
  .testimonial-block-part .customNavigation i.prev, 
  #tminstagramblock .btn.prev.instagram_prev,
  .special-products .customNavigation i.prev{
    left: -15px;
  }
  .tmcategorylist .customNavigation i.next, 
  .testimonial-block-part .customNavigation i.next,
   #tminstagramblock .btn.next.instagram_next,
   .special-products .customNavigation i.next {
    right: -15px;
  }
  .customNavigation i.next {
    right: 0;
  }
  .customNavigation i.prev {
    left: 0;
  }
}
@media (max-width: 1199px) {
  #tmtestimonialcmsblock .customNavigation {
    top: -36px;
    z-index: 5;
    right: -18px;
  }
}

@media (max-width: 991px) {
  #cpleftbanner1 li img,
  #cpleftbanner2 li a {
    width: auto;
  }
  #tmtestimonialcmsblock .customNavigation {
    top: 0;
    right: 0;
  }
}
@media (max-width: 767px) {
  .customNavigation {
    opacity: 1;
    -khtml-opacity: 1;
    -webkit-opacity: 1;
    -moz-opacity: 1;
  }
  
  .tmcategorylist .customNavigation i.prev, 
  .testimonial-block-part .customNavigation i.prev, 
  #tminstagramblock .btn.prev.instagram_prev, 
  .special-products .customNavigation i.prev,
  .btn.prev.accessories_prev {
    left: 0;
  }
  .tmcategorylist .customNavigation i.next, 
  .testimonial-block-part .customNavigation i.next,
   #tminstagramblock .btn.next.instagram_next, 
   .special-products .customNavigation i.next,
   .btn.next.accessories_next {
    right: 0;
  }
  #main .images-container .js-qv-mask .customNavigation {
    top: 40%;
  }
  .quickview .mask.additional_slider .customNavigation i.prev {
    left: -10px !important;
  }
  .quickview .mask.additional_slider .customNavigation i.next {
    right: -10px !important;
  }
  .btn.next.brand_next {
    left: auto;
    right: 0;
    position: absolute;
  }
  .btn.prev.brand_prev {
    left: 0;
    right: auto;
  }
  .customNavigation i.next {
    left: auto;
    right: 0;
  }
}
@media (max-width: 480px) {
}


/* Font ospitati localmente (SIL Open Font License) - nessuna richiesta a Google */
@font-face {
  font-family: 'Bodoni Moda';
  font-style: italic;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/li/BodoniModa-italic-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: italic;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/li/BodoniModa-italic-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/li/BodoniModa-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Bodoni Moda';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(../fonts/li/BodoniModa-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(../fonts/li/HankenGrotesk-normal-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url(../fonts/li/HankenGrotesk-normal-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ==========================================================================
   L'Intrigo — identità visiva (Profweb, ottobre 2026)
   Boutique "boudoir": Bodoni Moda per i titoli, Hanken Grotesk per il testo,
   rosso del logo usato con parsimonia, antracite per le zone scure.
   ========================================================================== */
:root {
  --li-red: #45601C;
  --li-red-deep: #374C14;
  --li-ink: #14151A;
  --li-graphite: #232323;
  --li-blush: #F6F7F3;
  --li-mute: #6B6460;
  --li-line: #EEF1E7;
  --li-white: #FFFFFF;
  --li-serif: "Bodoni Moda", "Didot", Georgia, serif;
  --li-sans: "Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;
}

/* ---------- Base tipografica ---------- */
body, #wrapper, #footer, .btn, input, select, textarea { font-family: var(--li-sans); color: var(--li-graphite); }
body { font-weight: 400; -webkit-font-smoothing: antialiased; }
#header *, #wrapper *, #footer *, .slide-text, .slide-text * { text-transform: none !important; letter-spacing: normal; }
h1, h2, h3, .h1, .h2, .h3 { font-family: var(--li-serif); font-weight: 500; color: var(--li-ink); }
a { transition: color .2s ease; }
a:hover, a:focus { color: var(--li-red); }
:focus-visible { outline: 2px solid var(--li-red); outline-offset: 2px; }

/* ---------- Pulsanti ---------- */
.btn-primary, .btn-primary:focus, .li-btn {
  background: var(--li-ink) !important; border: 1px solid var(--li-ink) !important; color: #fff !important;
  font-family: var(--li-sans); font-weight: 500; font-size: 14px; letter-spacing: .02em;
  padding: 13px 28px; border-radius: 0; box-shadow: none;
}
.btn-primary:hover, .li-btn:hover { background: var(--li-red) !important; border-color: var(--li-red) !important; color: #fff !important; }
/* Pulsanti dello slider: sempre rosso del sito, anche in hover (richiesta cliente) */
.li-btn--light, .li-btn--light:hover, .li-btn--light:focus, .li-btn--light:active {
  background: var(--li-red) !important; border: 1px solid var(--li-red) !important; color: #fff !important; display: inline-block; }

/* ---------- Barra superiore ---------- */
#cpheadercms2 { background: var(--li-ink) !important; }
#cpheadercms2 .container { padding-top: 0; padding-bottom: 0; }
.li-topbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 9px 0; font-size: 13px; font-style: normal !important; font-weight: 400; color: rgba(255,255,255,.86) !important; }
.li-topbar a.li-topbar__tel { color: #fff !important; text-decoration: none; border-bottom: 1px solid rgba(228,38,38,.9); padding-bottom: 1px; }
.li-topbar a.li-topbar__tel:hover { color: var(--li-red) !important; }

/* ---------- Header ---------- */
.header-top-main.bg_main { padding-top: 18px; padding-bottom: 14px; }
#_desktop_logo img.logo { max-height: 78px; width: auto; }
#header .header-right a, #header .header-right i, #header .header-right span { color: var(--li-ink); }
#header .cart-products-count, #header .wishlist-count, #header .compare-count,
#header .header-right .count, #header .header-right .cart-count,
#header .ap-total-compare, #header .ap-total-wishlist, #header .cart-products-counthome, #header .ap-total { background: var(--li-red) !important; color: #fff !important; }

/* menu categorie a tutta larghezza */
#header > .header-top-main.bg_main { padding: 0 !important; border-top: 1px solid var(--li-line); border-bottom: 1px solid var(--li-line); }
#header > .header-top-main.bg_main > .sub-container { padding: 0 !important; }
#header #_top_main_menu { width: 100% !important; max-width: none; float: none; margin: 0 auto; }
#header #_desktop_top_menu > ul.top-menu, #header .header-nav-fullwidth ul.top-menu[data-depth="0"] { display: flex; justify-content: center; flex-wrap: wrap; gap: 0 6px; margin: 0; }
#header ul.top-menu[data-depth="0"] > li > a.dropdown-item {
  font-family: var(--li-sans); font-size: 15px; font-weight: 500; color: var(--li-ink); padding: 15px 14px; position: relative;
}
#header ul.top-menu[data-depth="0"] > li > a.dropdown-item::after {
  content: ""; position: absolute; left: 14px; right: 14px; bottom: 10px; height: 1px; background: var(--li-red);
  transform: scaleX(0); transform-origin: left; transition: transform .25s ease;
}
#header ul.top-menu[data-depth="0"] > li > a.dropdown-item:hover { color: var(--li-red); }
#header ul.top-menu[data-depth="0"] > li > a.dropdown-item:hover::after { transform: scaleX(1); }
#header #cpcategory-36 > a.dropdown-item { color: var(--li-red); }

/* ---------- Hero ---------- */
#carousel .carousel-item figure, .cp-homeslider figure { position: relative; margin: 0; }
#carousel .carousel-item figure::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(20,21,26,.92) 0%, rgba(20,21,26,.86) 34%, rgba(20,21,26,.45) 56%, rgba(20,21,26,0) 76%);
}
#carousel .caption { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; padding: 0; background: none; }
#carousel .caption .slide-text.li-hero { position: relative; top: auto !important; bottom: auto !important; left: auto !important; transform: none !important; }
.li-hero, .li-hero * { text-align: left !important; }
.li-hero { max-width: 560px; margin-left: 7vw; color: #fff; text-shadow: 0 1px 2px rgba(0,0,0,.35); }
.li-hero__title {
  font-family: var(--li-serif); font-style: italic; font-weight: 400; color: #fff !important;
  font-size: clamp(40px, 5.2vw, 76px); line-height: 1.02; margin: 0 0 22px; letter-spacing: -.01em;
}
.li-hero__text { font-family: var(--li-sans); font-size: 18px; line-height: 1.55; color: rgba(255,255,255,.88); margin: 0 0 30px; max-width: 30em; }
#carousel .carousel-indicators li, #carousel .indicators li { background: rgba(255,255,255,.5); }
/* Frecce dello slider: cerchio come su Caffè Cavaliere, colori L'Intrigo */
#carousel .carousel-control { opacity: 1 !important; background: none !important; }
#carousel .carousel-control .icon-next, #carousel .carousel-control .icon-prev {
  width: 48px !important; height: 48px !important; margin-top: -24px !important; border-radius: 50%;
  display: flex !important; align-items: center; justify-content: center;
  background: rgba(255,255,255,.92); border: 1px solid rgba(20,21,26,.12); box-shadow: 0 4px 14px rgba(0,0,0,.22);
  transition: background-color .2s ease, border-color .2s ease, box-shadow .2s ease; }
#carousel .carousel-control .icon-next::before, #carousel .carousel-control .icon-prev::before {
  content: "" !important; position: static !important; display: block; width: 20px !important; height: 20px !important; margin: 0 !important;
  background-color: var(--li-ink) !important; transition: background-color .2s ease;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 5.5 16 12l-6.5 6.5'/%3E%3C/svg%3E") center / 20px 20px no-repeat !important;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.5 5.5 16 12l-6.5 6.5'/%3E%3C/svg%3E") center / 20px 20px no-repeat !important; }
#carousel .carousel-control .icon-prev::before { transform: scaleX(-1); }
#carousel .carousel-control:hover .icon-next, #carousel .carousel-control:hover .icon-prev,
#carousel .carousel-control:focus-visible .icon-next, #carousel .carousel-control:focus-visible .icon-prev {
  background: var(--li-red); border-color: var(--li-red); box-shadow: 0 6px 18px rgba(0,0,0,.3); }
#carousel .carousel-control:hover .icon-next::before, #carousel .carousel-control:hover .icon-prev::before,
#carousel .carousel-control:focus-visible .icon-next::before, #carousel .carousel-control:focus-visible .icon-prev::before { background-color: #fff !important; }
#carousel .carousel-control:focus-visible { outline: none; }
#carousel .carousel-control:focus-visible .icon-next, #carousel .carousel-control:focus-visible .icon-prev { outline: 2px solid #fff; outline-offset: 3px; }
#carousel .carousel-indicators .active { background: var(--li-red); }

/* ---------- Titoli di sezione ---------- */
.products-section-title { text-align: center; margin-bottom: 34px; }
.products-section-title .short-details { display: none !important; }
.products-section-title h2.title, .products-section-title .title {
  font-family: var(--li-serif); font-weight: 400; font-style: italic; color: var(--li-ink);
  font-size: clamp(30px, 3vw, 42px); line-height: 1.1; margin: 0;
}
.products-section-title h2.title::after {
  content: ""; display: block; width: 44px; height: 2px; background: var(--li-red); margin: 18px auto 0;
}

/* ---------- Tessere categorie (cmsbanner1) ---------- */
.li-tiles .cms_content { position: relative; overflow: hidden; }
.li-tiles .cms_content img { transition: transform .8s cubic-bezier(.2,.7,.2,1); width: 100%; height: auto; display: block; }
.li-tiles .cms_content:hover img { transform: scale(1.04); }
.li-tiles .cms_content::after {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(0deg, rgba(20,21,26,.94) 0%, rgba(20,21,26,.9) 34%, rgba(20,21,26,.55) 52%, rgba(20,21,26,0) 72%);
}
#cpcmsbanner1 .li-tiles .cms_content .cms-block,
#cpcmsbanner1 .li-tiles .cms_content.before .cms-block,
#cpcmsbanner1 .li-tiles .cms_content.after .cms-block { top: auto !important; left: 28px !important; right: 28px !important; bottom: 26px !important; transform: none !important; margin: 0 !important; width: auto !important; }
#cpcmsbanner1 .li-tiles .cms_content.before::before, #cpcmsbanner1 .li-tiles .cms_content.after::before { display: none !important; }
.li-tiles .cms-block { position: absolute !important; left: 28px !important; right: 28px !important; bottom: 26px !important; top: auto !important; z-index: 2; text-align: left !important; }
.li-tiles .offer-text2, .li-tiles .offer-text2 a { font-family: var(--li-serif) !important; font-style: italic; font-weight: 400; font-size: 32px !important; line-height: 1.05; color: #fff !important; margin: 0 0 8px; }
.li-tiles .li-tile__line { color: rgba(255,255,255,.85); font-size: 15px; line-height: 1.45; margin: 0 0 14px; max-width: 24em; }
.li-tiles .offer-button a { color: #fff !important; font-size: 14px; font-weight: 500; padding: 0 0 3px; border-bottom: 1px solid var(--li-red); background: none !important; }

/* ---------- Schede prodotto (miniature) ---------- */
.product-miniature .thumbnail-container { background: #fff; }
.product-miniature .product-title, .product-miniature .product-title a {
  font-family: var(--li-sans) !important; font-size: 15px !important; font-weight: 500 !important; color: var(--li-graphite) !important; line-height: 1.35;
}
.product-miniature .product-title a:hover { color: var(--li-red) !important; }
.product-miniature .price, .product-price-and-shipping .price { font-family: var(--li-sans); font-weight: 600; font-size: 16px; color: var(--li-ink) !important; }
.product-miniature .regular-price { color: var(--li-mute); }
.product-flags .product-flag { background: var(--li-ink); color: #fff; font-family: var(--li-sans); font-size: 12px; font-weight: 500; border-radius: 0; }
.product-flags .product-flag.discount, .product-flags .product-flag.on-sale { background: var(--li-red); }

/* tab categorie */
#cpcategory-tabs { display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 26px; border: 0; margin-bottom: 30px; }
#cpcategory-tabs .nav-link {
  border: 0 !important; background: none !important; color: var(--li-mute) !important; font-family: var(--li-sans);
  font-size: 15px; font-weight: 500; padding: 4px 0; border-bottom: 1px solid transparent !important; border-radius: 0;
}
#cpcategory-tabs .nav-link.active, #cpcategory-tabs .nav-link:hover { color: var(--li-ink) !important; border-bottom-color: var(--li-red) !important; }

/* ---------- Fascia discrezione ---------- */
#cpcmsbanner2 { position: relative; background-size: cover; background-position: center; padding: 120px 0; margin: 70px 0; }
#cpcmsbanner2::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,21,26,.93) 0%, rgba(20,21,26,.86) 55%, rgba(70,8,16,.7) 100%); }
#cpcmsbanner2 .container { position: relative; z-index: 1; }
.li-band { justify-content: flex-start !important; text-align: left !important; }
.li-band .cms-block { text-align: left !important; max-width: 620px; }
.li-band__title { font-family: var(--li-serif) !important; font-style: italic; font-weight: 400 !important; font-size: clamp(36px, 4vw, 58px) !important; line-height: 1.05; color: #fff !important; margin: 0 0 20px; }
.li-band__text { color: rgba(255,255,255,.86); font-size: 18px; line-height: 1.6; margin: 0 0 30px; }
#cpcmsbanner2 .offer-button { text-align: left !important; }
#cpcmsbanner2 .li-btn { background: var(--li-red) !important; border-color: var(--li-red) !important; }
#cpcmsbanner2 .li-btn:hover { background: #fff !important; border-color: #fff !important; color: var(--li-ink) !important; }

/* ---------- Banner doppio (cmsbanner3) ---------- */
.li-duo .cms_content { position: relative; overflow: hidden; }
.li-duo .cms_content::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(20,21,26,.93) 0%, rgba(20,21,26,.88) 45%, rgba(20,21,26,.2) 80%); pointer-events: none; }
.li-duo .cms-block { z-index: 2; top: 50% !important; transform: translateY(-50%); left: 9% !important; }
.li-duo .offer-text2 { font-family: var(--li-serif) !important; font-style: italic; font-weight: 400 !important; font-size: 36px !important; color: #fff !important; line-height: 1.05; margin-bottom: 10px; }
.li-duo .li-duo__line { color: rgba(255,255,255,.85); font-size: 15px; margin: 0 0 16px; }
.li-duo .offer-button a { color: #fff !important; font-size: 14px; font-weight: 500; border-bottom: 1px solid var(--li-red); padding-bottom: 3px; background: none !important; }

/* ---------- Servizi ---------- */
#cpserviceblock { background: #9DB37A; padding: 46px 0; margin: 60px 0; }
#cpserviceblock .container { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; border-top: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; }
#cpserviceblock .service-cms-banner-list { width: auto !important; float: none !important; padding: 0 !important; border: 0 !important; }
#cpserviceblock .service_block_inner { display: block; text-align: left; }
#cpserviceblock .service_image { display: none; }
#cpserviceblock .service_title1 { font-family: var(--li-serif); font-style: italic; font-size: 24px; font-weight: 700; color: var(--li-ink); margin-bottom: 8px; padding-top: 14px; border-top: 2px solid var(--li-ink); display: inline-block; }
#cpserviceblock .service_title2 { font-size: 15px; line-height: 1.55; color: var(--li-ink); }

/* ---------- Footer ---------- */
.footer-container { background: var(--li-ink) !important; color: rgba(255,255,255,.72); }
.footer-container h3, .footer-container .h3, .footer-container .block-contact-title, .footer-container .title .h3 {
  font-family: var(--li-serif) !important; font-style: italic; font-weight: 400 !important; font-size: 22px !important; color: #fff !important;
}
.footer-container a, .footer-container li, .footer-container p, .footer-container span { color: rgba(255,255,255,.72); font-size: 15px; }
.footer-container a:hover { color: #fff !important; }
.footer-container .block-contact .contactdiv span { color: #fff; }
.footer-after { border-top: 1px solid rgba(255,255,255,.1); }
.footer-after .copyright { color: rgba(255,255,255,.55) !important; font-size: 13px; }
#footer .footer-container + div { background: var(--li-ink); }
.li-pay { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px 14px; }
.li-pay__title { margin: 0; font-size: 13px !important; color: rgba(255,255,255,.72) !important; }
.li-pay__list { display: inline-flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; text-decoration: none !important; border-radius: 8px; }
.li-pay__chip { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 12px; background: #fff; border-radius: 6px; }
#footer .li-pay .li-pay__chip svg { display: block; height: 24px !important; width: auto !important; max-width: none !important; min-width: 0 !important; flex: 0 0 auto; position: static !important; }
#footer .li-pay .li-pay__chip { flex: 0 0 auto; width: auto !important; }
.li-pay__word { font-family: var(--li-sans); font-size: 13px !important; font-weight: 600; color: var(--li-ink) !important; white-space: nowrap; }
.li-pay__word b { font-weight: 800; font-style: italic; font-size: 15px; }
.li-pay__list:hover .li-pay__chip, .li-pay__list:focus-visible .li-pay__chip { box-shadow: 0 0 0 2px var(--li-red); }
.li-pay__list:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media (max-width: 767px) { .li-pay { justify-content: center; flex-direction: column; } .li-pay__list { justify-content: center; } }

/* ---------- Accessibilità: link nel testo e rosso su fondi chiari ---------- */
#main p a, .page-content p a, .cms-content p a, #content p a, #description .product-description a, .page-customer-account p a { text-decoration: underline; text-underline-offset: 3px; }
.product-miniature .product-title a, .product-miniature a { text-decoration: none !important; }
.page-customer-account #content .links a:hover, .page-customer-account #content .links a:focus,
.page-my-account #content .links a, .page-my-account #content .links a:hover, #content .links .link-item { color: var(--li-red-deep) !important; }
.page-my-account #content .links a i, .page-my-account #content .links a .link-item i { color: var(--li-red-deep) !important; }

/* ---------- Accessibilità: aree minime e condivisione ---------- */
.bootstrap-touchspin .btn-touchspin, .js-increase-product-quantity, .js-decrease-product-quantity { min-width: 28px; min-height: 26px; }
.li-checkout-register { margin: 6px 0 18px; }
.li-checkout-register a { color: var(--li-ink); text-decoration: underline; text-underline-offset: 3px; }
.social-sharing li, .social-sharing li a { background-color: var(--li-ink) !important; color: #fff !important; }
.social-sharing li:hover, .social-sharing li a:hover { background-color: var(--li-red) !important; }

/* ---------- Pagine catalogo e prodotto ---------- */
body *:not(.material-icons):not([class*="icon"]) { text-transform: none !important; }
.breadcrumb, .breadcrumb a, .breadcrumb li { font-family: var(--li-sans); font-size: 14px; color: var(--li-mute); letter-spacing: 0; }
.breadcrumb li:last-child, .breadcrumb li:last-child a { color: var(--li-ink); }
#left-column .block_title, #left-column h4.block_title { font-family: var(--li-serif) !important; font-style: italic; font-weight: 400 !important; font-size: 24px !important; line-height: 1.15 !important; letter-spacing: 0 !important; color: var(--li-ink); }
#left-column .block .block_title, #left-column .block .block_title *, .text-uppercase.h6, #wrapper .text-uppercase, #footer .text-uppercase, .block_newsletter .block_title, .viewed-products.block .block_title, .block-social .block_title { text-transform: none !important; }
#breadcrumb_wrapper { padding-top: 18px !important; padding-bottom: 18px !important; margin-bottom: 36px !important; min-height: 0 !important; background: #9DB37A !important; }
#breadcrumb_wrapper .breadcrumb { margin: 0; padding: 0; background: transparent; }
#breadcrumb_wrapper .breadcrumb, #breadcrumb_wrapper .breadcrumb a, #breadcrumb_wrapper .breadcrumb li,
#breadcrumb_wrapper .breadcrumb li::after, #breadcrumb_wrapper .breadcrumb li::before { color: var(--li-ink) !important; border-color: rgba(20,21,26,.35) !important; }
#breadcrumb_wrapper .breadcrumb a:hover, #breadcrumb_wrapper .breadcrumb a:focus-visible { color: var(--li-ink) !important; text-decoration: underline; text-underline-offset: 3px; }
.product-prices .tax-shipping-delivery-label, .product-prices .tax-label, .product-price .tax-label { font-size: 14px !important; font-weight: 400 !important; color: var(--li-mute) !important; }
.products-sort-order .select-title { min-width: 300px; line-height: 1.4; padding: 10px 34px 10px 14px; }
#left-column .product-title, #left-column .product-title a, #left-column .product-name a { font-family: var(--li-sans) !important; font-size: 14px !important; font-weight: 500 !important; }
#left-column .block_title::after { content: ""; display: block; width: 32px; height: 2px; background: var(--li-red); margin-top: 10px; }
h1.productpage_title, #main h1.h1.productpage_title { font-family: var(--li-sans) !important; font-weight: 600 !important; font-size: 26px !important; line-height: 1.25 !important; letter-spacing: 0 !important; color: var(--li-ink); }
#js-product-list-header h1, .block-category h1 { font-family: var(--li-serif); font-style: italic; font-weight: 400; font-size: 40px; letter-spacing: 0; }
.block-category .category-cover { display: none; }
.block-category { background: transparent; border: 0; min-height: 0; padding-left: 0; }
.product-prices .current-price .price, .product-price.h5 .price { font-family: var(--li-sans); font-weight: 600; font-size: 26px; color: var(--li-ink); }
.bootstrap-touchspin { display: inline-flex !important; align-items: stretch; width: auto !important; }
.bootstrap-touchspin .input-group-btn-vertical { display: flex !important; flex-direction: column; position: static !important; width: auto !important; }
.bootstrap-touchspin .input-group-btn-vertical .btn-touchspin { flex: 1; min-width: 28px; }

/* ---------- Scheda prodotto come il vecchio sito (richiesta cliente) ---------- */
#main h1.productpage_title, .quickview h1.productpage_title { text-transform: uppercase !important; }
#main .product-short-description, .quickview .product-short-description { display: none !important; }
/* "Aggiungi al carrello": rosso del sito ovunque, nero al passaggio del mouse */
.btn.add-to-cart, .btn.btn-primary.add-to-cart {
  background: var(--li-red) !important; border-color: var(--li-red) !important; color: #fff !important; }
.btn.add-to-cart:hover, .btn.add-to-cart:focus-visible, .btn.btn-primary.add-to-cart:hover {
  background: var(--li-ink) !important; border-color: var(--li-ink) !important; color: #fff !important; }
.btn#submit-login, #login-form .form-footer .btn { background: var(--li-red) !important; border-color: var(--li-red) !important; color: #fff !important; }
.btn#submit-login:hover, .btn#submit-login:focus-visible, #login-form .form-footer .btn:hover { background: var(--li-ink) !important; border-color: var(--li-ink) !important; color: #fff !important; }
.btn.add-to-cart:disabled, .btn.add-to-cart.disabled, .btn.add-to-cart[disabled] {
  background: #8A8480 !important; border-color: #8A8480 !important; color: #fff !important; cursor: not-allowed; }

/* Nomi prodotto sempre in maiuscolo (richiesta cliente) */
#page .product-title, #page .product-title a, #page .product-name, #page .product-name a,
#page .product-line-info a.label, #page .product-line-grid-body .product-line-info .label, #page .cart-item .label,
#blockcart-modal .product-name, #blockcart-modal .product-name a, .modal .product-name, .quickview h1, .quickview .h1,
#page .cart-summary-products .product-name, #page .order-confirmation-table .details, #page .order-confirmation-table .details span,
#page #order-products td strong, #page #order-products td a, #page .order-items .details,
#page .st-wishlist-product-name, #page .wishlist-product-name, #page .product_name, #page .compare-product-name,
#page .cpsearch-name, #page .search-result .product-name, .ui-autocomplete .product, .ui-autocomplete .search-name,
body#product #breadcrumb_wrapper .breadcrumb li:last-child, body#product #breadcrumb_wrapper .breadcrumb li:last-child span {
  text-transform: uppercase !important; }

/* Rassicurazioni scheda prodotto: titoli in grassetto */
.blockreassurance_product .block-title { font-weight: 700 !important; }

/* Social nel footer */
#footer .block-social ul li a { transition: background-color .2s ease; }
#footer .block-social ul li, #footer .block-social ul li:hover { background-color: transparent !important; }
#footer .block-social ul li a { border-radius: 50% !important; }
#footer .block-social ul li a:hover, #footer .block-social ul li a:focus-visible { background-color: var(--li-red) !important; }
#footer .block-social ul li a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; border-radius: 50%; }

/* Pagine informative: grassetto reale per <strong>/<b> */
#cms #content strong, #cms #content b, .page-cms strong, .page-cms b, #content .cms-content strong { font-weight: 700 !important; }
#cms #content p:has(> strong:only-child) { margin-top: 28px; margin-bottom: 6px; }
#cms #content p:has(> strong:only-child):first-of-type { margin-top: 8px; }

.li-form-privacy { font-size: 14px; color: var(--li-graphite); margin: 6px 0 14px; }
.li-form-privacy a, #content .li-cookie-table a, #cms #content li a, #cms #content td a { text-decoration: underline; text-underline-offset: 3px; }
#cms #content h2 { margin: 30px 0 10px; font-size: 26px; line-height: 1.2; }
#cms #content ul { list-style: disc; padding-left: 22px; margin-bottom: 14px; }
#cms #content ul li { margin-bottom: 6px; }
.li-cookie-table caption { caption-side: top; font-weight: 600; color: var(--li-ink); padding: 4px 0 8px; }
.li-cookie-table th[scope="row"] { font-weight: 600; }

/* Carrello e checkout: pulsanti di avanzamento nel rosso del sito, neri in hover */
body#cart .cart-detailed-actions .btn-primary, body#cart .checkout .btn-primary,
body#checkout .btn-primary, body#checkout #payment-confirmation button, body#checkout button.continue {
  background: var(--li-red) !important; border-color: var(--li-red) !important; color: #fff !important; }
body#cart .cart-detailed-actions .btn-primary:hover, body#cart .checkout .btn-primary:hover,
body#checkout .btn-primary:hover, body#checkout #payment-confirmation button:hover, body#checkout button.continue:hover,
body#cart .cart-detailed-actions .btn-primary:focus-visible, body#checkout .btn-primary:focus-visible, body#checkout #payment-confirmation button:focus-visible {
  background: var(--li-ink) !important; border-color: var(--li-ink) !important; color: #fff !important; }
body#checkout #payment-confirmation button:disabled, body#checkout #payment-confirmation button.disabled, body#checkout .btn-primary:disabled {
  background: #8A8480 !important; border-color: #8A8480 !important; color: #fff !important; cursor: not-allowed; }

/* Pulsante "torna su": solo il cerchio rosso, niente quadrato scuro */
#footer .top_button, .top_button { background: transparent !important; box-shadow: none !important; }

/* ---------- Banner cookie ---------- */
#cookieNotice, .cookieNotice { font-family: var(--li-sans) !important; }
#cookieNotice .cookie_text, #cookieNotice .cookie_text a { color: rgba(255,255,255,.88) !important; }
#cookieNotice .cookie_text a { text-decoration: underline; }
#cookieNotice img[src*="cookie"] { display: none; }

/* ---------- Mobile ---------- */
@media (max-width: 991px) {
  .li-topbar { justify-content: center; text-align: center; }
  .li-topbar a.li-topbar__tel { display: none; }
  #cpserviceblock .container { grid-template-columns: repeat(2, 1fr); }
  .li-hero { margin-left: 24px; margin-right: 24px; }
  #carousel .carousel-item figure::after { background: linear-gradient(0deg, rgba(20,21,26,.88) 0%, rgba(20,21,26,.35) 60%, rgba(20,21,26,.1) 100%); }
  #carousel .caption { align-items: flex-end; padding-bottom: 48px; }
}
@media (max-width: 991px) {
  #header > .header-top-main.bg_main { display: none !important; }
}
@media (max-width: 767px) {
  #carousel .carousel-item figure, #carousel .carousel-item figure > a { display: block; height: 560px; }
  #carousel .carousel-item figure img { width: 100%; height: 100%; object-fit: cover; object-position: 62% center; }
  #carousel .caption { padding-bottom: 56px; }
  .li-hero { max-width: none; }
  #cpcategory-tabs { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 0 16px 6px; gap: 0 22px; scrollbar-width: none; }
  #cpcategory-tabs::-webkit-scrollbar { display: none; }
  #cpcategory-tabs .nav-item { flex: 0 0 auto; }
  .li-band__title { line-height: 1.12; }
  #cpcmsbanner2 { padding: 72px 0; }
  #cookieNotice { padding: 10px 14px !important; }
  #cookieNotice .cookie_text, #cookieNotice .cookie_text * { font-size: 13px !important; line-height: 1.45 !important; }
  #cookieNotice .btn { padding: 8px 16px !important; font-size: 13px !important; margin-top: 6px; }
}
@media (max-width: 575px) {
  #cpserviceblock .container { grid-template-columns: 1fr; gap: 22px; }
  .li-hero__title { font-size: 38px; }
  .li-hero__text { font-size: 16px; }
  .li-tiles .offer-text2, .li-tiles .offer-text2 a { font-size: 26px !important; }
}
@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; animation: none !important; }
}
