:root {
            /* Color Palette - Inspired by horse racing elegance */
            --color-primary: #3d7a64;
            --color-primary-light: #4a9478;
            --color-primary-dark: #2d5a4a;
            
            --color-accent: #dbb84a;
            --color-accent-light: #e8cb6d;
            --color-accent-dark: #c9a227;
            
            --color-surface: #1a1a1a;
            --color-surface-alt: #242424;
            
            --color-text: #e8e6e3;
            --color-text-muted: #a8a8a8;
            --color-text-light: #888888;
            
            --color-border: #3a3a3a;
            --color-shadow: rgba(0, 0, 0, 0.3);
            --color-white: #ffffff; 
            
            --font-heading: 'Georgia', 'Times New Roman', serif;
            --font-body: 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
            
            /* Spacing */
            --space-xs: 0.25rem;
            --space-sm: 0.5rem;
            --space-md: 1rem;
            --space-lg: 1.5rem;
            --space-xl: 2rem;
            --space-2xl: 3rem;
            --space-3xl: 4rem;
            
            /* Layout */
            --max-width: 75rem;
            --content-width: 48rem;
            --border-radius: 0.375rem;
            --border-radius-lg: 0.75rem;
            
            /* Transitions */
            --transition-fast: 150ms ease;
            --transition-base: 250ms ease;
            --transition-slow: 400ms ease;
        }

        

        /* Reset & Base */
        *,
        *::before,
        *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            font-size: 100%;
            scroll-behavior: smooth;
            -webkit-text-size-adjust: 100%;
        }

        body {
            font-family: var(--font-body);
            font-size: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
            line-height: 1.7;
            color: var(--color-text);
            background-color: var(--color-surface);
            min-height: 100vh;
            display: flex;
            flex-direction: column;
        }

        /* Focus Styles */
        :focus-visible {
            outline: 3px solid var(--color-accent);
            outline-offset: 3px;
        }

        ::selection {
            background-color: var(--color-accent);
            color: var(--color-primary-dark);
        }

        /* Header */
        .site-header {
            background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);
            min-height: 4rem;
        }

        /* Navigation */
        nav {
            max-width: var(--max-width);
            margin: 0 auto;
            padding: var(--space-md) var(--space-lg);
        }

        nav ul {
            display: flex;
            flex-wrap: wrap;
            gap: var(--space-sm) var(--space-lg);
            list-style: none;
        }

        nav a {
            color: var(--color-surface);
            text-decoration: none;
            font-size: 0.9rem;
            font-weight: 500;
            padding: var(--space-xs) var(--space-sm);
            border-radius: var(--border-radius);
            transition: background-color var(--transition-fast), transform var(--transition-fast);
        }

        nav a:hover {
            background-color: rgba(255, 255, 255, 0.15);
            transform: translateY(-1px);
        }

        /* Main Content */
        main {
            flex: 1;
            width: 100%;
            max-width: var(--content-width);
            margin: 0 auto;
            padding: var(--space-2xl) var(--space-lg) var(--space-3xl);
        }

        /* Article Typography */
        main h1 {
            font-family: var(--font-heading);
            font-size: clamp(2rem, 1.5rem + 2.5vw, 3rem);
            font-weight: 700;
            line-height: 1.2;
            color: var(--color-primary);
            margin-bottom: var(--space-lg);
            letter-spacing: -0.02em;
        }

        main h2 {
            font-family: var(--font-heading);
            font-size: clamp(1.5rem, 1.25rem + 1.25vw, 2rem);
            font-weight: 600;
            line-height: 1.3;
            color: var(--color-primary);
            margin-top: var(--space-3xl);
            margin-bottom: var(--space-lg);
            padding-bottom: var(--space-sm);
            border-bottom: 3px solid var(--color-accent);
        }

        main h3 {
            font-family: var(--font-heading);
            font-size: clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);
            font-weight: 600;
            line-height: 1.4;
            color: var(--color-primary-light);
            margin-top: var(--space-2xl);
            margin-bottom: var(--space-md);
        }

        main p {
            margin-bottom: var(--space-lg);
            color: var(--color-text);
        }

        main p:last-child {
            margin-bottom: 0;
        }

        /* Lists */
        main ul,
        main ol {
            margin-bottom: var(--space-lg);
            padding-left: var(--space-xl);
        }

        main li {
            margin-bottom: var(--space-sm);
            padding-left: var(--space-sm);
        }

        main li::marker {
            color: var(--color-accent);
        }

        main ul li {
            list-style-type: square;
        }

        /* Text Emphasis */
        main strong {
            font-weight: 600;
            color: var(--color-primary);
        }

        main em {
            font-style: italic;
            color: var(--color-text-muted);
        }

        /* Links */
        main a {
            color: var(--color-primary);
            text-decoration: underline;
            text-decoration-color: var(--color-accent);
            text-underline-offset: 3px;
            transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
        }

        main a:hover {
            color: var(--color-accent-dark);
            text-decoration-color: var(--color-accent-dark);
        }

        /* Blockquote */
        main blockquote {
            margin: var(--space-xl) 0;
            padding: var(--space-lg) var(--space-xl);
            background: linear-gradient(135deg, var(--color-surface-alt) 0%, var(--color-surface) 100%);
            border-left: 4px solid var(--color-accent);
            border-radius: 0 var(--border-radius-lg) var(--border-radius-lg) 0;
            font-style: italic;
            color: var(--color-text-muted);
            position: relative;
        }

        main blockquote::before {
            content: '';
            position: absolute;
            top: var(--space-md);
            left: var(--space-lg);
            width: 2rem;
            height: 2rem;
            background-color: var(--color-accent);
            opacity: 0.15;
            border-radius: 50%;
        }

        main blockquote p {
            margin-bottom: var(--space-sm);
        }

        main blockquote p:last-child {
            margin-bottom: 0;
        }

        /* Images */
        main figure {
            margin: var(--space-2xl) 0;
        }

        main figure img,
        main .hero-image,
        main .article-image {
            width: 100%;
            height: auto;
            border-radius: var(--border-radius-lg);
            box-shadow: 0 8px 30px var(--color-shadow);
            transition: transform var(--transition-slow), box-shadow var(--transition-slow);
        }

        main figure img:hover,
        main .article-image:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 40px var(--color-shadow);
        }

        main .hero-image {
            margin-bottom: var(--space-2xl);
            border-radius: var(--border-radius-lg);
            overflow: hidden;
        }

        main figcaption {
            margin-top: var(--space-sm);
            font-size: 0.875rem;
            color: var(--color-text-light);
            text-align: center;
            font-style: italic;
        }

        /* Tables (if needed) */
        main table {
            width: 100%;
            margin: var(--space-xl) 0;
            border-collapse: collapse;
            font-size: 0.95rem;
        }

        main th,
        main td {
            padding: var(--space-md);
            text-align: left;
            border-bottom: 1px solid var(--color-border);
        }

        main th {
            background-color: var(--color-primary);
            color: var(--color-white);
            font-weight: 600;
        }

        main tr:hover {
            background-color: var(--color-surface-alt);
        }

        /* Code (if needed) */
        main code {
            font-family: 'Consolas', 'Monaco', monospace;
            font-size: 0.9em;
            background-color: var(--color-surface-alt);
            padding: var(--space-xs) var(--space-sm);
            border-radius: var(--border-radius);
            color: var(--color-primary);
        }

        /* Horizontal Rule */
        main hr {
            margin: var(--space-2xl) 0;
            border: none;
            height: 1px;
            background: linear-gradient(90deg, transparent, var(--color-border), transparent);
        }

        /* FAQ Section Styling */
        main h2 + h3 {
            margin-top: var(--space-xl);
        }

        /* Accent Box for Important Info */
        main aside {
            margin: var(--space-xl) 0;
            padding: var(--space-lg);
            background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);
            border-radius: var(--border-radius-lg);
            color: var(--color-surface);
        }

        main aside strong {
            color: var(--color-accent-light);
        }

        /* Footer */
        footer {
            background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%);
            min-height: 4rem;
            margin-top: auto;
        }

       

        /* Responsive Adjustments */
        @media (max-width: 48rem) {
            main {
                padding: var(--space-xl) var(--space-md) var(--space-2xl);
            }

            main h2 {
                margin-top: var(--space-2xl);
            }

            main h3 {
                margin-top: var(--space-xl);
            }

            main blockquote {
                padding: var(--space-md) var(--space-lg);
            }

            nav ul {
                justify-content: center;
            }
        }

        /* Print Styles */
        @media print {
            body {
                background: white;
                color: black;
            }

            header,
            footer,
            nav {
                display: none;
            }

            main {
                max-width: 100%;
                padding: 0;
            }

            main a {
                text-decoration: none;
                color: inherit;
            }

            main a::after {
                content: ' (' attr(href) ')';
                font-size: 0.8em;
                color: #666;
            }
        }

        /* Reduced Motion */
        @media (prefers-reduced-motion: reduce) {
            *,
            *::before,
            *::after {
                animation-duration: 0.01ms !important;
                animation-iteration-count: 1 !important;
                transition-duration: 0.01ms !important;
            }
        }

        .hero-image{width:100%;margin:0 0 2rem}.hero-image img{width:100%;height:auto;border-radius:12px}.article-image{margin:2rem 0;text-align:center}.article-image img{max-width:100%;height:auto;border-radius:8px}

.site-nav--desktop {
    width: 100%;
    display: flex;
    justify-content: center;
}

.menu-desktop {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; 
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.menu-desktop > li {
    margin: 0 15px; 
}

/* =========================================
   Mobile Menu Styles
   ========================================= */

/* 1. Overlay (Dark background when menu is open) */
.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7); /* Dark semi-transparent dim */
    z-index: 999; /* Below the menu, above content */
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out;
    backdrop-filter: blur(2px); /* Optional: blur effect for modern look */
}

.mobile-menu-overlay.is-active {
    opacity: 1;
    visibility: visible;
}

/* 2. The Menu Container (Sliding panel) */
.mobile-menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 85%; /* Covers most of the screen but leaves a gap */
    max-width: 400px;
    height: 100vh;
    background-color: #1a1a1a; /* Dark background matching your site theme */
    z-index: 1000;
    transform: translateX(100%); /* Hidden off-screen to the right */
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1); /* Smooth slide animation */
    box-shadow: -5px 0 15px rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
}

.mobile-menu.is-open {
    transform: translateX(0); /* Slide in */
}

/* 3. Close Button styling */
.mobile-menu__close {
    align-self: flex-end; /* Position to the right */
    background: transparent;
    border: none;
    font-size: 2.5rem;
    color: #ffffff;
    cursor: pointer;
    padding: 1rem 1.5rem;
    transition: transform 0.2s ease, color 0.2s ease;
}

.mobile-menu__close:hover {
    color: #4cd964; /* Green accent color */
    transform: rotate(90deg); /* slight rotation on hover */
}

/* 4. Menu Items Layout */
.mobile-menu__inner {
    padding: 1rem 2rem;
    overflow-y: auto; /* Scrollable if menu is tall */
}

.menu-mobile {
    list-style: none;
    padding: 0;
    margin: 0;
}

.menu-mobile li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1); 
    opacity: 0; 
    transform: translateY(10px);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.mobile-menu.is-open .menu-mobile li {
    opacity: 1;
    transform: translateY(0);
}
.mobile-menu.is-open .menu-mobile li:nth-child(1) { transition-delay: 0.1s; }
.mobile-menu.is-open .menu-mobile li:nth-child(2) { transition-delay: 0.2s; }
.mobile-menu.is-open .menu-mobile li:nth-child(3) { transition-delay: 0.3s; }
.mobile-menu.is-open .menu-mobile li:nth-child(4) { transition-delay: 0.4s; }
.mobile-menu.is-open .menu-mobile li:nth-child(5) { transition-delay: 0.5s; }

.menu-mobile a {
    display: block;
    padding: 1.2rem 0;
    font-size: 1.125rem;
    font-weight: 600;
    color: #f0f0f0;
    text-decoration: none;
    transition: color 0.2s ease, padding-left 0.2s ease;
}

.menu-mobile a:hover,
.menu-mobile .current-menu-item > a {
    color: #4cd964; 
    padding-left: 10px; 
}



.burger {
    width: 30px; 
    height: 24px; 
    
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 0;
    
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    cursor: pointer;
}

.burger span {
    width: 100%;
    height: 3px; 
    border-radius: 3px;
    background-color: #ffffff;
    transition: all 0.3s ease;
}



@media (min-width: 992px) {
    .burger, .mobile-menu, .mobile-menu-overlay {
        display: none;
    }
}

/* =========================================
   NEW FOOTER STYLES (Dark Theme)
   ========================================= */

/* 1. Main Footer Container */
.site-footer {
    background-color: #121212; /* Very dark, almost black */
    color: #b0b0b0; /* Light grey text */
    padding: 4rem 1rem 2rem;
    font-size: 0.95rem;
    line-height: 1.6;
    border-top: 4px solid #f4d03f; /* Gold top border like reference */
}

/* 2. Grid Layout for Columns */
.footer-widgets-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* Responsive columns */
    gap: 3rem;
    margin-bottom: 3rem;
}

/* 3. Typography */
.footer-heading {
    color: #f4d03f; /* Gold/Yellow color */
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* 4. Lists & Links */
.footer-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-list li {
    margin-bottom: 0.75rem;
    display: flex;
    align-items: flex-start;
}

.footer-list a {
    color: #e0e0e0;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-list a:hover {
    color: #f4d03f; /* Gold on hover */
    text-decoration: underline;
}

/* Warning List Specifics */
.warning-list li {
    color: #ff6b6b; /* Reddish for warnings */
    font-weight: 500;
}

.warning-list a {
    color: #ff6b6b;
    text-decoration: underline;
}

.warning-icon {
    margin-right: 8px;
    font-weight: bold;
}

/* 5. Bottom Area (Disclaimer + Copyright) */
.site-info-wrapper {
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    border-top: 1px solid #333; /* Separator line */
    padding-top: 2rem;
}

.disclaimer-text {
    font-size: 0.8rem;
    color: rgb(255, 255, 255);
    margin-bottom: 1.5rem;
}

.disclaimer-text a {
    color: #dcdcdc
}

.copyright-line {
    font-size: 0.9rem;
    color: #fff;
}

/* =========================================
   404 Page Styles
   ========================================= */

/* Main Container - Centered and Full Height */
.error-404-wrap {
    background-color: #121212; /* Dark background matching footer */
    color: #e0e0e0;
    min-height: 60vh; /* Takes up good amount of screen space */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4rem 1.5rem;
    text-align: center;
}

.error-content {
    max-width: 600px;
    margin: 0 auto;
}

/* Big 404 Number */
.error-code {
    font-size: 8rem;
    line-height: 1;
    font-weight: 900;
    color: #2c2c2c; /* Subtle dark grey */
    margin: 0 0 1rem;
    position: relative;
    /* Optional: Gold Outline or Shadow */
    text-shadow: 2px 2px 0px #f4d03f; 
}

/* Title Styling */
.error-title {
    font-size: 2rem;
    color: #f4d03f; /* Gold accent */
    margin-bottom: 1.5rem;
    font-weight: 700;
    text-transform: uppercase;
}

/* Description Text */
.error-text {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #b0b0b0;
    margin-bottom: 2.5rem;
}

/* Button Styling */
.btn-back-home {
    display: inline-block;
    background-color: #4cd964; /* Green accent */
    color: #000000;
    padding: 1rem 2rem;
    border-radius: 4px;
    font-weight: bold;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.btn-back-home:hover {
    background-color: #f4d03f; /* Gold on hover */
    color: #000;
    transform: translateY(-2px); /* Slight lift effect */
    box-shadow: 0 5px 15px rgba(244, 208, 63, 0.3);
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .error-code {
        font-size: 5rem;
    }
    .error-title {
        font-size: 1.5rem;
    }
}

#crumbs {
    padding: 10px 0;
    margin-bottom: 20px;
    font-size: 14px;
    color: #666;
    text-align: center; 
}

#crumbs a {
    text-decoration: none;
    color: #0073aa; 
}

#crumbs a:hover {
    text-decoration: underline;
}

#crumbs .current {
    font-weight: bold;
    color: rgb(255, 255, 255);
}