/* =============================================
   TYLER INSIDER - City Color Override

   This file ONLY overrides the primary accent color.
   All other styles come from the universal variables.css

   Tyler = "Rose Capital of America" = Rose Red
   ============================================= */

:root {
    /* Primary Accent - From Blocksy Theme Palette Color 1 */
    --primary-accent: var(--theme-palette-color-1);
    --primary-accent-dark: var(--theme-palette-color-2);
    --primary-accent-light: #e84d75;
    --primary-accent-rgb: 209, 32, 79;

    /* Secondary Accent - Palette Color 2 (Dark Gold) */
    --secondary-accent: var(--theme-palette-color-2);

    /* Button Text - White for better contrast on Rose Red */
    --button-text: #ffffff;

    /* Override Vegas legacy variables for Tyler */
    --tx-orange: var(--primary-accent);
    --vg-accent: var(--primary-accent);
}

/* =============================================
   HEADER - Compact height
   ============================================= */
/* Removed - controlled via Blocksy theme settings */

/* =============================================
   UNIVERSAL OVERRIDES - These NEVER change with accent
   HIGH SPECIFICITY to override all theme CSS
   ============================================= */

/* Rating badges - ALWAYS bright yellow - MAXIMUM SPECIFICITY */
.std-card-badge,
.badge-rating,
.rating-badge,
.std-card .std-card-badge,
/* Rating badges ONLY - yellow background */
.std-card-grid .std-card .std-card-badge,
body .std-card-badge,
body .badge-rating,
.bento-badge--rating,
body .bento-badge--rating {
    background: #F5C518 !important;
    background-color: #F5C518 !important;
    background-image: none !important;
    color: #000 !important;
}

/* Other hero badges - primary accent color */
.bento-badge--reviews,
.bento-badge--cuisine,
.bento-badge--bestfor,
body .bento-badge--reviews,
body .bento-badge--cuisine,
body .bento-badge--bestfor {
    background: var(--primary-accent, #E8C9A6) !important;
    color: var(--button-text, #1a1a1a) !important;
}

/* Badge containers MUST be transparent */
.bento-hero__badges,
body .bento-hero__badges {
    background: transparent !important;
    background-color: transparent !important;
}

/* LOCALS RECOMMEND label - ALWAYS white - MAXIMUM SPECIFICITY */
.std-card-recommend-label,
body .std-card-recommend-label,
.std-card .std-card-recommend-label,
.std-card-grid .std-card .std-card-recommend-label {
    color: var(--button-text) !important;
}

/* =============================================
   REVIEW STARS - ALWAYS bright yellow
   Stars in reviews must be yellow, not rose red
   MAXIMUM SPECIFICITY to override all theme CSS
   ============================================= */
.vl-review-rating,
.vl-review-stars,
.review-stars,
.star-rating,
body .vl-review-rating,
body .vl-review-stars,
body .review-stars,
body .star-rating,
html body .vl-review-rating,
html body .vl-review-stars,
html body .review-stars,
html body .star-rating {
    color: #F5C518 !important;
}

/* =============================================
   TYLER BUTTONS - Rose Red background, White text
   NEVER CHANGE THIS - MAXIMUM SPECIFICITY
   ============================================= */

.btn-primary, .vg-btn-primary, .ti-btn-primary,
button[type='submit'], .search-form button,
.webigniter-cta, .view-all-btn,
body .btn-primary, body button[type='submit'],
body .search-form button, body .webigniter-cta,
body .view-all-btn,
html body .btn-primary,
html body button[type='submit'],
html body .search-form button,
html body .webigniter-cta,
html body .view-all-btn {
    background: var(--primary-accent) !important;
    background-color: var(--primary-accent) !important;
    background-image: none !important;
    color: var(--button-text) !important;
}

.btn-primary:hover, .vg-btn-primary:hover,
button[type='submit']:hover, .webigniter-cta:hover,
.search-form button:hover, .view-all-btn:hover,
body .btn-primary:hover, body button[type='submit']:hover,
body .search-form button:hover, body .webigniter-cta:hover,
body .view-all-btn:hover {
    background: var(--theme-palette-color-2) !important;
    background-color: var(--theme-palette-color-2) !important;
    color: var(--button-text) !important;
}

/* Search button - primary accent background, button text color */
.search-form button,
body .search-form button,
.cbd-hero .search-form button,
form.search-form button,
html body .search-form button,
html body form.search-form button,
html body .cbd-hero .search-form button {
    background: var(--primary-accent) !important;
    background-color: var(--primary-accent) !important;
    color: var(--cbd-button-text) !important;
}

/* Search button hover - use theme palette, NOT hardcoded color */
.search-form button:hover,
body .search-form button:hover,
.cbd-hero .search-form button:hover,
form.search-form button:hover,
html body .search-form button:hover {
    background: var(--theme-palette-color-2) !important;
    background-color: var(--theme-palette-color-2) !important;
    color: var(--cbd-button-text) !important;
}

/* =============================================
   FOOTER LINKS - Primary accent on hover
   Uses theme variable for proper multi-site support
   ============================================= */

/* Footer column links - hover shows primary accent */
.cbd-footer-column a:hover,
body .cbd-footer-column a:hover,
footer .cbd-footer-column a:hover,
html body .cbd-footer-column a:hover,
footer a:hover,
body footer a:hover,
.site-footer a:hover,
body .site-footer a:hover {
    color: var(--primary-accent) !important;
}

/* Footer bottom "Powered by WebIgniter" - always primary accent */
.cbd-footer-bottom a,
.cbd-footer-bottom a:hover,
body .cbd-footer-bottom a,
body .cbd-footer-bottom a:hover,
html body .cbd-footer-bottom a,
html body .cbd-footer-bottom a:hover {
    color: var(--primary-accent) !important;
}

/* =============================================
   SECTION HEADERS - White with Rose Red accent line
   Premium editorial style - accent color reserved for CTAs

   ALL h2 section headers site-wide should be WHITE
   with a small rose red accent line above them.
   This applies to: homepage, single restaurant pages,
   archive pages, taxonomy pages, etc.
   ============================================= */

/* Section titles - WHITE for readability - ALL PAGE TYPES */
/* MAXIMUM SPECIFICITY to override vegas-luxe-final.css */
.section-title,
body .section-title,
h2.section-title,
html body .section-title,
html body h2.section-title,
.webigniter-headline,
body .webigniter-headline,
html body .webigniter-headline,
/* Override vegas-luxe-final.css specific rules */
.hidden-gems-section h2,
body .hidden-gems-section h2,
html body .hidden-gems-section h2,
.related-section h2,
body .related-section h2,
html body .related-section h2,
/* Single restaurant page h2 sections */
main h2,
body main h2,
html body main h2,
.vl-content h2,
body .vl-content h2,
html body .vl-content h2,
/* Archive page sections */
.hidden-gems-header h2,
body .hidden-gems-header h2,
html body .hidden-gems-header h2,
/* General main content h2s */
.site-main h2,
body .site-main h2,
html body .site-main h2,
#main h2,
body #main h2,
html body #main h2,
article h2,
body article h2,
html body article h2 {
    color: var(--button-text) !important;
    position: relative;
    display: inline-block;
}

/* Small rose red accent line above section titles - ALWAYS CENTERED */
/* MAXIMUM SPECIFICITY to match color selectors */
.section-title::before,
body .section-title::before,
h2.section-title::before,
html body .section-title::before,
html body h2.section-title::before,
/* Override vegas-luxe-final.css specific rules */
.hidden-gems-section h2::before,
body .hidden-gems-section h2::before,
html body .hidden-gems-section h2::before,
.related-section h2::before,
body .related-section h2::before,
html body .related-section h2::before,
/* Single restaurant page h2 sections */
main h2::before,
body main h2::before,
html body main h2::before,
.vl-content h2::before,
body .vl-content h2::before,
html body .vl-content h2::before,
/* Archive page sections */
.hidden-gems-header h2::before,
body .hidden-gems-header h2::before,
html body .hidden-gems-header h2::before,
/* General main content h2s */
.site-main h2::before,
body .site-main h2::before,
html body .site-main h2::before,
#main h2::before,
body #main h2::before,
html body #main h2::before,
article h2::before,
body article h2::before,
html body article h2::before {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: var(--primary-accent);
    margin: 0 auto 12px auto;
    border-radius: 2px;
}

/* Subtitle text stays muted */
.section-subtitle,
body .section-subtitle {
}

/* =============================================
   SIDEBAR HEADERS - White text, NO accent lines
   These are smaller headings in the sidebar,
   cleaner look without accent decoration
   ============================================= */

/* Sidebar h3 headings - WHITE text */
.vl-sidebar-card h3,
body .vl-sidebar-card h3,
html body .vl-sidebar-card h3,
aside h3,
body aside h3,
html body aside h3 {
    color: var(--button-text) !important;
}

/* Sidebar h3 headings should NOT have accent lines */
.vl-sidebar-card h3::before,
body .vl-sidebar-card h3::before,
aside h3::before,
body aside h3::before {
    display: none !important;
}

/* =============================================
   HERO BADGES - Rose Red with White text
   ============================================= */
.bento-badge,
.bento-badge--rating,
.bento-badge--reviews,
.bento-badge--cuisine,
.bento-badge--bestfor,
body .bento-badge,
body .bento-badge--rating,
body .bento-badge--reviews,
body .bento-badge--cuisine,
body .bento-badge--bestfor,
html body .bento-badge,
html body .bento-badge--rating,
html body .bento-badge--reviews,
html body .bento-badge--cuisine,
html body .bento-badge--bestfor {
    background: var(--primary-accent) !important;
    background-color: var(--primary-accent) !important;
    color: var(--button-text) !important;
}

/* =============================================
   FAQ ANSWERS - Light grey, almost white
   ============================================= */
.vl-faq-answer,
.faq-answer,
.accordion-content,
body .vl-faq-answer,
body .faq-answer,
body .accordion-content,
html body .vl-faq-answer,
html body .faq-answer,
html body .accordion-content {
    color: #e0e0e0 !important;
}

/* =============================================
   HOURS STATUS - Simple dot indicator
   Red dot + "Closed Now" / Green dot + "Open Now"
   MAXIMUM SPECIFICITY to override theme styles
   ============================================= */

/* Remove button/badge background styling */
.cbd-hours-badge,
body .cbd-hours-badge,
html body .cbd-hours-badge,
.vl-hours-wrapper .cbd-hours-badge,
.vl-sidebar-card .cbd-hours-badge,
body .vl-sidebar-card .cbd-hours-badge,
html body .vl-sidebar-card .cbd-hours-badge,
.vl-sidebar-card .cbd-hours-closed,
body .vl-sidebar-card .cbd-hours-closed,
html body .vl-sidebar-card .cbd-hours-closed,
.vl-sidebar-card .cbd-hours-open,
body .vl-sidebar-card .cbd-hours-open,
html body .vl-sidebar-card .cbd-hours-open {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Hours icon - base dot style - BIG bright dot */
.cbd-hours-icon,
body .cbd-hours-icon,
html body .cbd-hours-icon,
.vl-sidebar-card .cbd-hours-icon,
body .vl-sidebar-card .cbd-hours-icon,
html body .vl-sidebar-card .cbd-hours-icon,
.vl-sidebar-card .cbd-hours-closed .cbd-hours-icon,
body .vl-sidebar-card .cbd-hours-closed .cbd-hours-icon,
html body .vl-sidebar-card .cbd-hours-closed .cbd-hours-icon,
.vl-sidebar-card .cbd-hours-open .cbd-hours-icon,
body .vl-sidebar-card .cbd-hours-open .cbd-hours-icon,
html body .vl-sidebar-card .cbd-hours-open .cbd-hours-icon {
    display: inline-block !important;
    width: 12px !important;
    height: 12px !important;
    min-width: 12px !important;
    min-height: 12px !important;
    border-radius: 50% !important;
    font-size: 0 !important;
    line-height: 0 !important;
    flex-shrink: 0 !important;
    color: transparent !important;
}

/* OPEN status - Bright green dot */
.cbd-hours-open .cbd-hours-icon,
body .cbd-hours-open .cbd-hours-icon,
html body .cbd-hours-open .cbd-hours-icon,
.vl-sidebar-card .cbd-hours-open .cbd-hours-icon,
body .vl-sidebar-card .cbd-hours-open .cbd-hours-icon,
html body .vl-sidebar-card .cbd-hours-open .cbd-hours-icon {
    background-color: #22c55e !important;
    box-shadow: 0 0 8px rgba(34, 197, 94, 0.6) !important;
}

/* CLOSED status - BIG BRIGHT RED dot */
.cbd-hours-closed .cbd-hours-icon,
body .cbd-hours-closed .cbd-hours-icon,
html body .cbd-hours-closed .cbd-hours-icon,
.vl-sidebar-card .cbd-hours-closed .cbd-hours-icon,
body .vl-sidebar-card .cbd-hours-closed .cbd-hours-icon,
html body .vl-sidebar-card .cbd-hours-closed .cbd-hours-icon {
    background-color: #ff3b3b !important;
    box-shadow: 0 0 8px rgba(255, 59, 59, 0.6) !important;
}

/* Hours text styling - WHITE text */
.cbd-hours-text,
body .cbd-hours-text,
html body .cbd-hours-text,
.vl-sidebar-card .cbd-hours-text,
body .vl-sidebar-card .cbd-hours-text,
html body .vl-sidebar-card .cbd-hours-text,
.vl-sidebar-card .cbd-hours-closed .cbd-hours-text,
body .vl-sidebar-card .cbd-hours-closed .cbd-hours-text,
html body .vl-sidebar-card .cbd-hours-closed .cbd-hours-text,
.vl-sidebar-card .cbd-hours-open .cbd-hours-text,
body .vl-sidebar-card .cbd-hours-open .cbd-hours-text,
html body .vl-sidebar-card .cbd-hours-open .cbd-hours-text {
    color: var(--button-text) !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
}

/* Hours detailed text (e.g., "until 9 PM" / "Closed today") - WHITE */
.cbd-hours-detailed,
body .cbd-hours-detailed,
html body .cbd-hours-detailed,
.vl-sidebar-card .cbd-hours-detailed,
body .vl-sidebar-card .cbd-hours-detailed,
html body .vl-sidebar-card .cbd-hours-detailed,
.vl-sidebar-card .cbd-hours-detailed.cbd-hours-closed,
body .vl-sidebar-card .cbd-hours-detailed.cbd-hours-closed {
    color: var(--button-text) !important;
    font-size: 0.9rem !important;
    margin-left: 8px !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
}

/* =============================================
   YOU MIGHT ALSO LIKE SECTION
   - Centered heading
   - No background
   ============================================= */
.vl-related-section,
body .vl-related-section,
html body .vl-related-section,
.related-section,
body .related-section,
html body .related-section {
    background: transparent !important;
    background-color: transparent !important;
}

/* Center the heading and subtitle */
.vl-related-section h2,
body .vl-related-section h2,
html body .vl-related-section h2,
.related-section h2,
body .related-section h2,
html body .related-section h2 {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
}

.vl-related-section p,
body .vl-related-section p,
html body .vl-related-section p,
.related-section p,
body .related-section p,
html body .related-section p {
    text-align: center !important;
}

/* =============================================
   EXPLORE MORE SECTION
   ============================================= */

/* Center the main heading */
.vl-explore-more h2,
body .vl-explore-more h2,
html body .vl-explore-more h2 {
    text-align: center !important;
    display: block !important;
    width: 100% !important;
}


/* =============================================
   EXPLORE MORE SECTION - Override global link colors
   This overrides vegas-luxe-final.css line 292:
   a { color: var(--primary-accent) !important; }
   ============================================= */

/* Regular tags - dark bg, white text */
.explore-tag,
a.explore-tag,
body .explore-tag,
html body .explore-tag,
.vl-explore-more .explore-tag {
    color: var(--text-main) !important;
}

.explore-tag:hover,
a.explore-tag:hover {
    color: var(--primary-accent) !important;
    border: 2px solid var(--primary-accent) !important;
}

/* Accent buttons - rose/gold bg, button-text color */
.explore-btn,
a.explore-btn,
body .explore-btn,
html body .explore-btn,
.vl-explore-more .explore-btn {
    color: var(--button-text) !important;
}

.explore-btn:hover,
a.explore-btn:hover {
    opacity: 0.9;
}
html body .vl-explore-more h2::before {
    display: none !important;
    content: none !important;
}

/* Call Now Button - Force Rose Red */
.vl-btn-phone,
.vl-btn-phone:visited,
.vl-btn-phone:link,
a.vl-btn-phone,
body .vl-btn-phone,
html body .vl-btn-phone {
    background: var(--primary-accent) !important;
    background-color: var(--primary-accent) !important;
    color: #ffffff !important;
    font-size: 1.1rem !important;
}

.vl-btn-phone:hover,
a.vl-btn-phone:hover,
body .vl-btn-phone:hover {
    background: var(--theme-palette-color-2) !important;
    background-color: var(--theme-palette-color-2) !important;
    color: #ffffff !important;
    font-size: 1.1rem !important;
}

/* Rating Badge - ALWAYS bright yellow with black text */
.bento-badge--rating,
span.bento-badge--rating,
body .bento-badge--rating,
html body .bento-badge--rating,
.bento-badge.bento-badge--rating {
    background: #F5C518 !important;
    background-color: #F5C518 !important;
    color: #000 !important;
}

/* Explore buttons - Keep small font size */
.explore-btn,
a.explore-btn,
.vl-explore-more .explore-btn,
body .explore-btn,
html body .explore-btn {
    font-size: 0.8rem !important;
}

/* EXPLORE BUTTONS - White text, original small size */
html body .vl-explore-more a.explore-btn,
html body a.explore-btn[href*='explore-'],
.vl-explore-more a.explore-btn {
    color: #ffffff !important;
    font-size: 0.8rem !important;
    --theme-link-initial-color: #ffffff !important;
}
/* Cache bust: 1767774355 */

/* Why Choose This Place - White text, green dollar signs */
.vl-why-choose-list,
.vl-why-choose-item,
.vl-why-choose-text,
.vl-why-choose-detail,
body .vl-why-choose-text,
body .vl-why-choose-detail {
    color: #ffffff !important;
}

.vl-why-choose-detail span[style*='2E7D32'],
.vl-why-choose-detail span {
    color: #2E7D32 !important;
}

/* =============================================
   PROTOTYPE CARD - Premium Conversion Design
   ============================================= */

/* Card hover effects */
.proto-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.proto-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0,0,0,0.4);
}

/* Image zoom on hover */
.proto-card-image {
    transition: transform 0.4s ease;
    overflow: hidden;
}

.proto-card:hover .proto-card-image {
    background-size: 110%;
}

/* Vibe badge - top left corner */
.proto-vibe-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    background: rgba(0,0,0,0.75);
    color: #fff;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    backdrop-filter: blur(4px);
}

/* Insider tip teaser */
.proto-tip {
    margin: 12px 0;
    padding: 10px 12px;
    background: rgba(var(--primary-accent-rgb), 0.1);
    border-left: 3px solid var(--primary-accent);
    border-radius: 0 8px 8px 0;
}

.proto-tip-text {
    color: #ccc;
    font-size: 0.85rem;
    font-style: italic;
    line-height: 1.4;
}

/* Dish pills with border */
.proto-dishes {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0;
}

.proto-dish-tag {
    background: transparent;
    border: 1px solid var(--primary-accent);
    color: #fff;
    padding: 5px 12px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
}

.proto-dish-more {
    color: var(--primary-accent);
    font-size: 0.8rem;
    font-weight: 600;
    padding: 5px 8px;
    align-self: center;
}

/* CTA Button */
.proto-cta {
    display: block;
    width: 100%;
    margin-top: 15px;
    padding: 12px 20px;
    background: var(--primary-accent);
    color: var(--button-text);
    text-align: center;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.95rem;
    transition: all 0.3s ease;
}

.proto-card:hover .proto-cta {
    background: var(--primary-accent-dark);
    box-shadow: 0 4px 15px rgba(var(--primary-accent-rgb), 0.4);
}

/* Location styling */
.std-card-location {
    color: #999;
    font-size: 0.85rem;
}

/* ===== POLISH FIXES - Jan 7, 2026 ===== */

/* 1. Insider Tip Readability - White text for better contrast */
.proto-tip-text {
    color: #e0e0e0 !important;
    font-style: italic;
}

/* 2. Search Bar Alignment - Match heights, rounder corners */
.search-form {
    border-radius: 10px !important;
    overflow: hidden;
}

.search-form input,
.search-form button {
    height: 54px !important;
    line-height: 22px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
    box-sizing: border-box !important;
}

.search-form input {
    border-radius: 10px 0 0 10px !important;
}

.search-form button {
    border-radius: 0 10px 10px 0 !important;
}

/* 4. Cuisine Button Spacing - More breathing room */
.cuisine-grid {
    gap: 12px !important;
}

.cuisine-pill {
    margin: 4px !important;
}

/* Cuisine section link spacing */
.content-section .cuisine-grid a,
.browse-cuisine-section a {
    margin: 5px !important;
}


/* 3. Coming Soon styling for empty cities */
.city-count.coming-soon {
    color: var(--primary-accent, var(--primary-accent)) !important;
    font-weight: 600;
}


/* ===== FINAL MICRO-POLISHES - Jan 7, 2026 ===== */

/* 1. Search Bar Placeholder - Lighter text for better visibility */
.search-form input::placeholder {
    color: #888 !important;
    opacity: 1 !important;
}

/* 2. Top Action Buttons - Outline style with accent border */
.hero-link {
    border: 2px solid var(--primary-accent) !important;
    background: transparent !important;
    color: #ffffff !important;
}

.hero-link:hover {
    background: var(--theme-palette-color-2) !important;
    border-color: var(--theme-palette-color-2) !important;
    color: var(--cbd-button-text) !important;
}

/* 3. Cuisine Buttons - Center the entire block */
.cuisine-section .content-container > div:last-child,
.browse-cuisine-section > div {
    text-align: center !important;
    display: grid !important;
    grid-template-columns: repeat(7, 1fr) !important;
    
    
    gap: 10px !important;
}

/* Target the cuisine grid specifically */
.cuisine-grid,
.content-section .cuisine-grid {
    display: grid !important;
    grid-template-columns: repeat(7, 1fr) !important;
    
    
    gap: 12px !important;
}


/* VIBE BADGE - MUST BE BLACK - FINAL OVERRIDE */
.proto-vibe-badge,
body .proto-vibe-badge,
.std-card .proto-vibe-badge,
.proto-card .proto-vibe-badge,
.std-card-grid .proto-vibe-badge {
    background: rgba(0,0,0,0.85) !important;
    background-color: rgba(0,0,0,0.85) !important;
    color: #fff !important;
}

/* =============================================
   CUISINE CARDS - City Hub Page Card Layout
   Overrides old pill styles for new card design
   Added: Jan 8, 2026
   ============================================= */
.city-hub-section .cuisine-grid {
    justify-content: center;
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
    gap: 15px !important;
    flex-wrap: unset !important;
    justify-content: unset !important;
}

.city-hub-section .cuisine-card,
.city-hub-section .cuisine-grid a.cuisine-card {
    display: grid !important;
    grid-template-columns: repeat(7, 1fr) !important;
    flex-direction: column !important;
    align-items: center !important;
    background: #161616 !important;
    border: 1px solid #262626 !important;
    border-radius: 12px !important;
    padding: 20px 15px !important;
    text-align: center !important;
    text-decoration: none !important;
    color: inherit !important;
    transition: all 0.25s ease !important;
}

.city-hub-section .cuisine-card:hover,
.city-hub-section .cuisine-grid a.cuisine-card:hover {
    transform: translateY(-4px) !important;
    border: 2px solid var(--primary-accent) !important;
    box-shadow: 0 8px 25px rgba(209, 32, 79, 0.3) !important;
    background: #1a1a1a !important;
}

.city-hub-section .cuisine-card .icon {
    font-size: 2.5rem !important;
    margin-bottom: 10px !important;
    display: block !important;
    line-height: 1 !important;
}

.city-hub-section .cuisine-card .name {
    font-weight: 600 !important;
    color: #EDEDED !important;
    margin-bottom: 4px !important;
    font-size: 0.95rem !important;
    display: block !important;
}

.city-hub-section .cuisine-card .count {
    color: var(--primary-accent) !important;
    font-size: 0.8rem !important;
    display: block !important;
}

/* City Hub About Section H2 - Centered */
.city-hub-about h2,
body .city-hub-about h2,
html body .city-hub-about h2 {
    display: block !important;
    text-align: center !important;
    width: 100% !important;
}

/* Restaurants Page Section Headings - Centered */
.section-header,
body .section-header,
html body .section-header {
    text-align: center !important;
}

.section-header .section-title,
body .section-header .section-title,
html body .section-header .section-title {
    display: inline-block !important;
    text-align: center !important;
}

.hidden-gems-header,
body .hidden-gems-header,
html body .hidden-gems-header {
    
    text-align: center !important;
}

.hidden-gems-header .gem-text,
body .hidden-gems-header .gem-text {
    text-align: center !important;
}

.hidden-gems-header .gem-text h2,
body .hidden-gems-header .gem-text h2 {
    display: block !important;
    text-align: center !important;
}

/* Cuisine Card Hover - Primary Border */
.city-hub-section .cuisine-card:hover,
body .city-hub-section .cuisine-card:hover {
    border: 2px solid var(--primary-accent) !important;
    transform: translateY(-3px);
    box-shadow: 0 4px 15px rgba(209, 32, 79, 0.3);
    transition: all 0.2s ease;
}

.city-hub-section .cuisine-card {
    transition: all 0.2s ease !important;
}

/* Header background controlled by Blocksy Site Background setting */

/* Remove any gaps between header and content */
.site-main,
.ct-container,
article.page,
.entry-content,
.ct-page-content,
.content-area {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Site background color controlled via Blocksy Customizer */

/* Header border for separation */
.ct-header {
    border-bottom: 1px solid #262626 !important;
}

/* Header padding consistency */
.ct-header .ct-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
}

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

/* Nav links styling */
.ct-header nav a,
.main-navigation a {
    color: #EDEDED !important;
}

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

/* =============================================
   HEADER SIZE AND STYLING - MUST MATCH RESTAURANTS PAGE
   ============================================= */

/* Header row height - controlled via Blocksy theme settings */

/* Site title - BIGGER and BOLDER */
.site-title,
.site-title a,
.ct-header .site-branding a,
header .site-title a {
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    color: #EDEDED !important;
    text-decoration: none !important;
    letter-spacing: -0.5px !important;
}

/* Nav items - proper size */
.ct-header nav a,
.ct-header .menu > li > a,
.main-navigation a {
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 10px 15px !important;
}

/* Search icon size */
.ct-header .ct-search svg,
.ct-header button svg {
    width: 20px !important;
    height: 20px !important;
}

/* Header background controlled by Blocksy */

/* =============================================
   HEADER STYLING
   Background color controlled via Blocksy Site Background setting
   ============================================= */

/* Site title - BIGGER and BOLDER */
html body .site-title,
html body .site-title a,
html body .ct-header .site-branding a,
html body header .site-title a,
body .site-branding .site-title-container a {
    font-size: 1.75rem !important;
    font-weight: 700 !important;
    color: #EDEDED !important;
    text-decoration: none !important;
    letter-spacing: -0.5px !important;
}

/* Header container padding */
html body .ct-header .ct-container,
html body header .ct-container {
    padding: 18px 40px !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
}

/* Nav items styling */
html body .ct-header nav a,
html body .ct-header .menu > li > a,
html body .main-navigation a,
html body nav.main-navigation ul li a {
    font-size: 1rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 12px 18px !important;
    color: #EDEDED !important;
}

/* Nav link hover - MUST use primary accent, override Blocksy theme settings */
/* Blocksy uses: nav[class*=menu] li:hover>.ct-menu-link { color: var(--theme-link-hover-color) } */
/* HARDCODED to ensure it works - reads from Blocksy palette */
html body nav[class*=menu] li:hover > .ct-menu-link,
html body nav[class*=menu] li:hover > .ct-sub-menu-parent,
html body nav[class*=menu] li:hover > a,
html body .ct-header nav[class*=menu] li:hover > a,
html body .ct-header [data-menu] li:hover > a,
html body [data-menu] > ul > li:hover > a,
html body .ct-header nav a:hover,
html body .main-navigation a:hover,
.ct-header nav a:hover,
.ct-header .menu > li > a:hover,
header[data-id] nav a:hover,
[data-header] nav a:hover {
    color: var(--theme-palette-color-1) !important;
}

/* Override Blocksy's --theme-link-hover-color on menu elements */
html body .ct-header [data-menu],
html body nav[class*=menu],
html body .ct-header nav,
[data-header] nav {
    --theme-link-hover-color: var(--theme-palette-color-1) !important;
}

/* Search button */
html body .ct-header .ct-search,
html body .ct-header button[data-search] {
    padding: 10px !important;
}

html body .ct-header svg {
    width: 22px !important;
    height: 22px !important;
}
