/* ==========================================================================
   La Scarpa Store — sistema visivo "pop americano"
   Caricato DOPO stylesheet.css: il compilatore SCSS del tema
   (header.php -> regenerate()) non lo sovrascrive mai.

   Regole di contrasto (verificate, soglia minima 4.5:1):
   - testo bianco solo su --ink o --pink-deep (5.11:1)
   - su --pink e sui fondi colorati delle foto: solo testo --ink
   - testo secondario: --muted (#5c5c5c, 6.6:1 su bianco)
   ========================================================================== */

:root {
  --ink: #111111;
  --paper: #ffffff;
  --stone: #f5f2ee;
  --line: #e7e2dc;
  --muted: #5c5c5c;
  --pink: #ff3278;
  --pink-deep: #d6145a;
  --hero-pink: #f05189;

  --f-display: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --f-body: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --f-serif: 'Instrument Serif', Georgia, serif;

  --gutter: clamp(16px, 3vw, 32px);
  --section: clamp(48px, 7vw, 96px);
  --ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---------- Base ---------- */

body,
button, input, select, textarea {
  font-family: var(--f-body);
  font-stretch: 100%;
}

body {
  background: var(--paper);
  color: var(--ink);
  font-size: 15px;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a { color: var(--ink); }
a:hover, a:focus { color: var(--ink); }

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: var(--f-display);
  color: var(--ink);
  letter-spacing: -0.01em;
}

::selection { background: var(--pink); color: var(--ink); }

:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 2px;
}

#siteloader, #spin-wrapper { display: none !important; }

.container { max-width: 1320px; }

/* Etichette e titoli ricorrenti */
.lss-kicker {
  font-family: var(--f-display);
  font-stretch: 100%;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
  margin: 0 0 14px;
  color: var(--ink);
}

.lss-section { padding-top: var(--section); }

.lss-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 28px;
  padding: 0 15px;
  width: 100%;
}

.lss-section-title,
.home-title {
  font-family: var(--f-display) !important;
  font-stretch: 72%;
  font-weight: 800 !important;
  font-size: clamp(30px, 4.2vw, 52px) !important;
  line-height: .95 !important;
  text-transform: uppercase;
  letter-spacing: -0.01em;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ink) !important;
  text-align: left !important;
}
.home-title:after, .lss-section-title:after { display: none !important; }

.lss-link-arrow {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
  padding-bottom: 3px;
  border-bottom: 2px solid var(--ink);
  transition: border-color .2s;
}
.lss-link-arrow:after { content: ' →'; }
.lss-link-arrow:hover { border-color: var(--pink); text-decoration: none; }

/* ---------- Bottoni ---------- */

.lss-btn,
.btn-primary, .btn-secondary,
#button-cart,
#checkout-cart .buttons .btn,
#checkout-checkout .btn-primary,
.btn-cart button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 50px;
  padding: 0 30px !important;
  border-radius: 0 !important;
  border: 2px solid var(--ink) !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-family: var(--f-display);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .14em;
  text-transform: uppercase;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
}
.lss-btn:hover, .btn-primary:hover, .btn-secondary:hover, #button-cart:hover,
#checkout-cart .buttons .btn:hover, #checkout-checkout .btn-primary:hover, .btn-cart button:hover,
.lss-btn:focus-visible, .btn-primary:focus, #button-cart:focus {
  background: var(--pink-deep) !important;
  border-color: var(--pink-deep) !important;
  color: #fff !important;
}

.lss-btn--pink {
  background: var(--pink) !important;
  border-color: var(--pink) !important;
  color: var(--ink) !important;
}
.lss-btn--pink:hover { background: #fff !important; border-color: #fff !important; color: var(--ink) !important; }

.lss-btn--ghost {
  background: transparent !important;
  border-color: #fff !important;
  color: #fff !important;
}
.lss-btn--ghost:hover { background: #fff !important; color: var(--ink) !important; border-color: #fff !important; }

.btn-default {
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* ---------- Barra annunci ---------- */

.lss-announce {
  background: var(--ink) !important;
  color: #fff;
  padding: 0 !important;
}

.lss-announce__list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0;
  margin: 0;
  padding: 9px var(--gutter);
  list-style: none;
}

.lss-announce__item {
  font-size: 11.5px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
  padding: 0 22px;
  line-height: 1.6;
  white-space: nowrap;
}
.lss-announce__item + .lss-announce__item { border-left: 1px solid rgba(255, 255, 255, .28); }
.lss-announce__item strong { font-weight: 700; }
.lss-announce__item span { color: #d4d4d4; margin-left: 4px; }

@media (max-width: 1439px) {
  /* Un messaggio alla volta, a rotazione */
  .lss-announce__list { position: relative; height: 36px; padding: 0; overflow: hidden; }
  .lss-announce__item {
    position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    border: 0 !important; opacity: 0;
    animation: lss-announce 16s infinite;
  }
  .lss-announce__item:nth-child(2) { animation-delay: 4s; }
  .lss-announce__item:nth-child(3) { animation-delay: 8s; }
  .lss-announce__item:nth-child(4) { animation-delay: 12s; }
}
@media (max-width: 575px) {
  .lss-announce__item span { display: none; }
}
@keyframes lss-announce {
  0% { opacity: 0; transform: translateY(6px); }
  3%, 22% { opacity: 1; transform: none; }
  25%, 100% { opacity: 0; transform: translateY(-6px); }
}
@media (prefers-reduced-motion: reduce) {
  .lss-announce__item { animation: none !important; }
  .lss-announce__item:first-child { opacity: 1; }
}

/* ---------- Header ---------- */

#header.lss-header {
  position: relative;
  z-index: 1000;
  background: var(--paper);
  box-shadow: none;
}

/* Il tema fissa la riga di navigazione allo scroll (theme.js aggiunge .fixed-header):
   la teniamo, ripulita, e riserviamo lo spazio per evitare il salto del contenuto. */
#header .nav-full-width.fixed-header {
  position: fixed !important;
  top: 0 !important;
  left: 0;
  right: 0;
  z-index: 1001;
  background: rgba(255, 255, 255, .97) !important;
  border-bottom: 1px solid var(--line) !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, .06) !important;
  animation: lss-drop .25s var(--ease);
}
@keyframes lss-drop { from { transform: translateY(-100%); } to { transform: none; } }
#header .wrapper-nav:has(.fixed-header) { padding-bottom: 48px; }
@media (max-width: 991px) {
  #header .wrapper-nav:has(.fixed-header) { padding-bottom: 52px; }
}

#header .wrapper-nav {
  position: relative;
  top: 0 !important;
  background: var(--paper) !important;
  border-bottom: 1px solid var(--line);
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  max-width: none !important;
  width: 100% !important;
}

#header .header-top { background: transparent !important; padding: 0 !important; }
#header .header-top > .container,
#header .nav-full-width > .container { padding: 0 var(--gutter); width: 100%; }

.lss-bar {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  min-height: 78px;
  gap: 24px;
}

.lss-bar__search { justify-self: start; width: 100%; max-width: 320px; }

#header .desktop-logo {
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  justify-self: center;
}
#header .desktop-logo #logo { margin: 0; padding: 0; }
#header .desktop-logo img { height: 46px; width: auto; max-width: none; }
.lss-wordmark {
  font-family: var(--f-display);
  font-stretch: 72%;
  font-weight: 800;
  font-size: 30px;
  letter-spacing: -.01em;
  text-transform: uppercase;
  color: var(--ink) !important;
  text-decoration: none !important;
}

.lss-bar__icons {
  display: flex !important;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  float: none !important;
  width: auto !important;
  padding: 0 !important;
  justify-self: end;
}
#header .desktop-custominfo > div { float: none !important; margin: 0 !important; padding: 0 !important; }

.lss-icon {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
}

.lss-icon-link,
#header #cart > button {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  height: 44px;
  min-width: 44px;
  justify-content: center;
  padding: 0 8px !important;
  color: var(--ink) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
  text-decoration: none !important;
}
.lss-icon-link:hover, #header #cart > button:hover { color: var(--pink-deep) !important; }

#header .account-name {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: inherit !important;
}

/* Carrello */
#header #cart { width: auto; }
#header #cart .cart-link { position: relative; display: inline-flex; align-items: center; }
#header .blockcart .cart-content { position: static; margin: 0; padding: 0; }
.lss-cart-count,
#header .blockcart .cart-content .cart-products-count {
  position: absolute;
  top: -7px;
  right: -9px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: var(--pink) !important;
  color: var(--ink) !important;
  font-size: 11px !important;
  font-weight: 700;
  line-height: 18px !important;
  letter-spacing: 0 !important;
  text-align: center;
  display: block !important;
  width: auto !important;
}

/* Tendine account / carrello */
#header .user-info .dropdown-menu,
#header .cart-dropdown {
  border: 1px solid var(--line) !important;
  border-radius: 0 !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .12) !important;
  background: var(--paper) !important;
  padding: 10px 0 !important;
}
#header .user-info .dropdown-menu li > a {
  padding: 9px 20px !important;
  color: var(--ink) !important;
  font-size: 14px;
  background: transparent !important;
}
#header .user-info .dropdown-menu li > a:hover { background: var(--stone) !important; }
#header .cart-dropdown { min-width: 340px; padding: 16px !important; }
#header .cart-dropdown .cart-btn { display: flex; gap: 8px; justify-content: stretch; }
#header .cart-dropdown .cart-btn a { flex: 1; }
#header .cart-dropdown .btn-cartblock {
  width: 100%;
  min-height: 44px;
  border-radius: 0 !important;
  border: 2px solid var(--ink) !important;
  font-size: 12px !important;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
#header .cart-dropdown .btn-default.btn-cartblock { background: #fff !important; color: var(--ink) !important; }
#header .cart-dropdown .btn-primary.btn-cartblock { background: var(--ink) !important; color: #fff !important; }
#header .cart-dropdown #mobilecartbutton { display: none; }
#header .cart-dropdown .table { margin-bottom: 10px; }
#header .cart-dropdown .table > tbody > tr > td { border-color: var(--line); vertical-align: middle; background: transparent !important; }
#header .cart-dropdown .cart_block_product_name { display: block; font-weight: 600; color: var(--ink); line-height: 1.3; margin: 2px 0; }
#header .cart-dropdown .quantity-formated, #header .cart-dropdown .product-detail { color: var(--muted); font-size: 12px; }
#header .cart-dropdown .text-price { font-weight: 700; }
#header .cart-dropdown .btn-danger { background: transparent !important; border: 0 !important; color: var(--muted) !important; }
#header .cart-dropdown .empty { padding: 8px 4px; margin: 0; color: var(--muted); }

/* Ricerca */
#search_widget, #search_widget form { margin: 0; }
#search_widget #search {
  display: flex !important;
  align-items: center;
  width: 100%;
  border-bottom: 1.5px solid var(--ink);
  background: transparent;
}
#search_widget #search .form-control {
  height: 40px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  font-size: 14px !important;
  color: var(--ink) !important;
}
#search_widget #search .form-control::placeholder { color: var(--muted); opacity: 1; }
#search_widget #search .input-group-btn { width: auto; background: transparent !important; }
#search_widget #search #ajax-search-btn {
  background: transparent !important;
  border: 0 !important;
  color: var(--ink) !important;
  height: 40px;
  padding: 0 0 0 10px !important;
  box-shadow: none !important;
  font-size: 16px;
}
#search_widget .search-logo { display: none !important; }
.ajaxishi-search { border-radius: 0 !important; box-shadow: 0 18px 40px rgba(0,0,0,.12) !important; }

/* ---------- Navigazione categorie (desktop) ---------- */

#header .nav-full-width {
  background: var(--paper) !important;
  border: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.lss-nav {
  display: flex;
  justify-content: center;
  align-items: stretch;
  min-height: 48px;
}

/* Link liberi (modulo "Header Link Block", es. Novita') */
#_desktop_link_menu { order: -1; float: none !important; }
#header_ishiheaderlinks { float: none !important; margin: 0 !important; height: 100%; }
#header_ishiheaderlinks .bullet,
#header_ishiheaderlinks .bullet.small {
  display: flex !important;
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 100%;
  width: auto !important;
}
#header_ishiheaderlinks .bullet li { display: flex !important; align-items: center; margin: 0 !important; padding: 0 !important; }
#header_ishiheaderlinks .link-icon,
#header_ishiheaderlinks .small-title,
#header_ishiheaderlinks .link-menu,
#view_text, #menu_text { display: none !important; }

#header_ishiheaderlinks .bullet li a.extra-link,
#_desktop_top_menu #top-menu > li > a {
  display: flex !important;
  align-items: center;
  height: 48px;
  padding: 0 18px !important;
  font-family: var(--f-display);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .12em;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  background: transparent !important;
  position: relative;
  line-height: 1 !important;
}
#header_ishiheaderlinks .bullet li a.extra-link:after,
#_desktop_top_menu #top-menu > li > a:after {
  content: '';
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 10px;
  height: 2px;
  background: var(--pink);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .25s var(--ease);
}
#header_ishiheaderlinks .bullet li a.extra-link:hover:after,
#_desktop_top_menu #top-menu > li:hover > a:after { transform: scaleX(1); }
#header_ishiheaderlinks .bullet li a.extra-link { color: var(--pink-deep) !important; }

/* Menu categorie: sempre visibile, orizzontale, con pannello a tendina */
#_desktop_top_menu {
  float: none !important;
  padding: 0 !important;
  position: static !important;
}
#_desktop_top_menu .home-title,
#_desktop_top_menu .wrapper-menu { display: none !important; }

#_desktop_top_menu #top-menu {
  display: flex !important;
  position: static !important;
  height: auto !important;
  overflow: visible !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}
#_desktop_top_menu #top-menu > li {
  border: 0 !important;
  position: static !important;
}
#_desktop_top_menu #top-menu > li > a i,
#_desktop_top_menu #top-menu > li > .pull-xs-right { display: none !important; }

#_desktop_top_menu #top-menu > li .sub-menu {
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 32px var(--gutter) 36px !important;
  background: var(--paper) !important;
  border-top: 1px solid var(--line) !important;
  box-shadow: 0 24px 40px rgba(0, 0, 0, .08) !important;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity .2s var(--ease), transform .2s var(--ease), visibility .2s;
  text-align: left !important;
  display: block !important;
  height: auto !important;
}
#_desktop_top_menu #top-menu > li:hover .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: none;
}
#_desktop_top_menu #top-menu > li .sub-menu .category_dropdownmenu {
  width: auto !important;
  max-width: 1100px;
  margin: 0 auto !important;
  float: none !important;
  columns: 4 180px;
  column-gap: 40px;
}
#_desktop_top_menu #top-menu > li .sub-menu ul[data-depth="1"] > li {
  float: none !important;
  margin: 0 0 4px !important;
  min-width: 0 !important;
  break-inside: avoid;
  display: block;
}
#_desktop_top_menu #top-menu > li .sub-menu ul[data-depth="1"] > li > a {
  color: var(--ink) !important;
  font-size: 15px !important;
  margin: 0 !important;
  padding: 5px 0 !important;
  text-transform: none !important;
  font-weight: 400;
}
#_desktop_top_menu #top-menu > li .sub-menu ul[data-depth="1"] > li > a:before { display: none !important; }
#_desktop_top_menu #top-menu > li .sub-menu ul[data-depth="1"] > li > a:hover { color: var(--pink-deep) !important; }

/* Menu "View More" (se i link liberi sono piu' di 5): sfondo bianco, testo scuro */
#header_ishiheaderlinks .headerlink-dropdown a { color: var(--ink) !important; }
.viewmore { color: var(--ink) !important; background: transparent !important; }

/* ---------- Header mobile (< 992px: il tema sposta icone e ricerca nella riga sotto) ---------- */

@media (max-width: 991px) {
  .lss-bar { grid-template-columns: 1fr; min-height: 64px; }
  .lss-bar__search, .lss-bar__icons { display: none !important; }
  #header .desktop-logo img { height: 34px; }

  .lss-nav {
    justify-content: flex-start;
    align-items: center;
    gap: 4px;
    min-height: 52px;
    border-top: 1px solid var(--line);
  }
  #_desktop_top_menu, #_desktop_link_menu, #_mobile_link_menu { display: none !important; }

  #menu-icon {
    order: 1;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    font-size: 20px;
    color: var(--ink);
    margin: 0 !important;
    float: none !important;
  }
  #_mobile_seach_widget { order: 2; flex: 1; min-width: 0; float: none !important; }
  #_mobile_user_info { order: 3; float: none !important; }
  #_mobile_cart { order: 4; float: none !important; }
  #_mobile_user_info .account-name { display: none; }
  #_mobile_cart #cart > button, #_mobile_user_info .lss-icon-link {
    display: inline-flex !important; align-items: center; justify-content: center;
    height: 44px; min-width: 44px; padding: 0 8px !important;
    background: transparent !important; border: 0 !important; color: var(--ink) !important;
  }
  #_mobile_cart .cart-link { position: relative; display: inline-flex; }
  #_mobile_cart .cart-dropdown { right: 0; left: auto; min-width: 300px; }
}

/* Drawer menu mobile */
#mobile_top_menu_wrapper { background: var(--paper) !important; }
#mobile_top_menu_wrapper #top-menu > li { border-color: var(--line) !important; }
#mobile_top_menu_wrapper #top-menu > li > a {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase !important;
  color: var(--ink) !important;
}

/* ---------- Hero ---------- */

.lss-editorial { margin: 0; }

.lss-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  align-items: stretch;
  background: linear-gradient(180deg, #f5588b 0%, var(--hero-pink) 50%, #e54283 100%);
  min-height: clamp(460px, 62vh, 700px);
  overflow: hidden;
}
.lss-hero__media { display: block; position: relative; overflow: hidden; }
.lss-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 28% 30%;
}
.lss-hero__copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  padding: clamp(32px, 6vw, 96px) var(--gutter) clamp(32px, 6vw, 96px) clamp(16px, 3vw, 48px);
  color: var(--ink);
}
.lss-hero__title {
  font-family: var(--f-display) !important;
  font-stretch: 62%;
  font-weight: 900 !important;
  font-size: clamp(56px, 8.6vw, 132px) !important;
  line-height: .86 !important;
  letter-spacing: -0.015em;
  text-transform: uppercase;
  margin: 0 0 30px !important;
  color: var(--ink) !important;
  max-width: 9ch;
}
.lss-hero .lss-kicker { font-size: 13px; }

.lss-hero__copy > * {
  opacity: 0;
  transform: translateY(18px);
  animation: lss-rise .8s var(--ease) forwards;
}
.lss-hero__copy > *:nth-child(2) { animation-delay: .1s; }
.lss-hero__copy > *:nth-child(3) { animation-delay: .22s; }
@keyframes lss-rise { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .lss-hero__copy > * { animation: none; opacity: 1; transform: none; }
}

@media (max-width: 767px) {
  .lss-hero { grid-template-columns: 1fr; min-height: 0; }
  .lss-hero__media { aspect-ratio: 4 / 3.4; }
  .lss-hero__media img { object-position: 22% 30%; }
  .lss-hero__copy { padding: 28px var(--gutter) 40px; }
  .lss-hero__title { font-size: clamp(52px, 15vw, 76px) !important; margin-bottom: 22px !important; }
}

/* ---------- Tile categorie ---------- */

.lss-tiles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.lss-tile {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--stone);
  text-decoration: none !important;
}
.lss-tile--1 { background: #f1b401; }
.lss-tile--2 { background: #80b1bf; }
.lss-tile--3 { background: #9e8bc3; }
.lss-tile img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .9s var(--ease);
}
.lss-tile--1 img { object-position: 34% 40%; }
.lss-tile--2 img { object-position: 36% 40%; }
.lss-tile--3 img { object-position: 54% 40%; }
.lss-tile:hover img { transform: scale(1.045); }
.lss-tile__label {
  position: absolute;
  left: 16px;
  bottom: 16px;
  right: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}
.lss-tile__kicker {
  background: var(--ink);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  padding: 5px 9px;
}
.lss-tile__title {
  background: #fff;
  color: var(--ink);
  font-family: var(--f-display);
  font-stretch: 72%;
  font-weight: 800;
  font-size: clamp(22px, 2.4vw, 32px);
  line-height: 1;
  text-transform: uppercase;
  padding: 10px 14px 9px;
}
.lss-tile__title:after { content: ' →'; font-stretch: 100%; transition: margin .25s var(--ease); }
.lss-tile:hover .lss-tile__title:after { margin-left: 6px; }

@media (max-width: 767px) {
  .lss-tiles {
    grid-template-columns: repeat(3, 78%);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    margin: 0 calc(-1 * var(--gutter));
    padding: 0 var(--gutter);
    scrollbar-width: none;
  }
  .lss-tiles::-webkit-scrollbar { display: none; }
  .lss-tile { scroll-snap-align: start; }
}

/* ---------- Carosello "Nuovi arrivi" ---------- */

.ishiproductsblock.container { max-width: 1320px; padding-left: var(--gutter); padding-right: var(--gutter); padding-top: var(--section); }
.ishiproductsblock .row { margin: 0; }
.ishiproductsblock .lss-section-head { padding: 0; }
.ishiproductsblock .ishiproductstab { display: none !important; }
.ishiproductsblock .tab-content,
.ishiproductsblock .block_content { margin: 0 !important; padding: 0 !important; }
.ishiproductsblock .owl-carousel .owl-stage-outer { padding-bottom: 6px; }

.owl-carousel .owl-nav {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 22px;
}
.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav > div {
  position: static !important;
  width: 46px;
  height: 46px;
  margin: 0 !important;
  border: 1.5px solid var(--ink) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--ink) !important;
  font-size: 22px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  opacity: 1 !important;
  transition: background .2s, color .2s;
}
.owl-carousel .owl-nav button:hover, .owl-carousel .owl-nav > div:hover { background: var(--ink) !important; color: #fff !important; }

/* ---------- Card prodotto (home, categorie, correlati) ---------- */

.product-thumb {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin-bottom: 36px;
  overflow: visible !important;
  transform: none !important;
}
.product-thumb:hover { box-shadow: none !important; transform: none !important; }

.product-thumb .image {
  position: relative;
  aspect-ratio: 3 / 4;
  background: var(--stone) !important;
  overflow: hidden;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.product-thumb .image > a { display: block; position: absolute; inset: 0; }
.product-thumb .image img,
.product-thumb .image .product-img-extra {
  position: absolute !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none;
  object-fit: cover;
  transition: opacity .45s var(--ease), transform .9s var(--ease);
}
.product-thumb .image .product-img-extra { opacity: 0; transform: none !important; }
.product-thumb:hover .image .product-img-extra { opacity: 1; }
.product-thumb:hover .image img:first-child { transform: scale(1.03); }

/* Niente stelline vuote, occhio "vista rapida" e confronta sulla foto */
.product-thumb .rating,
.product-thumb .btn-quickview,
.product-thumb .btn-compare,
.product-thumb .countdown-container:empty { display: none !important; }

.product-thumb .button-group {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  left: auto !important;
  bottom: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  opacity: 1 !important;
  transform: none !important;
  display: block !important;
}
.product-thumb .btn-wishlist { display: block !important; margin: 0 !important; }
.product-thumb .btn-wishlist button {
  width: 38px !important;
  height: 38px !important;
  padding: 0 !important;
  border-radius: 50% !important;
  border: 0 !important;
  background: rgba(255, 255, 255, .92) !important;
  color: var(--ink) !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  box-shadow: none !important;
}
.product-thumb .btn-wishlist button svg { display: none; }
.product-thumb .btn-wishlist button .fa { display: inline-block !important; font-size: 15px; color: var(--ink); }
.product-thumb .btn-wishlist button:hover .fa { color: var(--pink-deep); }

.product-thumb .outstock-overlay {
  top: 10px !important;
  left: 10px !important;
  bottom: auto !important;
  right: auto !important;
  transform: none !important;
  width: auto !important;
  background: var(--ink) !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 5px 9px !important;
}

.product-thumb .caption {
  padding: 14px 0 0 !important;
  text-align: left !important;
  min-height: 0 !important;
}
.product-thumb .caption h4 {
  margin: 0 0 6px !important;
  overflow: visible;
  font-family: var(--f-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  letter-spacing: 0;
}
.product-thumb .caption h4 a {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: normal !important;
  color: var(--ink) !important;
  min-height: 2.7em;
}
.product-thumb .caption .price {
  font-family: var(--f-body) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
  margin: 0 0 12px !important;
}
/* Il tema nasconde il prezzo al passaggio del mouse (opacity 0): qui il carrello sta sotto, il prezzo resta visibile */
.product-thumb:hover .caption .price { opacity: 1 !important; }
.product-thumb .caption .price-new { color: var(--pink-deep) !important; }
.product-thumb .caption .price-old { color: var(--muted) !important; font-weight: 400; margin-left: 6px; }
.product-thumb .caption .price-tax { display: none !important; }
.product-thumb .caption .description { display: none !important; }

/* Aggiungi al carrello: bottone contornato, pieno al passaggio */
.product-thumb .btn-cart { margin: 0 !important; }
.product-thumb .btn-cart button {
  width: 100%;
  min-height: 42px !important;
  padding: 0 12px !important;
  background: transparent !important;
  color: var(--ink) !important;
  border: 1.5px solid var(--ink) !important;
  font-size: 12px !important;
}
.product-thumb .btn-cart button .fa { display: none; }
.product-thumb .btn-cart button:hover { background: var(--ink) !important; color: #fff !important; border-color: var(--ink) !important; }

@media (min-width: 992px) {
  .product-thumb .btn-cart {
    opacity: 0;
    transform: translateY(4px);
    transition: opacity .2s var(--ease), transform .2s var(--ease);
  }
  .product-thumb:hover .btn-cart,
  .product-thumb:focus-within .btn-cart { opacity: 1; transform: none; }
}

/* ---------- Fascia servizi ---------- */

.lss-perks {
  margin-top: var(--section);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.lss-perks__list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  list-style: none;
}
.lss-perk {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 28px 20px;
}
.lss-perk + .lss-perk { border-left: 1px solid var(--line); }
.lss-perk .lss-icon { width: 30px; height: 30px; stroke-width: 1.4; }
.lss-perk strong { display: block; font-size: 14px; font-weight: 700; line-height: 1.3; }
.lss-perk span { display: block; font-size: 13px; color: var(--muted); line-height: 1.4; }
.lss-perk a { color: var(--muted); text-decoration: underline; text-underline-offset: 2px; }

@media (max-width: 991px) {
  .lss-perks__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lss-perk:nth-child(3) { border-left: 0; }
  .lss-perk:nth-child(n+3) { border-top: 1px solid var(--line); }
  .lss-perk { padding: 20px 12px; gap: 10px; }
}

/* ---------- Community ---------- */

.lss-community {
  background: var(--ink);
  color: #fff;
  padding: var(--section) 0;
  text-align: center;
}
.lss-community .lss-kicker { color: #fff; }
.lss-community__title {
  font-family: var(--f-display) !important;
  font-stretch: 62%;
  font-weight: 900 !important;
  font-size: clamp(54px, 11vw, 168px) !important;
  line-height: .85 !important;
  text-transform: uppercase;
  letter-spacing: -0.02em;
  color: #fff !important;
  margin: 0 0 22px !important;
}
.lss-community__text {
  max-width: 540px;
  margin: 0 auto 30px;
  font-size: 17px;
  line-height: 1.5;
  color: #e5e5e5;
}
.lss-community__text em {
  font-family: var(--f-serif);
  font-style: italic;
  font-size: 1.25em;
  color: var(--pink);
}
.lss-community__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }

/* ---------- Footer ---------- */

#footer {
  background: var(--ink) !important;
  color: #cfcfcf;
  margin-top: 0 !important;
  padding-top: 56px;
  border-top: 1px solid #2a2a2a;
}
.lss-community + #footer, #common-home + #footer { border-top: 1px solid #2a2a2a; }

#footer .footer-before {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0 15px 40px;
  margin-bottom: 40px;
  border-bottom: 1px solid #2a2a2a;
  background: transparent !important;
}
#footer .ishistoreinfoblock { width: auto; padding: 0; text-align: left; float: none; }
#footer .ishistoreinfoblock .store-logo img { height: 44px; width: auto; filter: invert(1); }
#footer .ishistoreinfoblock .store-description { max-width: 560px; margin-top: 16px; }
#footer .ishistoreinfoblock .store-description p { color: #bdbdbd; font-size: 14px; line-height: 1.6; text-align: left; margin: 0; }

#footer h5, #footer .footer-title .h3 {
  font-family: var(--f-display);
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .16em;
  text-transform: uppercase;
  margin: 0 0 18px !important;
}
#footer a, #footer .footer-contact .content, #footer .footer-contact a { color: #cfcfcf !important; font-size: 14px; }
#footer a:hover { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
#footer .footer-dropdown li { margin-bottom: 9px; }
#footer .footer-contact .icon { color: #8f8f8f; }

#footer .footer-after {
  background: #0a0a0a !important;
  border-top: 1px solid #2a2a2a;
  margin-top: 40px;
  padding: 18px 0;
}
#footer .footer-after p, #footer .footer-aftertext { color: #a8a8a8 !important; font-size: 13px; margin: 0; }
#footer .footer-after a { color: #cfcfcf !important; }

#footer .social-media, #footer [class*="social"] a {
  background: transparent !important;
  border: 1px solid #3a3a3a !important;
  color: #fff !important;
  border-radius: 50%;
}

#slidetop {
  background: var(--ink) !important;
  border: 1px solid #3a3a3a !important;
  border-radius: 0 !important;
}

/* ---------- Pagine interne: titolo e breadcrumb ---------- */

.breadcrumb-container {
  background: var(--paper) !important;
  background-image: none !important;
  padding: 28px var(--gutter) 8px !important;
  min-height: 0 !important;
  text-align: left !important;
  max-width: 1320px;
  margin: 0 auto;
}
.breadcrumb-container .page-title {
  display: none;
}
.breadcrumb {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  justify-content: flex-start;
}
.breadcrumb > li a, .breadcrumb > li { color: var(--muted) !important; }
.breadcrumb > li:last-child a { color: var(--ink) !important; }
.breadcrumb > li + li:before { color: var(--line) !important; }

#product-category .category-title,
#product-search h1, #product-search h2:first-child,
#checkout-cart h1, #checkout-checkout h1, #information-information h1, #account-login h1 {
  font-family: var(--f-display) !important;
  font-stretch: 72%;
  font-weight: 800 !important;
  font-size: clamp(34px, 5vw, 60px) !important;
  line-height: .95 !important;
  text-transform: uppercase;
  color: var(--ink) !important;
  margin: 8px 0 18px !important;
  padding: 0 !important;
  background: transparent !important;
}
#product-category .category_banner { background: transparent !important; padding: 0 !important; margin-bottom: 8px; }
#product-category .category_description { color: var(--muted); max-width: 720px; }

/* Barra ordinamento */
.product-list-top {
  border-top: 1px solid var(--line) !important;
  border-bottom: 1px solid var(--line) !important;
  background: transparent !important;
  padding: 12px 0 !important;
  margin-bottom: 28px !important;
  border-radius: 0 !important;
}
.product-list-top .form-control {
  border-radius: 0 !important;
  border-color: var(--line) !important;
  box-shadow: none !important;
  height: 40px;
}
.product-list-top .control-label { color: var(--muted) !important; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.btn-list-grid .btn { background: transparent !important; border: 0 !important; color: var(--muted) !important; }
.btn-list-grid .btn.active { color: var(--ink) !important; }
.compare-total { display: none; }

/* Sottocategorie come "chip" */
.refine-search .category-list ul { display: flex !important; flex-wrap: wrap; gap: 8px; margin: 0 0 24px !important; padding: 0 !important; }
.refine-search .category-list li.item { width: auto !important; float: none !important; padding: 0 !important; list-style: none; }
.refine-search .category-list li.item img { display: none !important; }
.refine-search .category-list li.item a {
  display: inline-block;
  border: 1.5px solid var(--ink);
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ink);
  text-decoration: none;
}
.refine-search .category-list li.item a:hover { background: var(--ink); color: #fff; }
.refine-search .category-list li.item a:hover .subcategory-title { color: #fff; }
.refine-search .subcategory-title { color: inherit !important; font-size: 13px !important; }

/* Colonna laterale */
#column-left .home-title, #column-left .box-heading, #column-right .home-title {
  font-size: 14px !important;
  font-stretch: 100%;
  letter-spacing: .14em !important;
  background: transparent !important;
  color: var(--ink) !important;
  border-bottom: 2px solid var(--ink) !important;
  padding: 0 0 10px !important;
  margin: 0 0 12px !important;
}
#column-left .list-group a, #column-left .list-group-item {
  border: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  background: transparent !important;
  color: var(--ink) !important;
  padding: 10px 0 !important;
  border-radius: 0 !important;
}
#column-left .list-group a.active, #column-left .list-group a:hover { color: var(--pink-deep) !important; }

/* ---------- Scheda prodotto ---------- */

#product-product h1,
#product-product .product-title,
#product-product .page-title {
  font-family: var(--f-display) !important;
  font-stretch: 78%;
  font-weight: 800 !important;
  font-size: clamp(30px, 3.6vw, 44px) !important;
  line-height: 1 !important;
  text-transform: uppercase;
  color: var(--ink) !important;
  letter-spacing: -.005em;
}
#product-product .price, #product-product .product-price, #product-product h2.price {
  font-family: var(--f-body) !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
}

/* Etichette opzioni: testo secondario leggibile (il #888 del tema e' a 3.54:1) */
.control-label, .control-label1, .checkbox-text,
.review-count, .write-review {
  color: var(--muted) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* Taglie: quadrati contornati, selezionato pieno nero */
#product .checkbox label,
#product .radio label {
  min-width: 52px;
  height: 46px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 14px !important;
  border: 1.5px solid var(--ink) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--ink) !important;
  font-weight: 600;
  font-size: 14px;
}
#product .checkbox.checked label,
.checkbox.checked label {
  background: var(--ink) !important;
  color: #fff !important;
  border-color: var(--ink) !important;
}

/* Selettore colore (varianti dello stesso modello) */
.color-swatch-list { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 4px; }
.color-swatch {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  width: 64px;
  text-decoration: none !important;
  opacity: 1;
  border: 0;
  padding: 0;
}
/* Miniatura generata a 150x200 (3:4 come le foto): mostrata a 60x80 resta nitida anche su schermi 2x/3x */
.color-swatch img {
  width: 60px;
  height: 80px;
  object-fit: contain;
  background: #fff;
  outline: 1.5px solid transparent;
  outline-offset: 2px;
  transition: outline-color .2s;
}
.color-swatch span {
  font-size: 11px;
  color: var(--muted);
  max-width: 64px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.color-swatch:hover img { outline-color: var(--line); }
.color-swatch.active img { outline-color: var(--ink); }
.color-swatch.active span { color: var(--ink); font-weight: 700; }

#product #input-quantity {
  height: 50px !important;
  border-radius: 0 !important;
  border: 1.5px solid var(--ink) !important;
  text-align: center;
  font-weight: 700;
  box-shadow: none !important;
}
#product .wishlist, #product .compare {
  height: 50px !important;
  width: 50px !important;
  border-radius: 0 !important;
  border: 1.5px solid var(--ink) !important;
  background: #fff !important;
  color: var(--ink) !important;
}
#product .wishlist:hover { color: var(--pink-deep) !important; }
#product .compare { display: none !important; }

#product-product .nav-tabs, #product-product .panel-heading {
  border-radius: 0 !important;
}

/* ---------- Carrello e checkout ---------- */

#checkout-cart .table > thead > tr > td,
#checkout-cart .table > thead > tr > th {
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: .1em;
  color: var(--muted);
  font-weight: 700;
  background: transparent !important;
  border-bottom: 2px solid var(--ink) !important;
}
#checkout-cart .table > tbody > tr > td { vertical-align: middle; border-color: var(--line) !important; }
#checkout-cart .table-bordered, #checkout-cart .table-bordered > tbody > tr > td, #checkout-cart .table-bordered > thead > tr > td {
  border-left: 0 !important;
  border-right: 0 !important;
}
#checkout-cart .input-group { max-width: 150px; }
#checkout-cart .input-group .form-control { border-radius: 0 !important; height: 42px; text-align: center; }
#checkout-cart .input-group-btn .btn { border-radius: 0 !important; height: 42px; }
#checkout-cart .panel, #checkout-checkout .panel {
  border-radius: 0 !important;
  border: 1px solid var(--line) !important;
  box-shadow: none !important;
}
#checkout-cart .panel-heading, #checkout-checkout .panel-heading {
  background: var(--stone) !important;
  border-radius: 0 !important;
  border-color: var(--line) !important;
}
#checkout-cart .panel-title a, #checkout-checkout .panel-title, #checkout-checkout .panel-title a {
  color: var(--ink) !important;
  font-family: var(--f-display);
  font-weight: 700 !important;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: 14px !important;
}
#checkout-checkout .form-control, #checkout-cart .form-control {
  border-radius: 0 !important;
  border-color: #cfc9c2 !important;
  box-shadow: none !important;
  height: 46px;
}
#checkout-checkout .form-control:focus, #checkout-cart .form-control:focus {
  border-color: var(--ink) !important;
  box-shadow: 0 0 0 1px var(--ink) !important;
}
#checkout-cart .buttons .pull-left .btn {
  background: #fff !important;
  color: var(--ink) !important;
}
#checkout-cart .buttons .pull-left .btn:hover { background: var(--ink) !important; color: #fff !important; }

.alert { border-radius: 0 !important; }
.alert-success { background: #eef7ee !important; border-color: #cfe6cf !important; color: #1d4d1f !important; }
.alert-success a { color: #1d4d1f !important; text-decoration: underline; }
.alert-danger { color: #7a1020 !important; }

/* ---------- Footer: pagamenti (metodi realmente attivi) ---------- */

.lss-payments {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px 14px;
  float: none !important;
}
.lss-payments__label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #cfcfcf;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.lss-payments__label .lss-icon { width: 18px; height: 18px; }
.lss-payments__list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.lss-payments__item {
  border: 1px solid #3a3a3a;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
  padding: 6px 12px;
  line-height: 1;
}
@media (max-width: 767px) {
  .lss-payments { justify-content: flex-start; margin-top: 12px; }
}

/* ---------- Footer: social monocromatici ---------- */

#footer .block-social { width: auto; padding: 0; float: none; }
#footer #social-container ul { display: flex; gap: 10px; margin: 0; padding: 0; list-style: none; }
#footer #social-container ul li { margin: 0 !important; float: none !important; }
#footer #social-container ul li a {
  width: 44px !important;
  height: 44px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 50% !important;
  border: 1px solid #4a4a4a !important;
  background: transparent !important;
  background-image: none !important;
  color: #fff !important;
  font-size: 17px;
  line-height: 1 !important;
  transition: background .2s, color .2s, border-color .2s;
}
#footer #social-container ul li a:before, #footer #social-container ul li a:after { display: none !important; }
#footer #social-container ul li a:hover {
  background: #fff !important;
  color: var(--ink) !important;
  border-color: #fff !important;
  text-decoration: none;
}

/* Logo footer: il logo e' nero, sul fondo scuro va invertito */
#footer .store-logo { display: inline-block; }
#footer .store-logo img { height: 44px !important; width: auto !important; filter: invert(1); }

/* Carrello: niente riquadro grigio dietro l'icona */
#header .cart-link, #_mobile_cart .cart-link {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  width: auto !important;
  height: auto !important;
}

/* La fascia servizi poggia direttamente sul blocco nero della community */
.lss-perks { margin-bottom: 0 !important; border-bottom: 0; }
.lss-community { margin: 0 !important; }

/* Footer: margini laterali coerenti con il resto della pagina */
#footer > .container,
#footer .footer-after > .container {
  max-width: 1320px;
  padding-left: var(--gutter) !important;
  padding-right: var(--gutter) !important;
}

/* ---------- Pagina categoria: colonna laterale e barra strumenti ---------- */

#column-left .page-title,
#column-left .box-heading,
#column-left h3, #column-left h4 {
  background: transparent !important;
  color: var(--ink) !important;
  font-family: var(--f-display) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase;
  padding: 0 0 12px !important;
  margin: 0 0 6px !important;
  border: 0 !important;
  border-bottom: 2px solid var(--ink) !important;
  line-height: 1.2 !important;
}
#column-left .box, #column-left .list-group, #column-left .box-content {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
#column-left .box ul li a, #column-left .box a {
  color: var(--ink) !important;
  font-size: 14px;
}
#column-left .box ul li a:hover { color: var(--pink-deep) !important; }
#column-left { padding-right: 32px; }

.refine-search > h3 { display: none !important; }
.product-list-top .compare-total, #compare-total { display: none !important; }
.breadcrumb { text-align: left !important; display: flex !important; flex-wrap: wrap; gap: 6px; }
.breadcrumb > li { display: inline-flex !important; align-items: center; }
.breadcrumb > li + li:before { content: '/' !important; padding: 0 6px 0 0 !important; }
.breadcrumb .fa-home:before { content: 'Home'; font-family: var(--f-body); font-size: 12px; letter-spacing: .08em; }

/* ==========================================================================
   Carrello
   ========================================================================== */

.lss-btn--block { display: flex; width: 100%; }
.lss-btn--outline { background: #fff !important; color: var(--ink) !important; }
.lss-btn--outline:hover { background: var(--ink) !important; color: #fff !important; border-color: var(--ink) !important; }

.lss-page-head { padding: 36px 0 24px; }
.lss-page-title {
  font-family: var(--f-display) !important;
  font-stretch: 72%;
  font-weight: 800 !important;
  font-size: clamp(34px, 5vw, 60px) !important;
  line-height: .95 !important;
  text-transform: uppercase;
  margin: 0 !important;
  color: var(--ink) !important;
}
.lss-page-count { font-stretch: 100%; font-weight: 400; font-size: .45em; vertical-align: middle; color: var(--muted); }
.lss-page-sub { color: var(--muted); margin: 8px 0 0; }

#checkout-cart.lss-cart { max-width: 1320px; padding: 0 var(--gutter) var(--section); }

.lss-cart__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: clamp(24px, 4vw, 56px);
  align-items: start;
}

/* Barra spedizione gratuita */
.lss-ship { background: var(--stone); padding: 16px 18px 18px; margin-bottom: 8px; }
.lss-ship__text { margin: 0 0 10px; font-size: 14px; color: var(--ink); }
.lss-ship__bar { height: 6px; background: #fff; overflow: hidden; }
.lss-ship__bar span { display: block; height: 100%; background: var(--ink); transition: width .6s var(--ease); }
.lss-ship.is-reached .lss-ship__bar span { background: #1f7a3a; }

/* Righe articolo */
.lss-lines { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.lss-line {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  gap: 20px;
  padding: 22px 0;
  border-bottom: 1px solid var(--line);
  align-items: start;
}
.lss-line__img { display: block; aspect-ratio: 3 / 4; background: var(--stone); overflow: hidden; }
.lss-line__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lss-line__img--voucher { display: flex; align-items: center; justify-content: center; }
.lss-line__name { display: block; font-size: 15px; font-weight: 600; line-height: 1.35; color: var(--ink) !important; margin-bottom: 6px; }
.lss-line__opts { list-style: none; margin: 0 0 6px; padding: 0; font-size: 13px; color: var(--muted); }
.lss-line__opts strong { color: var(--ink); font-weight: 600; }
.lss-line__warn { color: #a3122a; font-size: 13px; font-weight: 600; margin: 0 0 6px; }
.lss-line__meta { color: var(--muted); font-size: 13px; margin: 0 0 6px; }
.lss-line__unit { color: var(--muted); font-size: 13px; margin: 0 0 14px; }
.lss-line__total { font-weight: 700; font-size: 16px; white-space: nowrap; }
.lss-line__actions { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }

.lss-qty { display: inline-flex; align-items: stretch; border: 1.5px solid var(--ink); height: 42px; }
.lss-qty__btn { width: 40px; border: 0; background: #fff; color: var(--ink); font-size: 18px; line-height: 1; cursor: pointer; }
.lss-qty__btn:hover { background: var(--stone); }
.lss-qty input {
  width: 46px;
  border: 0;
  border-left: 1px solid var(--line);
  border-right: 1px solid var(--line);
  text-align: center;
  font-weight: 700;
  font-size: 15px;
  -moz-appearance: textfield;
  appearance: textfield;
}
.lss-qty input::-webkit-outer-spin-button, .lss-qty input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.lss-line__remove { border: 0; background: none; padding: 0; font-size: 13px; color: var(--muted); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.lss-line__remove:hover { color: var(--ink); }
.lss-link-back { display: inline-block; margin-top: 24px; }
.lss-link-back:after { content: "" !important; }
.lss-link-back:before { content: "\2190  "; }

/* Riepilogo */
.lss-summary { position: sticky; top: 72px; background: var(--stone); padding: 28px 26px; }
.lss-summary__title {
  font-family: var(--f-display) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin: 0 0 18px !important;
}
.lss-totals { margin: 0 0 22px; }
.lss-totals__row { display: flex; justify-content: space-between; gap: 12px; padding: 7px 0; font-size: 14px; }
.lss-totals__row dt { font-weight: 400; color: var(--muted); }
.lss-totals__row dd { margin: 0; font-weight: 600; }
.lss-totals__row.is-total { border-top: 1.5px solid var(--ink); margin-top: 8px; padding-top: 14px; font-size: 18px; }
.lss-totals__row.is-total dt { color: var(--ink); font-weight: 700; }
.lss-totals__row.is-total dd { font-weight: 800; }

.lss-summary__extras { margin: 22px 0 0 !important; }
.lss-summary__extras .panel { background: transparent !important; border: 0 !important; border-top: 1px solid #ddd6ce !important; margin: 0 !important; }
.lss-summary__extras .panel:last-child { border-bottom: 1px solid #ddd6ce !important; }
.lss-summary__extras .panel-heading { background: transparent !important; border: 0 !important; padding: 0 !important; }
.lss-summary__extras .panel-title a {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  padding: 14px 0 !important;
  font-size: 13px !important;
  letter-spacing: .08em !important;
  color: var(--ink) !important;
  text-decoration: none !important;
}
.lss-summary__extras .panel-body { padding: 0 0 16px !important; border: 0 !important; background: transparent !important; }
.lss-summary__extras .panel-body label { font-size: 13px; color: var(--muted); }
.lss-summary__extras .input-group { display: flex; width: 100%; max-width: none !important; }
.lss-summary__extras .input-group .form-control { flex: 1; height: 44px; background: #fff !important; }
.lss-summary__extras .input-group-btn { width: auto; }
.lss-summary__extras .btn { min-height: 44px !important; padding: 0 16px !important; border-radius: 0 !important; }

.lss-summary__trust { list-style: none; margin: 22px 0 0; padding: 0; display: grid; gap: 10px; }
.lss-summary__trust li { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--ink); }
.lss-summary__trust .lss-icon { width: 18px; height: 18px; }
.lss-summary__trust a { color: var(--ink); text-decoration: underline; text-underline-offset: 2px; }

/* Consigliati */
.lss-recommended { padding-top: var(--section); }
.lss-recommended .lss-section-head { padding: 0; }
.lss-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 20px; }

/* Carrello vuoto */
.lss-empty { text-align: center; padding: 72px 0 24px; max-width: 560px; margin: 0 auto; }
.lss-empty__icon { width: 56px; height: 56px; stroke-width: 1.2; margin-bottom: 18px; }
.lss-empty__text { color: var(--muted); font-size: 16px; margin: 14px 0 26px; }
.lss-empty__actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

@media (max-width: 991px) {
  .lss-cart__grid { grid-template-columns: 1fr; }
  .lss-summary { position: static; }
  .lss-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 12px; }
}
@media (max-width: 575px) {
  .lss-line { grid-template-columns: 84px minmax(0, 1fr); gap: 14px; position: relative; }
  .lss-line__total { position: absolute; top: 22px; right: 0; font-size: 15px; }
  .lss-line__info { padding-right: 70px; }
  .lss-summary { padding: 22px 18px; margin: 0 calc(-1 * var(--gutter)); }
}

/* ==========================================================================
   Pannello "Aggiunto al carrello" e avvisi brevi
   ========================================================================== */

.lss-added { position: fixed; inset: 0; z-index: 3000; }
.lss-added__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(17, 17, 17, .45);
  opacity: 0;
  transition: opacity .3s var(--ease);
}
.lss-added__panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(420px, 100%);
  background: var(--paper);
  display: flex;
  flex-direction: column;
  padding: 0 24px 24px;
  overflow-y: auto;
  transform: translateX(100%);
  transition: transform .35s var(--ease);
  box-shadow: -18px 0 40px rgba(0, 0, 0, .12);
}
.lss-added.is-open .lss-added__backdrop { opacity: 1; }
.lss-added.is-open .lss-added__panel { transform: none; }

.lss-added__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
.lss-added__head p {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-family: var(--f-display);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.lss-added__head .lss-icon { width: 20px; height: 20px; stroke: #1f7a3a; stroke-width: 2.2; }
.lss-added__close {
  width: 44px;
  height: 44px;
  margin-right: -12px;
  border: 0;
  background: none;
  font-size: 28px;
  line-height: 1;
  color: var(--ink);
  cursor: pointer;
}

.lss-added__item { display: grid; grid-template-columns: 90px 1fr; gap: 16px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.lss-added__item img { width: 90px; height: 120px; object-fit: cover; background: var(--stone); }
.lss-added__name { font-weight: 600; font-size: 15px; line-height: 1.35; margin: 0 0 6px; }
.lss-added__opts { list-style: none; margin: 0 0 6px; padding: 0; font-size: 13px; color: var(--muted); }
.lss-added__price { margin: 0; font-weight: 700; }

.lss-added__summary { display: flex; justify-content: space-between; align-items: baseline; padding: 18px 0; font-size: 14px; }
.lss-added__summary span { color: var(--muted); }
.lss-added__summary strong { font-size: 17px; }

.lss-added__ship { background: var(--stone); padding: 14px 16px; margin-bottom: 18px; }
.lss-added__ship p { margin: 0 0 8px; font-size: 13px; }

.lss-added__actions { display: grid; gap: 10px; margin-top: auto; padding-top: 8px; }
.lss-added__continue {
  border: 0;
  background: none;
  padding: 12px 0 0;
  font-size: 13px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  color: var(--ink);
  cursor: pointer;
}

.lss-toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 3000;
  max-width: calc(100% - 32px);
  transform: translate(-50%, 20px);
  opacity: 0;
  background: var(--ink);
  color: #fff;
  padding: 14px 20px;
  font-size: 14px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, .2);
  transition: opacity .25s var(--ease), transform .25s var(--ease);
}
.lss-toast.is-open { opacity: 1; transform: translate(-50%, 0); }
.lss-toast a { color: #fff; text-decoration: underline; }

@media (prefers-reduced-motion: reduce) {
  .lss-added__panel, .lss-added__backdrop, .lss-toast { transition: none; }
}

/* Taglia selezionata: niente alone rosa del tema attorno al riquadro */
#product .checkbox, #product .checkbox.checked, #product .radio { background: transparent !important; box-shadow: none !important; padding: 0 !important; margin: 0 8px 8px 0 !important; display: inline-block; }
#product .wishlist { background: #fff !important; }

/* ---------- Mobile: barra annunci e ricerca sempre visibili ---------- */
.ishiservicesblock.lss-announce { display: block !important; }

@media (max-width: 991px) {
  #_mobile_seach_widget #search_widget { width: 100% !important; height: auto !important; padding: 0 6px; }
  #_mobile_seach_widget #search_widget form {
    position: static !important;
    visibility: visible !important;
    opacity: 1 !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    transform: none !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  #_mobile_seach_widget #search { border-bottom: 1.5px solid var(--ink); }
  #_mobile_seach_widget #search .form-control { font-size: 16px !important; } /* evita lo zoom automatico di iOS */
  #_mobile_cart .lss-cart-count { top: -6px; right: -8px; }
}
@media (max-width: 991px) {
  #_mobile_seach_widget #ajax-search-btn, #_mobile_seach_widget #ajax-search-btn .fa { color: var(--ink) !important; }
  .lss-nav, #header .nav-full-width, #header .nav-full-width > .container, #_mobile_cart, #_mobile_cart .blockcart, #_mobile_cart #cart { overflow: visible !important; }
  #_mobile_cart .lss-cart-count { top: -8px !important; right: -11px !important; }
}

/* ==========================================================================
   Footer: loghi pagamento e barra legale
   ========================================================================== */

#footer .footer-after > .container { display: flex; flex-direction: column; gap: 18px; }
.lss-footer-pay .lss-payments { justify-content: flex-start; }
.lss-pay {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 34px;
  min-width: 54px;
  padding: 0 10px;
  background: #fff;
  border-radius: 5px;
  line-height: 1;
}
.lss-pay svg { display: block; height: 20px; width: auto; }
.lss-pay--text {
  background: transparent;
  border: 1px solid #4a4a4a;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
}
.lss-pay--text .lss-icon { width: 18px; height: 18px; stroke: #fff; }

.lss-legalbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 24px;
  padding-top: 16px;
  border-top: 1px solid #2a2a2a;
}
#footer .lss-legalbar p { margin: 0; color: #a8a8a8 !important; font-size: 12.5px; }
.lss-legalbar__links { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 0; padding: 0; list-style: none; }
#footer .lss-legalbar__links a { font-size: 12.5px; color: #cfcfcf !important; }
#footer .lss-legalbar__credit a { font-size: 12.5px; }
@media (max-width: 767px) {
  .lss-legalbar { flex-direction: column; align-items: flex-start; }
}

/* ==========================================================================
   Pagine informative (Privacy, Cookie, Termini, Spedizioni, Chi siamo)
   ========================================================================== */

.lss-info {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: start;
  padding: 8px 0 var(--section);
}
.lss-info__nav { position: sticky; top: 130px; }
.lss-info__nav-title {
  margin: 0 0 12px;
  font-family: var(--f-display);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--muted);
}
.lss-info__nav ul { margin: 0; padding: 0; list-style: none; border-left: 1px solid var(--line); }
.lss-info__nav a {
  display: block;
  padding: 9px 0 9px 16px;
  margin-left: -1px;
  border-left: 2px solid transparent;
  color: var(--ink);
  font-size: 15px;
  text-decoration: none;
}
.lss-info__nav a:hover { border-left-color: var(--line); text-decoration: none; }
.lss-info__nav a[aria-current="page"] { border-left-color: var(--ink); font-weight: 700; }

.lss-info__body { max-width: 760px; font-size: 16px; line-height: 1.7; color: var(--ink); float: none !important; width: auto !important; padding: 0 !important; }
.lss-info__body h1, .lss-info__body h2, .lss-info__body h3, .lss-info__body h4 {
  font-family: var(--f-display);
  font-weight: 800;
  font-stretch: 90%;
  letter-spacing: -.01em;
  line-height: 1.2;
  color: var(--ink);
  text-transform: none;
  margin: 1.9em 0 .6em;
}
.lss-info__body h1 { font-size: 30px; }
.lss-info__body h2 { font-size: 22px; }
.lss-info__body h3, .lss-info__body h4 { font-size: 18px; }
.lss-info__body > :first-child, .lss-legal > :first-child { margin-top: 0; }
.lss-info__body p, .lss-info__body li { color: var(--ink); font-size: 16px; line-height: 1.7; }
.lss-info__body p { margin: 0 0 1em; }
.lss-info__body ul, .lss-info__body ol { padding-left: 1.2em; margin: 0 0 1.2em; }
.lss-info__body li { margin-bottom: .4em; }
.lss-info__body a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.lss-info__body a:hover { color: var(--pink-deep); }
.lss-info__body img { max-width: 100%; height: auto; }
.lss-info__body .lss-legal__updated { font-size: 13px; color: var(--muted); letter-spacing: .02em; }
.lss-legal__table { overflow-x: auto; margin: 0 0 1.4em; -webkit-overflow-scrolling: touch; }
.lss-info__body table { width: 100%; min-width: 520px; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.lss-info__body th, .lss-info__body td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--line); }
.lss-info__body th { background: var(--stone); font-weight: 700; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }

.lss-info__help {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
  margin-top: 48px;
  padding: 24px;
  background: var(--stone);
}
.lss-info__body .lss-info__help p { margin: 0; max-width: 420px; }
.lss-info__body .lss-info__help .lss-btn { color: #fff !important; text-decoration: none !important; }

@media (max-width: 991px) {
  .lss-info { grid-template-columns: minmax(0, 1fr); }
  .lss-info__nav { position: static; order: 2; }
  .lss-info__nav ul { display: flex; flex-wrap: wrap; gap: 8px; border: 0; }
  .lss-info__nav a { padding: 8px 14px; margin: 0; border: 1px solid var(--line); font-size: 14px; }
  .lss-info__nav a[aria-current="page"] { border-color: var(--ink); background: var(--ink); color: #fff; }
}

/* ==========================================================================
   Banner e preferenze cookie
   ========================================================================== */

.lss-cookie {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 2900;
  width: min(440px, calc(100% - 40px));
  padding: 24px;
  background: var(--paper);
  color: var(--ink);
  border: 1px solid var(--ink);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .18);
  transform: translateY(24px);
  opacity: 0;
  transition: opacity .3s var(--ease), transform .3s var(--ease);
}
.lss-cookie.is-open { transform: none; opacity: 1; }
.lss-cookie__close {
  position: absolute;
  top: 6px;
  right: 6px;
  width: 40px;
  height: 40px;
  border: 0;
  background: none;
  font-size: 26px;
  line-height: 1;
  color: var(--ink);
  cursor: pointer;
}
.lss-cookie__title {
  margin: 0 32px 8px 0;
  font-family: var(--f-display);
  font-size: 18px;
  font-weight: 800;
  font-stretch: 90%;
  letter-spacing: -.01em;
}
.lss-cookie__text { margin: 0 0 18px; font-size: 14px; line-height: 1.55; color: var(--ink); }
.lss-cookie__text a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.lss-cookie__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lss-cookie__actions .lss-btn { min-height: 46px; padding: 0 12px !important; }
.lss-cookie__more {
  grid-column: 1 / -1;
  justify-self: center;
  padding: 6px 4px 0;
  border: 0;
  background: none;
  color: var(--ink);
  font-size: 13px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
@media (max-width: 575px) {
  .lss-cookie { left: 0; bottom: 0; width: 100%; border-width: 1px 0 0; padding: 20px 16px 16px; }
}

.lss-cookie-prefs { position: fixed; inset: 0; z-index: 3000; display: flex; align-items: center; justify-content: center; padding: 16px; }
.lss-cookie-prefs__backdrop { position: absolute; inset: 0; background: rgba(17, 17, 17, .5); opacity: 0; transition: opacity .25s var(--ease); }
.lss-cookie-prefs__panel {
  position: relative;
  width: min(540px, 100%);
  max-height: calc(100vh - 32px);
  overflow-y: auto;
  margin: 0;
  padding: 0 24px 24px;
  background: var(--paper);
  transform: translateY(16px);
  opacity: 0;
  transition: opacity .25s var(--ease), transform .25s var(--ease);
}
.lss-cookie-prefs.is-open .lss-cookie-prefs__backdrop { opacity: 1; }
.lss-cookie-prefs.is-open .lss-cookie-prefs__panel { transform: none; opacity: 1; }
.lss-cookie-prefs__head { display: flex; align-items: center; justify-content: space-between; padding: 18px 0; border-bottom: 1px solid var(--line); }
.lss-cookie-prefs__head p { margin: 0; font-family: var(--f-display); font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.lss-cookie-prefs__intro { margin: 16px 0 4px; font-size: 14px; }
.lss-cookie-prefs__intro a { color: var(--ink); text-decoration: underline; }
.lss-cookie-prefs__row { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 16px 0; border-bottom: 1px solid var(--line); }
.lss-cookie-prefs__name { margin: 0 0 4px; font-weight: 700; font-size: 15px; }
.lss-cookie-prefs__desc { margin: 0; font-size: 13px; line-height: 1.5; color: var(--muted); }
.lss-cookie-prefs__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 20px; }
.lss-cookie-prefs__actions .lss-btn { padding: 0 12px !important; }

.lss-switch { position: relative; flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 6px; margin: 2px 0 0; cursor: pointer; font-weight: 400; }
.lss-switch input { position: absolute; top: 0; right: 0; opacity: 0; width: 46px; height: 26px; margin: 0; cursor: pointer; }
.lss-switch__track { position: relative; display: block; width: 46px; height: 26px; border-radius: 13px; background: #bdbdbd; transition: background .2s var(--ease); }
.lss-switch__track::after { content: ''; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .2s var(--ease); }
.lss-switch input:checked + .lss-switch__track { background: var(--ink); }
.lss-switch input:checked + .lss-switch__track::after { transform: translateX(20px); }
.lss-switch input:focus-visible + .lss-switch__track { outline: 2px solid var(--pink-deep); outline-offset: 2px; }
.lss-switch input:disabled + .lss-switch__track { background: #767676; cursor: not-allowed; }
.lss-switch__note { font-size: 11px; color: var(--muted); white-space: nowrap; }

@media (prefers-reduced-motion: reduce) {
  .lss-cookie, .lss-cookie-prefs__panel, .lss-cookie-prefs__backdrop { transition: none; }
}

/* Correzioni dopo la verifica nel browser */
#information-information #content p,
#information-information #content li,
#information-information #content td { color: var(--ink); letter-spacing: normal; font-size: 16px; }
#information-information #content td { font-size: 14px; }
#information-information #content .lss-legal__updated { color: var(--muted); font-size: 13px; }
.lss-info__body h1.lss-info__title { font-size: clamp(32px, 5vw, 52px); font-weight: 800; font-stretch: 85%; letter-spacing: -.02em; text-transform: uppercase; margin: 0 0 24px; }
.lss-cookie .lss-cookie__title { color: var(--ink); }
.lss-cookie .lss-cookie__text { color: var(--ink); letter-spacing: normal; }
.cart-dropdown .cart-btn { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cart-dropdown .cart-btn a { display: block; min-width: 0; margin: 0 !important; }
.cart-dropdown .cart-btn .btn-cartblock { width: 100%; min-width: 0; padding: 0 8px !important; font-size: 12px !important; letter-spacing: .08em; }
#information-information #content b,
#information-information #content strong { display: inline; font-weight: 700; color: inherit; }
/* Il tema nasconde l'overflow dell'icona: il badge usciva tagliato. */
#_mobile_cart .cart-link, #_desktop_cart .cart-link { overflow: visible !important; }

/* ==========================================================================
   Titoli di pagina (il tema li nascondeva ovunque) e testate elenco
   ========================================================================== */

.breadcrumb-container { display: flex !important; flex-direction: column-reverse; align-items: flex-start; gap: 14px; }
.breadcrumb-container .page-title,
.lss-page-head__title,
#information-information .lss-info__body h1.lss-info__title {
  display: block;
  font-family: var(--f-display) !important;
  font-stretch: 72%;
  font-weight: 800 !important;
  font-size: clamp(34px, 5vw, 60px) !important;
  line-height: .95 !important;
  letter-spacing: -.01em;
  text-transform: uppercase;
  text-align: left !important;
  color: var(--ink) !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Nella scheda prodotto il titolo è già accanto alla galleria. */
#product-product .breadcrumb-container .page-title,
.breadcrumb-container:has(+ #product-product) .page-title { display: none; }

.lss-page-head { padding: 4px 0 24px; }
.lss-page-head__sub, .lss-page-head__sub p { margin: 10px 0 0; max-width: 640px; color: var(--muted) !important; font-size: 15px; line-height: 1.6; letter-spacing: normal; }

/* ---------- Barra conteggio + ordinamento ---------- */

.lss-toolbar {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 20px !important;
  padding: 12px 0 !important;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: transparent !important;
}
.lss-toolbar .btn-list-grid[hidden] { display: none !important; }
.lss-toolbar__count { margin: 0; font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--ink); }
.lss-toolbar__sort { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-weight: 400; }
.lss-toolbar__sort span { font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.lss-toolbar__sort select {
  appearance: none;
  -webkit-appearance: none;
  height: 40px;
  padding: 0 34px 0 12px;
  border: 1px solid var(--line);
  border-radius: 0;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23111' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 12px center;
  color: var(--ink);
  font-size: 14px;
  max-width: 220px;
  cursor: pointer;
}
.lss-toolbar__sort select:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
@media (max-width: 575px) {
  .lss-toolbar__sort span { display: none; }
  .lss-toolbar__sort select { max-width: 190px; font-size: 13px; }
}

/* ---------- Form di ricerca ---------- */

.lss-search-form { margin: 0 0 28px !important; padding: 0 !important; border: 0 !important; background: none !important; }
.lss-search-form[hidden] { display: none !important; }
.lss-search-form__row { display: grid; grid-template-columns: minmax(0, 1fr) 240px auto; gap: 10px; }
.lss-search-form__row .form-control {
  height: 50px !important;
  border: 1px solid var(--ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 16px !important;
  color: var(--ink) !important;
  padding: 0 14px !important;
}
.lss-search-form__row .select-wrapper { margin: 0; }
.lss-search-form__desc { margin-top: 12px; padding-left: 0 !important; display: inline-flex !important; align-items: center; gap: 8px; font-size: 14px; color: var(--ink) !important; }
.lss-search-form__desc input { position: static !important; margin: 0 !important; width: 18px; height: 18px; accent-color: var(--ink); }
@media (max-width: 767px) {
  .lss-search-form__row { grid-template-columns: 1fr; }
}

/* ---------- Nessun risultato ---------- */

.lss-empty { padding: 48px 24px; margin-bottom: 32px; background: var(--stone); text-align: center; }
.lss-empty p { max-width: 460px; margin: 0 auto 20px; color: var(--ink) !important; }
.lss-empty .lss-empty__title { font-family: var(--f-display); font-size: 24px; font-weight: 800; font-stretch: 85%; text-transform: uppercase; margin-bottom: 8px; }

/* Elenchi prodotti su mobile: griglia allineata al margine della pagina, niente bottone
   (le taglie si scelgono comunque nella scheda prodotto). */
@media (max-width: 767px) {
  .product-list-js.row { display: flex; flex-wrap: wrap; margin-left: -6px !important; margin-right: -6px !important; }
  .product-list-js > .product-layout { padding-left: 6px !important; padding-right: 6px !important; margin-bottom: 28px; }
  .product-list-js .btn-cart { display: none !important; }
}
@media (max-width: 767px) {
  .product-list-js .product-thumb { margin-bottom: 0 !important; padding: 0 !important; }
  .product-list-js .caption { padding: 10px 0 0 !important; }
}

/* Scheda prodotto su mobile: galleria, poi taglie e acquisto, poi descrizione
   (prima la descrizione spingeva il bottone "Aggiungi al carrello" a metà pagina). */
@media (max-width: 767px) {
  #product-product .product_carousel > .row { display: flex; flex-direction: column; }
  #product-product .product-left { display: contents; }
  #product-product .product-left > * { order: 2; padding-left: 15px; padding-right: 15px; }
  #product-product .product-left > .product-left-title { order: 1; text-align: left; }
  #product-product .product-left > .product-left-title .product-title { text-align: left !important; font-size: 30px !important; }
  #product-product .product-left > .product-left-title .price { justify-content: flex-start; text-align: left !important; }
  #product-product .product-right { order: 3; margin-top: 20px; }
  #product-product .product-left > .tabs_info { order: 4; margin-top: 8px; }
}

/* Condivisione prodotto (sostituisce AddThis, servizio chiuso) */
.lss-share { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 14px 0 18px; }
.lss-share__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  border: 0;
  background: none;
  color: var(--ink) !important;
  font-size: 13px;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.lss-share__btn .lss-icon { width: 18px; height: 18px; }
.lss-share__btn:hover { color: var(--pink-deep) !important; }
#product-product .product-image img, #product-product .image_show img, #product-product .carousel-container img { border: 0 !important; }

/* Galleria scheda prodotto: una foto alla volta. Le foto sono 450x600, quindi la principale
   non supera i 450 px di larghezza (oltre, il browser la ingrandisce e risulta sgranata). */
.lss-pg { display: flex; justify-content: center; gap: 14px; margin-bottom: 24px; }
.lss-pg__thumbs { flex: 0 0 76px; display: flex; flex-direction: column; gap: 10px; max-height: 600px; overflow-y: auto; scrollbar-width: none; }
.lss-pg__thumbs::-webkit-scrollbar { display: none; }
.lss-pg__thumb { flex: 0 0 auto; padding: 0; border: 1.5px solid transparent; background: #fff; cursor: pointer; opacity: .6; transition: opacity .2s, border-color .2s; }
.lss-pg__thumb img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: contain; }
.lss-pg__thumb:hover { opacity: 1; }
.lss-pg__thumb.is-active { opacity: 1; border-color: var(--ink); }
.lss-pg__main { position: relative; flex: 0 1 450px; min-width: 0; }
.lss-pg__track {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  background: #fff;
}
.lss-pg__track::-webkit-scrollbar { display: none; }
.lss-pg__item { flex: 0 0 100%; scroll-snap-align: start; display: flex; justify-content: center; cursor: zoom-in; }
.lss-pg__item img { display: block; width: 100%; max-width: 450px; height: auto; aspect-ratio: 3 / 4; object-fit: contain; margin: 0 !important; }
.lss-pg__nav {
  position: absolute;
  top: 50%;
  width: 40px;
  height: 40px;
  margin-top: -20px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 1px 6px rgba(0, 0, 0, .12);
  color: var(--ink);
  font-size: 22px;
  line-height: 40px;
  cursor: pointer;
  opacity: 0;
  transition: opacity .2s;
}
.lss-pg__nav--prev { left: 10px; }
.lss-pg__nav--next { right: 10px; }
.lss-pg__main:hover .lss-pg__nav, .lss-pg__nav:focus-visible { opacity: 1; }
.lss-pg__count {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 3px 9px;
  background: rgba(255, 255, 255, .9);
  color: var(--ink);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
  pointer-events: none;
}
.lss-pg__dots { display: flex; justify-content: center; gap: 6px; margin-top: 12px; }
.lss-pg__dots span { width: 6px; height: 6px; border-radius: 50%; background: var(--line); transition: background .2s, transform .2s; }
.lss-pg__dots span.is-active { background: var(--ink); transform: scale(1.3); }
@media (max-width: 991px) {
  .lss-pg { display: block; }
}

/* ==========================================================================
   Scheda prodotto: box acquisto
   ========================================================================== */

/* Taglie: un solo riquadro (il tema aggiungeva un secondo bordo al contenitore). */
#product .checkbox, #product .radio {
  border: 0 !important;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  outline: 0 !important;
}
#product .checkbox label, #product .radio label { margin: 0 !important; cursor: pointer; transition: background .15s var(--ease), color .15s var(--ease); }
#product .checkbox label:hover, #product .radio label:hover { background: var(--stone) !important; }
#product .checkbox.checked label:hover { background: var(--ink) !important; }
#product .form-group.required .control-label::before,
#product .form-group.required .checkbox-text::before { color: var(--pink-deep) !important; }
#product h3, #product .lss-size-title { font-family: var(--f-display); font-weight: 800; font-stretch: 85%; font-size: 18px !important; text-transform: uppercase; letter-spacing: .02em; color: var(--ink) !important; }

/* Colore unico: testo, non un pulsante. */
.lss-color-single { margin-top: 4px; font-size: 15px; font-weight: 600; color: var(--ink); text-transform: capitalize; }
#product .product_option .form-group:has(.lss-color-single) { display: flex; align-items: baseline; gap: 10px; }

/* Quantità + aggiungi + preferiti su una riga. */
#product-product .product-right > .form-group,
#product-product #product + .form-group {
  display: grid !important;
  grid-template-columns: 76px minmax(0, 1fr) 50px;
  grid-template-rows: auto 50px;
  gap: 6px 8px;
  align-items: end;
  margin: 8px 0 20px;
}
#product-product #product + .form-group > label[for="input-quantity"] { grid-column: 1 / -1; margin: 0; }
#product-product #input-quantity {
  height: 50px !important;
  width: 100% !important;
  margin: 0 !important;
  border: 1.5px solid var(--ink) !important;
  border-radius: 0 !important;
  text-align: center;
  font-size: 16px !important;
  font-weight: 600;
  color: var(--ink) !important;
  box-shadow: none !important;
}
#product-product #button-cart { width: 100% !important; margin: 0 !important; height: 50px; }
#product-product #product + .form-group .wishlist {
  width: 50px !important;
  height: 50px !important;
  min-height: 0;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1.5px solid var(--ink) !important;
  border-radius: 0 !important;
  background: #fff !important;
  color: var(--ink) !important;
}
#product-product #product + .form-group .wishlist .icon { display: none; }
#product-product #product + .form-group .wishlist .fa { font-size: 18px; color: var(--ink) !important; }
#product-product #product + .form-group .wishlist:hover { background: var(--ink) !important; }
#product-product #product + .form-group .wishlist:hover .fa { color: #fff !important; }

/* Dati prodotto: elenco sobrio al posto dei riquadri grigi. */
#product-product ul.attr { display: block !important; margin: 0 0 20px !important; padding: 16px 0 0 !important; border-top: 1px solid var(--line); }
#product-product ul.attr li {
  display: flex !important;
  justify-content: space-between;
  gap: 16px;
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  background: none !important;
  font-size: 14px;
  color: var(--ink) !important;
  text-align: left !important;
}
#product-product ul.attr li span {
  display: inline !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
  color: var(--muted) !important;
  font-size: 13px;
  text-transform: none;
  letter-spacing: normal;
}
#product-product #button-cart { padding: 0 12px !important; letter-spacing: .1em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#product-product #product + .form-group .wishlist .fa { display: none !important; }
#product-product #product + .form-group .wishlist .icon { display: block !important; width: 26px; height: 26px; fill: var(--ink); }
#product-product #product + .form-group .wishlist:hover .icon { fill: #fff; }
#product .product_option:has(.lss-color-single) { padding-left: 0 !important; }

/* Card prodotto: colori e taglie disponibili sotto il nome */
.lss-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 4px 0 6px !important; font-size: 12px; line-height: 1.4; color: var(--muted) !important; letter-spacing: .02em; }
.lss-card-meta__colors { display: inline-flex; align-items: center; gap: 5px; color: var(--ink); font-weight: 600; }
.lss-card-meta__colors::before { content: ''; width: 10px; height: 10px; border-radius: 50%; background: conic-gradient(#111 0 25%, #c9b39a 0 50%, #ff3278 0 75%, #e7e2dc 0); }
.lss-card-meta__sizes { word-spacing: 4px; }

/* ==========================================================================
   Checkout: header ridotto, step numerati, riepilogo laterale
   ========================================================================== */

/* Niente distrazioni: via menu, ricerca e barra annunci; footer ridotto a pagamenti e dati legali. */
.route-checkout-checkout .lss-announce,
.route-checkout-checkout [id$="seach_widget"],
.route-checkout-checkout #_mobile_top_menu,
.route-checkout-checkout .lss-bar__search,
.route-checkout-checkout #menu-icon,
.route-checkout-checkout #footer .footer-before,
.route-checkout-checkout #footer .footer-container { display: none !important; }
.route-checkout-checkout #footer .footer-after { margin-top: 0; }

.lss-checkout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: clamp(24px, 4vw, 56px);
  align-items: start;
  padding-bottom: var(--section);
}
.lss-checkout__steps { min-width: 0; }

/* ---------- Step ---------- */

#checkout-checkout #accordion { counter-reset: lss-step; margin: 0; border-top: 1px solid var(--ink); }
#checkout-checkout #accordion > .panel {
  counter-increment: lss-step;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
#checkout-checkout #accordion .panel-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 0 !important;
  background: transparent !important;
  border: 0 !important;
}
#checkout-checkout #accordion .panel-heading::before {
  content: counter(lss-step);
  flex: none;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.5px solid #9a9a9a;
  color: #6b6b6b;
  font-family: var(--f-display);
  font-weight: 700;
  font-size: 14px;
}
#checkout-checkout #accordion .panel-title,
#checkout-checkout #accordion .panel-title a {
  margin: 0;
  font-family: var(--f-display) !important;
  font-weight: 800 !important;
  font-stretch: 88%;
  font-size: 18px !important;
  letter-spacing: .01em;
  text-transform: uppercase;
  color: #6b6b6b !important;
  text-decoration: none !important;
}
#checkout-checkout #accordion .panel-title a { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; }
#checkout-checkout #accordion .panel-title { flex: 1; }
#checkout-checkout #accordion .panel-title .fa { display: none; }
#checkout-checkout #accordion .panel-title a::after { content: 'Modifica'; font-family: var(--f-body); font-stretch: 100%; font-size: 13px; font-weight: 600; text-transform: none; letter-spacing: normal; text-decoration: underline; text-underline-offset: 3px; color: var(--ink); }

/* Completato: spunta nera. */
#checkout-checkout #accordion .panel-heading:has(a)::before { content: '✓'; background: var(--ink); border-color: var(--ink); color: #fff; }
#checkout-checkout #accordion .panel-heading:has(a) .panel-title a { color: var(--ink) !important; }
/* In corso: numero pieno e titolo nero. */
#checkout-checkout #accordion > .panel:has(> .panel-collapse.in) .panel-heading::before { content: counter(lss-step); background: var(--ink); border-color: var(--ink); color: #fff; }
#checkout-checkout #accordion > .panel:has(> .panel-collapse.in) .panel-title,
#checkout-checkout #accordion > .panel:has(> .panel-collapse.in) .panel-title a { color: var(--ink) !important; }
#checkout-checkout #accordion > .panel:has(> .panel-collapse.in) .panel-title a::after { content: none; }

#checkout-checkout #accordion .panel-collapse { border: 0 !important; }
#checkout-checkout #accordion .panel-body { padding: 0 0 28px 46px !important; border: 0 !important; }
@media (max-width: 575px) {
  #checkout-checkout #accordion .panel-body { padding-left: 0 !important; }
}

/* ---------- Contenuto degli step ---------- */

#checkout-checkout .panel-body h2 { font-family: var(--f-display); font-weight: 800; font-stretch: 88%; font-size: 17px !important; text-transform: uppercase; margin: 0 0 8px !important; color: var(--ink) !important; }
#checkout-checkout .panel-body legend { font-family: var(--f-display); font-weight: 800; font-stretch: 88%; font-size: 15px; text-transform: uppercase; letter-spacing: .04em; border: 0; margin: 18px 0 10px; padding: 0; color: var(--ink); }
#checkout-checkout .panel-body p { color: var(--ink) !important; font-size: 14px; line-height: 1.55; }
#checkout-checkout .panel-body > .row > [class*="col-"] + [class*="col-"] { border-left: 1px solid var(--line); }
@media (max-width: 767px) {
  #checkout-checkout .panel-body > .row > [class*="col-"] + [class*="col-"] { border-left: 0; border-top: 1px solid var(--line); margin-top: 24px; padding-top: 24px; }
}

#checkout-checkout .control-label { color: var(--ink) !important; font-size: 12px !important; letter-spacing: .08em; }
#checkout-checkout .form-control {
  height: 50px;
  border: 1px solid #bdbdbd !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 16px;
  color: var(--ink) !important;
  background: #fff !important;
}
#checkout-checkout textarea.form-control { height: auto; min-height: 96px; padding: 12px 14px; }
#checkout-checkout .form-control:focus { border-color: var(--ink) !important; outline: 1px solid var(--ink); outline-offset: 0; }
#checkout-checkout .has-error .form-control { border-color: #b3261e !important; }
#checkout-checkout .text-danger { color: #b3261e !important; font-size: 13px; margin-top: 6px; }

/* Scelte (account, spedizione, pagamento) come schede selezionabili. */
#checkout-checkout .panel-body .radio {
  display: block;
  margin: 0 0 10px !important;
  padding: 0 !important;
  border: 1px solid #bdbdbd !important;
  background: #fff !important;
  color: var(--ink) !important;
  transition: border-color .15s var(--ease), background .15s var(--ease);
}
#checkout-checkout .panel-body .radio label {
  display: flex !important;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  margin: 0;
  padding: 12px 16px !important;
  color: var(--ink) !important;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}
#checkout-checkout .panel-body .radio input[type="radio"] {
  display: inline-block !important;
  position: static !important;
  flex: none;
  width: 20px;
  height: 20px;
  margin: 0 !important;
  accent-color: var(--ink);
}
#checkout-checkout .panel-body .radio:has(input:checked),
#checkout-checkout .panel-body .radio.checked { border-color: var(--ink) !important; box-shadow: inset 0 0 0 1px var(--ink); background: var(--stone) !important; color: var(--ink) !important; }
#checkout-checkout .panel-body .radio.checked label { color: var(--ink) !important; }
#checkout-checkout .panel-body .radio:hover { border-color: var(--ink) !important; }
#checkout-checkout .panel-body .checkbox label { color: var(--ink); font-size: 14px; }
#checkout-checkout .panel-body input[type="checkbox"] { accent-color: var(--ink); width: 18px; height: 18px; }

#checkout-checkout .buttons { display: flex; justify-content: flex-end; margin-top: 18px; }
#checkout-checkout .buttons .pull-right { float: none !important; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 12px; text-align: right; font-size: 14px; color: var(--ink); }
#checkout-checkout .buttons .pull-right a { color: var(--ink); text-decoration: underline; }
#checkout-checkout .panel-body .btn-primary { min-width: 200px; }
@media (max-width: 575px) {
  #checkout-checkout .buttons .pull-right { justify-content: stretch; }
  #checkout-checkout .panel-body .btn-primary { width: 100%; }
}

/* Riepilogo finale (step conferma) */
#checkout-checkout #collapse-checkout-confirm .table { border: 0; font-size: 14px; }
#checkout-checkout #collapse-checkout-confirm .table > thead > tr > td { border: 0; border-bottom: 1px solid var(--ink); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); background: transparent; }
#checkout-checkout #collapse-checkout-confirm .table td { border-color: var(--line) !important; color: var(--ink); vertical-align: middle; }
#checkout-checkout #collapse-checkout-confirm .table tfoot td { border: 0 !important; padding: 6px 8px; }
#checkout-checkout #collapse-checkout-confirm .table tfoot tr:last-child td { font-size: 18px; font-weight: 800; padding-top: 12px; border-top: 1px solid var(--ink) !important; }

/* ---------- Riepilogo laterale ---------- */

.lss-checkout__summary { position: sticky; top: 24px; }
.lss-checkout__box { background: var(--stone); padding: 24px; }
.lss-checkout__box-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 16px; }
.lss-checkout__box-title { margin: 0; font-family: var(--f-display); font-weight: 800; font-stretch: 88%; font-size: 18px; text-transform: uppercase; color: var(--ink); }
.lss-checkout__box-title span { font-weight: 400; color: var(--muted); }
.lss-checkout__box-head a { font-size: 13px; font-weight: 600; color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.lss-checkout__items { list-style: none; margin: 0; padding: 0; max-height: 340px; overflow-y: auto; }
.lss-checkout__items li { display: grid; grid-template-columns: 60px minmax(0, 1fr) auto; gap: 14px; align-items: start; padding: 12px 0; border-top: 1px solid var(--line); }
.lss-checkout__thumb { position: relative; display: block; }
.lss-checkout__thumb img { display: block; width: 60px; height: 80px; object-fit: cover; background: #fff; }
.lss-checkout__qty { position: absolute; top: -8px; right: -8px; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: var(--ink); color: #fff; font-size: 12px; font-weight: 700; line-height: 22px; text-align: center; }
.lss-checkout__item { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.lss-checkout__name { font-size: 14px; font-weight: 600; line-height: 1.35; color: var(--ink); }
.lss-checkout__opt { font-size: 12px; color: var(--muted); }
.lss-checkout__price { font-size: 14px; font-weight: 700; white-space: nowrap; color: var(--ink); }
.lss-checkout__totals { margin: 8px 0 0; padding-top: 12px; border-top: 1px solid var(--ink); }
.lss-checkout__totals div { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; font-size: 14px; }
.lss-checkout__totals dt { font-weight: 400; color: var(--ink); }
.lss-checkout__totals dd { margin: 0; font-weight: 700; color: var(--ink); text-align: right; }
.lss-checkout__totals div + div dd { font-weight: 400; color: var(--muted); font-size: 13px; }
.lss-checkout__note { margin: 10px 0 0; font-size: 12px; color: var(--muted); }

.lss-checkout__trust { list-style: none; margin: 16px 0 0; padding: 0; }
.lss-checkout__trust li { display: flex; gap: 12px; align-items: flex-start; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 13px; line-height: 1.45; color: var(--muted); }
.lss-checkout__trust .lss-icon { flex: none; width: 22px; height: 22px; stroke: var(--ink); }
.lss-checkout__trust strong { display: block; color: var(--ink); font-size: 14px; }
.lss-checkout__trust a { color: var(--ink); text-decoration: underline; }

@media (max-width: 991px) {
  .lss-checkout { grid-template-columns: minmax(0, 1fr); }
  /* Su mobile il riepilogo va prima, così si vede cosa si sta comprando. */
  .lss-checkout__summary { position: static; order: -1; }
  .lss-checkout__items { max-height: none; }
}
@media (min-width: 992px) { .route-checkout-checkout .lss-nav { display: none !important; } }
.lss-choice { display: flex; flex-direction: column; gap: 3px; }
.lss-choice__title { font-weight: 700; font-size: 15px; color: var(--ink); }
.lss-choice__desc { font-weight: 400; font-size: 13px; line-height: 1.45; color: var(--muted); }
#checkout-checkout .panel-body .radio label:has(.lss-choice) { align-items: flex-start; }
#checkout-checkout .panel-body .radio label:has(.lss-choice) input { margin-top: 2px !important; }
#checkout-checkout #button-account { margin-top: 8px; }
.lss-forgotten { display: inline-block; margin-top: 8px; font-size: 13px; color: var(--ink) !important; text-decoration: underline; }
.lss-choice { text-align: left; } #checkout-checkout .panel-body .radio label { justify-content: flex-start; text-align: left; }

/* ==========================================================================
   Area account: accesso, registrazione, pagine del profilo
   ========================================================================== */

.lss-auth { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 3vw, 40px); padding: 8px 0 var(--section); align-items: start; }
.lss-auth__panel { padding: clamp(24px, 3vw, 40px); border: 1px solid var(--ink); background: #fff; }
.lss-auth__panel--alt { background: var(--stone); border-color: var(--stone); }
.lss-auth__panel h2 { margin: 0 0 6px !important; font-family: var(--f-display) !important; font-weight: 800 !important; font-stretch: 85%; font-size: 26px !important; text-transform: uppercase; letter-spacing: -.01em; color: var(--ink) !important; }
.lss-auth__lead { margin: 0 0 22px; font-size: 15px; color: var(--muted) !important; }
.lss-auth .form-group { margin-bottom: 16px; }
.lss-auth .btn { width: 100%; }
.lss-auth__perks { list-style: none; margin: 0 0 24px; padding: 0; }
.lss-auth__perks li { position: relative; padding: 8px 0 8px 28px; border-bottom: 1px solid var(--line); font-size: 15px; color: var(--ink); }
.lss-auth__perks li::before { content: ''; position: absolute; left: 2px; top: 13px; width: 14px; height: 8px; border-left: 2px solid var(--ink); border-bottom: 2px solid var(--ink); transform: rotate(-45deg); }
.lss-auth__or { position: relative; margin: 22px 0 14px; text-align: center; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.lss-auth__or::before { content: ''; position: absolute; left: 0; right: 0; top: 50%; border-top: 1px solid var(--line); }
.lss-auth__or span { position: relative; padding: 0 12px; background: #fff; }
.lss-auth__social { display: grid; gap: 10px; }
.lss-auth__social-btn { display: inline-flex !important; gap: 10px; }
.lss-auth__social-btn .lss-icon { width: 18px; height: 18px; }
.lss-auth__social .pp-login, .lss-auth__social #pp_login_container, .lss-auth__social [id^="pp_login"] { display: flex; justify-content: center; }
.lss-auth__social .well, .lss-auth__social .list-group, .lss-auth__social > aside, .lss-auth__social #column-left { float: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; border: 0 !important; background: none !important; }
@media (max-width: 767px) {
  .lss-auth { grid-template-columns: minmax(0, 1fr); }
}

/* Campi e pannelli delle altre pagine account (registrazione, indirizzi, ordini...) */
[id^="account-"] .form-control, [id^="affiliate-"] .form-control, #information-contact .form-control {
  height: 50px;
  border: 1px solid #bdbdbd !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 16px;
  color: var(--ink) !important;
  background: #fff !important;
}
[id^="account-"] textarea.form-control, #information-contact textarea.form-control { height: auto; min-height: 140px; padding: 12px 14px; }
[id^="account-"] .form-control:focus, #information-contact .form-control:focus { border-color: var(--ink) !important; outline: 1px solid var(--ink); }
[id^="account-"] .control-label, #information-contact .control-label { color: var(--ink) !important; font-size: 12px !important; letter-spacing: .08em; }
[id^="account-"] legend { font-family: var(--f-display); font-weight: 800; font-stretch: 88%; font-size: 18px; text-transform: uppercase; color: var(--ink); border-bottom: 1px solid var(--ink); padding-bottom: 8px; margin: 28px 0 16px; }
[id^="account-"] .well { background: #fff !important; border: 1px solid var(--line) !important; border-radius: 0 !important; box-shadow: none !important; }
[id^="account-"] #content h2 { font-family: var(--f-display) !important; font-weight: 800 !important; font-stretch: 88%; font-size: 20px !important; text-transform: uppercase; color: var(--ink) !important; margin: 28px 0 10px !important; }
[id^="account-"] #content p, [id^="account-"] #content td, [id^="account-"] #content li { color: var(--ink); letter-spacing: normal; }
[id^="account-"] .buttons { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin: 24px 0 48px; }
[id^="account-"] .buttons .pull-left, [id^="account-"] .buttons .pull-right { float: none !important; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; color: var(--ink); font-size: 14px; }
[id^="account-"] .buttons a:not(.btn) { color: var(--ink); text-decoration: underline; }
[id^="account-"] .table { font-size: 14px; }
[id^="account-"] .table > thead > tr > td { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); background: transparent; border-bottom: 1px solid var(--ink); }
[id^="account-"] input[type="checkbox"], [id^="account-"] input[type="radio"] { accent-color: var(--ink); width: 18px; height: 18px; }

/* Pagina "Il mio account": link come schede */
#account-account #content ul.list-unstyled { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 10px; margin: 0 0 12px; padding: 0; }
#account-account #content ul.list-unstyled li { margin: 0; }
#account-account #content ul.list-unstyled a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  padding: 12px 18px;
  border: 1px solid var(--line);
  color: var(--ink) !important;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none !important;
  transition: border-color .15s var(--ease), background .15s var(--ease);
}
#account-account #content ul.list-unstyled a::after { content: '→'; font-weight: 400; }
#account-account #content ul.list-unstyled a:hover { border-color: var(--ink); background: var(--stone); }
#account-login .lss-auth__panel { margin: 0 !important; }
#account-login .lss-auth__panel h2 { margin: 0 0 6px !important; }

/* ==========================================================================
   Contatti
   ========================================================================== */

.lss-contact__intro { max-width: 620px; margin: 0 0 28px; font-size: 17px; line-height: 1.55; color: var(--ink) !important; }
.lss-contact__channels { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0 0 clamp(32px, 5vw, 64px); padding: 0; list-style: none; }
.lss-contact__card { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 24px; border: 1px solid var(--line); background: #fff; }
.lss-contact__card .lss-icon { width: 26px; height: 26px; margin-bottom: 8px; }
.lss-contact__card--main { background: var(--ink); border-color: var(--ink); }
.lss-contact__card--main .lss-icon { stroke: #fff; }
.lss-contact__card--main p { color: #fff !important; }
.lss-contact__card--main .lss-btn { margin-top: auto; }
.lss-contact__label { margin: 0; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--muted) !important; }
.lss-contact__card--main .lss-contact__label { color: #d9d9d9 !important; }
.lss-contact__value { margin: 0 0 12px; font-family: var(--f-display); font-weight: 800; font-stretch: 90%; font-size: 20px; line-height: 1.25; color: var(--ink) !important; }
.lss-contact__open { margin: -6px 0 12px; font-size: 13px; color: var(--muted) !important; }
.lss-contact__link { margin-top: auto; font-size: 14px; font-weight: 600; color: var(--ink) !important; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 991px) { .lss-contact__channels { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .lss-contact__channels { grid-template-columns: minmax(0, 1fr); } }

.lss-contact__form { max-width: 760px; padding-bottom: var(--section); }
.lss-contact__form h2 { margin: 0 0 6px !important; font-family: var(--f-display) !important; font-weight: 800 !important; font-stretch: 85%; font-size: 28px !important; text-transform: uppercase; color: var(--ink) !important; }
.lss-contact__form-lead { margin: 0 0 22px; color: var(--muted) !important; }
.lss-contact__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; }
.lss-contact__form .form-group { margin: 0 0 16px !important; }
.lss-contact__form .form-group > .form-control { width: 100%; }
.lss-contact__privacy { margin: 4px 0 18px; font-size: 13px; color: var(--muted) !important; }
.lss-contact__privacy a { color: var(--ink); text-decoration: underline; }
@media (max-width: 575px) {
  .lss-contact__row { grid-template-columns: minmax(0, 1fr); }
  .lss-contact__form .btn { width: 100%; }
}

/* 404 */
.lss-404 { max-width: 640px; margin: 0 auto; padding: clamp(40px, 8vw, 96px) 0 var(--section); text-align: center; }
.lss-404__code { margin: 0; font-family: var(--f-display); font-weight: 900; font-stretch: 62%; font-size: clamp(120px, 26vw, 240px); line-height: .85; color: var(--pink); letter-spacing: -.02em; }
.lss-404__title { margin: 12px 0 10px !important; font-family: var(--f-display) !important; font-weight: 800 !important; font-stretch: 80%; font-size: clamp(28px, 4vw, 40px) !important; text-transform: uppercase; color: var(--ink) !important; }
.lss-404__text { margin: 0 auto 26px; max-width: 480px; color: var(--muted) !important; font-size: 16px; }
.lss-404__search { display: flex; gap: 8px; margin: 0 auto 18px; max-width: 480px; }
.lss-404__search .form-control { flex: 1; height: 50px; border: 1px solid var(--ink) !important; border-radius: 0 !important; box-shadow: none !important; font-size: 16px; }
.lss-404__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }

/* Card: il tema metteva il bottone in posizione assoluta sopra il prezzo (prezzo visibile "dentro" il bottone). */
.product-thumb .caption .btn-cart {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  background: none !important;
}
.product-thumb .btn-cart button { background: #fff !important; }
.product-thumb .btn-cart button .lblcart { display: inline !important; }
.product-thumb .btn-cart button:hover { background: var(--ink) !important; }

/* ==========================================================================
   Campi di input: stesso stile ovunque (il tema li rimpiccioliva a 12px nelle pagine account)
   16px minimo: sotto, Safari su iPhone zooma la pagina quando si tocca il campo.
   ========================================================================== */
html body .form-control,
html body #content input[type="text"], html body #content input[type="email"], html body #content input[type="tel"],
html body #content input[type="password"], html body #content input[type="search"], html body #content input[type="number"],
html body #content select, html body #content textarea {
  font-family: var(--f-body) !important;
  font-size: 16px !important;
  letter-spacing: normal !important;
  color: var(--ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
html body .form-control:not(textarea) { height: 50px !important; padding: 0 14px !important; }
html body textarea.form-control { padding: 12px 14px !important; line-height: 1.5; }
html body .form-control { border: 1px solid #bdbdbd !important; background-color: #fff !important; }
html body .form-control:hover { border-color: #8a8a8a !important; }
html body .form-control:focus { border-color: var(--ink) !important; outline: 1px solid var(--ink) !important; outline-offset: 0; }
html body .form-control::placeholder, html body #content input::placeholder, html body #content textarea::placeholder { color: #767676 !important; opacity: 1; }
html body .has-error .form-control { border-color: #b3261e !important; }
html body select.form-control {
  appearance: none; -webkit-appearance: none;
  padding-right: 38px !important;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23111' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 14px center !important;
}
/* Il tema aggiunge una sua freccia sopra le select: una sola basta. */
.select-wrapper::after, .select-wrapper::before { display: none !important; }
/* Eccezioni con stile proprio. */
html body #content .lss-toolbar__sort select { font-size: 16px !important; height: 44px; }
html body #content .lss-qty input { font-size: 16px !important; }
html body #product-product #input-quantity { border: 1.5px solid var(--ink) !important; }

/* Checkout: "Modifica" allineato a destra (il tema forzava display:block sul link). */
#checkout-checkout #accordion .panel-default .panel-heading .panel-title { flex: 1 1 auto; min-width: 0; }
#checkout-checkout #accordion .panel-default .panel-heading .panel-title a { display: flex !important; align-items: center; justify-content: space-between; width: 100%; }
#checkout-checkout #accordion .panel-default .panel-heading .panel-title a::after { margin-left: auto; padding-left: 16px; }

/* Checkout: caselle di spunta (es. "Consegna allo stesso indirizzo") senza il riquadro centrato del tema. */
#checkout-checkout .panel-body .checkbox {
  border: 0 !important;
  width: auto !important;
  height: auto !important;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  background: none !important;
  text-align: left !important;
}
#checkout-checkout .panel-body .checkbox label {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  font-size: 15px !important;
  font-weight: 500;
  color: var(--ink) !important;
  text-align: left !important;
  cursor: pointer;
}
#checkout-checkout .panel-body .checkbox input[type="checkbox"] { position: static !important; display: inline-block !important; margin: 0 !important; flex: none; }

/* Hover "Account" nell'header: il tema lo colorava come lo sfondo (testo invisibile). */
.user-info a:hover, .user-info .account-name:hover,
#header .user-info a:hover, #header .user-info .account-name:hover { color: var(--ink) !important; text-decoration: underline; text-underline-offset: 4px; }

/* Footer e resto della pagina: un solo carattere (il tema usava ancora Poppins qua e là). */
#footer, #footer p, #footer a, #footer li, #footer h5, #footer .h3, #footer address, #footer span:not(.fa):not([class*="icon"]),
main p, main li, main a, main td, main th, main label, main span:not(.fa):not([class*="icon"]):not([class*="glyphicon"]) {
  font-family: var(--f-body);
}

/* Mobile: "Aggiungi al carrello" intero anche a 375px (prima troncato). */
@media (max-width: 480px) {
  #product-product #product + .form-group { grid-template-columns: 62px minmax(0, 1fr) 50px; }
  #product-product #button-cart { letter-spacing: .06em; font-size: 12px !important; }
}
/* "Rimuovi" nel carrello: area tocco di almeno 44px. */
.lss-line [class*="remove"], .lss-line button[onclick*="remove"], .lss-line .lss-line__remove {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 4px;
}

/* Scheda prodotto: prezzo ben visibile sotto il titolo, prima di taglie e bottone */
.lss-pdp-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; margin: 14px 0 22px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.lss-pdp-price p { margin: 0; }
.lss-pdp-price__now { font-family: var(--f-display); font-weight: 800; font-stretch: 90%; font-size: clamp(30px, 3vw, 38px); line-height: 1; letter-spacing: -.01em; color: var(--ink) !important; }
.lss-pdp-price__now--sale { color: var(--pink-deep) !important; }
.lss-pdp-price__was { font-size: 18px; color: var(--muted) !important; }
.lss-pdp-price__note { flex-basis: 100%; font-size: 13px; color: var(--muted) !important; }
#product-product .product-left-title .price h2, #product-product .product-left-title .price li { font-family: var(--f-display) !important; font-weight: 800 !important; font-size: 28px !important; color: var(--ink) !important; }
#product-product #product .product_option { width: 100% !important; float: none !important; }
#product-product #product .product_option [id^="input-option"] { display: flex; flex-wrap: wrap; }

/* Paginazione: pagina attiva nera (bianco su rosa era 3,5:1) */
.pagination { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
.pagination > li > a, .pagination > li > span {
  float: none !important;
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 44px; height: 44px; padding: 0 12px !important; margin: 0 !important;
  border: 1px solid var(--line) !important; border-radius: 0 !important;
  background: #fff !important; color: var(--ink) !important; font-weight: 600;
}
.pagination > li > a:hover { border-color: var(--ink) !important; background: var(--stone) !important; }
.pagination > .active > span, .pagination > .active > a, .pagination > .active > span:hover { background: var(--ink) !important; border-color: var(--ink) !important; color: #fff !important; }
.category-pagination .pagination-desc { color: var(--muted) !important; font-size: 13px; }

/* Pagine legali: voci degli elenchi al colore del testo (il tema le schiariva a 13px) */
#information-information #content ul li, #information-information #content ol li { color: var(--ink) !important; font-size: 16px; letter-spacing: normal; }

/* Logo WhatsApp: glifo pieno (le altre icone sono a contorno) */
.lss-icon.lss-icon--wa { fill: currentColor !important; stroke: none !important; }
.lss-contact__card--main .lss-icon--wa { fill: #25d366 !important; }

/* ==========================================================================
   Ricerca nell'header: campo a sottolineatura e menu dei suggerimenti
   ========================================================================== */
#search_widget #search { position: relative; }
#search_widget #search .form-control,
#search_widget #search .form-control:hover,
#search_widget #search .form-control:focus {
  height: 40px !important; padding: 0 !important;
  border: 0 !important; outline: 0 !important; background: transparent !important;
}
#search_widget #search:focus-within { border-bottom-width: 2px; }

#search_widget .ajaxishi-search {
  position: absolute !important;
  top: calc(100% + 8px) !important; left: 0 !important; right: auto !important;
  z-index: 1200;
  width: min(420px, calc(100vw - 32px)) !important;
  max-height: min(70vh, 560px); overflow-y: auto;
  margin: 0 !important; padding: 6px 0 !important;
  background: #fff !important; border: 1px solid var(--ink) !important;
}
#search_widget .ajaxishi-search ul { list-style: none; margin: 0 !important; padding: 0 !important; }
#search_widget .ajaxishi-search li { margin: 0 !important; padding: 0 !important; border: 0 !important; float: none !important; width: auto !important; }
.lss-suggest__item {
  display: grid !important; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 12px; align-items: center;
  padding: 8px 14px !important; color: var(--ink) !important; text-decoration: none !important;
}
.lss-suggest__item:hover, .lss-suggest__item:focus-visible { background: var(--stone) !important; }
#search_widget .ajaxishi-search img.lss-suggest__thumb { width: 48px !important; height: 64px !important; max-width: none; object-fit: cover; background: var(--stone); }
.lss-suggest__name { font-size: 14px; line-height: 1.35; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.lss-suggest__price { font-size: 14px; white-space: nowrap; text-align: right; }
.lss-suggest__price s { display: block; font-size: 12px; color: var(--muted); }
.lss-suggest__empty { padding: 14px !important; font-size: 14px; color: var(--muted); }
.lss-suggest__all {
  display: block; margin-top: 4px; padding: 12px 14px !important; border-top: 1px solid var(--line);
  font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
  color: var(--ink) !important; text-decoration: none !important;
}
.lss-suggest__all:hover { background: var(--ink) !important; color: #fff !important; }
/* Mobile: il menu occupa tutta la larghezza della barra, sotto il campo. */
@media (max-width: 991px) {
  .lss-nav { position: relative; }
  .lss-nav #search_widget, .lss-nav #search_widget #search { position: static !important; }
  .lss-nav #search_widget .ajaxishi-search { left: 0 !important; right: 0 !important; width: auto !important; top: 100% !important; }
  .lss-nav #search_widget #search .input-group-btn, .lss-nav #search_widget #search #ajax-search-btn { position: static !important; }
  .lss-nav #search_widget #search .form-control { flex: 1 1 auto; width: auto !important; min-width: 0; }
  .lss-nav #search_widget #search .input-group-btn { flex: none; }
}
.lss-suggest__item, .lss-suggest__name { text-align: left !important; }
