/* Shared responsive safeguards */
html,
body {
    max-width: 100%;
}

/* ========================================================================== 
   Whole-site responsive hardening: download page reflow and mobile tap targets
   ========================================================================== */
.download-main .lefts .download-navs {
    list-style: none;
    /* Keep category markers out of the responsive grid. */
}


@media (max-width: 1440px) {
    .home-case .cards{
        grid-template-columns: repeat(4, 1fr);
    }
}




@media (max-width: 991px) {
    
    .home-case .cards{
        grid-template-columns: repeat(3, 1fr);
    }

    /* Download page: replace the compressed desktop sidebar/content split with a vertical flow. */
    .download-main .flexs {
        flex-direction: column;
        gap: 32px;
    }

    .download-main .lefts,
    .download-main .rights {
        width: 100%;
    }

    .download-main .rights {
        padding-top: 0;
        padding-left: 0;
    }

    .download-main .lefts .download-navs {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));
        gap: 1px;
    }

    .download-main .lefts .download-navs-items {
        min-width: 0;
        text-align: center;
        overflow-wrap: anywhere;
    }

    .download-main .download-search {
        width: min(420px, 100%);
    }

    .download-main .download-search input {
        min-width: 0;
    }

    .download-items {
        flex-direction: column;
        gap: 20px;
    }

    .download-items .left,
    .download-items .right {
        width: 100%;
        min-width: 0;
    }

    .download-items .left .conts {
        border-right: 0;
    }

    .download-items .right {
        padding-top: 20px;
        border-top: 1px solid #dfdfdf;
    }

    .download-items .right .links {
        min-width: 0;
        padding-right: 8px;
        padding-left: 8px;
    }

    .download-items .right .links .tit {
        overflow-wrap: anywhere;
    }
}

@media (max-width: 768px) {

    /* Shared mobile controls: maintain comfortable touch targets without changing reading order. */
    .mod-braeds-item a,
    .home-case .section__more,
    .case-details-controls .case-cut-prev,
    .case-details-controls .case-cut-next,
    .contact-conflex .items p a,
    .footer .contact__label a,
    .footer .col__list a {
        display: inline-flex;
        min-height: 0;
        align-items: center;
    }

    .footer .socials a {
        width: 44px;
        height: 44px;
    }

    .page-shell .category-button {
        min-height: 44px;
    }

    .download-main .download-search {
        width: 100%;
        margin-left: 0;
    }

    .download-items {
        padding: 18px;
    }

    .download-items .left .imgs {
        width: 160px;
    }

    .download-items .left .conts {
        width: calc(100% - 180px);
    }
}

@media (max-width: 480px) {

    /* How-to-buy page: remove the former narrow-screen minimum-width constraint. */
    .support-howbuy2-page {
        min-width: 0;
    }

    /* Download page: stack media/copy and keep all three download formats readable on narrow phones. */
    .download-main .lefts .download-navs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .download-main .lefts .download-navs-items {
        padding: 12px 10px;
        font-size: 16px;
    }

    .download-items .left {
        flex-direction: column;
    }

    .download-items .left .imgs,
    .download-items .left .conts {
        width: 100%;
    }

    .download-items .left .conts {
        padding-top: 16px;
    }

    .download-items .right .links {
        width: 33.333333%;
        padding-right: 6px;
        padding-left: 6px;
    }

    .download-items .right .links .tit {
        font-size: 14px;
    }
}

/* About page responsive layout */
.about-nav-list,
.about-choose .flexs,
.about-choose .flexs .lefts,
.about-choose .flexs .rights,
.about-infos .flexs,
.about-infos .lefts,
.about-infos .rights,
.about-team-lists,
.about-team-items,
.about-choose2-list,
.about-strength-list,
.about-honoe-slick {
    min-width: 0;
}

.about-choose .texts,
.about-infos .texts,
.about-team-conts .tits,
.about-team-conts .texts,
.about-choose2-content .tits,
.about-choose2-content .texts,
.about-strength-content .tits {
    overflow-wrap: anywhere;
}

.about-choose2-content .tits {
    max-width: 100%;
    text-align: center;
    white-space: normal;
}

.about-strength .mod-arrow {
    width: min(calc(100% + 140px), calc(100vw - 32px));
}

@media (max-width: 1440px) {
    .about-nav-list {
        justify-content: center;
    }

    .about-nav-item {
        padding: 14px 20px;
    }

    .about-choose .flexs .lefts {
        padding-right: 40px;
    }

    .about-team-lists {
        margin-right: -12px;
        margin-left: -12px;
    }

    .about-team-items {
        padding-right: 12px;
        padding-left: 12px;
    }

    .about-choose2 {
        padding-right: 32px;
        padding-left: 32px;
    }

    .about-choose2-item,
    .about-strength-item,
    .about-honoe-item {
        padding-right: 12px;
        padding-left: 12px;
    }

    .about-choose2-list,
    .about-strength-list,
    .about-honoe-slick {
        margin-right: -12px;
        margin-left: -12px;
    }
}

@media (max-width: 1200px) {
    .about-nav-item {
        padding: 13px 12px;
        font-size: 16px;
    }

    .about-choose .flexs .lefts {
        padding-right: 30px;
    }

    .about-choose .flexs .lefts .list {
        margin-top: 30px;
    }

    .about-choose .flexs .lefts .list li,
    .about-infos .rights .texts p {
        font-size: 17px;
    }

    .about-team-lists {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 30px 24px;
        margin: 30px 0 0;
    }

    .about-team-items {
        width: auto;
        padding: 0;
    }

    .about-choose2 {
        padding-right: 24px;
        padding-left: 24px;
    }

    .about-choose2-content .tits {
        padding-right: 18px;
        padding-left: 18px;
        font-size: 16px;
    }

    .about-strength .mod-arrow {
        width: calc(100% - -40px);
    }
}

@media (max-width: 991px) {
    .about-nav-list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .about-nav-item {
        min-height: 48px;
        padding: 11px 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .about-choose .flexs,
    .about-infos .flexs {
        flex-direction: column;
    }

    .about-choose .flexs .lefts,
    .about-choose .flexs .rights,
    .about-infos .lefts,
    .about-infos .rights {
        width: 100%;
    }

    .about-choose .flexs .lefts {
        padding-right: 0;
    }

    .about-choose .flexs .rights,
    .about-infos .rights {
        margin-top: 36px;
    }

    .about-choose .flexs .rights .list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .about-choose .flexs .rights .item {
        width: auto;
        min-width: 0;
    }

    .about-infos .lefts {
        max-width: 720px;
        margin-right: auto;
        margin-left: auto;
    }

    .about-team-lists {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-choose2-item,
    .about-strength-item,
    .about-honoe-item {
        padding-right: 10px;
        padding-left: 10px;
    }

    .about-choose2-list,
    .about-strength-list,
    .about-honoe-slick {
        margin-right: -10px;
        margin-left: -10px;
    }

    .about-strength .mod-arrow {
        display: block;
        width: calc(100% - 16px);
    }

    .about-strength .mod-arrow .mod-prev,
    .about-strength .mod-arrow .mod-next {
        width: 42px;
        height: 42px;
    }
}

@media (max-width: 768px) {
    .about-nav-list {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        scrollbar-width: none;
    }

    .about-nav-item {
        flex: 0 0 auto;
        min-height: 44px;
        padding: 11px 16px;
        font-size: 15px;
        line-height: 1.4;
        white-space: nowrap;
    }

    .about-nav-list::-webkit-scrollbar,
    .prodeta-nav-list::-webkit-scrollbar {
        display: none;
        width: 0;
        height: 0;
    }

    .about-choose .flexs .lefts .list {
        margin-top: 24px;
    }

    .about-choose .flexs .lefts .list li {
        margin-bottom: 16px;
        padding-bottom: 16px;
        padding-left: 24px;
        font-size: 16px;
    }

    .about-choose .flexs .lefts .list li::after {
        width: 11px;
        height: 11px;
        top: 8px;
    }

    .about-choose .flexs .rights,
    .about-infos .rights {
        margin-top: 30px;
    }

    .about-choose .flexs .rights .list {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 145px), 1fr));
    }

    .about-choose .flexs .rights .item {
        padding: 22px 14px;
        border-top: 0;
        border-right: 0;
        border-bottom: 1px solid #fff;
    }

    .about-choose .flexs .rights .icons {
        width: 54px;
    }

    .about-choose .flexs .rights .texts,
    .about-infos .rights .texts p,
    .about-choose2-content .texts {
        font-size: 15px;
    }

    .about-team-lists {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
        gap: 28px 20px;
    }

    .about-team-conts .tits {
        font-size: 18px;
    }

    .about-team-conts .links {
        width: 44px;
        height: 44px;
    }

    .about-choose2 {
        padding-right: 16px;
        padding-left: 16px;
    }

    .about-choose2-item,
    .about-strength-item,
    .about-honoe-item {
        padding-right: 8px;
        padding-left: 8px;
    }

    .about-choose2-list,
    .about-strength-list,
    .about-honoe-slick {
        margin-right: -8px;
        margin-left: -8px;
    }

    .about-choose2-content .icons {
        width: 64px;
    }

    .about-choose2-content .tits {
        font-size: 15px;
    }

    .about-strength-content .tits {
        font-size: 16px;
    }

    .about-strength .mod-arrow {
        width: calc(100% - 8px);
    }

    .about-strength .mod-arrow .mod-prev,
    .about-strength .mod-arrow .mod-next {
        width: 40px;
        height: 40px;
    }
}

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

.themeflat-container,
.themeflat-container2,
.themeflat-container3,
.page-banners-content,
.footer,
.stats-inner,
.cta-inner,
.flexs,
.cards,
.apps,
.entries,
.grid {
    min-width: 0;
}

.page-banners-content .texts,
.blogdeta-edit,
.case-edits,
.prodeta-edit,
.solution-details-content,
.support-how-edit,
.support-faq-list .hds p,
.prodeta-faq-item .hds p {
    overflow-wrap: anywhere;
}

.solution-details-content table,
.blogdeta-edit table,
.case-edits table,
.prodeta-edit table,
.support-how-edit table {
    max-width: 100%;
}

@media (max-width: 1440px) {
    :root {
        --padd64: 56px;
    }

    .themeflat-container,
    .themeflat-container2,
    .themeflat-container3 {
        width: calc(100% - 64px);
        max-width: 1280px;
    }

    .themeflat-container3 {
        max-width: 1200px;
    }

    .page-banners {
        height: 400px;
    }

    .page-banners-content .texts {
        width: min(750px, 100%);
    }

    .home-factory>.cards {
        width: calc(100% - 64px);
        margin-right: auto;
        margin-left: auto;
    }

    .app-section .app {
        width: 25%;
    }

    .app-section .app.w-25 {
        width: 25%;
    }

    .product-app-item,
    .product-series-item {
        width: 25%;
    }

    .blog-items,
    .case-items {
        width: 33.333333%;
    }

    .support-video-list {
        margin-right: -16px;
        margin-left: -16px;
    }

    .support-video-item {
        padding-right: 16px;
        padding-left: 16px;
    }

    .support-download-list .conts {
        padding-right: 20px;
        padding-left: 20px;
    }

    .support-download-list .conts .imgs {
        width: 200px;
    }

    .support-download-list .conts .infos {
        width: calc(100% - 200px);
        padding-left: 24px;
    }
}

@media (max-width: 1200px) {
    :root {
        --padd64: 50px;
    }

    .themeflat-container,
    .themeflat-container2,
    .themeflat-container3 {
        width: calc(100% - 48px);
    }

    .home-factory>.cards {
        width: calc(100% - 48px);
    }

    .mod_header {
        margin-bottom: 32px;
    }

    .home-product .cards,
    .home-solution .cards,
    .home-factory .cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .home-choose .features {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        row-gap: 36px;
    }

    .home-choose .feature+.feature::before {
        display: none;
    }

    .home-about .section {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 32px;
    }

    .home-about .about__media {
        grid-column: 1 / -1;
    }

    .footer .footer__top {
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
    }

    .footer .footer__top::after {
        display: none;
    }

    .footer .newsletter {
        justify-content: flex-start;
        padding-left: 0;
    }

    .footer .footer__mid {
        grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) minmax(0, 1.5fr);
        gap: 28px;
    }

    .app-section .app,
    .app-section .app.w-25 {
        width: 33.333333%;
    }

    .product-app-item,
    .product-series-item {
        width: 33.333333%;
    }

    .blog-items,
    .case-items {
        width: 33.333333%;
    }

    .blogdeta-main .flexs .lefts {
        padding-right: 36px;
    }

    .case-big-flexs .lefts {
        padding: 32px 32px 84px;
    }

    .case-details-flex .lefts {
        width: calc(100% - 360px);
    }

    .case-details-flex .rights {
        width: 360px;
        padding-left: 24px;
    }

    .case-details-flex .lefts .content,
    .case-details-controls {
        padding-right: 40px;
        padding-left: 40px;
    }

    .support-download-list .items {
        width: 100%;
    }

    .support-download-list .conts .imgs {
        width: 220px;
    }

    .support-download-list .conts .infos {
        width: calc(100% - 220px);
    }

    .stats-inner {
        flex-wrap: wrap;
        justify-content: center;
    }

    .stats-divider {
        display: none;
    }

    .stat-item,
    .cert-logos {
        flex: 0 1 auto;
    }

    .blogdeta-hd .lefts .titles {
        font-size: 28px;
    }

    .blogdeta-hd .lefts .infos img {
        width: 40px;
        height: 40px;
        margin-right: 12px;
    }

    .blogdeta-hd .lefts .infos {
        margin-top: 32px;
    }

    .blogdeta-main .flexs {
        flex-direction: column;
    }

    .blogdeta-main .flexs .lefts {
        width: 100%;
    }

    .blogdeta-main .flexs .rights {
        width: 100%;
        margin-top: 60px;
    }

    .case-details-flex .lefts .titles {
        padding: 30px 32px 30px;
        font-size: 26px;
    }

    .case-group .titles {
        font-size: 22px;
        margin-bottom: 20px;
    }

    .case-group .case-group-link .tit {
        font-size: 18px;
        margin-top: 12px;
    }

    .case-group .case-group-item {
        margin-bottom: 25px;
    }

    .case-details-controls {
        flex-direction: column;
        align-items: flex-start;
    }

    .case-details-controls .case-cut {
        width: 100%;
        margin-bottom: 20px;
    }


}

@media (max-width: 991px) {
    :root {
        --padd64: 50px;
    }

    .themeflat-container,
    .themeflat-container2,
    .themeflat-container3 {
        width: calc(100% - 40px);
    }

    .home-factory>.cards {
        width: calc(100% - 40px);
    }

    .mod_title {
        font-size: 28px;
    }

    .page-banners {
        height: 340px;
    }

    .page-banners-content .titles {
        font-size: 34px;
    }

    .home-product .cards,
    .home-solution .cards,
    .home-factory .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-case .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-about .section {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-about .about__media {
        grid-column: auto;
    }

    .home-about .about__stats {
        padding-left: 0;
        border-left: 0;
    }

    .footer .footer__mid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .footer .footer__brand {
        grid-column: 1 / -1;
    }

    .solution-section .entries {
        gap: 28px;
    }

    .app-section .app,
    .app-section .app.w-25 {
        width: 50%;
    }

    .product-app-item,
    .product-series-item {
        width: 50%;
    }

    .solution-prducts .grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-info .info__cols {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-form .flexs,
    .blogdeta-hd .flexs,
    .blogdeta-main .flexs,
    .case-details-flex,
    .prodeta-info .flexs {
        flex-direction: column;
    }

    .contact-form .flexs {
        flex-direction: column-reverse;
    }

    .contact-form .left,
    .contact-form .right,
    .blogdeta-hd .lefts,
    .blogdeta-hd .rights,
    .blogdeta-main .flexs .lefts,
    .blogdeta-main .flexs .rights,
    .case-details-flex .lefts,
    .case-details-flex .rights,
    .prodeta-info .lefts,
    .prodeta-info .rights {
        width: 100%;
    }

    .contact-form .left,
    .blogdeta-hd .rights,
    .prodeta-info .rights {
        margin-top: 32px;
    }

    .blogdeta-main .flexs .lefts {
        padding-right: 0;
    }

    .blogdeta-main .flexs .rights {
        position: static;
        margin-top: 40px;
    }

    .news-nav-item,
    .blog-items,
    .case-items {
        width: 50%;
    }

    .support-main-list {
        flex-wrap: wrap;
    }

    .support-main-item {
        width: 33.333333%;
    }

    .support-video-item {
        width: 50%;
        padding: 0 18px;
    }

    .support-video-list {
        margin-right: -18px;
        margin-left: -18px;
    }

    .support-download-search .lefts,
    .support-download-search button,
    .support-download-nav .items {
        max-width: 100%;
    }

    .casenav__inner {
        flex-wrap: wrap;
        justify-content: center;
        gap: 26px 10px;
        padding: 22px 20px;
    }

    .casenav__inner .item {
        flex: 0 0 calc(25% - 10px);
    }

    .case-big-flexs {
        align-items: stretch;
    }

    .case-big-flexs .lefts {
        padding: 28px 28px 78px;
    }

    /* .case-big-flexs .lefts .imgs img {
        width: min(240px, 100%);
        height: auto;
    } */

    .case-details-flex .rights {
        padding-left: 0;
        margin-top: 40px;
    }

    .prodeta-info .flexs {
        align-items: stretch;
    }

    .prodeta-nav-list {
        flex-wrap: wrap;
        gap: 0 24px;
    }

    .prodeta-nav-item {
        flex: 0 0 auto;
        white-space: nowrap;
        margin-right: 0;
    }

    .stats-inner {
        justify-content: space-around;
    }

    .stat-item {
        flex-basis: calc(33.333333% - 24px);
    }

    .cert-logos {
        flex-basis: 100%;
        justify-content: center;
    }

    .cta .cta-inner {
        flex-wrap: wrap;
        gap: 20px 30px;
    }

    .cta .cta-desc {
        max-width: none;
    }

    .prodeta-nav {
        position: relative;
        z-index: 1;
    }

    .blog-flexs {
        flex-direction: column;
    }

    .blog-flexs .lefts,
    .blog-flexs .rights {
        width: 100%;
    }

    .blog-flexs .lefts {
        position: static;
        margin-bottom: 20px;
        padding-right: 0;
    }
}

@media (max-width: 768px) {

    .themeflat-container,
    .themeflat-container2,
    .themeflat-container3 {
        width: calc(100% - 32px);
    }

    .home-factory>.cards {
        width: calc(100% - 32px);
    }

    .mod_header {
        margin-bottom: 26px;
    }

    .mod_title,
    .mod__title {
        font-size: 25px;
        line-height: 1.35;
    }

    .mod_subtitle {
        font-size: 14px;
        line-height: 1.6;
    }

    .page-banners-content {
        padding-top: 40px;
    }

    .page-banners-content .titles {
        font-size: 28px;
    }

    .page-banners-content .texts {
        width: 100%;
        margin-top: 10px;
        font-size: 14px;
        line-height: 1.6;
    }

    .mod-braeds-list {
        flex-wrap: wrap;
        padding: 14px 0;
    }

    .mod-braeds-item a {
        font-size: 14px;
    }

    .home-product .cards,
    .home-solution .cards,
    .home-factory .cards,
    .home-case .cards {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
    }

    .home-choose .features {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
        gap: 30px 0;
    }

    .home-choose .feature {
        padding: 0 18px;
    }

    .home-about .about__stats {
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr));
    }

    .home-about .stat {
        border: 0;
        border-top: 1px solid #e4e8ee;
        padding: 18px 12px;
    }

    .home-about .stat:nth-child(1) {
        border-top: 0;
    }

    .footer .footer__top-left,
    .footer .newsletter {
        flex-direction: column;
        align-items: flex-start;
        gap: 18px;
    }

    .footer .newsletter__title {
        white-space: normal;
    }

    .footer .newsletter__form {
        width: 100%;
    }

    .footer .newsletter__input {
        width: auto;
        min-width: 0;
        flex: 1;
    }

    .footer .newsletter__btn {
        padding: 0 16px;
    }

    .footer .footer__mid,
    .footer .products__grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .footer .footer__brand {
        grid-column: auto;
    }

    .solution-section .entries {
        grid-template-columns: minmax(0, 1fr);
    }

    .solution-section .entry__overlay {
        right: 18px;
        bottom: 18px;
        left: 18px;
    }

    .solution-section .entry__overlay-title {
        font-size: 22px;
    }

    .app-section .apps,
    .product-app-list,
    .product-series-list,
    .news-nav-list,
    .blog-lists,
    .support-video-list,
    .case-lists {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
        gap: 24px;
        margin-right: 0;
        margin-left: 0;
    }

    .app-section .app,
    .app-section .app.w-25,
    .product-app-item,
    .product-series-item,
    .news-nav-item,
    .blog-items,
    .support-video-item,
    .case-items {
        width: auto;
        max-width: none;
        padding: 0;
        margin-bottom: 0;
    }

    .pro-titles,
    .solution-details-tits,
    .solution-prducts .section__title,
    .solution-form .form__title {
        font-size: 25px;
    }

    .solution-details-content {
        font-size: 15px;
    }

    .solution-details-content table,
    .blogdeta-edit table,
    .case-edits table,
    .prodeta-edit table,
    .support-how-edit table {
        display: block;
        width: 100%;
        overflow-x: auto;
    }

    .solution-prducts .section__head {
        gap: 16px;
    }

    .solution-prducts .grid,
    .solution-form .form__row,
    .contact-info .info__cols {
        grid-template-columns: minmax(0, 1fr);
    }

    .contact-form .img_box {
        height: auto;
    }

    .contact-form-box label,
    .blogdeta-form-item {
        width: 100%;
    }

    .blogdeta-hd .lefts .titles {
        font-size: 26px;
    }

    .blogdeta-hd .lefts .infos {
        margin-top: 24px;
    }

    .blogdeta-group-list .links {
        align-items: flex-start;
    }

    .blogdeta-group-list .links .imgs {
        width: 120px;
    }

    .blogdeta-group-list .links .conts {
        width: calc(100% - 120px);
        padding-left: 14px;
    }

    .blogdeta-media {}

    .blogdeta-page {
        flex-direction: column;
        align-items: flex-start;
        gap: 18px;
    }

    .blogdeta-page .prevs,
    .blogdeta-page .nexts {
        width: 100%;
        text-align: left;
    }

    .support-banner .titles {
        font-size: 38px;
    }

    .support-main .mod_header .mod_subtitle {
        font-size: 18px;
    }

    .support-main-list {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
        gap: 28px 16px;
        margin: 0;
    }

    .support-main-item {
        width: auto;
        padding: 0;
    }

    .support-main-link .icons {
        width: 96px;
        height: 96px;
    }

    .support-video .mod_header .mod_title,
    .support-faq .mod_header .mod_title {
        font-size: 30px;
    }

    .support-video-cont .tits {
        font-size: 21px;
    }

    .support-download-search {
        flex-direction: column;
        gap: 10px;
    }

    .support-download-search .lefts,
    .support-download-search button {
        width: 100%;
        height: 56px;
        border-radius: 8px;
    }

    .support-download-search .lefts {
        margin-right: 0;
    }

    .support-download-search .lefts .icons {
        width: 42px;
        height: 42px;
    }

    .support-download-search .lefts input {
        padding-left: 62px;
        font-size: 17px;
    }

    .support-download-nav {
        flex-wrap: wrap;
        justify-content: center;
        gap: 2px;
    }

    .support-download-nav .items {
        width: auto;
        min-width: min(180px, 100%);
        flex: 1 1 180px;
        font-size: 18px;
        margin-right: 0;
    }

    .support-download-list {
        padding: 10px;
    }

    .support-download-list .conts {
        flex-direction: column;
        align-items: stretch;
        padding: 18px;
    }

    .support-download-list .conts .imgs,
    .support-download-list .conts .infos {
        width: 100%;
    }

    .support-download-list .conts .infos {
        padding-top: 18px;
        padding-left: 0;
    }

    .support-download-list .conts .infos .tits {
        font-size: 22px;
    }

    .support-download-list .conts .infos .size {
        font-size: 18px;
    }

    .support-download-list .conts .infos .btns {
        width: min(164px, 100%);
    }

    .support-faq .flexs {
        flex-direction: column;
    }

    .support-faq .flexs .items {
        width: 100%;
        border-right: 0;
        border-bottom: 2px solid #fff;
    }

    .support-faq .flexs .items .tits {
        font-size: 22px;
    }

    .support-faq-list .hds p {
        padding-right: 16px;
        font-size: 17px;
    }

    .support-how-edit h1 {
        font-size: 30px;
    }

    .support-how-edit h2 {
        font-size: 26px;
    }

    .support-how-edit h3 {
        font-size: 23px;
    }

    .casenav__inner {
        gap: 22px 10px;
        padding: 20px 10px;
    }

    .casenav__inner .item {
        flex: 0 0 calc(33.333333% - 10px);
        min-width: 0;
    }

    .casenav__inner .item__label {
        font-size: 15px;
        text-align: center;
        overflow-wrap: anywhere;
    }

    .case-big-swiper .swiper-pagination {
        left: 20px !important;
        right: 20px;
        bottom: 22px !important;
    }

    .case-big-swiper .swiper-pagination .swiper-pagination-bullet {
        margin-right: 34px !important;
    }

    .case-big-flexs {
        flex-direction: column-reverse;
    }

    .case-big-flexs .lefts,
    .case-big-flexs .rights {
        width: 100%;
    }

    .case-big-flexs .lefts {
        padding: 26px 22px 76px;
    }

    .case-big-flexs .lefts .subtit {
        font-size: 23px;
    }

    .case-details-flex .lefts .titles,
    .case-details-flex .lefts .content,
    .case-details-controls {
        padding-right: 20px;
        padding-left: 20px;
    }

    .case-details-controls {
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
    }

    .case-details-controls .case-cut {
        width: 100%;
    }

    .case-details-controls .case-details-back {
        align-self: flex-start;
    }

    .prodeta-info .lefts {
        align-items: stretch;
    }

    .prodeta-info .rights .title {
        font-size: 28px;
        line-height: 1.4;
    }

    .prodeta-info-list {
        margin-right: 0;
        margin-left: 0;
        gap: 25px 0;
    }

    .prodeta-info-item {
        width: 50%;
        padding: 0;
    }

    .prodeta-info-group {
        flex-wrap: wrap;
        gap: 12px;
        margin-top: 32px;
    }

    .prodeta-info-group .prodeta-info-btn {
        flex: 1 1 180px;
        justify-content: center;
        margin-right: 0;
        text-align: center;
    }

    .prodeta-nav-item {
        flex: 0 0 auto;
        min-height: 44px;
        padding: 10px 16px;
        font-size: 16px;
        white-space: nowrap;
    }

    .prodeta-nav {
        position: sticky;
        top: 0;
        z-index: 10;
    }

    .prodeta-nav-list {
        display: flex;
        flex-wrap: nowrap;
        gap: 0;
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        scrollbar-width: none;
    }

    .prodeta-download-link {
        align-items: flex-start;
        padding: 18px;
    }

    .prodeta-download-link .lefts,
    .prodeta-download-link .rights {
        min-width: 0;
    }

    .prodeta-download-link .lefts .tits,
    .prodeta-download-link .rights .tits {
        font-size: 16px;
        overflow-wrap: anywhere;
    }

    .prodeta-download-link .lefts .icons {
        width: 28px;
        margin-right: 10px;
    }

    .stats-inner {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
        gap: 24px 16px;
        padding: 24px 20px;
    }

    .stat-item,
    .cert-logos {
        min-width: 0;
    }

    .cert-logos {
        grid-column: 1 / -1;
        flex-wrap: wrap;
        gap: 20px;
    }

    .cta .cta-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .cta .cta-actions {
        width: 100%;
        margin-left: 0;
        flex-wrap: wrap;
    }

    .cta .cta-actions .btn {
        flex: 1 1 180px;
        justify-content: center;
    }

    .product-app-list {
        margin-bottom: 0;
    }

    .blogdeta-group-list .links .tits {
        font-size: 16px;
    }

    .blogdeta-group-list .links .times {
        font-size: 14px;
        margin-top: 0px;
    }

    .blogdeta-group-list .links .tits {
        margin-bottom: 10px;
    }

    .blogdeta-group {
        margin-bottom: 40px;
    }

    .blogdeta-group-list .items {
        padding: 20px 0;
        border-bottom: 1px solid #d3d3d3;
    }

    .blogdeta-page .tits {
        font-size: 18px;
        margin-bottom: 5px;
    }

    .blogdeta-media {
        padding: 20px 0;
    }

    .news-nav-link .title {
        font-size: 20px;
    }

    .blog-content {
        padding-top: 10px;
    }

    .blog-liinks .tits {
        font-size: 18px;
    }

    .blog-liinks .time {
        font-size: 14px;
    }

    .case-details-flex .lefts .titles {
        padding: 25px 22px 25px;
        font-size: 24px;
    }

    .case-details-flex .lefts .tits {
        padding-left: 16px;
        padding-bottom: 15px;
        font-size: 20px;
        margin-bottom: 30px;
    }

    .case-details-flex .lefts .tits::before {
        top: 11px;
    }

    .case-details-flex .lefts .content {
        padding-bottom: 30px;
    }

    .case-details-controls {
        padding-top: 30px;
    }

    .contact-info .col__circle {
        width: 60px;
        height: 60px;
    }

    .contact-info .col__circle svg {
        width: 26px;
        height: 26px;
    }

    .prodeta-info .lefts {
        flex-direction: column-reverse;
    }

    .prodeta-info .lefts .bigimg {
        width: 100%;
    }

    .prodeta-info .lefts .smimg {
        width: 100%;
    }

    .prodeta-smimg-items {
        padding: 0 5px;
    }

    .prodeta-smimg {
        margin: 4px -5px 0;
    }

    .prodeta-info-group {
        flex-direction: column;
    }

    .prodeta-info-group .prodeta-info-btn {
        flex: 1 1;
        padding: 11px 16px;
        width: 100%;

    }

    .blog-pagination__list li span, .blog-pagination__list li a {
        width: 46px;
        height: 46px;
    }

    .blog-pagination__list li a svg {
        width: 20px;
        height: 20px;
    }
    
    .home-case .cards{
        grid-template-columns: repeat(2, 1fr);
    }
}

.header-top-inner .address a svg, .header-top-inner .address address svg {
    width: 20px;
    flex-shrink: 0;
    margin-right: 4px;
    transform: translateY(4px);
}

.header-top .header-top-inner .address a, .header-top-inner .address a.email, .header-top-inner .address a[href^="tel:"] {
    color: #ffffff !important;
}

.header-top-inner .address a svg, .header-top-inner .address a svg path, .header-top-inner .address a svg * {
    fill: #ffffff !important;
}