/* Baupoint Countdown – Styles
   Schriften (Oswald / Roboto) lädt das Theme bereits, es wird nichts nachgeladen. */

/* =============================================================================
 * Slider-Text linksbündig
 * Greift nur, solange der Countdown ausgegeben wird (Body-Klasse bpc-slider-left),
 * also standardmässig nur auf ?countdown=yes. Slider Revolution setzt
 * text-align und left inline, deshalb hier mit !important.
 * Abstand von links anpassen: --bpc-slider-text-left
 *   9%  = bündig mit dem Seiten-Container/Logo
 *  15%  = aktueller Wert
 *  20%  = die erste Zeile stösst fast an die Countdown-Box
 * (1% entspricht rund 14px bei 1440px Bildschirmbreite)
 *
 * Gilt nur, solange die Box über dem Slider liegt (ab 1400px). Darunter steht
 * die Box unter dem Slider und der Slider-Text bleibt unverändert.
 * ========================================================================== */
@media (min-width: 1400px) {

	body.bpc-slider-left sr7-module sr7-txt.sr7-layer {
		left: var(--bpc-slider-text-left, 15%) !important;
		text-align: left !important;
	}
}

.bpc-wrap,
.bpc,
.bpc * {
	box-sizing: border-box;
}

.bpc-wrap {
	position: relative;
	z-index: 20;
}

.bpc {
	background: #fff;
	box-shadow: 0 12px 34px rgba(0, 0, 0, .22);
	padding: 22px 24px;
	color: #0a172a;
	text-align: left;
}

.bpc[hidden] {
	display: none;
}

/* --- Grosse Screens: Box liegt über dem Slider ----------------------------
   Umbruchpunkt 1400px: darunter reicht der Platz neben dem Slider-Text nicht
   mehr (bei 1100px überlappt die Box den Titel um ~190px), deshalb wechselt
   die Box dort in den Fluss unterhalb des Sliders.
   Wird der Umbruchpunkt geändert, muss er auch oben beim Slider-Text
   (@media min-width: 1400px) und unten (max-width: 1399px) angepasst werden. */
@media (min-width: 1400px) {
	.bpc-wrap {
		height: 0;
		max-width: 1300px;
		margin: 0 auto;
	}

	/* bottom = Abstand vom unteren Rand des Slider-Bereichs.
	   Grösserer Wert = Box rutscht weiter nach oben. */
	.bpc {
		position: absolute;
		right: 20px;
		bottom: 450px;
		width: 390px;
	}

	/* Shortcode-Variante bleibt im Textfluss stehen */
	.bpc-wrap--inline {
		height: auto;
	}

	.bpc-wrap--inline .bpc {
		position: static;
		margin-left: auto;
	}
}

/* --- Darunter: eigenes Element unterhalb des Hero-Bereichs ---------------- */
/* =============================================================================
 * Service-Karten (3 Boxen) unter dem Slider
 * WPBakery zieht die innere Reihe mit  margin-top: -250px  über den Hero und
 * setzt das erst ab 1200px zurück (fixer WPBakery-Breakpoint, deshalb nicht im
 * Seiten-Backend änderbar). Sobald der Countdown unter dem Slider steht
 * (< 1400px), fehlt dadurch der Platz – die Karten überlappen die Box.
 * Hier wird derselbe Zustand wie ab 1200px bereits ab 1399px erzwungen,
 * aber NUR solange der Countdown ausgegeben wird (body.bpc-on).
 *
 * ACHTUNG: vc_custom_1703158236937 ist die von WPBakery generierte Klasse der
 * Karten-Reihe auf der Startseite. Wird diese Reihe im Backend neu gespeichert,
 * ändert sich der Klassenname und muss hier nachgezogen werden (aktueller Wert
 * im Seitenquelltext: margin-top: -250px).
 * ========================================================================== */
@media (max-width: 1399px) {

	body.bpc-on .vc_custom_1703158236937 {
		margin-top: 0 !important;
		padding-top: 20px !important;
	}
}

@media (max-width: 1399px) {

	/* Eigener Block im Fluss: reserviert seine Höhe, dadurch kann der
	   folgende Bereich (die drei Karten) nicht überlappen.
	   Abstände oben/unten hier justieren. */
	.bpc-wrap {
		max-width: 1300px;
		margin: 0 auto;
		padding: 32px 16px 72px;
		display: flow-root;
	}

	/* mittig, bis 700px breit; darunter füllt sie die volle Breite
	   (abzüglich 16px Seitenabstand des Wrappers).
	   Für rechtsbündig: margin: 0 0 0 auto; */
	.bpc {
		width: 100%;
		max-width: 700px;
		margin: 0 auto;
		padding: 26px 30px;
	}
}

/* --- Kopf ---------------------------------------------------------------- */
.bpc__head {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 16px;
}

.bpc__icon {
	flex: 0 0 auto;
	width: 62px;
	color: #e7000e;
}

.bpc__icon svg {
	display: block;
	width: 100%;
	height: auto;
}

.bpc__headtext {
	min-width: 0;
}

.bpc__title {
	font-family: "Oswald", Arial, sans-serif;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: uppercase;
	color: #0a172a;
	margin: 0;
	padding: 0;
}

.bpc__sub {
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.25;
	letter-spacing: .2px;
	text-transform: uppercase;
	color: #9d9d9c;
	margin: 5px 0 0;
	padding: 0;
}

/* --- Zahlen-Kacheln ------------------------------------------------------ */
.bpc__timer {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 8px;
	margin-bottom: 14px;
}

.bpc__timer[hidden] {
	display: none;
}

.bpc__unit {
	background: #e7000e;
	color: #fff;
	padding: 10px 4px 8px;
	text-align: center;
}

.bpc__value {
	display: block;
	font-family: "Oswald", Arial, sans-serif;
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	font-variant-numeric: tabular-nums;
}

.bpc__label {
	display: block;
	font-family: "Oswald", Arial, sans-serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: .8px;
	text-transform: uppercase;
	color: #fff;
	margin-top: 6px;
}

/* --- Button -------------------------------------------------------------- */
.bpc__btn,
.bpc__btn:link,
.bpc__btn:visited {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: #0a172a;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	font-family: "Oswald", Arial, sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .5px;
	line-height: 1.2;
	padding: 14px 18px;
	border: 0;
	border-radius: 0;
	transition: background .2s;
}

.bpc__btn:hover,
.bpc__btn:focus {
	background: #e7000e;
	color: #fff;
	text-decoration: none;
}

/* --- Zustand nach Ablauf ------------------------------------------------- */
.bpc--done .bpc__head {
	margin-bottom: 18px;
}

@media (max-width: 420px) {
	.bpc__value {
		font-size: 26px;
	}

	.bpc__label {
		font-size: 11px;
	}
}
