/* Mobile Fix */
html, body { overflow-x: hidden !important; max-width: 100% !important; }
* { box-sizing: border-box; }

@media (max-width: 600px) {
    .container, .wrapper, .hero, .hero-content, section, main, header, footer {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    header, nav { flex-wrap: wrap !important; justify-content: center !important; }
    nav ul { flex-wrap: wrap !important; gap: 12px !important; }
    h1 { font-size: clamp(28px, 8vw, 42px) !important; line-height: 1.2 !important; }
    h2 { font-size: clamp(22px, 6vw, 32px) !important; }
    h3 { font-size: clamp(18px, 5vw, 24px) !important; }
    p, li { font-size: clamp(14px, 4vw, 16px) !important; }
    img { max-width: 100% !important; height: auto !important; }
    .grid, .flex, [class*="grid"], [class*="flex"] {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }
    .btn, button, a.button {
        width: 100% !important;
        max-width: 100% !important;
        display: block !important;
        text-align: center !important;
        padding: 14px 20px !important;
    }
    [style*="width:"], [class*="container"], [class*="wrapper"] { max-width: 100% !important; }
    section { padding-top: 40px !important; padding-bottom: 40px !important; }
}
