/**
 * Yadakban Custom Theme Stylesheet (theme.css)
 * RTL Persian Automotive Spare Parts E-Commerce Design System
 * Integrated with Car Parts for WooCommerce (CPW) & UserHub Pro
 */

/* 1. Font Face Declarations (YekanBakhFaNum) */
@font-face {
	font-family: 'YekanBakhFaNum';
	src: url('../fonts/bakh/woff2/YekanBakhFaNum-Light.woff2') format('woff2'),
	     url('../fonts/bakh/woff/YekanBakhFaNum-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'YekanBakhFaNum';
	src: url('../fonts/bakh/woff2/YekanBakhFaNum-Regular.woff2') format('woff2'),
	     url('../fonts/bakh/woff/YekanBakhFaNum-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'YekanBakhFaNum';
	src: url('../fonts/bakh/woff2/YekanBakhFaNum-SemiBold.woff2') format('woff2'),
	     url('../fonts/bakh/woff/YekanBakhFaNum-SemiBold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'YekanBakhFaNum';
	src: url('../fonts/bakh/woff2/YekanBakhFaNum-Bold.woff2') format('woff2'),
	     url('../fonts/bakh/woff/YekanBakhFaNum-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'YekanBakhFaNum';
	src: url('../fonts/bakh/woff2/YekanBakhFaNum-ExtraBold.woff2') format('woff2'),
	     url('../fonts/bakh/woff/YekanBakhFaNum-ExtraBold.woff') format('woff');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'YekanBakhFaNum';
	src: url('../fonts/bakh/woff2/YekanBakhFaNum-Black.woff2') format('woff2'),
	     url('../fonts/bakh/woff/YekanBakhFaNum-Black.woff') format('woff');
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

/* 2. CSS Variables & Reset */
:root {
	--yb-primary: #2563eb;
	--yb-primary-dark: #1d4ed8;
	--yb-primary-light: #eff6ff;
	--yb-navy: #0f172a;
	--yb-slate: #1e293b;
	--yb-accent: #ef4444;
	--yb-accent-soft: #fef2f2;
	--yb-success: #16a34a;
	--yb-success-soft: #f0fdf4;
	--yb-warning: #f59e0b;
	--yb-bg: #f4f6fb;
	--yb-surface: #ffffff;
	--yb-border: #e2e8f0;
	--yb-text: #0f172a;
	--yb-text-muted: #64748b;
	--yb-radius-sm: 10px;
	--yb-radius: 16px;
	--yb-radius-lg: 22px;
	--yb-shadow-sm: 0 4px 14px rgba(15, 23, 42, 0.05);
	--yb-shadow: 0 12px 32px rgba(15, 23, 42, 0.08);
	--yb-shadow-lg: 0 20px 48px rgba(15, 23, 42, 0.14);
	--yb-font: 'YekanBakhFaNum', Tahoma, sans-serif;
}

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

html {
	direction: rtl;
	scroll-behavior: smooth;
	-webkit-text-size-adjust: 100%;
}

body.yb-body {
	margin: 0;
	padding: 0;
	font-family: var(--yb-font);
	font-size: 15px;
	line-height: 1.75;
	color: var(--yb-text);
	background-color: var(--yb-bg);
	direction: rtl;
	text-align: right;
	overflow-x: hidden;
}

input,
button,
select,
textarea {
	font-family: var(--yb-font);
}

a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

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

.yb-container {
	width: 100%;
	max-width: 1380px;
	margin-inline: auto;
	padding-inline: 16px;
}

.yb-hide-desktop {
	display: none !important;
}

@media (max-width: 991px) {
	.yb-hide-mobile {
		display: none !important;
	}
	.yb-hide-desktop {
		display: flex !important;
	}
	body.yb-body {
		padding-bottom: 74px; /* Space for CPW mobile bottom nav */
	}
}

/* 3. Buttons & Badges */
.yb-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 11px 22px;
	border-radius: 12px;
	font-weight: 700;
	font-size: 14px;
	cursor: pointer;
	border: 1.5px solid transparent;
	text-align: center;
	white-space: nowrap;
}

.yb-btn-primary {
	background: linear-gradient(135deg, var(--yb-primary), var(--yb-primary-dark));
	color: #fff;
	box-shadow: 0 8px 20px rgba(37, 99, 235, 0.24);
}
.yb-btn-primary:hover {
	background: linear-gradient(135deg, var(--yb-primary-dark), #1e40af);
	color: #fff;
	transform: translateY(-1px);
}

.yb-btn-outline {
	background: #fff;
	color: var(--yb-primary);
	border-color: rgba(37, 99, 235, 0.35);
}
.yb-btn-outline:hover {
	background: var(--yb-primary-light);
	border-color: var(--yb-primary);
}

.yb-btn-white {
	background: #fff;
	color: var(--yb-navy);
}
.yb-btn-white:hover {
	background: #f8fafc;
	transform: translateY(-1px);
}

.yb-btn-glass {
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
	border-color: rgba(255, 255, 255, 0.35);
	backdrop-filter: blur(8px);
}
.yb-btn-glass:hover {
	background: rgba(255, 255, 255, 0.26);
	color: #fff;
}

.yb-btn-sm {
	padding: 7px 14px;
	font-size: 13px;
	border-radius: 10px;
}

.yb-btn-full {
	width: 100%;
}

/* 4. Header & Mega Menu */
.yb-site-header {
	position: sticky;
	top: 0;
	z-index: 1050;
	background: var(--yb-surface);
	border-bottom: 1px solid var(--yb-border);
	transition: box-shadow 0.25s ease;
}

.yb-site-header.is-scrolled {
	box-shadow: var(--yb-shadow);
}

.yb-topbar {
	background: var(--yb-navy);
	color: #e2e8f0;
	font-size: 12.5px;
	padding: 7px 0;
}

.yb-topbar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.yb-topbar-right,
.yb-topbar-left {
	display: flex;
	align-items: center;
	gap: 10px;
}

.yb-topbar-badge {
	background: linear-gradient(135deg, #2563eb, #3b82f6);
	color: #fff;
	font-weight: 700;
	padding: 2px 10px;
	border-radius: 999px;
	font-size: 11.5px;
}

.yb-topbar-left a {
	color: #cbd5e1;
	font-weight: 500;
}
.yb-topbar-left a:hover {
	color: #fff;
}

.yb-topbar-phone {
	color: #93c5fd !important;
	font-weight: 700 !important;
}

.yb-sep {
	opacity: 0.3;
}

.yb-header-main {
	padding: 14px 0;
	background: #fff;
}

.yb-header-main-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.yb-logo img {
	max-height: 52px;
	width: auto;
	object-fit: contain;
}

.yb-mobile-menu-trigger {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	border: 1px solid var(--yb-border);
	background: #f8fafc;
	color: var(--yb-navy);
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}

/* Search Bar */
.yb-header-search {
	flex: 1;
	max-width: 600px;
	position: relative;
}

.yb-search-form {
	display: flex;
	align-items: center;
	background: #f1f5f9;
	border: 1.5px solid #e2e8f0;
	border-radius: 14px;
	padding: 4px 12px 4px 4px;
	transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}

.yb-search-form:focus-within {
	background: #fff;
	border-color: var(--yb-primary);
	box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}

.yb-search-icon {
	color: var(--yb-text-muted);
	display: flex;
	align-items: center;
	margin-left: 8px;
}

.yb-search-input {
	flex: 1;
	border: none;
	background: transparent;
	font-size: 14px;
	color: var(--yb-text);
	padding: 8px 4px;
	outline: none;
}

.yb-search-submit {
	background: var(--yb-primary);
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 8px 18px;
	font-weight: 700;
	font-size: 13.5px;
	cursor: pointer;
}
.yb-search-submit:hover {
	background: var(--yb-primary-dark);
}

.yb-search-dropdown {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	left: 0;
	background: #fff;
	border-radius: 16px;
	border: 1px solid var(--yb-border);
	box-shadow: var(--yb-shadow-lg);
	z-index: 1200;
	padding: 12px;
	max-height: 440px;
	overflow-y: auto;
}

.yb-search-loading,
.yb-search-empty {
	padding: 16px;
	text-align: center;
	color: var(--yb-text-muted);
	font-size: 14px;
}

.yb-search-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid var(--yb-border);
}

.yb-search-tag {
	font-size: 12.5px;
	font-weight: 700;
	padding: 5px 12px;
	border-radius: 999px;
	background: var(--yb-primary-light);
	color: var(--yb-primary-dark);
}
.yb-search-tag:hover {
	background: var(--yb-primary);
	color: #fff;
}

.yb-search-results-list {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.yb-search-result-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 10px;
	border-radius: 12px;
}
.yb-search-result-item:hover {
	background: #f8fafc;
}

.yb-search-result-thumb img {
	width: 48px;
	height: 48px;
	border-radius: 10px;
	object-fit: cover;
	border: 1px solid var(--yb-border);
}

.yb-search-result-body {
	flex: 1;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.yb-search-result-title {
	font-size: 13.5px;
	color: var(--yb-text);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.yb-search-result-cars {
	font-size: 11.5px;
	color: var(--yb-text-muted);
}

.yb-search-result-price {
	font-weight: 800;
	font-size: 13px;
	color: var(--yb-primary-dark);
	white-space: nowrap;
}

.yb-search-view-all {
	display: block;
	text-align: center;
	margin-top: 10px;
	padding: 9px;
	border-radius: 10px;
	background: #f1f5f9;
	font-weight: 700;
	font-size: 13px;
	color: var(--yb-primary);
}

/* Header Actions */
.yb-header-actions {
	display: flex;
	align-items: center;
	gap: 12px;
}

.yb-header-call {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 6px 12px;
	border-radius: 12px;
	background: #f8fafc;
	border: 1px solid var(--yb-border);
}

.yb-header-call-icon {
	width: 36px;
	height: 36px;
	border-radius: 10px;
	background: var(--yb-primary-light);
	color: var(--yb-primary);
	display: flex;
	align-items: center;
	justify-content: center;
}

.yb-header-call-info {
	display: flex;
	flex-direction: column;
	line-height: 1.25;
}
.yb-header-call-info small {
	font-size: 11px;
	color: var(--yb-text-muted);
}
.yb-header-call-info strong {
	font-size: 13.5px;
	color: var(--yb-navy);
}

/* Account Dropdown (UserHub Pro Integration) */
.yb-account-wrap {
	position: relative;
}

.yb-account-btn {
	display: flex;
	align-items: center;
	gap: 8px;
	height: 44px;
	padding: 0 14px;
	border-radius: 12px;
	border: 1px solid var(--yb-border);
	background: #fff;
	font-weight: 700;
	font-size: 13.5px;
	color: var(--yb-navy);
}
.yb-account-btn:hover {
	border-color: var(--yb-primary);
	color: var(--yb-primary);
}

.yb-account-avatar {
	position: relative;
	display: flex;
	align-items: center;
}

.yb-account-badge {
	position: absolute;
	top: -6px;
	right: -6px;
	background: var(--yb-accent);
	color: #fff;
	font-style: normal;
	font-size: 10px;
	min-width: 17px;
	height: 17px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.yb-account-label {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
	text-align: right;
}
.yb-account-label strong {
	font-size: 13px;
	max-width: 120px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.yb-account-label small {
	font-size: 11px;
	color: var(--yb-success);
	font-weight: 700;
}

.yb-account-dropdown {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	width: 265px;
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: 16px;
	box-shadow: var(--yb-shadow-lg);
	padding: 14px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all 0.2s ease;
	z-index: 1150;
}

.yb-account-wrap:hover .yb-account-dropdown,
.yb-account-wrap:focus-within .yb-account-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.yb-account-dropdown-head {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid var(--yb-border);
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.yb-wallet-pill {
	display: inline-block;
	background: var(--yb-success-soft);
	color: var(--yb-success);
	font-size: 12px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 999px;
	align-self: flex-start;
}

.yb-account-guest-cta {
	margin-bottom: 10px;
}

.yb-account-links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.yb-account-links a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 10px;
	border-radius: 10px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--yb-slate);
}
.yb-account-links a:hover {
	background: var(--yb-primary-light);
	color: var(--yb-primary);
}

.yb-account-logout a {
	color: var(--yb-accent);
}
.yb-account-logout a:hover {
	background: var(--yb-accent-soft);
	color: var(--yb-accent);
}

/* Cart Button */
.yb-cart-btn {
	position: relative;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--yb-primary-light);
	color: var(--yb-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(37, 99, 235, 0.2);
}
.yb-cart-btn:hover {
	background: var(--yb-primary);
	color: #fff;
}

.yb-cart-count {
	position: absolute;
	top: -6px;
	left: -6px;
	min-width: 20px;
	height: 20px;
	padding: 0 5px;
	border-radius: 999px;
	background: var(--yb-accent);
	color: #fff;
	font-size: 11.5px;
	font-weight: 800;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.yb-mobile-search-wrap {
	margin-top: 10px;
	position: relative;
	flex-direction: column;
}

.yb-search-form--mobile {
	width: 100%;
}

/* Bottom Navigation Row & Mega Menu */
.yb-header-nav {
	background: #f8fafc;
	border-top: 1px solid var(--yb-border);
}

.yb-header-nav-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 48px;
}

.yb-header-nav-right {
	display: flex;
	align-items: center;
	gap: 20px;
}

.yb-mega-menu-wrap {
	position: relative;
}

.yb-mega-trigger {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--yb-primary);
	color: #fff;
	border: none;
	padding: 9px 16px;
	border-radius: 10px;
	font-weight: 700;
	font-size: 13.5px;
	cursor: pointer;
}

.yb-mega-panel {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	width: 920px;
	max-width: calc(100vw - 32px);
	background: #fff;
	border-radius: 18px;
	border: 1px solid var(--yb-border);
	box-shadow: var(--yb-shadow-lg);
	padding: 20px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: all 0.22s ease;
	z-index: 1120;
}

.yb-mega-menu-wrap:hover .yb-mega-panel,
.yb-mega-menu-wrap:focus-within .yb-mega-panel {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

.yb-mega-grid {
	display: grid;
	grid-template-columns: 1.7fr 1fr;
	gap: 24px;
}

.yb-mega-col-title {
	font-weight: 800;
	font-size: 14.5px;
	color: var(--yb-navy);
	margin-bottom: 14px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--yb-primary-light);
}

.yb-mega-parts-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	max-height: 380px;
	overflow-y: auto;
}

.yb-mega-part-card {
	background: #f8fafc;
	border: 1px solid var(--yb-border);
	border-radius: 12px;
	padding: 10px;
}

.yb-mega-part-head {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13.5px;
	color: var(--yb-navy);
}
.yb-mega-part-head img {
	width: 30px;
	height: 30px;
	object-fit: contain;
}

.yb-mega-sublist {
	list-style: none;
	margin: 8px 0 0;
	padding: 6px 0 0;
	border-top: 1px dashed var(--yb-border);
	font-size: 12px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}
.yb-mega-sublist a {
	color: var(--yb-text-muted);
}
.yb-mega-sublist a:hover {
	color: var(--yb-primary);
}

.yb-mega-cars-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
}

.yb-mega-car-chip {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 7px 10px;
	border-radius: 10px;
	border: 1px solid var(--yb-border);
	background: #f8fafc;
	font-size: 12.5px;
	font-weight: 700;
}
.yb-mega-car-chip:hover {
	border-color: var(--yb-primary);
	background: var(--yb-primary-light);
	color: var(--yb-primary);
}
.yb-mega-car-chip img {
	width: 24px;
	height: 24px;
	object-fit: contain;
}

.yb-mega-all-brands-btn {
	display: block;
	text-align: center;
	margin-top: 12px;
	padding: 9px;
	border-radius: 10px;
	background: var(--yb-primary-light);
	color: var(--yb-primary-dark);
	font-weight: 700;
	font-size: 13px;
}

.yb-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 6px;
}

.yb-nav-list a {
	display: inline-block;
	padding: 8px 12px;
	border-radius: 9px;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--yb-slate);
}
.yb-nav-list a:hover,
.yb-nav-list a.is-active {
	color: var(--yb-primary);
	background: var(--yb-primary-light);
}

.yb-installment-pill {
	display: inline-flex;
	align-items: center;
	padding: 6px 14px;
	border-radius: 999px;
	background: linear-gradient(135deg, #dbeafe, #eff6ff);
	color: #1e40af;
	font-weight: 800;
	font-size: 12.5px;
	border: 1px solid #bfdbfe;
}

/* 5. Mini-Cart Drawer */
.yb-mini-cart-drawer {
	position: fixed;
	inset: 0;
	z-index: 2000;
	pointer-events: none;
	visibility: hidden;
}

.yb-mini-cart-drawer.is-open {
	pointer-events: auto;
	visibility: visible;
}

.yb-mini-cart-backdrop {
	position: absolute;
	inset: 0;
	background: rgba(15, 23, 42, 0.55);
	border: none;
	opacity: 0;
	transition: opacity 0.25s ease;
	cursor: pointer;
}

.yb-mini-cart-drawer.is-open .yb-mini-cart-backdrop {
	opacity: 1;
}

.yb-mini-cart-panel {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 390px;
	max-width: 90vw;
	background: #fff;
	box-shadow: var(--yb-shadow-lg);
	display: flex;
	flex-direction: column;
	transform: translateX(-100%);
	transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

.yb-mini-cart-drawer.is-open .yb-mini-cart-panel {
	transform: translateX(0);
}

.yb-mini-cart-header {
	padding: 16px 20px;
	border-bottom: 1px solid var(--yb-border);
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 16px;
}

.yb-mini-cart-close {
	width: 34px;
	height: 34px;
	border-radius: 10px;
	border: 1px solid var(--yb-border);
	background: #f8fafc;
	font-size: 20px;
	cursor: pointer;
}

.yb-mini-cart-body {
	flex: 1;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.yb-mini-cart-list {
	flex: 1;
	overflow-y: auto;
	list-style: none;
	margin: 0;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.yb-mini-cart-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px;
	border-radius: 12px;
	border: 1px solid var(--yb-border);
	background: #f8fafc;
}

.yb-mini-cart-thumb img {
	width: 58px;
	height: 58px;
	border-radius: 10px;
	object-fit: cover;
}

.yb-mini-cart-info {
	flex: 1;
	min-width: 0;
}

.yb-mini-cart-title {
	display: block;
	font-weight: 700;
	font-size: 13.5px;
	margin-bottom: 4px;
}

.yb-mini-cart-meta {
	font-size: 12.5px;
	color: var(--yb-primary-dark);
	font-weight: 700;
}

.yb-mini-cart-remove {
	width: 28px;
	height: 28px;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--yb-accent);
	font-size: 18px;
}

.yb-mini-cart-footer {
	padding: 16px 20px;
	border-top: 1px solid var(--yb-border);
	background: #f8fafc;
}

.yb-mini-cart-subtotal {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
	font-size: 15px;
}

.yb-mini-cart-actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}

.yb-mini-cart-empty {
	padding: 48px 20px;
	text-align: center;
	margin: auto;
}
.yb-mini-cart-empty-icon {
	font-size: 42px;
	margin-bottom: 10px;
}

/* 6. Homepage Landing (front-page.php) */
.yb-home-landing {
	padding: 20px 0 40px;
	display: flex;
	flex-direction: column;
	gap: 28px;
}

/* Hero Slider */
.yb-hero-slider {
	position: relative;
	border-radius: var(--yb-radius-lg);
	overflow: hidden;
	box-shadow: var(--yb-shadow);
	background: #0f172a;
}

.yb-hero-slide {
	display: none;
}
.yb-hero-slide.is-active {
	display: block;
}

.yb-hero-link img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

.yb-hero-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 42px;
	height: 42px;
	border-radius: 50%;
	border: none;
	background: rgba(255, 255, 255, 0.9);
	color: var(--yb-navy);
	font-size: 24px;
	font-weight: 700;
	cursor: pointer;
	box-shadow: var(--yb-shadow);
	z-index: 5;
}
.yb-hero-prev {
	right: 16px;
}
.yb-hero-next {
	left: 16px;
}

.yb-hero-dots {
	position: absolute;
	bottom: 14px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	gap: 8px;
	z-index: 5;
}

.yb-hero-dot {
	width: 9px;
	height: 9px;
	border-radius: 999px;
	border: none;
	background: rgba(255, 255, 255, 0.55);
	cursor: pointer;
	padding: 0;
	transition: all 0.2s ease;
}
.yb-hero-dot.is-active {
	width: 26px;
	background: #fff;
}

/* Vehicle Quick Section */
.yb-vehicle-quick-card {
	background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
	border-radius: var(--yb-radius-lg);
	padding: 24px;
	color: #fff;
	box-shadow: 0 16px 36px rgba(37, 99, 235, 0.2);
}

.yb-vehicle-quick-header {
	display: flex;
	align-items: center;
	gap: 12px;
	color: #fff;
	margin-bottom: 18px;
}
.yb-vehicle-quick-header h2 {
	margin: 0;
	font-size: 20px;
	font-weight: 800;
}
.yb-vehicle-quick-more {
	margin-right: auto;
	background: rgba(255, 255, 255, 0.18);
	padding: 5px 14px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
}

.yb-vehicle-quick-grid {
	display: grid;
	grid-template-columns: repeat(8, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 20px;
}

.yb-vehicle-quick-item {
	background: #fff;
	color: var(--yb-navy);
	border-radius: 16px;
	padding: 14px 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-align: center;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
}
.yb-vehicle-quick-item:hover {
	transform: translateY(-3px);
}

.yb-vehicle-quick-img {
	width: 60px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.yb-vehicle-quick-img img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.yb-vehicle-quick-title {
	font-size: 13px;
	font-weight: 800;
}

.yb-cpw-selector-embed {
	background: rgba(255, 255, 255, 0.96);
	border-radius: 16px;
	padding: 14px;
	color: var(--yb-text);
}

/* Product Carousel Sections */
.yb-carousel-section {
	border-radius: var(--yb-radius-lg);
	padding: 20px;
	box-shadow: var(--yb-shadow-sm);
}

.yb-carousel-section--sale {
	background: linear-gradient(135deg, #1e40af 0%, #2563eb 100%);
	color: #fff;
}
.yb-carousel-section--blue {
	background: linear-gradient(135deg, #2563eb 0%, #3b82f6 100%);
	color: #fff;
}
.yb-carousel-section--navy {
	background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
	color: #fff;
}
.yb-carousel-section--slate {
	background: linear-gradient(135deg, #1e3a8a 0%, #1d4ed8 100%);
	color: #fff;
}

.yb-carousel-box {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	gap: 18px;
	align-items: stretch;
}

.yb-carousel-promo {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 12px;
	gap: 12px;
}

.yb-carousel-promo-media img {
	width: 110px;
	height: 110px;
	object-fit: contain;
	margin: 0 auto;
}

.yb-carousel-promo-title {
	margin: 0;
	font-size: 21px;
	font-weight: 900;
	color: #fff;
}

.yb-carousel-promo-sub {
	margin: 4px 0 0;
	font-size: 13px;
	opacity: 0.9;
}

.yb-carousel-promo-btn,
.yb-carousel-mobile-more {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	background: #fff;
	color: var(--yb-navy);
	padding: 8px 16px;
	border-radius: 999px;
	font-weight: 800;
	font-size: 13px;
}

.yb-carousel-main {
	position: relative;
	min-width: 0;
}

.yb-carousel-viewport {
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-ms-overflow-style: none;
	padding: 4px;
}
.yb-carousel-viewport::-webkit-scrollbar {
	display: none;
}

.yb-products-track {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.yb-products-track > li.product {
	flex: 0 0 235px !important;
	width: 235px !important;
	max-width: 235px !important;
	scroll-snap-align: start;
	margin: 0 !important;
}

.yb-carousel-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 38px;
	height: 38px;
	border-radius: 50%;
	border: 1px solid var(--yb-border);
	background: #fff;
	color: var(--yb-navy);
	font-size: 22px;
	font-weight: 800;
	cursor: pointer;
	box-shadow: var(--yb-shadow);
	z-index: 4;
}
.yb-carousel-prev {
	right: -10px;
}
.yb-carousel-next {
	left: -10px;
}

/* Promotional Banner Grids */
.yb-banners-dual-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

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

.yb-banner-card {
	display: block;
	border-radius: var(--yb-radius);
	overflow: hidden;
	box-shadow: var(--yb-shadow-sm);
}
.yb-banner-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--yb-shadow);
}
.yb-banner-card img {
	width: 100%;
	height: auto;
	display: block;
}

/* Trust Features Row */
.yb-trust-features-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.yb-trust-feature-item {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	padding: 18px;
	display: flex;
	align-items: center;
	gap: 14px;
	box-shadow: var(--yb-shadow-sm);
}
.yb-trust-feature-item img {
	width: 56px;
	height: 56px;
	object-fit: contain;
	flex-shrink: 0;
}
.yb-trust-feature-item strong {
	display: block;
	font-size: 15px;
	color: var(--yb-navy);
}
.yb-trust-feature-item span {
	font-size: 12.5px;
	color: var(--yb-text-muted);
}

/* Section Headers, Popular Brands & Blog */
.yb-section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 16px;
}
.yb-section-header h2 {
	margin: 0;
	font-size: 20px;
	font-weight: 900;
	color: var(--yb-navy);
}
.yb-section-header a {
	color: var(--yb-primary);
	font-weight: 700;
	font-size: 13.5px;
}

.yb-popular-brands-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 14px;
}

.yb-popular-brand-card {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	padding: 18px 12px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	text-align: center;
	box-shadow: var(--yb-shadow-sm);
}
.yb-popular-brand-card:hover {
	border-color: var(--yb-primary);
	transform: translateY(-3px);
}
.yb-popular-brand-logo {
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.yb-popular-brand-logo img {
	max-height: 58px;
	width: auto;
	object-fit: contain;
}

.yb-blog-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
}

.yb-blog-card {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: var(--yb-shadow-sm);
}
.yb-blog-card-thumb img {
	width: 100%;
	height: 185px;
	object-fit: cover;
}
.yb-blog-card-body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 8px;
}
.yb-blog-date {
	font-size: 12px;
	color: var(--yb-text-muted);
}
.yb-blog-card-body h3 {
	margin: 0;
	font-size: 15px;
	line-height: 1.55;
}
.yb-blog-readmore {
	margin-top: auto;
	font-size: 13px;
	font-weight: 700;
	color: var(--yb-primary);
}

/* 7. Product Loop Card (woocommerce/content-product.php) */
ul.products {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

ul.products.columns-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

li.product.yb-product-item .product-wrapper {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	padding: 12px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	color: var(--yb-text);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

li.product.yb-product-item .product-wrapper:hover {
	transform: translateY(-3px);
	box-shadow: var(--yb-shadow);
	border-color: #cbd5e1;
}

li.product.yb-product-item .product-element-top {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	background: #f8fafc;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

li.product.yb-product-item .product-element-top img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

li.product.yb-product-item .wd-entities-title {
	margin: 6px 0;
	font-size: 14px;
	line-height: 1.55;
	font-weight: 700;
	color: var(--yb-navy);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 43px;
}

li.product.yb-product-item .price {
	display: block;
	font-weight: 800;
	font-size: 15px;
	color: var(--yb-primary-dark);
	margin: 8px 0;
}
li.product.yb-product-item .price del {
	color: var(--yb-text-muted);
	font-size: 12.5px;
	margin-left: 6px;
}
li.product.yb-product-item .price ins {
	text-decoration: none;
}

.cpw-card-actions-row {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: auto;
	padding-top: 8px;
	border-top: 1px solid #f1f5f9;
}

.cpw-card-actions-row .button {
	flex: 1;
	background: var(--yb-primary-light);
	color: var(--yb-primary-dark);
	padding: 8px 10px;
	border-radius: 10px;
	font-size: 12.5px;
	font-weight: 700;
	text-align: center;
}
.cpw-card-actions-row .button:hover {
	background: var(--yb-primary);
	color: #fff;
}

/* 8. Product Archive Page (woocommerce/archive-product.php) */
.yb-archive-page {
	padding: 18px 0 44px;
}

.yb-breadcrumb-bar {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: 12px;
	padding: 10px 16px;
	margin-bottom: 16px;
	font-size: 13px;
	color: var(--yb-text-muted);
}
.yb-breadcrumb-bar .woocommerce-breadcrumb {
	margin: 0;
}

.yb-archive-seo-content {
	margin-top: 28px;
}

/* Pagination */
nav.woocommerce-pagination,
.yb-pagination-wrap {
	margin-top: 28px;
	text-align: center;
}

nav.woocommerce-pagination ul.page-numbers {
	list-style: none;
	display: inline-flex;
	gap: 6px;
	padding: 0;
	margin: 0;
}

nav.woocommerce-pagination ul.page-numbers li a,
nav.woocommerce-pagination ul.page-numbers li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	border-radius: 10px;
	background: #fff;
	border: 1px solid var(--yb-border);
	font-weight: 700;
}
nav.woocommerce-pagination ul.page-numbers li span.current {
	background: var(--yb-primary);
	color: #fff;
	border-color: var(--yb-primary);
}

/* 9. Single Product Page (woocommerce/content-single-product.php) */
.yb-single-product-page {
	padding: 18px 0 48px;
}

.yb-single-main-card {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius-lg);
	padding: 24px;
	display: grid;
	grid-template-columns: 440px minmax(0, 1fr);
	gap: 32px;
	box-shadow: var(--yb-shadow-sm);
	margin-bottom: 24px;
}

.yb-gallery-stage {
	position: sticky;
	top: 110px;
}

.yb-gallery-main-frame {
	border: 1px solid var(--yb-border);
	border-radius: 16px;
	background: #f8fafc;
	padding: 16px;
	aspect-ratio: 1 / 1;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

.yb-gallery-main-img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.yb-gallery-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 12px;
}

.yb-gallery-thumb {
	width: 72px;
	height: 72px;
	border-radius: 12px;
	border: 2px solid var(--yb-border);
	background: #fff;
	padding: 4px;
	cursor: pointer;
	overflow: hidden;
}
.yb-gallery-thumb.is-active {
	border-color: var(--yb-primary);
}
.yb-gallery-thumb img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.yb-single-title {
	margin: 0 0 10px;
	font-size: 22px;
	line-height: 1.5;
	font-weight: 900;
	color: var(--yb-navy);
}

.yb-single-meta-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	font-size: 13px;
	color: var(--yb-text-muted);
}

.yb-meta-stock.is-instock {
	background: var(--yb-success-soft);
	color: var(--yb-success);
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 999px;
}
.yb-meta-stock.is-outstock {
	background: var(--yb-accent-soft);
	color: var(--yb-accent);
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 999px;
}

.yb-divider {
	border: none;
	border-top: 1px solid var(--yb-border);
	margin: 16px 0;
}

.yb-seller-express-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	background: #f8fafc;
	border: 1px solid var(--yb-border);
	border-radius: 14px;
	padding: 12px 16px;
	margin: 14px 0;
}

.yb-seller-express-right {
	display: flex;
	align-items: center;
	gap: 10px;
}
.yb-seller-express-right strong {
	display: block;
	font-size: 14px;
}
.yb-seller-express-right small {
	color: var(--yb-text-muted);
	font-size: 12px;
}

.yb-buy-box {
	background: #f8fafc;
	border: 1.5px solid #dbeafe;
	border-radius: 16px;
	padding: 18px;
	margin: 14px 0;
}

.yb-price-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 14px;
}

.yb-price-label {
	font-weight: 700;
	color: var(--yb-slate);
}

.yb-main-price {
	margin: 0;
	font-size: 22px;
	font-weight: 900;
	color: var(--yb-primary-dark);
}
.yb-main-price del {
	font-size: 14px;
	color: var(--yb-text-muted);
	margin-left: 8px;
}
.yb-main-price ins {
	text-decoration: none;
}

.yb-add-to-cart-wrap form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

div.quantity.yb-qty-enhanced {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--yb-border);
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
}

.yb-qty-btn {
	width: 38px;
	height: 44px;
	border: none;
	background: #f1f5f9;
	font-size: 18px;
	font-weight: 700;
	cursor: pointer;
}

div.quantity input.qty {
	width: 50px;
	height: 44px;
	border: none;
	text-align: center;
	font-weight: 800;
	font-size: 15px;
	-moz-appearance: textfield;
}

.yb-add-to-cart-wrap .single_add_to_cart_button {
	flex: 1;
	min-width: 190px;
	height: 46px;
	background: linear-gradient(135deg, var(--yb-primary), var(--yb-primary-dark));
	color: #fff;
	border: none;
	border-radius: 12px;
	font-size: 15px;
	font-weight: 800;
	cursor: pointer;
}

.yb-installment-card {
	background: linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%);
	border: 1px solid #bfdbfe;
	border-radius: 16px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-bottom: 14px;
}

.yb-installment-card-head {
	display: flex;
	align-items: center;
	gap: 12px;
}
.yb-installment-card-head h4 {
	margin: 0 0 4px;
	font-size: 15px;
	color: #1e3a8a;
}
.yb-installment-card-head p {
	margin: 0;
	font-size: 13px;
}

.yb-installment-coupon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #fff;
	padding: 8px 12px;
	border-radius: 10px;
	border: 1px dashed #60a5fa;
	font-size: 13px;
}

.yb-copy-coupon-btn {
	background: var(--yb-primary);
	color: #fff;
	border: none;
	border-radius: 8px;
	padding: 5px 12px;
	font-weight: 700;
	font-size: 12px;
	cursor: pointer;
}

.yb-single-trust-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 24px;
}

.yb-trust-card {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	padding: 16px;
	display: flex;
	align-items: center;
	gap: 14px;
}
.yb-trust-card strong {
	display: block;
	font-size: 14.5px;
}
.yb-trust-card p {
	margin: 2px 0 0;
	font-size: 12.5px;
	color: var(--yb-text-muted);
}

/* Single Product Tabs */
.yb-single-tabs-card {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius-lg);
	padding: 24px;
	margin-bottom: 28px;
}

.woocommerce-tabs ul.tabs {
	list-style: none;
	margin: 0 0 20px;
	padding: 0 0 12px;
	border-bottom: 2px solid var(--yb-border);
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.woocommerce-tabs ul.tabs li a {
	display: inline-block;
	padding: 9px 18px;
	border-radius: 10px;
	background: #f1f5f9;
	font-weight: 700;
	color: var(--yb-slate);
}

.woocommerce-tabs ul.tabs li.active a {
	background: var(--yb-primary);
	color: #fff;
}

/* 10. Pages, Cart, Checkout, UserHub Pro */
.yb-page-wrapper,
.yb-single-post-wrapper,
.yb-index-wrapper,
.yb-search-page-wrapper,
.yb-404-wrapper {
	padding: 24px 0 48px;
}

.yb-page-header-box {
	background: linear-gradient(135deg, var(--yb-navy), #1e3a8a);
	color: #fff;
	padding: 24px 28px;
	border-radius: var(--yb-radius-lg);
	margin-bottom: 20px;
}
.yb-page-header-box h1 {
	margin: 0;
	font-size: 24px;
}
.yb-page-header-box p {
	margin: 6px 0 0;
	opacity: 0.88;
	font-size: 14px;
}

.yb-page-card,
.yb-commerce-content,
.yb-empty-state-card {
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius-lg);
	padding: 24px;
	box-shadow: var(--yb-shadow-sm);
}

.yb-empty-state-card {
	text-align: center;
	padding: 48px 24px;
}
.yb-empty-icon,
.yb-404-code {
	font-size: 48px;
	font-weight: 900;
	color: var(--yb-primary);
	margin-bottom: 10px;
}
.yb-empty-actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 18px;
}

/* Checkout Steps & Cart Banner */
.yb-checkout-steps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	background: #fff;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	padding: 16px;
	margin-bottom: 18px;
}
.yb-step {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--yb-text-muted);
}
.yb-step.is-active {
	color: var(--yb-primary);
}
.yb-step-num {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #e2e8f0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
}
.yb-step.is-active .yb-step-num {
	background: var(--yb-primary);
	color: #fff;
}
.yb-step-sep {
	width: 40px;
	height: 2px;
	background: var(--yb-border);
}

.yb-cart-kityadak-banner {
	background: linear-gradient(135deg, #2563eb, #1d4ed8);
	color: #fff;
	padding: 14px 20px;
	border-radius: var(--yb-radius);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-bottom: 18px;
	font-weight: 700;
}

/* Contact & About Page Grids */
.yb-contact-info-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin: 20px 0;
}
.yb-contact-info-box {
	background: #f8fafc;
	border: 1px solid var(--yb-border);
	border-radius: var(--yb-radius);
	padding: 18px;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.yb-contact-info-icon {
	font-size: 28px;
}
.yb-maps-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 18px;
	margin-top: 20px;
}
.yb-map-frame iframe {
	border-radius: 14px;
	border: 1px solid var(--yb-border);
}
.yb-about-split {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: 24px;
	align-items: center;
	margin-bottom: 24px;
}
.yb-about-media img,
.yb-about-wide-banner img {
	border-radius: 16px;
	width: 100%;
}

/* Compare Table */
.yb-compare-table-wrap {
	overflow-x: auto;
}
.yb-compare-table {
	width: 100%;
	border-collapse: collapse;
}
.yb-compare-table th,
.yb-compare-table td {
	border: 1px solid var(--yb-border);
	padding: 12px;
	text-align: center;
}
.yb-compare-prod-head img {
	width: 90px;
	height: 90px;
	object-fit: contain;
	margin: 0 auto 8px;
}

/* 11. Footer (footer.php) */
.yb-site-footer {
	background: var(--yb-navy);
	color: #cbd5e1;
	padding: 36px 0 24px;
	margin-top: 40px;
}

.yb-footer-wholesale-banner {
	border-radius: var(--yb-radius-lg);
	background-size: cover;
	background-position: center;
	overflow: hidden;
	margin-bottom: 32px;
}

.yb-footer-wholesale-overlay {
	background: linear-gradient(90deg, rgba(15, 23, 42, 0.88) 0%, rgba(30, 58, 138, 0.86) 100%);
	padding: 28px 32px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	color: #fff;
}

.yb-wholesale-kicker {
	display: inline-block;
	background: rgba(255, 255, 255, 0.16);
	padding: 4px 12px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	margin-bottom: 8px;
}
.yb-footer-wholesale-copy h3 {
	margin: 0 0 6px;
	font-size: 20px;
}
.yb-footer-wholesale-copy p {
	margin: 0;
	font-size: 13.5px;
	opacity: 0.9;
}
.yb-footer-wholesale-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.yb-footer-main {
	display: grid;
	grid-template-columns: 1.5fr 1.2fr 1fr 0.9fr;
	gap: 28px;
	padding-bottom: 28px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.yb-footer-brand {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 12px;
}
.yb-footer-brand h4 {
	margin: 0;
	color: #fff;
	font-size: 16px;
}

.yb-footer-about-text {
	font-size: 13.5px;
	line-height: 1.8;
	color: #94a3b8;
}

.yb-footer-contact-cards {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 14px;
	font-size: 13px;
}
.yb-footer-contact-row {
	background: rgba(255, 255, 255, 0.04);
	padding: 10px 12px;
	border-radius: 10px;
}
.yb-contact-label {
	font-weight: 700;
	color: #fff;
	display: block;
	margin-bottom: 3px;
}
.yb-contact-vals a {
	color: #93c5fd;
	font-weight: 700;
}

.yb-footer-heading {
	color: #fff;
	font-size: 16px;
	margin: 0 0 14px;
	position: relative;
	padding-bottom: 8px;
}
.yb-footer-heading::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 36px;
	height: 3px;
	border-radius: 99px;
	background: var(--yb-primary);
}

.yb-footer-links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
	font-size: 13.5px;
}
.yb-footer-links--two-col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px 12px;
}
.yb-footer-links a:hover {
	color: #fff;
	padding-right: 4px;
}

.yb-footer-badges-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.yb-badge-box {
	background: #fff;
	border-radius: 14px;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.yb-footer-social {
	margin-top: 14px;
	background: rgba(255, 255, 255, 0.06);
	padding: 10px 12px;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 13px;
}
.yb-footer-social a {
	color: #93c5fd;
	font-weight: 700;
}

.yb-footer-bottom {
	padding-top: 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
	font-size: 13px;
	color: #94a3b8;
}
.yb-footer-bottom-links {
	display: flex;
	gap: 16px;
}

/* 12. Responsive Breakpoints */
@media (max-width: 1100px) {
	.yb-vehicle-quick-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
	.yb-popular-brands-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
	.yb-blog-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.yb-single-main-card {
		grid-template-columns: 1fr;
	}
	.yb-gallery-stage {
		position: static;
	}
	.yb-footer-main {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 768px) {
	.yb-carousel-box {
		grid-template-columns: 1fr;
	}
	.yb-carousel-promo {
		flex-direction: row;
		justify-content: space-between;
		text-align: right;
		padding: 4px;
	}
	.yb-carousel-promo-media img {
		width: 56px;
		height: 56px;
	}
	.yb-banners-dual-grid,
	.yb-banners-six-grid,
	.yb-trust-features-grid,
	.yb-single-trust-grid,
	.yb-contact-info-grid,
	.yb-maps-grid,
	.yb-about-split,
	.yb-footer-main {
		grid-template-columns: 1fr;
	}
	.yb-vehicle-quick-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.yb-popular-brands-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.yb-blog-grid,
	ul.products,
	ul.products.columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.yb-footer-wholesale-overlay,
	.yb-cart-kityadak-banner {
		flex-direction: column;
		text-align: center;
	}
}

@media (max-width: 480px) {
	.yb-blog-grid {
		grid-template-columns: 1fr;
	}
	.yb-products-track > li.product {
		flex: 0 0 195px !important;
		width: 195px !important;
		max-width: 195px !important;
	}
}
