/* base: variables, reset, typography, buttons, hero, consent, menu */
@font-face {
	font-display:swap;
	font-family:"Kumbh Sans";
	font-style:normal;
	font-weight:400 700;
	src:url("../fonts/kumbh.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;
}
@font-face {
	font-family:"Kumbh Sans Fallback";
	size-adjust:103%;
	src:local("Arial");
}
@font-face {
	font-display:swap;
	font-family:"Lora";
	font-style:normal;
	font-weight:400 600;
	src:url("../fonts/lora.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;
}
@font-face {
	font-family:"Lora Fallback";
	size-adjust:105%;
	src:local("Georgia");
}
:root{
	--vd-flaeche:#1C1F24;
	--vd-grund:#131518;
	--vd-matt:#C9B47A;
	--vd-rahmen:#30343B;
	--vd-safran:#F5C12E;
	--vd-safran-text:#131518;
	--vd-schatten:#050607;
	--vd-text:#EDEFF2;
	--vd-text2:#A0A6AF;
}
*{box-sizing:border-box}
html{background:var(--vd-grund);scroll-padding-top:120px}
body{color:var(--vd-text);font-family:"Lora","Lora Fallback",Georgia,serif;font-size:17px;line-height:1.65;margin:0}
h1,h2,h3{font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-weight:500;hyphens:auto;line-height:1.14;margin:0 0 .5em;overflow-wrap:break-word}
h1{font-size:clamp(2rem,5vw,3.2rem)}
h2{font-size:clamp(1.5rem,3vw,2.1rem)}
h3{font-size:1.25rem}
p{margin:0 0 1rem}
a{color:var(--vd-text)}
a:hover{text-decoration:none}
img{display:block;height:auto;max-width:100%}
ul,ol{margin:0 0 1rem}
strong{font-weight:600}
:focus-visible{outline:2px solid var(--vd-safran);outline-offset:2px}
.vd-breit{margin:0 auto;max-width:1120px;padding:0 24px;width:100%}
.vd-sek{padding:64px 0;position:relative}
.vd-eyebrow{color:var(--vd-matt);font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:.82rem;letter-spacing:.18em;margin:0 0 .6rem;text-transform:uppercase}
.vd-lede{color:var(--vd-text2);font-size:1.1rem;max-width:62ch}
/* buttons */
.vd-btn{align-items:center;cursor:pointer;display:inline-flex;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:1rem;gap:.5em;min-height:44px;padding:11px 20px;text-decoration:none}
.vd-btn-gross{background:var(--vd-safran);border:1px solid var(--vd-safran);color:var(--vd-safran-text);font-weight:600}
.vd-btn-gross:hover{background:#ffd24d}
.vd-btn-rand{background:transparent;border:1px solid var(--vd-rahmen);color:var(--vd-text)}
.vd-btn-rand:hover{border-color:var(--vd-matt)}
.vd-reset{display:none;font-size:.95rem}
.dyn .vd-reset{display:inline-flex}
/* skip + topbar (mirror of inline critical) */
.vd-skip{background:var(--vd-safran);color:var(--vd-safran-text);left:8px;padding:8px 14px;position:absolute;top:-60px;transition:top .15s;z-index:300}
.vd-skip:focus{top:8px}
.vd-topbar{align-items:center;background:var(--vd-grund);border-bottom:1px solid var(--vd-rahmen);display:flex;gap:16px;justify-content:space-between;left:0;padding:14px 24px;position:sticky;right:0;top:0;z-index:200}
.vd-kopf{align-items:center;display:flex;gap:14px}
.vd-marke{align-items:center;color:var(--vd-text);display:inline-flex;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:1.3rem;font-weight:500;letter-spacing:.04em;min-height:44px;text-decoration:none}
.vd-marke b{color:var(--vd-matt);font-weight:500}
.vd-nav{align-items:center;display:flex;gap:26px}
.vd-nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.vd-nav a{color:var(--vd-text);font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:.98rem;text-decoration:none}
.vd-nav a:hover{text-decoration:underline}
.vd-cta{align-items:center;background:transparent;border:1px solid var(--vd-safran);color:var(--vd-safran);display:inline-flex;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-weight:600;min-height:44px;padding:10px 16px;text-decoration:none;white-space:nowrap}
.vd-cta:hover{background:rgba(245,193,46,.12)}
.vd-korb-zahl{border:1px solid var(--vd-safran);color:var(--vd-safran);margin-left:8px;padding:1px 7px}
.vd-burger{background:none;border:1px solid var(--vd-rahmen);color:var(--vd-text);cursor:pointer;display:none;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:.95rem;min-height:44px;padding:9px 14px}
/* mobile menu panel */
.vd-menu{background:var(--vd-grund);border-left:1px solid var(--vd-rahmen);bottom:0;display:none;flex-direction:column;gap:8px;padding:72px 28px 28px;position:fixed;right:0;top:0;width:min(84vw,320px);z-index:400}
.vd-menu ul{display:flex;flex-direction:column;gap:4px;list-style:none;margin:0;padding:0}
.vd-menu a{color:var(--vd-text);display:block;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:1.1rem;padding:12px 0;text-decoration:none}
.vd-menu a:hover{color:var(--vd-matt)}
.vd-menu-zu{background:none;border:1px solid var(--vd-rahmen);color:var(--vd-text);cursor:pointer;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;min-height:44px;padding:10px 14px;position:absolute;right:20px;top:18px}
.dyn .vd-menu.did-enter{display:flex}
/* hero */
.vd-hero{overflow:hidden;position:relative}
.vd-hero-bild{height:min(58vh,520px);object-fit:cover;object-position:left center;width:100%}
.vd-hero-veil{background:linear-gradient(105deg,rgba(19,21,24,.12) 0%,rgba(19,21,24,.55) 44%,rgba(19,21,24,.96) 78%);inset:0;position:absolute}
.vd-hero-text{bottom:0;left:0;margin:0 auto;max-width:1120px;padding:0 24px 48px;position:absolute;right:0;width:100%}
.vd-hero-text h1{max-width:16ch;text-shadow:0 2px 18px rgba(5,6,7,.6)}
.vd-hero-sub{color:var(--vd-text);max-width:50ch;text-shadow:0 1px 10px rgba(5,6,7,.7)}
.vd-hero-cta{align-items:center;display:flex;flex-wrap:wrap;gap:18px;margin-top:22px}
.vd-hero-tel{align-items:center;color:var(--vd-text);display:inline-flex;font-family:"Kumbh Sans","Kumbh Sans Fallback",Arial,sans-serif;font-size:1.1rem;min-height:44px;text-decoration:none}
.vd-hero-tel:hover{text-decoration:underline}
/* consent bar (pinned, no backdrop) */
.consent-bar{background:var(--vd-flaeche);border-top:2px solid var(--vd-matt);bottom:0;box-shadow:0 -6px 24px rgba(5,6,7,.5);left:0;position:fixed;right:0;z-index:350}
.vd-consent-in{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1120px;padding:12px 24px}
.vd-consent-text{color:var(--vd-text);margin:0;max-width:74ch}
.vd-consent-text a{color:var(--vd-text)}
.vd-consent-btn{display:flex;flex-shrink:0;flex-wrap:wrap;gap:12px}
.vd-btn-akz{background:var(--vd-safran);border:1px solid var(--vd-safran);color:var(--vd-safran-text);font-weight:600}
.vd-btn-min{background:transparent;border:1px solid var(--vd-rahmen);color:var(--vd-text)}
@media(max-width:860px){
	.vd-nav ul{display:none}
	.vd-burger{display:inline-block}
	.vd-nav{gap:12px}
}
@media(max-width:560px){
	.vd-topbar{gap:8px;padding:10px 14px}
	.vd-marke{font-size:1.1rem}
	.vd-cta{font-size:.9rem;padding:9px 12px}
	.vd-burger{font-size:.9rem;padding:9px 10px}
	.vd-consent-in{align-items:flex-start;flex-direction:column;gap:6px;padding:8px 14px}
	.vd-consent-text{font-size:.86rem;line-height:1.4}
	.vd-btn-akz,.vd-btn-min{font-size:.88rem;min-height:44px;padding:8px 14px}
}
@media(max-width:380px){
	.vd-topbar{gap:6px;padding:8px 10px}
	.vd-kopf{gap:6px;min-width:0}
	.vd-marke{font-size:1rem;letter-spacing:0}
	.vd-nav{gap:6px}
	.vd-cta{font-size:.84rem;padding:8px 8px}
	.vd-korb-zahl{margin-left:5px;padding:1px 5px}
	.vd-burger{font-size:.84rem;padding:8px 7px}
}
