/* Mobile spacing & formatting refinements */
@media (max-width: 767px) {
  body { font-size: 16px; line-height: 1.55; -webkit-text-size-adjust: 100%; }

  h1, h2, h3 { word-wrap: break-word; overflow-wrap: break-word; hyphens: auto; }
  h1 { font-size: 26px !important; line-height: 1.2 !important; margin-bottom: 14px !important; }
  h2 { font-size: 22px !important; line-height: 1.25 !important; margin-bottom: 12px !important; }
  h3 { font-size: 18px !important; line-height: 1.3 !important; }

  p { margin-bottom: 14px; }

  .container, .container-fluid { padding-left: 18px !important; padding-right: 18px !important; }

  section, .section, .row { padding-top: 28px !important; padding-bottom: 28px !important; }

  img { max-width: 100%; height: auto; }

  /* Top discount bar */
  .top-content { font-size: 13px !important; line-height: 1.3 !important; padding: 10px 12px !important; text-align: center; }

  /* CTA buttons – make them tap-friendly */
  a.btn, button.btn, .sticky-buy-bar__button, .order-now, .buy-now, [class*="cta"] {
    display: block !important;
    width: 100% !important;
    max-width: 360px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 16px 18px !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    border-radius: 10px !important;
    white-space: normal !important;
  }
  a.btn span, button.btn span { display: block; font-size: 12px; margin-top: 4px; opacity: .9; }

  /* Sticky buy bar bottom */
  .sticky-buy-bar { padding: 10px 12px !important; }
  .sticky-buy-bar__button { font-size: 15px !important; padding: 12px 14px !important; }

  /* Price emphasis */
  .green-text { font-weight: 800; }
  del { opacity: .65; margin-right: 6px; }

  /* Testimonials & cards */
  .testimonial, .testimonial-box, .review, .card, .bonus-box {
    padding: 18px !important;
    margin-bottom: 18px !important;
    border-radius: 12px;
  }

  /* Lists */
  ul, ol { padding-left: 22px; }
  li { margin-bottom: 8px; }

  /* Video holder */
  .video-holder, .embedContainer { margin: 18px 0 !important; }

  /* FAQ */
  .faq, .faq-item, .accordion-item { padding: 14px 16px !important; margin-bottom: 12px !important; }

  /* Footer */
  footer { padding: 24px 16px !important; font-size: 13px; line-height: 1.5; }

  /* Avoid horizontal overflow */
  html, body { overflow-x: hidden; }
}

/* Small tightening on tablets */
@media (min-width: 768px) and (max-width: 991px) {
  .container { padding-left: 24px; padding-right: 24px; }
  section, .section { padding-top: 40px; padding-bottom: 40px; }
}

/* Center main CTA button text + subtle pulse */
.main-btn {
  padding-top: 22px !important;
  padding-bottom: 22px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  animation: ctaPulse 1.8s ease-in-out infinite;
}
.main-btn span {
  margin-top: 0 !important;
  display: inline-block !important;
  font-size: 28px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}
@media (max-width: 767px) {
  .main-btn span { font-size: 18px !important; }
  .main-btn { padding-top: 16px !important; padding-bottom: 16px !important; }
}
@keyframes ctaPulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.035); }
}
.main-btn:hover { animation-play-state: paused; }
