/*
 * main.css – Globale Child-Theme Styles
 *
 * Farben und Typografie entsprechen dem pundZ-CI.
 * $primary #e5000f | $secondary #bebd06 | Font: Ageo (lokal)
 */

/* ── Ageo (lokal) ───────────────────────────────────────────────────────── */
@font-face {
	font-family: "Ageo";
	src: url("../fonts/ageo/ageo-regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Ageo";
	src: url("../fonts/ageo/ageo-medium.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Ageo";
	src: url("../fonts/ageo/ageo-semibold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Ageo";
	src: url("../fonts/ageo/ageo-bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ── Custom Properties (pundZ CI) ───────────────────────────────────────── */
:root {
	--color-primary: #e5000f;
	--color-secondary: #bebd06;
	--color-white: #ffffff;
	--color-black: #141414;
	--color-gray: #b2b2b2;
	--color-graylight: #ededed;
	--color-text: #141414;

	--font-base: "Ageo", Arial, sans-serif;
	--font-weight-text: 400;
	--font-weight-label: 500;
	--font-weight-button: 600;
	--font-weight-heading: 700;

	--spacing-xs: 0.25rem;
	--spacing-sm: 0.5rem;
	--spacing-md: 1rem;
	--spacing-lg: 2rem;
	--spacing-xl: 4rem;

	--radius: 14px;
	--transition: 0.3s ease;

	--box-shadow: 0 7px 24px 0 rgba(20, 20, 20, 0.07);
}

/* ── Body / Global ───────────────────────────────────────────────────────── */
html,
body,
button,
input,
textarea,
select {
	font-family: var(--font-base);
	font-weight: var(--font-weight-text);
}

body {
	color: var(--color-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-base);
	font-weight: var(--font-weight-heading);
}

label {
	font-family: var(--font-base);
	font-weight: var(--font-weight-label);
}

button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.elementor-button {
	font-family: var(--font-base);
	font-weight: var(--font-weight-button);
}

/* Elementor Kit + Widget-Fonts (Open Sans / Arimo) auf Ageo umbiegen */
body[class*="elementor-kit-"],
.elementor {
	--e-global-typography-primary-font-family: "Ageo";
	--e-global-typography-secondary-font-family: "Ageo";
	--e-global-typography-text-font-family: "Ageo";
	--e-global-typography-accent-font-family: "Ageo";
}

body[class*="elementor-kit-"] h1,
body[class*="elementor-kit-"] h2,
body[class*="elementor-kit-"] h3,
body[class*="elementor-kit-"] h4,
body[class*="elementor-kit-"] h5,
body[class*="elementor-kit-"] h6,
.elementor-heading-title,
.elementor-icon-box-title,
.elementor-icon-box-description,
.elementor-button,
.elementor-button-text,
.elementor-widget-text-editor,
.elementor-widget-text-editor p {
	font-family: var(--font-base) !important;
}

.competence_slider .competence_slider_wrap {
	height: 100%;
}
.h-100 {
	height: 100% !important;
}

/* ── Gravity Forms ───────────────────────────────────────────────────────── */
.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button,
.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].gform_button,
.gform_wrapper input[type="submit"].gform_button.button {
	background-color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	color: var(--color-white) !important;
	font-family: var(--font-base) !important;
	font-weight: var(--font-weight-button) !important;
}

.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:hover,
.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:focus,
.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].gform_button:hover,
.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].gform_button:focus,
.gform_wrapper input[type="submit"].gform_button.button:hover,
.gform_wrapper input[type="submit"].gform_button.button:focus {
	background-color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	color: var(--color-white) !important;
	opacity: 0.9;
}

/* ── Footer ─────────────────────────────────────────────────────────────── */
.elementor-location-footer,
.elementor-location-footer .elementor-heading-title,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p,
.elementor-location-footer .elementor-icon-list-text,
.elementor-location-footer a {
	font-family: var(--font-base) !important;
}

.elementor-location-footer .e-flex:has(.elementor-widget-icon-list):has(.elementor-widget-shortcode) {
	align-items: center;
}

.elementor-location-footer .elementor-widget-shortcode,
.elementor-location-footer .elementor-widget-shortcode .elementor-shortcode,
.elementor-location-footer .borlabs-cookie-open-dialog-preferences {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0;
	line-height: 1.2em;
}

.borlabs-cookie-open-dialog-preferences a {
	display: inline-flex;
	align-items: center;
	color: #e6e6e6;
	transition: color 0.3s;
	font-family: var(--font-base);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2em;
}

/* ── Bildunterschriften ─────────────────────────────────────────────────── */
figcaption.widget-image-caption,
figcaption.wp-caption-text,
.widget-image-caption.wp-caption-text {
	text-align: left;
	font-size: 12px;
	font-style: normal;
	margin-top: 5px;
}

/* ── Hero: Hinweis KI-generiertes Bild (Elementor Text-Widget) ──────────── */
.elementor-widget.hero-ai-label {
	position: absolute;
	right: 24px;
	bottom: 20px;
	width: auto !important;
	max-width: max-content;
	margin: 0;
	padding: 6px 10px;
	background: rgba(0, 0, 0, 0.28);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	color: rgba(255, 255, 255, 0.8);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.03em;
	line-height: 1.3;
	z-index: 2;
}

.elementor-widget.hero-ai-label .elementor-widget-container,
.elementor-widget.hero-ai-label .elementor-text-editor,
.elementor-widget.hero-ai-label p {
	margin: 0;
	padding: 0;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	line-height: inherit;
}
