/* No Limit KFZ — hell, klar, ein Akzent. Aufbau: Hinweisleiste, Bild-Hero mit Infokarte, Schnellwahl, Bildkarten, FAQ. */
/* Schrift lokal gehostet (Archivo, SIL Open Font License), keine Verbindung zu Google */
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-stretch:100% 125%;font-display:swap;src:url(assets/fonts/archivo-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 800;font-stretch:100% 125%;font-display:swap;src:url(assets/fonts/archivo-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  --bg:#fff; --tint:#f4f3f1; --ink:#15110f; --muted:#55504c;
  --accent:#d9151b; --accent-d:#b00f15; --ok:#1d6b3a;
  --r:8px; --wrap:1240px; --gutter:clamp(20px,4vw,48px);
  --font:'Archivo',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{font:400 18px/1.6 var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-x:clip}
img{display:block;max-width:100%}
a{color:inherit}
button,input{font:inherit;color:inherit}
.wrap{width:100%;max-width:calc(var(--wrap) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:10px 14px;border-radius:var(--r);z-index:99}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
h1,h2,h3{font-weight:700;letter-spacing:-.025em;line-height:1.08;text-wrap:balance}
h1{font-size:clamp(36px,4.4vw,60px);font-stretch:108%;letter-spacing:-.035em}
h2{font-size:clamp(30px,3vw,40px);font-stretch:106%}
h3{font-size:28px;letter-spacing:-.015em;line-height:1.15}
p{max-width:62ch}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border:0;border-radius:var(--r);font-weight:700;font-size:18px;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .2s,color .2s,transform .15s var(--ease)}
.btn:active{transform:scale(.98)}
.btn--lg{min-height:56px}
.btn--red{background:var(--accent);color:#fff}
.btn--red:hover{background:var(--accent-d)}
.btn--ink{background:var(--ink);color:#fff}
.btn--ink:hover{background:var(--accent)}
.btn--ghost{background:var(--tint);color:var(--ink)}
.btn--ghost:hover{background:var(--ink);color:#fff}

/* Hinweisleiste */
.notice{background:var(--tint)}
.notice__in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px;flex-wrap:wrap}
.notice p{font-size:18px}
.notice .btn{min-height:44px}

/* Kopf */
.head{position:sticky;top:0;z-index:10;background:var(--bg)}
.head__in{display:flex;align-items:center;gap:clamp(16px,3vw,40px);min-height:84px}
.head__logo img{height:54px;width:auto}
.head__nav{display:flex;gap:clamp(18px,2.6vw,36px);margin-left:clamp(8px,2vw,32px)}
.head__nav a,.head__tel{font-weight:600;font-size:18px;text-decoration:none;transition:color .15s}
.head__nav a:hover,.head__tel:hover{color:var(--accent)}
.head__tel{margin-left:auto}
.head__cta{min-height:48px}

/* Hero: ganzes Foto (4:3, beide Autos), Hintergrund füllt die Breite, Infokarte darüber */
.hero{position:relative;height:clamp(540px,41vw,600px);overflow:hidden;background:#eceae7}
.hero__stage{position:absolute;top:0;height:100%;aspect-ratio:4/3;right:max(var(--gutter),calc((100% - var(--wrap)) / 2));background:#eceae7}
.hero__stage>img{position:absolute;inset:0;margin:auto;height:100%;width:auto;max-width:100%;border-radius:22px;opacity:0;transition:opacity .9s ease;-webkit-mask-image:linear-gradient(to right,transparent,#000 26px,#000 calc(100% - 26px),transparent),linear-gradient(to bottom,transparent,#000 22px,#000 calc(100% - 22px),transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 26px,#000 calc(100% - 26px),transparent),linear-gradient(to bottom,transparent,#000 22px,#000 calc(100% - 22px),transparent);mask-composite:intersect}
.hero__stage>img.is-on{opacity:1}
.hero__dots{position:absolute;left:50%;transform:translateX(-50%);bottom:16px;display:flex;gap:2px;padding:2px 8px;border-radius:999px;background:rgba(21,17,15,.6);z-index:2}
.hero__dot{width:32px;height:32px;border:0;background:none;cursor:pointer;display:grid;place-items:center;padding:0}
.hero__dot::before{content:"";width:12px;height:12px;border-radius:50%;background:#fff;opacity:.5;transition:opacity .2s,transform .2s var(--ease)}
.hero__dot:hover::before{opacity:.85}
.hero__dot[aria-current=true]::before{opacity:1;transform:scale(1.25);background:var(--accent)}
.hero__dot:focus-visible{outline:3px solid #fff;outline-offset:-4px}
.hero__in{position:relative;height:100%;display:flex;align-items:center}
.hero__card{background:#fff;border-radius:var(--r);padding:clamp(24px,3vw,40px);max-width:540px}
.hero__sub{font-size:20px;font-weight:600;margin-top:16px}
.checks{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.checks li{position:relative;padding-left:40px;font-size:18px;line-height:1.45}
.checks li::before{content:"";position:absolute;left:0;top:.05em;width:26px;height:26px;border-radius:50%;background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M7 13.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.checks--sm li{font-size:18px}
.checks--sm li::before{width:24px;height:24px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.status{margin-top:20px;font-size:16px;color:var(--muted);display:flex;align-items:center;gap:10px}
.status::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--muted);flex:none}
.status.is-open::before{background:var(--ok)}
.status.is-closed::before{background:var(--accent)}

/* Schnellwahl */
.quick{padding-block:clamp(40px,5vw,64px) 0}
.quick h2{margin-bottom:24px}
.quick__list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.quick__list a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:12px 24px;background:var(--tint);border-radius:var(--r);font-weight:700;font-size:18px;text-decoration:none;transition:background-color .2s,color .2s}
.quick__list a::after{content:"";flex:none;width:10px;height:10px;border-top:3px solid currentColor;border-right:3px solid currentColor;transform:rotate(45deg);transition:transform .2s var(--ease)}
.quick__list a:hover{background:var(--ink);color:#fff}
.quick__list a:hover::after{transform:rotate(45deg) translate(3px,-3px)}

/* Bereiche */
.sec{padding-block:clamp(64px,8vw,120px)}
.sec--tint{background:var(--tint)}
.sec__head{margin-bottom:clamp(28px,4vw,48px)}
.sec__head p{margin-top:12px;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1.5fr;gap:clamp(32px,7vw,112px);align-items:start}
.split>*{min-width:0}
.split__head{position:sticky;top:112px}
.split__head>p{margin-top:20px;color:var(--muted);max-width:36ch}
.bring{font-size:16px}

/* Karussell: drei sichtbar, Pfeile */
.sec__head--row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.arrows{display:flex;align-items:center;gap:10px}
.arrows__count{font-size:16px;color:var(--muted);margin-right:8px}
.arrow{width:56px;height:56px;border:0;border-radius:var(--r);background:var(--ink);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background-color .2s,transform .15s var(--ease),opacity .2s}
.arrow svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.arrow:hover:not(:disabled){background:var(--accent)}
.arrow:active:not(:disabled){transform:scale(.94)}
.arrow:disabled{opacity:.28;cursor:default}
.carousel{margin-top:clamp(24px,3vw,40px)}
.carousel__track{display:flex;gap:clamp(16px,2vw,28px);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:var(--r)}
.carousel__track::-webkit-scrollbar{display:none}
.carousel__track:focus-visible{outline-offset:6px}
.slide{flex:0 0 calc((100% - 2 * clamp(16px,2vw,28px)) / 3);scroll-snap-align:start;display:flex;flex-direction:column;background:var(--tint);border-radius:var(--r);overflow:hidden;min-width:0}
.slide__img{margin:0;aspect-ratio:16/10;overflow:hidden}
.slide__img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.slide:hover .slide__img img{transform:scale(1.05)}
.slide__text{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(22px,2.4vw,32px);flex:1}
.slide__text h3{font-size:24px;letter-spacing:-.015em}
.slide__text p{margin:12px 0 24px;color:var(--muted);flex:1}
.slide .btn--ghost{background:#fff}
.slide .btn--ghost:hover{background:var(--ink)}


/* Bewertungen */
.star{display:block;width:20px;height:19px;flex:none;background:var(--accent);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 17'%3E%3Cpath d='M9 .8l2.5 5.4 5.9.7-4.3 4 1.1 5.8L9 14l-5.2 2.7 1.1-5.8-4.3-4 5.9-.7z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 17'%3E%3Cpath d='M9 .8l2.5 5.4 5.9.7-4.3 4 1.1 5.8L9 14l-5.2 2.7 1.1-5.8-4.3-4 5.9-.7z'/%3E%3C/svg%3E") center/contain no-repeat}
.star--off{background:#d6d2ce}
.stars{display:inline-flex;gap:3px}
.stars--lg .star{width:30px;height:28px}
.rv-summary{display:grid;grid-template-columns:minmax(260px,.8fr) 1.6fr;gap:clamp(16px,2vw,28px);margin-bottom:clamp(32px,4vw,56px)}
.rv-score,.rv-topics{background:var(--tint);border-radius:var(--r);padding:clamp(24px,3vw,40px)}
.rv-score{display:flex;flex-direction:column;align-items:flex-start}
.rv-score__asof{margin-top:auto!important;padding-top:18px}
.rv-score__num{font-size:clamp(56px,5vw,60px);font-weight:800;font-stretch:108%;letter-spacing:-.04em;line-height:1;margin-bottom:12px}
.rv-score__sub{margin-top:18px;line-height:1.45}
.rv-score__asof{margin-top:10px;font-size:16px;color:var(--muted)}
.rv-topics h3{font-size:20px;letter-spacing:-.01em;margin-bottom:18px}
.rv-topics__list{list-style:none;padding:0;display:grid;gap:8px}
.rv-topic{display:grid;grid-template-columns:minmax(170px,1.1fr) 2fr auto;align-items:center;gap:16px;width:100%;padding:12px 16px;border:0;border-radius:var(--r);background:#fff;text-align:left;cursor:pointer;font-weight:600;font-size:18px;transition:background-color .2s,color .2s}
.rv-topic:hover{background:var(--ink);color:#fff}
.rv-topic__bar{height:10px;border-radius:5px;background:#e1ded9;overflow:hidden}
.rv-topic__bar i{display:block;height:100%;width:0;background:var(--accent);border-radius:5px;transition:width .9s var(--ease)}
.rv-topic:hover .rv-topic__bar{background:#4a4540}
.rv-topic__n{font-size:16px;font-weight:600;color:var(--muted);min-width:7.5em;text-align:right}
.rv-topic:hover .rv-topic__n{color:#ece9e6}
.rv-bar{display:flex;justify-content:flex-end;margin-bottom:20px}
.qcard{background:var(--tint)}
.qcard__body{display:flex;flex-direction:column;padding:clamp(24px,2.4vw,32px);flex:1}
.qcard__text{margin:0 0 24px;font-size:18px;line-height:1.55;flex:1}
.qcard__who{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.qcard__av{flex:none;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:700;font-size:18px}
.qcard__name{font-weight:700;font-size:18px;line-height:1.2}
.qcard__who .stars{margin:0}
.qcard__who .star{width:16px;height:15px}
.rv-all{display:flex;gap:12px;margin-top:clamp(28px,3.4vw,48px);justify-content:center;flex-wrap:wrap}
.rv-panel{margin-top:clamp(28px,3.4vw,48px)}
.rv-panel:not([hidden]){animation:rvIn .5s var(--ease)}
@keyframes rvIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.rv-filter{display:flex;flex-wrap:wrap;gap:10px}
.rv-chip{min-height:46px;padding:0 18px;border:0;border-radius:var(--r);background:var(--tint);font-weight:600;font-size:18px;cursor:pointer;transition:background-color .15s,color .15s}
.rv-chip:hover{background:#e8e6e3}
.rv-chip[aria-pressed=true]{background:var(--ink);color:#fff}
.rv-panel__count{margin:20px 0;color:var(--muted);font-size:16px}
.rv-list{columns:3;column-gap:clamp(16px,2vw,28px)}
.rv-card{break-inside:avoid;background:var(--tint);border-radius:var(--r);padding:24px;margin:0 0 clamp(16px,2vw,28px)}
.rv-card__text{margin:0 0 18px;font-size:18px;line-height:1.55}
.rv-card__more{background:none;border:0;padding:0;margin:-8px 0 16px;font-weight:700;font-size:16px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.rv-card__more:hover{color:var(--accent)}
.rv-more{display:flex;justify-content:center;margin-top:12px}
.rv-more[hidden]{display:none}


/* Vertrauensleiste */
.trust{padding-block:clamp(32px,4vw,56px) 0}
.trust__list{list-style:none;padding:0;display:grid;grid-template-columns:1.25fr repeat(4,1fr);gap:12px}
.trust__list>li{display:flex;flex-direction:column;justify-content:center;gap:4px;min-height:112px;padding:20px 22px;background:var(--tint);border-radius:var(--r);min-width:0}
.trust__list strong{font-size:20px;line-height:1.2;letter-spacing:-.01em}
.trust__list span{font-size:16px;color:var(--muted);line-height:1.4}
.trust__list a{display:flex;flex-direction:column;gap:4px;text-decoration:none;height:100%;justify-content:center}
.trust__list a:hover strong{color:var(--accent)}
.trust__partner{background:var(--ink)!important;color:#fff}
.trust__partner .partner{color:#fff;font-size:28px;font-weight:800;font-stretch:112%;letter-spacing:-.02em;line-height:1}
.trust__partner .partner em{font-style:normal;color:#ff4a50}
.trust__partner span.trust__cap{color:#ece9e6}
.slide__actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.slide__more{font-weight:700;font-size:18px;text-underline-offset:4px}
.slide__more:hover{color:var(--accent)}
.foot__links{width:100%;display:flex;flex-wrap:wrap;gap:8px 24px}
.tel__lbl{display:none}


/* Unterseiten: Leistungen, Rechtliches, 404 */
.crumbs ol{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:4px 10px;font-size:16px;color:var(--muted)}
.crumbs li+li::before{content:"›";margin-right:10px}
.crumbs a{text-underline-offset:3px}
.crumbs a:hover{color:var(--accent)}
.page-head{padding-block:clamp(20px,3vw,36px) clamp(32px,5vw,64px)}
.page-head--plain{padding-bottom:clamp(8px,2vw,24px)}
.page-head h1{font-size:clamp(28px,5vw,72px);letter-spacing:-.035em;max-width:none}
.page-head--plain h1{margin-top:clamp(16px,2.4vw,28px)}
.page-head__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,72px);align-items:center;margin-top:clamp(20px,3vw,40px)}
.page-head__grid>*{min-width:0}
.page-head .lede{margin-top:20px;font-size:20px;color:var(--muted);max-width:44ch}
.page-head .actions{margin-top:28px}
.page-head__img{margin:0;border-radius:var(--r);overflow:hidden;aspect-ratio:13/5}
.page-head__img img{width:100%;height:100%;object-fit:cover}
.page-body{padding-block:clamp(24px,4vw,56px) clamp(56px,7vw,96px)}
.page-body__grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.prose h2{font-size:clamp(22px,5.4vw,28px);margin-bottom:16px}
.prose .h3{font-size:20px;letter-spacing:-.01em;margin:0 0 12px;font-stretch:100%}
.prose p{margin-bottom:18px;max-width:64ch}
.prose .checks{margin:24px 0 32px}
.note-box{background:var(--tint);border-radius:var(--r);padding:24px;margin:32px 0}
.dots{list-style:disc;padding-left:22px;display:grid;gap:8px}
.plain-ol{padding-left:24px;display:grid;gap:8px;margin:12px 0 28px}
.prose-sec{margin-top:40px}
.side{position:sticky;top:112px;background:var(--tint);border-radius:var(--r);padding:clamp(24px,2.4vw,32px);display:flex;flex-direction:column;gap:16px}
.side p{color:var(--muted);margin:0}
.side .h3{margin:0}
.side__tel{font-weight:800;font-size:28px;font-stretch:106%;letter-spacing:-.02em;text-decoration:none}
.side__tel:hover{color:var(--accent)}
.side__dl{display:grid;gap:16px;margin:0}
.side__dl dt{font-size:16px;color:var(--muted);font-weight:600}
.side__dl dd{font-size:18px;line-height:1.5}
.side__rating{display:flex;flex-direction:column;gap:2px;text-decoration:none;background:#fff;border-radius:var(--r);padding:14px 18px}
.side__rating strong{font-size:20px}
.side__rating span{font-size:16px;color:var(--muted)}
.side__rating:hover strong{color:var(--accent)}
.rel-h{margin-bottom:24px}
.rel{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rel a{display:flex;flex-direction:column;gap:8px;background:#fff;border-radius:var(--r);padding:24px;text-decoration:none;height:100%;transition:background-color .2s,color .2s}
.rel a:hover{background:var(--ink);color:#fff}
.rel strong{font-size:20px;line-height:1.2}
.rel span{font-size:18px;color:var(--muted);line-height:1.5}
.rel a:hover span{color:#ece9e6}
.rel--compact{grid-template-columns:1fr 1fr;gap:10px}
.rel--compact a{padding:16px 20px;background:var(--tint)}
.legal{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.legal--single{grid-template-columns:1fr}
.legal--single .legal__text{display:grid;grid-template-columns:1fr 1fr;gap:36px 64px}
.imp .h3{margin:0 0 8px}
.imp p{margin:0}
.legal__toc{position:sticky;top:112px}
.legal__toc-h{font-weight:700;margin-bottom:12px}
.legal__toc ol{list-style:none;padding:0;display:grid;gap:6px}
.legal__toc a{display:block;padding:10px 14px;border-radius:6px;text-decoration:none;font-size:16px;background:var(--tint);transition:background-color .15s,color .15s}
.legal__toc a:hover{background:var(--ink);color:#fff}
.legal__text h2{font-size:28px;margin:48px 0 16px;scroll-margin-top:100px}
.legal__text h2:first-child{margin-top:0}
.legal__text h3{font-size:20px;margin:28px 0 8px;letter-spacing:-.01em;font-stretch:100%}
.legal__text h4{font-size:18px;font-weight:700;margin:20px 0 6px}
.legal__text ul{padding-left:22px;display:grid;gap:8px;margin:0 0 18px}
.legal__text a{text-underline-offset:3px}
.legal__text .h3{margin-top:28px}
.err{padding-block:clamp(48px,8vw,120px)}
.err__grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.err__code{font-size:clamp(96px,14vw,200px);font-weight:900;font-stretch:125%;letter-spacing:-.05em;line-height:.9;color:var(--accent);margin-bottom:16px}
.err__hours{margin-top:24px;font-size:16px;color:var(--muted)}
.err .lede{margin-top:16px;font-size:20px;color:var(--muted);max-width:40ch}
.err .actions{margin-top:28px}
.err__links .h3{margin-bottom:16px}

/* Bildkarten */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.card{display:flex;flex-direction:column;background:var(--tint);border-radius:var(--r);overflow:hidden;min-width:0}
.card__img{margin:0;aspect-ratio:4/3;overflow:hidden}
.card__img img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.card:hover .card__img img{transform:scale(1.04)}
.card__text{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:clamp(22px,2.4vw,32px);flex:1}
.card__tag{font-size:16px;color:var(--muted);margin-bottom:6px}
.card .checks{margin:18px 0 28px;flex:1}
.card .btn--ghost{background:#fff}
.card .btn--ghost:hover{background:var(--ink)}

/* Aktuelles */
.news{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.news__item{display:flex;flex-direction:column;background:var(--tint);border-radius:var(--r);overflow:hidden;text-decoration:none;min-width:0;transition:background-color .2s,color .2s}
.news__item img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .7s var(--ease)}
.news__item:hover img{transform:scale(1.04)}
.news__item{overflow:hidden}
.news__item h3{font-size:20px;padding:22px 24px 0;line-height:1.2}
.news__item p{padding:10px 24px 0;color:var(--muted);font-size:18px;line-height:1.5}
.sec--tint .news__item{background:#fff}
.news__item:hover,.sec--tint .news__item:hover{background:var(--ink);color:#fff}
.news__item:hover p{color:#e8e5e2}
.more{margin:auto 0 0;padding:20px 24px 24px;font-weight:700;text-decoration:underline;text-underline-offset:4px}

/* Formular */
.form{display:grid;gap:0}
fieldset{border:0;padding:0;margin:0 0 28px}
legend{font-weight:700;font-size:20px;letter-spacing:-.01em;margin-bottom:14px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;min-height:48px;padding:0 20px;background:#fff;border-radius:var(--r);font-weight:600;font-size:18px;transition:background-color .15s,color .15s}
.chip:hover span{background:#e8e6e3}
.sec--tint input[type=text],.sec--tint input[type=email],.sec--tint input[type=tel],.sec--tint input[type=date],.sec--tint input:not([type]){background:#fff}
.chip input:checked+span{background:var(--ink);color:#fff}
.chip input:focus-visible+span{outline:3px solid var(--ink);outline-offset:3px}
label{display:block;font-weight:600;font-size:16px;margin:0 0 8px}
input[type=text],input[type=email],input[type=tel],input[type=date],input:not([type]){width:100%;min-height:52px;padding:12px 16px;background:var(--tint);border:0;border-radius:var(--r);font-size:18px}
input::placeholder{color:#6f6a66}
input:focus{outline:3px solid var(--ink);outline-offset:0}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.check{display:flex;gap:12px;align-items:flex-start;font-weight:400;font-size:16px;line-height:1.5;margin:20px 0 0;cursor:pointer}
.check input{flex:none;width:22px;height:22px;margin:0;accent-color:var(--accent)}
.form__foot{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}
.note{font-size:16px;color:var(--accent-d)}
.note.is-ok{color:var(--ok)}
.is-bad{outline:3px solid var(--accent)}

/* FAQ */
.faq{display:grid;gap:10px}
.faq details{background:var(--tint);border-radius:var(--r);transition:background-color .2s,color .2s}
.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;padding:14px 24px;font-weight:700;font-size:20px;letter-spacing:-.01em;line-height:1.25;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M9 1.5v15M1.5 9h15' stroke='%23000' stroke-width='3'/%3E%3C/svg%3E") center/100% no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M9 1.5v15M1.5 9h15' stroke='%23000' stroke-width='3'/%3E%3C/svg%3E") center/100% no-repeat;transition:transform .25s var(--ease)}
.faq details[open]{background:var(--ink);color:#fff}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 24px 24px}
.faq details[open] p{color:#ece9e6}
.faq details:not([open]):hover{background:#e8e6e3}

/* Kontakt */
.contact dl{display:grid;gap:28px}
.contact dt{font-size:16px;font-weight:600;color:var(--muted);margin-bottom:4px}
.contact dd{font-size:18px;line-height:1.5}
.contact a{text-underline-offset:3px}
.contact a:hover{color:var(--accent)}
.contact .big{font-size:28px;font-weight:700;font-stretch:106%;letter-spacing:-.02em;text-decoration:none}
.map{margin-top:32px;background:var(--tint);border-radius:var(--r);min-height:260px;padding:24px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:16px;position:relative;overflow:hidden;font-size:16px;color:var(--muted)}
.map .btn--ghost{background:#fff}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

.foot{background:var(--ink);color:#f1f1f1;padding-block:32px;font-size:16px}
.foot__in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.foot__credit{width:100%;max-width:none;font-size:16px;color:#d6d2ce}
.foot nav{display:flex;gap:24px}
.foot a{text-underline-offset:3px}
.foot a:hover{color:#fff}

.js .rv{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.js .rv.is-in{opacity:1;transform:none}

@media (max-width:1000px){
  .trust__list{grid-template-columns:1fr 1fr}
  .trust__partner{grid-column:1/-1}
  .rv-summary{grid-template-columns:1fr}
  .rv-list{columns:2}
  .slide{flex-basis:calc((100% - clamp(16px,2vw,28px)) / 2)}
  .head__nav{display:none}
  .cards,.news{grid-template-columns:1fr 1fr}
  .quick__list{grid-template-columns:1fr 1fr}
}
@media (max-width:900px){
  .page-head__grid,.page-body__grid,.legal,.err__grid{grid-template-columns:1fr}
  .side,.legal__toc{position:static}
  .rel{grid-template-columns:1fr}
  .rel--compact{grid-template-columns:1fr 1fr}
  .prose p,.page-head .lede,.err .lede{max-width:none}
  .legal--single .legal__text{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .split__head{position:static}
  .head__tel{margin-left:auto;display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;background:var(--tint);border-radius:var(--r)}
  .head__tel:hover{background:var(--ink);color:#fff}
  .tel__num{display:none}
  .tel__lbl{display:inline}
  .hero{height:auto;background:#fff;overflow:visible}
  .hero__stage{position:relative;right:auto;top:auto;width:100%;height:auto}
    .hero__in{display:block;height:auto;padding:0}
  .hero__card{max-width:none;border-radius:0;padding:32px var(--gutter)}
}
@media (max-width:640px){
  .head__in{gap:8px}
  .head__logo{flex:none}
  .head__logo img{width:auto;max-width:none}
  .head__tel{padding:0 14px;font-size:16px}
  .head__cta{padding:0 14px;font-size:16px}
  .trust__list{grid-template-columns:1fr}
  .rel--compact{grid-template-columns:1fr}
  .rv-list{columns:1}
  .rv-topic{grid-template-columns:1fr auto;gap:8px 12px}
  .rv-topic__bar{grid-column:1/-1;order:3}
  .rv-bar{justify-content:flex-start}
  .slide{flex-basis:86%}
  .arrows__count{display:none}
  .cards,.news,.quick__list{grid-template-columns:1fr}
  .row{grid-template-columns:1fr}
  .actions .btn{width:100%}
  .head__logo img{height:46px}
  .notice p{font-size:16px}
  .notice .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .js .rv{opacity:1;transform:none}
}

/* WhatsApp-Chatfenster (schwebend, unten rechts) */
.wa{position:fixed;right:clamp(14px,2vw,24px);bottom:clamp(14px,2vw,24px);z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-family:var(--font)}
.wa__fab{position:relative;width:64px;height:64px;border:0;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;cursor:pointer;border:3px solid #fff;transition:transform .2s var(--ease),background-color .2s;animation:waPop .7s .9s var(--ease) both}
.wa__fab svg{width:34px;height:34px;fill:currentColor;transition:transform .3s var(--ease)}
.wa__fab::before{content:"";position:absolute;inset:-3px;border-radius:50%;background:#25d366;z-index:-1;animation:waPulse 2.6s 1.8s ease-out infinite}
.wa__fab:hover{transform:scale(1.08);background:#20bd5a}
.wa__fab:active{transform:scale(.95)}
.wa__fab:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.wa.is-open .wa__fab::before{animation:none;opacity:0}
.wa__fab .wa__x{display:none;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;width:30px;height:30px}
.wa.is-open .wa__fab .wa__x{display:block}
.wa.is-open .wa__fab svg:not(.wa__x){display:none}
.wa__badge[hidden]{display:none}
.wa__badge{position:absolute;top:-2px;right:-2px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--accent);color:#fff;font-size:14px;font-weight:700;display:grid;place-items:center;border:2px solid #fff;animation:waBadge 1.8s 2.2s var(--ease) infinite}
.wa__hint{position:relative;max-width:240px;padding:12px 16px;background:#fff;color:var(--ink);border-radius:14px;font-size:16px;font-weight:600;line-height:1.35;box-shadow:0 8px 24px rgba(0,0,0,.16);cursor:pointer;animation:waRise .45s var(--ease) both}
.wa__hint[hidden]{display:none}
.wa__hint::after{content:"";position:absolute;right:24px;bottom:-6px;width:14px;height:14px;background:#fff;transform:rotate(45deg);border-radius:2px}
.wa__panel{width:min(380px,calc(100vw - 28px));max-height:min(560px,calc(100svh - 120px));display:flex;flex-direction:column;background:#efeae2;border-radius:16px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.28),0 4px 12px rgba(0,0,0,.16);opacity:0;transform:translateY(16px) scale(.96);transform-origin:bottom right;transition:opacity .22s ease,transform .26s var(--ease)}
.wa__panel[hidden]{display:none}
.wa__panel.is-in{opacity:1;transform:none}
.wa__head{display:flex;align-items:center;gap:12px;padding:14px 14px 14px 16px;background:#075e54;color:#fff}
.wa__avatar{flex:none;width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:800;font-size:16px;letter-spacing:-.02em}
.wa__who{min-width:0;flex:1}
.wa__name{font-weight:700;font-size:18px;line-height:1.2;margin:0}
.wa__status{font-size:14px;margin:2px 0 0;color:#d8f1ec;line-height:1.3}
.wa__close{flex:none;width:40px;height:40px;border:0;border-radius:50%;background:transparent;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background-color .15s}
.wa__close:hover{background:rgba(255,255,255,.16)}
.wa__close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.wa__close:focus-visible,.wa__send:focus-visible,.wa__chip:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.wa__body{flex:1;overflow-y:auto;padding:18px 16px 8px;display:flex;flex-direction:column;gap:10px;min-height:150px}
.wa__msg{max-width:88%;padding:9px 12px 6px;border-radius:12px;font-size:16px;line-height:1.45;color:var(--ink);box-shadow:0 1px 1px rgba(0,0,0,.1);animation:waRise .35s var(--ease) both}
.wa__msg p{margin:0;max-width:none}
.wa__msg time{display:block;text-align:right;font-size:12px;color:#667781;margin-top:2px}
.wa__msg--in{align-self:flex-start;background:#fff;border-top-left-radius:4px}
.wa__msg--out{align-self:flex-end;background:#d9fdd3;border-top-right-radius:4px}
.wa__msg--note{align-self:center;max-width:94%;background:#fff6d6;font-size:15px;text-align:center;border-radius:10px}
.wa__msg--note a{font-weight:700;text-underline-offset:3px}
.wa__quick{display:flex;flex-wrap:wrap;gap:8px;padding:6px 16px 12px}
.wa__quick[hidden]{display:none}
.wa__chip{padding:9px 14px;border:0;border-radius:18px;background:#fff;color:#075e54;font:inherit;font-size:15px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer;box-shadow:0 1px 1px rgba(0,0,0,.1);transition:background-color .15s,transform .15s var(--ease)}
.wa__chip:hover{background:#e7f6f3}
.wa__chip:active{transform:scale(.97)}
.wa__form{display:flex;align-items:flex-end;gap:10px;padding:10px 12px;background:#f0f2f5}
.wa__form textarea{flex:1;min-height:46px;max-height:110px;padding:12px 16px;border:0;border-radius:23px;background:#fff;font:inherit;font-size:16px;line-height:1.35;resize:none;color:var(--ink)}
.wa__form textarea:focus{outline:2px solid #25d366;outline-offset:0}
.wa__send{flex:none;width:46px;height:46px;border:0;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;cursor:pointer;transition:background-color .15s,transform .15s var(--ease)}
.wa__send:hover{background:#1fb858}
.wa__send:active{transform:scale(.92)}
.wa__send svg{width:22px;height:22px;fill:currentColor;margin-left:2px}
@keyframes waPop{from{transform:scale(0);opacity:0}60%{transform:scale(1.12)}to{transform:scale(1);opacity:1}}
@keyframes waPulse{0%{transform:scale(1);opacity:.5}100%{transform:scale(1.75);opacity:0}}
@keyframes waBadge{0%,60%,100%{transform:scale(1)}30%{transform:scale(1.25)}}
@keyframes waRise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:640px){
  .wa__fab{width:58px;height:58px}
  .wa__panel{width:calc(100vw - 28px);max-height:calc(100svh - 100px)}
}
@media (prefers-reduced-motion:reduce){
  .wa__fab,.wa__fab::before,.wa__badge,.wa__hint,.wa__msg,.wa__panel{animation:none!important;transition-duration:.01ms!important}
}
