/* GrünRaum Landschaftsbau — organic, earthy. Serif/sans mix. */
@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,500;0,600;1,500&family=Nunito+Sans:wght@400;600;700&display=swap');
:root{
  --leaf:#4f6f3a; --leaf-d:#3a5429; --moss:#6b8e4e; --clay:#b5704a;
  --sand:#f3eee3; --cream:#faf7f0; --ink:#2c3327; --muted:#71795f; --white:#fff;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Nunito Sans',sans-serif;background:var(--cream);color:var(--ink);line-height:1.7}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:'Lora',serif;font-weight:600;line-height:1.15}
.container{max-width:1120px;margin:0 auto;padding:0 24px}
.btn{display:inline-block;background:var(--leaf);color:#fff;padding:14px 30px;border-radius:6px;font-weight:700;transition:.25s;border:none;cursor:pointer}
.btn:hover{background:var(--leaf-d)}
.btn-out{background:transparent;border:2px solid var(--leaf);color:var(--leaf)}
.btn-out:hover{background:var(--leaf);color:#fff}

/* header */
.head{background:var(--cream);border-bottom:1px solid #e6e0d2;position:sticky;top:0;z-index:50}
.head .container{display:flex;align-items:center;justify-content:space-between;height:80px}
.brand{display:flex;align-items:center;gap:10px;font-family:'Lora',serif;font-weight:600;font-size:1.45rem;color:var(--leaf-d)}
.brand .leaf{font-size:1.5rem}
.nav{display:flex;gap:28px;align-items:center}
.nav a{font-weight:600;color:var(--muted)}
.nav a:hover,.nav a.cur{color:var(--leaf)}
.nav .btn{color:#fff}
.tog{display:none;background:none;border:none;font-size:1.6rem;color:var(--ink)}

/* hero */
.hero{position:relative}
.hero .container{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:80px 24px}
.hero h1{font-size:3.4rem;margin-bottom:22px;color:var(--ink)}
.hero h1 span{color:var(--clay);font-style:italic}
.hero p{font-size:1.18rem;color:var(--muted);margin-bottom:30px;max-width:480px}
.hero .pic{border-radius:14px;overflow:hidden;box-shadow:0 24px 50px -24px rgba(44,51,39,.45)}
.hero .pic img{width:100%;height:480px;object-fit:cover}
.kicker{display:inline-block;font-family:'Nunito Sans';font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--moss);font-size:.8rem;margin-bottom:16px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}

/* values strip */
.values{background:var(--sand)}
.values .container{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding:54px 24px}
.value{text-align:center}
.value .ic{font-size:2.2rem;margin-bottom:12px}
.value h3{font-size:1.25rem;margin-bottom:8px}
.value p{color:var(--muted);font-size:.96rem}

/* sections */
.sec{padding:84px 0}
.sec-head{max-width:620px;margin:0 auto 52px;text-align:center}
.sec-head h2{font-size:2.5rem;margin:8px 0 12px}
.sec-head p{color:var(--muted)}

/* services */
.svc{display:grid;grid-template-columns:repeat(2,1fr);gap:30px}
.svc-card{display:flex;gap:22px;background:#fff;border:1px solid #ece6d8;border-radius:14px;padding:30px}
.svc-card .n{font-family:'Lora';font-style:italic;font-size:2rem;color:var(--clay);line-height:1}
.svc-card h3{font-size:1.3rem;margin-bottom:8px}
.svc-card p{color:var(--muted);font-size:.96rem}

/* feature split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.split img{border-radius:14px;height:440px;width:100%;object-fit:cover}
.split h2{font-size:2.2rem;margin-bottom:18px}
.split p{color:var(--muted);margin-bottom:14px}
.leaf-list{list-style:none;margin-top:16px}
.leaf-list li{padding:9px 0 9px 32px;position:relative;color:var(--ink)}
.leaf-list li:before{content:"🌿";position:absolute;left:0}

/* gallery masonry-ish */
.gallery{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:200px;gap:14px}
.gallery img{width:100%;height:100%;object-fit:cover;border-radius:12px}
.gallery .tall{grid-row:span 2}

/* cta */
.invite{background:var(--leaf-d);color:#fff;border-radius:18px;padding:60px;text-align:center;background-image:linear-gradient(rgba(58,84,41,.92),rgba(58,84,41,.92)),url(img/path.jpg);background-size:cover;background-position:center}
.invite h2{font-size:2.4rem;margin-bottom:14px;color:#fff}
.invite p{margin-bottom:26px;opacity:.92}
.invite .btn{background:var(--sand);color:var(--leaf-d)}
.invite .btn:hover{background:#fff}

/* footer */
.foot{background:var(--ink);color:#b7bdab;padding:60px 0 24px}
.fgrid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px;margin-bottom:38px}
.fgrid h4{color:#fff;font-family:'Lora';margin-bottom:14px}
.fgrid a{display:block;padding:5px 0}
.fgrid a:hover{color:var(--moss)}
.fbot{border-top:1px solid #3a4234;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:.85rem;color:#8b937e}

/* form */
.formcard{max-width:720px;margin:0 auto;background:#fff;border:1px solid #ece6d8;border-radius:16px;padding:42px}
.f{margin-bottom:18px}
.f label{display:block;font-weight:700;margin-bottom:7px;font-size:.92rem}
.f input,.f textarea,.f select{width:100%;padding:13px;border:1.5px solid #e3ddcf;border-radius:8px;font:inherit;background:var(--cream)}
.f input:focus,.f textarea:focus{outline:none;border-color:var(--leaf)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}

/* contact */
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:46px}
.cinf{background:var(--sand);border-radius:14px;padding:30px;text-align:center}
.cinf .ic{font-size:1.8rem;margin-bottom:8px}
.cinf h3{margin-bottom:6px}
.cinf a:hover{color:var(--leaf)}

/* legal */
.legal{max-width:820px;margin:0 auto}
.legal h1{font-size:2.6rem;margin-bottom:22px}
.legal h2{font-size:1.4rem;margin:30px 0 12px;color:var(--leaf)}
.legal p,.legal li{color:var(--muted);margin-bottom:12px}
.legal ul{padding-left:22px}
.crumb{padding:24px 0 0;font-size:.86rem;color:var(--muted)}
.crumb a{color:var(--leaf)}

/* cookie */
.cookie{position:fixed;bottom:18px;left:18px;right:18px;max-width:600px;margin:0 auto;background:var(--ink);color:#dbe0d2;border-radius:14px;padding:24px;z-index:90;display:none}
.cookie.show{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:space-between}
.cookie p{font-size:.9rem;max-width:380px}
.cookie a{color:var(--moss)}
.cookie .row{display:flex;gap:10px}

@media(max-width:920px){
  .hero .container{grid-template-columns:1fr}
  .hero h1{font-size:2.5rem}
  .values .container,.svc,.gallery,.cgrid,.two{grid-template-columns:1fr}
  .gallery .tall{grid-row:auto}
  .split{grid-template-columns:1fr}
  .fgrid{grid-template-columns:1fr 1fr}
  .nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);flex-direction:column;padding:16px 24px;border-bottom:1px solid #e6e0d2}
  .nav.open{display:flex}
  .tog{display:block}
  .invite{padding:40px 24px}
}
