/* Global theme overrides (loaded after page CSS) */
:root{
  --primary: #325542;
  --header-bg: #325542;
  --accent: #325542;
}

/* Top promo bar + header colors (match Rechaud) */
.top-bar-promo{
  background-color: #3d3d3d !important;
  color: #fff !important;
}

.site-header{
  background-color: var(--header-bg) !important;
}

/* Make logo always visible on colored header */
.header-logo img{
  display:block;
  max-width: 190px;
  height: 38px;
  width: auto;
  object-fit: contain;
}

/* Prevent overflow for long legal text */
.legal-card, .product-description, .product-description-images{
  overflow-wrap:anywhere;
  word-break:break-word;
}

/* Consistent spacing for description content */
.product-description-images p,
.product-description-images ul,
.product-description-images h2,
.product-description-images h3{
  margin: 0 0 16px 0;
}
.product-description-images img{
  display:block;
  max-width:100%;
  height:auto;
  margin: 16px auto;
}


/* === GLOBAL COLOR OVERRIDES (added) === */
/* Top bar: force only the top strip to #1e1e1e */
.top-bar,
.preheader,
.topbar,
.header-top,
#top-bar {
  background: #1e1e1e !important;
  background-image: none !important;
}

/* Buy button: force solid green (remove gradients/overlays) */
.btn-primary,
#buy-now-btn,
#buy-now-btn-floating,
.buy-button,
.btn-buy,
.button-buy,
a.buy-now,
button.buy-now {
  background: #325542 !important;
  background-image: none !important;
  border-color: #325542 !important;
}

.btn-primary:hover,
#buy-now-btn:hover,
#buy-now-btn-floating:hover,
.buy-button:hover,
.btn-buy:hover,
.button-buy:hover,
a.buy-now:hover,
button.buy-now:hover,
.btn-primary:active,
#buy-now-btn:active,
#buy-now-btn-floating:active {
  background: #325542 !important;
  background-image: none !important;
}

/* Remove pseudo-element overlays that can create “half color” effects */
.btn-primary::before, .btn-primary::after,
#buy-now-btn::before, #buy-now-btn::after,
#buy-now-btn-floating::before, #buy-now-btn-floating::after {
  content: none !important;
  display: none !important;
}

/* Price + highlights ("aparelho"/badges): force green */
.price,
.current-price,
#current-price,
.product-price,
.price-box .current-price,
.highlight,
.badge,
.feature-badge,
.aparelho,
.aparelho * {
  color: #325542 !important;
}

.discount-badge,
.tag,
.pill,
.feature-tag,
.badge-green {
  background: #325542 !important;
  color: #ffffff !important;
  border-color: #325542 !important;
}



/* Ensure top bar content stays readable */
.top-bar-promo a,
.top-bar-promo span,
.top-bar-promo p,
.top-bar-promo i,
.top-bar-promo svg{
  color: #fff !important;
  fill: #fff !important;
}

/* Ver parcelas (installments) link color */
details.installments-details summary{
  color: #325542 !important;
}


/* === UX lock: evita arrastar para os lados (horizontal) === */
html, body {
  overflow-x: hidden !important;
}

body {
  overscroll-behavior-x: none;
  touch-action: pan-y;
}

/* ===== Utilitários globais (reviews / políticas) ===== */

/* Spinner amarelo (para "Carregar mais avaliações") */
.ol-spinner{
  display:inline-block;
  width:14px;
  height:14px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.45);
  border-top-color:#325542; /* amarelo visível */
  animation:ol-spin .8s linear infinite;
  vertical-align:middle;
  margin-left:10px;
}

@keyframes ol-spin{
  to{ transform:rotate(360deg); }
}

/* Botão de voltar nas políticas */
.ol-back-to-product{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:10px;
  background:#325542;
  color:#fff;
  font-weight:700;
  font-size:14px;
  width:fit-content;
}

.ol-back-to-product-wrap{
  margin:14px 0 16px;
}


/* ===== Rodapé (CNPJ / Endereço) ===== */
.footer-identification{
  box-sizing:border-box;
  max-width:1100px;
  margin:0 auto;
  padding:12px 16px;
  text-align:center;
  line-height:1.45;
  font-size:13px;
  color:inherit;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.footer-identification > div{ margin:6px 0; }
@media (min-width: 768px){
  .footer-identification{
    display:flex;
    justify-content:center;
    align-items:flex-start;
    gap:22px;
    flex-wrap:wrap;
    text-align:center;
  }
  .footer-identification > div{ margin:0; }
}
