/* ART CONSTRUCTION - menu du haut v6 (mega-menu) : Site + Blog, Compte, Support.
   Cadre centre de 1100 px (comme le bas de page) ; fond et ligne du bas pleine largeur.
   Ordinateur (1024 px et plus) : jamais de menu hamburger. En dessous : un seul bouton, panneau avec groupes depliables. */
.amh { position: sticky; top: 0; z-index: 50; background: rgba(255,255,255,.97); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-bottom: 1px solid #E5E7EB; font-family: inherit; }
.amh *, .amh *::before, .amh *::after { box-sizing: border-box; }
.amh-dedans { position: relative; display: flex; align-items: center; gap: 10px; max-width: 1100px; min-height: 72px; margin: 0 auto; padding: 0 20px; }
.amh-logo { display: flex; align-items: center; flex: none; }
.amh-logo img { height: 44px; width: auto; display: block; }
.amh-nom { flex: none; padding-left: 14px; margin-left: 4px; border-left: 1px solid #D1D5DB; line-height: 1.2; font-size: 14.5px; font-weight: 500; color: #374151; text-decoration: none; white-space: nowrap; }
.amh-corps, .amh-droite { display: contents; }

/* entrees alignees a droite, juste avant les boutons */
.amh-nav { order: 1; display: flex; align-items: stretch; align-self: stretch; margin-left: auto; margin-right: 12px; gap: 2px; }
.amh-groupe { position: relative; display: flex; align-items: stretch; }
.amh-lien { display: inline-flex; align-items: center; gap: 5px; margin: 0; padding: 0 11px; border: 0; background: none; font: inherit; font-size: 14.5px; font-weight: 500; line-height: 1.2; color: #374151; text-decoration: none; white-space: nowrap; cursor: pointer; }
.amh-lien:hover, .amh-groupe.amh-ouvert > .amh-lien { color: #085292; }
.amh-lien:focus-visible, .amh-btn:focus-visible, .amh-icone:focus-visible, .amh-burger:focus-visible, .amh-item:focus-visible { outline: 3px solid #8BCBFF; outline-offset: -2px; }
.amh-chev { width: 10px; height: 10px; flex: none; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; transition: transform .15s; }
.amh-groupe.amh-ouvert > .amh-lien .amh-chev { transform: rotate(180deg); }

/* panneaux : petit sous-menu ou mega-menu (colonnes) */
.amh-panneau { display: none; position: absolute; top: 100%; left: 0; z-index: 60; min-width: 230px; padding: 8px; background: #fff; border: 1px solid #E5E7EB; border-radius: 0 0 12px 12px; box-shadow: 0 14px 30px rgba(15,30,60,.14); }
.amh-groupe.amh-ouvert > .amh-panneau { display: block; }
.amh-panneau.amh-droit { left: auto; right: 0; }
.amh-sous { display: flex; align-items: center; padding: 10px 12px; border-radius: 8px; font-size: 14.5px; font-weight: 500; color: #374151; text-decoration: none; white-space: nowrap; }
.amh-sous:hover { background: #EEF4FA; color: #085292; }
.amh-sousform { margin: 0; border-top: 1px solid #F3F4F6; padding-top: 4px; margin-top: 4px; }
.amh-sousform button { width: 100%; background: none; border: 0; font: inherit; font-size: 14.5px; font-weight: 500; text-align: left; color: #374151; padding: 10px 12px; border-radius: 8px; cursor: pointer; }
.amh-sousform button:hover { background: #EEF4FA; color: #085292; }
.amh-mega { position: static; }
.amh-mega > .amh-panneau { left: 0; right: 0; min-width: 0; padding: 22px 20px 24px; border-radius: 0 0 14px 14px; }
.amh-mega.amh-ouvert > .amh-panneau { display: grid; grid-template-columns: repeat(var(--amh-cols, 3), minmax(0, 1fr)); grid-template-rows: repeat(var(--amh-rows, 3), auto); grid-auto-flow: column; gap: 6px 22px; }
.amh-item { display: flex; flex-direction: column; gap: 3px; padding: 12px 14px; border-radius: 10px; text-decoration: none; }
.amh-item:hover { background: #EEF4FA; }
.amh-item strong { font-size: 15px; font-weight: 600; color: #12202D; }
.amh-item:hover strong { color: #085292; }
.amh-item span { font-size: 13px; line-height: 1.45; color: #6B7280; white-space: normal; }

/* droite : (Demonstration) - icones - langue - 9 points - Se connecter - S'inscrire */
.amh-droite > * { flex: none; }
.amh-demo { order: 2; }
.amh-recherche { order: 3; position: relative; }
.amh-eco { order: 4; display: flex; align-items: center; flex: none; }
.amh-connexion { order: 5; }
.amh-inscription { order: 6; }
.amh-espace { order: 5; }
.amh-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 38px; margin: 0; padding: 0 15px; border: 1px solid transparent; border-radius: 8px; font: inherit; font-size: 14.5px; font-weight: 600; line-height: 1; text-decoration: none; white-space: nowrap; cursor: pointer; }
.amh-btn-plein { background: #085292; color: #fff; }
.amh-btn-plein:hover { background: #06467E; }
.amh-btn-cadre { background: #fff; color: #085292; border-color: #085292; }
.amh-btn-cadre:hover { background: #EEF4FA; }
.amh-btn-texte { background: none; color: #374151; }
.amh-btn-texte:hover { background: #F3F4F6; color: #085292; }
.amh-espace { display: flex; align-items: center; align-self: stretch; }
.amh-espace > .amh-btn { gap: 7px; }
.amh-icone { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0; border: 0; border-radius: 8px; background: none; color: #5F6368; cursor: pointer; }
.amh-icone:hover, .amh-recherche.amh-ouvert > .amh-icone { background: #F1F3F4; color: #085292; }
.amh-icone svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.amh-formrech { display: none; position: absolute; top: calc(100% + 14px); right: 0; z-index: 60; width: 340px; gap: 8px; padding: 10px; background: #fff; border: 1px solid #E5E7EB; border-radius: 12px; box-shadow: 0 14px 30px rgba(15,30,60,.14); }
.amh-recherche.amh-ouvert > .amh-formrech { display: flex; }
.amh-formrech input { flex: 1; min-width: 0; height: 40px; padding: 0 12px; border: 1px solid #B9C6D4; border-radius: 8px; font: inherit; font-size: 15px; color: #12202D; background: #fff; }
.amh-formrech input:focus { outline: 3px solid #8BCBFF; outline-offset: 0; }
.amh-formrech .amh-btn { height: 40px; }

/* le bouton unique du telephone / de la tablette */
.amh-burger { display: none; order: 9; flex: none; align-items: center; justify-content: center; padding: 8px; border: 1px solid #D1D5DB; border-radius: 8px; background: #fff; color: #374151; cursor: pointer; line-height: 0; }
.amh-burger .amh-x { display: none; }
.amh-ouvert-menu .amh-burger .amh-x { display: block; }
.amh-ouvert-menu .amh-burger .amh-trois { display: none; }

/* on garde le bandeau lisible entre 1024 et 1180 px */
@media (min-width: 1024px) and (max-width: 1180px) {
  .amh-dedans { gap: 6px; }
  .amh-lien { padding: 0 8px; font-size: 14px; }
  .amh-nom { font-size: 14px; }
  .amh-btn { padding: 0 12px; font-size: 14px; }
  .amh-nav { margin-right: 6px; }
  .amh-logo img { height: 40px; }
}
@media (max-width: 1023px) {
  .amh-dedans { position: static; min-height: 60px; padding: 0 16px; gap: 8px; flex-wrap: nowrap; }
  .amh-logo img { height: 36px; }
  .amh-nom { padding-left: 10px; font-size: 14px; }
  .amh-burger { display: inline-flex; }
  .amh-eco { margin-left: auto; }
  .amh-corps { display: none; position: absolute; top: 100%; left: 0; right: 0; max-height: calc(100vh - 60px); max-height: calc(100dvh - 60px); overflow-y: auto; padding: 8px 16px 18px; background: #fff; border-bottom: 1px solid #E5E7EB; box-shadow: 0 14px 30px rgba(15,30,60,.14); }
  .amh-ouvert-menu .amh-corps { display: block; }
  .amh-droite { display: flex; flex-direction: column; gap: 10px; padding-top: 14px; }
  .amh-nav { display: block; margin: 0; }
  .amh-groupe { display: block; border-bottom: 1px solid #F3F4F6; }
  .amh-nav > .amh-lien { display: flex; width: 100%; padding: 14px 2px; border-bottom: 1px solid #F3F4F6; font-size: 16px; }
  .amh-groupe > .amh-lien { display: flex; justify-content: space-between; width: 100%; padding: 14px 2px; font-size: 16px; }
  .amh-chev { width: 13px; height: 13px; }
  .amh-panneau, .amh-panneau.amh-droit, .amh-mega > .amh-panneau { position: static; min-width: 0; padding: 0 0 8px 12px; border: 0; border-radius: 0; box-shadow: none; background: none; }
  .amh-mega.amh-ouvert > .amh-panneau { display: block; }
  .amh-item { padding: 10px 6px; }
  .amh-sous { padding: 11px 6px; font-size: 15.5px; white-space: normal; }
  .amh-sousform { border-top: 0; }
  .amh-sousform button { padding: 11px 6px; font-size: 15.5px; }
  .amh-recherche { position: static; }
  .amh-recherche > .amh-icone { display: none; }
  .amh-formrech, .amh-recherche.amh-ouvert > .amh-formrech { display: flex; position: static; width: auto; padding: 0; border: 0; box-shadow: none; }
  .amh-droite .amh-btn { display: flex; width: 100%; height: 48px; font-size: 16px; }
  .amh-droite .amh-btn-texte { border-color: #085292; color: #085292; }
  .amh-espace { display: block; align-self: auto; }
  .amh-espace > .amh-btn { display: none; }
  .amh-espace > .amh-panneau { display: block; padding: 0; }
}
@media (max-width: 420px) {
  .amh-dedans { gap: 6px; padding: 0 12px; }
  .amh-logo img { height: 32px; }
  .amh-nom { padding-left: 8px; margin-left: 0; font-size: 13px; }
}
