/* CTA buttons — solid red, one line, no icon stretch issues */

.cta-soft,
a.cta-soft,
button.cta-soft {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  min-height: 3.25rem !important;
  padding: 1rem 2rem !important;
  background: #E31837 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 9999px !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  line-height: 1.2 !important;
  box-shadow: 0 0 0 0 rgba(227, 24, 55, 0.45);
  animation: cta-pulse 2.4s ease-in-out infinite;
  transition: background 0.25s ease, transform 0.2s ease, box-shadow 0.25s ease !important;
}

.cta-soft:hover,
a.cta-soft:hover,
button.cta-soft:hover {
  background: #C41230 !important;
  color: #fff !important;
  animation: none;
  box-shadow: 0 8px 28px rgba(227, 24, 55, 0.45);
  transform: translateY(-1px);
}

.cta-soft:active {
  transform: translateY(1px);
  box-shadow: none;
}

/* Formats: fit text, taller buttons */
#formats .cta-soft {
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 3.25rem !important;
  padding: 1rem 1.75rem !important;
  font-size: 1.05rem !important;
  white-space: nowrap !important;
}

#formats .format-card .mt-auto {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#nav-order-btn.cta-soft {
  min-height: 2.75rem !important;
  padding: 0.7rem 1.4rem !important;
  font-size: 0.9rem !important;
  background: #E31837 !important;
  border: none !important;
  white-space: nowrap !important;
}
#nav-order-btn.cta-soft:hover {
  background: #C41230 !important;
}

#formats .format-card {
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  box-shadow: 0 0 0 1px rgba(227, 24, 55, 0.12);
}
#formats .format-card:hover {
  border-color: rgba(227, 24, 55, 0.55) !important;
  box-shadow: 0 0 0 1px rgba(227, 24, 55, 0.25), 0 12px 40px rgba(0, 0, 0, 0.35);
}

#nav-menu .nav-menu-link[href="#contact"] {
  background: #E31837 !important;
  border: none !important;
  color: #fff !important;
  white-space: nowrap !important;
  min-height: 3.25rem !important;
  padding: 1rem 1.5rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  animation: cta-pulse 2.4s ease-in-out infinite;
}
#nav-menu .nav-menu-link[href="#contact"]:hover {
  background: #C41230 !important;
  animation: none;
}

@keyframes cta-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(227, 24, 55, 0.5); }
  50% { box-shadow: 0 0 0 12px rgba(227, 24, 55, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .cta-soft,
  a.cta-soft,
  button.cta-soft,
  #nav-menu .nav-menu-link[href="#contact"] {
    animation: none !important;
  }
}

/* Shipping / payment note under formats — centered & high contrast */
.formats-shipping-note {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  clear: both !important;
  margin-top: 2.5rem !important;
  padding: 0 1rem !important;
  box-sizing: border-box !important;
  grid-column: 1 / -1 !important; /* if still in grid, span full width */
}
.formats-shipping-note__text {
  display: inline-block !important;
  text-align: center !important;
  color: #ffffff !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  padding: 0.9rem 1.75rem !important;
  border-radius: 9999px !important;
  background: rgba(227, 24, 55, 0.22) !important;
  border: 1.5px solid #FFB800 !important;
  box-shadow: 0 0 20px rgba(227, 24, 55, 0.25) !important;
}
