/* Stili generali */
.obc .obc-cta { display: inline-block; }

/* Versione compatta opzionale */
.obc.obc--compact {
  border-radius: 12px;
  padding: 14px !important;
}
.obc.obc--compact .obc-badge { margin-bottom: 6px !important; }
.obc.obc--compact .obc-prices { margin: 4px 0 6px !important; }
.obc.obc--compact .obc-price { font-size: 18px !important; }
.obc.obc--compact .obc-price + .obc-price { font-size: 24px !important; margin-left: 8px !important; }
.obc.obc--compact .obc-countdown { margin: 6px 0 10px !important; font-weight: 700; }
.obc.obc--compact .obc-progress { margin: 8px 0 !important; }
.obc.obc--compact .obc-progress > div { padding: 6px 0 !important; font-size: 13px; }
.obc.obc--compact .obc-dyn { margin-bottom: 8px !important; font-size: 14px; }
.obc.obc--compact .obc-benefits { max-width: 520px; margin: 8px auto !important; }
.obc.obc--compact .obc-benefits li { margin: 4px 0 !important; line-height: 1.35; font-size: 14px; }
.obc.obc--compact .obc-cta { padding: 12px 20px !important; font-size: 17px !important; border-radius: 10px !important; }

/* Mobile refinements */
@media (max-width: 767px){
  .obc .obc-cta { width: 100%; text-align: center; }
  .obc.obc--compact { padding: 12px !important; }
  .obc.obc--compact .obc-price { font-size: 17px !important; }
  .obc.obc--compact .obc-price + .obc-price { font-size: 22px !important; }
}

/* Variante “bordo soft” */
.obc.obc--soft { border-width: 1px !important; box-shadow: 0 4px 18px rgba(0,0,0,.06); }

/* Variante “CTA full width sempre” */
.obc.obc--cta-full .obc-cta { width: 100% !important; }

/* === Offer Box FIXES v1.3.2 === */
.obc{
  --obc-border-color: transparent;
  --obc-border-width: 1px;
  --obc-border-style: solid;
  --obc-accent: initial;
  --obc-cta-bg: var(--obc-accent);
  --obc-urgency: initial;
  border-style: var(--obc-border-style);
  border-width: var(--obc-border-width);
  border-color: var(--obc-border-color) !important;
}
.obc .obc-cta{ background: var(--obc-cta-bg); color: var(--obc-cta-fg, #fff); }
.obc .obc-countdown, .obc .obc-urgency{ color: var(--obc-urgency); }

/* Benefits grid: 1 col mobile, 3 desktop */
.obc .obc-benefits{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:1fr; gap:12px;
}
@media (min-width:1024px){
  .obc .obc-benefits{ grid-template-columns: repeat(var(--benefit-cols-desktop,3), minmax(0,1fr)); }
  .obc .obc-benefits > li{ display:flex; align-items:flex-start; gap:8px; }
}
.obc .obc-benefits > li{ width:auto; }


/* === Benefits alignment vars === */
.obc .obc-benefits{
  text-align: var(--benefits-text-align, left);
  justify-items: var(--benefits-justify, start);
  align-items: start;
}
.obc .obc-benefits > li{
  /* keep items compact and aligned; no random stretch */
  max-width: 100%;
}


/* === Benefits alignment vars v2 === */
.obc .obc-benefits{ text-align: var(--benefits-text-align, left); }
.obc .obc-benefits > li{
  text-align: var(--benefits-text-align, left);
  justify-content: var(--benefits-flex-justify, flex-start);
}

/* === Offer Box FIXES v1.3.3 === */
.obc{
  --obc-border-color: transparent;
  --obc-border-width: 1px;
  --obc-border-style: solid;
  --obc-accent: initial;
  --obc-cta-bg: var(--obc-accent);
  --obc-urgency: initial;
  border-style: var(--obc-border-style);
  border-width: var(--obc-border-width);
  border-color: var(--obc-border-color) !important;
}
.obc .obc-cta{ background: var(--obc-cta-bg); color: var(--obc-cta-fg, #fff); }
.obc .obc-countdown, .obc .obc-urgency{ color: var(--obc-urgency); }

/* Benefits alignment */
.obc .obc-benefits{
  list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:1fr; gap:12px;
  text-align: var(--benefits-text-align, left);
  justify-items: var(--benefits-justify, start);
  align-items: start;
}
@media (min-width: 1024px){
  .obc .obc-benefits{ grid-template-columns: repeat(var(--benefit-cols-desktop, 3), minmax(0,1fr)); }
  .obc .obc-benefits > li{ display:flex; align-items:flex-start; gap:8px; }
}
.obc .obc-benefits > li{
  text-align: var(--benefits-text-align, left);
  justify-content: var(--benefits-flex-justify, flex-start);
  max-width:100%;
}
