.elementor-kit-11{--e-global-color-primary:#003228;--e-global-color-secondary:#59734F;--e-global-color-text:#282E2E;--e-global-color-accent:#FF4242;--e-global-color-e0dcd43:#A7B786;--e-global-color-9dc7ec1:#D9DFCA;--e-global-color-e9654b2:#000000;--e-global-color-cd969f7:#D0C9BF;--e-global-color-1a2ade7:#E7E6E3;--e-global-color-95295e8:#FFC8BE;--e-global-color-508a57b:#FFEBE8;--e-global-color-a31f0ee:#FFFFFF;--e-global-typography-primary-font-family:"Futura PT";--e-global-typography-primary-font-weight:400;--e-global-typography-secondary-font-family:"Futura PT";--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Futura PT";--e-global-typography-text-font-size:20px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.6em;--e-global-typography-accent-font-family:"Futura PT";--e-global-typography-accent-font-weight:100;background-color:var( --e-global-color-1a2ade7 );font-family:"Futura PT", Sans-serif;font-size:1.125rem;font-weight:400;line-height:1.6em;}.elementor-kit-11 button,.elementor-kit-11 input[type="button"],.elementor-kit-11 input[type="submit"],.elementor-kit-11 .elementor-button{background-color:var( --e-global-color-primary );color:#FFFFFF;border-radius:0px 0px 0px 0px;}.elementor-kit-11 e-page-transition{background-color:#FFBC7D;}.elementor-kit-11 a{font-family:"Futura PT", Sans-serif;font-size:1.75rem;font-weight:700;letter-spacing:0em;}.elementor-kit-11 h1{font-family:"Futura PT", Sans-serif;font-size:5rem;font-weight:600;line-height:1.3em;}.elementor-kit-11 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-11 h3{color:var( --e-global-color-accent );font-family:"Futura PT", Sans-serif;font-size:1.5rem;font-weight:700;line-height:1.3px;}.elementor-kit-11 h4{color:var( --e-global-color-text );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-kit-11 h5{color:var( --e-global-color-9dc7ec1 );font-family:"Futura PT", Sans-serif;font-weight:700;}.elementor-kit-11 h6{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}div.o-hero__content__title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-11{--e-global-typography-text-font-size:1.3rem;--e-global-typography-text-line-height:1.6em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-11{--e-global-typography-text-font-size:1rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Footer: 4 Spalten */
[data-id="d0503ec"],
[data-id="920bdb8"],
[data-id="4a5f5b3"],
[data-id="b8041aa"] {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
[data-id="d0503ec"] *,
[data-id="920bdb8"] *,
[data-id="4a5f5b3"] *,
[data-id="b8041aa"] * {
  color: #ffffff !important;
}

/* Footer Logo */
[data-id="b8041aa"] img {
  width: 160px !important;
  height: auto !important;
}
[data-id="b8041aa"] {
  align-items: flex-start !important;
  justify-content: center !important;
  padding-left: 0px !important;
}

/* Footer: Spalten oben ausrichten */
[data-id="ac71af3"] {
  align-items: flex-start !important;
}

/* Globale Überschriften-Größen */
h2, .h2 { font-size: 3.25rem !important; }
h3, .h3 { font-size: 1.75rem !important; }
h4, .h4 { font-size: 1.25rem !important; }

/* Body-Copy für klassische Text-Editor-Widgets */
.elementor-widget-text-editor p,
.elementor-widget-text-editor {
  font-size: 1.75rem !important;
  line-height: 1.5 !important;
}
.elementor-widget-text-editor strong,
.elementor-widget-text-editor b {
  font-family: inherit !important;
  font-weight: 700 !important;
}

/* Primärer Button */
.elementor-button {
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 1.125rem !important;
  transition: background-color 0.2s ease !important;
}
.elementor-button:hover,
.elementor-button:focus {
  background-color: var(--e-global-color-accent) !important;
  color: #ffffff !important;
}

/* Sekundärer CTA – dunkler Hintergrund (Hero, "Erstgespräch buchen") */
[data-id="e97b9aa"] a {
  background: none !important;
  color: inherit !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 1.125rem !important;
}
[data-id="e97b9aa"] a:hover {
  opacity: 0.75;
}

/* Sekundärer CTA – heller Hintergrund, per Button-ID statt data-id (kopierbar) */
#cta-secondary {
  background: none !important;
  color: #000000 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 1.125rem !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}
#cta-secondary:hover {
  background: none !important;
  background-color: transparent !important;
  color: #ff4242 !important;
}

/* Button-Stack: sekundär unter primär */
[data-id="2f22dec"] {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 12px !important;
 }

/* Hauptnavigation: Textfarbe + Hover, Haarlinie entfernen */
#\39 6a4a3b .menu-item > a {
  color: #ffffff !important;
  box-shadow: none !important;
}
#\39 6a4a3b .menu-item:hover > a {
  color: var(--e-global-color-accent) !important;
  box-shadow: none !important;
}
/* Abstand der Slider-Punkte (Swiper-Pagination) zum unteren Rand vergrößern */
.swiper-pagination {
  bottom: 40px !important;
}
/* Nested Accordion: Linie je nach Zustand */
.elementor-widget-n-accordion .e-n-accordion-item-title {
  border-style: none !important;
}

/* Geschlossen: Linie unter dem Titel */
.elementor-widget-n-accordion .e-n-accordion-item:not([open]) .e-n-accordion-item-title {
  border-bottom: 1px solid #000000 !important;
}

/* Geöffnet: Linie stattdessen unter dem Inhalt */
.elementor-widget-n-accordion .e-n-accordion-item[open] [role="region"] {
  border-bottom: 1px solid #000000 !important;
}
/* Logo-Link: keine Hover-Linie */
.elementor-widget-theme-site-logo a:hover,
.elementor-widget-theme-site-logo a.active {
  box-shadow: none !important;
}
.page-id-196 #\39 6a4a3b > ul.menu > li.menu-item > a {
  color: #000000 !important;
}
.page-id-196 #\39 6a4a3b > ul.menu > li.menu-item:hover > a {
  color: var(--e-global-color-accent) !important;
}
.page-id-196 .o-hero__content__title,
.page-id-196 .o-breadcrumb {
  display: none !important;
}
.page-id-196 .o-hero {
  height: 0 !important;
  min-height: 0 !important;
}
.page-id-196 .elementor-element-5dc41c6 {
  background-color: #ffffff !important;
}
.elementor-29533 a:hover,
.elementor-29533 a.active {
  box-shadow: none !important;
  color: #cccccc !important;
}
.page-id-17 #\39 6a4a3b > ul.menu > li.menu-item > a {
  color: #000000 !important;
}
.page-id-17 #\39 6a4a3b > ul.menu > li.menu-item:hover > a {
  color: var(--e-global-color-accent) !important;
}
.page-id-29384 #\39 6a4a3b > ul.menu > li.menu-item > a {
  color: #000000 !important;
}
.page-id-29384 #\39 6a4a3b > ul.menu > li.menu-item:hover > a {
  color: var(--e-global-color-accent) !important;
}
.page-id-29384 .elementor-element-5dc41c6 {
  background-color: #ffffff !important;
}
.single-portfolio #\39 6a4a3b > ul.menu > li.menu-item > a {
  color: #000000 !important;
}
.single-portfolio #\39 6a4a3b > ul.menu > li.menu-item:hover > a {
  color: var(--e-global-color-accent) !important;
}
.single-portfolio .elementor-element-5dc41c6 {
  background-color: #ffffff !important;
}
@media (max-width: 767px) {
  h1, .h1 { font-size: 36px !important; line-height: 1.15 !important; }
  h2, .h2 { font-size: 28px !important; line-height: 1.2 !important; }
  h3, .h3 { font-size: 22px !important; line-height: 1.25 !important; }
  h4, .h4 { font-size: 18px !important; }
  .l-main-wrapper p, .l-main-wrapper .e-paragraph-base { font-size: 16px !important; line-height: 1.5 !important; }
  h1, h2, h3, h4 { hyphens: auto; overflow-wrap: break-word; }
}@media (max-width: 1024px) {
  [class*="nav-menu"] .sub-menu {
    display: block !important;
    position: static !important;
    height: auto !important;
    max-height: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }
}@media (max-width: 1024px) {
  /* Fullscreen-Overlay */
  .m-nav-menu--mobile.active {
    position: fixed !important;
    top: 0 !important; left: 0 !important;
    width: 100vw !important;
    height: 100vh !important; height: 100dvh !important;
    padding: 130px 28px 40px !important;
    background: #000 !important;
    overflow-y: auto !important;
    z-index: 999 !important;
  }
  .m-nav-menu--mobile-icon-holder { position: relative; z-index: 1001; }
  [data-id="e69ac0e"] { position: relative; z-index: 1001; } /* vermutlich Logo-Container */
  body:has(.m-nav-menu--mobile.active) { overflow: hidden; }

  /* Menüpunkte linksbündig und groß */
  .m-nav-menu--mobile nav ul.menu { padding: 0 !important; }
  .elementor-29505 .elementor-element-96a4a3b nav > ul:not(.sub-menu) { text-align: left !important; }
  .m-nav-menu--mobile nav ul.menu > li > a { font-size: 26px !important; line-height: 1.3 !important; padding: 10px 0 !important; }
  .m-nav-menu--mobile .sub-menu { padding-left: 16px !important; }
  .m-nav-menu--mobile .sub-menu a { font-size: 16px !important; font-weight: 400 !important; padding: 6px 0 !important; }
  .m-nav-menu--mobile .current-menu-item > a { color: #FF4242 !important; }
.m-nav-menu--mobile.active {
  box-shadow: 0 -200px 0 0 #000 !important;
}

/* Lightbox: Bildunterschrift ausblenden, Zähler bleibt */
.mfp-figure figcaption .mfp-title {
  display: none !important;
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Futura PT';
	font-style: normal;
	font-weight: 100;
	font-display: auto;
	src: url('https://studio-sopart.de/wp-content/uploads/2026/01/font.woff2') format('woff2'),
		url('https://studio-sopart.de/wp-content/uploads/2026/01/font_3.woff') format('woff');
}
@font-face {
	font-family: 'Futura PT';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://studio-sopart.de/wp-content/uploads/2026/01/font-1.woff2') format('woff2'),
		url('https://studio-sopart.de/wp-content/uploads/2026/01/font_2.woff') format('woff');
}
@font-face {
	font-family: 'Futura PT';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://studio-sopart.de/wp-content/uploads/2026/01/font-2.woff2') format('woff2'),
		url('https://studio-sopart.de/wp-content/uploads/2026/01/font.woff') format('woff');
}
/* End Custom Fonts CSS */