html,
body,
#__next {
    min-height: 100%;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    background: #0e1423;
    font-family: "Microsoft YaHei", Arial, Helvetica, sans-serif;
}

a {
    text-decoration: none;
}

button {
    font: inherit;
}

.style_headerWrapper__2hx0y {
    position: fixed !important;
    inset: 0 0 auto 0 !important;
    z-index: 1000 !important;
}

.style_navBar__N2AKW {
    height: 80px !important;
    background: rgba(14, 20, 35, .18);
    backdrop-filter: blur(4px);
    transition: background .2s ease, box-shadow .2s ease;
}

.style_headerWrapper__2hx0y.scrolled .style_navBar__N2AKW,
.style_headerWrapper__2hx0y.menu-open .style_navBar__N2AKW {
    background: rgba(14, 20, 35, .92);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .16);
}

.style_navSafeWidth__23xWV {
    width: min(100% - 72px, 1440px) !important;
    height: 80px !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
}

.style_logo__pTh4C {
    height: 38px !important;
    width: auto !important;
    display: block;
}

.qf-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #5e77ff;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
    white-space: nowrap;
}

.qf-nav {
    flex: 1;
    justify-content: center;
}

.qf-nav a {
    cursor: pointer;
}

.qf-header-product {
    flex: 0 0 auto;
}

.qf-header-product .style_loginBtn__1jdDm {
    min-width: 154px;
    padding: 0 20px;
}

.qf-menu-toggle {
    display: none;
    width: 42px;
    height: 42px;
    padding: 10px;
    background: transparent;
    border: 0;
    cursor: pointer;
}

.qf-menu-toggle span {
    display: block;
    height: 2px;
    margin: 5px 0;
    background: #fff;
}

.style_content__2Y_9B {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 100vh;
    display: block !important;
    background: #e4e6ed !important;
}

.style_swiperContainer__2HgI7,
.swiper-container {
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
}

.swiper-wrapper {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    transform: none !important;
}

.swiper-slide {
    width: 100% !important;
    height: auto !important;
    min-height: 100vh;
    overflow: hidden;
}

.qf-slide {
    height: 100vh !important;
    min-height: 760px;
}

.style_animateBlock__2z8-0 {
    opacity: 1 !important;
    transform: none !important;
}

.qf-hero-bg {
    inset: 0;
    width: 100%;
    overflow: hidden;
}

.qf-hero-bg img {
    width: 100vw;
    height: 100vh;
    min-height: 760px;
    object-fit: cover;
}

.qf-hero-text {
    width: min(82vw, 1080px) !important;
    padding-top: 23vh !important;
    color: #fff;
    text-align: center;
}

.qf-hero-text h1 {
    margin: 0 auto;
    max-width: 1040px;
    color: #f7f8ff;
    font-family: "PingFang SC", "Microsoft YaHei", Arial, Helvetica, sans-serif;
    font-size: clamp(34px, 5.35vh, 58px);
    line-height: 1.18;
    font-weight: 500;
    letter-spacing: 0;
    text-shadow: 0 10px 24px rgba(0, 0, 0, .38);
}

.qf-hero-title-main,
.qf-hero-title-focus {
    display: block;
}

.qf-hero-text p {
    max-width: 980px;
    margin: 2.1vh auto 0;
    color: rgba(255, 255, 255, .82);
    font-size: clamp(14px, 1.85vh, 20px);
    line-height: 1.8;
}

.qf-hero-actions {
    margin-top: 3.8vh !important;
    flex-direction: column;
    align-items: center;
    gap: 1.55vh;
}

.qf-hero-actions .style_dbWrapper__KoApF {
    margin-right: 0 !important;
    display: flex;
    justify-content: center;
}

.qf-hero-actions .style_downBtn__3bGKH,
.qf-hero-actions .style_downOthers__c8aXn {
    width: 25.4vh !important;
    box-sizing: border-box;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 1vh;
    white-space: nowrap;
    color: #fff !important;
    font-family: "PingFang SC", "Microsoft YaHei", Arial, Helvetica, sans-serif;
    font-weight: 700;
    letter-spacing: 0;
}

.qf-hero-actions .style_downBtn__3bGKH {
    min-width: 25.4vh !important;
    height: 6.65vh !important;
    padding: 0 3.35vh !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(100deg, #7549ff 0%, #4776ff 100%) !important;
    box-shadow: 0 1.55vh 3.6vh rgba(75, 89, 255, .28);
}

.qf-hero-actions .style_downBtn__3bGKH::before {
    content: "";
    width: 2.15vh;
    height: 2.55vh;
    flex: 0 0 auto;
    background: url("../assets/quickfox/android.png") center / contain no-repeat;
}

.qf-hero-actions .style_downBtn__3bGKH[data-os="iOS"]::before,
.qf-hero-actions .style_downBtn__3bGKH[data-os="Mac"]::before {
    background-image: url("../assets/quickfox/ios.png");
}

.qf-hero-actions .style_downBtn__3bGKH[data-os="Windows"]::before {
    width: 2.35vh;
    height: 2.35vh;
    background-image: url("../assets/quickfox/downloadIcon.f556987a28957421d2273fbb09f20012.png");
}

.qf-link-pill {
    text-decoration: none;
    min-width: 25.4vh;
    height: 6.65vh;
    padding: 0 3.35vh;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(4, 9, 24, .52) !important;
    box-shadow: inset 0 0 24px rgba(255, 255, 255, .03), 0 12px 34px rgba(0, 0, 0, .24);
    backdrop-filter: blur(8px);
}

.qf-link-pill img {
    width: 2.25vh !important;
    height: 2.25vh !important;
    margin-right: 0 !important;
}

.style_firstScreenAnimate__3d_lE {
    pointer-events: none;
}

.style_title__3LgOf {
    letter-spacing: 0;
}

.style_subTitle__3gwGf {
    max-width: 55vh;
    line-height: 1.6 !important;
}

.qf-wide-subtitle {
    max-width: 60vh;
}

.qf-feature-copy {
    width: 61vh;
    max-width: 61vh;
}

.qf-feature-copy .qf-feature-subtitle {
    max-width: 59vh;
    color: #6c707e;
}

.qf-feature-grid {
    width: min(60vh, 640px);
    margin-top: 4vh;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.45vh;
}

.qf-feature-grid article {
    min-height: 13.4vh;
    padding: 1.55vh 1.35vh;
    display: flex;
    align-items: flex-start;
    gap: 1.05vh;
    border: 1px solid rgba(255, 255, 255, .86);
    border-radius: 8px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 1.6vh 4.8vh rgba(72, 93, 154, .12);
    backdrop-filter: blur(10px);
}

.qf-feature-grid img {
    width: 2.45vh;
    height: 2.45vh;
    margin-top: .18vh;
    flex: 0 0 auto;
}

.qf-feature-grid strong {
    display: block;
    color: #191a20;
    font-size: 1.78vh;
    line-height: 1.25;
}

.qf-feature-grid p {
    margin: .58vh 0 0;
    color: #6c707e;
    font-size: 1.28vh;
    line-height: 1.55;
}

.qf-feature-visual {
    pointer-events: none;
}

.qf-clients-slide {
    min-height: 100vh;
    padding: 12vh 18px 9vh;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #eef2fb;
    background-size: cover;
    background-position: center;
}

.qf-clients-content {
    width: min(100%, 980px);
    margin: 0 auto;
    text-align: center;
}

.qf-clients-copy h2 {
    margin: 0;
    color: #191a20;
    font-family: "PingFang SC", "Microsoft YaHei", Arial, Helvetica, sans-serif;
    font-size: clamp(34px, 4.7vh, 52px);
    line-height: 1.2;
    font-weight: 500;
    letter-spacing: 0;
}

.qf-clients-copy p {
    max-width: 760px;
    margin: 3.2vh auto 0;
    color: #a8abb7;
    font-size: clamp(15px, 1.85vh, 19px);
    line-height: 1.85;
    font-weight: 700;
}

.qf-clients-grid {
    width: min(100%, 756px);
    margin: 6.2vh auto 0;
    display: grid;
    grid-template-columns: repeat(3, 168px);
    justify-content: center;
    gap: 28px;
}

.qf-client-card {
    height: 112px;
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid rgba(255, 255, 255, .9);
    border-radius: 8px;
    background: rgba(255, 255, 255, .76);
    box-shadow: 0 12px 24px rgba(154, 170, 214, .28);
    color: #252832;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.qf-client-card:hover {
    transform: translateY(-4px);
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 18px 34px rgba(124, 145, 210, .32);
}

.qf-client-card img {
    width: 32px;
    height: 32px;
    object-fit: contain;
}

.qf-client-card .qf-client-win {
    filter: invert(24%) sepia(10%) saturate(590%) hue-rotate(187deg) brightness(92%) contrast(91%);
}

.qf-client-card span:last-child {
    color: #252832;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 600;
}

.qf-icon-row > div > div {
    line-height: 1.35 !important;
}

.qf-stat-grid > div {
    overflow: hidden;
}

.qf-stat-grid > div > div {
    max-width: 18vh;
    line-height: 1.35;
}

.qf-second-copy {
    width: 55vh;
    margin: 2.6vh 0 0;
    color: #6c707e;
    font-size: 1.55vh;
    line-height: 1.7;
}

.qf-center-copy {
    max-width: 120vh;
}

.qf-center-copy .style_subTitle__3gwGf {
    max-width: 104vh;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.8 !important;
}

.qf-faq-heading {
    padding-top: 18vh !important;
}

.qf-faq-wrap {
    margin-top: 7vh !important;
}

.qf-faq-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3vh;
}

.qf-faq-grid article {
    width: 43vh !important;
    min-height: 30vh !important;
    padding: 3.1vh 3.3vh 3.4vh;
    background: linear-gradient(-90deg, #eff3ff, #f7f4ff, #f6f8ff);
    border: .185vh solid #fff;
    box-shadow: 0 1.11vh 1.67vh 0 rgba(174, 188, 229, .35);
    border-radius: .74vh;
    color: #191a20;
    text-align: left;
}

.qf-faq-grid article img {
    width: 5.2vh;
    height: 5.2vh;
    display: block;
    margin-bottom: 2vh;
}

.qf-faq-grid article h3 {
    margin: 0;
    font-size: 2vh;
    line-height: 1.45;
    font-weight: 700;
}

.qf-faq-grid article p {
    margin: 1.8vh 0 0;
    color: #6c707e;
    font-size: 1.55vh;
    line-height: 1.75;
}

.qf-footer-slide {
    min-height: auto;
    background: #191a20;
}

.qf-site-footer {
    background: #191a20;
    padding: 30px 8vw 32px;
}

.qf-site-footer-inner {
    width: min(100%, 1180px);
    margin: 0 auto;
}

.qf-legal-footer {
    min-height: 100vh;
    padding: 12vh 8vw 7vh !important;
    box-sizing: border-box;
    background: #191a20;
}

.qf-legal-grid {
    width: min(100%, 1180px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5vh;
    text-align: left;
}

.qf-legal-grid article {
    padding: 3.6vh 3.8vh;
    background: rgba(255, 255, 255, .035);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: .74vh;
}

.qf-legal-grid h2 {
    margin: 0 0 2.4vh;
    color: #fff;
    font-size: 3.2vh;
    line-height: 1.25;
    font-weight: 700;
}

.qf-legal-grid p {
    margin: 0 0 1.8vh;
    color: #aaabb1;
    font-size: 1.55vh;
    line-height: 1.8;
}

.qf-footer-nav {
    margin-top: 5vh;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.1vh;
    color: #aaabb1;
    font-size: 1.66vh;
}

.qf-site-footer .qf-footer-nav {
    margin-top: 0;
    justify-content: flex-start;
    gap: 14px;
    font-size: 16px;
    line-height: 1.6;
}

.qf-footer-nav a {
    color: #aaabb1;
}

.qf-footer-nav a:hover {
    color: #fff;
}

.qf-footer-nav span {
    width: .09vh;
    height: 1.48vh;
    background: #414450;
}

.qf-site-footer .qf-footer-nav span {
    width: 1px;
    height: 16px;
}

.qf-footer-product {
    margin-top: 3.7vh;
    color: #aaabb1;
    text-align: center;
    font-size: 1.3vh;
}

.qf-site-footer .qf-footer-product {
    margin-top: 26px;
    text-align: left;
    font-size: 14px;
    line-height: 1.6;
}

body.qf-subpage {
    background: #0e1423;
    padding-bottom: 70px !important; /* Ensure content clears the fixed footer */
}

/* Secondary Pages: Fixed Bottom Footer Navigation */
body.qf-subpage .qf-site-footer {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    flex: 0 0 auto !important;
    padding: 10px 16px 14px !important;
    background: rgba(11, 17, 32, 0.95) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    display: block !important;
}

body.qf-subpage .qf-site-footer .qf-footer-nav {
    justify-content: center !important;
    gap: 10px !important;
    font-size: 12.5px !important;
    margin: 0 !important;
}

body.qf-subpage .qf-site-footer .qf-footer-product {
    text-align: center !important;
    margin-top: 6px !important;
    font-size: 11px !important;
}

body.qf-subpage .style_navBar__N2AKW {
    background: rgba(14, 20, 35, .92);
    box-shadow: 0 10px 28px rgba(0, 0, 0, .16);
}

.qf-subpage-main {
    width: 100%;
    overflow: hidden;
}

.qf-info-section {
    min-height: 100vh;
    box-sizing: border-box;
    padding: 120px 18px 76px;
    background-size: cover;
    background-position: center;
    /* Removed scroll-margin-top because the 120px padding-top already provides perfect clearance below the fixed header */
}

.qf-info-copy {
    width: min(100%, 960px);
    margin: 0 auto;
    text-align: center;
}

.qf-info-copy h1,
.qf-info-legal-grid h1 {
    margin: 0;
    font-size: 38px;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: 0;
}

.qf-info-copy p {
    margin: 34px auto 0;
    color: #5f687e;
    font-size: 18px;
    line-height: 2;
}

.qf-info-copy-light h1,
.qf-info-copy-light p {
    color: #fff;
}

.qf-info-about {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #0e1423;
}

.qf-info-about .qf-info-copy {
    max-width: 820px;
}

.qf-info-visual {
    width: min(86vw, 760px);
    margin: 46px auto 0;
    display: flex;
    justify-content: center;
}

.qf-info-visual img {
    width: 100%;
    height: auto;
    display: block;
}

.qf-info-faq {
    background-color: #eef2fb;
}

.qf-info-faq-grid {
    width: min(100%, 1120px);
    margin: 54px auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
}

.qf-info-faq-grid article {
    min-height: 340px;
    box-sizing: border-box;
    padding: 44px 48px 50px;
    background: linear-gradient(-90deg, #eff3ff, #f7f4ff, #f6f8ff);
    border: 1px solid #fff;
    box-shadow: 0 12px 18px rgba(174, 188, 229, .35);
    border-radius: 8px;
    color: #191a20;
}

.qf-info-faq-grid img {
    width: 56px;
    height: 56px;
    display: block;
    margin-bottom: 28px;
}

.qf-info-faq-grid h2 {
    margin: 0;
    color: #191a20;
    font-size: 22px;
    line-height: 1.45;
}

.qf-info-faq-grid p {
    margin: 24px 0 0;
    color: #6c707e;
    font-size: 16px;
    line-height: 1.9;
}

.qf-info-legal {
    min-height: auto;
    padding-bottom: 62px;
    background: #191a20;
}

.qf-info-legal-grid {
    width: min(100%, 1180px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 46px;
    text-align: left;
}

.qf-info-legal-grid article {
    box-sizing: border-box;
    padding: 44px 46px;
    background: rgba(255, 255, 255, .035);
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 8px;
}

.qf-info-legal-grid article[id] {
    scroll-margin-top: 78px; /* Reduced from 96px to match section padding offsets perfectly */
}

.qf-info-legal-grid h1 {
    margin-bottom: 30px;
    color: #fff;
}

.qf-info-legal-grid p {
    margin: 0 0 24px;
    color: #aaabb1;
    font-size: 17px;
    line-height: 1.85;
}

.qf-to-top {
    position: fixed;
    right: 50px;
    bottom: 52px;
    z-index: 999;
    width: 62px;
    height: 62px;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
}

.qf-to-top img {
    width: 62px;
    height: 62px;
    display: block;
}

.modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(0, 0, 0, .58);
    backdrop-filter: blur(4px);
}

.modal-overlay.active {
    display: flex;
}

.modal-box {
    position: relative;
    width: min(100%, 500px);
    padding: 34px 38px 30px;
    color: #111827;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 24px 80px rgba(0, 0, 0, .26);
    animation: modalIn .24s ease both;
}

@keyframes modalIn {
    from {
        transform: translateY(18px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.modal-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    color: #9ca3af;
    background: transparent;
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
}

.modal-close:hover {
    color: #111827;
}

.modal-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: #5e77ff;
    font-size: 18px;
    font-weight: 800;
}

.modal-brand img {
    display: block;
    height: 36px;
    width: auto;
    object-fit: contain;
}

.modal-box h3 {
    margin: 0 0 8px;
    font-size: 24px;
    line-height: 1.25;
}

.modal-desc {
    margin: 0 0 22px;
    color: #5f6673;
    font-size: 14px;
    line-height: 1.7;
}

.modal-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    margin-bottom: 24px;
    color: #7c8595;
    font-size: 12px;
}

.modal-download {
    width: 100%;
    min-height: 56px;
    border: 0;
    color: #fff;
    background: linear-gradient(100deg, #7549ff 0%, #4776ff 100%);
    border-radius: 6px;
    font-size: 18px;
    font-weight: 800;
    cursor: pointer;
    transition: transform .18s ease, opacity .18s ease;
}

.modal-download:hover {
    opacity: .92;
    transform: translateY(-1px);
}

.modal-note {
    margin: 12px 0 0;
    color: #9ca3af;
    text-align: center;
    font-size: 12px;
    line-height: 1.7;
}

.modal-note a {
    color: #5e77ff;
}

@media (max-width: 520px) {
    .modal-box {
        width: min(100%, 340px);
        padding: 30px 22px 24px;
    }

    .modal-brand {
        font-size: 16px;
    }

    .modal-brand img {
        height: 32px;
    }

    .modal-box h3 {
        font-size: 22px;
    }
}

@media (max-width: 1199px) {
    .style_navBar__N2AKW,
    .style_navSafeWidth__23xWV {
        height: 68px !important;
    }

    .style_navSafeWidth__23xWV {
        width: min(100% - 28px, 760px) !important;
    }

    .style_logo__pTh4C {
        height: 32px !important;
    }

    .qf-brand {
        gap: 8px;
        font-size: 17px;
    }

    .qf-nav {
        position: fixed;
        inset: 68px 14px auto 14px;
        display: none !important;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 10px 0;
        background: rgba(14, 20, 35, .96);
        border-radius: 8px;
        box-shadow: 0 18px 40px rgba(0, 0, 0, .24);
    }

    .qf-nav.open {
        display: flex !important;
    }

    .qf-nav > div,
    .qf-nav a {
        width: 100%;
    }

    .qf-nav a {
        display: block;
        padding: 12px 18px;
        color: #fff;
        text-align: center;
    }

    .qf-menu-toggle {
        display: block;
        margin-left: auto;
    }

    .qf-header-product {
        display: none !important;
    }

    .qf-slide {
        min-height: 820px;
    }

    .qf-hero-bg img {
        min-height: 820px;
    }

    .qf-hero-text {
        width: min(88vw, 640px) !important;
        padding-top: 132px !important;
    }

    .qf-hero-text h1 {
        color: #f7f8ff;
        font-size: clamp(26px, 6vw, 40px);
        font-weight: 500;
        line-height: 1.28;
    }

    .qf-hero-text p {
        font-size: 15px;
    }

    .style_swiperContainer__2HgI7 .style_block__3QeyO .style_leftRightContainer__2hxCw {
        width: min(100% - 36px, 720px) !important;
        margin: 0 auto !important;
        display: block !important;
    }

    .style_swiperContainer__2HgI7 .style_block__3QeyO .style_leftRightContainer__2hxCw .style_left__2n_sz {
        padding-top: 120px !important;
    }

    .style_title__3LgOf,
    .style_title__3LgOf > span {
        font-size: 34px !important;
        line-height: 1.25 !important;
    }

    .style_subTitle__3gwGf,
    .qf-wide-subtitle,
    .qf-second-copy {
        max-width: 100%;
        width: 100%;
        font-size: 16px !important;
    }

    .qf-feature-copy {
        width: 100%;
        max-width: 100%;
    }

    .qf-feature-copy .qf-feature-subtitle {
        max-width: 100%;
    }

    .qf-feature-grid {
        width: 100%;
        margin-top: 28px;
        gap: 14px;
    }

    .qf-feature-grid article {
        min-height: 0;
        padding: 16px 15px;
        gap: 10px;
    }

    .qf-feature-grid img {
        width: 24px;
        height: 24px;
    }

    .qf-feature-grid strong {
        font-size: 17px;
    }

    .qf-feature-grid p {
        font-size: 14px;
    }

    .style_right1__2-f4f,
    .style_right2___GrcF,
    .style_right3__VEhTX {
        right: 50% !important;
        top: auto !important;
        bottom: 20px !important;
        transform: translateX(50%) scale(.72);
        transform-origin: bottom center;
    }

    .style_text4__1fPW4,
    .style_text5__tWPBH {
        width: min(100% - 36px, 720px) !important;
        padding-top: 105px !important;
    }

    .style_right4__2PgXf {
        width: 100% !important;
        margin-left: 0 !important;
        display: flex;
        justify-content: center;
    }

    .style_right4__2PgXf > img {
        width: min(100vw, 760px) !important;
    }

    .qf-faq-wrap {
        width: min(100% - 36px, 720px) !important;
        margin-top: 36px !important;
    }

    .qf-faq-grid {
        grid-template-columns: 1fr;
    }

    .qf-faq-grid article {
        width: 100% !important;
        min-height: 0 !important;
    }

    .qf-legal-grid {
        grid-template-columns: 1fr;
    }

    .qf-to-top {
        right: 18px;
        bottom: 18px;
    }
}

@media (max-width: 520px) {
    .qf-slide {
        min-height: 760px;
    }

    .qf-hero-bg img {
        min-height: 760px;
    }

    .qf-hero-text {
        width: min(88vw, 350px) !important;
        padding-top: 82px !important;
    }

    .qf-hero-text h1 {
        color: #f7f8ff;
        font-size: 23px;
        line-height: 1.34;
        font-weight: 600;
    }

    .qf-hero-actions {
        flex-direction: column;
        width: auto !important;
        align-items: center;
        gap: 13px;
    }

    .qf-hero-actions .style_dbWrapper__KoApF {
        width: auto !important;
        margin-right: 0 !important;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 25.4vh !important;
        min-width: 232px !important;
        height: 56px !important;
        padding: 0 24px !important;
        border-radius: 28px !important;
        font-size: 15px !important;
    }

    .style_firstScreenAnimate__3d_lE {
        transform: scale(.72);
        transform-origin: bottom center;
    }

    .style_title__3LgOf,
    .style_title__3LgOf > span {
        font-size: 28px !important;
    }

    .qf-icon-row {
        flex-wrap: wrap;
        gap: 18px;
    }

    .qf-icon-row > div {
        margin-right: 0 !important;
        width: calc(50% - 9px);
    }

    .qf-stat-grid {
        width: 100% !important;
        grid-template-columns: 1fr !important;
    }

    .qf-stat-grid > div {
        width: 100% !important;
    }

    .qf-legal-footer {
        padding: 82px 18px 44px !important;
    }

    .qf-legal-grid article {
        padding: 24px;
    }

    .qf-legal-grid h2 {
        font-size: 24px;
    }

    .qf-legal-grid p,
    .qf-footer-nav {
        font-size: 14px;
    }

    .qf-site-footer {
        padding: 26px 18px 30px;
    }

    .qf-site-footer .qf-footer-nav {
        gap: 10px;
        font-size: 14px;
    }

    .qf-site-footer .qf-footer-product {
        margin-top: 18px;
        font-size: 12px;
    }
}

@media (max-width: 1199px) {
    .swiper-slide {
        min-height: auto;
        overflow: visible;
    }

    .qf-slide {
        height: auto !important;
        min-height: 100vh;
        padding: 92px 18px 54px;
        overflow: hidden;
        background-position: center !important;
    }

    .qf-hero-slide {
        height: 100vh !important;
        min-height: 780px;
        padding: 0;
    }

    .qf-hero-text {
        width: min(88vw, 640px) !important;
        padding-top: 128px !important;
    }

    .qf-hero-text h1 {
        color: #f7f8ff;
        font-size: clamp(25px, 6vw, 39px);
        line-height: 1.3;
        font-weight: 500;
    }

    .qf-hero-text p {
        max-width: 640px;
        margin-top: 14px;
        font-size: 14px;
        line-height: 1.62;
    }

    .qf-hero-actions {
        margin-top: 24px !important;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 13px;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 25.4vh !important;
        min-width: 224px !important;
        height: 54px !important;
        border-radius: 27px !important;
        font-size: 15px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        height: 420px !important;
        top: auto !important;
        bottom: 16px !important;
        left: 0 !important;
        right: 0 !important;
        transform: none !important;
        overflow: visible;
    }

    .qf-hero-slide .style_outterLight__2IFTb,
    .qf-hero-slide .style_innerLight__1kVUp,
    .qf-hero-slide .style_left1__21S06,
    .qf-hero-slide .style_right1__3XnA2,
    .qf-hero-slide .style_left2__16pEj,
    .qf-hero-slide .style_right2__2G64M,
    .qf-hero-slide .style_left3__3Nre0,
    .qf-hero-slide .style_right3__2dlxE {
        display: none !important;
    }

    .qf-hero-slide .style_spotLight__2QT8g {
        width: 430px !important;
        max-width: 112vw;
        left: 50% !important;
        right: auto !important;
        bottom: 6px !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_phone__38_Sm {
        width: 390px !important;
        max-width: 98vw;
        left: 50% !important;
        bottom: 0 !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_darkSpot__dNb_j {
        width: 100% !important;
        left: 0 !important;
        bottom: 0 !important;
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY {
        width: 430px !important;
        height: 380px !important;
        left: 50% !important;
        bottom: 0 !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_mainGlow__3UatV {
        width: 430px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 246px !important;
        left: 50% !important;
        bottom: 66px !important;
        transform: translateX(-50%);
    }

    .qf-clients-slide {
        min-height: 760px;
        padding: 102px 18px 64px !important;
    }

    .qf-clients-copy h2 {
        font-size: 34px;
    }

    .qf-clients-copy p {
        max-width: 620px;
        margin-top: 24px;
        font-size: 16px;
        line-height: 1.75;
    }

    .qf-clients-grid {
        width: min(100%, 560px);
        margin-top: 46px;
        grid-template-columns: repeat(2, minmax(138px, 1fr));
        gap: 20px 16px;
    }

    .qf-client-card {
        height: 92px;
        padding: 16px 14px;
    }

    .style_swiperContainer__2HgI7 .style_block__3QeyO .style_leftRightContainer__2hxCw {
        height: auto !important;
        min-height: 0 !important;
    }

    .style_swiperContainer__2HgI7 .style_block__3QeyO .style_leftRightContainer__2hxCw .style_left__2n_sz {
        padding-top: 0 !important;
    }

    .style_title__3LgOf,
    .style_title__3LgOf > span {
        font-size: 30px !important;
        line-height: 1.25 !important;
    }

    .style_subTitle__3gwGf,
    .qf-wide-subtitle,
    .qf-second-copy {
        width: 100% !important;
        max-width: 100% !important;
        font-size: 15px !important;
        line-height: 1.72 !important;
    }

    .style_divider__371VW {
        margin-top: 20px !important;
    }

    .qf-feature-copy {
        width: 100% !important;
        max-width: 100% !important;
    }

    .qf-feature-copy .qf-feature-subtitle {
        max-width: 100% !important;
    }

    .qf-feature-grid {
        width: 100% !important;
        margin-top: 22px !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }

    .qf-feature-grid article {
        min-height: 0;
        padding: 13px 11px;
        gap: 8px;
    }

    .qf-feature-grid img {
        width: 22px;
        height: 22px;
        margin-top: 1px;
    }

    .qf-feature-grid strong {
        font-size: 15px;
        line-height: 1.25;
    }

    .qf-feature-grid p {
        font-size: 12px;
        line-height: 1.52;
    }

    .qf-feature-visual {
        display: none !important;
    }

    .style_right1__2-f4f,
    .style_right2___GrcF,
    .style_right3__VEhTX {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        width: min(84vw, 360px);
        height: 330px;
        margin: 34px auto 0;
        transform: none !important;
    }

    .style_right1__2-f4f > img:nth-child(3),
    .style_right2___GrcF > img:nth-child(2),
    .style_right3__VEhTX > img:nth-child(3) {
        width: min(84vw, 360px) !important;
        height: auto !important;
        display: block;
        margin: 0 auto;
    }

    .style_right1__2-f4f > img:first-child,
    .style_right3__VEhTX > img:first-child {
        width: 70px !important;
        height: auto !important;
        left: -2px !important;
        top: 30px !important;
    }

    .style_right1__2-f4f > img:nth-child(2),
    .style_right3__VEhTX > img:nth-child(2) {
        width: 54px !important;
        height: auto !important;
        right: 18px !important;
        top: -12px !important;
    }

    .style_right2___GrcF > img:first-child {
        width: 58px !important;
        height: auto !important;
        left: 10px !important;
        top: -18px !important;
    }

    .qf-icon-row {
        margin-top: 34px !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }

    .qf-icon-row > div {
        margin-right: 0 !important;
    }

    .qf-icon-row > div > img {
        width: 72px !important;
        height: 72px !important;
    }

    .qf-icon-row > div > div {
        max-width: none !important;
        margin-top: 12px !important;
        font-size: 13px;
    }

    .qf-stat-grid {
        width: 100% !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        margin-top: 26px !important;
    }

    .qf-stat-grid > div {
        width: 100% !important;
        min-height: 72px !important;
    }

    .qf-stat-grid > div > div {
        max-width: calc(100% - 82px) !important;
        font-size: 15px !important;
    }

    .qf-second-copy {
        margin-top: 18px;
    }

    .style_text4__1fPW4,
    .style_text5__tWPBH {
        width: 100% !important;
        padding-top: 0 !important;
    }

    .qf-center-copy .style_subTitle__3gwGf {
        font-size: 15px !important;
        line-height: 1.82 !important;
    }

    .style_right4__2PgXf {
        position: relative !important;
        bottom: auto !important;
        margin: 34px auto 0 !important;
    }

    .style_right4__2PgXf > img {
        width: min(115vw, 720px) !important;
        max-width: none;
    }

    .qf-faq-heading {
        padding-top: 0 !important;
    }

    .qf-faq-wrap {
        width: 100% !important;
        margin: 28px auto 0 !important;
        padding-bottom: 0 !important;
    }

    .qf-faq-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .qf-faq-grid article {
        width: 100% !important;
        min-height: 0 !important;
        padding: 22px;
        border-radius: 8px;
    }

    .qf-faq-grid article img {
        width: 46px;
        height: 46px;
        margin-bottom: 14px;
    }

    .qf-faq-grid article h3 {
        font-size: 16px;
    }

    .qf-faq-grid article p {
        font-size: 13px;
        line-height: 1.7;
    }

    .qf-info-section {
        min-height: auto;
        padding: 96px 18px 58px;
        background-position: center !important;
    }

    .qf-info-about {
        min-height: 100vh;
    }

    .qf-info-copy h1,
    .qf-info-legal-grid h1 {
        font-size: 30px;
    }

    .qf-info-copy p {
        margin-top: 26px;
        font-size: 16px;
        line-height: 1.95;
    }

    .qf-info-visual {
        width: min(112vw, 720px);
        margin-top: 34px;
    }

    .qf-info-faq-grid,
    .qf-info-legal-grid {
        width: min(100%, 720px);
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .qf-info-faq-grid {
        margin-top: 34px;
    }

    .qf-info-faq-grid article,
    .qf-info-legal-grid article {
        min-height: 0;
        padding: 26px 24px;
    }

    .qf-info-faq-grid img {
        width: 48px;
        height: 48px;
        margin-bottom: 18px;
    }

    .qf-info-faq-grid h2 {
        font-size: 17px;
    }

    .qf-info-faq-grid p,
    .qf-info-legal-grid p {
        font-size: 14px;
        line-height: 1.78;
    }
}

@media (max-width: 520px) {
    .qf-slide {
        padding: 84px 16px 42px;
    }

    .qf-hero-slide {
        min-height: 760px;
        padding: 0;
    }

    .qf-hero-text {
        width: min(88vw, 350px) !important;
        padding-top: 118px !important;
    }

    .qf-hero-text h1 {
        color: #f7f8ff;
        font-size: 23px;
        line-height: 1.34;
        font-weight: 600;
    }

    .qf-hero-text p {
        font-size: 12.5px;
        line-height: 1.56;
    }

    .qf-hero-actions {
        width: auto !important;
        margin-top: 18px !important;
        flex-direction: column;
        align-items: center;
        gap: 13px;
    }

    .qf-hero-actions .style_dbWrapper__KoApF {
        width: auto !important;
        margin-right: 0 !important;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 25.4vh !important;
        min-width: 232px !important;
        height: 54px !important;
        padding: 0 24px !important;
        border-radius: 27px !important;
        font-size: 15px !important;
    }

    .qf-hero-actions .style_downOthers__c8aXn {
        width: 248px !important;
        min-width: 248px !important;
        height: 56px !important;
        font-size: 15px !important;
    }

    .qf-hero-actions .style_downBtn__3bGKH::before {
        width: 18px;
        height: 22px;
    }

    .qf-hero-actions .style_downOthers__c8aXn img {
        width: 22px !important;
        height: 22px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        height: 360px !important;
        bottom: 18px !important;
    }

    .qf-hero-slide .style_spotLight__2QT8g {
        width: 350px !important;
    }

    .qf-hero-slide .style_phone__38_Sm {
        width: 330px !important;
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY {
        width: 360px !important;
        height: 318px !important;
    }

    .qf-hero-slide .style_mainGlow__3UatV {
        width: 360px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 210px !important;
        bottom: 56px !important;
    }

    .qf-clients-slide {
        min-height: 720px;
        padding: 88px 22px 52px !important;
        align-items: flex-start;
    }

    .qf-clients-copy h2 {
        font-size: 32px;
        line-height: 1.25;
    }

    .qf-clients-copy p {
        max-width: 350px;
        margin-top: 22px;
        font-size: 15px;
        line-height: 1.8;
        text-align: left;
    }

    .qf-clients-grid {
        width: 252px;
        margin-top: 36px;
        grid-template-columns: repeat(2, 120px);
        gap: 20px 12px;
        justify-content: center;
    }

    .qf-client-card {
        height: 78px;
        padding: 12px 10px;
        gap: 7px;
        border-radius: 6px;
    }

    .qf-client-card img {
        width: 26px;
        height: 26px;
    }
.qf-client-card span:last-child {
        font-size: 12px;
    }

    .style_title__3LgOf,
    .style_title__3LgOf > span {
        font-size: 25px !important;
    }

    .style_right1__2-f4f,
    .style_right2___GrcF,
    .style_right3__VEhTX {
        height: 250px;
        margin-top: 24px;
    }

    .style_right1__2-f4f > img:nth-child(3),
    .style_right2___GrcF > img:nth-child(2),
    .style_right3__VEhTX > img:nth-child(3) {
        width: min(86vw, 300px) !important;
    }

    .qf-info-section {
        padding: 88px 18px 46px;
    }

    .qf-info-copy h1,
    .qf-info-legal-grid h1 {
        font-size: 28px;
    }

    .qf-info-copy p {
        font-size: 16px;
        line-height: 1.85;
    }

    .qf-info-visual {
        width: min(118vw, 520px);
        margin-top: 30px;
    }

    .qf-info-faq-grid {
        gap: 18px;
    }

    .qf-info-faq-grid article,
    .qf-info-legal-grid article {
        padding: 24px;
    }

    .qf-info-faq-grid h2 {
        font-size: 16px;
    }

    .qf-info-faq-grid p,
    .qf-info-legal-grid p {
        font-size: 14px;
    }

    .qf-to-top {
        display: none;
    }
}

@media (max-width: 520px) {
    .qf-hero-slide {
        min-height: 760px;
        overflow: hidden;
    }

    .qf-hero-slide .style_headerTop__2SXl2 {
        position: relative;
        z-index: 10;
    }

    .qf-hero-text {
        width: min(88vw, 360px) !important;
        padding-top: 120px !important;
    }

    .qf-hero-text h1 {
        font-size: 24px !important;
        line-height: 1.32 !important;
        font-weight: 700;
    }

    .qf-hero-title-focus {
        white-space: nowrap;
        font-size: clamp(18px, 4.85vw, 21px);
        line-height: 1.35;
    }

    .qf-hero-actions {
        margin-top: 22px !important;
        gap: 14px;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 248px !important;
        min-width: 248px !important;
        height: 56px !important;
        padding: 0 26px !important;
        font-size: 15px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        height: 500px !important;
        bottom: 40px !important;
        overflow: visible;
    }

    .qf-hero-slide .style_spotLight__2QT8g {
        width: 445px !important;
        max-width: 112vw;
        bottom: 0 !important;
    }

    .qf-hero-slide .style_phone__38_Sm {
        width: 392px !important;
        max-width: 100vw;
        bottom: 0 !important;
    }

    .qf-hero-slide .style_darkSpot__dNb_j {
        bottom: -16px !important;
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY {
        width: 448px !important;
        height: 396px !important;
        bottom: 8px !important;
    }

    .qf-hero-slide .style_mainGlow__3UatV {
        width: 448px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 260px !important;
        bottom: 112px !important;
    }
}

@media (max-width: 390px) {
    .qf-hero-text {
        padding-top: 112px !important;
    }

    .qf-hero-text h1 {
        font-size: 22px !important;
    }

    .qf-hero-title-focus {
        font-size: clamp(17px, 4.6vw, 18px);
    }

    .qf-hero-actions {
        margin-top: 18px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 26px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 242px !important;
        bottom: 104px !important;
    }
}
/* Final lock: hero download buttons keep identical visual size. */
.qf-hero-actions .style_dbWrapper__KoApF,
.qf-hero-actions .style_fontFamily__3CcLl {
    width: 25.4vh !important;
}

.qf-hero-actions .style_downBtn__3bGKH,
.qf-hero-actions .style_downOthers__c8aXn {
    width: 25.4vh !important;
    min-width: 25.4vh !important;
    max-width: 25.4vh !important;
    height: 6.65vh !important;
    min-height: 6.65vh !important;
    max-height: 6.65vh !important;
    padding: 0 3.35vh !important;
    box-sizing: border-box !important;
}

@media (max-width: 520px) {
    .qf-hero-actions .style_dbWrapper__KoApF,
    .qf-hero-actions .style_fontFamily__3CcLl {
        width: 248px !important;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 248px !important;
        min-width: 248px !important;
        max-width: 248px !important;
        height: 56px !important;
        min-height: 56px !important;
        max-height: 56px !important;
        padding: 0 26px !important;
        border-radius: 28px !important;
    }
}
/* Hero homepage description placement. */
.qf-hero-desc {
    max-width: 900px !important;
    margin: 2vh auto 0 !important;
    color: rgba(255, 255, 255, .78) !important;
    font-size: clamp(14px, 1.62vh, 18px) !important;
    line-height: 1.72 !important;
    font-weight: 400;
    text-shadow: 0 8px 20px rgba(0, 0, 0, .28);
}

.qf-hero-actions {
    margin-top: 2.8vh !important;
}

@media (max-width: 1199px) {
    .qf-hero-desc {
        max-width: 620px !important;
        margin-top: 16px !important;
        font-size: 14px !important;
        line-height: 1.65 !important;
    }

    .qf-hero-actions {
        margin-top: 20px !important;
    }
}

@media (max-width: 520px) {
    .qf-hero-text {
        padding-top: 96px !important;
    }

    .qf-hero-desc {
        max-width: 360px !important;
        margin-top: 12px !important;
        font-size: 12.5px !important;
        line-height: 1.55 !important;
    }

    .qf-hero-actions {
        margin-top: 16px !important;
    }
}

@media (max-width: 390px) {
    .qf-hero-text {
        padding-top: 88px !important;
    }

    .qf-hero-desc {
        max-width: 340px !important;
        font-size: 12px !important;
        line-height: 1.5 !important;
    }
}
/* Mobile hero visual should not cover download buttons. */
@media (max-width: 520px) {
    .qf-hero-slide .style_headerTop__2SXl2 {
        position: relative;
        z-index: 20;
    }

    .qf-hero-actions {
        position: relative;
        z-index: 22;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        z-index: 1 !important;
        height: 420px !important;
        bottom: -74px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 220px !important;
        bottom: 92px !important;
    }

    .qf-hero-slide .style_spotLight__2QT8g {
        width: 390px !important;
    }

    .qf-hero-slide .style_phone__38_Sm {
        width: 344px !important;
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY,
    .qf-hero-slide .style_mainGlow__3UatV {
        width: 392px !important;
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY {
        height: 346px !important;
    }
}

@media (max-width: 390px) {
    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        height: 390px !important;
        bottom: -88px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 204px !important;
        bottom: 88px !important;
    }
}
/* Final hero layer fix for narrow and tablet viewports. */
@media (max-width: 1199px) {
    .qf-hero-slide .style_headerTop__2SXl2 {
        position: relative !important;
        z-index: 80 !important;
    }

    .qf-hero-text,
    .qf-hero-actions,
    .qf-hero-actions .style_dbWrapper__KoApF,
    .qf-hero-actions .style_fontFamily__3CcLl,
    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        position: relative !important;
        z-index: 90 !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        z-index: 1 !important;
        bottom: -96px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 232px !important;
        bottom: 78px !important;
    }
}

@media (max-width: 520px) {
    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 58px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 204px !important;
        bottom: 92px !important;
    }
}

@media (max-width: 390px) {
    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 58px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 190px !important;
        bottom: 88px !important;
    }
}
/* Desktop hero buttons sit side by side. */
@media (min-width: 521px) {
    .qf-hero-actions {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: center !important;
        gap: 18px !important;
        margin-top: 2.4vh !important;
        position: relative !important;
        z-index: 120 !important;
    }

    .qf-hero-actions .style_dbWrapper__KoApF,
    .qf-hero-actions .style_fontFamily__3CcLl {
        width: 25.4vh !important;
        margin-right: 0 !important;
        flex: 0 0 auto !important;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 25.4vh !important;
        min-width: 25.4vh !important;
        max-width: 25.4vh !important;
        height: 6.65vh !important;
        min-height: 6.65vh !important;
        max-height: 6.65vh !important;
    }
}

@media (min-width: 521px) and (max-width: 1199px) {
    .qf-hero-actions .style_dbWrapper__KoApF,
    .qf-hero-actions .style_fontFamily__3CcLl,
    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 232px !important;
        min-width: 232px !important;
        max-width: 232px !important;
        height: 54px !important;
        min-height: 54px !important;
        max-height: 54px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 60px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 216px !important;
        bottom: 68px !important;
    }
}
/* Simplified feature slides: title plus one paragraph only. */
.qf-feature-simple .style_subTitle__3gwGf {
    margin-top: 3.2vh !important;
    max-width: 62vh;
}

@media (max-width: 1199px) {
    .qf-feature-simple .style_subTitle__3gwGf {
        margin-top: 22px !important;
        max-width: 100% !important;
    }
}

/* Two feature summaries per slide. */
.qf-feature-pair {
    width: min(64vh, 620px);
    max-width: 64vh;
    padding-top: 22.8vh !important;
    display: flex;
    flex-direction: column;
    gap: 5vh;
}

.qf-feature-item-title {
    font-size: clamp(30px, 4.25vh, 42px) !important;
    line-height: 1.15 !important;
    letter-spacing: 0;
}

.qf-feature-item-desc {
    width: 100%;
    max-width: 60vh !important;
    margin-top: 2.4vh !important;
    font-size: clamp(16px, 2.05vh, 20px) !important;
    line-height: 1.72 !important;
    color: #6c707e;
}

@media (max-width: 1199px) {
    .qf-feature-pair {
        width: min(100% - 36px, 720px) !important;
        max-width: min(100% - 36px, 720px) !important;
        padding-top: 108px !important;
        gap: 30px;
        margin: 0 auto;
    }

    .qf-feature-item-title {
        font-size: 30px !important;
    }

    .qf-feature-item-desc {
        max-width: 100% !important;
        margin-top: 12px !important;
        font-size: 16px !important;
        line-height: 1.65 !important;
    }
}

@media (max-width: 520px) {
    .qf-feature-pair {
        width: 100% !important;
        max-width: 100% !important;
        padding-top: 0 !important;
        gap: 24px;
    }

    .qf-feature-item-title {
        font-size: 24px !important;
    }

    .qf-feature-item-desc {
        margin-top: 10px !important;
        font-size: 14px !important;
        line-height: 1.6 !important;
    }
}
/* Dark treatment for the second feature summary slide. */
.qf-feature-dark .qf-feature-item-title {
    color: #ffffff !important;
}

.qf-feature-dark .qf-feature-item-desc {
    color: #d7def8 !important;
}

.qf-feature-dark .style_right3__VEhTX {
    filter: drop-shadow(0 28px 48px rgba(64, 102, 255, .24));
}

.qf-hero-mobile-title {
    display: none;
}

/* Mobile homepage polish, inspired by the compact reference layout. */
@media (max-width: 520px) {
    .style_navBar__N2AKW,
    .style_navSafeWidth__23xWV {
        height: 70px !important;
    }

    .style_navBar__N2AKW {
        background: #111728 !important;
        border-bottom: 1px solid rgba(255, 255, 255, .08);
        box-shadow: none !important;
        backdrop-filter: none;
    }

    .style_navSafeWidth__23xWV {
        width: calc(100% - 64px) !important;
    }

    .style_logo__pTh4C {
        height: 31px !important;
    }

    .qf-brand {
        gap: 8px;
        font-size: 18px;
        font-weight: 800;
    }

    .qf-menu-toggle {
        width: 42px;
        height: 42px;
        padding: 8px;
        display: flex !important;
        flex-direction: column;
        justify-content: center;
        align-items: stretch;
        position: relative;
        z-index: 120;
    }

    .qf-menu-toggle span {
        height: 2px;
        margin: 4px 0;
        background: rgba(255, 255, 255, .72);
    }

    .qf-nav {
        inset: 70px 14px auto 14px;
    }

    .qf-hero-slide {
        height: 100svh !important;
        min-height: 760px !important;
        padding: 0 !important;
        background: #0f1526;
    }

    .qf-hero-bg img {
        height: 100% !important;
        min-height: 760px !important;
        object-position: center top;
    }

    .qf-hero-slide .style_headerTop__2SXl2 {
        position: relative !important;
        z-index: 80 !important;
    }

    .qf-hero-text {
        width: min(86vw, 360px) !important;
        padding-top: 154px !important;
    }

    .qf-hero-title-main,
    .qf-hero-title-focus,
    .qf-hero-desc {
        display: none !important;
    }

    .qf-hero-mobile-title {
        display: block !important;
        color: #f8f9ff;
        font-size: clamp(38px, 10.4vw, 46px);
        line-height: 1.34;
        font-weight: 400;
        text-shadow: 0 12px 28px rgba(0, 0, 0, .34);
    }

    .qf-hero-mobile-title > span {
        display: block;
    }

    .qf-hero-actions {
        width: auto !important;
        margin-top: 28px !important;
        gap: 14px !important;
        flex-direction: column !important;
        align-items: center !important;
        position: relative !important;
        z-index: 100 !important;
    }

    .qf-hero-actions .style_dbWrapper__KoApF,
    .qf-hero-actions .style_fontFamily__3CcLl,
    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 258px !important;
        min-width: 258px !important;
        max-width: 258px !important;
        height: 66px !important;
        min-height: 66px !important;
        max-height: 66px !important;
    }

    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        border-radius: 33px !important;
        padding: 0 24px !important;
        font-size: 16px !important;
    }

    .qf-hero-actions .style_downOthers__c8aXn {
        background: rgba(3, 8, 22, .62) !important;
        border-color: rgba(255, 255, 255, .14);
    }

    .qf-hero-actions .style_downBtn__3bGKH::before {
        width: 20px !important;
        height: 24px !important;
    }

    .qf-hero-actions .style_downOthers__c8aXn img {
        width: 24px !important;
        height: 24px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        height: 440px !important;
        top: auto !important;
        bottom: -82px !important;
        left: 0 !important;
        right: 0 !important;
        transform: none !important;
        transform-origin: bottom center;
        z-index: 2 !important;
        overflow: visible;
    }

    .qf-hero-slide .style_spotLight__2QT8g {
        width: 500px !important;
        max-width: 128vw;
        left: 50% !important;
        right: auto !important;
        bottom: 0 !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_phone__38_Sm {
        width: 430px !important;
        max-width: 112vw;
        left: 50% !important;
        bottom: 0 !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY,
    .qf-hero-slide .style_mainGlow__3UatV {
        width: 500px !important;
    }

    .qf-hero-slide .style_mainGlowContainer__QRtSY {
        height: 440px !important;
        left: 50% !important;
        bottom: 0 !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 258px !important;
        left: 50% !important;
        bottom: 58px !important;
        transform: translateX(-50%);
    }

    .qf-hero-slide .style_darkSpot__dNb_j {
        bottom: -10px !important;
    }
}

@media (max-width: 390px) {
    .qf-hero-text {
        width: min(86vw, 330px) !important;
        padding-top: 138px !important;
    }

    .qf-hero-mobile-title {
        font-size: clamp(34px, 9.8vw, 38px);
        line-height: 1.35;
    }

    .qf-hero-actions {
        margin-top: 24px !important;
        gap: 12px !important;
    }

    .qf-hero-actions .style_dbWrapper__KoApF,
    .qf-hero-actions .style_fontFamily__3CcLl,
    .qf-hero-actions .style_downBtn__3bGKH,
    .qf-hero-actions .style_downOthers__c8aXn {
        width: 244px !important;
        min-width: 244px !important;
        max-width: 244px !important;
        height: 62px !important;
        min-height: 62px !important;
        max-height: 62px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        height: 402px !important;
        bottom: -82px !important;
    }

    .qf-hero-slide .style_spotLight__2QT8g,
    .qf-hero-slide .style_mainGlowContainer__QRtSY,
    .qf-hero-slide .style_mainGlow__3UatV {
        width: 440px !important;
    }

    .qf-hero-slide .style_phone__38_Sm {
        width: 382px !important;
    }

    .qf-hero-slide .style_main__2ITk7 {
        width: 228px !important;
        bottom: 54px !important;
    }
}

/* Restore feature visuals below paired copy on mobile. */
@media (max-width: 520px) {
    #features .qf-feature-visual {
        display: block !important;
        width: min(86vw, 330px) !important;
        height: 300px !important;
        margin: 34px auto 0 !important;
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
    }

    #features .qf-feature-visual > img:nth-child(3) {
        width: min(86vw, 330px) !important;
        height: auto !important;
        display: block !important;
        margin: 0 auto !important;
    }

    #features .qf-feature-visual > img:first-child {
        width: 68px !important;
        height: auto !important;
        left: 0 !important;
        top: 36px !important;
    }

    #features .qf-feature-visual > img:nth-child(2) {
        width: 54px !important;
        height: auto !important;
        right: 18px !important;
        top: 0 !important;
    }
}

@media (max-width: 390px) {
    #features .qf-feature-visual {
        width: min(86vw, 300px) !important;
        height: 270px !important;
        margin-top: 28px !important;
    }

    #features .qf-feature-visual > img:nth-child(3) {
        width: min(86vw, 300px) !important;
    }
}

/* Keep the footer visible after the mobile download center. */
@media (max-width: 520px) {
    #clients .qf-clients-slide {
        min-height: auto !important;
        padding: 92px 22px 56px !important;
    }

    .qf-site-footer {
        display: block !important;
        padding: 24px 18px 28px !important;
        background: #191a20 !important;
        position: relative;
        z-index: 5;
    }

    .qf-site-footer .qf-footer-nav {
        justify-content: flex-start;
        gap: 8px;
        font-size: 13px;
        line-height: 1.8;
    }

    .qf-site-footer .qf-footer-nav span {
        height: 13px;
        background: #414450;
    }

    .qf-site-footer .qf-footer-product {
        margin-top: 14px;
        font-size: 12px;
        line-height: 1.7;
        text-align: left;
    }
}

/* Keep original homepage copy on mobile. */
@media (max-width: 520px) {
    .qf-hero-mobile-title {
        display: none !important;
    }

    .qf-hero-text {
        width: min(88vw, 360px) !important;
        padding-top: 104px !important;
    }

    .qf-hero-title-main,
    .qf-hero-title-focus {
        display: block !important;
    }

    .qf-hero-text h1 {
        font-size: 24px !important;
        line-height: 1.34 !important;
        font-weight: 700 !important;
    }

    .qf-hero-title-focus {
        white-space: nowrap !important;
        font-size: clamp(19px, 5.35vw, 22px) !important;
        line-height: 1.34 !important;
    }

    .qf-hero-desc {
        display: block !important;
        max-width: 360px !important;
        margin-top: 12px !important;
        color: rgba(255, 255, 255, .84) !important;
        font-size: 13px !important;
        line-height: 1.55 !important;
        text-align: left !important;
    }

    .qf-hero-actions {
        margin-top: 20px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 158px !important;
    }
}

@media (max-width: 390px) {
    .qf-hero-text {
        width: min(89vw, 340px) !important;
        padding-top: 96px !important;
    }

    .qf-hero-text h1,
    .qf-hero-title-focus {
        line-height: 1.32 !important;
    }

    .qf-hero-text h1 {
        font-size: 22px !important;
    }

    .qf-hero-title-focus {
        font-size: clamp(18px, 5vw, 20px) !important;
        white-space: nowrap !important;
    }

    .qf-hero-desc {
        max-width: 340px !important;
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    .qf-hero-actions {
        margin-top: 16px !important;
    }

    .qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 68px !important;
    }
}

/* Final mobile lock: homepage CTA buttons share one width. */
@media (max-width: 520px) {
    #home .qf-hero-actions .style_dbWrapper__KoApF,
    #home .qf-hero-actions .style_fontFamily__3CcLl,
    #home .qf-hero-actions .style_downBtn__3bGKH,
    #home .qf-hero-actions .style_downOthers__c8aXn {
        width: min(64vw, 248px) !important;
        min-width: min(64vw, 248px) !important;
        max-width: min(64vw, 248px) !important;
        flex: 0 0 min(64vw, 248px) !important;
        box-sizing: border-box !important;
    }

    #home .qf-hero-actions .style_downBtn__3bGKH,
    #home .qf-hero-actions .style_downOthers__c8aXn {
        height: 58px !important;
        min-height: 58px !important;
        max-height: 58px !important;
        font-size: 15px !important;
        justify-content: center !important;
    }
}

/* Lift the mobile hero visual so it appears closer to the CTA buttons. */
@media (max-width: 520px) {
    #home.qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 18px !important;
    }

    #home.qf-hero-slide .style_main__2ITk7 {
        bottom: 118px !important;
    }
}

@media (max-width: 390px) {
    #home.qf-hero-slide .style_firstScreenAnimate__3d_lE {
        bottom: 8px !important;
    }

    #home.qf-hero-slide .style_main__2ITk7 {
        bottom: 106px !important;
    }
}

/* ==========================================================================
   Clean Modern Single-Screen Hero Layout (Composite Seamless Architecture)
   ========================================================================== */

/* Full Viewport Lock for Mobile 1-Screen Mode */
/* Fix Full Viewport Lock (Strict 1-Screen Mode) */
html.qf-one-screen-page,
body.qf-one-screen-page {
    width: 100% !important;
    height: 100vh !important; /* Fallback */
    height: 100dvh !important;
    background: #0b1120 !important; /* Match footer color */
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.qf-one-screen-page #__next {
    height: 100% !important;
    max-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    width: 100% !important;
}

/* Ensure flex passes through main to section */
body.qf-one-screen-page .content {
    position: relative !important; /* CRITICAL: Override vendor absolute positioning */
    flex: 1 1 0% !important; /* CRITICAL: 0% allows it to shrink and never push footer out */
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    height: auto !important;
    min-height: 0 !important; /* Prevent flex min-height auto stretching */
}

.qf-hero-section-clean {
    position: relative !important;
    width: 100% !important;
    flex: 1 1 0% !important; /* CRITICAL: 0% allows it to shrink */
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    min-height: 0 !important; /* Prevent flex min-height auto stretching */
}

/* Background Cover */
.qf-hero-bg-cover {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
    overflow: hidden !important;
}

.qf-hero-bg-cover img,
.qf-hero-bg-cover picture {
    width: 100vw !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* Main Layout Flex Container */
.qf-hero-main-layout {
    position: relative !important;
    z-index: 10 !important;
    flex: 1 1 0% !important; /* CRITICAL: 0% allows it to shrink */
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important; /* Stack from top to bottom */
    align-items: center !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    min-height: 0 !important; /* Prevent flex min-height auto stretching */
}

/* Top Group: Title, Subtitle, CTA Button */
.qf-hero-top-group {
    width: min(92vw, 480px) !important;
    margin: 0 auto !important;
    padding-top: 130px !important; /* CRITICAL: Moved down further as requested */
    text-align: center !important;
    flex: 0 0 auto !important;
    z-index: 20 !important;
}

.qf-main-title {
    font-size: clamp(28px, 8vw, 38px) !important; /* CRITICAL: Increased font size as requested */
    font-weight: 800 !important; /* Made less chunky, more elegant */
    color: #ffffff !important;
    line-height: 1.25 !important;
    margin: 0 0 12px 0 !important;
    letter-spacing: 0.5px !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2) !important;
}

.qf-sub-title {
    font-size: 16px !important; /* CRITICAL: Increased font size as requested */
    font-weight: 400 !important;
    color: rgba(255, 255, 255, 0.9) !important; /* Brighter, more legible */
    margin: 0 0 28px 0 !important;
    display: flex !important;
    justify-content: center !important;
    gap: 24px !important;
    letter-spacing: 1px !important;
}

.qf-hero-actions {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    display: flex !important;
    justify-content: center !important;
}

.qf-hero-actions .style_downBtn__3bGKH {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: linear-gradient(90deg, #7246ff 0%, #466eff 100%) !important;
    border: 0 !important;
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    height: 50px !important;
    padding: 0 36px !important;
    border-radius: 50px !important; /* CRITICAL: Pill-shaped round button */
    text-decoration: none !important;
    box-shadow: 0 8px 24px rgba(70, 110, 255, 0.35) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    cursor: pointer !important;
}

/* Hide the hardcoded CSS icon from the vendor styles because JS now injects the correct dynamic icon */
.qf-hero-actions .style_downBtn__3bGKH::before {
    display: none !important;
}

.qf-hero-actions .style_downBtn__3bGKH:active {
    transform: scale(0.96) !important;
    box-shadow: 0 4px 12px rgba(85, 105, 255, 0.3) !important;
}

/* Middle Group: Custom Animated Hero Graphic for Mobile */
.qf-hero-visual-animated {
    flex: 1 1 0% !important; /* CRITICAL: 0% basis allows container to shrink if needed, never causing overflow */
    width: 100% !important;
    position: relative !important;
    z-index: 5 !important;
    pointer-events: none !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    /* Takes exactly the remaining space between the top group and the footer */
}

/* Base bounding box */
.qf-animate-box {
    position: absolute !important; /* CRITICAL: Absolute positioning prevents its 600x400 physical size from pushing bounds and clipping the footer */
    top: 50% !important;
    left: 50% !important;
    width: 600px !important;
    height: 400px !important;
    transform: translate(-50%, -50%) scale(0.55) !important; /* Base mobile scale - reduced for smaller footprint */
    transform-origin: center center !important;
}

@media (min-width: 375px) {
    .qf-animate-box { transform: translate(-50%, -50%) scale(0.6) !important; }
}
@media (min-width: 414px) {
    .qf-animate-box { transform: translate(-50%, -50%) scale(0.65) !important; }
}
@media (min-height: 800px) {
    .qf-animate-box { transform: translate(-50%, -50%) scale(0.68) !important; margin-top: -10px !important; }
}

/* All animation elements are absolute */
.qf-animate-box img {
    position: absolute !important;
    display: block !important;
}

/* Background elements */
.qf-anim-spot {
    width: 900px !important;
    bottom: -60px !important;
    left: -150px !important;
    opacity: 0.8 !important;
    animation: qfPulseOpacity 4s ease-in-out infinite alternate !important;
}

.qf-anim-glow {
    width: 600px !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    opacity: 0.9 !important;
    animation: qfPulseGlow 3s ease-in-out infinite alternate !important;
}

/* The Phone Base */
.qf-anim-phone {
    width: 580px !important;
    bottom: -40px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
}

/* The Main Feiyu Icon (Bobs dramatically) */
.qf-anim-main {
    width: 320px !important;
    top: 50% !important;
    left: 50% !important;
    margin-left: -160px !important;
    margin-top: -180px !important;
    animation: qfFloatMain 4s ease-in-out infinite !important;
    filter: drop-shadow(0 20px 30px rgba(71, 118, 255, 0.5)) !important;
}

/* The Floating App Cards */
.qf-anim-float {
    width: 140px !important; /* Approximate uniform size */
    animation: qfFloatSmall 5s ease-in-out infinite !important;
    filter: drop-shadow(0 15px 25px rgba(0, 0, 0, 0.4)) !important;
}

/* Specific Card Placements and Animation Delays */
.qf-float-l3 { left: -10px !important; top: 220px !important; animation-delay: 0s !important; width: 130px !important; }
.qf-float-l2 { left: 90px !important; top: 120px !important; animation-delay: 0.5s !important; width: 150px !important; }
.qf-float-l1 { left: 200px !important; top: 20px !important; animation-delay: 1s !important; width: 130px !important; }

.qf-float-r1 { right: 200px !important; top: 20px !important; animation-delay: 1.5s !important; width: 120px !important; }
.qf-float-r2 { right: 90px !important; top: 120px !important; animation-delay: 2s !important; width: 150px !important; }
.qf-float-r3 { right: -10px !important; top: 220px !important; animation-delay: 2.5s !important; width: 130px !important; }

/* --- KEYFRAMES for Windows-Style Effects --- */
@keyframes qfFloatMain {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-40px); }
}

@keyframes qfFloatSmall {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    50% { transform: translateY(-30px) rotate(4deg); }
}

@keyframes qfPulseOpacity {
    0% { opacity: 0.6; transform: scale(0.95); }
    100% { opacity: 0.9; transform: scale(1.05); }
}

@keyframes qfPulseGlow {
    0% { opacity: 0.7; transform: translate(-50%, -50%) scale(0.9); }
    100% { opacity: 1; transform: translate(-50%, -50%) scale(1.1); }
}


/* PC Version: Suppress Download Buttons */
html.is-pc .qf-android-only,
html.is-windows .qf-android-only,
html.is-mac .qf-android-only {
    display: none !important;
}

@media (min-width: 769px) {
    .qf-android-only {
        display: none !important;
    }
}

body.qf-one-screen-page .qf-site-footer {
    flex: 0 0 auto !important;
    padding: 10px 16px 14px !important;
    background: #0b1120 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    position: relative !important;
    z-index: 100 !important;
}

body.qf-one-screen-page .qf-site-footer .qf-footer-nav {
    justify-content: center !important;
    gap: 10px !important;
    font-size: 12.5px !important;
}

body.qf-one-screen-page .qf-site-footer .qf-footer-product {
    text-align: center !important;
    margin-top: 6px !important;
    font-size: 11px !important;
}




