
:root{--ink:#2b323a;--slate:#4a5560;--accent:#e08a2e;--accent-d:#b96d17;--bg:#f4efe8;--paper:#fff;--line:#ddd5c9}
*{box-sizing:border-box}
body{margin:0;font-family:"Avenir Next","Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}
a{color:inherit}img{max-width:100%;height:auto;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:78px}
header img{height:54px}
nav{display:flex;gap:24px;font-size:15px;font-weight:500}
nav a{text-decoration:none;padding:6px 0;border-bottom:2px solid transparent}
nav a:hover,nav a.on{border-color:var(--accent)}
.btn{display:inline-block;background:var(--accent);color:#fff;font-weight:700;text-decoration:none;padding:14px 26px;border-radius:4px;border:0;font:inherit;font-weight:700;cursor:pointer}
.btn:hover{background:var(--accent-d)}.btn.ghost{background:transparent;border:2px solid #fff}.btn.dark{background:var(--ink)}
.hero{position:relative;color:#fff;background:#222 url(/img/alba-squared.webp) center 15%/cover;min-height:560px;display:flex;align-items:center}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,29,34,.88),rgba(25,29,34,.35))}
.hero .wrap{position:relative}
.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.1;margin:0 0 20px;max-width:720px}
.hero p{font-size:20px;max-width:620px;margin:0 0 30px}
.hero .cta{display:flex;gap:14px;flex-wrap:wrap}
.hero small{display:block;margin-top:22px;letter-spacing:2px;text-transform:uppercase;font-size:13px;color:#f0d9b8}
.pagehead{background:var(--ink);color:#fff;padding:56px 0}
.pagehead h1{margin:0 0 10px;font-size:clamp(30px,4vw,46px);line-height:1.15}
.pagehead p{margin:0;font-size:19px;color:#d9dde1;max-width:760px}
.crumb{font-size:13px;color:#aeb5bc;margin-bottom:14px}.crumb a{text-decoration:none}
section{padding:72px 0}
h2{font-size:clamp(26px,3.2vw,38px);line-height:1.2;margin:0 0 16px}
h3{margin:0 0 8px}
.lead{font-size:20px;max-width:780px}
.cols{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center}
.cols img,.split img{border-radius:6px;box-shadow:0 16px 40px rgba(0,0,0,.18)}
.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:44px}
.benefit{background:var(--paper);padding:26px;border-radius:6px;border-top:4px solid var(--accent)}
.benefit p{margin:0;font-size:16px;color:#4b535c}
.dark{background:var(--ink);color:#fff}.dark .lead{color:#d9dde1}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-top:36px}
.card{background:var(--paper);color:var(--ink);border-radius:6px;overflow:hidden;text-decoration:none;display:block;transition:transform .15s}
.card:hover{transform:translateY(-4px)}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card div{padding:18px 20px}.card span{font-size:14px;color:#6a727a}
.card em{display:block;margin-top:8px;color:var(--accent-d);font-style:normal;font-weight:700;font-size:14px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.split.hood img{background:#fff;padding:20px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 0;padding:0;list-style:none}
.chips li{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:30px;padding:8px 18px;font-size:15px}
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:36px;counter-reset:s}
.steps div{counter-increment:s;background:var(--paper);padding:20px;border-radius:6px;font-weight:600}
.steps div:before{content:counter(s);display:block;color:var(--accent);font-size:30px;font-weight:800}
.contact{background:var(--accent);color:#1d1d1d;text-align:center}
.alt{background:#ebe4d8}
table.spec{border-collapse:collapse;width:100%;background:var(--paper);border-radius:6px;overflow:hidden;margin:18px 0 8px}
table.spec th,table.spec td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--line);font-size:16px;vertical-align:top}
table.spec th{width:34%;background:#faf7f2;font-weight:600}
ul.check{padding:0;list-style:none}ul.check li{padding:6px 0 6px 30px;position:relative}
ul.check li:before{content:"";position:absolute;left:0;top:14px;width:16px;height:9px;border-left:3px solid var(--accent);border-bottom:3px solid var(--accent);transform:rotate(-45deg)}
form{background:var(--paper);padding:30px;border-radius:6px;display:grid;gap:16px}
form label{font-weight:600;font-size:14px;display:block;margin-bottom:4px}
form input,form select,form textarea{width:100%;padding:12px;border:1px solid #c9c0b3;border-radius:4px;font:inherit}
form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.note{background:#fff7e8;border-left:4px solid var(--accent);padding:14px 18px;font-size:15px;margin:20px 0}
.legal h2{font-size:24px;margin-top:34px}
footer{background:#1d2227;color:#aeb5bc;padding:44px 0;font-size:14px}
footer .wrap{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:30px}
footer img{height:46px;margin-bottom:14px}footer h4{color:#fff;margin:0 0 10px}
footer a{display:block;text-decoration:none;padding:2px 0}footer a:hover{color:#fff}
@media(max-width:900px){nav{display:none}.cols,.split,footer .wrap,form .row{grid-template-columns:1fr}.benefits{grid-template-columns:1fr}.steps{grid-template-columns:1fr 1fr}.hero{min-height:520px}}
.dd{position:relative}
.dd:after{content:"";position:absolute;left:0;right:0;top:100%;height:30px}
.dd>a:after{content:" ▾";font-size:11px}
.mega{display:none;position:absolute;left:-120px;top:44px;background:#fff;border:1px solid var(--line);border-top:3px solid var(--accent);box-shadow:0 20px 40px rgba(0,0,0,.18);padding:26px 28px;width:max-content;max-width:920px;grid-template-columns:repeat(4,minmax(170px,1fr));gap:26px;z-index:20}
.dd:hover .mega,.dd:focus-within .mega{display:grid}
.mega .mh{display:block;font-weight:700;margin:0 0 8px;font-size:13px;letter-spacing:.6px;text-transform:uppercase;color:var(--accent-d)}
.mega a{display:block;border:0;padding:4px 0;font-weight:500;font-size:15px;white-space:nowrap}
.mega a:hover{color:var(--accent-d)}
.mega .all{grid-column:1/-1;border-top:1px solid var(--line);margin-top:6px;padding-top:12px;font-weight:700}
details.mob{display:none;background:#fff;border-top:1px solid var(--line)}
details.mob summary{padding:14px 20px;font-weight:700;cursor:pointer}
details.mob div{padding:0 20px 18px}
details.mob .mh{display:block;font-weight:700;margin:14px 0 4px;color:var(--accent-d);font-size:13px;text-transform:uppercase}
details.mob a{display:block;padding:5px 0;text-decoration:none}
.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:20px}
.gallery img{border-radius:6px;background:#fff;width:100%}
.gallery figure{margin:0}.gallery figcaption{font-size:14px;color:#6a727a;padding-top:6px}
.catblock{margin-top:48px}.catblock:first-of-type{margin-top:30px}
.catblock h2{border-left:5px solid var(--accent);padding-left:14px}
.tag{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:30px;padding:2px 12px;font-size:13px;margin:0 6px 6px 0}
@media(max-width:900px){details.mob{display:block}}
/* --- homepage premium + footer --- */
.eyebrow{display:block;font-size:13px;letter-spacing:2.5px;text-transform:uppercase;color:var(--accent-d);font-weight:700;margin-bottom:14px}
.dark .eyebrow,.italy .eyebrow{color:#f0c07c}
.hero{min-height:680px}
.hero small{margin-top:26px}.hero small.area{margin-top:6px;color:#fff;letter-spacing:1.5px}
section{padding:96px 0}
.intro{max-width:820px;margin:0 0 56px}
.intro h2{font-size:clamp(30px,4vw,46px)}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.pillars div{padding:32px 28px 8px 0;border-right:1px solid var(--line);margin-right:28px}
.pillars div:last-child{border-right:0;margin-right:0}
.pillars h3{font-size:22px;margin-bottom:10px}.pillars p{margin:0;color:#4b535c}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.tile{position:relative;min-height:380px;background:#222 center/cover no-repeat;border-radius:6px;overflow:hidden;color:#fff;text-decoration:none;display:flex;align-items:flex-end}
.tile:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,24,28,.88),rgba(20,24,28,.05) 65%)}
.tile div{position:relative;padding:30px}.tile h3{font-size:26px}.tile p{margin:0;max-width:420px;color:#e6e9ec}
.tile:hover{outline:3px solid var(--accent);outline-offset:-3px}
.statement{background:var(--bg)}
.statement h2{font-size:clamp(32px,4.4vw,54px);max-width:900px;margin-bottom:40px}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.bigline{font-size:clamp(26px,3.6vw,42px);font-weight:800;line-height:1.2;color:var(--accent-d);margin:56px 0 12px}
.subline{font-size:19px;max-width:720px;margin:0}
.steplist{list-style:none;padding:0;margin:26px 0 30px}
.steplist li{padding:12px 0;border-bottom:1px solid var(--line);font-weight:600;font-size:18px}
.steplist b{color:var(--accent);margin-right:14px;font-size:20px}
.tech .split img{background:#fff;padding:28px;border-radius:6px}
.italy{position:relative;color:#fff;background-size:cover;background-position:center;min-height:560px;display:flex;align-items:center}
.italy h2{font-size:clamp(32px,4.6vw,56px);max-width:760px}.italy .lead{max-width:720px;color:#e6e9ec}
.leasing{max-width:860px}.leasing h2{font-size:clamp(28px,3.6vw,42px)}
.disclaimer{font-size:13px;color:#6a727a;margin-top:18px}
.cta-sub{margin:26px 0 0;font-size:14px;letter-spacing:1px}
.contact h2{max-width:820px;margin-left:auto;margin-right:auto}
footer{padding:64px 0 48px}
footer .footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
footer p{margin:0 0 12px;line-height:1.6}
.footer-brand p{max-width:340px}.footer-area{color:#fff;letter-spacing:1.5px;font-size:13px;text-transform:uppercase}
@media(max-width:900px){section{padding:64px 0}.pillars,.tiles,.cols2{grid-template-columns:1fr}.pillars div{border-right:0;border-bottom:1px solid var(--line);margin:0;padding:22px 0}.tile{min-height:300px}.hero{min-height:600px}}
/* --- Unterseiten --- */
.pagehead.big{padding:88px 0 80px}
.pagehead.big h1{font-size:clamp(34px,4.6vw,56px);max-width:860px;margin-bottom:20px}
.pagehead.big p{max-width:740px;font-size:19px;margin-bottom:12px}
.pagehead .eyebrow{color:#f0c07c}
.proc5{display:grid;grid-template-columns:repeat(5,1fr);gap:22px}
.proc4{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.proc3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.proc5>div,.proc4>div,.proc3>div{background:var(--paper);padding:28px 24px;border-radius:6px;border-top:4px solid var(--accent)}
.proc5 b,.proc4 b,.proc3 b{display:block;font-size:19px;line-height:1.3;margin-bottom:10px}
.proc5 p,.proc4 p,.proc3 p{margin:0;color:#4b535c;font-size:16px}
ul.check.two{columns:2;column-gap:60px}ul.check.two li{break-inside:avoid}
.contact .btn.dark+.btn.dark{margin-left:8px}
.formcols{align-items:start;gap:70px;grid-template-columns:1.25fr 1fr}
.direct{padding-top:6px}
.modelask{background:var(--ink);color:#fff;padding:56px 0}
.modelask .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}
.modelask h2{font-size:clamp(24px,3vw,34px);margin-bottom:8px}.modelask .lead{margin:0;color:#d9dde1;font-size:18px}
@media(max-width:1100px){.proc5,.proc4{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.proc5,.proc4,.proc3,.formcols{grid-template-columns:1fr}ul.check.two{columns:1}.pagehead.big{padding:60px 0}}
/* --- Korrekturen Desktop-Check --- */
.hero .wrap,.italy .wrap{width:100%}
.cards.three{grid-template-columns:repeat(3,1fr)}
.leasing{max-width:1180px}.leasing>*{max-width:820px}
@media(max-width:900px){.cards.three{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cards.three{grid-template-columns:1fr}}
.contact.slim{padding:48px 0}
@media(max-width:900px){footer .footer-grid{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:560px){footer .footer-grid{grid-template-columns:1fr}}
h1,h2,h3{overflow-wrap:break-word;hyphens:manual}
@media(max-width:700px){h1,h2,h3{hyphens:auto}}
@media(max-width:560px){.hero h1,.pagehead h1,.pagehead.big h1{font-size:27px}.italy h2,.statement h2{font-size:27px}.bigline{font-size:24px}}
@media(max-width:560px){table.spec th,table.spec td{padding:10px;font-size:15px;overflow-wrap:anywhere}}
/* --- Partner-Block im Footer --- */
footer{padding-bottom:0}
.partner-band{margin-top:48px;background:#262d33;border-top:3px solid var(--accent)}
footer .wrap.partner{display:block;padding-top:34px;padding-bottom:34px}
footer .partner p{margin:0;max-width:900px;font-size:19px;line-height:1.55;color:#e6e9ec;padding-left:22px;border-left:4px solid var(--accent)}
footer .partner strong{color:#fff}
@media(max-width:560px){footer .partner p{font-size:17px}}
/* --- Leasing-Seite --- */
.leasehero{position:relative;color:#fff;background-size:cover;min-height:640px;display:flex;align-items:center;padding:90px 0}
.leasehero .wrap{width:100%}.leasehero h1{font-size:clamp(32px,4.6vw,58px);line-height:1.12;max-width:820px;margin:0 0 22px}
.leasehero p{font-size:20px;max-width:680px;margin:0}.leasehero .crumb{margin-bottom:22px}.leasehero .eyebrow{color:#f0c07c}
.lease2{gap:80px}.lease2 .shot{aspect-ratio:4/3;object-fit:cover;object-position:18% 50%;width:100%}
.adv{display:grid;grid-template-columns:repeat(4,1fr);gap:48px}
.adv>div{border-top:1px solid var(--line);padding-top:30px}
.ico{width:52px;height:52px;color:var(--accent);margin-bottom:22px;display:block}
.adv h3{font-size:24px;margin-bottom:10px}.adv p{margin:0;color:#4b535c}
.fin{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.fin .tile{min-height:300px;background-size:cover;background-position:center}.fin .tile.w2{grid-column:span 2;min-height:360px}
.fin .tile h3{margin:0;font-size:22px}
.fin .tile.iconic{background:var(--ink);align-items:flex-start;flex-direction:column;justify-content:space-between}
.fin .tile.iconic .ico{margin:30px 0 0 30px;color:#f0c07c;width:64px;height:64px}.fin .tile.iconic:before{display:none}
.fin .tile.iconic div{align-self:stretch;padding:0 30px 30px}
.fin .tile.light{background-color:#fff;background-size:contain;background-repeat:no-repeat;background-position:center 38%;color:var(--ink)}
.fin .tile.light:before{background:linear-gradient(0deg,rgba(255,255,255,.95) 28%,rgba(255,255,255,0) 60%)}
.four{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.four>div{border-top:2px solid var(--accent);padding-top:26px}
.four b{display:block;font-size:54px;line-height:1;color:var(--accent);margin-bottom:18px}
.four h3{font-size:22px}.four p{margin:0;color:#d9dde1}
.faq{max-width:900px}
.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:24px 44px 24px 0;font-size:20px;font-weight:700;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:6px;top:18px;font-size:32px;font-weight:400;color:var(--accent);line-height:1}
.faq details[open] summary:after{content:"–"}
.faq details p{margin:0 0 26px;max-width:760px;color:#4b535c;font-size:17px}
.legalnote{padding:36px 0 56px}.legalnote .disclaimer{margin:0;max-width:900px}
@media(max-width:1100px){.adv,.four{grid-template-columns:1fr 1fr}.fin{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.leasehero{min-height:520px;padding:64px 0}.lease2{gap:36px}}
@media(max-width:560px){.adv,.four,.fin{grid-template-columns:1fr}.fin .tile.w2{grid-column:auto}.leasehero h1{font-size:27px}.faq summary{font-size:18px}}

.fin .tile{background-repeat:no-repeat}
.leasehero h1{font-size:clamp(32px,4.2vw,54px)}
.fin .tile h3{font-size:20px;overflow-wrap:anywhere}.fin .tile.w2 h3{font-size:24px}
/* --- Ablufttechnik --- */
.vis{position:relative;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;background:var(--ink)}
.vis.icon{background:linear-gradient(135deg,#2b323a,#3a434d);color:#f0c07c}
.eico{width:84px;height:84px}
.vis.light{background:#fff}.vis.dark{background:#1d2227}
.vis img{width:100%;height:100%}
.vis.contain img{object-fit:contain;padding:18px}.vis.cover img{object-fit:cover}
.ecard .vis{aspect-ratio:4/3}
.card.ecard{display:block}
.evisual .vis{aspect-ratio:4/3;border-radius:6px;box-shadow:0 16px 40px rgba(0,0,0,.18)}
.evisual .vis.icon .eico{width:120px;height:120px}
figure.e2{margin:40px 0 0}figure.e2 img{border-radius:6px;max-height:420px;width:100%;object-fit:cover;box-shadow:0 12px 30px rgba(0,0,0,.14)}
table.spec.var td,table.spec.var th{width:auto}table.spec.var th{width:28%}
.proc2{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.proc2>div{background:var(--paper);padding:28px 24px;border-radius:6px;border-top:4px solid var(--accent)}
.proc2 b{display:block;font-size:19px;line-height:1.3;margin-bottom:10px}.proc2 p{margin:0;color:#4b535c;font-size:16px}
.mega.mega-abluft{grid-template-columns:repeat(4,minmax(190px,1fr));left:-260px}
.pb-label{display:block;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;color:#f0c07c;margin:0 0 10px 26px}
.partner-band.etc{margin-top:48px}
.partner-band.second{margin-top:0;border-top:1px solid rgba(255,255,255,.14)}
@media(max-width:900px){.proc2{grid-template-columns:1fr}}
.card .vis,.card.ecard .vis{padding:0}
.mega.mega-abluft{width:1000px;max-width:calc(100vw - 40px);left:-330px;grid-template-columns:repeat(4,1fr)}
.mega-abluft a{white-space:normal;line-height:1.35;padding:6px 0}
figure.e2{max-width:480px}figure.e2 img{max-height:none}
/* --- Galerie auf Ablufttechnik-Seiten --- */
.egal{display:flex;flex-wrap:wrap;gap:20px;margin-top:44px}
.egal figure{margin:0;flex:1 1 220px;max-width:340px}
.egal figure>div{aspect-ratio:4/3;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 8px 22px rgba(0,0,0,.1);display:grid;place-items:center}
.egal img{width:100%;height:100%}
.egal figure.contain img{object-fit:contain;padding:14px}.egal figure.cover img{object-fit:cover}
.egal figcaption{font-size:14px;color:#6a727a;padding-top:8px}
.egal{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,260px));justify-content:start;gap:22px}
.egal figure{flex:none;max-width:none}
/* --- Über uns --- */
.uhero{position:relative;background:#14181c;line-height:0}
.uhero img{display:block;width:100%;height:auto}
.uhero-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.who{gap:70px}.who .shot{aspect-ratio:4/3;object-fit:cover;width:100%}
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:38px}
.trio>div{border-top:2px solid var(--accent);padding-top:18px}.trio b{display:block;font-size:19px;margin-bottom:6px;color:#fff}.trio p{margin:0;color:#c8ced4;font-size:16px}
.darker{background:#1d2227;color:#fff}.darker .eyebrow{color:#f0c07c}.darker h2{color:#fff}
.aud{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.aud .tile{min-height:300px;background-size:cover;background-repeat:no-repeat;cursor:default}.aud .tile:hover{outline:none}
.aud .tile h3{margin:0;font-size:24px}
.aud .tile.iconic{background:linear-gradient(135deg,#2b323a,#3a434d);align-items:flex-start;flex-direction:column;justify-content:space-between}
.aud .tile.iconic:before{display:none}.aud .tile.iconic .eico{margin:30px 0 0 30px;width:76px;height:76px;color:#f0c07c}.aud .tile.iconic div{align-self:stretch;padding:0 30px 30px}
.partnersec{background:#262d33;border-top:3px solid var(--accent);border-bottom:1px solid rgba(255,255,255,.1);padding:72px 0}
.partnersec .eyebrow{color:#f0c07c}
.partnerline{margin:0;max-width:980px;color:#fff;font-size:clamp(22px,2.6vw,32px);line-height:1.4;padding-left:26px;border-left:4px solid var(--accent)}
@media(max-width:1000px){.trio,.aud{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.uhero{line-height:1.6}.uhero img{aspect-ratio:4/5;object-fit:cover;object-position:78% 50%}
.uhero-text{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;background:var(--ink);color:#fff;padding:40px 20px 48px}
.uhero-text h1{font-size:30px;line-height:1.15;margin:0 0 16px}.uhero-text p{margin:0;font-size:18px;color:#d9dde1}
.trio,.aud{grid-template-columns:1fr}}
.uhero{padding:0}
.who .shot{aspect-ratio:4/5;object-position:86% 50%}
@media(max-width:900px){.who .shot{aspect-ratio:4/3;object-position:86% 50%}}
/* --- Über uns: Hero-Text per HTML/CSS über dem Foto --- */
.uhero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(14,17,20,.82) 0%,rgba(14,17,20,.55) 26%,rgba(14,17,20,0) 50%)}
.uhero-text{position:absolute;left:0;right:0;bottom:9%;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;z-index:2;line-height:1.5;color:#fff}
.uhero-text .wrap{width:100%}
.uhero-text .eyebrow{color:#f0c07c;margin-bottom:12px;font-size:clamp(11px,.9vw,13px)}
.uhero-text h1{margin:0 0 16px;font-size:clamp(28px,3.9vw,60px);line-height:1.08;max-width:34vw;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.uhero-text p{margin:0;max-width:30vw;font-size:clamp(14px,1.18vw,19px);color:#e6e9ec;text-shadow:0 1px 10px rgba(0,0,0,.5)}
@media(max-width:900px){
 .uhero{line-height:1.6}.uhero:after{display:none}
 .uhero-text{position:static;background:var(--ink);padding:40px 0 48px}
 .uhero-text .wrap{padding:0 20px}
 .uhero-text h1{font-size:34px;max-width:none}.uhero-text p{max-width:640px;font-size:18px}
}
@media(max-width:760px){
 .uhero img{aspect-ratio:4/5;object-fit:cover;object-position:73% 55%}
 .uhero-text h1{font-size:30px}
}
.uhero-text{bottom:14%}
.uhero-text p{max-width:max(24vw,250px)}
@media(max-width:900px){.uhero-text{bottom:auto}.uhero-text p{max-width:640px}}
@media(max-width:760px){.uhero img{aspect-ratio:1/1;object-position:66% 50%}}
/* --- Rechtliche Schlussleiste im Footer --- */
footer .wrap.legal-dummy{display:block}
.legalbar{background:#14181c;border-top:1px solid rgba(255,255,255,.12);padding:22px 0;text-align:center}
footer .legalbar .wrap{display:block}
.legalbar p{margin:0}
.legalbar .lb1{font-size:14px;color:#e6e9ec;letter-spacing:.2px}
.legalbar .lb2{margin-top:8px;font-size:13px;line-height:1.7;color:#aeb5bc}
.legalbar .lb2 span{display:inline-block}
.legalbar .lb2 span+span:before{content:"|";margin:0 12px;color:#6a727a}
.legalbar .lb2 a{display:inline;padding:0;color:#c8ced4;text-decoration:underline;text-underline-offset:2px}
.legalbar .lb2 a:hover{color:#fff}
@media(max-width:700px){.legalbar{padding:20px 0}.legalbar .lb2 span{display:block}.legalbar .lb2 span+span:before{content:none}}
/* --- Sitz- & Eckbänke --- */
.szhero{position:relative;min-height:620px;display:flex;align-items:center;color:#fff;background:#14181c;overflow:hidden}
.szhero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}
.szhero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(20,24,28,.9) 0%,rgba(20,24,28,.6) 38%,rgba(20,24,28,.1) 70%)}
.szhero-in{position:relative;z-index:2;width:100%;padding:90px 0}
.szhero h1{font-size:clamp(32px,4.4vw,58px);line-height:1.1;max-width:720px;margin:0 0 20px}
.szhero p{font-size:20px;max-width:560px;margin:0;color:#e6e9ec}.szhero .eyebrow{color:#f0c07c}.szhero .crumb{margin-bottom:18px}
.szintro{gap:70px}.szpair{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:end}
.szpair img{width:100%;border-radius:6px;box-shadow:0 16px 40px rgba(0,0,0,.18);object-fit:cover;aspect-ratio:4/5}
.szpair img.b{aspect-ratio:1/1;margin-bottom:-36px}
.sz4 .eico{width:60px;height:60px;color:#f0c07c;margin-bottom:18px}
.szrow{display:grid;grid-template-columns:1fr 1.6fr;gap:60px;align-items:center}
.szrow.rev{grid-template-columns:1.6fr 1fr}.szrow.rev .txt{order:2}
.szrow .imgs.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.szrow .imgs img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:6px;box-shadow:0 14px 36px rgba(0,0,0,.2)}
.szrow .imgs img:nth-child(2){margin-top:44px}
.darker .szrow .lead{color:#d9dde1}
.szgal{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:18px}
.szgal figure{margin:0}.szgal button{display:block;width:100%;padding:0;border:0;background:#222;border-radius:6px;overflow:hidden;cursor:zoom-in;aspect-ratio:4/3;position:relative}
.szgal figure.w2{grid-column:span 2}.szgal figure.w2 button{aspect-ratio:8/3.1}.szgal figure.h2{grid-row:span 2}.szgal figure.h2 button{aspect-ratio:auto;height:calc(100% - 0px)}
.szgal figure.sq button{aspect-ratio:1/1}
.szgal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.szgal button:hover img{transform:scale(1.04)}
.szgal figcaption{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.lb{position:fixed;inset:0;z-index:100;background:rgba(10,12,14,.94);display:flex;align-items:center;justify-content:center;padding:20px}
.lb[hidden]{display:none}
.lb figure{margin:0;max-width:min(1100px,86vw);text-align:center}.lb img{max-width:100%;max-height:78vh;border-radius:4px;display:block;margin:0 auto}
.lb figcaption{color:#d9dde1;font-size:15px;padding-top:12px}
.lb button{position:absolute;background:rgba(255,255,255,.12);color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer}
.lb button:hover{background:var(--accent)}.lbx{top:18px;right:18px}.lbp{left:18px;top:50%;transform:translateY(-50%)}.lbn{right:18px;top:50%;transform:translateY(-50%)}
@media(max-width:1000px){.szrow,.szrow.rev{grid-template-columns:1fr;gap:34px}.szrow.rev .txt{order:0}.szintro{gap:44px}}
@media(max-width:760px){.szhero{min-height:540px}.szhero:before{background:linear-gradient(0deg,rgba(20,24,28,.92) 0%,rgba(20,24,28,.55) 60%,rgba(20,24,28,.2) 100%)}.szhero-in{padding:60px 0;align-self:flex-end}.szhero p{font-size:18px}
.szpair img.b{margin-bottom:0}.szrow .imgs img:nth-child(2){margin-top:20px}
.szgal{grid-template-columns:1fr 1fr;gap:12px}.szgal figure.w2{grid-column:span 2}.szgal figure.w2 button{aspect-ratio:16/9}.szgal figure.h2{grid-row:auto}.szgal figure.h2 button{aspect-ratio:4/3;height:auto}
.lbp{left:8px}.lbn{right:8px}.lb button{width:42px;height:42px}}
@media(max-width:440px){.szrow .imgs.two{grid-template-columns:1fr}.szrow .imgs img{aspect-ratio:4/3}.szrow .imgs img:nth-child(2){margin-top:0}.szpair{grid-template-columns:1fr}.szpair img{aspect-ratio:4/3}}
.szgal figure.w2 button{aspect-ratio:auto;height:100%}.szgal figure.w2{display:block}
.szgal figure button{aspect-ratio:4/3}.szgal figure.w2 button{aspect-ratio:auto}
.szgal figure.w2{grid-column:span 2}
@media(max-width:760px){
 .szhero{display:block;min-height:0;background:var(--ink)}.szhero:before{display:none}
 .szhero>img{position:static;width:100%;height:auto;aspect-ratio:4/3;object-position:50% 60%}
 .szhero-in{padding:34px 0 44px;align-self:auto}.szhero h1{font-size:29px;hyphens:manual}
}
.szhero{padding:0}
.fin .tile h3{overflow-wrap:normal;word-break:normal;hyphens:manual}.fin .tile:not(.w2) h3{font-size:18px}
/* --- Leasing: Split-Card Sitz- und Eckbänke --- */
.fin .tile.split{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:0;background:#14181c;align-items:stretch}
.fin .tile.split:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,rgba(20,24,28,.88) 0%,rgba(20,24,28,.35) 32%,rgba(20,24,28,0) 60%);pointer-events:none}
.fin .tile.split .sp{display:block;position:relative;overflow:hidden;min-height:inherit}
.fin .tile.split .sp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.fin .tile.split .sp:first-child img{object-position:50% 70%}
.fin .tile.split .sp:last-child img{object-position:50% 55%}
.fin .tile.split:hover .sp img{transform:scale(1.04)}
.fin .tile.split>div{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:30px}
.fin .tile.w4{grid-column:span 4;min-height:300px}
@media(max-width:1100px){.fin .tile.w4{grid-column:span 2}}
@media(max-width:560px){.fin .tile.split{grid-template-columns:1fr;grid-template-rows:1fr 1fr;min-height:360px}.fin .tile.split .sp{min-height:0}.fin .tile.split:before{background:linear-gradient(0deg,rgba(20,24,28,.88) 0%,rgba(20,24,28,.3) 28%,rgba(20,24,28,0) 55%)}.fin .tile.w4{grid-column:auto}}
/* --- Hero-Video Startseite --- */
.hero{overflow:hidden;background-image:url(/img/hero-poster.jpg?v=20261010);background-size:cover;background-position:60% 62%}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 62%;z-index:0;pointer-events:none;background:#14181c}
.hero:before{z-index:1}.hero .wrap{z-index:2}
.hero-video::-webkit-media-controls,.hero-video::-webkit-media-controls-panel,.hero-video::-webkit-media-controls-start-playback-button,.hero-video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none}
@media(max-width:760px){.hero-video{object-position:70% 55%}.hero{background-position:70% 55%}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}}
/* --- Karte mit rotierenden Bildern (Startseite: Eisdielen & Eiscafés) --- */
.tile.slides{background-color:#1d2227;background-size:cover;background-position:center}
.tile.slides .sl{position:absolute;inset:0;z-index:0;display:block;overflow:hidden}
.tile.slides .sl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;opacity:0;transition:opacity 1.3s ease-in-out;z-index:0}
.tile.slides .sl img.on{opacity:1;z-index:1}
.tile.slides:before{z-index:3}.tile.slides>div{z-index:4}
@media(prefers-reduced-motion:reduce){.tile.slides .sl img{transition:none}}
/* --- Karte mit Video (Startseite: Restaurants & Pizzerien) --- */
.tile.vidtile{background-color:#1d2227;background-size:cover;background-position:50% 50%}
.tile.vidtile .tilevid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:0;pointer-events:none;background:#1d2227}
.tile.vidtile:before{z-index:1}.tile.vidtile>div{z-index:2}
.tilevid::-webkit-media-controls,.tilevid::-webkit-media-controls-panel,.tilevid::-webkit-media-controls-start-playback-button,.tilevid::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none}
@media(prefers-reduced-motion:reduce){.tile.vidtile .tilevid{display:none}}
.tile.vidtile.v2 .tilevid{object-position:50% 50%}
.tile.vidtile.v3 .tilevid{object-position:50% 55%}

/* --- Hero Startseite: reduziert, editorial --- */
.hero:before{background:linear-gradient(90deg,rgba(18,22,26,.74) 0%,rgba(18,22,26,.42) 30%,rgba(18,22,26,.08) 54%,rgba(18,22,26,0) 66%)}
.hero .wrap h1{max-width:560px;font-size:clamp(32px,3.7vw,54px);line-height:1.1;margin:0 0 18px;text-shadow:0 2px 20px rgba(0,0,0,.35)}
.hero .wrap p.hsub{font-size:clamp(16px,1.35vw,20px);letter-spacing:.4px;max-width:460px;margin:0 0 30px;color:#f0e6d8;text-shadow:0 1px 14px rgba(0,0,0,.4)}
.hero .cta{gap:12px}
@media(max-width:900px){
 .hero{min-height:560px;align-items:flex-end;padding-bottom:44px}
 .hero:before{background:linear-gradient(0deg,rgba(18,22,26,.82) 0%,rgba(18,22,26,.5) 38%,rgba(18,22,26,.05) 68%,rgba(18,22,26,0) 100%)}
 .hero .wrap h1{font-size:clamp(28px,6.6vw,38px);max-width:520px}
}
.hero .wrap h1{max-width:min(720px,52vw);font-size:clamp(30px,3.3vw,48px);hyphens:manual;overflow-wrap:normal;word-break:normal}
@media(max-width:900px){.hero .wrap h1{max-width:520px;font-size:clamp(26px,6vw,36px)}}
@media(max-width:420px){.hero .wrap h1{font-size:25px;hyphens:auto}}
@media(max-width:420px){.hero .wrap h1{font-size:23px;hyphens:manual;max-width:none}}

/* --- Karte "Bars & moderne Food-Konzepte": ein durchgehendes Video, gleichmäßiger Overlay --- */
.tile.vidtile.v3 .tilevid{object-position:50% 50%}
.tile.vidtile.v3:before{background:rgba(18,22,26,.34)}
.tile.vidtile.v3>div h3,.tile.vidtile.v3>div p{text-shadow:0 1px 14px rgba(0,0,0,.5)}
/* --- Planung: Foto-Hero --- */
.plhero{position:relative;padding:0;background:#14181c;height:min(80vh,780px);min-height:560px;color:#fff;overflow:hidden;display:flex;align-items:flex-end}
.plhero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.plhero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(14,17,20,.8) 0%,rgba(14,17,20,.42) 20%,rgba(14,17,20,0) 44%)}
.plhero-in{position:relative;z-index:2;width:100%;padding:0 0 52px}
.plhero .crumb{margin-bottom:14px;color:#cfd4d9}
.plhero .eyebrow{color:#f0c07c;margin-bottom:10px}
.plhero h1{font-size:clamp(28px,3.3vw,46px);line-height:1.12;max-width:640px;margin:0 0 12px;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.plhero p{font-size:clamp(16px,1.3vw,19px);max-width:520px;margin:0;color:#ecebe8;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.plhero .plbtn{margin-top:22px}
@media(max-width:900px){
 .plhero{display:block;height:auto;min-height:0;background:var(--ink)}
 .plhero:after{display:none}
 .plhero>img{position:static;height:auto;aspect-ratio:4/3;object-position:14% 40%}
 .plhero-in{padding:34px 0 44px}
 .plhero h1{font-size:clamp(26px,6vw,36px)}
}
@media(max-width:560px){.plhero>img{aspect-ratio:1/1;object-position:16% 45%}.plhero h1{font-size:26px}}
/* --- Leasing: Kartenraster neu --- */
.fin .tile{min-height:320px}.fin .tile.w2{min-height:380px}
.fin .tile:before{background:linear-gradient(0deg,rgba(18,22,26,.8) 0%,rgba(18,22,26,.3) 30%,rgba(18,22,26,0) 56%)}
.fin .tile.vidtile .tilevid{object-position:50% 50%}
.fin .tile.vidtile:before{z-index:1}.fin .tile.vidtile>div{z-index:2}
.leasehero{background-size:cover}
@media(max-width:1100px){.fin .tile.w2{grid-column:span 2}}
@media(max-width:900px){.leasehero{background-position:68% 38%!important}}
.leasehero h1{max-width:540px;font-size:clamp(28px,3.2vw,44px);line-height:1.12}
.leasehero p{max-width:470px;font-size:clamp(16px,1.3vw,19px)}
@media(max-width:900px){.leasehero h1,.leasehero p{max-width:none}}
/* Leasing: Raster 2 + 1 / 1 + 2 */
.fin{grid-template-columns:repeat(3,1fr)}
.fin .tile.w2{grid-column:span 2}.fin .tile{min-height:340px}.fin .tile.w2{min-height:340px}
.fin .tile h3{font-size:22px}.fin .tile:not(.w2) h3{font-size:20px}
@media(max-width:1100px){.fin{grid-template-columns:1fr 1fr}.fin .tile.w2{grid-column:span 2}}
@media(max-width:560px){.fin{grid-template-columns:1fr}.fin .tile.w2{grid-column:auto}.fin .tile,.fin .tile.w2{min-height:280px}}
/* Leasing: griglia a 6 colonne, nessun buco */
.fin{grid-template-columns:repeat(6,1fr)}
.fin .tile{grid-column:span 2;min-height:340px}
.fin .tile:nth-child(1){grid-column:span 4}.fin .tile:nth-child(2){grid-column:span 2}
.fin .tile:nth-child(3){grid-column:span 2}.fin .tile:nth-child(4){grid-column:span 4}
.fin .tile:nth-child(5){grid-column:span 6;min-height:400px}
.fin .tile.vidtile .tilevid{object-position:50% 58%}
@media(max-width:900px){.fin{grid-template-columns:1fr 1fr}.fin .tile,.fin .tile:nth-child(n){grid-column:span 1;min-height:300px}.fin .tile:nth-child(1),.fin .tile:nth-child(4),.fin .tile:nth-child(5){grid-column:span 2}}
@media(max-width:560px){.fin{grid-template-columns:1fr}.fin .tile,.fin .tile:nth-child(n){grid-column:auto;min-height:260px}}
/* Leasing: Raster final: 4+2 / 2+4 / hier 3 Karten in der letzten Zeile als 2+2+2 */
.fin .tile:nth-child(1){grid-column:span 4}.fin .tile:nth-child(2){grid-column:span 2}
.fin .tile:nth-child(3){grid-column:span 2;min-height:340px}.fin .tile:nth-child(4){grid-column:span 2;min-height:340px}.fin .tile:nth-child(5){grid-column:span 2;min-height:340px}
@media(max-width:900px){.fin .tile:nth-child(n){grid-column:span 1;min-height:300px}.fin .tile:nth-child(1){grid-column:span 2}.fin .tile:nth-child(5){grid-column:span 2}}
@media(max-width:560px){.fin .tile:nth-child(n){grid-column:auto;min-height:260px}}
.fin .tile:before{background:linear-gradient(0deg,rgba(18,22,26,.86) 0%,rgba(18,22,26,.5) 30%,rgba(18,22,26,0) 58%)}
.fin .tile h3{text-shadow:0 1px 12px rgba(0,0,0,.55)}
@media(max-width:900px){.fin .tile:nth-child(4){grid-column:span 2}}
@media(max-width:560px){.fin .tile:nth-child(n){grid-column:auto}}
/* Leasing Hero: Bild als <img>, Text darüber (Desktop) bzw. darunter (Tablet/Handy) */
.leasehero{position:relative;background:#14181c!important;padding:0;display:block;min-height:640px;height:min(80vh,720px);overflow:hidden}
.leasehero .lhimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 38%}
.leasehero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(18,22,26,.86) 0%,rgba(18,22,26,.5) 34%,rgba(18,22,26,.06) 62%,rgba(18,22,26,0) 100%)}
.leasehero .lhtxt{position:relative;z-index:2;height:100%;display:flex;align-items:center}
.leasehero .lhtxt .wrap{width:100%}
@media(max-width:900px){
 .leasehero{height:auto;min-height:0;background:var(--ink)!important}
 .leasehero:after{display:none}
 .leasehero .lhimg{position:static;height:auto;aspect-ratio:4/3;object-position:62% 40%}
 .leasehero .lhtxt{display:block;height:auto;padding:34px 0 44px}
 .leasehero .lhtxt .wrap{padding:0 20px}
}
@media(max-width:560px){.leasehero .lhimg{aspect-ratio:1/1;object-position:60% 40%}}
.lease2 .shot{object-position:68% 50%}
/* --- Über uns: neues Hero-Foto (Büro mit Logo) --- */
.uhero:after{background:linear-gradient(0deg,rgba(14,17,20,.78) 0%,rgba(14,17,20,.4) 18%,rgba(14,17,20,0) 38%)}
.uhero-text{bottom:5%}
.uhero-text h1{max-width:30vw;font-size:clamp(26px,3.1vw,46px)}
.uhero-text p{max-width:27vw}
@media(max-width:900px){.uhero:after{display:none}.uhero-text h1{max-width:none}.uhero-text p{max-width:640px}}
@media(max-width:760px){.uhero img{aspect-ratio:4/3;object-fit:cover;object-position:78% 50%}}
/* --- Über uns: Kacheln mit Fotos, natürliche Farben --- */
.aud .tile{background-size:cover}
.aud .tile:before{background:linear-gradient(0deg,rgba(18,22,26,.72) 0%,rgba(18,22,26,.22) 30%,rgba(18,22,26,0) 52%)}
.aud .tile h3{text-shadow:0 1px 12px rgba(0,0,0,.5)}
.who .shot{object-position:70% 50%}
/* --- Über uns: Design-Abschnitt, reduziert --- */
.dsg{position:relative;min-height:560px;display:flex;align-items:center;background-size:cover;background-position:60% 55%;background-color:#1d2227;color:#fff;padding:0}
.dsg:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(14,17,20,.66) 0%,rgba(14,17,20,.32) 24%,rgba(14,17,20,0) 46%)}
.dsg .wrap{position:relative;z-index:1;width:100%}
.dsg-box{max-width:400px}
.dsg .eyebrow{color:#f0c07c;margin-bottom:12px}
.dsg h2{font-size:clamp(28px,3vw,42px);line-height:1.12;margin:0 0 14px;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.dsg p{margin:0;font-size:clamp(16px,1.25vw,18px);line-height:1.55;color:#ecebe8;text-shadow:0 1px 10px rgba(0,0,0,.45)}
.dsgline{background:#1d2227;padding:56px 0}
.dsgline .bigline{margin:0;color:#f0c07c;font-size:clamp(22px,2.6vw,36px);font-weight:800;line-height:1.25;max-width:900px}
@media(max-width:900px){
 .dsg{display:block;min-height:0;background-image:none!important;background:var(--ink)}
 .dsg:before{display:none}
 .dsg:after{content:"";display:block;aspect-ratio:16/10;background:url(/img/uu/bar.jpg) 60% 55%/cover no-repeat}
 .dsg .wrap{padding:44px 20px 40px}
 .dsg-box{max-width:560px}
}
@media(max-width:900px){.dsg{display:flex;flex-direction:column-reverse}.dsg:after{width:100%}}
.dsg{align-items:flex-end;padding-bottom:56px}
.dsg:before{background:linear-gradient(90deg,rgba(14,17,20,.6) 0%,rgba(14,17,20,.28) 26%,rgba(14,17,20,0) 46%),linear-gradient(0deg,rgba(14,17,20,.62) 0%,rgba(14,17,20,0) 46%)}
@media(max-width:900px){.dsg{padding-bottom:0}}
/* --- Leasing: Abschnitt vor den FAQ, reduziert --- */
.lsg{position:relative;min-height:520px;display:flex;align-items:flex-end;background:#1d2227;color:#fff;padding:0 0 56px;overflow:hidden}
.lsg .lsgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.lsg:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(14,17,20,.62) 0%,rgba(14,17,20,.28) 26%,rgba(14,17,20,0) 46%),linear-gradient(0deg,rgba(14,17,20,.55) 0%,rgba(14,17,20,0) 44%)}
.lsg .wrap{position:relative;z-index:2;width:100%}
.lsg-box{max-width:420px}
.lsg .eyebrow{color:#f0c07c;margin-bottom:12px}
.lsg h2{font-size:clamp(26px,2.8vw,40px);line-height:1.14;margin:0 0 14px;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.lsg p{margin:0;font-size:clamp(16px,1.25vw,18px);line-height:1.55;color:#ecebe8;text-shadow:0 1px 10px rgba(0,0,0,.45)}
@media(max-width:900px){
 .lsg{display:block;min-height:0;padding:0;background:var(--ink)}
 .lsg:before{display:none}
 .lsg .lsgimg{position:static;height:auto;aspect-ratio:16/10}
 .lsg .wrap{padding:40px 20px 44px}
 .lsg-box{max-width:560px}
}
.lsg .lsgimg{object-position:50% 64%}
.lsg:before{background:linear-gradient(90deg,rgba(14,17,20,.78) 0%,rgba(14,17,20,.5) 24%,rgba(14,17,20,.1) 44%,rgba(14,17,20,0) 52%),linear-gradient(0deg,rgba(14,17,20,.4) 0%,rgba(14,17,20,0) 40%)}
@media(max-width:900px){.lsg .lsgimg{object-position:50% 60%}}
@media(min-width:901px){
 .lsg .lsgimg{left:24%;width:76%;object-position:42% 62%}
 .lsg:before{background:linear-gradient(90deg,#1d2227 0%,#1d2227 24%,rgba(29,34,39,.55) 31%,rgba(29,34,39,0) 42%),linear-gradient(0deg,rgba(14,17,20,.35) 0%,rgba(14,17,20,0) 36%)}
}

/* --- SEO Fase 1: Heading-Semantik ohne optische Änderung, Bildmaße, 404 --- */
.ph2{font-size:clamp(26px,3.2vw,38px);line-height:1.2;margin:0 0 16px;font-weight:700;overflow-wrap:break-word;hyphens:manual}
@media(max-width:700px){.ph2{hyphens:auto}}
header img,footer img{width:auto}
.cta404{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}

/* --- Sektorseiten --- */
.steplist{list-style:none;margin:0;padding:0;counter-reset:st;max-width:880px}
.steplist li{counter-increment:st;display:grid;grid-template-columns:78px 1fr;gap:22px;padding:24px 0;border-top:1px solid var(--line)}
.steplist li:last-child{border-bottom:1px solid var(--line)}
.steplist li:before{content:"0" counter(st);font-size:44px;font-weight:800;line-height:1;color:var(--accent)}
.steplist b{display:block;font-size:20px;margin-bottom:6px}.steplist p{margin:0;color:#4b535c}
.vidframe{position:relative;aspect-ratio:16/9;border-radius:6px;overflow:hidden;background:#1d2227 center/cover no-repeat;box-shadow:0 16px 40px rgba(0,0,0,.18)}
.vidframe video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.vidframe video::-webkit-media-controls{display:none!important}
.split.sec{gap:64px}.split.sec .sshot{aspect-ratio:4/3;object-fit:cover;width:100%}
.split.sec.rev>:first-child{order:2}
p.lnk{margin:18px 0 0}p.lnk a{font-weight:700;color:var(--accent-d);margin-right:22px;display:inline-block}
.sector-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:22px}.sector-links a{font-weight:700;color:var(--accent-d)}
.darkband .lead{color:#d9dde1}
@media(max-width:900px){.split.sec.rev>:first-child{order:0}.split.sec{gap:34px}}
@media(max-width:560px){.steplist li{grid-template-columns:54px 1fr;gap:14px}.steplist li:before{font-size:32px}}
@media(prefers-reduced-motion:reduce){.vidframe video{display:none}}

.plhero.shero:after{background:linear-gradient(0deg,rgba(14,17,20,.88) 0%,rgba(14,17,20,.66) 30%,rgba(14,17,20,.22) 58%,rgba(14,17,20,0) 78%)}
.plhero.shero.top{align-items:flex-start}.plhero.shero.top .plhero-in{padding:54px 0 0}
.plhero.shero.top:after{background:linear-gradient(180deg,rgba(14,17,20,.86) 0%,rgba(14,17,20,.6) 34%,rgba(14,17,20,.12) 62%,rgba(14,17,20,0) 78%)}
.steplist b{color:var(--ink);font-weight:700}.steplist p{font-weight:400}
@media(max-width:900px){.plhero.shero.top{align-items:stretch}.plhero.shero.top .plhero-in{padding:34px 0 44px}}
.plhero.shero.right .plhero-in .wrap{display:flex;flex-direction:column;align-items:flex-end}
.plhero.shero.right .plhero-in .wrap>*{width:min(540px,100%);max-width:540px}
@media(max-width:900px){.plhero.shero.right .plhero-in .wrap{align-items:stretch}.plhero.shero.right .plhero-in .wrap>*{width:auto}}

/* Home: card Restaurants & Pizzerien con due link nel titolo (aspetto invariato) */
.tile.multi{cursor:pointer}
.tile.multi .tilecover{position:absolute;inset:0;z-index:1}
.tile.multi:before{pointer-events:none}
.tile.multi>div{pointer-events:none}
.tile.multi h3 a{pointer-events:auto;color:inherit;text-decoration:none;position:relative}
.tile.multi h3 a:hover,.tile.multi h3 a:focus-visible{text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:2px}
.benefit p.lnk{margin-top:14px;font-size:15px}
.benefit p.lnk a{display:block;margin:0 0 6px}
p.lnk.sektoren{margin-top:22px}

/* Kontaktformular */
form .hp{position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden}
form .ferr{color:#a12d2d;font-size:13px;margin-top:4px}
form [aria-invalid="true"]{border-color:#a12d2d}
form .fmsg{margin:0;padding:12px 14px;border-radius:4px;font-size:15px}
form .fmsg.ok{background:#e8f1e6;color:#2d5a27}form .fmsg.err{background:#f6e3e3;color:#7a2222}
form .fnote{margin:0;font-size:13px;color:#6a727a}form .fnote a{color:inherit;text-decoration:underline}

/* --- Einwilligung (Cookie-Banner, lokal) --- */
.cc-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:9000;display:flex;justify-content:center;pointer-events:none}
.cc-banner[hidden],.cc-overlay[hidden]{display:none}
.cc-box{pointer-events:auto;background:#fff;color:var(--ink);max-width:780px;width:100%;border-radius:8px;border-top:4px solid var(--accent);box-shadow:0 12px 40px rgba(0,0,0,.28);padding:22px 24px}
.cc-title{font-size:20px;line-height:1.25;margin:0 0 8px;color:var(--ink)}
.cc-text{margin:0 0 16px;font-size:15px;line-height:1.55;color:#3a424b}
.cc-text a,.cc-row a{color:var(--ink);text-decoration:underline}
.cc-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cc-btn{font:inherit;font-weight:700;font-size:15px;min-height:44px;padding:10px 20px;border-radius:4px;border:2px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer}
.cc-btn:hover{background:#000;border-color:#000}
.cc-btn.cc-link{background:transparent;color:var(--ink);text-decoration:underline;border-color:transparent;padding:10px 8px}
.cc-btn.cc-link:hover{background:rgba(0,0,0,.06)}
.cc-banner :focus-visible,.cc-overlay :focus-visible,footer a[data-cc-open]:focus-visible{outline:3px solid var(--accent-d);outline-offset:2px}
.cc-overlay{position:fixed;inset:0;z-index:9100;background:rgba(20,24,28,.6);display:flex;align-items:center;justify-content:center;padding:16px}
.cc-panel{position:relative;background:#fff;color:var(--ink);max-width:600px;width:100%;max-height:calc(100vh - 32px);overflow:auto;border-radius:8px;padding:28px 26px;box-shadow:0 16px 48px rgba(0,0,0,.35);outline:none}
.cc-x{position:absolute;top:10px;right:12px;width:44px;height:44px;border:0;background:transparent;font-size:30px;line-height:1;cursor:pointer;color:var(--ink);border-radius:4px}
.cc-x:hover{background:rgba(0,0,0,.06)}
.cc-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:16px 0;border-top:1px solid var(--line)}
.cc-row p{margin:4px 0 0;font-size:14px;line-height:1.5;color:#3a424b}
.cc-panel .cc-actions{margin-top:18px}
.cc-sw{position:relative;flex:0 0 auto;width:52px;height:30px;display:inline-block;margin-top:2px}
.cc-sw input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:2}
.cc-sw span{position:absolute;inset:0;background:#8a9199;border-radius:30px;transition:background .15s}
.cc-sw span:after{content:"";position:absolute;left:4px;top:4px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s}
.cc-sw input:checked+span{background:var(--ink)}
.cc-sw input:checked+span:after{transform:translateX(22px)}
.cc-sw input:disabled{cursor:not-allowed}.cc-sw input:disabled+span{opacity:.6}
.cc-sw input:focus-visible+span{outline:3px solid var(--accent-d);outline-offset:3px}
.cc-live{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
html.cc-lock{overflow:hidden}
@media(max-width:560px){.cc-banner{left:8px;right:8px;bottom:8px}.cc-box{padding:16px}.cc-text{font-size:14px}.cc-actions .cc-btn{flex:1 1 calc(50% - 10px)}.cc-actions .cc-btn.cc-link{flex:1 1 100%}.cc-panel{padding:24px 18px}}
@media(prefers-reduced-motion:reduce){.cc-sw span,.cc-sw span:after{transition:none}}
.legal .wrap{max-width:860px}.legal p{line-height:1.7}.legal ul{margin:0 0 16px;padding-left:22px;line-height:1.7}.legal li{margin-bottom:4px}.legal h2{overflow-wrap:anywhere}.legal a{overflow-wrap:anywhere}

/* Home: Neupositionierung (Planung · Raumkonzept · Einrichtung · Technik) */
.hero .wrap .heyebrow{color:#f0c07c;margin-bottom:16px;font-size:clamp(10px,.82vw,12px);letter-spacing:1.8px;max-width:none;white-space:nowrap;text-shadow:0 1px 12px rgba(0,0,0,.45)}
@media(max-width:700px){.hero .wrap .heyebrow{white-space:normal;letter-spacing:1.4px;line-height:1.5}}
.hero .wrap p.hsub{max-width:520px}
.hero .wrap p.harea{margin:22px 0 0;font-size:13px;letter-spacing:1.6px;text-transform:uppercase;color:#fff}
.hero .wrap p.harea a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}.hero .wrap p.harea a:hover{border-bottom-color:#fff}
.pillars h3 a{color:inherit;text-decoration:none;border-bottom:2px solid var(--accent)}.pillars h3 a:hover{color:var(--accent-d)}
.seclinks{margin:30px 0 0;font-size:16px;color:#4b535c}.seclinks a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:3px}.seclinks a:hover{color:var(--accent-d)}
@media(max-width:700px){.hero .wrap .heyebrow{color:#ffd9a0;font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.9),0 0 14px rgba(0,0,0,.75)}.hero:before{background:linear-gradient(0deg,rgba(18,22,26,.9) 0%,rgba(18,22,26,.66) 48%,rgba(18,22,26,.18) 80%,rgba(18,22,26,0) 100%)}.hero .wrap p.harea{font-size:12px;letter-spacing:1.3px}}

/* Planung: Neupositionierung als Gastronomieplanung */
.plhero.plgo p+p{margin-top:12px}.plhero.plgo .plbtn{display:flex;gap:12px;flex-wrap:wrap}.plhero.plgo p.plbtn{margin-top:22px}
.plwide{display:block;width:100%;height:auto;max-height:520px;object-fit:cover;border-radius:6px;margin-top:44px}
.lvl4{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.lvl4>div{padding:30px 26px 10px 0;border-right:1px solid var(--line);margin-right:26px}.lvl4>div:last-child{border-right:0;margin-right:0}
.lvl4 .n{display:block;font-size:46px;font-weight:800;line-height:1;color:var(--accent);margin-bottom:14px}
.lvl4 h3{font-size:22px;margin:0 0 10px}.lvl4 h3 a{color:inherit;text-decoration:none;border-bottom:2px solid var(--accent)}.lvl4 p{margin:0;color:#4b535c}
.teamgast.split{align-items:center}.teamgast img{border-radius:6px;width:100%;height:auto}
.cols2.tg{margin:22px 0 18px;gap:34px}.cols2.tg h3{font-size:20px;margin:0 0 8px}.cols2.tg p{margin:0;color:#4b535c}
.sectorlinks{display:flex;flex-wrap:wrap;gap:12px;margin:34px 0 0}.sectorlinks a{display:inline-block;padding:14px 22px;border:2px solid var(--ink);border-radius:4px;color:var(--ink);font-weight:700;text-decoration:none}.sectorlinks a:hover{background:var(--ink);color:#fff}
ul.check.two a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.lvl4{grid-template-columns:1fr}.lvl4>div{border-right:0;border-bottom:1px solid var(--line);margin:0;padding:24px 0}.cols2.tg{gap:20px}}

.plhero.plgo:after{background:linear-gradient(90deg,rgba(14,17,20,.82) 0%,rgba(14,17,20,.62) 34%,rgba(14,17,20,.18) 60%,rgba(14,17,20,0) 74%),linear-gradient(0deg,rgba(14,17,20,.8) 0%,rgba(14,17,20,.42) 20%,rgba(14,17,20,0) 44%)}
.plhero.plgo h1{max-width:600px}.plhero.plgo .eyebrow{text-shadow:0 1px 10px rgba(0,0,0,.7)}
@media(max-width:900px){.plhero.plgo:after{display:none}}

/* Einrichtung: Neupositionierung */
.pagehead.einr p+p{margin-top:12px}.pagehead.einr .plbtn{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.pagehead.einr .eyebrow{margin-bottom:12px}
.sitzsplit.split{align-items:center}.sitzsplit img{border-radius:6px;width:100%;height:auto;padding:0;background:none}
.nota{margin:-4px 0 22px;font-size:15px;letter-spacing:.3px;color:#6a727a}
#linien .seclinks{margin-top:44px}#linien .catblock:first-of-type{margin-top:34px}

/* Einrichtung: Hero mit Raumbild (img/fin-konzept.jpg) */
.plhero.einhero>img{object-position:50% 40%}
@media(max-width:900px){.plhero.einhero>img{aspect-ratio:3/2;object-position:62% 45%}}
@media(max-width:560px){.plhero.einhero>img{aspect-ratio:3/2;object-position:64% 45%}}

/* Über uns: Neupositionierung (Hero-Bild nur mit Logo, Text darunter) */
.uhero.uclean:after{display:none}
.uhero.uclean .uhero-text{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;background:#14181c;color:#fff;padding:56px 0 64px;line-height:1.5}
.uhero.uclean .uhero-text .wrap{padding:0}
.uhero.uclean .uhero-text .eyebrow{color:#f0c07c;margin-bottom:14px;font-size:13px}
.uhero.uclean .uhero-text h1{font-size:clamp(30px,3.6vw,54px);line-height:1.1;max-width:900px;margin:0 0 20px;text-shadow:none}
.uhero.uclean .uhero-text p{max-width:760px;font-size:clamp(16px,1.3vw,19px);color:#d9dde1;margin:0 0 12px;text-shadow:none}
.uhero.uclean .uhero-text p.ubtn{margin:28px 0 0}
.uhero.uclean img{aspect-ratio:auto;object-fit:cover}
@media(max-width:900px){.uhero.uclean .uhero-text{padding:40px 0 48px}.uhero.uclean .uhero-text .wrap{padding:0 20px}}
@media(max-width:760px){.uhero.uclean img{aspect-ratio:4/3;object-position:30% 50%}.uhero.uclean .uhero-text h1{font-size:30px}}
.aud a.tile{cursor:pointer}.aud a.tile:hover{outline:3px solid var(--accent);outline-offset:-3px}
ul.check.ulist{color:#e6e9ec}ul.check.ulist a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media(min-width:901px){.uhero.uclean img{height:min(80vh,780px);width:100%;object-fit:cover;object-position:50% 42%}}
