/* ===============================
   GOOGLE FONTS
=================================*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600&display=swap');

/* ===============================
   RESET
=================================*/
*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Poppins',sans-serif;
color:#333;
line-height:1.7;
background:#fff;
}

.container{
width:90%;
max-width:1200px;
margin:0 auto;
}

.section{
padding:90px 0;
}

.light{
background:#f7f7f7;
}

h1,h2,h3{
font-weight:600;
}

h2{
text-align:center;
margin-bottom:40px;
color:#2d5a27;
font-size:2.2rem;
}

/* ===============================
   HEADER
=================================*/
.header{
background:#fff;
position:sticky;
top:0;
z-index:1000;
box-shadow:0 2px 8px rgba(0,0,0,0.05);
}

.header-inner{
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 0;
}

.logo-wrapper{
display:flex;
align-items:center;
gap:20px;
}

.logo{
height:65px;
}

.header-title{
font-weight:600;
font-size:1.2rem;
color:#000;
}

nav ul{
list-style:none;
display:flex;
gap:30px;
}

nav a{
text-decoration:none;
font-weight:500;
color:#2d5a27;
transition:0.3s;
}

nav a:hover{
color:#4CAF50;
}

.line-separator{
height:16px;
background:url("images/line-seperator-bg.png") repeat-x center;
}

/* ===============================
   HERO
=================================*/
.hero{
position:relative;
height:450px;
background:url("images/garten-bg-2.png") center/cover no-repeat;
display:flex;
align-items:center;
}

.hero-overlay{
position:absolute;
inset:0;
background:rgba(0,0,0,0.55);
}

.hero-content{
position:relative;
display:flex;
align-items:center;
gap:60px;
color:#fff;
z-index:2;
}

.hero-logo{
width:350px;
height:350px;
object-fit:contain;
}

.hero-text{
display:flex;
flex-direction:column;
align-items:flex-start;
}

.hero-text h1{
font-size:3.3rem;
margin-bottom:5px;
}

.hero-subline{
font-size:1.8rem;
margin-bottom:30px;
font-weight:400;
color:#fff;
}

.btn{
display:inline-block;
background:#4CAF50;
color:#fff;
padding:14px 30px;
border-radius:6px;
text-decoration:none;
font-weight:500;
transition:0.3s;
}

.btn:hover{
background:#3d9442;
}

/* ===============================
   TEXTBEREICHE
=================================*/

.about-text,
.kontakt-einleitung,
.projekt-text{
max-width:750px;
margin:0 auto 25px auto;
text-align:center;
font-size:1.15rem;
}

.about-signature{
text-align:center;
font-weight:600;
margin-top:20px;
font-size:1.2rem;
}

.legal-text{
max-width:900px;
margin:0 auto 25px auto;
text-align:left;
font-size:1.05rem;
}

/* ===============================
   LEISTUNGEN
=================================*/

.leistungen-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:25px;
}

.card{
background:#fff;
padding:25px;
border-radius:10px;
box-shadow:0 5px 15px rgba(0,0,0,0.05);
text-align:center;
transition:0.3s;
font-size:1.05rem;
}

.card:hover{
transform:translateY(-5px);
}

/* ===============================
   PROJEKTE
=================================*/

.projekt-wrapper{
display:flex;
align-items:center;
gap:60px;
}

.slider{
width:400px;
height:400px;
overflow:hidden;
border-radius:10px;
box-shadow:0 8px 25px rgba(0,0,0,0.15);
}

.slides{
display:flex;
transition:transform 0.8s ease;
}

.slides img{
width:400px;
height:400px;
object-fit:cover;
}

.projekt-separator{
height:16px;
background:url("images/line-seperator-bg.png") repeat-x center;
margin:30px 0;
}

/* ===============================
   FAQ BEREICH
=================================*/

#faq{
padding-top:80px;
padding-bottom:80px;
}

#faq h2{
text-align:center;
margin-bottom:20px;
}

/* Einleitung */

.faq-intro{
text-align:center;
max-width:720px;
margin:0 auto 40px auto;
font-size:1.05rem;
line-height:1.6;
}

/* zentrierte FAQ Box */

.faq-wrapper{
display:flex;
justify-content:center;
width:100%;
}

.faq-container{
width:100%;
max-width:650px;
background:#ffffff;
border:2px solid #e6e6e6;
border-radius:12px;
padding:30px;
box-shadow:0 10px 28px rgba(0,0,0,0.07);
}

/* einzelne Frage */

.faq-item{
margin-bottom:10px;
padding-bottom:10px;
border-bottom:1px solid #eaeaea;
}

.faq-item:last-child{
border-bottom:none;
margin-bottom:0;
}

/* Frage */

.faq-item summary{
font-size:1.1rem;
font-weight:600;
cursor:pointer;
padding:7px 34px 7px 0;
position:relative;
list-style:none;
display:flex;
align-items:center;
gap:12px;
color:#2d5a27;
line-height:1.4;
}

/* Standardmarker entfernen */

.faq-item summary::-webkit-details-marker{
display:none;
}

/* Pfeil */

.faq-item summary::after{
content:"▼";
position:absolute;
right:0;
font-size:0.8rem;
color:#4CAF50;
transition:transform 0.25s ease;
}

/* Rotation */

.faq-item[open] summary::after{
transform:rotate(180deg);
}

/* Icons */

.faq-item i{
color:#4CAF50;
font-size:1.05rem;
min-width:20px;
}

/* Antwort */

.faq-item p{
margin-top:8px;
font-size:1rem;
line-height:1.6;
color:#555;
}

/* ===============================
   KONTAKT
=================================*/

.kontakt-wrapper{
display:flex;
align-items:center;
gap:50px;
justify-content:center;
}

.profilbild{
width:200px;
height:200px;
border-radius:50%;
object-fit:cover;
box-shadow:0 6px 20px rgba(0,0,0,0.15);
}

.instagram-btn,
.whatsapp-btn{
display:block;
margin:12px 0;
padding:12px 24px;
border-radius:6px;
text-decoration:none;
color:#fff;
font-weight:500;
width:fit-content;
}

.instagram-btn{
background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);
}

.whatsapp-btn{
background:#25D366;
}

/* ===============================
   FLOATING WHATSAPP
=================================*/

.floating-whatsapp{
position:fixed;
right:20px;
bottom:20px;
background:#25D366;
color:#fff;
width:60px;
height:60px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
font-size:26px;
box-shadow:0 6px 20px rgba(0,0,0,0.2);
z-index:999;
}

/* ===============================
   FOOTER
=================================*/

.footer-bg{
background:url("images/impressum-bg.png") center/cover no-repeat;
padding:40px 0;
color:#fff;
}

.footer-inner{
display:flex;
justify-content:space-between;
align-items:center;
}

.footer-link{
color:#fff;
text-decoration:none;
}

/* ===============================
   RESPONSIVE
=================================*/

@media(max-width:900px){

.header-title{
display:none;
}

.leistungen-grid{
grid-template-columns:1fr 1fr;
}

.hero-content{
flex-direction:column;
text-align:center;
gap:25px;
}

.hero-logo{
width:220px;
height:220px;
}

.hero-text{
align-items:center;
}

.projekt-wrapper{
flex-direction:column;
text-align:center;
}

.kontakt-wrapper{
flex-direction:column;
text-align:center;
}

.footer-inner{
flex-direction:column;
gap:15px;
text-align:center;
}

}