/* impressum – elementspezifische Styles (aus Elementor 14). */

/* desktop */
.hero-h1{& em { color: var(--ga_eis); }
}
.hero-text{width:52%;flex-direction:column;align-items:flex-start;}
.hc-contact{& a { color: var(--ga_eis); text-decoration: underline; }
}
.hero-card{width:38%;border-radius:var(--gs_radius);border-width:1px;border-color:rgba(255, 255, 255, 0.25);border-style:solid;background-color:rgba(255, 255, 255, 0.08);flex-direction:column;align-items:flex-start;}
.hero-wrap{flex-direction:row;justify-content:space-between;align-items:center;}
.hero{background-color:var(--ga_petrol_dunkel);display:flex;flex-direction:column;justify-content:center;align-items:center;}
.k1{border-radius:var(--gs_radius);border-width:1px;border-color:var(--ga_eis_rand);border-style:solid;background-color:var(--ga_weiss);flex-direction:column;align-items:flex-start;}
.k2{border-radius:var(--gs_radius);border-width:1px;border-color:var(--ga_eis_rand);border-style:solid;background-color:var(--ga_weiss);flex-direction:column;align-items:flex-start;}
.k3{border-radius:var(--gs_radius);border-width:1px;border-color:var(--ga_eis_rand);border-style:solid;background-color:var(--ga_weiss);flex-direction:column;align-items:flex-start;}
.ang-grid{margin-block-end:28px;grid-template-columns:repeat(3, 1fr);grid-template-rows:auto;}
.angaben-wrap{flex-direction:column;align-items:stretch;}
.angaben{background-color:var(--ga_creme);display:flex;flex-direction:column;align-items:center;}
.r1-l{width:32%;flex-direction:column;align-items:flex-start;}
.r1-r{flex-direction:column;flex:1 1 0px;}
.r1{border-block-start-width:1px;flex-direction:row;align-items:flex-start;padding-block: 32px; border-top-style: solid; border-top-color: var(--ga_eis_rand); padding-inline: 0px;
}
.r2-l{width:32%;flex-direction:column;align-items:flex-start;}
.r2-r{flex-direction:column;flex:1 1 0px;}
.r2{border-block-start-width:1px;flex-direction:row;align-items:flex-start;padding-block: 32px; border-top-style: solid; border-top-color: var(--ga_eis_rand); padding-inline: 0px;
}
.r3-l{width:32%;flex-direction:column;align-items:flex-start;}
.r3-r{flex-direction:column;flex:1 1 0px;}
.r3{border-block-start-width:1px;flex-direction:row;align-items:flex-start;padding-block: 32px; border-top-style: solid; border-top-color: var(--ga_eis_rand); padding-inline: 0px;
}
.r4-l{width:32%;flex-direction:column;align-items:flex-start;}
.r4-r{flex-direction:column;flex:1 1 0px;}
.r4{border-block-start-width:1px;border-block-end-width:1px;flex-direction:row;align-items:flex-start;padding-block: 32px; border-top-style: solid; border-top-color: var(--ga_eis_rand); border-bottom-style: solid; border-bottom-color: var(--ga_eis_rand); padding-inline: 0px; padding-inline: 0px;
}
.haft-wrap{flex-direction:column;align-items:stretch;}
.haft{background-color:var(--ga_weiss);display:flex;flex-direction:column;align-items:center;}

/* global laptop (Reihenfolge wie Elementor) */
@media (max-width: 1366px) {
	.s-gap-xl {
		gap:60px;
	}
	.s-gap-lg {
		gap:44px;
	}
	.s-gap-md {
		gap:28px;
	}
	.s-gap-sm {
		gap:10px;
	}
	.s-gap-xs {
		gap:5px;
	}
	.s-card {
		padding-block-start:30px;
		padding-block-end:30px;
		padding-inline-start:30px;
		padding-inline-end:30px;
	}
	.s-section {
		padding-block-start:64px;
		padding-block-end:64px;
		padding-inline-start:20px;
		padding-inline-end:20px;
	}
	.s-hero {
		padding-block-start:160px;
		padding-block-end:64px;
		padding-inline: 20px;
	
	}
	.w-gap-md {
		margin-block-end:28px;
	}
	.w-gap-lg {
		margin-block-end:44px;
	}
	.w-gap-xl {
		margin-block-end:60px;
	}
}

/* global tablet (Reihenfolge wie Elementor) */
@media (max-width: 1024px) {
	.s-gap-xl {
		gap:44px;
	}
	.s-gap-lg {
		gap:36px;
	}
	.s-gap-md {
		gap:24px;
	}
	.s-gap-sm {
		gap:10px;
	}
	.s-gap-xs {
		gap:5px;
	}
	.s-card {
		padding-block-start:24px;
		padding-block-end:24px;
		padding-inline-start:24px;
		padding-inline-end:24px;
	}
	.s-section {
		padding-block-start:52px;
		padding-block-end:52px;
		padding-inline-start:16px;
		padding-inline-end:16px;
	}
	.s-hero {
		padding-block-start:160px;
		padding-block-end:52px;
		padding-inline: 16px;
	
	}
	.b-secondary {
		padding-block-start:12px;
		padding-block-end:12px;
		padding-inline-start:26px;
		padding-inline-end:26px;
	}
	.b-primary {
		padding-block-start:12px;
		padding-block-end:12px;
		padding-inline-start:26px;
		padding-inline-end:26px;
	}
	.x-diagonal {
		background-image: linear-gradient(170deg, var(--akzent-soft, var(--ga_eis)) 0 58%, transparent 58.1%);
	
	}
	.w-gap-md {
		margin-block-end:24px;
	}
	.w-gap-lg {
		margin-block-end:36px;
	}
	.w-gap-xl {
		margin-block-end:44px;
	}
}

/* tablet */
@media(max-width:1024px){.hero-text{width:100%;}}
@media(max-width:1024px){.hero-card{width:100%;}}
@media(max-width:1024px){.hero-wrap{flex-direction:column;align-items:stretch;}}
@media(max-width:1024px){.ang-grid{grid-template-columns:1fr;}}
@media(max-width:1024px){.r1-l{width:100%;}}
@media(max-width:1024px){.r1{flex-direction:column;}}
@media(max-width:1024px){.r2-l{width:100%;}}
@media(max-width:1024px){.r2{flex-direction:column;}}
@media(max-width:1024px){.r3-l{width:100%;}}
@media(max-width:1024px){.r3{flex-direction:column;}}
@media(max-width:1024px){.r4-l{width:100%;}}
@media(max-width:1024px){.r4{flex-direction:column;}}

/* global mobile (Reihenfolge wie Elementor) */
@media (max-width: 767px) {
	.x-logo {
		&::after { width: 260px; height: 260px; right: -50px; }
	
	}
	.x-circles {
		background-image: radial-gradient(circle at 0% 8%, color-mix(in srgb, var(--akzent, var(--ga_petrol)) 10%, transparent) 0 60px, transparent 61px), radial-gradient(circle at 100% 50%, color-mix(in srgb, var(--akzent, var(--ga_petrol)) 8%, transparent) 0 44px, transparent 45px), radial-gradient(circle at 4% 96%, color-mix(in srgb, var(--akzent, var(--ga_petrol)) 10%, transparent) 0 36px, transparent 37px);
	
	}
	.s-wrap {
		max-width:100%;
	}
	.s-gap-xl {
		gap:32px;
	}
	.s-gap-lg {
		gap:28px;
	}
	.s-gap-md {
		gap:20px;
	}
	.s-gap-sm {
		gap:10px;
	}
	.s-gap-xs {
		gap:5px;
	}
	.s-card {
		padding-block-start:20px;
		padding-block-end:20px;
		padding-inline-start:20px;
		padding-inline-end:20px;
	}
	.s-section {
		padding-block-start:40px;
		padding-block-end:40px;
		padding-inline-start:16px;
		padding-inline-end:16px;
	}
	.s-hero {
		padding-block-start:160px;
		padding-block-end:40px;
		padding-inline: 16px;
	
	}
	.b-secondary {
		padding-block-start:12px;
		padding-block-end:12px;
		padding-inline-start:24px;
		padding-inline-end:24px;
	}
	.b-primary {
		padding-block-start:12px;
		padding-block-end:12px;
		padding-inline-start:24px;
		padding-inline-end:24px;
	}
	.x-frame {
		&::after { inset: 8px -8px -8px 8px; }
	
	}
	.x-label {
		&::after { display: none; }
	
	}
	.w-gap-md {
		margin-block-end:20px;
	}
	.w-gap-lg {
		margin-block-end:28px;
	}
	.w-gap-xl {
		margin-block-end:32px;
	}
}
