/* =============================================
   MOJAVE TWILIGHT THEME v3.0.0
   Premium Dark Theme for Top of Las Vegas

   Color Palette:
   - Deep Obsidian: #0B0B0B (Primary Background)
   - Dark Charcoal: #161616 (Cards/Secondary BG)
   - Terracotta: var(--primary-accent) (Primary Accent)
   - Sand Gold: var(--primary-accent) (Ratings/Highlights)
   - Eggshell White: #EDEDED (Text)

   "Beyond the Strip" - A premium local guide aesthetic
   ============================================= */

:root {
    /* Core Palette */
    --vg-obsidian: #0B0B0B;
    --vg-charcoal: #383838;
    --vg-charcoal-light: #1E1E1E;
    --vg-terracotta: var(--primary-accent);
    --vg-terracotta-dark: var(--primary-accent-dark);
    --vg-terracotta-light: #E8967F;
    --vg-sand: var(--primary-accent);
    --vg-sand-dark: var(--primary-accent-light);
    --vg-sand-light: #F5D9A8;
    --vg-eggshell: #EDEDED;
    --vg-eggshell-muted: #D4D1C0;

    /* Semantic Colors */
    --vg-bg: #0B0B0B;
    --vg-bg-card: #161616;
    --vg-bg-elevated: #1E1E1E;
    --vg-text: #EDEDED;
    --vg-text-muted: #888888;
    --vg-text-subtle: #7A7A70;
    --vg-border: #262626;
    --vg-border-light: #2E2E2E;

    /* Accent Colors */
    --vg-accent: var(--primary-accent);
    --vg-accent-hover: var(--primary-accent-dark);
    --vg-highlight: var(--primary-accent);
    --vg-highlight-hover: var(--primary-accent-light);
    --vg-rating: var(--primary-accent);

    /* Status Colors */
    --vg-success: #81B29A;
    --vg-warning: var(--primary-accent);
    --vg-error: var(--primary-accent);
    --vg-heart: var(--primary-accent);
}

/* =============================================
   GLOBAL DARK BACKGROUNDS
   ============================================= */

html, body {
    background: var(--vg-obsidian) !important;
    color: var(--vg-text) !important;
}

body, .site-main, .content-area, main, article, .entry-content,
.ct-container, .ct-page-content, .post-content, .page-content,
#primary, #main, .site-content {
    background: var(--vg-obsidian) !important;
    color: var(--vg-text) !important;
}

/* =============================================
   HEADER - Dark & Sophisticated
   ============================================= */

.ct-header,
.ct-header [data-row],
.ct-header [data-row=middle],
.ct-header .ct-container,
header, #masthead {
    background: var(--vg-obsidian) !important;
    border-bottom: 1px solid var(--vg-border) !important;
}

.ct-header .ct-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

@media (min-width: 1200px) {
    .ct-header .ct-container {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

/* Site title / Logo */
.site-title a, .site-branding a {
    color: var(--vg-eggshell) !important;
}

/* Navigation */
.ct-header nav a, .main-navigation a {
    color: var(--vg-eggshell) !important;
    transition: color 0.2s ease;
}

.ct-header nav a:hover, .main-navigation a:hover {
    color: var(--vg-terracotta) !important;
}

/* Mobile menu button */
.ct-header-trigger svg {
    fill: var(--vg-eggshell) !important;
}

/* =============================================
   HERO SECTION - Desert Twilight Gradient
   ============================================= */

.tx-hero, .vg-hero {
    background: linear-gradient(135deg,
        var(--vg-obsidian) 0%,
        #1a1517 30%,
        #2a1f1f 60%,
        var(--vg-charcoal) 100%
    );
    color: var(--vg-eggshell);
    padding: 60px 0 50px;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
    border-bottom: 1px solid var(--vg-border);
}

.tx-hero-content, .vg-hero-content {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.tx-hero h1, .vg-hero h1 {
    font-size: 2.6rem;
    font-weight: 700;
    margin: 0 0 12px 0;
    color: var(--vg-eggshell) !important;
    line-height: 1.2;
    text-shadow: 2px 2px 8px rgba(0,0,0,0.5);
}

.tx-hero .tagline, .vg-hero .tagline {
    color: var(--vg-eggshell-muted);
    font-size: 1.15rem;
}

/* Hero badges */
.tx-hero .badge, .vg-hero .badge {
    background: var(--vg-charcoal);
    border: 1px solid var(--vg-border);
    color: var(--vg-eggshell);
}

/* =============================================
   RATING BADGES - Sand Gold
   ============================================= */

.badge-rating, .std-card-badge {
    background: var(--vg-sand) !important;
    color: var(--vg-obsidian) !important;
    font-weight: 700;
    padding: 6px 12px;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    box-shadow: 0 2px 8px rgba(242, 204, 143, 0.3);
}

/* =============================================
   TOP RATED / FEATURED BADGES - Terracotta
   ============================================= */

.badge-top-rated, .badge-featured, .badge-recommended {
    background: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
    font-weight: 600;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* =============================================
   SEARCH BAR - High Contrast
   ============================================= */

.search-form, .ti-search-form, .vg-search-form {
    background: var(--vg-charcoal);
    border: 1px solid var(--vg-border);
    border-radius: 12px;
    padding: 8px;
    display: flex;
    gap: 8px;
}

.search-form input, .ti-search-form input, .vg-search-form input {
    background: var(--vg-bg-elevated) !important;
    border: 1px solid var(--vg-border) !important;
    color: var(--vg-eggshell) !important;
    padding: 12px 16px;
    border-radius: 8px;
    flex: 1;
}

.search-form input::placeholder {
    color: var(--vg-text-subtle);
}

.search-form input:focus {
    border-color: var(--vg-terracotta) !important;
    outline: none;
    box-shadow: 0 0 0 3px rgba(var(--primary-accent-rgb), 0.2);
}

/* Search Button - High Contrast Terracotta */
.search-form button, .ti-search-form button, .vg-search-form button,
.btn-search, button[type="submit"] {
    background: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
    border: none !important;
    padding: 12px 28px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.search-form button:hover, .btn-search:hover {
    background: var(--vg-terracotta-dark) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(var(--primary-accent-rgb), 0.4);
}

/* =============================================
   BUTTONS & CTAs
   ============================================= */

/* Primary Button - Terracotta */
.vg-btn-primary, .ti-btn-primary, .btn-primary {
    background: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.vg-btn-primary:hover, .ti-btn-primary:hover, .btn-primary:hover {
    background: var(--vg-terracotta-dark) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(var(--primary-accent-rgb), 0.3);
}

/* Secondary Button - Sand Gold Outline */
.vg-btn-secondary, .ti-btn-secondary, .btn-secondary {
    background: transparent !important;
    color: #999999 !important;
    border: 2px solid var(--vg-sand) !important;
    padding: 10px 22px;
    border-radius: 8px;
    font-weight: 600;
    transition: all 0.2s ease;
}

.vg-btn-secondary:hover, .ti-btn-secondary:hover, .btn-secondary:hover {
    background: var(--vg-sand) !important;
    color: var(--vg-obsidian) !important;
}

/* Ghost Buttons - City/Filter Buttons */
.ghost-btn, .city-btn, .filter-btn, .vibe-btn {
    background: transparent !important;
    color: var(--vg-eggshell) !important;
    border: 1px solid var(--vg-border) !important;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.ghost-btn:hover, .city-btn:hover, .filter-btn:hover, .vibe-btn:hover {
    border-color: var(--vg-terracotta) !important;
    color: var(--vg-terracotta) !important;
    background: rgba(var(--primary-accent-rgb), 0.1) !important;
}

.ghost-btn.active, .city-btn.active, .filter-btn.active {
    background: var(--vg-terracotta) !important;
    border-color: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
}

/* =============================================
   CARDS - Floating Dark Cards with Glow
   ============================================= */

.tx-card, .vg-card, .std-card {
    background: var(--vg-charcoal) !important;
    border-radius: 16px;
    box-shadow:
        0 4px 20px rgba(0, 0, 0, 0.4),
        0 0 1px rgba(255, 255, 255, 0.05);
    padding: 0;
    border: 1px solid var(--vg-border);
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.tx-card:hover, .vg-card:hover, .std-card:hover {
    transform: translateY(-6px);
    box-shadow:
        0 12px 40px rgba(0, 0, 0, 0.5),
        0 0 30px rgba(var(--primary-accent-rgb), 0.1);
}

/* Card content area */
.std-card-content, .card-content {
    padding: 20px;
    background: var(--vg-charcoal);
}

/* Card image */
.std-card-image, .card-image {
    position: relative;
    overflow: hidden;
}

.std-card-image img, .card-image img {
    transition: transform 0.3s ease;
}

.std-card:hover .std-card-image img {
    transform: scale(1.05);
}

/* Card badge positioning */
.std-card-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
}

/* Card placeholder */
.std-card-placeholder {
    background: var(--vg-bg-elevated);
    color: var(--vg-text-muted);
}

/* Card text */
.std-card-name, .card-title {
    color: var(--vg-eggshell) !important;
    font-size: 1.15rem;
    font-weight: 600;
    margin-bottom: 8px;
}

.std-card-name:hover, .card-title:hover {
    color: #999999 !important;
}

.std-card-meta, .card-meta {
    color: var(--vg-text-muted);
    font-size: 0.9rem;
}

.std-card-cuisine {
    color: var(--vg-terracotta) !important;
    font-weight: 500;
}

.std-card-price {
    color: var(--vg-success) !important;
}

.std-card-reviews {
    color: var(--vg-text-muted);
}

.std-card-city {
    color: var(--vg-text-subtle);
}

/* =============================================
   SIDEBAR CARDS
   ============================================= */

.tx-sidebar-card, .vg-sidebar-card {
    background: var(--vg-charcoal) !important;
    border-left: 4px solid var(--vg-terracotta);
    border-radius: 0 12px 12px 0;
    padding: 20px;
    margin-bottom: 20px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}

.sidebar-card-title {
    color: #999999 !important;
    font-weight: 700;
    margin-bottom: 12px;
}

/* =============================================
   SECTION HEADINGS
   ============================================= */

h1, h2, h3, h4, h5, h6 {
    color: var(--vg-eggshell) !important;
}

.vg-section-title, .tx-section-title, .section-title {
    color: #999999 !important;
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 24px;
    position: relative;
    padding-bottom: 12px;
}

.vg-section-title::after, .tx-section-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, var(--vg-terracotta), var(--vg-sand));
    border-radius: 2px;
}

/* =============================================
   LINKS
   ============================================= */

a {
    color: var(--vg-sand);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: var(--vg-terracotta);
}

.entry-content a, .post-content a {
    color: var(--vg-terracotta);
    border-bottom: 1px solid transparent;
}

.entry-content a:hover, .post-content a:hover {
    color: var(--vg-sand);
    border-bottom-color: var(--vg-sand);
}

/* =============================================
   QUOTE BOXES - What Locals Say
   ============================================= */

.tx-quote-box, .vg-quote-box, .locals-say {
    background: linear-gradient(135deg,
        rgba(var(--primary-accent-rgb), 0.1) 0%,
        rgba(242, 204, 143, 0.05) 100%
    );
    border-left: 4px solid var(--vg-terracotta);
    padding: 24px;
    border-radius: 0 12px 12px 0;
    margin: 24px 0;
    font-style: italic;
    color: var(--vg-eggshell);
    position: relative;
}

.tx-quote-box::before, .vg-quote-box::before {
    content: '"';
    position: absolute;
    top: 10px;
    left: 16px;
    font-size: 3rem;
    color: var(--vg-terracotta);
    opacity: 0.3;
    font-family: Georgia, serif;
    line-height: 1;
}

/* =============================================
   VIBES & TAGS
   ============================================= */

.vg-vibe-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: var(--vg-bg-elevated);
    border: 1px solid var(--vg-border);
    border-radius: 20px;
    font-size: 0.85rem;
    color: var(--vg-eggshell);
    margin: 4px;
    transition: all 0.2s ease;
}

.vg-vibe-tag:hover {
    border-color: var(--vg-terracotta);
    background: rgba(var(--primary-accent-rgb), 0.1);
    color: var(--vg-terracotta);
}

/* Pills & Badges */
.badge-cuisine {
    background: rgba(var(--primary-accent-rgb), 0.15);
    color: var(--vg-terracotta);
    border: 1px solid rgba(var(--primary-accent-rgb), 0.3);
    padding: 4px 10px;
    font-size: 0.8rem;
    border-radius: 20px;
}

.badge-price {
    background: rgba(129, 178, 154, 0.15);
    color: var(--vg-success);
    padding: 4px 10px;
    font-size: 0.8rem;
    border-radius: 20px;
}

.badge-location {
    background: var(--vg-bg-elevated);
    color: var(--vg-text-muted);
    padding: 4px 10px;
    font-size: 0.8rem;
    border-radius: 20px;
}

/* =============================================
   LOCAL RECOMMEND HEART - Terracotta
   ============================================= */

.heart-icon, .recommend-heart, .locals-love {
    color: var(--vg-terracotta) !important;
}

.heart-icon svg, .recommend-heart svg {
    fill: var(--vg-terracotta);
}

/* =============================================
   HOURS & STATUS
   ============================================= */

.hours-card {
    background: var(--vg-charcoal);
    border-left: 4px solid var(--vg-success);
    padding: 16px 20px;
    border-radius: 0 8px 8px 0;
}

.hours-badge-open {
    background: var(--vg-success) !important;
    color: var(--vg-obsidian) !important;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 0.8rem;
}

.hours-badge-closed {
    background: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 4px;
    font-size: 0.8rem;
}

/* =============================================
   INSIDER TIP BOX
   ============================================= */

.insider-tip-box {
    background: linear-gradient(135deg,
        rgba(242, 204, 143, 0.1) 0%,
        rgba(var(--primary-accent-rgb), 0.05) 100%
    );
    border: 1px solid rgba(242, 204, 143, 0.2);
    border-radius: 12px;
    padding: 20px;
}

.insider-tip-box .tip-title {
    color: #999999 !important;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}

.insider-tip-box .tip-content {
    color: var(--vg-eggshell);
}

/* =============================================
   FOOTER - Deep Dark
   ============================================= */

footer, .site-footer, #ct-footer, [data-footer] {
    background: var(--vg-obsidian) !important;
    border-top: 1px solid var(--vg-border);
    color: var(--vg-eggshell-muted);
}

footer a, .site-footer a {
    color: #999999 !important;
}

/* OLD RULE DISABLED
footer a-DISABLED, .site-footer a-DISABLED {
    color: #999999 !important;
    transition: color 0.2s ease;
}

footer a:hover, .site-footer a:hover {
    color: var(--vg-terracotta) !important;
}

footer h3, footer h4, .site-footer h3, .site-footer h4 {
    color: var(--vg-eggshell) !important;
}

/* =============================================
   PAGINATION
   ============================================= */

.pagination, .nav-links {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin: 40px 0;
}

.pagination a, .nav-links a {
    color: var(--vg-eggshell) !important;
    background: var(--vg-charcoal);
    border: 1px solid var(--vg-border);
    padding: 10px 16px;
    border-radius: 8px;
    transition: all 0.2s ease;
}

.pagination a:hover, .nav-links a:hover {
    background: var(--vg-terracotta) !important;
    border-color: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
}

.pagination .current, .nav-links .current {
    background: var(--vg-terracotta) !important;
    border-color: var(--vg-terracotta) !important;
    color: var(--vg-eggshell) !important;
}

/* =============================================
   FORMS & INPUTS
   ============================================= */

input, textarea, select {
    background: var(--vg-bg-elevated) !important;
    border: 1px solid var(--vg-border) !important;
    color: var(--vg-eggshell) !important;
    padding: 12px 16px;
    border-radius: 8px;
}

input:focus, textarea:focus, select:focus {
    border-color: var(--vg-terracotta) !important;
    outline: none;
    box-shadow: 0 0 0 3px rgba(var(--primary-accent-rgb), 0.2);
}

input::placeholder, textarea::placeholder {
    color: var(--vg-text-subtle);
}

/* =============================================
   TABLES
   ============================================= */

table {
    background: var(--vg-charcoal);
    border: 1px solid var(--vg-border);
    border-radius: 8px;
    overflow: hidden;
}

th {
    background: var(--vg-bg-elevated);
    color: var(--vg-sand);
    padding: 12px 16px;
    text-align: left;
}

td {
    padding: 12px 16px;
    border-top: 1px solid var(--vg-border);
    color: var(--vg-eggshell);
}

tr:hover td {
    background: var(--vg-bg-elevated);
}

/* =============================================
   FAQ SECTION
   ============================================= */

.faq-item {
    background: var(--vg-charcoal);
    border: 1px solid var(--vg-border);
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;
}

.faq-question {
    background: var(--vg-bg-elevated);
    color: var(--vg-eggshell);
    padding: 16px 20px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.faq-question:hover {
    background: var(--vg-charcoal-light);
}

.faq-answer {
    padding: 16px 20px;
    color: var(--vg-eggshell-muted);
    border-top: 1px solid var(--vg-border);
}

/* =============================================
   RELATED RESTAURANTS
   ============================================= */

.related-restaurants-title {
    color: #999999 !important;
    border-bottom: 3px solid transparent;
    border-image: linear-gradient(90deg, var(--vg-terracotta), var(--vg-sand)) 1;
    padding-bottom: 12px;
    margin-bottom: 24px;
}

/* =============================================
   FEATURED IN SECTION
   ============================================= */

.featured-in-section {
    background: var(--vg-charcoal);
    border: 1px solid var(--vg-border);
    border-radius: 12px;
    padding: 24px;
}

/* =============================================
   BREADCRUMBS
   ============================================= */

.breadcrumbs, .breadcrumb {
    color: var(--vg-text-muted);
    font-size: 0.9rem;
    margin-bottom: 20px;
}

.breadcrumbs a, .breadcrumb a {
    color: var(--vg-text-muted);
}

.breadcrumbs a:hover, .breadcrumb a:hover {
    color: var(--vg-sand);
}

.breadcrumbs .separator {
    margin: 0 8px;
    color: var(--vg-text-subtle);
}

/* =============================================
   SCROLLBAR - Dark Theme
   ============================================= */

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: var(--vg-obsidian);
}

::-webkit-scrollbar-thumb {
    background: var(--vg-charcoal-light);
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--vg-terracotta);
}

/* =============================================
   MOBILE RESPONSIVE
   ============================================= */

@media (max-width: 768px) {
    .ct-header .ct-container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .tx-hero h1, .vg-hero h1 {
        font-size: 1.9rem;
    }

    .tx-hero, .vg-hero {
        padding: 40px 0 35px;
    }

    .std-card {
        margin-bottom: 16px;
    }

    .search-form {
        flex-direction: column;
    }

    .search-form button {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .ct-header .ct-container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .tx-hero h1, .vg-hero h1 {
        font-size: 1.6rem;
    }

    .tx-card, .vg-card {
        padding: 16px;
    }
}

/* =============================================
   RESPONSIVE GRIDS
   ============================================= */

.std-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

@media (max-width: 900px) {
    .std-card-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .tx-grid, .vg-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .std-card-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .tx-hero, .vg-hero {
        padding: 30px 15px;
    }
}

/* =============================================
   BLOCKSY THEME OVERRIDES
   ============================================= */

/* Override Blocksy's default colors */
[data-theme-value="yes"] {
    --theme-palette-color-1: var(--primary-accent) !important;
    --theme-palette-color-2: var(--primary-accent) !important;
    --theme-palette-color-3: #0B0B0B !important;
    --theme-palette-color-4: #161616 !important;
    --theme-palette-color-5: #EDEDED !important;
}

.ct-container {
    background: transparent !important;
}

/* =============================================
   PHOTO GALLERY
   ============================================= */

.tx-photo-grid, .vg-photo-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 24px 0;
}

.tx-photo-grid img, .vg-photo-grid img {
    border-radius: 8px;
    width: 100%;
    height: 200px;
    object-fit: cover;
    cursor: pointer;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.tx-photo-grid img:hover, .vg-photo-grid img:hover {
    transform: scale(1.02);
    opacity: 0.9;
}

@media (max-width: 600px) {
    .tx-photo-grid, .vg-photo-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .tx-photo-grid img, .vg-photo-grid img {
        height: 150px;
    }
}

/* =============================================
   SELECTION & HIGHLIGHTS
   ============================================= */

::selection {
    background: var(--vg-terracotta);
    color: var(--vg-eggshell);
}

::-moz-selection {
    background: var(--vg-terracotta);
    color: var(--vg-eggshell);
}

/* =============================================
   ANIMATIONS
   ============================================= */

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.std-card {
    animation: fadeIn 0.4s ease-out;
}

/* Stagger animation for card grids */
.std-card-grid .std-card:nth-child(1) { animation-delay: 0.05s; }
.std-card-grid .std-card:nth-child(2) { animation-delay: 0.1s; }
.std-card-grid .std-card:nth-child(3) { animation-delay: 0.15s; }
.std-card-grid .std-card:nth-child(4) { animation-delay: 0.2s; }
.std-card-grid .std-card:nth-child(5) { animation-delay: 0.25s; }
.std-card-grid .std-card:nth-child(6) { animation-delay: 0.3s; }

/* =============================================
   MOJAVE RESCUE REFINEMENTS v3.1.0
   Deeper darks, better contrast
   ============================================= */

/* 1. Deepen the background - #0F0F0F is richer than pure black */
html, body {
    background-color: #0F0F0F !important;
    color: #EDEDED !important;
}

body, .site-main, .content-area, main, article, .entry-content,
.ct-container, .ct-page-content, .post-content, .page-content,
#primary, #main, .site-content {
    background: #0F0F0F !important;
}

/* 2. Restaurant Cards - Pop with subtle glow */
.restaurant-card, .card, .listing-item, .std-card,
a.std-card, .std-card-grid .std-card {
    background-color: #1A1A1A !important;
    border: 1px solid #333 !important;
    border-radius: 16px !important;
    overflow: hidden;
    transition: all 0.3s ease;
}

.std-card:hover, a.std-card:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.6), 0 0 20px rgba(var(--primary-accent-rgb), 0.1) !important;
    border-color: #444 !important;
}

/* 3. Top Rated & Satisfaction Badges - Terracotta */
.satisfaction-score, .badge-primary, .badge-top-rated,
.badge-featured, .badge-recommended {
    background-color: var(--star-gold) !important;
    color: white !important;
    border-radius: 6px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
}

/* 4. Hero Section - Deeper overlay */
.tx-hero, .vg-hero, .hero-section {
    background: linear-gradient(135deg, 
        rgba(15, 15, 15, 0.9) 0%,
        rgba(26, 20, 20, 0.85) 50%,
        rgba(30, 30, 30, 0.9) 100%
    ), var(--hero-image, none) !important;
}

/* 5. Heart Icons - Terracotta Rose */
.locals-recommend-heart, .heart-icon, .recommend-heart,
.locals-love, .heart {
    color: var(--primary-accent) !important;
}

/* 6. Navigation - Glass effect */
header, nav, .ct-header, .ct-header [data-row],
.ct-header [data-row=middle] {
    background-color: rgba(15, 15, 15, 0.95) !important;
    border-bottom: 1px solid #1E1E1E !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

/* 7. Sidebar Cards - Refined */
.tx-sidebar-card, .vg-sidebar-card {
    background: #1A1A1A !important;
    border: 1px solid #333 !important;
    border-left: 4px solid var(--primary-accent) !important;
}

/* 8. Footer - Deeper */
footer, .site-footer, #ct-footer, [data-footer],
.cbd-footer-grid {
    background: #0A0A0A !important;
    border-top: 1px solid #1E1E1E !important;
}

/* 9. Quote Boxes - Warm glow */
.tx-quote-box, .vg-quote-box, .locals-say {
    background: linear-gradient(135deg, 
        rgba(var(--primary-accent-rgb), 0.08) 0%, 
        rgba(242, 204, 143, 0.04) 100%
    ) !important;
    border: 1px solid rgba(var(--primary-accent-rgb), 0.2) !important;
    border-left: 4px solid var(--primary-accent) !important;
}

/* 10. Input Fields - Dark with glow focus */
input, textarea, select {
    background: #1A1A1A !important;
    border: 1px solid #333 !important;
    color: #EDEDED !important;
}

input:focus, textarea:focus, select:focus {
    border-color: var(--primary-accent) !important;
    box-shadow: 0 0 0 3px rgba(var(--primary-accent-rgb), 0.15) !important;
    outline: none;
}

/* 11. WebIgniter Section */
.webigniter-section {
    background: #0F0F0F !important;
    border-top: 1px solid #1E1E1E !important;
}

/* =============================================
   LUXE VEGAS THEME v3.2.0
   Premium Dark Mode - Makes food photos POP
   ============================================= */

:root {
    --bg-main: #0a0a0a;         /* Deep Black */
    --bg-card: #141414;         /* Subtle Charcoal for cards */
    --accent-gold: var(--primary-accent);     /* Vegas Gold for buttons/ratings */
    --accent-rose: #e07a5f;     /* Sunset Terracotta for hearts */
    --text-primary: #f8f8f8;    /* Off-white */
    --text-muted: #a0a0a0;      /* Grey for addresses */
}

/* Deep black background - richer than pure black */
html, body {
    background-color: var(--bg-main) !important;
    color: var(--text-primary) !important;
}

body, .site-main, .content-area, main, article, 
.ct-container, .ct-page-content {
    background: var(--bg-main) !important;
}

/* Premium restaurant cards - depth creates 3D effect */
.card, .listing-item, .std-card, a.std-card,
.restaurant-card, .std-card-grid .std-card {
    background-color: var(--bg-card) !important;
    border: 1px solid #222 !important;
    border-radius: 12px !important;
}

.std-card:hover, a.std-card:hover {
    border-color: #333 !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.5), 
                0 0 30px rgba(var(--primary-accent-rgb), 0.08) !important;
}

/* GOLD buttons - elite look */
.btn-primary, .search-button, .vg-btn-primary,
.webigniter-cta, .search-form button {
    background-color: var(--accent-gold) !important;
    border-color: var(--accent-gold) !important;
    color: #000 !important;
    font-weight: bold !important;
}

.btn-primary:hover, .search-button:hover, 
.vg-btn-primary:hover, .webigniter-cta:hover {
    background-color: #c4a030 !important;
    border-color: #c4a030 !important;
}

/* Rating badges - Vegas Gold */
.badge-rating, .std-card-badge {
    background: var(--accent-gold) !important;
    color: #000 !important;
    font-weight: 700;
}

/* Locals Recommend hearts - Terracotta Rose */
.locals-recommend, .heart-icon, .heart,
.locals-recommend-heart, .recommend-heart {
    color: var(--accent-rose) !important;
}

/* Muted text for addresses/secondary info */
.std-card-city, .card-location, .address,
.std-card-reviews, .text-muted {
    color: var(--text-muted) !important;
}

/* Cuisine tags - subtle gold accent */
.std-card-cuisine, .cuisine-tag {
    color: var(--accent-gold) !important;
}

/* Footer - deepest black */
.cbd-footer-grid, footer, .site-footer {
    background: #050505 !important;
}

.cbd-footer-bottom a {
    color: var(--accent-gold) !important;
}

/* =============================================
   FINAL FIX - GOLD RATING BADGES v3.3.0
   Force gold on ALL rating badges
   ============================================= */

/* Rating badges - MUST be Vegas Gold */
.badge-rating, 
.std-card-badge,
.std-card .std-card-badge,
.std-card-grid .std-card .std-card-badge,
[class*='badge'],
.rating-badge,
.card-badge {
    background: var(--star-gold) !important;
    background-color: var(--star-gold) !important;
    color: #000 !important;
    font-weight: 700 !important;
    border: none !important;
}

/* Search button - Terracotta, visible */
.search-form button,
button[type='submit'],
.btn-search,
.cuisine-hero button {
    background: var(--star-gold) !important;
    background-color: var(--star-gold) !important;
    color: white !important;
    border: none !important;
}

.search-form button:hover,
button[type='submit']:hover {
    background: var(--primary-accent-dark) !important;
}
