/* Klimakaiser Landingpage
   Alle Regeln hängen an #klimakaiser, damit das Theme nichts überschreibt. */

@font-face {
	font-family: "KK Archivo";
	src: url("fonts/archivo-variable.woff2") format("woff2");
	font-weight: 100 900;
	font-stretch: 62% 125%;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "KK Source Sans";
	src: url("fonts/source-sans-3-variable.woff2") format("woff2");
	font-weight: 200 900;
	font-style: normal;
	font-display: swap;
}

@media (prefers-reduced-motion: no-preference) {
	html { scroll-behavior: smooth; }
}

body.kk-vollbild { margin: 0; background: #F5F7FA; }

#klimakaiser {
	--kk-accent: #1F5FD1;
	--kk-ink: #0F1E33;
	--kk-text2: #3A4659;
	--kk-muted: #56627A;
	--kk-line: #E1E6EE;
	--kk-ground: #F5F7FA;
	--kk-tint: #E4EDFB;
	--kk-warm: #FCEBDD;
	--kk-warm-ink: #A4511C;
	--kk-green: #1E8A5A;
	--kk-light: #C9D3E3;
	--kk-sky: #9CC0FF;
	--kk-navy2: #16294A;
	--kk-navyline: #2A3A52;
	--kk-field: #C9D2E0;
	--kk-display: "KK Archivo", "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;

	background: var(--kk-ground);
	color: var(--kk-ink);
	font-family: "KK Source Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.55;
	text-align: left;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: 100%;
	overflow-wrap: break-word;
}

/* Reset gegen Theme-Stile */
#klimakaiser *, #klimakaiser *::before, #klimakaiser *::after { box-sizing: border-box; }
#klimakaiser h1, #klimakaiser h2, #klimakaiser h3, #klimakaiser p, #klimakaiser ul, #klimakaiser ol,
#klimakaiser li, #klimakaiser figure, #klimakaiser blockquote, #klimakaiser table {
	margin: 0; padding: 0; border: 0; background: none;
}
#klimakaiser blockquote::before, #klimakaiser blockquote::after { content: none; }
#klimakaiser ul, #klimakaiser ol { list-style: none; }
#klimakaiser li::before, #klimakaiser li::marker { content: none; }
#klimakaiser h1, #klimakaiser h2, #klimakaiser h3 {
	font-family: var(--kk-display);
	color: inherit;
	text-transform: none;
	font-style: normal;
}
#klimakaiser a { color: var(--kk-accent); }
#klimakaiser img { display: block; max-width: 100%; height: auto; border: 0; }
#klimakaiser svg.kk-svg { display: inline-block; flex: none; vertical-align: middle; }
#klimakaiser strong { font-weight: 700; }
#klimakaiser [hidden] { display: none !important; }
#klimakaiser .kk-sr {
	position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
}
#klimakaiser :focus-visible { outline: 3px solid var(--kk-accent); outline-offset: 2px; }

/* Layout */
#klimakaiser .kk-wrap { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
#klimakaiser .kk-stack { display: flex; flex-direction: column; gap: 48px; }
#klimakaiser .kk-stack--40 { gap: 40px; }
#klimakaiser .kk-stack--36 { gap: 36px; }
#klimakaiser .kk-self-start { align-self: flex-start; }
#klimakaiser .kk-section { padding: 96px 0; }
#klimakaiser .kk-section--wissen { padding-bottom: 88px; }
#klimakaiser .kk-section--white { background: #fff; border-top: 1px solid var(--kk-line); border-bottom: 1px solid var(--kk-line); }
#klimakaiser .kk-section--navy { background: var(--kk-ink); color: #fff; }
#klimakaiser section[id] { scroll-margin-top: 16px; }

/* Typografie */
#klimakaiser .kk-head { display: flex; flex-direction: column; gap: 14px; max-width: 760px; }
#klimakaiser .kk-eyebrow {
	font-weight: 700; font-size: 15px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--kk-accent);
}
#klimakaiser .kk-eyebrow--sky { color: var(--kk-sky); }
#klimakaiser .kk-h1 {
	font-stretch: 112%; font-weight: 800; font-size: clamp(2.5rem, 4.8vw, 4.1rem);
	line-height: 1.02; letter-spacing: -0.025em;
}
#klimakaiser .kk-h1 span { color: var(--kk-accent); }
#klimakaiser .kk-h2 {
	font-stretch: 112%; font-weight: 800; font-size: clamp(2rem, 3.4vw, 2.9rem);
	line-height: 1.08; letter-spacing: -0.02em;
}
#klimakaiser .kk-h2--sm { font-size: clamp(1.9rem, 3.2vw, 2.6rem); line-height: 1.1; }
#klimakaiser .kk-lead { font-size: 19px; color: var(--kk-text2); }

/* Buttons */
#klimakaiser .kk-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	min-height: 54px; padding: 0 26px; border-radius: 12px; border: 0;
	font-family: inherit; font-weight: 700; font-size: 17px; line-height: 1.2; text-align: center;
	text-decoration: none; cursor: pointer; box-shadow: none; text-transform: none; letter-spacing: normal;
	transition: filter 0.15s ease, background-color 0.15s ease;
}
#klimakaiser .kk-btn--primary, #klimakaiser .kk-btn--primary:hover, #klimakaiser .kk-btn--primary:visited { background: var(--kk-accent); color: #fff; }
#klimakaiser .kk-btn--primary:hover { filter: brightness(0.9); }
#klimakaiser .kk-btn--white, #klimakaiser .kk-btn--white:visited { background: #fff; color: var(--kk-ink); }
#klimakaiser .kk-btn--white:hover { background: #EDF2FA; color: var(--kk-ink); }
#klimakaiser .kk-btn--outline, #klimakaiser .kk-btn--outline:visited { background: #fff; color: var(--kk-ink); border: 1.5px solid var(--kk-field); }
#klimakaiser .kk-btn--outline:hover { border-color: var(--kk-ink); color: var(--kk-ink); }
#klimakaiser .kk-btn--sm { min-height: 46px; padding: 0 20px; font-size: 16px; }
#klimakaiser .kk-btn--lg { min-height: 56px; font-size: 18px; }
#klimakaiser .kk-btn--block { display: flex; width: 100%; }
#klimakaiser .kk-btn[disabled] { opacity: 0.7; cursor: wait; }
#klimakaiser .kk-btnrow { display: flex; flex-wrap: wrap; gap: 12px; }
#klimakaiser .kk-textlink { align-self: flex-start; font-weight: 700; padding: 10px 0; color: var(--kk-accent); }

/* Header */
#klimakaiser .kk-header { background: #fff; border-bottom: 1px solid var(--kk-line); }
#klimakaiser .kk-header__in {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
	gap: 12px 24px; padding-top: 14px; padding-bottom: 14px;
}
#klimakaiser .kk-logo { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--kk-ink); }
#klimakaiser .kk-logo__mark {
	width: 42px; height: 42px; border-radius: 11px; background: var(--kk-accent); color: #fff;
	display: flex; align-items: center; justify-content: center; flex: none;
}
#klimakaiser .kk-logo__text { display: flex; flex-direction: column; line-height: 1.1; }
#klimakaiser .kk-logo__name {
	font-family: var(--kk-display); font-stretch: 112%; font-weight: 800; font-size: 22px; letter-spacing: -0.01em; line-height: 1.1;
}
#klimakaiser .kk-logo__sub { font-size: 13px; color: var(--kk-muted); }
#klimakaiser .kk-logo--light { color: #fff; }
#klimakaiser .kk-nav { display: flex; flex-wrap: wrap; gap: 0 26px; font-weight: 600; font-size: 16px; }
#klimakaiser .kk-nav a { color: var(--kk-ink); text-decoration: none; padding: 12px 0; }
#klimakaiser .kk-nav a:hover { color: var(--kk-accent); }
#klimakaiser .kk-header__cta { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
#klimakaiser .kk-phone {
	display: inline-flex; align-items: center; gap: 8px; color: var(--kk-ink); font-weight: 700; text-decoration: none; padding: 10px 0;
}

/* Hero */
#klimakaiser .kk-hero { padding: 72px 0 80px; }
#klimakaiser .kk-hero__in { display: flex; flex-wrap: wrap; align-items: center; gap: 56px; }
#klimakaiser .kk-hero__text { flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 26px; }
#klimakaiser .kk-pill {
	align-self: flex-start; display: inline-flex; align-items: center; gap: 8px;
	padding: 7px 14px; border-radius: 999px; background: var(--kk-tint); font-weight: 600; font-size: 15px; line-height: 1.3;
}
#klimakaiser .kk-hero__sub { font-size: 20px; color: var(--kk-text2); max-width: 560px; }
#klimakaiser .kk-pricebox {
	align-self: flex-start; max-width: 100%; display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px;
	background: #fff; border: 1px solid var(--kk-line); border-radius: 18px; padding: 16px 22px;
}
#klimakaiser .kk-pricebox__main { display: flex; flex-direction: column; line-height: 1.15; }
#klimakaiser .kk-pricebox__label { font-size: 15px; font-weight: 600; color: var(--kk-muted); }
#klimakaiser .kk-pricebox__price { font-family: var(--kk-display); font-weight: 800; font-size: 40px; letter-spacing: -0.02em; }
#klimakaiser .kk-pricebox__sep { width: 1px; height: 48px; background: var(--kk-line); }
#klimakaiser .kk-pricebox__note { display: flex; flex-direction: column; gap: 2px; font-size: 15px; line-height: 1.35; }
#klimakaiser .kk-pricebox__note span { color: var(--kk-muted); }
#klimakaiser .kk-checks { display: flex; flex-wrap: wrap; gap: 12px 28px; font-weight: 600; font-size: 16px; margin-top: 6px; }
#klimakaiser .kk-checks li { display: flex; align-items: center; gap: 8px; }
#klimakaiser .kk-check { color: var(--kk-green); }

/* Hero-Illustration */
#klimakaiser .kk-visual {
	flex: 1 1 420px; min-width: 0; background: var(--kk-tint); border-radius: 28px;
	padding: 44px 36px 36px; display: flex; flex-direction: column; gap: 18px;
}
#klimakaiser .kk-unit {
	background: #fff; border-radius: 18px 18px 30px 30px; height: 124px;
	box-shadow: 0 22px 44px rgba(15, 30, 51, 0.13);
	display: flex; flex-direction: column; justify-content: flex-end; padding: 0 26px 18px;
}
#klimakaiser .kk-unit__row { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
#klimakaiser .kk-unit__brand {
	font-family: var(--kk-display); font-stretch: 120%; font-weight: 700; font-size: 13px; letter-spacing: 0.22em; color: var(--kk-muted);
}
#klimakaiser .kk-unit__temp {
	display: flex; align-items: center; gap: 8px; font-family: var(--kk-display); font-weight: 700; font-size: 20px; color: var(--kk-accent);
}
#klimakaiser .kk-unit__dot { width: 8px; height: 8px; border-radius: 4px; background: var(--kk-green); }
#klimakaiser .kk-unit__slot { height: 7px; background: var(--kk-line); border-radius: 4px; margin-top: 14px; }
#klimakaiser .kk-air { display: block; width: 100%; height: 96px; opacity: 0.45; color: var(--kk-accent); }
#klimakaiser .kk-modes { display: flex; flex-wrap: wrap; gap: 14px; }
#klimakaiser .kk-mini {
	flex: 1 1 160px; background: #fff; border-radius: 16px; padding: 18px 20px; display: flex; align-items: center; gap: 14px;
}
#klimakaiser .kk-mini__t { display: block; font-weight: 700; line-height: 1.3; }
#klimakaiser .kk-mini__s { display: block; font-size: 14px; color: var(--kk-muted); line-height: 1.3; }
#klimakaiser .kk-room {
	background: #fff; border-radius: 16px; padding: 18px 20px;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px;
}
#klimakaiser .kk-tag-ok { padding: 6px 12px; border-radius: 999px; background: #E3F3EA; color: #14633F; font-weight: 700; font-size: 14px; }
#klimakaiser .kk-foerder-mini {
	background: var(--kk-ink); color: #fff; border-radius: 16px; padding: 18px 20px; display: flex; align-items: center; gap: 14px;
}
#klimakaiser .kk-foerder-mini .kk-svg { color: var(--kk-sky); }
#klimakaiser .kk-foerder-mini .kk-mini__s { color: var(--kk-light); }

/* Icon-Kacheln */
#klimakaiser .kk-ico {
	width: 42px; height: 42px; border-radius: 12px; display: flex; align-items: center; justify-content: center; flex: none;
}
#klimakaiser .kk-ico--lg { width: 48px; height: 48px; border-radius: 14px; }
#klimakaiser .kk-ico--cool { background: var(--kk-tint); color: #1F5FD1; }
#klimakaiser .kk-ico--warm { background: var(--kk-warm); color: var(--kk-warm-ink); }
#klimakaiser .kk-ico--white { background: #fff; color: var(--kk-accent); width: 44px; height: 44px; }
#klimakaiser .kk-ico--white-cool { background: #fff; color: #1F5FD1; }
#klimakaiser .kk-ico--white-warm { background: #fff; color: var(--kk-warm-ink); }
#klimakaiser .kk-ico--dark { background: var(--kk-ink); color: var(--kk-sky); }

/* Vertrauensleiste */
#klimakaiser .kk-trust { background: #fff; border-top: 1px solid var(--kk-line); border-bottom: 1px solid var(--kk-line); padding: 32px 0; }
#klimakaiser .kk-trust__in { display: flex; flex-wrap: wrap; gap: 24px 40px; justify-content: space-between; }
#klimakaiser .kk-trust__item { flex: 1 1 200px; display: flex; flex-direction: column; line-height: 1.2; }
#klimakaiser .kk-trust__big { font-family: var(--kk-display); font-stretch: 112%; font-weight: 800; font-size: 34px; color: var(--kk-accent); }
#klimakaiser .kk-trust__small { color: var(--kk-text2); font-weight: 600; }

/* Förderung */
#klimakaiser .kk-foerder { background: var(--kk-ink); color: #fff; padding: 64px 0; }
#klimakaiser .kk-foerder__in { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 32px; }
#klimakaiser .kk-foerder__text { flex: 1 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
#klimakaiser .kk-foerder__text p { font-size: 18px; color: var(--kk-light); max-width: 680px; }

/* Ganzjahr */
#klimakaiser .kk-seasons { display: flex; flex-wrap: wrap; gap: 20px; }
#klimakaiser .kk-season { flex: 1 1 380px; min-width: 0; border-radius: 24px; padding: 32px; display: flex; flex-direction: column; gap: 18px; }
#klimakaiser .kk-season--cool { background: var(--kk-tint); }
#klimakaiser .kk-season--warm { background: var(--kk-warm); }
#klimakaiser .kk-season__head { display: flex; align-items: center; gap: 14px; }
#klimakaiser .kk-season__head h3 { font-stretch: 110%; font-weight: 800; font-size: 26px; line-height: 1.2; }
#klimakaiser .kk-list { display: flex; flex-direction: column; gap: 10px; }
#klimakaiser .kk-list li { display: flex; gap: 10px; align-items: flex-start; }
#klimakaiser .kk-list .kk-svg { margin-top: 3px; }
#klimakaiser .kk-list--grow { flex-grow: 1; }
#klimakaiser .kk-note {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px;
	background: var(--kk-ground); border-radius: 20px; padding: 24px 28px;
}
#klimakaiser .kk-note p { flex: 1 1 480px; min-width: 0; font-size: 18px; color: var(--kk-text2); }
#klimakaiser .kk-note strong { color: var(--kk-ink); }

/* Karten */
#klimakaiser .kk-cards { display: flex; flex-wrap: wrap; gap: 20px; }
#klimakaiser .kk-card {
	flex: 1 1 250px; min-width: 0; background: #fff; border: 1px solid var(--kk-line); border-radius: 20px;
	padding: 28px; display: flex; flex-direction: column; gap: 12px;
}
#klimakaiser .kk-card h3 { margin-top: 4px; font-weight: 700; font-size: 21px; line-height: 1.2; }
#klimakaiser .kk-card p { color: var(--kk-text2); }
#klimakaiser .kk-card--dark { background: var(--kk-navy2); border-color: var(--kk-navyline); }
#klimakaiser .kk-card--dark h3 { color: #fff; }
#klimakaiser .kk-card--dark p { color: var(--kk-light); }

/* Vergleich */
#klimakaiser .kk-compare {
	background: #fff; border: 1px solid var(--kk-line); border-radius: 20px; padding: 32px; display: flex; flex-direction: column; gap: 20px;
}
#klimakaiser .kk-compare h3 { font-weight: 700; font-size: 24px; line-height: 1.2; }
#klimakaiser .kk-tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
#klimakaiser .kk-compare table { width: 100%; min-width: 600px; border-collapse: collapse; font-size: 17px; }
#klimakaiser .kk-compare th, #klimakaiser .kk-compare td {
	text-align: left; vertical-align: top; padding: 14px 16px; background: transparent;
	border: 0; border-bottom: 1px solid var(--kk-line); color: var(--kk-ink); font-size: 17px;
}
#klimakaiser .kk-compare thead th { font-weight: 700; padding-top: 12px; padding-bottom: 12px; border-bottom-width: 2px; }
#klimakaiser .kk-compare thead th:first-child { width: 22%; }
#klimakaiser .kk-compare thead th.kk-hl { color: var(--kk-accent); border-bottom-color: var(--kk-accent); }
#klimakaiser .kk-compare tbody th { font-weight: 600; padding-left: 0; }
#klimakaiser .kk-compare thead th:first-child { padding-left: 0; }
#klimakaiser .kk-compare td.kk-dim { color: var(--kk-text2); }
#klimakaiser .kk-compare tbody tr:last-child th, #klimakaiser .kk-compare tbody tr:last-child td { border-bottom: 0; }

/* CTA-Band */
#klimakaiser .kk-ctaband-wrap { padding: 0 0 96px; }
#klimakaiser .kk-ctaband {
	background: var(--kk-accent); color: #fff; border-radius: 24px; padding: 40px;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px;
}
#klimakaiser .kk-ctaband__text { flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; gap: 8px; }
#klimakaiser .kk-ctaband h2 { font-stretch: 112%; font-weight: 800; font-size: clamp(1.7rem, 2.8vw, 2.3rem); line-height: 1.12; }
#klimakaiser .kk-ctaband p { font-size: 18px; color: #fff; }

/* Pakete */
#klimakaiser .kk-packages { display: flex; flex-wrap: wrap; gap: 20px; align-items: stretch; }
#klimakaiser .kk-pkg {
	flex: 1 1 300px; min-width: 0; background: var(--kk-ground); border: 1px solid var(--kk-line); border-radius: 22px;
	padding: 32px; display: flex; flex-direction: column; gap: 20px;
}
#klimakaiser .kk-pkg--featured { background: var(--kk-ink); border-color: var(--kk-ink); color: #fff; }
#klimakaiser .kk-pkg__top { display: flex; flex-direction: column; gap: 6px; }
#klimakaiser .kk-pkg__titlerow { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; }
#klimakaiser .kk-pkg__title { font-stretch: 110%; font-weight: 800; font-size: 26px; line-height: 1.2; }
#klimakaiser .kk-pkg__for { color: var(--kk-muted); }
#klimakaiser .kk-pkg--featured .kk-pkg__for, #klimakaiser .kk-pkg--featured .kk-pkg__priceinfo { color: var(--kk-light); }
#klimakaiser .kk-pkg--featured .kk-check { color: #7FD3A8; }
#klimakaiser .kk-badge { padding: 5px 12px; border-radius: 999px; background: var(--kk-sky); color: var(--kk-ink); font-weight: 700; font-size: 13px; }
#klimakaiser .kk-pkg__pricebox { display: flex; flex-direction: column; gap: 2px; }
#klimakaiser .kk-pkg__price { font-family: var(--kk-display); font-weight: 800; font-size: 40px; line-height: 1.05; letter-spacing: -0.02em; }
#klimakaiser .kk-pkg__price--text { font-size: 28px; line-height: 1.15; }
#klimakaiser .kk-pkg__priceinfo { font-size: 15px; color: var(--kk-muted); }
#klimakaiser .kk-extras { display: flex; flex-wrap: wrap; gap: 20px; }
#klimakaiser .kk-extra {
	flex: 1 1 380px; min-width: 0; border: 1px solid var(--kk-line); border-radius: 20px; padding: 26px 28px;
	display: flex; flex-direction: column; gap: 8px;
}
#klimakaiser .kk-extra h3 { font-weight: 700; font-size: 20px; line-height: 1.25; }
#klimakaiser .kk-extra p { color: var(--kk-text2); }
#klimakaiser .kk-fine { font-size: 15px; color: var(--kk-muted); }

/* Ablauf */
#klimakaiser .kk-steps { display: flex; flex-wrap: wrap; gap: 20px; }
#klimakaiser .kk-step {
	flex: 1 1 250px; min-width: 0; display: flex; flex-direction: column; gap: 12px;
	padding-top: 22px; border-top: 3px solid var(--kk-accent);
}
#klimakaiser .kk-step__num { font-family: var(--kk-display); font-weight: 800; font-size: 34px; line-height: 1; color: var(--kk-accent); }
#klimakaiser .kk-step h3 { font-weight: 700; font-size: 21px; line-height: 1.25; }
#klimakaiser .kk-step p { color: var(--kk-text2); }

/* Referenzen */
#klimakaiser .kk-gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
#klimakaiser .kk-gallery img { width: 100%; height: 260px; object-fit: cover; border-radius: 20px; }
#klimakaiser .kk-reviews { display: flex; flex-wrap: wrap; gap: 20px; }
#klimakaiser .kk-review {
	flex: 1 1 300px; min-width: 0; background: var(--kk-ground); border-radius: 20px; padding: 28px;
	display: flex; flex-direction: column; gap: 12px;
}
#klimakaiser .kk-stars { color: #B45309; font-size: 20px; letter-spacing: 2px; line-height: 1; }
#klimakaiser .kk-review blockquote p { font-size: 18px; color: var(--kk-text2); font-style: normal; }
#klimakaiser .kk-review figcaption { font-weight: 700; }
#klimakaiser .kk-refcta {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px;
	border-top: 1px solid var(--kk-line); padding-top: 28px;
}
#klimakaiser .kk-refcta > span { font-family: var(--kk-display); font-weight: 800; font-size: 24px; line-height: 1.2; }

/* Über uns */
#klimakaiser .kk-about { display: flex; flex-wrap: wrap; align-items: center; gap: 56px; }
#klimakaiser .kk-about__img { flex: 1 1 420px; min-width: 0; }
#klimakaiser .kk-about__img img { width: 100%; height: 440px; object-fit: cover; border-radius: 24px; }
#klimakaiser .kk-about__text { flex: 1 1 480px; min-width: 0; max-width: 860px; display: flex; flex-direction: column; gap: 18px; }
#klimakaiser .kk-about__text p { font-size: 18px; color: var(--kk-text2); }
#klimakaiser .kk-values { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 6px; }
#klimakaiser .kk-value {
	flex: 1 1 150px; background: #fff; border: 1px solid var(--kk-line); border-radius: 16px; padding: 18px;
	display: flex; flex-direction: column; gap: 4px;
}
#klimakaiser .kk-value span { font-size: 15px; color: var(--kk-muted); }

/* FAQ */
#klimakaiser .kk-faqwrap { max-width: 900px; }
#klimakaiser .kk-faq { display: flex; flex-direction: column; gap: 12px; }
#klimakaiser .kk-faq__item { background: var(--kk-ground); border: 1px solid var(--kk-line); border-radius: 16px; padding: 0 24px; margin: 0; }
#klimakaiser .kk-faq__item summary {
	display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; padding: 12px 0;
	font-weight: 700; font-size: 18px; line-height: 1.35; cursor: pointer; list-style: none; color: var(--kk-ink);
}
#klimakaiser .kk-faq__item summary::-webkit-details-marker { display: none; }
#klimakaiser .kk-faq__item summary::marker { content: ""; }
#klimakaiser .kk-faq__item p { padding: 0 0 22px; color: var(--kk-text2); }
#klimakaiser .kk-plus { transition: transform 0.2s ease; }
#klimakaiser .kk-faq__item[open] .kk-plus { transform: rotate(45deg); }
#klimakaiser .kk-faqcta {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px;
	padding: 24px 28px; border-radius: 20px; background: var(--kk-tint);
}
#klimakaiser .kk-faqcta > span { font-weight: 700; font-size: 19px; }

/* Kontakt */
#klimakaiser .kk-contact { background: var(--kk-tint); padding: 96px 0; }
#klimakaiser .kk-contact__in { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
#klimakaiser .kk-contact__info { flex: 1 1 360px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
#klimakaiser .kk-contact .kk-lead { font-size: 18px; }
#klimakaiser .kk-contactlist { display: flex; flex-direction: column; gap: 14px; margin-top: 10px; }
#klimakaiser .kk-contactlist li { display: flex; align-items: center; gap: 14px; }
#klimakaiser .kk-contactlist__l { display: block; font-size: 14px; color: var(--kk-text2); line-height: 1.3; }
#klimakaiser .kk-contactlist__v { display: block; font-weight: 700; color: var(--kk-ink); text-decoration: none; line-height: 1.3; }
#klimakaiser a.kk-contactlist__v:hover { text-decoration: underline; }
#klimakaiser .kk-formcard {
	flex: 1 1 520px; min-width: 0; background: #fff; border-radius: 24px; padding: 36px;
	box-shadow: 0 24px 60px rgba(15, 30, 51, 0.10);
}

/* Formular */
#klimakaiser .kk-form { display: flex; flex-direction: column; gap: 18px; }
#klimakaiser .kk-form__head { display: flex; flex-direction: column; gap: 4px; }
#klimakaiser .kk-form__head h3 { font-weight: 800; font-size: 24px; line-height: 1.2; }
#klimakaiser .kk-form__head span { color: var(--kk-text2); }
#klimakaiser .kk-chip {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px;
	background: var(--kk-tint); border-radius: 12px; padding: 10px 16px; font-weight: 600;
}
#klimakaiser .kk-linkbtn {
	min-height: 44px; padding: 0 4px; border: 0; background: transparent; color: var(--kk-accent);
	font: inherit; font-weight: 700; text-decoration: underline; cursor: pointer; box-shadow: none;
}
#klimakaiser .kk-row { display: flex; flex-wrap: wrap; gap: 18px; }
#klimakaiser .kk-field { flex: 1 1 220px; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
#klimakaiser .kk-field label { font-weight: 600; font-size: 15px; color: var(--kk-ink); margin: 0; }
#klimakaiser .kk-field input, #klimakaiser .kk-field select {
	display: block; width: 100%; height: auto; min-height: 50px; margin: 0; padding: 0 14px;
	border: 1.5px solid var(--kk-field); border-radius: 10px; background: #fff; color: var(--kk-ink);
	font-family: inherit; font-size: 17px; line-height: 1.3; box-shadow: none;
}
#klimakaiser .kk-field select { padding: 0 12px; }
#klimakaiser .kk-field input:focus, #klimakaiser .kk-field select:focus { outline: 2px solid var(--kk-accent); outline-offset: 1px; border-color: var(--kk-accent); }
#klimakaiser .kk-consent { display: flex; gap: 12px; align-items: flex-start; }
#klimakaiser .kk-consent input {
	width: 22px; height: 22px; min-height: 0; margin: 2px 0 0; padding: 0; flex: none; accent-color: var(--kk-accent);
}
#klimakaiser .kk-consent label { font-size: 15px; color: var(--kk-text2); font-weight: 400; margin: 0; }
#klimakaiser .kk-hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
#klimakaiser .kk-formnote { font-size: 14px; color: var(--kk-muted); }
#klimakaiser .kk-formerror {
	background: #FEF3F2; color: #B42318; border-radius: 10px; padding: 12px 14px; font-weight: 600; font-size: 16px;
}
#klimakaiser .kk-thanks { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 24px 0; outline: none; }
#klimakaiser .kk-thanks__icon {
	width: 56px; height: 56px; border-radius: 16px; background: #E3F3EA; color: #14633F;
	display: flex; align-items: center; justify-content: center;
}
#klimakaiser .kk-thanks h3 { font-weight: 800; font-size: 28px; line-height: 1.2; }
#klimakaiser .kk-thanks p { color: var(--kk-text2); font-size: 18px; }

/* Footer */
#klimakaiser .kk-footer { background: var(--kk-ink); color: #fff; padding: 56px 0 40px; }
#klimakaiser .kk-footer__top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 32px; }
#klimakaiser .kk-footer__brand { flex: 1 1 280px; display: flex; flex-direction: column; gap: 12px; }
#klimakaiser .kk-footer__brand p { color: var(--kk-light); max-width: 340px; }
#klimakaiser .kk-footer nav { flex: 0 1 200px; display: flex; flex-direction: column; gap: 4px; }
#klimakaiser .kk-footer nav strong { margin-bottom: 6px; }
#klimakaiser .kk-footer nav a { color: var(--kk-light); text-decoration: none; padding: 6px 0; }
#klimakaiser .kk-footer nav a:hover { color: #fff; text-decoration: underline; }
#klimakaiser .kk-footer__bottom { margin-top: 36px; border-top: 1px solid var(--kk-navyline); padding-top: 22px; font-size: 14px; color: var(--kk-light); }

/* Mobile Aktionsleiste */
#klimakaiser .kk-mobilebar {
	display: none; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; gap: 8px;
	padding: 10px 12px calc(10px + env(safe-area-inset-bottom, 0px));
	background: #fff; border-top: 1px solid var(--kk-line); box-shadow: 0 -8px 24px rgba(15, 30, 51, 0.10);
}
#klimakaiser .kk-mobilebar a {
	flex: 1 1 0; min-width: 0; min-height: 48px; display: flex; align-items: center; justify-content: center; gap: 6px;
	border-radius: 12px; border: 1.5px solid var(--kk-field); background: #fff; color: var(--kk-ink);
	font-weight: 700; font-size: 15px; text-decoration: none;
}
#klimakaiser .kk-mobilebar a.kk-mobilebar__primary { flex-grow: 1.4; background: var(--kk-accent); border-color: var(--kk-accent); color: #fff; }

/* Responsive */
@media (max-width: 960px) {
	#klimakaiser .kk-nav { display: none; }
}
@media (max-width: 760px) {
	#klimakaiser .kk-footer { padding-bottom: 116px; }
	#klimakaiser .kk-mobilebar { display: flex; }
	#klimakaiser .kk-header__in { flex-wrap: nowrap; }
	#klimakaiser .kk-logo { min-width: 0; }
	#klimakaiser .kk-phone { display: none; }
	#klimakaiser .kk-wrap { padding-left: 16px; padding-right: 16px; }
	#klimakaiser .kk-section, #klimakaiser .kk-contact { padding: 64px 0; }
	#klimakaiser .kk-section--wissen { padding-bottom: 56px; }
	#klimakaiser .kk-ctaband-wrap { padding-bottom: 64px; }
	#klimakaiser .kk-hero { padding: 40px 0 56px; }
	#klimakaiser .kk-hero__in { gap: 36px; }
	#klimakaiser .kk-hero__sub { font-size: 18px; }
	#klimakaiser .kk-stack { gap: 36px; }
	#klimakaiser .kk-visual { padding: 28px 18px 18px; border-radius: 22px; }
	#klimakaiser .kk-pricebox__sep { display: none; }
	#klimakaiser .kk-btnrow .kk-btn { width: 100%; }
	#klimakaiser .kk-ctaband { padding: 28px 22px; }
	#klimakaiser .kk-ctaband .kk-btn, #klimakaiser .kk-note .kk-btn, #klimakaiser .kk-refcta .kk-btn,
	#klimakaiser .kk-faqcta .kk-btn, #klimakaiser .kk-self-start { width: 100%; }
	#klimakaiser .kk-compare { padding: 22px 18px; }
	#klimakaiser .kk-pkg, #klimakaiser .kk-season, #klimakaiser .kk-card { padding: 24px; }
	#klimakaiser .kk-formcard { padding: 24px 18px; border-radius: 20px; }
	#klimakaiser .kk-about__img img { height: 300px; }
	#klimakaiser .kk-trust__big { font-size: 28px; }
	#klimakaiser .kk-trust__item { flex-basis: 140px; }
}
@media (max-width: 420px) {
	#klimakaiser .kk-header__cta .kk-btn--sm { padding: 0 14px; font-size: 15px; }
	#klimakaiser .kk-logo { gap: 10px; }
	#klimakaiser .kk-logo__mark { width: 38px; height: 38px; }
	#klimakaiser .kk-logo__name { font-size: 19px; }
	#klimakaiser .kk-logo__sub { font-size: 12px; }
}
