
:root{--red:#d2051e;--red-d:#a8041a;--ink:#524f53;--ink-d:#2b2a2c;--line:#d7d4cf;--bg2:#f3f2f0;--w:#fff;--witan:#1f2a33}
*{box-sizing:border-box}html,body{margin:0}
body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--w);font-size:14px;line-height:1.45}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1280px;margin:0 auto;padding:0 16px}
.topbar{background:linear-gradient(100deg,#c40419 0%,var(--red) 40%,#b8041a 100%);color:#fff;font-size:12px;text-transform:uppercase}
.topbar .wrap{display:flex;justify-content:flex-end;align-items:center;gap:22px;height:40px}
.topbar input{background:transparent;border:0;border-bottom:1px solid #fff;color:#fff;padding:4px 2px;width:240px;font-size:13px}
.topbar input::placeholder{color:#fde}
.header{border-bottom:1px solid var(--line);background:#fff}
.header .wrap{display:flex;align-items:center;gap:28px;height:68px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700}
.brand{gap:14px}.brand:hover{text-decoration:none}
.brand .lg-hilti{height:34px;width:auto}
.brand .lg-witan{height:34px;width:auto}
.brand .sep{width:1px;height:34px;background:var(--line)}
.nav a{white-space:nowrap}
@media(max-width:600px){.topbar .wrap>span,.topbar .wrap>a:first-child{display:none}.brand .lg-hilti,.brand .lg-witan{height:24px}.brand{gap:12px}.brand .lg-hilti,.brand .lg-witan{height:26px}}
.nav{display:flex;gap:22px;font-weight:700;color:var(--ink-d)}
.nav a.on{color:var(--red)}
.brand .lg-witan{height:42px;margin-left:-4px}
.claim{margin-left:auto;font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--ink-d);white-space:nowrap}.claim span{color:var(--red)}.claim:hover{text-decoration:none}
@media(max-width:1100px){.claim{font-size:12px;white-space:normal;text-align:right;max-width:150px}}
@media(max-width:600px){.brand .lg-witan{height:30px}.claim{font-size:9px;max-width:80px;letter-spacing:.2px}}
.crumbs{font-size:12px;padding:14px 0 4px}.crumbs a{margin-right:4px}
h1{color:var(--red);text-transform:uppercase;font-size:22px;font-weight:400;margin:6px 0 16px}
h1 small{color:var(--ink);font-size:14px;text-transform:none;margin-left:6px}
h2{color:var(--ink-d);font-size:18px;margin:0 0 12px}
.btn{display:inline-block;background:var(--red);color:#fff;border:0;padding:11px 22px;font-weight:700;text-transform:uppercase;font-size:12px;cursor:pointer;text-align:center}
.btn:hover{background:var(--red-d);text-decoration:none}
.btn.ghost{background:#fff;color:var(--red);border:1px solid var(--red)}
.hero{display:grid;grid-template-columns:2fr 1fr;gap:10px;margin:16px 0 28px}
.hero .big{background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.15)),var(--ink-d);color:#fff;padding:56px 40px;min-height:330px;display:flex;flex-direction:column;justify-content:center;background-size:cover;background-position:center}
.hero .big .kick{font-size:12px;text-transform:uppercase;margin-bottom:12px}
.hero .big h2{color:#fff;font-size:34px;line-height:1.15;margin-bottom:14px}
.hero .side{display:grid;gap:10px}
.hero .side div{background:var(--ink-d);color:#fff;padding:20px;background-size:cover;background-position:center;position:relative}
.hero .side b{display:block;font-size:18px;margin:6px 0}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-bottom:36px}
.tile{border:1px solid var(--line);padding:14px;display:flex;flex-direction:column;gap:8px;background:#fff}
.tile:hover{border-color:var(--red);text-decoration:none}
.tile img{height:150px;object-fit:contain;width:100%}
.tile b{color:var(--ink-d)}.tile span{font-size:12px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:40px}
.steps div{border-top:3px solid var(--red);background:var(--bg2);padding:16px}
.steps b{display:block;color:var(--ink-d);margin-bottom:4px}
.listing{display:grid;grid-template-columns:240px 1fr;gap:20px;margin-bottom:40px}
.filters{border-top:1px solid var(--line)}
.filters h3{font-size:20px;color:var(--ink-d);margin:12px 0}
.filters fieldset{border:0;border-top:1px solid var(--line);padding:12px 0;margin:0}
.filters legend{font-weight:700;color:var(--ink-d);padding:0;margin-bottom:6px}
.filters label{display:block;font-size:13px;margin:3px 0;cursor:pointer}
.count{text-align:right;font-weight:700;margin-bottom:10px}
.row{border:1px solid var(--line);margin-bottom:12px;background:#fff}
.row .t{background:var(--bg2);padding:10px 14px;font-weight:700;color:var(--ink-d);font-size:15px}
.row .b{display:grid;grid-template-columns:220px 1fr 1fr;gap:18px;padding:14px}
.row img{width:100%;height:150px;object-fit:contain}
.row dl{margin:0;font-size:13px}.row dt{font-weight:700;color:var(--ink-d)}.row dd{margin:0 0 8px}
.row .price{font-size:16px;color:var(--ink-d);font-weight:700;margin:8px 0}
.pd{display:grid;grid-template-columns:1.2fr 1fr;gap:36px;margin-bottom:30px}
.tabs{display:flex;gap:26px;border-bottom:1px solid var(--line);margin-bottom:18px;font-size:12px;font-weight:700}
.tabs a{padding:10px 0}.tabs a.on{color:var(--red);border-bottom:2px solid var(--red)}
.gallery .main{width:100%;height:380px;object-fit:contain;background:#fff}
.thumbs{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.thumbs img{width:64px;height:64px;object-fit:contain;border:1px solid var(--line);cursor:pointer}
.panel h2{font-size:20px}
.panel label{display:block;font-weight:700;color:var(--ink-d);margin:12px 0 4px;font-size:13px}
.panel select,.panel input,.panel textarea{width:100%;border:1px solid var(--line);padding:9px;font:inherit;color:var(--ink-d)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.info{background:var(--bg2);border-left:3px solid var(--red);padding:10px 12px;margin:14px 0;font-size:13px}
.sum{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:12px;margin-top:14px}
.sum b{font-size:22px;color:var(--ink-d)}
.panel .btn{width:100%;margin-top:12px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{position:relative}.panel .chip input{position:absolute;opacity:0;width:1px;height:1px;left:0;top:0}
.chip span{display:inline-block;border:1px solid var(--line);padding:8px 12px;cursor:pointer;font-size:13px;color:var(--ink-d)}
.chip input:checked+span{border-color:var(--red);color:var(--red);font-weight:700;box-shadow:inset 0 0 0 1px var(--red)}
.chip input:focus-visible+span{outline:2px solid var(--ink-d)}
.ret{margin-top:8px;font-size:13px;color:var(--ink-d)}
.adr{border:1px solid var(--line);padding:4px 12px 12px;margin:14px 0 0}
.adr legend{font-weight:700;color:var(--red);padding:0 4px}
.kitbox{border:1px solid var(--line);max-height:340px;overflow:auto}
.kgh{background:var(--bg2);font-weight:700;color:var(--ink-d);font-size:12px;text-transform:uppercase;padding:6px 10px;position:sticky;top:0;z-index:1}
.kit{display:grid;grid-template-columns:20px 44px 1fr 56px;gap:10px;align-items:center;padding:6px 10px;border-top:1px solid var(--line)}
.kit.on{background:#fdf2f3}
.panel .kit input.kc{width:18px;height:18px;accent-color:var(--red)}
.kit img{width:44px;height:44px;object-fit:contain}
.kn{font-size:13px;color:var(--ink-d)}.kn small{display:block;color:var(--ink)}
.panel .kit input.kq{padding:5px;text-align:center}
.kcnt{color:var(--red);font-weight:400}
.lead{max-width:900px;margin:-6px 0 18px;font-size:15px}
.listing.nofilt{grid-template-columns:1fr}
.rentinfo{border-top:1px solid var(--line);margin-top:18px;padding-top:6px}.rentinfo h2{font-size:16px;margin:10px 0 6px}
h2.h1{color:var(--red);text-transform:uppercase;font-size:22px;font-weight:400;margin:6px 0 16px}
.sum span small{display:block;font-size:12px;color:var(--ink)}
.rnote{font-size:12px;color:var(--red);font-weight:700;padding:6px 0}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.fmsg.err{color:var(--red);font-weight:700;margin-top:10px}
.fok{border-left:4px solid var(--red);background:var(--bg2);padding:20px;font-size:15px;color:var(--ink-d)}
.fok b{display:block;font-size:18px;margin-bottom:6px}.fok .btn{margin-top:14px;width:auto}
button.btn:disabled{opacity:.6;cursor:wait}
.vts{display:grid;gap:6px;max-height:260px;overflow:auto}
.vt{position:relative;display:block;margin:0!important;cursor:pointer}
.panel .vt input{position:absolute;opacity:0;width:1px;height:1px}
.vt span{display:block;border:1px solid var(--line);padding:9px 12px;font-weight:400}
.vt b{display:block;color:var(--ink-d);font-size:13px}.vt small{font-size:12px;color:var(--ink)}
.vt.on span{border-color:var(--red);box-shadow:inset 3px 0 0 var(--red);background:#fff}
.vt input:focus-visible+span{outline:2px solid var(--ink-d)}
.req{float:right;color:var(--red);text-transform:none;font-weight:700}
.kgrp.bad .kgh{background:#fdecee}
.kerr,.ferr{color:var(--red);font-size:13px;font-weight:700;padding:8px 10px}
.kn em{display:block;font-style:normal;font-size:11px;color:var(--red);font-weight:700}
.kit.forced{background:#fdf2f3}
.panel .kit select.kv{margin-top:4px;padding:4px 6px;font-size:12px}
table.rates{width:100%;border-collapse:collapse;margin-top:14px;font-size:13px}
table.rates th{text-align:left;font-weight:700;color:var(--ink-d);border-bottom:1px solid var(--line);padding:6px}
table.rates td{padding:6px;border-bottom:1px solid var(--line)}
table.rates td:last-child,table.rates th:last-child{text-align:right}
table.rates tr.on td{background:var(--bg2);color:var(--red);font-weight:700}
table.spec{width:100%;border-collapse:collapse;margin-bottom:36px}
table.spec td{border-bottom:1px solid var(--line);padding:9px 6px;vertical-align:top}
table.spec td:first-child{width:45%;font-weight:700;color:var(--ink-d)}
.footer{background:var(--witan);color:#cfd6db;margin-top:20px;font-size:13px}
.footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;padding:30px 16px}
.footer b{color:#fff;display:block;margin-bottom:6px}
.footer .legal{grid-column:1/-1;border-top:1px solid #3a4752;padding-top:14px;font-size:12px}
.searchres{display:none;position:absolute;right:16px;top:40px;width:420px;background:#fff;color:var(--ink-d);box-shadow:0 8px 24px rgba(0,0,0,.2);z-index:9;max-height:420px;overflow:auto;text-transform:none}
.searchres a{display:flex;gap:10px;padding:8px 10px;border-bottom:1px solid var(--line);align-items:center}
.searchres img{width:40px;height:40px;object-fit:contain}
@media(max-width:900px){.hero,.listing,.pd,.row .b,.steps,.footer .wrap{grid-template-columns:1fr}.nav{display:none}.topbar .wrap{gap:10px}.topbar input{width:140px}.searchres{width:calc(100% - 32px)}.filters{display:none}}

.slider{position:relative;margin:16px 0 0;display:grid;grid-template-columns:2fr 1fr;gap:10px}
.slides{position:relative;min-height:400px;overflow:hidden;background:var(--ink-d)}
.slide{position:absolute;inset:0;background-size:cover;background-position:center;color:#fff;display:flex;flex-direction:column;justify-content:center;padding:40px;opacity:0;transition:opacity .6s;pointer-events:none}
.slide.on{opacity:1;pointer-events:auto}
.slide::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.75) 0%,rgba(0,0,0,.35) 55%,rgba(0,0,0,0) 100%)}
.slide>*{position:relative;max-width:520px}
.slide .kick{font-size:12px;text-transform:uppercase;margin-bottom:10px;letter-spacing:.5px}
.slide h1,.slide h2{color:#fff;font-size:34px;line-height:1.15;margin:0 0 12px;text-transform:none;font-weight:700}
.slide p{margin:0 0 18px;font-size:15px}
.dots{display:flex;justify-content:center;gap:8px;align-items:center;margin:12px 0 26px}
.dots button{width:26px;height:4px;border:0;background:var(--line);cursor:pointer;padding:0}
.dots button.on{width:56px;background:var(--red)}
.side2{display:grid;gap:10px}
.promo{position:relative;background-size:cover;background-position:center;color:#fff;padding:22px;display:flex;flex-direction:column;justify-content:flex-start;min-height:195px}
.promo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.1) 75%)}
.promo>*{position:relative}.promo small{font-size:12px;text-transform:uppercase}.promo b{display:block;font-size:19px;line-height:1.25;margin:6px 0 10px;max-width:260px}
.promo:hover{text-decoration:none}.promo:hover b{text-decoration:underline}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.sec-h a{font-weight:700;color:var(--red);font-size:13px;white-space:nowrap}
.pop{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:40px}
.pcard{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}
.pcard img{width:100%;height:190px;object-fit:contain;padding:12px}
.pcard div{padding:12px 14px 16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;flex:1}
.pcard b{color:var(--ink-d)}.pcard span{font-size:12px}.pcard .btn{margin-top:auto}
.pcard:hover{border-color:var(--red);text-decoration:none}
.how{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:40px}
.how div{background:#fff;border:1px solid var(--line)}
.how img{width:100%;height:170px;object-fit:cover;display:block}
.how p{margin:0;padding:14px}.how b{display:block;color:var(--ink-d);margin-bottom:4px}
.how em{font-style:normal;color:var(--red);font-weight:700;margin-right:6px}
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:40px}
.why div{position:relative;min-height:260px;background-size:cover;background-position:center;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;padding:20px}
.why div::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,0) 65%)}
.why div>*{position:relative}.why b{font-size:19px;display:block;margin-bottom:6px}
.cta{display:grid;grid-template-columns:1.2fr 1fr;background:var(--ink-d);color:#fff;margin-bottom:40px}
.cta img{width:100%;height:100%;object-fit:cover;min-height:260px;display:block}
.cta div{padding:32px}.cta h2{color:#fff;font-size:24px}.cta p{margin:0 0 16px}
.cta .row2{display:flex;gap:10px;flex-wrap:wrap}
.cta a.tel{font-size:24px;font-weight:700;display:block;margin:6px 0 16px}
.info-page{display:grid;grid-template-columns:1.4fr 1fr;gap:36px;margin-bottom:40px}
.info-page img{width:100%;display:block}
.info-page h2{margin-top:22px}
.info-page ol,.info-page ul{padding-left:20px}.info-page li{margin-bottom:6px}
.kontakt-dl{display:grid;grid-template-columns:140px 1fr;gap:8px 16px;margin:0 0 20px}
.kontakt-dl dt{font-weight:700;color:var(--ink-d)}.kontakt-dl dd{margin:0}
@media(max-width:900px){.slider,.pop,.how,.why,.cta,.info-page{grid-template-columns:1fr}.slides{min-height:360px}.slide{padding:26px}.slide h1,.slide h2{font-size:26px}.pop{grid-template-columns:1fr 1fr}}
