/*
Theme Name: Design
Theme URI: 
Author: marketing teamwork
Author URI: https://www.marketing-teamwork.de
Description: Wordpress-Theme
Version: 1.0
License: GNU General Public License

-------------------------------------------------------------- */

/* montserrat-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/montserrat-v30-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/montserrat-v30-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/montserrat-v30-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/montserrat-v30-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* montserrat-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/montserrat-v30-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/montserrat-v30-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* montserrat-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/montserrat-v30-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/montserrat-v30-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* montserrat-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  src: url('fonts/montserrat-v30-latin-800.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/montserrat-v30-latin-800.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}



body {margin:0; padding:0;font-family: "Montserrat", Sans-serif; font-weight: 400; font-size:18px;line-height:1.5;}

h1, .headline h2 {font-size:50px}
h2 {font-size:30px}
h3 {font-size:24px}
h4 {font-size:20px}
.section1 {padding:10% 10%!important}
.section2 {padding:0% 10%!important}
.section3 {padding:5% 10%!important}
.section4 {padding:0% 10% 10%!important}


@media (max-width: 1550px) {
body {font-size:17px;}
h1, .headline h2 {font-size:40px}
.section1 {padding:8% 5%!important}
.section2 {padding:0% 5%!important}
.section3 {padding:4% 5%!important}
.section4 {padding:0% 5% 5%!important}
}


@media (max-width: 1280px) {
body {font-size:16px;}
h1, .headline h2 {font-size:35px}
.section1 {padding:7% 4%!important}
.section2 {padding:0% 4%!important}
.section3 {padding:4%!important}
.section4 {padding:0% 4% 4%!important}
}

@media (max-width: 1024px) {
body {font-size:15px;}
h1, .headline h2 {font-size:33px}
h2 {font-size:28px}
h3 {font-size:20px}
h4 {font-size:18px}
.section1 {padding:10% 3%!important}
.section2 {padding:0% 3%!important}
.section3 {padding:5% 3%!important}
.section4 {padding:5% 4% 2%!important}
}



@media (max-width: 767px) {
body {font-size:14px;}
h1, .headline h2 {font-size:26px}
h2 {font-size:22px}
h3 {font-size:18px}
h4 {font-size:16px}
.section1 {padding:45px 20px!important}
.section2 {padding:0% 20px!important}
.section3 {padding:20px!important}
.section2.first {padding:0!important}
.section4 {padding:0% 20px 20px!important}
}

p {margin-top:0}

a, a:visited, a:focus,a:active {color:#95BD0E;}
a:hover {color:inherit}
a.dialog-close-button {outline:none}

::placeholder {opacity:1.0!important}


/* Footer
-------------------------------------------------------------- */
footer h4 {margin:0 0 10px 0; text-transform:uppercase; font-size:16px; font-weight:600}
footer .footer-submenu {margin:0; padding:0}
footer .footer-submenu li {list-style:none; line-height:1.4}
footer .footer-submenu li a {color:#AAAAAA; font-size:15px}

@media (max-width: 1024px) {
footer .footer-submenu li a {font-size:14px}
}



.bottom a:hover {color:#95BD0E!important}

/* Content
-------------------------------------------------------------- */

.about ul {margin:0 0 20px 20px; padding:0}
.team .elementor-image-box-content h3 {margin:0!important}
.team .elementor-image-box-content .elementor-image-box-description b {color:#95BD0E; margin-bottom:10px; display:block; font-weight:600}
.hyph {
  /* automatische Silbentrennung */
  -webkit-hyphens: auto; /* Safari/iOS */
  hyphens: auto;          /* moderne Browser */

  /* Mindestanzahl Zeichen vor und nach der Trennung */
  hyphenate-limit-chars: auto 4 4;

  /* Safari-Fallback */
  -webkit-hyphenate-limit-before: 4;
  -webkit-hyphenate-limit-after: 4;
}

.sidebar .elementor-item:before {
  content: "\2192"; /* ? */
  font-family: "Noto Sans Symbols","Segoe UI Symbol",system-ui,sans-serif;
  font-weight: 700;
  color: #dadada;
  margin-right: 8px; /* Abstand zum Text */
  display: inline-block;
  position:relative;
  opacity:1!important;
  background:transparent!important
}

.sidebar .elementor-item.elementor-item-active:before {color: #95bd0e}
.sidebar ul li {border-bottom:1px dotted #ddd}
.sidebar ul li:last-child {border-bottom:0px solid #fff}


.space {height:5px}
b, strong {font-weight:600}
.green {color:#95BD0E}

.navi ul.elementor-nav-menu--dropdown a {border-inline-start: 0px solid transparent!important}

.icon h3:before {content: "";display: inline-block; width: 25px; height: 25px;  background-image: url('https://ecopro-energieberater.de/wp-content/uploads/fav.png');
    background-size: contain; background-repeat: no-repeat; background-position: center; margin-right: 10px; vertical-align: middle;}
	

.acc .e-closed .e-font-icon-svg, .acc .e-opened .e-font-icon-svg { width: 10px; height: 10px; margin-top:3px} 

.rechtliches h2 {color:#95BD0E; font-weight:400px; margin:0}
.rechtliches h3, .rechtliches h4 {margin:0 0 10px}
	
@media (max-width: 1024px) {
.zert {background:#fff!important}

.section3.zert {padding:5% 0%!important}
}


@media (max-width: 767px) {
.iconstop .elementor-icon-list-item:last-child {display: none;}
.iconstop .elementor-icon-list-item .elementor-icon-list-text {display: none;}
.iconstop .elementor-icon-list-item {width: 30px; height: 30px; padding: 7px!important; background-color: #95BD0E; display: flex; align-items: center; justify-content: center; border-radius:2px}
.iconstop .elementor-icon-list-item .elementor-icon-list-icon svg {fill: #fff!important; color: #fff;  width: 100%; height: 100%; display: block; margin: 0!important;}
.navi .elementor-nav-menu--dropdown .elementor-item.has-submenu[aria-expanded="true"] .sub-arrow svg {transform: rotate(180deg)}

/* Elementor Arrows ausblenden */
.navi .elementor-nav-menu--dropdown .sub-arrow {
    display: none;
}

/* Eigene Arrows hinzufügen */
.navi .elementor-nav-menu--dropdown .menu-item-has-children::after {
    content: '\25BC';
    position: absolute;
    right: 15px;
    top: 15px;
    cursor: pointer;
    font-size: 14px;
    transition: transform 0.3s ease;
    z-index: 10;
}

.navi .elementor-nav-menu--dropdown .menu-item-has-children.open::after {transform: rotate(180deg);}
.navi .elementor-nav-menu--dropdown .menu-item-has-children {position: relative;}

/* Overlay über body wenn Menu Toggle aktiv ist */
/* Overlay über body wenn Menu Toggle aktiv ist */
body:has(.navi .elementor-menu-toggle.elementor-active)::before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
    pointer-events: none;}

/* Menu Toggle Button über dem Overlay */
.navi .elementor-menu-toggle {position: relative; z-index: 1001;}

/* Navigation über dem Overlay */
.navi .elementor-nav-menu--dropdown {z-index: 1000;}
}




.randomBGImage {background-size:cover; background-repeat:no-repeat; background-position:center right;background-attachment: fixed;}



/* iOS Fix: Deaktiviert fixed background auf iOS-Geräten */
@supports (-webkit-overflow-scrolling: touch) {
    .randomBGImage {
        background-attachment: scroll;
    }
}

/* Alternative: Spezifischer iOS/Safari Fix */
@media screen and (-webkit-min-device-pixel-ratio: 1) and (max-device-width: 1024px) {
    .randomBGImage {
        background-attachment: scroll;
    }
}

/* Dein bestehender Mobile Fix */
@media (max-width: 767px) {
    .randomBGImage {
        background-position: center center;
        /* Zusätzlich: Stelle sicher, dass fixed auch hier deaktiviert ist */
        background-attachment: scroll;
    }
}
