/* ==========================================================================
   Ganze Website: Farben/Schrift, News + Newsletter + Footer
   (Elementor-Fußzeile #21967). Kräftigere Grundschrift nur auf der Startseite (.home).
   Klassen: uf-news, uf-news-title, uf-news-more, uf-newsletter, uf-footer
   ========================================================================== */

@font-face {
	font-family: "Jost";
	font-style: normal;
	font-weight: 300;
	font-display: swap;
	src: url("../../static/jost/jost-latin-300.woff2") format("woff2");
}
@font-face {
	font-family: "Jost";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../../static/jost/jost-latin-400.woff2") format("woff2");
}
@font-face {
	font-family: "Jost";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("../../static/jost/jost-latin-500.woff2") format("woff2");
}

body {
	--uh-ink: #051f34;
	--uh-gold: #cfa47e;
	--uh-cream: #f7f2ed;
	--uh-line: #e6dcd2;
	--uh-text: #3b4550;
	--uh-brown: #bd9f89;
	--uh-heading: "Jost", "Montserrat", system-ui, sans-serif;
	--uh-font: "Montserrat", system-ui, sans-serif;
}

/* ---------- Grundschrift: nicht mehr so dünn ---------- */

.home .elementor-widget-text-editor,
.home .elementor-widget-text-editor p,
.home .elementor-widget-text-editor li,
.home .elementor-icon-box-description,
.home .elementor-field-group label,
.home .elementor-field-option label,
.home .widget-image-caption {
	font-weight: 400 !important;
}
.home .uh-block .elementor-widget-text-editor p { font-size: 1.2rem; line-height: 1.75; }
.home .uh-trust .elementor-icon-box-description { font-size: 1.1rem !important; color: rgba(255, 255, 255, .82) !important; }
.home .uh-trust .elementor-icon-box-title { font-size: 1.25rem !important; }
.home .uh-termin .elementor-field-type-checkbox .elementor-field-option label { font-size: 1.02rem !important; }
.home .uh-block .elementor-field-group > label { font-size: .88rem !important; }
.home .uh-promise .elementor-inner-section .elementor-widget-text-editor p,
.home .uh-trends .elementor-inner-section .elementor-widget-text-editor p { font-size: 1.15rem !important; line-height: 1.65 !important; }

/* ---------- News ---------- */

.uf-news {
	padding: clamp(64px, 8vw, 110px) clamp(10px, 2vw, 32px) 0 !important;
	background: #fff;
}
.uf-news-title .elementor-heading-title {
	margin-bottom: 40px;
	font-family: var(--uh-heading) !important;
	font-size: clamp(2rem, 3.4vw, 3rem) !important;
	font-weight: 500 !important;
	line-height: 1.1;
	color: var(--uh-ink) !important;
}
.uf-news-title .elementor-heading-title::before {
	content: "";
	display: block;
	width: 56px;
	height: 3px;
	margin: 0 auto 22px;
	background: var(--uh-gold);
}
.uf-news .elementor-post__card {
	border: 1px solid var(--uh-line);
	border-radius: 0 !important;
	box-shadow: none !important;
	transition: transform .3s, box-shadow .3s;
}
.uf-news .elementor-post__card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(5, 31, 52, .1) !important; }
.uf-news .elementor-post__thumbnail { padding-bottom: 72% !important; }
.uf-news .elementor-post__badge {
	border-radius: 0 !important;
	background: var(--uh-gold) !important;
	color: var(--uh-ink) !important;
	font-family: var(--uh-font) !important;
	font-size: .75rem !important;
	font-weight: 500 !important;
	letter-spacing: .12em;
	text-transform: uppercase;
}
.uf-news .elementor-post__avatar { display: none; }
.uf-news .elementor-post__text { padding: 26px 26px 0 !important; margin-top: 0 !important; }
.uf-news .elementor-post__title,
.uf-news .elementor-post__title a {
	margin-bottom: 12px !important;
	font-family: var(--uh-heading) !important;
	font-size: 1.35rem !important;
	font-weight: 500 !important;
	line-height: 1.25 !important;
	color: var(--uh-ink) !important;
}
.uf-news .elementor-post__excerpt p {
	font-family: var(--uh-font) !important;
	font-size: 1.12rem !important;
	font-weight: 400 !important;
	line-height: 1.6 !important;
	color: var(--uh-text) !important;
}
.uf-news .elementor-post__read-more {
	display: inline-block;
	margin-top: 6px;
	padding-bottom: 4px;
	border-bottom: 2px solid var(--uh-gold);
	font-family: var(--uh-font) !important;
	font-size: .85rem !important;
	font-weight: 500 !important;
	letter-spacing: .12em;
	color: var(--uh-ink) !important;
}
.uf-news .elementor-post__meta-data {
	padding: 18px 26px !important;
	border-top-color: var(--uh-line) !important;
	font-family: var(--uh-font) !important;
	font-size: .9rem !important;
	font-weight: 400 !important;
	color: #6b7580 !important;
}

.uf-news-more { padding: 40px 20px clamp(64px, 8vw, 110px) !important; }
.uf-news-more a {
	display: inline-flex;
	padding: 18px 34px;
	border: 1.5px solid var(--uh-ink);
	font-family: var(--uh-font);
	font-size: .9rem;
	font-weight: 500;
	letter-spacing: .14em;
	text-decoration: none !important;
	text-transform: uppercase;
	color: var(--uh-ink) !important;
	transition: background-color .3s, color .3s;
}
.uf-news-more a::after { content: "  →"; white-space: pre; }
.uf-news-more a:hover { background: var(--uh-ink); color: #fff !important; }

/* ---------- Footer: dunkel ---------- */

.uf-footer {
	padding: clamp(56px, 7vw, 90px) clamp(16px, 4vw, 56px) 40px !important;
	background: var(--uh-ink) !important;
	border-top: 4px solid var(--uh-gold);
}
.uf-footer .elementor-heading-title {
	margin-bottom: 18px !important;
	font-family: var(--uh-heading) !important;
	font-size: .95rem !important;
	font-weight: 500 !important;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--uh-gold) !important;
}
.uf-footer .elementor-widget-text-editor,
.uf-footer .elementor-widget-text-editor p,
.uf-footer .elementor-icon-list-text {
	font-family: var(--uh-font) !important;
	font-size: 1.15rem !important;
	font-weight: 400 !important;
	line-height: 1.85 !important;
	color: rgba(255, 255, 255, .85) !important;
}
.uf-footer a,
.uf-footer .elementor-icon-list-text {
	color: rgba(255, 255, 255, .85) !important;
	text-decoration: none !important;
	transition: color .2s;
}
.uf-footer a:hover,
.uf-footer a:hover .elementor-icon-list-text { color: var(--uh-gold) !important; }
.uf-footer .elementor-icon-list-icon i,
.uf-footer .elementor-social-icon i { color: var(--uh-gold) !important; }
.uf-footer .elementor-icon-list-icon svg { fill: var(--uh-gold) !important; }
.uf-footer .elementor-widget-text-editor strong {
	font-size: .95rem;
	font-weight: 500;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--uh-gold);
}
.uf-footer .elementor-widget-spacer { display: none; }
.uf-footer .elementor-widget-heading:not(:first-child) { margin-top: 20px; }

@media (max-width: 767px) {
	.uf-footer .elementor-column { margin-bottom: 20px; }
	.uf-news .elementor-post__title,
	.uf-news .elementor-post__title a { font-size: 1.2rem !important; }
}

/* ---------- Newsletter (Fußzeile, vor dem dunklen Footer): braunes Band, kompakt ----------
   Selektor mit section.… damit die Startseiten-Regeln (.home .uh-block …) nicht greifen. */
section.uf-newsletter.elementor-section {
	margin: 0 !important;
	padding: 26px 20px !important;
	background: var(--uh-brown) !important;
}
section.uf-newsletter.elementor-section > .elementor-container { max-width: 1180px; }
section.uf-newsletter.elementor-section > .elementor-container > .elementor-column > .elementor-widget-wrap {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
	align-items: center;
	column-gap: clamp(24px, 4vw, 56px);
	padding: 0 !important;
}
section.uf-newsletter.elementor-section .elementor-widget-wrap > .elementor-widget-heading { grid-column: 1; grid-row: 1; margin: 0 !important; }
section.uf-newsletter.elementor-section .elementor-widget-wrap > .elementor-widget-text-editor { grid-column: 1; grid-row: 2; margin: 4px 0 0 !important; }
section.uf-newsletter.elementor-section .elementor-widget-wrap > .elementor-widget-form { grid-column: 2; grid-row: 1 / span 2; margin: 0 !important; }
section.uf-newsletter.elementor-section .elementor-heading-title {
	font-family: var(--uh-heading) !important;
	font-size: clamp(1.25rem, 1.6vw, 1.5rem) !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: 0;
	text-align: left !important;
	color: #fff !important;
}
section.uf-newsletter.elementor-section .elementor-heading-title::before { display: none !important; }
section.uf-newsletter.elementor-section .elementor-widget-text-editor,
section.uf-newsletter.elementor-section .elementor-widget-text-editor p {
	margin: 0;
	font-family: var(--uh-font) !important;
	font-size: .85rem !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
	text-align: left !important;
	color: rgba(255, 255, 255, .85) !important;
}
section.uf-newsletter.elementor-section .elementor-widget-text-editor br { display: none; }
section.uf-newsletter.elementor-section a { color: #fff !important; text-decoration: underline; }
section.uf-newsletter.elementor-section .elementor-form-fields-wrapper { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 !important; }
section.uf-newsletter.elementor-section .elementor-field-group { width: auto !important; flex: 1 1 170px; margin: 0 !important; padding: 0 !important; }
section.uf-newsletter.elementor-section .elementor-field-group > label.elementor-field-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
section.uf-newsletter.elementor-section .elementor-field-textual { min-height: 46px; border: 0 !important; border-radius: 0 !important; font-family: var(--uh-font); }
section.uf-newsletter.elementor-section .elementor-field-type-submit { flex: 0 0 auto; }
section.uf-newsletter.elementor-section button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 24px !important;
	border: 1.5px solid var(--uh-ink) !important;
	border-radius: 0 !important;
	background: var(--uh-ink) !important;
	color: #fff !important;
	font-family: var(--uh-font) !important;
	font-size: .8rem !important;
	font-weight: 500 !important;
	letter-spacing: .12em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: background-color .3s, border-color .3s, color .3s;
}
section.uf-newsletter.elementor-section button[type="submit"]:hover { border-color: #fff !important; background: #fff !important; color: var(--uh-ink) !important; }
section.uf-newsletter.elementor-section .elementor-field-type-acceptance { flex: 1 1 100%; order: 10; }
section.uf-newsletter.elementor-section .elementor-field-type-acceptance label,
section.uf-newsletter.elementor-section .elementor-field-option label {
	font-family: var(--uh-font) !important;
	font-size: .78rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: rgba(255, 255, 255, .85) !important;
}
@media (max-width: 900px) {
	section.uf-newsletter.elementor-section > .elementor-container > .elementor-column > .elementor-widget-wrap { grid-template-columns: 1fr; }
	section.uf-newsletter.elementor-section .elementor-widget-wrap > .elementor-widget-form { grid-column: 1; grid-row: 3; margin-top: 14px !important; }
}
