/* Mobile optimization overrides for rebuilt static landing page.
   Keeps desktop design intact and only applies on tablet/phone widths. */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

img,
picture,
svg,
video,
canvas,
iframe {
  max-width: 100%;
  height: auto;
}

a,
button,
input,
select,
textarea {
  max-width: 100%;
}

@media (max-width: 767px) {
  html {
    -webkit-text-size-adjust: 100%;
  }

  body {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .main-page,
  .page-section,
  [class*="main-page"],
  [class*="page-section"],
  [class*="cvt-"][class*="-box"],
  [class*="sticky-container"],
  [class*="layer-container"],
  [class*="element-body"] {
    max-width: 100% !important;
  }

  [class*="cvt-"][class*="-box"] {
    left: auto !important;
    right: auto !important;
  }

  .cvt-1568371626-image-element,
  img[class*="image-element"] {
    display: block;
    max-width: 100% !important;
    object-fit: contain;
  }

  p,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  li,
  span,
  div {
    overflow-wrap: anywhere;
    word-break: normal;
  }

  a[href*="click"],
  a[href*="order"],
  a[href*="checkout"],
  a[href*="buy"] {
    touch-action: manipulation;
  }

  .fr-view table,
  table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }

  /* Convertri/ripped-page elements often use desktop fixed widths.
     These rules prevent horizontal overflow without deleting the original design. */
  [style*="width: 980px"],
  [style*="width:980px"],
  [style*="width: 1000px"],
  [style*="width:1000px"],
  [style*="width: 1260px"],
  [style*="width:1260px"] {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 480px) {
  body {
    font-size: 16px;
  }

  .main-page {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  p,
  li {
    line-height: 1.45;
  }
}
