/* Mobile layout fixes for reklamamarkazi.uz */
html, body {
    max-width: 100%;
    overflow-x: hidden;
}

img, svg, video {
    max-width: 100%;
    height: auto;
}

.site-main,
.site-main * {
    min-width: 0;
}

@media (max-width: 767px) {
    .site-header-inner {
        flex-wrap: wrap !important;
        gap: 10px !important;
        padding: 12px 14px !important;
    }

    .site-logo {
        font-size: clamp(18px, 5.2vw, 23px) !important;
        line-height: 1.1 !important;
        white-space: nowrap;
    }

    .site-cta {
        margin-left: auto;
        border-radius: 16px !important;
        padding: 10px 13px !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
    }

    .site-nav {
        order: 3;
        display: flex !important;
        width: 100%;
        gap: 12px !important;
        overflow-x: auto;
        padding: 4px 0 2px;
        font-size: 13px !important;
        white-space: nowrap;
        scrollbar-width: none;
    }

    .site-nav::-webkit-scrollbar {
        display: none;
    }

    .site-main section {
        padding-left: 14px !important;
        padding-right: 14px !important;
        padding-top: 42px !important;
        padding-bottom: 42px !important;
    }

    .site-main .grid {
        grid-template-columns: 1fr !important;
    }

    .site-main h1 {
        font-size: clamp(31px, 9vw, 42px) !important;
        line-height: 1.08 !important;
        letter-spacing: -0.02em;
    }

    .site-main h2 {
        font-size: clamp(27px, 7.5vw, 36px) !important;
        line-height: 1.12 !important;
    }

    .site-main h3 {
        line-height: 1.18 !important;
    }

    .site-main p {
        font-size: 15px;
        line-height: 1.65 !important;
    }

    .site-main a,
    .site-main button {
        -webkit-tap-highlight-color: transparent;
    }

    .site-main input,
    .site-main select,
    .site-main textarea {
        font-size: 16px !important;
    }

    .home-hero-grid {
        gap: 28px !important;
        padding-top: 48px !important;
        padding-bottom: 38px !important;
    }

    .home-hero-card {
        border-radius: 24px !important;
        padding: 10px !important;
    }

    .home-hero-preview {
        min-height: 220px;
        border-radius: 20px !important;
    }

    .hero-logo-text {
        font-size: clamp(25px, 8vw, 39px) !important;
        line-height: 1.05 !important;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .hero-logo-subtitle {
        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    .hero-badge {
        position: static !important;
        display: inline-block;
        width: calc(50% - 7px);
        margin-top: 12px;
        padding: 13px !important;
        vertical-align: top;
        border-radius: 20px !important;
    }

    .hero-badge-left {
        margin-right: 10px;
    }

    .site-main [class*="min-h-"] {
        min-height: auto !important;
    }

    .site-main [class*="p-10"] {
        padding: 24px !important;
    }

    .site-main [class*="p-8"] {
        padding: 22px !important;
    }

    .site-main [class*="p-6"] {
        padding: 20px !important;
    }

    .site-main [class*="h-72"] {
        height: 220px !important;
    }

    .site-footer-inner {
        align-items: center !important;
        text-align: center;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}

@media (max-width: 420px) {
    .site-header-inner {
        align-items: stretch !important;
    }

    .site-logo {
        width: 100%;
        text-align: center;
        font-size: 20px !important;
    }

    .site-cta {
        width: 100%;
        margin-left: 0;
        text-align: center;
        justify-content: center;
    }

    .site-nav {
        justify-content: flex-start;
    }

    .site-main section {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .site-main h1 {
        font-size: 29px !important;
    }

    .site-main h2 {
        font-size: 25px !important;
    }

    .hero-badge {
        width: 100%;
        margin-right: 0;
    }

    .home-hero-preview {
        min-height: 190px;
    }

    .hero-logo-text {
        font-size: 25px !important;
    }
}
