/* Adaptation ciblée du site observé le 16 septembre 2026.
   Le menu conserve les liens et le comportement natif d'Elementor.
   Aucune règle ne s'applique au-delà de 1024 px. */
@media (max-width: 1024px) {
  /* Un seul en-tête, commun aux téléphones et tablettes. */
  .elementor-343480 .elementor-element-29dfae8b,
  .elementor-343480 .elementor-element-50fc3788,
  .elementor-343480 .elementor-element-25c43097 {
    display: none !important;
  }
  .elementor-343480 .elementor-element-2410e731 > .e-con-inner {
    gap: 0 !important;
  }
  .elementor-343480 .elementor-element-a2e5d99 {
    display: grid !important;
    grid-template-columns: minmax(100px, 1fr) minmax(90px, 180px) 44px !important;
    grid-template-rows: auto !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 12px !important;
    padding: 12px !important;
    position: relative;
    overflow: visible;
  }
  .elementor-343480 .elementor-element-6801f6d {
    display: flex !important;
    grid-column: 1;
    grid-row: 1;
    width: 100% !important;
    min-width: 0;
    padding: 0 !important;
  }
  .elementor-343480 .elementor-element-9d166f1 {
    width: 140px !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  .elementor-343480 .elementor-element-9d166f1 img {
    width: 100% !important;
    height: auto !important;
  }
  .elementor-343480 .elementor-element-c919a57 {
    grid-column: 2;
    grid-row: 1;
    width: 100% !important;
    min-width: 0;
    padding: 0 !important;
  }
  .elementor-343480 .elementor-element-33c6478 {
    width: 100% !important;
    margin: 0 !important;
    --e-search-input-gap: 6px;
    --e-search-input-padding-inline-start: 12px;
    --e-search-input-padding-inline-end: 12px;
  }
  .elementor-343480 .elementor-element-33c6478 input[type="search"] {
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 16px !important;
    min-height: 44px;
    min-width: 0;
  }
  .elementor-343480 .elementor-element-9169f90 {
    display: flex !important;
    grid-column: 3;
    grid-row: 1;
    position: static !important;
    width: 44px !important;
    max-width: 44px !important;
    margin: 0 !important;
  }
  .elementor-343480 .elementor-element-9169f90 .elementor-menu-toggle {
    width: 44px;
    height: 44px;
    min-width: 44px;
    padding: 10px !important;
    border-radius: 12px !important;
    background: #e8f5ee !important;
    color: #176a40 !important;
    font-size: 22px !important;
  }
  .elementor-343480 .elementor-element-9169f90 .elementor-menu-toggle svg {
    fill: currentColor;
    width: 22px;
    height: 22px;
  }
  /* La largeur calculée par l'option Elementor « étirer » est remplacée. */
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown {
    position: absolute !important;
    top: 100% !important;
    left: auto !important;
    right: 12px !important;
    width: min(340px, calc(100vw - 32px)) !important;
    margin-top: 4px !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 12px 36px rgb(15 50 30 / 16%) !important;
    z-index: 1000;
    box-sizing: border-box;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown[aria-hidden="false"] {
    padding: 8px !important;
    max-height: 70vh !important;
    max-height: 70dvh !important;
  }
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown > ul {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    padding: 0 !important;
    margin: 0 !important;
  }
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown > ul > li {
    width: 100%;
    margin: 0 !important;
    min-width: 0;
  }
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown .elementor-item {
    display: flex;
    justify-content: flex-start !important;
    min-height: 44px;
    padding: 12px !important;
    border-radius: 10px;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    white-space: normal;
    color: #283e33 !important;
  }
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown .elementor-item:is(:hover, :focus, .elementor-item-active) {
    background: #e8f5ee !important;
    color: #176a40 !important;
  }
  .elementor-343480 :is(.elementor-menu-toggle, .elementor-item, input[type="search"]):focus-visible {
    outline: 2px solid #176a40 !important;
    outline-offset: 3px;
  }
  /* Si des sous-menus sont ajoutés, revenir à une liste verticale. */
  .elementor-343480 .elementor-element-9169f90 nav.elementor-nav-menu--dropdown > ul:has(.sub-menu) {
    display: block !important;
  }
  /* Espacement des cartes de l'accueil sur tablette. */
  .elementor-7 .elementor-element-ec2ec91 {
    --grid-columns: 2 !important;
    --grid-row-gap: 16px !important;
    --grid-column-gap: 16px !important;
  }
  .elementor-7 .elementor-element-ec2ec91 .elementor-heading-title {
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    overflow-wrap: break-word;
  }
  /* La météo reste disponible en bas de page, sans recouvrir les articles.
     Sa source, son attribution et ses commandes restent visibles. */
  body .vdr-weather.vdr-floating {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: min(380px, calc(100% - 32px)) !important;
    max-width: calc(100% - 32px) !important;
    margin: 24px auto !important;
    z-index: auto !important;
  }
}

@media (max-width: 600px) {
  .elementor-7 .elementor-element-ec2ec91 {
    --grid-columns: 1 !important;
    --grid-row-gap: 16px !important;
  }
  .elementor-343480 .elementor-element-a2e5d99 {
    grid-template-columns: minmax(90px, 1fr) minmax(80px, 110px) 44px !important;
    gap: 8px !important;
  }
}
