/**
 * Custom CSS - User Modifications
 *
 * This file is for custom styles added by the AI assistant.
 * Add your CSS customizations here instead of modifying style.css.
 *
 * TIPS:
 * - Use CSS variables from style.css (e.g., var(--color-primary))
 * - Target elements by their IDs (e.g., #hero-title, #features-grid)
 * - Add new styles at the end of this file
 */

/* Your custom styles below */

/* ==========================================
   HEADER - Transparent Floating
   ========================================== */

.site-header--floating {
    background: #ffffff !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
    border-bottom: none !important;
    height: 80px !important;
    transition: all 0.4s ease !important;
}

.site-header--floating.scrolled {
    background: #ffffff !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
    height: 68px !important;
}

.site-header--floating .header-inner {
    height: 80px;
    transition: height 0.4s ease;
}

.site-header--floating.scrolled .header-inner {
    height: 68px;
}

/* Hide default main-navigation, use header-nav--center instead */
.site-header--floating .main-navigation {
    display: none !important;
}

/* Left logo */
.header-logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    flex-shrink: 0;
    z-index: 1001;
}

.header-logo__name {
    font-family: var(--font-display);
    font-size: 1.8rem;
    font-weight: 700;
    color: #1a2744;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    line-height: 1;
    transition: color 0.3s ease;
}

.header-logo__sub {
    font-size: 0.55em;
    font-weight: 400;
    text-transform: lowercase;
    letter-spacing: 0.15em;
    color: #1a2744;
    display: block;
}

.header-logo:hover .header-logo__name {
    color: var(--color-accent);
}

/* Invert white logo for white header */
.header-logo__img {
    filter: brightness(0) saturate(100%) invert(13%) sepia(25%) saturate(1800%) hue-rotate(190deg) brightness(95%) contrast(95%) !important;
}

/* Center nav */
.header-nav--center {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
}

.header-nav--center .nav-menu {
    display: flex !important;
    align-items: center;
    gap: 4px !important;
    list-style: none;
    padding: 0;
    margin: 0;
}

.header-nav--center .nav-menu > li > a {
    display: flex;
    align-items: center;
    padding: 8px 16px !important;
    font-family: var(--font-primary) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    color: #1a2744 !important;
    text-decoration: none;
    border-radius: 4px;
    transition: all 0.2s ease;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
}

.header-nav--center .nav-menu > li > a:hover {
    color: #1a2744 !important;
    background: rgba(26, 39, 68, 0.08) !important;
}

.header-nav--center .nav-menu > li.current-menu-item > a,
.header-nav--center .nav-menu > li > a:active,
.header-nav--center .nav-menu > li > a:focus {
    color: #1a2744 !important;
    background: rgba(26, 39, 68, 0.12) !important;
}

/* Right actions */
.site-header--floating .header-actions {
    display: flex;
    align-items: center;
    gap: 6px;
}

.site-header--floating .header-phone {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    color: rgba(26, 39, 68, 0.5) !important;
    transition: all 0.2s ease;
}

.site-header--floating .header-phone .phone-text {
    display: none;
}

.site-header--floating .header-phone:hover {
    color: #1a2744 !important;
    background: rgba(26, 39, 68, 0.06);
}

.site-header--floating .header-book-btn {
    padding: 8px 22px !important;
    background: #ffffff !important;
    color: #0a0f1a !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.site-header--floating .header-book-btn:hover {
    background: rgba(255, 255, 255, 0.85) !important;
}

/* Language switcher - button style like Book Now */
.site-header--floating .lang-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 50% !important;
    color: rgba(26, 39, 68, 0.5) !important;
    cursor: pointer;
    transition: all 0.2s ease !important;
}

.site-header--floating .lang-toggle .lang-code,
.site-header--floating .lang-toggle .lang-arrow {
    display: none !important;
}

.site-header--floating .lang-toggle .lang-globe {
    flex-shrink: 0;
}

.site-header--floating .lang-toggle:hover {
    background: rgba(26, 39, 68, 0.06) !important;
    color: #1a2744 !important;
}

.site-header--floating .lang-toggle .lang-arrow {
    color: rgba(26, 39, 68, 0.4) !important;
}

.site-header--floating .lang-dropdown {
    background: rgba(10, 15, 26, 0.95) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 4px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3) !important;
}

.site-header--floating .lang-dropdown li a {
    color: rgba(255, 255, 255, 0.6) !important;
    font-size: 0.8rem !important;
}

.site-header--floating .lang-dropdown li a:hover,
.site-header--floating .lang-dropdown li.current-lang a {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

/* Hamburger */
.site-header--floating .hamburger span {
    background: #1a2744 !important;
}

/* Mobile nav */
.site-header--floating .mobile-nav {
    background: #1e293b !important;
}

.site-header--floating .mobile-navigation .nav-menu > li > a {
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 1.1rem !important;
}

.site-header--floating .mobile-navigation .nav-menu > li > a:hover,
.site-header--floating .mobile-navigation .nav-menu > li.current-menu-item > a {
    color: #ffffff !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.site-header--floating .mobile-phone {
    color: rgba(255, 255, 255, 0.6) !important;
}

.site-header--floating .mobile-book-btn {
    background: #ffffff !important;
    color: #0a0f1a !important;
}

/* Hide desktop nav on mobile, show burger */
@media (max-width: 1024px) {
    .header-nav--center {
        display: none !important;
    }

    .site-header--floating .header-phone,
    .site-header--floating .header-book-btn,
    .site-header--floating .header-actions > .language-switcher {
        display: none !important;
    }
}

@media (min-width: 1025px) {
    .site-header--floating .mobile-menu-toggle {
        display: none !important;
    }
}

/* ==========================================
   LEGAL PAGES (Privacy Policy, Terms of Service)
   ========================================== */

.legal-page {
    padding: var(--space-16) 0;
}

.legal-content {
    max-width: 800px;
    margin: 0 auto;
    background: var(--color-white);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-md);
    padding: var(--space-10);
}

@media (max-width: 768px) {
    .legal-content {
        padding: var(--space-6);
        border-radius: var(--radius-lg);
    }
}

.legal-section {
    margin-bottom: var(--space-10);
    padding-bottom: var(--space-8);
    border-bottom: 1px solid var(--color-gray-200);
}

.legal-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.legal-section h2 {
    font-family: var(--font-display);
    font-size: var(--text-xl);
    font-weight: 600;
    color: var(--color-gray-900);
    margin-bottom: var(--space-4);
}

.legal-section h3 {
    font-family: var(--font-display);
    font-size: var(--text-lg);
    font-weight: 600;
    color: var(--color-gray-800);
    margin-top: var(--space-6);
    margin-bottom: var(--space-3);
}

.legal-section p {
    font-size: var(--text-base);
    line-height: 1.7;
    color: var(--color-gray-700);
    margin-bottom: var(--space-4);
}

.legal-section ul,
.legal-section ol {
    margin: var(--space-4) 0;
    padding-left: var(--space-6);
}

.legal-section li {
    font-size: var(--text-base);
    line-height: 1.7;
    color: var(--color-gray-700);
    margin-bottom: var(--space-2);
}

.legal-section ul li {
    list-style-type: disc;
}

.legal-section ol li {
    list-style-type: decimal;
}

.legal-section li strong {
    color: var(--color-gray-900);
}

.legal-section a {
    color: var(--color-primary);
    text-decoration: underline;
    transition: color var(--transition-fast);
}

.legal-section a:hover {
    color: var(--color-accent);
}

.legal-address {
    background: var(--color-gray-50);
    border-radius: var(--radius-lg);
    padding: var(--space-5);
    margin: var(--space-4) 0;
    line-height: 1.8;
    color: var(--color-gray-700);
}

.legal-address strong {
    color: var(--color-gray-900);
    font-weight: 600;
}

.legal-address a {
    color: var(--color-primary);
    text-decoration: none;
}

.legal-address a:hover {
    text-decoration: underline;
}

/* ==========================================
   FEATURED VEHICLES CAROUSEL
   ========================================== */

/* Featured Vehicles - Grid Layout */
.featured-vehicles-section {
    background: #1e293b;
    padding: 140px 0 70px;
}

.fv-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 44px;
    flex-wrap: wrap;
    gap: 20px;
}

.fv-title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    font-style: normal;
    color: #1f2937;
    margin: 0;
}

.fv-count {
    font-size: 1rem;
    font-weight: 400;
    font-style: normal;
    color: rgba(31, 41, 55, 0.45);
}

.fv-filters {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.fv-filter {
    padding: 10px 24px;
    border-radius: 4px;
    border: 1px solid rgba(31, 41, 55, 0.15);
    background: transparent;
    color: rgba(31, 41, 55, 0.6);
    font-family: var(--font-primary);
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.fv-filter:hover {
    background: rgba(31, 41, 55, 0.06);
    color: #1f2937;
}

.fv-filter.active {
    background: #1f2937;
    color: #ffffff;
    border-color: #1f2937;
}

/* Grid - all hero cards stacked (legacy) */
.fv-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

/* ==========================================
   COMPANY STATS - About section before Fleet
   ========================================== */
.company-stats-section {
    background: linear-gradient(to bottom, #0b1018 0%, #0d131d 50%, #0f1520 100%);
    padding: 80px 0 60px !important;
}

.company-stats-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.company-stats__title {
    font-family: var(--font-display);
    font-size: 2.2rem;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 20px;
    background: linear-gradient(135deg, #ffffff 0%, #94a3b8 40%, #f5a623 70%, #f28c28 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.company-stats__desc {
    font-size: 0.95rem;
    line-height: 1.75;
    color: rgba(255, 255, 255, 0.55);
}

.company-stats-numbers {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}

.stat-item {
    padding: 28px 24px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 4px;
    text-align: center;
    transition: border-color 0.3s ease, transform 0.3s ease;
}

.stat-item:hover {
    border-color: rgba(255, 255, 255, 0.2);
    transform: translateY(-4px);
}

.stat-item__value {
    display: block;
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1;
    margin-bottom: 8px;
}

.stat-item__label {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.45);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 500;
}

@media (max-width: 768px) {
    .company-stats-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .company-stats__title {
        font-size: 1.75rem;
    }

    .company-stats-numbers {
        gap: 16px;
    }

    .stat-item {
        padding: 20px 16px;
    }

    .stat-item__value {
        font-size: 2rem;
    }
}

/* ==========================================
   FLEET PANEL CARDS - Photo cards 3 per row
   ========================================== */
.fleet-panels-section {
    background: #ffffff;
    padding: 80px 0 !important;
}

.fleet-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.fleet-card {
    position: relative;
    display: block;
    height: 320px;
    border-radius: 4px;
    overflow: hidden;
    text-decoration: none;
    color: #ffffff;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.fleet-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4);
}

.fleet-card.fv-hidden {
    display: none;
}

/* Background image */
.fleet-card__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
}

.fleet-card:hover .fleet-card__bg {
    transform: scale(1.08);
}

/* Gradient overlay */
.fleet-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(10, 15, 26, 0.15) 0%,
        rgba(10, 15, 26, 0.3) 40%,
        rgba(10, 15, 26, 0.85) 100%
    );
    transition: background 0.4s ease;
}

.fleet-card:hover .fleet-card__overlay {
    background: linear-gradient(
        180deg,
        rgba(10, 15, 26, 0.1) 0%,
        rgba(10, 15, 26, 0.2) 40%,
        rgba(10, 15, 26, 0.9) 100%
    );
}

/* Content layout */
.fleet-card__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding: 24px;
}

/* Top: group badge + price */
.fleet-card__top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.fleet-card__group {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    background: rgba(242, 140, 40, 0.85);
    backdrop-filter: blur(8px);
    padding: 5px 12px;
    border-radius: 6px;
    color: #ffffff;
}

.fleet-card__price {
    font-family: var(--font-display);
    font-size: 1.6rem;
    font-weight: 700;
    color: #ffffff;
    line-height: 1;
}

.fleet-card__price small {
    font-size: 0.7rem;
    font-weight: 400;
    opacity: 0.6;
}

/* Bottom: name, specs, arrow */
.fleet-card__bottom {
    position: relative;
}

.fleet-card__name {
    font-family: var(--font-display);
    font-size: 1.35rem;
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 8px;
    line-height: 1.2;
}

.fleet-card__specs {
    display: flex;
    gap: 12px;
    font-size: 0.78rem;
    color: rgba(180, 220, 255, 0.9);
    margin-bottom: 0;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, opacity 0.3s ease, margin 0.4s ease;
}

.fleet-card:hover .fleet-card__specs {
    max-height: 30px;
    opacity: 1;
    margin-bottom: 16px;
}

.fleet-card__specs span {
    display: flex;
    align-items: center;
    gap: 4px;
}

.fleet-card__specs span + span::before {
    content: '·';
    margin-right: 4px;
    color: rgba(180, 220, 255, 0.5);
}

.fleet-card__specs--icons span + span::before {
    content: none;
}

.fleet-card__specs--icons {
    gap: 14px;
    font-size: 0.85rem !important;
    color: #ffffff !important;
}

.fleet-spec {
    display: flex;
    align-items: center;
    gap: 5px;
    font-weight: 500;
    color: #ffffff;
    white-space: nowrap;
}

.fleet-card__arrow {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #ffffff;
    opacity: 0;
    transform: translateY(10px);
    transition: all 0.35s ease;
}

.fleet-card:hover .fleet-card__arrow {
    opacity: 1;
    transform: translateY(0);
    background: rgba(255, 255, 255, 0.1);
}

/* Responsive */
@media (max-width: 1024px) {
    .fleet-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .fleet-card {
        height: 300px;
    }
}

@media (max-width: 640px) {
    .fleet-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .fleet-card {
        height: 280px;
    }
    .fleet-card__specs {
        max-height: 30px;
        opacity: 1;
        margin-bottom: 12px;
    }
    .fleet-card__arrow {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Hero card - full width, horizontal layout */
.fv-card--hero {
    grid-column: 1 / -1;
    border-radius: 24px !important;
}

.fv-card--hero .fv-card-link {
    display: grid !important;
    grid-template-columns: 50% 50%;
    grid-template-rows: auto 1fr;
    min-height: 300px;
}

.fv-card--hero .fv-card-image {
    grid-column: 1;
    grid-row: 1 / -1;
    height: 300px;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.fv-card--hero .fv-card-image img {
    width: 100%;
    height: 100%;
    max-height: none !important;
    object-fit: cover;
    border-radius: 20px !important;
}

.fv-card--hero .fv-card-top {
    grid-column: 2;
    grid-row: 1;
    padding: 36px 36px 12px !important;
    border-left: 1px solid rgba(255, 255, 255, 0.04);
}

.fv-card--hero .fv-card-name {
    font-size: 1.8rem !important;
    white-space: normal !important;
    max-width: none !important;
    line-height: 1.2 !important;
}

.fv-card--hero .fv-card-year {
    font-size: 0.9rem !important;
    margin-top: 6px;
}

.fv-card--hero .fv-card-bottom {
    grid-column: 2;
    grid-row: 2;
    border-top: none !important;
    border-left: 1px solid rgba(255, 255, 255, 0.04);
    padding: 12px 36px 36px !important;
    align-self: end;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 16px !important;
}

.fv-card--hero .fv-card-specs {
    gap: 20px !important;
}

.fv-card--hero .fv-spec {
    font-size: 0.85rem !important;
}

.fv-card--hero .fv-price-value {
    font-size: 2.2rem !important;
}

.fv-card--hero .fv-price-period {
    font-size: 1rem !important;
}

@media (max-width: 1023px) {
    .fv-card--hero .fv-card-link {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto auto auto;
        min-height: auto;
    }

    .fv-card--hero .fv-card-image {
        grid-column: 1;
        grid-row: 2;
        min-height: 200px;
        padding: 16px 24px;
    }

    .fv-card--hero .fv-card-top {
        grid-column: 1;
        grid-row: 1;
        padding: 24px 24px 8px !important;
        border-left: none;
    }

    .fv-card--hero .fv-card-bottom {
        grid-column: 1;
        grid-row: 3;
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
        padding: 16px 24px 24px !important;
    }

    .fv-card--hero .fv-card-name {
        font-size: 1.4rem !important;
    }

    .fv-card--hero .fv-price-value {
        font-size: 1.6rem !important;
    }
}

/* Card - Dark Premium */
.fv-card {
    background: #283548;
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.06);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.fv-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 56px rgba(0, 0, 0, 0.5);
    border-color: rgba(255, 255, 255, 0.1);
}

.fv-card.fv-hidden {
    display: none;
}

.fv-card-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    text-decoration: none;
    color: inherit;
}

.fv-card-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 22px 24px 0;
}

.fv-card-info {
    flex: 1;
}

.fv-card-name {
    font-family: var(--font-display);
    font-size: 1.15rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 3px;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fv-card-year {
    font-family: var(--font-primary);
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.35);
    white-space: nowrap;
}

.fv-card-badge {
    font-family: var(--font-primary);
    font-size: 0.68rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
    background: rgba(255, 255, 255, 0.07);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 4px 12px;
    border-radius: 20px;
    white-space: nowrap;
    flex-shrink: 0;
    margin-left: 12px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

/* Image */
.fv-card-image {
    padding: 12px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 180px;
}

.fv-card-image img {
    width: 100%;
    height: auto;
    max-height: 200px;
    object-fit: contain;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    filter: drop-shadow(0 10px 30px rgba(0, 0, 0, 0.35));
}

.fv-card:hover .fv-card-image img {
    transform: scale(1.06);
}

/* Bottom */
.fv-card-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    white-space: nowrap;
}

.fv-card-specs {
    display: flex;
    gap: 14px;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
}

.fv-spec {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-family: var(--font-primary);
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.4);
    white-space: nowrap;
}

.fv-spec svg {
    color: rgba(255, 255, 255, 0.25);
    flex-shrink: 0;
}

.fv-card-price {
    display: flex;
    align-items: baseline;
    white-space: nowrap;
}

.fv-price-value {
    font-family: var(--font-primary);
    font-size: 1.35rem;
    font-weight: 700;
    color: #ffffff;
}

.fv-price-period {
    font-family: var(--font-primary);
    font-size: 0.8rem;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.35);
}

.vehicle-no-image {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 180px;
    color: rgba(255, 255, 255, 0.2);
}

/* CTA */
.fv-cta {
    text-align: center;
    margin-top: 44px;
}

.fv-show-more {
    display: inline-block;
    padding: 14px 44px;
    background: rgba(31, 41, 55, 0.06);
    color: #1f2937;
    border: 1px solid rgba(31, 41, 55, 0.15);
    border-radius: 4px;
    font-family: var(--font-primary);
    font-size: 0.95rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.25s ease;
    letter-spacing: 0.02em;
}

.fv-show-more:hover {
    background: #1f2937;
    color: #ffffff;
    border-color: #1f2937;
}

/* Responsive */
@media (max-width: 1023px) {
    .fv-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .fv-header {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 639px) {
    .fv-grid {
        grid-template-columns: 1fr;
    }

    .fv-card-bottom {
        flex-wrap: wrap;
        gap: 10px;
    }
}

/* ==========================================
   HOW IT WORKS - Dark Premium
   ========================================== */

/* ==========================================
   STEPS ACCORDION - 3-Panel Interactive
   ========================================== */
.steps-accordion-section {
    padding: 60px 0 0 !important;
    background: linear-gradient(to bottom, #080c14 0%, #0b1018 100%);
}

.steps-accordion {
    display: flex;
    width: 100%;
    height: 520px;
    overflow: hidden;
    background: url('/wp-content/uploads/2026/06/2018_skoda_kodiaq_skoda_karoq_skoda_kamiq_4k-3840x2160-1-scaled.jpg') center/cover no-repeat;
    position: relative;
}

#how-it-works .steps-accordion {
    background: url('/wp-content/uploads/2026/06/photo-1648204834832-78e68052c04f.avif') center/cover no-repeat;
}

#about-why-choose .steps-accordion {
    background: url('/wp-content/uploads/2026/06/photo-1617018001536-e1a443326d43.avif') center/cover no-repeat;
}

.steps-panel {
    position: relative;
    flex: 1;
    min-width: 0;
    cursor: pointer;
    overflow: hidden;
    transition: flex 0.5s cubic-bezier(0.4, 0, 0.2, 1), background 0.5s ease;
    background: rgba(5, 8, 16, 0.65);
}

.steps-panel--active {
    flex: 3;
    background: rgba(5, 8, 16, 0.15);
}

/* Legacy backgrounds hidden — now using shared banner */
.steps-panel__bg {
    display: none;
}


/* Overlay — gradient from bottom for text readability */
.steps-panel__overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
}

/* Dividers between panels */
.steps-panel + .steps-panel {
    border-left: 1px solid rgba(255, 255, 255, 0.1);
}

/* Content */
.steps-panel__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    padding: 48px 36px;
    color: #ffffff;
}

.steps-panel__number {
    font-family: var(--font-display);
    font-size: 4.5rem;
    font-weight: 700;
    line-height: 1;
    opacity: 0.45;
    margin-bottom: auto;
    transition: opacity 0.4s ease, color 0.4s ease;
    color: rgba(255, 255, 255, 0.8);
}

.steps-panel--active .steps-panel__number {
    opacity: 0.7;
    color: #ffffff;
}

.steps-panel__title {
    font-family: var(--font-display);
    font-size: 1.3rem;
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 0;
    transition: font-size 0.4s ease, margin 0.4s ease;
    white-space: nowrap;
}

.steps-panel--active .steps-panel__title {
    font-size: 1.75rem;
    margin-bottom: 16px;
}

.steps-panel__desc {
    font-family: var(--font-primary);
    font-size: 0.95rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.8);
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-bottom: 0;
    transition: max-height 0.5s ease, opacity 0.4s ease, margin 0.4s ease;
}

.steps-panel--active .steps-panel__desc {
    max-height: 120px;
    opacity: 1;
    margin-bottom: 24px;
}

.steps-panel__arrow {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #ffffff;
    transition: all 0.3s ease;
    margin-top: 16px;
}

.steps-panel--active .steps-panel__arrow {
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.4);
}

.steps-panel__arrow:hover {
    background: rgba(255, 255, 255, 0.2);
}

/* Mobile: stack vertically */
@media (max-width: 768px) {
    .steps-accordion {
        flex-direction: column;
        height: auto;
    }

    .steps-panel {
        flex: none !important;
        height: 100px;
        transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .steps-panel--active {
        height: 360px;
    }

    .steps-panel + .steps-panel {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    .steps-panel__content {
        padding: 24px 24px;
    }

    .steps-panel__number {
        font-size: 2.5rem;
        position: absolute;
        top: 20px;
        left: 24px;
    }

    .steps-panel:not(.steps-panel--active) .steps-panel__title {
        position: absolute;
        bottom: 24px;
        left: 24px;
    }

    .steps-panel__arrow {
        width: 40px;
        height: 40px;
    }

    .steps-panel:not(.steps-panel--active) .steps-panel__arrow {
        position: absolute;
        right: 24px;
        bottom: 20px;
    }
}

/* ==========================================
   BOOKING FORM - Clean Horizontal Style
   ========================================== */

.hero-booking-card {
    background: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08) !important;
    padding: 0 0 24px 0 !important;
    margin-bottom: -100px;
    position: relative;
    z-index: 10;
    width: 100% !important;
    overflow: visible;
}

.booking-title {
    display: none !important;
}

.booking-form-row {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    align-items: stretch !important;
    display: flex !important;
    flex-wrap: nowrap !important;
}

.booking-field-location {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    padding: 28px 24px !important;
    border-right: 1px solid #e5e7eb !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.booking-field-dates-compact {
    flex: 1.4 1 0 !important;
    padding: 28px 24px !important;
    border-right: 1px solid #e5e7eb !important;
    min-width: 0 !important;
}

.booking-field label {
    font-family: var(--font-primary) !important;
    font-size: 0.68rem !important;
    font-weight: 600 !important;
    color: #6b7280 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.1em !important;
    margin-bottom: 4px !important;
    display: block !important;
}

/* Input fields - borderless inside card */
.location-dropdown-toggle {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    color: #111827 !important;
    font-family: var(--font-primary) !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
    min-height: auto !important;
    padding: 0 !important;
    box-shadow: none !important;
    transition: none !important;
}

.location-dropdown-toggle:hover {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.location-dropdown-toggle:focus {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.location-value {
    color: #111827 !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
}

.dropdown-arrow {
    color: #9ca3af !important;
}

/* Dates field - borderless */
.dates-compact {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    min-height: auto !important;
    padding: 0 !important;
    transition: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.dates-compact:hover {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.dates-compact:focus-within {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.dates-icon {
    color: #9ca3af !important;
}

.date-range-text {
    color: #111827 !important;
    font-family: var(--font-primary) !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
}

.date-range-trigger {
    padding: 0 !important;
}

.date-range-trigger .dropdown-arrow {
    color: #9ca3af !important;
}

/* Unified Time Picker - inline style */
.time-picker-unified {
    position: relative;
    flex-shrink: 0;
    border-left: 1px solid #e5e7eb;
    padding-left: 12px;
    margin-left: 4px;
}

.time-picker-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 4px 0 !important;
    cursor: pointer;
    transition: all 0.2s ease;
    min-height: auto;
}

.time-picker-toggle:hover {
    background: transparent !important;
    border: none !important;
    box-shadow: none;
}

.time-picker-unified.open .time-picker-toggle {
    background: transparent !important;
    border: none !important;
    box-shadow: none;
}

.time-picker-icon {
    color: #9ca3af !important;
    flex-shrink: 0;
}

.time-picker-text {
    font-family: var(--font-primary);
    font-size: 0.9rem;
    font-weight: 500;
    color: #111827;
    white-space: nowrap;
}

.time-picker-toggle .dropdown-arrow {
    color: #9ca3af !important;
    transition: transform 0.2s ease;
}

.time-picker-unified.open .time-picker-toggle .dropdown-arrow {
    transform: rotate(180deg);
}

/* Time picker dropdown panel */
.time-picker-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12);
    padding: 16px 20px;
    z-index: 100;
    min-width: 260px;
}

.time-picker-unified.open .time-picker-dropdown {
    display: block;
    animation: timePickerFadeIn 0.15s ease;
}

@keyframes timePickerFadeIn {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

.time-picker-row {
    display: flex;
    align-items: flex-end;
    gap: 12px;
}

.time-picker-col {
    display: flex;
    flex-direction: column;
    gap: 6px;
    flex: 1;
}

.time-picker-label {
    font-family: var(--font-primary);
    font-size: 0.7rem;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.time-picker-select {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 10px 12px;
    font-family: var(--font-primary);
    font-size: 0.95rem;
    font-weight: 500;
    color: #111827;
    cursor: pointer;
    transition: all 0.15s ease;
    width: 100%;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    padding-right: 30px;
}

.time-picker-select:focus {
    outline: none;
    background-color: #ffffff;
    border-color: #6366f1;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}

.time-picker-select option {
    background: #ffffff;
    color: #111827;
}

.time-picker-arrow {
    color: #d1d5db;
    flex-shrink: 0;
    padding-bottom: 10px;
}

/* Hide old time elements */
.time-compact,
.time-separator {
    display: none !important;
}

/* Remove old separator lines between fields */
.booking-field:not(:last-child)::after {
    display: none !important;
}

/* Return location - always visible */
.booking-field-return {
    display: flex !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    padding: 28px 24px !important;
    border-right: 1px solid #e5e7eb !important;
    flex-direction: column !important;
    justify-content: center !important;
}

/* Submit button - centered */
.booking-field-submit {
    flex: 0 0 auto !important;
    padding: 18px 16px !important;
    display: flex !important;
    align-items: center !important;
}

.booking-submit {
    background: var(--color-accent, #f28c28) !important;
    border: none !important;
    border-radius: 4px !important;
    font-family: var(--font-primary) !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    letter-spacing: 0.02em !important;
    min-height: auto !important;
    height: 100% !important;
    padding: 16px 36px !important;
    color: #ffffff !important;
    box-shadow: 0 4px 20px rgba(0, 119, 182, 0.2) !important;
    text-shadow: none !important;
    transition: all 0.25s ease !important;
    white-space: nowrap !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.booking-submit:hover {
    background: var(--color-accent-light, #f5a623) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 8px 28px rgba(0, 119, 182, 0.3) !important;
}

.booking-submit:active {
    transform: translateY(0) !important;
    box-shadow: 0 2px 8px rgba(0, 119, 182, 0.2) !important;
}

/* Checkbox - different return */
.booking-different-return {
    border-top: 1px solid #e5e7eb !important;
    margin-top: 0 !important;
    padding: 10px 24px !important;
}

.checkbox-custom {
    border-color: #d1d5db !important;
    background: #f9fafb !important;
}

.checkbox-text {
    color: #6b7280 !important;
    font-family: var(--font-primary) !important;
    font-size: 0.85rem !important;
}

/* Dropdown menu - light style */
.location-dropdown {
    position: relative;
    z-index: 20;
}

.location-dropdown.open {
    z-index: 100;
}

.location-dropdown-menu {
    background: #ffffff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 1px solid #e5e7eb !important;
    border-top: 1px solid #e5e7eb !important;
    border-radius: 8px !important;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15) !important;
    z-index: 200 !important;
    margin-top: 4px !important;
}

.location-option {
    color: #374151 !important;
    font-family: var(--font-primary) !important;
}

.location-option:hover {
    background: #f3f4f6 !important;
    color: #111827 !important;
}

.location-option.active {
    background: rgba(99, 102, 241, 0.08) !important;
    color: #6366f1 !important;
    font-weight: 600 !important;
}

.location-map-btn {
    border-top-color: #e5e7eb !important;
    background: #f9fafb !important;
}

.btn-google-maps {
    background: var(--color-primary) !important;
    background-size: auto !important;
    box-shadow: 0 2px 4px rgba(26, 54, 93, 0.3) !important;
}

.btn-google-maps:hover {
    background: var(--color-primary-dark, #0f2440) !important;
    box-shadow: 0 4px 8px rgba(26, 54, 93, 0.4) !important;
}

.btn-google-maps:active {
    box-shadow: 0 2px 4px rgba(26, 54, 93, 0.3) !important;
}

/* Google Maps modal buttons - match header Book Now border-radius (4px) */
.map-modal-actions .btn-secondary,
.map-modal-actions .btn-accent {
    border-radius: 4px !important;
}

.location-dropdown.open .location-dropdown-toggle {
    border: none !important;
    border-radius: 0 !important;
}

/* ==========================================
   FLATPICKR CALENDAR - Redesign
   ========================================== */

.flatpickr-calendar {
    border-radius: 16px !important;
    border: none !important;
    box-shadow:
        0 24px 64px rgba(0, 0, 0, 0.14),
        0 4px 16px rgba(0, 0, 0, 0.06) !important;
    padding: 8px !important;
    background: #ffffff !important;
    overflow: hidden;
}

.flatpickr-calendar::before,
.flatpickr-calendar::after {
    display: none !important;
}

/* Month header */
.flatpickr-months {
    padding: 8px 4px 4px !important;
    align-items: center !important;
}

.flatpickr-months .flatpickr-month {
    height: 44px !important;
}

.flatpickr-current-month {
    font-family: var(--font-display) !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: var(--color-gray-900) !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
    font-family: var(--font-display) !important;
    font-weight: 700 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* Navigation arrows */
.flatpickr-prev-month,
.flatpickr-next-month {
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 10px !important;
    transition: all 0.15s ease !important;
    top: 12px !important;
}

.flatpickr-prev-month:hover,
.flatpickr-next-month:hover {
    background: var(--color-gray-100) !important;
}

.flatpickr-prev-month svg,
.flatpickr-next-month svg {
    fill: var(--color-gray-600) !important;
    width: 12px !important;
    height: 12px !important;
}

.flatpickr-prev-month:hover svg,
.flatpickr-next-month:hover svg {
    fill: var(--color-accent) !important;
}

/* Weekday headers */
.flatpickr-weekdays {
    background: transparent !important;
    padding: 0 4px !important;
    margin-top: 4px !important;
}

.flatpickr-weekday {
    font-family: var(--font-primary) !important;
    font-size: 0.7rem !important;
    font-weight: 700 !important;
    color: var(--color-gray-400) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

/* Day cells */
.flatpickr-day {
    font-family: var(--font-primary) !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    border-radius: 10px !important;
    height: 40px !important;
    line-height: 40px !important;
    margin: 1px !important;
    transition: all 0.15s ease !important;
    border: none !important;
}

.flatpickr-day:hover {
    background: var(--color-gray-100) !important;
    border: none !important;
}

.flatpickr-day.flatpickr-disabled,
.flatpickr-day.flatpickr-disabled:hover,
.flatpickr-day.prevMonthDay,
.flatpickr-day.nextMonthDay {
    color: var(--color-gray-300) !important;
    background: transparent !important;
}

/* Today */
.flatpickr-day.today {
    background: var(--color-gray-100) !important;
    border: none !important;
    font-weight: 700 !important;
    color: var(--color-accent) !important;
}

.flatpickr-day.today:hover {
    background: var(--color-accent) !important;
    color: #ffffff !important;
}

/* Selected start and end dates */
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
    background: var(--color-accent) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(0, 119, 182, 0.35) !important;
}

.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
    background: var(--color-accent-dark) !important;
}

/* Range start/end rounded */
.flatpickr-day.startRange {
    border-radius: 10px 4px 4px 10px !important;
}

.flatpickr-day.endRange {
    border-radius: 4px 10px 10px 4px !important;
}

.flatpickr-day.startRange.endRange {
    border-radius: 10px !important;
}

/* In-range days */
.flatpickr-day.inRange {
    background: rgba(0, 119, 182, 0.1) !important;
    color: var(--color-gray-800) !important;
    border-radius: 4px !important;
    border: none !important;
    box-shadow: none !important;
}

.flatpickr-day.inRange:hover {
    background: rgba(0, 119, 182, 0.2) !important;
}

/* Responsive calendar - force single month on mobile */
@media (max-width: 768px) {
    .flatpickr-calendar {
        width: calc(100vw - 24px) !important;
        max-width: 340px !important;
    }

    /* Month header - show only first month, keep arrows visible */
    .flatpickr-months {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 8px 40px !important;
    }

    /* Hide the second month name, keep the first */
    .flatpickr-months .flatpickr-month:last-of-type {
        display: none !important;
    }

    .flatpickr-months .flatpickr-month:first-of-type {
        display: flex !important;
        flex: 1 !important;
        justify-content: center !important;
    }

    /* Navigation arrows - always visible */
    .flatpickr-months .flatpickr-prev-month,
    .flatpickr-months .flatpickr-next-month {
        display: flex !important;
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        z-index: 10 !important;
        width: 32px !important;
        height: 32px !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .flatpickr-months .flatpickr-prev-month {
        left: 8px !important;
    }

    .flatpickr-months .flatpickr-next-month {
        right: 8px !important;
    }

    /* Hide the second month days and weekdays */
    .flatpickr-days .dayContainer:nth-child(n+2) {
        display: none !important;
    }

    .flatpickr-weekdays:nth-child(n+2),
    .flatpickr-weekdaycontainer:nth-child(n+2) {
        display: none !important;
    }

    /* Fix the remaining month to fill width */
    .flatpickr-innerContainer {
        display: block !important;
    }

    .flatpickr-rContainer {
        width: 100% !important;
        display: block !important;
    }

    .flatpickr-days {
        width: 100% !important;
        overflow: hidden !important;
    }

    .dayContainer {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
    }

    .flatpickr-weekdays {
        width: 100% !important;
    }

    .flatpickr-weekdaycontainer {
        width: 100% !important;
    }
}

@media (max-width: 640px) {
    .flatpickr-calendar {
        border-radius: 12px !important;
        padding: 8px !important;
        width: calc(100vw - 24px) !important;
        max-width: 360px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
    }

    .flatpickr-innerContainer {
        padding: 0 !important;
        display: block !important;
    }

    .flatpickr-rContainer {
        display: block !important;
        width: 100% !important;
    }

    .flatpickr-days {
        width: 100% !important;
        max-width: 100% !important;
    }

    .dayContainer {
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        justify-content: space-around !important;
    }

    .flatpickr-weekdays {
        width: 100% !important;
        padding: 0 !important;
        margin-bottom: 2px !important;
        height: 32px !important;
    }

    .flatpickr-weekdaycontainer {
        display: flex !important;
        width: 100% !important;
    }

    span.flatpickr-weekday {
        font-size: 0.7rem !important;
        flex: 1 !important;
        padding: 4px 0 !important;
        text-align: center !important;
        color: rgba(0,0,0,0.4) !important;
    }

    .flatpickr-day {
        width: 14.2857143% !important;
        max-width: none !important;
        flex-basis: 14.2857143% !important;
        height: 42px !important;
        line-height: 42px !important;
        border-radius: 6px !important;
        margin: 0 !important;
        font-size: 0.9rem !important;
        box-sizing: border-box !important;
    }

    .flatpickr-months {
        padding: 4px 4px 8px !important;
        margin-bottom: 4px !important;
        border-bottom: 1px solid #f0f0f0 !important;
    }

    .flatpickr-current-month {
        font-size: 0.95rem !important;
    }
}

/* Booking form responsive */
@media (max-width: 768px) {
    .hero-booking-card {
        padding: 0 !important;
        border-radius: 4px !important;
        margin-bottom: -30px;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1) !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .booking-form-row {
        flex-direction: column !important;
        gap: 0 !important;
        flex-wrap: wrap !important;
    }

    .booking-field-location,
    .booking-field-dates-compact,
    .booking-field-return {
        flex: none !important;
        width: 100% !important;
        min-width: 0 !important;
        padding: 14px 18px !important;
        border-right: none !important;
        border-bottom: 1px solid #e5e7eb !important;
    }

    .booking-field-submit {
        width: 100% !important;
        flex: none !important;
        padding: 12px 18px !important;
    }

    .booking-submit {
        width: 100% !important;
        min-height: 48px !important;
        font-size: 0.95rem !important;
        border-radius: 10px !important;
        justify-content: center !important;
    }

    /* Dates field - stack date and time vertically */
    .dates-compact {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .date-range-trigger {
        width: 100% !important;
        padding-bottom: 8px !important;
        border-bottom: 1px solid #e5e7eb !important;
    }

    .time-picker-unified {
        width: 100% !important;
        border-left: none !important;
        padding-left: 0 !important;
        margin-left: 0 !important;
    }

    .time-picker-toggle {
        width: 100% !important;
        justify-content: center !important;
    }

    /* Time picker dropdown - full width on mobile */
    .time-picker-dropdown {
        left: 0 !important;
        right: 0 !important;
        min-width: auto !important;
        width: 100% !important;
    }

    /* Location dropdowns */
    .location-dropdown-toggle {
        font-size: 0.95rem !important;
    }

    .location-dropdown-menu {
        max-height: 200px !important;
    }

    .booking-different-return {
        text-align: center !important;
        padding: 10px 18px !important;
    }

    .featured-vehicles-section {
        padding-top: 50px !important;
    }
}

@media (max-width: 480px) {
    .hero-booking-card {
        border-radius: 4px !important;
        margin-bottom: -20px;
    }

    .booking-field-location,
    .booking-field-dates-compact,
    .booking-field-return {
        padding: 12px 14px !important;
    }

    .booking-field-submit {
        padding: 10px 14px !important;
    }

    .booking-field label {
        font-size: 0.62rem !important;
    }

    .date-range-text {
        font-size: 0.9rem !important;
    }

    .time-picker-text {
        font-size: 0.8rem !important;
    }
}

/* ==========================================
   QUICK REQUEST FORM
   ========================================== */

.quick-request-form {
    background: var(--color-white);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-lg);
    overflow: hidden;
}

.quick-request-form__inner {
    padding: var(--space-8);
}

.quick-request-form__header {
    text-align: center;
    margin-bottom: var(--space-6);
}

.quick-request-form__title {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-weight: 700;
    color: var(--color-gray-900);
    margin: 0 0 var(--space-2) 0;
}

.quick-request-form__subtitle {
    font-size: var(--text-base);
    color: var(--color-gray-600);
    margin: 0;
}

.quick-request-form__fields {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-4);
}

.quick-request-form__fields .form-group--full {
    grid-column: 1 / -1;
}

.quick-request-form .form-group {
    display: flex;
    flex-direction: column;
}

.quick-request-form .form-label {
    font-size: var(--text-sm);
    font-weight: 500;
    color: var(--color-gray-700);
    margin-bottom: var(--space-1);
}

.quick-request-form .form-label .required {
    color: var(--color-error);
}

.quick-request-form .form-input,
.quick-request-form .form-textarea {
    width: 100%;
    padding: var(--space-3) var(--space-4);
    font-size: var(--text-base);
    color: var(--color-gray-900);
    background: var(--color-gray-50);
    border: 1px solid var(--color-gray-200);
    border-radius: var(--radius-lg);
    transition: all var(--transition-fast);
}

.quick-request-form .form-input:focus,
.quick-request-form .form-textarea:focus {
    outline: none;
    border-color: var(--color-primary);
    background: var(--color-white);
    box-shadow: 0 0 0 3px rgba(15, 36, 64, 0.1);
}

.quick-request-form .form-input::placeholder,
.quick-request-form .form-textarea::placeholder {
    color: var(--color-gray-400);
}

.quick-request-form .form-textarea {
    resize: vertical;
    min-height: 80px;
}

.quick-request-form__footer {
    margin-top: var(--space-6);
    text-align: center;
}

.quick-request-form__submit {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--space-2);
}

.quick-request-form__submit .btn-loading {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2);
}

.quick-request-form__submit .spinner {
    animation: spin 1s linear infinite;
}

@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

.quick-request-form__privacy {
    font-size: var(--text-xs);
    color: var(--color-gray-500);
    margin-top: var(--space-3);
}

.quick-request-form__privacy a {
    color: var(--color-primary);
    text-decoration: underline;
}

.quick-request-form__message {
    margin-top: var(--space-4);
    padding: var(--space-3) var(--space-4);
    border-radius: var(--radius-md);
    font-size: var(--text-sm);
    text-align: center;
}

.quick-request-form__message--error {
    background: var(--color-error-light, #fef2f2);
    color: var(--color-error, #dc2626);
    border: 1px solid var(--color-error, #dc2626);
}

.quick-request-form__message--success {
    background: var(--color-success-light, #f0fdf4);
    color: var(--color-success, #16a34a);
    border: 1px solid var(--color-success, #16a34a);
}

/* Success State */
.quick-request-form__success {
    text-align: center;
    padding: var(--space-8) var(--space-4);
}

.quick-request-form__success .success-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto var(--space-4);
    background: var(--color-success-light, #f0fdf4);
    border-radius: var(--radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-success, #16a34a);
}

.quick-request-form__success .success-icon svg {
    width: 40px;
    height: 40px;
}

.quick-request-form__success .success-title {
    font-family: var(--font-display);
    font-size: var(--text-xl);
    font-weight: 600;
    color: var(--color-gray-900);
    margin: 0 0 var(--space-2) 0;
}

.quick-request-form__success .success-text {
    font-size: var(--text-base);
    color: var(--color-gray-600);
    margin: 0 0 var(--space-6) 0;
}

/* Compact Variant */
.quick-request-form--compact .quick-request-form__inner {
    padding: var(--space-6);
}

.quick-request-form--compact .quick-request-form__title {
    font-size: var(--text-xl);
}

.quick-request-form--compact .quick-request-form__fields {
    grid-template-columns: 1fr;
    gap: var(--space-3);
}

/* Sidebar Variant */
.quick-request-form--sidebar {
    position: sticky;
    top: 100px;
}

.quick-request-form--sidebar .quick-request-form__inner {
    padding: var(--space-6);
}

.quick-request-form--sidebar .quick-request-form__title {
    font-size: var(--text-lg);
}

.quick-request-form--sidebar .quick-request-form__fields {
    grid-template-columns: 1fr;
    gap: var(--space-3);
}

/* ==========================================
   BENEFITS ACCORDION - Text Panels
   ========================================== */
.benefits-accordion-section {
    padding: 0 !important;
    background: url('/wp-content/uploads/2026/06/photo-1745487382792-972bdf09b961.avif') center/cover no-repeat;
    position: relative;
}

.benefits-accordion-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background: none;
    z-index: 0;
}

.benefits-accordion {
    display: flex;
    width: 100%;
    min-height: 380px;
    position: relative;
    z-index: 1;
    background: none;
}

.ben-panel {
    position: relative;
    flex: 1;
    cursor: pointer;
    overflow: hidden;
    transition: flex 0.5s cubic-bezier(0.4, 0, 0.2, 1), background 0.5s ease;
    background: rgba(5, 8, 16, 0.65);
}

.ben-panel--active {
    flex: 3;
    background: none;
}

.ben-panel::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, transparent 100%);
    z-index: 1;
}

.ben-panel + .ben-panel {
    border-left: 1px solid rgba(255, 255, 255, 0.06);
}

.ben-panel__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    padding: 40px 32px;
    color: #ffffff;
}

.ben-panel__number {
    font-family: var(--font-display);
    font-size: 3.5rem;
    font-weight: 700;
    line-height: 1;
    opacity: 0.3;
    margin-bottom: auto;
    transition: opacity 0.4s ease;
    color: #ffffff;
}

.ben-panel--active .ben-panel__number {
    opacity: 0.8;
}

.ben-panel__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 0;
    white-space: nowrap;
    transition: font-size 0.4s ease, margin 0.4s ease;
}

.ben-panel--active .ben-panel__title {
    font-size: 1.5rem;
    margin-bottom: 14px;
    white-space: normal;
}

.ben-panel__desc {
    font-family: var(--font-primary);
    font-size: 0.9rem;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.75);
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-bottom: 0;
    transition: max-height 0.5s ease, opacity 0.4s ease, margin 0.4s ease;
}

.ben-panel--active .ben-panel__desc {
    max-height: 100px;
    opacity: 1;
    margin-bottom: 20px;
}

.ben-panel__icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.4);
    margin-top: 12px;
    transition: all 0.4s ease;
    opacity: 0;
    transform: translateY(8px);
}

.ben-panel--active .ben-panel__icon {
    opacity: 1;
    transform: translateY(0);
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.3);
    background: rgba(255, 255, 255, 0.1);
}

/* Mobile: vertical stack */
@media (max-width: 768px) {
    .benefits-accordion {
        flex-direction: column;
        min-height: auto;
    }

    .ben-panel {
        flex: none !important;
        height: 80px;
        transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .ben-panel--active {
        height: 280px;
    }

    .ben-panel + .ben-panel {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.06);
    }

    .ben-panel__content {
        padding: 20px 24px;
    }

    .ben-panel__number {
        font-size: 2rem;
        position: absolute;
        top: 20px;
        left: 24px;
    }

    .ben-panel:not(.ben-panel--active) .ben-panel__title {
        position: absolute;
        bottom: 20px;
        left: 24px;
    }

    .ben-panel:not(.ben-panel--active) .ben-panel__icon {
        display: none;
    }
}

/* ==========================================
   LOCATIONS + CONTACT FORM ON MAP
   ========================================== */

.locations-section--with-form {
    padding: 0 !important;
    background: #080c12;
}

.locations-section--with-form .section-header {
    display: none;
}

.locations-fullmap-wrapper {
    position: relative;
    width: 100%;
    min-height: 600px;
}

.locations-fullmap-wrapper .locations-map {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    min-height: 600px;
}

/* Floating office cards - left side */
.locations-offices-overlay {
    position: absolute;
    z-index: 10;
    top: 40px;
    left: 40px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    pointer-events: auto;
}

.office-card {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background: #ffffff;
    border-radius: 12px;
    padding: 18px 20px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15), 0 2px 6px rgba(0, 0, 0, 0.06);
    width: 300px;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.office-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.2), 0 4px 10px rgba(0, 0, 0, 0.08);
}

.office-card__marker {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: rgba(0, 119, 182, 0.1);
    color: var(--color-accent);
    flex-shrink: 0;
}

.office-card__info {
    flex: 1;
    min-width: 0;
}

.office-card__name {
    font-family: var(--font-display);
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--color-gray-900) !important;
    margin-bottom: 4px;
    line-height: 1.3;
}

.office-card__address {
    font-size: 0.78rem;
    color: var(--color-gray-500);
    line-height: 1.4;
    margin-bottom: 6px;
}

.office-card__phone {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--color-accent);
    text-decoration: none;
    transition: color 0.2s ease;
}

.office-card__phone:hover {
    color: var(--color-accent-dark);
}

.locations-form-overlay {
    position: relative;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-height: 600px;
    padding: 40px 80px 40px 40px;
    pointer-events: none;
}

.locations-form-card {
    pointer-events: auto;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2), 0 2px 8px rgba(0, 0, 0, 0.08);
    padding: 32px 28px;
    width: 480px;
    max-width: 100%;
}

.locations-form-card__title {
    font-family: var(--font-display);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--color-gray-900);
    margin: 0 0 6px 0;
}

.locations-form-card__subtitle {
    font-size: 0.9rem;
    color: var(--color-gray-500);
    margin: 0 0 20px 0;
    line-height: 1.5;
}

/* Override form styles inside the map card */
.locations-form-card .quick-request-form {
    box-shadow: none !important;
    border-radius: 0 !important;
}

.locations-form-card .quick-request-form__inner {
    padding: 0 !important;
}

.locations-form-card .quick-request-form__header {
    display: none !important;
}

.locations-form-card .quick-request-form__fields {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
}

.locations-form-card .form-input,
.locations-form-card .form-textarea {
    background: var(--color-gray-50);
    border: 1px solid var(--color-gray-200);
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 0.9rem;
    transition: all 0.15s ease;
}

.locations-form-card .form-input:focus,
.locations-form-card .form-textarea:focus {
    background: #ffffff;
    border-color: var(--color-accent);
    box-shadow: 0 0 0 3px rgba(0, 119, 182, 0.12);
}

.locations-form-card .form-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.locations-form-card .quick-request-form__submit {
    width: 100%;
    border-radius: 10px !important;
    padding: 12px !important;
    font-size: 0.9rem !important;
}

.locations-form-card .quick-request-form__privacy {
    font-size: 0.75rem;
    text-align: center;
}

/* Location pins below the form */
.locations-form-card__locations {
    margin-top: 20px;
    padding-top: 16px;
    border-top: 1px solid var(--color-gray-100);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.locations-form-card__loc {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    color: var(--color-gray-500);
    cursor: pointer;
    padding: 4px 0;
    transition: color 0.15s ease;
}

.locations-form-card__loc:hover {
    color: var(--color-accent);
}

.locations-form-card__loc svg {
    flex-shrink: 0;
    color: var(--color-accent);
}

/* Responsive */
@media (max-width: 768px) {
    .locations-fullmap-wrapper {
        min-height: auto;
        display: flex;
        flex-direction: column;
    }

    .locations-fullmap-wrapper .locations-map {
        position: relative;
        min-height: 350px;
    }

    .locations-offices-overlay {
        position: relative;
        top: auto;
        left: auto;
        flex-direction: row;
        overflow-x: auto;
        padding: 16px;
        gap: 10px;
        -webkit-overflow-scrolling: touch;
    }

    .office-card {
        width: 260px;
        min-width: 260px;
        padding: 14px 16px;
    }

    .locations-form-overlay {
        min-height: auto;
        padding: 0;
        margin-top: -40px;
    }

    .locations-form-card {
        width: 100%;
        margin: 0 16px;
        border-radius: 14px;
    }
}

/* Homepage Section Wrapper */
.quick-request-section {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    padding: var(--space-16) 0;
}

.quick-request-section .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-12);
    align-items: center;
}

.quick-request-section__content {
    color: var(--color-white);
}

.quick-request-section__badge {
    display: inline-block;
    background: var(--color-accent-contrast);
    color: var(--color-white);
    font-size: var(--text-sm);
    font-weight: 600;
    padding: var(--space-1) var(--space-3);
    border-radius: var(--radius-full);
    margin-bottom: var(--space-4);
}

.quick-request-section__title {
    font-family: var(--font-display);
    font-size: var(--text-4xl);
    font-weight: 700;
    margin: 0 0 var(--space-4) 0;
    line-height: 1.2;
    color: var(--color-white);
}

.quick-request-section__text {
    font-size: var(--text-lg);
    opacity: 0.9;
    margin: 0 0 var(--space-6) 0;
    line-height: 1.6;
}

.quick-request-section__features {
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

.quick-request-section__feature {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    font-size: var(--text-base);
}

.quick-request-section__feature svg {
    flex-shrink: 0;
    opacity: 0.8;
}

/* Responsive */
@media (max-width: 1023px) {
    .quick-request-section .container {
        grid-template-columns: 1fr;
        gap: var(--space-8);
    }

    .quick-request-section__content {
        text-align: center;
    }

    .quick-request-section__features {
        align-items: center;
    }

    .quick-request-section__title {
        font-size: var(--text-3xl);
    }
}

@media (max-width: 639px) {
    .quick-request-form__inner {
        padding: var(--space-6);
    }

    .quick-request-form__fields {
        grid-template-columns: 1fr;
    }

    .quick-request-form__title {
        font-size: var(--text-xl);
    }

    .quick-request-section__title {
        font-size: var(--text-2xl);
    }

    .quick-request-section__text {
        font-size: var(--text-base);
    }
}

/* Vehicle Page Quick Request */
.vehicle-quick-request {
    margin-top: var(--space-12);
    padding-top: var(--space-8);
    border-top: 1px solid var(--color-gray-200);
}

.vehicle-quick-request > h2 {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-weight: 600;
    color: var(--color-gray-900);
    margin: 0 0 var(--space-6) 0;
    text-align: center;
}

.vehicle-quick-request .quick-request-form {
    max-width: 600px;
    margin: 0 auto;
}

/* ==========================================
   HERO SLIDER (First Screen Banner Slider)
   ========================================== */

.hero-slider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.hero-slider__slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 2s ease-in-out;
}

.hero-slider__slide.active {
    opacity: 1;
}

.hero-slider__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-color: var(--color-primary-dark);
}

.hero-slider__bg picture,
.hero-slider__bg picture img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero-bg-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* No Ken Burns on video slides */
.hero-slider__slide .hero-slider__bg--video {
    animation: none !important;
}

/* No zoom - clean slide transitions */
.hero-slider__slide.active .hero-slider__bg {
    animation: none;
}

.hero-slider__slide .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Text transition */
#hero-slider-title,
#hero-slider-subtitle {
    transition: opacity 0.35s ease, transform 0.35s ease;
}

/* Slider Dots - positioned above booking card */
.hero-slider__dots {
    position: absolute;
    bottom: var(--space-6);
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: var(--space-2);
    z-index: 15;
}

.hero-slider__dot {
    width: 44px;
    height: 44px;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-slider__dot::after {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: var(--radius-full);
    background: rgba(255, 255, 255, 0.35);
    transition: all 0.3s ease;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.hero-slider__dot:hover::after {
    background: rgba(255, 255, 255, 0.65);
}

.hero-slider__dot.active::after {
    background: var(--color-white);
    width: 28px;
    border-radius: 5px;
}

/* Progress Bar */
.hero-slider__progress {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: rgba(255, 255, 255, 0.12);
    z-index: 15;
}

.hero-slider__progress-bar {
    height: 100%;
    width: 0%;
    background: var(--color-accent);
}

/* Ensure hero content stays on top */
.hero > .container {
    z-index: 5;
}

/* ==========================================
   FOOTER - Minimal Centered
   ========================================== */

.site-footer {
    position: relative;
    background: #0f1623 !important;
    color: #ffffff;
    border-top: none !important;
    margin-top: -1px;
}

.site-footer::before {
    content: none;
}

.cta-section {
    background: url('/wp-content/uploads/2026/06/photo-1692897433040-16d8dbbb7554.avif') center/cover no-repeat !important;
    position: relative;
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 140px !important;
}

.cta-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(10,15,26,0.45) 0%, rgba(10,15,26,0.4) 35%, rgba(15,22,35,0.8) 65%, #0f1623 100%);
    z-index: 0;
}

.cta-section .container {
    position: relative;
    z-index: 1;
}

/* CTA smooth fade-in animations */
.cta-content .cta-title,
.cta-content .cta-text,
.cta-content .cta-buttons {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.cta-content .cta-text {
    transition-delay: 0.15s;
}

.cta-content .cta-buttons {
    transition-delay: 0.3s;
}

.cta-section.cta-visible .cta-title,
.cta-section.cta-visible .cta-text,
.cta-section.cta-visible .cta-buttons {
    opacity: 1;
    transform: translateY(0);
}

.site-footer--minimal .footer-main {
    padding: 120px 0 40px !important;
}

.site-footer--minimal .footer-grid {
    display: none !important;
}

.footer-centered {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
}

.footer-brand {
    margin-bottom: 6px;
}

.footer-brand-name {
    font-family: var(--font-display);
    font-size: 2.5rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.02em;
}

.footer-tagline {
    margin-top: 6px;
    font-size: 0.95rem;
    color: rgba(255, 255, 255, 0.5);
    letter-spacing: 0.03em;
}

/* Contact row */
.footer-contact-row {
    display: flex;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
    justify-content: center;
}

.footer-contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.9rem;
    color: #ffffff;
}

.footer-contact-item svg {
    color: #ffffff;
    flex-shrink: 0;
}

.footer-contact-item a {
    color: #ffffff;
    text-decoration: none;
    transition: opacity 0.15s ease;
}

.footer-contact-item a:hover {
    color: #ffffff;
}

/* Social row */
.footer-social-row {
    display: flex;
    gap: 12px;
}

.footer-social-row .social-links {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.footer-social-row .social-link {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    color: #ffffff;
    transition: all 0.2s ease;
}

.footer-social-row .social-link:hover {
    background: rgba(255, 255, 255, 0.35);
    color: #ffffff;
}

/* Nav row */
.footer-nav-row {
    display: flex;
    gap: 24px;
    flex-wrap: wrap;
    justify-content: center;
}

.footer-nav-row a {
    font-size: 0.85rem;
    color: #ffffff;
    text-decoration: none;
    transition: opacity 0.15s ease;
}

.footer-nav-row a:hover {
    color: #ffffff;
}

/* Divider line — push nav down */
.footer-nav-row {
    margin-top: 16px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* Footer language switcher */
.footer-lang-row {
    display: flex;
    justify-content: center;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0 0 16px;
}

.footer-lang-row li {
    list-style: none;
}

.footer-lang-row li a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    color: #ffffff;
    text-decoration: none;
    transition: opacity 0.2s ease;
}

.footer-lang-row li a:hover {
    color: var(--color-white);
}

.footer-lang-row li.current-lang a {
    color: var(--color-white);
    font-weight: 600;
}

.footer-lang-row li a img {
    width: 18px;
    height: 14px;
    border-radius: 2px;
    object-fit: cover;
}

/* Copyright */
.footer-copyright {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.85);
}

/* Back to Top Button */
.back-to-top {
    position: fixed;
    bottom: 32px;
    right: 32px;
    z-index: 999;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: rgba(42, 79, 122, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    opacity: 0;
    transform: translateY(20px);
    pointer-events: none;
    transition: opacity 0.4s ease, transform 0.4s ease, background 0.3s ease;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
    overflow: hidden;
}

.back-to-top--visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.back-to-top:hover {
    background: var(--color-accent, #f28c28);
    border-color: var(--color-accent, #f28c28);
    box-shadow: 0 12px 32px rgba(0, 119, 182, 0.3);
}

.back-to-top__icon {
    transition: transform 0.3s ease;
}

.back-to-top:hover .back-to-top__icon {
    transform: translateY(-2px);
}

@media (max-width: 768px) {
    .back-to-top {
        bottom: 20px;
        right: 20px;
        width: 48px;
        height: 48px;
    }

    .back-to-top__car {
        width: 24px;
        height: 12px;
    }

    .back-to-top__arrow {
        width: 12px;
        height: 12px;
    }
}

/* Hide old footer-bottom since it's integrated */
.site-footer--minimal .footer-bottom {
    display: none;
}

/* ==========================================
   FOOTER - Large Brand Name
   ========================================== */

/* Seamless CTA → Footer transition: disable content-visibility paint boundary */
.cta-section,
.site-footer {
    content-visibility: visible !important;
    contain-intrinsic-size: initial !important;
}

.site-footer--minimal {
    position: relative;
    overflow: hidden;
}

.footer-big-name {
    position: absolute;
    top: 26%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    line-height: 1;
    pointer-events: none;
    z-index: 1;
}

.footer-big-name span {
    font-family: var(--font-display);
    font-size: clamp(4rem, 14vw, 12rem);
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: transparent;
    -webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.18);
    white-space: nowrap;
    display: block;
    user-select: none;
}

.site-footer--minimal .footer-main {
    position: relative;
    z-index: 1;
}

@media (max-width: 768px) {
    .footer-big-name span {
        -webkit-text-stroke: 1px rgba(255, 255, 255, 0.05);
        letter-spacing: 0.03em;
    }
}

/* ==========================================
   FOOTER - Ferrari Drive-In Animation
   ========================================== */


@media (max-width: 640px) {
    .footer-contact-row {
        flex-direction: column;
        gap: 12px;
    }

    .footer-nav-row {
        gap: 16px;
    }

    .footer-brand-name {
        font-size: 1.4rem;
    }
}

/* ==========================================
   VEHICLES CATALOG — Premium Redesign
   ========================================== */

/* Hero Header */
.vc-hero {
    position: relative;
    padding: calc(var(--header-height, 80px) + 60px) 0 60px;
    background: linear-gradient(135deg, rgba(10,15,26,0.55) 0%, rgba(10,15,26,0.65) 100%), url('/wp-content/uploads/2026/06/photo-1527734278484-b2bd34ebbfbe.avif') center/cover no-repeat;
    text-align: center;
    overflow: hidden;
}

.vc-hero__bg {
    position: absolute;
    inset: 0;
    background: none;
    pointer-events: none;
}

.vc-hero .container {
    position: relative;
    z-index: 1;
}

.vc-hero__badge {
    display: inline-block;
    padding: 6px 20px;
    background: rgba(0, 119, 182, 0.15);
    border: 1px solid rgba(0, 119, 182, 0.3);
    border-radius: 4px;
    color: #4db8e8;
    font-family: var(--font-primary);
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 20px;
}

.vc-hero__title {
    font-family: var(--font-display);
    font-size: 3.2rem;
    font-weight: 800;
    color: #fff;
    margin: 0 0 12px;
    letter-spacing: -0.02em;
}

.vc-hero__subtitle {
    font-family: var(--font-primary);
    font-size: 1.15rem;
    color: rgba(255, 255, 255, 0.55);
    margin: 0;
    font-weight: 400;
}

/* Horizontal Filters */
.vc-filters {
    background: #ffffff;
    border-bottom: 1px solid rgba(31, 41, 55, 0.1);
    padding: 0;
    position: sticky;
    top: var(--header-height, 68px);
    z-index: 90;
    backdrop-filter: blur(12px);
}

.vc-filters__bar {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.vc-filters__bar::-webkit-scrollbar {
    display: none;
}

.vc-filters__label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-primary);
    color: rgba(31, 41, 55, 0.5);
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
    flex-shrink: 0;
}

.vc-filters__tags {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: nowrap;
}

.vc-filters__divider {
    width: 1px;
    height: 24px;
    background: rgba(31, 41, 55, 0.15);
    flex-shrink: 0;
    margin: 0 4px;
}

.vc-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 18px;
    background: rgba(31, 41, 55, 0.04);
    border: 1px solid rgba(31, 41, 55, 0.12);
    border-radius: 4px;
    color: rgba(31, 41, 55, 0.65);
    font-family: var(--font-primary);
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
    text-decoration: none;
    transition: all 0.25s ease;
    flex-shrink: 0;
}

.vc-tag:hover {
    background: rgba(31, 41, 55, 0.08);
    border-color: rgba(31, 41, 55, 0.2);
    color: #1f2937;
}

.vc-tag--active {
    background: var(--color-accent, #f28c28) !important;
    border-color: var(--color-accent, #f28c28) !important;
    color: #fff !important;
    box-shadow: 0 0 20px rgba(0, 119, 182, 0.3);
}

.vc-tag--outline {
    background: transparent;
    border-color: rgba(31, 41, 55, 0.12);
}

.vc-tag--outline svg {
    opacity: 0.5;
}

.vc-tag--outline:hover svg,
.vc-tag--active svg {
    opacity: 1;
}

.vc-filters__clear {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 4px;
    color: #f87171;
    font-size: 0.8rem;
    font-weight: 500;
    white-space: nowrap;
    text-decoration: none;
    transition: all 0.25s ease;
    flex-shrink: 0;
    margin-left: auto;
}

.vc-filters__clear:hover {
    background: rgba(239, 68, 68, 0.2);
    color: #fca5a5;
}

/* ==========================================
   VEHICLE ACCORDION - Top 3 panels
   ========================================== */
.vc-accordion-section {
    padding: 0;
    background: #1e293b;
}

.vc-accordion {
    display: flex;
    width: 100%;
    height: 480px;
    overflow: hidden;
}

.vc-panel {
    position: relative;
    flex: 1;
    min-width: 0;
    cursor: pointer;
    overflow: hidden;
    transition: flex 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    text-decoration: none;
    color: #ffffff;
}

.vc-panel--active {
    flex: 3;
}

.vc-panel + .vc-panel {
    border-left: 1px solid rgba(255, 255, 255, 0.08);
}

/* Background image */
.vc-panel__bg {
    position: absolute;
    inset: 0;
    background-image: var(--panel-img);
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
}

.vc-panel--active .vc-panel__bg {
    transform: scale(1.05);
}

/* Overlay */
.vc-panel__overlay {
    position: absolute;
    inset: 0;
    background: rgba(10, 15, 26, 0.6);
    transition: background 0.5s ease;
}

.vc-panel--active .vc-panel__overlay {
    background: rgba(10, 15, 26, 0.35);
}

/* Content */
.vc-panel__content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    padding: 40px 32px;
}

.vc-panel__number {
    font-family: var(--font-display);
    font-size: 4rem;
    font-weight: 700;
    line-height: 1;
    opacity: 0.15;
    margin-bottom: auto;
    transition: opacity 0.4s ease;
}

.vc-panel--active .vc-panel__number {
    opacity: 0.3;
}

.vc-panel__info {
    transition: all 0.4s ease;
}

.vc-panel__brand {
    display: block;
    font-family: var(--font-primary);
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--color-accent, #f28c28);
    margin-bottom: 4px;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: all 0.4s ease;
}

.vc-panel--active .vc-panel__brand {
    opacity: 1;
    max-height: 30px;
    margin-bottom: 6px;
}

.vc-panel__title {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    white-space: nowrap;
    transition: font-size 0.4s ease;
}

.vc-panel--active .vc-panel__title {
    font-size: 1.75rem;
    white-space: normal;
}

.vc-panel__specs {
    display: flex;
    gap: 12px;
    font-family: var(--font-primary);
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
}

.vc-panel--active .vc-panel__specs {
    max-height: 30px;
    opacity: 1;
    margin-top: 10px;
}

.vc-panel__specs span + span::before {
    content: '·';
    margin-right: 12px;
    color: rgba(255, 255, 255, 0.25);
}

.vc-panel__price {
    font-family: var(--font-primary);
    font-size: 1.3rem;
    font-weight: 700;
    color: #ffffff;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    margin-top: 0;
    transition: all 0.4s ease;
}

.vc-panel--active .vc-panel__price {
    max-height: 40px;
    opacity: 1;
    margin-top: 14px;
}

.vc-panel__price small {
    font-size: 0.75rem;
    font-weight: 400;
    opacity: 0.5;
}

.vc-panel__arrow {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #ffffff;
    margin-top: 16px;
    transition: all 0.35s ease;
    opacity: 0;
    transform: translateY(8px);
}

.vc-panel--active .vc-panel__arrow {
    opacity: 1;
    transform: translateY(0);
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.3);
}

/* Mobile: stack vertically */
@media (max-width: 768px) {
    .vc-accordion {
        flex-direction: column;
        height: auto;
    }

    .vc-panel {
        flex: none !important;
        height: 100px;
        transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    .vc-panel--active {
        height: 360px;
    }

    .vc-panel + .vc-panel {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, 0.08);
    }

    .vc-panel__content {
        padding: 20px 24px;
    }

    .vc-panel__number {
        font-size: 2.5rem;
        position: absolute;
        top: 20px;
        left: 24px;
    }

    .vc-panel:not(.vc-panel--active) .vc-panel__title {
        position: absolute;
        bottom: 20px;
        left: 24px;
    }

    .vc-panel:not(.vc-panel--active) .vc-panel__arrow {
        position: absolute;
        right: 24px;
        bottom: 16px;
        opacity: 1;
        transform: none;
    }
}

/* Catalog Section */
.vc-catalog {
    background: #ffffff;
    padding: 48px 0 80px;
    min-height: 60vh;
}

/* Vehicle Grid */
.vc-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}

/* Vehicle Card */
.vc-card {
    background: #ffffff;
    border: 1px solid rgba(31, 41, 55, 0.1);
    border-radius: 4px;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.vc-card:hover {
    transform: translateY(-8px);
    border-color: rgba(0, 119, 182, 0.3);
    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.1),
        0 0 40px rgba(0, 119, 182, 0.06);
}

.vc-card__link {
    display: block;
    text-decoration: none;
    color: inherit;
}

/* Card Image */
.vc-card__image {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #f3f4f6;
}

.vc-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.vc-card:hover .vc-card__image img {
    transform: scale(1.08);
}

.vc-card__no-image {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(31, 41, 55, 0.2);
}

/* Badge */
.vc-card__badge {
    position: absolute;
    top: 16px;
    left: 16px;
    padding: 5px 14px;
    background: rgba(30, 41, 59, 0.75);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: #fff;
    font-family: var(--font-primary);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Hover Overlay */
.vc-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(30, 41, 59, 0.8) 0%, transparent 50%);
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 24px;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.vc-card:hover .vc-card__overlay {
    opacity: 1;
}

.vc-card__view-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    background: var(--color-accent, #f28c28);
    border-radius: 4px;
    color: #fff;
    font-family: var(--font-primary);
    font-size: 0.85rem;
    font-weight: 600;
    transform: translateY(10px);
    transition: transform 0.4s ease;
}

.vc-card:hover .vc-card__view-btn {
    transform: translateY(0);
}

/* Card Body */
.vc-card__body {
    padding: 24px;
}

.vc-card__header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 20px;
}

.vc-card__brand {
    display: block;
    font-family: var(--font-primary);
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--color-accent, #f28c28);
    margin-bottom: 4px;
}

.vc-card__title {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
    line-height: 1.3;
}

.vc-card__price {
    text-align: right;
    flex-shrink: 0;
}

.vc-card__price-label {
    display: block;
    font-family: var(--font-primary);
    font-size: 0.7rem;
    color: rgba(31, 41, 55, 0.45);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}

.vc-card__price-value {
    display: block;
    font-family: var(--font-primary);
    font-size: 1.35rem;
    font-weight: 800;
    color: #1f2937;
    line-height: 1.2;
}

.vc-card__price-period {
    display: block;
    font-family: var(--font-primary);
    font-size: 0.7rem;
    color: rgba(31, 41, 55, 0.45);
}

/* Specs */
.vc-card__specs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-top: 16px;
    border-top: 1px solid rgba(31, 41, 55, 0.08);
}

.vc-spec {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    background: rgba(31, 41, 55, 0.04);
    border-radius: 4px;
    font-family: var(--font-primary);
    font-size: 0.78rem;
    color: rgba(31, 41, 55, 0.6);
    transition: color 0.3s ease;
}

.vc-card:hover .vc-spec {
    color: rgba(31, 41, 55, 0.8);
}

.vc-spec svg {
    color: rgba(31, 41, 55, 0.45);
    flex-shrink: 0;
}

.vc-card:hover .vc-spec svg {
    color: rgba(31, 41, 55, 0.6);
}

/* RentSyst fico icons - keep neutral */
.rentsyst-option-icon,
.fico {
    color: rgba(31, 41, 55, 0.45) !important;
}

/* Card footer with specs + arrow */
.vc-card__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    padding-top: 16px;
    border-top: 1px solid rgba(31, 41, 55, 0.08);
}

.vc-card__footer .vc-card__specs {
    padding-top: 0;
    border-top: none;
    flex: 1;
}

.vc-card__arrow {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    border: 1px solid rgba(31, 41, 55, 0.15);
    color: rgba(31, 41, 55, 0.4);
    flex-shrink: 0;
    opacity: 0;
    transform: translateY(8px);
    transition: all 0.35s ease;
}

.vc-card:hover .vc-card__arrow {
    opacity: 1;
    transform: translateY(0);
    color: #1f2937;
    border-color: rgba(31, 41, 55, 0.25);
    background: rgba(31, 41, 55, 0.06);
}

/* Pagination */
.vc-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 56px;
}

.vc-pagination a,
.vc-pagination span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    height: 48px;
    padding: 0 14px;
    border-radius: 4px;
    font-weight: 500;
    font-size: 0.9rem;
    transition: all 0.3s ease;
}

.vc-pagination a {
    background: rgba(31, 41, 55, 0.04);
    border: 1px solid rgba(31, 41, 55, 0.1);
    color: rgba(31, 41, 55, 0.6);
}

.vc-pagination a:hover {
    background: var(--color-accent, #f28c28);
    border-color: var(--color-accent, #f28c28);
    color: #fff;
}

.vc-pagination .current {
    background: var(--color-accent, #f28c28);
    border: 1px solid var(--color-accent, #f28c28);
    color: #fff;
    box-shadow: 0 0 20px rgba(0, 119, 182, 0.3);
}

.vc-pagination .dots {
    color: rgba(31, 41, 55, 0.3);
    background: none;
    border: none;
}

/* Empty State */
.vc-empty {
    text-align: center;
    padding: 80px 20px;
}

.vc-empty__icon {
    margin-bottom: 24px;
    color: rgba(31, 41, 55, 0.2);
}

.vc-empty h3 {
    font-family: var(--font-display);
    font-size: 1.5rem;
    color: #1f2937;
    margin: 0 0 8px;
}

.vc-empty p {
    color: rgba(31, 41, 55, 0.55);
    margin: 0 0 28px;
}

/* ---- Responsive ---- */

@media (max-width: 1200px) {
    .vc-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
}

@media (max-width: 768px) {
    .vc-hero {
        padding: calc(var(--header-height, 80px) + 40px) 0 40px;
    }

    .vc-hero__title {
        font-size: 2.2rem;
    }

    .vc-hero__subtitle {
        font-size: 1rem;
    }

    .vc-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .vc-card__header {
        flex-direction: column;
        gap: 8px;
    }

    .vc-card__price {
        text-align: left;
    }

    .vc-filters__label {
        display: none;
    }
}

@media (max-width: 480px) {
    .vc-hero__badge {
        font-size: 0.7rem;
        padding: 5px 14px;
    }

    .vc-hero__title {
        font-size: 1.8rem;
    }

    .vc-card__body {
        padding: 18px;
    }

    .vc-card__title {
        font-size: 1.05rem;
    }
}

/* ==========================================
   SINGLE VEHICLE — Premium Hero Redesign
   ========================================== */

/* Compact Hero — White Background */
.sv-hero--compact {
    background: #ffffff;
    padding: calc(var(--header-height, 80px) + 48px) 0 0;
}

.sv-hero__breadcrumbs {
    margin-bottom: 16px;
}

.sv-hero__breadcrumbs .breadcrumbs,
.sv-hero__breadcrumbs .breadcrumbs a,
.sv-hero__breadcrumbs .breadcrumbs span {
    color: #9ca3af;
    font-size: 0.8rem;
}

.sv-hero__breadcrumbs .breadcrumbs a:hover {
    color: var(--color-accent, #f28c28);
}

.sv-hero__breadcrumbs .breadcrumbs .breadcrumb_last,
.sv-hero__breadcrumbs .breadcrumbs .current {
    color: #4b5563;
}

/* Two-column grid: gallery + info */
.sv-hero__grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 36px;
    align-items: start;
}

/* Gallery */
.sv-hero__gallery-wrap {
    position: relative;
}

.sv-hero__gallery {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 10;
    border-radius: 4px;
    overflow: hidden;
    background: #f3f4f6;
    perspective: 1200px;
}

/* 360° Badge */
.sv-360-badge {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 10;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 14px;
    background: rgba(30, 41, 59, 0.7);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 4px;
    color: #ffffff;
    font-family: var(--font-display);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    opacity: 0.7;
    transition: all 0.3s ease;
    pointer-events: none;
    user-select: none;
}

.sv-360-badge.active {
    opacity: 1;
    background: rgba(0, 119, 182, 0.85);
    border-color: rgba(0, 119, 182, 0.5);
}

.sv-360-badge svg {
    animation: spin360hint 3s ease-in-out infinite;
}

.sv-360-badge.active svg {
    animation: none;
}

@keyframes spin360hint {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(180deg); }
}

.sv-hero__img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.4s ease;
}

.sv-hero__no-image {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #d1d5db;
    background: #f3f4f6;
}

/* Navigation arrows */
.sv-hero__nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 50%;
    color: #1a1a2e;
    cursor: pointer;
    opacity: 0;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.sv-hero__gallery:hover .sv-hero__nav {
    opacity: 1;
}

.sv-hero__nav:hover {
    background: #fff;
    transform: translateY(-50%) scale(1.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.sv-hero__nav--prev { left: 12px; }
.sv-hero__nav--next { right: 12px; }

/* Photo counter */
.sv-hero__counter {
    position: absolute;
    bottom: 12px;
    right: 12px;
    z-index: 10;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: none;
    border-radius: 4px;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
}

.sv-hero__counter:hover {
    background: rgba(0, 0, 0, 0.7);
}

/* Thumbnail grid */
.sv-hero__thumbs {
    display: flex;
    gap: 6px;
    padding: 12px 0 0;
    overflow-x: auto;
}

.sv-thumb {
    flex-shrink: 0;
    width: 72px;
    height: 52px;
    border-radius: 6px;
    overflow: hidden;
    border: 2px solid transparent;
    cursor: pointer;
    padding: 0;
    background: none;
    opacity: 0.6;
    transition: all 0.2s ease;
}

.sv-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sv-thumb:hover {
    opacity: 0.85;
}

.sv-thumb.active {
    border-color: var(--color-accent, #f28c28);
    opacity: 1;
}

/* Legacy dot styles kept for compatibility */
.sv-hero__dots {
    display: flex;
    justify-content: center;
    gap: 6px;
    padding: 12px 0 0;
}

.sv-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #d1d5db;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
}

.sv-dot:hover {
    background: #9ca3af;
}

.sv-dot.active {
    background: var(--color-accent, #f28c28);
    width: 24px;
    border-radius: 4px;
}

/* Info Card */
.sv-hero__info-card {
    padding: 8px 0;
}

.sv-hero__badge {
    display: inline-block;
    padding: 4px 14px;
    background: var(--color-accent, #f28c28);
    border-radius: 4px;
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.sv-hero__brand {
    display: block;
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: var(--color-accent, #f28c28);
    margin-bottom: 4px;
}

.sv-hero__name {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 800;
    color: #1a1a2e;
    line-height: 1.15;
    margin: 0 0 16px;
}

.sv-hero__chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.sv-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: #f3f4f6;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    color: #4b5563;
    font-size: 0.78rem;
    font-weight: 500;
}

.sv-chip svg {
    color: #9ca3af;
}

/* Price block */
.sv-hero__price-block {
    padding: 20px 0;
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    margin-bottom: 20px;
}

.sv-hero__price-label {
    font-size: 0.78rem;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sv-hero__price-row {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-top: 4px;
}

.sv-hero__price-value {
    font-size: 2.2rem;
    font-weight: 800;
    color: #1a1a2e;
    line-height: 1;
}

.sv-hero__price-period {
    font-size: 0.95rem;
    color: #9ca3af;
}

/* Book button */
.sv-hero__book-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 16px 32px;
    background: var(--color-accent, #f28c28);
    border: none;
    border-radius: 14px;
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(0, 119, 182, 0.2);
}

.sv-hero__book-btn:hover {
    background: var(--color-accent-light, #f5a623);
    transform: translateY(-2px);
    box-shadow: 0 8px 28px rgba(0, 119, 182, 0.3);
}


/* Content Section */
.sv-content {
    background: linear-gradient(180deg, #1e293b 0%, #233044 100%);
    padding: 48px 0 80px;
}

/* Layout */
.sv-layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
    align-items: start;
}

/* Section titles */
.sv-section {
    margin-bottom: 36px;
}

.sv-section__title {
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: var(--font-display);
    font-size: 1.3rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-section__title svg {
    color: var(--color-accent, #f28c28);
    flex-shrink: 0;
}

/* Specifications Grid */
.sv-specs {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.sv-spec {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 14px;
    transition: all 0.3s ease;
}

.sv-spec:hover {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(0, 119, 182, 0.2);
}

.sv-spec__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: rgba(0, 119, 182, 0.1);
    border-radius: 12px;
    flex-shrink: 0;
}

.sv-spec__icon svg {
    color: var(--color-accent, #f28c28);
}

.sv-spec__label {
    display: block;
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: rgba(255, 255, 255, 0.35);
    margin-bottom: 2px;
}

.sv-spec__value {
    display: block;
    font-size: 0.95rem;
    font-weight: 600;
    color: #fff;
}

/* Features */
.sv-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.sv-feature {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.5);
    transition: all 0.2s ease;
}

.sv-feature--active {
    color: rgba(255, 255, 255, 0.8);
}

.sv-feature__check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 6px;
    flex-shrink: 0;
    background: rgba(255, 255, 255, 0.04);
    color: rgba(255, 255, 255, 0.2);
}

.sv-feature--active .sv-feature__check {
    background: rgba(16, 185, 129, 0.15);
    color: #34d399;
}

.sv-feature__name {
    flex: 1;
}

.sv-feature__value {
    font-weight: 600;
    color: #fff;
    margin-left: auto;
}

/* Description */
.sv-description {
    color: rgba(255, 255, 255, 0.6);
    line-height: 1.8;
    font-size: 0.95rem;
}

.sv-description p {
    margin: 0 0 16px;
}

/* Sidebar Price Card */
.sv-sidebar {
    position: sticky;
    top: calc(var(--header-height, 80px) + 24px);
}

/* Sidebar Features */
.sv-sidebar-features {
    background: var(--color-gray-50, #f9fafb);
    border: 1px solid var(--color-gray-200, #e5e7eb);
    border-radius: 4px;
    padding: 24px;
}

.sv-sidebar-features__title {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-gray-900, #111827);
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--color-gray-200, #e5e7eb);
}

.sv-sidebar-features__title svg {
    color: var(--color-accent, #f28c28);
    flex-shrink: 0;
}

.sv-sidebar-features__list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sv-sidebar-feature {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.82rem;
    color: var(--color-gray-500, #6b7280);
    padding: 6px 0;
    border-bottom: 1px solid var(--color-gray-100, #f3f4f6);
}

.sv-sidebar-feature:last-child {
    border-bottom: none;
}

.sv-sidebar-feature--active {
    color: var(--color-gray-700, #374151);
}

.sv-sidebar-feature__check {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.sv-sidebar-feature--active .sv-sidebar-feature__check {
    color: #34d399;
}

.sv-sidebar-feature__name {
    flex: 1;
}

.sv-sidebar-feature__value {
    font-weight: 600;
    color: var(--color-gray-900, #111827);
    text-align: right;
}

/* Hero cancel note */
.sv-hero__cancel-note {
    font-size: 0.68rem;
    color: rgba(255, 255, 255, 0.35);
    margin-top: 6px;
    text-align: center;
}

.sv-price-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 20px;
    padding: 32px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.sv-price-card__main {
    text-align: center;
    margin-bottom: 24px;
}

.sv-price-card__label {
    display: block;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.4);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 8px;
}

.sv-price-card__amount {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 4px;
}

.sv-price-card__currency {
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--color-accent, #f28c28);
}

.sv-price-card__number {
    font-size: 3rem;
    font-weight: 800;
    color: #fff;
    line-height: 1;
}

.sv-price-card__period {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.4);
}

.sv-price-card__deposit {
    display: flex;
    justify-content: space-between;
    padding: 14px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    margin-bottom: 20px;
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.5);
}

.sv-price-card__deposit strong {
    color: #fff;
}

.sv-price-card__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 16px 24px;
    background: var(--color-accent, #f28c28);
    border: none;
    border-radius: 14px;
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 24px rgba(0, 119, 182, 0.25);
}

.sv-price-card__btn:hover {
    background: var(--color-accent-light, #f5a623);
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0, 119, 182, 0.35);
}

.sv-price-card__note {
    text-align: center;
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.3);
    margin: 16px 0 0;
    line-height: 1.5;
}

/* Pricing Table - Compact */
.sv-pricing {
    margin-top: 32px;
    padding-top: 32px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-pricing__table-wrap {
    overflow-x: auto;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-pricing__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.88rem;
}

.sv-pricing__table thead {
    background: rgba(255, 255, 255, 0.03);
}

.sv-pricing__table th {
    padding: 10px 14px;
    text-align: left;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.6);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-pricing__th-season {
    text-align: left !important;
}

.sv-pricing__th-period {
    text-align: center !important;
}

.sv-pricing__season-name {
    font-weight: 600;
    color: #000000;
    white-space: nowrap;
}

.sv-pricing__season-name small {
    display: block;
    font-size: 0.7rem;
    opacity: 0.6;
    margin-top: 2px;
    font-weight: 400;
}

.sv-pricing__season-name.low { color: #34d399; }
.sv-pricing__season-name.high { color: #f59e0b; }

.sv-pricing__th-season.low { color: #34d399; }
.sv-pricing__th-season.high { color: #f59e0b; }

/* Inline pricing inside calendar */
.sv-pricing--inline {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-pricing__subtitle {
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 16px;
}

.sv-pricing__th-season small {
    display: block;
    font-size: 0.7rem;
    opacity: 0.7;
    margin-top: 2px;
}

.sv-pricing__table tbody tr {
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
    transition: background 0.2s ease;
}

.sv-pricing__table tbody tr:last-child {
    border-bottom: none;
}

.sv-pricing__table tbody tr:hover {
    background: rgba(255, 255, 255, 0.03);
}

.sv-pricing__table td {
    padding: 10px 14px;
}

.sv-pricing__period {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sv-pricing__period-name {
    font-weight: 600;
    color: #fff;
}

.sv-pricing__discount {
    font-size: 0.75rem;
    color: #34d399;
    font-weight: 600;
}

.sv-pricing__limit {
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.35);
}

.sv-pricing__price {
    text-align: center;
}

.sv-pricing__amount {
    font-weight: 700;
    color: #000000;
    font-size: 0.95rem;
}

.sv-pricing__unit {
    font-size: 0.75rem;
    color: #000000;
    margin-left: 2px;
}

.sv-pricing__price.best {
    position: relative;
}

.sv-pricing__price.best .sv-pricing__amount {
    color: #000000;
    text-shadow: none;
}

.sv-pricing__note {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.35);
    margin-top: 16px;
}

.sv-pricing__note svg {
    flex-shrink: 0;
    color: rgba(255, 255, 255, 0.2);
}

/* Calendar dark overrides */
.sv-calendar {
    margin-top: 48px;
    padding-top: 48px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-calendar__legend {
    display: flex;
    justify-content: flex-end;
    gap: 24px;
    margin-bottom: 20px;
}

.sv-calendar__legend-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
}

.sv-calendar__legend-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.sv-calendar__legend-item.available .sv-calendar__legend-dot {
    background: #34d399;
}

.sv-calendar__legend-item.unavailable .sv-calendar__legend-dot {
    background: #ef4444;
}

.sv-calendar .calendar-navigation {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 12px;
    padding: 12px 20px;
    margin-bottom: 16px;
}

.sv-calendar .calendar-range-title {
    color: #fff;
    font-weight: 600;
}

.sv-calendar .calendar-nav-btn {
    color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 4px;
}

.sv-calendar .calendar-nav-btn:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
}

.sv-calendar .calendar-months-wrapper {
    background: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.06);
    box-shadow: none;
}

.sv-calendar .calendar-loading {
    background: rgba(30, 41, 59, 0.85);
    color: rgba(255, 255, 255, 0.5);
}

.sv-calendar .loading-spinner {
    border-color: rgba(255, 255, 255, 0.1);
    border-top-color: var(--color-accent, #f28c28);
}

.sv-calendar .calendar-month-title {
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, 0.06);
}

.sv-calendar .calendar-day-header {
    color: rgba(255, 255, 255, 0.35);
}

.sv-calendar .calendar-day {
    color: rgba(255, 255, 255, 0.6);
}

.sv-calendar .calendar-day.available {
    background: rgba(16, 185, 129, 0.25);
    color: #10b981;
    font-weight: 600;
}

.sv-calendar .calendar-day.available:hover {
    background: rgba(16, 185, 129, 0.38);
}

.sv-calendar .calendar-day.busy {
    background: rgba(239, 68, 68, 0.3);
    color: #ef4444;
    font-weight: 600;
}

.sv-calendar .calendar-day.past {
    color: rgba(255, 255, 255, 0.15);
    background: rgba(255, 255, 255, 0.02);
}

.sv-calendar .calendar-day.today {
    box-shadow: inset 0 0 0 2px var(--color-accent, #f28c28);
}

.sv-calendar .calendar-day.today.available {
    background: rgba(0, 119, 182, 0.12);
}

/* Quick Request dark override */
.sv-quick-request {
    margin-top: 48px;
    padding-top: 48px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

/* Booking section - dark blue */
.sv .vehicle-booking-section {
    margin-top: 48px;
    padding: 32px 36px;
    background: linear-gradient(135deg, #0a1628 0%, #111d33 40%, #162544 100%);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 4px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
}

.sv .vehicle-booking-section .sv-section__title {
    color: #fff;
}

.sv .vehicle-booking-section .sv-section__title svg {
    color: var(--color-accent, #f28c28);
}

.sv .booking-section-title {
    color: #fff;
}

.sv .vehicle-booking-section button[type="submit"],
.sv .vehicle-booking-section .btn,
.sv .vehicle-booking-section .booking-submit,
.sv .vehicle-booking-section .rentsyst-booking button {
    background: #1f2937 !important;
    color: #ffffff !important;
    border: none !important;
    font-weight: 700 !important;
    padding: 14px 28px !important;
    border-radius: 8px !important;
    transition: background 0.3s ease !important;
}

.sv .vehicle-booking-section button[type="submit"]:hover,
.sv .vehicle-booking-section .btn:hover,
.sv .vehicle-booking-section .booking-submit:hover,
.sv .vehicle-booking-section .rentsyst-booking button:hover {
    background: #111827 !important;
}

/* ==========================================
   REVIEWS CAROUSEL
   ========================================== */
.sv-reviews-section {
    padding: 60px 0;
    background: #1e293b;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-reviews-inline {
    padding-top: 0;
}

.sv-reviews-inline .sv-review-card {
    width: calc(33.333% - 14px);
    background: var(--color-gray-50, #f9fafb);
    border-color: var(--color-gray-200, #e5e7eb);
}

@media (max-width: 1024px) {
    .sv-reviews-inline .sv-review-card {
        width: calc(50% - 10px);
    }
}

@media (max-width: 640px) {
    .sv-reviews-inline .sv-review-card {
        width: calc(100% - 0px);
    }
}

/* Adapt reviews for light background context */
.sv-details .sv-reviews-inline .sv-review-card {
    background: var(--color-gray-50, #f9fafb);
    border-color: var(--color-gray-200, #e5e7eb);
}

.sv-details .sv-reviews-inline .sv-review-card__text {
    color: var(--color-gray-600, #4b5563);
}

.sv-details .sv-reviews-inline .sv-review-card__name {
    color: var(--color-gray-900, #111827);
}

.sv-details .sv-reviews-inline .sv-review-card__rating {
    color: var(--color-gray-900, #111827);
}

.sv-details .sv-reviews-inline .sv-review-card__source {
    color: var(--color-gray-400, #9ca3af);
}

.sv-details .sv-reviews-inline .sv-review-card__avatar {
    background: rgba(0, 119, 182, 0.1);
}

.sv-details .sv-reviews-inline .sv-reviews-nav__btn {
    border-color: var(--color-gray-300, #d1d5db);
    color: var(--color-gray-500, #6b7280);
}

.sv-details .sv-reviews-inline .sv-reviews-nav__btn:hover {
    border-color: var(--color-gray-400);
    color: var(--color-gray-800);
    background: var(--color-gray-100);
}

.sv-reviews-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 32px;
}

.sv-reviews-header .sv-section__title {
    margin-bottom: 0;
}

.sv-reviews-nav {
    display: flex;
    gap: 8px;
}

.sv-reviews-nav__btn {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.15);
    background: transparent;
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    transition: all 0.25s ease;
}

.sv-reviews-nav__btn:hover {
    border-color: rgba(255, 255, 255, 0.4);
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
}

/* Reviews Grid - 3 per row */
.sv-reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

@media (max-width: 1024px) {
    .sv-reviews-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .sv-reviews-grid {
        grid-template-columns: 1fr;
    }
}

.sv-reviews-track-wrap {
    overflow: hidden;
}

.sv-reviews-track {
    display: flex;
    gap: 20px;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.sv-review-card {
    flex-shrink: 0;
    padding: 28px 24px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 4px;
    transition: border-color 0.3s ease;
}

.sv-review-card:hover {
    border-color: rgba(255, 255, 255, 0.15);
}

.sv-review-card__stars {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 16px;
    color: #f59e0b;
    font-size: 1rem;
    letter-spacing: 2px;
}

.sv-review-card__rating {
    font-family: var(--font-display);
    font-size: 0.85rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0;
}

.sv-review-card__text {
    font-size: 0.9rem;
    line-height: 1.7;
    color: rgba(255, 255, 255, 0.6);
    margin-bottom: 20px;
    font-style: italic;
}

.sv-review-card__author {
    display: flex;
    align-items: center;
    gap: 12px;
}

.sv-review-card__avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(0, 119, 182, 0.15);
    color: var(--color-accent, #f28c28);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 700;
    flex-shrink: 0;
}

.sv-review-card__name {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: #ffffff;
}

.sv-review-card__source {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.35);
    margin-top: 2px;
}

.sv-review-card__source svg {
    opacity: 0.6;
}

@media (max-width: 1024px) {
    .sv-review-card {
        width: calc(50% - 10px);
    }
}

@media (max-width: 640px) {
    .sv-review-card {
        width: calc(85vw - 32px);
    }
    .sv-reviews-header {
        flex-wrap: wrap;
        gap: 16px;
    }
}

/* Related Vehicles */
.sv-related {
    margin-top: 48px;
    padding-top: 48px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-related__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.sv-related__card {
    display: block;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    transition: all 0.4s ease;
}

.sv-related__card:hover {
    transform: translateY(-6px);
    border-color: rgba(0, 119, 182, 0.3);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.3);
}

.sv-related__image {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
}

.sv-related__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.sv-related__card:hover .sv-related__image img {
    transform: scale(1.06);
}

.sv-related__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 12px;
    background: rgba(30, 41, 59, 0.7);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.sv-related__info {
    padding: 20px;
}

.sv-related__brand {
    display: block;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--color-accent, #f28c28);
    margin-bottom: 4px;
}

.sv-related__name {
    font-size: 1.05rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px;
}

.sv-related__price {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.5);
}

/* ---- Responsive ---- */

@media (max-width: 1024px) {
    .sv-hero__grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }

    .sv-layout {
        grid-template-columns: 1fr;
    }

    .sv-sidebar {
        position: static;
    }

    .sv-price-card {
        max-width: 480px;
    }

    .sv-related__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .sv-hero__grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .sv-hero__name {
        font-size: 1.6rem;
    }

    .sv-hero__price-value {
        font-size: 1.8rem;
    }

    .sv-hero__nav {
        width: 36px;
        height: 36px;
        opacity: 1;
    }

    .sv-specs {
        grid-template-columns: 1fr;
    }

    .sv-features {
        grid-template-columns: 1fr;
    }

    .sv-related__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .sv-hero--compact {
        padding: 16px 0 0;
    }

    .sv-hero__name {
        font-size: 1.4rem;
    }

    .sv-hero__chips {
        gap: 6px;
    }

    .sv-chip {
        padding: 4px 10px;
        font-size: 0.72rem;
    }

    .sv-hero__book-btn {
        padding: 12px 24px;
        font-size: 0.85rem;
    }

    .sv-content {
        padding: 32px 0 60px;
    }

    .sv-price-card {
        padding: 24px;
    }

    .sv-price-card__number {
        font-size: 2.4rem;
    }
}

/* ==========================================
   SINGLE VEHICLE — White Background Override
   ========================================== */

/* Content area — white background */
.sv-content {
    background: #ffffff !important;
}

/* Section titles */
.sv-section__title {
    color: #1a1a2e;
    border-bottom-color: #e5e7eb;
}

/* Specifications */
.sv-spec {
    background: #f8f9fa;
    border-color: #e5e7eb;
}

.sv-spec:hover {
    background: #f0f4f8;
    border-color: rgba(0, 119, 182, 0.3);
}

.sv-spec__label {
    color: #6b7280;
}

.sv-spec__value {
    color: #1a1a2e;
}

/* Features */
.sv-feature {
    color: #9ca3af;
}

.sv-feature--active {
    color: #374151;
}

.sv-feature__check {
    background: #f3f4f6;
    color: #d1d5db;
}

.sv-feature--active .sv-feature__check {
    background: rgba(16, 185, 129, 0.12);
    color: #10b981;
}

.sv-feature__value {
    color: #1a1a2e;
}

/* Description */
.sv-description {
    color: #4b5563;
}

/* Sidebar Price Card */
.sv-price-card {
    background: #f8f9fa;
    border-color: #e5e7eb;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.sv-price-card__label {
    color: #6b7280;
}

.sv-price-card__number {
    color: #1a1a2e;
}

.sv-price-card__period {
    color: #6b7280;
}

.sv-price-card__deposit {
    border-top-color: #e5e7eb;
    color: #6b7280;
}

.sv-price-card__deposit strong {
    color: #1a1a2e;
}

.sv-price-card__note {
    color: #9ca3af;
}

/* Pricing Table */
.sv-pricing {
    border-top-color: #e5e7eb;
}

.sv-pricing__table-wrap {
    border-color: #e5e7eb;
}

.sv-pricing__table thead {
    background: #f8f9fa;
}

.sv-pricing__table th {
    color: #6b7280;
    border-bottom-color: #e5e7eb;
}

.sv-pricing__table tbody tr {
    border-bottom-color: #f3f4f6;
}

.sv-pricing__table tbody tr:hover {
    background: #f8f9fa;
}

.sv-pricing__period-name {
    color: #1a1a2e;
}

.sv-pricing__limit {
    color: #9ca3af;
}

.sv-pricing__amount {
    color: #000000;
}

.sv-pricing__unit {
    color: #000000;
}

.sv-pricing__price.best .sv-pricing__amount {
    color: #000000;
    text-shadow: none;
}

.sv-pricing__note {
    color: #9ca3af;
}

.sv-pricing__note svg {
    color: #d1d5db;
}

/* Calendar */
.sv-calendar {
    border-top-color: #e5e7eb;
}

.sv-calendar__legend-item {
    color: #6b7280;
}

.sv-calendar .calendar-navigation {
    background: #f8f9fa;
    border-color: #e5e7eb;
}

.sv-calendar .calendar-range-title {
    color: #1a1a2e;
}

.sv-calendar .calendar-nav-btn {
    color: #6b7280;
    background: #fff;
    border-color: #e5e7eb;
}

.sv-calendar .calendar-nav-btn:hover {
    color: #1a1a2e;
    background: #f3f4f6;
}

.sv-calendar .calendar-months-wrapper {
    background: #f8f9fa;
    border-color: #e5e7eb;
}

.sv-calendar .calendar-loading {
    background: rgba(255, 255, 255, 0.85);
    color: #6b7280;
}

.sv-calendar .loading-spinner {
    border-color: #e5e7eb;
    border-top-color: var(--color-accent, #f28c28);
}

.sv-calendar .calendar-month-title {
    color: #1a1a2e;
    border-bottom-color: #e5e7eb;
}

.sv-calendar .calendar-day-header {
    color: #9ca3af;
}

.sv-calendar .calendar-day {
    color: #4b5563;
}

.sv-calendar .calendar-day.available {
    background: rgba(16, 185, 129, 0.2);
    color: #059669;
    font-weight: 600;
}

.sv-calendar .calendar-day.available:hover {
    background: rgba(16, 185, 129, 0.32);
}

.sv-calendar .calendar-day.busy {
    background: rgba(239, 68, 68, 0.2);
    color: #dc2626;
    font-weight: 600;
}

.sv-calendar .calendar-day.past {
    color: #d1d5db;
    background: #fafafa;
}

/* Quick Request & Booking */
.sv-quick-request {
    border-top-color: #e5e7eb;
}

.sv .vehicle-booking-section {
    background: linear-gradient(135deg, #0a1628 0%, #111d33 40%, #162544 100%);
    border-color: rgba(255, 255, 255, 0.15);
}

.sv .vehicle-booking-section .sv-section__title {
    color: #ffffff;
}

.sv .booking-section-title {
    color: #ffffff;
}

/* Related Vehicles */
.sv-related {
    border-top-color: #e5e7eb;
}

.sv-related__card {
    background: #fff;
    border-color: #e5e7eb;
}

.sv-related__card:hover {
    border-color: rgba(0, 119, 182, 0.3);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.08);
}

.sv-related__badge {
    background: rgba(0, 0, 0, 0.6);
}

.sv-related__name {
    color: #1a1a2e;
}

.sv-related__price {
    color: #6b7280;
}

/* ==========================================
   Unified border-radius: 8px (matches lang switcher)
   ========================================== */
.sv-hero__gallery,
.sv-hero__nav,
.sv-hero__counter,
.sv-hero__badge,
.sv-chip,
.sv-hero__book-btn,
.sv-price-card,
.sv-spec,
.sv-spec__icon,
.sv-feature,
.sv-feature__check,
.sv-pricing__table-wrap,
.sv-related__card,
.sv-related__badge,
.sv-price-card__btn,
.sv-calendar .calendar-navigation,
.sv-calendar .calendar-nav-btn,
.sv-dot.active {
    border-radius: 4px !important;
}

.sv-dot {
    border-radius: 50% !important;
}

.sv-dot.active {
    border-radius: 4px !important;
}

/* ========================================
   CONTACT PAGE REDESIGN
   ======================================== */

/* Hero */
.contact-hero {
    position: relative;
    padding: calc(var(--header-height) + var(--space-16, 4rem)) 0 var(--space-16, 4rem);
    background: linear-gradient(135deg, rgba(10,15,26,0.55) 0%, rgba(10,15,26,0.65) 100%), url('/wp-content/uploads/2026/06/photo-1527734278484-b2bd34ebbfbe.avif') center/cover no-repeat;
    overflow: hidden;
    text-align: center;
}

.contact-hero__bg {
    position: absolute;
    inset: 0;
    background: none;
}

.contact-hero__content {
    position: relative;
    z-index: 2;
}

.contact-hero__label {
    display: inline-block;
    font-size: var(--text-sm);
    font-weight: 600;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--color-accent-light);
    margin-bottom: var(--space-4);
}

.contact-hero__title {
    font-size: clamp(var(--text-3xl), 5vw, var(--text-5xl));
    font-weight: 800;
    color: var(--color-white);
    margin-bottom: var(--space-4);
    line-height: 1.1;
}

.contact-hero__subtitle {
    font-size: var(--text-lg);
    color: rgba(255, 255, 255, 0.7);
    max-width: 520px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Contact Cards Section */
.contact-cards-section {
    padding: var(--space-16, 4rem) 0;
    background: var(--color-gray-50);
}

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

.contact-info-card {
    display: flex;
    align-items: flex-start;
    gap: var(--space-5);
    padding: var(--space-8, 2rem);
    background: var(--color-white);
    border-radius: 4px;
    border: 1px solid var(--color-gray-200);
    box-shadow: var(--shadow-sm);
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    text-decoration: none;
    color: inherit;
    position: relative;
    overflow: hidden;
}

.contact-info-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 0;
    background: var(--color-accent);
    border-radius: 0 2px 2px 0;
    transition: height 0.35s ease;
}

.contact-info-card:hover::before,
a.contact-info-card:hover::before {
    height: 100%;
}

a.contact-info-card:hover,
.contact-info-card:hover {
    border-color: rgba(0, 119, 182, 0.2);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.08);
    transform: translateY(-4px);
}

.contact-info-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
    border-radius: 4px;
    color: var(--color-white);
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(26, 54, 93, 0.2);
}

.contact-info-card__body {
    display: flex;
    flex-direction: column;
    gap: var(--space-1);
    min-width: 0;
}

.contact-info-card__title {
    font-family: var(--font-display);
    font-size: var(--text-sm);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-gray-500);
}

.contact-info-card__value {
    font-size: var(--text-sm);
    font-weight: 600;
    color: var(--color-gray-900);
    margin-bottom: 2px;
    line-height: 1.4;
    margin: 0;
    word-break: break-word;
}

.contact-info-card__cta {
    font-size: var(--text-sm);
    font-weight: 600;
    color: var(--color-accent);
    margin-top: var(--space-2);
    transition: color 0.2s ease;
}

a.contact-info-card:hover .contact-info-card__cta {
    color: var(--color-accent-dark);
}

/* Map Section */
.contact-map-section {
    padding: var(--space-12) 0 0;
    background: var(--color-white);
}

.contact-map-header {
    text-align: center;
    margin-bottom: var(--space-10, 2.5rem);
}

.contact-map-header__title {
    font-size: var(--text-3xl);
    font-weight: 800;
    color: var(--color-gray-900);
    margin-bottom: var(--space-3);
}

.contact-map-header__subtitle {
    font-size: var(--text-lg);
    color: var(--color-gray-500);
    margin: 0;
}

.contact-map-layout {
    display: grid;
    grid-template-columns: 420px 1fr;
    min-height: 560px;
    border-top: 1px solid var(--color-gray-200);
}

.contact-offices {
    background: var(--color-gray-50);
    border-right: 1px solid var(--color-gray-200);
    overflow-y: auto;
    max-height: 560px;
}

.contact-offices__list {
    display: flex;
    flex-direction: column;
    padding: var(--space-6) var(--space-6);
    gap: var(--space-4);
}

.contact-office-card {
    display: flex;
    align-items: flex-start;
    gap: var(--space-4);
    padding: var(--space-5);
    background: var(--color-white);
    border-radius: 4px;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.25s ease;
    box-shadow: var(--shadow-sm);
}

.contact-office-card:hover {
    border-color: var(--color-gray-300);
    box-shadow: var(--shadow-md);
}

.contact-office-card--active {
    border-color: var(--color-primary) !important;
    box-shadow: 0 4px 20px rgba(26, 54, 93, 0.12) !important;
    background: var(--color-white);
}

.contact-office-card__number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: var(--color-gray-100);
    border-radius: 4px;
    font-size: var(--text-sm);
    font-weight: 700;
    color: var(--color-gray-500);
    flex-shrink: 0;
    transition: all 0.25s ease;
}

.contact-office-card--active .contact-office-card__number {
    background: var(--color-primary);
    color: var(--color-white);
}

.contact-office-card__info {
    flex: 1;
    min-width: 0;
}

.contact-office-card__name {
    font-size: var(--text-base);
    font-weight: 700;
    color: var(--color-gray-900);
    margin-bottom: var(--space-1);
}

.contact-office-card__address {
    font-size: var(--text-sm);
    color: var(--color-gray-600);
    margin-bottom: var(--space-2);
    line-height: 1.5;
}

.contact-office-card__phone {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    font-size: var(--text-sm);
    color: var(--color-accent);
    text-decoration: none;
    font-weight: 600;
}

.contact-office-card__phone:hover {
    color: var(--color-accent-dark);
}

.contact-office-card__directions {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: var(--color-gray-100);
    border: none;
    border-radius: 4px;
    color: var(--color-gray-500);
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.contact-office-card__directions:hover {
    background: var(--color-primary);
    color: var(--color-white);
}

.contact-map-wrap {
    position: relative;
}

.contact-map {
    width: 100%;
    height: 100%;
    min-height: 560px;
}

/* FAQ Section - Expandable Cards */
.contact-faq-section {
    padding: 80px 0;
    background: #f8f9fb;
}

.contact-faq__title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: #1f2937;
    text-align: center;
    margin-bottom: 48px;
}

.faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    max-width: 1000px;
    margin: 0 auto;
}

.faq-card {
    background: #ffffff;
    border: 1px solid rgba(31, 41, 55, 0.08);
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
    transition: box-shadow 0.3s ease, border-color 0.3s ease, transform 0.3s ease;
}

.faq-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
    border-color: rgba(31, 41, 55, 0.15);
}

.faq-card--open {
    border-color: var(--color-accent, #f28c28);
    box-shadow: 0 8px 30px rgba(0, 119, 182, 0.1);
    transform: scale(1.02);
}

.faq-card__header {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px;
}

.faq-card__icon-wrap {
    width: 44px;
    height: 44px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    transition: background 0.3s ease, color 0.3s ease;
}

.faq-card__icon-wrap--docs    { background: rgba(242, 140, 40, 0.08); color: #f28c28; }
.faq-card__icon-wrap--age     { background: rgba(139, 92, 246, 0.08); color: #8b5cf6; }
.faq-card__icon-wrap--shield  { background: rgba(16, 185, 129, 0.08); color: #10b981; }
.faq-card__icon-wrap--location{ background: rgba(245, 158, 11, 0.08); color: #f59e0b; }
.faq-card__icon-wrap--cancel  { background: rgba(239, 68, 68, 0.08);  color: #ef4444; }
.faq-card__icon-wrap--delivery{ background: rgba(6, 182, 212, 0.08);  color: #06b6d4; }
.faq-card__icon-wrap--mileage { background: rgba(99, 102, 241, 0.08); color: #6366f1; }
.faq-card__icon-wrap--payment { background: rgba(236, 72, 153, 0.08); color: #ec4899; }

.faq-card--open .faq-card__icon-wrap {
    background: var(--color-accent, #f28c28);
    color: #ffffff;
}

.faq-card__question {
    flex: 1;
    font-family: var(--font-primary);
    font-size: 0.95rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0;
    line-height: 1.4;
}

.faq-card__chevron {
    flex-shrink: 0;
    color: rgba(31, 41, 55, 0.3);
    transition: transform 0.35s ease, color 0.3s ease;
}

.faq-card--open .faq-card__chevron {
    transform: rotate(180deg);
    color: var(--color-accent, #f28c28);
}

.faq-card__body {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    padding: 0 20px;
}

.faq-card--open .faq-card__body {
    max-height: 300px;
    padding: 0 20px 20px;
}

.faq-card__body p {
    font-size: 0.9rem;
    line-height: 1.7;
    color: rgba(31, 41, 55, 0.6);
    margin: 0;
    padding-left: 58px;
}

@media (max-width: 768px) {
    .contact-faq-section {
        padding: 60px 0;
    }

    .contact-faq__title {
        font-size: 1.6rem;
        margin-bottom: 32px;
    }

    .faq-grid {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .faq-card__header {
        padding: 16px;
    }

    .faq-card__icon-wrap {
        width: 38px;
        height: 38px;
        border-radius: 8px;
    }

    .faq-card__icon-wrap svg {
        width: 18px;
        height: 18px;
    }

    .faq-card__question {
        font-size: 0.9rem;
    }

    .faq-card__body p {
        padding-left: 52px;
    }
}

/* CTA Section */
.contact-cta-section {
    padding: var(--space-16, 4rem) 0;
    background: var(--color-gray-50);
}

.contact-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-8);
    padding: var(--space-12, 3rem) var(--space-10, 2.5rem);
    background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%);
    border-radius: 4px;
    position: relative;
    overflow: hidden;
}

.contact-cta::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -10%;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(0, 119, 182, 0.2) 0%, transparent 70%);
    pointer-events: none;
}

.contact-cta__content {
    position: relative;
    z-index: 1;
}

.contact-cta__title {
    font-size: var(--text-2xl);
    font-weight: 800;
    color: var(--color-white);
    margin-bottom: var(--space-2);
}

.contact-cta__text {
    font-size: var(--text-base);
    color: rgba(255, 255, 255, 0.7);
    margin: 0;
}

.contact-cta__actions {
    display: flex;
    gap: var(--space-4);
    flex-shrink: 0;
    position: relative;
    z-index: 1;
}

.contact-cta__actions .btn {
    border-radius: 4px;
}

.btn-lg {
    padding: var(--space-4) var(--space-8, 2rem);
    font-size: var(--text-base);
    font-weight: 700;
    border-radius: 4px;
}

.btn-outline-light {
    background: transparent;
    color: var(--color-white);
    border: 2px solid rgba(255, 255, 255, 0.3);
    transition: all 0.25s ease;
}

.btn-outline-light:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.6);
}

/* Responsive */
@media (max-width: 1024px) {
    .contact-map-layout {
        grid-template-columns: 1fr;
    }

    .contact-offices {
        max-height: none;
        border-right: none;
        border-bottom: 1px solid var(--color-gray-200);
    }

    .contact-offices__list {
        flex-direction: row;
        flex-wrap: wrap;
        overflow-x: auto;
    }

    .contact-office-card {
        flex: 1 1 280px;
    }

    .contact-map {
        min-height: 400px;
    }

    .contact-cta {
        flex-direction: column;
        text-align: center;
    }

    .contact-cta__actions {
        justify-content: center;
    }
}

@media (max-width: 640px) {
    .contact-cards-grid {
        grid-template-columns: 1fr;
    }

    .contact-info-card {
        padding: var(--space-5);
    }

    .contact-offices__list {
        flex-direction: column;
        padding: var(--space-4);
    }

    .contact-cta {
        padding: var(--space-8, 2rem) var(--space-6);
    }

    .contact-cta__actions {
        flex-direction: column;
        width: 100%;
    }

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

/* ==========================================
   HOMEPAGE SECTION COLOR FLOW
   Gradient: Hero(dark) → Steps(#0f1623→#141c2b) → Stats(#141c2b→#1a2338)
             → Fleet(#1a2338→#151d2e) → Benefits(#151d2e→#111827)
             → Locations(#111827) → CTA(→#0a0e14) → Footer(#0a0e14)
   ========================================== */

/* Hero slide 2 - shift image up to show bike above form */
.hero-slider__slide[data-slide="1"] .hero-bg-img {
    object-position: center 30% !important;
}

/* Hero: extra bottom spacing before carousel */
.hero {
    min-height: 90vh !important;
    padding-bottom: 100px !important;
}

/* Hero bottom fade into first section */
.hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 180px;
    background: linear-gradient(to bottom, transparent 0%, #080c14 100%);
    z-index: 2;
    pointer-events: none;
}

/* ========================================
   BRANDS MARQUEE
   ======================================== */
.brands-marquee-section {
    background: #ffffff;
    padding: 40px 0;
    overflow: hidden;
    position: relative;
}

.brands-marquee-section::before,
.brands-marquee-section::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100px;
    z-index: 2;
    pointer-events: none;
}

.brands-marquee-section::before {
    left: 0;
    background: linear-gradient(to right, #ffffff 0%, transparent 100%);
}

.brands-marquee-section::after {
    right: 0;
    background: linear-gradient(to left, #ffffff 0%, transparent 100%);
}

.brands-marquee-track {
    width: 100%;
    overflow: hidden;
}

.brands-marquee-inner {
    display: flex;
    align-items: center;
    gap: 80px;
    width: max-content;
    animation: brands-scroll 25s linear infinite;
}

.brands-marquee-inner:hover {
    animation-play-state: paused;
}

.brands-marquee-item {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0.45;
    transition: opacity 0.3s ease;
    cursor: default;
}

.brands-marquee-item:hover {
    opacity: 1;
}

.brands-marquee-item img {
    height: 70px;
    width: auto;
    object-fit: contain;
}

.brands-marquee-item img[alt="Kawasaki"] {
    height: 45px;
}

@keyframes brands-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@media (max-width: 768px) {
    .brands-marquee-section {
        padding: 28px 0;
    }

    .brands-marquee-inner {
        gap: 50px;
    }

    .brands-marquee-item img {
        height: 50px;
    }

    .brands-marquee-section::before,
    .brands-marquee-section::after {
        width: 40px;
    }
}

/* ========================================
   ABOUT US PAGE
   ======================================== */

/* Hero */
.about-hero {
    position: relative;
    height: 50vh;
    min-height: 360px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.about-hero__bg {
    position: absolute;
    inset: 0;
}

.about-hero__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(10, 15, 26, 0.85) 0%, rgba(10, 15, 26, 0.5) 100%);
}

.about-hero__content {
    position: relative;
    z-index: 2;
    text-align: center;
    color: #ffffff;
}

.about-hero__title {
    font-family: var(--font-display);
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 16px;
    letter-spacing: 0.04em;
}

.about-hero__subtitle {
    font-size: 1.15rem;
    color: rgba(255, 255, 255, 0.8);
    max-width: 560px;
    margin: 0 auto;
    line-height: 1.6;
}

/* About Description */
.about-desc-section {
    background: #0a0e14;
    padding: 100px 0;
}

.about-desc-label {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 48px;
}

.about-desc-line {
    display: block;
    width: 40px;
    height: 2px;
    background: #6b7280;
}

.about-desc-label__text {
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.15em;
    color: #9ca3af;
}

.about-desc-heading {
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 3.5vw, 2.8rem);
    font-weight: 700;
    line-height: 1.35;
    max-width: 800px;
    margin-bottom: 48px;
    background: linear-gradient(135deg, #ffffff 0%, #94a3b8 40%, #f5a623 70%, #f28c28 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.about-desc-heading--accent {
    -webkit-text-fill-color: transparent;
}

.about-desc-body {
    max-width: 480px;
    margin-left: auto;
}

.about-desc-body p {
    font-size: 0.9rem;
    line-height: 1.7;
    color: #9ca3af;
    margin: 0;
}

@media (max-width: 768px) {
    .about-desc-section {
        padding: 60px 0;
    }

    .about-desc-body {
        margin-left: 0;
    }
}

/* Why Choose Us — uses shared .steps-accordion styles */

/* Seasonal Banner */
.about-banner-section {
    padding: 0;
    margin-bottom: -1px;
}

.about-banner {
    position: relative;
    min-height: 380px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(to bottom, rgba(8,12,18,0.95) 0%, rgba(8,10,16,0.55) 30%, rgba(8,10,16,0.8) 70%, #0a0e14 100%), url('/wp-content/uploads/2026/06/2018_skoda_kodiaq_skoda_karoq_skoda_kamiq_4k-3840x2160-1-scaled.jpg') center/cover no-repeat;
}

.about-banner__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 60px 24px;
}

.about-banner__title {
    font-family: var(--font-display);
    font-size: clamp(1.8rem, 3.5vw, 2.8rem);
    font-weight: 700;
    color: #ffffff !important;
    margin-bottom: 12px;
    line-height: 1.2;
}

.about-banner__subtitle {
    color: rgba(255, 255, 255, 0.85);
    font-size: clamp(1rem, 1.5vw, 1.15rem);
    margin-bottom: 24px;
    line-height: 1.5;
    font-weight: 400;
}

.about-banner__btn {
    display: inline-flex;
    align-items: center;
    padding: 10px 28px;
    background: #ffffff;
    color: #0a0f1a;
    font-size: 0.8rem;
    font-weight: 600;
    border-radius: 4px;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    transition: all 0.2s ease;
}

.about-banner__btn:hover {
    background: rgba(255, 255, 255, 0.85);
    transform: translateY(-1px);
}

/* Mobile */
@media (max-width: 768px) {
    .about-hero {
        height: 40vh;
        min-height: 280px;
    }

    .about-banner {
        min-height: 300px;
    }

    .about-banner__content {
        padding: 40px 20px;
    }
}

/* ========================================
   TESTIMONIALS
   ======================================== */
.testimonials-section {
    background: #ffffff;
    padding: 100px 0;
}

.testimonials-slider {
    position: relative;
    max-width: 780px;
    margin: 0 auto;
    min-height: 260px;
}

.testimonial-slide {
    display: none;
    align-items: center;
    gap: 40px;
    animation: testimonialFadeIn 0.5s ease;
}

.testimonial-slide--active {
    display: flex;
}

@keyframes testimonialFadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Photo group — avatar overlapping car */
.testimonial-photo {
    position: relative;
    flex-shrink: 0;
    width: 200px;
    height: 200px;
}

.testimonial-photo__car {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #f3f4f6;
    background: #f9fafb;
}

.testimonial-photo__car img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-photo__avatar {
    position: absolute;
    bottom: -8px;
    left: -16px;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    z-index: 2;
}

.testimonial-photo__avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Content */
.testimonial-content {
    flex: 1;
    min-width: 0;
}

.testimonial-stars {
    display: flex;
    gap: 2px;
    margin-bottom: 16px;
}

.testimonial-quote {
    font-family: var(--font-display);
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.55;
    color: #1a1a1a;
    margin: 0 0 24px;
    font-style: italic;
}

.testimonial-author__name {
    font-weight: 700;
    color: #1a1a1a;
    font-size: 0.95rem;
}

.testimonial-author__location {
    display: block;
    color: #9ca3af;
    font-size: 0.85rem;
    margin-top: 2px;
}

/* Dots */
.testimonials-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 40px;
}

.testimonial-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #d1d5db;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: all 0.3s ease;
}

.testimonial-dot--active {
    background: #f28c28;
    transform: scale(1.2);
}

.testimonial-dot:hover {
    background: #9ca3af;
}

/* Mobile */
@media (max-width: 768px) {
    .testimonials-section {
        padding: 48px 0;
    }

    .testimonial-slide {
        flex-direction: column;
        text-align: center;
        gap: 24px;
    }

    .testimonial-photo {
        width: 120px;
        height: 120px;
    }

    .testimonial-photo__car {
        width: 120px;
        height: 120px;
    }

    .testimonial-photo__avatar {
        width: 60px;
        height: 60px;
        bottom: -6px;
        left: -10px;
    }

    .testimonial-stars {
        justify-content: center;
    }

    .testimonial-quote {
        font-size: 1rem;
    }
}

/* ==========================================
   GLOBAL MOBILE RESPONSIVE FIXES
   ========================================== */

/* ---------- Tablet (max-width: 1024px) ---------- */
@media (max-width: 1024px) {
    /* Homepage hero bottom spacing */
    .hero {
        padding-bottom: 60px !important;
    }

    .hero::after {
        height: 100px;
    }

    /* Featured vehicles section */
    .featured-vehicles-section {
        padding: 60px 0 50px;
    }

    .fv-header {
        margin-bottom: 28px;
    }

    /* Quick request form — 2col → 1col */
    .quick-request-form__fields {
        grid-template-columns: 1fr;
    }

    /* Vehicle booking section padding */
    .sv .vehicle-booking-section {
        padding: 24px 20px;
    }
}

/* ---------- Mobile (max-width: 768px) ---------- */
@media (max-width: 768px) {
    /* Footer */
    .site-footer--minimal .footer-main {
        padding: 48px 0 32px !important;
    }

    .footer-brand-name {
        font-size: 1.8rem;
    }

    .footer-contact-row {
        gap: 16px;
    }

    .footer-big-name {
        top: 20%;
    }

    /* Homepage hero */
    .hero {
        padding-bottom: 40px !important;
    }

    .hero::after {
        height: 60px;
    }

    /* Featured vehicles carousel */
    .featured-vehicles-section {
        padding: 48px 0 40px;
    }

    .fv-header {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 24px;
        gap: 16px;
    }

    .fv-title {
        font-size: 1.5rem;
    }

    .fv-filter {
        padding: 8px 16px;
        font-size: 0.82rem;
    }

    .fv-filters {
        width: 100%;
        overflow-x: auto;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    /* Company stats */
    .company-stats-section {
        padding: 48px 0;
    }

    /* Steps accordion */
    .steps-accordion-section {
        padding: 40px 0 0;
    }

    /* Benefits accordion */
    .benefits-section {
        padding: 48px 0;
    }

    /* Quick request form */
    .quick-request-form__inner {
        padding: 20px;
    }

    .quick-request-form__title {
        font-size: 1.25rem;
    }

    .quick-request-form--sidebar {
        position: static !important;
    }

    /* Vehicles catalog — hero padding */
    .vc-catalog {
        padding: 32px 0 48px;
    }

    .vc-pagination {
        margin-top: 32px;
    }

    .vc-pagination a,
    .vc-pagination span {
        min-width: 40px;
        height: 40px;
        padding: 0 10px;
        font-size: 0.85rem;
    }

    /* Vehicle single — content & pricing */
    .sv-content {
        padding: 32px 0 48px;
    }

    .sv-section {
        margin-bottom: 24px;
    }

    .sv-section__title {
        font-size: 1.1rem;
        gap: 8px;
    }

    .sv-price-card {
        padding: 24px;
    }

    .sv-price-card__number {
        font-size: 2.4rem;
    }

    .sv-calendar {
        margin-top: 32px;
        padding-top: 32px;
    }

    .sv-calendar__legend {
        justify-content: center;
        gap: 16px;
    }

    .sv-related {
        margin-top: 32px;
        padding-top: 32px;
    }

    .sv-related__info {
        padding: 16px;
    }

    .sv .vehicle-booking-section {
        padding: 20px 16px;
    }

    /* Single blog post */
    .single-hero {
        padding: calc(var(--header-height) + 32px) 0 32px;
    }

    .single-hero__meta {
        gap: 8px;
    }

    .single-content-wrapper {
        padding: 24px 16px 48px;
    }

    /* Contact page */
    .contact-hero {
        padding: calc(var(--header-height) + 32px) 0 32px;
    }

    .contact-cards-section {
        padding: 32px 0;
    }

    .contact-info-card__icon {
        width: 48px;
        height: 48px;
    }

    .contact-map-header__title {
        font-size: 1.5rem;
    }

    .contact-map {
        min-height: 300px;
    }

    .contact-cta-section {
        padding: 32px 0;
    }

    /* About page */
    .about-hero__subtitle {
        font-size: 1rem;
    }

    .about-desc-section {
        padding: 48px 0;
    }

    .about-desc-label {
        margin-bottom: 32px;
    }

    .about-desc-heading {
        margin-bottom: 32px;
    }

    /* Testimonials */
    .testimonials-dots {
        margin-top: 24px;
    }

    /* Legal pages */
    .page-header {
        padding: calc(var(--header-height) + 24px) 0 24px;
    }

    .page-title {
        font-size: 1.8rem;
    }

    .legal-section h2 {
        font-size: 1.15rem;
    }

    .legal-section {
        margin-bottom: 24px;
        padding-bottom: 20px;
    }

    /* Booking page */
    .booking-page-header {
        padding: calc(var(--header-height) + 32px) 0 32px;
    }

    .booking-page-title {
        font-size: 1.6rem;
    }

    .booking-page-content {
        padding: 24px 0;
    }

    /* CTA section on homepage */
    .cta-section {
        padding: 48px 0 80px !important;
    }

    .cta-section .cta-content {
        padding: 0 16px;
    }

    .cta-title {
        font-size: 1.6rem;
    }

    .cta-text {
        font-size: 0.95rem;
    }
}

/* ---------- Small phones (max-width: 480px) ---------- */
@media (max-width: 480px) {
    /* Footer */
    .site-footer--minimal .footer-main {
        padding: 40px 0 24px !important;
    }

    .footer-brand-name {
        font-size: 1.3rem;
    }

    .footer-contact-row {
        flex-direction: column;
        gap: 10px;
    }

    .footer-contact-item {
        font-size: 0.82rem;
    }

    .footer-nav-row {
        gap: 12px;
    }

    .footer-nav-row a {
        font-size: 0.78rem;
    }

    .footer-lang-row {
        gap: 12px;
        flex-wrap: wrap;
    }

    /* Hero */
    .hero {
        padding-bottom: 24px !important;
    }

    /* Featured vehicles */
    .featured-vehicles-section {
        padding: 36px 0 28px;
    }

    .fv-title {
        font-size: 1.3rem;
    }

    .fv-filter {
        padding: 6px 14px;
        font-size: 0.78rem;
    }

    /* About hero */
    .about-hero {
        height: 35vh;
        min-height: 240px;
    }

    .about-hero__title {
        font-size: 1.8rem;
    }

    .about-hero__subtitle {
        font-size: 0.9rem;
    }

    .about-desc-section {
        padding: 36px 0;
    }

    .about-desc-label {
        margin-bottom: 24px;
    }

    .about-desc-heading {
        margin-bottom: 24px;
    }

    .about-banner {
        min-height: 260px;
    }

    .about-banner__content {
        padding: 32px 16px;
    }

    /* Contact */
    .contact-hero {
        padding: calc(var(--header-height) + 24px) 0 24px;
    }

    .contact-cards-section {
        padding: 24px 0;
    }

    .contact-info-card {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .contact-faq-section {
        padding: 40px 0;
    }

    .contact-faq__title {
        font-size: 1.3rem;
        margin-bottom: 24px;
    }

    .faq-card__body p {
        padding-left: 0;
    }

    .faq-card__header {
        gap: 10px;
        padding: 14px;
    }

    .faq-card__icon-wrap {
        width: 34px;
        height: 34px;
    }

    .faq-card__question {
        font-size: 0.85rem;
    }

    /* Vehicles catalog */
    .vc-catalog {
        padding: 24px 0 36px;
    }

    .vc-card__body {
        padding: 16px;
    }

    .vc-card__specs {
        gap: 6px;
    }

    .vc-spec {
        padding: 4px 8px;
        font-size: 0.72rem;
    }

    /* Vehicle single */
    .sv-hero--compact {
        padding-top: 8px;
    }

    .sv-hero__info-card {
        padding: 0;
    }

    .sv-hero__price-value {
        font-size: 1.6rem;
    }

    .sv-hero__book-btn {
        border-radius: 4px;
    }

    .sv-content {
        padding: 24px 0 40px;
    }

    .sv-spec {
        padding: 12px 14px;
        gap: 10px;
    }

    .sv-spec__icon {
        width: 36px;
        height: 36px;
    }

    .sv-related__grid {
        gap: 16px;
    }

    /* Single post */
    .single-hero {
        padding: calc(var(--header-height) + 24px) 0 24px;
    }

    .single-hero__title {
        font-size: 1.5rem !important;
    }

    .single-hero__author img {
        width: 32px;
        height: 32px;
    }

    .single-content-wrapper {
        padding: 16px 12px 36px;
    }

    .single-article__content {
        padding: 20px 16px;
    }

    .single-article__content h2 {
        font-size: 1.2rem;
    }

    .single-article__content h3 {
        font-size: 1.05rem;
    }

    /* Legal pages */
    .page-header {
        padding: calc(var(--header-height) + 16px) 0 16px;
    }

    .page-title {
        font-size: 1.5rem;
    }

    .legal-content {
        padding: 16px;
    }

    /* Booking page */
    .booking-page-header {
        padding: calc(var(--header-height) + 24px) 0 24px;
    }

    .booking-page-title {
        font-size: 1.3rem;
    }

    /* Testimonials */
    .testimonials-section {
        padding: 36px 0;
    }

    .testimonial-quote {
        font-size: 0.9rem;
    }

    .testimonials-dots {
        margin-top: 20px;
    }

    .testimonial-dot {
        width: 8px;
        height: 8px;
    }

    /* CTA section */
    .cta-title {
        font-size: 1.4rem;
    }

    .cta-text {
        font-size: 0.88rem;
    }

    /* Navigation arrows always visible on touch */
    .sv-hero__nav {
        opacity: 1;
    }
}

/* Hide FAQ icons - plain Q&A style */
.faq-card__icon-wrap {
    display: none !important;
}

/* ==========================================
   HOT OFFER BANNER
   ========================================== */

.hot-offer-section {
    padding: 0;
    background: linear-gradient(to right, #1a2738 0%, #0a0f1a 100%);
}

.hot-offer-section > .container {
    max-width: var(--container-max, 1280px) !important;
    margin: 0 auto !important;
    padding: 0 var(--container-padding, 1.5rem) !important;
}

.hot-offer-card {
    display: flex;
    align-items: center;
    background: transparent;
    border-radius: 0;
    overflow: visible;
    min-height: 110px;
    position: relative;
}

.hot-offer__content {
    flex: 0 0 40%;
    padding: 50px 24px 40px 0;
    z-index: 2;
}

.hot-offer__title {
    font-family: var(--font-display, Georgia, serif);
    font-size: 2rem;
    font-weight: 700;
    font-style: normal;
    color: #ffffff;
    margin: 0 0 10px;
    line-height: 1.1;
}

.hot-offer__tagline {
    font-family: var(--font-primary);
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.55);
    margin: 0 0 16px;
    line-height: 1.5;
    max-width: 300px;
}

.hot-offer__vehicle {
    font-family: var(--font-primary);
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.85);
    margin: 0 0 2px;
    font-weight: 400;
}

.hot-offer__price {
    font-family: var(--font-primary);
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.7);
    font-style: normal;
    margin: 0 0 16px;
}

.hot-offer__price strong {
    color: #ffffff;
    font-weight: 700;
    font-style: normal;
}

.hot-offer__btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 10px 28px;
    background: var(--color-accent, #f28c28);
    color: #ffffff;
    font-family: var(--font-primary);
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 4px;
    text-decoration: none;
    transition: all 0.25s ease;
}

.hot-offer__btn:hover {
    background: var(--color-accent-light, #f5a623);
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(0, 119, 182, 0.3);
}

.hot-offer__image {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
    position: relative;
    min-height: 110px;
    overflow: visible;
}

.hot-offer__image img {
    max-width: none;
    max-height: none;
    width: 84%;
    object-fit: contain;
    position: relative;
    z-index: 2;
    margin: -50px 0;
    margin-right: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .hot-offer-section {
        padding: 40px 0;
    }

    .hot-offer-card {
        flex-direction: column;
        min-height: auto;
    }

    .hot-offer__content {
        flex: none;
        width: 100%;
        padding: 32px 24px 24px;
        text-align: center;
    }

    .hot-offer__title {
        font-size: 1.8rem;
    }

    .hot-offer__image {
        min-height: 200px;
        padding: 10px 20px 20px;
    }

    .hot-offer__image img {
        max-height: 180px;
    }
}

/* ==========================================
   BRAND CATEGORY CARDS
   ========================================== */

.brand-categories {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

.brand-category-card {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    overflow: hidden;
    background: #1a2332;
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    aspect-ratio: 4 / 3;
    max-height: 220px;
}

.brand-category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
}

.brand-category-card__image {
    flex: 1;
    overflow: hidden;
    position: relative;
}

.brand-category-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(60%);
    transition: filter 0.3s ease, transform 0.3s ease;
}

.brand-category-card:hover .brand-category-card__image img {
    filter: grayscale(0%);
    transform: scale(1.05);
}

.brand-category-card__name {
    position: absolute;
    top: 16px;
    left: 20px;
    font-family: var(--font-display);
    font-size: 1.3rem;
    font-weight: 700;
    color: #ffffff;
    z-index: 2;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

.brand-category-card__arrow {
    position: absolute;
    bottom: 14px;
    right: 14px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(8px);
    border-radius: 50%;
    color: #ffffff;
    z-index: 2;
    transition: background 0.2s ease;
}

.brand-category-card:hover .brand-category-card__arrow {
    background: var(--color-accent, #f28c28);
}

/* Responsive */
@media (max-width: 768px) {
    .brand-categories {
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
        margin-bottom: 24px;
    }

    .brand-category-card__name {
        font-size: 1rem;
        top: 12px;
        left: 14px;
    }

    .brand-category-card__arrow {
        width: 28px;
        height: 28px;
        bottom: 10px;
        right: 10px;
    }
}

@media (max-width: 480px) {
    .brand-categories {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .brand-category-card {
        aspect-ratio: 3 / 4;
    }
}

/* ==========================================
   VEHICLE RECOMMENDATIONS - "You May Also Be Interested In"
   ========================================== */

.sv-recommendations {
    margin-top: 56px;
    padding-top: 48px;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.sv-recommendations .sv-section__title {
    margin-bottom: 32px;
}

.sv-recommendations__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.sv-recommendations__card {
    display: block;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 16px;
    overflow: hidden;
    text-decoration: none;
    transition: all 0.4s ease;
}

.sv-recommendations__card:hover {
    transform: translateY(-6px);
    border-color: rgba(0, 119, 182, 0.3);
    box-shadow: 0 16px 48px rgba(0, 0, 0, 0.3);
}

.sv-recommendations__image {
    position: relative;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.2);
}

.sv-recommendations__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.sv-recommendations__card:hover .sv-recommendations__image img {
    transform: scale(1.06);
}

.sv-recommendations__badge {
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 12px;
    background: rgba(30, 41, 59, 0.7);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 4px;
    color: #fff;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.sv-recommendations__info {
    padding: 20px;
}

.sv-recommendations__brand {
    display: block;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--color-accent, #f28c28);
    margin-bottom: 4px;
}

.sv-recommendations__name {
    font-size: 1.05rem;
    font-weight: 700;
    color: #fff;
    margin: 0 0 8px;
}

.sv-recommendations__price {
    font-size: 0.85rem;
    color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 1024px) {
    .sv-recommendations__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
}

@media (max-width: 600px) {
    .sv-recommendations__grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .sv-recommendations {
        margin-top: 40px;
        padding-top: 32px;
    }
}

/* WHY CHOOSE US SECTION */
.why-choose-us-section {
    background-color: #f0f0f0;
    padding: 60px 0 70px;
}

.why-choose-us__title {
    text-align: center;
    font-size: 2.2rem;
    font-weight: 800;
    color: var(--text-color, #1f2937);
    margin-bottom: 50px;
    letter-spacing: 2px;
}

.why-choose-us-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 50px;
}

.why-choose-us-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.why-choose-us-icon {
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    background-color: #f28c28;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.why-choose-us-icon svg {
    width: 30px;
    height: 30px;
}

.why-choose-us-content h3 {
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text-color, #1f2937);
    margin: 0 0 8px 0;
}

.why-choose-us-content p {
    font-size: 0.95rem;
    color: var(--light-text, #6b7280);
    margin: 0;
    line-height: 1.6;
}

@media (max-width: 992px) {
    .why-choose-us-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px 40px;
    }
}

@media (max-width: 600px) {
    .why-choose-us-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .why-choose-us__title {
        font-size: 1.6rem;
    }
}

/* ABOUT WELCOME SECTION */
.about-welcome-section {
    padding: 0;
    margin-top: 80px;
    position: relative;
    z-index: 1;
}

.about-welcome {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.about-welcome__image {
    position: relative;
    overflow: hidden;
}

.about-welcome__image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.about-welcome__title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 800;
    color: var(--color-gray-900, #111827);
    margin-bottom: 24px;
    text-transform: uppercase;
}

.about-welcome__accent {
    color: var(--color-accent);
}

.about-welcome__text {
    padding: 60px 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #f0f0f0;
}

.about-welcome__text p {
    font-size: 1.05rem;
    line-height: 1.8;
    color: var(--color-gray-600, #4b5563);
    margin-bottom: 14px;
}

.about-welcome__signature {
    margin-top: 10px;
    color: var(--color-gray-800, #1f2937) !important;
    font-style: italic;
}

@media (max-width: 768px) {
    .about-welcome {
        grid-template-columns: 1fr;
    }
    .about-welcome-section {
        margin-top: 70px;
    }
    .about-welcome__image {
        height: 300px;
    }
    .about-welcome__text {
        padding: 40px 24px;
    }
    .about-welcome__title {
        font-size: 1.5rem;
    }
}

/* ABOUT SPLIT SECTION */
.about-split-section {
    padding: 0;
    position: relative;
    margin-top: 0;
}

.about-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 450px;
}

.about-split__text {
    padding: 60px 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about-split__title {
    font-family: var(--font-display);
    font-size: 2rem;
    font-weight: 700;
    color: var(--color-gray-900, #111827);
    margin-bottom: 24px;
}

.about-split__text p {
    font-size: 1.05rem;
    line-height: 1.7;
    color: var(--color-gray-600, #4b5563);
    margin-bottom: 16px;
}

.about-split__text p strong {
    color: var(--color-gray-900, #111827);
}

.about-split__btn {
    display: inline-block;
    margin-top: 12px;
    padding: 14px 32px;
    background: var(--color-gray-900, #1f2937);
    color: #ffffff;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 4px;
    transition: background 0.3s ease;
    width: fit-content;
}

.about-split__btn:hover {
    background: var(--color-accent);
}

.about-split__image {
    position: relative;
    overflow: hidden;
}

.about-split__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* CONTACT BAR */
.about-contact-bar {
    background: #2d3436;
    padding: 20px 0;
    border-top: 3px solid var(--color-accent);
}

.about-contact-bar__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}

.about-contact-bar__title {
    font-family: var(--font-display);
    font-size: 1.1rem;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.05em;
    margin: 0;
}

.about-contact-bar__actions {
    display: flex;
    align-items: center;
    gap: 20px;
}

.about-contact-bar__phone {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: 600;
    text-decoration: none;
    transition: color 0.3s ease;
}

.about-contact-bar__phone:hover {
    color: var(--color-accent);
}

.about-contact-bar__phone svg {
    background: var(--color-accent);
    border-radius: 50%;
    padding: 6px;
    width: 34px;
    height: 34px;
}

.about-contact-bar__feedback {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: #ffffff;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    text-decoration: none;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.about-contact-bar__feedback:hover {
    border-color: var(--color-accent);
    color: var(--color-accent);
}

@media (max-width: 768px) {
    .about-split {
        grid-template-columns: 1fr;
    }
    .about-split__text {
        padding: 40px 24px;
    }
    .about-split__image {
        height: 300px;
    }
    .about-contact-bar__inner {
        flex-direction: column;
        text-align: center;
    }
}

/* Header & Footer Logo */
.header-logo__img {
    height: 55px;
    width: auto;
    object-fit: contain;
}
.footer-logo {
    margin-bottom: 1.5rem;
    text-align: center;
}
.footer-logo__img {
    height: 70px;
    width: auto;
    object-fit: contain;
    margin: 0 auto;
}
@media (max-width: 768px) {
    .header-logo__img {
        height: 42px;
    }
    .footer-logo__img {
        height: 55px;
    }
}




/* Make the company logo bigger */
.header-logo__name {
    font-size: 2.4rem;
}
.custom-logo,
.header-logo img {
    max-height: 64px;
    width: auto;
    height: auto;
}


/* Make logo 40% bigger */
.header-logo__name {
  font-size: 2.52rem; /* was 1.8rem */
}
.header-logo .custom-logo,
.header-logo img {
  max-height: 78px; /* ~40% larger than default 56px */
  width: auto;
}


