@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("/webflow/montserrat-latin.woff2") format("woff2");
}

img {
  height: auto;
}

/* Captured slider offsets belong to a different viewport. Until deferred
   Webflow initializes, keep the visible hero slide filling its container. */
html[data-wf-page="663ee7e5ddc7bc614771f719"]:not(.gtr-site-ready) .new-hero-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transform: none !important;
}

/* The hero is already visible in the captured HTML. Deferred Webflow startup
   must not reset it to an invisible entrance state after the first scroll.
   Scope this to homepage entrance layers; keep nav and lower-page animations. */
html[data-wf-page="663ee7e5ddc7bc614771f719"] :is(
  .new-hero-section,
  .new-hero-title-wrap,
  .new-hero-para-wrap,
  .new-hero-info-wrapper,
  .new-hero-arrow-wrap
) {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

.w-nav-overlay {
  display: none !important;
  pointer-events: none !important;
}

.nav-cover-2 {
  pointer-events: none;
}

.nav-cover-2 a,
.nav-cover-2 button,
.nav-cover-2 .w-nav-button {
  pointer-events: auto;
}

@media (max-width: 991px) {
  .nav-cover {
    background: rgba(17, 17, 17, 0.92);
  }

  .nav-cover-2 {
    display: none !important;
  }

  .header-nav-menu-wrapper-2.gtr-nav-open {
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    padding: 1rem 1.5rem 1.5rem !important;
    background: #f5f5f5 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .header-nav-menu-wrapper-2.gtr-nav-open .header-nav-menu-list {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .header-nav-menu-wrapper-2.gtr-nav-open .new-nav-link {
    display: block !important;
    color: #111 !important;
  }
}

.team-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.team-card {
  justify-content: flex-start;
}

.team-card .avatar-circle {
  flex: 0 0 160px;
  width: 160px;
  height: 160px;
}

.team-card .team-card-info-wrapper {
  width: 100%;
}

.team-card .team-avatar-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.team-card .team-avatar-img[src*="brent-werry"] {
  transform: translateY(16px) scale(1.42);
  object-position: center 33%;
}

.team-card .team-avatar-img[src*="aaron-stevens"] {
  transform: scale(1.18);
  object-position: center 42%;
}

.home-call_avatar {
  width: 7.5rem;
  height: 7.5rem;
  padding: 0.45rem;
}

@media (max-width: 767px) {
  .team-grid {
    grid-template-columns: 1fr;
  }

  .home-call_avatar {
    width: 5.5rem;
    height: 5.5rem;
  }
}

.gtr-qk-inline {
  width: 100%;
}

.gtr-form-privacy {
  margin: 14px 0 0;
  color: #5f6368;
  font-size: 12px;
  line-height: 1.6;
  text-align: center;
}

.gtr-form-privacy a {
  color: #0f6ba3;
  font-weight: 700;
}

.gtr-qk-inline iframe {
  display: block;
  width: 100%;
  min-height: 900px;
  border: 0;
  background: transparent;
}

.gtr-qk-fallback {
  margin: 14px 0 0;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
}

.gtr-qk-fallback a {
  color: #1384c7;
  font-weight: 700;
}

@media (max-width: 767px) {
  .contact-form-section .contact-form-wrapper {
    width: 100%;
  }

  .gtr-qk-inline iframe {
    min-height: 1050px;
  }
}