/* RapidWave static site responsive overrides */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  overflow-x: hidden;
}

.page-wrapper {
  width: 100%;
  overflow-x: hidden;
}

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

.w-layout-grid {
  width: 100%;
}

/* Static export: keep scroll-animated blocks visible */
.fade-in-move-on-scroll,
.fade-in-slace-on-scroll,
.fade-in-blur-on-scroll {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

/* Navbar */
.nav-menu-container {
  gap: 12px;
}

.nav-cart-holder .button.w-button {
  white-space: nowrap;
}

.menu-button {
  display: none !important;
}

/* Contact form layout */
.contact-form-holder {
  width: 100%;
}

@media screen and (min-width: 992px) {
  .contact-form-holder {
    justify-content: flex-end;
    align-items: flex-start;
  }

  .contact-form-wrap,
  .contact-form {
    width: 100%;
    max-width: 500px;
  }
}

@media screen and (max-width: 991px) {
  .contact-form-holder {
    justify-content: center;
    align-items: stretch;
    margin-top: 2rem;
  }

  .contact-form-wrap,
  .contact-form {
    width: 100%;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }

  .container.contact {
    padding-bottom: 6rem !important;
  }

  .blue-arrow-image.contact,
  .blue-feedback-text.contact {
    display: none;
  }

  .feedback-person-holder {
    width: 100%;
    max-width: 100%;
    height: auto;
    min-height: 220px;
    margin-top: 2rem;
    margin-bottom: 2rem;
    transform: none;
  }

  .hero-contact-text {
    font-size: clamp(28px, 6vw, 42px);
    line-height: 1.2;
  }
}

@media screen and (max-width: 767px) {
  .container {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .grid-4-col,
  .grid-3-col,
  .grid-3-col-box,
  .grid-2-col,
  .grid-5-col,
  .grid-8-col,
  .features-on-dark-mode,
  .logo-grid {
    grid-template-columns: 1fr !important;
  }

  .grid-6-col {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .grid-2-col.space-between {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .client-logo-holder {
    justify-self: center;
  }

  .hero-paragraph-holder,
  .hero-button-holder {
    width: 100%;
  }

  .footer-content {
    grid-template-columns: 1fr !important;
    gap: 2rem;
  }

  .footer-description {
    width: 100% !important;
  }

  .book-meeting-holder {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  .made-by-section {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }

  .cta-content-holder {
    flex-direction: column;
    gap: 2rem;
  }

  .cta-content,
  .cta-screen-holder {
    width: 100%;
  }

  .white-cta-heading {
    font-size: clamp(24px, 6vw, 36px);
  }

  .hero-home-text {
    font-size: clamp(28px, 7vw, 50px) !important;
    line-height: 1.15;
  }

  .hero-text {
    font-size: clamp(32px, 8vw, 56px);
  }

  .box-holder {
    width: 100% !important;
    height: auto;
    min-height: 320px;
  }

  .rich-text.privacy strong {
    font-size: clamp(1.35rem, 5vw, 2rem) !important;
  }

  .rich-text.privacy p {
    font-size: 16px !important;
  }

  /* About page team grid */
  .team-holder {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    min-height: auto;
    top: 0;
    padding: 1rem 0 2rem;
  }

  .first-person-image,
  .first-person-image._2,
  .first-person-image._3,
  .first-person-image._4,
  .first-person-image._5,
  .first-person-image._6 {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: 100% !important;
    max-width: 170px;
    height: 220px;
    margin: 0 auto;
    overflow: hidden;
  }

  .person-image,
  .person-image._1,
  .person-image._2,
  .person-image._3 {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .name-of-team-member,
  .name-of-team-member._2,
  .name-of-team-member._3,
  .name-of-team-member._4,
  .name-of-team-member._5 {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: auto;
    min-width: 100px;
    margin: -28px auto 0;
    z-index: 2;
  }

  .top-margin-m {
    margin-top: 2rem;
  }
}

@media screen and (max-width: 479px) {
  .navbar {
    padding: 1.25rem 1rem 1rem;
  }

  .brand-logo {
    max-width: 130px;
  }

  .nav-cart-holder .button.w-button {
    padding: 10px 14px;
    font-size: 13px;
  }

  .contact-form-grid {
    padding: 20px;
  }

  .contact-form-content .field-label {
    font-size: 16px;
  }

  .team-holder {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .first-person-image,
  .first-person-image._2,
  .first-person-image._3,
  .first-person-image._4,
  .first-person-image._5,
  .first-person-image._6 {
    max-width: 220px;
    height: 260px;
  }

  .grid-6-col {
    grid-template-columns: 1fr !important;
  }

  .hero-section,
  .hero-section-secondary {
    min-height: auto;
  }

  .section.privacy-content {
    padding-bottom: 4rem !important;
  }
}
