/* Homepage-only responsive corrections. Does not affect desktop or other pages. */
@media (max-width: 1200px) {
  body.skystars-home header,
  body.skystars-home header.sticky,
  body.skystars-home.black-version header.sticky {
    position: fixed; top: 0; left: 0; right: 0;
    width: 100%; padding: 10px 0; height: 78px;
    background: #000; box-shadow: none; z-index: 10001;
  }
  body.skystars-home header .header-content {
    display: flex; position: relative; align-items: center;
    justify-content: center; flex-wrap: nowrap;
    height: 58px; min-width: 0;
  }
  body.skystars-home header .logo {
    position: static; flex: none; width: 120px; max-width: 120px;
    margin: 0; padding: 0; text-align: center;
  }
  body.skystars-home header .logo .white-logo,
  body.skystars-home header.sticky .logo .white-logo {display: block;}
  body.skystars-home header .logo img {
    display: block; width: 120px; max-width: 100%; height: auto;
  }
  body.skystars-home header .menu-btn,
  body.skystars-home header.sticky .menu-btn {
    display: block; position: absolute; right: 0; top: 50%;
    transform: translateY(-50%); width: 26px; margin: 0;
    z-index: 2; padding: 8px 0;
  }
  body.skystars-home header .menu-btn span,
  body.skystars-home header.sticky .menu-btn span {background-color: #fff; height: 2px;}
  body.skystars-home .responsive-mobile-menu {
    position: fixed; top: 78px; left: 0; right: 0;
    width: 100%; height: calc(100dvh - 78px);
    max-height: calc(100vh - 78px); padding: 12px 20px 30px;
    background: #e33222; z-index: 10000;
    opacity: 0; visibility: hidden; pointer-events: none;
    transform: translateX(-105%); overflow-x: hidden; overflow-y: auto;
    box-sizing: border-box; transition: transform .25s ease, opacity .25s ease, visibility .25s;
  }
  body.skystars-home .responsive-mobile-menu.active {
    left: 0; transform: translateX(0); opacity: 1;
    visibility: visible; pointer-events: auto;
  }
  body.skystars-home .responsive-mobile-menu ul,
  body.skystars-home .responsive-mobile-menu li {
    float: none; width: 100%; max-width: 100%; padding: 0; margin: 0;
  }
  body.skystars-home .responsive-mobile-menu li a {
    display: block; float: none; width: 100%; box-sizing: border-box;
    padding: 16px 10px; font-size: 17px; line-height: 1.4;
    white-space: normal; overflow-wrap: anywhere;
  }
  body.skystars-home.menu-open {overflow: hidden;}
  body.skystars-home .wrapper {max-width: 100%;}
  body.skystars-home img, body.skystars-home video {max-width: 100%;}
}
@media (max-width: 600px) {
  body.skystars-home header,
  body.skystars-home header.sticky,
  body.skystars-home.black-version header.sticky {height: 70px; padding: 8px 0;}
  body.skystars-home header .header-content {height: 54px;}
  body.skystars-home header .logo {width: 110px; max-width: 110px;}
  body.skystars-home header .logo img {width: 110px;}
  body.skystars-home .responsive-mobile-menu {
    top: 70px; height: calc(100dvh - 70px); max-height: calc(100vh - 70px);
  }
}

/* Homepage: address common sources of mobile horizontal overflow without changing desktop. */
@media (max-width: 1200px) {
  body.skystars-home .about-section.row { margin-left: 0; margin-right: 0; }
  body.skystars-home .about-section.row > [class*="col-"] { min-width: 0; }
  body.skystars-home .gallery-section.row,
  body.skystars-home .footer-content.row { max-width: 100%; }
  body.skystars-home .rev_slider_wrapper,
  body.skystars-home .rev_slider,
  body.skystars-home #slider { max-width: 100%; }
  body.skystars-home .about-text,
  body.skystars-home .subscribe-section { overflow-wrap: break-word; }
}
@media (max-width: 767px) {
  body.skystars-home .about-section.row > [class*="col-"] { padding-left: 15px; padding-right: 15px; }
  body.skystars-home .gallery-section.row,
  body.skystars-home .footer-content.row { margin-left: 0; margin-right: 0; }
  body.skystars-home .gallery-section.row > [class*="col-"],
  body.skystars-home .footer-content.row > [class*="col-"] { min-width: 0; }
}
