/* ============================================================
 * 14. RESPONSIVE
 * ============================================================ */
@media (max-width: 767.98px) {
  .bears-purchaseref-wrap { display: none; }
  .project-filter-tabs-container { padding: 30px 15px; }
  .tab-button { font-size: 16px; padding: 8px 15px; }
  .filter-button { font-size: 16px; padding: 10px 18px; }
  .project-filter-links { gap: 10px; }
  .wpcf7-form { padding: 20px; }
  .wpcf7-form h3 { font-size: 20px; }
  .wpcf7-not-valid-tip { font-size: 15px; padding: 6px 10px; }
  .wpcf7-response-output {
    font-size: 15px; padding: 14px 16px; margin: 16px 0;
  }

  .single-post-wrap { margin-top: 95px; }
  .single-post-wrap .entry-image {
    padding-bottom: 70%;
    margin: 0;
    background: #fff;
  }
  .single-post-wrap .entry-image img { border-radius: 6px; }
  .single-post-wrap .entry-content .entry-meta li { font-size: 18px; margin: 20px 0 30px; }
  .single-post-wrap .entry-content .entry-content-inner p { font-size: 17px; line-height: 150%; }
  .site-content .content-area { padding: 0; }
  .elementor-25857 .elementor-element.elementor-element-d621af4 .elementor-heading-title,
  .elementor-25857 .elementor-element.elementor-element-8db18ce .elementor-heading-title,
  .elementor-25857 .elementor-element.elementor-element-4edc5b0 .elementor-heading-title,
  .elementor-25857 .elementor-element.elementor-element-84ede9b .elementor-heading-title {
    white-space: break-spaces;
  }
  .elementor-25857 .elementor-element.elementor-element-e3fd6d5 .elementor-heading-title {
    font-size: 21px;
    white-space: break-spaces;
  }
}
@media (max-width: 992px) {
  /* WCAG 2.5.8 — touch target mobile/tablette : 34px (confort intermédiaire AA/AAA) */
  :root { --tap-target: 34px; }
  
  .project-filter-tabs-container .filters-wrap {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .site-footer .site-info.has-navigation .site-info-wrap .footer-navigation {
    white-space: preserve-breaks;
  }
  .site-footer .site-info { padding-bottom: 80px; }
}
