/* =========================================================================
   alysum-blackgemma — stile replica del vecchio shop.blackgemma.it
   (warehouse/child): Fira Sans, bottoni #695c52, totali rossi, card chiare.
   Caricato automaticamente dal core PrestaShop (assets/css/custom.css).
   ========================================================================= */
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;600;800&display=swap');

:root{
  --bg-brand:#2e2323;
  --bg-btn:#695c52;
  --bg-border:hsla(0,0%,63%,.25);
  --bg-muted:#6c757d;
  --bg-red:#dc3545;
  --bg-info:#d8f0f5;
}

body{
  font-family:'Fira Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  background:#fff !important;
  color:#212529;
  line-height:1.5rem;
}
h1,h2,h3,h4{ font-family:'Fira Sans', sans-serif !important; font-weight:800 !important; color:#212529 !important; }
/* bottoni e campi NON ereditano il font di default: forzo Fira anche lì */
.btn, button, input, select, textarea, .form-control, a{
  font-family:'Fira Sans', sans-serif !important;
}
/* icone SVG inline di header/footer */
.bg-ico{ vertical-align:-2px; margin-right:5px; }
/* stub carrellino: mai visibile (serve solo agli script del tema) */
.bg-header__cartstub{ display:none !important; }

/* ---- HEADER (markup nostro in header.tpl) ---- */
.bg-header{
  display:flex; align-items:center; justify-content:space-between;
  max-width:1360px; margin:0 auto; padding:14px 20px;
  border-bottom:1px solid var(--bg-border);
}
.bg-header__left{ flex:1; }
.bg-header__back{ color:#212529 !important; font-size:15px; text-decoration:none; }
.bg-header__back:hover{ text-decoration:underline; }
.bg-header__logo{ flex:0 0 auto; text-align:center; }
.bg-header__logo img{ max-height:90px; width:auto; }
.bg-header__right{ flex:1; display:flex; align-items:center; justify-content:flex-end; gap:22px; }
.bg-header__account{ color:#212529 !important; text-decoration:none; display:inline-flex; align-items:center; }
.bg-header__account:hover{ text-decoration:underline; }
.bg-header__lang .language-selector{ display:inline-block; }
.bg-header__lang img{ vertical-align:middle; }
/* nasconde eventuali residui header Alysum/CE */
#header .elementor, #header .desktop-header-wrapper, #header .mobile-header-wrapper{ display:none !important; }

/* ---- TITOLO ---- */
#cart h1, .page-cart h1{
  font-size:34px; text-transform:none; letter-spacing:0;
  margin:26px 0 20px;
}

/* ---- CARRELLO: card come il vecchio ---- */
.cart-container, .cart-item, .cart-summary, .card{
  background:#fff !important;
  border:1px solid var(--bg-border) !important;
  border-radius:3px;
  box-shadow:none !important;
}
.cart-item{ padding:16px; }
.cart-item + .cart-item{ border-top:0 !important; }
.product-line-grid .label, .product-line-info .label{ color:#212529 !important; font-weight:600; }
/* totale riga in rosso, come il vecchio */
.product-line-info.product-price, .product-line-grid-right .product-price strong,
.product-price.h5, .cart-item .product-price{ color:var(--bg-red) !important; font-weight:700; }
.cart-summary{ padding:18px; }
.cart-summary .cart-total .label, .cart-summary .cart-total .value{
  font-size:19px; font-weight:800; color:#212529 !important;
}

/* ---- BOTTONI ---- */
.btn-primary, .checkout a.btn, .cart-detailed-actions .btn{
  background:var(--bg-btn) !important; border:none !important; color:#fff !important;
  font-weight:600; border-radius:3px; box-shadow:none !important; text-transform:none;
  letter-spacing:0; font-size:16px; padding:12px 20px;
}
.btn-primary:hover, .checkout a.btn:hover{ background:var(--bg-brand) !important; }

/* ---- box informativo azzurro (iniettato da custom.js) ---- */
.bg-infobox{
  background:var(--bg-info); color:#0c5460;
  text-align:center; font-weight:600; padding:14px; margin:18px 0;
  border-radius:3px; font-size:15px;
}
.bg-infobox a{ color:inherit; text-decoration:none; }

/* ---- continua lo shopping (iniettato) ---- */
.bg-continue{
  display:inline-block; background:#f1f1f1; color:#212529 !important;
  padding:10px 18px; border-radius:3px; text-decoration:none; font-size:15px;
}
.bg-continue:hover{ background:#e4e4e4; }

/* ---- pagamenti sicuri (iniettato) ---- */
.bg-payments{ text-align:center; margin-top:14px; color:#212529; }
.bg-payments .bg-payments__lock{ font-size:14px; display:block; margin-bottom:8px; }
.bg-payments img{ height:24px; width:auto; margin:0 5px; vertical-align:middle; }

/* ---- pagine secondarie (login, account, CMS): respiro sopra il contenuto ---- */
body:not(#cart) #main-content, body:not(#cart) #wrapper{ padding-top:30px; }
#authentication .page-header, #authentication h1{ margin-top:10px; }

/* ---- FOOTER (markup nostro in footer.tpl) ---- */
#footer{ background:#f8f9fa !important; border-top:1px solid var(--bg-border); }
.bg-footer{
  max-width:1360px; margin:0 auto; padding:34px 20px;
  display:flex; flex-wrap:wrap; gap:40px; justify-content:space-between;
}
.bg-footer h4{ font-size:16px; margin-bottom:12px; }
.bg-footer__links{ list-style:none; margin:0; padding:0; }
.bg-footer__links li{ margin:6px 0; }
.bg-footer a{ color:#212529; text-decoration:none; }
.bg-footer a:hover{ text-decoration:underline; }
.bg-footer .material-icons{ font-size:16px; vertical-align:-3px; margin-right:4px; }
.bg-footer p{ margin:6px 0; }

/* ---- pulizia: breadcrumb e bolle flottanti ---- */
.breadcrumb, nav[data-depth]{ display:none !important; }
.pkaiagent, #pkaiagent, [class*="pkaiagent"],
.pk-whatsapp, [class*="whatsapp"],
.fixed-content .pk-cart, #pk_fixed_cart{ display:none !important; }

@media (max-width:768px){
  .bg-header{ flex-wrap:wrap; gap:8px; }
  .bg-header__logo{ order:-1; width:100%; }
  .bg-header__logo img{ max-height:64px; }
  .bg-header__left, .bg-header__right{ flex:1 1 auto; }
}
