:root{--green:#2f6c2f;--green2:#5f8f3f;--dark:#1f2a21;--ink:#273129;--muted:#6d766f;--sand:#f3f0e8;--line:#dfe4dd;--white:#fff;--shadow:0 18px 50px rgba(27,45,29,.12);--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55}a{color:inherit}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.narrow{max-width:760px}img{max-width:100%;display:block}.ico{width:1.05em;height:1.05em;vertical-align:-.12em;flex:none}.topbar{background:var(--dark);color:#eaf1e9;font-size:.88rem}.topbar-in{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-in>div{display:flex;gap:18px}.topbar a{text-decoration:none;display:inline-flex;align-items:center;gap:7px}.site-head{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(30,45,32,.08)}.navrow{height:92px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo img{width:220px;max-height:70px;object-fit:contain}.navrow nav{display:flex;align-items:center;gap:8px}.navrow nav a{padding:11px 16px;border-radius:999px;text-decoration:none;font-weight:700;color:#354238}.navrow nav a:hover,.navrow nav a.active{background:#edf4e9;color:var(--green)}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:12px;font-weight:700}.hero{min-height:610px;background-image:var(--hero);background-size:cover;background-position:center;position:relative;color:#fff;display:grid;align-items:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,31,19,.86) 0%,rgba(16,31,19,.68) 46%,rgba(16,31,19,.14) 100%)}.hero-inner{position:relative;z-index:1}.hero-copy{max-width:720px;padding:90px 0}.kicker,.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:800;color:var(--green2)}.hero .kicker{color:#cfe6be}.hero h1{font-size:clamp(2.6rem,5vw,5.25rem);line-height:.98;margin:.16em 0 .3em;max-width:850px}.hero p{font-size:1.22rem;max-width:720px;color:#f0f4ef}.actions,.cta-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;border-radius:999px;text-decoration:none;border:1px solid transparent;font-weight:800;cursor:pointer;font-size:.98rem}.btn.primary{background:var(--green2);color:#fff}.btn.primary:hover{background:#4f7c33}.btn.ghost{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.55);color:#fff}.btn.dark{background:var(--dark);color:#fff}.btn.white{background:#fff;color:var(--dark)}.btn.outline{border-color:#b9c4b9;color:var(--dark);background:#fff}.service-strip{padding:72px 0;background:#fff}.section{padding:90px 0}.section.alt{background:var(--sand)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.section-head.compact{margin-bottom:28px}.section-head h2,.section h2,.cta h2{font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.08;margin:.2em 0}.section-head p{max-width:720px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:24px;text-decoration:none;transition:.2s;background:#fff;min-height:260px;display:flex;flex-direction:column}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#c4d8bd}.service-icon{width:54px;height:54px;border-radius:16px;background:#edf4e9;color:var(--green);display:grid;place-items:center}.service-icon .ico{width:28px;height:28px}.service-icon.big{width:66px;height:66px}.service-card h3{font-size:1.25rem;margin:18px 0 7px}.service-card p{margin:0;color:var(--muted)}.more,.text-link{margin-top:auto;padding-top:18px;color:var(--green);font-weight:800;display:inline-flex;align-items:center;gap:8px;text-decoration:none}.split{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.split.reverse>:first-child{order:1}.lead{font-size:1.15rem;color:#58625b}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.facts div{padding:18px;border-radius:16px;background:#f5f7f3;border:1px solid #e2e7df}.facts strong{display:block;font-size:1.25rem;color:var(--dark)}.facts span{font-size:.88rem;color:var(--muted)}.image-stack{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;align-items:end}.image-stack img,.media-frame img{width:100%;height:440px;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.image-stack img:last-child{height:320px}.gallery-teaser{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-teaser a{overflow:hidden;border-radius:18px}.gallery-teaser img{width:100%;height:260px;object-fit:cover;transition:.3s}.gallery-teaser a:hover img{transform:scale(1.035)}.cta{background:var(--green);color:#fff;padding:70px 0}.cta-in{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{max-width:760px;margin-bottom:0}.eyebrow.light{color:#d5e8cb}.pagehero{background:linear-gradient(120deg,#243b27,#5f8f3f);color:#fff;padding:78px 0}.pagehero.small{padding:54px 0}.pagehero h1{font-size:clamp(2.5rem,4.5vw,4.6rem);line-height:1.02;margin:.2em 0}.pagehero p{font-size:1.15rem;max-width:760px;color:#edf4ea}.services-detail{display:grid;gap:54px}.service-detail{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center;padding-bottom:54px;border-bottom:1px solid var(--line);scroll-margin-top:120px}.service-detail:nth-child(even) .service-photo{order:2}.service-photo img{width:100%;height:360px;object-fit:cover;border-radius:var(--radius)}.gallery-grid{columns:4 220px;column-gap:12px}.gallery-item{display:block;border:0;background:none;padding:0;margin:0 0 12px;width:100%;cursor:zoom-in;break-inside:avoid;border-radius:14px;overflow:hidden}.gallery-item img{width:100%;height:auto;transition:.25s}.gallery-item:hover img{transform:scale(1.025)}.lightbox{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.9);display:grid;place-items:center;padding:40px}.lightbox[hidden]{display:none}.lightbox img{max-width:min(1500px,95vw);max-height:90vh;object-fit:contain}.lightbox-close{position:absolute;right:24px;top:18px;font-size:42px;color:#fff;background:none;border:0;cursor:pointer}.contact-layout{display:grid;grid-template-columns:360px 1fr;gap:60px;align-items:start}.contact-card{background:var(--dark);color:#fff;padding:30px;border-radius:var(--radius);position:sticky;top:125px}.contact-card img{background:#fff;border-radius:12px;padding:8px;margin-bottom:24px}.contact-card a{color:#fff;text-decoration:none}.contact-lines{display:grid;gap:12px}.contact-lines a{display:flex;align-items:center;gap:9px}.contact-card hr{border:0;border-top:1px solid rgba(255,255,255,.16);margin:24px 0}.contact-form{display:grid;gap:18px}.contact-form label{display:grid;gap:7px;font-weight:700}.contact-form input,.contact-form textarea{width:100%;border:1px solid #cbd3cb;border-radius:12px;padding:13px 14px;font:inherit;background:#fff}.contact-form textarea{min-height:170px;resize:vertical}.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.check{grid-template-columns:auto 1fr!important;align-items:start;font-weight:400!important}.check input{width:auto;margin-top:4px}.hp{position:absolute;left:-10000px}.notice{padding:15px 17px;border-radius:14px;margin:0 0 20px}.notice.ok{background:#e6f5e5;border:1px solid #b7ddb3}.notice.warn{background:#fff4d9;border:1px solid #ecd497}.legal{max-width:850px}.legal h2{font-size:1.45rem;margin-top:2rem}.footer{background:#172019;color:#dbe3da;padding:58px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}.footer h3{color:#fff}.footer a{color:#dbe3da;text-decoration:none}.footer-logo{width:210px;background:#fff;padding:8px;border-radius:10px}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);padding-top:22px;margin-top:38px;color:#98a49a}.text-link .ico,.more .ico,.btn .ico{width:18px;height:18px}
@media(max-width:900px){.topbar-in>span{display:none}.navrow{height:78px}.logo img{width:180px}.nav-toggle{display:block}.navrow nav{display:none;position:absolute;left:20px;right:20px;top:80px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.navrow nav.open{display:flex}.navrow nav a{display:block}.hero{min-height:540px}.service-grid{grid-template-columns:repeat(2,1fr)}.split,.service-detail,.contact-layout{grid-template-columns:1fr}.split{gap:34px}.split.reverse>:first-child,.service-detail:nth-child(even) .service-photo{order:0}.contact-card{position:static}.gallery-teaser{grid-template-columns:repeat(2,1fr)}.cta-in{display:block}.footer-grid{grid-template-columns:1fr 1fr}.facts{grid-template-columns:1fr}.image-stack img{height:360px}.image-stack img:last-child{height:250px}}
@media(max-width:620px){.wrap{width:min(100% - 26px,1180px)}.topbar-in{justify-content:center}.topbar-in>div{gap:10px;font-size:.8rem}.topbar-in a:last-child{display:none}.hero-copy{padding:70px 0}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.section{padding:64px 0}.service-strip{padding:56px 0}.section-head{display:block}.section-head>a{margin-top:14px}.gallery-teaser{grid-template-columns:1fr 1fr}.gallery-teaser img{height:170px}.row2{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.cta{padding:54px 0}.image-stack{grid-template-columns:1fr}.image-stack img,.image-stack img:last-child{height:280px}.service-photo img{height:260px}.gallery-grid{columns:2 150px}.pagehero{padding:58px 0}.logo img{width:160px}}

/* V1-Startseitenrichtung: dunkler Kopf, klare Fotokacheln */
.site-head{background:rgba(27,38,30,.98);border-bottom:1px solid rgba(255,255,255,.08)}
.navrow nav a{color:#edf3ee}.navrow nav a:hover,.navrow nav a.active{background:#6fae31;color:#fff}
.nav-toggle{background:#243027;color:#fff;border-color:#465449}.logo img{filter:none}.home-v1{min-height:590px}.home-v1 .hero-shade{background:linear-gradient(90deg,rgba(18,30,20,.88) 0%,rgba(18,30,20,.68) 47%,rgba(18,30,20,.08) 100%)}
.hero-points{display:flex;flex-wrap:wrap;gap:9px 18px;margin-top:22px;font-weight:700;color:#eef6e8}.hero-points span{display:inline-flex;align-items:center;gap:5px}
.photo-cards{grid-template-columns:repeat(6,1fr);gap:12px}.service-card.photo{position:relative;padding:0;min-height:315px;overflow:hidden;background:#172019;border:0;color:#fff}.service-card.photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.service-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,20,14,.03) 32%,rgba(12,20,14,.9) 100%)}.service-card.photo .service-icon{position:absolute;left:14px;top:14px;background:rgba(22,35,25,.78);color:#b7ec78;backdrop-filter:blur(5px);z-index:2;width:46px;height:46px}.service-card-copy{position:relative;z-index:2;margin-top:auto;padding:150px 15px 17px;min-height:100%;display:flex;flex-direction:column;justify-content:flex-end}.service-card.photo h3{font-size:1.08rem;margin:0 0 6px}.service-card.photo p{font-size:.85rem;line-height:1.35;color:#edf2ec;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.service-card.photo .more{color:#b8e784;padding-top:10px;font-size:.82rem}.service-card.photo:hover{transform:translateY(-4px);box-shadow:var(--shadow)}

/* Vorher/Nachher */
.ba-home{background:#fff}.ba-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 10px 35px rgba(28,45,30,.08)}.ba-stage{position:relative;aspect-ratio:16/8.5;overflow:hidden;background:#dfe4dd;--ba-pos:50%}.ba-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;pointer-events:none}.ba-after{clip-path:inset(0 calc(100% - var(--ba-pos)) 0 0)}.ba-line{position:absolute;z-index:4;top:0;bottom:0;left:var(--ba-pos);width:3px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.18);transform:translateX(-1px);pointer-events:none}.ba-line:after{content:'↔';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:46px;height:46px;border-radius:50%;background:#fff;color:#27442b;display:grid;place-items:center;font-weight:900;box-shadow:0 4px 18px rgba(0,0,0,.25)}.ba-range{position:absolute;z-index:5;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;touch-action:none}.ba-label{position:absolute;z-index:3;bottom:18px;padding:7px 11px;border-radius:999px;background:rgba(20,31,22,.82);color:#fff;font-size:.82rem;font-weight:800;pointer-events:none}.ba-label.before{left:18px}.ba-label.after{right:18px}.ba-copy{padding:20px 22px}.ba-copy h3{margin:0 0 6px;font-size:1.25rem}.ba-copy p{margin:0;color:var(--muted)}.ba-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.ba-card.compact .ba-stage{aspect-ratio:4/3}.ba-card.compact .ba-copy{padding:16px}.ba-card.compact .ba-copy h3{font-size:1.05rem}

@media(max-width:1180px){.photo-cards{grid-template-columns:repeat(3,1fr)}.service-card.photo{min-height:300px}}
@media(max-width:900px){.site-head{background:#172019}.photo-cards{grid-template-columns:repeat(2,1fr)}.ba-grid{grid-template-columns:1fr}.ba-stage{aspect-ratio:4/3}.navrow nav{background:#172019;border-color:#3a493d}.navrow nav a{color:#fff}}
@media(max-width:620px){.home-v1{min-height:560px}.home-v1 .hero-copy{padding:60px 0}.home-v1 h1{font-size:clamp(2.4rem,11vw,3.5rem)}.hero-points{font-size:.9rem;display:grid;gap:7px}.photo-cards{grid-template-columns:1fr 1fr;gap:9px}.service-card.photo{min-height:245px;border-radius:16px}.service-card-copy{padding:120px 11px 12px}.service-card.photo h3{font-size:.96rem}.service-card.photo p{display:none}.service-card.photo .service-icon{width:40px;height:40px;left:10px;top:10px}.service-card.photo .service-icon .ico{width:22px;height:22px}.service-card.photo .more{font-size:.72rem}.ba-copy{padding:15px}.ba-label{bottom:10px}.ba-label.before{left:10px}.ba-label.after{right:10px}.ba-line:after{width:42px;height:42px}.service-strip{padding-top:46px}}

/* Website-Chat: eigener Posteingang, bewusst ohne externes Chat-SDK */
.webchat-launch{position:fixed;right:22px;bottom:20px;z-index:80;border:0;border-radius:999px;background:#65a934;color:#fff;box-shadow:0 12px 36px rgba(18,34,20,.26);padding:14px 18px;font:800 .95rem/1 system-ui,sans-serif;display:flex;align-items:center;gap:9px;cursor:pointer}.webchat-launch:hover{background:#57962b}.chat-dot{width:11px;height:11px;border-radius:50%;background:#dff7c9;box-shadow:0 0 0 4px rgba(223,247,201,.14)}.webchat{position:fixed;right:22px;bottom:82px;z-index:81;width:min(390px,calc(100vw - 28px));max-height:min(680px,calc(100vh - 105px));background:#f3f0e8;border:1px solid #d9dfd5;border-radius:22px;box-shadow:0 24px 70px rgba(18,32,20,.3);overflow:hidden;display:none}.webchat.open{display:flex;flex-direction:column}.webchat-head{background:#24452d;color:#fff;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.webchat-head strong,.webchat-head span{display:block}.webchat-head strong{font-size:1rem}.webchat-head span{font-size:.78rem;color:#cfe1cf;margin-top:2px}.webchat-close{border:0;background:rgba(255,255,255,.1);color:#fff;width:36px;height:36px;border-radius:50%;font-size:25px;line-height:1;cursor:pointer}.webchat-body{padding:15px;overflow:auto}.chat-bubble{max-width:86%;padding:11px 13px;border-radius:15px;font-size:.92rem;line-height:1.45;box-shadow:0 2px 8px rgba(0,0,0,.06)}.chat-bubble.business{background:#fff;border-bottom-left-radius:5px}.chat-quick{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.chat-quick button{border:1px solid #9ab991;background:#fff;color:#315a32;border-radius:999px;padding:8px 10px;font:700 .78rem system-ui,sans-serif;cursor:pointer}.chat-quick button:hover{background:#edf6e9}.webchat form{display:grid;gap:10px;margin-top:12px}.webchat form label{display:grid;gap:5px;font-size:.78rem;font-weight:800;color:#26392a}.webchat input,.webchat textarea{width:100%;border:1px solid #c7d0c4;border-radius:11px;background:#fff;padding:11px 12px;font:inherit;color:#172019}.webchat textarea{min-height:102px;resize:vertical}.webchat-send{border:0;border-radius:12px;background:#65a934;color:#fff;padding:13px 15px;font:800 .9rem system-ui,sans-serif;cursor:pointer}.webchat-send:disabled{opacity:.6;cursor:wait}.webchat form small{font-size:.7rem;line-height:1.4;color:#667267}.webchat form small a{color:#335b34}.webchat-status{font-size:.78rem;line-height:1.35;min-height:0}.webchat-status.ok{background:#e5f4df;color:#245226;border-radius:9px;padding:8px 9px}.webchat-status.warn{background:#fff0d2;color:#7c4f00;border-radius:9px;padding:8px 9px}.webchat-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
@media(max-width:620px){.webchat-launch{right:12px;bottom:12px;padding:13px 15px}.webchat{right:7px;bottom:68px;width:calc(100vw - 14px);max-height:calc(100dvh - 82px);border-radius:18px}.webchat-body{padding:13px}.webchat input,.webchat textarea{font-size:16px}.webchat textarea{min-height:120px}.chat-quick{display:grid;grid-template-columns:1fr}.chat-quick button{padding:10px;text-align:left}}

/* V7 – freigegebene Startseiten-Vorlage 1: pixelnah umgesetzt */
:root{--template-green:#7bc928;--template-dark:#172626;--template-panel:#173c2e;--template-card:#17282c}
.topbar{display:none!important}
.site-head{position:relative!important;top:auto!important;background:var(--template-dark)!important;border:0!important;border-bottom:2px solid #6fbd26!important;box-shadow:none!important;backdrop-filter:none!important}
.site-head .wrap{width:88.5vw!important;max-width:none!important}
.navrow{height:103px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:38px!important}
.public-logo{display:flex!important;align-items:center!important;text-decoration:none!important;flex:0 0 auto!important}
.public-logo img{width:min(470px,28vw)!important;height:auto!important;max-height:82px!important;object-fit:contain!important;object-position:left center!important}
.navrow nav{display:flex;align-items:center;gap:52px!important;margin-left:auto}
.navrow nav a{position:relative!important;padding:28px 0 30px!important;border-radius:0!important;background:none!important;color:#f5f6f4!important;font-size:1.23rem!important;line-height:1!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap}
.navrow nav a:hover{color:var(--template-green)!important;background:none!important}
.navrow nav a.active{color:var(--template-green)!important;background:none!important}
.navrow nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:20px;height:4px;background:linear-gradient(90deg,#8fe132,#6cb723);border-radius:1px}
.nav-toggle{display:none;border:1px solid rgba(255,255,255,.35)!important;background:transparent!important;color:#fff!important;padding:10px 14px!important;border-radius:7px!important;font-weight:800!important}

.hero-template1{height:530px;background-image:var(--hero);background-size:cover;background-position:center center;position:relative;overflow:hidden;display:block}
.hero-template1 .wrap{width:93.6vw!important;max-width:none!important;position:relative;height:100%;z-index:2}
.hero-template1-inner{padding-top:82px!important}
.hero-template1-banner{position:relative;width:min(1045px,67vw);min-height:170px;background:rgba(22,48,33,.82);padding:18px 120px 18px 46px;display:flex;align-items:center;box-shadow:none}
.hero-template1-banner h1{margin:0;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:clamp(3.5rem,4.05vw,4.25rem);line-height:1.04;letter-spacing:-.03em;font-weight:800;max-width:900px}
.hero-template1-slash{position:absolute;right:53px;top:-3px;width:14px;height:176px;background:#7bc928;transform:skew(-18deg);transform-origin:center}

.template1-services{background:#fff;padding:39px 0 47px!important}
.template1-services .wrap{width:94.8vw!important;max-width:none!important}
.template1-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
.template1-service-card{display:block!important;overflow:hidden!important;border-radius:9px!important;background:var(--template-card)!important;text-decoration:none!important;box-shadow:0 3px 8px rgba(15,25,20,.12)!important;transition:transform .18s ease,box-shadow .18s ease!important}
.template1-service-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(15,25,20,.19)!important}
.template1-service-card img{display:block!important;width:100%!important;height:165px!important;object-fit:cover!important;border:0!important;border-bottom:3px solid var(--template-green)!important;background:#d9dfd6!important}
.template1-service-card span{display:flex!important;min-height:58px!important;align-items:center!important;justify-content:center!important;padding:9px 6px!important;color:#fff!important;text-align:center!important;font-family:Arial,Helvetica,sans-serif!important;font-size:1.08rem!important;font-weight:800!important;line-height:1.08!important}
.ba-home{padding-top:68px!important}
.public-footer-logo{background:transparent!important;padding:0!important;width:310px!important}

@media(max-width:1180px){
  .site-head .wrap,.hero-template1 .wrap{width:92vw!important}
  .public-logo img{width:min(390px,34vw)!important}
  .navrow nav{gap:28px!important}
  .navrow nav a{font-size:1.05rem!important}
  .hero-template1-banner{width:min(920px,76vw)}
  .template1-grid{grid-template-columns:repeat(3,1fr)!important}
  .template1-service-card img{height:190px!important}
}
@media(max-width:900px){
  .navrow{height:82px!important}
  .site-head .wrap{width:calc(100% - 30px)!important}
  .public-logo img{width:280px!important;max-height:66px!important}
  .nav-toggle{display:block!important}
  .navrow nav{display:none;position:absolute;left:15px!important;right:15px!important;top:82px!important;z-index:50;background:#172626!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:10px!important;padding:10px 16px!important;box-shadow:0 20px 50px rgba(0,0,0,.28)!important;flex-direction:column;align-items:stretch;gap:0!important}
  .navrow nav.open{display:flex!important}
  .navrow nav a{padding:14px 4px!important;font-size:1rem!important}
  .navrow nav a.active:after{bottom:7px;height:3px}
  .hero-template1{height:500px}
  .hero-template1 .wrap{width:calc(100% - 32px)!important}
  .hero-template1-inner{padding-top:68px!important}
  .hero-template1-banner{width:min(790px,93vw);min-height:156px;padding:18px 92px 18px 28px}
  .hero-template1-banner h1{font-size:clamp(3rem,7vw,3.8rem)}
  .hero-template1-slash{right:35px;height:162px;width:12px}
  .template1-services .wrap{width:calc(100% - 30px)!important}
}
@media(max-width:620px){
  .navrow{height:74px!important}.public-logo img{width:230px!important;max-height:57px!important}
  .hero-template1{height:430px;background-position:55% center}
  .hero-template1 .wrap{width:calc(100% - 22px)!important}
  .hero-template1-inner{padding-top:48px!important}
  .hero-template1-banner{width:100%;min-height:0;padding:15px 45px 16px 17px;background:rgba(21,55,40,.84)}
  .hero-template1-banner h1{font-size:clamp(2.15rem,10.5vw,3.05rem);line-height:1.02}
  .hero-template1-slash{right:18px;top:-2px;width:8px;height:calc(100% + 4px)}
  .template1-services{padding:18px 0 34px!important}
  .template1-services .wrap{width:calc(100% - 22px)!important}
  .template1-grid{grid-template-columns:repeat(2,1fr)!important;gap:9px!important}
  .template1-service-card img{height:125px!important}
  .template1-service-card span{min-height:49px!important;font-size:.91rem!important;padding:8px 4px!important}
}

/* V8 – finale Angleichung an die freigegebene Vorlage */
.site-head .wrap{width:90vw!important}
.navrow{height:92px!important}
.public-logo img{width:min(500px,29vw)!important;max-height:72px!important}
.navrow nav{gap:54px!important}
.navrow nav a{font-size:1.20rem!important;padding:25px 0 27px!important}
.navrow nav a.active:after{bottom:16px!important;height:4px!important}

/* Der Referenz-Hero enthält die alte Textfläche bereits im Bild. Diese neue editierbare Fläche
   deckt sie vollständig ab; so bleibt der Text pflegbar, ohne Doppelungen im Bild. */
.hero-template1{height:530px!important;background-position:center center!important}
.hero-template1 .wrap{width:90vw!important}
.hero-template1-inner{padding-top:82px!important}
.hero-template1-banner{width:63vw!important;max-width:none!important;min-height:170px!important;padding:18px 112px 18px 46px!important;background:rgba(22,48,33,.82)!important}
.hero-template1-banner h1{font-size:clamp(3.45rem,4.02vw,4.22rem)!important;line-height:1.04!important;max-width:none!important;white-space:normal!important}
.hero-template1-slash{right:48px!important;top:-3px!important;width:14px!important;height:176px!important}

.template1-services{padding:39px 0 47px!important}
.template1-services .wrap{width:95vw!important}
.template1-grid{gap:12px!important}
.template1-service-card img{height:166px!important;background:#d9dfd6!important}
.template1-service-card span{min-height:59px!important;font-size:1.22rem!important;line-height:1.05!important}

@media(max-width:1180px){
  .site-head .wrap,.hero-template1 .wrap{width:92vw!important}
  .public-logo img{width:min(410px,34vw)!important}
  .hero-template1-banner{width:72vw!important}
}
@media(max-width:900px){
  .navrow{height:82px!important}
  .public-logo img{width:290px!important;max-height:62px!important}
  .hero-template1-banner{width:min(800px,94vw)!important}
  .hero-template1-banner h1{font-size:clamp(2.8rem,7vw,3.7rem)!important}
}
@media(max-width:620px){
  .navrow{height:74px!important}
  .public-logo img{width:235px!important;max-height:56px!important}
  .hero-template1{height:430px!important;background-position:55% center!important}
  .hero-template1 .wrap{width:calc(100% - 22px)!important}
  .hero-template1-inner{padding-top:48px!important}
  .hero-template1-banner{width:100%!important;padding:15px 45px 16px 17px!important;min-height:0!important}
  .hero-template1-banner h1{font-size:clamp(2.1rem,10.5vw,3rem)!important;line-height:1.02!important}
  .hero-template1-slash{right:18px!important;top:-2px!important;width:8px!important;height:calc(100% + 4px)!important}
  .template1-services .wrap{width:calc(100% - 22px)!important}
  .template1-service-card img{height:125px!important}
  .template1-service-card span{min-height:49px!important;font-size:.92rem!important}
}
/* V8.1 – Kopf wieder exakt auf die Proportion der Referenz */
.site-head .wrap{width:88.5vw!important}
.navrow{height:103px!important}
.public-logo img{width:min(470px,28vw)!important;max-height:82px!important}
.navrow nav{gap:52px!important}
.navrow nav a{font-size:1.23rem!important;padding:28px 0 30px!important}
.navrow nav a.active:after{bottom:20px!important;height:4px!important}
@media(max-width:1180px){.site-head .wrap{width:92vw!important}.public-logo img{width:min(390px,34vw)!important}}
@media(max-width:900px){.navrow{height:82px!important}.public-logo img{width:280px!important;max-height:66px!important}}
@media(max-width:620px){.navrow{height:74px!important}.public-logo img{width:230px!important;max-height:57px!important}}

/* V10: restore original hero transparency and remove slash */
.hero-template1-slash{display:none!important}
/* V11: clean hero photo; translucent banner is CSS only */
.hero-template1-banner{background:rgba(22,48,33,.82)!important}
.hero-template1-slash{display:none!important}
@media(max-width:620px){.hero-template1-banner{background:rgba(21,55,40,.84)!important}}

/* V13: sauber ausgerichtete Servicebilder */
.template1-service-card img{
  width:100%!important;
  height:166px!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  background:none!important;
  border-left:0!important;
  border-right:0!important;
  border-top:0!important;
  border-bottom:3px solid var(--template-green)!important;
}
@media(max-width:1180px){.template1-service-card img{height:180px!important}}
@media(max-width:620px){.template1-service-card img{height:125px!important}}

/* V14: Servicekarten nach neuer Gette-Vorlage – Foto sauber getrennt von UI */
.template1-service-card{
  border-radius:18px!important;
  background:linear-gradient(135deg,#17282c 0%,#0f2023 100%)!important;
  border:1px solid rgba(23,40,44,.16)!important;
  box-shadow:0 8px 22px rgba(15,25,20,.16)!important;
}
.template1-service-card:hover{
  transform:translateY(-4px)!important;
  box-shadow:0 15px 34px rgba(15,25,20,.24)!important;
}
.template1-service-card img{
  height:166px!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-bottom:4px solid #7bdc22!important;
  background:#dbe4d7!important;
}
.template1-service-card span{
  min-height:61px!important;
  padding:10px 8px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#17282c 0%,#0f2023 100%)!important;
  font-size:1.18rem!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
  text-shadow:0 1px 1px rgba(0,0,0,.25)!important;
}
@media(max-width:1180px){
  .template1-service-card img{height:180px!important}
  .template1-service-card span{min-height:60px!important;font-size:1.15rem!important}
}
@media(max-width:620px){
  .template1-service-card{border-radius:15px!important}
  .template1-service-card img{height:128px!important}
  .template1-service-card span{min-height:50px!important;font-size:.94rem!important;padding:8px 5px!important}
}

/* V15: neue Servicefotografie konsequent im Seitenlayout */
.image-stack-services img,.service-feature-photo img,.service-photo-new img{box-shadow:0 18px 44px rgba(15,29,20,.16)}
.image-stack-services img{border-bottom:4px solid var(--template-green,#74d400)}
.service-feature-photo{overflow:hidden;border-radius:var(--radius);border-bottom:4px solid var(--template-green,#74d400);box-shadow:0 18px 44px rgba(15,29,20,.16)}
.service-feature-photo img{box-shadow:none!important;border-radius:0!important}
.service-photo-new{overflow:hidden;border-radius:var(--radius);border-bottom:4px solid var(--template-green,#74d400);box-shadow:0 14px 34px rgba(15,29,20,.13)}
.service-photo-new img{border-radius:0!important;box-shadow:none!important}

/* V18: Backend-gesteuerte Hero-Texte, regionaler Titel in zwei Zeilen */
.hero-template1-banner{display:flex!important;align-items:center!important;box-sizing:border-box!important;width:min(1180px,90vw)!important;min-height:205px!important;padding:23px 35px!important;}
.hero-template1-copy{width:100%;min-width:0}
.hero-template1-eyebrow{color:#b8e88e;font-size:clamp(.78rem,1.1vw,1rem);font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin-bottom:12px;line-height:1.3}
.hero-template1-banner h1{font-size:clamp(2.3rem,4.05vw,4.2rem)!important;line-height:1.06!important;letter-spacing:-.035em!important;overflow-wrap:break-word}
.hero-template1-banner h1 span{display:block}
.hero-template1-banner h1 span+span{font-size:.73em;letter-spacing:-.025em;margin-top:.13em}
@media(max-width:900px){.hero-template1-banner{width:min(900px,94vw)!important;min-height:185px!important;padding:20px 25px!important}.hero-template1-banner h1{font-size:clamp(2rem,5.3vw,3.5rem)!important}}
@media(max-width:620px){.hero-template1-banner{width:100%!important;min-height:0!important;padding:18px 16px!important}.hero-template1-eyebrow{font-size:.67rem;letter-spacing:.06em;margin-bottom:9px}.hero-template1-banner h1{font-size:clamp(1.55rem,7vw,2.45rem)!important}.hero-template1-banner h1 span+span{font-size:.82em}}

/* V19: grosszuegige Startseiten-Ueberschrift, Regionaltitel nicht verkleinern. */
.hero-template1{min-height:560px!important;height:auto!important}
.hero-template1 .wrap{min-height:560px!important}
.hero-template1-inner{padding-top:85px!important;padding-bottom:85px!important}
.hero-template1-banner{width:min(1320px,94vw)!important;min-height:245px!important;padding:30px 52px!important}
.hero-template1-banner h1{font-size:clamp(2.5rem,4.1vw,4.45rem)!important;line-height:1.09!important}
.hero-template1-banner h1 span+span{font-size:1em!important;margin-top:.16em!important;letter-spacing:-.035em!important}
@media(max-width:900px){.hero-template1,.hero-template1 .wrap{min-height:520px!important}.hero-template1-inner{padding-top:65px!important;padding-bottom:65px!important}.hero-template1-banner{width:94vw!important;min-height:215px!important;padding:26px 30px!important}.hero-template1-banner h1{font-size:clamp(2rem,5.4vw,3.7rem)!important}}
@media(max-width:620px){.hero-template1,.hero-template1 .wrap{min-height:460px!important}.hero-template1-inner{padding-top:60px!important;padding-bottom:55px!important}.hero-template1-banner{width:100%!important;min-height:205px!important;padding:24px 18px!important}.hero-template1-banner h1{font-size:clamp(1.6rem,7vw,2.65rem)!important;line-height:1.13!important}.hero-template1-eyebrow{margin-bottom:13px}}

/* V19 final: freigegebene Typografie (zweite Zeile 70%) und maigrüner Akzent-Schrägstrich. */
.hero-template1-banner{position:relative!important;padding-right:100px!important;overflow:visible!important}
.hero-template1-banner h1 span+span{font-size:.70em!important;margin-top:.13em!important}
.hero-template1-banner::after{content:"";position:absolute;right:43px;top:-6px;bottom:-6px;width:14px;background:#91df31;transform:skew(-17deg);transform-origin:center;pointer-events:none;z-index:2}
@media(max-width:900px){.hero-template1-banner{padding-right:80px!important}.hero-template1-banner::after{right:32px;width:12px}}
@media(max-width:620px){.hero-template1-banner{padding-right:46px!important}.hero-template1-banner h1 span+span{font-size:.70em!important}.hero-template1-banner::after{right:14px;width:8px;top:-3px;bottom:-3px}}

/* V20: Hero-Banner endet exakt am maigrünen Schrägstrich.
   Keine dunkle Rechteckfläche mehr rechts vom Strich. */
.hero-template1-banner{background:transparent!important;isolation:isolate;padding-right:145px!important}
.hero-template1-banner::before{content:"";position:absolute;inset:0;background:rgba(22,48,33,.82);clip-path:polygon(0 0,calc(100% - 28px) 0,calc(100% - 113px) 100%,0 100%);z-index:-1;pointer-events:none}
.hero-template1-banner::after{right:63px!important;top:0!important;bottom:0!important;height:100%!important;width:14px!important;transform:skew(-17deg)!important;background:#91df31!important}
@media(max-width:900px){.hero-template1-banner{padding-right:114px!important}.hero-template1-banner::before{clip-path:polygon(0 0,calc(100% - 20px) 0,calc(100% - 90px) 100%,0 100%)}.hero-template1-banner::after{right:49px!important;width:12px!important}}
@media(max-width:620px){.hero-template1-banner{padding-right:53px!important}.hero-template1-banner::before{clip-path:polygon(0 0,calc(100% - 9px) 0,calc(100% - 43px) 100%,0 100%)}.hero-template1-banner::after{right:23px!important;width:8px!important;transform:skew(-10deg)!important}}

/* V21 – Schriftgrößen im Backend; manuelle Zeilenumbrüche, ohne das V20-Schrägbanner zu ändern */
.hero-template1-banner h1{font-size:var(--hero-title-size,68px)!important;line-height:1.08!important}
.hero-template1-banner h1 span{display:block;overflow-wrap:anywhere}
.hero-template1-banner h1 span+span{font-size:calc(var(--hero-second-scale,.70) * 1em)!important}
@media(max-width:900px){.hero-template1-banner h1{font-size:clamp(28px,5vw,var(--hero-title-size,68px))!important}}
@media(max-width:620px){.hero-template1-banner h1{font-size:var(--hero-mobile-size,32px)!important}}
