/* ── Hero (bandeau gris clair) ── */
    .faq-hero {
      background: #f3f3f3;
      color: #1a1a1a;
      padding: 7rem 1.5rem 3rem;
      text-align: center;
    }
    .faq-hero__title {
      font-family: 'SKODA Next', sans-serif;
      font-size: clamp(2rem, 5vw, 2.8rem);
      font-weight: 800;
      margin: 0;
      letter-spacing: normal;
      color: #1a1a1a;
    }

    /* ── FAQ sections wrapper (fond gris continu) ── */
    .faq-sections {
      background: #f3f3f3;
      padding: 2rem 1.5rem 5rem;
    }
    .faq-sections__inner {
      max-width: 900px;
      margin: 0 auto;
    }

    /* ── Category ── */
    .faq-category {
      margin-bottom: 3.5rem;
    }
    .faq-category:last-child {
      margin-bottom: 0;
    }
    .faq-category__title {
      font-family: 'SKODA Next', sans-serif;
      font-size: clamp(1.5rem, 3vw, 2rem);
      font-weight: 800;
      color: #1a1a1a;
      margin: 0 0 1.5rem;
      text-align: center;
      border-bottom: none;
      padding-bottom: 0;
      letter-spacing: normal;
    }

    /* ── Accordion card ── */
    .faq-category__card {
      background: #fff;
      border-radius: 8px;
      padding: 0.25rem 2rem;
      box-shadow: 0 1px 4px rgba(0,0,0,0.04);
    }

    /* ── Accordion item ── */
    .faq-item {
      border-bottom: 1px solid #e8e8e8;
    }
    .faq-item:last-child {
      border-bottom: none;
    }

    .faq-question {
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%;
      padding: 1.25rem 0;
      background: none;
      border: none;
      cursor: pointer;
      font-family: 'SKODA Next', sans-serif;
      font-size: 1.05rem;
      font-weight: 700;
      color: #1a1a1a;
      text-align: left;
      line-height: 1.5;
      gap: 1.5rem;
      transition: color 0.2s ease;
    }
    .faq-question:hover {
      color: #4b5563;
    }
    .faq-question:focus-visible {
      outline: 2px solid #1a1a1a;
      outline-offset: 2px;
      border-radius: 4px;
    }

    .faq-question__chevron {
      flex-shrink: 0;
      width: 22px;
      height: 22px;
      transition: transform 0.3s ease;
      color: #1a1a1a;
    }
    .faq-item.is-open .faq-question__chevron {
      transform: rotate(180deg);
    }

    .faq-answer {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease, padding 0.35s ease;
      padding: 0;
    }
    .faq-item.is-open .faq-answer {
      max-height: 500px;
      padding-bottom: 1.25rem;
    }
    .faq-answer__text {
      font-family: 'SKODA Next', sans-serif;
      font-size: 0.98rem;
      color: #4b5563;
      line-height: 1.75;
      margin: 0;
      padding-right: 2.5rem;
    }

    /* ── CTA section ── */
    .faq-cta {
      background: #eaf5ee;
      padding: 4rem 1.5rem;
      text-align: center;
    }
    .faq-cta__inner {
      max-width: 600px;
      margin: 0 auto;
    }
    .faq-cta__title {
      font-family: 'SKODA Next', sans-serif;
      font-size: clamp(1.4rem, 3vw, 1.75rem);
      font-weight: 700;
      color: #0e3a2f;
      margin: 0 0 0.75rem;
    }
    .faq-cta__text {
      font-family: 'SKODA Next', sans-serif;
      font-size: 1.05rem;
      color: #4b5563;
      margin: 0 0 2rem;
      line-height: 1.7;
    }
    .faq-cta__buttons {
      display: flex;
      gap: 1rem;
      justify-content: center;
      flex-wrap: wrap;
    }
    .faq-cta__btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0.85rem 2rem;
      border-radius: 8px;
      font-family: 'SKODA Next', sans-serif;
      font-size: 1rem;
      font-weight: 600;
      text-decoration: none;
      transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
      cursor: pointer;
    }
    .faq-cta__btn--primary {
      background: var(--green-accent, #1a5c42);
      color: #fff;
      border: 2px solid var(--green-accent, #1a5c42);
    }
    .faq-cta__btn--primary:hover {
      background: #0e3a2f;
      border-color: #0e3a2f;
      box-shadow: 0 4px 16px rgba(14, 58, 47, 0.25);
    }
    .faq-cta__btn--ghost {
      background: transparent;
      color: var(--green-accent, #1a5c42);
      border: 2px solid var(--green-accent, #1a5c42);
    }
    .faq-cta__btn--ghost:hover {
      background: var(--green-accent, #1a5c42);
      color: #fff;
      box-shadow: 0 4px 16px rgba(14, 58, 47, 0.25);
    }

    /* ── Responsive ── */
    @media (max-width: 600px) {
      .faq-hero {
        padding: 6rem 1rem 2rem;
      }
      .faq-sections {
        padding: 1.5rem 1rem 3rem;
      }
      .faq-category__card {
        padding: 0.25rem 1.25rem;
      }
      .faq-question {
        font-size: 0.97rem;
        padding: 1rem 0;
      }
      .faq-answer__text {
        padding-right: 0;
        font-size: 0.93rem;
      }
      .faq-cta {
        padding: 3rem 1rem;
      }
      .faq-cta__buttons {
        flex-direction: column;
        align-items: center;
      }
      .faq-cta__btn {
        width: 100%;
        max-width: 300px;
      }
    }
