:root{--bg:#f5f7f4;--ink:#17211b;--muted:#68736c;--brand:#2e6d4b;--brand2:#143c2a;--card:#fff;--line:#dce3de;--radius:22px;--shadow:0 20px 60px rgba(19,43,30,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}img{max-width:100%;display:block}a{color:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.narrow{max-width:780px}.site-header{position:sticky;top:0;z-index:20;background:rgba(245,247,244,.9);backdrop-filter:blur(12px);border-bottom:1px solid rgba(220,227,222,.8)}.nav-wrap{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--brand);color:#fff}.nav{display:flex;align-items:center;gap:28px}.nav a{text-decoration:none;font-size:.95rem;font-weight:650}.language-switch{display:flex;align-items:center;gap:3px;border:1px solid var(--line);padding:3px;border-radius:999px;background:rgba(255,255,255,.7)}.lang{display:inline-flex;align-items:center;justify-content:center;min-width:38px;padding:5px 9px;border-radius:999px;text-decoration:none!important}.lang.active{background:var(--brand);color:#fff}.nav-toggle{display:none}.hero{position:relative;min-height:72vh;display:grid;align-items:end;color:#fff;overflow:hidden}.hero-img,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-img{transform:scale(1.02)}.hero-shade{background:linear-gradient(90deg,rgba(12,28,18,.86),rgba(12,28,18,.38) 62%,rgba(12,28,18,.14))}.hero-content{position:relative;padding:110px 0 90px;max-width:900px;margin-left:max(20px,calc((100vw - 1160px)/2))}.hero h1{font-size:clamp(2.7rem,7vw,5.8rem);line-height:.98;letter-spacing:-.055em;margin:.15em 0 .3em;max-width:980px}.hero p:not(.eyebrow){font-size:1.2rem;max-width:700px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;font-weight:800;margin:0 0 14px;color:#cce7d8}.eyebrow.dark{color:var(--brand)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:13px 20px;border:0;border-radius:999px;background:var(--brand);color:#fff;text-decoration:none;font-weight:800;cursor:pointer}.btn:hover{background:var(--brand2)}.btn.ghost{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.5)}.btn.light{background:#fff;color:var(--brand2)}.section{padding:96px 0}.section.alt{background:#edf1ee}.split{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:start}h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05;letter-spacing:-.04em;margin:.1em 0 .6em}h3{font-size:1.2rem;margin:.3em 0}.feature-card{background:var(--brand2);color:#fff;border-radius:var(--radius);padding:18px;display:grid;grid-template-columns:1fr 1fr;box-shadow:var(--shadow)}.feature-card div{padding:26px;border:1px solid rgba(255,255,255,.1)}.feature-card strong{display:block;font-size:1.6rem}.feature-card span{color:#c9d8cf;font-size:.9rem}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}.cards article{background:var(--card);padding:28px;border-radius:18px;border:1px solid var(--line)}.icon{font-size:2rem;color:var(--brand);font-weight:700}.cards p{color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:12px}.photo{border:0;padding:0;border-radius:16px;overflow:hidden;cursor:zoom-in;background:#ddd}.photo img{width:100%;height:100%;object-fit:cover;transition:.3s}.photo:hover img{transform:scale(1.04)}.photo.wide{grid-column:span 2}.photo.tall{grid-row:span 2}.contact-grid{align-items:start}.contact-form{background:#fff;padding:30px;border-radius:var(--radius);border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:16px;box-shadow:0 10px 40px rgba(25,45,32,.06)}.contact-form label{display:grid;gap:7px;font-weight:700;font-size:.9rem}.contact-form label:nth-of-type(4),.contact-form .check,.contact-form .btn{grid-column:1/-1}.contact-form input,.contact-form textarea{width:100%;font:inherit;border:1px solid #cbd5ce;border-radius:12px;padding:12px 14px;background:#fff}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid rgba(46,109,75,.14);border-color:var(--brand)}.check{display:flex!important;grid-template-columns:auto 1fr;align-items:start;font-weight:500!important}.check input{width:auto;margin-top:5px}.hp{position:absolute;left:-9999px}.privacy-note{font-size:.92rem;color:var(--muted)}.footer{padding:50px 0 25px;background:#0e1a13;color:#e6eee9}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer nav{display:flex;gap:20px}.footer a{color:#e6eee9}.copyright{border-top:1px solid rgba(255,255,255,.1);margin-top:24px;padding-top:20px;color:#8fa297;font-size:.86rem}dialog{border:0;padding:0;background:transparent;max-width:min(1100px,92vw)}dialog::backdrop{background:rgba(0,0,0,.82)}dialog img{max-height:88vh;border-radius:14px}.close{position:fixed;right:24px;top:18px;border:0;background:#fff;width:44px;height:44px;border-radius:50%;font-size:28px;cursor:pointer}.legal{padding:80px 0}.legal article{max-width:850px;background:#fff;padding:42px;border-radius:22px;border:1px solid var(--line)}.legal h1{font-size:3rem;letter-spacing:-.04em}.notice{border-left:4px solid #d98b1e;padding:14px 18px;background:#fff6e8;border-radius:8px}.back{display:inline-block;margin-bottom:25px}
@media(max-width:850px){.nav-toggle{display:block;border:1px solid var(--line);background:#fff;padding:8px 11px;border-radius:10px}.nav{display:none;position:absolute;top:74px;left:20px;right:20px;background:#fff;padding:20px;border-radius:16px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.nav.open{display:flex}.split{grid-template-columns:1fr;gap:35px}.cards{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.hero-content{margin-left:20px}.contact-form{grid-template-columns:1fr}.contact-form label{grid-column:1/-1}.footer-grid{flex-direction:column}}@media(max-width:520px){.wrap{width:min(100% - 28px,1160px)}.section{padding:68px 0}.cards{grid-template-columns:1fr}.gallery{grid-auto-rows:180px}.photo.wide{grid-column:span 2}.feature-card{grid-template-columns:1fr}.hero{min-height:78vh}.hero h1{font-size:3rem}.contact-form{padding:20px}.legal article{padding:24px}.legal h1{font-size:2.4rem}}

.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:100;background:rgba(14,26,19,.97);color:#fff;border-top:1px solid rgba(255,255,255,.14);box-shadow:0 -12px 40px rgba(0,0,0,.2)}.cookie-banner[hidden]{display:none}.cookie-banner-inner{width:min(1160px,calc(100% - 40px));margin:auto;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:28px}.cookie-banner strong{font-size:1.05rem}.cookie-banner p{margin:5px 0 0;color:#d7e2da;font-size:.92rem;max-width:800px;line-height:1.5}.cookie-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}.cookie-link{color:#fff;font-weight:700;text-underline-offset:3px}.cookie-ok{white-space:nowrap;background:#fff;color:var(--brand2);padding:10px 17px}.cookie-ok:hover{background:#edf1ee;color:var(--brand2)}@media(max-width:720px){.cookie-banner-inner{width:min(100% - 28px,1160px);align-items:flex-start;flex-direction:column;gap:14px;padding:18px 0}.cookie-actions{width:100%;justify-content:space-between}.cookie-ok{min-width:120px}}


/* Sichtbarer Spamschutz im Kontaktformular */
.captcha-box{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.06)}
.captcha-box p{margin:.2rem 0 0;font-size:.9rem;opacity:.8}
.captcha-task{display:flex;align-items:center;gap:.75rem;white-space:nowrap;font-weight:700}
.captcha-task input[type=number]{width:88px;min-height:44px;text-align:center;font-size:1.05rem}
@media (max-width:640px){.captcha-box{align-items:flex-start;flex-direction:column}.captcha-task{width:100%;justify-content:space-between}.captcha-task input[type=number]{width:100px}}
