/**
 * SV CTA Responsive Override (Hot-fix)
 * Fixes mobile layout issues with CTA blocks
 * Version: 1.0 - 2025-10-25
 * 
 * This removes fixed widths and ensures CTAs fill their container
 * across all device breakpoints.
 */

/* ---- Base CTA Container (Remove Fixed Widths) ---- */
.sv-cta { 
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 1rem 1.25rem;
  border-radius: .75rem;
  background: #fff;
}

/* ---- Fluid Images/SVGs ---- */
.sv-cta img, 
.sv-cta svg { 
  max-width: 100%; 
  height: auto; 
}

/* ---- Mobile: Full Width Stack (Default) ---- */
.sv-cta .row {
  --bs-gutter-x: 1rem;
}

.sv-cta .cta-actions {
  text-align: center;
  margin-top: 1rem;
}

.sv-cta .cta-actions .btn {
  width: 100%;
  margin-bottom: 0.5rem;
}

/* ---- Tablet: Comfortable Layout (≥768px) ---- */
@media (min-width: 768px) {
  .sv-cta {
    padding: 1.125rem 1.375rem;
  }

  .sv-cta .cta-actions .btn {
    width: auto;
    min-width: 180px;
  }
}

/* ---- Desktop: Two-Column Layout (≥992px) ---- */
@media (min-width: 992px) { 
  .sv-cta { 
    padding: 1.25rem 1.5rem; 
  }
  
  .sv-cta .cta-actions { 
    text-align: right;
    margin-top: 0;
  }
  
  .sv-cta .cta-actions .btn {
    width: auto;
    min-width: 160px;
  }
}

/* ---- Typography Scale ---- */
.sv-cta h3,
.sv-cta .cta-headline {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-bottom: 0.5rem;
}

@media (min-width: 992px) {
  .sv-cta h3,
  .sv-cta .cta-headline { 
    font-size: 1.375rem; 
  }
}

/* ---- Bullets List ---- */
.sv-cta ul {
  padding-left: 0;
  list-style: none;
  margin-bottom: 0;
}

.sv-cta ul li {
  display: flex;
  align-items: start;
  margin-bottom: 0.5rem;
}

.sv-cta ul li i,
.sv-cta ul li .icon {
  margin-right: 0.5rem;
  margin-top: 0.15rem;
  flex-shrink: 0;
}

/* ---- Shadow & Border (Card Style) ---- */
.sv-cta.card {
  border: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

/* ---- Legal Text ---- */
.sv-cta .legal-text,
.sv-cta small.text-muted {
  font-size: 0.8125rem;
  line-height: 1.45;
  margin-top: 0.5rem;
}

/* ---- Prevent Horizontal Scroll ---- */
.sv-cta * {
  max-width: 100%;
  box-sizing: border-box;
}

/* ---- Debug: Check for Layout Shift ---- */
/* Uncomment to visualize CTA boundaries during development */
/*
.sv-cta {
  outline: 2px dashed red !important;
  outline-offset: -2px;
}
.sv-cta .row > * {
  outline: 1px solid blue !important;
}
*/
