@charset "UTF-8";

/* ==========================================
   GLOBAL TYPE SETTINGS
========================================== */
h1, h2, h3, h4, h5 {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  letter-spacing: -0.5px;
  line-height: 1.2;
}

/* ==========================================
   MOBILE (≤575px)
========================================== */
@media (max-width: 575px) {
  h1 { font-size: 36px; }
  h2 { font-size: 30px; }
  h3 { font-size: 24px; }
  h4 { font-size: 20px; }
  h5 { font-size: 17px; }

  .p-footer-left,
  .p-footer-right,
  .p-footer-contactinfo {
    text-align: center;
  }

  .p-bodytype-alert {
    font-size: 14px;
    line-height: 1.8;
  }
  .p-bodytype-white-lg { font-size: 17px; }

  .band-top-spacer {
    margin-top: 250px;
    min-height: 1px;
  }

  .band-homeenviro,
  .band-ssdupgrade {
    background-color: #f6f6f6;
    padding: 100px 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
  }
  .band-homeenviro { background-image: url("../images/mainstream-home-mq.jpg"); }
  .band-ssdupgrade { background-image: url("../images/mainstream-ssd-mq.jpg"); }

  .navbar .nav-link { font-size: 14px; }

  .band-bodystandard-pagewhite-column {
    padding: 40px 15px;
    border-left: 0;
    min-height: 100px;
  }

  .band-bodystandard-white-hp-top {
    padding: 90px 0;
  }
}

/* ==========================================
   SMALL TABLET (576px–767px)
========================================== */
@media (min-width: 576px) and (max-width: 767px) {
  h1 { font-size: 42px; }
  h2 { font-size: 34px; }
  h3 { font-size: 27px; }
  h4 { font-size: 22px; }
  h5 { font-size: 18px; }

  .p-footer-left,
  .p-footer-right,
  .p-footer-contactinfo {
    text-align: center;
  }

  .p-bodytype-alert {
    font-size: 14px;
    line-height: 1.8;
  }
  .p-bodytype-white-lg { font-size: 17px; }

  .band-bodystandard-pagewhite-column {
    padding: 40px 15px;
    border-left: 0;
    min-height: 100px;
  }

  .band-top-spacer {
    margin-top: 200px;
    min-height: 1px;
  }

  .band-homeenviro,
  .band-ssdupgrade {
    background-color: #f6f6f6;
    padding: 90px 0;
    background-size: cover;
    background-repeat: no-repeat;
  }

  .band-homeenviro {
    background-image: url("../images/mainstream-home-mq.jpg");
    background-position: top right;
  }

  .band-ssdupgrade {
    background-image: url("../images/mainstream-ssd-mq.jpg");
    background-position: center;
  }
}

/* ==========================================
   TABLET (768px–991px)
========================================== */
@media (min-width: 768px) and (max-width: 991px) {
  h1 { font-size: 50px; }
  h2 { font-size: 40px; }
  h3 { font-size: 32px; }
  h4 { font-size: 24px; }
  h5 { font-size: 18px; }

  .p-footer-left,
  .p-footer-right,
  .p-footer-contactinfo {
    text-align: center;
  }

  .p-bodytype-alert {
    font-size: 15px;
    line-height: 1.9;
  }

  .band-bodystandard-pagewhite-column {
    padding: 40px 15px;
    border-left: 0;
    min-height: 100px;
  }

  .band-bodystandard-white-hp-top {
    padding: 90px 0;
  }

  .band-top-spacer {
    margin-top: 150px;
    min-height: 1px;
  }
}

/* ==========================================
   DESKTOP (992px–1200px)
========================================== */
@media (min-width: 992px) and (max-width: 1200px) {
  h1 { font-size: 64px; }
  h2 { font-size: 48px; }
  h3 { font-size: 36px; }
  h4 { font-size: 28px; }
  h5 { font-size: 22px; }
}

/* ==========================================
   LARGE DESKTOP (≥1201px)
========================================== */
@media (min-width: 1201px) {
  h1 { font-size: 72px; }
  h2 { font-size: 56px; }
  h3 { font-size: 42px; }
  h4 { font-size: 32px; }
  h5 { font-size: 24px; }
}