#alternativesModal{
  position:fixed;inset:0;
  display:none;align-items:center;justify-content:center;
  background:rgba(0,0,0,.65);
  z-index:9999;font-family:system-ui,Arial,sans-serif;
}
#alternativesModal.open{display:flex}

/* —— inner card —— */
#alternativesModal .box {
  position: relative;

  /* flex centering */
  display: flex;
  flex-direction: column;
  justify-content: center;

  /* at all sizes: try to fill the viewport minus 20px margin on each side */
  width: calc(100% - 40px);
  height: calc(100% - 40px);

  /* but never exceed our desktop dimensions */
  max-width: 500px;
  max-height: 625px;

  background: #0A1C2D;
  color: #fff;

  /* padding stays the same */
  /* padding: 72px 28px 64px; */
  padding: 56px 28px 80px;
  border-radius: 12px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .4);

  text-align: center;
  overflow: hidden;

  /* ensure we never shrink below something usable */
  min-height: 500px;
}



/* orange rails */
#alternativesModal .box::before,
#alternativesModal .box::after{
  content:'';position:absolute;left:0;width:100%;height:30px;
  background:#FF5A00;
}
#alternativesModal .box::before{top:0;border-radius:12px 12px 0 0}
#alternativesModal .box::after{bottom:0;border-radius:0 0 12px 12px}

/* close icon */
#alternativesModal .close{
  position:absolute;top:35px;right:24px;
  font-size:34px;line-height:1;color:#fff;
  border:none;background:none;cursor:pointer;
}

/* headline copy */
#alternativesModal p{
  margin:0 0 20px;
  font:700 34px/1.35 system-ui,Arial,sans-serif;
  color:#FAD32B;
}

/* Smaller on mobile */
@media(max-width:640px){
  #alternativesModal p {
    font-size: 30px;
  }
}

#alternativesModal p strong{color:#fff}

/* buttons */
#alternativesModal .box a{
  display:block;width:100%;
  margin:18px auto 20px auto;padding:20px 22px;
  border-radius:60px;font:700 18px/1.1 system-ui,Arial,sans-serif;
  text-decoration:none;transition:background .25s ease,opacity .25s ease;
  max-width: 400px;
}

/* Smaller on mobile */
@media(max-width:640px){
  #alternativesModal .box a {
    padding:15px 22px;
    font-size: 16px;
  }
}

/* primary CTA */
#alternativesModal .alternatives-alt{
  background:#FF5A00;color:#fff;border:none;
}
@media(hover:hover){
  #alternativesModal .alternatives-alt:hover{opacity:.9}
}

#alternativesModal .alternatives-alt:hover{
  background-color: #ffffff;
  color: #FF5A00;
}




/* secondary CTA */
#alternativesModal .alternatives-yes{
  background:transparent;border:3px solid #fff;color:#fff;
}
@media(hover:hover){
  #alternativesModal .alternatives-yes:hover{background:#fff;color:#0A1C2D}
}

/* desktop width cap still applies */
@media(min-width:640px){
  #alternativesModal .box{width:auto}
}














/* center the wrapper */
#alternativesModal .popup-promo-code {
  text-align: center;
}

/* wrapper for label + box */
#alternativesModal .popup-promo-wrapper {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 1em auto;
}

/* label */
#alternativesModal .popup-promo-label {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
}

/* dashed box around code */
#alternativesModal .popup-promo-wrapper .text-container {
  display: inline-flex;
  align-items: center;
  padding: 8px 12px;
  border: 2px dashed #fff;
  border-radius: 4px;
  box-sizing: border-box;
}

/* code text */
#alternativesModal .popup-promo-wrapper .promo-code {
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  margin-right: 4px;
}

/* copy icon */
#alternativesModal .popup-promo-wrapper svg {
  width: 24px;
  height: 16px;
  fill: #fff;
}

.popup-promo-code {
    margin-top: -15px;
    margin-bottom: 5px;
}

/* force both CTAs in the popup to uppercase */
#alternativesModal .alternatives-alt,
#alternativesModal .alternatives-yes {
  text-transform: uppercase;
}

/* Smaller text on mobile, and tweaked gap between code and buttons */

@media(max-width:640px){
   	#alternativesModal .popup-promo-label, #alternativesModal .popup-promo-wrapper .promo-code {
		font-size: 16px
	}
	.popup-promo-code {
    		margin-top: -8px;
    		margin-bottom: 18px;
	}
}


/* No promo code CSS on a class injected by JS*/

/* default .box has your usual padding/margins */
#alternativesModal .box { /* … */ }

/* only when no promo shown */
#alternativesModal .box.no-promo {
  padding: 20px 28px 64px !important;
}
#alternativesModal .box.no-promo p.popup-text {
  margin: 0 0 40px !important;
}
#alternativesModal .box.no-promo a {
  margin: 20px auto !important;
}
