/* ==========================================================================
   Horizontal Promotion Banner Section
   ========================================================================== */
.epna-promo-banner-section {
  background-color: #f1f5f9;
  padding-block: 5rem;
}

.promo-banner-card {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-radius: var(--epna-radius-xl);
  overflow: hidden;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  color: var(--epna-white);
  box-shadow: 0 15px 35px -5px rgba(15, 23, 42, 0.2);
}

.promo-banner-content {
  padding: var(--epna-space-3xl) var(--epna-space-2xl);
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: start;
}

.promo-title {
  font-size: 1.65rem;
  font-weight: 800;
  color: var(--epna-white);
  margin-block-end: var(--epna-space-md);
  line-height: 1.4;
}

.promo-desc {
  color: var(--epna-gray-muted);
  font-size: 1rem;
  line-height: 1.85;
  margin-block-end: var(--epna-space-xl);
}

.promo-banner-bg-wrap {
  position: relative;
  height: 100%;
  min-height: 320px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #0c1424;
}

.promo-banner-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.promo-banner-overlay {
  position: absolute;
  inset-inline: 0;
  inset-block: 0;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.1) 0%, rgba(15, 23, 42, 0.4) 100%);
}

@media (max-width: 1024px) {
  .promo-banner-card {
    grid-template-columns: 1fr;
  }

  .promo-banner-bg-wrap {
    height: 240px;
    min-height: 240px;
  }
}

@media (max-width: 768px) {
  .promo-banner-content {
    padding: var(--epna-space-xl) var(--epna-space-lg);
  }
}
