html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: hidden;
  overflow-wrap: break-word;
}

img,
video,
iframe {
  max-width: 100%;
}

.quote-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.quote-form-status {
  min-height: 1.5em;
  margin-top: 0.75rem;
  font-size: 0.9rem;
  line-height: 1.45;
}

.quote-form-status--pending {
  color: #494d59;
}

.quote-form-status--success {
  color: #176b35;
}

.quote-form-status--error {
  color: #a3131a;
}

.archive-quote-form button:disabled,
.archive-quote-form input[type="submit"]:disabled {
  cursor: wait;
  opacity: 0.72;
}

.gb-container-442aa6ca {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #111;
}

.homepage-hero-image {
  position: absolute;
  z-index: 0;
  inset: 0;
  margin: 0;
  pointer-events: none;
}

.homepage-hero-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  opacity: .5;
}

.gb-container-442aa6ca::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  content: "";
  pointer-events: none;
  background: linear-gradient(90deg, rgb(0 0 0 / 76%) 0%, rgb(0 0 0 / 52%) 52%, rgb(0 0 0 / 32%) 100%);
}

.gb-container-442aa6ca > :not(.homepage-hero-image) {
  position: relative;
  z-index: 2;
}

.archive-unavailable {
  min-height: 100vh;
  background: #151515;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.archive-unavailable__main {
  width: min(680px, calc(100% - 40px));
  margin: 0 auto;
  padding: 12vh 0;
}

.archive-unavailable__main a {
  color: #f7ce1f;
}

.archive-unavailable__main h1 {
  color: #fff;
  font-size: clamp(2rem, 6vw, 4rem);
  line-height: 1.05;
}

.archive-unavailable__main code {
  color: #f7ce1f;
}

@media (max-width: 768px) {
  .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none;
  }

  .wp-block-navigation__responsive-container.is-menu-open {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex !important;
    overflow-y: auto;
    visibility: visible !important;
    opacity: 1 !important;
    background: #313131 !important;
    color: #fff !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    display: flex !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
    display: block !important;
    color: #fff;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu {
    width: 100%;
    flex-wrap: wrap;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation-item__content {
    flex: 1 1 auto;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    color: inherit;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > .wp-block-navigation__submenu-container {
    display: none !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu.is-open > .wp-block-navigation__submenu-container {
    display: flex !important;
    height: auto !important;
    min-width: 100% !important;
    opacity: 1 !important;
    overflow: visible !important;
    visibility: visible !important;
    width: 100% !important;
  }

  .gb-container-442aa6ca .homepage-hero-image img {
    object-position: 62% 38%;
  }

  .gb-container-442aa6ca::after {
    background: linear-gradient(180deg, rgb(0 0 0 / 68%) 0%, rgb(0 0 0 / 54%) 48%, rgb(0 0 0 / 66%) 100%);
  }
}

html.has-modal-open,
html.has-modal-open body {
  overflow: hidden;
}
