/*
Theme Name: Hello Elementor Child COLORD
Author: Webdesign Schinck
Description: Child Theme von Hello Elementor fuer die Website COLORD Meisterbetrieb, erstellt von Webdesign Schinck.
Version: 1.0.0
Template: hello-elementor
*/

/* =========================================================
   1. Akzentwort in Überschriften
   Grundschrift der Überschriften ist Inter 800. Ein Wort oder
   eine kurze Wortgruppe wird in Playfair Display kursiv gesetzt:
   im Elementor einfach mit <em>...</em> umschließen oder der
   Klasse .akzent geben.
   ========================================================= */

h1 em, h2 em, h3 em, h4 em, h5 em,
.elementor-heading-title em,
.akzent{
	font-family:"Playfair Display", Georgia, "Times New Roman", serif;
	font-style:italic;
	font-weight:500;
	letter-spacing:0;
	font-size:1.05em;
}

.elementor-widget-text-editor a,
.entry-content a{
	text-underline-offset:.18em;
	text-decoration-thickness:1px;
}

img{max-width:100%;height:auto}

/* =========================================================
   2. Bewegungssystem
   Auslöseklasse am Element, das Skript setzt beim Eintritt .cd-in.
   Bei prefers-reduced-motion ist alles sofort sichtbar.
   ========================================================= */

:root{
	--cd-ease:cubic-bezier(.16,1,.3,1);
	--cd-dur:.9s;
}

.cd-reveal{
	opacity:0;
	transform:translateY(30px);
	transition:opacity var(--cd-dur) var(--cd-ease), transform var(--cd-dur) var(--cd-ease);
	transition-delay:var(--cd-d,0ms);
	will-change:opacity,transform;
}
.cd-reveal.cd-in{opacity:1;transform:none}

.cd-stagger > *{
	opacity:0;
	transform:translateY(26px);
	transition:opacity var(--cd-dur) var(--cd-ease), transform var(--cd-dur) var(--cd-ease);
}
.cd-stagger.cd-in > *{opacity:1;transform:none}

.cd-clip{overflow:hidden}
.cd-clip img{
	clip-path:inset(0 0 100% 0);
	transform:scale(1.12);
	transition:clip-path 1.15s var(--cd-ease), transform 1.6s var(--cd-ease);
	transition-delay:var(--cd-d,0ms);
	will-change:clip-path,transform;
}
.cd-clip.cd-in img{clip-path:inset(0 0 0 0);transform:scale(1)}

.cd-lines .cd-w{display:inline-block;overflow:hidden;padding-bottom:.16em;margin-bottom:-.16em;vertical-align:bottom}
.cd-lines .cd-w > i{
	display:inline-block;
	font-style:inherit;
	transform:translateY(112%);
	transition:transform .95s var(--cd-ease);
	transition-delay:var(--cd-wd,0ms);
	will-change:transform;
}
.cd-lines.cd-in .cd-w > i{transform:none}

.cd-hero-media{overflow:hidden}
.cd-hero-media img{transform:scale(1.14);transition:transform 2.2s var(--cd-ease)}
.cd-hero-media.cd-in img{transform:scale(1)}

.cd-rule{
	height:1px;
	background:var(--e-global-color-dbe937e);
	transform:scaleX(0);
	transform-origin:left center;
	transition:transform 1.2s var(--cd-ease);
}
.cd-rule.cd-in{transform:scaleX(1)}

.cd-count{font-variant-numeric:tabular-nums}

.elementor-button{transition:background-color .35s var(--cd-ease), color .35s var(--cd-ease), transform .35s var(--cd-ease)}
.elementor-button:hover{transform:translateY(-2px)}
.elementor-button .elementor-button-icon{transition:transform .35s var(--cd-ease)}
.elementor-button:hover .elementor-button-icon{transform:translateX(4px)}

a.cd-link{
	position:relative;
	text-decoration:none;
	background-image:linear-gradient(currentColor,currentColor);
	background-size:0% 1px;
	background-position:left calc(100% - 1px);
	background-repeat:no-repeat;
	transition:background-size .45s var(--cd-ease);
}
a.cd-link:hover{background-size:100% 1px}

/* =========================================================
   3. Logo-Lockup
   ========================================================= */

.cd-logo{
	display:inline-flex;
	align-items:center;
	gap:.62em;
	text-decoration:none;
	line-height:1;
	font-size:26px;
	transition:font-size .4s var(--cd-ease);
}
.cd-logo__mark{height:1.75em;width:auto;display:block}
.cd-logo__type{display:flex;flex-direction:column;gap:.30em}
.cd-logo__name{
	font-family:"Playfair Display",Georgia,serif;
	font-weight:600;
	font-size:1em;
	letter-spacing:.07em;
	line-height:1;
	color:var(--e-global-color-primary);
}
.cd-logo__sub{
	font-family:Inter,system-ui,sans-serif;
	font-weight:500;
	font-size:.315em;
	letter-spacing:.24em;
	text-transform:uppercase;
	line-height:1;
	color:var(--e-global-color-secondary);
}
.cd-logo--light .cd-logo__name{color:#fff}
.cd-logo--light .cd-logo__sub{color:#A9B8CB}

/* =========================================================
   4. Header
   ========================================================= */

.cd-header{transition:box-shadow .4s ease, background-color .4s ease}
.cd-header.is-scrolled{box-shadow:0 1px 0 var(--e-global-color-dbe937e)}
.cd-header.is-scrolled .cd-logo{font-size:22px}

@media (max-width:767px){
	.cd-logo{font-size:19px}
	.cd-logo__sub{display:none}
}

/* =========================================================
   5. Bewegung aus, wenn der Nutzer das so eingestellt hat
   ========================================================= */

@media (prefers-reduced-motion: reduce){
	.cd-reveal,
	.cd-stagger > *,
	.cd-clip img,
	.cd-lines .cd-w > i,
	.cd-hero-media img,
	.cd-rule{
		opacity:1 !important;
		transform:none !important;
		clip-path:none !important;
		transition:none !important;
	}
	.elementor-button:hover{transform:none}
}


/* =========================================================
   6. Abschnitte
   ========================================================= */

.cd-sec{padding:160px 0}
.cd-sec--tight{padding:112px 0}
.cd-wrap{width:min(1200px, calc(100% - 48px));margin-inline:auto}
.cd-wrap--narrow{width:min(880px, calc(100% - 48px));margin-inline:auto}

.cd-bg-flaeche{background:var(--e-global-color-3cdf12b)}
.cd-bg-weiss{background:#fff}
.cd-bg-tief{background:var(--e-global-color-primary);color:#fff}
.cd-bg-tief h1,.cd-bg-tief h2,.cd-bg-tief h3,.cd-bg-tief h4{color:#fff}
.cd-bg-tief p{color:#C3CEDC}

.cd-eyebrow{
	font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:13px;
	letter-spacing:.22em;text-transform:uppercase;color:var(--e-global-color-secondary);
	margin:0 0 24px;display:flex;align-items:center;gap:14px;
}
.cd-eyebrow::before{content:"";width:32px;height:1px;background:currentColor;flex:none}
.cd-bg-tief .cd-eyebrow{color:#7E93AC}

.cd-lead{font-size:20px;line-height:1.6;color:var(--e-global-color-secondary);max-width:62ch;margin:0}
.cd-bg-tief .cd-lead{color:#C3CEDC}

.cd-btn{
	display:inline-flex;align-items:center;gap:.7em;
	font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:16px;letter-spacing:.02em;
	padding:19px 34px;border-radius:4px;text-decoration:none;border:1px solid transparent;
	transition:background-color .35s var(--cd-ease),color .35s var(--cd-ease),border-color .35s var(--cd-ease),transform .35s var(--cd-ease);
}
.cd-btn svg{width:16px;height:16px;flex:none;transition:transform .35s var(--cd-ease)}
.cd-btn:hover svg{transform:translateX(5px)}
.cd-btn:hover{transform:translateY(-2px)}
.cd-btn--primary{background:var(--e-global-color-accent);color:#fff}
.cd-btn--primary:hover{background:var(--e-global-color-primary);color:#fff}
.cd-btn--ghost{background:transparent;color:var(--e-global-color-primary);border-color:var(--e-global-color-dbe937e)}
.cd-btn--ghost:hover{border-color:var(--e-global-color-primary);background:var(--e-global-color-primary);color:#fff}
.cd-bg-tief .cd-btn--ghost{color:#fff;border-color:rgba(255,255,255,.32)}
.cd-bg-tief .cd-btn--ghost:hover{background:#fff;color:var(--e-global-color-primary);border-color:#fff}
.cd-btns{display:flex;flex-wrap:wrap;gap:16px;align-items:center}

/* Hero */
.cd-hero{position:relative;min-height:min(92vh,900px);display:flex;align-items:flex-end;overflow:hidden;background:var(--e-global-color-primary)}
.cd-hero__media{position:absolute;inset:0;overflow:hidden}
.cd-hero__media img{width:100%;height:100%;object-fit:cover;display:block}
.cd-hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,37,64,.62) 0%, rgba(10,37,64,.46) 40%, rgba(10,37,64,.90) 100%)}
.cd-hero__inner{position:relative;width:min(1200px, calc(100% - 48px));margin-inline:auto;padding:0 0 96px}
.cd-hero h1{color:#fff;margin:0 0 28px;max-width:16ch}
.cd-hero .cd-eyebrow{color:#9DB2CA}
.cd-hero__sub{color:#D3DEEA;font-size:20px;line-height:1.6;max-width:56ch;margin:0 0 40px}
.cd-hero__scroll{position:absolute;right:0;bottom:96px;display:flex;flex-direction:column;align-items:center;gap:14px;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:#9DB2CA}
.cd-hero__scroll span{writing-mode:vertical-rl}
.cd-hero__scroll i{display:block;width:1px;height:64px;background:linear-gradient(180deg,#9DB2CA,transparent);animation:cdScroll 2.6s var(--cd-ease) infinite}
@keyframes cdScroll{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}

/* Claim */
.cd-claim{text-align:center}
.cd-claim h2{font-size:clamp(34px,6vw,74px);line-height:1.1;margin:0;color:#fff}

/* Leistungsraster */
.cd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--e-global-color-dbe937e);border:1px solid var(--e-global-color-dbe937e);margin-top:64px}
.cd-grid > a{background:#fff;padding:40px 34px 44px;text-decoration:none;display:block;transition:background-color .4s var(--cd-ease)}
.cd-grid > a:hover{background:var(--e-global-color-3cdf12b)}
.cd-grid h3{font-size:21px;line-height:1.3;margin:0 0 10px;color:var(--e-global-color-primary);font-family:Inter,sans-serif;font-weight:700;letter-spacing:-.2px}
.cd-grid p{font-size:15px;line-height:1.55;color:var(--e-global-color-secondary);margin:0}
.cd-grid .cd-num{font-family:Inter,sans-serif;font-size:12px;letter-spacing:.14em;color:#9AA7B6;display:block;margin-bottom:18px}

/* Zwei Spalten */
.cd-two{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.cd-two--wideleft{grid-template-columns:1.1fr .9fr}

/* Argumente */
.cd-args{display:grid;grid-template-columns:repeat(4,1fr);margin-top:72px;border-top:1px solid var(--e-global-color-dbe937e)}
.cd-args > div{padding:40px 32px 0 0;border-right:1px solid var(--e-global-color-dbe937e)}
.cd-args > div:last-child{border-right:0}
.cd-args > div:not(:first-child){padding-left:32px}
.cd-args h3,.cd-args h4{margin:0 0 12px;font-size:20px}
.cd-args p{margin:0;font-size:15px;line-height:1.6;color:var(--e-global-color-secondary)}

/* Ablauf */
.cd-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:48px;margin-top:72px}
.cd-step__num{font-family:"Playfair Display",Georgia,serif;font-size:64px;line-height:1;color:rgba(255,255,255,.22);display:block;margin-bottom:20px}
.cd-step h3,.cd-step h4{margin:0 0 10px;font-size:20px}
.cd-step p{margin:0;font-size:15px;line-height:1.6}

/* Orte */
.cd-orte{display:flex;flex-wrap:wrap;gap:10px}
.cd-orte span{font-family:Inter,sans-serif;font-size:14px;color:var(--e-global-color-secondary);border:1px solid var(--e-global-color-dbe937e);border-radius:999px;padding:9px 18px;background:#fff}

/* Projekt in drei Schritten */
.cd-three{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:64px}
.cd-three figure{margin:0}
.cd-three img{width:100%;height:auto;display:block;border-radius:4px}
.cd-three figcaption{font-family:Inter,sans-serif;font-size:14px;line-height:1.6;color:var(--e-global-color-secondary);margin-top:14px}
.cd-three .cd-schritt{font-weight:600;color:var(--e-global-color-primary);display:block;margin-bottom:4px}

.cd-cap{font-family:Inter,sans-serif;font-size:14px;color:var(--e-global-color-secondary)}

@media (max-width:1024px){
	.cd-sec{padding:112px 0}
	.cd-sec--tight{padding:80px 0}
	.cd-grid{grid-template-columns:repeat(2,1fr)}
	.cd-two{grid-template-columns:1fr;gap:48px}
	.cd-args{grid-template-columns:repeat(2,1fr)}
	.cd-args > div{border-bottom:1px solid var(--e-global-color-dbe937e);padding-bottom:36px}
	.cd-steps{grid-template-columns:repeat(2,1fr);gap:40px}
	.cd-three{grid-template-columns:1fr;gap:32px}
}
@media (max-width:767px){
	.cd-sec{padding:96px 0}
	.cd-sec--tight{padding:64px 0}
	.cd-wrap,.cd-wrap--narrow{width:calc(100% - 40px)}
	.cd-lead,.cd-hero__sub{font-size:18px}
	.cd-btn{padding:17px 24px;font-size:15px}
	.cd-btns .cd-btn{flex:1 1 100%;justify-content:center}
	.cd-grid{grid-template-columns:1fr}
	.cd-args{grid-template-columns:1fr}
	.cd-args > div{border-right:0;padding-left:0 !important;padding-right:0}
	.cd-steps{grid-template-columns:1fr;gap:32px}
	.cd-hero{min-height:88vh}
	.cd-hero__inner{padding-bottom:64px}
	.cd-hero__scroll{display:none}
	.cd-step__num{font-size:52px}
}

/* =========================================================
   7. Vorher-Nachher-Regler
   ========================================================= */

.cd-compare{position:relative;overflow:hidden;border-radius:4px;user-select:none;touch-action:pan-y;background:var(--e-global-color-3cdf12b);--p:50%}
.cd-compare img{display:block;width:100%;height:auto;pointer-events:none}
.cd-compare__before{position:absolute;inset:0;width:var(--p);overflow:hidden}
.cd-compare__before img{position:absolute;top:0;left:0;max-width:none;height:100%;object-fit:cover}
.cd-compare__handle{position:absolute;top:0;bottom:0;left:var(--p);width:2px;margin-left:-1px;background:#fff;cursor:ew-resize;touch-action:none}
.cd-compare__handle i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:#fff;display:grid;place-items:center;transition:transform .3s var(--cd-ease)}
.cd-compare__handle i::before,.cd-compare__handle i::after{content:"";position:absolute;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent}
.cd-compare__handle i::before{border-right:8px solid var(--e-global-color-primary);left:13px}
.cd-compare__handle i::after{border-left:8px solid var(--e-global-color-primary);right:13px}
.cd-compare:hover .cd-compare__handle i{transform:translate(-50%,-50%) scale(1.08)}
.cd-compare__handle:focus-visible{outline:none}
.cd-compare__handle:focus-visible i{box-shadow:0 0 0 3px var(--e-global-color-accent)}
.cd-compare__label{position:absolute;bottom:16px;font-family:Inter,system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:rgba(10,37,64,.72);padding:8px 14px;border-radius:3px;pointer-events:none}
.cd-compare__label--l{left:16px}
.cd-compare__label--r{right:16px}
.cd-compare-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;margin-top:64px;align-items:start}
.cd-compare-grid--single{grid-template-columns:1fr;max-width:900px}
.cd-compare-item{margin:0}
.cd-compare-item figcaption{font-family:Inter,sans-serif;font-size:14px;line-height:1.6;color:var(--e-global-color-secondary);margin-top:16px}
.cd-compare-item figcaption strong{color:var(--e-global-color-primary);font-weight:600}
@media (max-width:900px){
	.cd-compare-grid{grid-template-columns:1fr;gap:48px}
	.cd-compare__handle i{width:46px;height:46px}
	.cd-compare__label{font-size:11px;padding:6px 11px;bottom:12px}
	.cd-compare__label--l{left:12px}
	.cd-compare__label--r{right:12px}
}


/* =========================================================
   8. Header
   ========================================================= */

.cd-header{position:sticky;top:0;z-index:900;background:rgba(247,249,252,.86);backdrop-filter:saturate(140%) blur(12px);-webkit-backdrop-filter:saturate(140%) blur(12px);transition:box-shadow .4s ease, background-color .4s ease}
.cd-header.is-scrolled{box-shadow:0 1px 0 var(--e-global-color-dbe937e);background:rgba(247,249,252,.94)}
.cd-header__inner{width:min(1200px, calc(100% - 48px));margin-inline:auto;display:flex;align-items:center;gap:40px;padding:26px 0;transition:padding .4s var(--cd-ease)}
.cd-header.is-scrolled .cd-header__inner{padding:16px 0}
.cd-nav{margin-left:auto;display:flex;gap:36px}
.cd-nav a{font-family:Inter,system-ui,sans-serif;font-weight:500;font-size:16px;color:var(--e-global-color-primary);text-decoration:none;position:relative;padding:4px 0}
.cd-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--cd-ease)}
.cd-nav a:hover::after,.cd-nav a[aria-current="page"]::after{transform:scaleX(1);transform-origin:left}
.cd-nav a[aria-current="page"]{font-weight:600}
.cd-header__actions{display:flex;align-items:center;gap:20px}
.cd-tel{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:15px;color:var(--e-global-color-primary);transition:color .3s var(--cd-ease)}
.cd-tel svg{width:18px;height:18px;flex:none}
.cd-tel:hover{color:var(--e-global-color-accent)}
.cd-header__cta{padding:14px 24px;font-size:15px}
.cd-header.is-scrolled .cd-header__cta{padding:12px 22px}
.cd-burger{display:none;width:44px;height:44px;border:0;background:transparent;cursor:pointer;position:relative;padding:0}
.cd-burger i{position:absolute;left:11px;width:22px;height:2px;background:var(--e-global-color-primary);transition:transform .4s var(--cd-ease), opacity .3s ease}
.cd-burger i:nth-child(2){top:18px}
.cd-burger i:nth-child(3){top:25px}
.cd-burger[aria-expanded="true"] i{background:#fff}
.cd-burger[aria-expanded="true"] i:nth-child(2){transform:translateY(3.5px) rotate(45deg)}
.cd-burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-3.5px) rotate(-45deg)}
.cd-mobilnav{display:none;position:fixed;left:0;right:0;top:0;bottom:0;background:var(--e-global-color-primary);padding:120px 24px 40px;z-index:890;opacity:0;visibility:hidden;transition:opacity .45s var(--cd-ease), visibility .45s;overflow-y:auto}
.cd-mobilnav.is-open{opacity:1;visibility:visible}
.cd-mobilnav nav{display:flex;flex-direction:column}
.cd-mobilnav nav a{font-family:Inter,system-ui,sans-serif;font-weight:800;font-size:34px;letter-spacing:-1px;color:#fff;text-decoration:none;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14);opacity:0;transform:translateY(18px);transition:opacity .5s var(--cd-ease), transform .5s var(--cd-ease)}
.cd-mobilnav.is-open nav a{opacity:1;transform:none}
.cd-mobilnav.is-open nav a:nth-child(1){transition-delay:.10s}
.cd-mobilnav.is-open nav a:nth-child(2){transition-delay:.17s}
.cd-mobilnav.is-open nav a:nth-child(3){transition-delay:.24s}
.cd-mobilnav__foot{margin-top:40px;opacity:0;transform:translateY(18px);transition:opacity .5s var(--cd-ease) .32s, transform .5s var(--cd-ease) .32s}
.cd-mobilnav.is-open .cd-mobilnav__foot{opacity:1;transform:none}
.cd-mobilnav__foot p{margin:18px 0 0;font-family:Inter,sans-serif;font-size:14px;color:#7E93AC;text-align:center}
body.cd-nav-open{overflow:hidden}

@media (max-width:1024px){
	.cd-nav{display:none}
	.cd-burger{display:block;z-index:895;position:relative}
	.cd-mobilnav{display:block}
	.cd-header__inner{gap:16px;padding:18px 0}
	.cd-header.is-scrolled .cd-header__inner{padding:12px 0}
	.cd-header__actions{margin-left:auto}
	.cd-header__cta{display:none}
	.cd-tel__num{display:none}
	.cd-tel{width:44px;height:44px;justify-content:center;border:1px solid var(--e-global-color-dbe937e);border-radius:50%}
	.cd-tel svg{width:19px;height:19px}
}
@media (max-width:767px){
	.cd-header__inner{width:calc(100% - 40px)}
	.cd-mobilnav nav a{font-size:28px}
}

/* =========================================================
   9. Footer und mobile Aktionsleiste
   ========================================================= */

.cd-footer{background:var(--e-global-color-primary);color:#C3CEDC;padding:112px 0 40px}
.cd-footer__top{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:64px;padding-bottom:72px;border-bottom:1px solid rgba(255,255,255,.14)}
.cd-footer__brand p{margin:28px 0 0;max-width:38ch;font-family:Inter,system-ui,sans-serif;font-size:15px;line-height:1.7;color:#8FA3BA}
.cd-footer h3{font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:#7E93AC;margin:0 0 24px}
.cd-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
.cd-footer ul a{font-family:Inter,system-ui,sans-serif;font-size:15px;color:#C3CEDC;text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-size:0% 1px;background-position:left calc(100% - 1px);background-repeat:no-repeat;transition:background-size .45s var(--cd-ease), color .3s ease}
.cd-footer ul a:hover{color:#fff;background-size:100% 1px}
.cd-footer__hours{margin:24px 0 0;font-family:Inter,sans-serif;font-size:15px;line-height:1.7;color:#8FA3BA}
.cd-footer__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding-top:32px}
.cd-footer__bottom p{margin:0;font-family:Inter,sans-serif;font-size:14px;color:#7E93AC}
.cd-footer__bottom nav{display:flex;flex-wrap:wrap;gap:28px;align-items:center}
.cd-footer__bottom nav a,.cd-cookie-settings{font-family:Inter,sans-serif;font-size:14px;color:#7E93AC;text-decoration:none;background:none;border:0;padding:0;cursor:pointer;transition:color .3s ease}
.cd-footer__bottom nav a:hover,.cd-cookie-settings:hover{color:#fff}

@media (max-width:1024px){
	.cd-footer__top{grid-template-columns:1fr 1fr;gap:48px}
	.cd-footer__brand{grid-column:1 / -1}
}
@media (max-width:767px){
	.cd-footer{padding:80px 0 32px}
	.cd-footer__top{grid-template-columns:1fr;gap:44px;padding-bottom:48px}
	.cd-footer__bottom{flex-direction:column;align-items:flex-start;gap:14px}
	.cd-footer__bottom nav{gap:18px}
}

.cd-actionbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:880;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-top:1px solid var(--e-global-color-dbe937e);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px;transform:translateY(115%);transition:transform .5s var(--cd-ease)}
.cd-actionbar.is-visible{transform:none}
.cd-actionbar a{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:Inter,sans-serif;font-weight:600;font-size:15px;padding:15px 12px;border-radius:4px;text-decoration:none}
.cd-actionbar svg{width:17px;height:17px}
.cd-actionbar .is-call{background:transparent;color:var(--e-global-color-primary);border:1px solid var(--e-global-color-dbe937e)}
.cd-actionbar .is-ask{background:var(--e-global-color-accent);color:#fff}
@media (max-width:767px){
	.cd-actionbar{display:flex}
	.cd-footer{padding-bottom:110px}
}

/* =========================================================
   10. Logo, hochgestelltes D
   ========================================================= */
.cd-logo__name sup{font-size:.54em;line-height:0;vertical-align:baseline;position:relative;top:-.54em;margin-left:.02em;font-weight:600;letter-spacing:0}


/* =========================================================
   11. Korrekturen gegenüber den Elementor-Grundstilen
   Elementor lädt sein Kit-CSS nach dem Child Theme, deshalb
   werden hier die wenigen Stellen durchgesetzt, an denen
   unsere Flächen eine andere Farbe brauchen.
   ========================================================= */

/* Keine Unterstreichung ausserhalb von Fliesstext */
.cd-header a,
.cd-footer a,
.cd-mobilnav a,
.cd-actionbar a,
.cd-logo,
.cd-btn,
.cd-grid > a,
.cd-orte span{text-decoration:none !important}

/* Buttons */
.cd-btn--primary,
.cd-btn--primary:hover,
.cd-btn--primary:focus{color:#fff !important}
.cd-btn--ghost{color:var(--e-global-color-primary) !important}
.cd-btn--ghost:hover{color:#fff !important}
.cd-bg-tief .cd-btn--ghost{color:#fff !important}
.cd-bg-tief .cd-btn--ghost:hover{color:var(--e-global-color-primary) !important}

/* Burger darf nicht wie ein Elementor-Button aussehen */
.cd-burger{background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 !important;border-radius:0 !important}
.cd-burger:hover{background:transparent !important;transform:none !important}
.cd-cookie-settings{background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 !important}

/* Hero */
.cd-hero h1{color:#fff !important}
.cd-hero .cd-eyebrow{color:#9DB2CA !important}
.cd-hero .cd-hero__sub{color:#D3DEEA !important}
.cd-hero .cd-btn--ghost{color:#fff !important;border-color:rgba(255,255,255,.36)}
.cd-hero .cd-btn--ghost:hover{background:#fff;color:var(--e-global-color-primary) !important;border-color:#fff}
.cd-hero__scrim{background:linear-gradient(180deg, rgba(10,37,64,.52) 0%, rgba(10,37,64,.34) 38%, rgba(10,37,64,.88) 100%)}

/* Tiefblaue Flaechen */
.cd-bg-tief h1,.cd-bg-tief h2,.cd-bg-tief h3,.cd-bg-tief h4,.cd-bg-tief h5{color:#fff !important}
.cd-bg-tief p,.cd-bg-tief .cd-lead{color:#C3CEDC !important}
.cd-bg-tief .cd-eyebrow{color:#7E93AC !important}

/* Header */
.cd-nav a{color:var(--e-global-color-primary) !important}
.cd-tel{color:var(--e-global-color-primary) !important}
.cd-tel:hover{color:var(--e-global-color-accent) !important}
.cd-logo__name{color:var(--e-global-color-primary) !important}
.cd-logo__sub{color:var(--e-global-color-secondary) !important}
.cd-logo--light .cd-logo__name{color:#fff !important}
.cd-logo--light .cd-logo__sub{color:#A9B8CB !important}
.cd-mobilnav nav a{color:#fff !important}

/* Footer */
.cd-footer ul a{color:#C3CEDC !important}
.cd-footer ul a:hover{color:#fff !important}
.cd-footer__bottom nav a,.cd-cookie-settings{color:#7E93AC !important}
.cd-footer__bottom nav a:hover,.cd-cookie-settings:hover{color:#fff !important}
.cd-footer h3{color:#7E93AC !important}

/* Leistungskacheln */
.cd-grid > a h3{color:var(--e-global-color-primary) !important}
.cd-grid > a p{color:var(--e-global-color-secondary) !important}

/* Elementor-Container sollen die Abschnitte nicht einschnueren */
.elementor-widget-html{width:100%}
.cd-hero,.cd-sec,.cd-footer{width:100%}


/* Hero-Verlauf: oben bleibt das Bild sichtbar, unten traegt es die Schrift */
.cd-hero .cd-hero__scrim{
	background:linear-gradient(180deg,
		rgba(10,37,64,.34) 0%,
		rgba(10,37,64,.26) 22%,
		rgba(10,37,64,.72) 58%,
		rgba(10,37,64,.93) 100%);
}
.cd-hero .cd-eyebrow{color:#BCCCDD !important}

/* Zwei gleiche Flaechen hintereinander sollen nicht doppelt Luft lassen */
.cd-sec + .cd-sec{padding-top:160px}
@media (max-width:1024px){ .cd-sec + .cd-sec{padding-top:112px} }
@media (max-width:767px){ .cd-sec + .cd-sec{padding-top:96px} }


/* Burger nur unterhalb von 1024 Pixeln */
.cd-burger{display:none !important;width:44px !important;height:44px !important;flex:none}
@media (max-width:1024px){ .cd-burger{display:block !important} }


/* Header und Mobilnavigation muessen ueber allen Elementor-Containern liegen */
.cd-header{z-index:9999 !important}
.cd-mobilnav{z-index:1 !important}
.cd-header__inner{position:relative;z-index:2}
.cd-actionbar{z-index:9000 !important}
.elementor-element{z-index:auto}

/* Auf dem Handy braucht der Hero mehr Deckung unter der Schrift */
@media (max-width:767px){
	.cd-hero .cd-hero__scrim{
		background:linear-gradient(180deg,
			rgba(10,37,64,.30) 0%,
			rgba(10,37,64,.34) 18%,
			rgba(10,37,64,.80) 42%,
			rgba(10,37,64,.95) 100%);
	}
}


/* Bei offenem Menue bleibt der Header hell, also bleibt auch das Kreuz dunkel */
.cd-burger[aria-expanded="true"] i{background:var(--e-global-color-primary)}
.cd-mobilnav{padding-top:104px}


/* Das Vorher-Bild muss exakt so gross bleiben wie das Nachher-Bild,
   sonst schneidet es die Maske ab. Elementor setzt img-Regeln nach,
   deshalb hier mit Nachdruck. */
.cd-compare__before img{
	width:var(--cw,100%) !important;
	max-width:none !important;
	height:100% !important;
	object-fit:cover !important;
}


/* Footer-Spaltenueberschriften sind Beschriftungen, keine H3-Ueberschriften */
.cd-footer h3{
	font-family:Inter,system-ui,sans-serif !important;
	font-size:13px !important;
	font-weight:600 !important;
	line-height:1.2 !important;
	letter-spacing:.2em !important;
	text-transform:uppercase !important;
	color:#7E93AC !important;
	margin:0 0 24px !important;
}

/* Sekundaerbutton auf tiefblauem Grund */
.cd-footer .cd-btn--ghost,
.cd-bg-tief .cd-btn--ghost{color:#fff !important;border-color:rgba(255,255,255,.32) !important}
.cd-footer .cd-btn--ghost:hover,
.cd-bg-tief .cd-btn--ghost:hover{background:#fff !important;color:var(--e-global-color-primary) !important;border-color:#fff !important}

/* Eyebrow soll nie von den globalen Absatzgroessen ueberschrieben werden */
.cd-eyebrow{font-size:13px !important;line-height:1.2 !important}
.cd-grid h3{font-size:21px !important;line-height:1.3 !important}
.cd-args h3,.cd-args h4,.cd-step h3,.cd-step h4{font-size:20px !important;line-height:1.3 !important}
.cd-three figcaption,.cd-compare-item figcaption,.cd-cap{font-size:14px !important;line-height:1.6 !important}
.cd-orte span{font-size:14px !important;line-height:1.2 !important}


/* Der Cookie-Schalter ist ein Button, soll aber wie die Links daneben aussehen */
.cd-cookie-settings{
	font-family:Inter,system-ui,sans-serif !important;
	font-size:14px !important;
	font-weight:400 !important;
	letter-spacing:0 !important;
	line-height:1.4 !important;
	text-transform:none !important;
}

/* =========================================================
   12. Buttons: weiche Rundung, feiner Verlauf, Glasflaeche
   ========================================================= */

.cd-btn{
	position:relative;
	border-radius:999px;
	padding:18px 32px;
	letter-spacing:.01em;
	border:1px solid transparent;
	transition:transform .35s var(--cd-ease), box-shadow .4s var(--cd-ease), background-color .35s var(--cd-ease), border-color .35s var(--cd-ease), color .35s var(--cd-ease);
}
.cd-btn:active{transform:translateY(0) scale(.985)}
.cd-btn:focus-visible{outline:2px solid var(--e-global-color-accent);outline-offset:3px}
.cd-header__cta{padding:13px 24px;font-size:15px}
.cd-header.is-scrolled .cd-header__cta{padding:11px 22px}

/* Blau, leichte Woelbung durch Verlauf und Innenkanten */
.cd-btn--primary{
	background-color:#1668E3;
	background-image:linear-gradient(180deg,rgba(255,255,255,.30) 0%,rgba(255,255,255,.07) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#3D89F2 0%,#1668E3 52%,#0E52BE 100%);
	border-color:rgba(8,52,120,.34);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 -1px 0 rgba(3,32,80,.26),0 1px 2px rgba(10,37,64,.18),0 12px 26px -10px rgba(22,104,227,.6);
}
.cd-btn--primary:hover{
	background-color:#1D72EE;
	background-image:linear-gradient(180deg,rgba(255,255,255,.38) 0%,rgba(255,255,255,.09) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#4B93F6 0%,#1D72EE 52%,#1259CB 100%);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1px 0 rgba(3,32,80,.28),0 2px 5px rgba(10,37,64,.18),0 18px 34px -12px rgba(22,104,227,.7);
}

/* Glas auf hellem Grund */
.cd-btn--ghost{
	background-color:rgba(255,255,255,.58);
	background-image:linear-gradient(180deg,rgba(255,255,255,.78) 0%,rgba(255,255,255,.30) 100%);
	-webkit-backdrop-filter:blur(16px) saturate(150%);
	backdrop-filter:blur(16px) saturate(150%);
	border-color:rgba(10,37,64,.16) !important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.92),inset 0 -1px 0 rgba(10,37,64,.05),0 1px 2px rgba(10,37,64,.07),0 12px 26px -14px rgba(10,37,64,.42);
}
.cd-btn--ghost:hover{
	background-color:rgba(255,255,255,.82) !important;
	background-image:linear-gradient(180deg,rgba(255,255,255,.95) 0%,rgba(255,255,255,.5) 100%) !important;
	border-color:rgba(10,37,64,.24) !important;
	color:var(--e-global-color-primary) !important;
	box-shadow:inset 0 1px 0 #fff,0 2px 5px rgba(10,37,64,.1),0 18px 34px -16px rgba(10,37,64,.5);
}

/* Glas auf dunklem Grund */
.cd-hero .cd-btn--ghost,
.cd-bg-tief .cd-btn--ghost,
.cd-footer .cd-btn--ghost{
	background-color:rgba(255,255,255,.10) !important;
	background-image:linear-gradient(180deg,rgba(255,255,255,.24) 0%,rgba(255,255,255,.06) 100%) !important;
	border-color:rgba(255,255,255,.30) !important;
	color:#fff !important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 12px 30px -14px rgba(0,0,0,.65);
}
.cd-hero .cd-btn--ghost:hover,
.cd-bg-tief .cd-btn--ghost:hover,
.cd-footer .cd-btn--ghost:hover{
	background-color:rgba(255,255,255,.20) !important;
	background-image:linear-gradient(180deg,rgba(255,255,255,.36) 0%,rgba(255,255,255,.13) 100%) !important;
	border-color:rgba(255,255,255,.48) !important;
	color:#fff !important;
}

/* WhatsApp */
.cd-btn--whatsapp{
	background-color:#25D366;
	background-image:linear-gradient(180deg,rgba(255,255,255,.32) 0%,rgba(255,255,255,.08) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#56E183 0%,#25D366 50%,#12A44B 100%);
	color:#fff !important;
	border-color:rgba(9,88,42,.32) !important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1px 0 rgba(6,66,32,.24),0 1px 2px rgba(6,66,32,.18),0 12px 26px -10px rgba(37,211,102,.55);
}
.cd-btn--whatsapp:hover{
	background-color:#2ADD6E !important;
	background-image:linear-gradient(180deg,rgba(255,255,255,.38) 0%,rgba(255,255,255,.1) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#64E88E 0%,#2ADD6E 50%,#159F4E 100%) !important;
	color:#fff !important;
	border-color:rgba(9,88,42,.38) !important;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.58),inset 0 -1px 0 rgba(6,66,32,.26),0 2px 5px rgba(6,66,32,.18),0 18px 34px -12px rgba(37,211,102,.66);
}
.cd-btn--whatsapp svg{width:19px;height:19px;fill:currentColor;stroke:none}
.cd-btn--whatsapp:hover svg{transform:none}

/* Aktionsleiste, mobil */
.cd-actionbar a{border-radius:999px;padding:14px 12px}
.cd-actionbar .is-call{
	background-color:rgba(255,255,255,.6);
	background-image:linear-gradient(180deg,rgba(255,255,255,.85) 0%,rgba(255,255,255,.4) 100%);
	border:1px solid rgba(10,37,64,.16);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 1px 2px rgba(10,37,64,.07);
}
.cd-actionbar .is-wa{
	background-color:#25D366;
	background-image:linear-gradient(180deg,rgba(255,255,255,.32) 0%,rgba(255,255,255,.08) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#56E183 0%,#25D366 50%,#12A44B 100%);
	color:#fff !important;border:1px solid rgba(9,88,42,.32);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 1px 2px rgba(6,66,32,.18);
}
.cd-actionbar .is-wa svg{fill:currentColor;stroke:none;width:18px;height:18px}
.cd-actionbar .is-ask{
	background-color:#1668E3;
	background-image:linear-gradient(180deg,rgba(255,255,255,.30) 0%,rgba(255,255,255,.07) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#3D89F2 0%,#1668E3 52%,#0E52BE 100%);
	border:1px solid rgba(8,52,120,.34);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 1px 2px rgba(10,37,64,.18);
}

@media (max-width:767px){
	.cd-btn{padding:16px 26px;font-size:15px}
}

/* =========================================================
   13. Akzentwort, optisch auf Inter abgestimmt
   ========================================================= */

h1 em, h2 em, h3 em, h4 em, h5 em,
.elementor-heading-title em,
.akzent{
	font-weight:700;
	font-size:1.06em;
}

/* Footer, Buttons untereinander */
.cd-footer__btns{flex-direction:column;align-items:flex-start;gap:12px;margin-top:26px}
.cd-footer__btns .cd-btn{padding:15px 26px;font-size:15px;white-space:nowrap}


/* =========================================================
   14. Farbflaeche warm, Laufband, Leistungs-Icons, Formular
   ========================================================= */

/* Warme Flaeche statt Flaechenblau, Trennlinie neutral */
body{
	--e-global-color-3cdf12b:#F3F1EE !important;
	--e-global-color-dbe937e:#E0DCD6 !important;
}
.cd-bg-flaeche{background:#F3F1EE}
.cd-orte span{border-color:#E0DCD6}

/* Laufband im Claim */
.cd-claim{padding-bottom:120px}
.cd-marquee{
	margin-top:64px;
	display:flex;width:100%;overflow:hidden;
	-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
	mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
}
.cd-marquee__track{
	display:flex;align-items:center;flex:0 0 auto;
	animation:cdMarquee 42s linear infinite;
	will-change:transform;
}
.cd-marquee:hover .cd-marquee__track{animation-play-state:paused}
.cd-marquee span{
	font-family:Inter,system-ui,sans-serif;font-weight:500;
	font-size:clamp(15px,1.7vw,20px);letter-spacing:.24em;text-transform:uppercase;
	color:rgba(255,255,255,.46);white-space:nowrap;
}
.cd-marquee i{
	flex:none;width:7px;height:7px;margin:0 32px;
	background:var(--e-global-color-accent);transform:rotate(45deg);
	border-radius:1px;opacity:.85;
}
@keyframes cdMarquee{from{transform:translateX(0)}to{transform:translateX(-100%)}}

/* Leistungskacheln */
.cd-grid > a{padding:38px 34px 42px}
.cd-grid .cd-ico{
	display:block;width:42px;height:42px;flex:none;
	color:var(--e-global-color-accent);
	margin:0 0 24px;
	transition:transform .55s var(--cd-ease), color .4s var(--cd-ease);
}
.cd-grid .cd-ico path,.cd-grid .cd-ico rect,.cd-grid .cd-ico circle{
	fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;
}
.cd-grid > a:hover .cd-ico{transform:translateY(-5px)}
.cd-grid .cd-num{
	position:absolute;top:38px;right:34px;margin:0;
	font-size:12px;letter-spacing:.14em;color:#B3ADA4;
}
.cd-grid > a::after{
	content:"";position:absolute;right:34px;bottom:36px;
	width:22px;height:8px;
	background:
		linear-gradient(currentColor,currentColor) left center/14px 1.5px no-repeat,
		linear-gradient(currentColor,currentColor) right 1px center/7px 1.5px no-repeat;
	color:var(--e-global-color-accent);
	opacity:0;transform:translateX(-8px);
	transition:opacity .4s var(--cd-ease), transform .4s var(--cd-ease);
}
.cd-grid > a:hover::after{opacity:1;transform:none}

/* Formular */
.cd-two--form{grid-template-columns:.95fr 1.05fr;gap:64px;align-items:start}
.cd-formcard{
	background:#fff;border-radius:18px;padding:40px;
	box-shadow:0 30px 70px -40px rgba(0,0,0,.65);
}
.cd-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cd-form .cd-f-full{grid-column:1 / -1}
.cd-form label{
	display:block;font-family:Inter,system-ui,sans-serif;font-size:13px;font-weight:600;
	letter-spacing:.08em;text-transform:uppercase;color:var(--e-global-color-secondary);
	margin:0 0 8px;
}
.cd-form input[type=text],
.cd-form input[type=email],
.cd-form input[type=tel],
.cd-form textarea{
	width:100%;box-sizing:border-box;
	font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.5;
	color:var(--e-global-color-text);
	background:#FAFAF9;
	border:1px solid #E0DCD6;border-radius:10px;
	padding:14px 16px;
	transition:border-color .3s var(--cd-ease), box-shadow .3s var(--cd-ease), background-color .3s var(--cd-ease);
}
.cd-form textarea{min-height:132px;resize:vertical}
.cd-form input:focus,.cd-form textarea:focus{
	outline:none;background:#fff;
	border-color:var(--e-global-color-accent);
	box-shadow:0 0 0 4px rgba(22,104,227,.14);
}
.cd-form .cd-f-consent{grid-column:1 / -1;display:flex;gap:12px;align-items:flex-start;margin-top:4px}
.cd-form .cd-f-consent input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--e-global-color-accent)}
.cd-form .cd-f-consent label{
	text-transform:none;letter-spacing:0;font-size:14px;font-weight:400;line-height:1.55;margin:0;
	color:var(--e-global-color-secondary);
}
.cd-form .cd-f-consent a{color:var(--e-global-color-9c413a1);text-decoration:underline}
.cd-form .cd-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cd-form .cd-f-send{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:6px}
.cd-form button.cd-btn{border:1px solid transparent;cursor:pointer;font-family:Inter,system-ui,sans-serif}
.cd-form .cd-f-note{font-size:13px;color:#8D8880;margin:0}
.cd-formcard h3{
	font-family:Inter,system-ui,sans-serif;font-weight:700;font-size:22px;letter-spacing:-.3px;
	color:var(--e-global-color-primary);margin:0 0 6px;
}
.cd-formcard > p{font-family:Inter,sans-serif;font-size:15px;color:var(--e-global-color-secondary);margin:0 0 26px}
.cd-hinweis{
	grid-column:1 / -1;border-radius:10px;padding:14px 16px;
	font-family:Inter,sans-serif;font-size:15px;line-height:1.5;margin:0 0 4px;
}
.cd-hinweis--ok{background:#EAF7EF;color:#1C6B3C;border:1px solid #BFE4CD}
.cd-hinweis--fehler{background:#FDEEEE;color:#9A2B2B;border:1px solid #F2CDCD}

@media (max-width:767px){
	.cd-formcard{padding:28px 22px;border-radius:14px}
	.cd-form{grid-template-columns:1fr}
	.cd-marquee{margin-top:44px}
	.cd-marquee i{margin:0 20px}
	.cd-grid .cd-num{top:32px;right:26px}
	.cd-grid > a{padding:32px 26px 38px}
}

@media (prefers-reduced-motion: reduce){
	.cd-marquee__track{animation:none}
	.cd-marquee{justify-content:center;flex-wrap:wrap}
}


/* =========================================================
   15. Sprachumschalter unten rechts
   ========================================================= */

body{top:0 !important}
.skiptranslate iframe,#goog-gt-tt,.goog-te-banner-frame{display:none !important}

#gt_float_wrapper{bottom:26px !important;right:26px !important;z-index:860 !important}
.gt_float_switcher{
	background:transparent !important;box-shadow:none !important;border-radius:0 !important;
	overflow:visible !important;
	font-family:Inter,system-ui,sans-serif !important;
}
.gt_float_switcher .gt-selected{border:0 !important;background:transparent !important}
.gt_float_switcher .gt-selected .gt-current-lang{
	width:56px;height:56px;padding:0 !important;border-radius:50%;
	display:grid;place-items:center;cursor:pointer;overflow:hidden;
	background:#fff;border:1px solid rgba(10,37,64,.10);
	box-shadow:0 2px 6px rgba(10,37,64,.14), 0 14px 30px -14px rgba(10,37,64,.55);
	transition:transform .35s var(--cd-ease), box-shadow .35s var(--cd-ease);
}
.gt_float_switcher .gt-selected .gt-current-lang:hover{
	transform:translateY(-3px);
	box-shadow:0 3px 8px rgba(10,37,64,.16), 0 20px 40px -16px rgba(10,37,64,.6);
}
.gt_float_switcher .gt-current-lang img{
	width:56px !important;height:56px !important;max-width:none !important;
	object-fit:cover;border-radius:50%;display:block;margin:0 !important;
}
.gt_float_switcher .gt-lang-code,
.gt_float_switcher .gt_float_switcher-arrow{display:none !important}

.gt_float_switcher .gt_options{
	background:#fff !important;border-radius:16px !important;
	padding:8px !important;margin:0 0 12px !important;min-width:190px;
	border:1px solid rgba(10,37,64,.08);
	box-shadow:0 2px 6px rgba(10,37,64,.12), 0 24px 50px -22px rgba(10,37,64,.6);
}
.gt_float_switcher .gt_options a{
	display:flex !important;align-items:center;gap:12px;
	padding:11px 14px !important;border-radius:10px;
	color:var(--e-global-color-primary) !important;background:transparent !important;
	font-size:15px !important;line-height:1.2 !important;text-decoration:none !important;
	transition:background-color .25s ease;
}
.gt_float_switcher .gt_options a:hover{background:#F3F1EE !important}
.gt_float_switcher .gt_options a.gt-current{font-weight:600}
.gt_float_switcher .gt_options img{
	width:26px !important;height:26px !important;max-width:none !important;
	border-radius:50%;object-fit:cover;margin:0 !important;flex:none;
}

body.cd-nav-open #gt_float_wrapper{opacity:0;pointer-events:none}

@media (max-width:767px){
	#gt_float_wrapper{bottom:96px !important;right:16px !important}
	.gt_float_switcher .gt-selected .gt-current-lang{width:48px;height:48px}
	.gt_float_switcher .gt-current-lang img{width:48px !important;height:48px !important}
}


/* =========================================================
   16. Formularkarte auf dunklem Grund, Farben zuruecksetzen
   ========================================================= */

.cd-bg-tief .cd-formcard h3,
.cd-formcard h3{
	color:var(--e-global-color-primary) !important;
	font-family:Inter,system-ui,sans-serif !important;
	font-weight:700 !important;font-size:22px !important;
	line-height:1.3 !important;letter-spacing:-.3px !important;
	margin:0 0 8px !important;text-transform:none !important;
}
.cd-bg-tief .cd-formcard > p,
.cd-formcard > p{color:var(--e-global-color-secondary) !important}
.cd-bg-tief .cd-formcard label,
.cd-formcard label{color:var(--e-global-color-secondary) !important}
.cd-bg-tief .cd-formcard input,
.cd-bg-tief .cd-formcard textarea{color:var(--e-global-color-text) !important}
.cd-formcard input::placeholder,
.cd-formcard textarea::placeholder{color:#A9A49C;opacity:1}
.cd-bg-tief .cd-formcard .cd-f-note,
.cd-formcard .cd-f-note{color:#8D8880 !important}
.cd-bg-tief .cd-formcard a,
.cd-formcard .cd-f-consent a{color:var(--e-global-color-9c413a1) !important}

@media (max-width:1024px){
	.cd-two--form{grid-template-columns:1fr;gap:44px}
}

.cd-grid > a{position:relative !important}


/* =========================================================
   17. Hero kompakter und praesenter, Claim enger
   ========================================================= */

.cd-hero{min-height:min(88vh,880px)}
.cd-hero__inner{width:min(1440px, calc(100% - 88px));padding:0 0 78px}
.cd-hero h1{
	font-size:clamp(40px, 5.2vw, 92px) !important;
	line-height:1.03 !important;
	letter-spacing:-2.4px !important;
	max-width:15ch;
	margin:0 0 26px;
}
.cd-hero__sub{font-size:clamp(17px,1.35vw,22px);max-width:52ch;margin:0 0 38px}
.cd-hero__scrim{
	background:
		linear-gradient(90deg, rgba(10,37,64,.80) 0%, rgba(10,37,64,.46) 46%, rgba(10,37,64,.16) 100%),
		linear-gradient(180deg, rgba(10,37,64,.44) 0%, rgba(10,37,64,.30) 38%, rgba(10,37,64,.80) 100%);
}
.cd-hero__scroll{bottom:78px}

.cd-claim{padding:100px 0 84px}
.cd-marquee{margin-top:52px}

/* Kontaktblock im Abschluss-CTA */
.cd-kontaktblock p{margin:0 0 6px;font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.7;color:#A9BACD}
.cd-kontaktblock .cd-kontakt__name{color:#fff;font-weight:600;margin-bottom:14px}
.cd-kontaktblock a{
	color:#A9BACD;text-decoration:none;
	background-image:linear-gradient(currentColor,currentColor);
	background-size:0% 1px;background-position:left calc(100% - 1px);background-repeat:no-repeat;
	transition:background-size .45s var(--cd-ease), color .3s ease;
}
.cd-kontaktblock a:hover{color:#fff;background-size:100% 1px}
.cd-kontaktblock .cd-btn{color:#fff !important;background-image:linear-gradient(180deg,rgba(255,255,255,.32) 0%,rgba(255,255,255,.08) 46%,rgba(255,255,255,0) 47%),linear-gradient(180deg,#56E183 0%,#25D366 50%,#12A44B 100%) !important;background-size:auto !important}

@media (max-width:1024px){
	.cd-hero__inner{width:calc(100% - 56px)}
}

@media (max-width:767px){
	.cd-hero{min-height:100svh}
	.cd-hero__inner{width:calc(100% - 40px);padding:0 0 52px}
	.cd-hero h1{font-size:clamp(40px,10.4vw,58px) !important;letter-spacing:-1.4px !important;max-width:none;margin:0 0 20px}
	.cd-hero__sub{font-size:17px;line-height:1.55;margin:0 0 28px;max-width:none}
	.cd-hero .cd-eyebrow{margin-bottom:14px}
	.cd-hero__scrim{
		background:linear-gradient(180deg, rgba(10,37,64,.05) 0%, rgba(10,37,64,0) 40%, rgba(10,37,64,.16) 60%, rgba(10,37,64,.50) 78%, rgba(10,37,64,.80) 100%);
	}
	.cd-claim{padding:72px 0 60px}
	.cd-marquee{margin-top:36px}
}


/* =========================================================
   18. Hero auf dem Handy enger fassen
   ========================================================= */
@media (max-width:767px){
	.cd-hero__inner{padding:0 0 44px}
	.cd-hero .cd-eyebrow{font-size:11px;letter-spacing:.14em;margin-bottom:12px}
	.cd-hero .cd-eyebrow::before{width:22px;margin-right:12px}
	.cd-hero h1{margin:0 0 18px}
	.cd-hero__sub{font-size:16px;line-height:1.5;margin:0 0 24px}
	.cd-hero .cd-btns{gap:12px}
	.cd-hero .cd-btn{padding:15px 22px}
}


/* =========================================================
   19. Hero fuellt den ersten Bildschirm, Kopfzeile abgezogen
   ========================================================= */
@media (max-width:767px){
	.cd-hero{min-height:calc(100svh - 78px)}
	.cd-hero .cd-eyebrow{font-size:11px !important;letter-spacing:.14em !important;margin-bottom:12px !important}
	.cd-hero h1{font-size:clamp(36px,9.6vw,52px) !important;line-height:1.06 !important;margin:0 0 16px !important}
	.cd-hero__sub{margin:0 0 22px}
}

.cd-kontaktblock p a{color:#A9BACD !important;text-decoration:none !important}
.cd-kontaktblock p a:hover{color:#fff !important}
.cd-kontaktblock .cd-btn{color:#fff !important}


/* =========================================================
   20. Claim, Pinselstrich unter dem letzten Wort
   ========================================================= */

.cd-claim .cd-mark{position:relative;display:inline-block;isolation:isolate}
.cd-claim .cd-mark::after{
	content:"";position:absolute;z-index:-1;
	left:-3%;right:-3%;bottom:.02em;height:.16em;
	background:linear-gradient(90deg, #1668E3 0%, #3D89F2 55%, #1668E3 100%);
	border-radius:3px;
	transform:scaleX(0) rotate(-1.4deg);
	transform-origin:left center;
	transition:transform 1.15s var(--cd-ease) .45s;
}
.cd-claim.is-live .cd-mark::after{
	transform:scaleX(1) rotate(-1.4deg);
	animation:cdStrichAtmen 4.2s ease-in-out 1.7s infinite;
}
@keyframes cdStrichAtmen{
	0%,100%{opacity:.9;transform:scaleX(1) scaleY(1) rotate(-1.4deg)}
	50%{opacity:1;transform:scaleX(1.012) scaleY(1.18) rotate(-1.4deg)}
}

/* =========================================================
   21. Claim und Buttons auf dem Handy
   ========================================================= */
@media (max-width:767px){
	.cd-claim{padding:52px 0 54px}
	.cd-claim h2{font-size:clamp(38px,11.4vw,58px);line-height:1.12}
	.cd-claim h2 .cd-w{display:block}
	.cd-claim h2 em,
	.cd-claim h2 .cd-mark{display:table;margin-inline:auto}
	.cd-marquee{margin-top:32px}

	.cd-btns .cd-btn{flex:0 1 auto;justify-content:center}
	.cd-btn{padding:14px 22px;font-size:14.5px}
	.cd-btn svg{width:15px;height:15px}
	.cd-btn--whatsapp svg{width:17px;height:17px}
	.cd-hero .cd-btn{padding:14px 22px}
	.cd-actionbar a{padding:12px 10px;font-size:14px}
	.cd-mobilnav__foot .cd-btn{width:100%}
	.cd-footer__btns .cd-btn{padding:14px 24px;font-size:14.5px}
}

@media (prefers-reduced-motion: reduce){
	.cd-claim .cd-mark::after{transition:none;transform:scaleX(1) rotate(-1.4deg)}
	.cd-claim.is-live .cd-mark::after{animation:none}
}


/* =========================================================
   22. Claim, Woerter steigen ein, jedes Mal neu
   ========================================================= */

.cd-claim h2.cd-lines .cd-w{overflow:hidden}
.cd-claim h2.cd-lines .cd-w > i{
	display:inline-block;
	transform:translateY(115%);
	transition:transform 1s var(--cd-ease) var(--cd-wd2, 0ms);
}
.cd-claim.is-live h2.cd-lines .cd-w > i{transform:none}

/* =========================================================
   23. Buttons mit Kurzbeschriftung auf dem Handy
   ========================================================= */

.cd-btn__kurz{display:none}

@media (max-width:767px){
	.cd-claim{padding:26px 0 46px}
	.cd-claim h2{font-size:clamp(44px,13.6vw,62px);line-height:1.1}
	.cd-marquee{margin-top:26px}

	.cd-btn__lang{display:none}
	.cd-btn__kurz{display:inline}

	.cd-btns{gap:10px;flex-wrap:nowrap}
	.cd-btns:has(.cd-btn + .cd-btn):not(.cd-footer__btns) .cd-btn{flex:1 1 0;min-width:0}
	.cd-footer__btns{flex-wrap:wrap}
	.cd-footer__btns .cd-btn{flex:0 1 auto}
	.cd-btn{padding:15px 14px;font-size:14.5px;justify-content:center;gap:.5em}
	.cd-hero .cd-btn{padding:15px 14px}
	.cd-hero__inner{padding:0 0 36px}
}

@media (prefers-reduced-motion: reduce){
	.cd-claim h2.cd-lines .cd-w > i{transform:none;transition:none}
}


/* =========================================================
   24. Claim, Groesse gegen das Kit durchsetzen
   ========================================================= */
.cd-claim .cd-wrap--narrow{width:min(1280px, calc(100% - 56px))}
.cd-claim h2{font-size:clamp(40px,5.6vw,76px) !important;line-height:1.08 !important;letter-spacing:-1.6px !important}
@media (max-width:767px){
	.cd-claim h2{font-size:46px !important;line-height:1.14 !important;letter-spacing:-.8px !important}
}


/* =========================================================
   25. Hero, Textblock auf dem Handy hoeher setzen
   ========================================================= */
@media (max-width:767px){
	.cd-hero__inner{padding:0 0 36px}
	.cd-hero{min-height:calc(100svh - 62px)}
}

@media (max-width:767px){
	#gt_float_wrapper{bottom:22px !important}
	body.cd-bar-on #gt_float_wrapper{bottom:96px !important}
}


/* =========================================================
   26. Burger, Kreuz zuverlaessig
   Der Knopf hat nur zwei Striche, nth-child(2) und (3) haben
   daher nur einen davon erwischt.
   ========================================================= */
.cd-burger i:first-of-type{top:18px}
.cd-burger i:last-of-type{top:25px}
.cd-burger[aria-expanded="true"] i:first-of-type{transform:translateY(3.5px) rotate(45deg)}
.cd-burger[aria-expanded="true"] i:last-of-type{transform:translateY(-3.5px) rotate(-45deg)}
.cd-burger i{transition:transform .42s var(--cd-ease), background-color .3s ease}


/* =========================================================
   27. Sprachknopf haelt sich vom Hero fern
   ========================================================= */
@media (max-width:767px){
	#gt_float_wrapper{opacity:0;pointer-events:none;transition:opacity .35s ease, bottom .35s var(--cd-ease)}
	body.cd-scrolled #gt_float_wrapper{opacity:1;pointer-events:auto}
	.cd-mobilnav{padding-top:128px}
}


/* =========================================================
   28. Unterseiten, Seitenkopf und Kontaktliste
   ========================================================= */

.cd-kopf{padding:136px 0 88px}
.cd-kopf h1{
	font-size:clamp(38px,4.6vw,68px) !important;
	line-height:1.06 !important;letter-spacing:-1.8px !important;
	margin:0;
}

.cd-kontaktliste{display:flex;flex-direction:column;margin-top:32px;border-top:1px solid var(--e-global-color-dbe937e)}
.cd-kontaktliste > *{
	display:flex;gap:18px;align-items:flex-start;
	padding:20px 0;border-bottom:1px solid var(--e-global-color-dbe937e);
	text-decoration:none !important;
}
.cd-kontaktliste svg{
	width:22px;height:22px;flex:none;margin-top:3px;
	color:var(--e-global-color-accent);
	fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;
}
.cd-kontaktliste svg.cd-voll{fill:currentColor;stroke:none}
.cd-kl-label{
	display:block;font-family:Inter,system-ui,sans-serif;font-size:12px;
	letter-spacing:.16em;text-transform:uppercase;color:var(--e-global-color-secondary);
	margin-bottom:6px;
}
.cd-kl-wert{
	display:block;font-family:Inter,system-ui,sans-serif;font-size:18px;line-height:1.45;
	color:var(--e-global-color-primary) !important;font-weight:600;
}
.cd-kl-zusatz{
	display:block;font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;
	color:var(--e-global-color-secondary);margin-top:4px;font-weight:400;
}
a.cd-kl-zeile:hover .cd-kl-wert{color:var(--e-global-color-accent) !important}

.cd-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--e-global-color-dbe937e);border:1px solid var(--e-global-color-dbe937e);margin-top:56px}
.cd-mini > div{background:#fff;padding:34px 30px 38px}
.cd-mini .cd-num{font-family:Inter,sans-serif;font-size:12px;letter-spacing:.14em;color:#B3ADA4;display:block;margin-bottom:16px}
.cd-mini h3{font-family:Inter,system-ui,sans-serif;font-weight:700;font-size:19px;line-height:1.3;letter-spacing:-.2px;color:var(--e-global-color-primary);margin:0 0 10px}
.cd-mini p{font-size:15px;line-height:1.55;color:var(--e-global-color-secondary);margin:0}

@media (max-width:1024px){
	.cd-mini{grid-template-columns:1fr}
}
@media (max-width:767px){
	.cd-kopf{padding:76px 0 56px}
	.cd-kl-wert{font-size:17px}
	.cd-kontaktliste{margin-top:26px}
	.cd-kontaktliste > *{padding:17px 0}
	.cd-mini{margin-top:40px}
	.cd-mini > div{padding:28px 24px 32px}
}


/* =========================================================
   29. Hero-Feinschliff auf dem Handy
   ========================================================= */
@media (max-width:767px){
	.cd-hero .cd-eyebrow{font-size:10px !important;letter-spacing:.1em !important;margin-bottom:14px !important}
	.cd-hero .cd-eyebrow::before{display:none}
	.cd-hero h1{line-height:1.14 !important;margin:0 0 20px !important}
	.cd-hero__sub{margin:0 0 26px}
}
@media (max-width:359px){
	.cd-hero .cd-eyebrow{font-size:9px !important;letter-spacing:.08em !important}
}


/* =========================================================
   30. Herobild muss die volle Hoehe fuellen
   Elementor setzt img{height:auto} mit gleicher Gewichtung
   und laedt spaeter, deshalb hier mit Vorrang.
   ========================================================= */
.cd-hero__media img{height:100% !important;width:100% !important;max-width:none !important;object-fit:cover}


/* =========================================================
   31. Leistungen, aufklappbare Boxen
   ========================================================= */

.cd-akk-liste{margin-top:60px;border-top:1px solid var(--e-global-color-dbe937e)}
.cd-akk{border-bottom:1px solid var(--e-global-color-dbe937e);scroll-margin-top:112px}
.cd-akk__zeile{margin:0 !important;padding:0 !important;font-size:inherit !important;font-weight:inherit !important;letter-spacing:0 !important;line-height:inherit !important}

.cd-akk__kopf{
	width:100%;display:grid;grid-template-columns:44px 1fr auto;gap:26px;align-items:center;
	background:transparent !important;border:0 !important;box-shadow:none !important;
	padding:32px 0 !important;text-align:left;cursor:pointer;
	font-family:Inter,system-ui,sans-serif !important;border-radius:0 !important;
	transition:opacity .3s ease;
}
.cd-akk__kopf:hover{opacity:.86;transform:none !important}
.cd-akk__kopf:focus-visible{outline:2px solid var(--e-global-color-accent);outline-offset:6px}

.cd-akk__ico{width:42px;height:42px;color:var(--e-global-color-accent);transition:transform .5s var(--cd-ease)}
.cd-akk__ico path,.cd-akk__ico rect,.cd-akk__ico circle{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cd-akk.is-offen .cd-akk__ico{transform:translateY(-3px)}

.cd-akk__h{
	display:block;font-family:Inter,system-ui,sans-serif;font-weight:700;
	font-size:23px;line-height:1.25;letter-spacing:-.3px;
	color:var(--e-global-color-primary);margin:0 0 7px;
}
.cd-akk__kurz{
	display:block;font-family:Inter,system-ui,sans-serif;font-size:16px;line-height:1.5;
	color:var(--e-global-color-secondary);max-width:62ch;
}
.cd-akk__cta{display:inline-flex;align-items:center;gap:14px;white-space:nowrap}
.cd-akk__ctatext{
	font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:600;letter-spacing:.02em;
	color:var(--e-global-color-accent);
}
.cd-akk__plus{
	position:relative;width:40px;height:40px;flex:none;border-radius:50%;
	border:1px solid var(--e-global-color-dbe937e);background:#fff;
	display:grid;place-items:center;
	transition:background-color .35s var(--cd-ease), border-color .35s var(--cd-ease);
}
.cd-akk__kopf:hover .cd-akk__plus{border-color:var(--e-global-color-accent)}
.cd-akk.is-offen .cd-akk__plus{background:var(--e-global-color-accent);border-color:var(--e-global-color-accent)}
.cd-akk__plus i{position:absolute;background:var(--e-global-color-accent);border-radius:1px;transition:transform .4s var(--cd-ease), background-color .35s var(--cd-ease)}
.cd-akk__plus i:first-of-type{width:15px;height:1.8px}
.cd-akk__plus i:last-of-type{width:1.8px;height:15px}
.cd-akk.is-offen .cd-akk__plus i{background:#fff}
.cd-akk.is-offen .cd-akk__plus i:last-of-type{transform:scaleY(0)}

.cd-akk__body{height:0;overflow:hidden;transition:height .5s var(--cd-ease)}
.cd-akk__inner{
	padding:2px 0 40px 70px;
	opacity:0;transform:translateY(10px);
	transition:opacity .45s var(--cd-ease) .1s, transform .45s var(--cd-ease) .1s;
}
.cd-akk.is-offen .cd-akk__inner{opacity:1;transform:none}
.cd-akk__inner p{font-family:Inter,system-ui,sans-serif;font-size:17px;line-height:1.7;color:var(--e-global-color-secondary);margin:0;max-width:72ch}
.cd-akk__liste{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;max-width:72ch}
.cd-akk__liste li{
	position:relative;padding-left:24px;
	font-family:Inter,system-ui,sans-serif;font-size:15px;line-height:1.5;color:var(--e-global-color-primary);
}
.cd-akk__liste li::before{
	content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;
	background:var(--e-global-color-accent);transform:rotate(45deg);border-radius:1px;
}
.cd-akk__inner .cd-btns{margin-top:30px}

@media (max-width:767px){
	.cd-akk-liste{margin-top:40px}
	.cd-akk__kopf{grid-template-columns:34px 1fr;gap:16px;padding:24px 0 !important;align-items:start}
	.cd-akk__ico{width:32px;height:32px;margin-top:2px}
	.cd-akk__h{font-size:19px;margin-bottom:6px}
	.cd-akk__kurz{font-size:15px}
	.cd-akk__cta{grid-column:2;margin-top:16px}
	.cd-akk__plus{width:34px;height:34px}
	.cd-akk__inner{padding:2px 0 32px 0}
	.cd-akk__inner p{font-size:16px;line-height:1.65}
	.cd-akk__liste{grid-template-columns:1fr;gap:10px;margin-top:22px}
}

@media (prefers-reduced-motion: reduce){
	.cd-akk__body,.cd-akk__inner{transition:none}
	.cd-akk__inner{opacity:1;transform:none}
}


/* =========================================================
   32. Akkordeonkopf gegen die Button-Regeln durchsetzen
   ========================================================= */
.cd-akk__kopf{
	display:grid !important;
	grid-template-columns:44px 1fr auto !important;
	text-align:left !important;
	width:100% !important;
	color:inherit !important;
	letter-spacing:0 !important;
	text-transform:none !important;
	line-height:inherit !important;
	font-size:16px !important;
	font-weight:400 !important;
}
@media (max-width:767px){
	.cd-akk__kopf{grid-template-columns:34px 1fr !important;align-items:start !important}
}

.cd-akk__kopf > span{min-width:0}
.cd-akk__h,.cd-akk__kurz{max-width:100%;overflow-wrap:break-word;white-space:normal !important}
@media (min-width:768px){.cd-akk__kurz{max-width:62ch}}


/* =========================================================
   33. Bildausschnitt im Hero auf dem Handy
   Auf breiteren Geraeten rutschten die Deckenleuchten in den
   Textbereich. Der Ausschnitt wandert deshalb nach unten.
   ========================================================= */
@media (max-width:767px){
	.cd-hero__media img{object-position:50% 66% !important}
}


/* =========================================================
   34. Hero-Text auf dem Handy bekommt eigenen Schatten
   Damit der Verlauf hell bleiben kann und das Foto sichtbar
   ist, schuetzt ein weicher Schatten die Lesbarkeit.
   ========================================================= */
@media (max-width:767px){
	.cd-hero .cd-eyebrow,
	.cd-hero h1,
	.cd-hero__sub{text-shadow:0 2px 20px rgba(6,22,40,.72), 0 1px 3px rgba(6,22,40,.5)}
}


/* =========================================================
   35. Farbakzente aus der Bildmarke
   Die fuenf Toene stammen aus dem Farbverlauf der Raute:
   Blau, Tuerkis, Violett, Magenta, Gold. Alle auf Weiss
   und auf dem warmen Grau ausreichend kontrastreich.
   ========================================================= */

:root{
	--cd-a1:#1668E3;
	--cd-a2:#0E8AA8;
	--cd-a3:#5B2BD6;
	--cd-a4:#C22C86;
	--cd-a5:#9A6C1E;
}

/* Leistungskacheln auf der Startseite */
.cd-grid > a:nth-child(5n+1){--cd-ak:var(--cd-a1)}
.cd-grid > a:nth-child(5n+2){--cd-ak:var(--cd-a2)}
.cd-grid > a:nth-child(5n+3){--cd-ak:var(--cd-a3)}
.cd-grid > a:nth-child(5n+4){--cd-ak:var(--cd-a4)}
.cd-grid > a:nth-child(5n+5){--cd-ak:var(--cd-a5)}
.cd-grid .cd-ico{color:var(--cd-ak, var(--e-global-color-accent))}
.cd-grid > a::after{color:var(--cd-ak, var(--e-global-color-accent))}

/* Aufklappbare Boxen auf der Leistungsseite */
.cd-akk:nth-of-type(5n+1){--cd-ak:var(--cd-a1)}
.cd-akk:nth-of-type(5n+2){--cd-ak:var(--cd-a2)}
.cd-akk:nth-of-type(5n+3){--cd-ak:var(--cd-a3)}
.cd-akk:nth-of-type(5n+4){--cd-ak:var(--cd-a4)}
.cd-akk:nth-of-type(5n+5){--cd-ak:var(--cd-a5)}
.cd-akk .cd-akk__ico{color:var(--cd-ak, var(--e-global-color-accent))}
.cd-akk .cd-akk__ctatext{color:var(--cd-ak, var(--e-global-color-accent))}
.cd-akk .cd-akk__plus i{background:var(--cd-ak, var(--e-global-color-accent))}
.cd-akk__kopf:hover .cd-akk__plus{border-color:var(--cd-ak, var(--e-global-color-accent))}
.cd-akk.is-offen .cd-akk__plus{background:var(--cd-ak, var(--e-global-color-accent));border-color:var(--cd-ak, var(--e-global-color-accent))}
.cd-akk .cd-akk__liste li::before{background:var(--cd-ak, var(--e-global-color-accent))}

/* Rauten im Laufband wechseln durch die Palette */
.cd-marquee__track > i:nth-of-type(5n+1){background:var(--cd-a1)}
.cd-marquee__track > i:nth-of-type(5n+2){background:#3BC3E0}
.cd-marquee__track > i:nth-of-type(5n+3){background:#8158F0}
.cd-marquee__track > i:nth-of-type(5n+4){background:#E255A6}
.cd-marquee__track > i:nth-of-type(5n+5){background:#D6A44B}

/* Pinselstrich als Farbverlauf durch die ganze Palette */
.cd-claim .cd-mark::after{
	background:linear-gradient(90deg, var(--cd-a1) 0%, #3BC3E0 26%, #8158F0 52%, #E255A6 76%, #D6A44B 100%);
}


/* =========================================================
   36. Oberflaechenband und Bildstreifen
   ========================================================= */

.cd-band{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--e-global-color-dbe937e);margin-top:56px;border:1px solid var(--e-global-color-dbe937e)}
.cd-band figure{margin:0;background:#fff;position:relative;overflow:hidden}
.cd-band img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3}
.cd-band figcaption{
	position:absolute;left:0;right:0;bottom:0;
	padding:56px 22px 20px;
	background:linear-gradient(180deg, rgba(10,37,64,0) 0%, rgba(10,37,64,.82) 72%, rgba(10,37,64,.92) 100%);
	font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;color:#C3CEDC;
}
.cd-band figcaption strong{display:block;font-size:17px;font-weight:700;color:#fff;margin-bottom:4px;letter-spacing:-.2px}

.cd-streifen{position:relative;overflow:hidden;height:clamp(220px,26vw,360px)}
.cd-streifen img{width:100%;height:100%;object-fit:cover;display:block}
.cd-streifen::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,37,64,.14) 0%, rgba(10,37,64,.32) 100%)}

@media (max-width:767px){
	.cd-band{grid-template-columns:1fr;margin-top:36px}
	.cd-band img{aspect-ratio:16/10}
	.cd-band figcaption{padding:44px 18px 16px}
	.cd-streifen{height:200px}
}

@media (max-width:359px){
	.cd-claim h2{font-size:40px !important}
}


/* ---------------------------------------------------------
   37 Rechtstexte, Impressum und Datenschutzerklaerung
   --------------------------------------------------------- */
.cd-recht{max-width:80ch}
.cd-recht h2{font-size:clamp(23px,2.4vw,30px) !important;line-height:1.24 !important;margin:52px 0 14px !important;color:#0A2540 !important;letter-spacing:-.01em}
.cd-recht h2:first-child{margin-top:0 !important}
.cd-recht h3{font-size:clamp(17px,1.7vw,20px) !important;line-height:1.32 !important;margin:30px 0 8px !important;color:#0A2540 !important}
.cd-recht p,.cd-recht li{font-size:16px;line-height:1.76;color:#56616F}
.cd-recht p{margin:0 0 16px}
.cd-recht ul{margin:0 0 18px;padding-left:20px;list-style:disc}
.cd-recht li{margin:0 0 8px}
.cd-recht strong{color:#10161F;font-weight:600}
.cd-recht a{color:#1668E3;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.cd-recht a:hover{color:#0A2540}
.cd-recht code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;background:#F3F1EE;border:1px solid #E0DCD6;border-radius:6px;padding:1px 6px;color:#10161F}
.cd-recht__box{background:#F3F1EE;border:1px solid #E0DCD6;border-radius:20px;padding:24px 26px;margin:0 0 24px}
.cd-recht__box p:last-child{margin-bottom:0}
.cd-platzhalter{display:inline-block;background:#FFF4D6;border:1px dashed #C9A227;border-radius:8px;padding:1px 9px;color:#7A5E00;font-weight:600;font-size:14px}
.cd-recht__stand{margin-top:52px;padding-top:20px;border-top:1px solid #E0DCD6;font-size:14px;color:#8A929C}

@media (max-width:767px){
	.cd-recht h2{margin:40px 0 12px}
	.cd-recht p,.cd-recht li{font-size:15.5px}
	.cd-recht__box{padding:20px 20px;border-radius:16px}
}


/* ---------------------------------------------------------
   38 Wege zur Leistungsseite
   --------------------------------------------------------- */
.cd-mitte{justify-content:center}
.cd-claim__cta{display:flex;justify-content:center;margin:44px 0 0;position:relative;z-index:2}

@media (max-width:767px){
	.cd-claim__cta{margin-top:30px}
	.cd-claim__cta .cd-btn{width:100%;max-width:340px;justify-content:center}
	.cd-mitte .cd-btn{width:100%;max-width:340px;justify-content:center}
}


/* ---------------------------------------------------------
   39 Hinweisbox, zum Beispiel gesunde Raumluft
   --------------------------------------------------------- */
.cd-hinweis{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:start;margin-top:56px;padding:26px 30px;background:var(--e-global-color-3cdf12b);border:1px solid var(--e-global-color-dbe937e);border-radius:20px}
.cd-hinweis__icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(160deg,#1668E3 0%,#0E8AA8 100%);color:#fff;box-shadow:0 8px 18px -10px rgba(22,104,227,.8)}
.cd-hinweis__icon svg{width:21px;height:21px;display:block}
.cd-hinweis p{margin:0;font-size:15.5px;line-height:1.68;color:var(--e-global-color-secondary)}
.cd-hinweis strong{color:var(--e-global-color-text);font-weight:600}
.cd-hinweis--weiss{background:#FFFFFF}

@media (max-width:767px){
	.cd-hinweis{margin-top:38px;padding:22px 20px;gap:16px;grid-template-columns:1fr}
	.cd-hinweis p{font-size:15px}
}


/* ---------------------------------------------------------
   40 Farbvariablen als Rueckfallebene
   Auf Seiten ohne Elementor-Inhalt, zum Beispiel Impressum
   und Datenschutzerklaerung, laedt Elementor sein globales
   Stylesheet nicht. Dann fehlen die Farbvariablen und der
   Fussbereich wird weiss auf weiss. Diese Werte greifen nur
   dort, wo Elementor nichts setzt.
   --------------------------------------------------------- */
:root{
	--e-global-color-primary:#0A2540;
	--e-global-color-secondary:#56616F;
	--e-global-color-text:#10161F;
	--e-global-color-accent:#1668E3;
	--e-global-color-9c413a1:#1355BE;
	--e-global-color-3cdf12b:#F3F1EE;
	--e-global-color-dbe937e:#E0DCD6;
}


/* ---------------------------------------------------------
   41 Fehlerseite 404
   --------------------------------------------------------- */
.cd-404{min-height:calc(100vh - 300px);display:flex;align-items:center}
.cd-404 .cd-wrap{width:min(1280px, calc(100% - 56px))}
.cd-404__hilfe{margin-top:56px;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}
.cd-404__hilfe > p{margin:0 0 14px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.cd-404__hilfe ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 12px}
.cd-404__hilfe li{margin:0}
.cd-404__hilfe a{display:inline-block;padding:9px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);color:#fff;text-decoration:none;font-size:14.5px;transition:background .25s ease, border-color .25s ease, transform .2s ease}
.cd-404__hilfe a:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.42);transform:translateY(-1px)}

@media (max-width:767px){
	.cd-404{min-height:0;padding-top:64px;padding-bottom:64px}
	.cd-404__hilfe{margin-top:40px}
	.cd-404__hilfe a{font-size:14px;padding:8px 14px}
}


/* ---------------------------------------------------------
   42 Lesbarkeit, Kontraste nach WCAG AA
   --------------------------------------------------------- */
.cd-marquee span{color:rgba(255,255,255,.62) !important}
.cd-step__num{color:rgba(255,255,255,.42) !important}
.cd-f-note,
.cd-form .cd-f-note,
.cd-formcard .cd-f-note,
.cd-bg-tief .cd-formcard .cd-f-note{color:#6A665E !important}
.cd-recht__stand{color:#6B7380 !important}
.cd-404__hilfe a{color:#fff !important;text-decoration:none !important}
.cd-404__hilfe a:hover{color:#fff !important}

/* ---------------------------------------------------------
   43 Tastaturbedienung und Antippflaechen
   --------------------------------------------------------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible{outline:3px solid #1668E3 !important;outline-offset:3px;border-radius:4px}
.cd-bg-tief a:focus-visible,
.cd-bg-tief button:focus-visible,
.cd-footer a:focus-visible,
.cd-footer button:focus-visible,
.cd-hero a:focus-visible,
.cd-hero button:focus-visible,
.cd-404 a:focus-visible,
.cd-404 button:focus-visible{outline-color:#8FBEFF !important}
.cd-compare__handle:focus-visible{outline:none !important}
.cd-footer ul{gap:6px}
.cd-footer ul a{display:inline-flex;align-items:center;min-height:24px}
.cd-footer__bottom nav{gap:24px}
.cd-footer__bottom nav a,
.cd-cookie-settings{display:inline-flex;align-items:center;min-height:24px}

/* ---------------------------------------------------------
   44 Firmenfahrzeug
   --------------------------------------------------------- */
.cd-fahrzeug{margin:88px auto 0 !important;max-width:820px}
.cd-fahrzeug img{width:100%;height:auto;display:block;border-radius:4px}
.cd-fahrzeug figcaption{font-family:Inter,sans-serif;font-size:14px;line-height:1.6;color:var(--e-global-color-secondary);margin-top:14px}
@media(max-width:900px){
	.cd-fahrzeug{margin-top:56px !important}
}


/* ---------------------------------------------------------
   45 Google-Bewertungen
   --------------------------------------------------------- */
.cd-bew{margin-top:56px}
.cd-bew__kopf{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}
.cd-bew__kopf p{margin:0;font-family:Inter,sans-serif;font-size:16px;color:var(--e-global-color-secondary)}
.cd-bew__kopf strong{color:var(--e-global-color-primary)}
.cd-sterne{display:inline-flex;gap:3px;line-height:0}
.cd-sterne svg{width:19px;height:19px}
.cd-sterne svg.voll{fill:#F0A73C}
.cd-sterne svg.leer{fill:#DAD6D0}
.cd-bew__band{margin-top:40px;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.cd-bew__spur{display:flex;align-items:stretch;gap:20px;width:max-content;animation:cd-bewlauf 80s linear infinite}
.cd-bew__band:hover .cd-bew__spur,.cd-bew__band:focus-within .cd-bew__spur{animation-play-state:paused}
@keyframes cd-bewlauf{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - 10px),0,0)}}
.cd-bew__karte{margin:0;flex:0 0 340px;width:340px;background:#fff;border:1px solid var(--e-global-color-dbe937e);border-radius:4px;padding:26px 24px;display:flex;flex-direction:column;gap:14px;box-shadow:0 2px 4px rgba(10,37,64,.04),0 12px 28px rgba(10,37,64,.06)}
.cd-bew__stern{line-height:0}
.cd-bew__karte blockquote{margin:0;font-family:Inter,sans-serif;font-size:15px;line-height:1.65;color:var(--e-global-color-text);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:9;line-clamp:9;overflow:hidden}
@media (max-width:767px){.cd-bew__karte blockquote{-webkit-line-clamp:11;line-clamp:11}}
.cd-bew__karte figcaption{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:8px}
.cd-bew__initial{width:40px;height:40px;flex:0 0 40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--e-global-color-accent),var(--e-global-color-primary));color:#fff;font-family:Inter,sans-serif;font-weight:600;font-size:16px;line-height:1}
.cd-bew__karte figcaption img{width:40px;height:40px;flex:0 0 40px;border-radius:50%;object-fit:cover}
.cd-bew__wer{display:flex;flex-direction:column;line-height:1.35}
.cd-bew__wer strong{font-family:Inter,sans-serif;font-size:15px;font-weight:600;color:var(--e-global-color-primary)}
.cd-bew__wer em{font-style:normal;font-family:Inter,sans-serif;font-size:13px;color:var(--e-global-color-secondary)}
.cd-bew__fuss{margin-top:36px;text-align:center}
.cd-bew__kopf,.cd-bew__fuss{width:min(1200px, calc(100% - 48px));margin-inline:auto}

@media (prefers-reduced-motion: reduce){
	.cd-bew__spur{animation:none;flex-wrap:wrap;justify-content:center;width:auto}
	.cd-bew__band{-webkit-mask-image:none;mask-image:none}
}
@media (max-width:700px){
	.cd-bew__karte{flex-basis:280px;width:280px;padding:22px 20px}
	.cd-bew__spur{gap:16px}
}

/* =========================================================
   46. Feinschliff fuer breite und flache Bildschirme
   ========================================================= */

/* Bildstreifen auf der Kontaktseite:
   Das Bild behielt sein eigenes Seitenverhaeltnis und wurde vom
   Streifen oben abgeschnitten, sichtbar war nur der obere Rand.
   Jetzt fuellt es den Streifen und wird mittig beschnitten. */
.cd-streifen img{
	width:100% !important;
	height:100% !important;
	object-fit:cover !important;
	object-position:50% 50%;
	display:block;
}
@media (min-width:768px){
	.cd-streifen{height:clamp(260px,28vw,420px)}
}

/* Titelbereich der Startseite:
   Ueberschrift und Fliesstext etwas kleiner. */
@media (min-width:992px){
	.cd-hero h1{
		font-size:clamp(40px, 4.3vw, 78px) !important;
		letter-spacing:-1.8px !important;
		margin:0 0 24px;
	}
	.cd-hero__sub{
		font-size:clamp(16px, 1.2vw, 19px);
		line-height:1.6;
		margin:0 0 34px;
	}
}

/* Flache Fenster, etwa ein Breitbildschirm mit vielen Leisten:
   Inhalt tiefer setzen, damit die Zeile ueber der Ueberschrift
   nicht am Menue klebt. */
@media (min-width:992px) and (max-height:900px){
	.cd-hero__inner{padding-bottom:56px}
	.cd-hero h1{
		font-size:clamp(38px, 3.9vw, 66px) !important;
		letter-spacing:-1.4px !important;
		margin:0 0 18px;
	}
	.cd-hero__sub{
		font-size:17px;
		line-height:1.55;
		margin:0 0 24px;
	}
	.cd-hero__scroll{bottom:56px}
	.cd-hero .cd-eyebrow{margin-bottom:14px}
}

/* =========================================================
   47. Zwei Bilder nebeneinander, Kontaktseite
   ========================================================= */

.cd-sec--bilder{padding:96px 0}

.cd-duo{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:24px;
}
.cd-duo__bild{
	margin:0;
	border-radius:4px;
	overflow:hidden;
	background:#E4E6E9;
}
.cd-duo__bild img{
	width:100% !important;
	height:auto !important;
	aspect-ratio:16 / 10;
	object-fit:cover;
	display:block;
}

@media (max-width:900px){
	.cd-duo{gap:18px}
}
@media (max-width:767px){
	.cd-sec--bilder{padding:56px 0}
	.cd-duo{grid-template-columns:1fr;gap:16px}
	.cd-duo__bild img{aspect-ratio:16 / 11}
}

/* =========================================================
   48. Startseite Hero, nur Mobil
   Kein Zoom mehr auf dem Hintergrundbild, Inhalt etwas hoeher.
   ========================================================= */
@media (max-width:767px){
	.cd-hero-media img,
	.cd-hero-media.cd-in img,
	.cd-hero__media img{
		transform:none !important;
		transition:none !important;
		will-change:auto;
	}
	/* Inhalt oben verankern statt unten, damit er auf jedem
	   Handy auf gleicher Hoehe im Bild sitzt. */
	.cd-hero{align-items:flex-start !important}
	.cd-hero__inner{padding:180px 0 48px !important}
}


/* =========================================================
   49. Schriften lokal und schlank (Performance, 28.09.2026)
   Ersetzt die Google-Fonts-Dateien von Elementor. Nur Latein
   und Latin-Ext (fuer die tuerkische Fassung), variable woff2
   aus dem Ordner fonts im Child Theme. Der Anhang ?v=1 sorgt
   bei STRATO fuer ein Jahr Browser-Cache, bei neuen Dateien
   hochzaehlen und in functions.php (Vorladen) mitziehen.
   ========================================================= */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter-latin.woff2?v=1') 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:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/inter-latin-ext.woff2?v=1') 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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:italic;font-weight:100 900;font-display:swap;src:url('fonts/inter-italic-latin.woff2?v=1') 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:'Inter';font-style:italic;font-weight:100 900;font-display:swap;src:url('fonts/inter-italic-latin-ext.woff2?v=1') 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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 900;font-display:swap;src:url('fonts/playfair-latin.woff2?v=1') 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:'Playfair Display';font-style:normal;font-weight:400 900;font-display:swap;src:url('fonts/playfair-latin-ext.woff2?v=1') 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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400 900;font-display:swap;src:url('fonts/playfair-italic-latin.woff2?v=1') 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:'Playfair Display';font-style:italic;font-weight:400 900;font-display:swap;src:url('fonts/playfair-italic-latin-ext.woff2?v=1') 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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* =========================================================
   50. Hero ohne Wartezeit (Performance, 28.09.2026)
   Der Text im Hero wartet nicht mehr auf das Frontend-Skript.
   Er ist sofort da und blendet nur per CSS kurz ein.
   ========================================================= */
.cd-hero .cd-reveal,
.cd-hero .cd-stagger > *{opacity:1;transform:none;transition:none}
.cd-hero .cd-lines .cd-w > i{transform:none;transition:none}
@media (prefers-reduced-motion: no-preference){
	@keyframes cdHeroEin{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
	.cd-hero .cd-eyebrow,
	.cd-hero h1,
	.cd-hero .cd-hero__sub,
	.cd-hero .cd-btns{animation:cdHeroEin .6s cubic-bezier(.2,.7,.2,1) both}
	.cd-hero h1{animation-delay:.06s}
	.cd-hero .cd-hero__sub{animation-delay:.14s}
	.cd-hero .cd-btns{animation-delay:.22s}
}

/* =========================================================
   51. Hero und Claim auf dem Handy, sauberer Uebergang (12.10.2026)
   Der Hero haengt nicht mehr an der Bildschirmhoehe (svh). In
   In-App-Browsern aenderte sich die Hoehe beim Einklappen der
   Adressleiste, das Bild skalierte mit und wirkte wie ein Zoom.
   Jetzt bestimmt der Inhalt die Hoehe. Der Verlauf endet exakt
   im Tiefblau des Claims, die Abstaende folgen dem 8er Raster.
   ========================================================= */
@media (max-width:767px){
	.cd-hero{min-height:0 !important;height:auto !important;align-items:flex-start !important}
	.cd-hero__inner{padding:164px 0 24px !important}
	.cd-hero .cd-hero__scrim{
		background:linear-gradient(180deg,
			rgba(10,37,64,.10) 0%,
			rgba(10,37,64,.10) 22%,
			rgba(10,37,64,.62) 48%,
			rgba(10,37,64,.92) 78%,
			#0A2540 99%) !important;
	}
	.cd-hero__media img{transform:none !important;transition:none !important}
	.cd-claim{padding:16px 0 56px !important} /* optisch je ca. 50px ueber und unter dem Claim */
	.cd-claim__cta{margin-top:40px}
	.cd-marquee{margin-top:40px}
}

/* =========================================================
   52. Groessere Antippflaechen auf dem Handy (12.10.2026)
   Telefon, Mail und Fusszeilenlinks waren nur 16 bis 20px hoch.
   Unsichtbares Polster vergroessert die Flaeche auf mind. 44px,
   ohne dass sich das Layout verschiebt.
   ========================================================= */
@media (max-width:1024px){
	.cd-kontaktblock p a,
	.cd-footer__bottom nav a,
	.cd-footer__bottom p a,
	.cd-footer__brand a,
	.cd-cookie-settings{display:inline-block;padding-block:12px !important;margin-block:-12px !important;position:relative}
	.cd-footer ul a{min-height:44px !important}
	.cd-footer ul{gap:0 !important}
}
