/*
Theme Name: LB Garten&Pflege
Author: LB Garten&Pflege
Description: Professionelles Gartenpflege-Theme mit integriertem Buchungssystem.
Version: 1.4
Text Domain: lb-gartenpflege
*/
:root{--g:#173f2a;--g2:#3f7d4a;--lg:#e5efdf;--cream:#f7f5ed;--white:#fff;--text:#1b251e;--muted:#687268;--shadow:0 18px 50px rgba(23,63,42,.12);--r:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--cream);color:var(--text);line-height:1.65}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:min(1160px,92%);margin:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(247,245,237,.94);backdrop-filter:blur(14px);border-bottom:1px solid #173f2a12}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;gap:11px;align-items:center;color:var(--g);font-weight:900}.logo-mark{width:40px;height:40px;border-radius:50% 50% 50% 8px;background:var(--g);display:grid;place-items:center;color:white}.menu{display:flex;align-items:center;gap:26px;font-weight:700}.menu a:hover{color:var(--g2)}.mobile-toggle{display:none;border:0;background:none;font-size:1.7rem}
.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:999px;padding:13px 22px;font-weight:800;cursor:pointer;transition:.2s}.btn-primary{background:var(--g);color:#fff;box-shadow:0 9px 22px #173f2a2e}.btn-primary:hover{transform:translateY(-2px)}.btn-light{background:#fff;color:var(--g)}
.hero{min-height:680px;display:flex;align-items:center;background:linear-gradient(90deg,#0c2618d9,#0c26184d),url("assets/images/hero.svg") center/cover}.hero-inner{color:#fff;padding:100px 0;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.82rem;font-weight:900;color:#bcd8b3}h1,h2,h3{line-height:1.12;letter-spacing:-.025em}h1{font-size:clamp(2.8rem,6vw,5.2rem);margin:12px 0 18px}h2{font-size:clamp(2rem,4vw,3.2rem);color:var(--g);margin:0 0 18px}h3{color:var(--g);margin:0 0 12px}.hero p{font-size:1.15rem;max-width:650px;margin-bottom:30px}.section{padding:95px 0}.section-head{max-width:730px;margin-bottom:42px}.section-head p,.card p{color:var(--muted)}.grid{display:grid;gap:22px}.services{grid-template-columns:repeat(4,1fr)}.card{background:#fff;padding:30px;border-radius:var(--r);border:1px solid #173f2a12;box-shadow:var(--shadow)}.icon{font-size:2rem;margin-bottom:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.image-card{overflow:hidden;border-radius:30px;box-shadow:var(--shadow)}.image-card img{width:100%;min-height:430px;object-fit:cover}.checks{list-style:none;padding:0;display:grid;gap:12px}.checks li:before{content:"✓";display:inline-grid;place-items:center;width:25px;height:25px;margin-right:10px;border-radius:50%;background:var(--lg);color:var(--g);font-weight:900}
.gallery{grid-template-columns:repeat(3,1fr)}.gallery img{width:100%;height:280px;object-fit:cover;border-radius:20px}.cta{text-align:center;background:var(--lg)}
.booking-wrap{background:var(--g);border-radius:32px;padding:48px;color:#fff;box-shadow:var(--shadow)}.booking-wrap h2{color:#fff}.booking-wrap p{color:#dcebdd}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.calendar{background:#fff;color:var(--text);padding:25px;border-radius:22px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.calendar-head button{border:0;background:var(--lg);width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:1.1rem}.calendar-title{font-weight:900;color:var(--g)}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-week div{text-align:center;font-size:.75rem;font-weight:800;color:var(--muted);padding:6px 0}.day{border:0;background:transparent;border-radius:12px;min-height:42px;cursor:pointer;font-weight:700}.day:hover{background:var(--lg)}.day.disabled{color:#c5cac5;cursor:not-allowed}.day.selected{background:var(--g);color:#fff}.times{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.time-slot{border:1px solid #ffffff40;background:#ffffff1a;color:#fff;padding:10px 15px;border-radius:999px;cursor:pointer;font-weight:750}.time-slot.selected,.time-slot:hover{background:#fff;color:var(--g)}.form{display:grid;gap:14px}.form input,.form select,.form textarea{width:100%;border:0;border-radius:13px;padding:13px 15px;font:inherit}.form textarea{min-height:110px;resize:vertical}.notice{padding:13px 15px;border-radius:12px;background:#ffffff1c;margin-bottom:15px}
.page-hero{background:var(--g);color:#fff;padding:100px 0}.page-hero h1{margin:10px 0}.footer{background:#102b1d;color:#dfe9df;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer h3{color:#fff}.footer-bottom{margin-top:35px;padding-top:20px;border-top:1px solid #ffffff1f;color:#aebdb0;font-size:.9rem}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.contact-box{background:#fff;border-radius:22px;padding:30px}
@media(max-width:900px){.services{grid-template-columns:repeat(2,1fr)}.split,.booking-grid,.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.mobile-toggle{display:block}.menu{display:none;position:absolute;top:70px;left:4%;right:4%;background:#fff;border-radius:18px;padding:20px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.menu.open{display:flex}}
@media(max-width:600px){.services,.gallery,.footer-grid{grid-template-columns:1fr}.hero{min-height:610px}.hero-inner{padding:75px 0}.section{padding:70px 0}.booking-wrap{padding:25px}.calendar{padding:16px}}

.card{transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-5px);box-shadow:0 24px 60px rgba(23,63,42,.16)}
.hero .btn{margin-bottom:8px}.floating-contact{position:fixed;right:20px;bottom:20px;z-index:90;display:flex;gap:10px}.floating-contact a{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--g);color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.18);font-size:1.3rem}
@media(max-width:600px){.floating-contact{right:14px;bottom:14px}.floating-contact a{width:48px;height:48px}}

.legal-page .narrow{max-width:860px}.legal-page h1{font-size:clamp(2.2rem,5vw,4rem);margin-bottom:2rem}.legal-page h2{margin-top:2.4rem;color:var(--g)}.legal-page p{line-height:1.8;color:#46564c}.legal-note{margin-top:2rem;padding:18px 20px;background:var(--lg);border-radius:14px}
