/**
 * EV Kenya — Main Stylesheet
 *
 * Modern glassmorphism design with dark mode, responsive layout,
 * Google Material-style cards, and fluid typography.
 *
 * @package EV_Kenya
 * @author  Techish Kenya
 * @since   1.0.0
 */

/* ==========================================================================
   CSS Custom Properties (Design Tokens)
   ========================================================================== */

:root {
	/* Colors — Light Mode */
	--evk-bg: #FFFFFF;
	--evk-bg-secondary: #F5F5F7;
	--evk-bg-tertiary: #E8E8ED;
	--evk-text: #1D1D1F;
	--evk-text-secondary: #6E6E73;
	--evk-text-tertiary: #AEAEB2;
	--evk-accent: #00C853;
	--evk-accent-secondary: #2979FF;
	--evk-accent-hover: #00E676;
	--evk-link-color: #00C853;
	--evk-btn-color: #00C853;
	--evk-btn-hover: #00E676;
	--evk-header-bg: #FFFFFF;
	--evk-footer-bg: #1C1C1E;
	--evk-border: rgba(0, 0, 0, 0.08);
	--evk-border-strong: rgba(0, 0, 0, 0.15);
	--evk-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
	--evk-shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.12);
	--evk-glass-bg: rgba(255, 255, 255, 0.72);
	--evk-glass-blur: 20px;
	--evk-accent-ring: rgba(0, 200, 83, 0.15);

	/* Typography */
	--evk-heading-font: 'Space Grotesk', sans-serif;
	--evk-body-font: 'Inter', sans-serif;
	--evk-base-font-size: 16px;

	/* Spacing */
	--evk-space-xs: 4px;
	--evk-space-sm: 8px;
	--evk-space-md: 16px;
	--evk-space-lg: 24px;
	--evk-space-xl: 32px;
	--evk-space-2xl: 48px;
	--evk-space-3xl: 64px;

	/* Layout */
	--evk-radius: 16px;
	--evk-radius-sm: 8px;
	--evk-radius-lg: 24px;
	--evk-content-width: 1200px;

	/* Transitions */
	--evk-transition: 0.2s ease;
	--evk-transition-slow: 0.4s ease;

	/* Badge colors */
	--evk-badge-electric: #00C853;
	--evk-badge-hybrid: #2979FF;
	--evk-badge-ice: #8E8E93;
}

/* Dark Mode — clean slate palette, easy on the eyes */
[data-theme="dark"] {
	--evk-bg: #181b20;
	--evk-bg-secondary: #1f2328;
	--evk-bg-tertiary: #272b31;
	--evk-text: #e6edf3;
	--evk-text-secondary: #8b949e;
	--evk-text-tertiary: #656d76;
	--evk-accent: #2ea043;
	--evk-accent-hover: #3fb950;
	--evk-link-color: #3fb950;
	--evk-btn-color: #2ea043;
	--evk-btn-hover: #3fb950;
	--evk-header-bg: #161b22;
	--evk-border: rgba(255, 255, 255, 0.08);
	--evk-border-strong: rgba(255, 255, 255, 0.16);
	--evk-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
	--evk-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.4);
	--evk-glass-bg: rgba(22, 27, 34, 0.85);
	--evk-accent-ring: rgba(46, 160, 67, 0.15);
}

/* ==========================================================================
   Reset & Base
   ========================================================================== */

*, *::before, *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	font-size: var(--evk-base-font-size);
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body {
	font-family: var(--evk-body-font);
	color: var(--evk-text);
	background-color: var(--evk-bg-secondary);
	line-height: var(--evk-body-line-height, 1.6);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
}

body.evk-menu-open {
	overflow: hidden;
}

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

a {
	color: var(--evk-link-color);
	text-decoration: none;
	transition: color var(--evk-transition);
}

a:hover {
	color: var(--evk-accent-hover);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--evk-heading-font);
	font-weight: 600;
	line-height: 1.2;
	color: var(--evk-text);
}

h1 { font-size: clamp(1.75rem, 4vw, 2.5rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2rem); }
h3 { font-size: clamp(1.25rem, 2.5vw, 1.5rem); }
h4 { font-size: clamp(1.1rem, 2vw, 1.25rem); }

p { margin-bottom: 1em; }

ul, ol { padding-left: 1.5em; }

/* ==========================================================================
   Utility Classes
   ========================================================================== */

.evk-container {
	width: 100%;
	max-width: var(--evk-content-width);
	margin: 0 auto;
	padding: 0 var(--evk-space-md);
}

.evk-section {
	padding: var(--evk-space-2xl) 0;
}

.evk-section__title {
	margin-bottom: var(--evk-space-lg);
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: var(--evk-space-md);
}

.evk-section__link {
	font-size: 0.9rem;
	font-weight: 500;
	display: inline-flex;
	align-items: center;
	gap: var(--evk-space-xs);
}

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* ---------- Carousel ---------- */
.evk-carousel {
	position: relative;
	overflow: hidden;
}

.evk-carousel__track {
	display: flex;
	gap: var(--evk-space-lg, 24px);
	overflow-x: auto;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding-bottom: 4px;
}

.evk-carousel__track::-webkit-scrollbar {
	display: none;
}

.evk-carousel__slide {
	flex: 0 0 calc((100% - var(--evk-space-lg, 24px) * 2) / 3);
	scroll-snap-align: start;
	min-width: 280px;
}

@media (max-width: 900px) {
	.evk-carousel__slide {
		flex: 0 0 calc((100% - var(--evk-space-lg, 24px)) / 2);
	}
}

@media (max-width: 600px) {
	.evk-carousel__slide {
		flex: 0 0 85%;
	}
}

.evk-carousel-nav {
	display: flex;
	gap: var(--evk-space-sm, 8px);
}

.evk-carousel-nav__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1.5px solid var(--evk-border-strong, rgba(0,0,0,0.15));
	background: var(--evk-bg, #fff);
	color: var(--evk-text);
	cursor: pointer;
	transition: background var(--evk-transition), border-color var(--evk-transition), color var(--evk-transition);
}

.evk-carousel-nav__btn:hover {
	background: var(--evk-accent);
	border-color: var(--evk-accent);
	color: #fff;
}

.evk-carousel-nav__btn:disabled {
	opacity: 0.3;
	cursor: default;
}

.evk-carousel-nav__btn:disabled:hover {
	background: var(--evk-bg, #fff);
	border-color: var(--evk-border-strong);
	color: var(--evk-text);
}

@media (max-width: 600px) {
	.evk-carousel-nav__btn {
		width: 44px;
		height: 44px;
	}
}

/* ---------- Page Nav (prev/next arrows) ---------- */
.evk-page-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--evk-space-md, 16px);
	margin-top: var(--evk-space-lg, 24px);
}

.evk-page-nav__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1.5px solid var(--evk-border-strong, rgba(0,0,0,0.15));
	background: var(--evk-bg, #fff);
	color: var(--evk-text);
	cursor: pointer;
	transition: background var(--evk-transition), border-color var(--evk-transition), color var(--evk-transition), transform var(--evk-transition);
}

.evk-page-nav__btn:hover:not(:disabled) {
	background: var(--evk-accent);
	border-color: var(--evk-accent);
	color: #fff;
	transform: translateY(-1px);
}

.evk-page-nav__btn:disabled {
	opacity: 0.3;
	cursor: default;
}

.evk-page-nav__indicator {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--evk-text-secondary);
	min-width: 48px;
	text-align: center;
}

/* ==========================================================================
   Glassmorphism Components
   ========================================================================== */

.evk-glass-card {
	background: var(--evk-glass-bg);
	backdrop-filter: blur(var(--evk-glass-blur));
	-webkit-backdrop-filter: blur(var(--evk-glass-blur));
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius);
	box-shadow: var(--evk-shadow);
	color: var(--evk-text);
	transition: transform var(--evk-transition), box-shadow var(--evk-transition);
	overflow: hidden;
}

.evk-glass-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--evk-shadow-lg);
}

.evk-glass-card--static:hover {
	transform: none;
	box-shadow: var(--evk-shadow);
}

/* ==========================================================================
   Header
   ========================================================================== */

.evk-header {
	background: var(--evk-bg);
	backdrop-filter: blur(28px);
	-webkit-backdrop-filter: blur(28px);
	border-bottom: 1px solid var(--evk-border);
	z-index: 1000;
	transition: background var(--evk-transition);
}

.evk-nav--sticky {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: var(--evk-bg);
	backdrop-filter: blur(28px);
	-webkit-backdrop-filter: blur(28px);
	border-bottom: 1px solid var(--evk-border);
}

.admin-bar .evk-nav--sticky {
	top: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar .evk-nav--sticky {
		top: 46px;
	}
}

.evk-header__top-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--evk-space-sm) 0;
	font-size: 0.8rem;
	color: var(--evk-text-secondary);
	border-bottom: 1px solid var(--evk-border);
}

.evk-header__main {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: var(--evk-space-md) 0;
	gap: var(--evk-space-md);
}

.evk-header--left .evk-header__main {
	flex-direction: row;
	justify-content: space-between;
}

.evk-logo {
	display: flex;
	align-items: center;
	gap: var(--evk-space-sm);
}

.evk-logo img {
	max-width: var(--evk-logo-max-width, 200px);
	height: auto;
}

.evk-logo__text {
	font-family: var(--evk-title-font, var(--evk-heading-font));
	font-size: var(--evk-title-size, 1.5rem);
	font-weight: var(--evk-title-weight, 700);
	color: var(--evk-text);
	text-decoration: none;
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.evk-logo__text span {
	color: var(--evk-accent);
}

.evk-logo__tagline {
	font-family: var(--evk-body-font);
	font-size: 0.8rem;
	color: var(--evk-text-secondary);
	font-weight: 400;
}

/* Search Bar */
.evk-search-form {
	position: relative;
	width: 100%;
	max-width: 480px;
}

.evk-search-form__input {
	width: 100%;
	padding: 10px 44px 10px 16px;
	border: 1px solid var(--evk-border);
	border-radius: 50px;
	background: var(--evk-bg-secondary);
	color: var(--evk-text);
	font-family: var(--evk-body-font);
	font-size: 0.9rem;
	outline: none;
	transition: border-color var(--evk-transition), box-shadow var(--evk-transition);
}

.evk-search-form__input:focus {
	border-color: var(--evk-accent);
	box-shadow: 0 0 0 3px rgba(0, 200, 83, 0.15);
}

.evk-search-form__btn {
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	color: var(--evk-text-secondary);
	cursor: pointer;
	padding: 8px;
	display: flex;
}

/* Header Actions */
.evk-header__actions {
	display: flex;
	align-items: center;
	gap: var(--evk-space-md);
}

/* Dark Mode Toggle */
.evk-dark-toggle {
	background: var(--evk-bg-secondary);
	border: 1px solid var(--evk-border-strong, var(--evk-border));
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--evk-text);
	transition: background var(--evk-transition), border-color var(--evk-transition), color var(--evk-transition);
}

.evk-dark-toggle:hover {
	background: var(--evk-bg-secondary);
	border-color: var(--evk-accent);
}

.evk-dark-toggle .evk-icon--sun { display: none; }
.evk-dark-toggle .evk-icon--moon { display: block; }
[data-theme="dark"] .evk-dark-toggle .evk-icon--sun { display: block; }
[data-theme="dark"] .evk-dark-toggle .evk-icon--moon { display: none; }

/* Hamburger */
.evk-hamburger {
	display: none;
	flex-direction: column;
	background: none;
	border: none;
	cursor: pointer;
	padding: var(--evk-space-sm);
	color: var(--evk-text);
	gap: 0;
}

.evk-hamburger__line {
	display: block;
	width: 24px;
	height: 2px;
	background: var(--evk-text);
	margin: 3px 0;
	transition: transform var(--evk-transition), opacity var(--evk-transition);
	border-radius: 2px;
}

.evk-hamburger.is-active .evk-hamburger__line:nth-child(1) {
	transform: rotate(45deg) translate(4px, 4px);
}

.evk-hamburger.is-active .evk-hamburger__line:nth-child(2) {
	opacity: 0;
}

.evk-hamburger.is-active .evk-hamburger__line:nth-child(3) {
	transform: rotate(-45deg) translate(4px, -4px);
}

/* Navigation */
.evk-nav {
	background: var(--evk-bg);
	border-top: 1px solid var(--evk-border);
	border-bottom: 1px solid var(--evk-border);
}

.evk-nav__list {
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
	justify-content: center;
	align-items: center;
	gap: var(--evk-menu-spacing, 4px);
	font-family: var(--evk-menu-font, var(--evk-body-font));
	font-size: var(--evk-menu-font-size, 0.9rem);
	font-weight: var(--evk-menu-font-weight, 500);
}

.evk-nav__item {
	position: relative;
}

.evk-nav__item a {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 16px;
	color: var(--evk-menu-text-color, var(--evk-text));
	font-weight: inherit;
	font-size: inherit;
	position: relative;
	border-radius: var(--evk-radius-sm);
	transition: color var(--evk-transition), background-color var(--evk-transition);
	text-decoration: none;
	letter-spacing: 0.01em;
}

.evk-nav__item a:hover {
	color: var(--evk-menu-hover-color, var(--evk-accent));
	background-color: var(--evk-accent-ring);
}

.evk-nav__item--home a {
	color: var(--evk-menu-text-color, var(--evk-text));
}

.evk-nav__item.current-menu-item > a {
	color: var(--evk-accent);
	font-weight: 600;
}

/* Dropdown sub-menus */
.evk-nav__item .sub-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 220px;
	background: var(--evk-bg);
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-sm);
	box-shadow: var(--evk-shadow-lg);
	padding: var(--evk-space-xs) 0;
	z-index: 100;
	list-style: none;
}

.evk-nav__item:hover > .sub-menu {
	display: block;
}

.evk-nav__item .sub-menu a {
	padding: 10px 18px;
	font-size: 0.9em;
	border-radius: 0;
}

.evk-nav__item .sub-menu a::after {
	display: none;
}

.evk-nav__item .sub-menu a:hover {
	background: var(--evk-bg-secondary);
	color: var(--evk-accent);
}

/* Home icon link in nav */
.evk-nav__home-link {
	display: inline-flex;
	align-items: center;
}

/* Inline header layout */
.evk-header--inline .evk-header__main {
	flex-direction: row;
	justify-content: space-between;
}

.evk-header--inline .evk-nav {
	border-top: none;
}

.evk-header--inline .evk-nav__list {
	justify-content: flex-end;
}

/* Stacked header layout */
.evk-header--stacked .evk-logo {
	justify-content: center;
}

.evk-header--stacked .evk-header__main {
	align-items: center;
}

.evk-nav__item a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 3px;
	background: var(--evk-accent);
	border-radius: 2px;
	transition: width var(--evk-transition);
}

.evk-nav__item a:hover::after {
	width: 60%;
}

.evk-nav__item.current-menu-item > a::after {
	width: 80%;
}

/* ==========================================================================
   Fullscreen Mobile Menu
   ========================================================================== */

/* Slide-in Mobile Panel */
.evk-mobile-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 10000;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.evk-mobile-overlay.is-visible {
	opacity: 1;
	pointer-events: auto;
}

.evk-mobile-panel {
	position: fixed;
	top: 0;
	right: -320px;
	width: 320px;
	height: 100vh;
	background: var(--evk-bg);
	z-index: 10001;
	transition: right 0.3s ease;
	overflow-y: auto;
	box-shadow: -4px 0 24px rgba(0, 0, 0, 0.15);
}

.evk-mobile-panel.is-open {
	right: 0;
}

.evk-mobile-panel__header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--evk-space-md);
	border-bottom: 1px solid var(--evk-border);
}

.evk-mobile-panel__close {
	background: none;
	border: none;
	cursor: pointer;
	color: var(--evk-text);
	padding: var(--evk-space-xs);
}

.evk-mobile-panel__search {
	padding: var(--evk-space-md);
}

.evk-mobile-nav {
	list-style: none;
	padding: 0;
	margin: 0;
}

.evk-mobile-nav li a {
	display: block;
	padding: 14px var(--evk-space-md);
	color: var(--evk-text);
	text-decoration: none;
	border-bottom: 1px solid var(--evk-border);
	font-size: 1rem;
	transition: background var(--evk-transition), color var(--evk-transition);
}

.evk-mobile-nav li a:hover {
	background: var(--evk-bg-secondary);
	color: var(--evk-accent);
}

.evk-mobile-nav .sub-menu {
	list-style: none;
	padding-left: var(--evk-space-md);
	display: none;
}

.evk-mobile-nav .sub-menu.is-open {
	display: block;
}

.evk-mobile-nav .sub-menu a {
	font-size: 0.9rem;
	padding-left: var(--evk-space-xl);
}

.evk-mobile-panel__footer {
	padding: var(--evk-space-md);
	border-top: 1px solid var(--evk-border);
	display: flex;
	flex-direction: column;
	gap: var(--evk-space-md);
	margin-top: auto;
}

.evk-dark-toggle--mobile {
	width: 100%;
	border-radius: var(--evk-radius);
	gap: var(--evk-space-sm);
	justify-content: center;
	font-size: 0.9rem;
}

.evk-mobile-panel__social {
	display: flex;
	gap: var(--evk-space-sm);
	flex-wrap: wrap;
}

.evk-mobile-panel__social a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var(--evk-bg-secondary);
	color: var(--evk-text);
	transition: all var(--evk-transition);
}

.evk-mobile-panel__social a:hover {
	background: var(--evk-accent);
	color: #fff;
}

/* Legacy mobile menu — kept for backward compat */
.evk-mobile-menu {
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: var(--evk-glass-bg);
	backdrop-filter: blur(32px);
	-webkit-backdrop-filter: blur(32px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity var(--evk-transition-slow), visibility var(--evk-transition-slow);
}

.evk-mobile-menu.is-open {
	opacity: 1;
	visibility: visible;
}

.evk-mobile-menu__close {
	position: absolute;
	top: var(--evk-space-lg);
	right: var(--evk-space-lg);
	background: none;
	border: none;
	color: var(--evk-text);
	cursor: pointer;
	padding: var(--evk-space-sm);
}

.evk-mobile-menu__search {
	width: 80%;
	max-width: 400px;
	margin-bottom: var(--evk-space-xl);
}

.evk-mobile-menu__nav {
	list-style: none;
	padding: 0;
	text-align: center;
}

.evk-mobile-menu__nav li {
	margin-bottom: var(--evk-space-md);
}

.evk-mobile-menu__nav a {
	font-family: var(--evk-heading-font);
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--evk-text);
	padding: var(--evk-space-sm) var(--evk-space-lg);
	display: inline-block;
	border-radius: var(--evk-radius-sm);
	transition: background var(--evk-transition), color var(--evk-transition);
}

.evk-mobile-menu__nav a:hover {
	background: var(--evk-bg-secondary);
	color: var(--evk-accent);
}

.evk-mobile-menu__social {
	display: flex;
	gap: var(--evk-space-lg);
	margin-top: var(--evk-space-xl);
}

.evk-mobile-menu__social a {
	color: var(--evk-text-secondary);
	transition: color var(--evk-transition);
}

.evk-mobile-menu__social a:hover {
	color: var(--evk-accent);
}

.evk-mobile-menu__dark-toggle {
	margin-top: var(--evk-space-lg);
}

/* ==========================================================================
   Main Layout
   ========================================================================== */

.evk-site-content {
	display: flex;
	gap: var(--evk-space-xl);
	max-width: var(--evk-content-width);
	margin: 0 auto;
	padding: var(--evk-space-lg) var(--evk-space-md);
}

.evk-main {
	flex: 1;
	min-width: 0;
}

.evk-sidebar {
	width: 300px;
	flex-shrink: 0;
}

.evk-sidebar--left {
	order: -1;
}

.evk-site-content--no-sidebar {
	display: block;
}

/* ==========================================================================
   Cards (Google Material Style)
   ========================================================================== */

/* Post Card */
.evk-post-card {
	display: flex;
	flex-direction: column;
}

.evk-post-card__image {
	position: relative;
	aspect-ratio: 16/9;
	overflow: hidden;
	border-radius: var(--evk-radius) var(--evk-radius) 0 0;
}

.evk-post-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--evk-transition-slow);
}

.evk-post-card:hover .evk-post-card__image img {
	transform: scale(1.05);
}

.evk-post-card__body {
	padding: var(--evk-space-lg);
	flex: 1;
	display: flex;
	flex-direction: column;
}

.evk-post-card__body > .evk-category-badge {
	align-self: flex-start;
}

.evk-post-card__meta {
	font-size: 0.8rem;
	color: var(--evk-text-secondary);
	margin-bottom: var(--evk-space-sm);
	display: flex;
	align-items: center;
	gap: var(--evk-space-sm);
}

.evk-post-card__title {
	font-size: 1.1rem;
	margin-bottom: var(--evk-space-sm);
}

.evk-post-card__title a {
	color: var(--evk-text);
}

.evk-post-card__title a:hover {
	color: var(--evk-accent);
}

.evk-post-card__excerpt {
	font-size: 0.9rem;
	color: var(--evk-text-secondary);
	line-height: 1.5;
	flex: 1;
}

/* Vehicle Card */
.evk-vehicle-card {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.evk-vehicle-card__badge {
	position: static;
	display: inline-block;
	padding: 4px 12px;
	border-radius: 50px;
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	z-index: 2;
	color: #fff;
}

/* Only overlay badge on vehicle card when an image is present */
.evk-vehicle-card .evk-vehicle-card__badge {
	position: absolute;
	top: var(--evk-space-md);
	left: var(--evk-space-md);
}

.evk-vehicle-card__badge--electric { background: var(--evk-badge-electric); }
.evk-vehicle-card__badge--hybrid { background: var(--evk-badge-hybrid); }
.evk-vehicle-card__badge--ice { background: var(--evk-badge-ice); }

.evk-vehicle-card__compare {
	position: absolute;
	top: var(--evk-space-md);
	right: var(--evk-space-md);
	z-index: 2;
}

.evk-vehicle-card__compare input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	width: 24px;
	height: 24px;
	border: 2px solid rgba(255,255,255,0.8);
	border-radius: 6px;
	background: rgba(0,0,0,0.3);
	cursor: pointer;
	transition: all var(--evk-transition);
}

.evk-vehicle-card__compare input[type="checkbox"]:checked {
	background: var(--evk-accent);
	border-color: var(--evk-accent);
}

.evk-vehicle-card__compare input[type="checkbox"]:checked::after {
	content: '✓';
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
}

.evk-vehicle-card__image {
	display: block;
	aspect-ratio: 3/2;
	overflow: hidden;
	flex-shrink: 0;
}

/* When image container has no image, collapse but leave room for the badge */
.evk-vehicle-card__image:not(:has(img)) {
	aspect-ratio: auto;
	min-height: 48px;
}

.evk-vehicle-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--evk-transition-slow);
}

.evk-vehicle-card:hover .evk-vehicle-card__image img {
	transform: scale(1.05);
}

.evk-vehicle-card__body {
	padding: var(--evk-space-lg);
	flex: 1;
}

.evk-vehicle-card__title {
	font-size: 1.1rem;
	margin-bottom: var(--evk-space-sm);
}

.evk-vehicle-card__title a {
	color: var(--evk-text);
}

.evk-vehicle-card__specs {
	display: flex;
	gap: var(--evk-space-md);
	flex-wrap: wrap;
	margin-top: var(--evk-space-sm);
}

.evk-vehicle-card__spec {
	font-size: 0.8rem;
	color: var(--evk-text-secondary);
	display: flex;
	align-items: center;
	gap: 4px;
}

.evk-vehicle-card__spec strong {
	color: var(--evk-text);
}

/* Event Card */
.evk-event-card {
	display: flex;
	flex-direction: column;
}

.evk-event-card__image {
	position: relative;
	aspect-ratio: 16/10;
	overflow: hidden;
}

.evk-event-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.evk-event-card__date-badge {
	position: absolute;
	top: var(--evk-space-md);
	left: var(--evk-space-md);
	background: var(--evk-accent);
	color: #fff;
	padding: var(--evk-space-sm) var(--evk-space-md);
	border-radius: var(--evk-radius-sm);
	text-align: center;
	font-weight: 600;
	line-height: 1.2;
}

.evk-event-card__date-badge .day {
	display: block;
	font-size: 1.5rem;
}

.evk-event-card__date-badge .month {
	display: block;
	font-size: 0.7rem;
	text-transform: uppercase;
}

.evk-event-card__body {
	padding: var(--evk-space-lg);
	flex: 1;
}

.evk-event-card__title {
	font-size: 1.1rem;
	margin-bottom: var(--evk-space-sm);
}

.evk-event-card__title a {
	color: var(--evk-text);
}

.evk-event-card__info {
	font-size: 0.85rem;
	color: var(--evk-text-secondary);
	display: flex;
	flex-direction: column;
	gap: var(--evk-space-xs);
}

.evk-event-card__info-item {
	display: flex;
	align-items: center;
	gap: var(--evk-space-sm);
}

.evk-event-card__price {
	margin-top: var(--evk-space-md);
	font-weight: 600;
	color: var(--evk-accent);
}

/* ==========================================================================
   Grid Layouts
   ========================================================================== */

.evk-grid {
	display: grid;
	gap: var(--evk-space-lg);
}

.evk-grid--2 { grid-template-columns: repeat(2, 1fr); }
.evk-grid--3 { grid-template-columns: repeat(3, 1fr); }
.evk-grid--4 { grid-template-columns: repeat(4, 1fr); }

.evk-masonry {
	column-count: 3;
	column-gap: var(--evk-space-lg);
}

.evk-masonry > * {
	break-inside: avoid;
	margin-bottom: var(--evk-space-lg);
}

/* ==========================================================================
   Filters Bar
   ========================================================================== */

.evk-filters {
	display: flex;
	flex-wrap: wrap;
	gap: var(--evk-space-sm);
	margin-bottom: var(--evk-space-xl);
	align-items: center;
}

.evk-filter-select {
	padding: 8px 16px;
	border: 1px solid var(--evk-border);
	border-radius: 50px;
	background: var(--evk-bg-secondary);
	color: var(--evk-text);
	font-family: var(--evk-body-font);
	font-size: 0.85rem;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	padding-right: 32px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236E6E73' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	transition: border-color var(--evk-transition);
}

.evk-filter-select:focus {
	border-color: var(--evk-accent);
	outline: none;
}

.evk-filter-pill {
	padding: 8px 20px;
	border: 1px solid var(--evk-border);
	border-radius: 50px;
	background: var(--evk-bg-secondary);
	color: var(--evk-text-secondary);
	font-family: var(--evk-body-font);
	font-size: 0.85rem;
	cursor: pointer;
	transition: all var(--evk-transition);
}

.evk-filter-pill:hover,
.evk-filter-pill.is-active {
	background: var(--evk-accent);
	color: #fff;
	border-color: var(--evk-accent);
}

/* ==========================================================================
   Vehicle Spec Tables (Single Vehicle Page)
   ========================================================================== */

.evk-spec-section {
	margin-bottom: var(--evk-space-xl);
}

.evk-spec-section__title {
	font-size: 1.25rem;
	margin-bottom: var(--evk-space-md);
	padding-bottom: var(--evk-space-sm);
	border-bottom: 2px solid var(--evk-border);
}

.evk-spec-table {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--evk-space-lg);
}

.evk-spec-table__subtitle {
	font-size: 0.9rem;
	font-weight: 600;
	margin-bottom: var(--evk-space-sm);
	color: var(--evk-text-secondary);
}

.evk-spec-row {
	display: flex;
	justify-content: space-between;
	padding: var(--evk-space-sm) 0;
	border-bottom: 1px solid var(--evk-border);
	font-size: 0.9rem;
}

.evk-spec-row:last-child {
	border-bottom: none;
}

.evk-spec-row__label {
	color: var(--evk-text-secondary);
}

.evk-spec-row__value {
	font-weight: 500;
	text-align: right;
}

/* ---------- Financing Section ---------- */
.evk-financing {
	margin-top: var(--evk-space-lg);
}

.evk-financing__subtitle {
	color: var(--evk-text-secondary);
	font-size: 0.9rem;
	margin-bottom: var(--evk-space-lg);
}

.evk-financing__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: var(--evk-space-md);
}

.evk-financing__card {
	display: block;
	text-decoration: none;
	color: var(--evk-text);
	position: relative;
	overflow: hidden;
	padding: 0;
	transition: transform var(--evk-transition), box-shadow var(--evk-transition);
}

.evk-financing__card:hover {
	transform: translateY(-3px);
	box-shadow: var(--evk-shadow-lg);
}

.evk-financing__card-accent {
	height: 4px;
	background: linear-gradient(90deg, var(--evk-accent), var(--evk-accent-secondary, #2979FF));
	border-radius: var(--evk-radius) var(--evk-radius) 0 0;
}

.evk-financing__card-body {
	padding: var(--evk-space-lg);
}

.evk-financing__card-title {
	font-size: 1rem;
	font-weight: 700;
	margin-bottom: var(--evk-space-xs);
}

.evk-financing__card-desc {
	font-size: 0.85rem;
	color: var(--evk-text-secondary);
	margin-bottom: var(--evk-space-md);
	line-height: 1.5;
}

.evk-financing__card-cta {
	display: inline-flex;
	align-items: center;
	gap: var(--evk-space-xs);
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--evk-accent);
	transition: gap var(--evk-transition);
}

.evk-financing__card:hover .evk-financing__card-cta {
	gap: var(--evk-space-sm);
}

/* ---------- Financing Page ---------- */
.evk-financing-hero {
	text-align: center;
	padding: var(--evk-space-3xl) var(--evk-space-lg);
	background: linear-gradient(135deg, rgba(0, 200, 83, 0.06), rgba(41, 121, 255, 0.06));
	border-radius: var(--evk-radius);
	margin-bottom: var(--evk-space-xl);
}

.evk-financing-hero__badge {
	display: inline-block;
	padding: 6px 16px;
	background: var(--evk-accent);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	border-radius: 50px;
	margin-bottom: var(--evk-space-md);
}

.evk-financing-hero__title {
	font-size: clamp(1.75rem, 4vw, 2.75rem);
	margin-bottom: var(--evk-space-md);
	line-height: 1.2;
}

.evk-financing-hero__desc {
	font-size: 1.1rem;
	color: var(--evk-text-secondary);
	max-width: 640px;
	margin: 0 auto;
	line-height: 1.6;
}

.evk-financing-steps {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--evk-space-lg);
}

@media (max-width: 768px) {
	.evk-financing-steps {
		grid-template-columns: 1fr;
	}
}

.evk-financing-step {
	text-align: center;
	padding: var(--evk-space-xl) var(--evk-space-lg);
}

.evk-financing-step__number {
	width: 48px;
	height: 48px;
	line-height: 48px;
	border-radius: 50%;
	background: linear-gradient(135deg, var(--evk-accent), var(--evk-accent-secondary, #2979FF));
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	margin: 0 auto var(--evk-space-md);
}

.evk-financing-step__title {
	font-size: 1.1rem;
	margin-bottom: var(--evk-space-xs);
}

.evk-financing-step__desc {
	font-size: 0.875rem;
	color: var(--evk-text-secondary);
	line-height: 1.5;
}

.evk-financing-partners {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
	gap: var(--evk-space-lg);
}

.evk-financing-partner {
	display: block;
	text-decoration: none;
	color: var(--evk-text);
	overflow: hidden;
	padding: 0;
	transition: transform var(--evk-transition), box-shadow var(--evk-transition);
}

.evk-financing-partner:hover {
	transform: translateY(-4px);
	box-shadow: var(--evk-shadow-lg);
}

.evk-financing-partner__accent {
	height: 4px;
	background: linear-gradient(90deg, var(--evk-accent), var(--evk-accent-secondary, #2979FF));
}

.evk-financing-partner__body {
	padding: var(--evk-space-xl) var(--evk-space-lg);
}

.evk-financing-partner__logo {
	margin-bottom: var(--evk-space-md);
}

.evk-financing-partner__logo img {
	max-height: 48px;
	width: auto;
	object-fit: contain;
}

.evk-financing-partner__name {
	font-size: 1.15rem;
	font-weight: 700;
	margin-bottom: var(--evk-space-xs);
}

.evk-financing-partner__desc {
	font-size: 0.875rem;
	color: var(--evk-text-secondary);
	line-height: 1.6;
	margin-bottom: var(--evk-space-md);
}

.evk-financing-partner__cta {
	display: inline-flex;
	align-items: center;
	gap: var(--evk-space-xs);
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--evk-accent);
	transition: gap var(--evk-transition);
}

.evk-financing-partner:hover .evk-financing-partner__cta {
	gap: var(--evk-space-sm);
}

.evk-financing-partnership {
	background: linear-gradient(135deg, rgba(0, 200, 83, 0.04), rgba(41, 121, 255, 0.04));
	overflow: hidden;
}

.evk-financing-partnership__inner {
	padding: var(--evk-space-2xl);
	text-align: center;
}

.evk-financing-partnership__title {
	font-size: clamp(1.5rem, 3vw, 2rem);
	margin-bottom: var(--evk-space-md);
}

.evk-financing-partnership__desc {
	font-size: 1rem;
	color: var(--evk-text-secondary);
	max-width: 600px;
	margin: 0 auto var(--evk-space-xl);
	line-height: 1.6;
}

.evk-financing-partnership__benefits {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--evk-space-lg);
	margin-bottom: var(--evk-space-md);
}

.evk-financing-partnership__benefit {
	display: flex;
	align-items: center;
	gap: var(--evk-space-sm);
	font-size: 0.9rem;
	font-weight: 500;
}

@media (max-width: 600px) {
	.evk-financing-partnership__inner {
		padding: var(--evk-space-lg);
	}

	.evk-financing-partnership__benefits {
		flex-direction: column;
		align-items: flex-start;
	}
}

/* Quick Stats Bar */
.evk-quick-stats {
	display: flex;
	gap: var(--evk-space-lg);
	flex-wrap: wrap;
	padding: var(--evk-space-lg);
	background: var(--evk-glass-bg);
	backdrop-filter: blur(var(--evk-glass-blur));
	-webkit-backdrop-filter: blur(var(--evk-glass-blur));
	border-radius: var(--evk-radius);
	border: 1px solid var(--evk-border);
	margin: var(--evk-space-lg) 0;
}

.evk-quick-stat {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	flex: 1;
	min-width: 100px;
}

.evk-quick-stat__icon {
	color: var(--evk-accent);
	margin-bottom: var(--evk-space-xs);
}

.evk-quick-stat__value {
	font-family: var(--evk-heading-font);
	font-size: 1.25rem;
	font-weight: 700;
}

.evk-quick-stat__value small {
	font-size: 0.75rem;
	font-weight: 400;
	color: var(--evk-text-secondary);
}

.evk-quick-stat__label {
	font-size: 0.75rem;
	color: var(--evk-text-secondary);
}

/* ==========================================================================
   Vehicle Gallery
   ========================================================================== */

.evk-vehicle-gallery {
    margin-bottom: var(--evk-space-xl);
}

.evk-vehicle-gallery__title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: var(--evk-space-md);
}

.evk-vehicle-gallery__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--evk-space-sm);
}

/* Make first image span 2 cols if 4+ images */
.evk-vehicle-gallery__grid--featured .evk-vehicle-gallery__item:first-child {
    grid-column: span 2;
    grid-row: span 2;
}

.evk-vehicle-gallery__item {
    display: block;
    aspect-ratio: 16 / 10;
    border-radius: calc(var(--evk-radius) * 0.75);
    overflow: hidden;
    cursor: pointer;
    position: relative;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.evk-vehicle-gallery__item:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

.evk-vehicle-gallery__item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.evk-vehicle-gallery__item:hover img {
    transform: scale(1.08);
}

/* Zoom icon overlay */
.evk-vehicle-gallery__item::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0) 50%);
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.evk-vehicle-gallery__item::before {
    content: '\2922';
    position: absolute;
    bottom: 12px;
    right: 12px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    font-size: 16px;
    color: #1D1D1F;
    z-index: 2;
    opacity: 0;
    transform: scale(0.8);
    transition: opacity 0.3s ease, transform 0.3s ease;
    pointer-events: none;
}

.evk-vehicle-gallery__item:hover::after,
.evk-vehicle-gallery__item:hover::before {
    opacity: 1;
}

.evk-vehicle-gallery__item:hover::before {
    transform: scale(1);
}

/* Image count badge for "show more" */
.evk-vehicle-gallery__more {
    position: relative;
}

.evk-vehicle-gallery__more::after {
    content: attr(data-remaining);
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.55);
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    border-radius: calc(var(--evk-radius) * 0.75);
    opacity: 1;
    pointer-events: none;
}

@media (max-width: 768px) {
    .evk-vehicle-gallery__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--evk-space-xs);
    }
    .evk-vehicle-gallery__grid--featured .evk-vehicle-gallery__item:first-child {
        grid-column: span 2;
        grid-row: span 1;
    }
}

@media (max-width: 480px) {
    .evk-vehicle-gallery__grid {
        grid-template-columns: 1fr 1fr;
    }
    .evk-vehicle-gallery__grid--featured .evk-vehicle-gallery__item:first-child {
        grid-column: span 2;
    }
}

/* ==========================================================================
   Lightbox
   ========================================================================== */

.evk-lightbox {
    position: fixed;
    inset: 0;
    z-index: 10001;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.92);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.evk-lightbox.is-visible {
    opacity: 1;
    visibility: visible;
}

.evk-lightbox__img {
    max-width: 90vw;
    max-height: 85vh;
    object-fit: contain;
    border-radius: 4px;
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.4);
    transition: transform 0.3s ease;
    user-select: none;
}

.evk-lightbox__close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border: none;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    font-size: 28px;
    cursor: pointer;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease, transform 0.2s ease;
    z-index: 2;
}

.evk-lightbox__close:hover {
    background: rgba(255, 255, 255, 0.2);
    transform: rotate(90deg);
}

.evk-lightbox__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border: none;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    font-size: 24px;
    cursor: pointer;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease, transform 0.2s ease;
    z-index: 2;
}

.evk-lightbox__nav:hover {
    background: rgba(255, 255, 255, 0.25);
}

.evk-lightbox__nav--prev {
    left: 20px;
}

.evk-lightbox__nav--prev:hover {
    transform: translateY(-50%) translateX(-2px);
}

.evk-lightbox__nav--next {
    right: 20px;
}

.evk-lightbox__nav--next:hover {
    transform: translateY(-50%) translateX(2px);
}

.evk-lightbox__counter {
    position: absolute;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.875rem;
    font-weight: 500;
    background: rgba(0, 0, 0, 0.4);
    padding: 4px 16px;
    border-radius: 20px;
}

@media (max-width: 768px) {
    .evk-lightbox__nav {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
    .evk-lightbox__nav--prev { left: 10px; }
    .evk-lightbox__nav--next { right: 10px; }
    .evk-lightbox__close { top: 12px; right: 12px; }
}

/* ==========================================================================
   Vehicle Compare CTA (Sticky)
   ========================================================================== */

.evk-vehicle-compare-cta {
	padding: var(--evk-space-md) var(--evk-space-lg);
	margin-bottom: var(--evk-space-lg);
	position: sticky;
	top: 80px;
	z-index: 100;
}

.evk-vehicle-compare-cta__inner {
	display: flex;
	align-items: center;
	gap: var(--evk-space-md);
	flex-wrap: wrap;
}

.evk-vehicle-compare-cta__status {
	font-size: 0.875rem;
	color: var(--evk-text-secondary);
}

.evk-compare-go-btn {
	margin-left: auto;
}

@media (max-width: 600px) {
	.evk-vehicle-compare-cta__inner {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
	}
	.evk-compare-go-btn {
		margin-left: 0;
	}
}

/* ==========================================================================
   Vehicle Comparison
   ========================================================================== */

.evk-compare-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: var(--evk-glass-bg);
	backdrop-filter: blur(24px);
	-webkit-backdrop-filter: blur(24px);
	border-top: 1px solid var(--evk-border);
	padding: var(--evk-space-md);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: var(--evk-space-md);
	box-shadow: 0 -4px 24px rgba(0,0,0,0.1);
	transform: translateY(100%);
	opacity: 0;
	visibility: hidden;
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
	            opacity 0.35s ease,
	            visibility 0.35s ease;
}

.evk-compare-bar.is-visible {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
}

.evk-compare-bar__items {
	display: flex;
	gap: var(--evk-space-md);
}

.evk-compare-bar__item {
	display: flex;
	align-items: center;
	gap: var(--evk-space-sm);
	background: var(--evk-bg-secondary);
	padding: var(--evk-space-sm) var(--evk-space-md);
	border-radius: var(--evk-radius-sm);
	font-size: 0.85rem;
}

.evk-compare-bar__item img {
	width: 48px;
	height: 32px;
	object-fit: cover;
	border-radius: 4px;
}

.evk-compare-bar__item .remove {
	cursor: pointer;
	color: var(--evk-text-secondary);
	background: none;
	border: none;
	font-size: 1.2rem;
	padding: 0 4px;
}

.evk-compare-bar__item .remove:hover {
	color: #FF3D00;
}

.evk-compare-bar__btn {
	padding: var(--evk-space-sm) var(--evk-space-lg);
	background: var(--evk-accent, #00C853);
	color: #fff;
	border: none;
	border-radius: var(--evk-radius-sm);
	font-weight: 600;
	font-size: 0.9rem;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.15s ease;
}

.evk-compare-bar__btn:hover {
	background: #00B548;
	transform: translateY(-1px);
}

.evk-compare-bar__clear {
	padding: var(--evk-space-sm) var(--evk-space-md);
	background: transparent;
	color: var(--evk-text-secondary);
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-sm);
	font-size: 0.85rem;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.evk-compare-bar__clear:hover {
	background: var(--evk-bg-secondary);
	color: var(--evk-text);
}

[data-theme="dark"] .evk-compare-bar {
	box-shadow: 0 -4px 24px rgba(0,0,0,0.3);
}

[data-theme="dark"] .evk-compare-bar__item {
	background: rgba(255,255,255,0.06);
}

[data-theme="dark"] .evk-compare-bar__clear {
	border-color: rgba(255,255,255,0.15);
}

/* Compare Bar Search */
.evk-compare-bar__search {
	position: relative;
	flex: 1;
	max-width: 250px;
}

.evk-compare-bar__search-input {
	width: 100%;
	padding: 8px 12px;
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-sm, 8px);
	background: var(--evk-bg);
	color: var(--evk-text);
	font-size: 0.85rem;
}

.evk-compare-bar__search-results {
	display: none;
	position: absolute;
	bottom: 100%;
	left: 0;
	right: 0;
	background: var(--evk-bg);
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-sm, 8px);
	box-shadow: var(--evk-shadow-lg);
	max-height: 200px;
	overflow-y: auto;
	margin-bottom: 4px;
	z-index: 10;
}

.evk-compare-bar__search-item {
	padding: 10px 12px;
	cursor: pointer;
	font-size: 0.85rem;
	transition: background 0.15s ease;
}

.evk-compare-bar__search-item:hover {
	background: var(--evk-bg-secondary);
}

.evk-compare-bar__search-empty {
	padding: 10px 12px;
	color: var(--evk-text-secondary);
	font-size: 0.85rem;
}

@media (max-width: 768px) {
	.evk-compare-bar__search {
		max-width: 100%;
	}
}

/* ==========================================================================
   Map
   ========================================================================== */

.evk-map-container {
	position: relative;
	border-radius: var(--evk-radius);
	overflow: hidden;
	border: 1px solid var(--evk-border);
}

.evk-map-container .leaflet-container {
	height: 500px;
	width: 100%;
	z-index: 1;
}

.evk-map-filters {
	position: absolute;
	top: var(--evk-space-md);
	right: var(--evk-space-md);
	z-index: 500;
	background: var(--evk-glass-bg);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border-radius: var(--evk-radius);
	padding: var(--evk-space-md);
	border: 1px solid var(--evk-border);
	max-width: 280px;
	max-height: 80vh;
	overflow-y: auto;
}

.evk-map-filters__title {
	font-size: 0.9rem;
	font-weight: 600;
	margin-bottom: var(--evk-space-sm);
}

.evk-map-filters label {
	display: flex;
	align-items: center;
	gap: var(--evk-space-sm);
	font-size: 0.85rem;
	margin-bottom: var(--evk-space-xs);
	cursor: pointer;
}

/* ==========================================================================
   Buttons
   ========================================================================== */

.evk-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--evk-space-sm);
	padding: 10px 24px;
	border: none;
	border-radius: 50px;
	font-family: var(--evk-body-font);
	font-size: 0.9rem;
	font-weight: 600;
	cursor: pointer;
	transition: all var(--evk-transition);
	text-decoration: none;
}

.evk-btn--primary {
	background: var(--evk-btn-color);
	color: #fff;
}

.evk-btn--primary:hover {
	background: var(--evk-btn-hover);
	color: #fff;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(0, 200, 83, 0.3);
}

.evk-btn--outline {
	background: transparent;
	color: var(--evk-text);
	border: 1px solid var(--evk-border);
}

.evk-btn--outline:hover {
	border-color: var(--evk-accent);
	color: var(--evk-accent);
}

.evk-btn--sm {
	padding: 6px 16px;
	font-size: 0.8rem;
}

/* ==========================================================================
   Pagination
   ========================================================================== */

.evk-pagination {
	margin-top: var(--evk-space-xl);
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
}

.evk-pagination ul {
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
	justify-content: center;
	flex-wrap: wrap;
	gap: 6px;
}

.evk-pagination li {
	list-style: none;
}

.evk-pagination a,
.evk-pagination span,
.evk-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	border: 1px solid var(--evk-border);
	border-radius: 50px;
	font-size: 0.85rem;
	font-weight: 500;
	color: var(--evk-text);
	background: var(--evk-bg);
	transition: all var(--evk-transition);
	text-decoration: none;
	line-height: 1;
}

.evk-pagination a:hover,
.evk-pagination .page-numbers:hover {
	border-color: var(--evk-accent);
	color: var(--evk-accent);
	background: var(--evk-accent-ring, rgba(0, 200, 83, 0.08));
}

.evk-pagination .current,
.evk-pagination span.current {
	background: var(--evk-accent);
	border-color: var(--evk-accent);
	color: #fff;
	font-weight: 600;
}

.evk-pagination .current:hover {
	background: var(--evk-accent);
	color: #fff;
}

.evk-pagination .dots,
.evk-pagination span.dots {
	border: none;
	background: none;
	min-width: auto;
	padding: 0 4px;
	color: var(--evk-text-secondary);
}

.evk-pagination .prev,
.evk-pagination .next {
	font-weight: 700;
}

[data-theme="dark"] .evk-pagination a,
[data-theme="dark"] .evk-pagination span,
[data-theme="dark"] .evk-pagination .page-numbers {
	background: var(--evk-bg-secondary, rgba(255,255,255,0.06));
	border-color: rgba(255,255,255,0.1);
}

[data-theme="dark"] .evk-pagination .current {
	background: var(--evk-accent);
	border-color: var(--evk-accent);
}

[data-theme="dark"] .evk-pagination .dots {
	background: none;
	border: none;
}

/* ==========================================================================
   Breadcrumbs
   ========================================================================== */

.evk-breadcrumbs {
	padding: var(--evk-space-sm) 0;
	font-size: 0.75rem;
	color: var(--evk-text-tertiary);
	letter-spacing: 0.02em;
}

.evk-breadcrumbs ol {
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
	flex-wrap: wrap;
	gap: var(--evk-space-xs);
}

.evk-breadcrumbs li::after {
	content: '›';
	margin-left: var(--evk-space-xs);
	color: var(--evk-text-tertiary);
	opacity: 0.5;
}

.evk-breadcrumbs li:last-child::after {
	content: '';
}

.evk-breadcrumbs a {
	color: var(--evk-text-tertiary);
	text-decoration: none;
	transition: color var(--evk-transition);
}

.evk-breadcrumbs a:hover {
	color: var(--evk-accent);
}

.evk-breadcrumbs span[aria-current] {
	color: var(--evk-text-secondary);
	font-weight: 500;
}

/* ==========================================================================
   Back to Top
   ========================================================================== */

.evk-back-to-top {
	position: fixed;
	bottom: var(--evk-space-xl);
	right: var(--evk-space-xl);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--evk-glass-bg);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1px solid var(--evk-border);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--evk-text);
	opacity: 0;
	visibility: hidden;
	transition: all var(--evk-transition);
	z-index: 900;
}

.evk-back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
}

.evk-back-to-top:hover {
	background: var(--evk-accent);
	color: #fff;
	border-color: var(--evk-accent);
}

/* ==========================================================================
   Footer
   ========================================================================== */

.evk-footer {
	background: var(--evk-footer-bg);
	color: #C7C7CC;
	padding: var(--evk-space-3xl) 0 var(--evk-space-lg);
}
.evk-footer--compact {
	padding: var(--evk-space-lg) 0;
}
.evk-footer--compact .evk-footer__social {
	margin-top: 0;
	justify-content: center;
}

.evk-footer a {
	color: #C7C7CC;
	transition: color var(--evk-transition);
}

.evk-footer a:hover {
	color: var(--evk-accent);
}

.evk-footer__grid {
	display: grid;
	gap: var(--evk-space-xl);
}

.evk-footer__grid--2 { grid-template-columns: repeat(2, 1fr); }
.evk-footer__grid--3 { grid-template-columns: repeat(3, 1fr); }
.evk-footer__grid--4 { grid-template-columns: repeat(4, 1fr); }

.evk-footer .evk-widget__title {
	color: #F5F5F7;
	margin-bottom: var(--evk-space-md);
	font-size: 1rem;
}

.evk-footer .evk-widget ul {
	list-style: none;
	padding: 0;
}

.evk-footer .evk-widget li {
	margin-bottom: var(--evk-space-sm);
}

.evk-footer__social {
	display: flex;
	gap: var(--evk-space-md);
	margin-top: var(--evk-space-lg);
}

.evk-footer__social a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,0.2);
	transition: all var(--evk-transition);
}

.evk-footer__social a:hover {
	background: var(--evk-accent);
	border-color: var(--evk-accent);
	color: #fff;
}

.evk-footer__bottom {
	margin-top: var(--evk-space-xl);
	padding-top: var(--evk-space-lg);
	border-top: 1px solid rgba(255,255,255,0.1);
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: var(--evk-space-md);
	font-size: 0.85rem;
}
.evk-footer__bottom-left {
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.evk-footer__bottom-left p {
	margin: 0;
}

.evk-footer__credit {
	color: rgba(255, 255, 255, 0.5);
	font-size: 0.8rem;
}

.evk-footer__credit a {
	color: rgba(255, 255, 255, 0.65);
	text-decoration: none;
	transition: color var(--evk-transition);
}

.evk-footer__credit a:hover {
	color: var(--evk-accent);
}

/* Footer menu — right-aligned above accreditation */
.evk-footer__menu {
	text-align: right;
}
.evk-footer__menu-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	gap: var(--evk-space-md);
	flex-wrap: wrap;
	justify-content: flex-end;
}
.evk-footer__menu-list li a {
	color: rgba(255,255,255,.6);
	font-size: 0.82rem;
	text-decoration: none;
	transition: color var(--evk-transition);
}
.evk-footer__menu-list li a:hover {
	color: var(--evk-accent);
}

/* ==========================================================================
   Sidebar
   ========================================================================== */

.evk-widget {
	margin-bottom: var(--evk-space-lg);
	padding: var(--evk-space-lg);
}

.evk-widget__title {
	font-size: 1rem;
	margin-bottom: var(--evk-space-md);
}

/* ==========================================================================
   404 / Empty States
   ========================================================================== */

.evk-empty-state {
	text-align: center;
	padding: var(--evk-space-3xl);
}

.evk-empty-state__icon {
	font-size: 3rem;
	color: var(--evk-text-tertiary);
	margin-bottom: var(--evk-space-lg);
}

.evk-empty-state__title {
	font-size: 1.5rem;
	margin-bottom: var(--evk-space-sm);
}

.evk-empty-state__text {
	color: var(--evk-text-secondary);
	max-width: 480px;
	margin: 0 auto var(--evk-space-lg);
}

/* ==========================================================================
   Skeleton Loaders (for AJAX filter loading states)
   ========================================================================== */

.evk-skeleton-card {
	background: var(--evk-glass-bg);
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius);
	overflow: hidden;
}

.evk-skeleton-card__body {
	padding: var(--evk-space-lg);
	display: flex;
	flex-direction: column;
	gap: var(--evk-space-sm);
}

.evk-skeleton {
	background: linear-gradient(90deg, var(--evk-bg) 25%, var(--evk-border) 50%, var(--evk-bg) 75%);
	background-size: 200% 100%;
	animation: evk-shimmer 1.5s ease-in-out infinite;
	border-radius: var(--evk-radius-sm);
}

.evk-skeleton--image {
	aspect-ratio: 3/2;
	width: 100%;
}

.evk-skeleton--text {
	height: 14px;
}

@keyframes evk-shimmer {
	0%   { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

/* Empty filter results message */
.evk-grid-empty {
	grid-column: 1 / -1;
	text-align: center;
	padding: var(--evk-space-2xl) var(--evk-space-lg);
	color: var(--evk-text-secondary);
	font-size: 0.95rem;
}

/* Loading overlay on grid */
.evk-loading {
	opacity: 0.6;
	pointer-events: none;
	transition: opacity 0.2s ease;
}

/* ==========================================================================
   Single Event Page
   ========================================================================== */

.evk-event-hero {
	position: relative;
}

.evk-event-details {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: var(--evk-space-md);
	padding: var(--evk-space-lg);
	margin: var(--evk-space-lg) 0;
}

.evk-event-detail {
	display: flex;
	align-items: flex-start;
	gap: var(--evk-space-sm);
}

.evk-event-detail__icon {
	color: var(--evk-accent);
	flex-shrink: 0;
	margin-top: 2px;
}

.evk-event-detail__label {
	font-size: 0.8rem;
	color: var(--evk-text-secondary);
}

.evk-event-detail__value {
	font-weight: 500;
}

/* ==========================================================================
   Single Vehicle Hero
   ========================================================================== */

.evk-vehicle-hero {
	position: relative;
	border-radius: var(--evk-radius);
	overflow: hidden;
	margin-bottom: var(--evk-space-xl);
}

.evk-vehicle-hero__image {
	aspect-ratio: 2/1;
	width: 100%;
	object-fit: cover;
}

.evk-vehicle-hero__overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: var(--evk-space-xl);
	background: linear-gradient(transparent, rgba(0,0,0,0.7));
	color: #fff;
}

.evk-vehicle-hero__title {
	font-size: clamp(1.5rem, 4vw, 2.5rem);
	color: #fff;
}

.evk-vehicle-hero__subtitle {
	font-size: 1rem;
	opacity: 0.9;
	color: #fff;
}


.evk-vehicle-hero__actions .evk-btn--outline {
	color: #fff;
	border-color: rgba(255, 255, 255, 0.6);
	background: rgba(255, 255, 255, 0.15);
	backdrop-filter: blur(4px);
}

.evk-vehicle-hero__actions .evk-btn--outline:hover {
	background: rgba(255, 255, 255, 0.3);
	border-color: #fff;
}

/* Spec Navigation */
.evk-spec-nav {
	display: flex;
	overflow-x: auto;
	gap: var(--evk-space-sm);
	padding: var(--evk-space-md) 0;
	margin-bottom: var(--evk-space-lg);
	border-bottom: 1px solid var(--evk-border);

}

.evk-spec-nav__link {
	white-space: nowrap;
	padding: var(--evk-space-sm) var(--evk-space-md);
	border-radius: 50px;
	font-size: 0.85rem;
	font-weight: 500;
	color: var(--evk-text-secondary);
	transition: all var(--evk-transition);
	border: 1px solid transparent;
}

.evk-spec-nav__link:hover,
.evk-spec-nav__link.is-active {
	color: var(--evk-accent);
	border-color: var(--evk-accent);
	background: rgba(0, 200, 83, 0.08);
}

/* ==========================================================================
   Contact Page
   ========================================================================== */

.evk-contact-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: var(--evk-space-lg);
}

/* ==========================================================================
   Toast Notifications
   ========================================================================== */

.evk-toast {
	position: fixed;
	bottom: 80px;
	left: 50%;
	transform: translateX(-50%) translateY(20px);
	background: var(--evk-text);
	color: var(--evk-bg);
	padding: var(--evk-space-sm) var(--evk-space-lg);
	border-radius: 50px;
	font-size: 0.85rem;
	font-weight: 500;
	z-index: 10000;
	opacity: 0;
	transition: all 0.3s ease;
	pointer-events: none;
}

.evk-toast.is-visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

/* ==========================================================================
   Scroll Animations
   ========================================================================== */

.evk-animate-on-scroll {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.6s ease, transform 0.6s ease;
}

.evk-animate-on-scroll.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Cards inside grids must ALWAYS be visible — never hide content behind JS animations */
.evk-animate {
	opacity: 1;
	transform: none;
}

/* ==========================================================================
   Loading Skeleton
   ========================================================================== */

.evk-skeleton {
	background: linear-gradient(90deg, var(--evk-bg-secondary) 25%, var(--evk-bg-tertiary) 50%, var(--evk-bg-secondary) 75%);
	background-size: 200% 100%;
	animation: evk-shimmer 1.5s infinite;
	border-radius: var(--evk-radius-sm);
}

@keyframes evk-shimmer {
	0% { background-position: -200% 0; }
	100% { background-position: 200% 0; }
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1200px) {
	.evk-grid--4 { grid-template-columns: repeat(3, 1fr); }
}

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

	.evk-masonry { column-count: 2; }

	.evk-sidebar {
		width: 100%;
		order: 1;
	}

	.evk-site-content {
		flex-direction: column;
	}

	.evk-footer__grid--4 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
	.evk-hamburger { display: block; }

	.evk-nav { display: none; }

	.evk-header__top-bar { display: none; }

	.evk-grid--2,
	.evk-grid--3,
	.evk-grid--4 { grid-template-columns: 1fr; }

	.evk-masonry { column-count: 1; }

	.evk-spec-table { grid-template-columns: 1fr; }

	.evk-quick-stats {
		justify-content: center;
	}

	.evk-compare-table {
		display: block;
		overflow-x: auto;
	}

	.evk-map-filters {
		position: static;
		max-width: 100%;
		margin-bottom: var(--evk-space-md);
		border-radius: var(--evk-radius-sm);
	}

	.evk-map-container .leaflet-container {
		height: 350px;
	}

	.evk-footer__grid--2,
	.evk-footer__grid--3,
	.evk-footer__grid--4 { grid-template-columns: 1fr; }

	.evk-footer__bottom {
		flex-direction: column;
		text-align: center;
		align-items: center;
	}
	.evk-footer__menu {
		text-align: center;
	}
	.evk-footer__menu-list {
		justify-content: center;
	}

	.evk-event-details {
		grid-template-columns: 1fr;
	}

	.evk-header__main {
		padding: var(--evk-space-sm) 0;
	}

	.evk-search-form {
		max-width: 100%;
	}
}

@media (max-width: 576px) {
	html {
		font-size: 15px;
	}

	.evk-container {
		padding: 0 var(--evk-space-sm);
	}

	.evk-section {
		padding: var(--evk-space-xl) 0;
	}

	.evk-compare-bar__items {
		flex-wrap: wrap;
	}

	.evk-compare-bar__item span {
		display: none;
	}

	.evk-vehicle-hero__image {
		aspect-ratio: 16/10;
	}
}

/* ==========================================================================
   Social Share Buttons
   ========================================================================== */

.evk-share-buttons {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	padding: var(--evk-space-md) 0;
	margin: var(--evk-space-sm) 0;
	border-top: 1px solid var(--evk-border, rgba(0,0,0,.08));
	border-bottom: 1px solid var(--evk-border, rgba(0,0,0,.08));
}
/* Remove double borders when inside glass cards or other bordered containers */
.evk-glass-card .evk-share-buttons,
.evk-content .evk-share-buttons {
	border: none;
	padding: var(--evk-space-sm) 0;
	margin: 0;
}

.evk-share-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--evk-bg-tertiary, #E8E8ED);
	color: var(--evk-text-secondary, #6E6E73);
	border: none;
	cursor: pointer;
	transition: background-color 0.25s ease, color 0.2s ease, transform 0.2s ease, box-shadow 0.25s ease;
	text-decoration: none;
	line-height: 1;
	padding: 0;
	font-size: 0;
}

.evk-share-btn svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	transition: color 0.2s ease;
}

.evk-share-btn:hover,
.evk-share-btn:focus-visible {
	color: #fff;
	transform: scale(1.12);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	outline: none;
}

.evk-share-btn:active {
	transform: scale(1.04);
}

.evk-share-btn--facebook:hover,
.evk-share-btn--facebook:focus-visible { background-color: #1877F2; }
.evk-share-btn--twitter:hover,
.evk-share-btn--twitter:focus-visible  { background-color: #1DA1F2; }
.evk-share-btn--linkedin:hover,
.evk-share-btn--linkedin:focus-visible { background-color: #0A66C2; }
.evk-share-btn--whatsapp:hover,
.evk-share-btn--whatsapp:focus-visible { background-color: #25D366; }
.evk-share-btn--telegram:hover,
.evk-share-btn--telegram:focus-visible { background-color: #0088cc; }
.evk-share-btn--email:hover,
.evk-share-btn--email:focus-visible    { background-color: #EA4335; }
.evk-share-btn--copy:hover,
.evk-share-btn--copy:focus-visible     { background-color: var(--evk-accent, #00C853); }

[data-theme="dark"] .evk-share-btn {
	background: var(--evk-bg-tertiary, #2C2C2E);
	color: var(--evk-text-secondary, #8E8E93);
}

.evk-share-btn--copy.is-copied {
	background-color: var(--evk-accent, #00C853);
	color: #fff;
}

.evk-floating-share {
	position: fixed;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 900;
	display: none;
}

.evk-floating-share--right {
	left: auto;
	right: 20px;
}

.evk-floating-share .evk-share-buttons {
	flex-direction: column;
	gap: 8px;
}

.evk-floating-share .evk-share-btn {
	width: 38px;
	height: 38px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

[data-theme="dark"] .evk-floating-share .evk-share-btn {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

@media (min-width: 1200px) {
	.evk-floating-share {
		display: block;
	}
}

/* ==========================================================================
   Print
   ========================================================================== */

@media print {
	.evk-header,
	.evk-footer,
	.evk-sidebar,
	.evk-back-to-top,
	.evk-compare-bar,
	.evk-mobile-menu,
	.evk-filters {
		display: none !important;
	}

	body {
		color: #000;
		background: #fff;
	}

	.evk-glass-card {
		background: #fff;
		border: 1px solid #ddd;
		backdrop-filter: none;
	}
}


/* ==========================================================================
   Post Navigation Cards
   ========================================================================== */

.evk-post-nav-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--evk-space-md);
}

.evk-post-nav-card {
	padding: var(--evk-space-lg);
	text-decoration: none;
	display: block;
}

.evk-post-nav-card__label {
	display: block;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--evk-text-secondary);
	margin-bottom: var(--evk-space-xs);
}

.evk-post-nav-card__title {
	display: block;
	font-weight: 600;
	color: var(--evk-text);
	font-size: 0.95rem;
	line-height: 1.4;
}

.evk-post-nav-card--next {
	text-align: right;
}

@media (max-width: 576px) {
	.evk-post-nav-grid {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   Tag Pills
   ========================================================================== */

/* ==========================================================================
   Ad Slots
   ========================================================================== */

.evk-ad {
	text-align: center;
	margin: var(--evk-space-lg) 0;
	overflow: hidden;
}

.evk-ad__label {
	display: block;
	font-size: 0.65rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--evk-text-secondary);
	opacity: 0.5;
	margin-bottom: 4px;
}

.evk-ad img {
	max-width: 100%;
	height: auto;
	border-radius: var(--evk-radius);
}

.evk-ad--728x90 { max-width: 728px; margin-inline: auto; }
.evk-ad--300x250 { max-width: 300px; margin-inline: auto; }
.evk-ad--336x280 { max-width: 336px; margin-inline: auto; }
.evk-ad--320x100 { max-width: 320px; margin-inline: auto; }

.evk-ad--header_above,
.evk-ad--header_below {
	margin: 0 auto var(--evk-space-md);
	padding: var(--evk-space-sm) 0;
}

/* ── Ad alignment ── */
.evk-ad--align-center { margin-left: auto; margin-right: auto; }
.evk-ad--align-left   { margin-right: auto; }
.evk-ad--align-right  { margin-left: auto; }

/* ── Ad label ── */
.evk-ad__label {
    display: block;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--evk-text-muted, #9ca3af);
    margin-bottom: 6px;
    text-align: center;
    opacity: 0.7;
}

/* ── Ad image responsive ── */
.evk-ad__image {
    display: block;
    max-width: 100%;
    height: auto;
}

/* ── Device visibility ── */
@media screen and (max-width: 768px) {
    .evk-ad--desktop-only { display: none !important; }
}
@media screen and (min-width: 769px) {
    .evk-ad--mobile-only { display: none !important; }
}

/* ── Standard IAB sizes ── */
.evk-ad--728x90  { max-width: 728px; }
.evk-ad--300x250 { max-width: 300px; }
.evk-ad--336x280 { max-width: 336px; }
.evk-ad--320x100 { max-width: 320px; }
.evk-ad--970x250 { max-width: 970px; }
.evk-ad--300x600 { max-width: 300px; }
.evk-ad--responsive { max-width: 100%; }

/* ==========================================================================
   Sticky Sidebar
   ========================================================================== */

.evk-sidebar--sticky .evk-sidebar__inner {
	position: sticky;
	top: calc(var(--evk-header-height, 80px) + var(--evk-space-md));
}

/* ==========================================================================
   Vehicle Embed Shortcode
   ========================================================================== */

.evk-vehicle-embed {
	padding: var(--evk-space-lg);
	margin: var(--evk-space-lg) 0;
}

.evk-vehicle-embed__header {
	display: flex;
	gap: var(--evk-space-md);
	align-items: center;
	margin-bottom: var(--evk-space-md);
}

.evk-vehicle-embed__thumb {
	width: 64px;
	height: 64px;
	border-radius: var(--evk-radius);
	object-fit: cover;
}

.evk-vehicle-embed__hero {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--evk-radius) var(--evk-radius) 0 0;
}

.evk-vehicle-embed__title {
	margin: 0;
}

.evk-vehicle-embed__title a {
	color: var(--evk-text);
	text-decoration: none;
}

.evk-vehicle-embed__title a:hover {
	color: var(--evk-accent);
}

.evk-vehicle-embed__footer {
	margin-top: var(--evk-space-md);
	padding-top: var(--evk-space-md);
	border-top: 1px solid var(--evk-border);
}

/* ==========================================================================
   Vehicle Hero Actions
   ========================================================================== */

.evk-vehicle-hero__actions {
	display: flex;
	gap: var(--evk-space-sm);
	align-items: center;
	margin-top: var(--evk-space-sm);
	flex-wrap: wrap;
}

/* ==========================================================================
   Filter Pills with Category Colors
   ========================================================================== */

.evk-filter-pill[style*="--evk-pill-color"].is-active {
	background: var(--evk-pill-color);
	border-color: var(--evk-pill-color);
}

/* ==========================================================================
   4-Column Grid
   ========================================================================== */

.evk-grid--4 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--evk-space-md);
}

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

@media (max-width: 576px) {
	.evk-grid--4 {
		grid-template-columns: 1fr;
	}
}

/* 2-Column Grid */
.evk-grid--2 {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--evk-space-md);
}

@media (max-width: 768px) {
	.evk-grid--2 {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   Jetpack Related Posts Styling
   ========================================================================== */

#jp-relatedposts .jp-relatedposts-items {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--evk-space-md);
}

#jp-relatedposts .jp-relatedposts-post {
	background: var(--evk-glass-bg);
	backdrop-filter: blur(var(--evk-glass-blur));
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius);
	padding: var(--evk-space-md);
	transition: all 0.2s ease;
}

#jp-relatedposts .jp-relatedposts-post:hover {
	transform: translateY(-2px);
	box-shadow: var(--evk-shadow);
}

#jp-relatedposts .jp-relatedposts-post-title a {
	color: var(--evk-text);
	text-decoration: none;
	font-weight: 600;
}

#jp-relatedposts .jp-relatedposts-post-title a:hover {
	color: var(--evk-accent);
}

#jp-relatedposts .jp-relatedposts-post-excerpt,
#jp-relatedposts .jp-relatedposts-post-context {
	color: var(--evk-text-secondary);
	font-size: 0.85rem;
}

#jp-relatedposts .jp-relatedposts-post img {
	border-radius: calc(var(--evk-radius) - 4px);
}

@media (max-width: 768px) {
	#jp-relatedposts .jp-relatedposts-items {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   Article Content Card — Visual Separation
   ========================================================================== */

.evk-single-post__content-card {
	background: var(--evk-bg);
	border-radius: var(--evk-radius);
	padding: var(--evk-space-xl) var(--evk-space-2xl);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 16px rgba(0, 0, 0, 0.06);
	margin: var(--evk-space-xl) 0;
}

[data-theme="dark"] .evk-single-post__content-card {
	background: var(--evk-bg-secondary);
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

@media (max-width: 768px) {
	.evk-single-post__content-card {
		padding: var(--evk-space-lg) var(--evk-space-md);
	}
}

/* ==========================================================================
   Article Content Typography
   ========================================================================== */

.evk-content {
	font-size: var(--evk-content-font-size, 18px);
	line-height: var(--evk-content-line-height, 1.8);
}

.evk-content h2,
.evk-content h3,
.evk-content h4 {
	font-family: var(--evk-heading-font);
	margin: 1.5em 0 0.5em;
}

.evk-content p {
	margin-bottom: 1.2em;
}

.evk-content a {
	color: var(--evk-link-color);
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: opacity 0.2s;
}

.evk-content a:hover {
	opacity: 0.8;
}

.evk-content blockquote {
	border-left: 4px solid var(--evk-accent);
	margin: 1.5em 0;
	padding: 1em 1.5em;
	background: var(--evk-bg-secondary);
	border-radius: 0 var(--evk-radius-sm) var(--evk-radius-sm) 0;
	font-style: italic;
	color: var(--evk-text-secondary);
}

.evk-content img {
	border-radius: var(--evk-radius-sm);
	max-width: 100%;
	height: auto;
}

.evk-content pre {
	background: var(--evk-bg-secondary);
	padding: var(--evk-space-md);
	border-radius: var(--evk-radius-sm);
	overflow-x: auto;
	font-size: 0.9em;
}

.evk-content code {
	background: var(--evk-bg-secondary);
	padding: 2px 6px;
	border-radius: 4px;
	font-size: 0.9em;
}

.evk-content ul,
.evk-content ol {
	padding-left: 1.5em;
	margin-bottom: 1.2em;
}

.evk-content li {
	margin-bottom: 0.4em;
}

/* ==========================================================================
   Enhanced Single Post Meta
   ========================================================================== */

.evk-single-post__meta-avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 2px solid var(--evk-accent);
	flex-shrink: 0;
}

.evk-single-post__meta-author {
	font-weight: 600;
	color: var(--evk-text);
	text-decoration: none;
}

.evk-single-post__meta-author:hover {
	color: var(--evk-accent);
}

.evk-single-post__meta-sep {
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: var(--evk-text-tertiary);
	display: inline-block;
}

.evk-single-post__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.evk-single-post__meta-item .evk-icon {
	opacity: 0.6;
}

/* ==========================================================================
   Comments Section
   ========================================================================== */

.evk-comments {
	margin-top: var(--evk-space-2xl, 48px);
	padding: var(--evk-space-xl, 32px);
	background: var(--evk-bg, #fff);
	border-radius: var(--evk-radius, 16px);
	border: 1px solid var(--evk-border, rgba(0,0,0,0.08));
}

/* ---- Title ---- */
.evk-comments__title {
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--evk-text, #1D1D1F);
	margin: 0 0 var(--evk-space-lg, 24px);
	padding-bottom: var(--evk-space-md, 16px);
	border-bottom: 2px solid var(--evk-border, rgba(0,0,0,0.08));
	display: flex;
	align-items: center;
	gap: 10px;
}

.evk-comments__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 28px;
	height: 28px;
	padding: 0 8px;
	border-radius: 14px;
	background: var(--evk-accent, #00C853);
	color: #fff;
	font-size: 0.8rem;
	font-weight: 700;
	line-height: 1;
}

/* ---- Comment list ---- */
.evk-comment-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.evk-comment-list .comment,
.evk-comment-list .pingback {
	margin: 0;
	padding: 0;
}

/* ---- Individual comment card ---- */
.evk-comment-list .comment-body {
	display: grid;
	grid-template-columns: 48px 1fr;
	grid-template-rows: auto auto;
	gap: 0 var(--evk-space-md, 16px);
	padding: var(--evk-space-lg, 24px);
	margin-bottom: var(--evk-space-md, 16px);
	background: var(--evk-bg-secondary, #F5F5F7);
	border-radius: var(--evk-radius-sm, 8px);
	border: 1px solid var(--evk-border, rgba(0,0,0,0.08));
	transition: border-color 0.2s ease;
}

.evk-comment-list .comment-body:hover {
	border-color: var(--evk-border-strong, rgba(0,0,0,0.15));
}

/* Avatar */
.evk-comment-list .comment-body .comment-author .avatar {
	grid-row: 1 / 3;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	object-fit: cover;
}

.evk-comment-list .comment-body .comment-author {
	display: contents;
}

/* Author meta row */
.evk-comment-list .comment-body .comment-author .fn {
	font-weight: 600;
	font-size: 0.95rem;
	color: var(--evk-text, #1D1D1F);
	font-style: normal;
}

.evk-comment-list .comment-body .comment-author .fn a {
	color: inherit;
	text-decoration: none;
}

.evk-comment-list .comment-body .comment-author .fn a:hover {
	color: var(--evk-accent, #00C853);
}

.evk-comment-list .comment-body .comment-author .says {
	display: none;
}

/* Date / metadata */
.evk-comment-list .comment-body .comment-metadata {
	grid-column: 2;
	margin-top: -2px;
	margin-bottom: var(--evk-space-sm, 8px);
}

.evk-comment-list .comment-body .comment-metadata a {
	font-size: 0.8rem;
	color: var(--evk-text-tertiary, #AEAEB2);
	text-decoration: none;
	transition: color 0.15s ease;
}

.evk-comment-list .comment-body .comment-metadata a:hover {
	color: var(--evk-text-secondary, #6E6E73);
}

/* Comment text */
.evk-comment-list .comment-body .comment-content {
	grid-column: 2;
	font-size: 0.95rem;
	line-height: 1.7;
	color: var(--evk-text-secondary, #6E6E73);
}

.evk-comment-list .comment-body .comment-content p {
	margin: 0 0 var(--evk-space-sm, 8px);
}

.evk-comment-list .comment-body .comment-content p:last-child {
	margin-bottom: 0;
}

/* Reply link */
.evk-comment-list .comment-body .reply {
	grid-column: 2;
	margin-top: var(--evk-space-sm, 8px);
}

.evk-comment-list .comment-body .reply a {
	display: inline-block;
	font-size: 0.78rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--evk-accent, #00C853);
	text-decoration: none;
	padding: 4px 14px;
	border: 1.5px solid var(--evk-accent, #00C853);
	border-radius: 100px;
	transition: background 0.2s ease, color 0.2s ease;
}

.evk-comment-list .comment-body .reply a:hover {
	background: var(--evk-accent, #00C853);
	color: #fff;
}

/* Awaiting moderation */
.evk-comment-list .comment-body .comment-awaiting-moderation {
	grid-column: 2;
	font-size: 0.85rem;
	color: var(--evk-text-tertiary, #AEAEB2);
	font-style: italic;
	margin-top: var(--evk-space-xs, 4px);
}

/* ---- Nested replies ---- */
.evk-comment-list .children {
	list-style: none;
	margin: 0 0 0 var(--evk-space-lg, 24px);
	padding-left: var(--evk-space-md, 16px);
	border-left: 3px solid var(--evk-accent, #00C853);
}

.evk-comment-list .children .comment-body {
	background: var(--evk-bg, #fff);
}

/* ---- Comments navigation ---- */
.evk-comments .comment-navigation,
.evk-comments .comments-pagination {
	display: flex;
	justify-content: space-between;
	margin: var(--evk-space-lg, 24px) 0;
	padding-top: var(--evk-space-md, 16px);
	border-top: 1px solid var(--evk-border, rgba(0,0,0,0.08));
	font-size: 0.9rem;
}

.evk-comments .comment-navigation a,
.evk-comments .comments-pagination a {
	color: var(--evk-accent, #00C853);
	text-decoration: none;
}

.evk-comments .comment-navigation a:hover,
.evk-comments .comments-pagination a:hover {
	text-decoration: underline;
}

/* ---- Comment Form ---- */
.evk-comments .comment-respond {
	margin-top: var(--evk-space-xl, 32px);
	padding-top: var(--evk-space-xl, 32px);
	border-top: 2px solid var(--evk-border, rgba(0,0,0,0.08));
}

.evk-comments .comment-reply-title {
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--evk-text, #1D1D1F);
	margin: 0 0 var(--evk-space-lg, 24px);
}

.evk-comments .comment-reply-title small {
	display: inline-block;
	margin-left: var(--evk-space-sm, 8px);
	font-size: 0.8rem;
	font-weight: 400;
}

.evk-comments .comment-reply-title small a {
	color: var(--evk-text-tertiary, #AEAEB2);
	text-decoration: none;
}

.evk-comments .comment-reply-title small a:hover {
	color: var(--evk-accent, #00C853);
}

/* Logged-in-as notice */
.evk-comments .logged-in-as {
	font-size: 0.85rem;
	color: var(--evk-text-secondary, #6E6E73);
	margin-bottom: var(--evk-space-lg, 24px);
	padding: var(--evk-space-sm, 8px) var(--evk-space-md, 16px);
	background: var(--evk-bg-secondary, #F5F5F7);
	border-radius: var(--evk-radius-sm, 8px);
}

.evk-comments .logged-in-as a {
	color: var(--evk-accent, #00C853);
	text-decoration: none;
	font-weight: 600;
}

.evk-comments .logged-in-as a:hover {
	text-decoration: underline;
}

/* Form fields */
.evk-comments .comment-form-comment,
.evk-comments .comment-form-author,
.evk-comments .comment-form-email,
.evk-comments .comment-form-url,
#commentform .comment-form-comment,
#commentform .comment-form-author,
#commentform .comment-form-email,
#commentform .comment-form-url,
#commentform p {
	margin-bottom: var(--evk-space-md, 16px);
}

/* Ensure label + input stack vertically (WordPress wraps in <p>) */
.evk-comments .comment-form p,
#commentform p {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.evk-comments .comment-form label {
	display: block;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--evk-text-secondary, #6E6E73);
	margin-bottom: 6px;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.evk-comments .comment-form input[type="text"],
.evk-comments .comment-form input[type="email"],
.evk-comments .comment-form input[type="url"],
.evk-comments .comment-form textarea,
#commentform input[type="text"],
#commentform input[type="email"],
#commentform input[type="url"],
#commentform textarea {
	display: block;
	width: 100%;
	padding: 14px 18px;
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.5;
	color: var(--evk-text, #1D1D1F);
	background: var(--evk-bg-secondary, #F5F5F7);
	border: 1.5px solid var(--evk-border, rgba(0,0,0,0.1));
	border-radius: var(--evk-radius, 16px);
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	outline: none;
	box-sizing: border-box;
	-webkit-appearance: none;
	appearance: none;
}

.evk-comments .comment-form input[type="text"]:focus,
.evk-comments .comment-form input[type="email"]:focus,
.evk-comments .comment-form input[type="url"]:focus,
.evk-comments .comment-form textarea:focus,
#commentform input[type="text"]:focus,
#commentform input[type="email"]:focus,
#commentform input[type="url"]:focus,
#commentform textarea:focus {
	border-color: var(--evk-accent, #00C853);
	box-shadow: 0 0 0 3px rgba(0, 200, 83, 0.15);
	background: var(--evk-bg, #fff);
}

.evk-comments .comment-form textarea,
#commentform textarea {
	min-height: 180px;
	resize: vertical;
}

/* Checkbox row (cookies consent etc.) */
.evk-comments .comment-form-cookies-consent,
#commentform .comment-form-cookies-consent {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	margin-bottom: var(--evk-space-md, 16px);
	font-size: 0.85rem;
	color: var(--evk-text-secondary, #6E6E73);
}

/* Don't stack the submit row */
.evk-comments .form-submit,
#commentform .form-submit {
	display: block;
}

.evk-comments .comment-form-cookies-consent input[type="checkbox"] {
	accent-color: var(--evk-accent, #00C853);
	width: 16px;
	height: 16px;
}

/* Submit button */
.evk-comments .form-submit {
	margin-top: var(--evk-space-lg, 24px);
}

.evk-comments .form-submit .submit,
#commentform .form-submit .submit {
	display: inline-block;
	padding: 14px 40px;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 700;
	color: #fff;
	background: var(--evk-accent, #00C853);
	border: none;
	border-radius: var(--evk-radius, 16px);
	cursor: pointer;
	letter-spacing: 0.02em;
	transition: background 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease;
}

.evk-comments .form-submit .submit:hover {
	background: var(--evk-accent-hover, #00E676);
	transform: translateY(-1px);
	box-shadow: 0 4px 14px rgba(0, 200, 83, 0.3);
}

.evk-comments .form-submit .submit:active {
	transform: translateY(0);
}

/* Required asterisk styling */
.evk-comments .required {
	color: #EA4335;
}

/* Comments closed notice */
.evk-comments__closed {
	font-size: 0.9rem;
	color: var(--evk-text-tertiary, #AEAEB2);
	text-align: center;
	padding: var(--evk-space-lg, 24px) 0;
}

/* Comments dark-mode overrides */
[data-theme="dark"] .evk-comments {
	background: var(--evk-bg-secondary, #1C1C1E);
}

[data-theme="dark"] .evk-comment-list .comment-body {
	background: var(--evk-bg-tertiary, #2C2C2E);
}

[data-theme="dark"] .evk-comment-list .children .comment-body {
	background: var(--evk-bg-secondary, #1C1C1E);
}

[data-theme="dark"] .evk-comments .comment-form input[type="text"]:focus,
[data-theme="dark"] .evk-comments .comment-form input[type="email"]:focus,
[data-theme="dark"] .evk-comments .comment-form input[type="url"]:focus,
[data-theme="dark"] .evk-comments .comment-form textarea:focus {
	background: var(--evk-bg-tertiary, #2C2C2E);
	box-shadow: 0 0 0 3px rgba(0, 230, 118, 0.15);
}

/* Comments responsive */
@media (max-width: 600px) {
	.evk-comments {
		padding: var(--evk-space-md, 16px);
		border-radius: var(--evk-radius-sm, 8px);
	}

	.evk-comment-list .comment-body {
		grid-template-columns: 36px 1fr;
		padding: var(--evk-space-md, 16px);
	}

	.evk-comment-list .comment-body .comment-author .avatar {
		width: 36px;
		height: 36px;
	}

	.evk-comment-list .children {
		margin-left: var(--evk-space-md, 16px);
		padding-left: var(--evk-space-sm, 8px);
	}
}

/* ==========================================================================
   Enhanced Post Navigation
   ========================================================================== */

.evk-post-nav {
	margin: 2.5rem 0;
}

.evk-post-nav__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
}

.evk-post-nav__card {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1.25rem;
	border-radius: 14px;
	background: var(--evk-card-bg, #ffffff);
	border: 1px solid var(--evk-border, rgba(0, 0, 0, 0.06));
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	text-decoration: none;
	color: inherit;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.evk-post-nav__card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.evk-post-nav__card--empty {
	visibility: hidden;
}

.evk-post-nav__card--next {
	text-align: right;
	justify-content: flex-end;
}

.evk-post-nav__card--next .evk-post-nav__info {
	align-items: flex-end;
}

/* Mirror the arrow icon for prev */
.evk-post-nav__card--prev .evk-post-nav__label .evk-icon {
	transform: scaleX(-1);
}

.evk-post-nav__thumb {
	flex-shrink: 0;
	width: 64px;
	height: 64px;
	border-radius: 10px;
	overflow: hidden;
}

.evk-post-nav__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.evk-post-nav__info {
	display: flex;
	flex-direction: column;
	gap: 0.3rem;
	flex: 1;
	min-width: 0;
}

.evk-post-nav__label {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--evk-primary, #00a86b);
}

.evk-post-nav__title {
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--evk-heading-color, #1a1a2e);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.evk-post-nav__meta {
	font-size: 0.78rem;
	color: var(--evk-text-muted, #5a5a6e);
	line-height: 1.4;
}

/* Post navigation dark mode */
[data-theme="dark"] .evk-post-nav__card,
.dark .evk-post-nav__card {
	background: var(--evk-card-bg-dark, #1e1e2e);
	border-color: var(--evk-border-dark, rgba(255, 255, 255, 0.08));
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

[data-theme="dark"] .evk-post-nav__card:hover,
.dark .evk-post-nav__card:hover {
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35);
}

[data-theme="dark"] .evk-post-nav__title,
.dark .evk-post-nav__title {
	color: var(--evk-heading-color-dark, #e8e8f0);
}

[data-theme="dark"] .evk-post-nav__meta,
.dark .evk-post-nav__meta {
	color: var(--evk-text-muted-dark, #a0a0b8);
}

/* Post navigation responsive */
@media (max-width: 640px) {
	.evk-post-nav__grid {
		grid-template-columns: 1fr;
	}

	.evk-post-nav__card--next {
		text-align: left;
		justify-content: flex-start;
		flex-direction: row-reverse;
	}

	.evk-post-nav__card--next .evk-post-nav__info {
		align-items: flex-start;
	}
}

/* ==========================================================================
   Widget Title Styling
   ========================================================================== */

.widget-title,
.evk-widget-title {
	font-family: var(--evk-heading-font);
	font-size: 1.1em;
	font-weight: 600;
	padding-bottom: var(--evk-space-sm);
	border-bottom: 2px solid var(--evk-accent);
	margin-bottom: var(--evk-space-md);
}

/* ==========================================================================
   Mobile Responsive — Header
   ========================================================================== */

@media (max-width: 768px) {
	.evk-hamburger {
		display: flex;
	}

	.evk-nav {
		display: none;
	}

	.evk-header .evk-search-form {
		display: none;
	}

	.evk-header__main {
		flex-direction: row;
		justify-content: space-between;
	}
}

/* ==========================================================================
   Single Post Layouts
   ========================================================================== */

/* Reading progress bar */
.evk-reading-progress {
	position: fixed;
	top: 0;
	left: 0;
	width: 0%;
	height: 3px;
	background: var(--evk-progress-color, var(--evk-cat-color, var(--evk-accent, #00C853)));
	z-index: 9999;
	transition: width 80ms linear;
}

/* Article base */
.evk-single-post {
	--evk-content-font-size: clamp(1.05rem, 0.95rem + 0.25vw, 1.2rem);
	--evk-content-line-height: 1.8;
}

/* CENTER layout */
.evk-single-post__image {
	margin-bottom: var(--evk-space-lg, 2rem);
	border-radius: var(--evk-card-radius, 12px);
	overflow: hidden;
}
.evk-single-post__featured-img {
	width: 100%;
	height: auto;
	display: block;
}
.evk-single-post__header--center {
	text-align: center;
	margin-bottom: var(--evk-space-lg, 2rem);
}
.evk-single-post__header--center .evk-single-post__meta {
	justify-content: center;
}

/* HERO layout */
.evk-single-post__hero {
	position: relative;
	border-radius: var(--evk-card-radius, 12px);
	overflow: hidden;
	margin-bottom: var(--evk-space-xl, 2.5rem);
	min-height: 420px;
	display: flex;
	align-items: flex-end;
}
.evk-single-post__hero-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.evk-single-post__hero-overlay {
	position: relative;
	z-index: 2;
	width: 100%;
	background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,.35) 50%, transparent 100%);
	padding: var(--evk-space-xl, 2.5rem) var(--evk-space-lg, 2rem) var(--evk-space-lg, 2rem);
}
.evk-single-post__hero-content {
	max-width: 780px;
}
.evk-single-post__hero-content h1,
.evk-single-post__hero-content .evk-single-post__title {
	color: #fff;
	text-shadow: 0 2px 8px rgba(0,0,0,.3);
}
.evk-single-post__meta--hero,
.evk-single-post__meta--hero a,
.evk-single-post__meta--hero time,
.evk-single-post__meta--hero .evk-single-post__meta-item {
	color: rgba(255,255,255,.9);
}
.evk-single-post__meta--hero .evk-single-post__meta-sep {
	background: rgba(255,255,255,.4);
}

/* FULL COVER layout — edge-to-edge image, content + sidebar below */
.evk-single-post__full-cover {
	position: relative;
	width: 100%;
	min-height: clamp(380px, 50vh, 600px);
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	margin-bottom: 0;
}
.evk-single-post__full-cover-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}
.evk-single-post__full-cover-overlay {
	position: relative;
	z-index: 2;
	width: 100%;
	background: linear-gradient(to top,
		rgba(0,0,0,.88) 0%,
		rgba(0,0,0,.72) 35%,
		rgba(0,0,0,.38) 65%,
		rgba(0,0,0,.12) 85%,
		transparent 100%
	);
	padding: 3.5rem 0 2.5rem;
}
.evk-single-post__full-cover-inner {
	max-width: var(--evk-content-width);
	margin: 0 auto;
}
.evk-single-post__full-cover .evk-single-post__title {
	color: #fff;
	font-size: clamp(2rem, 1.5rem + 2vw, 3.25rem);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.025em;
	text-shadow: 0 1px 3px rgba(0,0,0,.6), 0 4px 16px rgba(0,0,0,.35);
	margin: 0.3em 0 0.6em;
	max-width: 820px;
}
.evk-single-post__full-cover .evk-single-post__cats {
	margin-bottom: 0.5rem;
}
.evk-single-post__full-cover .evk-category-badge {
	font-size: 0.75rem;
	padding: 4px 14px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}
.evk-single-post__full-cover .evk-breadcrumbs,
.evk-single-post__full-cover .evk-breadcrumbs a,
.evk-single-post__full-cover .evk-breadcrumbs span {
	color: rgba(255,255,255,.7);
	text-shadow: 0 1px 3px rgba(0,0,0,.5);
}
.evk-single-post__full-cover .evk-breadcrumbs a:hover {
	color: #fff;
}
.evk-single-post__full-cover .evk-breadcrumbs {
	margin-bottom: var(--evk-space-md, 1.25rem);
}
.evk-single-post__meta--full,
.evk-single-post__meta--full a,
.evk-single-post__meta--full time,
.evk-single-post__meta--full .evk-single-post__meta-item {
	color: rgba(255,255,255,.9);
	text-shadow: 0 1px 4px rgba(0,0,0,.5);
}
.evk-single-post__meta--full .evk-single-post__meta-sep {
	background: rgba(255,255,255,.4);
}
.evk-single-post__meta--full .evk-single-post__meta-author {
	font-weight: 600;
	color: #fff;
}
.evk-single-post__meta--full .evk-single-post__avatar {
	border: 2px solid rgba(255,255,255,.3);
	box-shadow: 0 2px 8px rgba(0,0,0,.3);
}

@media (max-width: 768px) {
	.evk-single-post__full-cover {
		min-height: clamp(300px, 45vh, 420px);
	}
	.evk-single-post__full-cover-overlay {
		padding: 2rem 0 1.5rem;
	}
}

/* SPLIT layouts (left-image / right-image) */
.evk-single-post__split {
	display: grid;
	gap: var(--evk-space-lg, 2rem);
	margin-bottom: var(--evk-space-xl, 2.5rem);
	align-items: center;
}
.evk-single-post__split--left-image,
.evk-single-post__split--right-image {
	grid-template-columns: 1fr 1fr;
}
.evk-single-post__split-image {
	border-radius: var(--evk-card-radius, 12px);
	overflow: hidden;
}
.evk-single-post__split-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	aspect-ratio: 4 / 3;
}
.evk-single-post__split-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--evk-space-sm, 0.75rem);
}

@media (max-width: 768px) {
	.evk-single-post__split--left-image,
	.evk-single-post__split--right-image {
		grid-template-columns: 1fr;
	}
	.evk-single-post__split--right-image .evk-single-post__split-image {
		order: -1;
	}
	.evk-single-post__hero {
		min-height: 300px;
	}
}

/* Title */
.evk-single-post__title {
	font-size: clamp(1.75rem, 1.25rem + 1.5vw, 2.75rem);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.02em;
	margin: 0.25em 0 0.5em;
}

/* Category badges */
.evk-single-post__cats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 0.25rem;
}
.evk-category-badge {
	display: inline-block;
	padding: 0.25em 0.75em;
	border-radius: 100px;
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none;
	background-color: var(--evk-badge-color, #00C853);
	color: #fff;
	transition: opacity 0.2s ease;
}
.evk-category-badge:hover,
.evk-category-badge:focus {
	color: #fff;
	opacity: 0.85;
}

/* Meta section */
.evk-single-post__meta {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: wrap;
}
.evk-single-post__meta-avatar {
	flex-shrink: 0;
	text-decoration: none;
}
.evk-single-post__avatar {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid var(--evk-cat-color, var(--evk-accent, #00C853));
}
.evk-single-post__meta-items {
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
}
.evk-single-post__meta-author {
	font-weight: 600;
	font-size: 0.9rem;
	color: inherit;
	text-decoration: none;
}
.evk-single-post__meta-author:hover {
	color: var(--evk-cat-color, var(--evk-accent, #00C853));
}
.evk-single-post__meta-details {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.8rem;
	color: var(--evk-text-muted, #6b7280);
}
.evk-single-post__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
}
.evk-single-post__meta-item .evk-icon {
	opacity: 0.65;
}
.evk-single-post__meta-sep {
	display: inline-block;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: var(--evk-text-muted, #9ca3af);
	flex-shrink: 0;
}

/* Article content card */
.evk-single-post__article-card {
	background: var(--evk-card-bg, #fff);
	border-radius: var(--evk-card-radius, 12px);
	box-shadow: 0 1px 3px rgba(0,0,0,.06), 0 4px 16px rgba(0,0,0,.04);
	padding: var(--evk-space-xl, 2.5rem) var(--evk-space-lg, 2rem);
	margin: var(--evk-space-lg, 2rem) 0;
}
[data-theme="dark"] .evk-single-post__article-card {
	background: var(--evk-card-bg, #1e1e2e);
	box-shadow: 0 1px 3px rgba(0,0,0,.2), 0 4px 16px rgba(0,0,0,.15);
}

/* Content typography */
.evk-single-post__content {
	font-size: var(--evk-content-font-size, 1.1rem);
	line-height: var(--evk-content-line-height, 1.8);
	color: var(--evk-text-primary, #1a1a2e);
}
[data-theme="dark"] .evk-single-post__content {
	color: var(--evk-text-primary, #e0e0e0);
}
.evk-single-post__content p {
	margin-bottom: 1.5em;
}
.evk-single-post__content a {
	color: var(--evk-cat-color, var(--evk-accent, #00C853));
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
	transition: color 0.2s ease;
}
.evk-single-post__content a:hover {
	color: var(--evk-cat-color, var(--evk-accent, #00C853));
	filter: brightness(0.85);
}

/* Blockquotes */
.evk-single-post__content blockquote {
	margin: 2em 0;
	padding: 1.25em 1.5em;
	border-left: 4px solid var(--evk-cat-color, var(--evk-accent, #00C853));
	background: var(--evk-bg-subtle, rgba(0,0,0,.02));
	border-radius: 0 var(--evk-card-radius, 8px) var(--evk-card-radius, 8px) 0;
	font-style: italic;
	font-size: 1.05em;
	color: var(--evk-text-secondary, #374151);
}
[data-theme="dark"] .evk-single-post__content blockquote {
	background: rgba(255,255,255,.04);
	color: var(--evk-text-secondary, #c0c0c0);
}
.evk-single-post__content blockquote p:last-child {
	margin-bottom: 0;
}

/* Images in content */
.evk-single-post__content img {
	border-radius: var(--evk-card-radius, 8px);
	max-width: 100%;
	height: auto;
}

/* Headings in content */
.evk-single-post__content h2,
.evk-single-post__content h3,
.evk-single-post__content h4 {
	margin-top: 2em;
	margin-bottom: 0.75em;
	line-height: 1.3;
}

/* Tags */
.evk-single-post__footer {
	margin-top: var(--evk-space-lg, 2rem);
}
.evk-post-tags {
	margin-bottom: var(--evk-space-md, 1.5rem);
}
.evk-tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.evk-tag-pill {
	display: inline-block;
	padding: 0.3em 0.85em;
	border-radius: 100px;
	font-size: 0.8rem;
	font-weight: 500;
	text-decoration: none;
	background: var(--evk-bg-subtle, #f3f4f6);
	color: var(--evk-text-secondary, #4b5563);
	border: 1px solid var(--evk-border, #e5e7eb);
	transition: background 0.2s ease, color 0.2s ease;
}
.evk-tag-pill:hover {
	background: var(--evk-cat-color, var(--evk-accent, #00C853));
	color: #fff;
	border-color: transparent;
}

/* ==========================================================================
   Vehicle Spec Tabs
   ========================================================================== */

/* ---- Tab bar (desktop) ---- */
.evk-spec-tabs {
	display: flex;
	gap: var(--evk-space-xs, 4px);
	overflow-x: auto;

	scrollbar-width: none;
	border-bottom: 2px solid var(--evk-border, rgba(0,0,0,.08));
	margin-bottom: var(--evk-space-lg, 24px);
}
.evk-spec-tabs::-webkit-scrollbar {
	display: none;
}

.evk-spec-tab {
	position: relative;
	padding: 0.75rem 1.25rem;
	font-size: 0.88rem;
	font-weight: 500;
	font-family: var(--evk-body-font, 'Inter', sans-serif);
	color: var(--evk-text-secondary, #6E6E73);
	background: transparent;
	border: none;
	cursor: pointer;
	white-space: nowrap;
	transition: color 0.25s ease;
}
.evk-spec-tab::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 3px;
	border-radius: 3px 3px 0 0;
	background: var(--evk-accent, #00C853);
	transform: scaleX(0);
	transition: transform 0.25s ease;
}
.evk-spec-tab:hover {
	color: var(--evk-text, #1D1D1F);
}
.evk-spec-tab--active {
	color: var(--evk-accent, #00C853);
	font-weight: 600;
}
.evk-spec-tab--active::after {
	transform: scaleX(1);
}

/* ---- Tab panels ---- */
.evk-spec-panel {
	display: none;
}
.evk-spec-panel--active {
	display: block;
	animation: evkFadeIn 0.3s ease;
}
@keyframes evkFadeIn {
	from { opacity: 0; transform: translateY(6px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* ---- Glassmorphic spec card ---- */
.evk-spec-card {
	background: var(--evk-glass-bg, rgba(255,255,255,.72));
	backdrop-filter: blur(var(--evk-glass-blur, 20px));
	-webkit-backdrop-filter: blur(var(--evk-glass-blur, 20px));
	border: 1px solid var(--evk-border, rgba(0,0,0,.08));
	border-radius: var(--evk-radius, 16px);
	padding: var(--evk-space-lg, 24px);
	margin-bottom: var(--evk-space-lg, 24px);
	box-shadow: var(--evk-shadow, 0 2px 12px rgba(0,0,0,.08));
}
[data-theme="dark"] .evk-spec-card {
	background: rgba(30,30,30,.60);
	border-color: rgba(255,255,255,.08);
}

/* Spec sections inside cards: tighter spacing */
.evk-spec-card .evk-spec-section {
	margin-bottom: var(--evk-space-lg, 24px);
}
.evk-spec-card .evk-spec-section:last-child {
	margin-bottom: 0;
}
.evk-spec-card .evk-spec-section__title {
	font-size: 1.1rem;
	color: var(--evk-accent, #00C853);
	border-bottom-color: var(--evk-accent-ring, rgba(0,200,83,.15));
}

/* Grouped specs container */
.evk-specs-grouped {
	margin-top: var(--evk-space-lg, 24px);
}

/* ---- Accordion (mobile) ---- */
.evk-spec-accordion-header {
	display: none;
}

@media (max-width: 768px) {
	.evk-spec-tabs {
		display: none;
	}

	.evk-spec-accordion-header {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0.85rem 1rem;
		font-size: 0.92rem;
		font-weight: 600;
		color: var(--evk-text, #1D1D1F);
		background: var(--evk-glass-bg, rgba(255,255,255,.72));
		backdrop-filter: blur(var(--evk-glass-blur, 20px));
		-webkit-backdrop-filter: blur(var(--evk-glass-blur, 20px));
		border: 1px solid var(--evk-border, rgba(0,0,0,.08));
		border-radius: var(--evk-radius-sm, 8px);
		margin-bottom: var(--evk-space-xs, 4px);
		cursor: pointer;
		transition: background 0.2s ease;
	}
	[data-theme="dark"] .evk-spec-accordion-header {
		background: rgba(30,30,30,.60);
		color: var(--evk-text, #e5e5e5);
		border-color: rgba(255,255,255,.08);
	}
	.evk-spec-accordion-header:hover {
		background: var(--evk-bg-secondary, #F5F5F7);
	}
	[data-theme="dark"] .evk-spec-accordion-header:hover {
		background: rgba(255,255,255,.06);
	}

	/* Chevron */
	.evk-spec-accordion-header::after {
		content: '';
		display: inline-block;
		width: 8px;
		height: 8px;
		border-right: 2px solid currentColor;
		border-bottom: 2px solid currentColor;
		transform: rotate(45deg);
		transition: transform 0.25s ease;
		flex-shrink: 0;
		margin-left: 0.75rem;
	}
	.evk-spec-accordion-header[aria-expanded="true"]::after {
		transform: rotate(-135deg);
	}

	/* Panels start hidden; toggle via JS */
	.evk-spec-panel {
		display: none;
		overflow: hidden;
	}
	.evk-spec-panel--active {
		display: block;
		animation: evkSlideDown 0.3s ease;
	}
	@keyframes evkSlideDown {
		from { opacity: 0; max-height: 0; }
		to   { opacity: 1; max-height: 2000px; }
	}
}

/* ==========================================================================
   Comparison Table — see full block below (~line 3900+)
   ========================================================================== */

/* ==========================================================================
   Mobile FAB — Compare Button
   ========================================================================== */
.evk-compare-fab {
	position: fixed;
	bottom: 24px;
	right: 24px;
	z-index: 900;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	border: none;
	background: var(--evk-accent, #00C853);
	color: #fff;
	box-shadow: 0 4px 16px rgba(0, 200, 83, 0.4);
	cursor: pointer;
	display: none;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.evk-compare-fab:hover {
	transform: scale(1.08);
	box-shadow: 0 6px 24px rgba(0, 200, 83, 0.5);
}
.evk-compare-fab:active {
	transform: scale(0.96);
}
.evk-compare-fab svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

/* Count badge */
.evk-compare-fab__badge {
	position: absolute;
	top: -4px;
	right: -4px;
	min-width: 20px;
	height: 20px;
	border-radius: 10px;
	background: #FF3D00;
	color: #fff;
	font-size: 0.7rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 5px;
	line-height: 1;
}

/* Show on mobile when there are items */
@media (max-width: 768px) {
	.evk-compare-fab--visible {
		display: flex;
	}
}

[data-theme="dark"] .evk-compare-fab {
	box-shadow: 0 4px 16px rgba(0, 200, 83, 0.25);
}
[data-theme="dark"] .evk-compare-fab:hover {
	box-shadow: 0 6px 24px rgba(0, 200, 83, 0.35);
}

/* ==========================================================================
   Charging Station Archive
   ========================================================================== */

.evk-cs-archive-map {
	width: 100%;
	height: 600px;
	border-radius: var(--evk-radius-lg, 12px);
	overflow: hidden;
	margin-bottom: var(--evk-space-xl);
	border: 1px solid var(--evk-border);
}

.evk-cs-archive-header {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: var(--evk-space-sm);
	margin-bottom: var(--evk-space-lg);
}

.evk-cs-archive-header__count {
	font-size: 1rem;
	font-weight: 400;
	color: var(--evk-text-secondary);
}

.evk-cs-filter-bar {
	display: flex;
	flex-wrap: wrap;
	gap: var(--evk-space-sm);
	margin-bottom: var(--evk-space-xl);
	padding: var(--evk-space-md);
	background: var(--evk-glass-bg, rgba(255, 255, 255, 0.06));
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-md, 8px);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.evk-cs-filter-bar .evk-filter-select {
	flex: 1 1 200px;
	min-width: 0;
}

[data-theme="dark"] .evk-cs-filter-bar {
	background: rgba(255, 255, 255, 0.04);
	border-color: rgba(255, 255, 255, 0.1);
}

@media (max-width: 600px) {
	.evk-cs-archive-map {
		height: 350px;
		border-radius: var(--evk-radius-md, 8px);
	}

	.evk-cs-filter-bar {
		flex-direction: column;
	}

	.evk-cs-filter-bar .evk-filter-select {
		flex: 1 1 100%;
	}
}

/* ==========================================================================
   Charging Station Single
   ========================================================================== */

.evk-cs-hero {
	position: relative;
	padding: var(--evk-space-2xl) 0 var(--evk-space-xl);
	margin-bottom: var(--evk-space-xl);
}

.evk-cs-hero__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--evk-space-md);
}

.evk-cs-hero__title {
	font-size: clamp(1.5rem, 4vw, 2.25rem);
	margin: 0;
	line-height: 1.2;
}

.evk-cs-hero__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--evk-space-sm);
	margin-top: var(--evk-space-xs);
	color: var(--evk-text-secondary);
	font-size: 0.95rem;
}

.evk-cs-status-badge {
	display: inline-flex;
	align-items: center;
	gap: 0.35em;
	font-weight: 600;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.evk-cs-status-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	display: inline-block;
	flex-shrink: 0;
}

.evk-cs-map {
	height: 350px;
	border-radius: var(--evk-radius-lg, 12px);
	overflow: hidden;
	margin-bottom: var(--evk-space-xl);
	border: 1px solid var(--evk-border);
}

.evk-cs-details-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: var(--evk-space-lg);
	margin-bottom: var(--evk-space-xl);
}

.evk-cs-detail-row {
	display: flex;
	align-items: flex-start;
	gap: var(--evk-space-sm);
	padding: var(--evk-space-sm) 0;
}

.evk-cs-detail-row + .evk-cs-detail-row {
	border-top: 1px solid var(--evk-border);
}

.evk-cs-detail-row__icon {
	flex-shrink: 0;
	color: var(--evk-primary);
	margin-top: 2px;
}

.evk-cs-detail-row__label {
	font-size: 0.8rem;
	color: var(--evk-text-secondary);
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 2px;
}

.evk-cs-detail-row__value {
	font-weight: 600;
	color: var(--evk-text);
}

.evk-cs-connector-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: var(--evk-space-sm);
}

.evk-cs-connector-chip {
	display: flex;
	align-items: center;
	gap: var(--evk-space-xs);
	padding: var(--evk-space-sm) var(--evk-space-md);
	background: var(--evk-glass-bg, rgba(255, 255, 255, 0.06));
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-md, 8px);
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--evk-text);
}

.evk-cs-connector-chip svg {
	color: var(--evk-primary);
}

.evk-cs-amenities-list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--evk-space-sm);
	list-style: none;
	padding: 0;
	margin: 0;
}

.evk-cs-amenities-list li {
	display: inline-flex;
	align-items: center;
	gap: var(--evk-space-xs);
	padding: var(--evk-space-xs) var(--evk-space-md);
	background: var(--evk-glass-bg, rgba(255, 255, 255, 0.06));
	border: 1px solid var(--evk-border);
	border-radius: var(--evk-radius-full, 999px);
	font-size: 0.85rem;
	color: var(--evk-text);
}

.evk-cs-contact-link {
	display: inline-flex;
	align-items: center;
	gap: var(--evk-space-xs);
	color: var(--evk-primary);
	text-decoration: none;
	font-weight: 500;
	transition: opacity 0.2s;
}

.evk-cs-contact-link:hover {
	opacity: 0.8;
	text-decoration: underline;
}

/* Charging station single dark mode */
[data-theme="dark"] .evk-cs-connector-chip,
[data-theme="dark"] .evk-cs-amenities-list li {
	background: rgba(255, 255, 255, 0.05);
	border-color: rgba(255, 255, 255, 0.1);
}

@media (max-width: 600px) {
	.evk-cs-details-grid {
		grid-template-columns: 1fr;
	}

	.evk-cs-map {
		height: 250px;
	}

	.evk-cs-connector-grid {
		grid-template-columns: 1fr 1fr;
	}
}

/* ==========================================================================
   Vehicle Comparison Table
   ========================================================================== */

/* ---- Wrapper ---- */
.evk-compare-wrapper {
	position: relative;
	border-radius: var(--evk-card-radius, 12px);
	overflow: hidden;
}

/* ---- Table ---- */
.evk-compare-table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	font-size: 0.92rem;
}

.evk-compare-table th,
.evk-compare-table td {
	padding: 0.75rem 1rem;
	text-align: left;
	border-bottom: 1px solid var(--evk-border, rgba(0,0,0,.08));
	vertical-align: middle;
}

/* ---- Sticky header row ---- */
.evk-compare-table thead {
	position: sticky;
	top: 0;
	z-index: 20;
}

.evk-compare-table thead th,
.evk-compare-table thead td {
	background: var(--evk-bg-glass, rgba(255,255,255,.72));
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border-bottom: 2px solid var(--evk-border, rgba(0,0,0,.1));
	padding: 1rem;
}

[data-theme="dark"] .evk-compare-table thead th,
[data-theme="dark"] .evk-compare-table thead td {
	background: rgba(30,30,30,.82);
}

/* ---- Vehicle header cell ---- */
.evk-compare-vehicle-header {
	text-align: center;
	min-width: 160px;
	max-width: 240px;
	border-left: 1px solid var(--evk-border, rgba(0,0,0,.08));
	padding: 1.25rem 1rem;
	vertical-align: top;
}

.evk-compare-vehicle-header:last-child {
	border-right: 1px solid var(--evk-border, rgba(0,0,0,.08));
}

.evk-compare-vehicle-thumb {
	width: 120px;
	height: 72px;
	object-fit: cover;
	border-radius: var(--evk-card-radius, 8px);
	margin: 0 auto 0.5rem;
	display: block;
}

.evk-compare-vehicle-title {
	display: block;
	font-weight: 600;
	font-size: 0.95rem;
	color: var(--evk-text-primary, #111);
	text-decoration: none;
	transition: color 0.2s ease;
	margin-bottom: 0.35rem;
	line-height: 1.3;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.evk-compare-vehicle-title:hover {
	color: var(--evk-accent, #00C853);
}

/* Compare badge — sits below title, never overlaps */
.evk-compare-badge {
	display: inline-block;
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	line-height: 1;
	padding: 0.25em 0.65em;
	border-radius: 4px;
	color: #fff;
	background: var(--evk-accent, #00C853);
}

.evk-compare-badge--electric {
	background: #00C853;
}

.evk-compare-badge--hybrid {
	background: #FF9800;
}

.evk-compare-badge--phev {
	background: #2196F3;
}

/* ---- Zebra striping for spec rows ---- */
.evk-compare-table tbody tr:not(.evk-compare-section-title):nth-child(even) {
	background: var(--evk-bg-subtle, rgba(0,0,0,.02));
}

[data-theme="dark"] .evk-compare-table tbody tr:not(.evk-compare-section-title):nth-child(even) {
	background: rgba(255,255,255,.02);
}

/* ---- Value cells separation ---- */
.evk-compare-table tbody td {
	border-left: 1px solid var(--evk-border, rgba(0,0,0,.05));
}

.evk-compare-table tbody td:last-child {
	border-right: 1px solid var(--evk-border, rgba(0,0,0,.05));
}

/* ---- Section title row ---- */
.evk-compare-section-title td {
	background: var(--evk-bg-subtle, #f9fafb);
	font-weight: 700;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--evk-accent, #00C853);
	padding: 0.6rem 1rem;
}

[data-theme="dark"] .evk-compare-section-title td {
	background: rgba(255,255,255,.04);
}

/* ---- Winner / loser cells ---- */
.evk-compare--best {
	background: rgba(0, 200, 83, 0.10);
	font-weight: 600;
}

.evk-compare--worst {
	background: rgba(239, 68, 68, 0.08);
}

[data-theme="dark"] .evk-compare--best {
	background: rgba(0, 200, 83, 0.14);
}

[data-theme="dark"] .evk-compare--worst {
	background: rgba(239, 68, 68, 0.12);
}

/* ---- Field name column ---- */
.evk-compare-table tbody th {
	font-weight: 500;
	color: var(--evk-text-secondary, #6b7280);
	white-space: nowrap;
	background: var(--evk-bg, #fff);
	position: sticky;
	left: 0;
	z-index: 10;
}

[data-theme="dark"] .evk-compare-table tbody th {
	background: var(--evk-bg, #1a1a1a);
}

/* ---- Glassmorphic card wrapper ---- */
.evk-compare-glass {
	background: var(--evk-bg-glass, rgba(255,255,255,.60));
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1px solid var(--evk-border, rgba(0,0,0,.08));
	border-radius: var(--evk-card-radius, 12px);
	overflow: hidden;
}

[data-theme="dark"] .evk-compare-glass {
	background: rgba(30,30,30,.60);
	border-color: rgba(255,255,255,.08);
}

/* ---- Comparison table responsive ---- */
@media (max-width: 768px) {
	.evk-compare-scroll {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.evk-compare-table {
		min-width: 600px;
	}

	.evk-compare-table thead th:first-child,
	.evk-compare-table thead td:first-child {
		position: sticky;
		left: 0;
		z-index: 25;
	}

	/* Sticky first column (spec names) on mobile */
	.evk-compare-table tbody th {
		position: sticky;
		left: 0;
		z-index: 10;
		background: var(--evk-bg, #fff);
		min-width: 120px;
		box-shadow: 2px 0 4px rgba(0,0,0,.06);
	}

	[data-theme="dark"] .evk-compare-table tbody th {
		background: var(--evk-bg, #1a1a1a);
		box-shadow: 2px 0 4px rgba(0,0,0,.2);
	}

	.evk-compare-vehicle-thumb {
		width: 80px;
		height: 48px;
	}
}

/* ---- Compare bar count badge ---- */
.evk-compare-bar__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	padding: 0.15em 0.5em;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	background: var(--evk-accent, #00C853);
	border-radius: 999px;
	margin-left: 0.5rem;
}

/* ---- Single vehicle compare button states ---- */
.evk-compare-single-btn.is-added {
	background: var(--evk-accent, #00C853);
	color: #fff;
	border-color: var(--evk-accent, #00C853);
}

/* ---- Compare more CTA section ---- */
.evk-compare-cta {
	text-align: center;
	padding: 2rem 1rem;
	margin-top: 1.5rem;
}

.evk-compare-cta__count {
	font-size: 0.95rem;
	color: var(--evk-text-secondary, #6b7280);
	margin-bottom: 1rem;
}

.evk-compare-cta__count strong {
	color: var(--evk-text-primary, #111);
}

.evk-compare-cta .evk-btn {
	margin-top: 0.5rem;
}

/* ==========================================================================
   Author Box
   ========================================================================== */

.evk-author-box {
	position: relative;
	margin: 2.5rem 0;
	padding: 2px;
	border-radius: 16px;
	background: linear-gradient(135deg, var(--evk-primary, #00a86b), var(--evk-secondary, #0077cc), var(--evk-primary, #00a86b));
	background-size: 200% 200%;
	animation: evk-author-gradient 6s ease infinite;
}

@keyframes evk-author-gradient {
	0%, 100% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
}

.evk-author-box__inner {
	position: relative;
	padding: 1.75rem;
	border-radius: 14px;
	background: var(--evk-card-bg, #ffffff);
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06), 0 1px 4px rgba(0, 0, 0, 0.04);
}

.evk-author-box__badge {
	position: absolute;
	top: 1rem;
	right: 1rem;
	padding: 0.2rem 0.65rem;
	font-size: 0.7rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	line-height: 1.6;
	color: #fff;
	background: var(--evk-primary, #00a86b);
	border-radius: 20px;
}

.evk-author-box__layout {
	display: flex;
	gap: 1.5rem;
	align-items: flex-start;
}

.evk-author-box__avatar-wrap {
	flex-shrink: 0;
}

.evk-author-box__avatar {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	object-fit: cover;
	border: 3px solid var(--evk-primary, #00a86b);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.evk-author-box__content {
	flex: 1;
	min-width: 0;
}

.evk-author-box__name {
	margin: 0 0 0.35rem;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.3;
}

.evk-author-box__name a {
	color: var(--evk-heading-color, #1a1a2e);
	text-decoration: none;
	transition: color 0.2s ease;
}

.evk-author-box__name a:hover {
	color: var(--evk-primary, #00a86b);
}

.evk-author-box__bio {
	margin: 0 0 0.85rem;
	font-size: 0.92rem;
	line-height: 1.65;
	color: var(--evk-text-muted, #5a5a6e);
}

.evk-author-box__socials {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 0.85rem;
}

.evk-author-box__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--evk-surface, #f0f0f5);
	color: var(--evk-text-muted, #5a5a6e);
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.evk-author-box__social-link:hover {
	color: #fff;
	transform: translateY(-2px);
}

.evk-author-box__social-link--twitter:hover   { background: #1da1f2; }
.evk-author-box__social-link--facebook:hover  { background: #1877f2; }
.evk-author-box__social-link--instagram:hover { background: #e4405f; }
.evk-author-box__social-link--linkedin:hover  { background: #0a66c2; }
.evk-author-box__social-link--youtube:hover   { background: #ff0000; }
.evk-author-box__social-link--tiktok:hover    { background: #010101; }

.evk-author-box__view-all {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.85rem;
	font-weight: 600;
	color: var(--evk-primary, #00a86b);
	text-decoration: none;
	transition: gap 0.2s ease, color 0.2s ease;
}

.evk-author-box__view-all:hover {
	gap: 0.6rem;
	color: var(--evk-primary-dark, #008c59);
}

/* Author box dark mode */
[data-theme="dark"] .evk-author-box__inner,
.dark .evk-author-box__inner {
	background: var(--evk-card-bg-dark, #1e1e2e);
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
}

[data-theme="dark"] .evk-author-box__name a,
.dark .evk-author-box__name a {
	color: var(--evk-heading-color-dark, #e8e8f0);
}

[data-theme="dark"] .evk-author-box__bio,
.dark .evk-author-box__bio {
	color: var(--evk-text-muted-dark, #a0a0b8);
}

[data-theme="dark"] .evk-author-box__social-link,
.dark .evk-author-box__social-link {
	background: var(--evk-surface-dark, #2a2a3e);
	color: var(--evk-text-muted-dark, #a0a0b8);
}

[data-theme="dark"] .evk-author-box__avatar,
.dark .evk-author-box__avatar {
	border-color: var(--evk-primary, #00a86b);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

/* Author box responsive */
@media (max-width: 480px) {
	.evk-author-box__layout {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.evk-author-box__socials {
		justify-content: center;
	}

	.evk-author-box__badge {
		position: static;
		display: inline-block;
		margin-bottom: 1rem;
	}

	.evk-author-box__inner {
		text-align: center;
	}

	.evk-author-box__view-all {
		justify-content: center;
	}
}

/* ==========================================================================
   Charging Station Card
   ========================================================================== */

.evk-charging-card {
	padding: var(--evk-space-lg);
}

.evk-charging-card__status {
	position: static;
	display: inline-block;
	margin-bottom: var(--evk-space-sm);
}

.evk-charging-card__title {
	margin-bottom: var(--evk-space-xs);
}

.evk-charging-card__title a {
	color: var(--evk-text);
	text-decoration: none;
}

.evk-charging-card__operator {
	color: var(--evk-text-secondary);
	font-size: 0.875rem;
	margin-bottom: var(--evk-space-sm);
}

.evk-charging-card__address {
	display: flex;
	align-items: flex-start;
	gap: var(--evk-space-xs);
	margin-bottom: var(--evk-space-sm);
	color: var(--evk-text-secondary);
	font-size: 0.875rem;
}

.evk-charging-card__specs {
	display: flex;
	gap: var(--evk-space-md);
	flex-wrap: wrap;
	margin-top: var(--evk-space-md);
	font-size: 0.85rem;
}

.evk-charging-card__spec-label {
	color: var(--evk-text-secondary);
}

/* ==========================================================================
   Post Subtitle
   ========================================================================== */

.evk-single-post__subtitle {
	font-size: clamp(1.1rem, 0.9rem + 1vw, 1.45rem);
	font-weight: 400;
	font-style: italic;
	line-height: 1.5;
	color: var(--evk-text-secondary);
	max-width: 680px;
	margin: 0.3em 0 0.8em;
	letter-spacing: 0.01em;
}

.evk-single-post__header--center .evk-single-post__subtitle {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.evk-single-post__full-cover .evk-single-post__subtitle,
.evk-single-post__hero .evk-single-post__subtitle {
	color: rgba(255, 255, 255, 0.85);
	text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
}
