/* Marketing site — mobile layout fixes (home, header, footer) */

.mcw-header-logo {
    max-width: 80%;
    width: auto;
    height: auto;
}

/* ---- Header: reduce top/bottom white space on mobile ---- */
@media screen and (max-width: 991px) {
    .header-one {
        padding: 12px 0 8px;
    }

    .header-one .header-navigation {
        padding: 0 12px;
    }

    .header-one .header-navigation .nav-inner-menu {
        margin-top: 0;
        padding: 10px 14px;
    }

    .mcw-header-logo {
        max-width: 148px;
    }
}

@media screen and (max-width: 575.98px) {
    .mcw-header-logo {
        max-width: 128px;
    }
}

/* ---- Stacked CTA buttons: add gap so they do not touch ---- */
.hero-button,
.cta-button,
.benifit-butotn,
.faq-sf .section-content-box .mcw-btn-group {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

@media (max-width: 767.98px) {
    .hero-button,
    .cta-button,
    .benifit-butotn,
    .faq-sf .section-content-box .mcw-btn-group {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .hero-button .theme-btn,
    .cta-button .theme-btn,
    .benifit-butotn .theme-btn,
    .faq-sf .section-content-box .mcw-btn-group .theme-btn {
        width: 100%;
        justify-content: center;
    }

    /* Fallback when buttons are siblings without a wrapper */
    .faq-sf .section-content-box > a.theme-btn + a.theme-btn {
        margin-top: 12px;
    }
}

/* ---- Hero: tighten padding so the page is not overly tall ---- */
@media screen and (max-width: 991px) {
    .hero-sf {
        padding: 36px 0 48px;
        border-radius: 12px;
        margin: 0 8px;
    }

    .hero-sf .hero-content {
        margin-top: 0;
        margin-bottom: 28px;
        padding: 0 8px;
    }

    .hero-sf .hero-content h1 {
        margin-bottom: 18px;
        font-size: 28px;
        line-height: 1.25;
    }

    .hero-sf .hero-content > h5 {
        margin-bottom: 22px;
        line-height: 1.5;
        font-size: 15px;
    }

    .avatar-rating-box {
        padding: 0 8px;
    }

    .avatar-rating-box .rating-box {
        margin-top: 24px;
    }
}

@media (max-width: 767.98px) {
    .hero-sf {
        padding: 28px 0 40px;
        margin: 0 6px;
    }

    /* Client logos row under hero */
    .client-sf.pt-130 {
        padding-top: 36px !important;
    }

    .client-sf h5 {
        font-size: 15px;
        line-height: 1.45;
        margin-bottom: 20px;
        padding: 0 4px;
    }

    .client-logos-row {
        --bs-gutter-x: 0.75rem;
        --bs-gutter-y: 0.75rem;
        justify-content: center;
        align-items: center;
    }

    .client-logos-row > [class*="col-"] {
        padding-top: 0.35rem !important;
        padding-bottom: 0.35rem !important;
        margin-top: 0 !important;
    }

    .client-logos-row .client-logo-img {
        display: block;
        width: 100%;
        max-width: 110px;
        max-height: 48px;
        height: auto;
        margin-left: auto;
        margin-right: auto;
        object-fit: contain;
    }

    .client-logos-row .client-logo-img.bg-light {
        max-width: 120px;
        max-height: 56px;
        padding: 4px 6px;
    }

    /* Section vertical rhythm — less empty scroll */
    .key-features-sf.pt-120,
    .why-choose-sf.pt-120,
    .features-sf-two.pt-130,
    .testimonial-sf.pt-130 {
        padding-top: 48px !important;
    }

    .key-features-sf.pb-120,
    .why-choose-sf.pb-100,
    .features-sf-two.pb-90,
    .testimonial-sf.pb-130,
    .benefit-sf.pb-80,
    .faq-sf.pb-80 {
        padding-bottom: 48px !important;
    }

    .cta-sf {
        margin-top: 0.5rem !important;
    }

    .cta-sf .cta-wrapper {
        padding-top: 40px !important;
        padding-left: 20px;
        padding-right: 20px;
        border-radius: 12px;
    }

    .cta-sf .section-content-box h2 {
        margin-bottom: 18px;
        font-size: 24px;
        line-height: 1.3;
    }

    .cta-sf .section-content-box p {
        margin-bottom: 22px;
        margin-left: auto;
        margin-right: auto;
    }

    .cta-sf .cta-button {
        margin-bottom: 20px !important;
    }

    .faq-sf.pt-30 {
        padding-top: 24px !important;
    }
}

/* Tablet logos (still stacked full-width without col-6) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .client-sf.pt-130 {
        padding-top: 56px !important;
    }

    .client-logos-row .client-logo-img {
        display: block;
        max-width: 140px;
        max-height: 56px;
        width: 100%;
        height: auto;
        margin-left: auto;
        margin-right: auto;
        object-fit: contain;
    }
}

/* ---- Footer copyright nav alignment + chat widget clearance ---- */
@media (max-width: 767.98px) {
    .fintech-footer .footer-widget-area {
        padding-top: 32px !important;
        padding-bottom: 12px !important;
    }

    .fintech-footer .footer-widget {
        text-align: center;
    }

    .fintech-footer .footer-about-widget .footer-content img {
        max-width: 160px;
        height: auto;
    }

    .fintech-footer .footer-nav-widget .text-center,
    .fintech-footer .footer-newsletter-widget {
        text-align: center;
    }

    .footer-features-cols {
        max-width: 100%;
    }

    .footer-features-cols .footer-nav {
        text-align: left;
    }

    .footer-copyright {
        padding: 20px 12px 88px;
    }

    .footer-copyright .copyright-text {
        text-align: center;
        margin-bottom: 12px;
    }

    .footer-copyright .copyright-nav {
        float: none !important;
        width: 100%;
        text-align: center;
    }

    .footer-copyright .copyright-nav ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 10px 14px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .footer-copyright .copyright-nav ul li {
        display: inline-flex;
        margin-right: 0 !important;
    }

    .footer-copyright .copyright-nav ul li a {
        white-space: nowrap;
        font-size: 13px;
        line-height: 1.3;
        padding: 2px 0;
    }
}
