/* === 1. GLOBAL RESET & MOBILE-FIRST BASE === */
body {
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
    /* Reserve space at the bottom for the sticky mobile nav */
    padding-bottom: 60px; 
    background-color: #f8f8f8; /* Light gray background for a clean app feel */
    color: #333;
}

h1, h2 {
    color: #222;
    margin-top: 0;
}

/* === 2. CARD-BASED CONTENT (App Aesthetic) === */
section {
    padding: 20px;
    margin: 15px 0;
    /* Use 'content-card' for the main sections */
}

.content-card {
    background-color: #fff; /* White background for the card */
    margin: 15px 20px; /* Spacing from the edge of the screen */
    border-radius: 12px; /* Rounded corners for app-like look */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05); /* Subtle shadow for depth */
}

/* Hero Section Styling (full width on mobile) */
.hero-section {
    padding: 40px 20px;
    margin: 0; /* Remove top margin */
    text-align: center;
    background-color: #e0e0e0; /* Neutral background for the header */
}

/* Primary Call to Action Button */
.cta-primary, .cta-directions {
    display: block;
    width: 90%;
    margin: 20px auto 10px auto;
    padding: 15px;
    background-color: #E84949; /* Example: A strong, attractive color */
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 1.1em;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
}

/* === 3. STICKY MOBILE NAVIGATION (The 'App' Bar) === */
#mobile-nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 55px; /* Fixed height for the bar */
    background-color: #fff;
    border-top: 1px solid #ddd;
    box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.08);
    
    /* Use Flexbox for even spacing of navigation items */
    display: flex;
    justify-content: space-around;
    align-items: center;
    z-index: 1000;
}

.nav-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: #777;
    font-size: 0.7em; /* Small font size for labels */
    padding: 5px 0;
    width: 25%; /* To ensure 4 items fit nicely */
}

.nav-item.active {
    color: #E84949; /* Highlight the active section */
}

/* Placeholder for Icon (You would use an icon library like Font Awesome here) */
.nav-item i {
    font-size: 1.4em;
    margin-bottom: 3px;
}

/* === 4. DESKTOP ADJUSTMENTS (Hide Mobile Nav on wider screens) === */
@media (min-width: 768px) {
    /* Hide the sticky bottom nav on desktop/tablet */
    #mobile-nav {
        display: none;
    }

    /* Remove the reserved padding when the mobile nav is hidden */
    body {
        padding-bottom: 0; 
    }
    
    /* Center the main content on wider screens */
    body > section {
        max-width: 900px;
        margin: 20px auto;
    }
    
    .content-card {
        margin: 20px auto;
    }
    
    /* Hide unselected menu content panels */
.menu-panel.hidden {
    display: none;
}

/* Style for the active menu tab */
.menu-tab.active {
    background-color: #f0f0f0; 
    border-bottom: 2px solid #E84949; 
    font-weight: bold;
}

/* Basic styling for the tab buttons */
.menu-tab {
    padding: 10px 15px;
    border: none;
    background: none;
    cursor: pointer;
    font-size: 1em;
}

    /* Example: Reintroduce a classic top navigation bar for desktop (optional) */
    /* You would design a traditional horizontal menu here */
}