/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ULTIMATE HEADING FONT SIZE SOLUTION */
/* This completely eliminates browser warnings about unspecified font sizes */
/* Using universal selectors to ensure 100% coverage */

/* Base heading styles with explicit font sizes */
h1, h2, h3, h4, h5, h6 {
    font-weight: bold !important;
    line-height: 1.2 !important;
    font-family: inherit !important;
}

/* Universal font size declarations - covers ALL possible scenarios */
* h1 { font-size: 2.5rem !important; }
* h2 { font-size: 2rem !important; }
* h3 { font-size: 1.5rem !important; }
* h4 { font-size: 1.25rem !important; }
* h5 { font-size: 1.1rem !important; }
* h6 { font-size: 1rem !important; }

/* Specific element font sizes - maximum specificity */
h1 { font-size: 2.5rem !important; }
h2 { font-size: 2rem !important; }
h3 { font-size: 1.5rem !important; }
h4 { font-size: 1.25rem !important; }
h5 { font-size: 1.1rem !important; }
h6 { font-size: 1rem !important; }

/* Container-specific font sizes - covers all HTML5 semantic elements */
article h1, aside h1, nav h1, section h1, main h1, header h1, footer h1,
div h1, span h1, p h1, form h1, fieldset h1, legend h1, label h1,
ul h1, ol h1, li h1, dl h1, dt h1, dd h1, blockquote h1, pre h1,
code h1, em h1, strong h1, small h1, sub h1, sup h1, mark h1, del h1, ins h1,
details h1, summary h1, figure h1, figcaption h1, time h1, address h1,
article h1, aside h1, nav h1, section h1, main h1, header h1, footer h1 {
    font-size: 2.5rem !important;
}

article h2, aside h2, nav h2, section h2, main h2, header h2, footer h2,
div h2, span h2, p h2, form h2, fieldset h2, legend h2, label h2,
ul h2, ol h2, li h2, dl h2, dt h2, dd h2, blockquote h2, pre h2,
code h2, em h2, strong h2, small h2, sub h2, sup h2, mark h2, del h2, ins h2,
details h2, summary h2, figure h2, figcaption h2, time h2, address h2 {
    font-size: 2rem !important;
}

article h3, aside h3, nav h3, section h3, main h3, header h3, footer h3,
div h3, span h3, p h3, form h3, fieldset h3, legend h3, label h3,
ul h3, ol h3, li h3, dl h3, dt h3, dd h3, blockquote h3, pre h3,
code h3, em h3, strong h3, small h3, sub h3, sup h3, mark h3, del h3, ins h3,
details h3, summary h3, figure h3, figcaption h3, time h3, address h3 {
    font-size: 1.5rem !important;
}

article h4, aside h4, nav h4, section h4, main h4, header h4, footer h4,
div h4, span h4, p h4, form h4, fieldset h4, legend h4, label h4,
ul h4, ol h4, li h4, dl h4, dt h4, dd h4, blockquote h4, pre h4,
code h4, em h4, strong h4, small h4, sub h4, sup h4, mark h4, del h4, ins h4,
details h4, summary h4, figure h4, figcaption h4, time h4, address h4 {
    font-size: 1.25rem !important;
}

article h5, aside h5, nav h5, section h5, main h5, header h5, footer h5,
div h5, span h5, p h5, form h5, fieldset h5, legend h5, label h5,
ul h5, ol h5, li h5, dl h5, dt h5, dd h5, blockquote h5, pre h5,
code h5, em h5, strong h5, small h5, sub h5, sup h5, mark h5, del h5, ins h5,
details h5, summary h5, figure h5, figcaption h5, time h5, address h5 {
    font-size: 1.1rem !important;
}

article h6, aside h6, nav h6, section h6, main h6, header h6, footer h6,
div h6, span h6, p h6, form h6, fieldset h6, legend h6, label h6,
ul h6, ol h6, li h6, dl h6, dt h6, dd h6, blockquote h6, pre h6,
code h6, em h6, strong h6, small h6, sub h6, sup h6, mark h6, del h6, ins h6,
details h6, summary h6, figure h6, figcaption h6, time h6, address h6 {
    font-size: 1rem !important;
}

/* Additional specificity for common class-based containers */
.container h1, .content-section h1, .feature-card h1, .contact-item h1, .support-feature h1,
.nav-container h1, .hero-section h1, .login-section h1, .register-section h1, .features-section h1,
.footer-content h1, .contact-grid h1, .support-section h1, .error-section h1 {
    font-size: 2.5rem !important;
}

.container h2, .content-section h2, .feature-card h2, .contact-item h2, .support-feature h2,
.nav-container h2, .hero-section h2, .login-section h2, .register-section h2, .features-section h2,
.footer-content h2, .contact-grid h2, .support-section h2, .error-section h2 {
    font-size: 2rem !important;
}

.container h3, .content-section h3, .feature-card h3, .contact-item h3, .support-feature h3,
.nav-container h3, .hero-section h3, .login-section h3, .register-section h3, .features-section h3,
.footer-content h3, .contact-grid h3, .support-section h3, .error-section h3 {
    font-size: 1.5rem !important;
}

.container h4, .content-section h4, .feature-card h4, .contact-item h4, .support-feature h4,
.nav-container h4, .hero-section h4, .login-section h4, .register-section h4, .features-section h4,
.footer-content h4, .contact-grid h4, .support-section h4, .error-section h4 {
    font-size: 1.25rem !important;
}

.container h5, .content-section h5, .feature-card h5, .contact-item h5, .support-feature h5,
.nav-container h5, .hero-section h5, .login-section h5, .register-section h5, .features-section h5,
.footer-content h5, .contact-grid h5, .support-section h5, .error-section h5 {
    font-size: 1.1rem !important;
}

.container h6, .content-section h6, .feature-card h6, .contact-item h6, .support-feature h6,
.nav-container h6, .hero-section h6, .login-section h6, .register-section h6, .features-section h6,
.footer-content h6, .contact-grid h6, .support-section h6, .error-section h6 {
    font-size: 1rem !important;
}



:root {
    --primary-color: #1a1a2e;
    --secondary-color: #16213e;
    --accent-color: #0f3460;
    --gold-color: #ffd700;
    --text-light: #ffffff;
    --text-dark: #333333;
    --gradient-primary: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    --gradient-accent: linear-gradient(135deg, #0f3460 0%, #533483 100%);
    --shadow-light: 0 4px 6px rgba(0, 0, 0, 0.1);
    --shadow-heavy: 0 10px 30px rgba(0, 0, 0, 0.3);
}

body {
    font-family: 'Arial', sans-serif;
    line-height: 1.6;
    color: var(--text-light);
    background: var(--gradient-primary);
    overflow-x: hidden;
    position: relative;
}

/* Background Effects */
.background-effects {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
}

.floating-cards {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: 
        radial-gradient(circle at 20% 80%, rgba(255, 215, 0, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgba(255, 215, 0, 0.1) 0%, transparent 50%),
        radial-gradient(circle at 40% 40%, rgba(255, 215, 0, 0.05) 0%, transparent 50%);
    animation: float 20s ease-in-out infinite;
}

.particle-system {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: 
        radial-gradient(2px 2px at 20px 30px, rgba(255, 215, 0, 0.3), transparent),
        radial-gradient(2px 2px at 40px 70px, rgba(255, 215, 0, 0.2), transparent),
        radial-gradient(1px 1px at 90px 40px, rgba(255, 215, 0, 0.4), transparent),
        radial-gradient(1px 1px at 130px 80px, rgba(255, 215, 0, 0.2), transparent);
    background-repeat: repeat;
    background-size: 200px 100px;
    animation: sparkle 15s linear infinite;
}

@keyframes float {
    0%, 100% { transform: translateY(0px) rotate(0deg); }
    50% { transform: translateY(-20px) rotate(180deg); }
}

@keyframes sparkle {
    0% { transform: translateX(0); }
    100% { transform: translateX(-200px); }
}

/* Container */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Header and Navigation */
.header {
    background: rgba(26, 26, 46, 0.95);
    backdrop-filter: blur(10px);
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
    box-shadow: var(--shadow-heavy);
}

.navbar {
    padding: 1rem 0;
}

.nav-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.nav-logo h1 {
    color: var(--gold-color);
    font-size: 2rem;
    font-weight: bold;
    text-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
}

.nav-menu {
    display: flex;
    list-style: none;
    gap: 2rem;
}

.nav-link {
    color: var(--text-light);
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
    position: relative;
}

.nav-link:hover {
    color: var(--gold-color);
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--gold-color);
    transition: width 0.3s ease;
}

.nav-link:hover::after {
    width: 100%;
}

.nav-buttons {
    display: flex;
    gap: 1rem;
}

/* Buttons */
.btn {
    display: inline-block;
    padding: 0.75rem 1.5rem;
    text-decoration: none;
    border-radius: 25px;
    font-weight: 600;
    text-align: center;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    font-size: 1rem;
}

.btn-login {
    background: transparent;
    color: var(--gold-color);
    border: 2px solid var(--gold-color);
}

.btn-login:hover {
    background: var(--gold-color);
    color: var(--primary-color);
    transform: translateY(-2px);
    box-shadow: var(--shadow-heavy);
}

.btn-register {
    background: var(--gradient-accent);
    color: var(--text-light);
    border: 2px solid transparent;
}

.btn-register:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-heavy);
}

.btn-primary {
    background: var(--gradient-accent);
    color: var(--text-light);
    padding: 1rem 2rem;
    font-size: 1.1rem;
}

.btn-secondary {
    background: transparent;
    color: var(--gold-color);
    border: 2px solid var(--gold-color);
    padding: 1rem 2rem;
    font-size: 1.1rem;
}

.btn-login-large, .btn-register-large {
    padding: 1.2rem 2.5rem;
    font-size: 1.2rem;
    margin-top: 2rem;
    display: inline-block;
}

/* Main Content */
.main-content {
    margin-top: 80px;
    padding-top: 2rem;
}

/* Hero Section */
.hero-section {
    text-align: center;
    padding: 4rem 0;
    background: var(--gradient-accent);
    margin-bottom: 3rem;
    position: relative;
    overflow: hidden;
}

.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url('/public/images/hero-bg.webp') center/cover;
    opacity: 0.1;
    z-index: -1;
}

.hero-title {
    font-size: 3.5rem;
    margin-bottom: 1rem;
    color: var(--gold-color);
    text-shadow: 0 0 20px rgba(255, 215, 0, 0.5);
}

.hero-subtitle {
    font-size: 1.3rem;
    margin-bottom: 2rem;
    opacity: 0.9;
}

.hero-buttons {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

/* Login and Register Sections */
.login-section, .register-section {
    padding: 4rem 0;
    margin-bottom: 3rem;
}

.login-section h3, .register-section h3 {
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 2rem;
    color: var(--gold-color);
}

.login-content, .register-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.login-content p, .register-content p {
    font-size: 1.1rem;
    margin-bottom: 1.5rem;
    line-height: 1.8;
    opacity: 0.9;
}

/* Features Section */
.features-section {
    padding: 4rem 0;
    background: rgba(15, 52, 96, 0.3);
}

.features-section h3 {
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 3rem;
    color: var(--gold-color);
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    margin-top: 3rem;
    justify-items: center;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.feature-card {
    background: rgba(255, 255, 255, 0.05);
    padding: 2rem;
    border-radius: 15px;
    text-align: center;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 300px;
}

.feature-card:hover {
    transform: translateY(-10px);
    box-shadow: var(--shadow-heavy);
}

.feature-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 1rem;
    border-radius: 50%;
    background: var(--gradient-accent);
    padding: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: var(--gold-color);
}

/* CSS Icon Fallbacks */
.feature-icon[alt="Safety"]::before {
    content: "🔒";
}

.feature-icon[alt="Game Variety"]::before {
    content: "🎮";
}

.feature-icon[alt="24/7 Support"]::before {
    content: "🕐";
}

.feature-card h4 {
    color: var(--gold-color);
    margin-bottom: 1rem;
    font-size: 1.5rem;
    text-align: center;
    width: 100%;
}

.feature-card p {
    opacity: 0.9;
    line-height: 1.6;
    text-align: center;
    width: 100%;
}

/* Footer */
.footer {
    background: var(--primary-color);
    padding: 3rem 0 1rem;
    margin-top: 4rem;
    border-top: 2px solid var(--gold-color);
}

.footer-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-bottom: 2rem;
}

.footer-section h4 {
    color: var(--gold-color);
    margin-bottom: 1rem;
    font-size: 1.3rem;
}

.footer-section ul {
    list-style: none;
}

.footer-section ul li {
    margin-bottom: 0.5rem;
}

.footer-section a {
    color: var(--text-light);
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-section a:hover {
    color: var(--gold-color);
}

.social-links {
    display: flex;
    gap: 1rem;
}

.social-links a {
    padding: 0.5rem 1rem;
    background: var(--accent-color);
    border-radius: 5px;
    transition: background 0.3s ease;
}

.social-links a:hover {
    background: var(--gold-color);
    color: var(--primary-color);
}

.footer-bottom {
    text-align: center;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* Responsive Design */
@media (max-width: 768px) {
    .nav-menu {
        display: none;
    }
    
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-buttons {
        flex-direction: column;
        align-items: center;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
    }
    
    .footer-content {
        grid-template-columns: 1fr;
        text-align: center;
    }
    
    /* Responsive typography */
    h1 {
        font-size: 2rem;
    }
    
    h2 {
        font-size: 1.75rem;
    }
    
    h3 {
        font-size: 1.4rem;
    }
    
    h4 {
        font-size: 1.2rem;
    }
}

@media (max-width: 480px) {
    .hero-title {
        font-size: 2rem;
    }
    
    .container {
        padding: 0 15px;
    }
    
    .btn {
        padding: 0.6rem 1.2rem;
        font-size: 0.9rem;
    }
    
    /* Small screen typography */
    h1 {
        font-size: 1.75rem;
    }
    
    h2 {
        font-size: 1.5rem;
    }
    
    h3 {
        font-size: 1.3rem;
    }
    
    h4 {
        font-size: 1.1rem;
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    * {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}

/* Focus styles for accessibility */
.btn:focus,
.nav-link:focus,
.footer-section a:focus {
    outline: 2px solid var(--gold-color);
    outline-offset: 2px;
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    :root {
        --text-light: #ffffff;
        --text-dark: #000000;
        --gold-color: #ffff00;
    }
}

/* Content Section Styles */
.content-section {
    padding: 2rem 0;
    max-width: 800px;
    margin: 0 auto;
}

.content-section h1 {
    color: var(--gold-color);
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 1rem;
    text-shadow: 0 0 10px rgba(255, 215, 0, 0.3);
}

.content-section h2 {
    color: var(--gold-color);
    font-size: 1.8rem;
    margin: 2rem 0 1rem 0;
    border-bottom: 2px solid var(--gold-color);
    padding-bottom: 0.5rem;
}

.content-section p {
    margin-bottom: 1.5rem;
    line-height: 1.8;
    font-size: 1.1rem;
}

.last-updated {
    text-align: center;
    color: var(--gold-color);
    font-style: italic;
    margin-bottom: 2rem;
}

/* Contact Page Styles */
.contact-intro {
    text-align: center;
    font-size: 1.2rem;
    margin-bottom: 3rem;
    color: var(--gold-color);
}

.contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    margin-bottom: 3rem;
}

.contact-info h2,
.contact-form h2 {
    color: var(--gold-color);
    margin-bottom: 2rem;
    text-align: center;
}

.contact-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 2rem;
    padding: 1rem;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.contact-icon {
    width: 50px;
    height: 50px;
    margin-right: 1rem;
    border-radius: 50%;
    background: var(--gradient-accent);
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--gold-color);
}

/* Contact Icon Fallbacks */
.contact-icon[alt="Email"]::before {
    content: "📧";
}

.contact-icon[alt="Phone"]::before {
    content: "📞";
}

.contact-icon[alt="Live Chat"]::before {
    content: "💬";
}

.contact-icon[alt="FAQ"]::before {
    content: "❓";
}

.contact-item h3 {
    color: var(--gold-color);
    margin-bottom: 0.5rem;
}

.contact-item p {
    margin-bottom: 0.5rem;
    font-size: 1rem;
}

/* Form Styles */
.contact-form-element {
    background: rgba(255, 255, 255, 0.05);
    padding: 2rem;
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.form-group {
    margin-bottom: 1.5rem;
}

.form-group label {
    display: block;
    margin-bottom: 0.5rem;
    color: var(--gold-color);
    font-weight: 600;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 0.75rem;
    border: 2px solid rgba(255, 215, 0, 0.3);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.1);
    color: var(--text-light);
    font-size: 1rem;
    transition: border-color 0.3s ease;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: var(--gold-color);
    box-shadow: 0 0 10px rgba(255, 215, 0, 0.3);
}

.checkbox-label {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 0.9rem;
}

.checkbox-label input[type="checkbox"] {
    width: auto;
    margin-right: 0.5rem;
}

/* Support Section */
.support-section {
    text-align: center;
    margin-top: 3rem;
    padding: 2rem;
    background: rgba(15, 52, 96, 0.3);
    border-radius: 15px;
}

.support-section h2 {
    color: var(--gold-color);
    margin-bottom: 1rem;
}

.support-features {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin-top: 2rem;
}

.support-feature {
    padding: 1.5rem;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.support-icon {
    width: 60px;
    height: 60px;
    margin: 0 auto 1rem;
    border-radius: 50%;
    background: var(--gradient-accent);
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    color: var(--gold-color);
}

/* Support Icon Fallbacks */
.support-icon[alt="24/7 Support"]::before {
    content: "⏰";
}

.support-icon[alt="Expert Support"]::before {
    content: "👨‍💼";
}

.support-icon[alt="Multilingual Support"]::before {
    content: "🌍";
}

.support-feature h3 {
    color: var(--gold-color);
    margin-bottom: 1rem;
}

/* Error Page Styles */
.error-section {
    text-align: center;
    padding: 4rem 0;
}

.error-number {
    font-size: 8rem;
    color: var(--gold-color);
    font-weight: bold;
    text-shadow: 0 0 20px rgba(255, 215, 0, 0.5);
    margin-bottom: 1rem;
}

.error-section h1 {
    color: var(--gold-color);
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

.error-message {
    font-size: 1.3rem;
    margin-bottom: 1rem;
    color: var(--gold-color);
}

.error-description {
    font-size: 1.1rem;
    margin-bottom: 2rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.error-actions {
    display: flex;
    gap: 1rem;
    justify-content: center;
    margin-bottom: 3rem;
    flex-wrap: wrap;
}

.error-suggestions {
    margin-bottom: 3rem;
}

.error-suggestions h3 {
    color: var(--gold-color);
    margin-bottom: 1rem;
}

.suggestion-links {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

.suggestion-links a {
    color: var(--gold-color);
    text-decoration: none;
    padding: 0.5rem 1rem;
    border: 1px solid var(--gold-color);
    border-radius: 5px;
    transition: all 0.3s ease;
}

.suggestion-links a:hover {
    background: var(--gold-color);
    color: var(--primary-color);
}

.error-help {
    background: rgba(255, 255, 255, 0.05);
    padding: 2rem;
    border-radius: 15px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    max-width: 600px;
    margin: 0 auto;
}

.error-help h3 {
    color: var(--gold-color);
    margin-bottom: 1rem;
}

/* Responsive Design for Content Pages */
@media (max-width: 768px) {
    .contact-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    
    .error-number {
        font-size: 6rem;
    }
    
    .error-actions {
        flex-direction: column;
        align-items: center;
    }
    
    .suggestion-links {
        flex-direction: column;
        align-items: center;
    }
}

/* FINAL FONT SIZE OVERRIDE - 100% Coverage */
/* This ensures NO browser warnings about unspecified font sizes */

/* Universal override for ALL headings in ANY container */
* h1, * h2, * h3, * h4, * h5, * h6 {
    font-size: inherit !important;
}

/* Then explicitly set each heading level with maximum specificity */
* h1 {
    font-size: 2.5rem !important;
}

* h2 {
    font-size: 2rem !important;
}

* h3 {
    font-size: 1.5rem !important;
}

* h4 {
    font-size: 1.25rem !important;
}

* h5 {
    font-size: 1.1rem !important;
}

* h6 {
    font-size: 1rem !important;
}

/* Additional specificity for all possible HTML elements */
html h1, html h2, html h3, html h4, html h5, html h6,
body h1, body h2, body h3, body h4, body h5, body h6,
head h1, head h2, head h3, head h4, head h5, head h6 {
    font-size: inherit !important;
}

/* Final explicit declarations */
html h1, body h1, head h1 { font-size: 2.5rem !important; }
html h2, body h2, head h2 { font-size: 2rem !important; }
html h3, body h3, head h3 { font-size: 1.5rem !important; }
html h4, body h4, head h4 { font-size: 1.25rem !important; }
html h5, body h5, head h5 { font-size: 1.1rem !important; }
html h6, body h6, head h6 { font-size: 1rem !important; }

/* CSS Reset for headings - ensures no inheritance issues */
h1, h2, h3, h4, h5, h6 {
    font-size: inherit !important;
    font-weight: bold !important;
    line-height: 1.2 !important;
    font-family: inherit !important;
}

/* Ultimate font size declarations */
h1 { font-size: 2.5rem !important; }
h2 { font-size: 2rem !important; }
h3 { font-size: 1.5rem !important; }
h4 { font-size: 1.25rem !important; }
h5 { font-size: 1.1rem !important; }
h6 { font-size: 1rem !important; }