/*
Theme Name: Flyover Car Rental
Theme URI: https://flyover.example
Author: Flyover
Description: Custom marketing and rental theme for Flyover Car Rental in Pokhara.
Version: 1.0.0
Text Domain: flyover
*/

:root {
	--flyover-blue: #1e50d8;
	--flyover-blue-dark: #143bae;
	--flyover-blue-soft: #eef3ff;
	--flyover-orange: #ff8a00;
	--flyover-orange-dark: #e07900;
	--flyover-navy: #0f172a;
	--flyover-slate: #64748b;
	--flyover-border: #e2e8f0;
	--flyover-bg: #f8fafc;
	--flyover-radius: 1.25rem;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; color: var(--flyover-navy); font-family: "Plus Jakarta Sans", system-ui, sans-serif; line-height: 1.6; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.site-shell { overflow-x: clip; }
.container { width: min(1280px, calc(100% - 2rem)); margin-inline: auto; }

.site-header { z-index: 999; background: rgba(255,255,255,.98); border-bottom: 1px solid #f1f5f9; backdrop-filter: blur(12px); transition: box-shadow .2s ease; }
.site-header.is-sticky { position: sticky; top: 0; box-shadow: 0 4px 20px rgba(15,23,42,.06); }
.admin-bar .site-header.is-sticky { top: 32px; }
@media screen and (max-width: 782px) {
	.admin-bar .site-header.is-sticky { top: 46px; }
}
.header-inner { min-height: 68px; padding-top: 10px; padding-bottom: 10px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.brand { display: inline-flex; align-items: center; gap: .4rem; text-decoration: none; }
.brand-mark { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: var(--flyover-blue); box-shadow: 0 8px 18px rgba(30,80,216,.2); flex-shrink: 0; }
.brand-mark svg { width: 27px; height: 27px; }
.brand-logo-image { display: inline-flex; align-items: center; }
.brand-logo-image img, .brand-logo-image .custom-logo { display: block; height: auto; max-height: 60px; width: auto; max-width: 260px; object-fit: contain; }
.brand-text { display: flex; flex-direction: column; }
.brand-name { display: block; font-size: 1.15rem; font-weight: 800; line-height: 1.1; letter-spacing: -.04em; color: var(--flyover-blue); }
.brand-subtitle { display: block; margin-top: .15rem; color: var(--flyover-blue); font-size: .65rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

/* Navigation */
.primary-nav { display: flex; align-items: center; }
.primary-nav ul,
.primary-nav .primary-menu-list { display: flex; align-items: center; gap: 1.8rem; list-style: none !important; list-style-type: none !important; margin: 0; padding: 0; }
.primary-nav li { list-style: none !important; list-style-type: none !important; margin: 0; padding: 0; position: relative; }
.primary-nav li::marker, .primary-nav ul::marker { display: none !important; content: "" !important; }

.primary-nav a { position: relative; display: inline-flex; align-items: center; gap: .35rem; padding: .45rem .1rem; color: #475569; font-size: .84rem; font-weight: 700; text-decoration: none; transition: color .2s ease; }
.primary-nav a:hover,
.primary-nav .current-menu-item > a,
.primary-nav .current_page_item > a,
.primary-nav li:hover > a { color: var(--flyover-blue); }

/* Underline hover & active animation */
.primary-nav > ul > li > a::after,
.primary-nav > .primary-menu-list > li > a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2.5px;
	background: var(--flyover-blue);
	border-radius: 999px;
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform .28s cubic-bezier(0.4, 0, 0.2, 1);
}
.primary-nav > ul > li:hover > a::after,
.primary-nav > ul > li.current-menu-item > a::after,
.primary-nav > ul > li.current_page_item > a::after,
.primary-nav > .primary-menu-list > li:hover > a::after,
.primary-nav > .primary-menu-list > li.current-menu-item > a::after,
.primary-nav > .primary-menu-list > li.current_page_item > a::after {
	transform: scaleX(1);
	transform-origin: left center;
}

/* Sub-menus / Dropdown */
.primary-nav .sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	min-width: 200px;
	background: #fff;
	border: 1px solid var(--flyover-border);
	border-radius: .75rem;
	box-shadow: 0 12px 30px rgba(15,23,42,.12);
	padding: .5rem 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: all .2s ease;
	z-index: 100;
}
.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.primary-nav .sub-menu li { width: 100%; }
.primary-nav .sub-menu a { display: block; padding: .55rem 1.1rem; font-size: .8rem; font-weight: 600; color: #475569; white-space: nowrap; }
.primary-nav .sub-menu a::after { display: none !important; }
.primary-nav .sub-menu a:hover { background: var(--flyover-blue-soft); color: var(--flyover-blue); }

.header-actions { display: flex; align-items: center; gap: .8rem; }
.support-link { display: inline-flex; align-items: center; gap: .55rem; padding: .45rem .85rem .45rem .5rem; border-radius: 999px; background: #f1f5f9; color: #475569; font-size: .68rem; font-weight: 700; line-height: 1.2; }
.support-link strong { display: block; color: var(--flyover-navy); font-size: .72rem; }
.support-icon { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: var(--flyover-blue); color: #fff; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; border: 0; border-radius: 999px; padding: .8rem 1.35rem; cursor: pointer; font-size: .82rem; font-weight: 800; transition: .2s ease; }
.button-primary { color: #fff; background: var(--flyover-orange); box-shadow: 0 8px 18px rgba(255,138,0,.18); }
.button-primary:hover { color: #fff; background: var(--flyover-orange-dark); transform: translateY(-1px); }
.button-outline { color: #fff; border: 1px solid rgba(255,255,255,.35); background: rgba(255,255,255,.12); }
.button-outline:hover { background: rgba(255,255,255,.2); }
.button-whatsapp { color: #fff; background: #16a34a; box-shadow: 0 8px 18px rgba(22,163,74,.2); }
.button-whatsapp:hover { color: #fff; background: #15803d; transform: translateY(-1px); }
.button-outline-light { color: #fff; border: 1px solid rgba(255,255,255,.45); background: transparent; }
.button-outline-light:hover { color: #fff; background: rgba(255,255,255,.12); transform: translateY(-1px); }
.menu-toggle { display: none; border: 0; background: transparent; color: #334155; font-size: 1.4rem; cursor: pointer; }

.hero { padding: 1.7rem 0 3.6rem; }
.hero-panel { position: relative; overflow: hidden; min-height: 530px; display: flex; align-items: center; padding: clamp(2rem, 6vw, 4.2rem); border-radius: 1.8rem; color: #fff; background: linear-gradient(135deg, #1e50d8 0%, #173fb5 100%); }
.hero-panel:after { content: ""; position: absolute; width: 400px; height: 400px; right: -140px; bottom: -230px; border: 56px solid rgba(255,255,255,.07); border-radius: 50%; }
.hero-grid { position: relative; z-index: 3; width: 100%; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: 3rem; align-items: center; }
.hero-copy-column { position: relative; z-index: 2; }
.hero-car-art { position: absolute; z-index: 1; right: -2%; left: auto; bottom: -18%; width: min(630px, 57%); pointer-events: none; }
.hero-car-art img { display: block; width: 100%; height: auto; filter: drop-shadow(0 22px 18px rgba(15,23,42,.22)); }
.eyebrow { display: inline-flex; align-items: center; gap: .45rem; padding: .35rem .75rem; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; background: rgba(255,255,255,.1); color: #fff; font-size: .68rem; font-weight: 700; }
.eyebrow i { color: #34d399; }
.hero h1 { max-width: 680px; margin: 1.2rem 0 1rem; font-size: clamp(2.3rem, 5vw, 4.2rem); line-height: 1.08; letter-spacing: -.055em; }
.hero-copy { max-width: 580px; margin: 0; color: #dbeafe; font-size: 1rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.7rem; }
.booking-card { position: relative; z-index: 4; padding: 1.35rem; border: 1px solid rgba(255,255,255,.55); border-radius: 1.2rem; background: #fff; color: var(--flyover-navy); box-shadow: 0 18px 45px rgba(15,23,42,.2); }
.booking-card h2 { margin: 0 0 .25rem; font-size: 1.2rem; letter-spacing: -.03em; }
.booking-card > p { margin: 0 0 1rem; color: var(--flyover-slate); font-size: .72rem; }
.booking-card .flyover-search__row { display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; }
.booking-card .flyover-search label { color: #475569; font-size: .68rem; font-weight: 700; }
.booking-card .flyover-search input, .booking-card .flyover-search select { min-height: 39px; margin-top: .25rem; padding: .55rem .65rem; border: 1px solid var(--flyover-border); border-radius: .65rem; background: #f8fafc; color: var(--flyover-navy); font-size: .75rem; }
.booking-card .flyover-search p { margin: .85rem 0 0; }
.booking-card .flyover-search button { width: 100%; border: 0; border-radius: .7rem; padding: .75rem; color: #fff; background: var(--flyover-orange); font-weight: 800; cursor: pointer; }

.section { padding: 5rem 0; }
.section-muted { background: var(--flyover-bg); }
.section-heading { max-width: 680px; margin: 0 auto 2.5rem; text-align: center; }
.section-heading .eyebrow { color: var(--flyover-blue); border: 0; background: var(--flyover-blue-soft); }
.section-heading h2 { margin: .55rem 0 .65rem; font-size: clamp(1.8rem, 3vw, 2.5rem); line-height: 1.15; letter-spacing: -.05em; }
.section-heading p { margin: 0; color: var(--flyover-slate); font-size: .9rem; }
.services-section { background: #f8fafc; }
.services-intro { display: block; margin-bottom: 2.2rem; text-align: center; }
.services-intro .section-heading { margin: 0 auto .85rem; text-align: center; }
.services-intro .section-heading .eyebrow { justify-content: center; }
.services-intro__link { display: inline-flex; align-items: center; gap: .45rem; color: var(--flyover-blue); font-size: .78rem; font-weight: 800; }
.services-intro__link i { font-size: .65rem; }
.services-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.15rem; }
.service-card { position: relative; display: flex; min-height: 354px; flex-direction: column; overflow: hidden; border: 1px solid rgba(255,255,255,.52); border-radius: 1.25rem; background: #15211d; box-shadow: 0 18px 32px rgba(15,23,42,.12), 0 3px 7px rgba(15,23,42,.08); transition: transform .25s ease, box-shadow .25s ease; }
.service-card:hover { box-shadow: 0 25px 45px rgba(15,23,42,.2), 0 5px 10px rgba(15,23,42,.1); transform: translateY(-6px); }
.service-card__media { position: absolute; inset: 0; height: 100%; overflow: hidden; background: #dbeafe; }
.service-card__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(15,23,42,.02) 35%, rgba(15,23,42,.6) 100%); }
.service-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.service-card:hover .service-card__media img { transform: scale(1.05); }
.service-card__icon { position: absolute; z-index: 2; left: 1rem; top: 1rem; width: 2.55rem; height: 2.55rem; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; color: #fff; background: rgba(30,80,216,.75); box-shadow: 0 8px 18px rgba(15,23,42,.22); font-size: .9rem; }
.service-card__number { position: absolute; z-index: 1; top: 1rem; right: 1rem; color: #fff; font-size: .7rem; font-weight: 800; letter-spacing: .08em; }
.service-card__body { position: absolute; z-index: 3; right: .65rem; bottom: .65rem; left: .65rem; display: flex; min-width: 0; flex-direction: column; padding: 1rem .9rem .75rem; border: 1px solid rgba(255,255,255,.2); border-radius: .95rem; color: #f8fafc; background: rgba(17,28,24,.58); box-shadow: 0 10px 28px rgba(0,0,0,.16); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
.service-card h3 { margin: 0 0 .4rem; color: #fff; font-size: .98rem; line-height: 1.22; letter-spacing: -.035em; }
.service-card > .service-card__body > p { display: -webkit-box; overflow: hidden; margin: 0; color: #c4d1cb; font-size: .7rem; line-height: 1.5; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.service-card ul { display: flex; flex-wrap: wrap; gap: .28rem; list-style: none; margin: .65rem 0 0; padding: 0; color: #e5eee9; font-size: .6rem; }
.service-card li { display: inline-flex; align-items: center; gap: .28rem; padding: .22rem .42rem; border: 1px solid rgba(167,243,208,.14); border-radius: 999px; background: rgba(255,255,255,.06); }
.service-card li i { color: #6ee7b7; font-size: .48rem; }
.service-card__link { display: inline-flex; align-items: center; justify-content: center; gap: .35rem; margin-top: .75rem; padding: .5rem .7rem; border-radius: 999px; color: #17231e; background: rgba(255,255,255,.95); font-size: .62rem; font-weight: 800; }
.service-card__link i { font-size: .6rem; transition: transform .2s ease; }
.service-card:hover .service-card__link i { transform: translate(2px, -2px); }
.services-archive-hero { padding: 5.5rem 0 5rem; color: #fff; background: linear-gradient(135deg, #0f172a 0%, #172554 58%, #1e50d8 140%); }
.services-archive-hero .eyebrow { color: #bfdbfe; }
.services-archive-hero h1 { max-width: 760px; margin: 1rem 0 .8rem; color: #fff; font-size: clamp(2.5rem, 5vw, 4.6rem); line-height: 1.05; letter-spacing: -.06em; }
.services-archive-hero p { max-width: 650px; margin: 0; color: #cbd5e1; font-size: 1rem; line-height: 1.8; }
.services-archive-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
.service-archive-card { display: grid; grid-template-columns: .9fr 1.1fr; overflow: hidden; border: 1px solid var(--flyover-border); border-radius: 1.25rem; background: #fff; box-shadow: 0 18px 45px rgba(15,23,42,.08); }
.service-archive-card__image { position: relative; min-height: 300px; overflow: hidden; background: #dbeafe; }
.service-archive-card__image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 40%, rgba(15,23,42,.5)); }
.service-archive-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.service-archive-card:hover .service-archive-card__image img { transform: scale(1.05); }
.service-archive-card__icon { position: absolute; z-index: 1; left: 1rem; bottom: 1rem; width: 2.8rem; height: 2.8rem; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: #fff; background: rgba(30,80,216,.88); }
.service-archive-card__body { display: flex; flex-direction: column; align-items: flex-start; padding: 1.6rem; }
.service-archive-card__body .eyebrow { padding: 0; color: var(--flyover-blue); border: 0; background: transparent; text-transform: uppercase; }
.service-archive-card__body h2 { margin: .7rem 0 .55rem; font-size: 1.35rem; line-height: 1.2; letter-spacing: -.04em; }
.service-archive-card__body h2 a:hover { color: var(--flyover-blue); }
.service-archive-card__body p { margin: 0; color: var(--flyover-slate); font-size: .8rem; line-height: 1.7; }
.service-archive-card__chips { display: flex; flex-wrap: wrap; gap: .35rem; margin: 1rem 0; }
.service-archive-card__chips span { padding: .28rem .5rem; border-radius: 999px; color: #475569; background: #f1f5f9; font-size: .62rem; font-weight: 700; }
.service-archive-card__body .button { margin-top: auto; padding: .65rem .9rem; font-size: .7rem; }
.service-detail-hero { position: relative; min-height: 470px; display: flex; align-items: center; overflow: hidden; color: #fff; background: #0f172a; }
.service-detail-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(15,23,42,.97) 0%, rgba(15,23,42,.8) 38%, rgba(15,23,42,.18) 100%), var(--service-hero-image) center/cover no-repeat; }
.service-detail-hero__inner { position: relative; z-index: 1; }
.service-detail-hero__inner > div { max-width: 680px; }
.service-detail-hero h1 { margin: 1rem 0 .8rem; color: #fff; font-size: clamp(2.6rem, 5vw, 5rem); line-height: 1.02; letter-spacing: -.06em; }
.service-detail-hero p { max-width: 600px; margin: 0 0 1.5rem; color: #dbeafe; font-size: 1rem; line-height: 1.8; }
.service-detail-content { background: #fff; }
.service-detail-layout { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr); gap: 5rem; align-items: start; }
.service-detail-kicker { display: inline-flex; align-items: center; gap: .55rem; margin-bottom: 1.8rem; color: var(--flyover-blue); font-size: .75rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.service-detail-kicker i { font-size: 1rem; }
.service-rich-content { color: #475569; font-size: .95rem; line-height: 1.85; }
.service-rich-content h2, .service-rich-content h3 { margin: 2rem 0 .7rem; color: var(--flyover-navy); line-height: 1.2; letter-spacing: -.04em; }
.service-rich-content h2:first-child, .service-rich-content h3:first-child { margin-top: 0; }
.service-rich-content p { margin: 0 0 1rem; }
.service-rich-content ul { margin: 1rem 0; padding-left: 1.2rem; }
.service-rich-content li { margin: .4rem 0; }
.service-detail-sidebar { position: sticky; top: 2rem; display: grid; gap: 1rem; }
.service-sidebar-card { padding: 1.7rem; border-radius: 1.25rem; color: #fff; background: linear-gradient(145deg, #0f172a, #1e3a8a); box-shadow: 0 18px 45px rgba(15,23,42,.16); }
.service-sidebar-card__icon { width: 2.8rem; height: 2.8rem; display: grid; place-items: center; margin-bottom: 1.2rem; border-radius: .85rem; color: #bfdbfe; background: rgba(255,255,255,.1); }
.service-sidebar-card h2 { margin: 0 0 .55rem; color: #fff; font-size: 1.35rem; }
.service-sidebar-card p { margin: 0 0 1.2rem; color: #cbd5e1; font-size: .8rem; line-height: 1.7; }
.service-sidebar-card .button { width: 100%; }
.service-sidebar-list { padding: 1.4rem; border: 1px solid var(--flyover-border); border-radius: 1.25rem; background: #f8fafc; }
.service-sidebar-list h3 { margin: 0 0 .8rem; font-size: 1rem; }
.service-sidebar-list ul { display: grid; gap: .55rem; list-style: none; margin: 0; padding: 0; color: #475569; font-size: .78rem; }
.service-sidebar-list li { display: flex; gap: .5rem; align-items: flex-start; }
.service-sidebar-list i { padding-top: .3rem; color: #10b981; font-size: .65rem; }
.features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.feature-card { padding: 1.4rem; border: 1px solid var(--flyover-border); border-radius: var(--flyover-radius); background: #fff; }
.feature-icon { width: 43px; height: 43px; display: grid; place-items: center; margin-bottom: 1rem; border-radius: .8rem; background: var(--flyover-blue-soft); color: var(--flyover-blue); font-size: 1.1rem; }
.feature-card h3 { margin: 0 0 .35rem; font-size: 1rem; }
.feature-card p { margin: 0; color: var(--flyover-slate); font-size: .78rem; }
.fleet-toolbar { display: flex; justify-content: center; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.6rem; }
.fleet-filter { padding: .5rem .9rem; border: 1px solid var(--flyover-border); border-radius: 999px; color: #475569; background: #fff; font-size: .72rem; font-weight: 700; cursor: pointer; }
.fleet-filter.is-active, .fleet-filter:hover { border-color: var(--flyover-blue); color: #fff; background: var(--flyover-blue); }
.fleet-grid .flyover-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.fleet-grid .flyover-card { overflow: hidden; border: 1px solid var(--flyover-border); border-radius: var(--flyover-radius); background: #fff; box-shadow: 0 8px 25px rgba(15,23,42,.04); }
.fleet-grid .flyover-card__media { aspect-ratio: 16 / 10; background: #e2e8f0; }
.fleet-grid .flyover-card__body { padding: 1rem; gap: .45rem; }
.fleet-grid .flyover-card__body h3 { font-size: 1.02rem; }
.fleet-grid .flyover-card__body p { margin: 0; color: var(--flyover-slate); font-size: .73rem; }
.fleet-grid .flyover-card__price { color: var(--flyover-blue) !important; font-size: .9rem !important; font-weight: 800; }
.fleet-grid .flyover-chars { font-size: .67rem; }
.fleet-grid .flyover-card__body .wp-block-button__link { display: inline-flex; padding: .55rem .8rem; border-radius: .55rem; color: #fff; background: var(--flyover-blue); font-size: .7rem; font-weight: 800; }
.split-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.split-grid h2 { margin: .6rem 0 1rem; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.1; letter-spacing: -.05em; }
.split-grid p { color: var(--flyover-slate); font-size: .88rem; }
.check-list { display: grid; gap: .75rem; margin: 1.4rem 0 0; padding: 0; list-style: none; color: #334155; font-size: .8rem; font-weight: 700; }
.check-list i { margin-right: .5rem; color: #10b981; }
.about-visual { position: relative; min-height: 370px; border-radius: 1.5rem; background: linear-gradient(145deg, #dbeafe, #93c5fd); overflow: hidden; }
.about-visual:before { content: ""; position: absolute; inset: 12% 10% 0; border-radius: 50% 50% 0 0; background: rgba(30,80,216,.15); }
.about-badge { position: absolute; right: 7%; bottom: 7%; padding: 1rem; border-radius: 1rem; color: #fff; background: var(--flyover-blue); box-shadow: 0 14px 30px rgba(30,80,216,.25); font-size: .75rem; font-weight: 800; }
.about-badge strong { display: block; font-size: 1.5rem; line-height: 1; }
.steps-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.step { position: relative; padding: 1.4rem; border-radius: var(--flyover-radius); background: #fff; }
.step-number { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: var(--flyover-blue); font-size: .75rem; font-weight: 800; }
.step h3 { margin: 1rem 0 .35rem; font-size: 1rem; }
.step p { margin: 0; color: var(--flyover-slate); font-size: .78rem; }
/* Reviews Section */
.reviews-section { background: #fff; }
.reviews-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.review-card {
	background: #fff;
	border: 1px solid var(--flyover-border);
	border-radius: var(--flyover-radius);
	padding: 1.8rem;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-shadow: 0 6px 24px rgba(15, 23, 42, 0.04);
	transition: transform .25s ease, box-shadow .25s ease;
}
.review-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 34px rgba(15, 23, 42, 0.09);
	border-color: #cbd5e1;
}
.review-card__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1rem;
}
.review-stars {
	color: #f59e0b;
	font-size: .85rem;
	display: flex;
	gap: .25rem;
}
.review-source {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	font-size: .72rem;
	font-weight: 700;
	color: #64748b;
}
.review-source i {
	color: #4285f4;
}
.review-text {
	color: #334155;
	font-size: .84rem;
	line-height: 1.65;
	margin: 0 0 1.5rem;
	flex-grow: 1;
}
.review-author {
	display: flex;
	align-items: center;
	gap: .85rem;
	border-top: 1px solid #f1f5f9;
	padding-top: 1.1rem;
}
.review-avatar {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	object-fit: cover;
	flex-shrink: 0;
}
.review-avatar-initials {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: var(--flyover-blue-soft);
	color: var(--flyover-blue);
	font-weight: 800;
	font-size: .85rem;
	display: grid;
	place-items: center;
	flex-shrink: 0;
}
.review-author-info strong {
	display: block;
	font-size: .88rem;
	font-weight: 800;
	color: var(--flyover-navy);
}
.review-author-info span {
	display: block;
	margin-top: .1rem;
	font-size: .72rem;
	color: var(--flyover-slate);
}
.reviews-shortcode-container {
	margin-top: 1.5rem;
}

.faq-list { max-width: 820px; margin: auto; display: grid; gap: .7rem; }
.faq-item { overflow: hidden; border: 1px solid var(--flyover-border); border-radius: .9rem; background: #fff; }
.faq-question { width: 100%; display: flex; justify-content: space-between; padding: 1rem 1.2rem; border: 0; background: transparent; color: var(--flyover-navy); text-align: left; cursor: pointer; font-size: .8rem; font-weight: 800; }
.faq-answer { display: none; padding: 0 1.2rem 1rem; color: var(--flyover-slate); font-size: .76rem; }
.faq-item.is-open .faq-answer { display: block; }
.faq-item.is-open .faq-question i { transform: rotate(180deg); }
.faq-section-heading { max-width: 900px; margin-bottom: 3rem; }
.faq-section-heading h2 { font-size: clamp(2.25rem, 4.5vw, 4rem); letter-spacing: -.06em; }
.faq-section-heading p { max-width: 760px; margin: 1rem auto 0; color: var(--flyover-slate); font-size: 1rem; line-height: 1.75; }
.faq-list { max-width: 1120px; gap: 1rem; }
.faq-item { border-radius: 1.15rem; border-color: #d8e0e8; box-shadow: 0 8px 24px rgba(15,23,42,.04); }
.faq-question { min-height: 82px; padding: 1.35rem 1.5rem 1.35rem 1.75rem; font-size: 1rem; line-height: 1.45; }
.faq-question i { width: 2.35rem; height: 2.35rem; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 2.35rem; border-radius: 50%; color: var(--flyover-blue); background: var(--flyover-blue-soft); font-size: .8rem; transition: transform .25s ease, background .25s ease; }
.faq-item.is-open { border-color: rgba(30,80,216,.35); box-shadow: 0 14px 32px rgba(15,23,42,.07); }
.faq-item.is-open .faq-question { color: var(--flyover-blue); }
.faq-item.is-open .faq-question i { color: #fff; background: var(--flyover-blue); }
.faq-answer { padding: 0 5rem 1.6rem 1.75rem; border-top: 1px solid #e8edf2; font-size: .95rem; line-height: 1.8; }
.cta { padding: 3.2rem; border-radius: 1.5rem; color: #fff; background: var(--flyover-navy); }
.cta h2 { margin: 0 0 .5rem; font-size: clamp(1.6rem, 3vw, 2.4rem); letter-spacing: -.04em; }
.cta p { max-width: 540px; margin: 0 0 1.2rem; color: #94a3b8; font-size: .82rem; }
.split-cta { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); height: 420px; overflow: hidden; border-radius: 1.5rem; color: #fff; background: #0f172a; box-shadow: 0 22px 50px rgba(15,23,42,.14); }
.split-cta__content { display: flex; min-height: 0; box-sizing: border-box; flex-direction: column; align-items: flex-start; justify-content: center; padding: 3.5rem 3.8rem 4.5rem; position: relative; z-index: 1; }
.split-cta__content .eyebrow { color: #93c5fd; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.14); }
.split-cta__content h2 { margin: 1rem 0 .75rem; color: #fff; font-size: clamp(2rem, 3.7vw, 3.3rem); line-height: 1.05; letter-spacing: -.055em; }
.split-cta__content p { max-width: 520px; color: #cbd5e1; line-height: 1.75; margin: 0 0 1.5rem; }
.split-cta__media { height: 420px; min-height: 0; position: relative; }
.split-cta__media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #0f172a 0%, #0f172a 8%, rgba(15,23,42,.96) 16%, rgba(15,23,42,.78) 28%, rgba(15,23,42,.42) 40%, rgba(15,23,42,.12) 51%, transparent 63%); }
.split-cta__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.split-cta--about { background: #0b1719; }
.split-cta--about .split-cta__media::after { background: linear-gradient(90deg, #0b1719 0%, #0b1719 8%, rgba(11,23,25,.94) 16%, rgba(11,23,25,.76) 28%, rgba(11,23,25,.4) 40%, rgba(11,23,25,.1) 51%, transparent 63%); }
.site-footer { padding: 3.8rem 0 1.5rem; color: #cbd5e1; background: var(--flyover-navy); }
.footer-grid { display: grid; grid-template-columns: 1.8fr repeat(3, 1fr) 1.25fr; gap: 2rem; padding-bottom: 2rem; border-bottom: 1px solid #1e293b; }
.site-footer .brand-name { color: #fff; }
.site-footer .brand { display: inline-flex; align-items: center; gap: .85rem; }
.footer-brand-copy { display: block; }
.site-footer .brand-logo-image { width: 52px; height: 52px; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 52px; }
.site-footer .brand-logo-image img, .site-footer .brand-logo-image .custom-logo { display: block; width: 100%; height: 100%; object-fit: contain; }
.site-footer .brand-mark { width: 52px; height: 52px; }
.site-footer .brand-name { display: block; font-size: 1.05rem; line-height: 1.1; }
.footer-brand-subtitle { display: block; margin-top: .22rem; color: #94a3b8; font-size: .62rem; font-weight: 600; }
.footer-copy { max-width: 320px; color: #94a3b8; font-size: .76rem; }
.footer-heading { margin: 0 0 .8rem; color: #fff; font-size: .8rem; }
.footer-links, ul.footer-links { display: grid; gap: .45rem; padding: 0; margin: 0; list-style: none !important; list-style-type: none !important; color: #94a3b8; font-size: .72rem; }
.footer-links li { list-style: none !important; list-style-type: none !important; margin: 0; padding: 0; }
.footer-links li::marker { display: none !important; content: "" !important; }
.footer-links a { color: inherit; text-decoration: none; transition: color .2s ease; }
.footer-links a:hover { color: #fff; }
.copyright { padding-top: 1.5rem; color: #64748b; text-align: center; font-size: .68rem; }
.flyover-floating-actions { position: fixed; right: var(--flyover-float-right, 24px); bottom: 0; z-index: 1000; }
.flyover-whatsapp-float, .flyover-scroll-top { display: inline-flex; align-items: center; justify-content: center; border: 0; color: #fff; box-shadow: 0 12px 28px rgba(15,23,42,.22); transition: transform .2s ease, opacity .2s ease, background .2s ease; }
.flyover-whatsapp-float { position: fixed; right: var(--flyover-float-right, 24px); bottom: var(--flyover-whatsapp-bottom, 92px); gap: .55rem; min-width: 3.6rem; height: 3.6rem; padding: 0 1rem; border-radius: 1.1rem; background: #20c76b; font-size: 1.55rem; }
.flyover-whatsapp-float span { display: none; font-size: .76rem; font-weight: 800; }
.flyover-whatsapp-float:hover { color: #fff; background: #16a957; transform: translateY(-4px); }
.flyover-scroll-top { position: fixed; right: var(--flyover-float-right, 24px); bottom: var(--flyover-scroll-bottom, 24px); width: 3.6rem; height: 3.6rem; border-radius: 1.1rem; background: var(--flyover-blue); cursor: pointer; opacity: 0; visibility: hidden; transform: translateY(10px); }
.flyover-scroll-top.is-visible { opacity: 1; visibility: visible; transform: none; }
.flyover-scroll-top:hover { background: var(--flyover-blue-dark); transform: translateY(-4px); }

.about-section { background: #fff; }
.about-section .container, .process-section .container { width: min(1280px, calc(100% - 2rem)); }
.about-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
.about-collage { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; align-items: start; }
.about-column-left { display: grid; gap: 1rem; }
.about-image { display: block; width: 100%; object-fit: cover; border-radius: 1rem; }
.about-image-main { height: 192px; }
.about-image-sports { height: 258px; }
.about-stack { display: grid; gap: 1rem; padding-top: 2rem; }
.about-highlight, .about-experience { display: flex; align-items: center; gap: 1rem; border-radius: 1rem; }
.about-highlight { min-height: 102px; padding: 1.5rem; border: 1px solid #fde7b0; background: #fffaf0; }
.about-highlight i { color: #f59e0b; font-size: 1.65rem; }
.about-highlight strong, .about-highlight span { display: block; }
.about-highlight strong { font-size: .95rem; }
.about-highlight span { margin-top: .15rem; color: var(--flyover-slate); font-size: .68rem; }
.about-image-road { height: 193px; }
.about-experience { min-height: 74px; padding: 1rem; border: 1px solid #b7f0dc; background: #ecfdf5; }
.about-experience strong { color: #10b981; font-size: 2.2rem; line-height: 1; }
.about-experience span { color: #0f172a; font-size: .65rem; font-weight: 800; line-height: 1.25; letter-spacing: .05em; }
.about-content { display: flex; flex-direction: column; gap: 1.5rem; }
.about-content > .eyebrow { width: fit-content; color: var(--flyover-blue); border: 0; background: var(--flyover-blue-soft); text-transform: uppercase; }
.about-content h2 { max-width: 560px; margin: 0; color: #0b1b3c; font-size: 2.25rem; line-height: 1.1; letter-spacing: -.055em; }
.about-content > p { max-width: 610px; margin: 0; color: var(--flyover-slate); font-size: .875rem; }
.about-features { display: grid; gap: 1rem; padding-top: .5rem; }
.about-features article { display: grid; grid-template-columns: 42px 1fr; gap: .8rem; align-items: start; }
.about-feature-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; color: #10b981; background: #ecfdf5; }
.about-features h3 { margin: 0 0 .25rem; font-size: 1rem; }
.about-features p { margin: 0; color: var(--flyover-slate); font-size: .75rem; line-height: 1.6; }
.about-content > .button { align-self: flex-start; }
.button-blue { color: #fff; background: var(--flyover-blue); box-shadow: 0 8px 18px rgba(30,80,216,.18); }
.button-blue:hover { color: #fff; background: var(--flyover-blue-dark); }
.process-section { color: #fff; background: #10182b; }
.process-section .section-heading { margin-bottom: 3.2rem; }
.process-section .section-heading .eyebrow { color: #10b981; border: 1px solid rgba(16,185,129,.35); background: rgba(16,185,129,.08); }
.process-section .section-heading h2 { color: #fff; text-transform: capitalize; }
.process-section .section-heading p { color: #94a3b8; }
.process-track { display: grid; grid-template-columns: 1fr 100px 1fr 100px 1fr 100px 1fr; gap: .75rem; align-items: start; }
.process-step { text-align: center; }
.process-icon { width: 96px; height: 96px; display: grid; place-items: center; margin: 0 auto 1.3rem; border-radius: 50%; color: #fff; background: #12bd84; font-size: 1.9rem; }
.process-step h3 { margin: 0 0 .5rem; color: #fff; font-size: .92rem; }
.process-step p { max-width: 190px; margin: 0 auto; color: #94a3b8; font-size: .7rem; }
.process-arrow { align-self: start; width: 100%; height: 1px; margin-top: 44px; border-top: 1px dashed #475569; color: #64748b; font-size: .9rem; text-align: right; }
.process-arrow i { position: relative; top: -.55rem; background: #10182b; padding-left: .4rem; }

.page-content { padding: 4rem 0; }
.page-content .entry-title { font-size: 2.5rem; letter-spacing: -.05em; }
.page-content .entry-content { max-width: 920px; margin: auto; }
.page-content .flyover-search, .page-content .flyover-booking { max-width: none; }
.page-content .flyover-search, .page-content .flyover-booking, .page-content .flyover-confirm { padding: 1.5rem; border: 1px solid var(--flyover-border); border-radius: var(--flyover-radius); background: #fff; }

/* -------------------------------------------------------------
 * Blog Cards & Homepage Grid
 * ------------------------------------------------------------- */
.blog-section { background: var(--flyover-bg); }
.blog-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.75rem; }
.blog-card {
	background: #fff;
	border: 1px solid var(--flyover-border);
	border-radius: var(--flyover-radius);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 4px 20px rgba(15, 23, 42, 0.04);
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.blog-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 32px rgba(15, 23, 42, 0.08);
	border-color: #cbd5e1;
}
.blog-card__media {
	display: block;
	position: relative;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #e2e8f0;
}
.blog-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .4s ease;
}
.blog-card:hover .blog-card__media img {
	transform: scale(1.05);
}
.blog-card__media-placeholder {
	width: 100%;
	height: 100%;
	display: grid;
	place-items: center;
	color: #94a3b8;
	font-size: 2.2rem;
	background: linear-gradient(135deg, #e2e8f0, #cbd5e1);
}
.blog-card__badge {
	position: absolute;
	top: .85rem;
	left: .85rem;
	background: rgba(15, 23, 42, 0.85);
	backdrop-filter: blur(6px);
	color: #fff;
	font-size: .68rem;
	font-weight: 700;
	padding: .3rem .65rem;
	border-radius: 999px;
	letter-spacing: .02em;
}
.blog-card__body {
	padding: 1.35rem 1.4rem 1.5rem;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}
.blog-card__meta {
	display: flex;
	align-items: center;
	gap: .9rem;
	font-size: .72rem;
	color: var(--flyover-slate);
	margin-bottom: .6rem;
}
.blog-card__meta i { color: var(--flyover-blue); font-size: .75rem; }
.blog-card__body h2,
.blog-card__body h3 {
	margin: 0 0 .65rem;
	font-size: 1.12rem;
	line-height: 1.35;
	font-weight: 800;
	letter-spacing: -.02em;
}
.blog-card__body h2 a,
.blog-card__body h3 a {
	color: var(--flyover-navy);
	transition: color .2s ease;
}
.blog-card__body h2 a:hover,
.blog-card__body h3 a:hover {
	color: var(--flyover-blue);
}
.blog-card__body p {
	color: var(--flyover-slate);
	font-size: .82rem;
	line-height: 1.6;
	margin: 0 0 1.25rem;
	flex-grow: 1;
}
.blog-card__link {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	font-size: .78rem;
	font-weight: 800;
	color: var(--flyover-blue);
	transition: gap .2s ease;
	align-self: flex-start;
}
.blog-card:hover .blog-card__link {
	gap: .65rem;
}
.blog-section__cta {
	text-align: center;
	margin-top: 2.75rem;
}
.button-outline-dark {
	color: var(--flyover-navy);
	border: 1.5px solid var(--flyover-border);
	background: #fff;
	box-shadow: 0 4px 14px rgba(0,0,0,0.04);
}
.button-outline-dark:hover {
	background: #f8fafc;
	border-color: var(--flyover-navy);
	color: var(--flyover-navy);
}

/* -------------------------------------------------------------
 * Blog Archive / Listing Page (/blog)
 * ------------------------------------------------------------- */
.blog-archive-page { background: #fff; }
.blog-archive-hero {
	background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
	color: #fff;
	padding: 4.5rem 0 3.8rem;
	text-align: center;
}
.blog-archive-hero .eyebrow {
	background: rgba(255,255,255,0.12);
	border-color: rgba(255,255,255,0.2);
	color: #93c5fd;
	margin-bottom: .8rem;
}
.blog-archive-hero h1 {
	font-size: clamp(2.2rem, 4vw, 3.2rem);
	line-height: 1.15;
	letter-spacing: -.04em;
	margin: 0 auto .85rem;
	max-width: 760px;
}
.blog-archive-hero p {
	font-size: .95rem;
	color: #94a3b8;
	max-width: 620px;
	margin: 0 auto;
}

/* WordPress Pagination */
.blog-pagination {
	margin-top: 3.5rem;
	display: flex;
	justify-content: center;
}
.blog-pagination .nav-links {
	display: flex;
	align-items: center;
	gap: .4rem;
	flex-wrap: wrap;
}
.blog-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	padding: 0 .65rem;
	border-radius: .65rem;
	border: 1px solid var(--flyover-border);
	background: #fff;
	color: var(--flyover-navy);
	font-size: .8rem;
	font-weight: 700;
	transition: all .2s ease;
}
.blog-pagination .page-numbers:hover,
.blog-pagination .page-numbers.current {
	background: var(--flyover-blue);
	border-color: var(--flyover-blue);
	color: #fff;
}
.blog-empty {
	text-align: center;
	padding: 4.5rem 1rem;
	max-width: 520px;
	margin: 0 auto;
}
.blog-empty i { font-size: 3rem; color: #cbd5e1; margin-bottom: 1.25rem; }
.blog-empty h2 { font-size: 1.6rem; margin-bottom: .5rem; }
.blog-empty p { color: var(--flyover-slate); margin-bottom: 1.5rem; }

/* About & Contact Pages */
.brand-page { background: #fff; overflow: hidden; }
.brand-page-hero { background: linear-gradient(135deg, #0f172a 0%, #172554 58%, #1e50d8 140%); color: #fff; padding: 6rem 0 5.5rem; }
.brand-page-hero--compact { padding-bottom: 4.5rem; }
.brand-page-hero__inner { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr); gap: 5rem; align-items: center; }
.brand-page-hero__copy { max-width: 650px; }
.brand-page-hero__copy .eyebrow { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.2); color: #bfdbfe; }
.brand-page-hero h1 { color: #fff; font-size: clamp(2.7rem, 5vw, 4.7rem); line-height: 1.02; letter-spacing: -.06em; margin: 1rem 0 1.25rem; }
.brand-page-hero p { color: #cbd5e1; max-width: 570px; font-size: 1.05rem; line-height: 1.8; margin-bottom: 2rem; }
.about-hero-points { display: grid; gap: .55rem; margin: 0 0 1.7rem; color: #dbeafe; font-size: .78rem; font-weight: 700; }
.about-hero-points span { display: flex; align-items: center; gap: .55rem; }
.about-hero-points i { width: 1rem; color: #60a5fa; text-align: center; }
.brand-page-hero__visual { position: relative; }
.brand-page-hero__visual img { width: 100%; height: 420px; object-fit: cover; border-radius: 1.5rem; box-shadow: 0 28px 70px rgba(0,0,0,.3); }
.brand-page-stat, .contact-page__badge { background: #fff; color: var(--flyover-navy); border-radius: 1rem; box-shadow: 0 18px 45px rgba(15,23,42,.25); }
.brand-page-stat { position: absolute; left: -1.5rem; bottom: -1.5rem; padding: 1rem 1.25rem; display: grid; gap: .15rem; }
.brand-page-stat strong { font-size: 1.7rem; line-height: 1; }
.brand-page-stat span { color: var(--flyover-slate); font-size: .72rem; font-weight: 700; }
.brand-page-stat--secondary { left: auto; right: -1.5rem; bottom: 1.25rem; }
.brand-page-values { background: #f8fafc; }
.brand-value-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.brand-value-card { background: #fff; border: 1px solid var(--flyover-border); border-radius: 1rem; padding: 1.75rem; transition: transform .25s ease, box-shadow .25s ease; }
.brand-value-card:hover { transform: translateY(-6px); box-shadow: 0 16px 35px rgba(15,23,42,.08); }
.brand-value-icon { width: 3rem; height: 3rem; display: inline-flex; align-items: center; justify-content: center; border-radius: .85rem; background: #eff6ff; color: var(--flyover-blue); font-size: 1.15rem; }
.brand-value-card h3 { margin: 1.2rem 0 .45rem; font-size: 1.08rem; }
.brand-value-card p { color: var(--flyover-slate); line-height: 1.7; font-size: .9rem; margin: 0; }
.about-company-section { background: #fff; }
.about-company-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
.about-company-copy h2, .about-milestone-card h2 { font-size: clamp(2rem, 3.5vw, 3.2rem); letter-spacing: -.05em; margin: .8rem 0 1rem; }
.about-company-copy p, .about-milestone-card p { color: var(--flyover-slate); line-height: 1.85; max-width: 600px; }
.about-owner-card { padding: 2rem; border: 1px solid var(--flyover-border); border-radius: 1.25rem; background: linear-gradient(145deg, #f8fafc, #fff); box-shadow: 0 18px 45px rgba(15,23,42,.07); }
.about-owner-card__icon { width: 3.4rem; height: 3.4rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 1rem; background: #dbeafe; color: var(--flyover-blue); font-size: 1.3rem; margin-bottom: 1.25rem; }
.about-owner-card .eyebrow { display: block; margin-bottom: .55rem; }
.about-owner-card h3 { margin: 0 0 .3rem; font-size: 1.4rem; }
.about-owner-card strong { color: var(--flyover-blue); font-size: .8rem; }
.about-owner-card p { color: var(--flyover-slate); line-height: 1.7; margin: 1rem 0 0; }
.about-leadership-section { background: #f8fafc; }
.about-leadership-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
.about-person-card { display: grid; grid-template-columns: 38% 1fr; overflow: hidden; border: 1px solid var(--flyover-border); border-radius: 1.25rem; background: #fff; box-shadow: 0 18px 45px rgba(15,23,42,.06); }
.about-person-card__image { min-height: 260px; background: linear-gradient(145deg, #dbeafe, #bfdbfe); }
.about-person-card__image img { display: block; width: 100%; height: 100%; min-height: 260px; object-fit: cover; }
.about-person-card__content { padding: 2rem; }
.about-person-card__content .eyebrow { padding: 0; color: var(--flyover-blue); border: 0; background: transparent; text-transform: uppercase; }
.about-person-card__content h3 { margin: .7rem 0 .65rem; font-size: 1.45rem; letter-spacing: -.04em; }
.about-person-card__content p { margin: 0; color: var(--flyover-slate); line-height: 1.7; font-size: .85rem; }
.about-mission-section { background: #fff; }
.about-mission-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.25rem; }
.about-mission-card { padding: 2.5rem; border-radius: 1.25rem; background: #eff6ff; border: 1px solid #bfdbfe; }
.about-mission-card--vision { background: #ecfdf5; border-color: #bbf7d0; }
.about-mission-card__icon { width: 3rem; height: 3rem; display: grid; place-items: center; margin-bottom: 1.3rem; border-radius: .9rem; color: var(--flyover-blue); background: #dbeafe; font-size: 1.2rem; }
.about-mission-card--vision .about-mission-card__icon { color: #059669; background: #d1fae5; }
.about-mission-card h2 { margin: 0 0 .7rem; font-size: 1.7rem; letter-spacing: -.04em; }
.about-mission-card p { margin: 0; color: var(--flyover-slate); line-height: 1.8; }
.about-feature-grid { grid-template-columns: repeat(4, 1fr); }
.about-milestone-section { background: #f8fafc; }
.about-milestone-card { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; padding: 2.5rem; border-radius: 1.25rem; background: #fff; border: 1px solid var(--flyover-border); }
.about-milestone-card p { margin: 0; }
.about-image-story-section { background: #fff; }
.about-image-story-section--reverse { background: #f8fafc; }
.about-image-story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4.5rem; align-items: center; }
.about-story-image img { display: block; width: 100%; height: 390px; object-fit: cover; border-radius: 1.25rem; box-shadow: 0 20px 45px rgba(15,23,42,.12); }
.about-story-copy h2 { font-size: clamp(2rem, 3.5vw, 3.2rem); line-height: 1.08; letter-spacing: -.05em; margin: .8rem 0 1rem; }
.about-story-copy p { color: var(--flyover-slate); line-height: 1.85; }
.about-check-list { list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; gap: .75rem; color: var(--flyover-navy); font-size: .9rem; font-weight: 700; }
.about-check-list i { color: var(--flyover-blue); margin-right: .55rem; }
.contact-page__visual { position: relative; min-height: 430px; display: flex; align-items: flex-end; justify-content: center; overflow: hidden; border-radius: 2rem; }
.contact-page__visual::before { content: ''; position: absolute; inset: 5% 5% 4%; border: 1px solid rgba(147,197,253,.18); border-radius: 2rem; transform: rotate(-3deg); }
.contact-page__visual-glow { position: absolute; width: 360px; height: 360px; right: 4%; bottom: 10%; border-radius: 50%; background: radial-gradient(circle, rgba(96,165,250,.38) 0%, rgba(37,99,235,.12) 45%, transparent 72%); filter: blur(5px); }
.contact-page__visual img { position: relative; z-index: 2; display: block; width: min(620px, 112%); max-width: none; margin: auto -8% 2rem 0; filter: drop-shadow(0 28px 18px rgba(2,6,23,.35)); }
.contact-page__route { position: absolute; z-index: 1; left: 2%; right: 0; bottom: 11%; height: 95px; border-bottom: 2px dashed rgba(191,219,254,.42); border-radius: 50%; transform: rotate(-7deg); }
.contact-page__route::after { content: ''; position: absolute; right: 7%; bottom: -7px; width: 14px; height: 14px; border: 3px solid #93c5fd; border-radius: 50%; background: #1e3a8a; box-shadow: 0 0 0 7px rgba(147,197,253,.12); }
.contact-page__route span { position: absolute; width: 6px; height: 6px; border-radius: 50%; background: #60a5fa; }
.contact-page__route span:nth-child(1) { left: 17%; bottom: 11px; }
.contact-page__route span:nth-child(2) { left: 43%; bottom: 32px; }
.contact-page__route span:nth-child(3) { left: 68%; bottom: 17px; }
.contact-page__badge { position: absolute; z-index: 4; top: 4%; right: 0; padding: 1.5rem 2rem; display: grid; gap: .35rem; min-width: 210px; }
.contact-page__badge i { color: var(--flyover-blue); font-size: 1.7rem; margin-bottom: .35rem; }
.contact-page__badge strong { font-size: 1.05rem; }
.contact-page__badge span { color: var(--flyover-slate); font-size: .8rem; }
.contact-page__actions { position: absolute; z-index: 5; right: 0; bottom: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .7rem; }
.contact-page__grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 5rem; align-items: start; }
.contact-details h2 { font-size: clamp(2rem, 3vw, 3rem); letter-spacing: -.05em; margin: .8rem 0 2rem; }
.contact-detail { display: flex; gap: 1rem; padding: 1.15rem 0; border-bottom: 1px solid var(--flyover-border); }
.contact-detail > span { width: 2.7rem; height: 2.7rem; flex: 0 0 2.7rem; display: inline-flex; align-items: center; justify-content: center; background: #eff6ff; color: var(--flyover-blue); border-radius: .75rem; }
.contact-detail div { display: grid; gap: .2rem; }
.contact-detail strong { font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; }
.contact-detail a { color: var(--flyover-navy); font-weight: 700; }
.contact-detail a:hover { color: var(--flyover-blue); }
.contact-detail small { color: var(--flyover-slate); font-size: .78rem; }
.contact-form-card { padding: 2rem; border: 1px solid var(--flyover-border); border-radius: 1.25rem; box-shadow: 0 18px 45px rgba(15,23,42,.07); }
.contact-form-card h2 { margin: 0 0 1.5rem; font-size: 1.5rem; }
.contact-form { display: grid; gap: 1rem; }
.contact-form label { display: grid; gap: .45rem; color: var(--flyover-navy); font-size: .8rem; font-weight: 700; }
.contact-form input, .contact-form textarea { width: 100%; border: 1px solid var(--flyover-border); border-radius: .65rem; padding: .85rem 1rem; color: var(--flyover-navy); font: inherit; background: #f8fafc; }
.contact-form input:focus, .contact-form textarea:focus { outline: 2px solid rgba(30,80,216,.2); border-color: var(--flyover-blue); background: #fff; }
.contact-form textarea { resize: vertical; }
.contact-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.contact-map-card { margin-top: 4rem; padding: 2rem; border-radius: 1.25rem; background: #f8fafc; border: 1px solid var(--flyover-border); }
.contact-map-card__heading { margin-bottom: 1.25rem; }
.contact-map-card h2 { margin: .65rem 0 0; font-size: 1.8rem; letter-spacing: -.04em; }
.contact-map-card iframe { display: block; width: 100%; height: 340px; border: 0; border-radius: .85rem; }
.contact-trust-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 1.25rem; }
.contact-trust-card { padding: 1.5rem; border: 1px solid var(--flyover-border); border-radius: 1rem; background: #fff; }
.contact-trust-card i { color: var(--flyover-blue); font-size: 1.2rem; }
.contact-trust-card h3 { margin: .9rem 0 .45rem; font-size: 1rem; }
.contact-trust-card p { margin: 0; color: var(--flyover-slate); font-size: .85rem; line-height: 1.65; }
.contact-page__cta { display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-top: 4rem; padding: 3rem; border-radius: 1.5rem; color: #fff; background: var(--flyover-navy); }
.contact-page__cta .eyebrow { color: #bfdbfe; }
.contact-page__cta h2 { margin: .9rem 0 .6rem; color: #fff; font-size: clamp(1.8rem, 3vw, 2.7rem); letter-spacing: -.05em; }
.contact-page__cta p { max-width: 650px; margin: 0; color: #cbd5e1; line-height: 1.75; }
.contact-page__cta-actions { display: flex; flex-wrap: wrap; gap: .7rem; flex-shrink: 0; }
.reveal { opacity: 1; transform: none; transition: opacity .7s ease, transform .7s ease; }
body.reveal-ready .reveal { opacity: 0; transform: translateY(24px); }
body.reveal-ready .reveal-left { transform: translateX(-28px); }
body.reveal-ready .reveal-right { transform: translateX(28px); }
.reveal-left { transform: translateX(-28px); }
.reveal-right { transform: translateX(28px); }
.reveal.is-visible, body.reveal-ready .reveal.is-visible { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1; transform: none; transition: none; } }
@media (max-width: 760px) {
	.brand-page-hero { padding: 4rem 0 4.5rem; }
	.brand-page-hero__inner, .contact-page__grid { grid-template-columns: 1fr; gap: 2.5rem; }
	.about-company-grid, .about-milestone-card { grid-template-columns: 1fr; gap: 1.5rem; }
	.about-leadership-grid, .about-mission-grid { grid-template-columns: 1fr; }
	.about-person-card { grid-template-columns: 1fr; }
	.about-person-card__image, .about-person-card__image img { min-height: 220px; height: 220px; }
	.about-feature-grid { grid-template-columns: repeat(2, 1fr); }
	.about-image-story-grid { grid-template-columns: 1fr; gap: 2rem; }
	.about-image-story-section--reverse .about-story-image { grid-row: 1; }
	.contact-trust-grid { grid-template-columns: 1fr; }
	.brand-page-hero h1 { font-size: clamp(2.35rem, 12vw, 3.5rem); }
	.brand-page-hero__visual img { height: 300px; }
	.brand-page-stat { left: 1rem; bottom: -1rem; }
	.brand-page-stat--secondary { left: auto; right: 1rem; bottom: 1rem; }
	.contact-page__visual { min-height: 340px; margin-top: -1rem; }
	.contact-page__visual img { width: 112%; margin-right: -8%; margin-bottom: 2.25rem; }
	.contact-page__badge { top: 0; right: .5rem; }
	.contact-page__actions { right: .5rem; bottom: 0; justify-content: flex-start; }
	.contact-page__cta { align-items: flex-start; flex-direction: column; padding: 2rem 1.4rem; }
	.brand-value-grid { grid-template-columns: 1fr; }
	.contact-form__row { grid-template-columns: 1fr; }
	.flyover-whatsapp-float, .flyover-scroll-top { right: 14px; width: 3.25rem; height: 3.25rem; min-width: 3.25rem; border-radius: .95rem; }
	.faq-section-heading { margin-bottom: 2rem; }
	.faq-question { min-height: 72px; padding: 1.15rem 1rem 1.15rem 1.15rem; font-size: .92rem; }
	.faq-answer { padding: 0 1.15rem 1.35rem; font-size: .88rem; }
	.split-cta { grid-template-columns: 1fr; }
	.split-cta { height: auto; }
	.split-cta__content { min-height: 360px; padding: 2.5rem 1.5rem 3.5rem; }
	.split-cta__media { height: 240px; min-height: 0; }
	.split-cta__media::after { background: linear-gradient(0deg, rgba(15,23,42,.45), transparent 70%); }
}

/* -------------------------------------------------------------
 * Single Post Page (/blog-details)
 * ------------------------------------------------------------- */
.single-post-page { background: #fff; padding-bottom: 5rem; }
.single-post-header {
	padding: 2.5rem 0 2rem;
	background: #fff;
}
.breadcrumb-nav {
	display: flex;
	align-items: center;
	gap: .5rem;
	font-size: .75rem;
	color: var(--flyover-slate);
	margin-bottom: 1.2rem;
}
.breadcrumb-nav a { color: var(--flyover-slate); transition: color .2s ease; }
.breadcrumb-nav a:hover { color: var(--flyover-blue); }
.breadcrumb-nav i { font-size: .62rem; color: #94a3b8; }
.single-post-categories {
	display: flex;
	gap: .45rem;
	margin-bottom: .85rem;
}
.post-category-badge {
	background: var(--flyover-blue-soft);
	color: var(--flyover-blue);
	font-size: .72rem;
	font-weight: 800;
	padding: .35rem .75rem;
	border-radius: 999px;
	text-transform: uppercase;
	letter-spacing: .04em;
}
.single-post-title {
	font-size: clamp(2rem, 4vw, 2.85rem);
	line-height: 1.18;
	letter-spacing: -.04em;
	color: var(--flyover-navy);
	margin: 0 0 1.2rem;
	max-width: 960px;
}
.single-post-meta {
	display: flex;
	align-items: center;
	gap: .75rem;
	font-size: .8rem;
	color: var(--flyover-slate);
	flex-wrap: wrap;
}
.meta-author {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	font-weight: 700;
	color: var(--flyover-navy);
}
.meta-author img {
	border-radius: 50%;
	object-fit: cover;
}
.meta-separator { color: #cbd5e1; }

.single-post-hero-image {
	margin-bottom: 2.5rem;
}
.featured-hero-img {
	width: 100%;
	max-height: 520px;
	object-fit: cover;
	border-radius: var(--flyover-radius);
	display: block;
	box-shadow: 0 8px 30px rgba(15,23,42,.06);
}

/* 2-Column Article & Sidebar Layout */
.single-post-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 3.5rem;
	align-items: start;
}
.single-post-main {
	min-width: 0;
}
.single-post-content {
	font-size: 1.05rem;
	line-height: 1.8;
	color: #334155;
	word-break: break-word;
}
.single-post-content p { margin: 0 0 1.5rem; }
.single-post-content h2 { font-size: 1.75rem; line-height: 1.25; margin: 2.2rem 0 1rem; color: var(--flyover-navy); letter-spacing: -.03em; }
.single-post-content h3 { font-size: 1.35rem; line-height: 1.3; margin: 1.8rem 0 .8rem; color: var(--flyover-navy); letter-spacing: -.02em; }
.single-post-content ul, .single-post-content ol { margin: 0 0 1.5rem 1.25rem; padding: 0; }
.single-post-content li { margin-bottom: .5rem; }
.single-post-content blockquote {
	margin: 2rem 0;
	padding: 1.25rem 1.75rem;
	border-left: 4px solid var(--flyover-blue);
	background: var(--flyover-blue-soft);
	border-radius: 0 .8rem .8rem 0;
	font-style: italic;
	color: #1e3a8a;
	font-size: 1.1rem;
}
.single-post-content img {
	border-radius: 1rem;
	margin: 1.5rem 0;
}

/* Tags */
.single-post-tags {
	display: flex;
	align-items: center;
	gap: .5rem;
	flex-wrap: wrap;
	padding: 1.5rem 0;
	margin-top: 1.5rem;
	border-top: 1px solid #f1f5f9;
	border-bottom: 1px solid #f1f5f9;
	font-size: .8rem;
	color: var(--flyover-slate);
}
.post-tag-pill {
	display: inline-block;
	padding: .35rem .75rem;
	border-radius: 999px;
	background: #f1f5f9;
	color: #475569;
	font-weight: 700;
	font-size: .75rem;
	transition: all .2s ease;
}
.post-tag-pill:hover {
	background: var(--flyover-blue);
	color: #fff;
}

/* Post Navigation (Prev / Next) */
.post-navigation-cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.25rem;
	margin: 2.5rem 0;
}
.nav-card {
	padding: 1.2rem;
	border: 1px solid var(--flyover-border);
	border-radius: 1rem;
	background: #fff;
	display: flex;
	flex-direction: column;
	gap: .35rem;
	transition: all .2s ease;
}
.nav-card:hover {
	border-color: var(--flyover-blue);
	box-shadow: 0 8px 20px rgba(30,80,216,.08);
}
.nav-direction {
	font-size: .7rem;
	font-weight: 800;
	text-transform: uppercase;
	color: var(--flyover-blue);
	display: flex;
	align-items: center;
	gap: .35rem;
}
.nav-title {
	font-size: .88rem;
	color: var(--flyover-navy);
	line-height: 1.35;
}
.next-card { text-align: right; }
.next-card .nav-direction { justify-content: flex-end; }

/* Related Posts */
.related-posts-section {
	margin-top: 3rem;
	padding-top: 2rem;
	border-top: 1px solid #f1f5f9;
}
.related-posts-section h3 {
	font-size: 1.35rem;
	margin: 0 0 1.25rem;
	color: var(--flyover-navy);
}
.related-posts-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}
.blog-card--compact .blog-card__media { aspect-ratio: 16 / 9; }
.blog-card--compact .blog-card__body { padding: 1rem; }
.blog-card__date { font-size: .7rem; color: var(--flyover-slate); }
.blog-card--compact h4 { margin: .25rem 0 0; font-size: .92rem; line-height: 1.35; }
.blog-card--compact h4 a { color: var(--flyover-navy); }
.blog-card--compact h4 a:hover { color: var(--flyover-blue); }

/* -------------------------------------------------------------
 * Sidebar Widgets
 * ------------------------------------------------------------- */
.single-post-sidebar-column {
	align-self: stretch;
}
.blog-sidebar {
	position: sticky;
	top: 96px;
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}
.admin-bar .blog-sidebar {
	top: 128px;
}
.sidebar-widget {
	background: #fff;
	border: 1px solid var(--flyover-border);
	border-radius: var(--flyover-radius);
	padding: 1.5rem;
	box-shadow: 0 4px 18px rgba(15,23,42,.03);
}
.widget-title {
	font-size: 1rem;
	font-weight: 800;
	color: var(--flyover-navy);
	margin: 0 0 .85rem;
	display: flex;
	align-items: center;
	gap: .5rem;
}
.widget-title i { color: var(--flyover-blue); font-size: .9rem; }
.widget-desc {
	font-size: .76rem;
	color: var(--flyover-slate);
	margin: 0 0 1rem;
}

/* Share Buttons */
.share-buttons {
	display: flex;
	align-items: center;
	gap: .6rem;
}
.share-btn {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	color: #fff;
	font-size: .95rem;
	transition: transform .2s ease, opacity .2s ease;
	border: 0;
	cursor: pointer;
	position: relative;
}
.share-btn:hover {
	transform: translateY(-2px);
	opacity: .92;
}
.share-whatsapp { background: #25d366; }
.share-facebook { background: #1877f2; }
.share-x { background: #0f1419; }
.share-linkedin { background: #0a66c2; }
.share-copy {
	background: #f1f5f9;
	color: #475569;
	border: 1px solid var(--flyover-border);
}
.share-copy:hover { color: var(--flyover-navy); }
.copy-tooltip {
	position: absolute;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
	background: var(--flyover-navy);
	color: #fff;
	font-size: .65rem;
	font-weight: 700;
	padding: .2rem .5rem;
	border-radius: .4rem;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease;
	white-space: nowrap;
	pointer-events: none;
}
.share-copy.is-copied .copy-tooltip {
	opacity: 1;
	visibility: visible;
}

/* Rental CTA Widget */
.widget-rental-cta {
	background: linear-gradient(145deg, #1e50d8, #143bae);
	color: #fff;
	border: 0;
	box-shadow: 0 12px 28px rgba(30,80,216,.24);
}
.cta-badge {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	background: rgba(255,255,255,.15);
	font-size: .65rem;
	font-weight: 800;
	padding: .25rem .6rem;
	border-radius: 999px;
	margin-bottom: .75rem;
}
.widget-rental-cta h3 {
	margin: 0 0 .5rem;
	font-size: 1.25rem;
	color: #fff;
}
.widget-rental-cta p {
	font-size: .78rem;
	color: #dbeafe;
	margin: 0 0 1rem;
	line-height: 1.5;
}
.cta-perks {
	list-style: none;
	padding: 0;
	margin: 0 0 1.25rem;
	display: grid;
	gap: .4rem;
	font-size: .75rem;
	font-weight: 700;
	color: #fff;
}
.cta-perks i { color: #34d399; margin-right: .35rem; }
.widget-rental-cta .button {
	width: 100%;
}

/* Recent Posts List */
.recent-posts-list {
	display: grid;
	gap: .85rem;
}
.recent-post-item {
	display: grid;
	grid-template-columns: 60px 1fr;
	gap: .75rem;
	align-items: center;
}
.recent-post-thumb {
	aspect-ratio: 1 / 1;
	border-radius: .55rem;
	overflow: hidden;
	background: #e2e8f0;
	display: block;
}
.recent-post-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.thumb-placeholder {
	width: 100%;
	height: 100%;
	display: grid;
	place-items: center;
	color: #94a3b8;
	font-size: 1.1rem;
	background: #e2e8f0;
}
.recent-post-content h4 {
	margin: 0 0 .25rem;
	font-size: .82rem;
	line-height: 1.35;
	font-weight: 700;
}
.recent-post-content h4 a {
	color: var(--flyover-navy);
	transition: color .2s ease;
}
.recent-post-content h4 a:hover {
	color: var(--flyover-blue);
}
.recent-post-date {
	font-size: .68rem;
	color: var(--flyover-slate);
}

/* Categories List */
.categories-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: .45rem;
}
.categories-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: .5rem .75rem;
	border-radius: .55rem;
	color: #475569;
	font-size: .78rem;
	font-weight: 700;
	background: #f8fafc;
	transition: all .2s ease;
}
.categories-list a:hover {
	background: var(--flyover-blue-soft);
	color: var(--flyover-blue);
}
.cat-count {
	font-size: .7rem;
	background: #fff;
	padding: .15rem .45rem;
	border-radius: 999px;
	color: var(--flyover-slate);
	border: 1px solid var(--flyover-border);
}



@media (max-width: 980px) {
	.primary-nav { gap: .8rem; }
	.header-actions .support-link { display: none; }
	.hero-grid, .split-grid { grid-template-columns: 1fr; }
	.hero-panel { min-height: auto; }
	.booking-card { max-width: 620px; }
	.blog-grid { grid-template-columns: repeat(2, 1fr); }
	.services-grid { grid-template-columns: repeat(2, 1fr); }
	.services-archive-grid { grid-template-columns: 1fr; }
	.service-detail-layout { grid-template-columns: 1fr; gap: 2.5rem; }
	.service-detail-sidebar { position: static; }
	.single-post-layout { grid-template-columns: 1fr; gap: 2.5rem; }
	.blog-sidebar { position: static; max-width: 600px; margin-top: 1rem; }
	.footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
	.container { width: min(100% - 1.25rem, 620px); }
	.primary-nav, .header-actions .button { display: none; }
	.menu-toggle { display: block; }
	.site-header.nav-open .primary-nav { position: absolute; top: 76px; left: 0; right: 0; display: block; padding: .5rem 1.25rem 1.25rem; border-bottom: 1px solid var(--flyover-border); background: #fff; box-shadow: 0 10px 25px rgba(0,0,0,.06); }
	.site-header.nav-open .primary-nav ul,
	.site-header.nav-open .primary-nav .primary-menu-list { display: flex; flex-direction: column; align-items: flex-start; gap: 0; width: 100%; }
	.site-header.nav-open .primary-nav li { width: 100%; }
	.site-header.nav-open .primary-nav a { display: block; width: 100%; padding: .75rem .25rem; border-bottom: 1px solid #f1f5f9; }
	.site-header.nav-open .primary-nav .sub-menu { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: none; padding-left: 1rem; background: #f8fafc; }
	.hero { padding-top: .8rem; }
	.hero-panel { padding: 2rem 1.2rem; border-radius: 1.2rem; }
	.hero h1 { font-size: 2.35rem; }
	.hero-car-art { right: -22%; left: auto; bottom: -4%; width: 82%; opacity: .75; }
	.about-layout { grid-template-columns: 1fr; gap: 2.3rem; }
	.services-grid { grid-template-columns: 1fr; }
	.services-intro { align-items: flex-start; flex-direction: column; gap: .75rem; }
	.services-intro__link { margin-bottom: 0; }
	.service-card { grid-template-columns: 1fr; }
	.service-card__media, .service-card__media img { min-height: 0; height: 100%; }
	.service-archive-card { grid-template-columns: 1fr; }
	.service-archive-card__image { min-height: 220px; height: 220px; }
	.services-archive-hero { padding: 4rem 0; }
	.service-detail-hero { min-height: 430px; }
	.about-collage { max-width: 560px; margin: auto; }
	.process-track { grid-template-columns: 1fr; gap: 1.5rem; }
	.process-arrow { display: none; }
	.process-step p { max-width: 260px; }
	.booking-card .flyover-search__row, .features-grid, .fleet-grid .flyover-grid, .steps-grid, .reviews-grid, .footer-grid, .blog-grid, .post-navigation-cards, .related-posts-grid { grid-template-columns: 1fr; }
	.section { padding: 3.5rem 0; }
	.cta { padding: 2rem 1.4rem; }
}

/* ==========================================================================
   REF CARS FLEET CATALOG & SEARCH (Reference UI Design)
   ========================================================================== */

.cars-page-wrapper {
	background-color: #f7f9fa;
	padding: 2.5rem 0 5rem;
	font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #1e293b;
}

.cars-catalog-container {
	width: min(100% - 3rem, 1380px);
	margin: 0 auto;
}

.cars-main-layout {
	display: grid;
	grid-template-columns: 290px 1fr;
	gap: 2.25rem;
	align-items: start;
}

/* --- SIDEBAR FILTERS --- */
.cars-sidebar {
	background: #ffffff;
	border-radius: 14px;
	padding: 1.25rem 1.35rem 0.5rem;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
	border: 1px solid #eef2f6;
	position: -webkit-sticky;
	position: sticky;
	top: 110px;
	height: calc(100vh - 135px);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	z-index: 50;
}

.admin-bar .cars-sidebar {
	top: 142px;
	height: calc(100vh - 167px);
}

.sidebar-header-actions {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.sidebar-close-btn {
	display: none;
	background: #f1f5f9;
	border: none;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	align-items: center;
	justify-content: center;
	color: #0f172a;
	cursor: pointer;
	font-size: 0.9rem;
	transition: background 0.15s ease;
}

.sidebar-close-btn:hover {
	background: #e2e8f0;
}

.sidebar-modal-backdrop {
	display: none;
	position: fixed;
	inset: 0;
	background: rgba(15, 23, 42, 0.55);
	backdrop-filter: blur(4px);
	z-index: 1000;
	opacity: 0;
	transition: opacity 0.25s ease;
}

.sidebar-modal-footer {
	display: none;
	padding: 0.9rem 1.25rem;
	border-top: 1px solid #f1f5f9;
	background: #ffffff;
	gap: 0.75rem;
	align-items: center;
	flex-shrink: 0;
}

.btn-modal-close {
	flex: 1;
	background: #f1f5f9;
	color: #0f172a;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 0.75rem 1rem;
	font-size: 0.9rem;
	font-weight: 600;
	cursor: pointer;
}

.btn-modal-apply {
	flex: 1.5;
	text-align: center;
	padding: 0.75rem 1rem;
	border-radius: 8px;
	font-size: 0.9rem;
	font-weight: 700;
	cursor: pointer;
}

.mobile-filter-btn {
	display: none;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 0.5rem 0.85rem;
	font-size: 0.82rem;
	font-weight: 700;
	color: #0f172a;
	align-items: center;
	gap: 0.45rem;
	cursor: pointer;
	box-shadow: 0 1px 2px rgba(0,0,0,0.04);
}

.mobile-filter-btn i {
	color: var(--flyover-blue, #1e50d8);
}

.sidebar-scrollable-body {
	flex: 1;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding-right: 0.2rem;
	padding-bottom: 1.25rem;
	scrollbar-width: none; /* Firefox */
	-ms-overflow-style: none; /* IE / Edge */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.sidebar-scrollable-body::-webkit-scrollbar {
	display: none;
	width: 0;
	height: 0;
}

.sidebar-title {
	font-size: 1.15rem;
	font-weight: 700;
	color: #0f172a;
}

.sidebar-reset-link {
	background: none;
	border: none;
	color: #64748b;
	font-size: 0.82rem;
	font-weight: 600;
	cursor: pointer;
	text-decoration: underline;
	transition: color 0.15s ease;
	padding: 0;
}

.sidebar-reset-link:hover {
	color: #0f172a;
}

.sidebar-filter-item {
	padding: 1.1rem 0;
}

.sidebar-filter-item.border-bottom {
	border-bottom: 1px solid #f1f5f9;
}

.filter-label-uppercase {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: #64748b;
	text-transform: uppercase;
}

/* Toggle Switch (Available Now) */
.filter-toggle-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.ref-toggle-switch {
	position: relative;
	display: inline-block;
	width: 44px;
	height: 24px;
}

.ref-toggle-switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

.ref-toggle-slider {
	position: absolute;
	cursor: pointer;
	top: 0; left: 0; right: 0; bottom: 0;
	background-color: #cbd5e1;
	transition: .25s ease;
	border-radius: 24px;
}

.ref-toggle-slider:before {
	position: absolute;
	content: "";
	height: 18px;
	width: 18px;
	left: 3px;
	bottom: 3px;
	background-color: white;
	transition: .25s ease;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

.ref-toggle-switch input:checked + .ref-toggle-slider {
	background-color: #0f172a;
}

.ref-toggle-switch input:checked + .ref-toggle-slider:before {
	transform: translateX(20px);
}

/* Accordion Headers */
.filter-accordion-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	user-select: none;
	margin-bottom: 0.9rem;
}

.accordion-toggle-icon {
	background: none;
	border: none;
	color: #94a3b8;
	font-size: 0.78rem;
	cursor: pointer;
	transition: transform 0.2s ease, color 0.15s ease;
	padding: 0;
}

.sidebar-filter-item:not(.is-open) .accordion-toggle-icon i {
	transform: rotate(180deg);
}

.sidebar-filter-item:not(.is-open) .filter-accordion-body {
	display: none;
}

/* Price Histogram */
.price-histogram {
	display: flex;
	align-items: flex-end;
	gap: 3px;
	height: 38px;
	margin-bottom: 0.4rem;
	padding: 0 4px;
}

.price-histogram span {
	flex: 1;
	background: #cbd5e1;
	border-radius: 2px 2px 0 0;
	transition: background 0.2s ease;
}

.price-histogram span:nth-child(n+4):nth-child(-n+13) {
	background: #64748b;
}

.ref-price-slider {
	width: 100%;
	appearance: none;
	-webkit-appearance: none;
	background: #e2e8f0;
	height: 4px;
	border-radius: 2px;
	outline: none;
	margin: 0.5rem 0 1.1rem;
	cursor: pointer;
}

.ref-price-slider::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #0f172a;
	border: 2px solid #ffffff;
	box-shadow: 0 1px 4px rgba(0,0,0,0.25);
	cursor: pointer;
}

.price-box-inputs {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.price-input-group {
	flex: 1;
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 0.35rem 0.6rem;
}

.price-tag-label {
	display: block;
	font-size: 0.65rem;
	color: #94a3b8;
	font-weight: 600;
	text-transform: uppercase;
}

.price-field-wrap {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}

.curr-sign {
	font-size: 0.72rem;
	font-weight: 700;
	color: #64748b;
}

.price-field-wrap input {
	width: 100%;
	border: none;
	background: transparent;
	font-size: 0.85rem;
	font-weight: 700;
	color: #0f172a;
	padding: 0;
	outline: none;
}

.price-sep {
	color: #94a3b8;
	font-weight: 600;
}

/* Checkbox Grid (Custom clean reference style) */
.filter-checkbox-grid {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.filter-checkbox-grid.two-cols {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.65rem 0.5rem;
}

.ref-checkbox-label {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	cursor: pointer;
	user-select: none;
}

.ref-checkbox-label input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}

.ref-checkbox-box {
	width: 17px;
	height: 17px;
	border: 1.5px solid #cbd5e1;
	border-radius: 4px;
	background: #ffffff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: all 0.15s ease;
	flex-shrink: 0;
}

.ref-checkbox-label input:checked ~ .ref-checkbox-box {
	background: #0f172a;
	border-color: #0f172a;
}

.ref-checkbox-label input:checked ~ .ref-checkbox-box:after {
	content: '\f00c';
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	color: #ffffff;
	font-size: 0.65rem;
}

.checkbox-text {
	font-size: 0.82rem;
	font-weight: 500;
	color: #334155;
	line-height: 1.2;
}

.ref-checkbox-label:hover .checkbox-text {
	color: #0f172a;
}

/* Transmission / Drive Pills */
.transmission-pills-row {
	display: flex;
	background: #f1f5f9;
	padding: 3px;
	border-radius: 8px;
	gap: 2px;
}

.trans-pill, .drive-pill {
	flex: 1;
	border: none;
	background: transparent;
	padding: 0.45rem 0.35rem;
	font-size: 0.78rem;
	font-weight: 600;
	color: #64748b;
	border-radius: 6px;
	cursor: pointer;
	transition: all 0.15s ease;
	text-align: center;
}

.trans-pill.is-active, .drive-pill.is-active {
	background: #ffffff;
	color: #0f172a;
	box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}


/* --- RIGHT CONTENT AREA --- */
.cars-content-area {
	min-width: 0;
}

/* Top Toolbar */
.cars-top-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.toolbar-stats .stats-text {
	font-size: 0.95rem;
	color: #64748b;
	font-weight: 500;
}

.toolbar-stats .stats-text strong {
	color: #0f172a;
	font-weight: 700;
}

.toolbar-controls {
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

/* Sort Select */
.ref-sort-wrapper {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.ref-sort-select {
	appearance: none;
	-webkit-appearance: none;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 0.5rem 2rem 0.5rem 0.85rem;
	font-size: 0.82rem;
	font-weight: 600;
	color: #334155;
	cursor: pointer;
	box-shadow: 0 1px 2px rgba(0,0,0,0.03);
}

.ref-sort-select:focus {
	outline: none;
	border-color: #94a3b8;
}

.sort-chevron {
	position: absolute;
	right: 0.75rem;
	font-size: 0.75rem;
	color: #64748b;
	pointer-events: none;
}

/* Show Map Pill */
.show-map-btn {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	padding: 0.5rem 0.85rem;
	font-size: 0.82rem;
	font-weight: 600;
	color: #334155;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	cursor: pointer;
	box-shadow: 0 1px 2px rgba(0,0,0,0.03);
	transition: all 0.15s ease;
}

.show-map-btn:hover {
	background: #f8fafc;
	color: #0f172a;
}

.show-map-btn.is-active {
	background: #0f172a;
	color: #ffffff;
	border-color: #0f172a;
}

/* Grid / List Switcher */
.ref-view-switcher {
	display: inline-flex;
	background: #f1f5f9;
	padding: 3px;
	border-radius: 8px;
	gap: 2px;
}

.view-mode-btn {
	border: none;
	background: transparent;
	width: 32px;
	height: 32px;
	border-radius: 6px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.9rem;
	color: #64748b;
	cursor: pointer;
	transition: all 0.15s ease;
}

.view-mode-btn.is-active {
	background: #ffffff;
	color: #0f172a;
	box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}

/* Map Drawer */
.cars-map-drawer {
	background: #e2e8f0;
	border-radius: 12px;
	padding: 2.5rem 1.5rem;
	text-align: center;
	margin-bottom: 1.5rem;
	border: 1px dashed #cbd5e1;
}

.map-inner-placeholder i {
	font-size: 2rem;
	color: #0f172a;
	margin-bottom: 0.5rem;
}

.map-inner-placeholder h4 {
	font-size: 1.05rem;
	font-weight: 700;
	margin-bottom: 0.25rem;
	color: #0f172a;
}

.map-inner-placeholder p {
	color: #64748b;
	font-size: 0.85rem;
}


/* --- VEHICLE CATALOG GRID --- */
.cars-catalog-grid.view-is-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

/* --- THE REFERENCE CARD DESIGN --- */
.ref-car-card {
	background: #ffffff;
	border-radius: 14px;
	border: 1px solid #edf2f7;
	overflow: hidden;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
	display: flex;
	flex-direction: column;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.ref-car-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 22px rgba(0, 0, 0, 0.06);
}

/* Media Area */
.ref-car-card__media {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 10;
	background: #f1f5f9;
	overflow: hidden;
}

.ref-media-link {
	display: block;
	width: 100%;
	height: 100%;
}

.ref-car-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.ref-car-card:hover .ref-car-card__media img {
	transform: scale(1.03);
}

.ref-card-price-overlay {
	position: absolute;
	bottom: 0.75rem;
	right: 0.75rem;
	background: rgba(15, 23, 42, 0.85);
	backdrop-filter: blur(4px);
	padding: 0.3rem 0.65rem;
	border-radius: 6px;
}

.ref-price-tag {
	font-size: 0.82rem;
	font-weight: 700;
	color: #ffffff;
}

.ref-price-tag small {
	font-size: 0.68rem;
	font-weight: 500;
	opacity: 0.8;
}

/* Card Body */
.ref-car-card__body {
	padding: 1.25rem 1.25rem 1.4rem;
	display: flex;
	flex-direction: column;
	flex: 1;
}

/* Headline */
.ref-car-card__headline {
	margin-bottom: 0.55rem;
}

.ref-car-brand {
	font-size: 0.95rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #0f172a;
	margin: 0 0 0.2rem;
}

.ref-car-submodel {
	font-size: 0.82rem;
	color: #64748b;
	margin: 0;
	font-weight: 500;
	line-height: 1.35;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.ref-car-submodel a {
	color: inherit;
	text-decoration: none;
	transition: color 0.15s ease;
}

.ref-car-submodel a:hover {
	color: #0f172a;
}

/* Pickup Time Row */
.ref-car-time-row {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	margin-bottom: 1.1rem;
}

.time-status-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: #10b981;
}

.time-text {
	font-size: 0.75rem;
	font-weight: 500;
	color: #64748b;
}

/* 4-Specs Matrix (2x2 matching reference image) */
.ref-car-specs-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.85rem 0.5rem;
	padding-top: 0.9rem;
	border-top: 1px solid #f1f5f9;
	margin-bottom: 1.35rem;
}

.ref-spec-item {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
}

.ref-spec-head {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	color: #94a3b8;
}

.ref-spec-head .spec-icon {
	font-size: 0.75rem;
}

.ref-spec-head .spec-label {
	font-size: 0.72rem;
	color: #94a3b8;
	font-weight: 500;
}

.ref-spec-item .spec-value {
	font-size: 0.82rem;
	font-weight: 700;
	color: #1e293b;
	margin-left: 1.1rem;
}

/* Action Button: Solid Dark Full Width */
.ref-car-card__action {
	margin-top: auto;
}

.ref-view-details-btn {
	display: block;
	width: 100%;
	text-align: center;
	background: #111827;
	color: #ffffff;
	font-size: 0.85rem;
	font-weight: 600;
	padding: 0.72rem 1rem;
	border-radius: 9px;
	text-decoration: none;
	transition: background-color 0.18s ease, transform 0.15s ease;
	border: 1px solid #111827;
}

.ref-view-details-btn:hover {
	background: #000000;
	color: #ffffff;
	transform: translateY(-1px);
}

/* Empty State */
.cars-empty-state {
	grid-column: 1 / -1;
	background: #ffffff;
	border-radius: 14px;
	padding: 3.5rem 1.5rem;
	text-align: center;
	border: 1px solid #edf2f7;
}

.cars-empty-state i {
	font-size: 2.8rem;
	color: #cbd5e1;
	margin-bottom: 1rem;
}

.cars-empty-state h3 {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 0.4rem;
	color: #0f172a;
}

.cars-empty-state p {
	color: #64748b;
	font-size: 0.9rem;
	margin-bottom: 1.2rem;
}


/* --- LIST VIEW MODE --- */
.cars-catalog-grid.view-is-list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.cars-catalog-grid.view-is-list .ref-car-card {
	flex-direction: row;
}

.cars-catalog-grid.view-is-list .ref-car-card__media {
	width: 320px;
	aspect-ratio: auto;
	flex-shrink: 0;
}

.cars-catalog-grid.view-is-list .ref-car-card__body {
	padding: 1.4rem 1.6rem;
}

.cars-catalog-grid.view-is-list .ref-car-specs-grid {
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

.cars-catalog-grid.view-is-list .ref-car-card__action {
	max-width: 200px;
}


/* --- RESPONSIVE BREAKPOINTS --- */
@media (max-width: 1200px) {
	.cars-catalog-grid.view-is-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.cars-main-layout {
		grid-template-columns: 1fr;
	}

	/* Show mobile filter trigger button */
	.mobile-filter-btn {
		display: inline-flex;
	}

	/* Hide desktop Show map button to keep toolbar clean */
	.show-map-btn {
		display: none !important;
	}

	/* Bottom Sheet Modal Transformation */
	.cars-sidebar {
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		top: auto !important;
		width: 100%;
		height: auto;
		max-height: 82vh;
		background: #ffffff;
		border-radius: 20px 20px 0 0;
		box-shadow: 0 -8px 30px rgba(0, 0, 0, 0.2);
		z-index: 1001;
		transform: translateY(105%);
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
		padding: 1.25rem 1.4rem 0.5rem;
		display: flex;
		flex-direction: column;
		border: none;
	}

	.cars-sidebar.modal-is-open {
		transform: translateY(0);
	}

	.sidebar-modal-backdrop.is-active {
		display: block;
		opacity: 1;
	}

	.sidebar-close-btn {
		display: inline-flex;
	}

	.sidebar-modal-footer {
		display: flex;
	}

	.sidebar-scrollable-body {
		overflow-y: auto;
		max-height: calc(82vh - 140px);
	}

	body.sidebar-modal-locked {
		overflow: hidden;
	}

	.cars-content-area {
		order: 1;
	}
	.cars-catalog-grid.view-is-list .ref-car-card {
		flex-direction: column;
	}
	.cars-catalog-grid.view-is-list .ref-car-card__media {
		width: 100%;
		aspect-ratio: 16 / 10;
	}
	.cars-catalog-grid.view-is-list .ref-car-specs-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.cars-catalog-grid.view-is-grid {
		grid-template-columns: 1fr;
	}
	.cars-top-toolbar {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 0.75rem;
	}
	.toolbar-stats {
		width: 100%;
	}
	.toolbar-controls {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 0.5rem;
	}
	.ref-sort-wrapper {
		flex: 1;
	}
	.ref-sort-select {
		width: 100%;
		min-width: 0;
	}
}

/* ==========================================================================
   SINGLE VEHICLE DETAILS PAGE (/cars/{slug}/)
   ========================================================================== */

.single-car-wrapper {
	background-color: #f8fafc;
	padding: 1.5rem 0 5rem;
	font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	color: #0f172a;
}

.single-car-container {
	width: min(100% - 2.5rem, 1280px);
	margin: 0 auto;
}

/* Breadcrumbs */
.single-car-breadcrumbs {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.84rem;
	color: #64748b;
	margin-bottom: 1.5rem;
	flex-wrap: nowrap;
	overflow: hidden;
	white-space: nowrap;
}

.bc-home-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #64748b;
	font-size: 0.95rem;
	transition: color 0.15s ease;
}

.bc-home-link:hover, .bc-link:hover {
	color: #0f172a;
}

.bc-sep {
	font-size: 0.65rem;
	color: #cbd5e1;
	flex-shrink: 0;
}

.bc-link {
	color: #64748b;
	text-decoration: none;
	flex-shrink: 0;
}

.bc-current {
	color: #0f172a;
	font-weight: 700;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hero-category-btn {
	background: #3b1d11;
	color: #ffffff;
	padding: 0.55rem 1.15rem;
	border-radius: 8px;
	font-size: 0.85rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	transition: background 0.15s ease;
	border: 1px solid #3b1d11;
}

.hero-category-btn:hover {
	background: #1f0f08;
	color: #ffffff;
}

.hero-calc-btn {
	background: #ffffff;
	border: 1px solid #cbd5e1;
	color: #0f172a;
	padding: 0.55rem 1.15rem;
	border-radius: 8px;
	font-size: 0.85rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	text-decoration: none;
	transition: all 0.15s ease;
}

.hero-calc-btn:hover {
	border-color: #0f172a;
	background: #f8fafc;
	color: #0f172a;
}

/* Reference Hero Banner */
.single-car-hero-banner {
	background: #ffffff;
	border-radius: 20px;
	padding: 2.5rem 3rem;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
	border: 1px solid #edf2f7;
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	align-items: center;
	gap: 2.5rem;
	margin-bottom: 2.5rem;
	position: relative;
	overflow: hidden;
}

.single-car-hero-banner::after {
	content: '';
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 50%;
	background: radial-gradient(circle at 80% 50%, rgba(254, 243, 199, 0.45) 0%, rgba(255, 255, 255, 0) 70%);
	pointer-events: none;
}

.hero-year-badge {
	display: inline-block;
	font-size: 0.82rem;
	font-weight: 700;
	color: #64748b;
	margin-bottom: 0.45rem;
}

.hero-car-title {
	font-size: 2.5rem;
	font-weight: 800;
	line-height: 1.15;
	color: #0f172a;
	margin: 0 0 1rem;
	letter-spacing: -0.02em;
}

.hero-price-meta {
	margin-bottom: 1.25rem;
}

.hero-price-sub {
	display: block;
	font-size: 0.8rem;
	color: #64748b;
	margin-bottom: 0.15rem;
}

.hero-price-val {
	display: flex;
	align-items: baseline;
	gap: 0.35rem;
}

.hero-price-val strong {
	font-size: 1.8rem;
	font-weight: 800;
	color: #0f172a;
}

.hero-price-val span {
	font-size: 0.95rem;
	color: #64748b;
	font-weight: 600;
}

.hero-actions-row {
	display: flex;
	align-items: center;
	gap: 0.85rem;
	margin-bottom: 1.5rem;
}

.hero-variant-pill {
	background: #451a03;
	color: #ffffff;
	padding: 0.5rem 1rem;
	border-radius: 8px;
	font-size: 0.82rem;
	font-weight: 700;
}

.hero-calc-btn {
	background: #ffffff;
	border: 1px solid #cbd5e1;
	color: #334155;
	padding: 0.5rem 1rem;
	border-radius: 8px;
	font-size: 0.82rem;
	font-weight: 700;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	text-decoration: none;
	transition: all 0.15s ease;
}

.hero-calc-btn:hover {
	border-color: #0f172a;
	color: #0f172a;
}

.hero-rating-row {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.85rem;
	font-weight: 600;
}

.hero-stars {
	color: #f59e0b;
	display: flex;
	gap: 2px;
	font-size: 0.82rem;
}

.rating-number {
	color: #334155;
}

.rating-sep {
	color: #cbd5e1;
}

.rating-reviews-count a {
	color: #64748b;
	text-decoration: underline;
}

/* Hero Media Slider */
.single-car-hero-media {
	position: relative;
	z-index: 2;
}

.hero-slider-wrap {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hero-slider-wrap img {
	width: 100%;
	max-height: 380px;
	object-fit: contain;
	filter: drop-shadow(0 15px 25px rgba(0, 0, 0, 0.12));
	transition: opacity 0.25s ease;
}

.hero-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #0f172a;
	cursor: pointer;
	transition: all 0.15s ease;
	z-index: 3;
}

.hero-arrow:hover {
	background: #0f172a;
	color: #ffffff;
}

.hero-arrow--prev { left: -15px; }
.hero-arrow--next { right: -15px; }

/* Main Layout: Left Content & Right Sidebar */
.single-car-layout {
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 2.25rem;
	align-items: start;
	margin-bottom: 3.5rem;
}

.single-car-card {
	background: #ffffff;
	border-radius: 16px;
	padding: 1.8rem 2rem;
	border: 1px solid #edf2f7;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
	margin-bottom: 2rem;
}

.card-section-title {
	font-size: 1.25rem;
	font-weight: 800;
	color: #0f172a;
	margin: 0 0 1.25rem;
}

/* Key Specs Grid */
.key-specs-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
	margin-bottom: 1.5rem;
}

.key-spec-box {
	background: #f8fafc;
	border: 1px solid #f1f5f9;
	border-radius: 12px;
	padding: 1rem;
	display: flex;
	align-items: center;
	gap: 0.85rem;
}

.key-spec-icon {
	width: 40px;
	height: 40px;
	border-radius: 10px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #1e50d8;
	font-size: 1.1rem;
	flex-shrink: 0;
}

.key-spec-info {
	display: flex;
	flex-direction: column;
}

.key-spec-info .spec-label {
	font-size: 0.72rem;
	font-weight: 600;
	color: #64748b;
	text-transform: uppercase;
}

.key-spec-info .spec-value {
	font-size: 0.95rem;
	font-weight: 800;
	color: #0f172a;
}

.specs-chars-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	padding-top: 1.25rem;
	border-top: 1px solid #f1f5f9;
}

.spec-chip {
	background: #f1f5f9;
	color: #334155;
	font-size: 0.82rem;
	font-weight: 600;
	padding: 0.4rem 0.85rem;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.spec-chip i {
	color: #1e50d8;
}

/* Overview prose */
.overview-prose {
	color: #475569;
	font-size: 0.95rem;
	line-height: 1.7;
}

/* Gallery Thumbnails */
.single-car-thumbnails {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 0.85rem;
}

.thumb-item {
	aspect-ratio: 16 / 10;
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid transparent;
	cursor: pointer;
	background: #f1f5f9;
	transition: all 0.18s ease;
}

.thumb-item:hover, .thumb-item.is-active {
	border-color: #1e50d8;
	transform: scale(1.02);
}

.thumb-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Reviews */
.reviews-header-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1.5rem;
}

.section-subtitle {
	color: #64748b;
	font-size: 0.85rem;
	margin: -0.8rem 0 0;
}

.overall-score-pill {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 0.6rem 1rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.score-num {
	font-size: 1.4rem;
	font-weight: 800;
	color: #0f172a;
}

.score-stars {
	color: #f59e0b;
	font-size: 0.78rem;
	display: flex;
	gap: 2px;
}

.reviews-list {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-bottom: 2rem;
}

.review-item {
	background: #f8fafc;
	border: 1px solid #f1f5f9;
	border-radius: 12px;
	padding: 1.25rem 1.4rem;
}

.review-author-row {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin-bottom: 0.65rem;
}

.review-avatar {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #0f172a;
	color: #ffffff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 0.85rem;
}

.review-meta {
	flex: 1;
	display: flex;
	flex-direction: column;
}

.author-name {
	font-size: 0.9rem;
	color: #0f172a;
}

.review-date {
	font-size: 0.72rem;
	color: #64748b;
}

.review-rating-stars {
	color: #f59e0b;
	font-size: 0.75rem;
	display: flex;
	gap: 2px;
}

.review-text {
	color: #334155;
	font-size: 0.88rem;
	line-height: 1.55;
	margin: 0;
}

/* Post a Review Form */
.add-review-wrapper {
	background: #f1f5f9;
	border-radius: 12px;
	padding: 1.4rem 1.5rem;
}

.add-review-title {
	font-size: 1.05rem;
	font-weight: 800;
	margin: 0 0 1rem;
	color: #0f172a;
}

.rating-picker-row {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-size: 0.85rem;
	font-weight: 600;
	margin-bottom: 1rem;
}

.star-rating-select {
	display: flex;
	gap: 4px;
	cursor: pointer;
}

.star-rating-select i {
	font-size: 1.1rem;
	color: #cbd5e1;
	transition: color 0.15s ease;
}

.star-rating-select i.is-active {
	color: #f59e0b;
}

.review-inputs-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.75rem;
	margin-bottom: 0.75rem;
}

.single-review-form input,
.single-review-form textarea {
	width: 100%;
	background: #ffffff;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	padding: 0.65rem 0.85rem;
	font-size: 0.85rem;
	color: #0f172a;
	outline: none;
}

.single-review-form textarea {
	margin-bottom: 1rem;
	resize: vertical;
}

.review-feedback {
	margin-top: 0.75rem;
	padding: 0.6rem 0.85rem;
	border-radius: 6px;
	font-size: 0.82rem;
	font-weight: 600;
	background: #dcfce7;
	color: #166534;
}

/* --- RIGHT SIDEBAR: QUICK BOOKING --- */
.single-car-sidebar {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	position: -webkit-sticky;
	position: sticky;
	top: 100px;
}

.admin-bar .single-car-sidebar {
	top: 135px;
}

.single-booking-card {
	background: #ffffff;
	border-radius: 16px;
	padding: 1.6rem 1.6rem 1.8rem;
	border: 1px solid #edf2f7;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.booking-card-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-bottom: 1.1rem;
	border-bottom: 1px solid #f1f5f9;
	margin-bottom: 1.25rem;
}

.booking-card-eyebrow {
	font-size: 0.82rem;
	font-weight: 700;
	color: #1e50d8;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.booking-card-price strong {
	font-size: 1.35rem;
	font-weight: 800;
	color: #0f172a;
}

.booking-card-price span {
	font-size: 0.8rem;
	color: #64748b;
}

.single-vehicle-booking-form {
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.form-field-group {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.form-field-group label {
	font-size: 0.75rem;
	font-weight: 700;
	color: #475569;
	text-transform: uppercase;
}

.form-field-group input,
.form-field-group select {
	width: 100%;
	background: #f8fafc;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	padding: 0.55rem 0.75rem;
	font-size: 0.85rem;
	color: #0f172a;
	outline: none;
}

.form-fields-dual {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 0.65rem;
}

.single-booking-summary {
	background: #f1f5f9;
	border-radius: 10px;
	padding: 0.85rem 1rem;
	margin: 0.5rem 0;
}

.summary-line {
	display: flex;
	justify-content: space-between;
	font-size: 0.82rem;
	margin-bottom: 0.35rem;
	color: #475569;
}

.summary-line.summary-total {
	font-size: 0.95rem;
	border-top: 1px dashed #cbd5e1;
	padding-top: 0.45rem;
	margin-top: 0.45rem;
	font-weight: 800;
	color: #0f172a;
}

.total-amount {
	color: #1e50d8;
}

.summary-note {
	font-size: 0.72rem;
	color: #64748b;
	margin: 0.5rem 0 0;
	line-height: 1.35;
}

.single-submit-btn {
	width: 100%;
	display: block;
	text-align: center;
	padding: 0.85rem 1rem;
	border-radius: 9px;
	font-weight: 700;
	font-size: 0.92rem;
	margin-top: 0.5rem;
}

/* Features Card */
.single-features-card {
	background: #ffffff;
	border-radius: 16px;
	padding: 1.4rem 1.6rem;
	border: 1px solid #edf2f7;
}

.single-features-card h3 {
	font-size: 1rem;
	font-weight: 800;
	margin: 0 0 0.85rem;
	color: #0f172a;
}

.inclusions-list {
	list-style: none !important;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.inclusions-list li {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	font-size: 0.82rem;
	color: #334155;
	font-weight: 500;
}

.inclusions-list li i {
	color: #10b981;
	font-size: 0.88rem;
}

/* Support Card */
.single-support-card {
	background: #0f172a;
	color: #ffffff;
	border-radius: 16px;
	padding: 1.4rem 1.6rem;
	display: flex;
	align-items: center;
	gap: 1rem;
}

.support-icon-wrap {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.25rem;
	color: #60a5fa;
	flex-shrink: 0;
}

.support-text h4 {
	font-size: 0.95rem;
	font-weight: 700;
	margin: 0 0 0.2rem;
	color: #ffffff;
}

.support-text p {
	font-size: 0.78rem;
	color: #94a3b8;
	margin: 0 0 0.35rem;
}

.support-tel-link {
	color: #60a5fa;
	font-weight: 700;
	font-size: 0.95rem;
	text-decoration: underline;
}

/* Related Vehicles Section */
.single-related-section {
	margin-top: 2rem;
	padding-top: 3rem;
	border-top: 1px solid #e2e8f0;
}

.related-section-header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 2rem;
}

.related-section-header .section-title {
	font-size: 1.8rem;
	font-weight: 800;
	margin: 0;
	color: #0f172a;
}

/* Responsive adjustments for Single Car Page */
@media (max-width: 1024px) {
	.single-car-hero-banner {
		grid-template-columns: 1fr;
		padding: 2rem;
	}
	.single-car-layout {
		grid-template-columns: 1fr;
	}
	.single-car-sidebar {
		position: static;
	}
}

@media (max-width: 768px) {
	.single-car-wrapper {
		padding: 1rem 0 3.5rem;
	}
	.single-car-container {
		width: calc(100% - 1.5rem);
		padding: 0;
	}
	.single-car-hero-banner {
		padding: 1.5rem 1.25rem;
		border-radius: 14px;
		margin-bottom: 1.5rem;
	}
	.single-car-card {
		padding: 1.25rem 1.1rem;
		border-radius: 14px;
		margin-bottom: 1.25rem;
	}
	.key-specs-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 0.65rem;
	}
	.key-spec-box {
		padding: 0.75rem 0.65rem;
		gap: 0.5rem;
	}
	.key-spec-icon {
		width: 34px;
		height: 34px;
		font-size: 0.95rem;
	}
	.key-spec-info .spec-value {
		font-size: 0.85rem;
	}
	.single-car-thumbnails {
		grid-template-columns: repeat(2, 1fr);
	}
	.hero-car-title {
		font-size: 1.65rem;
	}
	.hero-slider-wrap img {
		max-height: 240px;
	}
	.related-section-header {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}
}

/* ==========================================================================
   BOOKING CONFIRMATION & CLEAN PRINT INVOICE STYLES
   ========================================================================== */

.flyover-confirm-wrap {
	max-width: 860px;
	margin: 2.5rem auto 4.5rem;
	padding: 0 1rem;
	font-family: 'Plus Jakarta Sans', system-ui, sans-serif;
	color: #0f172a;
}

.confirm-success-hero {
	text-align: center;
	background: #ffffff;
	border: 1px solid #eef2f6;
	border-radius: 18px;
	padding: 2.5rem 2rem;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
	margin-bottom: 1.75rem;
}

.confirm-check-icon i {
	font-size: 3.2rem;
	color: #10b981;
	margin-bottom: 0.65rem;
}

.confirm-badge {
	display: inline-block;
	background: #ecfdf5;
	color: #047857;
	font-size: 0.78rem;
	font-weight: 700;
	padding: 0.35rem 0.85rem;
	border-radius: 999px;
	margin-bottom: 0.85rem;
}

.confirm-success-hero h2 {
	font-size: 1.85rem;
	font-weight: 800;
	margin: 0 0 0.5rem;
	color: #0f172a;
}

.confirm-subtitle {
	color: #64748b;
	font-size: 0.95rem;
	margin: 0;
	max-width: 580px;
	margin-inline: auto;
}

/* Skimmable Snapshot Grid */
.confirm-summary-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
	margin-bottom: 2rem;
}

.confirm-summary-card {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 1.15rem 1.1rem;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
}

.confirm-summary-card.highlight {
	background: #f8fafc;
	border-color: #cbd5e1;
}

.confirm-summary-card .card-tag {
	font-size: 0.7rem;
	font-weight: 700;
	color: #64748b;
	text-transform: uppercase;
}

.confirm-summary-card strong {
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
}

.confirm-summary-card .price-val {
	color: #1e50d8;
	font-size: 1.15rem;
}

.confirm-summary-card small {
	font-size: 0.75rem;
	color: #64748b;
}

/* Invoice Container */
.confirm-invoice-container {
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 18px;
	padding: 2.5rem;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
	margin-bottom: 2rem;
}

.flyover-invoice__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-bottom: 1.5rem;
	border-bottom: 2px solid #0f172a;
	margin-bottom: 1.75rem;
}

.flyover-invoice__head h1 {
	font-size: 1.6rem;
	font-weight: 800;
	margin: 0 0 0.35rem;
	color: #0f172a;
}

.flyover-invoice__meta {
	text-align: right;
	font-size: 0.85rem;
	color: #475569;
}

.flyover-invoice__parties {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid #f1f5f9;
	margin-bottom: 1.75rem;
}

.flyover-invoice__parties h2 {
	font-size: 0.82rem;
	font-weight: 800;
	text-transform: uppercase;
	color: #64748b;
	margin: 0 0 0.65rem;
}

.flyover-invoice__table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 1.5rem;
}

.flyover-invoice__table th {
	background: #f8fafc;
	font-size: 0.78rem;
	text-transform: uppercase;
	padding: 0.8rem 1rem;
	text-align: left;
	color: #475569;
	border-bottom: 1px solid #cbd5e1;
}

.flyover-invoice__table td {
	padding: 0.95rem 1rem;
	border-bottom: 1px solid #f1f5f9;
	font-size: 0.9rem;
	color: #1e293b;
}

.flyover-invoice__table tfoot th {
	font-size: 1.05rem;
	font-weight: 800;
	background: #ffffff;
	border-top: 2px solid #0f172a;
	padding: 1rem;
}

.flyover-invoice__pay {
	font-size: 0.82rem;
	color: #64748b;
	margin: 0;
}

/* Actions Bar */
.confirm-actions-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}

.btn-print-invoice {
	background: #0f172a;
	color: #ffffff;
	border: 1px solid #0f172a;
	padding: 0.85rem 1.6rem;
	border-radius: 9px;
	font-size: 0.9rem;
	font-weight: 700;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	transition: background 0.15s ease;
}

.btn-print-invoice:hover {
	background: #000000;
}

.btn-back-fleet {
	background: #ffffff;
	border: 1px solid #cbd5e1;
	color: #334155;
	padding: 0.85rem 1.4rem;
	border-radius: 9px;
	font-size: 0.9rem;
	font-weight: 700;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	transition: all 0.15s ease;
}

.btn-back-fleet:hover {
	border-color: #0f172a;
	color: #0f172a;
}

/* --- PRINT RULES: ONLY THE INVOICE, NO HEADER, NO FOOTER, NO ACTIONS --- */
@media print {
	/* Hide Site Chrome */
	.site-header,
	.site-footer,
	.confirm-success-hero,
	.confirm-summary-grid,
	.confirm-actions-bar,
	#wpadminbar {
		display: none !important;
		visibility: hidden !important;
	}

	body, html {
		background: #ffffff !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.page-content,
	.flyover-confirm-wrap {
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.confirm-invoice-container {
		border: none !important;
		box-shadow: none !important;
		padding: 0 !important;
		margin: 0 !important;
	}
}

@media (max-width: 768px) {
	.confirm-summary-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.confirm-actions-bar {
		flex-direction: column;
	}
	.btn-print-invoice, .btn-back-fleet {
		width: 100%;
		justify-content: center;
	}
}


/* ==========================================================================
   WHY CHOOSE US SECTION (Matches Reference Design)
   ========================================================================== */
.why-choose-section {
	padding: 5rem 0;
	background: #f8fafc;
}

.why-choose-card {
	background: #ffffff;
	border-radius: 24px;
	padding: 3.5rem 3.5rem;
	box-shadow: 0 10px 40px rgba(15, 23, 42, 0.04);
	border: 1px solid #f1f5f9;
}

.why-choose-grid {
	display: grid;
	grid-template-columns: 440px 1fr;
	gap: 3.5rem;
	align-items: center;
}

/* Image with Arched / Rounded Corner & Cross Deco */
.why-image-column {
	position: relative;
}

.why-image-frame {
	position: relative;
	border-top-left-radius: 90px;
	border-top-right-radius: 20px;
	border-bottom-right-radius: 40px;
	border-bottom-left-radius: 20px;
	overflow: visible;
	background: #e2e8f0;
	aspect-ratio: 4 / 3.8;
}

.why-image-frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-top-left-radius: 90px;
	border-top-right-radius: 20px;
	border-bottom-right-radius: 40px;
	border-bottom-left-radius: 20px;
}

.why-frame-deco {
	position: absolute;
	bottom: -15px;
	left: -15px;
	width: 48px;
	height: 48px;
	background: #047857;
	color: #ffffff;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	box-shadow: 0 4px 12px rgba(4, 120, 87, 0.3);
	z-index: 2;
}

/* Content Column */
.why-eyebrow-row {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 0.85rem;
}

.why-eyebrow-dot {
	width: 8px;
	height: 8px;
	background: #10b981;
	border-radius: 2px;
}

.why-eyebrow-text {
	font-size: 0.92rem;
	font-weight: 700;
	color: #10b981;
}

.why-main-title {
	font-size: 2.35rem;
	font-weight: 800;
	line-height: 1.22;
	color: #0f172a;
	margin: 0 0 1.15rem;
	letter-spacing: -0.02em;
}

.why-title-badge {
	display: inline-block;
	background: #10b981;
	color: #ffffff;
	padding: 0.15rem 0.65rem;
	border-radius: 6px;
	font-weight: 800;
}

.why-main-description {
	color: #64748b;
	font-size: 0.95rem;
	line-height: 1.65;
	margin: 0 0 2.2rem;
	max-width: 600px;
}

/* 2x2 Feature Matrix */
.why-features-matrix {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem 2.2rem;
}

.why-feature-item {
	display: flex;
	align-items: flex-start;
	gap: 1.1rem;
}

.why-feature-icon {
	width: 44px;
	height: 44px;
	border-radius: 10px;
	border: 1.5px solid #a7f3d0;
	color: #047857;
	background: #ecfdf5;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.15rem;
	flex-shrink: 0;
}

.why-feature-title {
	font-size: 1.05rem;
	font-weight: 800;
	color: #0f172a;
	margin: 0 0 0.35rem;
}

.why-feature-text {
	font-size: 0.85rem;
	color: #64748b;
	line-height: 1.5;
	margin: 0;
}

/* Responsive Why Choose Us */
@media (max-width: 1024px) {
	.why-choose-card {
		padding: 2.5rem 2rem;
	}
	.why-choose-grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}
	.why-image-frame {
		max-width: 440px;
		margin: 0 auto;
	}
}

@media (max-width: 640px) {
	.why-main-title {
		font-size: 1.8rem;
	}
	.why-features-matrix {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}
	.why-choose-card {
		padding: 2rem 1.25rem;
		border-radius: 16px;
	}
}

