/*
 * LussLimo — Luxury Black & Gold theme
 * --------------------------------------
 * Loaded after the base theme so every selector here is intentionally
 * an override, not an addition. Scoped via :root + the body.theme class
 * so it can't leak into the admin panel.
 */

:root {
    --luss-bg-0: #0a0a0c;
    --luss-bg-1: #111114;
    --luss-bg-2: #18181d;
    --luss-bg-3: #21212a;
    --luss-line: #2b2b34;
    --luss-line-soft: rgba(255, 255, 255, 0.06);
    --luss-text: #f5f5f4;
    --luss-text-dim: #c7c7c0;
    --luss-text-mute: #8b8a82;
    --luss-gold: #d4af37;
    --luss-gold-soft: #b89224;
    --luss-gold-bright: #f0c75b;
    --luss-gold-fade: rgba(212, 175, 55, 0.15);
    --luss-shadow-glow: 0 0 0 1px rgba(212, 175, 55, 0.25), 0 20px 60px rgba(0, 0, 0, 0.6);

    --luss-font-display: "Cormorant Garamond", "Playfair Display", Georgia, serif;
    --luss-font-body: "Inter", "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/* Google Fonts — pull the editorial serif + clean body sans */
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap");

body.theme {
    background: var(--luss-bg-0) !important;
    color: var(--luss-text) !important;
    font-family: var(--luss-font-body) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ---------- Headings: editorial serif ---------- */
body.theme h1, body.theme h2, body.theme h3,
body.theme .display-1, body.theme .display-2,
body.theme .display-3, body.theme .display-4,
body.theme .display-5, body.theme .display-6 {
    font-family: var(--luss-font-display) !important;
    color: var(--luss-text) !important;
    letter-spacing: -0.01em;
    font-weight: 600;
}
body.theme h4, body.theme h5, body.theme h6 {
    color: var(--luss-text) !important;
    font-weight: 600;
    letter-spacing: 0.01em;
}
body.theme p, body.theme li, body.theme span, body.theme label {
    color: var(--luss-text-dim) !important;
}
body.theme a { color: var(--luss-gold) !important; transition: color .15s ease; }
body.theme a:hover { color: var(--luss-gold-bright) !important; }

/* ---------- Header / nav bar ---------- */
body.theme header, body.theme .header, body.theme nav, body.theme .navbar,
body.theme .header-section, body.theme .top-header {
    background: rgba(10, 10, 12, 0.85) !important;
    backdrop-filter: saturate(140%) blur(14px);
    -webkit-backdrop-filter: saturate(140%) blur(14px);
    border-bottom: 1px solid var(--luss-line) !important;
    box-shadow: none !important;
}
body.theme .nav-link, body.theme .navbar-nav a, body.theme header a {
    color: var(--luss-text) !important;
    font-weight: 500;
    letter-spacing: 0.02em;
}
body.theme .nav-link:hover, body.theme .navbar-nav a:hover {
    color: var(--luss-gold) !important;
}

/* ---------- Buttons ---------- */
body.theme .btn,
body.theme button.btn {
    border-radius: 999px;
    font-family: var(--luss-font-body) !important;
    font-weight: 600;
    letter-spacing: 0.04em;
    padding: 10px 22px;
    text-transform: uppercase;
    font-size: 13px;
    border: 1px solid transparent;
    transition: transform .12s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
body.theme .btn:hover { transform: translateY(-1px); }

body.theme .btn-primary,
body.theme .gradient-bg-color,
body.theme .btn-secondary,
body.theme a.btn-primary,
body.theme a.ticket-btn,
body.theme button.btn-primary {
    background: linear-gradient(135deg, var(--luss-gold-bright) 0%, var(--luss-gold) 60%, var(--luss-gold-soft) 100%) !important;
    color: #1a1306 !important;
    border: none !important;
    box-shadow: 0 8px 26px rgba(212, 175, 55, 0.22) !important;
}
/* Force the same dark color on any child of a gold button so the label
   doesn't inherit a light color from an upstream selector. */
body.theme .btn-primary span,
body.theme .btn-primary i,
body.theme .btn-secondary span,
body.theme .btn-secondary i,
body.theme .gradient-bg-color span,
body.theme .gradient-bg-color i,
body.theme a.ticket-btn span,
body.theme a.ticket-btn i {
    color: #1a1306 !important;
    -webkit-text-fill-color: #1a1306 !important;
}
body.theme .btn-primary:hover,
body.theme .gradient-bg-color:hover,
body.theme .btn-secondary:hover {
    color: #100a02 !important;
    box-shadow: 0 12px 32px rgba(212, 175, 55, 0.35) !important;
}

body.theme .btn-outline-primary, body.theme .btn-light, body.theme .btn-outline-light {
    background: transparent !important;
    color: var(--luss-gold) !important;
    border: 1px solid var(--luss-gold) !important;
}

/* ---------- Cards / panels ---------- */
body.theme .card,
body.theme .ride-details-box,
body.theme .general-details-box,
body.theme .left-map-box,
body.theme .right-details-box {
    background: linear-gradient(180deg, rgba(28,28,34,0.92), rgba(17,17,20,0.92)) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.5);
    border-radius: 14px !important;
}
body.theme .card-body { color: var(--luss-text) !important; }

/* Bullets inside cards */
body.theme .general-details-list li,
body.theme .personal-details-list li,
body.theme ul li {
    border-color: var(--luss-line-soft) !important;
    color: var(--luss-text-dim) !important;
}
body.theme .general-details-list li span,
body.theme .personal-details-list li span {
    color: var(--luss-text) !important;
}

/* ---------- Inputs ---------- */
body.theme .form-control,
body.theme .form-select,
body.theme input, body.theme select, body.theme textarea {
    background: var(--luss-bg-2) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
    border-radius: 10px !important;
    padding: 10px 14px;
    font-size: 14px;
}
body.theme .form-control:focus,
body.theme input:focus, body.theme select:focus, body.theme textarea:focus {
    border-color: var(--luss-gold) !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.18) !important;
}
body.theme ::placeholder { color: var(--luss-text-mute) !important; opacity: 1; }

/* ---------- Badges ---------- */
body.theme .badge {
    background: var(--luss-bg-3) !important;
    color: var(--luss-text) !important;
    border: 1px solid var(--luss-line) !important;
    border-radius: 6px;
    font-weight: 600;
    letter-spacing: 0.04em;
}
body.theme .badge-otp,
body.theme .badge-primary,
body.theme .badge-success {
    background: linear-gradient(135deg, var(--luss-gold-bright), var(--luss-gold)) !important;
    color: #1a1306 !important;
    border: none !important;
}
body.theme .badge-danger { background: #c14545 !important; color: #fff !important; }

/* ---------- HOME PAGE specific ---------- */
body.theme .home-section {
    position: relative;
    background:
        linear-gradient(135deg, rgba(10,10,12,0.94) 0%, rgba(10,10,12,0.78) 55%, rgba(10,10,12,0.55) 100%),
        url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?auto=format&fit=crop&w=2000&q=80") center/cover no-repeat !important;
    padding: 100px 0 120px !important;
    overflow: hidden;
}
body.theme .home-section::before {
    content: "";
    position: absolute; inset: 0;
    background: radial-gradient(ellipse at top right, rgba(212,175,55,0.18), transparent 55%);
    pointer-events: none;
}
body.theme .home-section .content-card {
    background: linear-gradient(180deg, rgba(17,17,20,0.65), rgba(17,17,20,0.45)) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    border-radius: 18px !important;
}
body.theme .home-section .content-card a:first-child {
    display: inline-block;
    color: var(--luss-gold) !important;
    text-transform: uppercase;
    letter-spacing: 0.32em;
    font-size: 11px;
    font-weight: 600;
    margin-bottom: 18px;
    border: 1px solid rgba(212, 175, 55, 0.45);
    padding: 6px 14px;
    border-radius: 999px;
}
body.theme .home-section .content-card h1 {
    font-size: clamp(2.6rem, 5vw, 4.4rem) !important;
    line-height: 1.05 !important;
    margin-bottom: 1rem !important;
    color: #fff !important;
}
body.theme .home-section .content-card h1::after {
    content: "";
    display: block;
    width: 64px;
    height: 2px;
    background: var(--luss-gold);
    margin-top: 22px;
}
body.theme .home-section .content-card p {
    font-size: 17px;
    line-height: 1.7;
    color: var(--luss-text-dim) !important;
}
body.theme .home-section .image-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}
body.theme .home-section .image-card .image-wrapper {
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 30px 90px rgba(0,0,0,0.7);
    border: 1px solid rgba(212, 175, 55, 0.15);
    aspect-ratio: 4/5;
    background:
        linear-gradient(180deg, rgba(0,0,0,0.05), rgba(0,0,0,0.35)),
        url("https://images.unsplash.com/photo-1542362567-b07e54358753?auto=format&fit=crop&w=1200&q=80") center/cover no-repeat;
}
body.theme .home-section .image-card .image-wrapper img {
    display: none !important;
}

/* Counter section */
body.theme .counter-section {
    background: var(--luss-bg-1) !important;
    border-top: 1px solid var(--luss-line);
    border-bottom: 1px solid var(--luss-line);
    padding: 60px 0;
}
body.theme .counter-section .counter-wrapper h3 {
    color: var(--luss-gold) !important;
    font-size: 3rem !important;
}
body.theme .counter-section .counter-wrapper p {
    color: var(--luss-text-dim) !important;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 12px;
}

/* All generic sections after hero */
body.theme section { background: var(--luss-bg-0); }
body.theme section.bg-light { background: var(--luss-bg-1) !important; }

/* ---------- AUTH PAGES — split layout with limo backdrop ---------- */
body.theme .authentication-section,
body.theme .auth-section,
body.theme .login-section,
body.theme .register-section {
    min-height: 100vh;
    background:
        linear-gradient(120deg, rgba(10,10,12,0.94) 0%, rgba(10,10,12,0.72) 45%, rgba(10,10,12,0.35) 100%),
        url("https://images.unsplash.com/photo-1605559424843-9e4c228bf1c2?auto=format&fit=crop&w=2000&q=80") center/cover no-repeat !important;
    display: flex; align-items: center; padding: 60px 0 !important;
}

body.theme .auth-form-box {
    background: linear-gradient(180deg, rgba(17,17,20,0.92), rgba(10,10,12,0.92)) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    border-radius: 22px !important;
    box-shadow: var(--luss-shadow-glow) !important;
    padding: 44px !important;
    max-width: 520px;
    margin: 0 auto;
    position: relative;
}
body.theme .auth-form-box::before {
    content: "LUSSLIMO";
    display: block;
    color: var(--luss-gold);
    letter-spacing: 0.6em;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 20px;
}
body.theme .auth-form-box .auth-right-box h3 {
    text-align: center;
    margin-bottom: 8px;
    font-size: 2rem;
}
body.theme .auth-form-box .auth-right-box h6 {
    text-align: center;
    color: var(--luss-text-mute) !important;
    font-weight: 400;
    letter-spacing: 0.02em;
    margin-bottom: 30px;
}
body.theme .auth-image,
body.theme .auth-form-box > img:first-child {
    display: none !important;
}
body.theme .number-mail-box,
body.theme .country-code-section,
body.theme .form-box .form-control {
    background: var(--luss-bg-2) !important;
    border-color: var(--luss-line) !important;
}
body.theme .auth-section .card,
body.theme .login-section .card,
body.theme .register-section .card,
body.theme section[class*="otp"] .card,
body.theme section[class*="login"] .card,
body.theme section[class*="register"] .card,
body.theme .login-box, body.theme .signin-box, body.theme .register-box {
    background: linear-gradient(180deg, rgba(17,17,20,0.92), rgba(10,10,12,0.92)) !important;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    border-radius: 18px !important;
    box-shadow: var(--luss-shadow-glow) !important;
    padding: 36px !important;
}

/* ---------- CREATE-RIDE PAGE ---------- */
body.theme .create-ride-section,
body.theme section.create-ride-section {
    background: var(--luss-bg-0) !important;
    min-height: 100vh;
    padding: 40px 0 !important;
}
body.theme #map-view, body.theme .map-view {
    border-radius: 14px !important;
    border: 1px solid var(--luss-line) !important;
    box-shadow: 0 20px 60px rgba(0,0,0,0.55);
    overflow: hidden;
    background: var(--luss-bg-2) !important;
    min-height: 480px;
}
/* Distance / duration pills on the booking page */
body.theme .duration-distance-box {
    list-style: none;
    padding: 0;
    margin: 0 0 16px;
    display: flex;
    gap: 12px;
}
body.theme .duration-distance-box li {
    flex: 1;
    background: var(--luss-bg-2) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
    border-radius: 999px !important;
    padding: 12px 18px !important;
    text-align: center;
    font-size: 14px;
    font-weight: 500;
}
body.theme .duration-distance-box li span,
body.theme #duration, body.theme #distance-label {
    color: var(--luss-gold) !important;
    font-weight: 700;
}
/* Soft "Only instant rides" warning notice */
body.theme .alert, body.theme [role="alert"] {
    background: rgba(212, 175, 55, 0.08) !important;
    border: 1px solid rgba(212, 175, 55, 0.25) !important;
    color: var(--luss-gold-bright) !important;
    border-radius: 10px !important;
}
body.theme .accordion-button {
    background: var(--luss-bg-2) !important;
    color: var(--luss-text) !important;
    font-weight: 600 !important;
    border: 1px solid var(--luss-line) !important;
}
body.theme .accordion-button:not(.collapsed) {
    color: var(--luss-gold) !important;
    background: var(--luss-bg-2) !important;
    box-shadow: inset 0 -2px 0 rgba(212, 175, 55, 0.4) !important;
}
body.theme .accordion-body {
    background: var(--luss-bg-1) !important;
    border: 1px solid var(--luss-line) !important;
    border-top: 0 !important;
}
body.theme .tracking-path li,
body.theme .tracking-path li span {
    color: var(--luss-text) !important;
}
body.theme .tracking-path li i {
    color: var(--luss-gold) !important;
}

/* Hourly packages / vehicle picker */
body.theme .vehicle-type-card, body.theme .vehicle-card,
body.theme [class*="vehicle-type"], body.theme .package-card {
    background: var(--luss-bg-2) !important;
    border: 1px solid var(--luss-line) !important;
    border-radius: 12px !important;
    color: var(--luss-text) !important;
    transition: border-color .15s ease, transform .12s ease;
}
body.theme .vehicle-type-card:hover, body.theme .vehicle-card:hover {
    border-color: var(--luss-gold) !important;
    transform: translateY(-1px);
}
body.theme input[type="radio"]:checked + .vehicle-type-card,
body.theme input[type="radio"]:checked + .vehicle-card,
body.theme input[type="radio"]:checked + label .vehicle-type-card {
    border-color: var(--luss-gold) !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.18) !important;
}

/* ---------- Modals ---------- */
body.theme .modal-content {
    background: linear-gradient(180deg, var(--luss-bg-2), var(--luss-bg-1)) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
    border-radius: 16px !important;
}
body.theme .modal-header {
    background: transparent !important;
    border-bottom: 1px solid var(--luss-line) !important;
}
body.theme .modal-footer {
    background: transparent !important;
    border-top: 1px solid var(--luss-line) !important;
}
body.theme .btn-close {
    filter: invert(1) brightness(1.6);
    opacity: .8;
}

/* ---------- Footer ---------- */
body.theme footer, body.theme .footer-section {
    background: #050507 !important;
    color: var(--luss-text-dim) !important;
    border-top: 1px solid var(--luss-line);
}
body.theme footer a { color: var(--luss-text-dim) !important; }
body.theme footer a:hover { color: var(--luss-gold) !important; }

/* ---------- Tracking path bullets inline ---------- */
body.theme .tracking-path { padding-left: 6px; }
body.theme .tracking-path li {
    padding: 8px 0;
    border-bottom: 1px solid var(--luss-line-soft);
}
body.theme .tracking-path li:last-child { border-bottom: none; }

/* Personal / profile circles */
body.theme .border-image, body.theme .profile-img, body.theme .initial-letter {
    border: 2px solid var(--luss-gold) !important;
    background: var(--luss-bg-2) !important;
    color: var(--luss-gold) !important;
}

/* Generic info chip used in driver row */
body.theme .rating i { color: var(--luss-gold) !important; }

/* Bootstrap text-muted darkened — keep contrast */
body.theme .text-muted, body.theme .text-secondary {
    color: var(--luss-text-mute) !important;
}

/* Tables (history, wallet) */
body.theme table, body.theme .table {
    color: var(--luss-text) !important;
    background: transparent !important;
}
body.theme thead, body.theme .table thead th {
    color: var(--luss-gold) !important;
    border-bottom: 1px solid var(--luss-line) !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 11px;
}
body.theme tbody tr td {
    border-color: var(--luss-line-soft) !important;
}

/* ---------- Floating brand line at top of any auth card ---------- */
body.theme .auth-brand,
body.theme .login-box .brand-mark,
body.theme .signin-box .brand-mark {
    color: var(--luss-gold) !important;
    letter-spacing: 0.5em;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    margin-bottom: 18px;
    text-align: center;
}

/* ---------- Reduce CodeCanyon-stock visual noise ---------- */
body.theme img[src*="store/1"],
body.theme img[src*="store/2"] {
    filter: invert(0.95) saturate(0) brightness(1.05);
}

/* ---------- Below-hero sections on the home page ---------- */

/* Counter section: numbers were primary-green on white, now gold on dark */
body.theme .counter-section,
body.theme .counter-section .counters {
    background: var(--luss-bg-1) !important;
    color: var(--luss-text) !important;
}
body.theme .counter-section .counter-wrapper {
    background: transparent !important;
    border-right: 1px solid var(--luss-line);
}
body.theme .counter-section .counter-wrapper:last-child { border-right: none; }
body.theme .counter-section .counter-wrapper h3,
body.theme .counter-section .counter-wrapper span.counter {
    color: var(--luss-gold) !important;
    font-size: 2.6rem !important;
    font-weight: 700;
    font-family: var(--luss-font-display) !important;
}
body.theme .counter-section .counter-wrapper p {
    color: var(--luss-text-mute) !important;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 12px;
    margin-top: 6px;
}

/* "Best Choice" / "Why LussLimo Stands Out" feature cards */
body.theme .best-choice-section-2 {
    background: var(--luss-bg-0) !important;
    padding: 70px 0 !important;
}
body.theme .best-choice-section-2 h2,
body.theme .best-choice-section-2 .section-title,
body.theme .best-choice-section-2 > div > h2 {
    color: #fff !important;
    text-align: center;
    font-family: var(--luss-font-display) !important;
    font-size: clamp(1.8rem, 3.4vw, 2.8rem) !important;
    margin-bottom: 36px !important;
}
body.theme .best-choice-card,
body.theme .best-choice-card.card-1,
body.theme .best-choice-card.card-2,
body.theme .best-choice-card.card-3,
body.theme .best-choice-card.card-4,
body.theme .best-choice-card.card-5 {
    background: linear-gradient(180deg, rgba(28,28,34,0.92), rgba(17,17,20,0.92)) !important;
    border: 1px solid var(--luss-line) !important;
    border-radius: 16px !important;
    padding: 28px !important;
    color: var(--luss-text) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important;
    transition: border-color .15s ease, transform .12s ease;
}
body.theme .best-choice-card:hover {
    border-color: var(--luss-gold) !important;
    transform: translateY(-2px);
}
body.theme .best-choice-card h3,
body.theme .best-choice-card h4,
body.theme .card-content h3,
body.theme .card-content h4 {
    color: #fff !important;
    font-family: var(--luss-font-display) !important;
}
body.theme .best-choice-card p,
body.theme .card-content p {
    color: var(--luss-text-dim) !important;
}

/* FAQ section */
body.theme .faq-section {
    background: var(--luss-bg-1) !important;
    padding: 80px 0 !important;
}
body.theme .faq-section h2 {
    color: #fff !important;
    text-align: center;
    font-family: var(--luss-font-display) !important;
    font-size: clamp(1.8rem, 3.4vw, 2.6rem) !important;
    margin-bottom: 36px !important;
}
body.theme .faq-section .accordion,
body.theme .faq-section .accordion-item {
    background: transparent !important;
    border: none !important;
}
body.theme .faq-section .accordion-item {
    margin-bottom: 14px !important;
    border: 1px solid var(--luss-line) !important;
    border-radius: 12px !important;
    overflow: hidden;
}

/* Testimonial / comment section */
body.theme .comment-section {
    background: var(--luss-bg-0) !important;
    padding: 80px 0 !important;
}
body.theme .comment-section h2 {
    color: #fff !important;
    text-align: center;
    font-family: var(--luss-font-display) !important;
    margin-bottom: 36px !important;
}
body.theme .comment-section .comment-box,
body.theme .comment-section .testimonial-card,
body.theme .comment-section .card,
body.theme .comment-section [class*="testimonial"] {
    background: linear-gradient(180deg, rgba(28,28,34,0.92), rgba(17,17,20,0.92)) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
    border-radius: 14px !important;
}
body.theme .comment-section .comment-box h4,
body.theme .comment-section .testimonial-card h4,
body.theme .comment-section h5, body.theme .comment-section h4 {
    color: #fff !important;
}

/* Blog section */
body.theme .blog-section {
    background: var(--luss-bg-1) !important;
    padding: 80px 0 !important;
}
body.theme .blog-section h2 {
    color: #fff !important;
    text-align: center;
    font-family: var(--luss-font-display) !important;
    margin-bottom: 36px !important;
}
body.theme .blog-section .blog-card,
body.theme .blog-section .card,
body.theme .blog-section [class*="blog"] {
    background: linear-gradient(180deg, rgba(28,28,34,0.92), rgba(17,17,20,0.92)) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
    border-radius: 14px !important;
    overflow: hidden;
}
body.theme .blog-section .blog-card h4,
body.theme .blog-section .blog-card h5,
body.theme .blog-section [class*="blog"] h4 {
    color: #fff !important;
}
body.theme .swiper-slide { background: transparent !important; }
body.theme .swiper-pagination-bullet {
    background: var(--luss-text-mute) !important;
    opacity: .6;
}
body.theme .swiper-pagination-bullet-active {
    background: var(--luss-gold) !important;
    opacity: 1;
}

/* Footer */
body.theme .footer-section {
    background: #050507 !important;
    color: var(--luss-text-dim) !important;
    border-top: 1px solid var(--luss-line);
    padding: 60px 0 30px !important;
}
body.theme .footer-section h4, body.theme .footer-section h5,
body.theme .footer-section .footer-title {
    color: var(--luss-gold) !important;
    font-family: var(--luss-font-body) !important;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-bottom: 18px !important;
}
body.theme .footer-section a,
body.theme .footer-section p,
body.theme .footer-section li {
    color: var(--luss-text-dim) !important;
    font-size: 14px;
}
body.theme .footer-section a:hover { color: var(--luss-gold) !important; }
body.theme .footer-section .footer-form input {
    background: var(--luss-bg-2) !important;
    border: 1px solid var(--luss-line) !important;
    color: var(--luss-text) !important;
}
body.theme .sub-footer, body.theme .top-footer {
    background: #050507 !important;
    border-top: 1px solid var(--luss-line);
    color: var(--luss-text-mute) !important;
}

/* The "Why LussLimo Stands Out" subtitle inside best-choice-section-2 */
body.theme .best-choice-section-2 > p,
body.theme .best-choice-section-2 .section-subtitle {
    color: var(--luss-text-dim) !important;
    text-align: center;
    max-width: 760px;
    margin: 0 auto 36px !important;
    font-size: 16px;
}

/* "Have Question in your Mind?" line was getting black on black */
body.theme .faq-section .text-center h2,
body.theme .faq-section .text-center h3,
body.theme h2.text-center, body.theme h3.text-center {
    color: #fff !important;
}

/* The FAQ "FAQ not found." stub and similar empty-state copy */
body.theme .faq-section .text-center p,
body.theme .empty-state, body.theme .no-data,
body.theme .empty-state h4 {
    color: var(--luss-text-mute) !important;
}

/* Best-choice-section header (the upper title block) */
body.theme .best-choice-section-2 .title-section,
body.theme .best-choice-section-2 .section-header {
    text-align: center;
    margin-bottom: 40px;
}

/* The cards-content wrapper that holds the alternating "card-content-N one" rows */
body.theme .cards-content {
    background: transparent !important;
}
body.theme .card-content {
    background: linear-gradient(180deg, rgba(28,28,34,0.92), rgba(17,17,20,0.92)) !important;
    border: 1px solid var(--luss-line) !important;
    border-radius: 16px !important;
    padding: 28px !important;
    margin-bottom: 18px !important;
    color: var(--luss-text) !important;
    transition: border-color .15s ease, transform .12s ease;
}
body.theme .card-content:hover {
    border-color: var(--luss-gold) !important;
    transform: translateY(-2px);
}

/* Generic section-title pattern used by upstream CodeCanyon */
body.theme .section-title h2,
body.theme .title-section h2,
body.theme .section-header h2 {
    color: #fff !important;
    font-family: var(--luss-font-display) !important;
}
body.theme .section-title h6,
body.theme .title-section h6,
body.theme .section-header h6,
body.theme .section-title .gradient-text {
    background: linear-gradient(135deg, var(--luss-gold-bright), var(--luss-gold)) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    text-transform: uppercase;
    letter-spacing: 0.36em;
    font-size: 12px !important;
    font-weight: 700 !important;
    margin-bottom: 10px;
}
