.elementor-kit-4{--e-global-color-primary:#002993;--e-global-color-secondary:#56DC7C;--e-global-color-text:#0c1733;--e-global-color-accent:#1f9c45;--e-global-color-body0001:#45506b;--e-global-color-muted001:#6b7691;--e-global-color-line0001:#e4e8f2;--e-global-color-soft0001:#f4f6fc;--e-global-color-soft0002:#eef1fa;--e-global-color-blue0700:#0a2f9e;--e-global-color-green0600:#2bbf57;--e-global-typography-primary-font-family:"Karla";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Karla";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Karla";--e-global-typography-accent-font-weight:600;color:#45506b;font-family:"Karla", sans-serif;font-size:1rem;font-weight:400;line-height:1.65em;}.elementor-kit-4 e-page-transition{background-color:#FFBC7D;}.elementor-kit-4 a{color:#002993;}.elementor-kit-4 a:hover{color:#0a2f9e;}.elementor-kit-4 h1{color:#0c1733;font-family:"Karla", sans-serif;font-size:3.2rem;font-weight:800;line-height:1.08em;letter-spacing:-0.6px;}.elementor-kit-4 h2{color:#0c1733;font-family:"Karla", sans-serif;font-size:2.4rem;font-weight:800;line-height:1.12em;letter-spacing:-0.5px;}.elementor-kit-4 h3{color:#0c1733;font-family:"Karla", sans-serif;font-size:1.5rem;font-weight:800;line-height:1.18em;letter-spacing:-0.3px;}.elementor-kit-4 h4{color:#0c1733;font-family:"Karla", sans-serif;font-size:1.3rem;font-weight:700;line-height:1.25em;}.elementor-kit-4 h5{color:#0c1733;font-family:"Karla", sans-serif;font-size:1.16rem;font-weight:700;line-height:1.3em;}.elementor-kit-4 h6{color:#0c1733;font-family:"Karla", sans-serif;font-size:1rem;font-weight:700;line-height:1.4em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ============ TR · Global Fixes ============ */

/* Layout alignment */
.site-content .ast-container { padding-left: 0 !important; padding-right: 0 !important; }
.elementor-7 .e-con-boxed > .e-con-inner { max-width: 1140px; }

/* Global edge gutter — like reference: width: min(100% - 40px, container).
   Content never touches the viewport edge, on any page, any viewport. */
.e-con-boxed > .e-con-inner {
  max-width: min(var(--content-width, 1140px), 100% - 40px) !important;
}

/* --- Reliability: never hide content behind entrance animations --- */
.elementor-invisible { opacity: 1 !important; visibility: visible !important; animation: none !important; }

/* --- Hero bullets: one line on desktop --- */
@media (min-width:768px) {
  .elementor-element-7c1e8b8 .elementor-icon-list-items { flex-wrap: nowrap !important; }
  .elementor-element-7c1e8b8 .elementor-icon-list-item { white-space: nowrap; margin-right: 0 !important; }
  .elementor-element-7c1e8b8 .elementor-icon-list-item:not(:first-child) { margin-left: 18px !important; }
  .elementor-element-7c1e8b8 .elementor-icon-list-text { font-size: .84rem !important; }
}

/* --- Franchise box: gradient explicitly (global-color var did not resolve) --- */
.elementor-element-a1d9a28 {
  background-color: #001a5e !important;
  background-image: linear-gradient(135deg, #001a5e 0%, #002993 100%) !important;
}

/* --- referenzen: testimonial avatars as small circles, not stretched pills --- */
.elementor-element-6e2993c, .elementor-element-c9e6718 { width: auto !important; flex: 0 0 auto !important; }
.elementor-element-6e2993c .elementor-heading-title,
.elementor-element-c9e6718 .elementor-heading-title {
  width: 44px; height: 44px; border-radius: 50% !important;
  background: #eef1fa; color: #002993 !important;
  display: inline-flex !important; align-items: center; justify-content: center;
  font-size: 13px !important; font-weight: 700 !important;
}

/* --- kontakt: VORGEHEN section header centered like reference --- */
.elementor-68 .elementor-element-803defe .elementor-heading-title,
.elementor-68 .elementor-element-13b58ba .elementor-heading-title { text-align: center !important; }
.elementor-68 .elementor-element-803defe, .elementor-68 .elementor-element-13b58ba { text-align: center !important; }
.elementor-68 .elementor-element-2aa4c31 .elementor-widget-text-editor { text-align: center !important; }

/* --- immobilienmakler: problems grid 2 columns like reference --- */
@media (min-width:768px) {
  .elementor-element-c791e49 { grid-template-columns: repeat(2, 1fr) !important; }
}

/* --- hello.immo dashboard: cap on desktop too --- */
@media (min-width:768px) {
  .elementor-element-7377998 { max-height: 640px; overflow: hidden; align-self: center; }
  .elementor-element-7377998 img { object-fit: cover; object-position: top center; }
}

/* --- Icons in cards: always left-aligned (tiles + step badges) --- */
.elementor-widget-image:has(img[src*="tile-"]),
.elementor-widget-image:has(img[src*="badge-"]) {
  text-align: left !important;
  align-self: flex-start !important;
}
.elementor-widget-image:has(img[src*="tile-"]) .elementor-widget-container,
.elementor-widget-image:has(img[src*="badge-"]) .elementor-widget-container {
  text-align: left !important;
}

/* ============ Footer ============ */
/* Heading → link spacing (reference: h4 margin-bottom 16px) */
.elementor-location-footer .elementor-widget-heading { margin-bottom: 16px !important; }
.elementor-location-footer .elementor-widget-heading .elementor-heading-title {
  color: #fff !important; font-weight: 700 !important; font-size: .98rem !important;
}
/* Footer links: comfortable line spacing */
.elementor-location-footer .elementor-icon-list-item { padding: 5px 0 !important; }
.elementor-location-footer .elementor-icon-list-item a { transition: color .2s; }
.elementor-location-footer .elementor-icon-list-text { font-size: .95rem !important; }

/* ============ Mobile Menu Panel (reference: white card) ============ */
.elementor-menu-toggle { color: #0c1733 !important; }
.elementor-menu-toggle svg { width: 26px; height: 26px; }

@media (max-width:1024px) {
  /* Neutralise closer positioned ancestors so dropdown anchors to full header */
  .elementor-location-header .e-con,
  .elementor-location-header .e-con-inner,
  .elementor-location-header .elementor-widget-nav-menu,
  .elementor-location-header .elementor-widget-container { position: static !important; }
  .elementor-location-header { position: relative !important; }

  /* Full-width white card dropdown, anchored under header */
  nav.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: absolute !important;
    left: 12px !important; right: 12px !important;
    top: calc(100% + 6px) !important;
    width: auto !important;
    background: #fff !important;
    border: 1px solid #e4e8f2 !important;
    border-radius: 16px !important;
    box-shadow: 0 18px 50px rgba(0,41,147,.14) !important;
    padding: 10px !important;
    overflow: hidden;
    z-index: 9999 !important;
  }
  /* Ensure header sits above page content while menu is open */
  .elementor-location-header { z-index: 999 !important; }
  nav.elementor-nav-menu--dropdown a.elementor-item {
    color: #0c1733 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    padding: 13px 14px !important;
    border: none !important;
    border-radius: 10px !important;
  }
  nav.elementor-nav-menu--dropdown a.elementor-item:hover,
  nav.elementor-nav-menu--dropdown a.elementor-item.elementor-item-active {
    color: #002993 !important;
    background: #f4f6fc !important;
  }
  /* Submenu (Leistungen): grouped block with left accent, indented + lighter */
  nav.elementor-nav-menu--dropdown .elementor-nav-menu .sub-menu {
    background: #f4f6fc !important;
    border-radius: 10px !important;
    margin: 2px 6px 6px 14px !important;
    padding: 6px !important;
    border-left: 3px solid #56DC7C !important;
    position: static !important;
    width: auto !important;
    box-shadow: none !important;
    border-top: none; border-right: none; border-bottom: none;
  }
  nav.elementor-nav-menu--dropdown .elementor-nav-menu .sub-menu a.elementor-sub-item {
    color: #45506b !important;
    padding: 10px 12px !important;
    font-weight: 500 !important;
    font-size: 14.5px !important;
    border-radius: 8px !important;
    border: none !important;
  }
  nav.elementor-nav-menu--dropdown .elementor-nav-menu .sub-menu a.elementor-sub-item:hover {
    color: #002993 !important;
    background: #fff !important;
  }
  /* Submenu expand arrow: align right, subtle */
  nav.elementor-nav-menu--dropdown .elementor-item .sub-arrow,
  nav.elementor-nav-menu--dropdown span.sub-arrow {
    color: #6b7691 !important;
    padding: 0 6px !important;
  }
}

/* ============ Nav CTA menu item ============ */
/* Desktop horizontal nav: hide (separate button widget exists there) */
.elementor-nav-menu--main .menu-cta { display: none !important; }
/* Dropdown: style as blue pill like reference nav__cta */
nav.elementor-nav-menu--dropdown .menu-cta { margin-top: 8px; }
nav.elementor-nav-menu--dropdown .menu-cta > a.elementor-item {
  background: #002993 !important;
  color: #fff !important;
  border-radius: 999px !important;
  text-align: center !important;
  justify-content: center !important;
  font-weight: 700 !important;
}
nav.elementor-nav-menu--dropdown .menu-cta > a.elementor-item:hover {
  background: #0a2f9e !important;
  color: #fff !important;
}

/* ============ Header: like reference on mobile ============ */
@media (max-width:767px) {
  /* Topbar: one line — badge only, contact hidden */
  .elementor-element-3dde6ee { display: none !important; }
  .elementor-element-c1560a9 > .e-con-inner { flex-wrap: nowrap !important; min-height: 42px; align-items: center !important; }

  /* Header row: logo left, hamburger right — CTA lives in the dropdown */
  .elementor-element-ef34797 > .e-con-inner {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px !important;
  }
  .elementor-element-6bbcddc { width: auto !important; flex: 0 0 auto !important; }
  .elementor-location-header .elementor-element-6bbcddc img { width: 118px !important; height: auto !important; }
  .elementor-element-54cda65 { width: auto !important; flex: 0 0 auto !important; margin-left: auto !important; }
  .elementor-element-d845420 { display: none !important; }
}

/* ============ Footer: single column on mobile ============ */
@media (max-width:767px) {
  .elementor-element-119f8c5 {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
  .elementor-element-119f8c5 > .e-con { width: 100% !important; max-width: 100% !important; }
  .elementor-location-footer .elementor-widget-heading { margin-top: 0 !important; }
}

/* ============ Responsive: Tablet (max 1024px) ============ */
@media (max-width:1024px) {
  .elementor-element-40dc58b { font-size:44px !important; }
  .elementor-element-731033b > .e-con-inner { padding-top:60px !important; padding-bottom:60px !important; }
  .elementor-element-03369ef,
  .elementor-element-2a99a11,
  .elementor-element-04ebeaa,
  .elementor-element-e9b359b,
  .elementor-element-8496ea3,
  .elementor-element-be678d5,
  .elementor-element-bb6e60a { padding-top:68px !important; padding-bottom:68px !important; }
  .elementor-element-fbe01ab > .e-con-inner { flex-wrap:wrap !important; }
  .elementor-element-fbe01ab > .e-con-inner > .e-con { flex:0 0 calc(33% - 12px) !important; min-width:200px; }
}

/* ============ Responsive: Mobile (max 767px) ============ */
@media (max-width:767px) {
  /* Global heading scale — like reference clamp() minimums */
  h1.elementor-heading-title { font-size: 34px !important; line-height: 1.15 !important; }
  h2.elementor-heading-title { font-size: 28px !important; line-height: 1.2 !important; }
  h3.elementor-heading-title { font-size: 20px !important; }

  /* komplettpaket: hero card SVG full width so its text is readable */
  .elementor-62 .elementor-element-dd3fd9a img { width: 100% !important; height: auto !important; }

  /* Hero: stack text over image */
  .elementor-element-58ea882 > .e-con-inner { flex-direction:column !important; }
  .elementor-element-a108ad7,
  .elementor-element-4d0792e { width:100% !important; }
  .elementor-element-4d0792e { order:1; }
  .elementor-element-a108ad7 { order:0; }
  .elementor-element-40dc58b .elementor-heading-title { font-size:32px !important; line-height:1.2 !important; }
  .elementor-element-731033b > .e-con-inner { padding-top:36px !important; padding-bottom:36px !important; }
  .elementor-element-91f61d9 > .e-con-inner { flex-direction:column !important; gap:10px !important; }
  .elementor-element-91f61d9 .elementor-button { width:100% !important; text-align:center; }
  .elementor-element-7c1e8b8 .elementor-icon-list-items { flex-wrap:wrap !important; }

  /* Section vertical padding: 92px → 48px */
  .elementor-element-03369ef,
  .elementor-element-2a99a11,
  .elementor-element-04ebeaa,
  .elementor-element-e9b359b,
  .elementor-element-8496ea3,
  .elementor-element-be678d5,
  .elementor-element-bb6e60a { padding-top:48px !important; padding-bottom:48px !important; }
  .elementor-element-5294c6d { padding-top:36px !important; padding-bottom:36px !important; }

  /* Horizontal breathing room (edge gutter is global now) */
  .elementor-element-a1d9a28 { padding-left:24px !important; padding-right:24px !important; }
  .elementor-element-c89de10 { padding-left:24px !important; padding-right:24px !important; }

  /* Card grids: stack */
  .elementor-element-fbe01ab > .e-con-inner,
  .elementor-element-adc473f > .e-con-inner,
  .elementor-element-e7c5886 > .e-con-inner,
  .elementor-element-1f7fddb > .e-con-inner,
  .elementor-element-152c591,
  .elementor-element-adc473f > .e-con-inner { flex-direction:column !important; }
  .elementor-element-152c591 { grid-template-columns:1fr !important; }
  .elementor-element-adc473f > .e-con-inner > .e-con,
  .elementor-element-e7c5886 > .e-con-inner > .e-con,
  .elementor-element-1f7fddb > .e-con-inner > .e-con { width:100% !important; }

  /* Two-column sections: stack */
  .elementor-element-9c3ddf0 > .e-con-inner,
  .elementor-element-6a3d4f2 > .e-con-inner { flex-direction:column !important; }
  .elementor-element-9c3ddf0 > .e-con-inner > .e-con,
  .elementor-element-6a3d4f2 > .e-con-inner > .e-con { width:100% !important; }

  /* CTA chip/button rows: wrap */
  .elementor-element-a495dec > .e-con-inner,
  .elementor-element-c053b79 > .e-con-inner { flex-wrap:wrap !important; }

  /* Headings scale down */
  .elementor-element-781ecd2 { font-size:26px !important; }
  .elementor-element-e19ba5c,
  .elementor-element-08528a7,
  .elementor-element-9b6578f { font-size:26px !important; }
  .elementor-element-a1c88c7,
  .elementor-element-4fe46c4 { font-size:24px !important; }
  .elementor-element-6481f87,
  .elementor-element-a00c9e4,
  .elementor-element-f484e64 { font-size:32px !important; }

  /* hello.immo dashboard: bar above screenshot, cap the huge portrait like the reference */
  .elementor-element-7377998 { max-height: 440px; overflow: hidden; border-radius: 18px; }
  .elementor-element-225aaba { flex-direction: column !important; flex-wrap: nowrap !important; }
  .elementor-element-225aaba .elementor-widget { width: 100% !important; }
  .elementor-element-225aaba img { width: 100% !important; object-fit: cover; object-position: top center; display: block; }

  /* Stats cards: tighter */
  .elementor-element-eb6f5b2,
  .elementor-element-0acde3b,
  .elementor-element-1903ed1 { padding: 18px 20px !important; }
  .elementor-element-fbe01ab > .e-con-inner { gap: 12px !important; }

  /* Meine-These cards: tighter */
  .elementor-7 .elementor-element-25f7df9,
  .elementor-7 .elementor-element-53d64e7,
  .elementor-7 .elementor-element-81b4bd5 { padding: 22px 20px !important; }
  .elementor-element-152c591 { gap: 14px !important; }

  /* Mein-Anspruch rows: tighter */
  .elementor-element-24993c5,
  .elementor-element-9d8e661,
  .elementor-element-a30bc40 { padding: 18px 20px !important; }

  /* Footer: single column, more air */
  .elementor-location-footer .elementor-widget-heading { margin-top: 8px !important; }
}

/* Eyebrow -> Ueberschrift: ueberall exakt 16px (wie Referenz). Sichtbarer
   Abstand = Container-row-gap + margin-bottom; calc() zieht den gap ab. */
.elementor-element-cbd58f6,
.elementor-element-f6d9eac,
.elementor-element-a86f3a8,
.elementor-element-036f000,
.elementor-element-8c30239,
.elementor-element-1d2d0b4,
.elementor-element-6254202,
.elementor-element-00a4962,
.elementor-element-e30540a,
.elementor-element-4ec21e7,
.elementor-element-de811c0,
.elementor-element-14fa97a,
.elementor-element-bcea0f0,
.elementor-element-b242397,
.elementor-62 .elementor-element-1b1e489,
.elementor-element-93ee0eb,
.elementor-element-1839b04,
.elementor-element-e07ef24,
.elementor-element-5d038cf,
.elementor-element-694aeed,
.elementor-element-dbf7040,
.elementor-element-d14f2e7,
.elementor-element-b77b5eb,
.elementor-element-404b24e,
.elementor-element-b91aeb0,
.elementor-element-f485c7c,
.elementor-element-10cd29b,
.elementor-element-1a2ff34,
.elementor-element-cb85fdd,
.elementor-element-823432e,
.elementor-68 .elementor-element-cfb36bc,
.elementor-element-9109766,
.elementor-68 .elementor-element-803defe,
.elementor-element-e81970a,
.elementor-element-53d64e7,
.elementor-element-b5b6dd2,
.elementor-element-941fd02,
.elementor-element-a067320,
.elementor-element-7ed0250,
.elementor-element-186b71b,
.elementor-element-c1fe3f0,
.elementor-element-c821eff,
.elementor-element-da8d02c,
.elementor-element-4c6d918,
.elementor-element-58b4f36,
.elementor-element-5ed8a45,
.elementor-element-1586d96,
.elementor-element-7143b72,
.elementor-element-d32445d,
.elementor-element-b18d38d,
.elementor-element-4b28858,
.elementor-element-f1d6ba8,
.elementor-element-5d93985,
.elementor-element-bf74270,
.elementor-element-cbbb88e,
.elementor-element-6556d59 {
  margin-bottom: calc(16px - var(--row-gap, 0px)) !important;
}

/* Hero-H1 direkt nach Eyebrow: 6px margin-top neutralisieren (16px-Gesamtabstand) */
.elementor-element-14fa97a + .elementor-widget-heading,
.elementor-element-1586d96 + .elementor-widget-heading,
.elementor-element-1a2ff34 + .elementor-widget-heading,
.elementor-element-5d038cf + .elementor-widget-heading,
.elementor-element-7ed0250 + .elementor-widget-heading,
.elementor-element-823432e + .elementor-widget-heading,
.elementor-element-b77b5eb + .elementor-widget-heading,
.elementor-element-cbd58f6 + .elementor-widget-heading,
.elementor-element-e30540a + .elementor-widget-heading,
.elementor-element-e81970a + .elementor-widget-heading,
.elementor-element-f1d6ba8 + .elementor-widget-heading,
.elementor-element-f485c7c + .elementor-widget-heading {
  margin-top: 0 !important;
}

/* ============ Ratgeber-Karten wie Referenz ============ */
/* Karte: Spalte, gleiche Hoehen im Grid */
.elementor-67 .tr-post-card { display: flex; flex-direction: column; }
/* Media-Panel: relative fuer Badge, Icon zentriert */
.elementor-67 .tr-post-card > .e-con:first-child {
  position: relative;
  min-height: 190px;
  align-items: center; justify-content: center;
}
.elementor-67 .tr-post-card > .e-con:first-child img {
  width: 64px !important; height: 64px !important; object-fit: contain;
}
/* Kategorie-Badge: weisse Pille oben links */
.elementor-67 .tr-post-card > .e-con:first-child .elementor-widget-text-editor {
  position: absolute; top: 14px; left: 14px; width: auto !important;
  background: #fff; border-radius: 999px; padding: 4px 12px;
  font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
  color: #0c1733 !important; line-height: 1.4;
}
.elementor-67 .tr-post-card > .e-con:first-child .elementor-widget-text-editor p { margin: 0; color: #0c1733 !important; }
/* Body waechst, Weiterlesen klebt unten */
.elementor-67 .tr-post-card > .e-con:last-child { flex: 1 1 auto; }
.elementor-67 .tr-post-card > .e-con:last-child > .e-con:last-child { margin-top: auto; }
/* Weiterlesen: blauer Textlink mit Pfeil statt Pill-Button */
.elementor-67 .tr-post-card .elementor-button {
  background: none !important; border: none !important; padding: 0 !important;
  color: #002993 !important; font-weight: 700 !important; font-size: .92rem !important;
  border-radius: 0 !important; box-shadow: none !important;
}
.elementor-67 .tr-post-card .elementor-button .elementor-button-text::after {
  content: " →"; font-weight: 700;
}
.elementor-67 .tr-post-card .elementor-button:hover { color: #0a2f9e !important; text-decoration: underline; }

/* ============ Komplettpaket-Vergleichstabelle mobil: Zeilen stapeln (wie Referenz) ============ */
@media (max-width: 767px) {
  .elementor-62 .elementor-element-46181f2 { grid-template-columns: 1fr !important; }
  /* Kopfzeile ausblenden */
  .elementor-62 .elementor-element-46181f2 > .elementor-element:nth-child(-n+3) { display: none !important; }
  /* Merkmal-Zelle: heller Block, fett, trennt die Zeilengruppen */
  .elementor-62 .elementor-element-46181f2 > .elementor-element:nth-child(3n+1) {
    background: #eef1fa !important; font-weight: 700;
    border-top: 1px solid #e4e8f2; margin-top: 0;
  }
  /* Wert-Zellen: Label davor, kein Links-Rahmen */
  .elementor-62 .elementor-element-46181f2 > .elementor-element:nth-child(3n+2)::before {
    content: "Franchise:"; display: block; font-weight: 700; color: #0c1733;
    font-size: .78rem; letter-spacing: .04em; text-transform: uppercase; margin-bottom: 4px;
  }
  .elementor-62 .elementor-element-46181f2 > .elementor-element:nth-child(3n)::before {
    content: "Mit Thomas Rees:"; display: block; font-weight: 700; color: #002993;
    font-size: .78rem; letter-spacing: .04em; text-transform: uppercase; margin-bottom: 4px;
  }
  .elementor-62 .elementor-element-46181f2 > .elementor-element {
    border-left: none !important;
  }
  .elementor-62 .elementor-element-46181f2 > .elementor-element:nth-child(3n) {
    background: rgba(86,220,124,.07);
  }
}

/* Ratgeber: einheitliche Kartenhoehen (Grid streckt, Weiterlesen klebt unten) */
.elementor-67 .tr-post-card { align-self: stretch !important; height: auto !important; }
.elementor-67 .elementor-element-4529c9d { align-items: stretch !important; }

/* Header-Logo: etwas kleiner */
@media (min-width: 768px) {
  .elementor-location-header .elementor-element-6bbcddc img { width: 140px !important; height: auto !important; }
}

/* Stat-Kacheln: Label-Spalte pro Gruppe auf breitestes Label fixiert (ruhige Textflucht) */
.elementor-7 .elementor-element-eb6f5b2 .elementor-widget-heading,
.elementor-7 .elementor-element-0acde3b .elementor-widget-heading,
.elementor-7 .elementor-element-1903ed1 .elementor-widget-heading { flex: 0 0 90px !important; min-width: 90px !important; }
.elementor-7 .elementor-element-24993c5 .elementor-widget-heading,
.elementor-7 .elementor-element-9d8e661 .elementor-widget-heading,
.elementor-7 .elementor-element-a30bc40 .elementor-widget-heading { flex: 0 0 123px !important; min-width: 123px !important; }
.elementor-48 .elementor-element-430ac7f .elementor-widget-heading,
.elementor-48 .elementor-element-dd719b1 .elementor-widget-heading,
.elementor-48 .elementor-element-87d86e4 .elementor-widget-heading { flex: 0 0 84px !important; min-width: 84px !important; }
.elementor-49 .elementor-element-c9c17c4 .elementor-widget-heading,
.elementor-49 .elementor-element-74284f7 .elementor-widget-heading,
.elementor-49 .elementor-element-1e8f22a .elementor-widget-heading { flex: 0 0 111px !important; min-width: 111px !important; }
.elementor-50 .elementor-element-607830a .elementor-widget-heading,
.elementor-50 .elementor-element-fadf03c .elementor-widget-heading,
.elementor-50 .elementor-element-a545d6f .elementor-widget-heading { flex: 0 0 106px !important; min-width: 106px !important; }
.elementor-51 .elementor-element-4cc811d .elementor-widget-heading,
.elementor-51 .elementor-element-e72ee4f .elementor-widget-heading,
.elementor-51 .elementor-element-9195b82 .elementor-widget-heading { flex: 0 0 132px !important; min-width: 132px !important; }
.elementor-52 .elementor-element-430ac7f .elementor-widget-heading,
.elementor-52 .elementor-element-dd719b1 .elementor-widget-heading,
.elementor-52 .elementor-element-87d86e4 .elementor-widget-heading { flex: 0 0 147px !important; min-width: 147px !important; }
.elementor-52 .elementor-element-fc240fc .elementor-widget-heading,
.elementor-52 .elementor-element-a68ae2f .elementor-widget-heading,
.elementor-52 .elementor-element-50f1b62 .elementor-widget-heading { flex: 0 0 118px !important; min-width: 118px !important; }
.elementor-61 .elementor-element-3f96244 .elementor-widget-heading,
.elementor-61 .elementor-element-d9fcf76 .elementor-widget-heading,
.elementor-61 .elementor-element-8463ca9 .elementor-widget-heading { flex: 0 0 139px !important; min-width: 139px !important; }
.elementor-62 .elementor-element-cfb36bc .elementor-widget-heading,
.elementor-62 .elementor-element-7a1a3ef .elementor-widget-heading,
.elementor-62 .elementor-element-2481122 .elementor-widget-heading { flex: 0 0 84px !important; min-width: 84px !important; }
.elementor-63 .elementor-element-5ea3194 .elementor-widget-heading,
.elementor-63 .elementor-element-f909ec6 .elementor-widget-heading,
.elementor-63 .elementor-element-a370bf9 .elementor-widget-heading { flex: 0 0 110px !important; min-width: 110px !important; }
.elementor-64 .elementor-element-8e21147 .elementor-widget-heading,
.elementor-64 .elementor-element-3887e7a .elementor-widget-heading,
.elementor-64 .elementor-element-d2eebac .elementor-widget-heading { flex: 0 0 125px !important; min-width: 125px !important; }
.elementor-65 .elementor-element-bd9f0fa .elementor-widget-heading,
.elementor-65 .elementor-element-6805e2d .elementor-widget-heading,
.elementor-65 .elementor-element-126cb60 .elementor-widget-heading { flex: 0 0 84px !important; min-width: 84px !important; }

/* Freelancer-Hero-Telefonbild: dezent begrenzen, mobil unter den Text */
.tr-hero-phone img { max-height: 520px; width: auto !important; object-fit: contain; filter: drop-shadow(0 24px 50px rgba(0,41,147,.17)); }
@media (max-width: 767px) {
  .tr-hero-phone { width: 100% !important; order: 1; }
  .tr-hero-phone img { max-height: 380px; }
}

/* Freelancer-Heroes: gruene Hintergrund-Punkte (wie Startseiten-Hero) */
.elementor-50 .elementor-element-ddcc1b6,
.elementor-48 .elementor-element-c05eb2b { position: relative; overflow: hidden; }
.elementor-50 .elementor-element-ddcc1b6::before,
.elementor-48 .elementor-element-c05eb2b::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: radial-gradient(#56DC7C 1.2px, transparent 1.2px);
  background-size: 55px 55px; background-position: -6px -6px; opacity: .8;
  -webkit-mask-image: radial-gradient(115% 95% at 80% 16%, #000 0%, transparent 62%);
  mask-image: radial-gradient(115% 95% at 80% 16%, #000 0%, transparent 62%);
}
.elementor-50 .elementor-element-ddcc1b6 > *,
.elementor-48 .elementor-element-c05eb2b > * { position: relative; z-index: 1; }

/* ============ Ratgeber-Artikel Layout ============ */
.tr-artikel { max-width: 760px; margin: 0 auto; padding: 48px 20px 72px; color: #45506b; line-height: 1.75; font-size: 1.02rem; }
.tr-artikel .tr-meta { font-size: .82rem; color: #6b7691; margin-bottom: 10px; }
.tr-artikel h1 { color: #0c1733; font-size: clamp(1.9rem, 4vw, 2.5rem); line-height: 1.2; margin: 0 0 18px; }
.tr-artikel h2 { color: #0c1733; font-size: 1.45rem; margin: 40px 0 14px; }
.tr-artikel h3 { color: #0c1733; font-size: 1.12rem; margin: 28px 0 10px; }
.tr-artikel p { margin: 0 0 16px; }
.tr-artikel ul, .tr-artikel ol { margin: 0 0 18px; padding-left: 22px; }
.tr-artikel li { margin-bottom: 8px; }
.tr-artikel a { color: #002993; font-weight: 600; }
.tr-artikel .tr-box { background: #f4f6fc; border-left: 3px solid #56DC7C; border-radius: 12px; padding: 18px 22px; margin: 24px 0; }
.tr-artikel .tr-box strong:first-child { color: #0c1733; }
.tr-artikel .tr-cta { background: linear-gradient(135deg, #001a5e 0%, #002993 100%); border-radius: 20px; padding: 34px 34px 38px; margin-top: 48px; color: rgba(255,255,255,.85); }
.tr-artikel .tr-cta h2 { color: #fff; margin: 0 0 10px; font-size: 1.4rem; }
.tr-artikel .tr-cta a.tr-cta-btn { display: inline-block; background: #56DC7C; color: #06351a; font-weight: 700; border-radius: 999px; padding: 12px 26px; margin-top: 14px; text-decoration: none; }
.tr-artikel .tr-cta a.tr-cta-btn:hover { background: #2bbf57; color: #fff; }
/* Astra-Standard-Titel/Meta auf Beitraegen ausblenden (Artikel bringt eigenen Kopf mit) */
.single-post .entry-header { display: none; }
.single-post .site-content .ast-container { max-width: 100% !important; }

/* ============ Artikel-Visuals: TOC, Kurzfassung, Figuren, Tabellen ============ */
.tr-artikel .tr-toc { background: #f4f6fc; border: 1px solid #e4e8f2; border-radius: 16px; padding: 20px 24px; margin: 28px 0 34px; }
.tr-artikel .tr-toc strong { display: block; color: #0c1733; font-size: .85rem; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 10px; }
.tr-artikel .tr-toc ol { margin: 0; padding-left: 20px; }
.tr-artikel .tr-toc li { margin-bottom: 6px; font-size: .95rem; }
.tr-artikel .tr-toc a { color: #002993; text-decoration: none; font-weight: 600; }
.tr-artikel .tr-toc a:hover { text-decoration: underline; }
.tr-artikel .tr-kurz { background: linear-gradient(135deg, rgba(86,220,124,.10), rgba(0,41,147,.05)); border: 1px solid rgba(86,220,124,.45); border-radius: 16px; padding: 20px 24px; margin: 26px 0; }
.tr-artikel .tr-kurz strong:first-child { display: block; color: #0c1733; font-size: .85rem; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 10px; }
.tr-artikel .tr-kurz ul { margin: 0; padding-left: 20px; }
.tr-artikel .tr-kurz li { margin-bottom: 6px; font-size: .96rem; }
.tr-artikel figure { margin: 30px 0; text-align: center; }
.tr-artikel figure svg { max-width: 100%; height: auto; }
.tr-artikel figcaption { font-size: .82rem; color: #6b7691; margin-top: 10px; }
.tr-artikel table.tr-table { width: 100%; border-collapse: collapse; margin: 24px 0; font-size: .93rem; border: 1px solid #e4e8f2; border-radius: 12px; overflow: hidden; }
.tr-artikel table.tr-table th { background: #002993; color: #fff; text-align: left; padding: 12px 16px; font-weight: 700; }
.tr-artikel table.tr-table td { padding: 11px 16px; border-top: 1px solid #e4e8f2; }
.tr-artikel table.tr-table tr:nth-child(even) td { background: #f8f9fd; }
.tr-artikel .tr-check-neg { color: #c2502f; font-weight: 700; }
.tr-artikel .tr-check-pos { color: #1f9c45; font-weight: 700; }
.tr-artikel h2 { scroll-margin-top: 110px; }

/* 360-Grad-Seite: Hero-Punkte */
.tr360-hero-sec { position: relative; overflow: hidden; }
.tr360-hero-sec::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background-image: radial-gradient(#56DC7C 1.2px, transparent 1.2px); background-size: 55px 55px; opacity: .8; -webkit-mask-image: radial-gradient(115% 95% at 80% 16%, #000 0%, transparent 62%); mask-image: radial-gradient(115% 95% at 80% 16%, #000 0%, transparent 62%); }
.tr360-hero-sec > * { position: relative; z-index: 1; }

/* Hero-Grafik-Karten */
.tr-hero-card { width: 100%; max-width: 440px; background: #fff; border-radius: 24px; box-shadow: 0 30px 70px rgba(0,41,147,.14); padding: 0; }
.tr-hero-card svg { display: block; width: 100%; height: auto; border-radius: 24px; }
@media (max-width: 767px) {
  .tr-hero-media { width: 100% !important; order: 1; }
  .tr-hero-card { max-width: 380px; margin: 0 auto; }
}

/* Beitrags-Navigation (englisches NEXT) und Kommentarbereich ausblenden */
.single-post .post-navigation, .single-post .comments-area { display: none; }

/* ============ TOC-Sidebar (sticky links, ab 1200px) ============ */
@media (min-width: 1200px) {
  .tr-artikel-wrap { display: grid; grid-template-columns: 250px minmax(0, 760px); gap: 56px; justify-content: center; align-items: start; }
  .tr-artikel-wrap .tr-artikel { margin: 0; max-width: 760px; }
  .tr-toc-col { position: sticky; top: 120px; padding-top: 48px; }
  .tr-toc-col .tr-toc { margin: 0; padding: 20px 22px; }
  .tr-toc-col .tr-toc ol { list-style: none; padding-left: 0; }
  .tr-toc-col .tr-toc li { margin-bottom: 2px; font-size: .9rem; }
  .tr-toc-col .tr-toc a { display: block; padding: 6px 10px; border-radius: 8px; border-left: 2px solid transparent; color: #45506b; font-weight: 500; }
  .tr-toc-col .tr-toc a:hover { color: #002993; background: #fff; text-decoration: none; }
  .tr-toc-col .tr-toc a.active { color: #002993; font-weight: 700; background: #fff; border-left: 2px solid #56DC7C; box-shadow: 0 2px 8px rgba(0,41,147,.07); }
}

/* Tabellen-Scrollcontainer (Mobil) */
.tr-artikel .tr-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 24px 0; border-radius: 12px; }
.tr-artikel .tr-table-scroll table.tr-table { margin: 0; min-width: 420px; }

/* Rundgang-Einzelseiten: Autor/Datum-Zeile ausblenden */
.single-trr_tour .entry-meta { display: none; }

/* ============ Globale Kontakt-Sektion (Footer-Template) ============ */
.tr-contact-sec .tr-ct-eyebrow { font-size: .8rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #56DC7C; margin: 0 0 18px; }
.tr-contact-sec .tr-ct h2 { color: #fff; font-size: clamp(1.9rem, 3.8vw, 2.8rem); line-height: 1.15; margin: 0 0 20px; font-weight: 800; }
.tr-contact-sec .tr-ct-sub { color: #aeb9d9; font-size: 1.05rem; line-height: 1.7; max-width: 520px; margin: 0 0 36px; }
.tr-contact-sec .tr-ct-rows { margin: 0; }
.tr-contact-sec .tr-ct-rows > div { display: flex; gap: 18px; margin-bottom: 14px; }
.tr-contact-sec .tr-ct-rows dt { flex: 0 0 96px; font-size: .78rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #6b7ba3; padding-top: 2px; }
.tr-contact-sec .tr-ct-rows dd { margin: 0; color: #e6eaf6; }
.tr-contact-sec .tr-ct-rows dd a { color: #56DC7C; text-decoration: none; font-weight: 600; }
.tr-contact-sec .tr-ct-rows dd a:hover { text-decoration: underline; }
.tr-contact-card { box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.tr-contact-card .elementor-field-group { margin-bottom: 4px; }
.tr-contact-card .elementor-button { width: 100%; }

/* tr-contact-grad: Kontakt-Sektion im CTA-Look */
.tr-contact-sec { background-image: linear-gradient(135deg, #002993 0%, #001a5e 100%) !important; position: relative; overflow: hidden; }
.tr-contact-sec::before { content: ""; position: absolute; inset: 0; background: radial-gradient(700px 360px at 85% 10%, rgba(86,220,124,.18), transparent 60%); z-index: 0; pointer-events: none; }
.tr-contact-sec > .e-con, .tr-contact-sec > .elementor-element { position: relative; z-index: 1; }

/* tr-num-kachel: Zahlen-Boxen wie Icon-Kacheln */
.tr-num .elementor-heading-title { display: inline-grid; place-items: center; width: 70px; height: 70px; border-radius: 18px; background: #eef1fa; color: #002993; font-size: 26px !important; font-weight: 800 !important; line-height: 1 !important; }

/* tr-hero-dots: grünes Punktmuster im Hero-Hintergrund (Leistungsseiten) */
.tr-hero-dots { position: relative; overflow: hidden; }
.tr-hero-dots::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background-image: radial-gradient(#56DC7C 1.2px, transparent 1.2px); background-size: 55px 55px; opacity: .8; -webkit-mask-image: radial-gradient(115% 95% at 80% 16%, #000 0%, transparent 62%); mask-image: radial-gradient(115% 95% at 80% 16%, #000 0%, transparent 62%); }
.tr-hero-dots > * { position: relative; z-index: 1; }/* End custom CSS */