.automatic-offer-section {
  background: linear-gradient(180deg, #f7f9fd 0%, #eef4ff 100%);
  border-block: 1px solid #dbe7fb;
}

.automatic-offer-section .section-head {
  align-items: flex-end;
  gap: 24px;
}

.offer-deadline {
  margin-top: 8px;
  color: #34445f;
  font-size: .9rem;
}

.offer-countdown {
  min-width: 190px;
  padding: 14px 18px;
  border-radius: 14px;
  background: #111b2e;
  color: #fff;
  box-shadow: 0 12px 28px rgba(17, 27, 46, .18);
}

.offer-countdown span {
  display: block;
  margin-bottom: 4px;
  color: #aebbd1;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.offer-countdown strong {
  font-family: Sora, Inter, sans-serif;
  font-size: 1.05rem;
}

.automatic-offer-section .catalog-card {
  border-color: #c9dcff;
  box-shadow: 0 14px 34px rgba(24, 82, 168, .09);
}

.automatic-offer-section .catalog-card h3 {
  display: -webkit-box;
  min-height: 2.8em;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.automatic-offer-section .offer-badge {
  background: #bf1f31;
  color: #fff;
}

.offer-original-price {
  display: block;
  color: #4b5870;
  font-size: .86rem;
  font-weight: 700;
}

.offer-original-price s {
  color: #334155;
  text-decoration-color: #d33b4e;
  text-decoration-thickness: 2px;
}

.offer-savings {
  display: block;
  margin-top: 3px;
  color: #087a56;
  font-size: .78rem;
  font-weight: 800;
}

.offer-cash-reference {
  display: block;
  margin-top: 2px;
  color: #526077;
  font-size: .78rem;
  font-weight: 700;
}

.offer-price-block strong {
  color: #ca2034;
}

.cart-offer-context,
.sg-checkout-offer {
  display: block;
  color: #087a56;
  font-weight: 700;
}

.cart-offer-context s,
.sg-checkout-offer s {
  color: #526077;
  text-decoration-color: #bf1f31;
  text-decoration-thickness: 2px;
}

.automatic-offer-detail .offer-badge {
  display: inline-flex;
  margin-bottom: 10px;
  background: #bf1f31;
  color: #fff;
}

.automatic-offer-detail del,
.automatic-offer-detail time {
  display: block;
}

.cart-price-review {
  margin: 0 0 16px;
  padding: 12px 14px;
  border: 1px solid #d8a43a;
  border-radius: 10px;
  background: #fff8e7;
  color: #684600;
  font-weight: 700;
}

.offer-preview-action:disabled {
  border-color: #cbd5e1;
  background: #f1f5f9;
  color: #475569;
  cursor: not-allowed;
  opacity: 1;
}

@media (min-width: 1180px) {
  .automatic-offer-section .product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (min-width: 720px) and (max-width: 1179px) {
  .automatic-offer-section .product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (pointer: coarse) and (max-width: 980px) {
  .automatic-offer-section .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .automatic-offer-section .product-card h3,
  .automatic-offer-section .offer-original-price,
  .automatic-offer-section .offer-cash-reference,
  .automatic-offer-section .offer-savings {
    font-size: .78rem;
  }

  .automatic-offer-section .card-add,
  .automatic-offer-section .heart-button {
    min-height: 44px;
    min-width: 44px;
  }
}

@media (min-width: 390px) and (max-width: 719px) {
  .automatic-offer-section .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 719px) {
  .automatic-offer-section .section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .offer-countdown {
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 359px) {
  .automatic-offer-section .product-grid {
    grid-template-columns: 1fr;
  }
}
