/**
 * kp_megamenu 1.8.0 — compléments aux composants du design system
 * (.kp-nav, .kp-mega, .kp-drawer : themes/kitpro/assets/css/kp-components.css,
 * bundle v7). Les composants portent toute la mise en forme ; ce fichier ne
 * pose que ce que le thème doit y ajouter : superposition du méga-menu sous la
 * barre, chevron du bouton catalogue, titres en <p> (aucun Hn dans la nav),
 * voile du tiroir. Valeurs uniquement en var(--kp-*).
 */

/* ─── Barre et méga-menu (desktop, >= 992 px) ───────────────── */
.kp-nav { position: relative; }

/* Le bouton catalogue montre un chevron bas au repos, haut quand le menu est ouvert. */
.kp-nav__cat .kp-nav__chev--up { display: none; }
.kp-nav__cat[aria-expanded="true"] .kp-nav__chev--up { display: block; }
.kp-nav__cat[aria-expanded="true"] .kp-nav__chev--down { display: none; }

/* Le méga-menu recouvre la page sous la barre, sur la largeur du conteneur. */
.kp-megapos {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: var(--kp-z-menu);
  padding: 0 var(--kp-space-6);
  pointer-events: none;
}
.kp-megapos .kp-mega {
  max-width: calc(var(--kp-container) - 2 * var(--kp-space-6));
  max-height: calc(100vh - 170px);
  margin: 0 auto;
  overflow-y: auto;
  pointer-events: auto;
}

/* Titre de l'encart devis : <p>, pas <h3> (aucun Hn dans la navigation). */
.kp-mega__quote .kp-mega__quote-title { margin: 0; font-size: 15px; line-height: 20px; font-weight: 700; color: var(--kp-white); }
.kp-mega__all { flex: none; white-space: nowrap; }
.kp-mega__empty { margin: 0; font-size: 14px; color: var(--kp-ink-60); }

/* ─── Tiroir (< 992 px) ─────────────────────────────────────── */
.kp-mobile-overlay {
  position: fixed;
  inset: 0;
  z-index: calc(var(--kp-z-modal) - 1);
  background: var(--kp-ink);
  opacity: .5;
}
.kp-drawer__foot { position: sticky; bottom: 0; }
.kp-drawer__row .kp-i:last-child { transition: transform .15s var(--kp-ease); }
.kp-drawer__row[aria-expanded="true"] .kp-i:last-child { transform: rotate(180deg); }
.kp-drawer__link .kp-i { flex: none; }
.kp-drawer__link[aria-current="page"] { box-shadow: inset 3px 0 0 var(--kp-blue); }

@media (min-width: 992px) {
  .kp-drawer.kp-drawer--fixed,
  .kp-mobile-overlay { display: none; }
}
@media (max-width: 991.98px) {
  .kp-megapos { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .kp-drawer__row .kp-i:last-child { transition: none; }
}
