/**
 * Ajustements production — site vitrine Django (sans shell studio maquette).
 */
body.public-site {
  background: var(--bg);
  color: var(--ink);
}

.public-site .site-page {
  background: var(--bg);
  min-height: 100vh;
}

.public-site .reveal {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 0.7s var(--ease), transform 0.7s var(--ease);
}

.public-site .reveal.is-visible {
  opacity: 1;
  transform: none;
}

.public-site .footer button {
  display: block;
  border: 0;
  background: none;
  color: rgba(255, 255, 255, 0.62);
  text-align: left;
  padding: 0;
  margin: 0 0 9px;
  font-weight: 600;
  cursor: pointer;
  font: inherit;
}

.public-site .footer a {
  display: block;
  margin: 0 0 9px;
}

.public-site a.btn {
  text-decoration: none;
}

.public-site .cta-box__mail a {
  color: inherit;
}

@media (max-width: 900px) {
  .public-site .site-nav,
  .public-site .site-header__actions {
    display: none;
  }

  .public-site .burger {
    display: inline-flex;
  }

  .public-site .solution,
  .public-site .solution--reverse {
    grid-template-columns: 1fr;
  }

  .public-site .solution--reverse .solution__photo {
    order: 0;
  }

  .public-site .hero {
    min-height: min(72vh, 620px);
    padding: 100px 20px 48px;
  }

  .public-site .section {
    padding: 64px 20px 28px;
  }

  .public-site .site-header {
    padding: 12px 20px;
  }

  .public-site .cta-visual__content {
    padding: 36px 24px;
  }

  .public-site .hero__cta {
    flex-direction: column;
    align-items: stretch;
  }

  .public-site .hero__cta .btn {
    width: 100%;
  }
}

@media (min-width: 901px) {
  .public-site .mobile-drawer {
    display: none !important;
  }
}
