/*
Theme Name: ListingPro Child
Theme URI: https://streettrekker.app/
Description: TreeQuest Child Theme für ListingPro
Author: TreeQuest
Template: listingpro
Version: 1.0.1
Text Domain: treequest
*/

/* =========================================================
   TREEQUEST BASE
========================================================= */

html {
	scroll-behavior: smooth;
	width: 100%;
	min-width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
}

body {
	width: 100%;
	min-width: 100%;
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	background: #f7fbf6;
}

body.treequest-theme,
body.treequest-theme input,
body.treequest-theme button,
body.treequest-theme a {
	font-family: inherit;
}

body.treequest-theme {
	margin: 0;
	padding: 0;
	background: #f7fbf6;
	color: #16392d;
	overflow-x: hidden;
}

body.treequest-theme * {
	box-sizing: border-box;
}

a {
	transition: 0.2s ease;
}

/* =========================================================
   ACCESSIBILITY
========================================================= */

.screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* =========================================================
   TREEQUEST BUTTONS
========================================================= */

.tq-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	text-decoration: none !important;
	border-radius: 999px !important;
	font-weight: 900 !important;
	white-space: nowrap !important;
	border: 1px solid transparent !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, color 0.2s ease !important;
}

.tq-btn:hover {
	transform: translateY(-1px);
}

.tq-btn-primary {
	background: #138a62 !important;
	color: #ffffff !important;
	border-color: #138a62 !important;
	box-shadow: 0 10px 24px rgba(19, 138, 98, 0.22);
}

.tq-btn-primary:hover {
	background: #0f7654 !important;
	color: #ffffff !important;
}

.tq-btn-secondary {
	background: #ffffff !important;
	color: #0b7f86 !important;
	border-color: #cfe6e5 !important;
}

.tq-btn-secondary:hover {
	background: #effafa !important;
	color: #08666c !important;
}

/* =========================================================
   TREEQUEST HEADER
========================================================= */

#tq-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 999999 !important;
	width: 100% !important;
	min-height: 76px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: rgba(255, 255, 255, 0.97) !important;
	border-bottom: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 8px 30px rgba(15, 72, 53, 0.08) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
}

#tq-header,
#tq-header * {
	box-sizing: border-box !important;
}

#tq-header .tq-header-inner {
	width: 100% !important;
	max-width: 1440px !important;
	min-height: 76px !important;
	margin: 0 auto !important;
	padding: 8px 24px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 22px !important;
}

#tq-header .tq-logo {
	display: flex !important;
	align-items: center !important;
	flex: 0 0 260px !important;
	width: 260px !important;
	max-width: 260px !important;
	height: 60px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	text-decoration: none !important;
}

#tq-header .tq-logo-img {
	display: block !important;
	width: 260px !important;
	max-width: 260px !important;
	height: auto !important;
	max-height: 60px !important;
	object-fit: contain !important;
	object-position: left center !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#tq-header .tq-header-search {
	flex: 1 1 auto !important;
	max-width: 620px !important;
	height: 46px !important;
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #f2faf1 !important;
	border: 1px solid #d6ead8 !important;
	border-radius: 999px !important;
	overflow: hidden !important;
	box-shadow: none !important;
}

#tq-header .tq-header-search input {
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 160px !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 18px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	color: #173b2f !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 46px !important;
	outline: none !important;
	box-shadow: none !important;
}

#tq-header .tq-header-search input::placeholder {
	color: #6a887c !important;
}

#tq-header .tq-header-search button {
	flex: 0 0 auto !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: #138a62 !important;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	line-height: 46px !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

#tq-header .tq-header-search button:hover {
	background: #0f7654 !important;
}

#tq-header .tq-header-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 12px !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#tq-header .tq-btn {
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 18px !important;
	font-size: 15px !important;
	line-height: 44px !important;
	box-shadow: none !important;
}

#tq-header .tq-btn-primary {
	background: #138a62 !important;
	color: #ffffff !important;
	border: 1px solid #138a62 !important;
}

#tq-header .tq-btn-secondary {
	background: #ffffff !important;
	color: #0b7f86 !important;
	border: 1px solid #cfe6e5 !important;
}

/* =========================================================
   HOMEPAGE BASE
========================================================= */

.tq-homepage {
	width: 100% !important;
	max-width: none !important;
	background: #f7fbf6 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow-x: hidden !important;
	box-sizing: border-box !important;
	color: #16392d !important;
}

.tq-homepage * {
	box-sizing: border-box !important;
}

/* =========================================================
   HERO
========================================================= */

.tq-homepage .tq-hero {
	position: relative !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 560px !important;
	display: flex !important;
	align-items: center !important;
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-hero-shade {
	position: absolute !important;
	inset: 0 !important;
	z-index: 1 !important;
	background:
		linear-gradient(
			90deg,
			rgba(255, 255, 255, 0.92) 0%,
			rgba(255, 255, 255, 0.76) 34%,
			rgba(255, 255, 255, 0.42) 62%,
			rgba(255, 255, 255, 0.12) 100%
		) !important;
	pointer-events: none !important;
}

.tq-homepage .tq-hero-inner {
	position: relative !important;
	z-index: 2 !important;
	width: 100% !important;
	max-width: 1440px !important;
	margin: 0 auto !important;
	padding: 90px 40px 100px !important;
}

.tq-homepage .tq-hero-content {
	max-width: 720px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-kicker {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 0 18px !important;
	padding: 8px 15px !important;
	border-radius: 999px !important;
	background: rgba(19, 138, 98, 0.12) !important;
	color: #138a62 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
}

.tq-homepage .tq-hero-content h1 {
	margin: 0 0 22px !important;
	padding: 0 !important;
	color: #16392d !important;
	font-size: clamp(46px, 5.4vw, 78px) !important;
	line-height: 1.03 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
	max-width: 760px !important;
}

.tq-homepage .tq-hero-content p {
	margin: 0 0 32px !important;
	padding: 0 !important;
	color: #36594c !important;
	font-size: 21px !important;
	line-height: 1.58 !important;
	font-weight: 500 !important;
	max-width: 620px !important;
}

.tq-homepage .tq-hero-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-hero .tq-btn {
	min-height: 50px !important;
	padding: 0 24px !important;
	font-size: 16px !important;
	line-height: 50px !important;
}

.tq-homepage .tq-hero .tq-btn-primary {
	box-shadow: 0 14px 34px rgba(19, 138, 98, 0.25) !important;
}

.tq-homepage .tq-hero .tq-btn-secondary {
	background: rgba(255, 255, 255, 0.90) !important;
	color: #0b7f86 !important;
	border-color: #cfe6e5 !important;
}

/* =========================================================
   SECTIONS
========================================================= */

.tq-homepage .tq-home-intro,
.tq-homepage .tq-home-mission,
.tq-homepage .tq-climate-section {
	width: 100% !important;
	max-width: none !important;
	background: #f7fbf6 !important;
	margin: 0 !important;
}

.tq-homepage .tq-section-inner {
	width: 100% !important;
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 86px 32px !important;
}

.tq-homepage .tq-section-head {
	max-width: 820px !important;
	margin: 0 0 38px !important;
	padding: 0 !important;
}

.tq-homepage .tq-section-kicker {
	display: inline-block !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: #138a62 !important;
	background: transparent !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	border-radius: 0 !important;
}

.tq-homepage .tq-section-head h2,
.tq-homepage .tq-ranking-head h2,
.tq-homepage .tq-knowledge-card h2,
.tq-homepage .tq-mission-box h2,
.tq-homepage .tq-climate-head h2 {
	margin: 0 0 16px !important;
	padding: 0 !important;
	color: #16392d !important;
	font-size: clamp(34px, 3.4vw, 52px) !important;
	line-height: 1.08 !important;
	font-weight: 900 !important;
	letter-spacing: -0.035em !important;
}

.tq-homepage .tq-section-head p,
.tq-homepage .tq-ranking-head p,
.tq-homepage .tq-knowledge-intro,
.tq-homepage .tq-mission-box p,
.tq-homepage .tq-climate-head p {
	margin: 0 !important;
	padding: 0 !important;
	color: #4c6b5f !important;
	font-size: 18px !important;
	line-height: 1.65 !important;
	font-weight: 500 !important;
}

/* =========================================================
   FEATURE CARDS
========================================================= */

.tq-homepage .tq-feature-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 24px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-feature-card {
	display: block !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	border-radius: 28px !important;
	padding: 30px !important;
	box-shadow: 0 18px 50px rgba(15, 72, 53, 0.08) !important;
	min-height: 245px !important;
}

.tq-homepage .tq-feature-icon {
	width: 58px !important;
	height: 58px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 0 20px !important;
	padding: 0 !important;
	border-radius: 20px !important;
	background: #eef9ef !important;
	font-size: 30px !important;
	line-height: 1 !important;
}

.tq-homepage .tq-feature-card h3 {
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: #173b2f !important;
	font-size: 23px !important;
	line-height: 1.2 !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-feature-card p {
	margin: 0 !important;
	padding: 0 !important;
	color: #557166 !important;
	font-size: 16px !important;
	line-height: 1.65 !important;
	font-weight: 500 !important;
}

/* =========================================================
   RANKING PREVIEW
========================================================= */

.tq-homepage .tq-ranking-preview {
	margin: 64px 0 0 !important;
	padding: 42px !important;
	border-radius: 34px !important;
	background:
		radial-gradient(circle at right top, rgba(11, 127, 134, 0.14), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f3fbf2 58%, #e9f8f6 100%) !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 24px 70px rgba(15, 72, 53, 0.09) !important;
}

.tq-homepage .tq-ranking-head {
	display: flex !important;
	align-items: flex-end !important;
	justify-content: space-between !important;
	gap: 28px !important;
	margin: 0 0 26px !important;
}

.tq-homepage .tq-ranking-head > div {
	max-width: 760px !important;
}

.tq-homepage .tq-ranking-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 46px !important;
	padding: 0 20px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0b7f86 !important;
	border: 1px solid #cfe6e5 !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

.tq-homepage .tq-ranking-switch {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 0 0 24px !important;
	padding: 5px !important;
	border-radius: 999px !important;
	background: #edf8ee !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-ranking-switch span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 34px !important;
	padding: 0 14px !important;
	border-radius: 999px !important;
	color: #557166 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-ranking-switch .is-active {
	background: #138a62 !important;
	color: #ffffff !important;
	box-shadow: 0 8px 18px rgba(19, 138, 98, 0.20) !important;
}

.tq-homepage .tq-ranking-grid {
	display: grid !important;
	grid-template-columns: 1.15fr 1fr 1fr !important;
	gap: 22px !important;
	align-items: stretch !important;
}

.tq-homepage .tq-ranking-card {
	background: rgba(255, 255, 255, 0.92) !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	border-radius: 26px !important;
	padding: 22px !important;
	box-shadow: 0 16px 44px rgba(15, 72, 53, 0.07) !important;
}

.tq-homepage .tq-ranking-card-main {
	background:
		radial-gradient(circle at top left, rgba(19, 138, 98, 0.14), transparent 38%),
		#ffffff !important;
}

.tq-homepage .tq-ranking-card-head {
	display: flex !important;
	align-items: center !important;
	gap: 14px !important;
	margin: 0 0 18px !important;
}

.tq-homepage .tq-ranking-icon {
	width: 50px !important;
	height: 50px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 18px !important;
	background: #eef9ef !important;
	font-size: 26px !important;
	line-height: 1 !important;
}

.tq-homepage .tq-ranking-card h3 {
	margin: 0 0 4px !important;
	color: #173b2f !important;
	font-size: 21px !important;
	line-height: 1.15 !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-ranking-card p {
	margin: 0 !important;
	color: #6a887c !important;
	font-size: 14px !important;
	line-height: 1.35 !important;
	font-weight: 700 !important;
}

.tq-homepage .tq-ranking-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid !important;
	gap: 8px !important;
}

.tq-homepage .tq-ranking-list li {
	display: grid !important;
	grid-template-columns: 34px 1fr auto !important;
	align-items: center !important;
	gap: 10px !important;
	min-height: 44px !important;
	padding: 8px 11px !important;
	border-radius: 16px !important;
	background: #f5fbf4 !important;
	border: 1px solid rgba(19, 138, 98, 0.08) !important;
}

.tq-homepage .tq-rank-number {
	width: 30px !important;
	height: 30px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #138a62 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
}

.tq-homepage .tq-ranking-list li:first-child .tq-rank-number {
	background: #138a62 !important;
	color: #ffffff !important;
	border-color: #138a62 !important;
}

.tq-homepage .tq-rank-name {
	color: #173b2f !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.25 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

.tq-homepage .tq-ranking-list strong {
	color: #0b7f86 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	white-space: nowrap !important;
}

/* =========================================================
   KNOWLEDGE + DAILY QUIZ
========================================================= */

.tq-homepage .tq-knowledge-quiz {
	margin: 64px 0 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-knowledge-grid {
	display: grid !important;
	grid-template-columns: 1.15fr 0.85fr !important;
	gap: 24px !important;
	align-items: stretch !important;
}

.tq-homepage .tq-knowledge-card,
.tq-homepage .tq-quiz-card {
	position: relative !important;
	border-radius: 34px !important;
	padding: 38px !important;
	overflow: hidden !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 24px 70px rgba(15, 72, 53, 0.09) !important;
}

.tq-homepage .tq-knowledge-card {
	background:
		radial-gradient(circle at left top, rgba(19, 138, 98, 0.12), transparent 36%),
		linear-gradient(135deg, #ffffff 0%, #f4fbf2 58%, #eaf8f6 100%) !important;
}

.tq-homepage .tq-quiz-card {
	background:
		radial-gradient(circle at right top, rgba(11, 127, 134, 0.18), transparent 38%),
		linear-gradient(135deg, #ffffff 0%, #f5fbfb 62%, #e9f8f6 100%) !important;
}

.tq-homepage .tq-knowledge-card h2 {
	margin: 0 0 14px !important;
	color: #16392d !important;
	font-size: clamp(32px, 3.2vw, 50px) !important;
	line-height: 1.06 !important;
	font-weight: 900 !important;
	letter-spacing: -0.035em !important;
}

.tq-homepage .tq-knowledge-intro {
	max-width: 720px !important;
	margin: 0 0 26px !important;
}

.tq-homepage .tq-fact-list {
	display: grid !important;
	gap: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-fact-item {
	display: grid !important;
	grid-template-columns: 50px 1fr !important;
	gap: 14px !important;
	align-items: center !important;
	padding: 16px !important;
	border-radius: 22px !important;
	background: rgba(255, 255, 255, 0.78) !important;
	border: 1px solid rgba(19, 138, 98, 0.10) !important;
}

.tq-homepage .tq-fact-icon {
	width: 50px !important;
	height: 50px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 18px !important;
	background: #eef9ef !important;
	font-size: 25px !important;
	line-height: 1 !important;
}

.tq-homepage .tq-fact-item p {
	margin: 0 !important;
	color: #264d40 !important;
	font-size: 16px !important;
	line-height: 1.55 !important;
	font-weight: 400 !important;
}

.tq-homepage .tq-fact-item p strong,
.tq-homepage .tq-fact-item p b {
	font-weight: 900 !important;
	color: #16392d !important;
}

.tq-homepage .tq-fact-item p br {
	display: block !important;
	content: "" !important;
	margin-bottom: 4px !important;
}

.tq-homepage .tq-quiz-badge {
	display: inline-flex !important;
	align-items: center !important;
	height: 34px !important;
	margin: 0 0 18px !important;
	padding: 0 14px !important;
	border-radius: 999px !important;
	background: #138a62 !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 34px !important;
}

.tq-homepage .tq-quiz-card h3 {
	margin: 0 0 16px !important;
	color: #16392d !important;
	font-size: clamp(24px, 2.2vw, 34px) !important;
	line-height: 1.15 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
}

.tq-homepage .tq-quiz-note {
	margin: 0 0 20px !important;
	color: #5f7a70 !important;
	font-size: 15px !important;
	line-height: 1.55 !important;
	font-weight: 600 !important;
}

.tq-homepage .tq-quiz-options {
	display: grid !important;
	gap: 10px !important;
	margin: 0 0 22px !important;
	padding: 0 !important;
}

.tq-homepage .tq-quiz-options button {
	width: 100% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	min-height: 48px !important;
	padding: 12px 15px !important;
	border-radius: 18px !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.13) !important;
	color: #173b2f !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	text-align: left !important;
	line-height: 1.35 !important;
	box-shadow: none !important;
}

.tq-homepage .tq-quiz-options-preview button[disabled] {
	cursor: not-allowed !important;
	opacity: 0.9 !important;
}

.tq-homepage .tq-quiz-options-preview button[disabled]::after {
	content: "🔒";
	margin-left: 12px;
	font-size: 13px;
}

.tq-homepage .tq-quiz-footer {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 14px !important;
	flex-wrap: wrap !important;
	margin: 0 !important;
	padding: 18px 0 0 !important;
	border-top: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-quiz-footer span {
	color: #0b7f86 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-quiz-footer a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 44px !important;
	padding: 0 18px !important;
	border-radius: 999px !important;
	background: #138a62 !important;
	color: #ffffff !important;
	border: 1px solid #138a62 !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

.tq-homepage .tq-quiz-footer a:hover {
	background: #0f7654 !important;
	color: #ffffff !important;
}

/* =========================================================
   MISSION BOX
========================================================= */

.tq-homepage .tq-home-mission,
.tq-home-mission {
	background: #f7fbf6 !important;
	margin: 0 !important;
	padding: 0 32px 32px !important;
}

.tq-homepage .tq-mission-box,
.tq-mission-box {
	width: 100% !important;
	max-width: 1240px !important;
	margin: 0 auto !important;
	padding: 46px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 30px !important;
	border-radius: 34px !important;
	background:
		radial-gradient(circle at right top, rgba(11, 127, 134, 0.18), transparent 34%),
		linear-gradient(135deg, #eef9ef 0%, #ffffff 62%, #e9f8f6 100%) !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 24px 70px rgba(15, 72, 53, 0.10) !important;
}

.tq-homepage .tq-mission-box > div,
.tq-mission-box > div {
	max-width: 760px !important;
}

.tq-homepage .tq-mission-box .tq-btn,
.tq-mission-box .tq-btn {
	min-height: 50px !important;
	padding: 0 24px !important;
	background: #138a62 !important;
	color: #ffffff !important;
	font-size: 16px !important;
	line-height: 50px !important;
}

/* =========================================================
   CLIMATE + WEATHER WIDGET
========================================================= */

.tq-homepage .tq-climate-section {
	background: #f7fbf6 !important;
	margin: 0 !important;
	padding: 0 0 96px !important;
}

.tq-homepage .tq-climate-shell {
	border-radius: 36px !important;
	padding: 42px !important;
	background:
		radial-gradient(circle at right top, rgba(11, 127, 134, 0.16), transparent 34%),
		linear-gradient(135deg, #ffffff 0%, #f3fbf2 58%, #e8f8f6 100%) !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 24px 70px rgba(15, 72, 53, 0.10) !important;
}

.tq-homepage .tq-climate-head {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 28px !important;
	margin: 0 0 30px !important;
}

.tq-homepage .tq-climate-head > div:first-child {
	max-width: 760px !important;
}

.tq-homepage .tq-climate-live-badge {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	height: 40px !important;
	padding: 0 16px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0b7f86 !important;
	border: 1px solid #cfe6e5 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	white-space: nowrap !important;
}

.tq-homepage .tq-climate-live-badge span {
	width: 9px !important;
	height: 9px !important;
	display: block !important;
	border-radius: 999px !important;
	background: #138a62 !important;
	box-shadow: 0 0 0 5px rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-climate-tab-buttons {
	display: inline-flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin: 0 0 26px !important;
	padding: 6px !important;
	border-radius: 999px !important;
	background: #edf8ee !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-climate-tab-buttons button {
	height: 38px !important;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: transparent !important;
	color: #557166 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

.tq-homepage .tq-climate-tab-buttons button.is-active {
	background: #138a62 !important;
	color: #ffffff !important;
	box-shadow: 0 8px 18px rgba(19, 138, 98, 0.20) !important;
}

.tq-homepage .tq-climate-panel {
	display: none !important;
}

.tq-homepage .tq-climate-panel.is-active {
	display: block !important;
}

.tq-homepage .tq-weather-main-card {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	margin: 0 0 22px !important;
	padding: 30px !important;
	border-radius: 30px !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 16px 44px rgba(15, 72, 53, 0.07) !important;
}

.tq-homepage .tq-weather-label {
	display: block !important;
	margin: 0 0 8px !important;
	color: #138a62 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
}

.tq-homepage .tq-weather-temp {
	display: block !important;
	margin: 0 0 4px !important;
	color: #16392d !important;
	font-size: clamp(46px, 5vw, 72px) !important;
	line-height: 1 !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-weather-main-card p {
	margin: 0 !important;
	color: #4c6b5f !important;
	font-size: 18px !important;
	font-weight: 700 !important;
}

.tq-homepage .tq-climate-updated,
.tq-homepage .tq-climate-source-note {
	display: block !important;
	margin: 10px 0 0 !important;
	color: #6a887c !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}

.tq-homepage .tq-weather-icon {
	width: 84px !important;
	height: 84px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 28px !important;
	background: #eef9ef !important;
	font-size: 42px !important;
	line-height: 1 !important;
}

.tq-homepage .tq-climate-kpi-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 16px !important;
}

.tq-homepage .tq-climate-kpi-grid-large {
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.tq-homepage .tq-climate-kpi {
	padding: 20px !important;
	border-radius: 24px !important;
	background: rgba(255, 255, 255, 0.92) !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-climate-kpi span {
	display: block !important;
	margin: 0 0 8px !important;
	color: #6a887c !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
}

.tq-homepage .tq-climate-kpi strong {
	display: block !important;
	color: #16392d !important;
	font-size: 26px !important;
	line-height: 1.1 !important;
	font-weight: 900 !important;
}

/* =========================================================
   FORECAST
========================================================= */

.tq-homepage .tq-forecast-list {
	display: grid !important;
	grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
	gap: 12px !important;
}

.tq-homepage .tq-forecast-day {
	padding: 18px !important;
	border-radius: 22px !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-forecast-day-top {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin: 0 0 10px !important;
}

.tq-homepage .tq-forecast-day-top > span:first-child {
	display: block !important;
	margin: 0 !important;
	color: #138a62 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
}

.tq-homepage .tq-forecast-weather-icon {
	width: 38px !important;
	height: 38px !important;
	min-width: 38px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 15px !important;
	background: #eef9ef !important;
	color: #16392d !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	box-shadow: inset 0 0 0 1px rgba(19, 138, 98, 0.08) !important;
}

.tq-homepage .tq-forecast-day > span {
	display: block !important;
	margin: 0 0 10px !important;
	color: #138a62 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-forecast-day strong {
	display: block !important;
	margin: 0 0 8px !important;
	color: #16392d !important;
	font-size: 22px !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-forecast-day small {
	display: block !important;
	color: #557166 !important;
	font-size: 13px !important;
	line-height: 1.35 !important;
	font-weight: 700 !important;
}

/* =========================================================
   CLIMATE YEAR SUBNAV
========================================================= */

.tq-homepage .tq-climate-year-buttons {
	display: inline-flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin: 0 0 26px !important;
	padding: 6px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.76) !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-climate-year-buttons button {
	height: 36px !important;
	padding: 0 15px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: transparent !important;
	color: #557166 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	cursor: pointer !important;
	box-shadow: none !important;
	line-height: 36px !important;
}

.tq-homepage .tq-climate-year-buttons button.is-active {
	background: #0b7f86 !important;
	color: #ffffff !important;
	box-shadow: 0 8px 18px rgba(11, 127, 134, 0.20) !important;
}

.tq-homepage .tq-climate-year-panel {
	display: none !important;
}

.tq-homepage .tq-climate-year-panel.is-active {
	display: block !important;
}

.tq-homepage .tq-climate-source-footer {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px 16px !important;
	margin: 18px 0 0 !important;
	padding: 16px 0 0 !important;
	border-top: 1px solid rgba(19, 138, 98, 0.13) !important;
	color: #5f7a70 !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
	font-weight: 700 !important;
}

.tq-homepage .tq-climate-source-footer a {
	color: #0b7f86 !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

.tq-homepage .tq-climate-source-footer a:hover {
	text-decoration: underline !important;
}

/* =========================================================
   TREE STRESS
========================================================= */

.tq-homepage .tq-tree-stress-card {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	padding: 30px !important;
	border-radius: 30px !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 16px 44px rgba(15, 72, 53, 0.07) !important;
}

.tq-homepage .tq-tree-stress-card span {
	display: block !important;
	margin: 0 0 8px !important;
	color: #138a62 !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
}

.tq-homepage .tq-tree-stress-card strong {
	display: block !important;
	margin: 0 0 10px !important;
	color: #16392d !important;
	font-size: clamp(32px, 3vw, 48px) !important;
	line-height: 1.05 !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-tree-stress-card p {
	margin: 0 !important;
	max-width: 720px !important;
	color: #4c6b5f !important;
	font-size: 18px !important;
	line-height: 1.6 !important;
	font-weight: 600 !important;
}

.tq-homepage .tq-tree-stress-icon {
	width: 84px !important;
	height: 84px !important;
	flex: 0 0 84px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 28px !important;
	background: #eef9ef !important;
	font-size: 42px !important;
	line-height: 1 !important;
}

.tq-homepage .tq-observation-hints {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 16px !important;
	margin: 18px 0 0 !important;
}

.tq-homepage .tq-observation-hints div {
	padding: 20px !important;
	border-radius: 24px !important;
	background: rgba(255, 255, 255, 0.92) !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
}

.tq-homepage .tq-observation-hints strong {
	display: block !important;
	margin: 0 0 6px !important;
	color: #16392d !important;
	font-size: 16px !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-observation-hints span {
	color: #557166 !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	font-weight: 600 !important;
}

.tq-homepage .tq-climate-warning {
	margin: 20px 0 0 !important;
	padding: 14px 16px !important;
	border-radius: 18px !important;
	background: #fff8e7 !important;
	color: #7a5613 !important;
	font-weight: 800 !important;
}

/* =========================================================
   TREEQUEST FOOTER WIDGET LAYOUT
========================================================= */

#tq-footer,
.tq-footer {
	width: 100% !important;
	background: #16392d !important;
	color: #ffffff !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.tq-footer-inner {
	width: 100% !important;
	max-width: 1440px !important;
	margin: 0 auto !important;
	padding: 46px 32px 28px !important;
	box-sizing: border-box !important;
}

.tq-footer-widget-grid {
	display: grid !important;
	grid-template-columns: 1.25fr 1fr 1fr 1fr !important;
	gap: 34px !important;
	align-items: flex-start !important;
	margin: 0 0 34px !important;
	padding: 0 !important;
}

.tq-footer-column {
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.tq-footer-brand {
	display: flex !important;
	flex-direction: column !important;
	gap: 7px !important;
}

.tq-footer-brand strong {
	display: block !important;
	color: #ffffff !important;
	font-size: 24px !important;
	line-height: 1.1 !important;
	font-weight: 900 !important;
	letter-spacing: -0.02em !important;
}

.tq-footer-brand span {
	display: block !important;
	max-width: 320px !important;
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 15px !important;
	line-height: 1.55 !important;
	font-weight: 600 !important;
}

.tq-footer-widget {
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	font-weight: 600 !important;
}

.tq-footer-widget-title,
.tq-footer-widget h3,
.tq-footer-widget h2 {
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: #ffffff !important;
	font-size: 16px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	letter-spacing: 0.02em !important;
	text-transform: uppercase !important;
}

.tq-footer-widget p {
	margin: 0 0 12px !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.72) !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	font-weight: 600 !important;
}

.tq-footer-widget ul {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
	display: grid !important;
	gap: 8px !important;
}

.tq-footer-widget li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tq-footer-widget a {
	color: rgba(255, 255, 255, 0.78) !important;
	text-decoration: none !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
	font-weight: 800 !important;
}

.tq-footer-widget a:hover {
	color: #ffffff !important;
	text-decoration: none !important;
}

.tq-footer-bottom {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	padding: 22px 0 0 !important;
	border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
}

.tq-footer-nav {
	margin: 0 !important;
	padding: 0 !important;
}

.tq-footer-menu {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 16px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tq-footer-menu li {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tq-footer-menu a {
	display: inline-flex !important;
	align-items: center !important;
	color: rgba(255, 255, 255, 0.72) !important;
	text-decoration: none !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
	font-weight: 800 !important;
	white-space: nowrap !important;
}

.tq-footer-menu a:hover {
	color: #ffffff !important;
	text-decoration: none !important;
}

.tq-footer-meta {
	color: rgba(255, 255, 255, 0.58) !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {
	.tq-homepage .tq-ranking-grid,
	.tq-homepage .tq-knowledge-grid {
		grid-template-columns: 1fr !important;
	}

	.tq-homepage .tq-ranking-head,
	.tq-homepage .tq-climate-head {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.tq-homepage .tq-climate-kpi-grid,
	.tq-homepage .tq-climate-kpi-grid-large,
	.tq-homepage .tq-forecast-list {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.tq-footer-widget-grid {
		grid-template-columns: 1fr 1fr !important;
	}
}

@media (max-width: 980px) {
	.tq-homepage .tq-hero {
		min-height: 620px !important;
		background-position: center center !important;
	}

	.tq-homepage .tq-hero-inner {
		padding: 72px 22px !important;
	}

	.tq-homepage .tq-feature-grid {
		grid-template-columns: 1fr !important;
	}

	.tq-homepage .tq-mission-box,
	.tq-mission-box {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

@media (max-width: 900px) {
	#tq-header .tq-header-inner {
		flex-wrap: wrap !important;
		gap: 10px !important;
		padding: 8px 14px !important;
	}

	#tq-header .tq-logo {
		flex: 0 0 190px !important;
		width: 190px !important;
		max-width: 190px !important;
		height: 46px !important;
	}

	#tq-header .tq-logo-img {
		width: 190px !important;
		max-width: 190px !important;
		max-height: 46px !important;
	}

	#tq-header .tq-header-actions {
		margin-left: auto !important;
	}

	#tq-header .tq-header-search {
		order: 3 !important;
		width: 100% !important;
		max-width: none !important;
		flex: 1 1 100% !important;
		height: 42px !important;
	}

	#tq-header .tq-header-search input {
		height: 42px !important;
		line-height: 42px !important;
		font-size: 14px !important;
	}

	#tq-header .tq-header-search button {
		height: 42px !important;
		line-height: 42px !important;
		font-size: 14px !important;
		padding: 0 16px !important;
	}

	#tq-header .tq-btn {
		height: 38px !important;
		min-height: 38px !important;
		line-height: 38px !important;
		padding: 0 13px !important;
		font-size: 14px !important;
	}
}

@media (max-width: 760px) {
	.tq-footer-inner {
		padding: 38px 20px 26px !important;
	}

	.tq-footer-widget-grid {
		grid-template-columns: 1fr !important;
		gap: 26px !important;
		margin-bottom: 30px !important;
	}

	.tq-footer-bottom {
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 14px !important;
	}

	.tq-footer-menu {
		gap: 12px 16px !important;
	}
}

@media (max-width: 640px) {
	.tq-homepage .tq-hero {
		min-height: 580px !important;
		background-position: center center !important;
	}

	.tq-homepage .tq-hero-shade {
		background:
			linear-gradient(
				180deg,
				rgba(255, 255, 255, 0.94) 0%,
				rgba(255, 255, 255, 0.84) 55%,
				rgba(255, 255, 255, 0.48) 100%
			) !important;
	}

	.tq-homepage .tq-hero-inner {
		padding: 54px 18px !important;
	}

	.tq-homepage .tq-hero-content h1 {
		font-size: 40px !important;
	}

	.tq-homepage .tq-hero-content p {
		font-size: 17px !important;
	}

	.tq-homepage .tq-section-inner {
		padding: 58px 18px !important;
	}

	.tq-homepage .tq-feature-card,
	.tq-homepage .tq-ranking-card {
		padding: 24px !important;
		border-radius: 24px !important;
	}

	.tq-homepage .tq-ranking-preview,
	.tq-homepage .tq-knowledge-quiz {
		margin-top: 46px !important;
	}

	.tq-homepage .tq-ranking-preview {
		padding: 26px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-ranking-list li {
		grid-template-columns: 32px 1fr !important;
	}

	.tq-homepage .tq-ranking-list strong {
		grid-column: 2 !important;
		font-size: 14px !important;
	}

	.tq-homepage .tq-knowledge-card,
	.tq-homepage .tq-quiz-card,
	.tq-homepage .tq-climate-shell {
		padding: 26px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-fact-item {
		grid-template-columns: 42px 1fr !important;
		padding: 14px !important;
		border-radius: 18px !important;
	}

	.tq-homepage .tq-fact-icon {
		width: 42px !important;
		height: 42px !important;
		border-radius: 15px !important;
		font-size: 22px !important;
	}

	.tq-homepage .tq-quiz-options button {
		font-size: 14px !important;
	}

	.tq-homepage .tq-quiz-footer {
		align-items: flex-start !important;
		flex-direction: column !important;
	}

	.tq-homepage .tq-home-mission,
	.tq-home-mission {
		padding: 0 18px 32px !important;
	}

	.tq-homepage .tq-mission-box,
	.tq-mission-box {
		padding: 30px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-climate-tab-buttons,
	.tq-homepage .tq-climate-year-buttons {
		border-radius: 22px !important;
		width: 100% !important;
	}

	.tq-homepage .tq-climate-tab-buttons button,
	.tq-homepage .tq-climate-year-buttons button {
		flex: 1 1 auto !important;
	}

	.tq-homepage .tq-climate-kpi-grid,
	.tq-homepage .tq-climate-kpi-grid-large,
	.tq-homepage .tq-forecast-list,
	.tq-homepage .tq-observation-hints {
		grid-template-columns: 1fr !important;
	}

	.tq-homepage .tq-weather-main-card,
	.tq-homepage .tq-tree-stress-card {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

@media (max-width: 520px) {
	#tq-header .tq-logo {
		flex: 0 0 160px !important;
		width: 160px !important;
		max-width: 160px !important;
	}

	#tq-header .tq-logo-img {
		width: 160px !important;
		max-width: 160px !important;
	}

	#tq-header .tq-btn-secondary {
		display: none !important;
	}

	#tq-header .tq-header-search input {
		font-size: 13px !important;
		padding: 0 12px !important;
	}

	#tq-header .tq-header-search button {
		padding: 0 13px !important;
	}
}

/* =========================================================
   TREEQUEST FULL WIDTH FIX FOR LISTINGPRO
   Muss ganz unten bleiben.
========================================================= */

body.treequest-front-page,
body.treequest-front-page #page,
body.treequest-front-page .site,
body.treequest-front-page .site-content,
body.treequest-front-page .main-content,
body.treequest-front-page .content-area,
body.treequest-front-page .container,
body.treequest-front-page .lp-container,
body.treequest-front-page .listingpro-container,
body.treequest-front-page .wp-site-blocks {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	background: #f7fbf6 !important;
}

body.treequest-front-page #tq-header {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

body.treequest-front-page .tq-homepage {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding: 0 !important;
	background: #f7fbf6 !important;
}

body.treequest-front-page .tq-hero,
body.treequest-front-page .tq-home-intro,
body.treequest-front-page .tq-home-mission,
body.treequest-front-page .tq-climate-section,
body.treequest-front-page .tq-footer,
body.treequest-front-page #tq-footer {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

body.treequest-front-page .tq-hero-inner,
body.treequest-front-page .tq-section-inner,
body.treequest-front-page .tq-footer-inner {
	margin-left: auto !important;
	margin-right: auto !important;
}

body.treequest-front-page .tq-hero-inner {
	max-width: 1440px !important;
}

body.treequest-front-page .tq-section-inner {
	max-width: 1240px !important;
}

body.treequest-front-page .tq-footer-inner {
	max-width: 1440px !important;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {
	.tq-homepage .tq-ranking-grid,
	.tq-homepage .tq-knowledge-grid {
		grid-template-columns: 1fr !important;
	}

	.tq-homepage .tq-ranking-head,
	.tq-homepage .tq-climate-head {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.tq-homepage .tq-climate-kpi-grid,
	.tq-homepage .tq-climate-kpi-grid-large,
	.tq-homepage .tq-forecast-list {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 980px) {
	.tq-homepage .tq-hero {
		min-height: 620px !important;
		background-position: center center !important;
	}

	.tq-homepage .tq-hero-inner {
		padding: 72px 22px !important;
	}

	.tq-homepage .tq-feature-grid {
		grid-template-columns: 1fr !important;
	}

	.tq-homepage .tq-mission-box,
	.tq-mission-box {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.tq-footer-inner {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

@media (max-width: 900px) {
	#tq-header .tq-header-inner {
		flex-wrap: wrap !important;
		gap: 10px !important;
		padding: 8px 14px !important;
	}

	#tq-header .tq-logo {
		flex: 0 0 190px !important;
		width: 190px !important;
		max-width: 190px !important;
		height: 46px !important;
	}

	#tq-header .tq-logo-img {
		width: 190px !important;
		max-width: 190px !important;
		max-height: 46px !important;
	}

	#tq-header .tq-header-actions {
		margin-left: auto !important;
	}

	#tq-header .tq-header-search {
		order: 3 !important;
		width: 100% !important;
		max-width: none !important;
		flex: 1 1 100% !important;
		height: 42px !important;
	}

	#tq-header .tq-header-search input {
		height: 42px !important;
		line-height: 42px !important;
		font-size: 14px !important;
	}

	#tq-header .tq-header-search button {
		height: 42px !important;
		line-height: 42px !important;
		font-size: 14px !important;
		padding: 0 16px !important;
	}

	#tq-header .tq-btn {
		height: 38px !important;
		min-height: 38px !important;
		line-height: 38px !important;
		padding: 0 13px !important;
		font-size: 14px !important;
	}
}

@media (max-width: 640px) {
	.tq-homepage .tq-hero {
		min-height: 580px !important;
		background-position: center center !important;
	}

	.tq-homepage .tq-hero-shade {
		background:
			linear-gradient(
				180deg,
				rgba(255, 255, 255, 0.94) 0%,
				rgba(255, 255, 255, 0.84) 55%,
				rgba(255, 255, 255, 0.48) 100%
			) !important;
	}

	.tq-homepage .tq-hero-inner {
		padding: 54px 18px !important;
	}

	.tq-homepage .tq-hero-content h1 {
		font-size: 40px !important;
	}

	.tq-homepage .tq-hero-content p {
		font-size: 17px !important;
	}

	.tq-homepage .tq-section-inner {
		padding: 58px 18px !important;
	}

	.tq-homepage .tq-feature-card,
	.tq-homepage .tq-ranking-card {
		padding: 24px !important;
		border-radius: 24px !important;
	}

	.tq-homepage .tq-ranking-preview,
	.tq-homepage .tq-knowledge-quiz {
		margin-top: 46px !important;
	}

	.tq-homepage .tq-ranking-preview {
		padding: 26px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-ranking-list li {
		grid-template-columns: 32px 1fr !important;
	}

	.tq-homepage .tq-ranking-list strong {
		grid-column: 2 !important;
		font-size: 14px !important;
	}

	.tq-homepage .tq-knowledge-card,
	.tq-homepage .tq-quiz-card,
	.tq-homepage .tq-climate-shell {
		padding: 26px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-fact-item {
		grid-template-columns: 42px 1fr !important;
		padding: 14px !important;
		border-radius: 18px !important;
	}

	.tq-homepage .tq-fact-icon {
		width: 42px !important;
		height: 42px !important;
		border-radius: 15px !important;
		font-size: 22px !important;
	}

	.tq-homepage .tq-quiz-options button {
		font-size: 14px !important;
	}

	.tq-homepage .tq-quiz-footer {
		align-items: flex-start !important;
		flex-direction: column !important;
	}

	.tq-homepage .tq-home-mission,
	.tq-home-mission {
		padding: 0 18px 32px !important;
	}

	.tq-homepage .tq-mission-box,
	.tq-mission-box {
		padding: 30px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-climate-tab-buttons,
	.tq-homepage .tq-climate-year-buttons {
		border-radius: 22px !important;
		width: 100% !important;
	}

	.tq-homepage .tq-climate-tab-buttons button,
	.tq-homepage .tq-climate-year-buttons button {
		flex: 1 1 auto !important;
	}

	.tq-homepage .tq-climate-kpi-grid,
	.tq-homepage .tq-climate-kpi-grid-large,
	.tq-homepage .tq-forecast-list,
	.tq-homepage .tq-observation-hints {
		grid-template-columns: 1fr !important;
	}

	.tq-homepage .tq-weather-main-card,
	.tq-homepage .tq-tree-stress-card {
		flex-direction: column !important;
		align-items: flex-start !important;
	}
}

@media (max-width: 520px) {
	#tq-header .tq-logo {
		flex: 0 0 160px !important;
		width: 160px !important;
		max-width: 160px !important;
	}

	#tq-header .tq-logo-img {
		width: 160px !important;
		max-width: 160px !important;
	}

	#tq-header .tq-btn-secondary {
		display: none !important;
	}

	#tq-header .tq-header-search input {
		font-size: 13px !important;
		padding: 0 12px !important;
	}

	#tq-header .tq-header-search button {
		padding: 0 13px !important;
	}
}

/* =========================================================
   TREEQUEST FULL WIDTH FIX FOR LISTINGPRO
   Muss ganz unten bleiben.
========================================================= */

body.treequest-front-page,
body.treequest-front-page #page,
body.treequest-front-page .site,
body.treequest-front-page .site-content,
body.treequest-front-page .main-content,
body.treequest-front-page .content-area,
body.treequest-front-page .container,
body.treequest-front-page .lp-container,
body.treequest-front-page .listingpro-container,
body.treequest-front-page .wp-site-blocks {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	background: #f7fbf6 !important;
}

body.treequest-front-page #tq-header {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

body.treequest-front-page .tq-homepage {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding: 0 !important;
	background: #f7fbf6 !important;
}

body.treequest-front-page .tq-hero,
body.treequest-front-page .tq-home-intro,
body.treequest-front-page .tq-home-mission,
body.treequest-front-page .tq-climate-section,
body.treequest-front-page .tq-footer {
	width: 100vw !important;
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
}

body.treequest-front-page .tq-hero-inner,
body.treequest-front-page .tq-section-inner,
body.treequest-front-page .tq-footer-inner {
	margin-left: auto !important;
	margin-right: auto !important;
}

body.treequest-front-page .tq-hero-inner {
	max-width: 1440px !important;
}

body.treequest-front-page .tq-section-inner {
	max-width: 1240px !important;
}

body.treequest-front-page .tq-footer-inner {
	max-width: 1440px !important;
}


/* =========================================================
   TREEQUEST AJAX SEARCH DROPDOWN FIX
   Muss ganz unten stehen.
========================================================= */

#tq-header .tq-header-search.tq-header-ajax-search {
	position: relative !important;
	overflow: visible !important;
	z-index: 9999999 !important;
}

#tq-header .tq-header-search.tq-header-ajax-search input,
#tq-header .tq-header-search.tq-header-ajax-search button {
	position: relative !important;
	z-index: 2 !important;
}

#tq-header .tq-header-search.tq-header-ajax-search .tq-search-results {
	position: absolute !important;
	top: calc(100% + 10px) !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	min-width: 420px !important;
	height: auto !important;
	max-height: 460px !important;
	overflow-y: auto !important;
	z-index: 99999999 !important;

	display: none !important;
	margin: 0 !important;
	padding: 12px !important;

	border-radius: 26px !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.16) !important;
	box-shadow: 0 22px 60px rgba(15, 72, 53, 0.18) !important;
}

#tq-header .tq-header-search.tq-header-ajax-search .tq-search-results.is-visible {
	display: block !important;
}

#tq-header .tq-search-result-list {
	display: grid !important;
	gap: 10px !important;
	margin: 0 !important;
	padding: 0 !important;
}

#tq-header .tq-search-result-item {
	display: grid !important;
	grid-template-columns: 64px 1fr !important;
	gap: 14px !important;
	align-items: center !important;

	width: 100% !important;
	min-height: 78px !important;
	margin: 0 !important;
	padding: 10px 14px !important;

	border-radius: 20px !important;
	background: #ffffff !important;
	text-decoration: none !important;
	border: 1px solid transparent !important;
}

#tq-header .tq-search-result-item:hover {
	background: #f2faf1 !important;
	border-color: rgba(19, 138, 98, 0.12) !important;
}

#tq-header .tq-search-result-media {
	width: 64px !important;
	height: 64px !important;
	min-width: 64px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	border-radius: 18px !important;
	background: #eef9ef !important;
}

#tq-header .tq-search-result-media img {
	width: 64px !important;
	height: 64px !important;
	max-width: 64px !important;
	max-height: 64px !important;
	object-fit: cover !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

#tq-header .tq-search-fallback-icon {
	font-size: 30px !important;
	line-height: 1 !important;
}

#tq-header .tq-search-result-text {
	display: block !important;
	min-width: 0 !important;
}

#tq-header .tq-search-result-text strong {
	display: block !important;
	margin: 0 0 5px !important;
	color: #173b2f !important;
	font-size: 16px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

#tq-header .tq-search-result-text small {
	display: block !important;
	color: #6a887c !important;
	font-size: 13px !important;
	line-height: 1.4 !important;
	font-weight: 600 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
}

#tq-header .tq-search-empty,
#tq-header .tq-search-loading {
	padding: 14px 16px !important;
	color: #557166 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

/* Mobile */
@media (max-width: 900px) {
	#tq-header .tq-header-search.tq-header-ajax-search .tq-search-results {
		min-width: 0 !important;
		top: calc(100% + 8px) !important;
		border-radius: 20px !important;
	}

	#tq-header .tq-search-result-item {
		grid-template-columns: 58px 1fr !important;
		min-height: 72px !important;
		padding: 9px 12px !important;
	}

	#tq-header .tq-search-result-media,
	#tq-header .tq-search-result-media img {
		width: 58px !important;
		height: 58px !important;
		max-width: 58px !important;
		max-height: 58px !important;
		min-width: 58px !important;
	}
}


/* TreeQuest Baumarten-Profil – erster Template-Test */

.tq-species-single {
	background: #f4f8ef;
	min-height: 70vh;
	padding: 60px 20px;
}

.tq-species-placeholder {
	max-width: 1180px;
	margin: 0 auto;
	background: #ffffff;
	border-radius: 28px;
	padding: 48px;
	box-shadow: 0 18px 50px rgba(22, 58, 39, 0.12);
}

.tq-species-placeholder-inner {
	max-width: 780px;
}

.tq-species-kicker {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #2f7d4b;
}

.tq-species-placeholder h1 {
	margin: 0;
	font-size: clamp(36px, 5vw, 72px);
	line-height: 1.02;
	color: #17351f;
}

.tq-species-latin {
	margin: 12px 0 22px;
	font-size: 22px;
	font-style: italic;
	color: #5f6f63;
}

.tq-species-placeholder p {
	font-size: 18px;
	line-height: 1.65;
	color: #425044;
}


/* =========================================================
   TREEQUEST SCHÜLER-DASHBOARD LESBARKEIT FIX
   Fix gegen zu kleine rem-Schrift aus Theme/ListingPro
========================================================= */

.tq-student-box,
.tq-student-dashboard {
	font-size: 16px !important;
	line-height: 1.5 !important;
	color: #1e293b !important;
}

.tq-student-box p,
.tq-student-dashboard p,
.tq-student-box li,
.tq-student-dashboard li,
.tq-student-box label,
.tq-student-dashboard label,
.tq-student-box input,
.tq-student-dashboard input,
.tq-student-box select,
.tq-student-dashboard select,
.tq-student-box textarea,
.tq-student-dashboard textarea,
.tq-student-box button,
.tq-student-dashboard button,
.tq-student-box a,
.tq-student-dashboard a {
	font-size: 16px !important;
	line-height: 1.5 !important;
}

.tq-student-box h2,
.tq-student-dashboard h2 {
	font-size: 28px !important;
	line-height: 1.25 !important;
}

.tq-student-card h3,
.tq-student-section h3 {
	font-size: 20px !important;
	line-height: 1.3 !important;
}

.tq-muted {
	font-size: 15px !important;
	line-height: 1.5 !important;
}

.tq-muted-small,
.tq-student-table small,
.tq-earned-badge small,
.tq-achievement-head small {
	font-size: 13px !important;
	line-height: 1.4 !important;
}

.tq-kpi-value {
	font-size: 32px !important;
	line-height: 1 !important;
}

.tq-kpi-label {
	font-size: 14px !important;
	line-height: 1.35 !important;
}

.tq-mini-stats span,
.tq-channel-pill,
.tq-status {
	font-size: 14px !important;
	line-height: 1.35 !important;
}

.tq-student-table {
	font-size: 15px !important;
	line-height: 1.45 !important;
}

.tq-student-table th {
	font-size: 14px !important;
	line-height: 1.35 !important;
}

.tq-student-table td {
	font-size: 15px !important;
	line-height: 1.45 !important;
}

.tq-achievement-card,
.tq-earned-badge,
.tq-quest-mini {
	font-size: 15px !important;
	line-height: 1.45 !important;
}

.tq-btn-primary,
.tq-btn-outline {
	font-size: 16px !important;
	line-height: 1.35 !important;
}


/* =========================================================
   TREEQUEST DETEKTIVQUEST LESBARKEIT FIX
   Baumart bestimmen / tq_unknown_tree_quest
========================================================= */

.tq-unknown-tree-quest,
.tq-tree-quest,
.tq-quest-wrapper,
.tq-quest-shortcode,
.tq-quest-page,
.tq-quest-form {
	font-size: 16px !important;
	line-height: 1.5 !important;
	color: #1e293b !important;
}

.tq-unknown-tree-quest *,
.tq-tree-quest *,
.tq-quest-wrapper *,
.tq-quest-shortcode *,
.tq-quest-page *,
.tq-quest-form * {
	box-sizing: border-box !important;
}

.tq-unknown-tree-quest p,
.tq-tree-quest p,
.tq-quest-wrapper p,
.tq-quest-shortcode p,
.tq-quest-page p,
.tq-quest-form p,
.tq-unknown-tree-quest li,
.tq-tree-quest li,
.tq-quest-wrapper li,
.tq-quest-shortcode li,
.tq-quest-page li,
.tq-quest-form li,
.tq-unknown-tree-quest label,
.tq-tree-quest label,
.tq-quest-wrapper label,
.tq-quest-shortcode label,
.tq-quest-page label,
.tq-quest-form label {
	font-size: 16px !important;
	line-height: 1.5 !important;
}

.tq-unknown-tree-quest small,
.tq-tree-quest small,
.tq-quest-wrapper small,
.tq-quest-shortcode small,
.tq-quest-page small,
.tq-quest-form small,
.tq-quest-meta,
.tq-quest-hint,
.tq-quest-note,
.tq-quest-distance,
.tq-quest-code,
.tq-mini-meta {
	font-size: 14px !important;
	line-height: 1.45 !important;
}

.tq-unknown-tree-quest h1,
.tq-tree-quest h1,
.tq-quest-wrapper h1,
.tq-quest-shortcode h1,
.tq-quest-page h1,
.tq-quest-form h1 {
	font-size: 30px !important;
	line-height: 1.2 !important;
	font-weight: 900 !important;
}

.tq-unknown-tree-quest h2,
.tq-tree-quest h2,
.tq-quest-wrapper h2,
.tq-quest-shortcode h2,
.tq-quest-page h2,
.tq-quest-form h2 {
	font-size: 24px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
}

.tq-unknown-tree-quest h3,
.tq-tree-quest h3,
.tq-quest-wrapper h3,
.tq-quest-shortcode h3,
.tq-quest-page h3,
.tq-quest-form h3 {
	font-size: 20px !important;
	line-height: 1.3 !important;
	font-weight: 900 !important;
}

.tq-unknown-tree-quest button,
.tq-tree-quest button,
.tq-quest-wrapper button,
.tq-quest-shortcode button,
.tq-quest-page button,
.tq-quest-form button,
.tq-unknown-tree-quest .tq-btn,
.tq-tree-quest .tq-btn,
.tq-quest-wrapper .tq-btn,
.tq-quest-shortcode .tq-btn,
.tq-quest-page .tq-btn,
.tq-quest-form .tq-btn,
.tq-unknown-tree-quest a[class*="btn"],
.tq-tree-quest a[class*="btn"],
.tq-quest-wrapper a[class*="btn"],
.tq-quest-shortcode a[class*="btn"],
.tq-quest-page a[class*="btn"],
.tq-quest-form a[class*="btn"] {
	font-size: 16px !important;
	line-height: 1.35 !important;
	font-weight: 800 !important;
}

.tq-unknown-tree-quest input,
.tq-tree-quest input,
.tq-quest-wrapper input,
.tq-quest-shortcode input,
.tq-quest-page input,
.tq-quest-form input,
.tq-unknown-tree-quest textarea,
.tq-tree-quest textarea,
.tq-quest-wrapper textarea,
.tq-quest-shortcode textarea,
.tq-quest-page textarea,
.tq-quest-form textarea,
.tq-unknown-tree-quest select,
.tq-tree-quest select,
.tq-quest-wrapper select,
.tq-quest-shortcode select,
.tq-quest-page select,
.tq-quest-form select {
	font-size: 16px !important;
	line-height: 1.45 !important;
}


/* =========================================================
   TREEQUEST BAUM-DETEKTIVQUEST LESBARKEIT FIX
   Seite: /baum-detektivquest/
========================================================= */

.page-id-26895 .tq-quest-wrap {
	max-width: 1120px !important;
	margin: 2rem auto !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
	font-size: 16px !important;
	line-height: 1.5 !important;
	color: #1e293b !important;
}

.page-id-26895 .tq-quest-wrap *,
.page-id-26895 .tq-quest-wrap *::before,
.page-id-26895 .tq-quest-wrap *::after {
	box-sizing: border-box !important;
}

.page-id-26895 .tq-quest-wrap h2 {
	margin: 0 0 .75rem !important;
	color: #1e293b !important;
	font-size: 30px !important;
	line-height: 1.2 !important;
	font-weight: 900 !important;
}

.page-id-26895 .tq-quest-wrap h3 {
	margin: 0 0 .45rem !important;
	color: #1e293b !important;
	font-size: 22px !important;
	line-height: 1.3 !important;
	font-weight: 900 !important;
}

.page-id-26895 .tq-quest-wrap h4 {
	margin: 0 0 .85rem !important;
	color: #1e293b !important;
	font-size: 20px !important;
	line-height: 1.3 !important;
	font-weight: 900 !important;
}

.page-id-26895 .tq-quest-wrap p,
.page-id-26895 .tq-quest-wrap li,
.page-id-26895 .tq-quest-wrap div,
.page-id-26895 .tq-quest-wrap span {
	font-size: 16px !important;
	line-height: 1.5 !important;
}

.page-id-26895 .tq-muted,
.page-id-26895 .tq-quest-wrap .tq-muted,
.page-id-26895 .tq-quest-wrap small,
.page-id-26895 .tq-quest-card summary small,
.page-id-26895 .tq-quest-card summary span em,
.page-id-26895 .tq-address-lines,
.page-id-26895 .tq-gps-info {
	font-size: 14px !important;
	line-height: 1.45 !important;
	color: #64748b !important;
}

.page-id-26895 .tq-quest-student-info,
.page-id-26895 .tq-run-description,
.page-id-26895 .tq-location-meta,
.page-id-26895 .tq-task-box,
.page-id-26895 .tq-safety-box,
.page-id-26895 .tq-form-section,
.page-id-26895 .tq-quest-box,
.page-id-26895 .tq-quest-card {
	font-size: 16px !important;
	line-height: 1.5 !important;
}

.page-id-26895 .tq-quest-card summary {
	font-size: 18px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	color: #1e293b !important;
}

.page-id-26895 .tq-quest-card summary > span {
	font-size: 18px !important;
	line-height: 1.35 !important;
}

.page-id-26895 .tq-run-badge {
	font-size: 14px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	padding: .4rem .8rem !important;
}

.page-id-26895 .tq-task-box strong,
.page-id-26895 .tq-safety-box strong,
.page-id-26895 .tq-location-meta strong {
	font-size: 16px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
}

.page-id-26895 .tq-task-box p,
.page-id-26895 .tq-safety-box p {
	font-size: 15px !important;
	line-height: 1.5 !important;
}

.page-id-26895 .tq-map-link {
	font-size: 15px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	padding: .55rem .9rem !important;
}

.page-id-26895 .tq-form-section label {
	display: block !important;
	font-size: 15px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	color: #334155 !important;
	margin: .75rem 0 .3rem !important;
}

.page-id-26895 .tq-form-section input[type="text"],
.page-id-26895 .tq-form-section input[type="file"],
.page-id-26895 .tq-form-section select,
.page-id-26895 .tq-form-section textarea {
	width: 100% !important;
	box-sizing: border-box !important;
	padding: .75rem .85rem !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 9px !important;
	background: #fff !important;
	font-size: 16px !important;
	line-height: 1.45 !important;
	color: #1e293b !important;
}

.page-id-26895 .tq-btn,
.page-id-26895 .tq-get-gps,
.page-id-26895 .tq-btn-primary {
	font-size: 16px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	padding: .75rem 1rem !important;
}

.page-id-26895 .tq-btn-primary {
	width: 100% !important;
}

.page-id-26895 .tq-quest-notice {
	font-size: 15px !important;
	line-height: 1.45 !important;
	font-weight: 800 !important;
}

/* =========================================================
   BAUM DER WOCHE
========================================================= */

.tq-homepage .tq-week-tree {
	margin: 28px 0 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-week-tree-card {
	position: relative !important;
	display: grid !important;
	grid-template-columns: minmax(290px, 0.82fr) minmax(0, 1.18fr) !important;
	gap: 28px !important;
	align-items: stretch !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 30px !important;
	border-radius: 28px !important;
	background:
		radial-gradient(circle at right top, rgba(19, 138, 98, 0.12), transparent 32%),
		linear-gradient(135deg, #ffffff 0%, #f4fbf2 58%, #eef9ef 100%) !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 18px 50px rgba(15, 72, 53, 0.08) !important;
	overflow: hidden !important;
}

.tq-homepage .tq-week-tree-card::before {
	content: "" !important;
	position: absolute !important;
	right: -70px !important;
	top: -80px !important;
	width: 190px !important;
	height: 190px !important;
	border-radius: 999px !important;
	background: rgba(19, 138, 98, 0.08) !important;
	pointer-events: none !important;
}

.tq-homepage .tq-week-tree-media {
	position: relative !important;
	z-index: 1 !important;
	width: 100% !important;
	min-height: 310px !important;
	border-radius: 22px !important;
	overflow: hidden !important;
	background: #eef9ef !important;
	border: 1px solid rgba(19, 138, 98, 0.12) !important;
	box-shadow: 0 14px 36px rgba(15, 72, 53, 0.08) !important;
}

.tq-homepage .tq-week-tree-media img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 310px !important;
	object-fit: cover !important;
	object-position: center center !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.tq-homepage .tq-week-tree-icon {
	position: absolute !important;
	left: 50% !important;
	top: 50% !important;
	transform: translate(-50%, -50%) !important;
	width: 132px !important;
	height: 132px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 30px !important;
	background: #ffffff !important;
	font-size: 64px !important;
	line-height: 1 !important;
	box-shadow: 0 16px 38px rgba(15, 72, 53, 0.12) !important;
}

.tq-homepage .tq-week-tree-body {
	position: relative !important;
	z-index: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 4px 2px !important;
}

.tq-homepage .tq-week-tree-kicker {
	display: block !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	color: #138a62 !important;
	background: transparent !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	border-radius: 0 !important;
}

.tq-homepage .tq-week-tree-title {
	margin: 0 0 8px !important;
	padding: 0 !important;
	color: #16392d !important;
	font-size: clamp(34px, 3.4vw, 34px) !important;
	line-height: 1.08 !important;
	font-weight: 900 !important;
	letter-spacing: -0.035em !important;
}

.tq-homepage .tq-week-tree-latin {
	margin: 0 0 16px !important;
	padding: 0 !important;
	color: #6a887c !important;
	font-size: 17px !important;
	line-height: 1.45 !important;
	font-weight: 600 !important;
	font-style: italic !important;
}

.tq-homepage .tq-week-tree-text {
	margin: 0 !important;
	padding: 0 !important;
	color: #4c6b5f !important;
	font-size: 18px !important;
	line-height: 1.65 !important;
	font-weight: 500 !important;
	max-width: 760px !important;
}

.tq-homepage .tq-week-tree-features {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	margin: 22px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.tq-homepage .tq-week-tree-features li {
	display: inline-flex !important;
	align-items: center !important;
	gap: 9px !important;
	min-height: 38px !important;
	margin: 0 !important;
	padding: 9px 14px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	border: 1px solid rgba(19, 138, 98, 0.14) !important;
	color: #173b2f !important;
	font-size: 15px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-week-tree-features li::before {
	content: "✓" !important;
	width: 22px !important;
	height: 22px !important;
	min-width: 22px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 999px !important;
	background: #138a62 !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
}

.tq-homepage .tq-week-tree-tip {
	display: block !important;
	margin: 20px 0 0 !important;
	padding: 16px 18px !important;
	border-radius: 18px !important;
	background: rgba(19, 138, 98, 0.08) !important;
	border: 1px solid rgba(19, 138, 98, 0.13) !important;
	color: #4c6b5f !important;
	font-size: 16px !important;
	line-height: 1.58 !important;
	font-weight: 600 !important;
}

.tq-homepage .tq-week-tree-tip strong {
	color: #16392d !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-week-tree-tip span {
	color: #4c6b5f !important;
	font-size: 16px !important;
	line-height: 1.58 !important;
	font-weight: 600 !important;
}

.tq-homepage .tq-week-tree-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 24px 0 0 !important;
	padding: 0 !important;
}

.tq-homepage .tq-week-tree-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 50px !important;
	padding: 0 24px !important;
	border-radius: 999px !important;
	background: #138a62 !important;
	color: #ffffff !important;
	border: 1px solid #138a62 !important;
	box-shadow: 0 14px 34px rgba(19, 138, 98, 0.25) !important;
	font-size: 16px !important;
	line-height: 50px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
}

.tq-homepage .tq-week-tree-button:hover {
	background: #0f7654 !important;
	color: #ffffff !important;
	text-decoration: none !important;
	transform: translateY(-1px) !important;
}

/* Alte Wochenbaum-Klassen neutralisieren, falls noch gecacht */
.tq-homepage .tq-tree-week-secondary {
	display: none !important;
}

@media (max-width: 980px) {
	.tq-homepage .tq-week-tree-card {
		grid-template-columns: 1fr !important;
		padding: 24px !important;
		border-radius: 26px !important;
	}

	.tq-homepage .tq-week-tree-media,
	.tq-homepage .tq-week-tree-media img {
		min-height: 320px !important;
	}

	.tq-homepage .tq-week-tree-title {
		font-size: clamp(32px, 5vw, 44px) !important;
	}
}

@media (max-width: 640px) {
	.tq-homepage .tq-week-tree {
		margin-top: 22px !important;
	}

	.tq-homepage .tq-week-tree-card {
		padding: 18px !important;
		border-radius: 24px !important;
	}

	.tq-homepage .tq-week-tree-media,
	.tq-homepage .tq-week-tree-media img {
		min-height: 260px !important;
	}

	.tq-homepage .tq-week-tree-kicker {
		font-size: 13px !important;
	}

	.tq-homepage .tq-week-tree-title {
		font-size: 22px !important;
		line-height: 1.08 !important;
	}

	.tq-homepage .tq-week-tree-latin {
		font-size: 15px !important;
	}

	.tq-homepage .tq-week-tree-text {
		font-size: 16px !important;
		line-height: 1.6 !important;
	}

	.tq-homepage .tq-week-tree-features li {
		width: 100% !important;
		font-size: 15px !important;
	}

	.tq-homepage .tq-week-tree-tip,
	.tq-homepage .tq-week-tree-tip span {
		font-size: 15px !important;
	}

	.tq-homepage .tq-week-tree-button {
		width: 100% !important;
		min-height: 50px !important;
	}
}


.tq-homepage .tq-week-tree-tip strong {
	display: block !important;
	margin: 0 0 7px !important;
	color: #16392d !important;
	font-weight: 900 !important;
}

.tq-homepage .tq-week-tree-tip span {
	display: block !important;
	color: #4c6b5f !important;
	font-size: 16px !important;
	line-height: 1.65 !important;
	font-weight: 600 !important;
}

/* =========================================================
   TREEQUEST HEADER NAVIGATION FINAL
   Header-CSS aus header.php in style.css verschoben.
   Muss nach den älteren Header-Regeln stehen.
========================================================= */

#tq-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 999999 !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: rgba(255, 255, 255, 0.97) !important;
	border-bottom: 1px solid rgba(19, 138, 98, 0.14) !important;
	box-shadow: 0 8px 30px rgba(15, 72, 53, 0.08) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
}

#tq-header,
#tq-header * {
	box-sizing: border-box !important;
}

#tq-header .tq-header-inner {
	width: 100% !important;
	max-width: 1440px !important;
	min-height: 86px !important;
	margin: 0 auto !important;
	padding: 8px 24px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 22px !important;
}

#tq-header .tq-logo {
	display: flex !important;
	align-items: center !important;
	flex: 0 0 260px !important;
	width: 260px !important;
	max-width: 260px !important;
	height: 60px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	text-decoration: none !important;
}

#tq-header .tq-logo-img {
	display: block !important;
	width: 260px !important;
	max-width: 260px !important;
	height: auto !important;
	max-height: 80px !important;
	object-fit: contain !important;
	object-position: left center !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* Header-Suche */
#tq-header .tq-header-search {
	position: relative !important;
	flex: 1 1 auto !important;
	max-width: 620px !important;
	height: 46px !important;
	display: flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	background: #f2faf1 !important;
	border: 1px solid #d6ead8 !important;
	border-radius: 999px !important;
	overflow: visible !important;
	box-shadow: none !important;
}

#tq-header .tq-header-search input[type="search"] {
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 160px !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 18px !important;
	border: 0 !important;
	border-radius: 999px 0 0 999px !important;
	background: transparent !important;
	color: #173b2f !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	line-height: 46px !important;
	outline: none !important;
	box-shadow: none !important;
}

#tq-header .tq-header-search input::placeholder {
	color: #6a887c !important;
}

#tq-header .tq-header-search button[type="submit"] {
	flex: 0 0 auto !important;
	height: 46px !important;
	margin: 0 !important;
	padding: 0 24px !important;
	border: 0 !important;
	border-radius: 0 999px 999px 0 !important;
	background: #138a62 !important;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	line-height: 46px !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

#tq-header .tq-header-search button[type="submit"]:hover {
	background: #0f7654 !important;
}

#tq-header .tq-search-results {
	position: absolute !important;
	top: calc(100% + 8px) !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 1000000 !important;
}

/* Header-Actions */
#tq-header .tq-header-actions {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	gap: 12px !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

#tq-header .tq-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 44px !important;
	min-height: 44px !important;
	margin: 0 !important;
	padding: 0 18px !important;
	border-radius: 999px !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	line-height: 44px !important;
	text-decoration: none !important;
	white-space: nowrap !important;
	box-shadow: none !important;
}

#tq-header .tq-btn-primary {
	background: #138a62 !important;
	color: #ffffff !important;
	border: 1px solid #138a62 !important;
}

#tq-header .tq-btn-primary:hover {
	background: #0f7654 !important;
	color: #ffffff !important;
}

#tq-header .tq-btn-secondary {
	background: #ffffff !important;
	color: #0b7f86 !important;
	border: 1px solid #cfe6e5 !important;
}

#tq-header .tq-btn-secondary:hover {
	background: #effafa !important;
	color: #08666c !important;
}

/* Hauptnavigation */
#tq-header .tq-nav-shell {
	width: 100% !important;
	border-top: 1px solid rgba(19, 138, 98, 0.10) !important;
	background: rgba(247, 252, 246, 0.88) !important;
}

#tq-header .tq-main-nav {
	width: 100% !important;
	max-width: 1440px !important;
	margin: 0 auto !important;
	padding: 0 24px !important;
}

#tq-header .tq-main-menu,
#tq-header .tq-main-menu ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

#tq-header .tq-main-menu {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 4px !important;
	min-height: 48px !important;
}

#tq-header .tq-main-menu > li {
	position: relative !important;
	margin: 0 !important;
	padding: 0 !important;
}

#tq-header .tq-main-menu > li > a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 40px !important;
	padding: 0 15px !important;
	border-radius: 999px !important;
	color: #173b2f !important;
	font-size: 15px !important;
	font-weight: 850 !important;
	line-height: 40px !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

#tq-header .tq-main-menu > li > a:hover,
#tq-header .tq-main-menu > li.current-menu-item > a,
#tq-header .tq-main-menu > li.current-menu-ancestor > a {
	background: #e8f7e5 !important;
	color: #0f7654 !important;
}

/* Dropdowns Desktop */
#tq-header .tq-main-menu .sub-menu {
	position: absolute !important;
	top: calc(100% + 8px) !important;
	left: 0 !important;
	z-index: 1000001 !important;
	display: none !important;
	min-width: 230px !important;
	padding: 8px !important;
	background: #ffffff !important;
	border: 1px solid rgba(19, 138, 98, 0.16) !important;
	border-radius: 18px !important;
	box-shadow: 0 18px 45px rgba(15, 72, 53, 0.16) !important;
}

#tq-header .tq-main-menu li:hover > .sub-menu,
#tq-header .tq-main-menu li:focus-within > .sub-menu {
	display: block !important;
}

#tq-header .tq-main-menu .sub-menu li {
	position: relative !important;
	margin: 0 !important;
	padding: 0 !important;
}

#tq-header .tq-main-menu .sub-menu a {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-height: 40px !important;
	padding: 9px 12px !important;
	border-radius: 12px !important;
	color: #173b2f !important;
	font-size: 14px !important;
	font-weight: 750 !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

#tq-header .tq-main-menu .sub-menu a:hover {
	background: #eef8ec !important;
	color: #0f7654 !important;
}

#tq-header .tq-main-menu .sub-menu .sub-menu {
	top: 0 !important;
	left: calc(100% + 8px) !important;
}

/* Burger */
#tq-header .tq-mobile-menu-toggle {
	display: none !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid #cfe6e5 !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #173b2f !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

#tq-header .tq-mobile-menu-toggle span[aria-hidden="true"] {
	position: relative !important;
	display: block !important;
	width: 20px !important;
	height: 2px !important;
	background: #173b2f !important;
	border-radius: 999px !important;
}

#tq-header .tq-mobile-menu-toggle span[aria-hidden="true"]::before,
#tq-header .tq-mobile-menu-toggle span[aria-hidden="true"]::after {
	content: "" !important;
	position: absolute !important;
	left: 0 !important;
	width: 20px !important;
	height: 2px !important;
	background: #173b2f !important;
	border-radius: 999px !important;
}

#tq-header .tq-mobile-menu-toggle span[aria-hidden="true"]::before {
	top: -7px !important;
}

#tq-header .tq-mobile-menu-toggle span[aria-hidden="true"]::after {
	top: 7px !important;
}

#tq-header.is-menu-open .tq-mobile-menu-toggle span[aria-hidden="true"] {
	background: transparent !important;
}

#tq-header.is-menu-open .tq-mobile-menu-toggle span[aria-hidden="true"]::before {
	top: 0 !important;
	transform: rotate(45deg) !important;
}

#tq-header.is-menu-open .tq-mobile-menu-toggle span[aria-hidden="true"]::after {
	top: 0 !important;
	transform: rotate(-45deg) !important;
}

/* Header responsive */
@media (max-width: 1100px) {
	#tq-header .tq-header-inner {
		gap: 14px !important;
	}

	#tq-header .tq-logo {
		flex: 0 0 210px !important;
		width: 210px !important;
		max-width: 210px !important;
	}

	#tq-header .tq-logo-img {
		width: 210px !important;
		max-width: 210px !important;
	}

	#tq-header .tq-main-menu > li > a {
		padding: 0 11px !important;
		font-size: 14px !important;
	}
}

@media (max-width: 900px) {
	#tq-header .tq-header-inner {
		flex-wrap: wrap !important;
		gap: 10px !important;
		min-height: auto !important;
		padding: 8px 14px !important;
	}

	#tq-header .tq-logo {
		flex: 0 0 180px !important;
		width: 180px !important;
		max-width: 180px !important;
		height: 46px !important;
	}

	#tq-header .tq-logo-img {
		width: 180px !important;
		max-width: 180px !important;
		max-height: 46px !important;
	}

	#tq-header .tq-mobile-menu-toggle {
		display: inline-flex !important;
		order: 2 !important;
	}

	#tq-header .tq-header-actions {
		margin-left: auto !important;
		order: 1 !important;
	}

	#tq-header .tq-header-search {
		order: 4 !important;
		width: 100% !important;
		max-width: none !important;
		flex: 1 1 100% !important;
		height: 42px !important;
	}

	#tq-header .tq-header-search input[type="search"] {
		height: 42px !important;
		line-height: 42px !important;
		font-size: 14px !important;
	}

	#tq-header .tq-header-search button[type="submit"] {
		height: 42px !important;
		line-height: 42px !important;
		font-size: 14px !important;
		padding: 0 16px !important;
	}

	#tq-header .tq-btn {
		height: 38px !important;
		min-height: 38px !important;
		line-height: 38px !important;
		padding: 0 13px !important;
		font-size: 14px !important;
	}

	#tq-header .tq-nav-shell {
		display: none !important;
		border-top: 1px solid rgba(19, 138, 98, 0.12) !important;
		background: #ffffff !important;
	}

	#tq-header.is-menu-open .tq-nav-shell {
		display: block !important;
	}

	#tq-header .tq-main-nav {
		padding: 10px 14px 14px !important;
	}

	#tq-header .tq-main-menu {
		display: block !important;
		min-height: 0 !important;
	}

	#tq-header .tq-main-menu > li {
		border-bottom: 1px solid rgba(19, 138, 98, 0.10) !important;
	}

	#tq-header .tq-main-menu > li:last-child {
		border-bottom: 0 !important;
	}

	#tq-header .tq-main-menu > li > a {
		justify-content: flex-start !important;
		width: 100% !important;
		min-height: 44px !important;
		padding: 0 12px !important;
		border-radius: 12px !important;
		font-size: 15px !important;
	}

	#tq-header .tq-main-menu .sub-menu {
		position: static !important;
		display: block !important;
		min-width: 0 !important;
		width: 100% !important;
		margin: 0 0 8px !important;
		padding: 0 0 0 14px !important;
		background: transparent !important;
		border: 0 !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	#tq-header .tq-main-menu .sub-menu a {
		min-height: 36px !important;
		padding: 7px 12px !important;
		font-size: 14px !important;
		white-space: normal !important;
	}

	#tq-header .tq-main-menu .sub-menu .sub-menu {
		position: static !important;
		margin-left: 10px !important;
	}
}

@media (max-width: 520px) {
	#tq-header .tq-logo {
		flex: 0 0 155px !important;
		width: 155px !important;
		max-width: 155px !important;
	}

	#tq-header .tq-logo-img {
		width: 155px !important;
		max-width: 155px !important;
	}

	#tq-header .tq-btn-secondary {
		display: none !important;
	}

	#tq-header .tq-header-search input[type="search"] {
		font-size: 13px !important;
		padding: 0 12px !important;
	}

	#tq-header .tq-header-search button[type="submit"] {
		padding: 0 13px !important;
	}
}

@media (max-width: 390px) {
	#tq-header .tq-logo {
		flex: 0 0 140px !important;
		width: 140px !important;
		max-width: 140px !important;
	}

	#tq-header .tq-logo-img {
		width: 140px !important;
		max-width: 140px !important;
	}
}
/* =========================================================
   TREEQUEST HEADER NAV FORCE LEFT
========================================================= */

#tq-header .tq-main-nav {
	display: flex !important;
	justify-content: flex-start !important;
	align-items: center !important;
	text-align: left !important;
}

#tq-header .tq-main-menu {
	justify-content: flex-start !important;
	margin-left: 0 !important;
	margin-right: auto !important;
}

#tq-header .tq-nav-shell {
	text-align: left !important;
}