/* Quanta — correctifs responsive globaux */

/* Nav : contraste stable sur pages à héros sombre */
.page-home #site-header.nav-fixed .navbar .nav-link,
.page-home #site-header.hero-scrolled .navbar .nav-link,
.page-about #site-header.nav-fixed .navbar .nav-link,
.page-about #site-header.hero-scrolled .navbar .nav-link,
.page-contact #site-header.nav-fixed .navbar .nav-link,
.page-contact #site-header.hero-scrolled .navbar .nav-link {
  color: rgba(255, 255, 255, 0.92) !important;
}

.page-home #site-header.nav-fixed .navbar .nav-item.active .nav-link,
.page-home #site-header.hero-scrolled .navbar .nav-item.active .nav-link,
.page-about #site-header.nav-fixed .navbar .nav-item.active .nav-link,
.page-about #site-header.hero-scrolled .navbar .nav-item.active .nav-link,
.page-contact #site-header.nav-fixed .navbar .nav-item.active .nav-link,
.page-contact #site-header.hero-scrolled .navbar .nav-item.active .nav-link {
  color: #fff !important;
}

.page-home .navbar-toggler,
.page-about .navbar-toggler,
.page-contact .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.45) !important;
  color: #fff !important;
}

.page-home .navbar-toggler-icon,
.page-about .navbar-toggler-icon,
.page-contact .navbar-toggler-icon {
  color: #fff !important;
}

.page-home .navbar-toggler .fa,
.page-about .navbar-toggler .fa,
.page-contact .navbar-toggler .fa {
  color: #fff !important;
}

/* Menu mobile : fond lisible */
@media (max-width: 991.98px) {
  .page-home .navbar-collapse,
  .page-about .navbar-collapse,
  .page-contact .navbar-collapse {
    background: rgba(12, 27, 42, 0.96);
    margin-top: 0.75rem;
    padding: 0.75rem 1rem 1rem;
    border-radius: 12px;
  }

  .page-home .navbar-nav .nav-link,
  .page-about .navbar-nav .nav-link,
  .page-contact .navbar-nav .nav-link {
    padding: 0.75rem 0.35rem !important;
  }
}

/* CTA pleine largeur sur petit écran */
@media (max-width: 575.98px) {
  .q-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }

  .q-hero__actions .q-btn,
  .q-banner__cta,
  .c-btn,
  .a-btn {
    width: 100%;
    justify-content: center;
  }

  .q-hero__content,
  .a-hero__content,
  .c-hero__content {
    padding-top: 6.5rem;
    padding-bottom: 3rem;
  }

  .q-hero__brand,
  .a-hero__brand,
  .c-hero__brand {
    font-size: clamp(2.6rem, 14vw, 3.5rem);
  }

  .q-footer__logo img {
    height: 52px;
  }

  .q-footer__top {
    right: 0.85rem;
    bottom: 0.85rem;
  }
}

/* Images fluides */
img {
  max-width: 100%;
  height: auto;
}

.q-split__media img,
.a-split__media img,
.q-banner__img,
.a-banner__media img,
.c-hero__media img,
.a-hero__media img {
  max-width: none; /* object-fit cover containers */
}
