/* Startseite: Anfrageformular im Hero */
.hero-form .wrap{grid-template-columns:1fr minmax(0,500px);grid-template-areas:"intro form" "extra form";gap:28px 56px;align-items:start}
.hf-intro{grid-area:intro;align-self:end}
.hf-form{grid-area:form}
.hf-extra{grid-area:extra}
.hero-form h1{font-size:clamp(2rem,3.6vw,3.1rem)}
.hero-form .lede{margin-bottom:0}
.hero-form .ticks{margin:0 0 26px}
.hero-form .ticks li{color:#fff}
.hero-form .ticks li svg{color:var(--amber-2)}
.hero-form .asst h2,.hero-form .asst h3{color:var(--ink)}
@media (max-width:1020px){.hero-form .wrap{grid-template-columns:1fr;grid-template-areas:"intro" "form" "extra";gap:28px}}
/* Startseite: Bewertungen */
.rv-grid{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:start}
.rv-sum{position:sticky;top:96px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff;border-radius:22px;padding:28px;display:grid;gap:6px}
.rv-g{display:flex;align-items:center;gap:10px;font-size:.92rem;font-weight:600;color:var(--on-night)}
.rv-g svg{width:28px;height:28px;background:#fff;border-radius:50%;padding:4px;box-sizing:border-box}
.rv-score{display:flex;align-items:center;gap:12px;margin:14px 0 0}
.rv-score b{font-size:3.4rem;line-height:1;font-weight:700;color:#fff}
.rv-stars{color:#f5b301;letter-spacing:2px;font-size:1.05rem;line-height:1}
.rv-score .rv-stars{font-size:1.4rem}
.rv-count{margin:0 0 18px;color:var(--on-night);font-size:.95rem}
.rvsec a.rv-btn{background:#fff;color:var(--ink);justify-content:center;text-align:center;text-decoration:none;width:100%;padding-inline:16px;white-space:nowrap}
.rvsec a.rv-btn:hover{background:var(--amber-2);color:var(--ink)}
.rv-list{grid-template-columns:1fr 1fr;gap:16px}
.rvsec .rv{padding:24px;gap:14px;background:var(--surface)}
.rv-top{display:flex;align-items:center;gap:12px}
.rv-av{width:42px;height:42px;flex:0 0 42px;border-radius:50%;display:grid;place-items:center;background:var(--night);color:var(--amber-2);font-weight:700}
.rv-who{display:grid;gap:1px;min-width:0}
.rv-who b{color:var(--ink);font-size:1rem}
.rv-who small{color:var(--muted);font-size:.84rem}
.rvsec .rv blockquote{font-size:1rem;line-height:1.6}
.rv-orig{font-size:.88rem;color:var(--muted)}
.rv-orig summary{cursor:pointer;color:var(--amber);font-weight:600;width:max-content;max-width:100%}
.rv-orig p{margin:8px 0 0;line-height:1.55}
@media (max-width:1020px){.rv-grid{grid-template-columns:1fr}.rv-sum{position:static;grid-template-columns:auto 1fr;align-items:center;column-gap:20px}.rv-sum .rv-g,.rv-sum .rv-btn{grid-column:1/-1}.rv-score{margin:6px 0 0}.rv-count{margin:6px 0 10px}}
@media (max-width:640px){.rv-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:calc(var(--gut,24px)*-1);padding:2px var(--gut,24px) 8px;scrollbar-width:none}.rv-list::-webkit-scrollbar{display:none}.rvsec .rv{flex:0 0 86%;scroll-snap-align:center}.rv-sum{grid-template-columns:1fr}}
.rvsec .shead .label{color:var(--amber-2)}
/* Formular: Direktkontakt hervorgehoben */
.asst .alt-direct{display:block;margin-top:18px;padding:16px;border:0;border-radius:16px;background:var(--paper)}
.alt-direct .alt-t{margin:0 0 12px;font-size:.92rem;color:var(--muted);line-height:1.45}
.alt-direct .alt-t b{color:var(--ink)}
.alt-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.asst .alt-direct a.alt-btn{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;text-decoration:none;font-weight:400;transition:background .15s,transform .15s;min-width:0}
.asst .alt-direct a.alt-btn:hover{transform:translateY(-1px)}
.alt-btn small{display:block;font-size:.76rem;line-height:1.2;opacity:.85}
.alt-btn b{display:block;font-size:.95rem;line-height:1.25;font-weight:700}
.alt-ic{width:36px;height:36px;flex:0 0 36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18)}
.alt-ic svg{width:18px;height:18px}
.asst .alt-direct a.alt-call{background:var(--ink);color:#fff}
.asst .alt-direct a.alt-call:hover{background:var(--night-2);color:#fff}
.asst .alt-direct a.alt-wa{background:var(--wa,#1d8a4b);color:#fff}
.asst .alt-direct a.alt-wa:hover{background:var(--wa-d,#156a39);color:#fff}
.asst .alt-direct a.alt-wa svg{width:20px;height:20px}
@media (max-width:420px){.alt-btns{grid-template-columns:1fr}}
/* Unterseiten: Anfrageformular im Kopfbereich */
.phead-form .wrap{display:grid;grid-template-columns:1fr minmax(0,500px);grid-template-areas:"intro form" "extra form";gap:28px 56px;align-items:start}
.phead-form .wrap>*{min-width:0}
.phead-form .hf-intro{align-self:end}
.phead-form .ticks{margin:0 0 22px}
.phead-form .ticks li{color:#fff}
.phead-form .ticks li svg{color:var(--amber-2)}
.phead-form .asst h2,.phead-form .asst h3{color:var(--ink)}
.phead-form .quick{max-width:none}
@media (max-width:1020px){.phead-form .wrap{grid-template-columns:1fr;grid-template-areas:"intro" "form" "extra";gap:28px}}
/* Einwilligungsbanner */
#cc-box{position:fixed;left:16px;right:16px;bottom:16px;z-index:1000;display:flex;justify-content:center;pointer-events:none}
#cc-box .cc-in{pointer-events:auto;max-width:760px;width:100%;background:var(--surface);color:var(--body);border-radius:18px;padding:18px 20px;box-shadow:0 20px 60px rgba(15,21,23,.25),0 2px 6px rgba(15,21,23,.08);display:flex;gap:16px 24px;align-items:center;flex-wrap:wrap}
#cc-box .cc-t{margin:0;flex:1 1 360px;font-size:.92rem;line-height:1.5}
#cc-box .cc-t b{color:var(--ink);display:block;margin-bottom:2px}
#cc-box .cc-t a{color:var(--amber);font-weight:600}
#cc-box .cc-b{display:flex;gap:10px;flex:0 0 auto}
#cc-box button{font:inherit;font-weight:600;font-size:.95rem;border:0;border-radius:999px;padding:12px 22px;cursor:pointer;background:var(--ink);color:#fff;min-width:130px}
#cc-box button:hover{background:var(--night-2)}
footer .legal .cc-open{cursor:pointer}
@media (max-width:640px){#cc-box{left:10px;right:10px;bottom:10px}#cc-box .cc-b{width:100%}#cc-box button{flex:1;min-width:0}}
