/* The Elementor editor's layout wrappers are made transparent to preserve the original HTML geometry. */
body.babin-elementor-page {margin:0;padding:0;background:#fff;}
body.babin-elementor-page .elementor,
body.babin-elementor-page .elementor-section-wrap,
body.babin-elementor-page .elementor-section,
body.babin-elementor-page .elementor-container,
body.babin-elementor-page .elementor-column,
body.babin-elementor-page .elementor-widget-wrap,
body.babin-elementor-page .elementor-widget,
body.babin-elementor-page .elementor-widget-container,
body.babin-elementor-page .e-con,
body.babin-elementor-page .e-con-inner {display:contents!important; width:auto!important;max-width:none!important;min-height:0!important;padding:0!important;margin:0!important;overflow:visible!important;}
body.babin-elementor-page .site-header {position:sticky;top:0;}
body.babin-elementor-page .elementor-widget:not(:last-child) {margin-bottom:0!important;}
body.babin-elementor-page .elementor *,body.babin-elementor-page .elementor *::before,body.babin-elementor-page .elementor *::after {box-sizing:border-box;}

/* v1.6: one site menu. Keep only the header inserted outside Elementor. */
body.babin-elementor-page header.site-header:not(#babin-site-global-header) {
  display: none !important;
}

/* v1.8 – Datenschutzerklaerung on narrow screens.
 * Long German titles must not force horizontal scrolling. Scoped to the
 * privacy page so every other Elementor page retains its existing design. */
@media (max-width: 760px) {
  body.babin-datenschutz-page .page-intro .intro-inner {
    grid-template-columns: minmax(0, 1fr);
    min-width: 0;
    gap: 18px;
  }
  body.babin-datenschutz-page .page-intro .intro-inner > * {
    min-width: 0;
    max-width: 100%;
  }
  body.babin-datenschutz-page .page-intro h1 {
    max-width: 100%;
    font-size: clamp(24px, 7vw, 34px);
    letter-spacing: -0.9px;
    line-height: 1.14;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: auto;
  }
  body.babin-datenschutz-page .page-intro p {
    min-width: 0;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.7;
    white-space: normal;
    overflow-wrap: anywhere;
  }
  body.babin-datenschutz-page .legal-content {
    min-width: 0;
    max-width: 100%;
  }
  body.babin-datenschutz-page .legal-content :is(h2, h3, p, address, li, a, strong, dd, dt) {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }
}
