
@media (max-width:1050px) {
  .faq-directory { padding-top: 0; }
  .faq-hero {
    height: 514px;
    padding-top: var(--alt-interior-title-top);
    background: #082E51 url("../gestion-parc-fond-bleu-texture-v1.webp") center / cover no-repeat;
  }
  .faq-hero::before { content: none; }
  .faq-hero .faq-wrap {
    position: relative;
    width: min(var(--alt-interior-content-width), calc(100% - 48px));
    padding: 0;
  }
  /* Keep the pictogram above the shared title baseline, outside its flow. */
  .faq-hero-icon {
    position: absolute;
    left: 0;
    bottom: calc(100% + var(--alt-interior-subtitle-gap));
    margin: 0;
  }
}
@media (max-width:1050px) {
  .faq-directory .faq-wrap {
    width: min(var(--alt-interior-content-width), calc(100% - 48px));
  }
  .faq-content {
    display: flex;
    flex-direction: column;
    gap: 80px;
    padding-block: 80px;
  }
  .faq-categories,
  .faq-category-section { margin-bottom: 0; }
  .faq-category-section,
  .faq-contact { width: min(900px, 100%); margin-inline: auto; }
  .faq-category-section h2 {
    margin-bottom: 36px;
    font-weight: 700;
  }
  .faq-category-icon,
  .faq-section-icon,
  .faq-expand { color: #1769E0; }
  .faq-entry { border-top: 1px solid #DDE1E7; border-bottom: 0; }
  .faq-entry:last-child { border-bottom: 1px solid #DDE1E7; }
  .faq-entry summary {
    padding: 20px 18px;
    gap: 22px;
    font-size: 16px;
    line-height: 1.65;
  }
  .faq-entry[open] { background: #FFFFFF; }
  .faq-entry summary:hover,
  .faq-entry[open] summary { color: #000000; }
  .faq-expand,
  .faq-entry[open] .faq-expand::after { font-size: 24px; font-weight: 400; }
  .faq-entry[open] .faq-expand { font-size: 0; }
  .faq-response { max-width: none; padding: 0 18px 24px; }
  .faq-response p { color: #000000; font-size: 16px; line-height: 1.65; margin: 0; }
  .faq-response a {
    display: inline-flex;
    max-width: 100%;
    margin-top: 16px;
    color: #1769E0;
    font-size: 16px;
    line-height: 1.65;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .faq-response a:hover { color: #1254B5; }
  /* The parent gap owns the whole space after the last answer: no extra top padding. */
  .faq-contact { padding-top: 0; border-top: 0; }
  .faq-contact h2 { font-size: 30px; font-weight: 700; }
  .faq-contact p { color: #000000; font-size: 16px; line-height: 1.65; }
  .faq-contact-link {
    justify-content: center;
    flex-shrink: 0;
    gap: 12px;
    min-height: 47px;
    padding: 12px 20px;
    border: 1px solid #1769E0;
    background: #1769E0;
    font-size: 15px;
    line-height: 1.4;
  }
  .faq-contact-link:hover { background: #1254B5; border-color: #1254B5; color: #FFFFFF; }
  .faq-contact-link svg { width: 18px; height: 18px; }
  .faq-directory a:focus-visible { outline-color: #1769E0; }
  .faq-entry summary:focus-visible { outline: 2px solid #1769E0; outline-offset: -2px; }
}