:root {
	--brand: #0ea5e9;
	--brand2: #10b981;

	--text: #0f172a;
	--muted: #64748b;

	--card: rgba(255, 255, 255, 0.72);
	--card2: rgba(255, 255, 255, 0.68);

	--border: rgba(148, 163, 184, 0.35);

	--shadow: 0 18px 50px rgba(2, 6, 23, 0.12);
	--shadow2: 0 10px 30px rgba(2, 6, 23, 0.1);

	--radius: 12px;
	--radius-sm: 8px;

	--focus: 0 0 0 4px rgba(14, 165, 233, 0.18);
}

* {
	font-family:
		Inter,
		system-ui,
		-apple-system,
		Segoe UI,
		Roboto,
		Arial,
		sans-serif;
	box-sizing: border-box;
}

html,
body {
	height: 100%;
}

body {
	color: var(--text);
	min-height: 100vh;

	background:
		radial-gradient(
			1400px 800px at 15% 10%,
			rgba(14, 165, 233, 0.18),
			transparent 60%
		),
		radial-gradient(
			1400px 800px at 85% 15%,
			rgba(16, 185, 129, 0.16),
			transparent 60%
		),
		radial-gradient(
			1200px 700px at 50% 85%,
			rgba(99, 102, 241, 0.12),
			transparent 60%
		),
		linear-gradient(180deg, #f8fafc, #f1f5f9);

	background-repeat: no-repeat;
	background-attachment: fixed;
	background-size: cover;
}

img {
	max-width: 100%;
	display: block;
}

a {
	color: inherit;
}

:focus-visible {
	outline: none;
	box-shadow: var(--focus);
	border-radius: 10px;
}

.container-xl {
	padding-left: 16px;
	padding-right: 16px;
}
@media (min-width: 992px) {
	.container-xl {
		padding-left: 0;
		padding-right: 0;
	}
}

.topbar {
	position: sticky;
	top: 0;
	z-index: 50;

	background: rgba(255, 255, 255, 0.78);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);

	border-bottom: 1px solid var(--border);
}

.topbar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;

	padding: 0.75rem 0;
	gap: 0.85rem;
}

.brand {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	text-decoration: none;
	color: var(--text);

	min-width: 0;
}

.brand-logo {
	width: 42px;
	height: 42px;
	flex: 0 0 auto;
}

.brand-text {
	min-width: 0;
}

.brand-name {
	font-weight: 800;
	letter-spacing: -0.02em;
	line-height: 1.05;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.brand-sub {
	font-size: 0.85rem;
	color: var(--muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.navlinks {
	display: flex;
	gap: 1.1rem;
	align-items: center;
}

.navlinks a {
	color: var(--text);
	text-decoration: none;
	opacity: 0.82;
	font-weight: 700;
	font-size: 0.95rem;
	position: relative;
	padding: 0.25rem 0;
}

.navlinks a:hover {
	opacity: 1;
}

.navlinks a.active {
	opacity: 1;
}

.navlinks a.active::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -10px;
	height: 2px;
	border-radius: 2px;
	background: linear-gradient(90deg, var(--brand), var(--brand2));
}

.topbar-right {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	flex: 0 0 auto;
}

.lang {
	display: flex;
	gap: 0.4rem;
	align-items: center;
}

.lang-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;

	padding: 0.38rem 0.55rem;
	border-radius: 999px;

	border: 1px solid var(--border);
	background: rgba(255, 255, 255, 0.65);
	text-decoration: none;
	color: var(--text);

	font-weight: 800;
	font-size: 0.82rem;
	line-height: 1;

	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		border-color 0.12s ease;
}

.lang-btn img {
	width: 18px;
	height: 13px;
	border-radius: 3px;
}

.lang-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 8px 20px rgba(2, 6, 23, 0.08);
}

.lang-btn.on {
	border-color: rgba(14, 165, 233, 0.55);
	box-shadow: 0 10px 24px rgba(14, 165, 233, 0.12);
}

.burger {
	display: none;

	border-radius: 12px;
	border: 1px solid var(--border);
	background: rgba(255, 255, 255, 0.7);

	padding: 0.48rem 0.7rem;

	box-shadow: 0 8px 22px rgba(2, 6, 23, 0.08);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		border-color 0.12s ease;
}

.burger:hover {
	transform: translateY(-1px);
	border-color: rgba(14, 165, 233, 0.45);
	box-shadow: 0 10px 26px rgba(2, 6, 23, 0.1);
}

.mobile-nav {
	display: none;
	padding: 0.9rem 0 1rem;

	border-top: 1px solid var(--border);

	background: rgba(255, 255, 255, 0.75);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);

	box-shadow: 0 18px 40px rgba(2, 6, 23, 0.1);
	border-bottom-left-radius: 16px;
	border-bottom-right-radius: 16px;
}

.mobile-nav a {
	display: flex;
	align-items: center;
	justify-content: space-between;

	padding: 0.65rem 0.2rem;
	text-decoration: none;
	color: var(--text);
	opacity: 0.92;
	font-weight: 750;

	border-radius: 10px;
	transition:
		background 0.12s ease,
		opacity 0.12s ease;
}

.mobile-nav a:hover {
	background: rgba(15, 23, 42, 0.05);
	opacity: 1;
}

@media (max-width: 992px) {
	.navlinks {
		display: none;
	}

	.burger {
		display: inline-flex;
		align-items: center;
		justify-content: center;
	}

	.mobile-nav.show {
		display: block;
	}

	.brand-logo {
		width: 38px;
		height: 38px;
	}

	.brand-sub {
		display: none;
	}
}

@media (max-width: 420px) {
	.lang-btn {
		padding: 0.38rem 0.5rem;
	}
	.lang-btn span {
		display: none;
	}
}

.hero-premium {
	border: 1px solid var(--border);
	background: var(--card);
	box-shadow: var(--shadow2);
	padding: 1.25rem;
	border-radius: var(--radius);
}

.hero-top {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 1rem;
}

.hero-title {
	font-size: 1.85rem;
	font-weight: 900;
	letter-spacing: -0.03em;
	margin: 0;
}

.hero-sub {
	color: var(--muted);
}

.badge-soft {
	border: 1px solid var(--border);
	background: rgba(15, 23, 42, 0.05);
	color: var(--text);
	padding: 0.35rem 0.6rem;
	font-weight: 800;
	border-radius: 999px;
}

.hero-grid {
	margin-top: 1rem;
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: 1rem;
}

.hero-note {
	border: 1px solid var(--border);
	background: var(--card2);
	padding: 1rem;
	border-radius: var(--radius);
}

@media (max-width: 992px) {
	.hero-top {
		flex-direction: column;
		align-items: flex-start;
	}
	.hero-title {
		font-size: 1.6rem;
	}
	.hero-grid {
		grid-template-columns: 1fr;
	}
}

.kpi-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.75rem;
}

.kpi {
	border: 1px solid var(--border);
	background: var(--card2);
	box-shadow: var(--shadow2);
	position: relative;
	overflow: hidden;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;

	padding: 0.95rem 1rem;
	min-height: 92px;
	border-radius: var(--radius);
}

.kpi-label {
	width: 100%;
	text-align: center;
	margin-bottom: 0.2rem;
	font-size: 0.85rem;
	color: var(--muted);
	font-weight: 800;
}

.kpi-val {
	width: 100%;
	text-align: center;
	font-size: 1.25rem;
	font-weight: 900;
	font-variant-numeric: tabular-nums;
}

.kpi-ico {
	position: absolute;
	right: 0.7rem;
	top: 0.7rem;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 14px;

	background: rgba(14, 165, 233, 0.1);
	border: 1px solid rgba(14, 165, 233, 0.22);
	color: var(--brand);
}

@keyframes floatUp {
	0%,
	100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-2px);
	}
}

@media (max-width: 992px) {
	.kpi-row {
		grid-template-columns: repeat(2, 1fr);
	}
}

.filter-bar {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

.filter-item,
.filter-btn,
.radius-wrap {
	height: 42px;
	border-radius: var(--radius);
}

.filter-item {
	background: #fff;
	border: 1px solid #e2e8f0;
	padding: 0 12px;
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: 220px;
	box-shadow: 0 2px 6px rgba(2, 6, 23, 0.05);
	transition: all 0.18s ease;
}

.filter-item:hover {
	border-color: rgba(14, 165, 233, 0.55);
	box-shadow: 0 6px 16px rgba(14, 165, 233, 0.12);
}

.filter-item i {
	color: #64748b;
	font-size: 14px;
}

.filter-item input,
.filter-item select {
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	height: 100%;
	font-size: 14px;
	background: transparent;
}

.filter-item input {
	padding: 0;
}

.filter-item input::placeholder {
	color: #94a3b8;
}

.filter-item select {
	cursor: pointer;
}

.filter-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 0 14px !important;
	font-size: 14px;
	font-weight: 800;
	height: 42px !important;
	border-radius: var(--radius) !important;
}

#nearMeBtn {
	background: linear-gradient(135deg, #0ea5e9, #0284c7);
	border: none;
	color: #fff;
	box-shadow: 0 10px 24px rgba(14, 165, 233, 0.22);
}

#nearMeBtn:hover {
	background: linear-gradient(135deg, #0284c7, #0369a1);
	transform: translateY(-1px);
}

.mapBtn {
	background: linear-gradient(135deg, #0ea5e9, #0284c7);
	border: none;
	color: #fff;
	box-shadow: 0 10px 24px rgba(14, 165, 233, 0.22);
}

.mapBtn:hover {
	background: linear-gradient(135deg, #0284c7, #0369a1);
	transform: translateY(-1px);
}

#clearBtn {
	border: 1px solid #e2e8f0 !important;
	background: #fff !important;
	color: var(--text) !important;
}

#clearBtn:hover {
	border-color: rgba(14, 165, 233, 0.6) !important;
	color: var(--brand) !important;
}

.radius-wrap {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 0 12px;
	background: #fff;
	border: 1px solid #e2e8f0;
	min-width: 220px;
	box-shadow: 0 2px 6px rgba(2, 6, 23, 0.05);
}

.radius-wrap .small {
	font-size: 13px;
	color: var(--muted);
	white-space: nowrap;
}

#radiusRange {
	height: 4px;
	accent-color: var(--brand);
	cursor: pointer;
}

@media (max-width: 900px) {
	.filter-bar {
		flex-direction: column;
		align-items: stretch;
	}
	.filter-item,
	.filter-btn,
	.radius-wrap {
		width: 100%;
		min-width: 0;
	}
}

.map {
	height: 560px;
	border: 1px solid var(--border);
	box-shadow: var(--shadow2);
	border-radius: var(--radius);
	overflow: hidden;
}
@media (max-width: 992px) {
	.map {
		height: 420px;
	}
}

.section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	flex-wrap: wrap;

	background: rgba(255, 255, 255, 0.78);
	border: 1px solid var(--border);
	box-shadow: 0 8px 18px rgba(2, 6, 23, 0.06);

	padding: 10px 12px;
	margin: 0 0 12px 0;

	border-radius: var(--radius-sm);
	position: relative;
	overflow: hidden;
}

.section-head::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: linear-gradient(180deg, var(--brand), var(--brand2));
	opacity: 0.95;
}

.section-head h2,
.section-head .h5 {
	margin: 0;
	display: inline-flex;
	align-items: center;
	gap: 8px;

	font-size: 1.05rem;
	font-weight: 750;
	letter-spacing: -0.01em;
	color: var(--text);
}

.section-head .muted,
.section-head .small {
	color: var(--muted);
	font-weight: 550;
	font-size: 0.86rem;
}

.section-head .btn {
	height: 34px;
	padding: 0 12px;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 12px;
}

@media (max-width: 576px) {
	.section-head {
		padding: 10px 10px;
	}
}

.stations-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.9rem;
}
@media (max-width: 992px) {
	.stations-grid {
		grid-template-columns: 1fr;
	}
}

.station-card {
	border: 1px solid var(--border);
	background: var(--card2);
	box-shadow: var(--shadow2);
	padding: 0.9rem;
	border-radius: var(--radius);

	transform: none !important;
	transition: box-shadow 0.15s ease !important;
}
.station-card:hover {
	transform: none !important;
	box-shadow: var(--shadow2) !important;
	background: rgba(255, 255, 255, 0.68) !important;
}

.station-top {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
}

.station-name {
	font-weight: 900;
}

.station-addr {
	color: var(--muted);
	font-size: 0.92rem;
}

.prices {
	display: flex;
	gap: 0.35rem;
	flex-wrap: wrap;
	margin-top: 0.55rem;
}

.price-pill {
	display: inline-block;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	border: 1px solid rgba(148, 163, 184, 0.35);
	background: rgba(248, 250, 252, 0.85);
	font-variant-numeric: tabular-nums;
}

.station-actions {
	display: flex;
	gap: 0.45rem;
	margin-top: 0.75rem;
	flex-wrap: wrap;
}
.station-actions a {
	font-weight: 800;
}

.station-upd {
	font-size: 12px;
	color: var(--muted);
	margin-top: 4px;
}
.station-upd span {
	color: var(--text);
	font-weight: 700;
}

.station-actions .btn,
#loadMoreBtn {
	background: linear-gradient(135deg, #0ea5e9, #0284c7) !important;
	color: #fff !important;
	border: 0 !important;

	height: 34px !important;
	padding: 0 12px !important;

	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	font-weight: 750 !important;
	font-size: 13px !important;

	box-shadow: 0 8px 18px rgba(14, 165, 233, 0.2) !important;
	border-radius: 12px !important;
}

.station-actions .btn:hover,
#loadMoreBtn:hover {
	background: linear-gradient(135deg, #0284c7, #0369a1) !important;
	color: #fff !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 12px 24px rgba(14, 165, 233, 0.26) !important;
}

.station-actions .btn:active,
#loadMoreBtn:active {
	transform: translateY(0) !important;
	box-shadow: 0 6px 14px rgba(14, 165, 233, 0.28) !important;
}

.station-actions .btn i,
#loadMoreBtn i {
	margin-right: 5px;
	font-size: 12px;
}

#loadMoreBtn {
	min-width: 170px;
	margin-top: 6px;
}

.posts-slider {
	position: relative;
	border-radius: var(--radius);
}

/* Track: swipe friendly + snap */
.ps-track {
	display: flex;
	gap: 0.9rem;

	overflow-x: auto;
	overflow-y: hidden;

	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;

	padding: 0.35rem 0.25rem 0.75rem 0.25rem;

	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: rgba(100, 116, 139, 0.35) transparent;
}

.ps-track::-webkit-scrollbar {
	height: 10px;
}
.ps-track::-webkit-scrollbar-thumb {
	background: rgba(100, 116, 139, 0.25);
	border-radius: 999px;
}
.ps-track::-webkit-scrollbar-track {
	background: transparent;
}

/* Card */
.post-card {
	scroll-snap-align: start;

	min-width: 360px;
	max-width: 360px;

	border: 1px solid var(--border);
	background: var(--card2);
	box-shadow: var(--shadow2);
	border-radius: var(--radius);
	overflow: hidden;

	position: relative;

	transition:
		transform 0.14s ease,
		box-shadow 0.14s ease,
		background 0.14s ease,
		border-color 0.14s ease;
}

.post-card:hover {
	box-shadow: var(--shadow);
	border-color: rgba(14, 165, 233, 0.35);
	background: rgba(255, 255, 255, 0.72);
}

.post-img {
	height: 170px;
	background-size: cover;
	background-position: center;
	position: relative;
}

.post-img::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		rgba(2, 6, 23, 0.05),
		rgba(2, 6, 23, 0.22)
	);
	pointer-events: none;
}

.post-body {
	padding: 0.95rem;
}

.post-title {
	font-weight: 950;
	letter-spacing: -0.02em;
	line-height: 1.15;
	margin-bottom: 0.45rem;

	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.post-excerpt {
	color: var(--muted);
	font-size: 0.95rem;
	line-height: 1.55;

	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;

	min-height: 4.6em;
}

.post-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 0.85rem;
}

.post-foot .btn.btn-primary {
	background: linear-gradient(135deg, #0ea5e9, #0284c7);
	border: none;
	color: #fff;
	box-shadow: 0 10px 24px rgba(14, 165, 233, 0.22);
	font-weight: 850;
	border-radius: 12px;
	padding: 0.42rem 0.7rem;
}
.post-foot .btn.btn-primary:hover {
	background: linear-gradient(135deg, #0284c7, #0369a1);
}
.post-foot .btn.btn-primary:active {
	transform: translateY(0);
}

.ps-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);

	width: 44px;
	height: 44px;

	border-radius: 16px;
	border: 1px solid var(--border);
	background: rgba(255, 255, 255, 0.78);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);

	display: flex;
	align-items: center;
	justify-content: center;

	box-shadow: 0 14px 30px rgba(2, 6, 23, 0.12);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		border-color 0.12s ease,
		opacity 0.12s ease;
	z-index: 3;
}

.ps-nav i {
	font-size: 14px;
	color: var(--text);
	opacity: 0.9;
}

.ps-nav:hover {
	border-color: rgba(14, 165, 233, 0.45);
	box-shadow: 0 18px 36px rgba(2, 6, 23, 0.14);
}

.ps-nav:active {
	transform: translateY(-50%) scale(0.99);
}

.ps-nav.left {
	left: -8px;
}
.ps-nav.right {
	right: -8px;
}

@media (max-width: 992px) {
	.post-card {
		min-width: 78vw;
		max-width: 78vw;
	}
	.ps-nav.left {
		left: 6px;
	}
	.ps-nav.right {
		right: 6px;
	}
}

@media (hover: none) and (pointer: coarse) {
	.ps-nav {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.ps-track {
		scroll-behavior: auto;
	}
	.post-card,
	.ps-nav {
		transition: none;
	}
}

.posts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
}
@media (max-width: 992px) {
	.posts-grid {
		grid-template-columns: 1fr;
	}
}

.post-tile {
	border: 1px solid var(--border);
	background: var(--card2);
	box-shadow: var(--shadow2);
	overflow: hidden;
	border-radius: var(--radius);
}

.post-tile-img {
	display: block;
	height: 170px;
	background-size: cover;
	background-position: center;
}

.post-tile-body {
	padding: 0.9rem;
}

.post-tile-title {
	font-weight: 900;
	text-decoration: none;
	color: var(--text);
}

.post-tile-ex {
	color: var(--muted);
	margin-top: 0.3rem;
}

.post-tile-foot {
	display: flex;
	gap: 1rem;
	margin-top: 0.75rem;
}

.simple-page .page-head,
.cardx,
.article,
.legal-card {
	border: 1px solid var(--border);
	background: var(--card2);
	box-shadow: var(--shadow2);
	border-radius: var(--radius);
}

.simple-page .page-head,
.cardx,
.legal-card {
	padding: 1rem;
}

.article {
	padding: 1.2rem;
}

.article-title {
	font-weight: 950;
	letter-spacing: -0.03em;
}

.article-meta {
	color: var(--muted);
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: wrap;
}

.dot {
	width: 4px;
	height: 4px;
	background: rgba(100, 116, 139, 0.6);
	display: inline-block;
}

.gallery {
	margin: 1rem 0;
}

.gallery img {
	width: 100%;
	max-height: 420px;
	object-fit: cover;
	border: 1px solid var(--border);
	border-radius: var(--radius);
}

.gallery-thumbs {
	display: flex;
	gap: 0.5rem;
	margin-top: 0.5rem;
	flex-wrap: wrap;
}

.gthumb {
	width: 66px;
	height: 44px;
	border: 1px solid var(--border);
	border-radius: 10px;
	background-size: cover;
	background-position: center;
}

.calc-grid {
	display: grid;
	grid-template-columns: 1.2fr 0.8fr;
	gap: 1rem;
}
@media (max-width: 992px) {
	.calc-grid {
		grid-template-columns: 1fr;
	}
}

.res-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
}

.res {
	border: 1px solid var(--border);
	background: rgba(248, 250, 252, 0.85);
	padding: 0.75rem;
	border-radius: var(--radius);
}

.res-label {
	color: var(--muted);
	font-weight: 800;
	font-size: 0.9rem;
}

.res-val {
	font-size: 1.15rem;
	font-weight: 900;
	font-variant-numeric: tabular-nums;
}

.leaflet-interactive {
	outline: none !important;
}
.leaflet-overlay-pane path {
	display: none !important;
}
.leaflet-marker-pane path {
	display: none !important;
}

.footer {
	margin-top: 2.75rem;
	padding: 2rem 0 1.2rem;
	position: relative;
	overflow: hidden;

	border-top: 1px solid rgba(148, 163, 184, 0.18);

	background:
		radial-gradient(
			900px 260px at 15% 10%,
			rgba(14, 165, 233, 0.18),
			transparent 60%
		),
		radial-gradient(
			900px 260px at 85% 15%,
			rgba(16, 185, 129, 0.16),
			transparent 60%
		),
		linear-gradient(180deg, rgba(2, 6, 23, 0.92), rgba(15, 23, 42, 0.96));

	color: rgba(255, 255, 255, 0.86);
	letter-spacing: 0.2px;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.footer::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 2px;
	background: linear-gradient(
		90deg,
		transparent,
		rgba(14, 165, 233, 0.8),
		rgba(16, 185, 129, 0.75),
		transparent
	);
	opacity: 0.55;
}

.footer::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(
		1200px 420px at 50% 0%,
		rgba(255, 255, 255, 0.06),
		transparent 55%
	);
	pointer-events: none;
}

.footer-grid {
	position: relative;
	z-index: 1;

	display: grid;
	grid-template-columns: 1.2fr 0.8fr 1fr;
	gap: 1.4rem;
	align-items: start;
}

@media (max-width: 992px) {
	.footer {
		padding: 1.8rem 0 1.1rem;
	}
	.footer-grid {
		grid-template-columns: 1fr;
	}
}

.footer-title {
	font-weight: 650; /* was 850 */
	color: #fff;
	margin-bottom: 0.6rem;
	letter-spacing: -0.01em;
}

.footer-text {
	color: rgba(255, 255, 255, 0.72);
	font-weight: 360; /* was 420 */
	line-height: 1.6;
	max-width: 52ch;
}

.footer-links {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.footer-links a {
	color: rgba(255, 255, 255, 0.82);
	text-decoration: none;
	font-weight: 300; /* was 650 */
	opacity: 0.88;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	transition:
		opacity 0.12s ease,
		transform 0.12s ease;
}

.footer-links a:hover {
	color: #fff;
	opacity: 1;
	transform: translateX(2px);
	text-decoration: none;
}

.footer-subscribe {
	justify-self: end;
}

@media (max-width: 992px) {
	.footer-subscribe {
		justify-self: auto;
	}
}

.sub-form {
	display: flex;
	gap: 0.55rem;
	margin-top: 0.75rem;
}

.sub-input {
	flex: 1;
	border: 1px solid rgba(148, 163, 184, 0.28);
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	padding: 0.6rem 0.75rem;
	border-radius: 12px;

	font-weight: 420; /* was 500 */
	transition:
		border-color 0.12s ease,
		box-shadow 0.12s ease,
		background 0.12s ease;
}

.sub-input::placeholder {
	color: rgba(255, 255, 255, 0.55);
}

.sub-input:focus {
	border-color: rgba(14, 165, 233, 0.65);
	box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.16);
	background: rgba(255, 255, 255, 0.1);
	outline: none;
}

.sub-btn {
	border: none;
	border-radius: 12px;

	background: linear-gradient(135deg, var(--brand), #2563eb);
	color: #fff;

	font-weight: 700; /* was 900 */
	padding: 0.6rem 0.95rem;

	box-shadow: 0 14px 28px rgba(14, 165, 233, 0.18);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		filter 0.12s ease;
	white-space: nowrap;
}

.sub-btn:hover {
	transform: translateY(-1px);
	filter: brightness(1.03);
	box-shadow: 0 18px 34px rgba(14, 165, 233, 0.24);
}

.sub-btn:active {
	transform: translateY(0);
	box-shadow: 0 10px 22px rgba(14, 165, 233, 0.22);
}

.footer-bottom {
	position: relative;
	z-index: 1;

	border-top: 1px solid rgba(148, 163, 184, 0.18);
	margin-top: 1.35rem;
	padding-left: 0.8rem;
	padding-right: 0.8rem;
	padding-top: 0.95rem;

	display: flex;
	gap: 0.75rem;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	color: rgba(255, 255, 255, 0.62);
	font-weight: 360; /* was 420 */
}

.footer-bottom a {
	color: rgba(255, 255, 255, 0.78);
	text-decoration: none;
	font-weight: 520; /* was 650 */
}

.footer-bottom a:hover {
	color: #fff;
	text-decoration: underline;
}

@media (max-width: 576px) {
	.footer-bottom {
		flex-direction: column;
		align-items: flex-start;
	}
	.sub-form {
		flex-direction: column;
	}
	.sub-btn {
		width: 100%;
	}
}

.cookie-banner {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	padding: 14px;
	background: rgba(15, 23, 42, 0.96);
	backdrop-filter: blur(6px);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.cookie-banner.hide {
	display: none;
}

.cookie-inner {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	gap: 14px;
	align-items: center;
	justify-content: space-between;
}

.cookie-title {
	color: #fff;
	font-weight: 800;
	margin-bottom: 2px;
}

.cookie-desc {
	color: rgba(255, 255, 255, 0.86);
	font-size: 13px;
	line-height: 1.35;
}

.cookie-link {
	color: #7dd3fc;
	text-decoration: none;
	margin-left: 6px;
}

.cookie-link:hover {
	text-decoration: underline;
}

.cookie-actions {
	display: flex;
	gap: 10px;
	flex-shrink: 0;
}

.footer-cookie-link {
	color: rgba(255, 255, 255, 0.85);
	text-decoration: none;
}

.footer-cookie-link:hover {
	color: #fff;
	text-decoration: underline;
}

@media (max-width: 768px) {
	.cookie-inner {
		flex-direction: column;
		align-items: stretch;
	}
	.cookie-actions {
		justify-content: flex-end;
	}
}

html.consent-locked,
html.consent-locked body {
	overflow: hidden !important;
}

.consent-overlay {
	position: fixed;
	inset: 0;
	z-index: 9998;

	background:
		radial-gradient(
			900px 460px at 18% 15%,
			rgba(14, 165, 233, 0.22),
			transparent 60%
		),
		radial-gradient(
			900px 460px at 82% 20%,
			rgba(16, 185, 129, 0.18),
			transparent 60%
		),
		rgba(2, 6, 23, 0.58);
}

.consent-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;

	display: flex;
	align-items: center;
	justify-content: center;

	padding: 18px;
}

.consent-modal__inner {
	width: min(720px, 100%);
	border-radius: calc(var(--radius) + 6px);

	background: rgba(255, 255, 255, 0.88);
	border: 1px solid var(--border);
	box-shadow: var(--shadow);

	color: var(--text);

	position: relative;
	overflow: hidden;
}

.consent-modal__inner::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: linear-gradient(180deg, var(--brand), var(--brand2));
	opacity: 0.95;
}

.consent-modal__inner::after {
	content: '';
	position: absolute;
	inset: 0;
	background: radial-gradient(
		900px 320px at 30% 0%,
		rgba(14, 165, 233, 0.12),
		transparent 55%
	);
	pointer-events: none;
}

.consent-modal__header {
	position: relative;
	padding: 18px 18px 10px 22px;
}

.consent-modal__title {
	font-weight: 950;
	letter-spacing: -0.02em;
	font-size: 1.05rem;
	margin: 0;
}

.consent-modal__body {
	position: relative;
	padding: 0 18px 10px 22px;
}

.consent-modal__text {
	margin: 10px 0;
	color: var(--muted);
	line-height: 1.55;
	font-size: 0.95rem;
	max-width: 68ch;
}

.consent-modal__link {
	color: var(--brand);
	font-weight: 800;
	text-decoration: none;
}

.consent-modal__link:hover {
	text-decoration: underline;
}

.consent-modal__actions {
	position: relative;
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	flex-wrap: wrap;

	padding: 12px 18px 18px 22px;
	border-top: 1px solid rgba(148, 163, 184, 0.22);
	background: rgba(255, 255, 255, 0.55);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

#cookieAcceptBtn {
	background: linear-gradient(135deg, #0ea5e9, #0284c7);
	border: none;
	color: #fff;

	font-weight: 900;
	border-radius: 12px;
	padding: 0.52rem 0.9rem;

	box-shadow: 0 12px 26px rgba(14, 165, 233, 0.22);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		filter 0.12s ease;
}

#cookieAcceptBtn:hover {
	background: linear-gradient(135deg, #0284c7, #0369a1);
	transform: translateY(-1px);
	box-shadow: 0 16px 32px rgba(14, 165, 233, 0.26);
	filter: brightness(1.02);
}

#cookieAcceptBtn:active {
	transform: translateY(0);
	box-shadow: 0 10px 22px rgba(14, 165, 233, 0.22);
}

#cookieRejectBtn {
	border: 1px solid rgba(148, 163, 184, 0.55);
	background: rgba(255, 255, 255, 0.7);
	color: var(--text);

	font-weight: 850;
	border-radius: 12px;
	padding: 0.52rem 0.85rem;

	box-shadow: 0 8px 18px rgba(2, 6, 23, 0.06);
	transition:
		transform 0.12s ease,
		box-shadow 0.12s ease,
		border-color 0.12s ease;
}

#cookieRejectBtn:hover {
	transform: translateY(-1px);
	border-color: rgba(14, 165, 233, 0.45);
	box-shadow: 0 12px 24px rgba(2, 6, 23, 0.08);
}

#cookieRejectBtn:active {
	transform: translateY(0);
	box-shadow: 0 8px 18px rgba(2, 6, 23, 0.06);
}

@media (max-width: 576px) {
	.consent-modal {
		padding: 14px;
	}
	.consent-modal__actions {
		justify-content: stretch;
	}
	#cookieRejectBtn,
	#cookieAcceptBtn {
		width: 100%;
	}
}

#cookieAcceptBtn,
#cookieRejectBtn {
	height: 42px;
}

.ad-showcase-section {
	width: 100%;
}

.ad-showcase {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.9fr);
	gap: 1.25rem;
	padding: 1.6rem;
	border-radius: 22px;
	border: 1px solid rgba(14, 165, 233, 0.18);
	background: linear-gradient(
		135deg,
		rgba(14, 165, 233, 0.12),
		rgba(16, 185, 129, 0.08),
		rgba(255, 255, 255, 0.9)
	);
	box-shadow: var(--shadow2);
	overflow: hidden;
}

.ad-showcase-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.9rem;
}

.ad-showcase-badge {
	display: inline-flex;
	align-items: center;
	width: fit-content;
	padding: 0.42rem 0.75rem;
	border-radius: 999px;
	background: rgba(15, 23, 42, 0.08);
	color: var(--text);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.ad-showcase-title {
	margin: 0;
	font-size: clamp(1.55rem, 2vw, 2.25rem);
	line-height: 1.1;
	font-weight: 800;
	letter-spacing: -0.03em;
}

.ad-showcase-text {
	margin: 0;
	max-width: 760px;
	color: var(--muted);
	font-size: 1rem;
	line-height: 1.7;
}

.ad-showcase-points {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
}

.ad-showcase-points span {
	display: inline-flex;
	align-items: center;
	padding: 0.72rem 0.95rem;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.84);
	border: 1px solid rgba(148, 163, 184, 0.25);
	font-size: 0.92rem;
	font-weight: 700;
}

.ad-showcase-demo {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 0.8rem;
	padding: 1.35rem;
	min-height: 100%;
	border-radius: 20px;
	color: #fff;
	background: linear-gradient(135deg, #0f172a, #1d4ed8 60%, #0891b2);
	box-shadow: 0 16px 40px rgba(15, 23, 42, 0.22);
}

.ad-showcase-demo-label {
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.75;
}

.ad-showcase-demo-title {
	font-size: 1.45rem;
	font-weight: 800;
	line-height: 1.15;
}

.ad-showcase-demo-text {
	color: rgba(255, 255, 255, 0.86);
	line-height: 1.65;
}

.ad-showcase-demo-cta .btn {
	border: 0;
	font-weight: 700;
}

.ad-contact-strip__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.1rem 1.25rem;
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid var(--border);
	box-shadow: var(--shadow2);
}

.ad-contact-strip__title {
	font-size: 1.05rem;
	font-weight: 800;
	margin-bottom: 0.18rem;
}

.ad-contact-strip__text {
	color: var(--muted);
	line-height: 1.6;
}

@media (max-width: 991.98px) {
	.ad-showcase {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767.98px) {
	.ad-showcase {
		padding: 1.2rem;
		border-radius: 18px;
	}

	.ad-showcase-points span {
		width: 100%;
		justify-content: center;
	}

	.ad-contact-strip__inner {
		flex-direction: column;
		align-items: stretch;
	}

	.ad-contact-strip__inner .btn {
		width: 100%;
		justify-content: center;
	}
}

.hero-premium-v5 {
	padding: 18px;
	border-radius: 26px;
}

.hero-v5-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px;
	margin-top: 14px;
	align-items: stretch;
}

.hero-card {
	min-width: 0;
	border-radius: 24px;
	border: 1px solid rgba(148, 163, 184, 0.2);
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.045);
	backdrop-filter: blur(8px);
	overflow: hidden;
}

.hero-card__head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 16px 16px 0;
}

.hero-card__head--compact {
	padding-bottom: 0;
}

.hero-card__icon {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(
		180deg,
		rgba(59, 130, 246, 0.11),
		rgba(14, 165, 233, 0.07)
	);
	border: 1px solid rgba(59, 130, 246, 0.18);
	color: #2563eb;
	flex-shrink: 0;
}

.hero-card__icon--filter {
	background: linear-gradient(
		180deg,
		rgba(37, 99, 235, 0.1),
		rgba(14, 165, 233, 0.06)
	);
}

.hero-card__head-text {
	min-width: 0;
}

.hero-card__title {
	margin: 0;
	font-size: 1.02rem;
	line-height: 1.2;
	font-weight: 900;
	color: #0f172a;
}

.hero-card__sub {
	margin-top: 4px;
	color: #64748b;
	font-size: 0.9rem;
	line-height: 1.4;
}

/* TOP */
.hero-info-card-v5,
.hero-ad-card-v5 {
	min-height: 310px;
	height: 310px;
}

/* INFO */
.hero-info-card-v5 {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.95),
			rgba(248, 250, 252, 0.92)
		),
		radial-gradient(
			circle at bottom left,
			rgba(14, 165, 233, 0.1),
			transparent 42%
		);
}

.hero-info-card-v5__inner {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.hero-info-card-v5__body {
	padding: 14px 16px 18px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	flex: 1;
}

.hero-info-card-v5__text {
	margin: 0;
	color: #334155;
	font-size: 1.03rem;
	line-height: 1.72;
}

.hero-info-card-v5__meta {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	width: fit-content;
	padding: 10px 12px;
	border-radius: 15px;
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(148, 163, 184, 0.16);
}

.hero-info-card-v5__meta-label {
	color: #64748b;
	font-size: 0.92rem;
}

.hero-info-card-v5__meta-value {
	color: #0f172a;
	font-size: 0.98rem;
	font-weight: 900;
}

.hero-info-card-v5__notice {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 12px 14px;
	border-radius: 16px;
	background: linear-gradient(
		180deg,
		rgba(59, 130, 246, 0.08),
		rgba(14, 165, 233, 0.05)
	);
	border: 1px solid rgba(59, 130, 246, 0.13);
	color: #1e3a8a;
	font-size: 0.92rem;
	line-height: 1.45;
	margin-bottom: 10px;
}

.hero-info-card-v5__notice i {
	margin-top: 2px;
	flex-shrink: 0;
}

/* AD SLIDER */
.hero-ad-card-v5 {
	position: relative;
	padding-bottom: 14px;
}

.hero-ad-card-v5__viewport {
	position: relative;
	height: 278px;
	min-height: 278px;
}

.hero-ad-slide-v5 {
	position: absolute;
	inset: 0;
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px) scale(0.99);
	transition:
		opacity 0.45s ease,
		transform 0.45s ease;
}

.hero-ad-slide-v5.is-active {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
}

.hero-ad-slide-v5__bg,
.hero-ad-slide-v5__overlay,
.hero-ad-slide-v5__content {
	position: absolute;
	inset: 0;
}

.hero-ad-slide-v5__bg {
	background-image: var(--ad-bg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.hero-ad-slide-v5__overlay {
	background: linear-gradient(
		90deg,
		rgba(248, 251, 255, 0.8) 0%,
		rgba(248, 251, 255, 0.64) 28%,
		rgba(248, 251, 255, 0.26) 58%,
		rgba(248, 251, 255, 0.08) 100%
	);
}

.hero-ad-slide-v5__content {
	z-index: 2;
	padding: 18px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 18px;
}

.hero-ad-slide-v5__text-wrap {
	max-width: 54%;
	align-self: center;
}

.hero-ad-slide-v5__title {
	margin: 0 0 10px;
	font-size: 1.32rem;
	line-height: 1.14;
	font-weight: 900;
	color: #172554;
	max-width: 340px;
}

.hero-ad-slide-v5__text {
	margin: 0;
	font-size: 0.96rem;
	line-height: 1.58;
	color: #334155;
	max-width: 330px;
}

.hero-ad-slide-v5__link-wrap {
	align-self: flex-end;
	display: flex;
	justify-content: flex-end;
	min-width: 150px;
}

.hero-ad-slide-v5__link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	width: fit-content;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.9rem;
	color: rgba(29, 78, 216, 0.96);
	background: rgba(255, 255, 255, 0.56);
	border: 1px solid rgba(37, 99, 235, 0.1);
	padding: 8px 12px;
	border-radius: 999px;
	backdrop-filter: blur(4px);
	transition: 0.2s ease;
}

.hero-ad-slide-v5__link:hover {
	background: rgba(255, 255, 255, 0.72);
	color: #1e40af;
	transform: translateX(2px);
}

.hero-ad-dots-v5 {
	position: relative;
	z-index: 3;
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-top: 6px;
}

.hero-ad-dots-v5 button {
	width: 10px;
	height: 10px;
	border: 0;
	border-radius: 999px;
	padding: 0;
	background: rgba(148, 163, 184, 0.42);
	transition: 0.2s ease;
}

.hero-ad-dots-v5 button.is-active {
	background: #3b82f6;
	transform: scale(1.15);
}

/* BOTTOM */
.hero-prices-card,
.hero-filter-card {
	min-height: 255px;
}

.hero-prices-strip {
	padding: 12px 16px 16px;
}

.hero-prices-strip__intro {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 12px;
	padding: 11px 12px;
	border-radius: 16px;
	background: linear-gradient(
		180deg,
		rgba(59, 130, 246, 0.06),
		rgba(14, 165, 233, 0.04)
	);
	border: 1px solid rgba(59, 130, 246, 0.1);
}

.hero-prices-strip__icon {
	width: 34px;
	height: 34px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(37, 99, 235, 0.1);
	color: #2563eb;
	flex-shrink: 0;
}

.hero-prices-strip__text {
	color: #475569;
	font-size: 0.92rem;
	line-height: 1.45;
}

.hero-prices-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
}

.hero-kpi-card {
	min-height: 96px;
	border-radius: 18px;
	position: relative;
	padding: 14px 14px;
	background: rgba(255, 255, 255, 0.82);
	border: 1px solid rgba(148, 163, 184, 0.16);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.hero-kpi-card .kpi-label {
	margin-bottom: 8px;
	color: #64748b;
	font-weight: 700;
	font-size: 0.95rem;
}

.hero-kpi-card .kpi-val {
	font-size: 1rem;
	font-weight: 900;
	color: #0f172a;
}

.hero-kpi-card .kpi-ico {
	position: absolute;
	top: 12px;
	right: 12px;
}

.hero-filter-bar {
	padding: 12px 16px 16px;
	display: grid;
	gap: 11px;
}

.hero-filter-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.hero-filter-actions .btn {
	min-height: 44px;
	width: 100%;
	border-radius: 14px;
	font-weight: 800;
}

.hero-radius-wrap {
	padding: 12px 12px 9px;
	border-radius: 16px;
	border: 1px solid rgba(148, 163, 184, 0.16);
	background: rgba(248, 250, 252, 0.82);
}

.hero-radius-wrap input[type='range'] {
	width: 100%;
	margin-top: 8px;
}

@media (max-width: 1240px) {
	.hero-v5-grid {
		grid-template-columns: 1fr;
	}

	.hero-info-card-v5,
	.hero-ad-card-v5 {
		height: auto;
		min-height: 290px;
	}

	.hero-ad-card-v5__viewport {
		height: 280px;
		min-height: 280px;
	}
}

@media (max-width: 991.98px) {
	.hero-prices-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hero-ad-slide-v5__text-wrap {
		max-width: 58%;
	}
}

@media (max-width: 767.98px) {
	.hero-premium-v5 {
		padding: 14px;
	}

	.hero-card {
		border-radius: 20px;
	}

	.hero-info-card-v5,
	.hero-ad-card-v5 {
		height: auto;
		min-height: 300px;
	}

	.hero-ad-card-v5__viewport {
		min-height: 290px;
		height: 290px;
	}

	.hero-ad-slide-v5__overlay {
		background: linear-gradient(
			180deg,
			rgba(248, 251, 255, 0.82) 0%,
			rgba(248, 251, 255, 0.68) 42%,
			rgba(248, 251, 255, 0.24) 100%
		);
	}

	.hero-ad-slide-v5__content {
		flex-direction: column;
		justify-content: space-between;
	}

	.hero-ad-slide-v5__text-wrap {
		max-width: 100%;
		align-self: flex-start;
	}

	.hero-ad-slide-v5__title {
		font-size: 1.2rem;
		max-width: 100%;
	}

	.hero-ad-slide-v5__text {
		max-width: 100%;
	}

	.hero-ad-slide-v5__link-wrap {
		align-self: flex-start;
		min-width: auto;
	}

	.hero-prices-grid {
		grid-template-columns: 1fr;
	}

	.hero-filter-actions {
		grid-template-columns: 1fr;
	}
}

.hero-ad-card-v5 {
	position: relative;
	padding-bottom: 0;
}

.hero-ad-card-v5__viewport {
	position: relative;
	height: 100%;
	min-height: 310px;
}

.hero-ad-slide-v5 {
	position: absolute;
	inset: 0;
	opacity: 0;
	pointer-events: none;
	transform: translateY(8px) scale(0.99);
	transition:
		opacity 0.45s ease,
		transform 0.45s ease;
}

.hero-ad-slide-v5.is-active {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0) scale(1);
}

.hero-ad-slide-v5__bg,
.hero-ad-slide-v5__overlay,
.hero-ad-slide-v5__content {
	position: absolute;
	inset: 0;
}

.hero-ad-slide-v5__bg {
	background-image: var(--ad-bg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.hero-ad-slide-v5__overlay {
	background: linear-gradient(
		90deg,
		rgba(248, 251, 255, 0.76) 0%,
		rgba(248, 251, 255, 0.58) 28%,
		rgba(248, 251, 255, 0.22) 60%,
		rgba(248, 251, 255, 0.06) 100%
	);
}

.hero-ad-slide-v5__content {
	z-index: 2;
	padding: 18px 18px 44px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 18px;
}

.hero-ad-slide-v5__text-wrap {
	max-width: 54%;
	align-self: center;
}

.hero-ad-slide-v5__title {
	margin: 0 0 10px;
	font-size: 1.32rem;
	line-height: 1.14;
	font-weight: 900;
	color: #172554;
	max-width: 340px;
}

.hero-ad-slide-v5__text {
	margin: 0;
	font-size: 0.96rem;
	line-height: 1.58;
	color: #334155;
	max-width: 330px;
}

.hero-ad-slide-v5__link-wrap {
	align-self: flex-end;
	display: flex;
	justify-content: flex-end;
	min-width: 150px;
}

.hero-ad-slide-v5__link {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	width: fit-content;
	text-decoration: none;
	font-weight: 700;
	font-size: 0.9rem;
	color: rgba(29, 78, 216, 0.96);
	background: rgba(255, 255, 255, 0.52);
	border: 1px solid rgba(37, 99, 235, 0.1);
	padding: 8px 12px;
	border-radius: 999px;
	backdrop-filter: blur(4px);
	transition: 0.2s ease;
}

.hero-ad-slide-v5__link:hover {
	background: rgba(255, 255, 255, 0.7);
	color: #1e40af;
	transform: translateX(2px);
}

.hero-ad-dots-v5 {
	position: absolute;
	left: 50%;
	bottom: 12px;
	transform: translateX(-50%);
	z-index: 5;
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-top: 0;
}

.hero-ad-dots-v5 button {
	width: 10px;
	height: 10px;
	border: 0;
	border-radius: 999px;
	padding: 0;
	background: rgba(255, 255, 255, 0.58);
	box-shadow: 0 2px 6px rgba(15, 23, 42, 0.1);
	transition: 0.2s ease;
}

.hero-ad-dots-v5 button.is-active {
	background: #3b82f6;
	transform: scale(1.15);
}

@media (max-width: 1240px) {
	.hero-ad-card-v5__viewport {
		min-height: 280px;
		height: 280px;
	}
}

@media (max-width: 767.98px) {
	.hero-ad-card-v5__viewport {
		min-height: 290px;
		height: 290px;
	}

	.hero-ad-slide-v5__overlay {
		background: linear-gradient(
			180deg,
			rgba(248, 251, 255, 0.8) 0%,
			rgba(248, 251, 255, 0.64) 42%,
			rgba(248, 251, 255, 0.2) 100%
		);
	}

	.hero-ad-slide-v5__content {
		flex-direction: column;
		justify-content: space-between;
		padding: 16px 16px 42px;
	}

	.hero-ad-slide-v5__text-wrap {
		max-width: 100%;
		align-self: flex-start;
	}

	.hero-ad-slide-v5__title {
		font-size: 1.2rem;
		max-width: 100%;
	}

	.hero-ad-slide-v5__text {
		max-width: 100%;
	}

	.hero-ad-slide-v5__link-wrap {
		align-self: flex-start;
		min-width: auto;
	}

	.hero-ad-dots-v5 {
		bottom: 10px;
	}
}

/* Iteration 15: article-first homepage + dedicated fuel map page */
.home-news-hero{
	display:grid;
	grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);
	gap:22px;
	align-items:stretch;
	padding:30px;
	border:1px solid rgba(15,23,42,.08);
	border-radius:30px;
	background:
		radial-gradient(circle at 12% 18%, rgba(14,165,233,.16), transparent 32%),
		linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.88));
	box-shadow:0 26px 70px rgba(15,23,42,.08);
	overflow:hidden;
}
.home-news-hero__content{display:flex;flex-direction:column;justify-content:center;min-height:360px;max-width:860px;}
.dk-eyebrow{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:7px 11px;border-radius:999px;background:rgba(14,165,233,.10);color:#0369a1;font-size:.78rem;font-weight:480;letter-spacing:.01em;margin-bottom:14px;}
.dk-eyebrow--soft{background:rgba(15,23,42,.055);color:#475569;margin-bottom:10px;}
.home-news-hero h1{font-size:clamp(2rem,4vw,4.3rem);line-height:.98;letter-spacing:-.055em;font-weight:520;color:#0f172a;margin:0 0 18px;}
.home-news-hero p{font-size:1.05rem;line-height:1.72;color:#475569;margin:0;max-width:760px;font-weight:350;}
.home-news-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
.home-news-hero .btn,.home-content-split .btn,.fuel-map-hero .btn{font-weight:420;border-radius:14px;padding:.72rem 1rem;}
.home-price-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:26px;padding:22px;box-shadow:0 20px 50px rgba(15,23,42,.08);display:flex;flex-direction:column;justify-content:space-between;}
.home-price-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px;}
.home-price-card__head span{display:block;font-size:1rem;font-weight:520;color:#0f172a;letter-spacing:-.02em;}
.home-price-card__head small{display:block;color:#64748b;font-size:.86rem;font-weight:340;margin-top:4px;}
.home-price-card__head i{width:42px;height:42px;border-radius:16px;background:rgba(14,165,233,.10);display:grid;place-items:center;color:#0284c7;}
.home-price-grid,.fuel-price-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.home-price-grid>div,.fuel-price-mini-grid>div{border:1px solid rgba(15,23,42,.07);border-radius:18px;padding:14px;background:linear-gradient(180deg,#fff,#f8fafc);}
.home-price-grid span,.fuel-price-mini-grid span{display:block;color:#64748b;font-size:.78rem;font-weight:360;margin-bottom:6px;}
.home-price-grid em,.fuel-price-mini-grid em{display:block;color:#0f172a;font-size:1.14rem;font-style:normal;font-weight:520;letter-spacing:-.025em;}
.home-price-card__foot{margin-top:18px;padding-top:16px;border-top:1px solid rgba(15,23,42,.08);display:flex;align-items:center;justify-content:space-between;gap:14px;}
.home-price-card__foot span{color:#64748b;font-size:.82rem;font-weight:340;}
.home-price-card__foot a,.home-read-link,.story-meta a,.dk-mini-link{display:inline-flex;align-items:center;gap:8px;color:#0369a1;text-decoration:none;font-size:.88rem;font-weight:450;}
.home-feature-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:22px;}
.featured-story-card,.side-story-card,.home-tool-card,.home-map-teaser,.home-article-card,.map-tools-card,.fuel-map-hero,.dk-related-strip{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:#fff;box-shadow:0 20px 50px rgba(15,23,42,.06);overflow:hidden;}
.featured-story-card{display:grid;grid-template-columns:.9fr 1.1fr;min-height:410px;}
.featured-story-card__image,.side-story-card__image,.home-article-card__image{display:block;background-size:cover;background-position:center;background-color:#e2e8f0;}
.featured-story-card__body{padding:26px;display:flex;flex-direction:column;justify-content:center;}
.featured-story-card h2{font-size:clamp(1.45rem,2.2vw,2.45rem);line-height:1.08;font-weight:520;letter-spacing:-.045em;margin:0 0 14px;}
.featured-story-card h2 a,.home-article-card h3 a{color:#0f172a;text-decoration:none;}
.featured-story-card p{color:#475569;line-height:1.7;font-weight:340;margin:0 0 18px;}
.story-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;color:#64748b;font-size:.84rem;}
.story-meta span{display:inline-flex;align-items:center;gap:6px;}
.home-side-stories{display:grid;gap:14px;}
.side-story-card{display:grid;grid-template-columns:130px 1fr;text-decoration:none;color:inherit;min-height:136px;}
.side-story-card__body{padding:16px;display:flex;flex-direction:column;justify-content:center;gap:6px;}
.side-story-card em{font-style:normal;color:#64748b;font-size:.78rem;font-weight:340;}
.side-story-card strong{font-size:1.03rem;line-height:1.24;font-weight:500;color:#0f172a;letter-spacing:-.02em;}
.side-story-card small{font-size:.84rem;line-height:1.45;color:#64748b;font-weight:330;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.home-tool-card{padding:22px;background:linear-gradient(135deg,rgba(14,165,233,.10),rgba(34,197,94,.07));}
.home-tool-card__icon,.home-map-teaser__icon{width:44px;height:44px;border-radius:16px;background:#fff;display:grid;place-items:center;color:#0284c7;margin-bottom:14px;box-shadow:0 12px 32px rgba(15,23,42,.08);}
.home-tool-card h2,.home-map-teaser h2{font-size:1.18rem;letter-spacing:-.025em;font-weight:520;margin:0 0 8px;color:#0f172a;}
.home-tool-card p,.home-map-teaser p{color:#64748b;line-height:1.65;font-weight:340;margin:0 0 16px;}
.home-content-split{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.home-map-teaser{padding:24px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;}
.home-map-teaser__icon{margin:0;}
.home-map-teaser--light{background:linear-gradient(135deg,#fff,rgba(248,250,252,.92));}
.section-head--news{align-items:flex-end;gap:20px;}
.section-head--news p{margin:6px 0 0;color:#64748b;font-weight:340;line-height:1.55;max-width:760px;}
.home-latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.home-article-card{display:flex;flex-direction:column;min-height:100%;}
.home-article-card__image{height:180px;}
.home-article-card__body{padding:18px;display:flex;flex-direction:column;min-height:240px;}
.home-article-card__meta{display:flex;justify-content:space-between;gap:10px;color:#64748b;font-size:.78rem;font-weight:340;margin-bottom:10px;}
.home-article-card__meta span{display:inline-flex;align-items:center;gap:6px;}
.home-article-card h3{font-size:1.08rem;line-height:1.28;font-weight:500;letter-spacing:-.025em;margin:0 0 9px;}
.home-article-card p{color:#64748b;line-height:1.58;font-size:.92rem;font-weight:330;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.home-read-link{margin-top:auto;}
.fuel-map-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,430px);gap:24px;padding:28px;background:linear-gradient(135deg,#fff,rgba(241,245,249,.92));}
.fuel-map-hero__copy h1{font-size:clamp(2rem,3.6vw,3.6rem);line-height:1.02;font-weight:520;letter-spacing:-.052em;margin:12px 0 12px;color:#0f172a;}
.fuel-map-hero__copy p{color:#475569;font-weight:340;font-size:1.02rem;line-height:1.72;max-width:740px;margin:0;}
.fuel-map-hero__actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.fuel-map-price-panel{border:1px solid rgba(15,23,42,.08);border-radius:24px;background:#fff;padding:20px;box-shadow:0 20px 50px rgba(15,23,42,.07);}
.dk-panel-label{display:flex;align-items:center;gap:9px;color:#0f172a;font-size:.96rem;font-weight:500;letter-spacing:-.015em;margin-bottom:14px;}
.dk-panel-label i{color:#0284c7;}
.fuel-map-hero__meta{display:flex;justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(15,23,42,.08);font-size:.82rem;color:#64748b;}
.fuel-map-hero__meta em{font-style:normal;color:#0f172a;font-weight:420;}
.map-tools-card{padding:22px;}
.map-tools-card__head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px;}
.map-tools-card h2{font-size:1.28rem;font-weight:520;letter-spacing:-.025em;margin:0 0 6px;color:#0f172a;}
.map-tools-card p{margin:0;color:#64748b;font-weight:340;line-height:1.55;}
.map--dedicated{min-height:590px;border-radius:26px;}
.dk-related-strip{padding:22px;}
.dk-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.dk-related-card{display:block;border:1px solid rgba(15,23,42,.07);border-radius:18px;padding:14px;text-decoration:none;color:#0f172a;background:#fff;}
.dk-related-card span{display:block;color:#64748b;font-size:.78rem;font-weight:330;margin-bottom:6px;}
.dk-related-card em{display:block;font-style:normal;font-weight:480;line-height:1.35;}
@media (max-width:991.98px){
	.home-news-hero,.home-feature-grid,.fuel-map-hero{grid-template-columns:1fr;}
	.home-news-hero__content{min-height:auto;}
	.featured-story-card{grid-template-columns:1fr;}
	.featured-story-card__image{height:280px;}
	.home-content-split,.home-latest-grid,.dk-related-grid{grid-template-columns:1fr 1fr;}
	.home-map-teaser{grid-template-columns:1fr;}
}
@media (max-width:575.98px){
	.home-news-hero,.fuel-map-hero{padding:20px;border-radius:24px;}
	.home-news-hero h1,.fuel-map-hero__copy h1{letter-spacing:-.04em;}
	.home-price-grid,.fuel-price-mini-grid,.home-content-split,.home-latest-grid,.dk-related-grid{grid-template-columns:1fr;}
	.side-story-card{grid-template-columns:105px 1fr;}
	.map--dedicated{min-height:500px;}
}

/* Iteration 16: public portal editorial polish */
.topbar{
	background:rgba(255,255,255,.88);
	box-shadow:0 10px 34px rgba(15,23,42,.055);
}
.topbar-inner{padding:.82rem 0;}
.brand{gap:.68rem;}
.brand-logo{width:38px;height:38px;filter:drop-shadow(0 10px 20px rgba(14,165,233,.16));}
.brand-name{font-weight:540;font-size:1.02rem;letter-spacing:-.035em;}
.brand-sub{font-size:.76rem;font-weight:330;color:#64748b;}
.navlinks{gap:.35rem;padding:5px;border:1px solid rgba(15,23,42,.07);border-radius:999px;background:rgba(248,250,252,.80);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);}
.navlinks a{font-weight:420;font-size:.89rem;opacity:.86;padding:.48rem .78rem;border-radius:999px;transition:background .14s ease,color .14s ease,opacity .14s ease,transform .14s ease;}
.navlinks a:hover{background:#fff;opacity:1;transform:translateY(-1px);}
.navlinks a.active{background:#fff;color:#0369a1;box-shadow:0 8px 18px rgba(15,23,42,.07);}
.navlinks a.active::after{display:none;}
.lang-btn{font-weight:430;box-shadow:0 8px 18px rgba(15,23,42,.04);}
.burger{font-weight:400;}
.home-news-hero--editorial{background:radial-gradient(circle at 14% 16%, rgba(14,165,233,.14), transparent 30%),radial-gradient(circle at 82% 20%, rgba(16,185,129,.12), transparent 28%),linear-gradient(135deg,#fff,rgba(248,250,252,.92));}
.home-news-hero h1{font-weight:500;}
.home-feature-grid .story-meta--clean{margin-top:auto;}
.side-story-card__link{display:inline-flex;align-items:center;gap:7px;color:#0369a1;font-size:.82rem;font-weight:430;margin-top:2px;}
.home-magazine-section{position:relative;}
.home-magazine-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch;}
.home-magazine-grid .home-article-card{min-height:100%;}
.home-magazine-grid .home-article-card--wide{grid-column:span 2;display:grid;grid-template-columns:.9fr 1.1fr;}
.home-magazine-grid .home-article-card--wide .home-article-card__image{height:auto;min-height:260px;}
.home-magazine-grid .home-article-card--feature{grid-row:span 2;background:linear-gradient(180deg,#fff,rgba(240,249,255,.82));}
.home-magazine-grid .home-article-card--feature .home-article-card__image{height:300px;}
.home-magazine-grid .home-article-card__body{min-height:auto;}
.home-magazine-grid .home-article-card h3{font-weight:470;}
.home-article-card__meta{display:none;}
.home-archive-card{border:1px solid rgba(14,165,233,.18);border-radius:26px;background:linear-gradient(135deg,rgba(14,165,233,.10),rgba(16,185,129,.08));box-shadow:0 20px 50px rgba(15,23,42,.06);padding:22px;display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:280px;}
.home-archive-card__icon{width:46px;height:46px;border-radius:16px;background:#fff;display:grid;place-items:center;color:#0284c7;box-shadow:0 12px 28px rgba(15,23,42,.08);}
.home-archive-card h3{font-size:1.22rem;font-weight:500;letter-spacing:-.025em;margin:2px 0 0;color:#0f172a;}
.home-archive-card p{margin:0;color:#475569;line-height:1.62;font-weight:340;}
.dk-related-strip--media{background:linear-gradient(135deg,#fff,rgba(248,250,252,.95));}
.dk-related-grid--media{grid-template-columns:repeat(4,minmax(0,1fr));}
.dk-related-card--media{padding:0;overflow:hidden;display:flex;flex-direction:column;min-height:100%;}
.dk-related-card__image{display:block;height:145px;background-size:cover;background-position:center;background-color:#e2e8f0;}
.dk-related-card__body{display:flex;flex-direction:column;gap:8px;padding:14px;}
.dk-related-card__body em{font-weight:470;letter-spacing:-.015em;}
.dk-related-card__body small{font-size:.84rem;line-height:1.45;color:#64748b;font-weight:330;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
@media (max-width:1199.98px){
	.home-magazine-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:991.98px){
	.navlinks{display:none;}
	.home-magazine-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
	.home-magazine-grid .home-article-card--wide{grid-column:span 2;}
	.dk-related-grid--media{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:575.98px){
	.brand-name{font-size:.98rem;}
	.home-magazine-grid,.dk-related-grid--media{grid-template-columns:1fr;}
	.home-magazine-grid .home-article-card--wide{grid-column:auto;grid-template-columns:1fr;}
	.home-magazine-grid .home-article-card--wide .home-article-card__image{height:210px;min-height:0;}
	.home-magazine-grid .home-article-card--feature .home-article-card__image{height:220px;}
}

/* Iteration 17: public portal finishing polish */
.home-magazine-grid{grid-auto-flow:dense;}
.home-magazine-grid .home-article-card{transition:transform .16s ease,box-shadow .16s ease;}
.home-magazine-grid .home-article-card:hover{transform:translateY(-2px);box-shadow:0 24px 58px rgba(15,23,42,.085);}
.home-magazine-grid .home-article-card__body{gap:8px;}
.home-magazine-grid .home-article-card p{-webkit-line-clamp:4;line-height:1.62;}
.home-magazine-grid .home-article-card--wide .home-article-card__body{justify-content:center;padding:24px;}
.home-magazine-grid .home-article-card--wide h3{font-size:1.28rem;line-height:1.22;}
.home-magazine-grid .home-article-card--wide p{-webkit-line-clamp:6;font-size:.96rem;}
.home-magazine-grid .home-article-card--feature .home-article-card__body{padding:22px;}
.home-magazine-grid .home-article-card--feature h3{font-size:1.2rem;line-height:1.25;}
.home-magazine-grid .home-article-card--feature p{-webkit-line-clamp:7;}
.home-magazine-grid .home-archive-card{min-height:100%;}
@media (max-width:575.98px){
	.home-magazine-grid .home-article-card p,
	.home-magazine-grid .home-article-card--wide p,
	.home-magazine-grid .home-article-card--feature p{-webkit-line-clamp:4;}
}

/* Footer: more classic and compact */
.footer-classic{
	margin-top:3rem;
	padding:0;
	background:linear-gradient(180deg,#0f172a,#111827);
	border-top:1px solid rgba(148,163,184,.18);
	color:rgba(255,255,255,.82);
}
.footer-classic::before{height:1px;opacity:.35;}
.footer-classic::after{display:none;}
.footer-classic__top{position:relative;z-index:1;display:grid;grid-template-columns:1.35fr .72fr .72fr 1.15fr;gap:30px;padding:34px 0 26px;}
.footer-classic__logo{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;margin-bottom:12px;}
.footer-classic__logo img{width:34px;height:34px;filter:drop-shadow(0 10px 24px rgba(14,165,233,.16));}
.footer-classic__logo span{font-size:1rem;font-weight:520;letter-spacing:-.025em;}
.footer-classic__brand p,.footer-classic__subscribe p{margin:0;color:rgba(226,232,240,.70);font-size:.9rem;line-height:1.62;font-weight:330;max-width:54ch;}
.footer-classic__title{color:#f8fafc;font-size:.9rem;font-weight:500;letter-spacing:-.01em;margin-bottom:11px;}
.footer-classic__nav{display:flex;flex-direction:column;gap:8px;}
.footer-classic__nav a{color:rgba(226,232,240,.70);text-decoration:none;font-size:.88rem;font-weight:330;line-height:1.35;transition:color .14s ease,transform .14s ease;}
.footer-classic__nav a:hover{color:#fff;transform:translateX(2px);}
.footer-classic__form{margin-top:12px;}
.footer-classic__form .sub-input{min-width:0;font-size:.9rem;padding:.58rem .72rem;border-radius:11px;}
.footer-classic__form .sub-btn{font-size:.88rem;font-weight:430;padding:.58rem .82rem;border-radius:11px;}
.footer-classic__bottom{position:relative;z-index:1;border-top:1px solid rgba(148,163,184,.16);display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 0 18px;color:rgba(226,232,240,.54);font-size:.82rem;font-weight:320;}
@media (max-width:991.98px){.footer-classic__top{grid-template-columns:1fr 1fr;}.footer-classic__subscribe{grid-column:1/-1;}}
@media (max-width:575.98px){.footer-classic__top{grid-template-columns:1fr;padding:28px 0 22px;gap:22px;}.footer-classic__bottom{align-items:flex-start;flex-direction:column;}.footer-classic__form{flex-direction:column;}.footer-classic__form .sub-btn{width:100%;}}

/* Professional contact page */
.contact-hero-pro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);gap:22px;align-items:stretch;padding:30px;border:1px solid rgba(15,23,42,.08);border-radius:30px;background:radial-gradient(circle at 16% 20%,rgba(14,165,233,.15),transparent 34%),linear-gradient(135deg,#fff,rgba(248,250,252,.92));box-shadow:0 24px 70px rgba(15,23,42,.07);}
.contact-hero-pro h1{font-size:clamp(2rem,3.6vw,3.7rem);line-height:1.02;font-weight:500;letter-spacing:-.05em;margin:0 0 14px;color:#0f172a;max-width:920px;}
.contact-hero-pro p{margin:0;color:#475569;font-size:1.02rem;line-height:1.72;font-weight:340;max-width:820px;}
.contact-hero-pro__panel{border:1px solid rgba(14,165,233,.14);border-radius:26px;background:linear-gradient(180deg,#fff,rgba(240,249,255,.9));padding:24px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 18px 50px rgba(15,23,42,.055);}
.contact-hero-pro__icon{width:52px;height:52px;border-radius:18px;background:rgba(14,165,233,.10);display:grid;place-items:center;color:#0284c7;margin-bottom:16px;font-size:1.2rem;}
.contact-hero-pro__panel span{font-size:1.2rem;font-weight:500;color:#0f172a;letter-spacing:-.025em;}
.contact-hero-pro__panel small{display:block;color:#64748b;font-weight:330;margin-top:6px;line-height:1.45;}
.contact-grid-pro{display:grid;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);gap:22px;align-items:start;}
.contact-info-stack{display:grid;gap:18px;}
.contact-card-pro,.contact-form-pro{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:rgba(255,255,255,.88);box-shadow:0 20px 55px rgba(15,23,42,.055);overflow:hidden;}
.contact-card-pro{padding:22px;}
.contact-card-pro h2,.contact-form-pro h2{font-size:1.22rem;line-height:1.25;font-weight:500;letter-spacing:-.025em;margin:0;color:#0f172a;}
.contact-card-pro p,.contact-form-pro p{margin:5px 0 0;color:#64748b;line-height:1.55;font-weight:330;}
.contact-topic-list{display:grid;gap:12px;margin-top:16px;}
.contact-topic-item{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.06);}
.contact-topic-item i{width:36px;height:36px;border-radius:13px;background:rgba(14,165,233,.09);display:grid;place-items:center;color:#0284c7;flex:0 0 auto;}
.contact-topic-item span,.contact-team-member span{display:block;color:#0f172a;font-size:.98rem;font-weight:480;letter-spacing:-.012em;}
.contact-topic-item small,.contact-team-member small{display:block;color:#64748b;font-size:.86rem;font-weight:330;line-height:1.52;margin-top:3px;}
.contact-team-list{display:grid;gap:12px;margin-top:16px;}
.contact-team-member{display:flex;gap:12px;align-items:flex-start;padding:13px;border:1px solid rgba(15,23,42,.06);border-radius:18px;background:#fff;}
.contact-team-member__avatar{width:42px;height:42px;border-radius:16px;background:linear-gradient(135deg,rgba(14,165,233,.16),rgba(16,185,129,.11));color:#0369a1;display:grid;place-items:center;font-weight:500;flex:0 0 auto;}
.contact-team-member em{display:block;font-style:normal;color:#0284c7;font-size:.78rem;font-weight:390;margin-top:1px;}
.contact-form-pro{padding:24px;}
.contact-form-pro__head{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px;padding-bottom:18px;border-bottom:1px solid rgba(15,23,42,.08);}
.contact-form-pro__icon{width:46px;height:46px;border-radius:16px;background:rgba(14,165,233,.10);color:#0284c7;display:grid;place-items:center;flex:0 0 auto;}
.contact-form-pro .form-label{font-size:.84rem;font-weight:430;color:#334155;margin-bottom:6px;}
.contact-form-pro .form-control{border-radius:14px;border-color:rgba(148,163,184,.35);font-weight:340;padding:.72rem .85rem;}
.contact-form-pro textarea.form-control{resize:vertical;min-height:172px;}
.contact-captcha-pro{border-radius:18px;background:rgba(248,250,252,.82);border:1px solid rgba(15,23,42,.07);padding:14px;}
.contact-consent-pro{font-size:.88rem;color:#475569;}
.contact-form-pro__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;}
.contact-form-pro__actions .btn{font-weight:430;border-radius:14px;padding:.72rem 1.05rem;}
@media (max-width:991.98px){.contact-hero-pro,.contact-grid-pro{grid-template-columns:1fr;}.contact-hero-pro{padding:22px;}}

/* Cookie preference center */
.consent-overlay{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease;background:rgba(2,6,23,.46);backdrop-filter:blur(4px);}
.consent-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.consent-modal{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease,transform .18s ease;transform:translateY(10px);}
.consent-modal.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
.consent-modal__inner{width:min(760px,100%);border-radius:18px;background:#0f172a;border:1px solid rgba(148,163,184,.22);box-shadow:0 28px 90px rgba(2,6,23,.38);color:#e5eefc;overflow:hidden;}
.consent-modal__inner::before,.consent-modal__inner::after{display:none;}
.consent-modal__head{display:flex;gap:14px;padding:22px 22px 18px;}
.consent-modal__icon{width:36px;height:36px;border-radius:13px;background:rgba(14,165,233,.12);display:grid;place-items:center;color:#38bdf8;flex:0 0 auto;}
.consent-modal__title{font-size:1.04rem;font-weight:520;letter-spacing:-.02em;color:#fff;margin-bottom:8px;}
.consent-modal__text{margin:0;color:#9fb1ce;line-height:1.58;font-size:.94rem;font-weight:330;max-width:64ch;}
.consent-modal__link{color:#38d5ff;text-decoration:none;font-weight:430;}
.consent-modal__link:hover{text-decoration:underline;}
.consent-modal__options{padding:6px 22px 2px;border-top:1px solid rgba(148,163,184,.16);}
.consent-option{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 0;border-bottom:1px solid rgba(148,163,184,.12);}
.consent-option:last-child{border-bottom:0;}
.consent-option span{display:block;color:#fff;font-size:.94rem;font-weight:480;margin-bottom:4px;}
.consent-option small{display:block;color:#8fa3c2;font-size:.84rem;font-weight:320;line-height:1.45;}
.consent-switch{position:relative;display:inline-flex;width:46px;height:26px;flex:0 0 auto;}
.consent-switch input{position:absolute;opacity:0;pointer-events:none;}
.consent-switch span{position:absolute;inset:0;border-radius:999px;background:#334155;box-shadow:inset 0 0 0 1px rgba(255,255,255,.10);cursor:pointer;transition:.16s ease;}
.consent-switch span::after{content:'';position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:999px;background:#fff;box-shadow:0 4px 10px rgba(2,6,23,.25);transition:.16s ease;}
.consent-switch input:checked+span{background:linear-gradient(135deg,#fb923c,#ec4899);}
.consent-switch input:checked+span::after{transform:translateX(20px);}
.consent-switch.is-disabled span{opacity:.82;cursor:not-allowed;}
.consent-modal__actions{display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:18px 22px 22px;border-top:1px solid rgba(148,163,184,.16);background:rgba(15,23,42,.92);}
.consent-modal__actions .btn{height:44px;border-radius:12px;font-size:.92rem;font-weight:430;padding:.62rem 1rem;box-shadow:none;}
#cookieCustomizeBtn{border-color:rgba(56,189,248,.56);color:#dff6ff;background:rgba(15,23,42,.36);}
#cookieCustomizeBtn.is-active{background:rgba(14,165,233,.14);}
#cookieAcceptBtn{margin-left:auto;background:linear-gradient(135deg,#fb923c,#ec4899);font-weight:470;box-shadow:0 16px 34px rgba(236,72,153,.22);}
#cookieRejectBtn,#cookieSaveBtn{color:#f8fafc;border-color:rgba(148,163,184,.25);background:rgba(30,41,59,.62);font-weight:430;}
@media (max-width:576px){.consent-modal__head{padding:18px;}.consent-modal__options{padding-left:18px;padding-right:18px;}.consent-modal__actions{padding:16px 18px;justify-content:stretch;}.consent-modal__actions .btn,#cookieAcceptBtn{width:100%;margin-left:0;}.consent-option{align-items:flex-start;}}

/* Iteration 18: portal consent + editorial card refinements */
html.consent-locked,
html.consent-locked body{
	overflow:auto!important;
}
.consent-overlay{
	background:rgba(15,23,42,.18)!important;
	backdrop-filter:blur(1px)!important;
	-webkit-backdrop-filter:blur(1px)!important;
}
.consent-modal{
	inset:auto 0 24px 0!important;
	align-items:flex-end!important;
	justify-content:center!important;
	padding:0 18px!important;
	transform:translateY(18px)!important;
}
.consent-modal.is-open{transform:translateY(0)!important;}
.consent-modal__inner{
	width:min(760px,calc(100vw - 36px))!important;
	border-radius:24px!important;
	background:rgba(255,255,255,.96)!important;
	border:1px solid rgba(14,165,233,.16)!important;
	box-shadow:0 24px 70px rgba(15,23,42,.18)!important;
	color:#0f172a!important;
	overflow:hidden!important;
}
.consent-modal__inner::before{display:block!important;content:''!important;position:absolute!important;inset:0 auto 0 0!important;width:4px!important;background:linear-gradient(180deg,#0ea5e9,#22c55e)!important;opacity:.85!important;}
.consent-modal__inner::after{display:block!important;content:''!important;position:absolute!important;inset:0!important;background:radial-gradient(circle at 14% 0%,rgba(14,165,233,.13),transparent 38%),radial-gradient(circle at 88% 0%,rgba(16,185,129,.10),transparent 34%)!important;pointer-events:none!important;}
.consent-modal__head,
.consent-modal__options,
.consent-modal__actions{position:relative;z-index:1;}
.consent-modal__head{padding:20px 22px 16px!important;}
.consent-modal__icon{background:linear-gradient(135deg,rgba(14,165,233,.14),rgba(16,185,129,.11))!important;color:#0284c7!important;box-shadow:inset 0 0 0 1px rgba(14,165,233,.10);}
.consent-modal__title{color:#0f172a!important;font-weight:520!important;font-size:1.02rem!important;}
.consent-modal__text{color:#475569!important;font-weight:340!important;line-height:1.6!important;}
.consent-modal__link{color:#0284c7!important;font-weight:430!important;}
.consent-modal__options{padding:4px 22px 0!important;border-top:1px solid rgba(15,23,42,.07)!important;background:rgba(248,250,252,.54)!important;}
.consent-option{border-bottom:1px solid rgba(15,23,42,.07)!important;padding:13px 0!important;}
.consent-option span{color:#0f172a!important;font-weight:480!important;}
.consent-option small{color:#64748b!important;font-weight:330!important;}
.consent-switch span{background:#cbd5e1!important;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)!important;}
.consent-switch input:checked+span{background:linear-gradient(135deg,#0ea5e9,#22c55e)!important;}
.consent-modal__actions{background:rgba(255,255,255,.80)!important;border-top:1px solid rgba(15,23,42,.07)!important;padding:16px 22px 20px!important;gap:10px!important;}
.consent-modal__actions .btn{height:42px!important;border-radius:14px!important;font-size:.9rem!important;font-weight:420!important;padding:.56rem .95rem!important;}
#cookieCustomizeBtn{border-color:rgba(14,165,233,.28)!important;color:#0369a1!important;background:#fff!important;}
#cookieCustomizeBtn.is-active{background:rgba(14,165,233,.09)!important;}
#cookieRejectBtn,#cookieSaveBtn{color:#0f172a!important;border-color:rgba(148,163,184,.36)!important;background:#fff!important;font-weight:420!important;}
#cookieAcceptBtn{background:linear-gradient(135deg,#0ea5e9,#0284c7)!important;border:0!important;color:#fff!important;font-weight:430!important;box-shadow:0 14px 28px rgba(14,165,233,.22)!important;}
#cookieAcceptBtn:hover,#cookieRejectBtn:hover,#cookieSaveBtn:hover,#cookieCustomizeBtn:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(15,23,42,.08)!important;}
@media (max-width:576px){
	.consent-modal{bottom:14px!important;padding:0 12px!important;}
	.consent-modal__inner{width:calc(100vw - 24px)!important;border-radius:20px!important;}
	.consent-modal__head{padding:18px!important;}
	.consent-modal__actions{padding:14px 18px 18px!important;}
}

/* richer text use in magazine cards */
.home-magazine-grid .home-article-card__body{min-height:260px;}
.home-magazine-grid .home-article-card p{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:5;}
.home-magazine-grid .home-article-card--wide .home-article-card__body{min-height:320px;justify-content:flex-start;padding:26px;}
.home-magazine-grid .home-article-card--wide p{-webkit-line-clamp:9;font-size:.97rem;line-height:1.68;}
.home-magazine-grid .home-article-card--feature .home-article-card__body{min-height:330px;}
.home-magazine-grid .home-article-card--feature p{-webkit-line-clamp:10;line-height:1.68;}
@media (max-width:575.98px){
	.home-magazine-grid .home-article-card__body,
	.home-magazine-grid .home-article-card--wide .home-article-card__body,
	.home-magazine-grid .home-article-card--feature .home-article-card__body{min-height:auto;}
	.home-magazine-grid .home-article-card p,
	.home-magazine-grid .home-article-card--wide p,
	.home-magazine-grid .home-article-card--feature p{-webkit-line-clamp:4;}
}

/* Iteration 19: refined consent controls and magazine text rhythm */
.consent-overlay{
	background:rgba(15,23,42,.12)!important;
	backdrop-filter:blur(.35px)!important;
	-webkit-backdrop-filter:blur(.35px)!important;
}
.consent-modal{bottom:28px!important;}
.consent-modal__inner{
	width:min(760px,calc(100vw - 44px))!important;
	background:rgba(255,255,255,.975)!important;
	box-shadow:0 24px 64px rgba(15,23,42,.15)!important;
}
.consent-option{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) 54px!important;
	align-items:center!important;
	gap:18px!important;
}
.consent-option > div > span{
	display:block!important;
	color:#0f172a!important;
	font-weight:480!important;
	margin:0 0 4px!important;
	line-height:1.25!important;
}
.consent-option > div > small{
	display:block!important;
	color:#64748b!important;
	font-weight:330!important;
	line-height:1.45!important;
}
.consent-switch{
	justify-self:end!important;
	align-self:center!important;
	width:48px!important;
	height:28px!important;
	margin:0!important;
	padding:0!important;
	position:relative!important;
	display:block!important;
}
.consent-switch input{position:absolute!important;opacity:0!important;pointer-events:none!important;}
.consent-switch > span{
	display:block!important;
	position:absolute!important;
	inset:0!important;
	width:48px!important;
	height:28px!important;
	margin:0!important;
	padding:0!important;
	border-radius:999px!important;
	background:#d3dee9!important;
	box-shadow:inset 0 0 0 1px rgba(15,23,42,.10)!important;
	transition:background .16s ease, box-shadow .16s ease!important;
}
.consent-switch > span::after{
	content:''!important;
	position:absolute!important;
	width:22px!important;
	height:22px!important;
	left:3px!important;
	top:3px!important;
	border-radius:999px!important;
	background:#fff!important;
	box-shadow:0 4px 12px rgba(15,23,42,.18)!important;
	transition:transform .16s ease!important;
}
.consent-switch input:checked + span{background:linear-gradient(135deg,#0ea5e9,#22c55e)!important;}
.consent-switch input:checked + span::after{transform:translateX(20px)!important;}
.consent-switch.is-disabled{opacity:.88!important;}
.consent-modal__actions{justify-content:flex-start!important;}
#cookieAcceptBtn{margin-left:auto!important;}
#cookieRejectBtn[hidden],#cookieSaveBtn[hidden]{display:none!important;}
@media (max-width:576px){
	.consent-modal{bottom:12px!important;}
	.consent-option{grid-template-columns:minmax(0,1fr) 48px!important;align-items:center!important;}
	#cookieAcceptBtn{margin-left:0!important;}
}


/* Iteration 21: professional fuel map polish */
.fuel-map-hero {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at 12% 18%, rgba(14, 165, 233, .15), transparent 34%),
		radial-gradient(circle at 90% 8%, rgba(34, 197, 94, .12), transparent 32%),
		linear-gradient(135deg, #fff, rgba(248, 250, 252, .9));
}

.fuel-map-hero::after {
	content: "";
	position: absolute;
	inset: auto -90px -120px auto;
	width: 300px;
	height: 300px;
	border-radius: 999px;
	background: rgba(14, 165, 233, .08);
	pointer-events: none;
}

.fuel-map-hero__copy,
.fuel-map-price-panel {
	position: relative;
	z-index: 1;
}

.fuel-map-insights {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.fuel-map-insight-card {
	border: 1px solid rgba(15, 23, 42, .08);
	border-radius: 22px;
	background: rgba(255, 255, 255, .86);
	box-shadow: 0 18px 42px rgba(15, 23, 42, .055);
	padding: 16px;
	display: grid;
	grid-template-columns: 42px 1fr;
	grid-template-areas: "icon label" "icon value";
	gap: 3px 12px;
	align-items: center;
}

.fuel-map-insight-card > i {
	grid-area: icon;
	width: 42px;
	height: 42px;
	border-radius: 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(14, 165, 233, .1);
	border: 1px solid rgba(14, 165, 233, .18);
	color: #0284c7;
}

.fuel-map-insight-card span {
	grid-area: label;
	font-size: .8rem;
	color: #64748b;
	font-weight: 350;
}

.fuel-map-insight-card em {
	grid-area: value;
	font-size: 1.28rem;
	font-style: normal;
	font-weight: 520;
	letter-spacing: -.03em;
	color: #0f172a;
}

.fuel-map-insight-card small {
	grid-area: value;
	font-size: .86rem;
	line-height: 1.45;
	color: #64748b;
	font-weight: 340;
}

.fuel-map-insight-card--wide {
	grid-template-columns: 42px 1fr;
}

.filter-item--sort {
	min-width: 210px;
}

.map-tools-card {
	background: rgba(255,255,255,.88);
}

.hero-filter-bar {
	gap: 12px;
	align-items: stretch;
}

.hero-filter-bar .filter-item,
.hero-filter-actions,
.hero-radius-wrap {
	min-height: 54px;
}

.hero-filter-actions .btn,
.filter-btn {
	font-weight: 430 !important;
	border-radius: 15px !important;
}

.map--dedicated {
	box-shadow: 0 26px 70px rgba(15, 23, 42, .12);
	border: 1px solid rgba(15, 23, 42, .08);
}

.fuel-map-result-count {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 11px;
	border-radius: 999px;
	background: rgba(14, 165, 233, .08);
	border: 1px solid rgba(14, 165, 233, .16);
	font-weight: 420 !important;
}

.stations-grid {
	gap: 1rem;
}

.station-card {
	position: relative;
	padding: 1rem;
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,250,252,.78));
	border-color: rgba(15, 23, 42, .08);
}

.station-card::before {
	content: "";
	position: absolute;
	inset: 0 auto 0 0;
	width: 4px;
	border-radius: 22px 0 0 22px;
	background: linear-gradient(180deg, #0ea5e9, #22c55e);
	opacity: .7;
}

.station-name {
	font-weight: 520;
	letter-spacing: -.018em;
	font-size: 1rem;
	padding-left: 2px;
}

.station-addr {
	font-size: .88rem;
	line-height: 1.45;
	font-weight: 330;
}

.station-brand-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: rgba(14, 165, 233, .08);
	border: 1px solid rgba(14, 165, 233, .16);
	color: #0369a1;
	font-size: .76rem;
	font-weight: 430;
	white-space: nowrap;
}

.prices {
	gap: .42rem;
	margin-top: .72rem;
}

.price-pill {
	padding: .32rem .62rem;
	border-radius: 999px;
	font-size: .82rem;
	font-weight: 430;
	background: rgba(255,255,255,.82);
}

.station-actions a,
.station-actions .btn,
#loadMoreBtn {
	font-weight: 430 !important;
	border-radius: 13px !important;
}

.station-upd,
.station-upd span {
	font-weight: 360;
}

.leaflet-popup-content .price-pill {
	font-weight: 430;
}

@media (max-width: 991.98px) {
	.fuel-map-insights { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 575.98px) {
	.fuel-map-insights { grid-template-columns: 1fr; }
	.filter-item--sort { min-width: 0; }
}

/* Iteration 22: stronger fuel map UX and lighter typography */
.fuel-map-hero,
.map-tools-card,
.fuel-map-insight-card,
.fuel-map-workflow,
.station-card {
	box-shadow: 0 26px 72px rgba(15,23,42,.07);
}

.fuel-map-hero__copy h1,
.map-tools-card h2,
.fuel-map-workflow span,
.station-name,
.fuel-map-insight-card em,
.fuel-map-price-panel em,
.section-head h2,
.dk-related-strip h2 {
	font-weight: 450 !important;
}

.fuel-map-hero .btn,
.map-tools-card .btn,
.station-actions .btn,
#loadMoreBtn,
.fuel-map-result-count,
.station-brand-pill,
.price-pill,
.section-head .btn {
	font-weight: 410 !important;
}

.fuel-map-hero {
	padding: clamp(24px, 3vw, 38px);
	border-radius: 32px;
	grid-template-columns: minmax(0, 1fr) minmax(340px, 440px);
	gap: 28px;
}

.fuel-map-hero__copy h1 {
	line-height: 1.04;
	max-width: 820px;
}

.fuel-map-price-panel {
	border-radius: 28px;
	padding: 22px;
}

.fuel-price-mini-grid {
	gap: 10px;
}

.fuel-price-mini-grid div {
	border-radius: 18px;
	padding: 13px;
	background: rgba(248,250,252,.82);
	border: 1px solid rgba(148,163,184,.2);
}

.fuel-map-insights {
	gap: 16px;
}

.fuel-map-insight-card {
	border-radius: 24px;
	padding: 18px;
	background: rgba(255,255,255,.82);
}

.fuel-map-workflow {
	display: grid;
	grid-template-columns: minmax(230px, .78fr) minmax(0, 1.22fr);
	gap: 16px;
	padding: 18px;
	border: 1px solid rgba(15,23,42,.075);
	border-radius: 28px;
	background:
		radial-gradient(circle at 8% 8%, rgba(14,165,233,.12), transparent 30%),
		linear-gradient(135deg, rgba(255,255,255,.9), rgba(240,249,255,.56));
}

.fuel-map-workflow__intro {
	padding: 4px 6px;
}

.fuel-map-workflow__intro span {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	font-size: 1.04rem;
	letter-spacing: -.018em;
	color: #0f172a;
}

.fuel-map-workflow__intro span i {
	width: 34px;
	height: 34px;
	border-radius: 13px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(14,165,233,.1);
	color: #0284c7;
}

.fuel-map-workflow__intro p,
.fuel-map-step small {
	margin: 8px 0 0;
	line-height: 1.55;
	font-weight: 330;
	color: #64748b;
}

.fuel-map-workflow__steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.fuel-map-step {
	padding: 15px;
	border-radius: 22px;
	background: rgba(255,255,255,.76);
	border: 1px solid rgba(148,163,184,.22);
}

.fuel-map-step > i {
	width: 38px;
	height: 38px;
	border-radius: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(34,197,94,.09);
	color: #059669;
	margin-bottom: 10px;
}

.fuel-map-step span {
	display: block;
	font-size: .94rem;
	letter-spacing: -.01em;
	color: #0f172a;
}

.map-tools-card {
	border-radius: 28px;
	padding: 24px;
	background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,250,252,.78));
}

.map-tools-card__head {
	margin-bottom: 20px;
}

.hero-filter-bar {
	display: grid;
	grid-template-columns: minmax(240px, 1.1fr) minmax(170px, .72fr) minmax(190px, .74fr) minmax(230px, .9fr);
	gap: 12px;
}

.hero-filter-bar .filter-item,
.hero-radius-wrap {
	border-radius: 18px;
	background: rgba(255,255,255,.82);
	border: 1px solid rgba(148,163,184,.22);
}

.hero-filter-actions {
	display: flex;
	gap: 9px;
}

.hero-filter-actions .btn {
	min-height: 54px;
}

.map--dedicated {
	border-radius: 30px;
	min-height: 560px;
}

.stations-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.08rem;
}

.station-card {
	padding: 18px;
	border-radius: 26px;
	overflow: hidden;
	background:
		radial-gradient(circle at 96% 8%, rgba(14,165,233,.1), transparent 28%),
		linear-gradient(180deg, rgba(255,255,255,.94), rgba(248,250,252,.82));
}

.station-card__head {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) auto;
	gap: 12px;
	align-items: start;
}

.station-card__icon {
	width: 44px;
	height: 44px;
	border-radius: 16px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(14,165,233,.09);
	border: 1px solid rgba(14,165,233,.17);
	color: #0284c7;
}

.station-card__main {
	min-width: 0;
}

.station-name {
	font-size: 1.02rem;
	line-height: 1.25;
}

.station-addr {
	margin-top: 4px;
}

.station-card__meta {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
	margin-top: 12px;
}

.station-upd {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 8px;
	border-radius: 999px;
	background: rgba(248,250,252,.86);
	border: 1px solid rgba(148,163,184,.18);
	font-size: .76rem;
}

.prices--station {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
	margin-top: 14px;
}

.price-pill {
	display: grid;
	gap: 2px;
	padding: 8px 10px;
	border-radius: 16px;
	background: rgba(255,255,255,.82);
}

.price-pill small {
	font-size: .68rem;
	line-height: 1;
	font-weight: 390;
	color: #64748b;
}

.price-pill em {
	font-style: normal;
	font-size: .84rem;
	font-weight: 430;
	color: #0f172a;
	white-space: nowrap;
}

.price-pill--best {
	background: rgba(236,253,245,.88);
	border-color: rgba(34,197,94,.28);
}

.price-pill--best small,
.price-pill--best em {
	color: #047857;
}

.station-actions {
	margin-top: 14px;
}

.station-actions .btn {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 38px;
	padding-inline: 12px;
}

.leaflet-popup-content .price-pill {
	display: inline-grid;
}

@media (max-width: 1199.98px) {
	.hero-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.fuel-map-workflow { grid-template-columns: 1fr; }
}

@media (max-width: 767.98px) {
	.fuel-map-hero,
	.hero-filter-bar,
	.fuel-map-workflow__steps,
	.stations-grid,
	.prices--station { grid-template-columns: 1fr; }
	.station-card__head { grid-template-columns: 44px minmax(0, 1fr); }
	.station-brand-pill { grid-column: 1 / -1; width: fit-content; }
	.map--dedicated { min-height: 430px; }
}

/* Iteration 23: stronger fuel map controls with lighter typography */
.fuel-map-hero :where(h1,h2,h3,h4,h5,h6,.btn,button,label,span,strong,b) {
	font-weight: 410 !important;
}

.fuel-map-hero .dk-eyebrow,
.fuel-map-hero h1 {
	font-weight: 440 !important;
}

.hero-filter-bar {
	grid-template-columns: minmax(220px, 1.4fr) minmax(170px, .8fr) minmax(190px, .9fr) minmax(230px, .95fr);
	align-items: stretch;
	gap: 12px;
}

.hero-filter-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.hero-radius-wrap {
	grid-column: 1 / -1;
	width: 100%;
	padding: 14px 16px 12px !important;
	background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(240,249,255,.68));
	border: 1px solid rgba(14,165,233,.15) !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
}

.hero-radius-wrap .small {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	font-size: .86rem;
	color: #64748b !important;
	margin-bottom: 10px;
}

#radiusLabel {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 26px;
	padding: 0 8px;
	border-radius: 999px;
	background: rgba(14, 165, 233, .10);
	border: 1px solid rgba(14, 165, 233, .16);
	color: #0369a1;
	font-weight: 420 !important;
	font-variant-numeric: tabular-nums;
}

.hero-radius-wrap input[type='range'],
#radiusRange {
	width: 100% !important;
	display: block;
	accent-color: #0ea5e9;
	margin: 0;
}

.hero-filter-actions .btn,
.filter-btn,
#loadMoreBtn,
.station-actions .btn,
.station-actions a {
	font-weight: 410 !important;
	box-shadow: none !important;
}

.hero-filter-actions .btn.btn-primary,
.filter-btn.btn-primary {
	background: linear-gradient(135deg, #0ea5e9, #06b6d4) !important;
	border: 0 !important;
	color: #fff !important;
}

.hero-filter-actions .btn.btn-outline-primary,
.filter-btn.btn-outline-primary,
#loadMoreBtn {
	background: linear-gradient(180deg, #fff, rgba(240,249,255,.86)) !important;
	border-color: rgba(14,165,233,.24) !important;
	color: #0369a1 !important;
}

.map--dedicated {
	min-height: 620px;
	box-shadow: 0 24px 68px rgba(15, 23, 42, .105) !important;
}

.station-card {
	box-shadow: 0 18px 46px rgba(15,23,42,.055);
	transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}

.station-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 24px 58px rgba(15,23,42,.075);
	border-color: rgba(14,165,233,.18);
}

.station-name {
	font-weight: 430 !important;
}

.station-brand-pill,
.price-pill,
.fuel-map-result-count {
	font-weight: 400 !important;
}

.price-pill.price-best,
.price-pill.is-best,
.price-pill.best {
	font-weight: 430 !important;
}

@media (max-width: 1100px) {
	.hero-filter-bar {
		grid-template-columns: 1fr 1fr;
	}
	.hero-filter-actions,
	.hero-radius-wrap {
		grid-column: 1 / -1;
	}
}

@media (max-width: 720px) {
	.hero-filter-bar {
		grid-template-columns: 1fr;
	}
	.hero-filter-actions,
	.hero-radius-wrap {
		grid-column: auto;
	}
}

/* Iteration 25: professional Trip Costs public section */
.trip-index-hero,
.trip-intro-strip,
.trip-panel,
.trip-side-card,
.trip-card,
.trip-empty-card {
	border: 1px solid rgba(148, 163, 184, .22);
	background: rgba(255, 255, 255, .82);
	box-shadow: 0 22px 60px rgba(15, 23, 42, .07);
}

.trip-index-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(360px, .72fr);
	gap: 24px;
	align-items: stretch;
	padding: clamp(24px, 4vw, 42px);
	border-radius: 34px;
	overflow: hidden;
	background:
		radial-gradient(780px 360px at 5% 0%, rgba(14, 165, 233, .18), transparent 62%),
		radial-gradient(620px 300px at 92% 18%, rgba(16, 185, 129, .14), transparent 62%),
		linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.78));
}

.trip-index-hero::before {
	content: '';
	position: absolute;
	inset: auto -120px -160px auto;
	width: 340px;
	height: 340px;
	border-radius: 999px;
	background: linear-gradient(135deg, rgba(14,165,233,.12), rgba(16,185,129,.10));
	pointer-events: none;
}

.trip-index-hero__copy,
.trip-index-hero__panel {
	position: relative;
	z-index: 1;
}

.trip-index-hero h1 {
	max-width: 760px;
	margin: 10px 0 14px;
	font-size: clamp(2rem, 4vw, 4rem);
	line-height: .98;
	letter-spacing: -.055em;
	font-weight: 470;
	color: #0f172a;
}

.trip-index-hero p {
	max-width: 720px;
	margin: 0;
	font-size: clamp(1rem, 1.45vw, 1.17rem);
	line-height: 1.75;
	font-weight: 370;
	color: #475569;
}

.trip-index-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 11px;
	margin-top: 24px;
}

.trip-index-hero .btn,
.trip-card__action,
.trip-detail .btn {
	font-weight: 410 !important;
	box-shadow: none !important;
}

.trip-index-hero .btn-primary,
.trip-detail .btn-primary {
	border: 0;
	background: linear-gradient(135deg, #0ea5e9, #06b6d4);
	color: #fff;
}

.trip-index-hero .btn-outline-primary,
.trip-detail .btn-outline-primary {
	border-color: rgba(14, 165, 233, .25);
	background: rgba(255, 255, 255, .74);
	color: #0369a1;
}

.trip-index-hero__panel {
	display: grid;
	align-content: space-between;
	gap: 16px;
	padding: 16px;
	border-radius: 28px;
	background: rgba(255,255,255,.74);
	border: 1px solid rgba(148,163,184,.18);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}

.trip-index-search {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
}

.trip-index-search label {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 52px;
	padding: 0 14px;
	border-radius: 18px;
	background: #fff;
	border: 1px solid rgba(148,163,184,.24);
	color: #64748b;
	margin: 0;
}

.trip-index-search input {
	width: 100%;
	border: 0;
	outline: 0;
	background: transparent;
	color: #0f172a;
	font-weight: 380;
	font-size: .96rem;
}

.trip-index-search .btn {
	min-height: 52px;
	padding-inline: 18px;
	border-radius: 18px;
}

.trip-hero-stats {
	display: grid;
	grid-template-columns: 1fr;
	gap: 10px;
}

.trip-hero-stats span {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	grid-template-areas: 'icon value' 'icon label';
	gap: 0 12px;
	align-items: center;
	padding: 13px 14px;
	border-radius: 20px;
	background: rgba(248,250,252,.88);
	border: 1px solid rgba(148,163,184,.18);
}

.trip-hero-stats i {
	grid-area: icon;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 15px;
	background: rgba(14,165,233,.10);
	color: #0284c7;
}

.trip-hero-stats em {
	grid-area: value;
	font-style: normal;
	font-size: 1rem;
	font-weight: 450;
	color: #0f172a;
}

.trip-hero-stats small {
	grid-area: label;
	font-size: .78rem;
	font-weight: 360;
	color: #64748b;
}

.trip-intro-strip {
	display: grid;
	grid-template-columns: minmax(260px, .55fr) minmax(0, 1fr);
	gap: 22px;
	align-items: center;
	padding: 24px 26px;
	border-radius: 28px;
	background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(240,249,255,.66));
}

.trip-intro-strip h2,
.trip-featured h2,
.trip-routes-section h2,
.trip-detail h2 {
	margin: 4px 0 0;
	font-size: clamp(1.35rem, 2vw, 2rem);
	line-height: 1.12;
	letter-spacing: -.03em;
	font-weight: 450;
}

.trip-intro-strip p {
	margin: 0;
	line-height: 1.72;
	font-weight: 360;
	color: #475569;
}

.trip-featured-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(260px, .75fr);
	gap: 18px;
}

.trip-featured-grid .trip-card--large {
	grid-row: span 2;
}

.trip-route-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.trip-route-grid--compact {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.trip-card {
	display: grid;
	grid-template-rows: auto 1fr auto;
	min-height: 100%;
	border-radius: 28px;
	overflow: hidden;
	text-decoration: none;
	color: #0f172a;
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.trip-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 28px 72px rgba(15,23,42,.10);
	border-color: rgba(14,165,233,.22);
	color: #0f172a;
}

.trip-card__media {
	position: relative;
	display: block;
	min-height: 190px;
	background: #e2e8f0;
	overflow: hidden;
}

.trip-card__media::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 35%, rgba(15,23,42,.48));
	pointer-events: none;
}

.trip-card__media img {
	width: 100%;
	height: 100%;
	min-height: 190px;
	object-fit: cover;
	transition: transform .22s ease;
}

.trip-card:hover .trip-card__media img {
	transform: scale(1.035);
}

.trip-card__route-pill {
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 14px;
	z-index: 1;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	max-width: calc(100% - 28px);
	padding: 8px 11px;
	border-radius: 999px;
	background: rgba(255,255,255,.88);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	font-size: .82rem;
	font-weight: 410;
	color: #0f172a;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.trip-card__route-pill i {
	color: #0284c7;
}

.trip-card__route-pill em {
	font-style: normal;
	color: #64748b;
}

.trip-card__body {
	display: grid;
	align-content: start;
	gap: 11px;
	padding: 18px 18px 14px;
}

.trip-card__route {
	display: none;
}

.trip-card__title {
	display: block;
	font-size: 1.16rem;
	line-height: 1.22;
	letter-spacing: -.02em;
	font-weight: 460;
}

.trip-card__text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	font-size: .93rem;
	line-height: 1.62;
	font-weight: 350;
	color: #64748b;
}

.trip-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 2px;
}

.trip-card__meta span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 9px;
	border-radius: 999px;
	background: rgba(248,250,252,.9);
	border: 1px solid rgba(148,163,184,.16);
	font-size: .78rem;
	font-weight: 380;
	color: #475569;
}

.trip-card__meta i {
	color: #0ea5e9;
}

.trip-card__action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin: 0 18px 18px;
	padding: 10px 12px;
	border-radius: 16px;
	background: linear-gradient(180deg, #fff, rgba(240,249,255,.86));
	border: 1px solid rgba(14,165,233,.16);
	font-size: .88rem;
	color: #0369a1;
}

.trip-card--large .trip-card__media {
	min-height: 340px;
}

.trip-card--large .trip-card__media img {
	min-height: 340px;
}

.trip-card--large .trip-card__title {
	font-size: clamp(1.34rem, 2vw, 1.74rem);
}

.trip-card--large .trip-card__text {
	-webkit-line-clamp: 5;
	font-size: .98rem;
}

.trip-card--wide {
	grid-column: span 2;
	grid-template-columns: minmax(260px, .86fr) minmax(0, 1fr);
	grid-template-rows: 1fr auto;
}

.trip-card--wide .trip-card__media {
	grid-row: 1 / 3;
	min-height: 100%;
}

.trip-card--wide .trip-card__media img {
	height: 100%;
	min-height: 290px;
}

.trip-card--wide .trip-card__body {
	padding: 24px 22px 14px;
}

.trip-card--wide .trip-card__title {
	font-size: clamp(1.28rem, 1.7vw, 1.62rem);
}

.trip-card--wide .trip-card__text {
	-webkit-line-clamp: 6;
}

.trip-count-pill {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 13px;
	border-radius: 999px;
	background: rgba(14,165,233,.10);
	border: 1px solid rgba(14,165,233,.18);
	font-size: .84rem;
	font-weight: 410;
	color: #0369a1;
}

.trip-empty-card {
	padding: 26px;
	border-radius: 24px;
	font-weight: 380;
	color: #64748b;
}

/* Trip detail */
.trip-detail-hero {
	position: relative;
	min-height: clamp(440px, 58vw, 620px);
	display: flex;
	align-items: flex-end;
	padding: clamp(24px, 5vw, 52px);
	border-radius: 36px;
	overflow: hidden;
	background-image: linear-gradient(180deg, rgba(15,23,42,.16), rgba(15,23,42,.66)), var(--trip-bg);
	background-size: cover;
	background-position: center;
	box-shadow: 0 28px 80px rgba(15,23,42,.14);
}

.trip-detail-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(760px 320px at 0% 100%, rgba(14,165,233,.25), transparent 65%),
		linear-gradient(90deg, rgba(15,23,42,.44), rgba(15,23,42,.16));
	pointer-events: none;
}

.trip-detail-hero__content {
	position: relative;
	z-index: 1;
	max-width: 860px;
	color: #fff;
}

.trip-detail-hero .dk-eyebrow {
	width: fit-content;
	padding: 8px 11px;
	border-radius: 999px;
	background: rgba(255,255,255,.14);
	border: 1px solid rgba(255,255,255,.22);
	color: #e0f2fe;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.trip-detail-hero h1 {
	margin: 14px 0 14px;
	font-size: clamp(2.1rem, 5vw, 4.8rem);
	line-height: .98;
	letter-spacing: -.06em;
	font-weight: 470;
	text-wrap: balance;
}

.trip-detail-hero p {
	max-width: 780px;
	margin: 0;
	font-size: clamp(1rem, 1.4vw, 1.18rem);
	line-height: 1.72;
	font-weight: 350;
	color: rgba(255,255,255,.86);
}

.trip-detail-hero__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 22px;
}

.trip-detail-hero__meta span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 12px;
	border-radius: 999px;
	background: rgba(255,255,255,.13);
	border: 1px solid rgba(255,255,255,.22);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	font-size: .88rem;
	font-weight: 390;
	color: rgba(255,255,255,.92);
}

.trip-detail-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 22px;
	align-items: start;
}

.trip-detail-main {
	min-width: 0;
}

.trip-panel,
.trip-side-card {
	border-radius: 28px;
	padding: clamp(18px, 2.5vw, 28px);
	background: rgba(255,255,255,.86);
}

.trip-content-block {
	font-size: 1rem;
	line-height: 1.82;
	font-weight: 360;
	color: #334155;
}

.trip-content-block h2,
.trip-content-block h3,
.trip-content-block h4 {
	font-weight: 460;
	letter-spacing: -.025em;
	color: #0f172a;
	margin-top: 1.2em;
}

.trip-content-block p:last-child,
.trip-content-block ul:last-child,
.trip-content-block ol:last-child {
	margin-bottom: 0;
}

.trip-content-block ul,
.trip-content-block ol {
	padding-left: 1.2rem;
}

.trip-cost-table-wrap {
	overflow: auto;
	border-radius: 20px;
	border: 1px solid rgba(148,163,184,.20);
	background: #fff;
}

.trip-cost-table {
	width: 100%;
	min-width: 560px;
	border-collapse: collapse;
}

.trip-cost-table th,
.trip-cost-table td {
	padding: 13px 14px;
	border-bottom: 1px solid rgba(148,163,184,.16);
	font-size: .92rem;
	text-align: left;
	font-weight: 380;
	color: #334155;
}

.trip-cost-table th {
	background: rgba(248,250,252,.92);
	font-size: .76rem;
	letter-spacing: .05em;
	text-transform: uppercase;
	font-weight: 440;
	color: #64748b;
}

.trip-cost-table tr:last-child td {
	border-bottom: 0;
}

.trip-cost-table td:nth-child(3),
.trip-cost-table td:nth-child(4) {
	font-variant-numeric: tabular-nums;
	color: #0f172a;
}

.trip-note {
	display: flex;
	gap: 9px;
	align-items: flex-start;
	margin: 0;
	padding: 12px 14px;
	border-radius: 18px;
	background: rgba(14,165,233,.08);
	border: 1px solid rgba(14,165,233,.14);
	font-size: .9rem;
	line-height: 1.58;
	font-weight: 350;
	color: #475569;
}

.trip-note i {
	margin-top: 3px;
	color: #0284c7;
}

.trip-fuel-compare {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}

.trip-fuel-card {
	display: grid;
	gap: 6px;
	padding: 16px;
	border-radius: 22px;
	background: linear-gradient(180deg, #fff, rgba(248,250,252,.88));
	border: 1px solid rgba(148,163,184,.18);
}

.trip-fuel-card span {
	font-size: .82rem;
	font-weight: 410;
	color: #64748b;
}

.trip-fuel-card em {
	font-style: normal;
	font-size: 1.45rem;
	line-height: 1;
	letter-spacing: -.03em;
	font-weight: 470;
	color: #0f172a;
}

.trip-fuel-card small {
	font-size: .78rem;
	font-weight: 350;
	color: #64748b;
}

.trip-detail-side {
	position: sticky;
	top: 94px;
}

.trip-side-card__title {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 14px;
	font-size: 1rem;
	line-height: 1.35;
	font-weight: 450;
	letter-spacing: -.015em;
	color: #0f172a;
}

.trip-side-card__title i {
	color: #0ea5e9;
}

.trip-related-list {
	display: grid;
	gap: 10px;
}

.trip-related-list a,
.trip-mini-card {
	display: grid;
	grid-template-columns: 68px minmax(0, 1fr);
	gap: 11px;
	align-items: center;
	padding: 9px;
	border-radius: 18px;
	background: rgba(248,250,252,.84);
	border: 1px solid rgba(148,163,184,.16);
	text-decoration: none;
	color: #0f172a;
	transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.trip-related-list a:hover,
.trip-mini-card:hover {
	transform: translateY(-1px);
	border-color: rgba(14,165,233,.20);
	background: #fff;
	color: #0f172a;
}

.trip-related-list img,
.trip-mini-card img {
	width: 68px;
	height: 58px;
	object-fit: cover;
	border-radius: 14px;
}

.trip-related-list span,
.trip-mini-card span {
	display: grid;
	gap: 4px;
	font-size: .9rem;
	line-height: 1.28;
	font-weight: 420;
}

.trip-related-list small,
.trip-mini-card small {
	font-size: .76rem;
	font-weight: 340;
	color: #64748b;
}

.trip-mini-card {
	min-height: 100%;
}

.trip-detail :where(strong,b,.btn,h1,h2,h3,h4,h5,h6),
.trip-routes-section :where(strong,b,.btn,h1,h2,h3,h4,h5,h6),
.trip-featured :where(strong,b,.btn,h1,h2,h3,h4,h5,h6),
.trip-index-hero :where(strong,b,.btn,h1,h2,h3,h4,h5,h6) {
	font-weight: 450 !important;
}

.trip-detail .dk-eyebrow,
.trip-routes-section .dk-eyebrow,
.trip-featured .dk-eyebrow,
.trip-index-hero .dk-eyebrow,
.trip-intro-strip .dk-eyebrow {
	font-weight: 420 !important;
}

@media (max-width: 1199.98px) {
	.trip-index-hero,
	.trip-detail-layout {
		grid-template-columns: 1fr;
	}
	.trip-detail-side {
		position: static;
	}
	.trip-featured-grid,
	.trip-route-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767.98px) {
	.trip-index-hero {
		padding: 22px;
		border-radius: 26px;
	}
	.trip-index-hero__panel,
	.trip-index-search,
	.trip-intro-strip,
	.trip-featured-grid,
	.trip-route-grid,
	.trip-fuel-compare {
		grid-template-columns: 1fr;
	}
	.trip-card--large,
	.trip-card--wide {
		grid-column: auto;
		grid-template-columns: 1fr;
		grid-template-rows: auto 1fr auto;
	}
	.trip-card--wide .trip-card__media {
		grid-row: auto;
	}
	.trip-card__media,
	.trip-card__media img,
	.trip-card--large .trip-card__media,
	.trip-card--large .trip-card__media img,
	.trip-card--wide .trip-card__media img {
		min-height: 210px;
	}
	.trip-detail-hero {
		min-height: 480px;
		border-radius: 26px;
	}
	.trip-panel,
	.trip-side-card {
		border-radius: 22px;
	}
}

/* Iteration 26: broader car-trip section with travel planning blocks */
.trip-index-hero--travel {
	background:
		radial-gradient(760px 360px at 5% 0%, rgba(34,211,238,.18), transparent 60%),
		radial-gradient(720px 360px at 95% 10%, rgba(16,185,129,.13), transparent 62%),
		linear-gradient(135deg, rgba(255,255,255,.96), rgba(240,249,255,.72));
}

.trip-index-hero--travel h1,
.trip-detail--travel h1,
.trip-detail--travel h2,
.trip-routes-section h2,
.trip-featured h2 {
	font-weight: 430 !important;
}

.trip-search-hint {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 16px;
	background: rgba(14,165,233,.08);
	border: 1px solid rgba(14,165,233,.14);
	font-size: .86rem;
	line-height: 1.45;
	font-weight: 340;
	color: #475569;
}
.trip-search-hint i { color: #0284c7; }

.trip-card__media::after {
	background: linear-gradient(180deg, rgba(15,23,42,.04) 26%, rgba(15,23,42,.58));
}

.trip-card--large .trip-card__text { -webkit-line-clamp: 6; }
.trip-card--wide .trip-card__text { -webkit-line-clamp: 7; }

.trip-detail--travel .trip-detail-hero {
	background-image:
		linear-gradient(180deg, rgba(15,23,42,.10), rgba(15,23,42,.72)),
		var(--trip-bg);
}
.trip-detail--travel .trip-detail-hero::before {
	background:
		radial-gradient(760px 320px at 0% 100%, rgba(14,165,233,.22), transparent 62%),
		linear-gradient(90deg, rgba(15,23,42,.62), rgba(15,23,42,.20));
}

.trip-content-block--lead {
	background:
		radial-gradient(520px 240px at 0% 0%, rgba(14,165,233,.10), transparent 62%),
		linear-gradient(180deg, rgba(255,255,255,.94), rgba(248,250,252,.86));
}

.trip-content-block .dk-eyebrow {
	margin-bottom: 12px;
}

.trip-content-block h2,
.trip-content-block h3 {
	font-weight: 430 !important;
}

.trip-content-block :where(strong,b) {
	font-weight: 430 !important;
}

.trip-content-block ul {
	display: grid;
	gap: 8px;
	margin-top: 12px;
}
.trip-content-block li {
	padding-left: 2px;
}

.trip-side-card--summary {
	background:
		radial-gradient(320px 180px at 0% 0%, rgba(14,165,233,.11), transparent 62%),
		linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,250,252,.86));
}

.trip-side-metrics {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.trip-side-metrics span {
	display: grid;
	gap: 3px;
	padding: 12px;
	border-radius: 18px;
	background: rgba(255,255,255,.72);
	border: 1px solid rgba(148,163,184,.16);
}
.trip-side-metrics small {
	font-size: .74rem;
	font-weight: 340;
	color: #64748b;
}
.trip-side-metrics em {
	font-style: normal;
	font-size: .96rem;
	font-weight: 420;
	color: #0f172a;
}

.trip-card[style*="display: none"] { display: none !important; }

@media (max-width: 767.98px) {
	.trip-side-metrics { grid-template-columns: 1fr; }
	.trip-index-search { grid-template-columns: 1fr; }
	.trip-index-search .btn { width: 100%; }
}

/* Iter27: unique journey/trip section design */
.journey-hero,
.journey-flow,
.journey-card,
.journey-article-card,
.journey-side-card,
.journey-places,
.journey-more {
  border: 1px solid rgba(125, 211, 252, .28);
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
  backdrop-filter: blur(12px);
}
.journey-hero {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  min-height: 460px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 420px;
  gap: 28px;
  padding: clamp(28px, 5vw, 58px);
  background:
    radial-gradient(circle at 10% 20%, rgba(34, 211, 238, .22), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(59, 130, 246, .18), transparent 32%),
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(236,253,245,.82));
}
.journey-hero__mapline {
  position: absolute;
  inset: auto 0 28px 0;
  height: 150px;
  pointer-events: none;
  opacity: .38;
}
.journey-hero__mapline::before {
  content: "";
  position: absolute;
  left: -8%;
  right: -8%;
  top: 62px;
  height: 3px;
  background: linear-gradient(90deg, transparent, rgba(14,165,233,.45), rgba(16,185,129,.38), transparent);
  transform: rotate(-2deg);
}
.journey-hero__mapline span {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #0ea5e9;
  box-shadow: 0 0 0 9px rgba(14,165,233,.13);
}
.journey-hero__mapline span:nth-child(1){left:12%;top:48px}.journey-hero__mapline span:nth-child(2){left:39%;top:72px;background:#14b8a6}.journey-hero__mapline span:nth-child(3){left:66%;top:42px}.journey-hero__mapline span:nth-child(4){left:86%;top:84px;background:#22c55e}
.journey-hero__content {position: relative; z-index: 1; align-self: center; max-width: 780px;}
.journey-hero h1 {font-size: clamp(2.45rem, 6vw, 5.8rem); line-height: .92; letter-spacing: -.075em; font-weight: 560; margin: 12px 0 18px; color:#0f172a;}
.journey-hero p {font-size: clamp(1rem, 1.5vw, 1.2rem); color:#475569; max-width: 720px; line-height: 1.8; margin: 0;}
.journey-hero__actions {display:flex; gap:12px; flex-wrap:wrap; margin-top: 28px;}
.journey-hero .btn {border-radius: 999px; font-weight: 500; padding: .86rem 1.15rem;}
.journey-search {position: relative; z-index: 2; align-self: end; border:1px solid rgba(148,163,184,.25); border-radius: 28px; padding: 18px; background: rgba(255,255,255,.86); box-shadow: 0 24px 60px rgba(15,23,42,.1);}
.journey-search label {display:flex; align-items:center; gap:10px; border:1px solid rgba(148,163,184,.28); background:#fff; border-radius: 20px; padding: 14px 16px; margin:0 0 12px; color:#0284c7;}
.journey-search input {border:0; outline:0; width:100%; font-size:.98rem; color:#0f172a; background:transparent;}
.journey-search .btn {width:100%; border-radius: 18px; font-weight:500;}
.journey-flow {border-radius: 30px; padding: 24px; display:grid; grid-template-columns: 320px minmax(0,1fr); gap: 22px;}
.journey-flow h2 {font-weight:560; letter-spacing:-.035em; margin:.25rem 0 0;}
.journey-flow__grid {display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.journey-flow__grid div {border:1px solid rgba(148,163,184,.22); background:linear-gradient(180deg,#fff,rgba(248,250,252,.78)); border-radius:24px; padding:18px;}
.journey-flow__grid span {display:inline-grid; place-items:center; width:36px; height:36px; border-radius:14px; background:rgba(14,165,233,.1); color:#0284c7; font-weight:500; margin-bottom:10px;}
.journey-flow__grid p {margin:0; color:#64748b; line-height:1.65;}
.journey-featured-grid {display:grid; grid-template-columns: 1.25fr .9fr .9fr; gap:18px;}
.journey-featured-grid .journey-card--hero {grid-row: span 2;}
.journey-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;}
.journey-card {position: relative; display:flex; flex-direction:column; min-height:100%; overflow:hidden; border-radius: 30px; color:#0f172a; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;}
.journey-card:hover {transform:translateY(-4px); border-color:rgba(14,165,233,.5); color:#0f172a; box-shadow:0 26px 80px rgba(15,23,42,.12);}
.journey-card__image {position:relative; display:block; height:220px; overflow:hidden; background:#e0f2fe;}
.journey-card__image img {width:100%; height:100%; object-fit:cover; transition: transform .4s ease;}
.journey-card:hover .journey-card__image img {transform: scale(1.04);}
.journey-card__image::after {content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(15,23,42,.08),rgba(15,23,42,.42));}
.journey-card__badge {position:absolute; left:16px; right:16px; bottom:14px; z-index:1; display:flex; align-items:center; gap:8px; width:max-content; max-width:calc(100% - 32px); padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.9); color:#0f172a; font-size:.86rem; box-shadow:0 14px 35px rgba(15,23,42,.12);}
.journey-card__content {display:flex; flex-direction:column; gap:11px; padding:20px 20px 58px; flex:1;}
.journey-card__title {font-size:1.14rem; line-height:1.25; letter-spacing:-.025em; font-weight:560;}
.journey-card__text {color:#64748b; line-height:1.62; font-size:.95rem;}
.journey-card__chips {display:flex; flex-wrap:wrap; gap:8px;}
.journey-card__chips span {display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border-radius:999px; background:rgba(14,165,233,.08); color:#0369a1; font-size:.82rem;}
.journey-card__places {display:flex; flex-wrap:wrap; gap:6px; margin-top:auto;}
.journey-card__places em {font-style:normal; padding:6px 9px; border-radius:999px; background:#f8fafc; border:1px solid rgba(148,163,184,.22); color:#475569; font-size:.8rem;}
.journey-card__open {position:absolute; left:20px; bottom:18px; color:#0284c7; font-weight:500; display:inline-flex; align-items:center; gap:8px;}
.journey-card--hero .journey-card__image {height:380px;}
.journey-card--hero .journey-card__title {font-size:1.5rem;}
.journey-card--wide {grid-column:span 2; display:grid; grid-template-columns: 44% 1fr;}
.journey-card--wide .journey-card__image {height:100%; min-height:280px;}
.journey-card--wide .journey-card__content {padding:26px 26px 62px;}
.journey-card--wide .journey-card__text {font-size:1rem;}
.journey-detail-hero {position:relative; border-radius:34px; overflow:hidden; min-height:520px; display:flex; align-items:end; background-image:linear-gradient(180deg,rgba(15,23,42,.08),rgba(15,23,42,.62)), var(--journey-bg); background-size:cover; background-position:center; box-shadow:0 28px 80px rgba(15,23,42,.15);}
.journey-detail-hero::before {content:""; position:absolute; inset:0; backdrop-filter: blur(1.8px); background:radial-gradient(circle at 20% 20%, rgba(14,165,233,.22), transparent 36%);}
.journey-detail-hero__content {position:relative; z-index:1; max-width:900px; padding:clamp(30px,5vw,64px); color:#fff;}
.journey-detail-hero h1 {font-size:clamp(2.3rem,5.5vw,5.6rem); line-height:.94; letter-spacing:-.07em; font-weight:560; margin:10px 0 18px; text-shadow:0 20px 50px rgba(0,0,0,.36);}
.journey-detail-hero p {font-size:clamp(1rem,1.45vw,1.22rem); line-height:1.75; margin:0; max-width:760px; text-shadow:0 10px 32px rgba(0,0,0,.28);}
.journey-detail-hero .dk-eyebrow {color:#e0f2fe; background:rgba(15,23,42,.42); border-color:rgba(255,255,255,.18);}
.journey-detail-hero__stats {display:flex; flex-wrap:wrap; gap:10px; margin-top:24px;}
.journey-detail-hero__stats span {display:grid; gap:2px; min-width:125px; padding:12px 16px; border-radius:20px; background:rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(10px);}
.journey-detail-hero__stats small {font-size:.75rem; color:rgba(255,255,255,.78);}
.journey-detail-hero__stats em {font-style:normal; font-weight:500; color:#fff;}
.journey-detail-layout {display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:22px; align-items:start;}
.journey-detail-main {min-width:0;}
.journey-article-card,
.journey-side-card,
.journey-places,
.journey-more {border-radius:28px; padding:24px;}
.journey-block-heading {display:flex; align-items:center; gap:10px; margin-bottom:15px; color:#0f172a; font-size:1.05rem; letter-spacing:-.02em; font-weight:560;}
.journey-block-heading i {display:inline-grid; place-items:center; width:36px; height:36px; border-radius:14px; background:rgba(14,165,233,.1); color:#0284c7;}
.journey-prose {color:#334155; font-size:1.02rem; line-height:1.86;}
.journey-prose h2,
.journey-prose h3 {font-weight:560; letter-spacing:-.03em; color:#0f172a; margin-top:1.2em;}
.journey-prose p:last-child,
.journey-prose ul:last-child {margin-bottom:0;}
.journey-prose li {margin:.35rem 0;}
.journey-place-grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px;}
.journey-place-card {border:1px solid rgba(148,163,184,.22); border-radius:24px; overflow:hidden; background:#fff; box-shadow:0 16px 44px rgba(15,23,42,.07);}
.journey-place-card__photo {position:relative; display:block; height:210px; overflow:hidden; color:#fff; text-decoration:none;}
.journey-place-card__photo img {width:100%; height:100%; object-fit:cover; transition:transform .35s ease;}
.journey-place-card:hover .journey-place-card__photo img {transform:scale(1.04);}
.journey-place-card__photo::after {content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent,rgba(15,23,42,.55));}
.journey-place-card__photo span {position:absolute; z-index:1; left:14px; bottom:12px; display:inline-flex; align-items:center; gap:7px; padding:8px 11px; border-radius:999px; background:rgba(255,255,255,.92); color:#0369a1; font-size:.83rem;}
.journey-place-card__body {padding:16px;}
.journey-place-card__top {display:flex; justify-content:space-between; gap:12px; align-items:flex-start;}
.journey-place-card h3 {font-size:1.05rem; line-height:1.28; font-weight:560; letter-spacing:-.02em; margin:0 0 8px; color:#0f172a;}
.journey-place-card__top em {font-style:normal; color:#0284c7; font-size:.8rem; white-space:nowrap;}
.journey-place-card p {color:#64748b; line-height:1.65; margin:0;}
.journey-place-card__meta {display:grid; gap:6px; margin-top:12px; color:#64748b; font-size:.82rem;}
.journey-place-card__meta span {display:flex; align-items:center; gap:7px;}
.journey-detail-side {position:sticky; top:92px; display:block;}
.journey-cost-mini {width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; border-radius:18px; border:1px solid rgba(148,163,184,.22); background:#fff;}
.journey-cost-mini th,
.journey-cost-mini td {padding:12px; border-bottom:1px solid rgba(148,163,184,.16); font-size:.92rem;}
.journey-cost-mini th {color:#64748b; font-weight:500; background:#f8fafc;}
.journey-cost-mini tr:last-child td {border-bottom:0;}
.journey-side-card p {color:#64748b; line-height:1.55; font-size:.9rem; margin:12px 0 0;}
.journey-side-card .btn {border-radius:16px; font-weight:500;}
.journey-related-list {display:grid; gap:10px;}
.journey-related-list a,
.journey-mini-card {display:grid; grid-template-columns:72px 1fr; gap:12px; align-items:center; padding:9px; border:1px solid rgba(148,163,184,.18); border-radius:18px; color:#0f172a; text-decoration:none; background:#fff;}
.journey-related-list img,
.journey-mini-card img {width:72px; height:54px; object-fit:cover; border-radius:13px;}
.journey-related-list span,
.journey-mini-card span {display:grid; gap:3px; font-size:.9rem; line-height:1.25; font-weight:500;}
.journey-related-list small,
.journey-mini-card small {color:#64748b; font-weight:400;}
.journey-mini-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;}
@media (max-width: 1180px){.journey-hero{grid-template-columns:1fr}.journey-search{align-self:auto}.journey-featured-grid{grid-template-columns:repeat(2,1fr)}.journey-detail-layout{grid-template-columns:1fr}.journey-detail-side{position:static}.journey-card--wide{grid-column:auto; display:flex}.journey-card--wide .journey-card__image{height:220px; min-height:0}}
@media (max-width: 860px){.journey-hero{border-radius:26px; padding:26px}.journey-flow{grid-template-columns:1fr}.journey-flow__grid,.journey-grid,.journey-featured-grid,.journey-place-grid,.journey-mini-grid{grid-template-columns:1fr}.journey-card--hero .journey-card__image{height:240px}.journey-detail-hero{min-height:430px; border-radius:26px}.journey-detail-hero__content{padding:28px}.journey-detail-hero h1{letter-spacing:-.055em}}

/* Iter28: Roadbook redesign - unique visual language for "Braucieni ar auto" */
.roadbook-hero,
.roadbook-intro,
.roadbook-card,
.roadguide-section,
.roadguide-side-card,
.roadguide-next {
  border: 1px solid rgba(148, 163, 184, .18);
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 22px 70px rgba(15, 23, 42, .075);
  backdrop-filter: blur(10px);
}
.roadbook-hero {
  position: relative;
  overflow: hidden;
  border-radius: 36px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  gap: clamp(18px, 3vw, 42px);
  padding: clamp(28px, 4.4vw, 56px);
  background:
    linear-gradient(115deg, rgba(255,255,255,.96), rgba(240,253,250,.85) 50%, rgba(224,242,254,.82)),
    radial-gradient(circle at 12% 84%, rgba(20,184,166,.16), transparent 35%),
    radial-gradient(circle at 84% 10%, rgba(14,165,233,.18), transparent 34%);
}
.roadbook-hero::before {
  content:"";
  position:absolute;
  inset:auto -6% 32px -8%;
  height:78px;
  border-top:2px dashed rgba(14,165,233,.22);
  transform:rotate(-2deg);
  pointer-events:none;
}
.roadbook-hero__content {position:relative; z-index:1; max-width: 820px;}
.roadbook-hero h1 {
  margin: 10px 0 16px;
  color:#0f172a;
  font-size: clamp(2.35rem, 5.8vw, 5.6rem);
  line-height:.94;
  letter-spacing:-.075em;
  font-weight: 520;
}
.roadbook-hero p {max-width:760px; color:#475569; font-size:clamp(1rem,1.25vw,1.14rem); line-height:1.78; margin:0;}
.roadbook-hero__tools {display:flex; flex-wrap:wrap; gap:10px; margin-top:24px;}
.roadbook-tool {
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:40px;
  padding: 9px 13px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(14,165,233,.24);
  color:#0369a1;
  text-decoration:none;
  font-size:.92rem;
  font-weight:440;
  box-shadow:0 10px 28px rgba(14,165,233,.08);
}
.roadbook-tool:hover {color:#075985; border-color:rgba(14,165,233,.42); transform:translateY(-1px);}
.roadbook-tool i {width:30px; height:30px; display:inline-grid; place-items:center; border-radius:12px; background:rgba(14,165,233,.1);}
.roadbook-search {
  position:relative;
  z-index:2;
  align-self:center;
  border-radius:26px;
  padding:16px;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(148,163,184,.22);
  box-shadow:0 18px 50px rgba(15,23,42,.08);
}
.roadbook-search__head {display:flex; align-items:center; gap:9px; color:#0369a1; font-size:.9rem; margin: 0 0 10px;}
.roadbook-search label {display:flex; align-items:center; border-radius:18px; background:#f8fafc; border:1px solid rgba(148,163,184,.22); margin:0; padding:0; overflow:hidden;}
.roadbook-search input {width:100%; border:0; background:transparent; outline:0; padding:13px 14px; font-size:.94rem; color:#0f172a;}
.roadbook-search button {position:absolute; right:24px; bottom:24px; width:38px; height:38px; border-radius:14px; border:0; background:#0ea5e9; color:#fff; display:grid; place-items:center; box-shadow:0 12px 30px rgba(14,165,233,.24);}
.roadbook-hero__panel {
  grid-column:1/-1;
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  max-width:720px;
}
.roadbook-hero__panel span {display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 14px; border-radius:18px; background:rgba(255,255,255,.78); border:1px solid rgba(148,163,184,.18); color:#94a3b8; font-size:.82rem;}
.roadbook-hero__panel em {font-style:normal; color:#334155; font-size:.93rem;}
.roadbook-intro {border-radius:28px; padding:24px 28px; display:grid; grid-template-columns: minmax(220px, 330px) 1fr; gap:24px; align-items:center;}
.roadbook-intro h2 {font-weight:520; letter-spacing:-.035em; margin:.25rem 0 0; color:#0f172a;}
.roadbook-intro p {margin:0; color:#64748b; line-height:1.75; font-size:1rem;}
.roadbook-featured__layout,
.roadbook-list {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px;}
.roadbook-featured__layout .roadbook-card--lead {grid-row:span 2;}
.roadbook-list .roadbook-card--wide {grid-column:1/-1;}
.roadbook-card {
  position:relative;
  overflow:hidden;
  border-radius:30px;
  display:grid;
  grid-template-columns: 250px minmax(0,1fr);
  min-height:260px;
  color:#0f172a;
  text-decoration:none;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.roadbook-card[hidden] {display:none !important;}
.roadbook-card:hover {color:#0f172a; transform:translateY(-3px); border-color:rgba(14,165,233,.34); box-shadow:0 28px 86px rgba(15,23,42,.11);}
.roadbook-card__media {position:relative; display:block; min-height:100%; overflow:hidden; background:linear-gradient(135deg,#e0f2fe,#dcfce7);}
.roadbook-card__media img {width:100%; height:100%; object-fit:cover; display:block; transition:transform .4s ease;}
.roadbook-card:hover .roadbook-card__media img {transform:scale(1.035);}
.roadbook-card__media::after {content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(15,23,42,.04),rgba(15,23,42,.46));}
.roadbook-card__route {position:absolute; z-index:1; left:14px; right:14px; bottom:14px; display:inline-flex; align-items:center; gap:8px; width:max-content; max-width:calc(100% - 28px); padding:8px 11px; border-radius:999px; background:rgba(255,255,255,.9); color:#0f172a; font-size:.84rem;}
.roadbook-card__body {position:relative; display:flex; flex-direction:column; gap:11px; padding:22px 24px 20px; min-width:0;}
.roadbook-card__type {width:max-content; padding:6px 10px; border-radius:999px; background:rgba(20,184,166,.1); color:#0f766e; font-size:.76rem; letter-spacing:.02em; text-transform:uppercase;}
.roadbook-card__title {font-size:1.18rem; line-height:1.25; letter-spacing:-.03em; font-weight:520; color:#0f172a;}
.roadbook-card__text {color:#64748b; line-height:1.65; font-size:.95rem; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden;}
.roadbook-card--lead .roadbook-card__text,
.roadbook-card--wide .roadbook-card__text {-webkit-line-clamp:7; font-size:1rem;}
.roadbook-card__metrics {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:2px;}
.roadbook-card__metrics span {display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; align-items:center; column-gap:8px; padding:9px 10px; border-radius:16px; border:1px solid rgba(148,163,184,.18); background:#f8fafc;}
.roadbook-card__metrics i {grid-row:1/3; color:#0284c7;}
.roadbook-card__metrics em {font-style:normal; color:#0f172a; font-weight:480; font-size:.92rem;}
.roadbook-card__metrics small {color:#94a3b8; font-size:.72rem;}
.roadbook-card__counts {display:flex; flex-wrap:wrap; gap:6px;}
.roadbook-card__counts span {padding:6px 9px; border-radius:999px; background:rgba(14,165,233,.08); color:#0369a1; font-size:.78rem;}
.roadbook-card__places {display:flex; flex-wrap:wrap; gap:6px; margin-top:auto;}
.roadbook-card__places em {font-style:normal; color:#475569; font-size:.79rem; padding:6px 8px; border-radius:999px; border:1px solid rgba(148,163,184,.22); background:#fff;}
.roadbook-card__open {display:inline-flex; align-items:center; gap:8px; margin-top:2px; color:#0284c7; font-size:.92rem; font-weight:460;}
.roadbook-card--lead {grid-template-columns:1fr;}
.roadbook-card--lead .roadbook-card__media {height:300px;}
.roadbook-card--wide {grid-template-columns: 42% 1fr; min-height:290px;}
.roadbook-card--wide .roadbook-card__body {padding:26px 28px;}
.trip-empty-card {border-radius:24px; padding:24px; background:rgba(255,255,255,.84); border:1px dashed rgba(148,163,184,.35); color:#64748b;}
/* Road guide detail */
.roadguide-hero {
  position:relative;
  overflow:hidden;
  border-radius:36px;
  min-height:520px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 310px;
  align-items:end;
  gap:24px;
  padding:clamp(28px,4.5vw,58px);
  background-image:linear-gradient(90deg, rgba(15,23,42,.76), rgba(15,23,42,.36) 48%, rgba(15,23,42,.16)), var(--roadguide-bg);
  background-size:cover;
  background-position:center;
  box-shadow:0 28px 90px rgba(15,23,42,.16);
}
.roadguide-hero::before {content:""; position:absolute; inset:0; backdrop-filter: blur(1.2px); background:radial-gradient(circle at 20% 30%, rgba(14,165,233,.22), transparent 34%);}
.roadguide-hero__panel,
.roadguide-hero__rail {position:relative; z-index:1;}
.roadguide-hero__panel {max-width:900px; color:#fff;}
.roadguide-hero h1 {font-size:clamp(2.1rem,4.8vw,5rem); line-height:.98; letter-spacing:-.068em; font-weight:520; margin:12px 0 18px; text-shadow:0 18px 48px rgba(0,0,0,.32);}
.roadguide-hero p {font-size:clamp(1rem,1.25vw,1.17rem); line-height:1.75; max-width:790px; margin:0; color:rgba(255,255,255,.92); text-shadow:0 12px 34px rgba(0,0,0,.24);}
.roadguide-hero .dk-eyebrow {color:#e0f2fe; background:rgba(15,23,42,.38); border-color:rgba(255,255,255,.18);}
.roadguide-hero__stats {display:flex; flex-wrap:wrap; gap:10px; margin-top:24px;}
.roadguide-hero__stats span {display:grid; gap:3px; min-width:124px; padding:11px 14px; border-radius:18px; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.14); backdrop-filter:blur(10px);}
.roadguide-hero__stats small {color:rgba(255,255,255,.76); font-size:.75rem;}
.roadguide-hero__stats em {font-style:normal; color:#fff; font-weight:480;}
.roadguide-hero__rail {align-self:stretch; display:grid; align-content:center; gap:14px; color:#fff;}
.roadguide-hero__rail span {display:grid; gap:4px; padding:14px 16px; border-radius:20px; background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(10px);}
.roadguide-hero__rail small {color:rgba(255,255,255,.72); font-size:.74rem;}
.roadguide-hero__rail i {height:92px; width:2px; margin-left:20px; background:linear-gradient(#fff4, #fff, #fff4); border-radius:999px;}
.roadguide-layout {display:grid; grid-template-columns:310px minmax(0,1fr); gap:22px; align-items:start;}
.roadguide-side {position:sticky; top:92px; display:block;}
.roadguide-side-card {border-radius:26px; padding:18px;}
.roadguide-side-card__title {display:flex; align-items:center; gap:10px; color:#0f172a; font-size:1rem; letter-spacing:-.02em; font-weight:520; margin-bottom:13px;}
.roadguide-side-card__title i {display:grid; place-items:center; width:34px; height:34px; border-radius:13px; background:rgba(14,165,233,.1); color:#0284c7;}
.roadguide-anchor-list {display:grid; gap:8px;}
.roadguide-anchor-list a {display:flex; justify-content:space-between; gap:10px; padding:10px 12px; border-radius:16px; color:#475569; text-decoration:none; background:#f8fafc; border:1px solid rgba(148,163,184,.14); font-size:.92rem;}
.roadguide-anchor-list a:hover {color:#0369a1; border-color:rgba(14,165,233,.26); background:#fff;}
.roadguide-anchor-list span {color:#0284c7;}
.roadguide-side-card p {color:#64748b; line-height:1.55; font-size:.9rem; margin:12px 0 0;}
.roadguide-side-card .btn {border-radius:16px; font-weight:440;}
.roadguide-main {display:grid; gap:18px; min-width:0;}
.roadguide-section {border-radius:30px; padding:24px;}
.roadguide-section--lead {padding:30px;}
.roadguide-section__head {display:flex; align-items:center; gap:11px; margin-bottom:16px;}
.roadguide-section__head i {display:grid; place-items:center; width:38px; height:38px; border-radius:15px; background:rgba(14,165,233,.1); color:#0284c7;}
.roadguide-section__head h2 {margin:0; color:#0f172a; font-size:1.28rem; letter-spacing:-.03em; font-weight:520;}
.roadguide-section__head span {margin-left:auto; display:grid; place-items:center; min-width:32px; height:32px; padding:0 10px; border-radius:999px; background:#e0f2fe; color:#0369a1; font-size:.86rem;}
.roadguide-place-list {display:grid; gap:14px;}
.roadguide-place {display:grid; grid-template-columns:220px minmax(0,1fr); gap:0; overflow:hidden; border-radius:24px; border:1px solid rgba(148,163,184,.18); background:#fff; box-shadow:0 16px 44px rgba(15,23,42,.055);}
.roadguide-place__photo {position:relative; display:block; min-height:210px; overflow:hidden; background:#e0f2fe;}
.roadguide-place__photo img {width:100%; height:100%; object-fit:cover; display:block; transition:transform .35s ease;}
.roadguide-place:hover .roadguide-place__photo img {transform:scale(1.04);}
.roadguide-place__photo::after {content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(15,23,42,.04),rgba(15,23,42,.38));}
.roadguide-place__photo span {position:absolute; left:12px; bottom:12px; z-index:1; width:38px; height:38px; display:grid; place-items:center; border-radius:14px; background:rgba(255,255,255,.92); color:#0369a1; font-size:.86rem;}
.roadguide-place__body {padding:18px 20px; display:grid; align-content:start; gap:9px;}
.roadguide-place__type {display:flex; flex-wrap:wrap; gap:8px; align-items:center; color:#0284c7; font-size:.84rem;}
.roadguide-place__type em {font-style:normal; color:#64748b; padding:4px 8px; border-radius:999px; background:#f8fafc; border:1px solid rgba(148,163,184,.16);}
.roadguide-place h3 {margin:0; color:#0f172a; font-size:1.12rem; line-height:1.28; letter-spacing:-.025em; font-weight:520;}
.roadguide-place p {margin:0; color:#64748b; line-height:1.62;}
.roadguide-place__meta {display:flex; flex-wrap:wrap; gap:8px; margin-top:3px;}
.roadguide-place__meta span,
.roadguide-place__meta a {display:inline-flex; align-items:center; gap:6px; color:#475569; text-decoration:none; padding:7px 9px; border-radius:999px; background:#f8fafc; border:1px solid rgba(148,163,184,.16); font-size:.82rem;}
.roadguide-place__meta a {color:#0369a1; background:rgba(14,165,233,.08);}
.roadguide-next {border-radius:30px; padding:24px;}
.roadguide-next-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px;}
.roadguide-next-card {display:grid; grid-template-columns:82px 1fr; gap:12px; align-items:center; padding:10px; border-radius:20px; border:1px solid rgba(148,163,184,.18); color:#0f172a; text-decoration:none; background:#fff;}
.roadguide-next-card img {width:82px; height:62px; object-fit:cover; border-radius:15px;}
.roadguide-next-card span {display:grid; gap:4px; font-size:.92rem; line-height:1.25; font-weight:480;}
.roadguide-next-card small {font-weight:400; color:#64748b;}
/* Neutralise old journey grid for this section when both sets of classes exist */
.journey-featured-grid,
.journey-grid {align-items:stretch;}
@media (max-width: 1180px){
  .roadbook-hero{grid-template-columns:1fr;}
  .roadbook-search{max-width:520px;}
  .roadbook-featured__layout,.roadbook-list{grid-template-columns:1fr;}
  .roadbook-card,.roadbook-card--wide{grid-template-columns:230px minmax(0,1fr);}
  .roadbook-card--lead{grid-template-columns:230px minmax(0,1fr);}
  .roadbook-card--lead .roadbook-card__media{height:auto;}
  .roadguide-hero{grid-template-columns:1fr;}
  .roadguide-hero__rail{display:none;}
  .roadguide-layout{grid-template-columns:1fr;}
  .roadguide-side{position:static; order:2;}
}
@media (max-width: 760px){
  .roadbook-hero{border-radius:26px; padding:24px;}
  .roadbook-hero h1{letter-spacing:-.058em;}
  .roadbook-hero__panel,.roadbook-intro{grid-template-columns:1fr;}
  .roadbook-card,.roadbook-card--wide,.roadbook-card--lead{grid-template-columns:1fr; min-height:0;}
  .roadbook-card__media{height:220px;}
  .roadbook-card__metrics{grid-template-columns:1fr;}
  .roadguide-hero{border-radius:26px; min-height:430px; padding:26px;}
  .roadguide-hero h1{letter-spacing:-.052em;}
  .roadguide-section{border-radius:24px; padding:20px;}
  .roadguide-place{grid-template-columns:1fr;}
  .roadguide-place__photo{height:210px;}
  .roadguide-next-grid{grid-template-columns:1fr;}
}

/* Iter29: stronger roadguide content and place voting */
.roadbook-hero {
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .72fr);
  padding: clamp(24px, 4vw, 48px);
}
.roadbook-hero__tools { gap: 8px; margin-top: 18px; }
.roadbook-tool {
  min-height: 40px;
  padding: 8px 11px;
  border-radius: 14px;
  font-size: .86rem;
  font-weight: 390 !important;
  box-shadow: none;
}
.roadbook-tool i { width: 28px; height: 28px; border-radius: 10px; }
.roadbook-search {
  padding: 16px;
  border-radius: 24px;
  align-self: center;
}
.roadbook-search__head { font-weight: 390; font-size: .82rem; }
.roadbook-search label { border-radius: 15px; }
.roadbook-search input { padding: 11px 12px; font-size: .9rem; }
.roadbook-search button {
  position: static;
  width: 100%;
  height: 40px;
  margin-top: 10px;
  border-radius: 14px;
  background: linear-gradient(135deg,#0ea5e9,#38bdf8);
}
.roadbook-featured__layout,
.roadbook-list { gap: 16px; }
.roadbook-card__title { font-weight: 430; }
.roadbook-card__text { -webkit-line-clamp: 6; }
.roadbook-card--lead .roadbook-card__text,
.roadbook-card--wide .roadbook-card__text { -webkit-line-clamp: 10; }
.roadbook-card__metrics em,
.roadbook-card__open,
.roadbook-card__type,
.roadguide-place h3,
.roadguide-section__head h2,
.roadguide-side-card__title,
.roadguide-next-card span { font-weight: 420 !important; }
.roadguide-section--lead .journey-prose p:first-child {
  font-size: 1.05rem;
  color: #334155;
}
.roadguide-place {
  grid-template-columns: 235px minmax(0,1fr);
  border-radius: 26px;
}
.roadguide-place__body { gap: 10px; }
.roadguide-place__type { font-weight: 380; }
.roadguide-place__meta span,
.roadguide-place__meta a { font-weight: 360; }
.roadguide-place.is-voting { opacity:.76; }
.roadguide-side-card--cost { top: 0; }
.roadguide-side-card--cost .btn { font-weight: 400 !important; }
@media (max-width: 1180px) {
  .roadbook-hero { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .roadguide-place { grid-template-columns:1fr; }
  .roadguide-rating { align-items:flex-start; }
  .roadbook-tool { width: 100%; justify-content: center; }
}
/* Iter30: clearer public feedback for route place voting */

/* Iter31: cleaner Roadbook guide section header and balanced route cards */
.roadbook-routes {
  position: relative;
}
.roadbook-routes__head {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  margin: 0 0 22px;
  padding: 24px 28px;
  border-radius: 30px;
  border: 1px solid rgba(148, 163, 184, .16);
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(240,253,250,.68)),
    radial-gradient(circle at 90% 16%, rgba(14,165,233,.12), transparent 32%);
  box-shadow: 0 18px 55px rgba(15, 23, 42, .055);
  overflow: hidden;
}
.roadbook-routes__head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 22px;
  bottom: 22px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #0ea5e9, #14b8a6);
}
.roadbook-routes__head-main {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 8px;
  max-width: 860px;
}
.roadbook-routes__head h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(1.65rem, 2.6vw, 2.45rem);
  line-height: 1.05;
  letter-spacing: -.045em;
  font-weight: 430;
}
.roadbook-routes__head p {
  margin: 0;
  color: #64748b;
  line-height: 1.68;
  font-size: .98rem;
  max-width: 780px;
}
.roadbook-routes__head-count {
  position: relative;
  z-index: 1;
  min-width: 126px;
  padding: 14px 16px;
  border-radius: 22px;
  border: 1px solid rgba(14, 165, 233, .18);
  background: rgba(255,255,255,.82);
  display: grid;
  justify-items: end;
  gap: 2px;
  color: #0369a1;
}
.roadbook-routes__head-count span {
  font-size: 1.55rem;
  line-height: 1;
  letter-spacing: -.04em;
  font-weight: 430;
}
.roadbook-routes__head-count small {
  color: #64748b;
  font-size: .82rem;
  font-weight: 340;
}
.roadbook-list--routes {
  align-items: stretch;
}
.roadbook-list--routes .roadbook-card {
  min-height: 300px;
}
.roadbook-card--route .roadbook-card__body {
  padding-bottom: 22px;
}
.roadbook-card--route .roadbook-card__text {
  -webkit-line-clamp: 7;
}
.roadbook-card--route .roadbook-card__places {
  margin-top: 2px;
}
.roadbook-card--route .roadbook-card__open {
  margin-top: auto;
}
.roadbook-list--routes .roadbook-card--wide {
  grid-column: auto;
}
@media (max-width: 900px) {
  .roadbook-routes__head {
    grid-template-columns: 1fr;
    align-items: start;
    padding: 22px;
  }
  .roadbook-routes__head-count {
    justify-items: start;
    width: max-content;
  }
}
@media (max-width: 760px) {
  .roadbook-routes__head {
    border-radius: 24px;
  }
  .roadbook-list--routes .roadbook-card {
    min-height: 0;
  }
  .roadbook-card--route .roadbook-card__text {
    -webkit-line-clamp: 4;
  }
}

/* Iter37: modern legal pages for Privacy and Terms */
.legal-modern {
  max-width: 1180px;
  margin: 0 auto;
  padding: 28px 0 54px;
  color: #0f172a;
}
.legal-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 24px;
  align-items: stretch;
  margin: 18px 0 22px;
  padding: clamp(24px, 3vw, 42px);
  border-radius: 34px;
  border: 1px solid rgba(148, 163, 184, .18);
  background:
    radial-gradient(circle at 92% 10%, rgba(14,165,233,.16), transparent 32%),
    radial-gradient(circle at 12% 100%, rgba(20,184,166,.13), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.88));
  box-shadow: 0 24px 70px rgba(15, 23, 42, .075);
  overflow: hidden;
}
.legal-hero::after {
  content: "";
  position: absolute;
  inset: auto -80px -160px auto;
  width: 310px;
  height: 310px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(14,165,233,.12), rgba(20,184,166,.12));
  pointer-events: none;
}
.legal-hero__content,
.legal-hero__panel {
  position: relative;
  z-index: 1;
}
.legal-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  width: max-content;
  max-width: 100%;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(14,165,233,.08);
  border: 1px solid rgba(14,165,233,.14);
  color: #0369a1;
  font-size: .86rem;
  line-height: 1;
  font-weight: 380;
  margin-bottom: 16px;
}
.legal-hero h1 {
  margin: 0;
  max-width: 780px;
  font-size: clamp(2.1rem, 4.2vw, 4.15rem);
  line-height: .98;
  letter-spacing: -.06em;
  font-weight: 430;
  color: #0f172a;
}
.legal-hero__content > p {
  margin: 18px 0 0;
  max-width: 760px;
  color: #475569;
  line-height: 1.78;
  font-size: 1.04rem;
}
.legal-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
.legal-hero__meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(148,163,184,.16);
  color: #64748b;
  font-size: .88rem;
  font-weight: 340;
}
.legal-hero__panel {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 24px;
  border-radius: 28px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(148,163,184,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}
.legal-hero__panel-icon {
  width: 48px;
  height: 48px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  color: #0284c7;
  background: linear-gradient(135deg, rgba(14,165,233,.13), rgba(20,184,166,.10));
  border: 1px solid rgba(14,165,233,.15);
  margin-bottom: 4px;
}
.legal-hero__panel > div:not(.legal-hero__panel-icon) {
  color: #0f172a;
  font-size: 1.08rem;
  font-weight: 430;
}
.legal-hero__panel p {
  margin: 0;
  color: #64748b;
  line-height: 1.6;
  font-size: .94rem;
}
.legal-soft-btn {
  appearance: none;
  border: 1px solid rgba(14,165,233,.18);
  background: rgba(14,165,233,.08);
  color: #0369a1;
  border-radius: 999px;
  padding: 10px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: max-content;
  max-width: 100%;
  font-size: .9rem;
  line-height: 1;
  font-weight: 380;
  text-decoration: none;
  cursor: pointer;
  margin-top: 8px;
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.legal-soft-btn:hover,
.legal-soft-btn:focus-visible {
  transform: translateY(-1px);
  background: rgba(14,165,233,.12);
  border-color: rgba(14,165,233,.28);
  color: #075985;
  text-decoration: none;
  outline: none;
}
.legal-disclaimer--modern {
  display: grid;
  grid-template-columns: 44px minmax(0,1fr);
  gap: 14px;
  align-items: start;
  margin: 0 0 22px;
  padding: 18px 20px;
  border-radius: 24px;
  border: 1px solid rgba(245,158,11,.18);
  background: linear-gradient(135deg, rgba(255,251,235,.94), rgba(255,255,255,.78));
  color: #92400e;
}
.legal-disclaimer--modern > i {
  width: 44px;
  height: 44px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: rgba(245,158,11,.11);
  color: #b45309;
}
.legal-disclaimer--modern span {
  display: block;
  color: #78350f;
  font-weight: 430;
  margin-bottom: 3px;
}
.legal-disclaimer--modern p {
  margin: 0;
  color: #92400e;
  line-height: 1.62;
}
.legal-layout {
  display: grid;
  grid-template-columns: 286px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}
.legal-nav-card {
  position: sticky;
  top: 92px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(255,255,255,.86);
  box-shadow: 0 18px 48px rgba(15,23,42,.055);
}
.legal-nav-card__title {
  color: #0f172a;
  font-size: .92rem;
  font-weight: 430;
  margin: 0 0 12px;
}
.legal-nav-card nav {
  display: grid;
  gap: 6px;
}
.legal-nav-card nav a {
  display: grid;
  grid-template-columns: 30px minmax(0,1fr);
  gap: 9px;
  align-items: center;
  padding: 9px 10px;
  border-radius: 16px;
  color: #475569;
  text-decoration: none;
  font-size: .88rem;
  line-height: 1.25;
  font-weight: 340;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.legal-nav-card nav a span {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(14,165,233,.08);
  color: #0284c7;
  font-size: .78rem;
  font-weight: 380;
}
.legal-nav-card nav a:hover,
.legal-nav-card nav a:focus-visible {
  background: rgba(14,165,233,.07);
  color: #0369a1;
  transform: translateX(2px);
  outline: none;
}
.legal-nav-card__contact {
  margin-top: 16px;
  padding: 14px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(240,253,250,.9), rgba(255,255,255,.82));
  border: 1px solid rgba(20,184,166,.14);
}
.legal-nav-card__contact div {
  color: #0f766e;
  font-size: .83rem;
  font-weight: 430;
  margin-bottom: 5px;
}
.legal-nav-card__contact a {
  color: #0f172a;
  text-decoration: none;
  font-size: .86rem;
  overflow-wrap: anywhere;
}
.legal-content-stack {
  display: grid;
  gap: 14px;
}
.legal-section-card {
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 18px;
  padding: clamp(18px, 2.4vw, 28px);
  border-radius: 30px;
  border: 1px solid rgba(148,163,184,.15);
  background: rgba(255,255,255,.90);
  box-shadow: 0 16px 44px rgba(15,23,42,.045);
  scroll-margin-top: 110px;
}
.legal-section-card__number {
  width: 48px;
  height: 48px;
  border-radius: 18px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(20,184,166,.08));
  border: 1px solid rgba(14,165,233,.13);
  color: #0284c7;
  font-size: .92rem;
  font-weight: 430;
}
.legal-section-card__body {
  min-width: 0;
}
.legal-section-card__icon {
  width: 38px;
  height: 38px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  float: right;
  margin-left: 12px;
  color: #0f766e;
  background: rgba(20,184,166,.08);
}
.legal-section-card h2 {
  margin: 0 0 10px;
  color: #0f172a;
  font-size: clamp(1.08rem, 1.6vw, 1.35rem);
  line-height: 1.22;
  letter-spacing: -.025em;
  font-weight: 430;
}
.legal-section-card p {
  margin: 0 0 10px;
  color: #475569;
  line-height: 1.75;
  font-size: .97rem;
}
.legal-section-card p:last-child {
  margin-bottom: 0;
}
.legal-check-list {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 14px 0 0;
  padding: 0;
}
.legal-check-list li {
  display: grid;
  grid-template-columns: 24px minmax(0,1fr);
  gap: 8px;
  align-items: start;
  color: #475569;
  line-height: 1.55;
  font-size: .94rem;
}
.legal-check-list li i {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(20,184,166,.10);
  color: #0f766e;
  font-size: .72rem;
  margin-top: 1px;
}
.legal-inline-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  color: #0369a1;
  text-decoration: none;
  font-size: .92rem;
  font-weight: 380;
}
.legal-inline-link:hover { text-decoration: underline; }
@media (max-width: 980px) {
  .legal-hero,
  .legal-layout {
    grid-template-columns: 1fr;
  }
  .legal-nav-card {
    position: relative;
    top: auto;
  }
  .legal-nav-card nav {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 640px) {
  .legal-modern { padding-top: 14px; }
  .legal-hero { border-radius: 26px; padding: 22px; }
  .legal-hero h1 { letter-spacing: -.045em; }
  .legal-hero__panel { border-radius: 22px; padding: 18px; }
  .legal-nav-card nav { grid-template-columns: 1fr; }
  .legal-section-card {
    grid-template-columns: 1fr;
    gap: 12px;
    border-radius: 24px;
  }
  .legal-section-card__number {
    width: max-content;
    height: auto;
    padding: 8px 12px;
    border-radius: 999px;
  }
  .legal-section-card__icon { float: none; margin: 0 0 8px; }
}

/* Iter39: Advanced professional route lab for "Braucieni ar auto" */
.route-lab,
.route-detail-pro {
  color: var(--text);
}
.route-lab :where(h1,h2,h3),
.route-detail-pro :where(h1,h2,h3) {
  color: var(--text);
  letter-spacing: -.045em;
}
.route-lab-hero,
.route-lab-intro,
.route-lab-section-head,
.route-lab-filterbar,
.route-desk-card,
.route-detail-hero-pro,
.route-detail-overview,
.route-detail-section,
.route-detail-control__card,
.route-detail-next {
  border: 1px solid rgba(148, 163, 184, .18);
  background: rgba(255, 255, 255, .84);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .075);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.route-lab-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 430px);
  gap: clamp(18px, 3vw, 36px);
  align-items: stretch;
  padding: clamp(26px, 4vw, 54px);
  border-radius: 38px;
  background:
    radial-gradient(circle at 86% 12%, rgba(14,165,233,.18), transparent 34%),
    radial-gradient(circle at 8% 82%, rgba(16,185,129,.14), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.97), rgba(240,253,250,.84) 55%, rgba(224,242,254,.76));
}
.route-lab-hero::before {
  content: "";
  position: absolute;
  inset: auto -8% 30px -8%;
  height: 96px;
  border-top: 2px dashed rgba(14, 165, 233, .22);
  transform: rotate(-2deg);
  pointer-events: none;
}
.route-lab-hero::after {
  content: "";
  position: absolute;
  width: 340px;
  height: 340px;
  right: -180px;
  bottom: -200px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(14,165,233,.12), rgba(16,185,129,.13));
  pointer-events: none;
}
.route-lab-hero__copy,
.route-lab-command,
.route-lab-stats {
  position: relative;
  z-index: 1;
}
.route-lab-hero h1 {
  margin: 12px 0 16px;
  font-size: clamp(2.45rem, 5.8vw, 5.8rem);
  line-height: .92;
  font-weight: 460;
  max-width: 850px;
}
.route-lab-hero__copy > p {
  max-width: 780px;
  margin: 0;
  color: #475569;
  line-height: 1.78;
  font-size: clamp(1rem, 1.2vw, 1.14rem);
}
.route-lab-hero__steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  max-width: 760px;
  margin-top: 24px;
}
.route-lab-hero__steps span {
  display: grid;
  gap: 5px;
  min-height: 86px;
  padding: 14px 15px;
  border-radius: 22px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(148,163,184,.18);
  color: #334155;
  font-size: .94rem;
  line-height: 1.3;
}
.route-lab-hero__steps strong {
  color: #0284c7;
  font-size: .78rem;
  letter-spacing: .08em;
}
.route-lab-command {
  align-self: center;
  display: grid;
  gap: 14px;
  padding: 18px;
  border-radius: 30px;
  border: 1px solid rgba(148,163,184,.2);
  background: rgba(255,255,255,.86);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 18px 55px rgba(15,23,42,.08);
}
.route-lab-command__title,
.route-detail-control__title,
.route-detail-itinerary__title,
.route-detail-line-card__title {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #0369a1;
  font-size: .92rem;
  font-weight: 430;
}
.route-lab-command__title i,
.route-detail-control__title i,
.route-detail-itinerary__title i,
.route-detail-line-card__title i {
  width: 30px;
  height: 30px;
  display: inline-grid;
  place-items: center;
  border-radius: 12px;
  background: rgba(14,165,233,.1);
}
.route-lab-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 46px;
  gap: 10px;
}
.route-lab-search label {
  display: grid;
  gap: 7px;
  margin: 0;
}
.route-lab-search label span,
.route-lab-sort span {
  color: #64748b;
  font-size: .78rem;
}
.route-lab-search input,
.route-lab-sort select {
  width: 100%;
  border: 1px solid rgba(148,163,184,.22);
  background: #f8fafc;
  color: #0f172a;
  border-radius: 16px;
  padding: 12px 13px;
  outline: 0;
}
.route-lab-search button {
  align-self: end;
  width: 46px;
  height: 46px;
  border: 0;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, var(--brand), #38bdf8);
  box-shadow: 0 14px 34px rgba(14,165,233,.26);
}
.route-lab-tools {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.route-lab-tools a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px;
  border-radius: 16px;
  border: 1px solid rgba(14,165,233,.18);
  background: rgba(14,165,233,.07);
  color: #0369a1;
  text-decoration: none;
  font-size: .9rem;
  font-weight: 390;
}
.route-lab-stats {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  max-width: 920px;
}
.route-lab-stats span {
  display: grid;
  gap: 3px;
  padding: 14px 15px;
  border-radius: 20px;
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(255,255,255,.68);
}
.route-lab-stats strong {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 470;
  color: #0f172a;
}
.route-lab-stats small {
  color: #64748b;
  font-size: .82rem;
}
.route-lab-intro {
  display: grid;
  grid-template-columns: minmax(220px, 370px) minmax(0, 1fr);
  gap: 24px;
  align-items: center;
  margin-top: 20px;
  padding: 24px 28px;
  border-radius: 30px;
}
.route-lab-intro h2,
.route-lab-section-head h2,
.route-detail-section__head h2,
.route-detail-overview h2,
.route-detail-next h2 {
  margin: .25rem 0 0;
  font-size: clamp(1.55rem, 2.4vw, 2.35rem);
  line-height: 1.08;
  font-weight: 450;
}
.route-lab-intro p,
.route-lab-section-head p {
  margin: 0;
  color: #64748b;
  line-height: 1.72;
}
.route-lab-featured,
.route-lab-catalog {
  margin-top: 32px;
}
.route-lab-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: end;
  margin-bottom: 18px;
  padding: 24px 28px;
  border-radius: 30px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(248,250,252,.82)),
    radial-gradient(circle at 92% 12%, rgba(14,165,233,.12), transparent 34%);
}
.route-lab-section-head--catalog {
  align-items: center;
}
.route-lab-section-head > div:first-child {
  display: grid;
  gap: 8px;
  max-width: 900px;
}
.route-lab-counter {
  min-width: 142px;
  padding: 15px 16px;
  border-radius: 22px;
  border: 1px solid rgba(14,165,233,.18);
  background: rgba(255,255,255,.72);
  text-align: right;
}
.route-lab-counter strong {
  display: block;
  font-size: 1.6rem;
  line-height: 1;
  color: #0369a1;
  font-weight: 470;
}
.route-lab-counter span {
  color: #64748b;
  font-size: .82rem;
}
.route-lab-featured__grid,
.route-lab-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}
.route-lab-featured__grid .route-desk-card--spotlight {
  grid-row: span 2;
}
.route-desk-card {
  position: relative;
  display: grid;
  grid-template-columns: 238px minmax(0, 1fr);
  overflow: hidden;
  min-height: 310px;
  border-radius: 32px;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.route-desk-card[hidden] {
  display: none !important;
}
.route-desk-card:hover {
  transform: translateY(-3px);
  border-color: rgba(14,165,233,.34);
  box-shadow: 0 30px 90px rgba(15,23,42,.12);
}
.route-desk-card__media {
  position: relative;
  min-height: 100%;
  overflow: hidden;
  background: linear-gradient(135deg, #e0f2fe, #dcfce7);
}
.route-desk-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(15,23,42,.02), rgba(15,23,42,.52));
}
.route-desk-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
.route-desk-card:hover .route-desk-card__media img {
  transform: scale(1.035);
}
.route-desk-card__number {
  position: absolute;
  left: 14px;
  bottom: 14px;
  z-index: 1;
  min-width: 48px;
  padding: 9px 11px;
  border-radius: 16px;
  background: rgba(255,255,255,.92);
  color: #0f172a;
  font-weight: 520;
  letter-spacing: -.03em;
}
.route-desk-card__body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  padding: 22px 24px;
}
.route-desk-card__topline,
.route-desk-card__chips,
.route-desk-card__footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.route-desk-card__type,
.route-desk-card__featured,
.route-desk-card__chips span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: max-content;
  max-width: 100%;
  padding: 7px 10px;
  border-radius: 999px;
  font-size: .78rem;
  line-height: 1;
  font-weight: 380;
}
.route-desk-card__type {
  color: #0f766e;
  background: rgba(16,185,129,.1);
  border: 1px solid rgba(16,185,129,.14);
}
.route-desk-card__featured {
  color: #b45309;
  background: rgba(245,158,11,.11);
  border: 1px solid rgba(245,158,11,.16);
}
.route-desk-card h3 {
  margin: 0;
  font-size: 1.2rem;
  line-height: 1.24;
  font-weight: 490;
}
.route-desk-card h3 a {
  text-decoration: none;
}
.route-desk-card h3 a:hover {
  color: #0369a1;
}
.route-desk-card__route {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  padding: 11px;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid rgba(148,163,184,.16);
}
.route-desk-card__route span {
  display: grid;
  gap: 2px;
  min-width: 0;
  color: #0f172a;
  font-size: .9rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.route-desk-card__route small {
  color: #94a3b8;
  font-size: .7rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.route-desk-card__route i {
  color: #0ea5e9;
  font-size: .86rem;
}
.route-desk-card p {
  margin: 0;
  color: #64748b;
  line-height: 1.64;
  font-size: .95rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.route-desk-card--spotlight p {
  -webkit-line-clamp: 8;
}
.route-desk-card__metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.route-desk-card__metrics span {
  display: grid;
  gap: 3px;
  padding: 10px;
  border-radius: 16px;
  background: rgba(248,250,252,.84);
  border: 1px solid rgba(148,163,184,.14);
}
.route-desk-card__metrics i {
  color: #0284c7;
}
.route-desk-card__metrics strong {
  color: #0f172a;
  font-size: .95rem;
  font-weight: 500;
  white-space: nowrap;
}
.route-desk-card__metrics small {
  color: #94a3b8;
  font-size: .72rem;
}
.route-desk-card__chips span {
  color: #475569;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(148,163,184,.16);
}
.route-desk-card__places {
  display: grid;
  gap: 7px;
  padding-top: 2px;
}
.route-desk-card__places small {
  color: #94a3b8;
  font-size: .75rem;
}
.route-desk-card__places div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.route-desk-card__places em {
  font-style: normal;
  padding: 6px 8px;
  border-radius: 999px;
  background: rgba(14,165,233,.07);
  border: 1px solid rgba(14,165,233,.12);
  color: #0369a1;
  font-size: .78rem;
}
.route-desk-card__footer {
  margin-top: auto;
  justify-content: space-between;
}
.route-desk-card__open {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  color: #0369a1;
  text-decoration: none;
  font-weight: 430;
  font-size: .92rem;
}
.route-lab-filterbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(150px, 180px) auto auto;
  gap: 10px;
  align-items: end;
  margin-bottom: 18px;
  padding: 14px;
  border-radius: 26px;
}
.route-lab-filterbar__group,
.route-lab-view {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}
.route-lab-filterbar button,
.route-lab-clear,
.route-lab-view button {
  appearance: none;
  border: 1px solid rgba(148,163,184,.18);
  background: #fff;
  color: #475569;
  border-radius: 999px;
  padding: 9px 11px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: .84rem;
  line-height: 1;
  cursor: pointer;
}
.route-lab-filterbar button.is-active,
.route-lab-view button.is-active {
  color: #0369a1;
  border-color: rgba(14,165,233,.22);
  background: rgba(14,165,233,.08);
}
.route-lab-clear {
  color: #64748b;
  white-space: nowrap;
}
.route-lab-sort {
  display: grid;
  gap: 6px;
  margin: 0;
}
.route-lab-sort select {
  min-height: 38px;
  padding: 8px 11px;
  border-radius: 14px;
}
.route-lab-grid.is-compact {
  grid-template-columns: 1fr;
  gap: 12px;
}
.route-lab-grid.is-compact .route-desk-card {
  min-height: 0;
  grid-template-columns: 148px minmax(0,1fr);
  border-radius: 24px;
}
.route-lab-grid.is-compact .route-desk-card__body {
  gap: 8px;
  padding: 16px 18px;
}
.route-lab-grid.is-compact .route-desk-card p,
.route-lab-grid.is-compact .route-desk-card__chips,
.route-lab-grid.is-compact .route-desk-card__places {
  display: none;
}
.route-lab-grid.is-compact .route-desk-card__metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.route-lab-empty {
  border-radius: 24px;
  padding: 24px;
}

/* Iter39: advanced single route guide */
.route-detail-hero-pro {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(280px, 42%) minmax(0, 1fr) minmax(250px, 320px);
  gap: 0;
  min-height: 520px;
  border-radius: 38px;
  background:
    radial-gradient(circle at 86% 12%, rgba(14,165,233,.14), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.96), rgba(248,250,252,.84));
}
.route-detail-hero-pro__media {
  position: relative;
  min-height: 100%;
  overflow: hidden;
  background: linear-gradient(135deg, #e0f2fe, #dcfce7);
}
.route-detail-hero-pro__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(15,23,42,.06), rgba(15,23,42,.28));
}
.route-detail-hero-pro__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.route-detail-hero-pro__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: clamp(28px, 4vw, 54px);
}
.route-detail-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  max-width: 100%;
  margin-bottom: 18px;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(14,165,233,.08);
  border: 1px solid rgba(14,165,233,.14);
  color: #0369a1;
  text-decoration: none;
  font-size: .88rem;
}
.route-detail-hero-pro h1 {
  margin: 12px 0 16px;
  max-width: 850px;
  font-size: clamp(2.15rem, 4.8vw, 5rem);
  line-height: .96;
  font-weight: 460;
}
.route-detail-hero-pro__content > p {
  margin: 0;
  max-width: 760px;
  color: #475569;
  line-height: 1.76;
  font-size: clamp(1rem, 1.16vw, 1.12rem);
}
.route-detail-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 24px;
}
.route-detail-metrics span {
  display: grid;
  gap: 4px;
  padding: 13px;
  border-radius: 20px;
  background: rgba(255,255,255,.75);
  border: 1px solid rgba(148,163,184,.18);
}
.route-detail-metrics small {
  color: #64748b;
  font-size: .77rem;
}
.route-detail-metrics strong {
  color: #0f172a;
  font-size: 1rem;
  font-weight: 510;
}
.route-detail-line-card {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  margin: 22px 22px 22px 0;
  padding: 22px;
  border-radius: 30px;
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(148,163,184,.18);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.route-detail-line-card__route {
  display: grid;
  gap: 8px;
}
.route-detail-line-card__route span {
  display: grid;
  gap: 3px;
  color: #0f172a;
  line-height: 1.25;
}
.route-detail-line-card__route small {
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: .7rem;
}
.route-detail-line-card__route i {
  width: 2px;
  height: 52px;
  margin-left: 12px;
  border-radius: 999px;
  background: linear-gradient(180deg, #0ea5e9, #10b981);
}
.route-detail-layout-pro {
  display: grid;
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr);
  gap: 22px;
  align-items: start;
  margin-top: 24px;
}
.route-detail-control {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 14px;
}
.route-detail-control__card {
  border-radius: 28px;
  padding: 18px;
}
.route-detail-nav {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}
.route-detail-nav a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 15px;
  color: #334155;
  background: #f8fafc;
  border: 1px solid rgba(148,163,184,.16);
  text-decoration: none;
  font-size: .9rem;
}
.route-detail-nav a:hover {
  color: #0369a1;
  background: rgba(14,165,233,.07);
}
.route-detail-nav span {
  min-width: 25px;
  text-align: center;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(14,165,233,.09);
  color: #0369a1;
  font-size: .76rem;
}
.route-detail-control__card--cost p {
  color: #64748b;
  line-height: 1.58;
  font-size: .9rem;
  margin: 12px 0 0;
}
.route-cost-mini {
  margin-top: 14px;
}
.route-detail-actions {
  display: grid;
  gap: 9px;
  margin-top: 14px;
}
.route-detail-actions .btn,
.route-detail-pro .btn {
  border-radius: 16px;
  font-weight: 430;
}
.route-detail-main-pro {
  display: grid;
  gap: 18px;
  min-width: 0;
}
.route-detail-overview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  gap: 22px;
  align-items: start;
  border-radius: 32px;
  padding: clamp(22px, 3vw, 32px);
}
.route-detail-section {
  border-radius: 32px;
  padding: clamp(22px, 3vw, 32px);
}
.route-detail-section__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}
.route-detail-section__head i {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #0284c7;
  background: rgba(14,165,233,.09);
  border: 1px solid rgba(14,165,233,.12);
}
.route-detail-section__head h2 {
  margin: 0;
}
.route-detail-section__head span {
  margin-left: auto;
  min-width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(14,165,233,.08);
  color: #0369a1;
  font-weight: 470;
}
.route-detail-lead {
  margin: 0 0 18px;
  color: #334155;
  line-height: 1.75;
  font-size: 1.08rem;
}
.route-detail-itinerary {
  padding: 18px;
  border-radius: 26px;
  background: rgba(248,250,252,.86);
  border: 1px solid rgba(148,163,184,.16);
}
.route-detail-itinerary ol {
  list-style: none;
  padding: 0;
  margin: 16px 0 0;
  display: grid;
  gap: 11px;
}
.route-detail-itinerary li {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 10px;
  align-items: start;
}
.route-detail-itinerary li > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: #0369a1;
  background: rgba(14,165,233,.08);
  border: 1px solid rgba(14,165,233,.12);
  font-weight: 500;
}
.route-detail-itinerary strong {
  display: block;
  color: #0f172a;
  font-weight: 480;
  line-height: 1.25;
}
.route-detail-itinerary small {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 3px;
  color: #64748b;
  line-height: 1.35;
}
.route-place-stack {
  display: grid;
  gap: 14px;
}
.route-place-card {
  display: grid;
  grid-template-columns: minmax(190px, 245px) minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
  padding: 0;
  border-radius: 26px;
  border: 1px solid rgba(148,163,184,.16);
  background: rgba(255,255,255,.78);
}
.route-place-card__photo {
  position: relative;
  min-height: 230px;
  overflow: hidden;
  background: linear-gradient(135deg, #e0f2fe, #dcfce7);
}
.route-place-card__photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgba(15,23,42,.42));
}
.route-place-card__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.route-place-card__photo span {
  position: absolute;
  left: 14px;
  bottom: 14px;
  z-index: 1;
  padding: 8px 10px;
  border-radius: 14px;
  background: rgba(255,255,255,.92);
  color: #0f172a;
  font-weight: 510;
}
.route-place-card__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  padding: 20px 22px;
}
.route-place-card__type,
.route-place-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.route-place-card__type {
  color: #0284c7;
  font-size: .85rem;
}
.route-place-card__type em {
  font-style: normal;
  color: #64748b;
  padding: 5px 8px;
  border-radius: 999px;
  background: #f8fafc;
  border: 1px solid rgba(148,163,184,.16);
}
.route-place-card h3 {
  margin: 0;
  font-size: 1.15rem;
  line-height: 1.25;
  font-weight: 500;
}
.route-place-card p {
  margin: 0;
  color: #64748b;
  line-height: 1.62;
}
.route-place-card__meta span,
.route-place-card__meta a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 9px;
  border-radius: 999px;
  background: #f8fafc;
  border: 1px solid rgba(148,163,184,.16);
  color: #475569;
  text-decoration: none;
  font-size: .82rem;
}
.route-place-card__meta a {
  color: #0369a1;
  background: rgba(14,165,233,.08);
}
.route-detail-next {
  margin-top: 24px;
  border-radius: 32px;
  padding: 24px;
}
.route-detail-next__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}
.route-detail-next-card {
  display: grid;
  grid-template-columns: 92px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  padding: 10px;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(148,163,184,.16);
  color: #0f172a;
  text-decoration: none;
}
.route-detail-next-card img {
  width: 92px;
  height: 70px;
  object-fit: cover;
  border-radius: 15px;
}
.route-detail-next-card span {
  display: grid;
  gap: 5px;
  font-weight: 470;
  line-height: 1.25;
}
.route-detail-next-card small {
  color: #64748b;
  font-weight: 360;
}
@media (max-width: 1240px) {
  .route-lab-filterbar {
    grid-template-columns: 1fr 1fr;
  }
  .route-lab-sort,
  .route-lab-view,
  .route-lab-clear {
    align-self: stretch;
  }
  .route-detail-hero-pro {
    grid-template-columns: minmax(260px, 38%) minmax(0,1fr);
  }
  .route-detail-line-card {
    grid-column: 1 / -1;
    margin: 0 22px 22px;
  }
  .route-detail-line-card__route {
    grid-template-columns: minmax(0,1fr) 80px minmax(0,1fr);
    align-items: center;
  }
  .route-detail-line-card__route i {
    width: 80px;
    height: 2px;
    margin-left: 0;
    background: linear-gradient(90deg, #0ea5e9, #10b981);
  }
}
@media (max-width: 1100px) {
  .route-lab-hero,
  .route-lab-intro,
  .route-lab-section-head,
  .route-detail-layout-pro,
  .route-detail-overview {
    grid-template-columns: 1fr;
  }
  .route-lab-command {
    max-width: 560px;
  }
  .route-lab-featured__grid,
  .route-lab-grid {
    grid-template-columns: 1fr;
  }
  .route-lab-featured__grid .route-desk-card--spotlight {
    grid-row: auto;
  }
  .route-detail-control {
    position: static;
    order: 2;
  }
  .route-detail-main-pro {
    order: 1;
  }
  .route-detail-next__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 820px) {
  .route-lab-hero,
  .route-detail-hero-pro {
    border-radius: 28px;
  }
  .route-lab-hero__steps,
  .route-lab-stats,
  .route-detail-metrics {
    grid-template-columns: 1fr 1fr;
  }
  .route-lab-filterbar {
    grid-template-columns: 1fr;
  }
  .route-desk-card,
  .route-lab-grid.is-compact .route-desk-card,
  .route-detail-hero-pro,
  .route-place-card {
    grid-template-columns: 1fr;
  }
  .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card__media {
    height: 230px;
  }
  .route-desk-card__metrics,
  .route-lab-grid.is-compact .route-desk-card__metrics {
    grid-template-columns: 1fr 1fr;
  }
  .route-detail-hero-pro__media {
    height: 300px;
  }
  .route-detail-line-card {
    margin: 0 16px 16px;
  }
  .route-detail-line-card__route {
    grid-template-columns: 1fr;
  }
  .route-detail-line-card__route i {
    width: 2px;
    height: 42px;
    margin-left: 12px;
    background: linear-gradient(180deg, #0ea5e9, #10b981);
  }
  .route-detail-next__grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 560px) {
  .route-lab-hero {
    padding: 22px;
  }
  .route-lab-hero h1,
  .route-detail-hero-pro h1 {
    letter-spacing: -.058em;
  }
  .route-lab-hero__steps,
  .route-lab-stats,
  .route-detail-metrics,
  .route-lab-tools,
  .route-lab-search,
  .route-desk-card__metrics,
  .route-lab-grid.is-compact .route-desk-card__metrics {
    grid-template-columns: 1fr;
  }
  .route-lab-search button {
    width: 100%;
  }
  .route-lab-intro,
  .route-lab-section-head,
  .route-lab-filterbar,
  .route-desk-card,
  .route-detail-overview,
  .route-detail-section,
  .route-detail-control__card,
  .route-detail-next {
    border-radius: 24px;
  }
  .route-desk-card__route {
    grid-template-columns: 1fr;
  }
  .route-desk-card__route i {
    transform: rotate(90deg);
    justify-self: start;
  }
  .route-place-card__photo,
  .route-detail-hero-pro__media {
    height: 240px;
  }
}

/* Iter40: premium button system + editorial route layout refresh */
:root {
  --dk-btn-radius: 13px;
  --dk-btn-border: rgba(148, 163, 184, 0.32);
  --dk-btn-soft: rgba(255, 255, 255, 0.72);
  --dk-btn-soft-hover: rgba(240, 249, 255, 0.76);
  --dk-btn-shadow: 0 14px 30px rgba(14, 165, 233, 0.16);
  --dk-btn-shadow-soft: 0 9px 20px rgba(15, 23, 42, 0.055);
}

.btn:not(.btn-close),
.sub-btn,
.cpt-refresh,
.captcha-refresh,
.cmt-submit,
.cmt-cancel,
.load-more-btn,
.legal-soft-btn,
.route-lab-search button,
.route-lab-tools a,
.route-desk-card__open,
.route-detail-nav a,
.route-detail-next-card {
  border-radius: var(--dk-btn-radius);
  font-weight: 500;
  letter-spacing: -0.005em;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.btn:not(.btn-close):hover,
.sub-btn:hover,
.cpt-refresh:hover,
.captcha-refresh:hover,
.cmt-submit:hover,
.cmt-cancel:hover,
.load-more-btn:hover,
.legal-soft-btn:hover,
.route-lab-search button:hover,
.route-lab-tools a:hover,
.route-desk-card__open:hover,
.route-detail-nav a:hover,
.route-detail-next-card:hover {
  transform: translateY(-1px);
}

.btn.btn-primary,
.sub-btn,
.cmt-submit,
.route-lab-search button {
  border: 0;
  color: #fff;
  background: linear-gradient(135deg, #0ea5e9, #0284c7);
  box-shadow: var(--dk-btn-shadow);
}

.btn.btn-primary:hover,
.sub-btn:hover,
.cmt-submit:hover,
.route-lab-search button:hover {
  color: #fff;
  box-shadow: 0 18px 36px rgba(14, 165, 233, 0.24);
}

.btn.btn-outline-primary,
.btn.btn-outline-secondary,
.cpt-refresh,
.captcha-refresh,
.cmt-cancel,
.load-more-btn,
.legal-soft-btn,
.route-lab-tools a,
.route-desk-card__open,
.route-detail-nav a,
.route-detail-next-card {
  border: 1px solid var(--dk-btn-border);
  background: var(--dk-btn-soft);
  color: #0f172a;
  box-shadow: var(--dk-btn-shadow-soft);
}

.btn.btn-outline-primary:hover,
.btn.btn-outline-secondary:hover,
.cpt-refresh:hover,
.captcha-refresh:hover,
.cmt-cancel:hover,
.load-more-btn:hover,
.legal-soft-btn:hover,
.route-lab-tools a:hover,
.route-desk-card__open:hover,
.route-detail-nav a:hover,
.route-detail-next-card:hover {
  border-color: rgba(14, 165, 233, 0.5);
  background: var(--dk-btn-soft-hover);
  color: #0369a1;
}

.btn.btn-danger {
  border: 0;
  color: #fff;
  background: linear-gradient(135deg, #ef4444, #dc2626);
  box-shadow: 0 14px 30px rgba(239, 68, 68, 0.16);
}

.btn.btn-sm {
  border-radius: 11px;
  padding-inline: 0.78rem;
}

.cmt-btn {
  border: 1px solid rgba(148, 163, 184, 0.28) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  border-radius: 999px !important;
  color: #334155 !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
  transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.cmt-btn:hover {
  transform: translateY(-1px);
  color: #0369a1 !important;
  border-color: rgba(14, 165, 233, 0.42) !important;
  background: rgba(240, 249, 255, 0.76) !important;
}


/* Braucieni ar auto: editorial hierarchy */
.route-lab-section-head {
  align-items: center;
}

.route-lab-featured__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-flow: dense;
  gap: 16px;
  align-items: stretch;
}

.route-lab-featured__grid .route-desk-card {
  grid-template-columns: 1fr;
  min-height: 0;
  border-radius: 28px;
}

.route-lab-featured__grid .route-desk-card__media {
  min-height: 0;
  height: 185px;
}

.route-desk-card--feature-xl {
  grid-column: span 6;
  grid-row: span 2;
}

.route-desk-card--feature-xl .route-desk-card__media {
  height: 320px;
}

.route-desk-card--feature-xl h3 {
  font-size: clamp(1.35rem, 1.9vw, 1.85rem);
}

.route-desk-card--feature-tall {
  grid-column: span 3;
  grid-row: span 2;
}

.route-desk-card--feature-tall .route-desk-card__media {
  height: 300px;
}

.route-desk-card--feature-mini {
  grid-column: span 3;
}

.route-desk-card--feature-mini .route-desk-card__media {
  height: 158px;
}

.route-desk-card--feature-mini .route-desk-card__places,
.route-desk-card--feature-mini .route-desk-card__chips,
.route-desk-card--feature-mini p {
  display: none;
}

.route-desk-card--feature-mini .route-desk-card__metrics,
.route-desk-card--feature-tall .route-desk-card__metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.route-desk-card--feature-wide {
  grid-column: span 4;
}

.route-desk-card--feature-wide .route-desk-card__media {
  height: 168px;
}

.route-desk-card--feature-wide .route-desk-card__places {
  display: none;
}

.route-lab-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-flow: dense;
  gap: 16px;
  align-items: stretch;
}

.route-lab-grid .route-desk-card--catalog {
  grid-column: span 4;
  grid-template-columns: 1fr;
  min-height: 0;
  border-radius: 28px;
}

.route-lab-grid .route-desk-card--catalog .route-desk-card__media {
  min-height: 0;
  height: 190px;
}

.route-lab-grid .route-desk-card--catalog .route-desk-card__body,
.route-lab-featured__grid .route-desk-card__body {
  padding: 18px;
  gap: 10px;
}

.route-lab-grid .route-desk-card--catalog h3,
.route-lab-featured__grid .route-desk-card h3 {
  font-weight: 510;
  letter-spacing: -0.03em;
}

.route-lab-grid .route-desk-card--catalog .route-desk-card__metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.route-lab-grid .route-desk-card--catalog .route-desk-card__places {
  display: none;
}

.route-lab-grid .route-desk-card--catalog-large {
  grid-column: span 8;
  grid-template-columns: minmax(260px, 38%) minmax(0, 1fr);
}

.route-lab-grid .route-desk-card--catalog-large .route-desk-card__media {
  height: auto;
  min-height: 100%;
}

.route-lab-grid .route-desk-card--catalog-large .route-desk-card__metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.route-lab-grid .route-desk-card--catalog-large .route-desk-card__places {
  display: grid;
}

.route-lab-grid .route-desk-card--catalog-wide {
  grid-column: span 6;
  grid-template-columns: minmax(220px, 40%) minmax(0, 1fr);
}

.route-lab-grid .route-desk-card--catalog-wide .route-desk-card__media {
  height: auto;
  min-height: 100%;
}

.route-lab-grid .route-desk-card--catalog-wide .route-desk-card__metrics {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.route-lab-filterbar button,
.route-lab-clear,
.route-lab-view button {
  border-radius: 14px;
  border: 1px solid rgba(148, 163, 184, 0.3);
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.045);
  font-weight: 500;
}

.route-lab-filterbar button:hover,
.route-lab-clear:hover,
.route-lab-view button:hover,
.route-lab-filterbar button.is-active,
.route-lab-view button.is-active {
  border-color: rgba(14, 165, 233, 0.45);
  background: rgba(240, 249, 255, 0.76);
  color: #0369a1;
  transform: translateY(-1px);
}

.route-lab-search input,
.route-lab-sort select {
  min-height: 44px;
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.78);
}

.route-desk-card__open {
  padding: 9px 12px;
  text-decoration: none;
  width: max-content;
}

.route-desk-card__number {
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.12);
}

.route-lab-grid.is-compact {
  grid-template-columns: 1fr;
  gap: 12px;
}

.route-lab-grid.is-compact .route-desk-card--catalog,
.route-lab-grid.is-compact .route-desk-card--catalog-wide,
.route-lab-grid.is-compact .route-desk-card--catalog-large {
  grid-column: 1 / -1;
  grid-template-columns: 148px minmax(0, 1fr);
  border-radius: 24px;
}

.route-lab-grid.is-compact .route-desk-card--catalog .route-desk-card__media,
.route-lab-grid.is-compact .route-desk-card--catalog-wide .route-desk-card__media,
.route-lab-grid.is-compact .route-desk-card--catalog-large .route-desk-card__media {
  height: auto;
  min-height: 100%;
}

/* Single route opening: quieter premium scale */
.route-detail-hero-pro {
  grid-template-columns: minmax(260px, 36%) minmax(0, 1fr) minmax(230px, 280px);
  min-height: 420px;
  border-radius: 32px;
}

.route-detail-hero-pro__content {
  padding: clamp(24px, 3.4vw, 42px);
}

.route-detail-hero-pro h1 {
  max-width: 760px;
  font-size: clamp(1.85rem, 3.45vw, 3.55rem);
  line-height: 1.02;
  letter-spacing: -0.052em;
  font-weight: 500;
}

.route-detail-hero-pro__content > p {
  max-width: 700px;
  font-size: clamp(0.95rem, 1.02vw, 1.04rem);
  line-height: 1.62;
}

.route-detail-back {
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: var(--dk-btn-shadow-soft);
}

.route-detail-metrics {
  margin-top: 18px;
  gap: 8px;
}

.route-detail-metrics span {
  padding: 11px;
  border-radius: 16px;
}

.route-detail-line-card {
  margin: 18px 18px 18px 0;
  padding: 18px;
  border-radius: 24px;
}

.route-detail-layout-pro {
  grid-template-columns: minmax(240px, 300px) minmax(0, 1fr);
  gap: 18px;
  margin-top: 20px;
}

.route-detail-control__card,
.route-detail-section,
.route-detail-overview,
.route-detail-next {
  border-radius: 26px;
}

.route-detail-section,
.route-detail-overview {
  padding: clamp(18px, 2.4vw, 28px);
}

.route-detail-section__head h2,
.route-detail-overview h2,
.route-detail-next h2 {
  font-size: clamp(1.22rem, 1.85vw, 1.7rem);
  line-height: 1.16;
  letter-spacing: -0.035em;
}

.route-detail-section__head i {
  width: 38px;
  height: 38px;
  border-radius: 14px;
}

.route-detail-lead,
.route-detail-pro .journey-prose :where(p, li) {
  font-size: 0.96rem;
  line-height: 1.68;
}

.route-detail-pro .journey-prose :where(h2, h3) {
  font-size: clamp(1.12rem, 1.65vw, 1.45rem);
  line-height: 1.22;
  letter-spacing: -0.03em;
}

.route-detail-itinerary {
  border-radius: 22px;
  padding: 15px;
}

.route-detail-itinerary li {
  grid-template-columns: 36px minmax(0, 1fr);
}

.route-detail-itinerary li > span {
  width: 36px;
  height: 36px;
  border-radius: 13px;
}

.route-place-card {
  grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
  border-radius: 22px;
}

.route-place-card__photo {
  min-height: 205px;
}

.route-place-card__body {
  padding: 18px 20px;
}

.route-place-card h3 {
  font-size: 1.08rem;
  letter-spacing: -0.02em;
}

.route-place-card p {
  font-size: 0.94rem;
  line-height: 1.58;
}

@media (max-width: 1240px) {
  .route-lab-featured__grid,
  .route-lab-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
  .route-desk-card--feature-xl,
  .route-desk-card--feature-tall,
  .route-desk-card--feature-mini,
  .route-desk-card--feature-wide,
  .route-lab-grid .route-desk-card--catalog,
  .route-lab-grid .route-desk-card--catalog-wide,
  .route-lab-grid .route-desk-card--catalog-large {
    grid-column: span 3;
    grid-row: auto;
    grid-template-columns: 1fr;
  }
  .route-lab-grid .route-desk-card--catalog .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog-wide .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__media,
  .route-lab-featured__grid .route-desk-card__media {
    height: 200px;
    min-height: 0;
  }
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__places {
    display: none;
  }
  .route-detail-hero-pro {
    grid-template-columns: minmax(260px, 38%) minmax(0, 1fr);
  }
}

@media (max-width: 820px) {
  .route-lab-featured__grid,
  .route-lab-grid {
    grid-template-columns: 1fr;
  }
  .route-desk-card--feature-xl,
  .route-desk-card--feature-tall,
  .route-desk-card--feature-mini,
  .route-desk-card--feature-wide,
  .route-lab-grid .route-desk-card--catalog,
  .route-lab-grid .route-desk-card--catalog-wide,
  .route-lab-grid .route-desk-card--catalog-large {
    grid-column: 1 / -1;
    grid-template-columns: 1fr;
  }
  .route-lab-grid.is-compact .route-desk-card--catalog,
  .route-lab-grid.is-compact .route-desk-card--catalog-wide,
  .route-lab-grid.is-compact .route-desk-card--catalog-large {
    grid-template-columns: 1fr;
  }
  .route-lab-featured__grid .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog-wide .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card--catalog .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card--catalog-wide .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card--catalog-large .route-desk-card__media {
    height: 220px;
    min-height: 0;
  }
  .route-detail-hero-pro {
    min-height: 0;
  }
}

@media (max-width: 560px) {
  .route-lab-grid .route-desk-card--catalog .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog-wide .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__metrics,
  .route-lab-featured__grid .route-desk-card__metrics {
    grid-template-columns: 1fr 1fr;
  }
  .route-detail-hero-pro h1 {
    font-size: clamp(1.7rem, 9vw, 2.45rem);
  }
}


/* Iter41: cleaner route catalogue copy, no card numbering, progressive loading */
.route-desk-card__number,
.route-desk-card__featured {
  display: none !important;
}

.route-lab-featured--clean {
  margin-top: 22px;
}

.route-lab-featured--clean .route-lab-featured__grid {
  margin-top: 0;
}

.route-lab-loadmore {
  display: grid;
  justify-items: center;
  gap: 10px;
  margin-top: 22px;
  padding: 18px;
  border-radius: 28px;
  border: 1px solid rgba(148, 163, 184, 0.16);
  background:
    radial-gradient(circle at 50% 0%, rgba(14, 165, 233, 0.09), transparent 42%),
    rgba(255, 255, 255, 0.72);
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.055);
}

.route-lab-loadmore[hidden] {
  display: none !important;
}

.route-lab-loadmore__btn {
  min-height: 44px;
  padding: 11px 18px;
  border-radius: 14px;
  border: 1px solid rgba(14, 165, 233, 0.28);
  background: rgba(255, 255, 255, 0.82);
  color: #0369a1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  line-height: 1;
  cursor: pointer;
}

.route-lab-loadmore__btn:hover {
  border-color: rgba(14, 165, 233, 0.46);
  background: rgba(240, 249, 255, 0.88);
}

.route-lab-loadmore small {
  color: #64748b;
  font-size: 0.84rem;
}

.route-lab-counter span span {
  color: #0369a1;
  font-weight: 520;
}

/* Iter42: database-backed premium route search with live suggestions */
.route-lab-command--search {
  position: relative;
  overflow: visible;
}

.route-lab-search--pro {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.route-lab-search--pro label {
  min-width: 0;
}

.route-lab-search__field {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) 34px;
  align-items: center;
  gap: 9px;
  min-height: 50px;
  padding: 7px 8px 7px 13px;
  border-radius: 17px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(248, 250, 252, 0.86)),
    radial-gradient(circle at 8% 0%, rgba(14, 165, 233, 0.1), transparent 42%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86), 0 12px 28px rgba(15, 23, 42, 0.055);
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.route-lab-search__field:focus-within {
  border-color: rgba(14, 165, 233, 0.5);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.11), 0 16px 34px rgba(15, 23, 42, 0.07);
}

.route-lab-search__field > i {
  color: #0284c7;
}

.route-lab-search--pro .route-lab-search__field input,
.route-lab-search--pro input[data-route-search] {
  min-height: 34px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: 0.96rem;
}

.route-lab-search--pro .route-lab-search__field input:focus,
.route-lab-search--pro input[data-route-search]:focus {
  outline: 0;
}

.route-lab-search__clear,
.route-lab-search--pro .route-lab-search__clear {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px;
  min-height: 34px;
  padding: 0 !important;
  border-radius: 12px !important;
  border: 1px solid rgba(148, 163, 184, 0.2) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  color: #64748b !important;
  box-shadow: none !important;
  display: inline-grid;
  place-items: center;
}

.route-lab-search__clear:hover {
  color: #0369a1 !important;
  border-color: rgba(14, 165, 233, 0.34) !important;
  background: rgba(240, 249, 255, 0.9) !important;
}

.route-lab-search--pro .route-lab-search__submit {
  width: auto !important;
  min-width: 132px;
  height: 50px !important;
  min-height: 50px;
  padding: 0 16px !important;
  border-radius: 17px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  white-space: nowrap;
}

.route-lab-search__hint {
  margin: -3px 0 0;
  color: #64748b;
  font-size: 0.86rem;
  line-height: 1.55;
}

.route-lab-suggestions {
  position: absolute;
  z-index: 30;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(148, 163, 184, 0.24);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.18);
  backdrop-filter: blur(14px);
}

.route-lab-suggestions[hidden] {
  display: none !important;
}

.route-lab-suggestions__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(148, 163, 184, 0.14);
  background: linear-gradient(135deg, rgba(248, 250, 252, 0.96), rgba(240, 249, 255, 0.74));
}

.route-lab-suggestions__head strong {
  color: #0f172a;
  font-size: 0.9rem;
  font-weight: 560;
}

.route-lab-suggestions__head small {
  color: #64748b;
  font-size: 0.78rem;
}

.route-lab-suggestions__list {
  display: grid;
  max-height: 430px;
  overflow: auto;
  padding: 8px;
}

.route-lab-suggest {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 9px;
  border-radius: 16px;
  color: #0f172a;
  text-decoration: none;
  transition: background 0.15s ease, transform 0.15s ease;
}

.route-lab-suggest:hover {
  background: rgba(240, 249, 255, 0.88);
  transform: translateY(-1px);
}

.route-lab-suggest img {
  width: 62px;
  height: 54px;
  object-fit: cover;
  border-radius: 14px;
  background: #e2e8f0;
}

.route-lab-suggest__body {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.route-lab-suggest__body strong,
.route-lab-suggest__body small,
.route-lab-suggest__body span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.route-lab-suggest__body strong {
  font-size: 0.94rem;
  font-weight: 560;
}

.route-lab-suggest__body small,
.route-lab-suggest__body span {
  color: #64748b;
  font-size: 0.8rem;
}

.route-lab-suggest mark {
  padding: 0 0.08em;
  border-radius: 0.25em;
  background: rgba(14, 165, 233, 0.18);
  color: #0369a1;
}

.route-lab-suggest__places {
  display: flex !important;
  gap: 5px;
}

.route-lab-suggest__places em {
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-style: normal;
  padding: 3px 6px;
  border-radius: 999px;
  color: #0369a1;
  background: rgba(14, 165, 233, 0.08);
}

.route-lab-suggestions__empty {
  padding: 16px;
  color: #64748b;
  font-size: 0.9rem;
  line-height: 1.55;
}

.route-lab-suggestions__all,
.route-lab-search--pro .route-lab-suggestions__all {
  width: calc(100% - 16px) !important;
  height: 42px !important;
  min-height: 42px;
  margin: 0 8px 8px;
  padding: 0 12px !important;
  border-radius: 15px !important;
  border: 1px solid rgba(14, 165, 233, 0.22) !important;
  background: rgba(240, 249, 255, 0.78) !important;
  color: #0369a1 !important;
  box-shadow: none !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.route-lab-suggestions__all:hover {
  border-color: rgba(14, 165, 233, 0.42) !important;
  background: rgba(224, 242, 254, 0.9) !important;
}

@media (max-width: 560px) {
  .route-lab-search--pro {
    grid-template-columns: 1fr;
  }
  .route-lab-search--pro .route-lab-search__submit {
    width: 100% !important;
  }
  .route-lab-suggestions {
    position: static;
    margin-top: 10px;
  }
  .route-lab-suggest {
    grid-template-columns: 54px minmax(0, 1fr);
  }
  .route-lab-suggest img {
    width: 54px;
    height: 50px;
  }
}

.route-lab-search__field {
  color: #0f172a;
  font-size: 1rem;
}

/* Iter43: calmer, user-controlled route search behaviour */
.route-lab-command--search {
  isolation: isolate;
}

.route-lab-suggestions {
  z-index: 90;
}

.route-lab-suggest.is-active,
.route-lab-suggest:focus-visible {
  outline: none;
  background: rgba(224, 242, 254, 0.96);
  box-shadow: inset 0 0 0 1px rgba(14, 165, 233, 0.22);
}

.route-lab-suggestions__empty--loading {
  color: #0369a1;
  background: linear-gradient(135deg, rgba(240, 249, 255, 0.78), rgba(255, 255, 255, 0.92));
}

.route-lab-search--pro input[type="search"]::-webkit-search-cancel-button {
  display: none;
}

.route-lab-search--pro .route-lab-search__submit,
.route-lab-search--pro .route-lab-suggestions__all {
  cursor: pointer;
}

.route-lab-suggestions__all i {
  transition: transform .16s ease;
}

.route-lab-suggestions__all:hover i {
  transform: translateY(1px);
}

.route-lab-search__hint {
  max-width: 36rem;
}

/* Iter44: keep route search dropdown above hero stats and following blocks */
.route-lab {
  position: relative;
  z-index: 1;
}

.route-lab-hero {
  overflow: visible;
  z-index: 30;
}

.route-lab-hero::before {
  left: 0;
  right: 0;
  z-index: 0;
}

.route-lab-hero::after {
  right: 0;
  bottom: 0;
  width: 280px;
  height: 280px;
  transform: translate(46%, 46%);
  z-index: 0;
}

.route-lab-command--search {
  position: relative;
  z-index: 120;
  isolation: auto;
}

.route-lab-search--pro {
  position: relative;
  z-index: 130;
}

.route-lab-suggestions {
  z-index: 999;
  overflow: hidden;
}

.route-lab-stats,
.route-lab-hero__copy {
  z-index: 2;
}

.route-lab-intro,
.route-lab-featured,
.route-lab-catalog {
  position: relative;
  z-index: 1;
}

@media (max-width: 560px) {
  .route-lab-suggestions {
    z-index: 50;
  }
}

/* =====================================================================
   Iter45 — Staciju katalogs, profili, uzticības lapas un premium map popup
   ===================================================================== */
.station-eyebrow{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(14,165,233,.18);background:rgba(224,242,254,.72);color:#0369a1;border-radius:999px;padding:7px 12px;font-size:.82rem;font-weight:520;line-height:1;}
.station-eyebrow i{font-size:.85rem;}
.station-directory-hero,.station-profile-hero,.trust-page-hero{position:relative;overflow:hidden;border:1px solid rgba(15,23,42,.08);border-radius:32px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,249,255,.92) 55%,rgba(236,253,245,.72));box-shadow:0 28px 70px rgba(15,23,42,.08);}
.station-directory-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:28px;padding:34px;align-items:stretch;}
.station-directory-hero::after,.station-profile-hero::after,.trust-page-hero::after{content:"";position:absolute;right:-80px;bottom:-130px;width:310px;height:310px;border-radius:999px;background:radial-gradient(circle,rgba(14,165,233,.22),rgba(14,165,233,0) 70%);pointer-events:none;}
.station-directory-hero__content,.station-profile-hero__main,.trust-page-hero>*{position:relative;z-index:1;}
.station-directory-hero h1,.station-profile-hero h1,.trust-page-hero h1{font-size:clamp(2.1rem,4vw,4.8rem);line-height:1.02;letter-spacing:-.062em;font-weight:440;color:#0f172a;margin:16px 0 14px;}
.station-profile-hero h1{font-size:clamp(2rem,3.2vw,4rem);}
.station-directory-hero p,.station-profile-hero p,.trust-page-hero p{color:#475569;line-height:1.75;font-size:1.02rem;font-weight:340;max-width:760px;margin:0;}
.station-directory-hero__actions,.station-profile-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.station-directory-hero__panel{position:relative;z-index:1;border:1px solid rgba(15,23,42,.08);border-radius:26px;background:rgba(255,255,255,.82);backdrop-filter:blur(16px);box-shadow:0 20px 50px rgba(15,23,42,.07);padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;}
.station-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.station-stat-grid div{border:1px solid rgba(15,23,42,.08);border-radius:20px;background:rgba(248,250,252,.78);padding:16px;}
.station-stat-grid strong{display:block;font-size:2rem;letter-spacing:-.05em;font-weight:460;color:#0f172a;line-height:1;}
.station-stat-grid span{display:block;margin-top:6px;color:#64748b;font-size:.82rem;}
.station-directory-hero__panel p{display:flex;gap:10px;color:#64748b;font-size:.9rem;line-height:1.55;margin:0;}
.station-directory-hero__panel p i{color:#0284c7;margin-top:3px;}
.station-directory-tools{display:grid;grid-template-columns:minmax(260px,1fr) 190px 190px 190px auto;gap:10px;margin:22px 0;border:1px solid rgba(15,23,42,.08);border-radius:26px;background:rgba(255,255,255,.88);box-shadow:0 18px 45px rgba(15,23,42,.06);padding:14px;align-items:center;}
.station-search-shell{display:flex;align-items:center;gap:10px;border:1px solid rgba(14,165,233,.22);background:#fff;border-radius:18px;padding:0 14px;min-height:48px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.78);}
.station-search-shell i{color:#0284c7;}
.station-search-shell input{border:0;outline:0;background:transparent;width:100%;font-size:.96rem;color:#0f172a;}
.station-directory-tools .form-select{border-radius:16px;min-height:48px;border-color:rgba(15,23,42,.12);box-shadow:none;color:#334155;}
.station-directory-results{border:1px solid rgba(15,23,42,.08);border-radius:30px;background:linear-gradient(180deg,#fff,rgba(248,250,252,.9));box-shadow:0 24px 60px rgba(15,23,42,.07);padding:24px;margin-top:22px;}
.station-directory-results__head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;}
.station-directory-results__head h2{font-size:clamp(1.5rem,2.2vw,2.3rem);letter-spacing:-.045em;font-weight:440;margin:12px 0 0;color:#0f172a;}
.station-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.station-directory-card{border:1px solid rgba(15,23,42,.08);border-radius:24px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.06);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.station-directory-card:hover{transform:translateY(-3px);box-shadow:0 26px 60px rgba(15,23,42,.1);border-color:rgba(14,165,233,.2);}
.station-directory-card__image{display:block;min-height:160px;background-size:cover;background-position:center;border-bottom:1px solid rgba(15,23,42,.06);}
.station-directory-card__body{padding:18px;}
.station-directory-card__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
.station-brand-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(14,165,233,.18);background:rgba(224,242,254,.7);color:#0369a1;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:520;}
.station-directory-card__top small{color:#94a3b8;font-size:.76rem;white-space:nowrap;}
.station-directory-card h3{font-size:1.08rem;line-height:1.25;font-weight:560;letter-spacing:-.025em;margin:0 0 8px;}
.station-directory-card h3 a{color:#0f172a;text-decoration:none;}
.station-directory-card h3 a:hover{color:#0284c7;}
.station-directory-card p{display:flex;gap:8px;color:#64748b;font-size:.9rem;line-height:1.45;margin:0 0 14px;min-height:40px;}
.station-directory-card p i{color:#0284c7;margin-top:3px;}
.station-directory-prices{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:15px;}
.station-directory-prices span{border:1px solid rgba(15,23,42,.08);border-radius:15px;background:rgba(248,250,252,.7);padding:10px;}
.station-directory-prices em{display:block;font-style:normal;font-size:.72rem;color:#94a3b8;margin-bottom:3px;}
.station-directory-prices strong{font-weight:520;color:#0f172a;font-size:.92rem;}
.station-directory-card__actions{display:flex;gap:8px;flex-wrap:wrap;}
.station-directory-empty{border:1px dashed rgba(14,165,233,.26);border-radius:22px;background:rgba(240,249,255,.58);padding:24px;text-align:center;color:#64748b;margin-top:16px;}
.station-directory-more{display:flex;justify-content:center;margin-top:20px;}
.station-breadcrumbs{display:flex;gap:8px;align-items:center;margin-bottom:18px;color:#64748b;font-size:.88rem;}
.station-breadcrumbs a{color:#0284c7;text-decoration:none;font-weight:500;}
.station-profile-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:24px;padding:30px;}
.station-profile-hero__main{padding:4px 0;}
.station-profile-hero__media{position:relative;z-index:1;border:1px solid rgba(15,23,42,.08);border-radius:26px;background-size:cover;background-position:center;min-height:360px;display:flex;align-items:flex-end;overflow:hidden;box-shadow:0 20px 50px rgba(15,23,42,.09);}
.station-profile-hero__media::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,0),rgba(15,23,42,.68));}
.station-profile-hero__media>div{position:relative;z-index:1;padding:22px;color:#fff;}
.station-profile-hero__media span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.75);margin-bottom:6px;}
.station-profile-hero__media strong{font-size:1.05rem;font-weight:520;}
.station-profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px;}
.station-profile-facts div{border:1px solid rgba(15,23,42,.08);border-radius:20px;background:rgba(255,255,255,.76);padding:15px;}
.station-profile-facts span{display:block;color:#94a3b8;font-size:.76rem;margin-bottom:6px;}
.station-profile-facts strong{display:block;color:#0f172a;font-size:.95rem;font-weight:520;line-height:1.35;}
.station-section-head{margin-bottom:16px;}
.station-section-head h2{font-size:clamp(1.4rem,2.2vw,2.1rem);font-weight:460;letter-spacing:-.04em;margin:12px 0 8px;color:#0f172a;}
.station-section-head p{color:#64748b;line-height:1.6;max-width:760px;margin:0;}
.station-section-head--compact h2{font-size:1.35rem;}
.station-profile-prices,.station-profile-panel,.station-profile-nearby{border:1px solid rgba(15,23,42,.08);border-radius:28px;background:#fff;box-shadow:0 20px 50px rgba(15,23,42,.06);padding:24px;margin-top:22px;}
.station-profile-price-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.station-profile-price{border:1px solid rgba(14,165,233,.15);border-radius:22px;background:linear-gradient(180deg,#fff,rgba(240,249,255,.72));padding:18px;}
.station-profile-price.is-empty{opacity:.64;background:rgba(248,250,252,.75);}
.station-profile-price span{display:block;color:#64748b;font-size:.82rem;margin-bottom:8px;}
.station-profile-price strong{display:block;color:#0f172a;font-size:1.55rem;font-weight:480;letter-spacing:-.04em;}
.station-profile-price small{display:block;color:#94a3b8;margin-top:6px;font-size:.78rem;}
.station-profile-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:22px;}
.station-profile-map{width:100%;height:360px;border:0;border-radius:22px;background:#e2e8f0;}
.station-nearby-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.station-nearby-card{border:1px solid rgba(15,23,42,.08);border-radius:22px;background:rgba(248,250,252,.72);padding:16px;}
.station-nearby-card span{display:inline-flex;color:#0369a1;background:rgba(224,242,254,.8);border-radius:999px;padding:5px 9px;font-size:.76rem;margin-bottom:10px;}
.station-nearby-card h3{font-size:1rem;font-weight:560;letter-spacing:-.02em;margin:0 0 6px;}
.station-nearby-card h3 a{color:#0f172a;text-decoration:none;}
.station-nearby-card p{color:#64748b;font-size:.86rem;line-height:1.45;min-height:38px;margin:0 0 10px;}
.station-nearby-card small{display:block;color:#64748b;margin-bottom:12px;}
.trust-page-hero{padding:36px;margin-bottom:22px;}
.trust-faq-list{display:grid;gap:12px;}
.trust-faq-item{border:1px solid rgba(15,23,42,.08);border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(15,23,42,.05);overflow:hidden;}
.trust-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;padding:18px 20px;font-weight:540;color:#0f172a;letter-spacing:-.015em;}
.trust-faq-item summary::-webkit-details-marker{display:none;}
.trust-faq-item[open] summary i{transform:rotate(180deg);}
.trust-faq-item summary i{transition:transform .18s ease;color:#0284c7;}
.trust-faq-item p{padding:0 20px 20px;margin:0;color:#64748b;line-height:1.7;}
.trust-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.trust-method-card{border:1px solid rgba(15,23,42,.08);border-radius:26px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.06);padding:22px;}
.trust-method-card span{display:inline-flex;border:1px solid rgba(14,165,233,.16);background:rgba(224,242,254,.72);color:#0284c7;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:600;margin-bottom:14px;}
.trust-method-card h2{font-size:1.12rem;font-weight:560;letter-spacing:-.025em;margin:0 0 9px;color:#0f172a;}
.trust-method-card p{color:#64748b;line-height:1.68;margin:0;}
.leaflet-popup-content-wrapper{border-radius:22px!important;box-shadow:0 24px 70px rgba(15,23,42,.18)!important;border:1px solid rgba(15,23,42,.08);overflow:hidden;}
.leaflet-popup-content{margin:0!important;}
.fuelo-popup{min-width:292px;background:#fff;color:#0f172a;}
.fuelo-popup__head{padding:16px 17px 13px;background:linear-gradient(135deg,rgba(240,249,255,.95),#fff);border-bottom:1px solid rgba(15,23,42,.07);}
.fuelo-popup__brand{display:inline-flex;border:1px solid rgba(14,165,233,.15);background:rgba(224,242,254,.75);color:#0369a1;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:600;margin-bottom:8px;}
.fuelo-popup__name{font-size:1rem;font-weight:620;letter-spacing:-.02em;line-height:1.25;}
.fuelo-popup__addr{color:#64748b;font-size:.8rem;line-height:1.4;margin-top:4px;}
.fuelo-popup__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:13px;}
.fuelo-popup__cell{border:1px solid rgba(15,23,42,.08);border-radius:14px;background:rgba(248,250,252,.72);padding:9px 7px;text-align:center;}
.fuelo-popup__cell.is-empty{opacity:.55;}
.fuelo-popup__cell span{display:block;color:#64748b;font-size:.68rem;margin-bottom:3px;}
.fuelo-popup__cell strong{display:flex;justify-content:center;gap:2px;align-items:baseline;font-size:.88rem;font-weight:620;color:#0f172a;}
.fuelo-popup__cell small{font-size:.62rem;color:#94a3b8;font-weight:500;}
.fuelo-popup__updated{padding:0 14px 12px;color:#64748b;font-size:.78rem;}
.fuelo-popup__updated span{color:#0f172a;font-weight:520;}
.fuelo-popup__actions{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid rgba(15,23,42,.07);padding:12px 13px 14px;}
.fuelo-popup__cta,.fuelo-popup__link{display:inline-flex;align-items:center;gap:7px;text-decoration:none;border-radius:999px;font-size:.78rem;font-weight:560;padding:8px 11px;}
.fuelo-popup__cta{background:#0284c7;color:#fff;box-shadow:0 10px 24px rgba(2,132,199,.22);}
.fuelo-popup__cta:hover{color:#fff;background:#0369a1;}
.fuelo-popup__link{border:1px solid rgba(14,165,233,.22);color:#0369a1;background:#fff;}
.fuelo-popup__link:hover{background:rgba(240,249,255,.85);color:#075985;}
@media (max-width:1200px){.station-directory-tools{grid-template-columns:1fr 1fr 1fr}.station-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.station-nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:900px){.station-directory-hero,.station-profile-hero,.station-profile-layout{grid-template-columns:1fr}.station-directory-tools{grid-template-columns:1fr}.station-profile-facts,.station-profile-price-grid,.trust-method-grid{grid-template-columns:1fr 1fr}.station-profile-hero__media{min-height:280px}.station-directory-hero h1,.station-profile-hero h1,.trust-page-hero h1{letter-spacing:-.045em}}
@media (max-width:640px){.station-directory-hero,.station-profile-hero,.trust-page-hero{border-radius:24px;padding:22px}.station-directory-grid,.station-profile-facts,.station-profile-price-grid,.station-nearby-grid,.trust-method-grid{grid-template-columns:1fr}.station-directory-card__image{min-height:145px}.fuelo-popup{min-width:260px}.fuelo-popup__grid{grid-template-columns:1fr 1fr}.station-directory-tools{border-radius:22px}}

/* Iter46 — local data refresh styles */
.home-premium-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:28px;align-items:stretch;border:1px solid rgba(15,23,42,.08);border-radius:34px;background:radial-gradient(circle at 8% 12%,rgba(14,165,233,.16),transparent 34%),radial-gradient(circle at 88% 10%,rgba(16,185,129,.14),transparent 30%),linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,249,255,.86));box-shadow:0 32px 80px rgba(15,23,42,.08);padding:34px;overflow:hidden;isolation:isolate;}
.home-premium-hero::after{content:"";position:absolute;right:-120px;bottom:-170px;width:390px;height:390px;border-radius:999px;background:radial-gradient(circle,rgba(14,165,233,.22),rgba(14,165,233,0) 68%);z-index:-1;}
.home-premium-hero__content{display:flex;flex-direction:column;justify-content:center;min-height:410px;}
.home-premium-hero h1{font-size:clamp(2.25rem,4.5vw,5.35rem);line-height:.96;letter-spacing:-.066em;font-weight:480;color:#0f172a;margin:18px 0 18px;max-width:980px;}
.home-premium-hero p{font-size:1.06rem;line-height:1.76;color:#475569;font-weight:340;max-width:820px;margin:0;}
.home-premium-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;}
.home-premium-actions .btn,.home-market-panel .btn,.home-tools-premium .btn{border-radius:15px;font-weight:450;}
.home-premium-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:30px;max-width:860px;}
.home-premium-kpis div{border:1px solid rgba(15,23,42,.08);border-radius:22px;background:rgba(255,255,255,.72);backdrop-filter:blur(16px);padding:15px 16px;box-shadow:0 12px 34px rgba(15,23,42,.045);}
.home-premium-kpis strong{display:block;color:#0f172a;font-size:1.55rem;font-weight:520;letter-spacing:-.045em;line-height:1;}
.home-premium-kpis span{display:block;color:#64748b;font-size:.78rem;margin-top:6px;}
.home-market-panel{position:relative;align-self:center;border:1px solid rgba(15,23,42,.08);border-radius:30px;background:rgba(255,255,255,.84);backdrop-filter:blur(18px);box-shadow:0 26px 70px rgba(15,23,42,.10);padding:24px;overflow:hidden;}
.home-market-panel__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;}
.home-market-panel__head span{display:block;color:#0f172a;font-size:1.02rem;font-weight:560;letter-spacing:-.02em;}
.home-market-panel__head small{display:block;color:#64748b;font-size:.84rem;line-height:1.45;margin-top:4px;}
.home-market-panel__head i{width:46px;height:46px;border-radius:17px;display:grid;place-items:center;background:rgba(14,165,233,.10);color:#0284c7;}
.home-market-state{border:1px solid rgba(14,165,233,.16);background:linear-gradient(135deg,rgba(240,249,255,.78),rgba(255,255,255,.94));border-radius:22px;padding:16px 17px;margin-bottom:14px;}
.home-market-state strong{display:block;color:#0f172a;font-size:1.14rem;font-weight:560;letter-spacing:-.025em;margin-bottom:5px;}
.home-market-state p{font-size:.9rem;line-height:1.55;margin:0;color:#64748b;}
.home-price-trend-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.home-price-trend{border:1px solid rgba(15,23,42,.08);border-radius:20px;background:#fff;padding:14px;}
.home-price-trend span{display:block;color:#64748b;font-size:.78rem;margin-bottom:8px;}
.home-price-trend strong{display:block;color:#0f172a;font-size:1.32rem;font-weight:540;letter-spacing:-.045em;}
.home-price-trend small{display:inline-flex;margin-top:8px;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:600;background:rgba(148,163,184,.10);color:#64748b;}
.home-price-trend.is-up small,.home-change-row b.is-up{background:rgba(248,113,113,.10);color:#b91c1c;}
.home-price-trend.is-down small,.home-change-row b.is-down{background:rgba(16,185,129,.11);color:#047857;}
.home-price-trend.is-flat small,.home-change-row b.is-flat{background:rgba(148,163,184,.12);color:#64748b;}
.home-market-panel__meta{display:grid;gap:7px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(15,23,42,.08);font-size:.8rem;color:#64748b;}
.home-market-panel__meta b{font-weight:560;color:#0f172a;}
.home-intel-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:22px;}
.home-intel-panel,.home-tools-premium,.home-data-refresh-story{border:1px solid rgba(15,23,42,.08);border-radius:30px;background:rgba(255,255,255,.92);box-shadow:0 22px 58px rgba(15,23,42,.06);padding:24px;}
.home-section-head-mini{margin-bottom:18px;}
.home-section-head-mini span{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(14,165,233,.16);background:rgba(224,242,254,.68);color:#0369a1;border-radius:999px;padding:7px 11px;font-size:.8rem;font-weight:620;}
.home-section-head-mini p{margin:11px 0 0;color:#64748b;line-height:1.62;max-width:760px;}
.home-section-head-mini--center{text-align:center;display:flex;align-items:center;flex-direction:column;}
.home-cheapest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.home-cheapest-card{display:flex;flex-direction:column;text-decoration:none;border:1px solid rgba(15,23,42,.08);border-radius:22px;background:linear-gradient(180deg,#fff,rgba(248,250,252,.74));padding:16px;min-height:168px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.home-cheapest-card:hover{transform:translateY(-3px);border-color:rgba(14,165,233,.24);box-shadow:0 20px 46px rgba(15,23,42,.08);}
.home-cheapest-card span{color:#64748b;font-size:.78rem;margin-bottom:7px;}
.home-cheapest-card strong{color:#0f172a;font-size:1.45rem;font-weight:560;letter-spacing:-.045em;margin-bottom:10px;}
.home-cheapest-card small{color:#0369a1;font-size:.86rem;font-weight:550;line-height:1.35;margin-bottom:7px;}
.home-cheapest-card em{font-style:normal;color:#94a3b8;font-size:.76rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.home-change-list{display:grid;gap:10px;}
.home-change-row{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;align-items:center;border:1px solid rgba(15,23,42,.08);border-radius:17px;background:rgba(248,250,252,.72);padding:10px;}
.home-change-row span{font-size:.86rem;color:#0f172a;font-weight:560;}
.home-change-row b{border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:620;white-space:nowrap;}
.home-tools-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.home-tool-premium-card{position:relative;display:flex;flex-direction:column;gap:10px;text-decoration:none;border:1px solid rgba(15,23,42,.08);border-radius:24px;background:linear-gradient(135deg,#fff,rgba(240,249,255,.68));padding:20px;min-height:160px;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.home-tool-premium-card::after{content:"";position:absolute;right:-35px;bottom:-55px;width:130px;height:130px;border-radius:999px;background:rgba(14,165,233,.08);}
.home-tool-premium-card:hover{transform:translateY(-3px);border-color:rgba(14,165,233,.22);box-shadow:0 20px 50px rgba(15,23,42,.08);}
.home-tool-premium-card i{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:rgba(14,165,233,.10);color:#0284c7;}
.home-tool-premium-card strong{position:relative;color:#0f172a;font-size:1.05rem;font-weight:580;letter-spacing:-.025em;}
.home-tool-premium-card span{position:relative;color:#64748b;font-size:.86rem;}
.home-data-refresh-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:22px;align-items:center;background:radial-gradient(circle at 100% 0,rgba(14,165,233,.12),transparent 30%),#fff;}
.home-data-refresh-story h2{font-size:clamp(1.5rem,2.5vw,2.6rem);letter-spacing:-.045em;font-weight:480;color:#0f172a;margin:12px 0 10px;}
.home-data-refresh-story p{color:#64748b;line-height:1.72;margin:0;}
.home-data-refresh-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.home-data-refresh-metrics div{border:1px solid rgba(14,165,233,.14);border-radius:20px;background:rgba(240,249,255,.64);padding:15px;text-align:center;}
.home-data-refresh-metrics span{display:block;color:#64748b;font-size:.76rem;margin-bottom:7px;}
.home-data-refresh-metrics strong{display:block;color:#0f172a;font-size:1.15rem;font-weight:560;letter-spacing:-.03em;}
@media (max-width:1100px){.home-premium-hero,.home-intel-grid,.home-data-refresh-story{grid-template-columns:1fr}.home-cheapest-grid,.home-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.home-premium-hero__content{min-height:auto}.home-market-panel{align-self:stretch}.home-premium-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:640px){.home-premium-hero{padding:22px;border-radius:26px}.home-premium-hero h1{letter-spacing:-.045em}.home-price-trend-grid,.home-cheapest-grid,.home-tools-grid,.home-data-refresh-metrics{grid-template-columns:1fr}.home-change-row{grid-template-columns:1fr;align-items:start}.home-intel-panel,.home-tools-premium,.home-data-refresh-story{padding:18px;border-radius:24px}}



/* Iter47 — compact 24h price movement in legacy dashboard */
.home-price-grid small.fuel-price-delta,
.fuel-price-mini-grid small.fuel-price-delta{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-top:8px;
  border-radius:999px;
  padding:4px 8px;
  font-size:.72rem;
  line-height:1;
  font-weight:620;
  letter-spacing:-.01em;
  background:rgba(148,163,184,.11);
  color:#64748b;
}
.home-price-grid small.fuel-price-delta.is-up,
.fuel-price-mini-grid small.fuel-price-delta.is-up{background:rgba(248,113,113,.10);color:#b91c1c;}
.home-price-grid small.fuel-price-delta.is-down,
.fuel-price-mini-grid small.fuel-price-delta.is-down{background:rgba(16,185,129,.11);color:#047857;}
.home-price-grid small.fuel-price-delta.is-flat,
.fuel-price-mini-grid small.fuel-price-delta.is-flat{background:rgba(148,163,184,.12);color:#64748b;}

/* Iter52 — homepage dashboard polish + premium mobile navigation */
.home-news-hero.home-news-hero--editorial{
  padding:24px 28px;
  align-items:center;
}
.home-news-hero__content{
  min-height:300px;
}
.home-news-hero h1{
  font-size:clamp(2.05rem,3.55vw,3.72rem);
  line-height:1.03;
  margin-bottom:14px;
}
.home-news-hero p{
  font-size:1rem;
  line-height:1.64;
  max-width:720px;
}
.home-news-hero__actions{
  margin-top:20px;
  gap:9px;
}
.home-news-hero .home-news-hero__actions .btn,
.home-content-split .home-map-teaser .btn{
  min-height:40px;
  padding:.56rem .84rem;
  border-radius:13px;
  font-size:.91rem;
  box-shadow:0 10px 22px rgba(15,23,42,.055);
}
.home-news-hero .home-news-hero__actions .btn-primary{
  box-shadow:0 14px 30px rgba(14,165,233,.18);
}
.home-price-card{
  padding:20px;
  border-radius:24px;
}
.home-price-grid{
  gap:11px;
}
.home-price-grid>div.home-price-cell,
.home-price-grid>div{
  position:relative;
  min-height:112px;
  padding:13px 14px 12px;
  overflow:hidden;
}
.home-price-grid>div.home-price-cell::after{
  content:'';
  position:absolute;
  right:-22px;
  top:-22px;
  width:70px;
  height:70px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(14,165,233,.12),rgba(14,165,233,0) 68%);
  pointer-events:none;
}
.home-price-grid em{
  font-size:1.08rem;
  letter-spacing:-.03em;
}
.home-price-grid small.fuel-price-delta.fuel-price-trend,
.fuel-price-mini-grid small.fuel-price-delta.fuel-price-trend{
  display:flex;
  align-items:center;
  gap:6px;
  width:100%;
  max-width:100%;
  margin-top:10px;
  padding:5px 7px 5px 5px;
  border-radius:999px;
  font-size:.68rem;
  line-height:1.05;
  font-weight:520;
  letter-spacing:-.01em;
  white-space:nowrap;
  background:rgba(100,116,139,.08);
  color:#475569;
  border:1px solid rgba(100,116,139,.10);
}
.home-price-grid .fuel-price-trend i,
.fuel-price-mini-grid .fuel-price-trend i{
  width:21px;
  height:21px;
  flex:0 0 21px;
  border-radius:999px;
  display:grid;
  place-items:center;
  font-size:.62rem;
  background:#fff;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.06),0 6px 14px rgba(15,23,42,.06);
}
.home-price-grid .fuel-price-trend span,
.fuel-price-mini-grid .fuel-price-trend span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  margin:0;
  color:inherit;
  font-size:inherit;
  font-weight:560;
}
.home-price-grid .fuel-price-trend strong,
.fuel-price-mini-grid .fuel-price-trend strong{
  margin-left:auto;
  font-weight:720;
  color:inherit;
  font-size:.7rem;
}
.home-price-grid small.fuel-price-trend.is-up,
.fuel-price-mini-grid small.fuel-price-trend.is-up{
  background:linear-gradient(135deg,rgba(254,226,226,.90),rgba(255,255,255,.76));
  border-color:rgba(248,113,113,.20);
  color:#b91c1c;
}
.home-price-grid small.fuel-price-trend.is-down,
.fuel-price-mini-grid small.fuel-price-trend.is-down{
  background:linear-gradient(135deg,rgba(209,250,229,.92),rgba(255,255,255,.78));
  border-color:rgba(16,185,129,.22);
  color:#047857;
}
.home-price-grid small.fuel-price-trend.is-flat,
.fuel-price-mini-grid small.fuel-price-trend.is-flat{
  background:linear-gradient(135deg,rgba(226,232,240,.84),rgba(255,255,255,.78));
  border-color:rgba(148,163,184,.20);
  color:#475569;
}
.home-price-card__updated{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(15,23,42,.035);
  color:#475569!important;
  line-height:1.2;
}
.home-price-card__updated i{
  color:#0284c7;
  font-size:.78rem;
}
.home-price-card__foot{
  gap:12px;
}
.home-price-card__foot a{
  flex:0 0 auto;
}
.home-map-teaser{
  padding:20px 22px;
  gap:15px;
}
.home-map-teaser h2{
  font-size:1.1rem;
}
.home-map-teaser p{
  font-size:.92rem;
  margin-bottom:0;
}

.burger{
  position:relative;
  width:42px;
  height:42px;
  padding:0;
  border-radius:15px;
  color:#0f172a;
}
.burger-mark{
  width:18px;
  height:14px;
  position:relative;
  display:block;
}
.burger-mark span{
  position:absolute;
  left:0;
  width:18px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transition:transform .18s ease,opacity .14s ease,top .18s ease;
}
.burger-mark span:nth-child(1){top:0;}
.burger-mark span:nth-child(2){top:6px;}
.burger-mark span:nth-child(3){top:12px;}
.burger.is-open{
  border-color:rgba(14,165,233,.35);
  background:#fff;
  box-shadow:0 14px 30px rgba(14,165,233,.14);
}
.burger.is-open .burger-mark span:nth-child(1){top:6px;transform:rotate(45deg);}
.burger.is-open .burger-mark span:nth-child(2){opacity:0;transform:scaleX(.3);}
.burger.is-open .burger-mark span:nth-child(3){top:6px;transform:rotate(-45deg);}
.mobile-nav{
  display:block;
  max-height:0;
  overflow:hidden;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  border-radius:0;
  opacity:0;
  transform:translateY(-8px);
  transition:max-height .24s ease,opacity .18s ease,transform .18s ease,padding .18s ease;
}
.mobile-nav.show{
  max-height:760px;
  opacity:1;
  transform:translateY(0);
  padding:0 0 14px;
}
.mobile-nav__panel{
  margin-top:8px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:24px;
  background:
    radial-gradient(circle at 14% 0%,rgba(14,165,233,.12),transparent 34%),
    radial-gradient(circle at 100% 18%,rgba(16,185,129,.10),transparent 32%),
    rgba(255,255,255,.92);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 24px 60px rgba(15,23,42,.13);
  padding:14px;
}
.mobile-nav__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:3px 4px 12px;
  border-bottom:1px solid rgba(15,23,42,.07);
  margin-bottom:10px;
}
.mobile-nav__head strong{
  display:block;
  color:#0f172a;
  font-size:1rem;
  font-weight:650;
  letter-spacing:-.025em;
}
.mobile-nav__head small{
  display:block;
  color:#64748b;
  margin-top:2px;
  font-size:.78rem;
}
.mobile-nav__badge{
  width:38px;
  height:38px;
  border-radius:15px;
  display:grid;
  place-items:center;
  color:#0284c7;
  background:rgba(14,165,233,.10);
  box-shadow:inset 0 0 0 1px rgba(14,165,233,.10);
}
.mobile-nav__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.mobile-nav a.mobile-nav__item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px;
  border:1px solid rgba(15,23,42,.07);
  border-radius:17px;
  background:rgba(255,255,255,.68);
  color:#0f172a;
  opacity:1;
  font-weight:520;
  font-size:.9rem;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease;
}
.mobile-nav a.mobile-nav__item span{
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.mobile-nav a.mobile-nav__item span i{
  width:28px;
  height:28px;
  flex:0 0 28px;
  border-radius:11px;
  display:grid;
  place-items:center;
  color:#0284c7;
  background:rgba(14,165,233,.10);
  font-size:.78rem;
}
.mobile-nav__chevron{
  color:#94a3b8;
  font-size:.7rem;
}
.mobile-nav a.mobile-nav__item:hover{
  transform:translateY(-1px);
  background:#fff;
  border-color:rgba(14,165,233,.18);
  box-shadow:0 16px 34px rgba(15,23,42,.075);
}
.mobile-nav a.mobile-nav__item.is-active{
  background:linear-gradient(135deg,rgba(240,249,255,.96),#fff);
  border-color:rgba(14,165,233,.28);
  color:#0369a1;
  box-shadow:0 16px 34px rgba(14,165,233,.11);
}
.mobile-nav a.mobile-nav__item.is-active span i{
  color:#fff;
  background:linear-gradient(135deg,#0ea5e9,#0284c7);
}
@media (max-width:575.98px){
  .home-news-hero.home-news-hero--editorial{padding:18px;border-radius:24px;}
  .home-news-hero__content{min-height:auto;}
  .home-news-hero h1{font-size:clamp(2rem,10.5vw,3rem);line-height:1.02;}
  .home-news-hero__actions .btn{width:100%;justify-content:center;}
  .home-price-card__foot{align-items:flex-start;flex-direction:column;}
  .home-price-card__foot a{width:100%;justify-content:center;border:1px solid rgba(14,165,233,.16);border-radius:13px;padding:9px 10px;background:#fff;}
  .mobile-nav__grid{grid-template-columns:1fr;}
  .mobile-nav__panel{border-radius:22px;padding:12px;}
  .mobile-nav a.mobile-nav__item{padding:11px 12px;}
}

/* Iter53 — dedicated fuel map dashboard, controls and popup polish */
.fuel-map-hero{
  padding:24px 28px!important;
  align-items:center;
}
.fuel-map-hero__copy h1{
  font-size:clamp(2rem,3.2vw,3.25rem)!important;
  line-height:1.04!important;
  margin:10px 0 10px!important;
}
.fuel-map-hero__copy p{
  font-size:.98rem!important;
  line-height:1.62!important;
}
.fuel-map-hero__actions{
  margin-top:18px!important;
  gap:9px!important;
}
.fuel-map-hero .fuel-map-hero__actions .btn{
  min-height:40px!important;
  padding:.55rem .82rem!important;
  border-radius:13px!important;
  font-size:.9rem!important;
  box-shadow:0 10px 22px rgba(15,23,42,.055)!important;
}
.fuel-map-hero .fuel-map-hero__actions .btn-primary{
  box-shadow:0 14px 30px rgba(14,165,233,.18)!important;
}
.fuel-map-price-panel{
  padding:20px!important;
}
.fuel-price-mini-grid>div{
  position:relative;
  min-height:112px;
  padding:13px 14px 12px!important;
  overflow:hidden;
}
.fuel-price-mini-grid>div::after{
  content:'';
  position:absolute;
  right:-22px;
  top:-22px;
  width:70px;
  height:70px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(14,165,233,.12),rgba(14,165,233,0) 68%);
  pointer-events:none;
}
.fuel-price-mini-grid em{
  font-size:1.08rem!important;
  letter-spacing:-.03em!important;
}
.fuel-map-hero__meta--freshness{
  justify-content:flex-start!important;
  padding-top:13px!important;
}
.fuel-map-hero__meta--freshness .home-price-card__updated{
  font-size:.79rem;
  margin:0;
}
.map-tools-card__head{
  align-items:flex-start!important;
}
.map-tools-card__head .badge{
  display:none!important;
}
.hero-filter-bar{
  gap:10px!important;
  align-items:stretch!important;
}
.hero-filter-bar .filter-item,
.hero-radius-wrap{
  min-height:46px!important;
  height:46px!important;
  border-radius:15px!important;
  padding-inline:12px!important;
}
.hero-filter-bar .filter-item input,
.hero-filter-bar .filter-item select{
  font-size:.88rem!important;
}
.hero-filter-actions .btn,
.filter-btn{
  min-height:46px!important;
  height:46px!important;
  padding:.48rem .78rem!important;
  border-radius:14px!important;
  font-size:.88rem!important;
}
.hero-radius-wrap{
  height:auto!important;
  min-height:70px!important;
  padding:12px 14px 11px!important;
  align-items:stretch!important;
}
.hero-radius-wrap .small{
  margin-bottom:9px!important;
  font-size:.8rem!important;
}
.hero-radius-wrap input[type='range'],
#radiusRange{
  appearance:none;
  -webkit-appearance:none;
  height:22px!important;
  background:transparent!important;
  cursor:pointer;
}
.hero-radius-wrap input[type='range']::-webkit-slider-runnable-track,
#radiusRange::-webkit-slider-runnable-track{
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(14,165,233,.70),rgba(34,197,94,.50));
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.05);
}
.hero-radius-wrap input[type='range']::-webkit-slider-thumb,
#radiusRange::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:22px;
  height:22px;
  margin-top:-8px;
  border-radius:999px;
  background:#fff;
  border:5px solid #0ea5e9;
  box-shadow:0 8px 18px rgba(14,165,233,.25),0 0 0 4px rgba(14,165,233,.10);
}
.hero-radius-wrap input[type='range']::-moz-range-track,
#radiusRange::-moz-range-track{
  height:6px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(14,165,233,.70),rgba(34,197,94,.50));
}
.hero-radius-wrap input[type='range']::-moz-range-thumb,
#radiusRange::-moz-range-thumb{
  width:14px;
  height:14px;
  border-radius:999px;
  background:#fff;
  border:5px solid #0ea5e9;
  box-shadow:0 8px 18px rgba(14,165,233,.25),0 0 0 4px rgba(14,165,233,.10);
}
.dk-custom-select__native.is-enhanced{
  position:absolute!important;
  opacity:0!important;
  width:1px!important;
  height:1px!important;
  pointer-events:none!important;
}
.dk-select-pro{
  position:relative;
  flex:1 1 auto;
  min-width:0;
  height:100%;
  z-index:20;
}
.dk-select-pro__button{
  width:100%;
  height:100%;
  border:0;
  outline:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:#0f172a;
  font-size:.88rem;
  font-weight:420;
  padding:0;
  text-align:left;
}
.dk-select-pro__button span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dk-select-pro__button i{
  font-size:.72rem!important;
  color:#94a3b8!important;
  transition:transform .16s ease,color .16s ease;
}
.dk-select-pro.is-open .dk-select-pro__button i{
  transform:rotate(180deg);
  color:#0284c7!important;
}
.dk-select-pro__menu{
  position:absolute;
  z-index:9999;
  top:calc(100% + 9px);
  left:-34px;
  right:-10px;
  max-height:280px;
  overflow:auto;
  padding:7px;
  border:1px solid rgba(14,165,233,.18);
  border-radius:17px;
  background:rgba(255,255,255,.96);
  box-shadow:0 24px 65px rgba(15,23,42,.16);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  opacity:0;
  transform:translateY(-6px) scale(.98);
  pointer-events:none;
  transition:opacity .14s ease,transform .14s ease;
}
.dk-select-pro.is-open .dk-select-pro__menu{
  opacity:1;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
.dk-select-pro__option{
  width:100%;
  border:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 11px;
  border-radius:12px;
  color:#0f172a;
  font-size:.87rem;
  font-weight:410;
  text-align:left;
}
.dk-select-pro__option:hover,
.dk-select-pro__option:focus{
  outline:0;
  background:rgba(224,242,254,.72);
}
.dk-select-pro__option i{
  opacity:0;
  color:#0284c7!important;
  font-size:.76rem!important;
}
.dk-select-pro__option.is-selected{
  background:linear-gradient(135deg,rgba(224,242,254,.95),rgba(255,255,255,.92));
  color:#0369a1;
}
.dk-select-pro__option.is-selected i{
  opacity:1;
}
.map-tools-card{
  overflow:visible!important;
}
.map-tools-card .filter-item{
  position:relative;
  z-index:30;
}
.map-tools-card .filter-item.search{
  z-index:35;
}
.dk-related-grid--editorial{
  gap:14px!important;
}
.dk-related-article-card{
  color:#0f172a;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.76));
  border-color:rgba(15,23,42,.075)!important;
  box-shadow:0 16px 42px rgba(15,23,42,.052);
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.dk-related-article-card:hover{
  transform:translateY(-2px);
  border-color:rgba(14,165,233,.18)!important;
  box-shadow:0 22px 52px rgba(15,23,42,.075);
}
.dk-related-article-card .dk-related-card__image{
  text-decoration:none;
  height:152px;
  transition:filter .16s ease,transform .16s ease;
}
.dk-related-article-card:hover .dk-related-card__image{
  filter:saturate(1.05) contrast(1.02);
}
.dk-related-article-card .dk-related-card__body{
  min-height:220px;
}
.dk-related-article-card__badge{
  width:max-content;
  display:inline-flex!important;
  align-items:center;
  gap:7px;
  padding:6px 9px;
  border-radius:999px;
  background:rgba(14,165,233,.08);
  border:1px solid rgba(14,165,233,.16);
  color:#0369a1!important;
  font-size:.75rem!important;
  font-weight:440!important;
  margin:0!important;
}
.dk-related-article-card h3{
  margin:3px 0 0;
  font-size:1.02rem;
  line-height:1.28;
  letter-spacing:-.022em;
  font-weight:500;
}
.dk-related-article-card h3 a{
  color:#0f172a;
  text-decoration:none;
}
.dk-related-article-card h3 a:hover{
  color:#0369a1;
}
.dk-related-article-card p{
  color:#64748b;
  font-size:.86rem;
  line-height:1.5;
  margin:0;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.dk-related-article-card__link{
  width:max-content;
  margin-top:auto;
  padding:7px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(14,165,233,.18);
  box-shadow:0 8px 20px rgba(15,23,42,.045);
}
.leaflet-container a.leaflet-popup-close-button{
  top:10px!important;
  right:10px!important;
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  color:#475569!important;
  font-size:18px!important;
  line-height:1!important;
  box-shadow:0 10px 26px rgba(15,23,42,.10)!important;
  transition:background .14s ease,color .14s ease,transform .14s ease!important;
}
.leaflet-container a.leaflet-popup-close-button:hover{
  background:#0f172a!important;
  color:#fff!important;
  transform:scale(1.04);
}
.leaflet-popup-content-wrapper{
  border-radius:24px!important;
}
.fuelo-popup{
  min-width:318px;
}
.fuelo-popup__head{
  padding:18px 18px 14px!important;
  background:radial-gradient(circle at 10% 10%,rgba(14,165,233,.13),transparent 42%),linear-gradient(135deg,rgba(240,249,255,.96),#fff)!important;
}
.fuelo-popup__brand{
  font-weight:520!important;
}
.fuelo-popup__name{
  max-width:250px;
  font-size:1.06rem!important;
  font-weight:560!important;
}
.fuelo-popup__grid{
  padding:14px!important;
  gap:8px!important;
}
.fuelo-popup__cell{
  border-radius:15px!important;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.82))!important;
}
.fuelo-popup__updated{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 14px 12px!important;
  padding:6px 9px!important;
  border-radius:999px;
  background:rgba(15,23,42,.035);
  color:#475569!important;
  font-size:.76rem!important;
}
.fuelo-popup__updated i{
  color:#0284c7;
}
.fuelo-popup__updated span{
  color:#475569!important;
  font-weight:430!important;
}
.fuelo-popup__actions{
  display:grid!important;
  gap:9px!important;
  padding:12px 14px 15px!important;
}
.fuelo-popup__cta{
  width:100%;
  justify-content:space-between;
  border-radius:15px!important;
  padding:10px 12px!important;
  background:linear-gradient(135deg,#0ea5e9,#06b6d4)!important;
  color:#fff!important;
  font-weight:500!important;
  box-shadow:0 14px 30px rgba(14,165,233,.22)!important;
}
.fuelo-popup__cta span{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fuelo-popup__secondary-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.fuelo-popup__link{
  justify-content:center;
  border-radius:14px!important;
  padding:9px 10px!important;
  font-weight:450!important;
  background:linear-gradient(180deg,#fff,rgba(240,249,255,.86))!important;
}
.fuelo-popup__link i{
  font-size:.78rem;
}
@media (max-width:991.98px){
  .fuel-map-hero{grid-template-columns:1fr!important;}
  .hero-filter-bar{grid-template-columns:1fr 1fr!important;}
  .hero-filter-actions,.hero-radius-wrap{grid-column:1 / -1!important;}
}
@media (max-width:640px){
  .fuel-map-hero{padding:22px!important;border-radius:26px!important;}
  .fuel-map-hero__copy h1{letter-spacing:-.042em!important;}
  .fuel-price-mini-grid{grid-template-columns:1fr!important;}
  .hero-filter-bar{grid-template-columns:1fr!important;}
  .hero-filter-actions{grid-template-columns:1fr!important;}
  .dk-select-pro__menu{left:-32px;right:-8px;}
  .fuelo-popup{min-width:270px;}
  .fuelo-popup__secondary-actions{grid-template-columns:1fr;}
}

/* Iteration 54: fuel map controls polish + reliable dropdown layering */
.map-tools-card{
  position:relative!important;
  z-index:2400!important;
  overflow:visible!important;
}
.map-tools-card .filter-bar,
.hero-filter-bar{
  position:relative!important;
  z-index:2450!important;
  overflow:visible!important;
  align-items:center!important;
}
.map-tools-card .filter-item,
.map-tools-card .hero-filter-actions,
.map-tools-card .hero-radius-wrap{
  position:relative!important;
  z-index:2460!important;
}
.map-tools-card .filter-item:has(.dk-select-pro.is-open){
  z-index:2800!important;
}
.dk-select-pro{
  position:relative!important;
  z-index:1!important;
}
.dk-select-pro.is-open{
  z-index:3500!important;
}
.dk-select-pro__menu{
  z-index:5000!important;
  background:#fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:1px solid rgba(14,165,233,.20)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.20),0 2px 0 rgba(255,255,255,.88) inset!important;
  max-height:250px!important;
}
.map--dedicated,
.leaflet-container.map--dedicated{
  position:relative!important;
  z-index:1!important;
}

.hero-filter-bar .filter-item,
.hero-filter-bar .filter-btn,
.hero-filter-actions .btn{
  min-height:44px!important;
  height:44px!important;
  border-radius:14px!important;
}
.hero-filter-bar .filter-item{
  padding-inline:12px!important;
  box-shadow:0 10px 24px rgba(15,23,42,.045)!important;
}
.hero-filter-actions .btn,
.filter-btn{
  padding:.42rem .72rem!important;
  font-size:.86rem!important;
}

.hero-radius-wrap{
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:auto minmax(180px,1fr)!important;
  align-items:center!important;
  gap:14px!important;
  width:100%!important;
  height:56px!important;
  min-height:56px!important;
  padding:0 16px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(240,249,255,.72))!important;
  border:1px solid rgba(14,165,233,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.90),0 10px 26px rgba(15,23,42,.045)!important;
}
.hero-radius-wrap .small{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  margin:0!important;
  color:#64748b!important;
  font-size:.84rem!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#radiusLabel{
  min-width:34px!important;
  height:26px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  transform:translateY(0)!important;
}
.hero-radius-wrap input[type='range'],
#radiusRange{
  width:100%!important;
  height:26px!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  align-self:center!important;
  background:transparent!important;
  outline:none!important;
}
.hero-radius-wrap input[type='range']::-webkit-slider-runnable-track,
#radiusRange::-webkit-slider-runnable-track{
  height:6px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#0ea5e9 0%,#0ea5e9 var(--radius-progress,24%),rgba(203,213,225,.78) var(--radius-progress,24%),rgba(203,213,225,.78) 100%)!important;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.045)!important;
}
.hero-radius-wrap input[type='range']::-webkit-slider-thumb,
#radiusRange::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  width:22px!important;
  height:22px!important;
  margin-top:-8px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:5px solid #0ea5e9!important;
  box-shadow:0 8px 18px rgba(14,165,233,.24),0 0 0 4px rgba(14,165,233,.10)!important;
}
.hero-radius-wrap input[type='range']::-moz-range-track,
#radiusRange::-moz-range-track{
  height:6px!important;
  border-radius:999px!important;
  background:rgba(203,213,225,.78)!important;
}
.hero-radius-wrap input[type='range']::-moz-range-progress,
#radiusRange::-moz-range-progress{
  height:6px!important;
  border-radius:999px!important;
  background:#0ea5e9!important;
}
.hero-radius-wrap input[type='range']::-moz-range-thumb,
#radiusRange::-moz-range-thumb{
  width:12px!important;
  height:12px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:5px solid #0ea5e9!important;
  box-shadow:0 8px 18px rgba(14,165,233,.24),0 0 0 4px rgba(14,165,233,.10)!important;
}

.dk-related-article-card .dk-related-card__body{
  min-height:198px!important;
  gap:10px!important;
}
.dk-related-article-card__badge{
  display:none!important;
}
.dk-related-article-card h3{
  margin:0!important;
  font-size:1.03rem!important;
  line-height:1.3!important;
}
.dk-related-article-card__link{
  padding:6px 9px!important;
  min-height:32px!important;
  font-size:.82rem!important;
  border-radius:12px!important;
  gap:7px!important;
}
.dk-related-article-card__link i{
  font-size:.72rem!important;
}

@media (max-width: 991.98px){
  .hero-radius-wrap{
    grid-template-columns:auto minmax(140px,1fr)!important;
  }
}
@media (max-width: 640px){
  .hero-radius-wrap{
    grid-template-columns:1fr!important;
    height:auto!important;
    min-height:76px!important;
    padding:12px 14px!important;
    gap:10px!important;
  }
  .hero-radius-wrap .small{
    width:100%!important;
  }
  .dk-select-pro__menu{
    max-height:230px!important;
  }
}

/* Iter55: stations directory premium refresh */
.station-directory-hero--compact{
  grid-template-columns:minmax(0,1.28fr) minmax(280px,.72fr)!important;
  padding:30px 32px!important;
  gap:22px!important;
}
.station-directory-hero--compact h1{
  font-size:clamp(2.35rem,4.1vw,4.05rem)!important;
  line-height:1.04!important;
  letter-spacing:-.058em!important;
  margin:15px 0 12px!important;
}
.station-directory-hero--compact p{
  max-width:820px!important;
  font-size:1rem!important;
  line-height:1.72!important;
}
.station-directory-hero__actions--compact{
  margin-top:20px!important;
  gap:9px!important;
}
.station-directory-hero__actions--compact .btn{
  min-height:38px!important;
  padding:.46rem .84rem!important;
  font-size:.88rem!important;
  border-radius:13px!important;
}
.station-directory-hero__panel--summary{
  padding:18px!important;
  gap:14px!important;
  justify-content:flex-start!important;
}
.station-directory-summary-top{
  border:1px solid rgba(14,165,233,.15);
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(224,242,254,.62));
  padding:15px 16px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:4px 12px;
}
.station-directory-summary-top span{
  grid-column:1/2;
  color:#64748b;
  font-size:.78rem;
  line-height:1.2;
}
.station-directory-summary-top strong{
  grid-row:1/3;
  grid-column:2/3;
  color:#0f172a;
  font-size:2rem;
  line-height:.95;
  letter-spacing:-.05em;
  font-weight:520;
  font-variant-numeric:tabular-nums;
}
.station-directory-summary-top small{
  grid-column:1/2;
  color:#0369a1;
  font-size:.86rem;
  font-weight:560;
}
.station-stat-grid--compact{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
.station-stat-grid--compact div{
  border-radius:17px!important;
  padding:11px 10px!important;
}
.station-stat-grid--compact strong{
  font-size:1.18rem!important;
  font-weight:560!important;
}
.station-stat-grid--compact span{
  margin-top:4px!important;
  font-size:.74rem!important;
}
.station-directory-tools{
  position:relative!important;
  z-index:80!important;
  overflow:visible!important;
  grid-template-columns:minmax(260px,1fr) minmax(170px,.55fr) minmax(180px,.55fr) minmax(180px,.55fr) auto!important;
  padding:12px!important;
  gap:9px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.9)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.station-search-shell,
.station-select-shell{
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  height:44px;
  border:1px solid rgba(15,23,42,.1);
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.82));
  border-radius:16px;
  padding:0 13px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 10px 24px rgba(15,23,42,.045);
}
.station-search-shell:focus-within,
.station-select-shell:focus-within,
.station-select-shell:has(.dk-select-pro.is-open){
  border-color:rgba(14,165,233,.44);
  box-shadow:0 0 0 4px rgba(14,165,233,.10),0 14px 32px rgba(14,165,233,.08);
}
.station-search-shell i,
.station-select-shell>i{
  color:#0284c7;
  font-size:.84rem;
  flex:0 0 auto;
}
.station-search-shell input{
  height:100%;
  font-size:.91rem!important;
}
.station-select-shell select:not(.is-enhanced){
  border:0!important;
  background:transparent!important;
  min-height:auto!important;
  height:100%;
  padding:0!important;
  box-shadow:none!important;
  font-size:.9rem;
}
.station-select-shell .dk-select-pro{
  height:100%;
  z-index:60;
}
.station-select-shell .dk-select-pro__button{
  font-size:.9rem;
  font-weight:500;
}
.station-select-shell .dk-select-pro__menu{
  left:-32px;
  right:-10px;
  top:calc(100% + 10px);
  z-index:12000;
  background:rgba(255,255,255,.98);
  box-shadow:0 28px 72px rgba(15,23,42,.18);
}
.station-directory-clear{
  min-height:44px!important;
  height:44px!important;
  padding:0 18px!important;
  border-radius:16px!important;
  font-size:.9rem!important;
  white-space:nowrap;
}
.station-directory-results{
  position:relative!important;
  z-index:5!important;
  border-radius:30px!important;
  padding:22px!important;
}
.station-directory-results__head{
  align-items:flex-start!important;
  margin-bottom:20px!important;
}
.station-directory-results__head h2{
  font-size:clamp(1.35rem,2.1vw,2rem)!important;
  margin:12px 0 6px!important;
}
.station-directory-results__head p{
  max-width:760px;
  margin:0;
  color:#64748b;
  line-height:1.6;
  font-size:.94rem;
}
.station-directory-count-card{
  min-width:138px;
  border:1px solid rgba(14,165,233,.18);
  border-radius:22px;
  background:linear-gradient(180deg,#fff,rgba(240,249,255,.76));
  box-shadow:0 16px 40px rgba(15,23,42,.055);
  padding:14px 16px;
  text-align:right;
}
.station-directory-count-card strong{
  display:block;
  color:#0369a1;
  font-size:1.55rem;
  line-height:1;
  font-weight:560;
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
}
.station-directory-count-card span{
  display:block;
  margin-top:5px;
  color:#64748b;
  font-size:.78rem;
}
.station-directory-grid{
  gap:16px!important;
}
.station-directory-card--premium{
  border-radius:26px!important;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.86))!important;
  box-shadow:0 18px 44px rgba(15,23,42,.055)!important;
}
.station-directory-card--premium:hover{
  transform:translateY(-4px)!important;
  box-shadow:0 28px 70px rgba(15,23,42,.11)!important;
  border-color:rgba(14,165,233,.25)!important;
}
.station-directory-card--premium .station-directory-card__image{
  position:relative;
  display:block;
  min-height:0!important;
  height:168px;
  overflow:hidden;
  background:linear-gradient(135deg,#e2e8f0,#f8fafc);
}
.station-directory-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .22s ease,filter .22s ease;
}
.station-directory-card--premium:hover .station-directory-card__image img{
  transform:scale(1.035);
  filter:saturate(1.03) contrast(1.02);
}
.station-directory-card__image::after{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:58%;
  background:linear-gradient(180deg,rgba(15,23,42,0),rgba(15,23,42,.42));
  pointer-events:none;
}
.station-directory-card__brand-overlay{
  position:absolute;
  left:14px;
  bottom:13px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:7px;
  max-width:calc(100% - 28px);
  border:1px solid rgba(255,255,255,.38);
  border-radius:999px;
  background:rgba(255,255,255,.82);
  color:#0f172a;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  padding:6px 10px;
  font-size:.78rem;
  font-weight:620;
  box-shadow:0 12px 26px rgba(15,23,42,.12);
}
.station-directory-card--premium .station-directory-card__body{
  padding:16px!important;
}
.station-directory-card__top small{
  display:inline-flex;
  align-items:center;
  gap:5px;
  max-width:52%;
  color:#64748b!important;
  font-size:.73rem!important;
  white-space:normal!important;
  line-height:1.25;
  justify-content:flex-end;
  text-align:right;
}
.station-directory-card__top small i{
  color:#0284c7;
}
.station-directory-card--premium h3{
  font-size:1.05rem!important;
  line-height:1.28!important;
  margin-bottom:8px!important;
}
.station-directory-card--premium p{
  min-height:38px!important;
  font-size:.88rem!important;
  margin-bottom:13px!important;
}
.station-directory-prices{
  gap:7px!important;
  margin-bottom:14px!important;
}
.station-directory-prices span{
  border-radius:15px!important;
  background:linear-gradient(180deg,#fff,rgba(248,250,252,.9))!important;
  padding:9px 10px!important;
}
.station-directory-prices em{
  font-size:.7rem!important;
}
.station-directory-prices strong{
  font-size:.9rem!important;
  font-weight:560!important;
}
.station-directory-card__actions{
  gap:7px!important;
}
.station-directory-card__actions .btn{
  min-height:34px!important;
  border-radius:12px!important;
  padding:.35rem .64rem!important;
  font-size:.82rem!important;
}
.station-directory-card__primary{
  flex:1 1 auto;
}
.station-directory-more{
  margin-top:22px!important;
}
.station-directory-more-btn{
  background:linear-gradient(135deg,#0ea5e9,#0284c7)!important;
  color:#fff!important;
  border:0!important;
  min-width:170px;
  min-height:34px!important;
  height:34px!important;
  padding:0 14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-weight:750!important;
  font-size:13px!important;
  box-shadow:0 8px 18px rgba(14,165,233,.2)!important;
  border-radius:12px!important;
}
.station-directory-more-btn:hover{
  background:linear-gradient(135deg,#0284c7,#0369a1)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 12px 24px rgba(14,165,233,.26)!important;
}
@media (max-width:1200px){
  .station-directory-tools{grid-template-columns:1fr 1fr!important;}
  .station-directory-clear{grid-column:auto;}
}
@media (max-width:900px){
  .station-directory-hero--compact{grid-template-columns:1fr!important;padding:24px!important;}
  .station-stat-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .station-directory-tools{grid-template-columns:1fr!important;}
  .station-directory-results__head{display:grid!important;grid-template-columns:1fr!important;}
  .station-directory-count-card{text-align:left;min-width:0;width:100%;}
}
@media (max-width:640px){
  .station-directory-hero--compact h1{font-size:clamp(2rem,13vw,2.8rem)!important;}
  .station-stat-grid--compact{grid-template-columns:1fr!important;}
  .station-directory-card--premium .station-directory-card__image{height:150px;}
  .station-directory-card__top{align-items:flex-start!important;}
  .station-directory-card__top small{max-width:48%;}
}

/* Iter56: staciju kataloga smalkās nianses */
.station-directory-count-hidden{
  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;
}
.station-directory-results__head{
  align-items:flex-start!important;
}
.station-directory-card--premium,
.station-directory-card--premium:hover{
  transform:none!important;
}
.station-directory-card--premium:hover{
  box-shadow:0 20px 52px rgba(15,23,42,.075)!important;
  border-color:rgba(14,165,233,.18)!important;
}
.station-directory-card__image img,
.station-directory-card--premium:hover .station-directory-card__image img{
  transform:none!important;
  filter:none!important;
}
.station-directory-card--premium .station-directory-card__body{
  padding-top:17px!important;
}
.station-directory-card--premium h3{
  margin-top:0!important;
}
.station-directory-card__actions .btn{
  transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.station-directory-card__actions .btn:hover{
  transform:translateY(-1px)!important;
}
.station-directory-card__primary{
  background:linear-gradient(180deg,#fff,rgba(240,249,255,.86))!important;
  border:1px solid rgba(14,165,233,.24)!important;
  color:#0369a1!important;
  box-shadow:none!important;
}
.station-directory-card__primary:hover{
  background:linear-gradient(135deg,#0ea5e9,#0284c7)!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(14,165,233,.2)!important;
}
.station-directory-more{
  margin-top:22px!important;
  display:flex!important;
  justify-content:center!important;
}
.station-directory-more-btn{
  background:linear-gradient(180deg,#fff,rgba(240,249,255,.86))!important;
  border:1px solid rgba(14,165,233,.24)!important;
  color:#0369a1!important;
  min-width:170px!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:0!important;
  font-weight:410!important;
  font-size:13px!important;
  line-height:1!important;
  box-shadow:none!important;
  border-radius:13px!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.station-directory-more-btn:hover{
  background:linear-gradient(135deg,#0ea5e9,#06b6d4)!important;
  border-color:transparent!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
  box-shadow:0 10px 22px rgba(14,165,233,.18)!important;
}
.station-directory-more-btn:active{
  transform:translateY(0)!important;
  box-shadow:none!important;
}
.station-directory-more-btn i{
  display:none!important;
}
@media (max-width:640px){
  .station-directory-results__head{gap:10px!important;}
  .station-directory-more-btn{width:100%;max-width:260px;}
}


/* ===== Station detail premium upgrade (Iter57) ===== */
.station-profile-headline{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.34fr);gap:16px;align-items:start;}
.station-profile-status-card{border:1px solid rgba(14,165,233,.14);border-radius:24px;background:linear-gradient(180deg,#fff,rgba(240,249,255,.78));padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:0 14px 36px rgba(15,23,42,.05);min-height:100%;justify-content:center;}
.station-profile-status-card span{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#64748b;}
.station-profile-status-card strong{font-size:1.02rem;line-height:1.4;font-weight:560;color:#0f172a;}
.station-profile-facts{grid-template-columns:repeat(3,minmax(0,1fr));}
.station-profile-price-grid{gap:14px;}
.station-profile-price{position:relative;min-height:180px;display:flex;flex-direction:column;justify-content:flex-start;}
.station-profile-price strong{margin-bottom:8px;}
.station-profile-price__trend{margin-top:auto;display:flex;align-items:flex-start;gap:10px;border-top:1px solid rgba(148,163,184,.18);padding-top:12px;}
.station-profile-price__trend i{font-size:1rem;margin-top:2px;}
.station-profile-price__trend div{display:flex;flex-direction:column;gap:3px;}
.station-profile-price__trend em{font-style:normal;font-weight:650;font-size:.92rem;color:#0f172a;letter-spacing:-.02em;}
.station-profile-price__trend span{margin:0;font-size:.76rem;color:#64748b;}
.station-profile-price__trend.state-up i,.station-profile-price.state-up strong{color:#16a34a;}
.station-profile-price__trend.state-down i,.station-profile-price.state-down strong{color:#dc2626;}
.station-profile-price__trend.state-stable i{color:#0284c7;}
.station-profile-price__trend.state-none i{color:#94a3b8;}
.station-profile-layout{align-items:start;}
.station-profile-panel--map,.station-profile-panel--overview{padding:24px;}
.station-profile-map{height:390px;border:1px solid rgba(15,23,42,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.station-profile-side-stack{display:flex;flex-direction:column;gap:22px;}
.station-profile-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.station-profile-overview-grid div{border:1px solid rgba(15,23,42,.08);border-radius:18px;background:rgba(248,250,252,.78);padding:14px;}
.station-profile-overview-grid span{display:block;color:#94a3b8;font-size:.76rem;margin-bottom:6px;}
.station-profile-overview-grid strong{display:block;color:#0f172a;font-size:.94rem;font-weight:540;line-height:1.45;}
.station-profile-actions--stacked{margin-top:18px;display:grid;grid-template-columns:1fr;gap:10px;}
.station-profile-actions--stacked .btn{justify-content:center;}
.station-profile-nearby{padding:22px 24px;}
.station-nearby-grid{gap:12px;}
.station-nearby-card{display:flex;flex-direction:column;justify-content:space-between;padding:16px 16px 14px;border-radius:20px;background:linear-gradient(180deg,rgba(248,250,252,.88),rgba(255,255,255,.98));}
.station-nearby-card__meta{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;}
.station-nearby-card small{display:flex;align-items:center;gap:8px;margin:0;color:#475569;font-size:.82rem;}
.station-nearby-card .btn{align-self:flex-start;}
@media (max-width:1100px){.station-profile-headline{grid-template-columns:1fr}.station-profile-overview-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:900px){.station-profile-overview-grid{grid-template-columns:1fr 1fr}.station-profile-map{height:320px;}}
@media (max-width:640px){.station-profile-headline,.station-profile-facts,.station-profile-overview-grid,.station-profile-price-grid,.station-nearby-grid{grid-template-columns:1fr}.station-profile-price{min-height:auto}.station-profile-status-card{padding:14px 16px}.station-profile-map{height:280px}}


/* ===== Station detail premium refinement (Iter58) ===== */
.station-profile-headline{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.32fr);gap:16px;align-items:start;}
.station-profile-status-card{border:1px solid rgba(14,165,233,.13);border-radius:24px;background:linear-gradient(180deg,#fff,rgba(240,249,255,.78));padding:15px 17px;display:flex;flex-direction:column;gap:7px;box-shadow:0 14px 34px rgba(15,23,42,.05);}
.station-profile-status-card span{display:flex;align-items:center;gap:7px;font-size:.76rem;text-transform:uppercase;letter-spacing:.075em;color:#64748b;font-weight:500;}
.station-profile-status-card strong{font-size:.96rem;line-height:1.4;font-weight:520;color:#0f172a;}
.station-profile-meta-strip{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;padding:15px 16px;border:1px solid rgba(15,23,42,.07);border-radius:24px;background:rgba(255,255,255,.68);box-shadow:inset 0 1px 0 rgba(255,255,255,.84);}
.station-profile-meta-strip div{display:flex;align-items:center;min-width:0;gap:8px;color:#475569;font-size:.92rem;}
.station-profile-meta-strip i{color:#0284c7;font-size:.9rem;}
.station-profile-meta-strip span{color:#94a3b8;font-size:.78rem;}
.station-profile-meta-strip strong{font-weight:480;color:#0f172a;line-height:1.35;}
.station-section-head--prices h2{font-size:clamp(1.25rem,1.8vw,1.65rem);letter-spacing:-.032em;margin-bottom:7px;}
.station-section-head--prices p{font-size:.96rem;max-width:720px;}
.station-profile-price{min-height:176px;display:flex;flex-direction:column;}
.station-profile-price strong{font-weight:520;}
.station-profile-price__trend{margin-top:auto;display:flex;align-items:flex-start;gap:10px;border-top:1px solid rgba(148,163,184,.17);padding-top:12px;}
.station-profile-price__trend i{font-size:.98rem;margin-top:2px;}
.station-profile-price__trend div{display:flex;flex-direction:column;gap:3px;}
.station-profile-price__trend em{font-style:normal;font-weight:560;font-size:.9rem;color:#0f172a;letter-spacing:-.01em;}
.station-profile-price__trend span{margin:0;font-size:.75rem;color:#64748b;}
.station-profile-price__trend.state-up i,.station-profile-price.state-up strong{color:#16a34a;}
.station-profile-price__trend.state-down i,.station-profile-price.state-down strong{color:#dc2626;}
.station-profile-price__trend.state-stable i{color:#0284c7;}
.station-profile-price__trend.state-none i{color:#94a3b8;}
.station-profile-layout{align-items:start;}
.station-profile-panel--map,.station-profile-panel--overview{padding:22px 24px;}
.station-profile-map--leaflet{height:390px;border:1px solid rgba(15,23,42,.06);border-radius:22px;overflow:hidden;background:#e2e8f0;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.station-profile-map--empty{height:280px;display:flex;align-items:center;justify-content:center;gap:10px;color:#64748b;background:rgba(248,250,252,.88);}
.station-profile-detail-list{margin:16px 0 0;display:flex;flex-direction:column;border-top:1px solid rgba(15,23,42,.07);}
.station-profile-detail-list div{display:grid;grid-template-columns:minmax(120px,.36fr) minmax(0,1fr);gap:14px;align-items:start;padding:12px 0;border-bottom:1px solid rgba(15,23,42,.07);}
.station-profile-detail-list dt{display:flex;align-items:center;gap:8px;color:#64748b;font-size:.86rem;font-weight:430;}
.station-profile-detail-list dt i{color:#0284c7;font-size:.86rem;}
.station-profile-detail-list dd{margin:0;color:#0f172a;font-size:.94rem;font-weight:420;line-height:1.45;}
.station-profile-actions--stacked{margin-top:18px;display:grid;grid-template-columns:1fr;gap:10px;}
.station-profile-actions--stacked .btn{justify-content:center;}
.station-profile-nearby{padding:22px 24px;}
.station-profile-nearby .station-section-head h2{font-size:clamp(1.18rem,1.65vw,1.52rem);letter-spacing:-.03em;}
.station-nearby-grid{gap:12px;}
.station-nearby-card{display:flex;flex-direction:column;padding:16px;border-radius:20px;background:linear-gradient(180deg,rgba(248,250,252,.88),rgba(255,255,255,.98));}
.station-nearby-card h3{font-weight:520;font-size:.98rem;}
.station-nearby-card p{min-height:auto;margin-bottom:12px;}
.station-nearby-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0 12px;}
.station-nearby-prices span{display:flex;flex-direction:column;gap:2px;border:1px solid rgba(14,165,233,.12);border-radius:14px;background:rgba(240,249,255,.72);padding:8px 9px;margin:0;color:#0f172a;}
.station-nearby-prices em{font-style:normal;color:#64748b;font-size:.72rem;}
.station-nearby-card__meta{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;}
.station-nearby-card small{display:flex;align-items:center;gap:8px;margin:0;color:#475569;font-size:.82rem;}
.station-nearby-card .btn{align-self:flex-start;}
@media (max-width:1100px){.station-profile-headline{grid-template-columns:1fr}.station-profile-detail-list div{grid-template-columns:1fr;gap:4px}.station-profile-meta-strip{gap:10px 14px}}
@media (max-width:900px){.station-profile-map--leaflet{height:320px}.station-profile-meta-strip{display:grid;grid-template-columns:1fr 1fr}.station-profile-meta-strip div:last-child{grid-column:1/-1}}
@media (max-width:640px){.station-profile-headline,.station-profile-price-grid,.station-nearby-grid,.station-nearby-prices,.station-profile-meta-strip{grid-template-columns:1fr}.station-profile-price{min-height:auto}.station-profile-status-card{padding:14px 16px}.station-profile-map--leaflet{height:280px}.station-profile-panel--map,.station-profile-panel--overview,.station-profile-nearby{padding:18px}.station-profile-meta-strip{padding:14px}}

/* ===== Iter61: station profile marker, trend colours and image polish ===== */
.station-profile-price__trend.state-up i,
.station-profile-price.state-up strong{color:#dc2626!important;}
.station-profile-price__trend.state-down i,
.station-profile-price.state-down strong{color:#16a34a!important;}
.station-profile-price__trend.state-stable i{color:#0284c7!important;}
.station-profile-price__trend.state-none i{color:#94a3b8!important;}
.station-profile-price.state-up{border-color:rgba(220,38,38,.18);background:linear-gradient(180deg,#fff,rgba(254,242,242,.58));}
.station-profile-price.state-down{border-color:rgba(22,163,74,.18);background:linear-gradient(180deg,#fff,rgba(240,253,244,.58));}
.station-profile-price__trend.state-up em{color:#991b1b!important;}
.station-profile-price__trend.state-down em{color:#166534!important;}
.station-profile-map--leaflet .leaflet-marker-icon{object-fit:contain!important;image-rendering:auto;filter:drop-shadow(0 10px 14px rgba(15,23,42,.22));}
.station-profile-hero__media{background-image:radial-gradient(circle at 70% 20%,rgba(255,255,255,.76),rgba(255,255,255,0) 42%),var(--station-image)!important;background-size:cover,contain!important;background-repeat:no-repeat!important;background-position:center!important;background-color:#f8fafc!important;isolation:isolate;}
.station-profile-hero__media::before{content:""!important;position:absolute;inset:-22px!important;background-image:var(--station-image)!important;background-size:cover!important;background-position:center!important;filter:blur(20px) saturate(1.06);opacity:.22;transform:scale(1.08);z-index:0;}
.station-profile-hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.04),rgba(15,23,42,.70));z-index:1;pointer-events:none;}
.station-profile-hero__media>div{position:relative;z-index:2;}

/* ===== Station detail image full-cover hotfix (Iter62) ===== */
.station-profile-hero__media{
  background-image:var(--station-image)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#e2e8f0!important;
  min-height:390px;
  transform:translateZ(0);
}
.station-profile-hero__media::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(15,23,42,0) 38%,rgba(15,23,42,.22) 64%,rgba(15,23,42,.76) 100%)!important;
  filter:none!important;
  opacity:1!important;
  transform:none!important;
  z-index:1!important;
  pointer-events:none!important;
}
.station-profile-hero__media::after{display:none!important;content:none!important;}
.station-profile-hero__media>div{position:relative!important;z-index:2!important;background:linear-gradient(180deg,rgba(15,23,42,0),rgba(15,23,42,.14));width:100%;}
@media (max-width:900px){.station-profile-hero__media{min-height:310px;background-position:center center!important;}}
@media (max-width:640px){.station-profile-hero__media{min-height:245px;border-radius:22px;background-position:center center!important;}}


.route-lab-hero {
  isolation: isolate;
}
.route-lab-hero::after {
  right: clamp(18px, 4vw, 46px) !important;
  bottom: clamp(18px, 4vw, 46px) !important;
  width: clamp(180px, 20vw, 260px) !important;
  height: clamp(180px, 20vw, 260px) !important;
  transform: none !important;
  opacity: .58;
  z-index: 0;
}
.route-lab-intro {
  overflow: hidden;
}
@media (max-width: 700px) {
  .route-lab-hero::after {
    right: 16px !important;
    bottom: 18px !important;
    width: 160px !important;
    height: 160px !important;
  }
}


/* Iteration 70: expanded FAQ readability */
.trust-page-hero--faq-pro{padding:clamp(24px,3vw,36px);}
.trust-faq-list--expanded{display:grid;gap:12px;margin-top:22px;}
.trust-faq-item--expanded{border:1px solid rgba(15,23,42,.08);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 14px 36px rgba(15,23,42,.055);overflow:hidden;}
.trust-faq-item--expanded summary{padding:18px 20px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;}
.trust-faq-item--expanded summary::-webkit-details-marker{display:none;}
.trust-faq-item--expanded summary span{font-size:1.02rem;line-height:1.35;font-weight:520;color:#0f172a;letter-spacing:-.018em;}
.trust-faq-item--expanded summary i{color:#0ea5e9;transition:transform .16s ease;}
.trust-faq-item--expanded[open] summary i{transform:rotate(180deg);}
.trust-faq-answer{padding:0 20px 20px;color:#475569;line-height:1.76;font-size:.97rem;font-weight:340;}
.trust-faq-answer p{margin:0 0 12px;}
.trust-faq-answer p:last-child{margin-bottom:0;}
@media (max-width:640px){.trust-faq-item--expanded summary{padding:16px}.trust-faq-answer{padding:0 16px 16px}.trust-faq-item--expanded summary span{font-size:.96rem}}

/* ===== SEO final 404 page (Iter71) ===== */
.error-page-pro{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:28px;align-items:stretch;border:1px solid rgba(15,23,42,.08);border-radius:34px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,249,255,.92) 52%,rgba(236,253,245,.78));box-shadow:0 34px 90px rgba(15,23,42,.1);padding:34px;margin:32px 0 80px;}
.error-page-pro::before{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border-radius:999px;background:radial-gradient(circle,rgba(14,165,233,.18),rgba(14,165,233,0) 72%);pointer-events:none;}
.error-page-pro::after{content:"";position:absolute;left:20%;bottom:-130px;width:360px;height:360px;border-radius:999px;background:radial-gradient(circle,rgba(34,197,94,.14),rgba(34,197,94,0) 70%);pointer-events:none;}
.error-page-pro__content,.error-page-pro__panel{position:relative;z-index:1;}
.error-page-pro__eyebrow{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:rgba(224,242,254,.9);color:#0369a1;padding:8px 12px;font-size:.84rem;font-weight:520;}
.error-page-pro h1{font-size:clamp(4.8rem,11vw,9.5rem);line-height:.86;letter-spacing:-.08em;font-weight:500;color:#0f172a;margin:26px 0 14px;}
.error-page-pro h2{font-size:clamp(1.55rem,2.6vw,2.45rem);line-height:1.08;letter-spacing:-.05em;font-weight:470;color:#0f172a;margin:0 0 14px;max-width:780px;}
.error-page-pro p{color:#475569;font-size:1.02rem;line-height:1.75;margin:0;max-width:820px;}
.error-page-pro__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.error-page-pro__panel{border:1px solid rgba(15,23,42,.08);border-radius:28px;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 50px rgba(15,23,42,.07);padding:24px;display:flex;flex-direction:column;gap:18px;}
.error-page-pro__orb{width:72px;height:72px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,#0ea5e9,#22c55e);color:#fff;font-size:1.55rem;box-shadow:0 18px 36px rgba(14,165,233,.28);}
.error-page-pro__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;}
.error-page-pro__grid a{display:flex;align-items:center;gap:9px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;color:#0f172a;text-decoration:none;padding:13px 14px;font-size:.92rem;box-shadow:0 10px 28px rgba(15,23,42,.04);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;}
.error-page-pro__grid a:hover{transform:translateY(-2px);border-color:rgba(14,165,233,.28);box-shadow:0 16px 36px rgba(14,165,233,.12);}
.error-page-pro__grid i{color:#0284c7;}
@media (max-width:900px){.error-page-pro{grid-template-columns:1fr;border-radius:26px;padding:24px}.error-page-pro__grid{grid-template-columns:1fr}}

/* =====================================================================
   Iter81 — Braucieni ar auto mobile polish
   Fixes the route catalogue and single route guide on phones without
   changing the desktop premium layout.
   ===================================================================== */
@media (max-width: 820px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }

  .route-lab,
  .route-detail-pro,
  .route-lab *,
  .route-detail-pro * {
    min-width: 0;
  }

  .route-lab {
    display: grid;
    gap: 18px;
  }

  .route-lab-hero {
    display: grid;
    grid-template-columns: 1fr !important;
    gap: 16px;
    padding: 20px;
    border-radius: 28px;
    overflow: hidden;
  }

  .route-lab-hero::before {
    height: 62px;
    bottom: 18px;
    opacity: .55;
  }

  .route-lab-hero::after {
    width: 210px;
    height: 210px;
    opacity: .8;
  }

  .route-lab-hero h1 {
    margin: 10px 0 12px;
    font-size: clamp(2rem, 10.5vw, 3.4rem);
    line-height: 1;
    letter-spacing: -.062em;
  }

  .route-lab-hero__copy > p {
    font-size: .98rem;
    line-height: 1.62;
  }

  .route-lab-hero__steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin-top: 16px;
  }

  .route-lab-hero__steps span {
    min-height: auto;
    padding: 10px 9px;
    border-radius: 17px;
    font-size: .78rem;
    line-height: 1.25;
  }

  .route-lab-hero__steps strong {
    font-size: .68rem;
  }

  .route-lab-command {
    padding: 14px;
    border-radius: 24px;
    max-width: none;
    width: 100%;
  }

  .route-lab-command__title,
  .route-detail-control__title,
  .route-detail-itinerary__title,
  .route-detail-line-card__title {
    font-size: .88rem;
    line-height: 1.35;
  }

  .route-lab-search--pro {
    grid-template-columns: 1fr !important;
    gap: 10px;
  }

  .route-lab-search--pro label {
    width: 100%;
  }

  .route-lab-search__field {
    grid-template-columns: 20px minmax(0, 1fr) 34px;
    min-height: 48px;
    padding-left: 12px;
    border-radius: 16px;
  }

  .route-lab-search--pro .route-lab-search__submit {
    width: 100% !important;
    min-width: 0;
    height: 48px !important;
    min-height: 48px;
    border-radius: 16px !important;
  }

  .route-lab-search__hint {
    font-size: .84rem;
    line-height: 1.52;
  }

  .route-lab-tools {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .route-lab-tools a {
    min-height: 44px;
    padding: 9px 10px;
    border-radius: 15px;
    font-size: .84rem;
  }

  .route-lab-stats {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .route-lab-stats span {
    padding: 11px;
    border-radius: 17px;
  }

  .route-lab-stats strong {
    font-size: 1.18rem;
  }

  .route-lab-stats small {
    font-size: .75rem;
    line-height: 1.25;
  }

  .route-lab-intro,
  .route-lab-section-head,
  .route-lab-filterbar,
  .route-lab-loadmore {
    border-radius: 24px;
    padding: 16px;
  }

  .route-lab-intro {
    margin-top: 16px;
    gap: 12px;
  }

  .route-lab-intro h2,
  .route-lab-section-head h2,
  .route-detail-section__head h2,
  .route-detail-overview h2,
  .route-detail-next h2 {
    font-size: clamp(1.28rem, 7vw, 1.72rem);
    line-height: 1.14;
  }

  .route-lab-section-head {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 12px;
    margin-bottom: 14px;
  }

  .route-lab-counter {
    width: 100%;
    min-width: 0;
    text-align: left;
    padding: 12px 14px;
    border-radius: 18px;
  }

  .route-lab-counter strong {
    font-size: 1.32rem;
  }

  .route-lab-featured,
  .route-lab-catalog {
    margin-top: 22px;
  }

  .route-lab-featured__grid,
  .route-lab-grid,
  .route-lab-grid.is-compact {
    grid-template-columns: 1fr !important;
    gap: 14px;
  }

  .route-desk-card,
  .route-lab-featured__grid .route-desk-card,
  .route-lab-grid .route-desk-card--catalog,
  .route-lab-grid .route-desk-card--catalog-wide,
  .route-lab-grid .route-desk-card--catalog-large,
  .route-lab-grid.is-compact .route-desk-card--catalog,
  .route-lab-grid.is-compact .route-desk-card--catalog-wide,
  .route-lab-grid.is-compact .route-desk-card--catalog-large {
    grid-column: 1 / -1 !important;
    grid-template-columns: 1fr !important;
    border-radius: 24px;
    min-height: 0;
    overflow: hidden;
  }

  .route-lab-featured__grid .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog-wide .route-desk-card__media,
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card--catalog .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card--catalog-wide .route-desk-card__media,
  .route-lab-grid.is-compact .route-desk-card--catalog-large .route-desk-card__media,
  .route-desk-card__media {
    height: clamp(188px, 55vw, 245px) !important;
    min-height: 0 !important;
  }

  .route-desk-card__media img {
    height: 100%;
  }

  .route-desk-card__body,
  .route-lab-grid .route-desk-card--catalog .route-desk-card__body,
  .route-lab-featured__grid .route-desk-card__body {
    padding: 16px;
    gap: 10px;
  }

  .route-desk-card h3 {
    font-size: 1.08rem;
    line-height: 1.26;
    letter-spacing: -.025em;
    overflow-wrap: anywhere;
  }

  .route-desk-card p {
    font-size: .9rem;
    line-height: 1.55;
    -webkit-line-clamp: 3;
  }

  .route-desk-card--spotlight p,
  .route-desk-card--feature-xl p,
  .route-desk-card--feature-tall p {
    -webkit-line-clamp: 3;
  }

  .route-desk-card__route {
    grid-template-columns: minmax(0, 1fr) 24px minmax(0, 1fr) !important;
    gap: 8px;
    padding: 10px;
    border-radius: 16px;
  }

  .route-desk-card__route span {
    font-size: .83rem;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .route-desk-card__route small {
    font-size: .65rem;
  }

  .route-desk-card__route i {
    justify-self: center;
    transform: none !important;
  }

  .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog-wide .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__metrics,
  .route-lab-featured__grid .route-desk-card__metrics,
  .route-lab-grid.is-compact .route-desk-card__metrics {
    grid-template-columns: 1fr 1fr !important;
    gap: 7px;
  }

  .route-desk-card__metrics span {
    padding: 9px;
    border-radius: 14px;
  }

  .route-desk-card__metrics strong {
    font-size: .86rem;
    line-height: 1.2;
    white-space: normal;
  }

  .route-desk-card__metrics small {
    font-size: .67rem;
  }

  .route-desk-card__chips {
    gap: 6px;
  }

  .route-desk-card__chips span,
  .route-desk-card__places em {
    font-size: .74rem;
    line-height: 1.1;
    padding: 6px 8px;
  }

  .route-desk-card__places {
    display: none !important;
  }

  .route-desk-card__footer {
    margin-top: 2px;
  }

  .route-desk-card__open {
    width: 100%;
    justify-content: center;
    min-height: 42px;
    border-radius: 14px;
  }

  .route-lab-filterbar {
    grid-template-columns: 1fr !important;
    align-items: stretch;
    gap: 10px;
  }

  .route-lab-filterbar__group,
  .route-lab-view {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .route-lab-filterbar button,
  .route-lab-clear,
  .route-lab-view button {
    width: 100%;
    justify-content: center;
    min-height: 40px;
    padding: 9px 8px;
    border-radius: 13px;
    font-size: .78rem;
    line-height: 1.15;
    white-space: normal;
  }

  .route-lab-sort {
    width: 100%;
  }

  .route-lab-sort select {
    min-height: 44px;
    border-radius: 14px;
  }

  .route-lab-clear {
    grid-column: auto;
  }

  .route-lab-loadmore__btn {
    width: 100%;
    max-width: 290px;
  }

  .route-lab-suggestions {
    position: static !important;
    margin-top: 10px;
    border-radius: 18px;
    max-width: 100%;
  }

  .route-lab-suggestions__list {
    max-height: 340px;
  }

  .route-lab-suggest {
    grid-template-columns: 54px minmax(0, 1fr);
    padding: 8px;
    border-radius: 14px;
  }

  .route-lab-suggest__body strong,
  .route-lab-suggest__body small,
  .route-lab-suggest__body span {
    white-space: normal;
  }

  .route-lab-suggestions__all,
  .route-lab-search--pro .route-lab-suggestions__all {
    width: calc(100% - 16px) !important;
  }

  .dk-ad-slot--trips-after-hero,
  .dk-ad-slot--trips-after-grid,
  .dk-ad-slot--trip-detail {
    margin: 18px auto;
    padding: 9px;
    border-radius: 20px;
  }
}

@media (max-width: 560px) {
  .route-lab-hero {
    padding: 18px;
    border-radius: 24px;
  }

  .route-lab-hero__steps {
    grid-template-columns: 1fr;
  }

  .route-lab-tools,
  .route-lab-stats,
  .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog-wide .route-desk-card__metrics,
  .route-lab-grid .route-desk-card--catalog-large .route-desk-card__metrics,
  .route-lab-featured__grid .route-desk-card__metrics,
  .route-lab-grid.is-compact .route-desk-card__metrics {
    grid-template-columns: 1fr !important;
  }

  .route-lab-filterbar__group,
  .route-lab-view {
    grid-template-columns: 1fr;
  }

  .route-desk-card__route {
    grid-template-columns: 1fr !important;
  }

  .route-desk-card__route i {
    width: 28px;
    height: 2px;
    margin: 1px 0;
    border-radius: 999px;
    background: linear-gradient(90deg, #0ea5e9, #10b981);
    color: transparent;
    justify-self: start;
  }
}

@media (max-width: 820px) {
  .route-detail-pro {
    display: grid;
    gap: 18px;
  }

  .route-detail-hero-pro {
    display: grid;
    grid-template-columns: 1fr !important;
    min-height: 0;
    border-radius: 28px;
    overflow: hidden;
  }

  .route-detail-hero-pro__media {
    height: clamp(210px, 58vw, 300px) !important;
    min-height: 0 !important;
  }

  .route-detail-hero-pro__media::after {
    background: linear-gradient(180deg, rgba(15,23,42,.02), rgba(15,23,42,.18));
  }

  .route-detail-hero-pro__content {
    padding: 18px;
  }

  .route-detail-back {
    width: 100%;
    justify-content: center;
    margin-bottom: 12px;
    border-radius: 14px;
  }

  .route-detail-hero-pro h1 {
    font-size: clamp(1.72rem, 8.8vw, 2.65rem);
    line-height: 1.04;
    letter-spacing: -.052em;
    margin: 10px 0 12px;
    overflow-wrap: anywhere;
  }

  .route-detail-hero-pro__content > p {
    font-size: .95rem;
    line-height: 1.58;
  }

  .route-detail-metrics {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 16px;
  }

  .route-detail-metrics span {
    padding: 10px;
    border-radius: 15px;
  }

  .route-detail-metrics small {
    font-size: .7rem;
    line-height: 1.2;
  }

  .route-detail-metrics strong {
    font-size: .9rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }

  .route-detail-line-card {
    margin: 0 14px 14px;
    padding: 14px;
    border-radius: 20px;
  }

  .route-detail-line-card__route {
    grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr) !important;
    align-items: center;
    gap: 8px;
  }

  .route-detail-line-card__route span {
    overflow-wrap: anywhere;
  }

  .route-detail-line-card__route i {
    width: 44px;
    height: 2px;
    margin: 0;
    background: linear-gradient(90deg, #0ea5e9, #10b981);
  }

  .route-detail-layout-pro {
    grid-template-columns: 1fr !important;
    gap: 16px;
    margin-top: 0;
  }

  .route-detail-control {
    position: static;
    order: 1;
    gap: 12px;
  }

  .route-detail-main-pro {
    order: 2;
    gap: 16px;
  }

  .route-detail-control__card,
  .route-detail-section,
  .route-detail-overview,
  .route-detail-next {
    border-radius: 24px;
    padding: 16px;
  }

  .route-detail-nav {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .route-detail-nav a {
    min-height: 40px;
    padding: 9px 10px;
    border-radius: 13px;
    font-size: .82rem;
    line-height: 1.25;
  }

  .route-detail-overview {
    grid-template-columns: 1fr !important;
    gap: 15px;
  }

  .route-detail-section__head {
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
  }

  .route-detail-section__head i {
    width: 34px;
    height: 34px;
    border-radius: 13px;
  }

  .route-detail-section__head h2 {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .route-detail-section__head span {
    min-width: 30px;
    height: 30px;
    margin-left: auto;
  }

  .route-detail-lead,
  .route-detail-pro .journey-prose,
  .route-detail-pro .journey-prose :where(p, li) {
    font-size: .95rem;
    line-height: 1.66;
  }

  .route-detail-pro .journey-prose :where(h2, h3, h4) {
    font-size: clamp(1.08rem, 5.8vw, 1.42rem);
    line-height: 1.22;
    overflow-wrap: anywhere;
  }

  .route-detail-pro .journey-prose :where(img, iframe, video) {
    max-width: 100%;
    height: auto;
  }

  .route-detail-pro .journey-prose :where(table) {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }

  .route-detail-itinerary {
    padding: 13px;
    border-radius: 20px;
  }

  .route-detail-itinerary li {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 9px;
  }

  .route-detail-itinerary li > span {
    width: 34px;
    height: 34px;
    border-radius: 12px;
    font-size: .84rem;
  }

  .route-place-stack {
    gap: 12px;
  }

  .route-place-card {
    grid-template-columns: 1fr !important;
    border-radius: 21px;
  }

  .route-place-card__photo {
    height: clamp(185px, 55vw, 240px) !important;
    min-height: 0;
  }

  .route-place-card__body {
    padding: 15px;
    gap: 9px;
  }

  .route-place-card h3 {
    font-size: 1.02rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }

  .route-place-card p {
    font-size: .9rem;
    line-height: 1.56;
  }

  .route-place-card__type,
  .route-place-card__meta {
    gap: 6px;
  }

  .route-place-card__meta span,
  .route-place-card__meta a,
  .route-place-card__type em {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    font-size: .78rem;
    line-height: 1.22;
  }

  .journey-cost-mini {
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  .journey-cost-mini th,
  .journey-cost-mini td {
    padding: 10px 9px;
    font-size: .82rem;
  }

  .route-detail-actions .btn,
  .route-detail-pro .btn {
    min-height: 42px;
    border-radius: 14px;
  }

  .route-detail-next {
    margin-top: 0;
  }

  .route-detail-next .route-lab-section-head {
    padding: 0;
    border: 0;
    box-shadow: none;
    background: transparent;
    margin-bottom: 14px;
  }

  .route-detail-next__grid {
    grid-template-columns: 1fr !important;
    gap: 10px;
  }

  .route-detail-next-card {
    grid-template-columns: 78px minmax(0, 1fr);
    border-radius: 17px;
  }

  .route-detail-next-card img {
    width: 78px;
    height: 64px;
    border-radius: 13px;
  }

  .route-detail-next-card span {
    min-width: 0;
    font-size: .88rem;
  }
}

@media (max-width: 420px) {
  .route-detail-metrics,
  .route-detail-line-card__route,
  .route-detail-nav {
    grid-template-columns: 1fr !important;
  }

  .route-detail-line-card__route i {
    width: 2px;
    height: 34px;
    background: linear-gradient(180deg, #0ea5e9, #10b981);
  }

  .route-detail-next-card {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .route-detail-next-card img {
    width: 64px;
    height: 58px;
  }
}
