/* Ciblage du contenu existant : pas de dimensions fixes pour le texte. */
.elementor-1972 .ibapro-contact-content,
.elementor-1972 .ibapro-contact-content > .e-con-inner,
.elementor-1972 .ibapro-contact-simple-form,
.elementor-1972 .ibapro-contact-simple-form * { box-sizing: border-box; }
.elementor-1972 .ibapro-contact-simple-form { min-width: 0; max-width: 820px !important; }
.elementor-1972 .ibapro-contact-simple-form .elementor-form-fields-wrapper { margin: 0 !important; gap: 20px; }
.elementor-1972 .ibapro-contact-simple-form .elementor-field-group { padding: 0 !important; margin: 0 !important; width: calc((100% - 20px) / 2); }
.elementor-1972 .ibapro-contact-simple-form .elementor-col-100 { width: 100%; }
.elementor-1972 .ibapro-contact-simple-form input,
.elementor-1972 .ibapro-contact-simple-form textarea { max-width: 100%; }
.elementor-1972 .elementor-heading-title a[href^="tel:"] { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.ibapro-single-info h1,.ibapro-single-details h2,.ibapro-single-details h3 { overflow-wrap: anywhere; }

@media (max-width: 1024px) {
  .home .elementor-element-3b22ecdc .elementor-headline { font-size: clamp(28px, 6vw, 54px) !important; line-height: 1.25 !important; }
  .home .elementor-element-3b22ecdc .elementor-headline-dynamic-wrapper { max-width: 100%; }
  .home .elementor-element-3b22ecdc .elementor-headline-dynamic-text { white-space: nowrap; }
  .elementor-1968 .ibapro-about-content-section > .e-con-inner,
  .elementor-1971 > .e-con:not(:first-child) > .e-con-inner,
  .elementor-1972 .ibapro-contact-content > .e-con-inner { padding-top: 56px !important; padding-bottom: 56px !important; gap: 32px !important; }
  .elementor-1968 .elementor-element-174cdef1 > .e-con-inner,
  .elementor-1968 .elementor-element-2eb5010 > .e-con-inner { padding-block: 0 !important; gap: 0 !important; }
  .elementor-1968 .elementor-element-2a6a828 { padding-block: 56px !important; }
  .elementor-1968 .elementor-element-2a6a828 > .e-con-inner { padding-block: 0 !important; }
  .elementor-1968 .elementor-element-cc8791d { min-height: 0 !important; padding: 24px !important; }
  .elementor-1968 .elementor-element-20d8008,
  .elementor-1968 .elementor-element-e841e8e { height: auto !important; min-height: 0 !important; }
  .elementor-1968 .elementor-element-99ff695 img { display: block; width: 100%; height: auto; max-height: 420px; object-fit: contain; }
  .elementor-location-footer > .e-con > .e-con-inner { padding-top: 48px !important; padding-bottom: 48px !important; gap: 32px !important; }
  .elementor-location-footer .elementor-element-6851f2c5 > .e-con-inner { padding-block: 20px !important; }
  .elementor-location-footer .elementor-nav-menu--main { display: block !important; }
  .elementor-location-footer .elementor-menu-toggle,
  .elementor-location-footer .elementor-nav-menu--dropdown { display: none !important; }
  .elementor-location-footer .elementor-nav-menu--main .elementor-nav-menu { display: flex; flex-direction: column; align-items: center; }
  .elementor-location-footer .elementor-nav-menu--main a { min-height: 44px; padding: 10px 16px !important; color: #fff !important; }
}
@media (max-width: 767px) {
  .home .elementor-element-84ac9ca .elementor-heading-title { font-size: clamp(20px, 5.5vw, 26px) !important; line-height: 1.55 !important; }
  .home .elementor-element-7ac8c3b6 { padding-top: 112px !important; padding-bottom: 40px !important; }
  .home .elementor-element-1dd91792 { padding: 28px 20px !important; }
  .home .elementor-element-13b16096 > .e-con-inner,
  .home .elementor-element-589c5bce > .e-con-inner { padding-block: 56px !important; gap: 28px !important; }
  .home .elementor-element-589c5bce > .e-con-inner > .elementor-widget-heading .elementor-heading-title { font-size: 32px !important; }
  .elementor-1968 .elementor-element-27cc9aa { flex-direction: row !important; justify-content: center !important; gap: 24px !important; }
  .elementor-1968 .elementor-element-337beac { gap: 28px !important; }
  .elementor-1968 .elementor-element-21a20d85,
  .elementor-1968 .elementor-element-727a0101 { padding-block: 40px !important; }
  .elementor-1972 .ibapro-contact-simple-form .elementor-field-group { width: 100% !important; }
  .elementor-1972 .ibapro-contact-content .elementor-widget-text-editor { font-size: 18px; line-height: 1.65; }
}
@media (prefers-reduced-motion: reduce) {
  .elementor-invisible { visibility: visible !important; }
  .elementor-element.animated { animation: none !important; }
}
@media (max-width: 359px) {
  .ibapro-sticky-header__inner { padding-inline: 12px !important; gap: 8px !important; }
  .ibapro-sticky-header__logo img { width: 110px !important; }
  .ibapro-sticky-header__quote { flex: 0 0 44px !important; width: 44px !important; min-width: 44px !important; padding: 0 !important; }
  .ibapro-sticky-header__account,.ibapro-sticky-header__toggle { flex-shrink: 0 !important; }
}
