@charset "utf-8";
.about.wow.fadeInUp ,.resp-tabs-container,.blog_main .blog_p,.contact.wow.fadeInUp,_#accordion .panel-body{
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    letter-spacing: .06em;
    line-height: 1.8em;
    color: #1c1c1c;
}
#Description ul,#Description ol,#Description li, #Description dl, #Description dd, #Description dt{
    list-style: revert;
    padding: revert;
    margin: revert;
}
#Description a,#Description  a:hover{
    text-decoration: underline;
    color: revert;
}
#Description table, #Description td,#Description th {
    margin: revert;
    padding: revert;
    /*border-spacing: revert;*/
    /*border-collapse: revert;*/
}
#Description h1, #Description h2, #Description h3, #Description h4, #Description h5, #Description h6 ,#Description p{
    margin: revert;
    padding: revert;
    font-size: revert;
}
#Description iframe {
    max-width: 100%;
}
.com_ul .p iframe {
    width: 100%;
}
.com_ul .p table {
    border-spacing: revert;
    border-collapse: revert;
}
#videosss
{
    height: 600px;
}
@media only screen and (max-width: 768px) {
    #videosss
    {
        height: 400px;
    }
}
.salesman
{
    padding-left: 8px;
    text-align: left;
    float: left;
    display: inline;
}
.salesman strong
{
    font-size: 13px;
}
.salesman p.tel
{
    height: 25px;
    line-height: 25px;
}
.salesman p {
    font-size: 14px;
}
.salesman .contacts
{
}
.salesman .contacts span
{
    font-weight: bold;
}
.salesman .online
{
    margin-top: 10px;
}
.salesman .online a
{
    margin-right: 5px;
    float: left;
    height: 22px;
    width: 22px;
    display: block;
    background: url("../images/salesman.png") no-repeat;
}
.salesman .online a.msn
{
    background-position: 0 0;
}
.salesman .online a.skype
{
    background-position: -22px 0;
}
.salesman .online a.email
{
    background-position: -44px 0;
}
.salesman .online a.alibaba,.salesman .online a.ali
{
    background-position: -88px 0;
}
.salesman .online a.qq
{
    background-position: -132px 0;
}

.salesman .online a.whatsapp {
    background-position: -110px 0;
}
.salesman .APic img{
    max-width: 130px;
}
.salesman .APic {
    margin-top: 10px;
}

.container {
    max-width: 1400px;
}

#clear {
    background: url("../images/guanbi.png") no-repeat;
    height: 22px;
    width: 22px;
    display: block;
    position: absolute;
    top: 10px;
    right: 10px;
    background-size: 100%;
}

html[lang="ar"] {
    direction: rtl;
}

.oimg{
    overflow: hidden;
}
.oimg img{
    transition: all 0.3s;
    display: inline-block;
}
.oimg img:hover{
    transform: scale(1.1);
}

.swiper{
    --swiper-navigation-color:#4FB8AE;
    --swiper-pagination-color:#4FB8AE;
    --swiper-theme-color:#4FB8AE;
    --swiper-pagination-bullet-size:14px;
    --swiper-pagination-bullet-inactive-opacity:0.5;
    --swiper-pagination-bullet-horizontal-gap:8px;
}


/*reset*/
h1,h2,h3,h4,h5,h6{ margin:0px;}
:focus{outline:0;}
body,ul,img,p,input,dl,dd,tr,th,td{margin:0;padding:0;}
em{font-style:normal;}
img{border:none; height:auto; max-width:100%;}
a{text-decoration:none;color:#292929; line-height:26px;}
input{padding:0px;vertical-align: middle;line-height: normal;border:none;} 
body{overflow-x:hidden;  font-size:13px; line-height:30px; word-wrap:break-word;  word-break: break-word; color:#292929;font-family: Arial, Helvetica, sans-serif;max-width: 1920px;margin: 0 auto;}
.table-responsive{ overflow:auto;min-height:.01%;}
.clearfix{*zoom:1;}
.clearfix:before,.clearfix:after{line-height:0; display:table; content:"";}
.clearfix:after{clear:both;}
a:hover{text-decoration:none !important;}
a:focus {outline-style:none; -moz-outline-style: none; text-decoration:none;}
.clear{ clear:both;}
a:hover{transition: 0.5s all;-webkit-transition: 0.5s all;-o-transition: 0.5s all; -moz-transition: 0.5s all;-ms-transition: 0.5s all;}
a,img{transition: 0.5s all;-webkit-transition: 0.5s all;-o-transition: 0.5s all; -moz-transition: 0.5s all;-ms-transition: 0.5s all;}
ul li{list-style:none;}

.n_right .blog_main .blog_p ul li, .n_right .blog_main .blog_p ul ,.n_right .pro_detail .pro-tab ul,.n_right .pro_detail .pro-tab li,.n_right .about ul , .n_right .about li,
.n_right .com_ul li,.n_right .com_ul ul{
    margin: revert;
    padding: revert;
    list-style: unset;
}
.home-header-wrap { position: sticky; top: 0; z-index: 100; background: #eeeeee; border-bottom: 1px solid #d8dee5; }
.home-header-inner { width: 1720px; margin: 0 auto; height: 80px; display: flex; gap: 160px; align-items: center;  justify-content: space-between; }
.home-header-logo-nav { display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.home-header-logo { margin: 0; display: flex; align-items: center; }
.home-header-logo-image { width: 155px; height: 35px; object-fit: contain; display: block; }
.home-header-nav ul{ display: flex; gap: 26px; align-items: center;  white-space: nowrap;   margin-top: 14px;}
.home-header-link { color: #5b6470; text-decoration: none; line-height: 1; font-size: 16px; }
.home-header-link:hover {
    color: #08A7A5;
}
.home-header-nav ul .home-header-link.is-current { color: #08A7A5; }
.home-header-tools { display: flex; align-items: center; gap: 20px; position: relative; z-index: 30; }
html[lang="ar"] .home-header-tools {
    flex-direction: row-reverse;
}
.home-header-search { position: relative; }
.home-header-search-btn,
.home-header-tool { height: 40px;
    line-height: 40px;
    border-radius: 8px;
    background: linear-gradient(90deg,#029694,#74B99C);
    color: #fff;
    padding: 0 25px;
    font-size: 16px;
    white-space: nowrap;
    border: none; }
.home-header-tool:hover {
    background: linear-gradient(90deg,#E28307,#EDDE62);
    cursor: pointer;
}
.home-header-search-btn { cursor: pointer; user-select: none; display: flex; align-items: center; justify-content: center; gap: 5px;  white-space: nowrap; }
.home-header-search-image { width: 20px; height: 20px; display: block; flex: 0 0 20px; object-fit: contain; }
.home-header-search-panel {
    position: absolute;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 320px;
    padding: 8px;
    border-radius: 10px;
    display: none;
    z-index: 60;
}
html[lang="ar"]  .home-header-search-panel {
    position: absolute;
    right: unset;
    top: 50%;
    transform: translateY(-50%);
    width: 320px;
    padding: 8px;
    border-radius: 10px;
    display: none;
    z-index: 60;
    left: 100%;
}
.home-header-search-input {
    width: 100%;
    height: 40px;
    border: 1px solid #ccd5e1;
    border-radius: 8px;
    padding: 0 14px;
    font-size: 16px;
    color: #334155;
    background: rgba(255, 255, 255, .92);
    outline: none;
}
.home-header-search:hover .home-header-search-panel,
.home-header-search:focus-within .home-header-search-panel { display: block; }
.home-header-lang-wrap { position: relative; }
.home-header-lang { display: flex; align-items: center; gap: 8px; height: 40px; border-radius: 8px; border: 1px solid #cfd7df; background: #f8fafc; padding: 0 10px; cursor: pointer;  font-size: 16px;  white-space: nowrap; }
.home-header-lang-flag { width: 24px; height: 24px; border-radius: 999px; display: grid; place-items: center; font-size: 11px; color: #fff; background: #93a3b8; flex: 0 0 24px; }
.home-header-lang-flag img { width: 100%; height: 100%; display: block; border-radius: 999px; object-fit: cover; }
.home-header-lang-arrow { color: #7d8795; font-size: 12px; background: url("../images/langicon.png") no-repeat center center;
    width: 20px;
    height: 20px;
    text-indent: 25px;
    overflow: hidden;
    transition: all 0.3s;
}
.home-header-lang-menu {
    position: absolute;
    top: 100%;
    right: 0;
    width: 240px;
    background: rgba(255,255,255,.66);
    border: 1px solid #cfd7df;
    border-radius: 10px;
    box-shadow: 0 12px 24px rgba(16,24,40,.18);
    display: none;
    z-index: 80;
    overflow: hidden;
}
.home-header-lang-wrap:hover .home-header-lang .home-header-lang-arrow {
    transform: rotatez(-90deg);
}
.home-header-lang-wrap:hover .home-header-lang-menu { display: block; }
.home-header-lang-wrap.is-open .home-header-lang-menu { display: block; }
.home-header-lang-row { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid #dbe2ea; cursor: pointer; }
.home-header-lang-row:first-child { border-top: 0; }
.home-header-lang-item { display: flex; align-items: center; gap: 10px; padding: 8px 10px; color: #3f4a59; font-size: 13px;  border: 0; background: transparent; text-align: left; font-family: inherit; cursor: pointer; }
.home-header-lang-item:hover { color: #0aa79d;}
.home-header-lang-dot { width: 18px; height: 18px; border-radius: 999px; background: #a3afbf; display: grid; place-items: center; font-size: 10px; color: #fff; }
.home-header-lang-dot img { width: 100%; height: 100%; display: block; border-radius: 999px; object-fit: cover; }
.home-header-menu-btn { display: none; background: transparent; border: 0; width: 40px; height: 40px; padding: 0; cursor: pointer; }
.home-header-menu-btn span { display: block; width: 20px; height: 2px; margin: 4px auto; background: #111827; }
.home-header-drawer { display: none; border-top: 1px solid #e8ecf2; background: #fff; }
.home-header-drawer.is-open { display: block; }
.home-header-drawer-link { display: block; padding: 12px 20px; color: #334155; text-decoration: none; font-size: 14px; border-bottom: 1px solid #eef2f7; }

.home-header-nav ul li {
    position: relative;
}
.home-header-nav ul li .submenu {
    position: absolute;
    top: 100%;
    white-space: nowrap;
    background: #EEE;
    display: none;
}
.home-header-nav ul li .submenu .live {
    position: relative;
}
.home-header-nav ul li .submenu .live .erji {
    position: absolute;
    top: 0;
    left: 100%;
    background: #EEE;
    border-left: 1px solid #D8DEE5;
    display: none;
}
.home-header-nav ul li .submenu .flex-w {
    padding: 8px 10px;
    display: block;
    border-bottom: 1px solid #D8DEE5;
}
.home-header-nav ul li:hover .submenu {
    display: block;
}
.home-header-nav ul li .submenu .live:hover .erji {
    display: block;
}

.home-header-nav ul li .submenu .flex-w:hover {
    background: #41ACA1;
    color: #fff;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .home-header-inner { width: calc(100% - 72px); gap: 20px; justify-content: space-between; }
    .home-header-nav ul { gap: 22px; }
    .home-header-tools { gap: 14px; }
    .home-header-search-btn,
    .home-header-tool { padding: 0 18px; }
}
.mhide{display:block;}
.phide{display:none;}
@media (max-width: 1440px) {
    .home-header-logo-nav {
        gap: 30px;
    }
    .home-header-nav ul {
        gap: 8px;
    }
}

@media (max-width: 1279px) {
    .home-header-logo-nav {
        gap: 20px;
    }

}
@media (max-width: 1199px) {
    .mhide{display:none;}
    .phide{display:block;}
    .home-header-inner { width: auto; height: 68px; padding: 0 24px; gap: 0; justify-content: space-between; }
    .home-header-logo-nav { flex: 1; justify-content: flex-start; }
    .home-header-nav { display: none; }
    .home-header-tools { gap: 12px; }
    .home-header-search-btn,
    .home-header-tool { height: 40px; line-height: 40px; padding: 0 16px; }
    .home-header-lang { height: 40px; }
    .home-header-lang-wrap { z-index: 120; }
    .home-header-lang-menu { left: auto; right: 0; width: 240px; z-index: 140; }
    .home-header-lang-wrap:hover .home-header-lang-menu { display: none; }
    .home-header-lang-wrap.is-open .home-header-lang-menu { display: block; }
    .home-header-menu-btn { display: block; }
    .home-header-search-panel { right: 0; top: calc(100% + 8px); transform: none; }
    .home-header-drawer { position: absolute; left: 0; right: 0; top: 100%; z-index: 90; box-shadow: 0 16px 28px rgba(15, 23, 42, .16); }
    .home-header-drawer .submenu .live > span {
        padding: 8px 20px 8px 30px;
        border-bottom: 1px solid #EEF2F7;
    }
    .home-header-drawer .submenu .live .erji .flex-w {
        display: block;
        padding: 8px 45px;
        border-bottom: 1px solid #EEF2F7;
    }
    .home-header-drawer ul {
        overflow: hidden;
        overflow-y: auto;
        max-height: 80vh;
    }
    .home-header-drawer ul li a {
        font-size: 16px;
        width: 100%;
    }
    .home-header-drawer ul li .EFfx {
        width: 50px;
        text-align: center;
    }
    .home-header-drawer ul li .submenu ,.home-header-drawer ul li .submenu .live .erji{
        display: none;
    }
    .home-header-drawer ul li .submenu.active ,.home-header-drawer ul li .submenu .live .erji.active{
        display: block;
    }
    .sousuoyum.phide {
        position: fixed;
        z-index: 111;
        left: 0;
        right: 0;
        top: 0;
        height: 56px;
        background: rgba(0,0,0,0.5);
        display: none;
        width: 100% !important;
    }
    .sousuoyum.phide .home-header-search-panel {
        position: unset;
    }
    .sousuoyum.phide .home-header-search-panel {
        position: unset;
        width: 100%;
        gap: 6px;
    }
    .sousuoyum.phide .home-header-search-panel .home-header-search-btn {
        width: 60px;
        white-space: nowrap;
        position: relative;
        color: transparent;
    }
    .sousuoyum.phide .home-header-search-panel .home-header-search-btn .home-header-search-image { position: absolute; left: 50%; top: 50%; width: 20px; height: 20px; transform: translate(-50%, -50%); }
    .sousuoyum.phide .home-header-search-panel .home-header-search-btn-error {
        border: 1px solid #FF784C;
        background: #EB6438;
        color: #fff;
        border-radius: 10px;
        width: 60px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .sousuoyum.phide .home-header-search-panel .home-header-search-btn-error .EFfx.eefx-icon_error {
        font-size: 22px;
    }
}
@media (max-width: 767px) {
    .home-header-inner { height: 56px; padding: 0 12px; }
    .home-header-logo-nav { flex: 0 1 auto; min-width: 0; }
    .home-header-logo { width: 118px; height: auto; overflow: visible; flex: 0 0 118px; border: 0; border-radius: 0; background: transparent; display: flex; align-items: center; }
    .home-header-logo::before { content: none; }
    .home-header-logo-image { display: block; width: 118px; height: auto; }
    .home-header-tools { gap: 8px; margin-left: auto; }
    .home-header-tool.quote { display: none; }
    .home-header-search-btn { width: 40px; height: 40px; line-height: 40px; padding: 0; border-radius: 8px; overflow: hidden; white-space: nowrap; color: transparent; position: relative; box-sizing: border-box; }
    .home-header-search-btn .home-header-search-image { position: absolute; left: 50%; top: 50%; width: 20px; height: 20px; transform: translate(-50%, -50%); }
    .home-header-lang { width: 48px; height: 40px; padding: 0; justify-content: center; overflow: hidden; box-sizing: border-box; }
    .home-header-lang-flag { width: 28px; height: 28px; flex-basis: 28px; }
    .home-header-lang span:not(.home-header-lang-flag) { display: none; }
    .home-header-menu-btn { width: 40px; height: 40px; flex: 0 0 40px; }
    .home-header-menu-btn span { width: 24px; height: 3px; margin: 4px auto; }
    .home-header-lang-menu { right: 0; left: auto; width: 250px; }
    .home-header-search-panel { width: 260px; right: -58px; }
    html[lang="ar"] .home-header-inner {
        flex-direction: row-reverse;
    }
    html[lang="ar"] .home-header-tools {
        flex-direction: row-reverse;
    }

}



.home-footer-wrap {
    background: #272a29;
    padding: 50px 0 40px;
}
.home-footer-inner {
    width: 1680px;
    margin: 0 auto;
    color: #d7dcdd;
}
.home-footer-logo {
    display: flex;
    align-items: center;
    color: #36aaa7;
    font-size: 34px;
    line-height: 1;
    font-weight: bold;
}
.home-footer-logo-image {
    max-height: 55px;
    display: block;
    object-fit: contain;
}
.home-footer-divider {
    height: 1px;
    margin: 30px 0 64px;
    background: rgba(220, 226, 228, .5);
}

.home-footer-row {
    display: flex;
    justify-content: space-between;
    gap: 100px;
    margin: 0px 80px;
}
.home-footer-columns {
    display: flex;
    gap: 80px;
    flex-direction: column;
    width: 30%;
}

.home-footer-col-title {
    margin: 0 0 26px;
    color: #fff;
    font-size: 20px;
    line-height: 1.15;
    font-weight: bold;
}
.home-footer-inner .home-footer-col a {
    color: #fff;
}
.home-footer-inner .home-footer-col a:hover {
    color: #079895;
}
.home-footer-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.home-footer-list li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 10px;
    color: #d7dcdd;
    font-size: 16px;
    line-height: 1.35;
}
.home-footer-list li::before {
    content: "▪";
    position: absolute;
    left: 0;
    top: 0;
    color: #d7dcdd;
    font-size: 15px;
    line-height: 1.6;
}
.home-footer-contact-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.home-footer-contact-list li {
    margin-bottom: 10px;
    color: #d7dcdd;
    font-size: 17px;
    line-height: 1.5;
}
.home-footer-contact-list li img {
    vertical-align: center;
}
.home-footer-cols {
    display: flex;
    flex-direction: row-reverse;
}
.home-footer-social {
    display: flex;
    gap: 14px;
    margin-top: 60px;
    color: #fff;
}
.home-footer-social span {
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
}

.home-footer-bottom {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 170px;
    border-top: 1px solid rgba(220, 226, 228, .5);
    margin-top: 16px;
    padding-top: 25px;
}
.home-footer-copy {
    margin: 0;
    color: #d7dcdd;
    font-size: 16px;
    line-height: 1.6;
}
.home-footer-copy a {
    color: #d7dcdd;
}
.home-footer-copy a:hover {
    color: #089794;
}
.home-footer-top-button {
    border: 0;
    border-radius: 4px;
    background: #089794;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    cursor: pointer;
    white-space: nowrap;
    padding: 0px 10px;
    line-height: 1.6;
}
.home-footer-top-button:hover {
    background: linear-gradient(90deg,#E28307,#EDDE62);
    color: #fff;
}
.home-footer-social .EFfx {
    font-size: 18px;
    background: #fff;
    color: #272A29;
    padding: 4px;
    border-radius: 4px;
    vertical-align: center;
}
.home-footer-social .EFfx:hover {
    background: #079895;
    color: #fff;
}
.home-footer-col-title .EFfx {
    display: none;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .home-footer-inner { width: calc(100% - 72px); }
    .home-footer-list li,
    .home-footer-contact-list li { font-size: 14px; }
}
@media (max-width: 1400px) {
    .home-footer-row {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        margin: 0px 15px;
    }
    .home-footer-columns {
        display: flex;
        gap: 20px;
        flex-direction: column;
    }
}
@media (max-width: 1199px) {
    .home-footer-wrap { padding: 70px 24px 82px; }
    .home-footer-inner { width: auto; }
    .home-footer-bottom { align-items: center; }
    .home-footer-copy { font-size: 15px; }

}

@media (max-width: 767px) {
    .home-footer-row {
        display: flex;
        justify-content: space-between;
        gap: 15px;
        margin: 0px 15px;
        flex-direction: column;
    }
    .home-footer-columns {
        display: flex;
        gap: 15px;
        flex-direction: column;
        width: 100%;
    }
    .home-footer-wrap { padding: 25px 16px 25px; }
    .home-footer-logo { font-size: 28px; }
    .home-footer-divider { margin: 20px 0 30px; }
    .home-footer-col-title { font-size: 18px; margin-bottom: 10px; }
    .home-footer-list li,
    .home-footer-contact-list li { font-size: 14px; margin-bottom: 4px; }
    .home-footer-bottom { display: block; margin-top: 30px;
        padding-top: 20px; }
    .home-footer-copy { font-size: 13px; }
    .home-footer-top-button { margin-top: 24px; }
    .home-footer-list.toggle_content ,.home-footer-contact-list.toggle_content{
        display: none;
        margin-top: 10px;
    }
    .home-footer-inner .home-footer-col .home-footer-col-title a:hover {
        color: #fff;
    }
    .home-footer-col-title .EFfx {
        display: block;
        padding-left: 60px;
    }
    .home-footer-col-title {
        font-size: 14px;
        margin-bottom: 0px;
        background: #02A5A3;
        padding: 6px 10px;
        border-radius: 4px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}


.home-swiper-wrap { background: #edf2f7; }
.home-swiper { width: 100%; height: 727px; }
.home-swiper-slide { position: relative; }
.home-swiper-image { width: 100%; height: 100%; object-fit: cover; display: block; }
.home-swiper-overlay {
    position: absolute;
    left: 7%;
    top: 50%;
    transform: translateY(-50%);
    max-width: 1000px;
    z-index: 3;
}
.home-swiper-wrap .swiper-slide img {
    object-fit: cover;
    height: 100%;
}
.home-swiper-title {
    margin: 0 0 36px;
    font-size: 52px;
    line-height: 1.2;
    color: #fff;
    font-weight: bold;
}
.home-swiper-desc {
    margin: 0 0 65px;
    font-size: 24px;
    line-height: 1.5;
    color: #fff;
    max-width: 710px;
}
.home-swiper-actions { display: flex; gap: 14px; }
.home-swiper-btn {
    display: inline-flex; align-items: center; justify-content: center;
    border-radius: 6px; background: #4fb8ae; box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.4);
    color: #fff; text-decoration: none;     font-size: 20px;
    padding: 10px 35px;
}
.home-swiper-btn:hover {
    background: #E28307;
}
@media (max-width: 1199px) {
    .home-swiper { height: 460px; }
    //.home-swiper-image { object-fit: fill; }
    .home-swiper-overlay { left: 6%; max-width: 620px; }
    .home-swiper-title { font-size: 28px;
        line-height: 1.2; }
    .home-swiper-desc { font-size: 18px; }
    .home-swiper-btn {  padding: 10px 26px; }
}
@media (max-width: 767px) {
    .home-swiper { height: 330px; background: #edf2f7; }
    .home-swiper-slide { min-height: 0; background: #edf2f7; }
    .home-swiper-image { width: 100%; height: 100%; _object-fit: fill; object-position: center center; }
    .home-swiper-overlay {
        position: absolute;
        left: 50px;
        right: 40px;
        top: 50%;
        transform: translateY(-50%);
        max-width: none;
    }
    .home-swiper-title {
        max-width: 360px;
        font-size: 18px;
        line-height: 1.28;
        margin-bottom: 10px;
    }
    .home-swiper-desc { max-width: 360px; font-size: 16px; line-height: 1.45; margin-bottom: 24px; }
    .home-swiper-actions { gap: 10px; flex-wrap: wrap; }
    .home-swiper-btn { padding: 10px 16px; font-size: 14px; box-sizing: border-box; }
}



.home-project-wrap {
    background: #eef4f4;
    padding: 112px 0 142px;
    padding: 70px 0;
}
.home-project-inner {
    width: 1680px;
    margin: 0 auto;
}
.home-project-title {
    margin: 0;
    color: #05080c;
    font-size: 44px;
    line-height: 1.16;
    font-weight: bold;
}
.home-project-sub {
    width: 880px;
    margin: 28px 0 40px;
    color: #687078;
    font-size: 18px;
    line-height: 1.5;
}
.home-project-panel {
    background: #fff;
    padding: 50px 70px 70px;
    box-sizing: border-box;
}
.home-project-panel-top {
    margin-bottom: 64px;
}
.home-project-panel-bottom {
    display: grid;
    grid-template-columns: 600px 1fr;
    gap: 100px;
    align-items: start;
}
.home-project-panel-title {
    margin: 0 0 10px;
    color: #5a6067;
    font-size: 34px;
    line-height: 1.18;
    font-weight: bold;
}
.home-project-panel-text {
    color: #6d747c;
    font-size: 16px;
    line-height: 1.55;
}
.home-project-list {
    margin: 0;
    padding: 0;
    list-style: none;
    color: #777f87;
    font-size: 16px;
    line-height: 1.55;
}
.home-project-list li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
}
.home-project-list li::before {
    content: "·";
    position: absolute;
    left: 0;
    top: 2px;
    color: #4e565d;
    font-size: 24px;
    line-height: 1;
    font-weight: bold;
}
.home-project-tip {
    margin: 45px 0 0;
    color: #6f7780;
    font-size: 16px;
    line-height: 1.6;
}
.home-project-form {
    padding-top: 0;
}
.home-project-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 12px;
}
.home-project-field,
.home-project-message {
    width: 100%;
    border: 0;
    outline: 0;
    background: #e6f1f1;
    color: #3e464e;
    font-size: 14px;
    line-height: 1.2;
    box-sizing: border-box;
    font-family: inherit;
    border-radius: 4px;
}
.home-project-field {
    height: 40px;
    padding: 0 15px;
}
.home-project-field::placeholder,
.home-project-message::placeholder {
    color: #9ba6aa;
}
.home-project-field.is-error,
.home-project-message.is-error {
    background: #f7e7e5;
    box-shadow: inset 0 0 0 1px rgba(204, 83, 72, .48);
}
.home-project-field.is-full {
    grid-column: 1 / 3;
}
.home-project-message {
    grid-column: 1 / 3;
    height: 88px;
    padding: 12px 15px;
    resize: none;
}
.home-project-lilst {
    grid-column: 1 / 3;
    position: relative;
}
.home-project-lilst .verify_status {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 128px;
}
.home-project-submit {
    grid-column: 1 / 3;
    height: 64px;
    margin-top: 0;
    border: 0;
    background: #e6f1f1;
    color: #49aaa6;
    font-size: 18px;
    line-height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-family: inherit;
}
.home-project-submit-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-right: 22px;
    border-radius: 50%;
    vertical-align: middle;
}
.home-project-status {
    grid-column: 1 / 3;
    min-height: 20px;
    margin: 12px 0 0;
    color: #49aaa6;
    font-size: 14px;
    line-height: 1.4;
    text-align: center;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .home-project-inner { width: calc(100% - 72px); }
    .home-project-panel-bottom { grid-template-columns: minmax(0, .9fr) minmax(0, 1fr); gap: 60px; }
    .home-project-panel-top { width: min(100%, 1180px); }
}
@media (max-width: 1199px) {
    .home-project-wrap { padding: 78px 24px 92px; }
    .home-project-inner { width: auto; }
    .home-project-title { font-size: 34px; }
    .home-project-sub { width: auto; margin-bottom: 48px; font-size: 17px; }
    .home-project-panel { padding: 58px 46px 64px; }
    .home-project-panel-top { width: auto; margin-bottom: 46px; }
    .home-project-panel-title { font-size: 28px; }
    .home-project-panel-bottom { grid-template-columns: 1fr; gap: 42px; }
    .home-project-list { font-size: 15px; }
    .home-project-tip { margin-top: 38px; font-size: 15px; }
}
@media (max-width: 767px) {
    .home-project-wrap { padding: 30px 16px 40px; }
    .home-project-title { font-size: 26px; }
    .home-project-sub { font-size: 14px; margin: 18px 0 34px; }
    .home-project-panel { padding: 20px 18px 20px; }
    .home-project-panel-title { font-size: 24px; }
    .home-project-panel-text { font-size: 14px; }
    .home-project-list { font-size: 14px; }
    .home-project-form-grid { grid-template-columns: 1fr; }
    .home-project-field, .home-project-field.is-full, .home-project-message, .home-project-submit, .home-project-status {
        grid-column: 1;
    }
    .home-project-lilst {
        grid-column: 1;
    }
    .home-project-field { height: 48px; padding: 0 18px; font-size: 15px; }
    .home-project-message { height: 130px; padding: 18px; font-size: 15px; }
    .home-project-submit { height: 62px; line-height: 62px; }
}


 .news-swiper-wrap {
     overflow: hidden;
 }
.news-swiper {
    width: 100%;
    height: 587px;
}
.news-swiper-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.news-swiper-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
}
.news-swiper-content {
    position: absolute;
    left: calc((100% - 1680px) / 2 + 150px);
    top: 50%;
    z-index: 2;
    color: #231918;
    max-width: 1380px;
    right: 0;
    transform: translateY(-50%);
}
.news-swiper-title {
    margin: 0;
    font-size: 54px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: 0;
}
.news-swiper-title-mark {
    display: inline-block;
    margin-top: 6px;
    padding: 0 10px 4px;
    background: #211817;
    color: #fff;
}
.news-swiper-desc {
    margin: 28px 0 0;
    color: #312927;
    font-size: 17px;
    line-height: 1.5;
    font-weight: 700;
    max-width: 600px;
}
.news-swiper-pic {
    margin-top: 35px;
}
@media (max-width: 1799px) and (min-width: 1200px) {
    .news-swiper-content {
        left: 15%;
    }
}
@media (max-width: 1199px) {
    .news-swiper {
        height: 460px;
    }
    //.news-swiper-image {
    //    object-fit: fill;
    //}
    .news-swiper-content {
        left: 14.5%;
    }
    .news-swiper-title {
        font-size: 40px;
    }
}
@media (max-width: 767px) {
    .news-swiper {
        height: 370px;
    }
    .news-swiper-image {
        object-position: center center;
    }
    .news-swiper-content {
        left: 22px;
        right: 22px;
    }
    .news-swiper-title {
        font-size: 26px;
    }
    .news-swiper-desc {
        margin-top: 18px;
        font-size: 13px;
    }
    .news-swiper-pic {
        margin-top: 15px;
    }
}
@media (max-width: 500px) {

}



.news-list-wrap {
    background: #fff;
    padding: 76px 0 40px;
}
.news-list-inner {
    width: 1460px;
    margin: 0 auto;
}
.news-list-inner {
    border-top: 1px solid #CFE3E2;
}
.news-list-tabs {
    display: flex;
    align-items: center;
    gap: 50px;
    padding-bottom: 36px;
    border-bottom: 1px solid #cfe3e2;
}
.news-list-tab {
    padding: 4px 20px;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: #303133;
    font-size: 17px;
    font-family: inherit;
    cursor: pointer;
}
.news-list-tab.is-active ,.news-list-tab:hover{
    background: linear-gradient(90deg,#029694,#74B99C);
    color: #fff;
}
.news-list-items {
    min-height: 880px;
}
.news-list-item {
    display: grid;
    grid-template-columns: 386px minmax(0, 1fr);
    gap: 42px;
    padding: 58px 0 64px;
    padding: 40px 0 50px;
    border-bottom: 1px solid #cfe3e2;
    align-items: center;
}
.news-list-image {
    width: 386px;
    height: 144px;
    display: block;
    object-fit: cover;
    border-radius: 4px;
    background: #dfeaed;
}
.news-list-title {
    margin: 0 0 12px;
    color: #2a2d31;
    font-size: 18px;
    line-height: 1.35;
    font-weight: bold;
}
.news-list-title a:hover {
    color: #08A7A5;
}
.news-list-date {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 22px;
    color: #656565;
    font-size: 14px;
    line-height: 1;
}
.news-list-date img {
    width: 12px;
    height: 12px;
    display: block;
}
.news-list-text {
    margin: 0;
    color: #5c6268;
    font-size: 16px;
    line-height: 1.65;
    font-weight: 500;
}
.news-list-more {
    color: #019796;
    text-decoration: none;
    white-space: nowrap;
    font-size: 16px;
}
.news-list-more:hover {
    color: #E18000;
}
.news-list-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-top: 30px;
}
.news-list-page {
    min-width: 32px;
    height: 32px;
    padding: 0 12px;
    border: 1px solid #d3dade;
    border-radius: 4px;
    background: #fff;
    color: #8a9299;
    font-size: 13px;
    line-height: 30px;
    font-family: inherit;
    cursor: pointer;
}
.news-list-page.is-active {
    background: #5eaaa5;
    border-color: #5eaaa5;
    color: #fff;
}
.news-list-page.is-disabled {
    opacity: .45;
    cursor: default;
    pointer-events: none;
}
.news-list-tabs-left {
    width: 25%;
    margin-top: 40px;
    position: sticky;
    top: 100px;
    float: left;
}
.news-list-right {
    width: 73%;
    float: right;
}
.news-list-tab {
    display: inline-block;
    margin-bottom: 15px;
}
@media (max-width: 1599px) and (min-width: 1200px) {
    .news-list-inner {
        width: calc(100% - 160px);
    }
}
@media (max-width: 1199px) {
    .news-list-tabs-left {
        width: 100%;
        margin-top: 0;
        position: unset;
        top: 100px;
        float: left;
        display: flex;
        gap: 18px;
        overflow-x: auto;
        align-items: center;
    }
    .news-list-right {
        width: 100%;
        float: right;
    }
    .news-list-inner {
        border-top: none;
    }
    .news-list-wrap {
        padding: 58px 28px 88px;
    }
    .news-list-inner {
        width: auto;
    }
    .news-list-tabs {
        gap: 18px;
        overflow-x: auto;
    }
    .news-list-item {
        grid-template-columns: 300px minmax(0, 1fr);
        gap: 28px;
        padding: 42px 0 46px;
    }
    .news-list-image {
        width: 300px;
        height: 112px;
    }
    .news-list-title {
        font-size: 18px;
    }
    .news-list-text {
        font-size: 14px;
    }
}
@media (max-width: 767px) {
    .news-list-wrap {
        padding: 42px 18px 10px;
    }
    .news-list-tabs , .news-list-tabs-left{
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        overflow: visible;
        padding-bottom: 18px;
    }
    .news-list-tab {
        width: 100%;
        min-width: 0;
        min-height: 46px;
        height: auto;
        padding: 8px 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        white-space: normal;
        text-align: center;
        font-size: 15px;
        line-height: 1.2;
        margin-bottom: 0;
    }
    .news-list-item {
        grid-template-columns: 1fr;
        gap: 22px;
        padding: 38px 0 44px;
    }
    .news-list-image {
        width: 100%;
        height: auto;
        aspect-ratio: 386 / 144;
    }
    .news-list-pagination {
        flex-wrap: wrap;
        margin-top: 10px;
    }
}

.pagination > li {
    display: inline-block;
    margin: 0 2px;
}
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
    background: #029694;
    border-color: #029694;
}
.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus {
    z-index: 3;
    color: #029694;
    background-color: #eee;
    border-color: #ddd;
}
.pagination > li > a, .pagination > li > span {
    color: #029694;
}

.n_main {
    margin: 60px 0px 30px;
}
.mbx_section {
    margin: 10px 0 0;
}
.mbx_section .container .mbx .fa.fa-home {
    margin-right: 4px;
}
.n_main .blog_main h1 {
    text-align: center;
    font-size: 24px;
}
.blog_main .blog-info {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-top: 12px;
}
.blog_main .blog-info .fa {
    margin-right: 5px;
}
#pre_next {
    font-size: 14px;
}
#pre_next li {
    margin: 0;
    padding: 0;
}
#pre_next li span {
    margin-right: 6px;
}
#pre_next li span .fa {
    margin-right: 4px;
}
#pre_next li a:hover {
    color: #079895;
}

.n_main .container > h1 {
    font-weight: bold;
    font-style: normal;
    font-size: 35px;
    letter-spacing: 0em;
    line-height: 1.4em;
    margin-bottom: 0.6em;
    color: #333;
}
@media (max-width:768px){
    .n_main .container > h1 {
        font-weight: unset;
        font-size: 30px;
        margin-bottom: 30px;
        color: #333;
        text-align: center;
        margin-top: 10px;
        line-height: initial;
    }
}
    /*video*/
.container.video div > h1 {
    text-align: center;
    font-size: 24px;
}
.video ul li{ list-style:none; margin-bottom:30px;}
.video ul li .li{-webkit-box-shadow:0px 0px 15px rgba(0,0,0,0.1);box-shadow:0px 0px 15px rgba(0,0,0,0.1); border-radius:10px; padding-bottom:20px;transition: 0.5s all;-webkit-transition: 0.5s all;-o-transition: 0.5s all; -moz-transition: 0.5s all;-ms-transition: 0.5s all; overflow:hidden;}
.video ul li .li .img{ position:relative;}
.video ul li .li .icon{ position:absolute; left:20px; bottom:-18px;transition: 0.5s all;-webkit-transition: 0.5s all;-o-transition: 0.5s all; -moz-transition: 0.5s all;-ms-transition: 0.5s all;}
.video ul li .li .icon a{ width:40px; height:40px; border-radius:50%; background:#02A5A3; display:block; text-align:center; padding-top:5px;}
.video ul li h4 {
    height: 48px;
}
.video ul li h4 a {
    font-size: 14px;
    color: #333;
    font-weight: bold;
    line-height: 24px;
    overflow: hidden;
    margin-top: 30px;
    display: -webkit-box;
    padding: 0px 10px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.video ul li:hover .li{-webkit-box-shadow:0px 0px 15px rgba(0,0,0,0.3);box-shadow:0px 0px 15px rgba(0,0,0,0.3);}
.video ul li:hover .icon { bottom:5px;}
.video ul li:hover .icon a{ background:#DF8208;}



/*inquiry*/
.induiry_line{-webkit-box-shadow:0px 0px 10px rgba(0,0,0,0.15);box-shadow:0px 0px 10px rgba(0,0,0,0.15); margin-top:30px; padding:15px;}
.inquiry{ padding:30px; background:#EEE;}
.inquiry .section_title{ margin-bottom:10px;  font-size: 24px;}
.inquiry .p{ font-size:13px; color:#808080; line-height:24px; max-height:48px; overflow:hidden; margin:10px 0;}
.inquiry .contact_box{ text-align:left; margin-left:0px;}
.inquiry .contact_box .input_1{ font-size:13px; line-height:38px; height:40px; padding-left:15px; width:100%; background:#fff; color:#999; margin-bottom:20px; border:1px solid rgba(0,0,0,0.1);  text-align: left;}
.inquiry .contact_box .input_1:focus{ border:1px solid #C42C21;}
.inquiry .contact_box .input_2{line-height:40px; font-size:13px; height:100px; padding-left:15px; width:100%; background:#fff; color:#999; border:1px solid rgba(0,0,0,0.1); margin-bottom:10px;  text-align: left;}
.inquiry .contact_box .input_2:focus{border:1px solid #C42C21;}


.inquiry .contact_box .btn_1{display:inline-block; margin:10px 0 0; height:40px; line-height:40px; color:#fff; padding:0px 35px; border:none;font-size:14px; text-transform:capitalize; position:relative; background:#079895;font-weight:bold;  transition: 0.5s all;-webkit-transition: 0.5s all;-o-transition: 0.5s all; -moz-transition: 0.5s all;-ms-transition: 0.5s all; border-radius:5px; }
.inquiry .contact_box .btn_1:hover{ background:#005B58;}



.inquiry .contact_box .in_email {
    background: #fff url(../images/input_eamil.png) no-repeat 8px center;
    padding-left: 40px;
    background-size: 24px;
}
.inquiry .contact_box .in_tel{ background:#fff url(../images/input_tel.png) no-repeat center left; padding-left:40px;}
.inquiry .contact_box .in_message {
    background: #fff url(../images/input_message.png) no-repeat 8px 10px;
    padding-left: 40px;
    background-size: 24px;
}


.inquiry  .subject_title{ border:1px solid rgba(0,0,0,0.1); background:#fafafa; line-height:40px; height:40px; padding:0px 0px; margin-bottom:20px;overflow: hidden;}
.inquiry  .subject_title a{ color:#C42C21;}
.inquiry .subject_title .input_1 {
    margin-bottom: 0;
    background: #fff !important;
    padding-left: 8px !important;
    height: 38px;
}
.inquiry .subject_title {
    display: flex;
    white-space: nowrap;
    align-items: center;
}
.inquiry .subject_title label {
    margin-bottom: 0;
    padding: 0 10px;
    min-width: 160px;
    text-align: right;
    flex-shrink: 0;
}
.inquiry .subject_title span {
    font-size: 14px;
    color: red;
    margin-right: 10px;
    margin-left: 10px;
}
.inquiry .subject_titleh {
    height: auto;
}
.inquiry .subject_titleh .input_2.in_message,.inquiry .subject_titleh .input_2.in_enterprise {
    margin-bottom: 0;
    background: #fff;
    padding-left: 8px;
    padding-top: 8px;
    padding-bottom: 8px;
    height: 120px;
    line-height: 24px;
}
.inquiry .subject_title span.verify_status {
    width: 160px;
}
.subject_titless {
    display: grid;
    margin-bottom: 10px;
    grid-template-columns: 20% 80%;
}
.subject_titless .right {
    background: #fff;
    width: 100%;
    padding: 8px 14px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}
.subject_titless .right .name a {
    font-size: 16px;
    display: block;
}
.subject_titless label {
    background: #FAFAFA;
    padding: 7px 14px;
    margin-bottom: 0;
    text-align: right;
}
@media screen and (max-width: 768px) {
    .inquiry .p{ font-size:13px;}
}
@media screen and (max-width: 500px) {
    .inquiry .subject_title label {
        margin-bottom: 0;
        padding: 0 5px;
        min-width: 80px;
        font-size: 12px;
        font-weight: inherit;
        white-space: normal;
        line-height: 18px;
    }
    .inquiry .subject_title span {
        font-size: 12px;
        color: red;
        margin-right: 5px;
        margin-left: 5px;
    }
    .inquiry .subject_title .input_1 {
        margin-bottom: 0;
        font-size: 12px;
    }
    #email_form .verify_status {
        width: 200px !important;
        display: inline-block;
        vertical-align: middle;
    }
    .inquiry .subject_titleh .input_2.in_message,.inquiry .subject_titleh .input_2.in_enterprise {
        height: 160px;
    }
    .subject_titless {
        grid-template-columns: 35% 65%;
    }
}

/*download*/
.download{list-style:none;}
.download li{margin-bottom:20px;}
.download li h4 a{font-size:16px;text-transform:capitalize;margin-bottom:15px;color:#333; display:block; font-family:'poppins-s'; border-bottom:1px solid #eee; padding-bottom:6px;}
.download li .text{color:#999999;font-size:12px;line-height:18px;overflow:hidden;height:36px;margin-bottom:20px;}
.download li .icon{color:#fff;display:inline-block;background:#079895 url(../images/icon_pdf.png) no-repeat 15px center;background-size:24px;font-size:12px;padding:6px 25px 4px 50px; font-family:'poppins-s'; border-radius:30px;}
.download li .icon:hover{background-color:#079895;text-decoration:none;color:#fff;}
.download li h4 a:hover{ color:#079895;}
@media only screen and (max-width: 768px) {
    .download li{padding:0;border:1px solid #ebebeb;padding:15px;}
    .download li .page_title{border:none;padding-bottom:0;}
    .download li .text{height:auto;max-height:36px;}
}

@media only screen and (min-width: 998px) {
    .n_right_center{
        text-align: center;
        padding: 0 160px 40px;
    }
    .n_right_center h1 {
        margin-bottom: 10px;
        font-size: 24px;
    }
    .n_right_center p {
        font-size: 16px;
    }
}
@media only screen and (max-width:768px) {
    .n_right_center{
        text-align: center;
        padding: 0 0px 10px;
    }
    .n_right_center h1 {
        margin-bottom: 10px;
        font-size: 24px;
    }
    .n_right_center p {
        font-size: 14px;
    }
}



.home-quality-partners-wrap {
    background: #f5f6f7;
}
.home-quality-hero {
    position: relative;
    height: 748px;
    overflow: hidden;
    background:
            url("../images/Compliance-banner.png") center top / cover no-repeat,
            linear-gradient(180deg, #d7e3ef 0%, #eef4f9 100%);
    clip-path: ellipse(86% 95% at 50% 0%);
}
.home-quality-hero-inner {
    position: relative;
    width: 1680px;
    height: 100%;
    margin: 0 auto;
    z-index: 2;
}
.home-quality-copy {
    position: absolute;
    left: 0;
    top: 100px;
    z-index: 5;
}
.home-quality-title {
    margin: 0 0 40px;
    color: #05080c;
    font-size: 44px;
    line-height: 1.15;
    font-weight: bold;
}
.home-quality-div-text {
    max-width: 600px;
}
.home-quality-text {
    margin: 0 0 20px;
    color: #3e464f;
    font-size: 17px;
    line-height: 1.40;
}
.home-quality-count {
    position: absolute;
    left: 0;
    top: 388px;
    width: 430px;
    box-sizing: border-box;
    padding: 15px 0 15px 45px;
    background: linear-gradient(90deg, rgba(220, 240, 252, .86), rgba(248, 230, 212, .64), rgba(248, 230, 212, .1));
    z-index: 5;
}
.home-quality-count-value {
    margin: 0;
    color: #e89c29;
    font-size: 64px;
    line-height: .9;
    font-weight: bold;

}
.home-quality-count-label {
    margin: 5px 0 0;
    color: #333941;
    font-size: 22px;
    line-height: 1.2;
}
.home-partners-area {
    position: relative;
    width: 1700px;
    margin: 0 auto;
    padding: 105px 0 132px;
    padding: 70px 0 10px;
    overflow: hidden;
    background: transparent;
}
.home-partners-area::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 18px;
    width: 1814px;
    height: 882px;
    transform: translateX(-50%);
    background: url("./assets/home/Global-Medical-Partners-1.png") center top / contain no-repeat;
    opacity: .94;
    pointer-events: none;
    z-index: 0;
}
.home-partners-head {
    position: relative;
    z-index: 2;
    margin-bottom: 40px;
    margin-left: 10px;
}
.home-partners-title {
    margin: 0 0 16px;
    color: #05080c;
    font-size: 44px;
    line-height: 1.12;
    font-weight: bold;
}
.home-partners-text {
    width: 920px;
    margin: 0;
    color: #606a73;
    font-size: 17px;
    line-height: 1.4;
}
.home-partners-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 28px 28px;
}
.home-partner-card {
    border-radius: 15px;
    background: transparent;
    box-shadow: 0 4px 12px rgba(20, 30, 40, .14);
    box-sizing: border-box;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    overflow: hidden;
}
.home-partner-card-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.home-partners-pages {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}
.home-partners-page {
    height: 28px;
    min-width: 28px;
    border: 1px solid #d3dce2;
    border-radius: 4px !important;
    background: #fff;
    color: #77808a;
    font-size: 12px;
    line-height: 26px;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    --swiper-pagination-bullet-size:28px;
    --swiper-pagination-bullet-inactive-color:#fff;
}
.home-partners-page.swiper-pagination-bullet-active {
    background: linear-gradient(90deg,#029694,#74B99C);
    border-color: #029694;
    color: #fff;
}

.home-partners-page.is-disabled {
    opacity: .48;
    cursor: default;
    pointer-events: none;
}
.swiper.mySwipersss .swiper-wrapper {
    padding-bottom: 80px;
}


@media (min-width: 1200px) and (max-width: 1799px) {
    .home-quality-hero-inner,
    .home-partners-area { width: calc(100% - 72px); }
    .home-partners-area::before { width: calc(100vw - 36px); height: calc((100vw - 36px) * 882 / 1814); }
    .home-partners-grid { gap: 20px; }
    .home-partner-card { height: auto; aspect-ratio: 256 / 138; }
}
@media (min-width: 1600px) and (max-width: 1900px){
    .home-quality-div-text {
        max-width: 600px;
    }
}

@media (max-width: 1599px) {
    .home-quality-div-text {
        max-width: 500px;
    }
    .home-quality-count {
        position: absolute;
        left: 0;
        top: 400px;
    }
}
@media (max-width: 1280px) {
    .home-quality-div-text {
        max-width: 380px;
    }
    .home-quality-count {
        position: absolute;
        left: 0;
        top: 430px;
    }
}
@media (max-width: 1199px) {
    .home-quality-hero { height: 580px;height: auto; background-position: center center; clip-path: ellipse(92% 88% at 50% 0%); padding-bottom: 160px;}
    .home-quality-hero-inner { width: auto; margin: 0; padding: 0 24px; box-sizing: border-box; }
    .home-quality-copy {
        left: 24px;
        top: 70px;
        right: 24px;
        //background: rgba(0,0,0,0.5);
        padding: 20px 20px;
        position: unset;
        margin-top: 70px;
    }
    .home-quality-title {
        font-size: 32px;
        margin-bottom: 28px;
        color: #fff;
    }
    .home-quality-text {
        color: #fff;
    }
    .home-quality-div-text {
        width: 100%;
        max-width: 100%;
    }
    .home-quality-hero-inner-bg {
        background: rgba(78,104,127,0.73);
        padding-bottom: 12px;
    }
    .home-quality-count { left: 24px; top: 330px; width: 340px; height: 94px; padding: 14px 0 0 34px;position: unset;
        margin-top: 8px; }
    .home-quality-count-value { font-size: 48px; }
    .home-quality-count-label { font-size: 18px; }
    .home-partners-area { width: auto; margin: 0; padding: 78px 24px 80px; }
    .home-partners-area::before { left: 0; top: 40px; width: 100%; height: 520px; }
    .home-partners-title { font-size: 32px; }
    .home-partners-text { width: auto; }
    .home-partners-grid { grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
}
@media (max-width: 767px) {
    .home-quality-hero { height: 500px;height: auto; background-size: auto 100%; background-position: 58% center; clip-path: ellipse(112% 86% at 50% 0%);  padding-bottom: 140px;}
    .home-quality-hero-inner { padding: 0 16px; }
    .home-quality-copy { left: 16px; top: 42px; right: 16px; padding: 12px 12px;}
    .home-quality-title { font-size: 26px; margin-bottom: 20px; }
    .home-quality-div-text { width: 100%; }
    .home-quality-text { font-size: 13px; line-height: 1.45; margin-bottom: 6px; }
    .home-quality-count { left: 16px; top: 300px; width: 260px; height: 76px; padding: 10px 0 0 22px; }
    .home-quality-count-value { font-size: 38px; }
    .home-quality-count-label { font-size: 14px; }
    .home-partners-area { padding: 6px 16px 0; }
    .home-partners-head { margin-bottom: 36px; }
    .home-partners-title { font-size: 26px; }
    .home-partners-text { font-size: 14px; }
    .home-partners-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
    .home-partner-card {  padding: 0; aspect-ratio: 256 / 138;    aspect-ratio: unset; }
    .home-partners-pages { flex-wrap: wrap; margin-top: 40px; }
}
@media (max-width: 500px) {
    .swiper.mySwipersss .swiper-wrapper {
        padding-bottom: 40px;
    }
}



.home-exhibitions-wrap {
    background: linear-gradient(110deg, #e6f2fb 0%, #f9eee9 100%);
    padding: 132px 0 148px;
    padding: 60px 0 70px;
}
.home-exhibitions-inner {
    max-width: 1680px;
    margin: 0 auto;
}
.home-exhibitions-head {
    position: relative;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(125, 135, 145, .42);
}
.home-exhibitions-title {
    margin: 0;
    color: #05080c;
    font-size: 44px;
    line-height: 1.12;
    font-weight: bold;
}
.home-exhibitions-text {
    max-width: 1160px;
    margin: 28px 0 0;
    color: #5e6670;
    font-size: 17px;
    line-height: 1.4;
}
.home-exhibitions-text + .home-exhibitions-text {
    margin-top: 28px;
}
.home-exhibitions-more {
    position: absolute;
    right: 8px;
    top: 84px;
    color: #fff;
    font-size: 15px;
    text-decoration: none;
    display: flex;
    justify-content: space-around;
    align-items: center;
    background: linear-gradient(90deg,#029694,#74B99C);
    padding: 3px 9px;
    gap: 5px;
}
.home-exhibitions-more .EFfx.eefx-jiantou4 {
    font-size: 12px;
    font-weight: bold;
}
.home-exhibitions-more:hover {
    background: linear-gradient(90deg,#E28307,#EDDE62);
}
.home-exhibitions-logos {
    width: 1480px;
    margin: 100px auto 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 62px;
}
.home-exhibitions-logo {
    appearance: none;
    border: 1px solid rgba(120, 130, 142, .22);
    border-radius: 10px;
    background: rgba(255, 255, 255, .34);
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 6px 6px;
    cursor: pointer;
}
.home-exhibitions-logo.is-active {
    padding: 20px 15px;
    background: rgba(236, 244, 250, .82);
    box-shadow: 0 10px 24px rgba(80, 96, 112, .16);
}
.home-exhibitions-logo img {
    max-width: 100%;
    max-height: 100%;
    display: block;
    object-fit: contain;
}
.home-exhibitions-content-ul {
    display: contents;
}
.home-exhibitions-list-ac ,.home-exhibitions-info-list{
    display:none;
}
.home-exhibitions-list-ac.is-active ,.home-exhibitions-info-list.is-active{
    display: block;
}
.home-exhibitions-content {
    width: 100%;
    max-width: 1480px;
    margin: 110px auto 0;
    display: grid;
    grid-template-columns: 680px 1fr;
    gap: 150px;
}
.home-exhibitions-photo-wrap.is-active {
    display:block;
}
.home-exhibitions-photo-wrap {
    position: relative;
    width: 680px;
    display: none;
    border-radius: 8px;
    overflow: hidden;
    background: #dbe4ed;
}
.home-exhibitions-photo {
    width: 100%;
    height: 100%;
    //display: flex;
    //align-items: center;
    //justify-content: center;
    color: #45515c;
    font-size: 42px;
    line-height: 1;
    font-weight: bold;
    background: linear-gradient(135deg, rgba(214, 226, 238, .9), rgba(245, 237, 232, .86));
}
.home-exhibitions-photo-wrap.is-active .swiper {
    display: block;
}
.home-exhibitions-photo img {
    width: 100%;
    //height: 100%;
    //display: block;
    //object-fit: cover;
}
.home-exhibitions-arrows {
    position: absolute;
    right: 32px;
    bottom: 18px;
    display: flex;
    align-items: center;
    z-index: 99999;
}
.home-exhibitions-arrow {
    width: 24px;
    height: 20px;
    border: 0;
    color: #fff;
    font-size: 16px;
    cursor: pointer;
    line-height: initial;
}
.home-exhibitions-arrow.is-prev { background: #e7a236; border-radius: 999px 0 0 999px; }
.home-exhibitions-arrow.is-next { background: #4aaaa6; border-radius: 0 999px 999px 0; }
.home-exhibitions-info {
    padding-top: 22px;
}
.home-exhibitions-booth {
    display: inline-block;
    padding: 5px 12px;
    background: linear-gradient(90deg,#029694,#74B99C);
    color: #fff;
    font-size: 14px;
    text-align: center;
    line-height: normal;
    font-weight: bold;
}
.home-exhibitions-event-title {
    margin: 14px 0 30px;
    color: #05080c;
    font-size: 32px;
    line-height: 1.15;
    font-weight: bold;
}
.home-exhibitions-meta {
    margin: 0 0 14px;
    color: #000;
    font-size: 18px;
    line-height: 1.5;
}
.home-exhibitions-thumbs {
    margin-top: 36px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}
.home-exhibitions-thumb {
    border: 0;
    border-radius: 8px;
    overflow: hidden;
    padding: 0;
    background: #d6dde5;
    cursor: pointer;
    opacity: .76;
    color: #45515c;
    font-size: 32px;
    line-height: 1;
    font-weight: bold;
    position: relative;
}
.home-exhibitions-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.home-exhibitions-thumb.is-active {
    //opacity: 1;
    //outline: 3px solid rgba(74, 170, 166, .42);
}
.home-exhibitions-thumb span {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    justify-content: center;
    align-items: center;
    background: linear-gradient(90deg,rgba(131, 190, 249, 0.8),rgba(249, 164, 123, 0.8));
    display: none;
}
.home-exhibitions-thumb.is-active span {
    display: flex;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .home-exhibitions-inner { width: calc(100% - 72px); }
    .home-exhibitions-text { width: calc(100% - 220px); }
    .home-exhibitions-logos { width: 100%; grid-template-columns: 110px 100px 100px 100px 180px 140px 180px 150px; gap: 24px; }
    .home-exhibitions-content { width: 100%; grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr); gap: 80px; }
    .home-exhibitions-photo-wrap { width: 100%; }
    .home-exhibitions-thumbs { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1199px) {
    .home-exhibitions-wrap { padding: 82px 24px 98px; }
    .home-exhibitions-inner { width: auto; }
    .home-exhibitions-title { font-size: 34px; }
    .home-exhibitions-text { width: auto; font-size: 16px; }
    .home-exhibitions-more { position: static; display: inline-flex; align-items: center; justify-content: center; margin-top: 26px; }
    .home-exhibitions-logos {     display: grid;width: auto; margin-top: 40px; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; }
    .home-exhibitions-logo,
    .home-exhibitions-logo.is-active {     padding: 10px 6px; }
    .home-exhibitions-content { width: auto; margin-top: 70px; grid-template-columns: 1fr; gap: 36px; }
    .home-exhibitions-photo-wrap { width: 100%; height: auto; }
    .home-exhibitions-info { padding-top: 0; }
    .home-exhibitions-thumbs { grid-template-columns: repeat(4, minmax(0,1fr)); }
}
@media (max-width: 767px) {
    .home-exhibitions-wrap { padding: 58px 16px 40px; }
    .home-exhibitions-title { font-size: 26px; }
    .home-exhibitions-text { font-size: 14px; }
    .home-exhibitions-logos { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
    .home-exhibitions-logo,
    .home-exhibitions-logo.is-active { }
    .home-exhibitions-content { margin-top: 46px; }
    .home-exhibitions-photo { font-size: 30px; }
    .home-exhibitions-event-title { font-size: 24px; margin: 24px 0 28px; }
    .home-exhibitions-meta { font-size: 15px; }
    .home-exhibitions-thumbs { gap: 10px; margin-top: 32px; }
    .home-exhibitions-thumb {  font-size: 18px; }
}
.dana .home-quality-partners-wrap, .dana .home-project-wrap {
    background: #F2F2F4;
}




.about-swiper-wrap {
    background: #54778a;
    overflow: hidden;
}
.about-swiper {
    width: 100%;
    height: 727px;
}
.about-swiper-slide {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.about-swiper-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center 44%;
}
.about-swiper-content {
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: self-start;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 0;
    text-align: left;
    position: absolute;
    left: 9.5%;
    right: 9.5%;
    top: 0;
    max-width: 1000px;
    z-index: 2;
}
.about-swiper-title {
    margin: 0 0 30px;
    color: #fff;
    font-size: 48px;
    line-height: 1.12;
    font-weight: bold;
    letter-spacing: 0;
    text-shadow: 0 8px 13px rgba(0, 0, 0, .34);
}
.about-swiper-desc {
    margin: 0;
    color: rgba(255, 255, 255, .92);
    font-size: 25px;
    line-height: 1.4;
    font-weight: 400;
    text-shadow: 0 4px 9px rgba(0, 0, 0, .28);
}
@media (max-width: 1199px) {
    .about-swiper {
        height: 560px;
    }
    .about-swiper-title {
        max-width: 900px;
        font-size: 42px;
    }
    .about-swiper-desc {
        max-width: 760px;
        font-size: 20px;
    }
}
@media (max-width: 767px) {
    .about-swiper {
        height: 460px;
    }
    .about-swiper-title {
        margin-bottom: 18px;
        font-size: 26px;
        line-height: 1.2;
    }
    .about-swiper-desc {
        font-size: 15px;
        line-height: 1.55;
    }
}



.about-metrics-wrap {
    background: linear-gradient(90deg, #e4edf6 0%, #f3eee9 100%);
}
.about-metrics-inner {
    width: 1680px;
    min-height: 176px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: center;
    text-align: center;
}
.about-metrics-value {
    margin: 0 0 24px;
    color: #000;
    font-size: 42px;
    line-height: 1;
    font-weight: bold;
    letter-spacing: 0;
}
.about-metrics-label {
    margin: 0;
    color: #5B595A;
    font-size: 14px;
    line-height: 1.35;
    font-weight: bold;
}
@media (max-width: 1799px) and (min-width: 1200px) {
    .about-metrics-inner {
        width: calc(100% - 72px);
    }
}
@media (max-width: 1199px) {
    .about-metrics-inner {
        width: auto;
        min-height: auto;
        padding: 44px 28px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 36px 24px;
    }
    .about-metrics-value {
        font-size: 40px;
        margin-bottom: 16px;
    }
}
@media (max-width: 560px) {
    .about-metrics-inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    .about-metrics-value {
        font-size: 28px;
    }
    .about-metrics-label {
        font-size: 14px;
    }
}

.about-story-wrap {
    background: #f4f5f7;
    padding: 80px 0 80px;
}
.about-story-inner {
    width: 1680px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 800px) minmax(0, 790px);
    gap: 90px;
    align-items: center;
}
.about-story-kicker {
    margin: 0 0 36px;
    color: #5cb4b0;
    font-size: 32px;
    line-height: 1;
    font-weight: bold;
}
.about-story-title {
    margin: 0 0 70px;
    color: #211717;
    font-size: 80px;
    line-height: 1.13;
    font-weight: bold;
    letter-spacing: 0;
}
.about-story-copy {
    max-width: 760px;
}
.about-story-copy p {
    margin: 0 0 22px;
    color: #343536;
    font-size: 16px;
    line-height: 1.85;
    font-weight: 400;
}
.about-story-copy p:last-child {
    margin-bottom: 0;
}
.about-story-gallery {
    height: 560px;
    position: relative;
}
.about-story-photo {
    overflow: hidden;
    border-radius: 24px;
}
.about-story-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
}
.about-story-photo.is-top {
    top: 0;
    left: 72px;
    width: 330px;
    height: 330px;
}
.about-story-photo.is-bottom {
    left: 12px;
    bottom: 0;
    width: 400px;
    height: 205px;
}
.about-story-photo.is-side {
    right: 0;
    top: 132px;
    width: 320px;
    height: 405px;
}
@media (max-width: 1799px) and (min-width: 1200px) {
    .about-story-inner {
        width: calc(100% - 72px);
        grid-template-columns: minmax(0, 1fr) minmax(0, 650px);
        gap: 64px;
    }
    .about-story-title {
        font-size: 62px;
    }
}
@media (max-width: 1199px) {
    .about-story-wrap {
        padding: 90px 28px 110px;
    }
    .about-story-inner {
        width: auto;
        grid-template-columns: 1fr;
        gap: 58px;
    }
    .about-story-kicker {
        margin-bottom: 26px;
        font-size: 22px;
    }
    .about-story-title {
        margin-bottom: 44px;
        font-size: 48px;
    }
    .about-story-gallery {
        max-width: 720px;
        height: 500px;
        margin: 0 auto;
        width: 100%;
    }
}
@media (max-width: 640px) {
    .about-story-copy {
        max-width: 100%;
    }
    .about-story-wrap {
        padding: 50px 20px 50px;
    }
    .about-story-kicker {
        font-size: 18px;
    }
    .about-story-title {
        font-size: 26px;
    }
    .about-story-copy p {
        font-size: 14px;
    }
    .about-story-gallery {
        height: auto;
        display: grid;
        gap: 14px;
    }
}



.about-milestones-wrap {
    position: relative;
    overflow: hidden;
    background: url("assets/about/Company-Milestones-1.png") center center no-repeat;
    padding: 50px 0 50px;
}
.about-milestones-inner {
    position: relative;
    z-index: 1;
    width: 1680px;
    min-height: 560px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.about-milestones-title {
    margin: 0;
    color: #241b1b;
    font-size: 34px;
    line-height: 1.2;
    font-weight: bold;
    text-align: center;
}
.about-milestones-pointer {
    width: 0;
    height: 0;
    margin: 18px auto 76px;
    border-left: 11px solid transparent;
    border-right: 11px solid transparent;
    border-top: 24px solid #211717;
}
.about-milestones-stage {
    width: 100%;
    position: relative;
}
.about-milestones-year {
    margin: 0;
    color: rgba(33, 23, 23, .16);
    font-size: 92px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    color: #C5C1C2;
    letter-spacing: 0;
}
.about-milestones-years {
    position: relative;
    max-width: 1300px;
    height: 34px;
    margin: -32px auto 120px;
    color: #777b80;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    display: flex;
    justify-content: space-between;
    width: 80%;
}
.about-milestones-years span {
    //position: absolute;
    //top: 8px;
    min-width: 70px;
    text-align: center;
    //transform: translateX(-50%);
    transition: color .25s ease, transform .25s ease;
    cursor: pointer;
}
//.about-milestones-years span:nth-child(1) {
//    left: 30%;
//}
//.about-milestones-years span:nth-child(2) {
//    left: 50%;
//}
//.about-milestones-years span:nth-child(3) {
//    left: 67%;
//}
//.about-milestones-years span:nth-child(4) {
//    left: 82%;
//}
//.about-milestones-years span:nth-child(5) {
//    left: 97%;
//}
.about-milestones-years span.is-active {
    color: transparent;
    min-width: 140px;
}
.about-milestones-dotline {
    position: absolute;
    top: 72px;
    left: 210px;
    width: 190px;
    height: 1px;
    pointer-events: none;
    display: none;
}
.about-milestones-dotline span {
    position: absolute;
    top: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #777b80;
}
.about-milestones-dotline span:nth-child(1) {
    left: 0;
}
.about-milestones-dotline span:nth-child(2) {
    left: 160px;
}
.about-milestones-card {
    position: relative;
    width: 980px;
    min-height: 126px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 36px 72px 30px;
    border-radius: 10px;
    background: #fff;
    text-align: center;
    box-shadow: 0 4px 12px rgba(34, 47, 57, .08);
}
.about-milestones-card::before {
    content: "";
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 19px solid transparent;
    border-right: 19px solid transparent;
    border-bottom: 24px solid rgba(92, 180, 176, .26);
}
.about-milestones-card-title {
    margin: 0 0 18px;
    color: #343232;
    font-size: 24px;
    line-height: 1.2;
    font-weight: bold;
}
.about-milestones-card-text {
    margin: 0;
    color: #484A49;
    font-size: 16px;
    line-height: 1.7;
}
.about-milestones-btn {
    position: absolute;
    top: 44px;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    background: none;
    border: none;
    font-size: 28px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform .2s ease, background .2s ease;
}
.about-milestones-btn:hover {
    transform: translateY(-1px);
    background: #f8fbfb;
}
.about-milestones-btn:disabled {
    opacity: .34;
    cursor: default;
    transform: none;
}
.about-milestones-btn.is-prev {
    left: 88px;
}
.about-milestones-btn.is-next {
    right: 88px;
}
@media (max-width: 1799px) and (min-width: 1200px) {
    .about-milestones-inner {
        width: calc(100% - 72px);
    }
    .about-milestones-btn.is-prev {
        left: 40px;
    }
    .about-milestones-btn.is-next {
        right: 40px;
    }
    .about-milestones-dotline {
        left: 150px;
    }
}
@media (max-width: 1199px) {
    .about-milestones-wrap {
        padding: 72px 28px 92px;
    }
    .about-milestones-inner {
        width: auto;
        min-height: auto;
    }
    .about-milestones-year {
        font-size: 72px;
    }
    .about-milestones-years {
        width: 90%;
        max-width: 760px;
        height: 30px;
        margin-bottom: 72px;
    }
    .about-milestones-years span:nth-child(1) {
        left: 29%;
    }
    .about-milestones-years span:nth-child(3) {
        left: 71%;
    }
    .about-milestones-years span:nth-child(4),
    .about-milestones-years span:nth-child(5) {
        display: none;
    }
    .about-milestones-dotline { display: none; }
    .about-milestones-card {
        width: min(100%, 760px);
    }
    .about-milestones-btn {
        top: 28px;
    }
    .about-milestones-btn.is-prev {
        left: 0px;
    }
    .about-milestones-btn.is-next {
        right: 0px;
    }
}
@media (max-width: 640px) {
    .about-milestones-wrap {
        padding: 50px 18px 50px;
    }
    .about-milestones-title {
        font-size: 26px;
    }
    .about-milestones-pointer {
        margin-bottom: 46px;
    }
    .about-milestones-year {
        font-size: 58px;
        margin: 0 54px 54px;
    }
    .about-milestones-years {
        display: none;
    }
    .about-milestones-dotline {
        display: none;
    }
    .about-milestones-card {
        padding: 32px 22px 28px;
    }
    .about-milestones-card-title {
        font-size: 21px;
    }
    .about-milestones-btn {
        top: 11px;
        width: 44px;
        height: 44px;
        font-size: 24px;
        background: #fff;
        box-shadow: 0 4px 12px rgba(34, 47, 57, .16);
    }
    .about-milestones-btn.is-prev {
        left: 0;
    }
    .about-milestones-btn.is-next {
        right: 0;
    }
}


.about-services-wrap {
    background: #f3f4f6;
    padding: 60px 0;
}
.about-services-inner {
    width: 1680px;
    margin: 0 auto;
}
.about-services-head {
    margin-bottom: 50px;
    text-align: center;
}
.about-services-kicker {
    margin: 0 0 20px;
    color: #55b6b3;
    font-size: 17px;
    line-height: 1;
    font-weight: 500;
}
.about-services-title {
    margin: 0 0 16px;
    color: #251b1b;
    font-size: 34px;
    line-height: 1.16;
    font-weight: bold;
    letter-spacing: 0;
}
.about-services-desc {
    margin: 0;
    color: #333;
    font-size: 13px;
    line-height: 1.5;
    letter-spacing: .5px;
    font-weight: 550;
}
.about-services-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px;
}
.about-services-card {
    overflow: hidden;
    height: 636px;
    border: 1px solid #d9e1e5;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(32, 45, 54, .04);
}
.about-services-image {
    width: 100%;
    height: 486px;
    display: block;
    object-fit: cover;
    object-position: center;
}
.about-services-card:hover .about-services-image {
    height: 280px;
}
.about-services-body {
    box-sizing: border-box;
    height: 150px;
    padding: 34px 42px 32px;
}
.about-services-card:hover .about-services-body {
    height: 356px;
    padding-top: 72px;
}
.about-services-index {
    margin: 0 0 22px;
    color: #4eb6b2;
    font-size: 17px;
    line-height: 1;
    font-weight: 500;
}
.about-services-card-title {
    margin: 0;
    color: #666;
    font-size: 20px;
    line-height: 1.35;
    font-weight: bold;
}
.about-services-card:hover .about-services-card-title {
    margin-bottom: 58px;
}
.about-services-card-text {
    max-width: 380px;
    margin: 0;
    color: #666;
    font-size: 12px;
    line-height: 2;
    font-weight: 600;
    display: none;
}
.about-services-card:hover .about-services-card-text {
    display: block;
}
@media (max-width: 1799px) and (min-width: 1200px) {
    .about-services-inner {
        width: calc(100% - 72px);
    }
    .about-services-grid {
        gap: 32px;
    }
}
@media (max-width: 1199px) {
    .about-services-wrap {
        padding: 76px 28px 104px;
    }
    .about-services-inner {
        width: auto;
    }
    .about-services-head {
        margin-bottom: 58px;
    }
    .about-services-grid {
        grid-template-columns: 1fr;
        max-width: 640px;
        margin: 0 auto;
    }
    .about-services-card {
        height: auto;
    }
    .about-services-image,
    .about-services-card.is-featured .about-services-image {
        height: 300px;
    }
    .about-services-body,
    .about-services-card.is-featured .about-services-body {
        height: auto;
        padding: 42px 36px 40px;
    }
}
@media (max-width: 640px) {
    .about-services-wrap {
        padding: 50px 18px 50px;
    }
    .about-services-title {
        font-size: 26px;
    }
    .about-services-image {
        height: 220px;
    }
    .about-services-body {
        padding: 38px 28px 34px;
    }
    .about-services-card:hover .about-services-card-title {
        margin-bottom: 28px;
    }
    .about-services-card-title {
        margin-bottom: 28px;
        font-size: 18px;
    }
    .about-services-card-text {
        display: block;
    }
}




.quality-swiper-wrap { background: #4b7488; overflow: hidden; }
.quality-swiper { width: 100%; height: 727px; }
.quality-swiper-slide { position: relative; width: 100%; height: 100%; overflow: hidden; }
.quality-swiper-image {
    width: 100%;
    height: 100%;
    object-position: center center;
    display: block;
    object-fit: cover;
}
.quality-swiper-overlay {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 1680px;
    transform: translate(-50%, -50%);
    z-index: 3;
    box-sizing: border-box;
}
.quality-swiper-title {
    max-width: 740px;
    margin: 0;
    color: #fff;
    font-size: 58px;
    line-height: 1.2;
    letter-spacing: 0;
    font-weight: bold;
    text-shadow: 0 8px 12px rgba(0, 0, 0, .28);
}
.quality-swiper-desc {
    width: 600px;
    margin: 56px 0 0;
    color: rgba(255, 255, 255, .88);
    font-size: 20px;
    line-height: 1.55;
}
.quality-swiper-actions {
    display: flex;
    gap: 24px;
    margin-top: 82px;
}
.quality-swiper-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: #5eb4af;
    border: 1px solid rgba(34, 105, 100, .25);
    box-shadow: 0 4px 8px rgba(0, 0, 0, .22);
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    padding: 10px 35px;
}
.quality-swiper-btn:hover {
    background: #E18000;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .quality-swiper-overlay { width: calc(100% - 72px); }
    .quality-swiper-title { font-size: 52px; }
    .quality-swiper-desc { width: 680px; font-size: 22px; }
}
@media (max-width: 1199px) {
    .quality-swiper { height: 560px; }
    .quality-swiper-overlay { left: 24px; right: 24px; width: auto; transform: translateY(-50%); }
    .quality-swiper-title { max-width: 620px; font-size: 42px; }
    .quality-swiper-desc { width: 560px; max-width: 68%; margin-top: 34px; font-size: 19px; }
    .quality-swiper-actions { margin-top: 42px; }
}
@media (max-width: 767px) {
    .quality-swiper { height: 520px; }
    .quality-swiper-image { object-position: 58% center; }
    .quality-swiper-mask { background: linear-gradient(90deg, rgba(48, 94, 116, .94) 0%, rgba(48, 94, 116, .72) 62%, rgba(48, 94, 116, .2) 100%); }
    .quality-swiper-overlay { left: 16px; right: 16px; top: 52%; }
    .quality-swiper-title { max-width: 320px; font-size: 26px; line-height: 1.2; }
    .quality-swiper-desc { width: auto; max-width: 86%; margin-top: 26px; font-size: 16px; line-height: 1.55; }
    .quality-swiper-actions { gap: 12px; margin-top: 34px; flex-wrap: wrap; }
    .quality-swiper-btn { font-size: 15px; }
}



.quality-assurance-wrap {
    background: #fff;
}
.quality-assurance-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.quality-assurance-cell {
    min-height: 682px;
    box-sizing: border-box;
}
.quality-assurance-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 80px 13% 80px 13%;
    background: #fff;
}
.quality-assurance-image {
    width: 100%;
    height: 100%;
    min-height: 682px;
    display: block;
    object-position: center center;
    object-fit: cover;
}
.quality-assurance-kicker {
    margin: 0 0 34px;
    color: #4bb7b4;
    font-size: 17px;
    line-height: 1;
}
.quality-assurance-title {
    margin: 0 0 48px;
    color: #070707;
    font-size: 28px;
    line-height: 1.18;
    font-weight: bold;
    letter-spacing: 0;
}
.quality-assurance-text {
    margin: 0 0 16px;
    color: #484b50;
    font-size: 18px;
    line-height: 1.75;
}
.quality-assurance-tags {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, max-content));
    gap: 22px 50px;
    margin: 78px 0 0;
    padding: 0;
    list-style: none;
}
.quality-assurance-tags li {
    position: relative;
    padding-left: 20px;
    color: #37aaa6;
    font-size: 14px;
    line-height: 1.2;
    font-weight: bold;
}
.quality-assurance-tags li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: -1px;
    color: #37aaa6;
}
@media (max-width: 1199px) {
    .quality-assurance-cell {
        min-height: 520px;
    }
    .quality-assurance-copy {
        padding: 64px 9%;
    }
    .quality-assurance-image {
        min-height: 520px;
    }
    .quality-assurance-title {
        font-size: 30px;
        margin-bottom: 30px;
    }
    .quality-assurance-text {
        font-size: 15px;
    }
    .quality-assurance-tags {
        margin-top: 44px;
        gap: 18px 34px;
    }
}
@media (max-width: 767px) {
    .quality-assurance-grid {
        grid-template-columns: 1fr;
    }
    .quality-assurance-cell {
        min-height: 0;
        margin-bottom: 15px;
    }
    .quality-assurance-copy {
        padding: 28px 16px;
    }
    .quality-assurance-image {
        min-height: 300px;
        aspect-ratio: 4 / 3;
    }
    .quality-assurance-kicker {
        font-size: 15px;
        margin-bottom: 22px;
    }
    .quality-assurance-title {
        font-size: 26px;
        margin-bottom: 24px;
    }
    .quality-assurance-text {
        font-size: 14px;
        line-height: 1.65;
    }
    .quality-assurance-tags {
        grid-template-columns: 1fr;
        margin-top: 15px;
        gap: 16px;
    }
    .quality-assurance-tags li {
        font-size: 14px;
    }
}


.quality-equipment-wrap {
    position: relative;
    background: #EBECF0;
    padding: 140px 0 80px;
    overflow: hidden;
}
.quality-equipment-inner {
    width: 1680px;
    margin: 0 auto;
}
.quality-equipment-head {
    text-align: center;
    margin-bottom: 88px;
}
.quality-equipment-title {
    margin: 0 0 18px;
    color: #1d191b;
    font-size: 42px;
    line-height: 1.15;
    font-weight: bold;
    letter-spacing: 0;
}
.quality-equipment-more {
    color: #1d191b;
    font-size: 13px;
    line-height: 1;
    text-decoration: none;
    font-weight: bold;
}
.quality-equipment-stage {
    position: relative;
}
.quality-equipment-viewport {
    width: 1472px;
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
}
.quality-equipment-grid {
    display: flex;
    gap: 18px;
    justify-content: flex-start;
    transition: transform .35s ease;
}
.quality-equipment-card {
    flex: 0 0 280px;
    width: 280px;
    height: 290px;
    padding: 32px 24px 24px;
    box-sizing: border-box;
    border: 1px solid #cfdcde;
    border-radius: 10px;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.quality-equipment-image-wrap {
    height: 170px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.quality-equipment-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
}
.quality-equipment-divider {
    height: 1px;
    margin: 24px 0 18px;
    background: #d6e3e5;
}
.quality-equipment-name {
    margin: 0;
    color: #343437;
    font-size: 18px;
    line-height: 1.25;
    text-align: center;
}
.quality-equipment-arrow {
    position: absolute;
    top: 50%;
    width: 24px;
    height: 24px;
    border: 0;
    border-radius: 999px;
    background: #54aaa7;
    color: #fff;
    transform: translateY(-50%);
    cursor: pointer;
    z-index: 5;
}
.quality-equipment-arrow::before {
    content: "";
    position: absolute;
    left: 9px;
    top: 7px;
    width: 7px;
    height: 7px;
    border-left: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
}
.quality-equipment-arrow.is-prev {
    left: 0;
}
.quality-equipment-arrow.is-prev::before {
    transform: rotate(45deg);
}
.quality-equipment-arrow.is-next {
    right: 0;
}
.quality-equipment-arrow.is-next::before {
    left: 7px;
    transform: rotate(225deg);
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .quality-equipment-inner { width: calc(100% - 72px); }
}
@media (max-width: 1199px) {
    .quality-equipment-wrap { padding: 96px 0 130px; }
    .quality-equipment-inner { width: auto; padding: 0 24px; }
    .quality-equipment-title { font-size: 34px; }
    .quality-equipment-head { margin-bottom: 20px; }
    .quality-equipment-card { flex-basis: 280px; }
    .quality-equipment-viewport {
        overflow-x: auto;
        padding-bottom: 8px;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
    }
    .quality-equipment-card {
        scroll-snap-align: start;
    }
    .quality-equipment-arrow { display: none; }
}
@media (max-width: 767px) {
    .quality-equipment-wrap { padding: 50px 0 ; }
    .quality-equipment-inner { padding: 0 16px; }
    .quality-equipment-title { font-size: 26px; }
    .quality-equipment-grid { gap: 14px; }
    .quality-equipment-card {
        flex-basis: 250px;
        min-height: 280px;
        padding: 26px 22px 24px;
    }
    .quality-equipment-image-wrap { height: 170px; }
    .quality-equipment-name { font-size: 16px; }
}


.quality-process-wrap {
    background: #fff;
    padding: 80px 0 80px;
}
.quality-process-inner {
    width: 1470px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 510px minmax(0, 1fr);
    gap: 125px;
    align-items: start;
}
.scroll-container {
    height: 1226px;
    overflow: hidden;
    margin: 0 auto;
    border-radius: 8px;
}
.quality-process-images {
    display: grid;
    gap: 38px;
    animation: scrollUp 25s linear infinite;
}
.scroll-container:hover .quality-process-images {
    animation-play-state: paused;
}

@keyframes scrollUp {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-50%);
    }
}
.quality-process-image {
    width: 502px;
    height: 332px;
    display: block;
    object-fit: cover;
    object-position: center center;
    border-radius: 8px;
}
.quality-process-content {
    padding-top: 0;
    min-width: 0;
}
.quality-process-kicker {
    margin: 0px 0 40px;
    color: #4bb7b4;
    font-size: 17px;
    line-height: 1;
    font-weight: 500;
}
.quality-process-title {
    margin: 0 0 36px;
    color: #050505;
    font-size: 44px;
    line-height: 1.06;
    font-weight: bold;
    letter-spacing: 0;
}
.quality-process-desc {
    max-width: 760px;
    margin: 0 0 12px;
    color: #413735;
    font-size: 17px;
    line-height: 1.65;
    font-weight: 500;
}
.quality-process-list {
    display: grid;
    gap: 18px;
    margin-top: 60px;
}
.quality-process-card {
    min-height: 132px;
    display: grid;
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    box-sizing: border-box;
    padding: 26px 20px;
    border-radius: 8px;
    background: #F6FAFB;
}
.quality-process-icon {
    width: 64px;
    height: 64px;
    display: grid;
    place-items: center;
    color: #54b3aa;
    font-size: 32px;
    line-height: 1;
    font-weight: bold;
}
.quality-process-icon.is-dark {
    color: #111;
}
.quality-process-card-title {
    margin: 0 0 12px;
    color: #111;
    font-size: 22px;
    line-height: 1.2;
    font-weight: bold;
}
.quality-process-card-text {
    margin: 0;
    color: #212224;
    font-size: 17px;
    line-height: 1.35;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .quality-process-inner {
        width: calc(100% - 72px);
        grid-template-columns: 520px minmax(0, 1fr);
        gap: 92px;
    }
    .quality-process-image {
        width: 520px;
        height: 350px;
    }
    .quality-process-title { font-size: 42px; }
}
@media (max-width: 1199px) {
    .quality-process-wrap { padding: 96px 0 112px; }
    .quality-process-inner {
        width: auto;
        padding: 0 24px;
        grid-template-columns: 1fr;
        gap: 64px;
    }
    //.quality-process-images {
    //    grid-template-columns: repeat(3, minmax(0, 1fr));
    //    gap: 18px;
    //}
    .scroll-container {
        height: 530px;
    }
    .quality-process-images {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
    }
    .quality-process-image {
        width: 100%;
        height: 260px;
    }
    .quality-process-kicker { margin-bottom: 30px; }
    .quality-process-title { font-size: 36px; margin-bottom: 34px; }
    .quality-process-list { margin-top: 50px; }
}
@media (max-width: 767px) {
    .quality-process-wrap { padding: 50px 0 50px; }
    .quality-process-inner { padding: 0 16px; gap: 44px; }
    .quality-process-images { grid-template-columns: 1fr; gap: 18px; }
    .quality-process-image { height: 240px; }
    .quality-process-kicker { font-size: 15px; }
    .quality-process-title { font-size: 26px; }
    .quality-process-desc { font-size: 14px; line-height: 1.65; }
    .quality-process-card {
        min-height: 0;
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 16px;
        padding: 22px 18px;
    }
    .quality-process-icon {
        width: 44px;
        height: 44px;
        font-size: 24px;
    }
    .quality-process-card-title { font-size: 18px; }
    .quality-process-card-text { font-size: 14px; }
}

.quality-system-wrap { height: 450px; }
.quality-system-wrap > div {
    overflow: hidden;
    background: #587486;
    height: 100%;
}

.quality-system-inner {
    position: relative;
    z-index: 2;
    width: 1680px;
    height: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.quality-system-title {
    margin: 0 0 34px;
    color: #fff;
    font-size: 54px;
    line-height: 1.12;
    font-weight: bold;
    letter-spacing: 0;
    text-shadow: 0 7px 10px rgba(0, 0, 0, .28);
}
.quality-system-text {
    max-width: 1040px;
    margin: 0;
    color: rgba(255, 255, 255, .9);
    font-size: 17px;
    line-height: 1.65;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .quality-system-inner { width: calc(100% - 72px); }
}
@media (max-width: 1199px) {
    .quality-system-wrap { height: 350px; }
    .quality-system-inner { width: auto; padding: 0 24px; box-sizing: border-box; }
    .quality-system-title { font-size: 42px; }
    .quality-system-text { font-size: 16px; }
}
@media (max-width: 767px) {
    .quality-system-wrap { height: 340px; }
    .quality-system-inner { padding: 0 16px; }
    .quality-system-title { font-size: 26px; margin-bottom: 22px; }
    .quality-system-text { font-size: 14px; }
}




.odm-tanchuang {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 99;
}
.odm-Drawing,.odm-Photos {
    display:none;
}
.odm-tanchuang .odm-biankuang {
    background: #fff;
    padding: 40px;
    text-align: center;
    position: relative;
    border-radius: 15px;
    box-shadow: 0 0 22px 0 #ddd;
}
.odm-tanchuang .odm-biankuang .odm-tubiao {
    border: 1px dashed #DDD;
    padding: 50px 110px;
    position: relative;
}
.odm-tanchuang .odm-biankuang .fa.fa-close {
    font-size: 24px;
    position: absolute;
    top: 10px;
    right: 18px;
}
.odm-tanchuang .odm-biankuang .odm-tubiao #files ,.odm-tanchuang .odm-biankuang .odm-tubiao #filesa{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    opacity: 0;
}
@media (max-width: 600px){
    .odm-tanchuang .odm-biankuang {
        padding: 36px;
    }
    .odm-tanchuang .odm-biankuang .odm-tubiao {
        padding: 16px 40px;
    }
}


.odm-swiper-wrap { background: #315f74; overflow: hidden; }
.odm-swiper { width: 100%; height: 727px; }
.odm-swiper-slide { position: relative; width: 100%; height: 100%; overflow: hidden; }
.odm-swiper-image { width: 100%; height: 100%; object-fit: cover; object-position: center right; display: block; }
.odm-swiper-overlay {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 1680px;
    transform: translate(-50%, -50%);
    z-index: 3;
    box-sizing: border-box;
}
.odm-swiper-title {
    max-width: 890px;
    margin: 0;
    color: #fff;
    font-size: 70px;
    line-height: 1.16;
    letter-spacing: 0;
    font-weight: bold;
    text-shadow: 0 10px 14px rgba(0, 0, 0, .52);
}
.odm-swiper-desc {
    width: 980px;
    margin: 56px 0 0;
    color: rgba(255, 255, 255, .9);
    font-size: 22px;
    line-height: 1.6;
}
.odm-swiper-actions {
    display: flex;
    gap: 24px;
    margin-top: 62px;
}
.odm-swiper-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: #5eb4af;
    border: 1px solid rgba(34, 105, 100, .25);
    box-shadow: 0 4px 8px rgba(0, 0, 0, .22);
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    padding: 10px 35px;
}
.odm-swiper-btn:hover {
    background: #E18000;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-swiper-overlay { width: calc(100% - 72px); }
    .odm-swiper-title { font-size: 60px; }
    .odm-swiper-desc { width: 820px; font-size: 22px; }
}
@media (max-width: 1199px) {
    .odm-swiper { height: 560px; }
    .odm-swiper-overlay { left: 24px; right: 24px; width: auto; transform: translateY(-50%); }
    .odm-swiper-title { max-width: 680px; font-size: 48px; }
    .odm-swiper-desc { width: 640px; max-width: 72%; margin-top: 34px; font-size: 19px; }
    .odm-swiper-actions { margin-top: 42px; }
}
@media (max-width: 767px) {
    .odm-swiper { height: 520px; }
    //.odm-swiper-image { object-position: 54% center; }
    .odm-swiper-overlay { left: 16px; right: 16px; top: 54%; }
    .odm-swiper-title { font-size: 26px; line-height: 1.2; }
    .odm-swiper-desc { width: auto; max-width: none; margin-top: 28px; font-size: 14px; line-height: 1.55; }
    .odm-swiper-actions { gap: 12px; margin-top: 34px; flex-wrap: wrap; }
    .odm-swiper-btn { font-size: 15px; }
}


.odm-cert-wrap { background: #dfe6eb; }
.odm-cert-inner {
    overflow: hidden;
    width: 1680px;
    min-height: 173px;
    margin: 0 auto;
    display: flex;
    align-items: center;
}
.odm-cert-inner img {
    display: block;
    max-width: 100%;
    height: auto;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-cert-inner {
        width: calc(100% - 72px);
    }
}
@media (max-width: 1199px) {
    .odm-cert-inner {
        width: auto;
        min-height: auto;
        padding: 18px 16px;
    }
}
@media (max-width: 767px) {
    .odm-cert-inner {
        padding: 14px 12px;
        justify-content: center;
    }
}


.odm-custom-wrap {
    background: #fff;
    padding: 118px 0 85px;
}
.odm-custom-inner {
    width: 1680px;
    margin: 0 auto;
}
.odm-custom-head {
    padding: 0 16px 34px;
    border-bottom: 1px solid #c7c7c7;
}
.odm-custom-title {
    margin: 0 0 18px;
    color: #070707;
    font-size: 44px;
    line-height: 1.15;
    font-weight: bold;
    letter-spacing: 0;
}
.odm-custom-desc {
    max-width: 1260px;
    margin: 0;
    color: #585858;
    font-size: 18px;
    line-height: 1.75;
}
.odm-custom-list {
    margin-top: 118px;
}
.odm-custom-row {
    display: grid;
    grid-template-columns: 510px minmax(0, 1fr);
    gap: 72px;
    align-items: center;
    padding: 0 18px 104px;
    border-bottom: 1px solid #c7c7c7;
}
.odm-custom-row + .odm-custom-row {
    padding-top: 84px;
}
.odm-custom-row:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}
.odm-custom-image {
    width: 510px;
    height: 350px;
    border-radius: 10px;
    display: block;
    object-fit: cover;
}
.odm-custom-content {
    min-width: 0;
}
.odm-custom-name {
    margin: 0 0 10px;
    color: #1b1618;
    font-size: 40px;
    line-height: 1.14;
    font-weight: bold;
    letter-spacing: 0;
}
.odm-custom-text {
    margin: 0 0 34px;
    color: #767676;
    font-size: 17px;
    line-height: 1.45;
}
.odm-custom-points {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 96px;
    margin: 0 0 48px;
    padding: 0;
    list-style: none;
}
.odm-custom-row.is-three-cols .odm-custom-points {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px 54px;
}
.odm-custom-points li {
    position: relative;
    padding-left: 34px;
    color: #252426;
    font-size: 16px;
    line-height: 1.25;
    font-weight: bold;
}
.odm-custom-points li::before {
    content: "•";
    position: absolute;
    left: 6px;
    top: -1px;
    color: #111;
    font-size: 20px;
    line-height: 1;
}
.odm-custom-note {
    min-height: 50px;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 0 18px;
    box-sizing: border-box;
    background: linear-gradient(90deg, #e9f5fb 0%, #fbf1ea 100%);
    color: #5F6160;
    font-size: 18px;
    line-height: 1.35;
}
.odm-custom-note-mark {
    color: #596066;
    line-height: 1;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-custom-inner { width: calc(100% - 72px); }
    .odm-custom-row { gap: 56px; }
    .odm-custom-name { font-size: 34px; }
    .odm-custom-points { gap: 20px 58px; }
    .odm-custom-row.is-three-cols .odm-custom-points { gap: 20px 28px; }
}
@media (max-width: 1199px) {
    .odm-custom-wrap { padding: 82px 0 94px; }
    .odm-custom-inner { width: auto; padding: 0 24px; }
    .odm-custom-head { padding: 0 0 28px; }
    .odm-custom-title { font-size: 34px; }
    .odm-custom-list { margin-top: 70px; }
    .odm-custom-row {
        grid-template-columns: 1fr;
        gap: 34px;
        padding: 0 0 72px;
    }
    .odm-custom-row + .odm-custom-row { padding-top: 64px; }
    .odm-custom-image {
        width: 100%;
        height: auto;
        max-height: 390px;
    }
    .odm-custom-row.is-three-cols .odm-custom-points {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 44px;
    }
}
@media (max-width: 767px) {
    .odm-custom-wrap { padding: 50px 0; }
    .odm-custom-inner { padding: 0 16px; }
    .odm-custom-title { font-size: 26px; }
    .odm-custom-desc { font-size: 15px; line-height: 1.65; }
    .odm-custom-list { margin-top: 46px; }
    .odm-custom-row { padding-bottom: 54px; }
    .odm-custom-row + .odm-custom-row { padding-top: 48px; }
    .odm-custom-name { font-size: 26px; }
    .odm-custom-text { font-size: 14px; margin-bottom: 26px; }
    .odm-custom-points,
    .odm-custom-row.is-three-cols .odm-custom-points {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-bottom: 32px;
    }
    .odm-custom-points li { font-size: 14px; padding-left: 26px; }
    .odm-custom-note { padding: 12px 14px; font-size: 13px; }
    .odm-custom-note-mark { font-size: 26px; }
}


 .odm-process-wrap {
     background: #f5f5f6;
     padding: 60px 0 230px;
 }
.odm-process-inner {
    width: 1680px;
    margin: 0 auto;
}
.odm-process-head {
    text-align: center;
}
.odm-process-mark {
    width: 64px;
    height: 4px;
    margin: 0 auto 44px;
    background: #41aaa8;
}
.odm-process-title {
    margin: 0 0 38px;
    color: #1f1b1d;
    font-size: 40px;
    line-height: 1.16;
    letter-spacing: 0;
    font-weight: bold;
}
.odm-process-desc {
    max-width: 1200px;
    margin: 0 auto;
    color: #231814;
    font-size: 18px;
    line-height: 1.55;
}
.odm-process-timeline {
    position: relative;
    margin-top: 98px;
    min-height: 690px;
}
.odm-process-line {
    position: absolute;
    left: 50%;
    top: 32px;
    bottom: 2px;
    width: 2px;
    background: #9ed5d7;
    transform: translateX(-50%);
}
.odm-process-dot {
    position: absolute;
    left: 50%;
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background: #57aaa8;
    transform: translate(-50%, -50%);
}
.odm-process-dot:nth-child(2)  { top: 32px; }
.odm-process-dot:nth-child(3)  { top: 160px; }
.odm-process-dot:nth-child(4)  { top: 290px; }
.odm-process-dot:nth-child(5)  { top: 420px; }
.odm-process-dot:nth-child(6)  { top: 550px; }
.odm-process-dot:nth-child(7)  { top: 680px; }
.odm-process-dot:nth-child(8)  { top: 810px; }
.odm-process-dot:nth-child(9)  { top: 940px; }
.odm-process-dot:nth-child(10) { top: 1070px; }
.odm-process-dot:nth-child(11) { top: 1200px; }
.odm-process-dot:nth-child(12) { top: 1330px; }
.odm-process-card {
    position: absolute;
    max-width: 660px;
    min-height: 150px;
    border: 1px solid #9ed5d7;
    box-sizing: border-box;
    padding: 34px 50px;
    background: transparent;
    width: 100%;
}
.odm-process-card::after {
    content: "";
    position: absolute;
    top: 24px;
    width: 24px;
    height: 24px;
    background: #f5f5f6;
    border-top: 1px solid #9ed5d7;
    border-right: 1px solid #9ed5d7;
    transform: rotate(45deg);
}
.odm-process-card.is-left {
    left: 0;
    text-align: right;
}
.odm-process-card.is-left::after {
    right: -13px;
}
.odm-process-card.is-right {
    right: 0;
    text-align: left;
}
.odm-process-card.is-right::after {
    left: -13px;
    transform: rotate(225deg);
}
.odm-process-card:nth-of-type(1)  { top: 0; }
.odm-process-card:nth-of-type(2)  { top: 125px; }
.odm-process-card:nth-of-type(3)  { top: 254px; }
.odm-process-card:nth-of-type(4)  { top: 385px; }
.odm-process-card:nth-of-type(5)  { top: 515px; }
.odm-process-card:nth-of-type(6)  { top: 645px; }
.odm-process-card:nth-of-type(7)  { top: 775px; }
.odm-process-card:nth-of-type(8)  { top: 905px; }
.odm-process-card:nth-of-type(9)  { top: 1035px; }
.odm-process-card:nth-of-type(10) { top: 1165px; }
.odm-process-card:nth-of-type(11) { top: 1295px; }
.odm-process-card:nth-of-type(12) { top: 1425px; }
.odm-process-step {
    margin: 0 0 10px;
    color: #56b4b1;
    font-size: 16px;
    line-height: 1;
    font-weight: 500;
}
.odm-process-name {
    margin: 0 0 16px;
    color: #211d20;
    font-size: 23px;
    line-height: 1.15;
    font-weight: bold;
}
.odm-process-text {
    margin: 0;
    color: #343136;
    font-size: 16px;
    line-height: 1.5;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-process-inner { width: calc(100% - 72px); }
    .odm-process-card { width: 42%; }
}
@media (max-width: 1199px) {
    .odm-process-wrap { padding: 82px 0 96px; }
    .odm-process-inner { width: auto; padding: 0 24px; }
    .odm-process-title { font-size: 34px; }
    .odm-process-timeline {
        min-height: 0;
        margin-top: 70px;
        padding-left: 34px;
        display: grid;
        gap: 24px;
    }
    .odm-process-line {
        left: 6px;
        top: 8px;
        bottom: 8px;
        transform: none;
    }
    .odm-process-dot {
        display: none;
    }
    .odm-process-card,
    .odm-process-card:nth-of-type(n) {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        width: 100%;
        min-height: 0;
        text-align: left;
        padding: 26px 28px;
    }
    .odm-process-card::after {
        left: -13px !important;
        right: auto;
        transform: rotate(225deg) !important;
    }
}
@media (max-width: 767px) {
    .odm-process-wrap { padding: 58px 0; }
    .odm-process-inner { padding: 0 16px; }
    .odm-process-mark { margin-bottom: 28px; }
    .odm-process-title { font-size: 26px; margin-bottom: 22px; }
    .odm-process-desc { font-size: 14px; }
    .odm-process-timeline { margin-top: 44px; }
    .odm-process-card { padding: 22px 20px; }
    .odm-process-step { font-size: 13px; }
    .odm-process-name { font-size: 20px; }
    .odm-process-text { font-size: 13px; }
}




.odm-advantages-wrap {
    background: #fff;
    padding: 70px 0 80px;
}
.odm-advantages-inner {
    width: 1680px;
    margin: 0 auto;
}
.odm-advantages-head {
    text-align: center;
}
.odm-advantages-kicker {
    margin: 0 0 18px;
    color: #5AB0AD;
    font-size: 17px;
    line-height: 1;
}
.odm-advantages-title {
    margin: 0 0 35px;
    color: #050505;
    font-size: 40px;
    line-height: 1.16;
    letter-spacing: 0;
    font-weight: bold;
}
.odm-advantages-desc {
    max-width: 1120px;
    margin: 0 auto;
    color: #595959;
    font-size: 18px;
    line-height: 1.55;
}
.odm-advantages-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px 30px;
    margin-top: 90px;
}
.odm-advantages-card {
    min-height: 208px;
    box-sizing: border-box;
    padding: 52px 56px 36px;
    border-radius: 8px;
    background: #eef5f5;
}
.odm-advantages-card-title {
    margin: 0 0 30px;
    color: #111;
    font-size: 24px;
    line-height: 1.2;
    font-weight: bold;
}
.odm-advantages-card-text {
    margin: 0;
    color: #3F3534;
    font-size: 17px;
    line-height: 1.25;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-advantages-inner { width: calc(100% - 72px); }
    .odm-advantages-card { padding: 44px 38px 32px; }
}
@media (max-width: 1199px) {
    .odm-advantages-wrap { padding: 94px 0 106px; }
    .odm-advantages-inner { width: auto; padding: 0 24px; }
    .odm-advantages-title { font-size: 36px; }
    .odm-advantages-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        margin-top: 70px;
        gap: 22px;
    }
}
@media (max-width: 767px) {
    .odm-advantages-wrap { padding: 50px 0; }
    .odm-advantages-inner { padding: 0 16px; }
    .odm-advantages-kicker { font-size: 13px; }
    .odm-advantages-title { font-size: 26px; margin-bottom: 24px; }
    .odm-advantages-desc { font-size: 14px; }
    .odm-advantages-grid {
        grid-template-columns: 1fr;
        margin-top: 42px;
        gap: 16px;
    }
    .odm-advantages-card {
        min-height: 0;
        padding: 30px 24px;
    }
    .odm-advantages-card-title { font-size: 20px; margin-bottom: 18px; }
    .odm-advantages-card-text { font-size: 14px; }
}




.odm-faq-wrap {
    background: #f5f5f6;
}
.odm-faq-hero {
    position: relative;
    height: 300px;
    overflow: hidden;
    background: url("./assets/odm/1-Frequently-Asked-Questions-(FAQ).png") center center no-repeat;
}
.odm-faq-hero-inner {
    position: relative;
    z-index: 2;
    width: 1680px;
    height: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.odm-faq-title {
    margin: 0 0 26px;
    color: #fff;
    font-size: 70px;
    line-height: 1.1;
    font-weight: bold;
    letter-spacing: 0;
    text-shadow: 0 7px 10px rgba(0, 0, 0, .32);
}
.odm-faq-sub {
    margin: 0;
    color: rgba(255, 255, 255, .9);
    font-size: 18px;
    line-height: 1.4;
    max-width: 900px;
}
.odm-faq-body {
    width: 1680px;
    margin: 0 auto;
    padding: 136px 0 92px;
    padding: 80px 0 72px;
    border-bottom: 1px solid #bfc4c8;
}
.odm-faq-list {
    position: relative;
    width: 1210px;
    margin: 0 auto;
}
.odm-faq-list::before {
    content: "";
    position: absolute;
    left: 72px;
    top: 34px;
    bottom: 34px;
    width: 1px;
    background: #ccd2d7;
}
.odm-faq-item {
    position: relative;
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 34px;
    align-items: start;
}
.odm-faq-item + .odm-faq-item {
    margin-top: 28px;
}
.odm-faq-index {
    position: relative;
    padding-top: 24px;
    color: #7b8288;
    font-size: 17px;
    line-height: 1;
    text-align: left;
}
.odm-faq-index::after {
    content: "";
    position: absolute;
    right: 13px;
    top: 30px;
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #54aaa7;
    box-shadow: 0 0 0 2px rgba(84, 170, 167, .18);
}
.odm-faq-card {
    position: relative;
    box-sizing: border-box;
}
.odm-faq-card .odm-faq-card-list {
    background: #fff;
    min-height: 112px;
    box-sizing: border-box;
    padding: 26px 46px 24px;
    border: 1px solid #d8dcdf;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    z-index: 99;
}

.odm-faq-card::before {
    content: "";
    position: absolute;
    left: -13px;
    top: 24px;
    width: 25px;
    height: 25px;
    background: #CADADA;
    border-left: 1px solid #CADADA;
    border-bottom: 1px solid #CADADA;
    transform: rotate(45deg);
}
.odm-faq-item:hover .odm-faq-card .odm-faq-card-list {
    background: #CADADA;
    border-color: #CADADA;
}
.odm-faq-item:first-child .odm-faq-card::before {
    background: #CADADA;
    border-color: #CADADA;
}
.odm-faq-question {
    position: relative;
    z-index: 2;
    margin: 0 0 16px;
    color: #37383a;
    font-size: 28px;
    line-height: 1.2;
    font-weight: bold;
}
.odm-faq-answer {
    position: relative;
    z-index: 2;
    margin: 0;
    color: #606060;
    font-size: 16px;
    line-height: 1.65;
}
.odm-faq-item:hover .odm-faq-card .odm-faq-card-list .odm-faq-answer {
    color: #333;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-faq-hero-inner,
    .odm-faq-body { width: calc(100% - 72px); }
    .odm-faq-list { width: 82%; }
}
@media (max-width: 1199px) {
    .odm-faq-hero { height: 260px; }
    .odm-faq-hero-inner,
    .odm-faq-body { width: auto; }
    .odm-faq-hero-inner { padding: 0 24px; }
    .odm-faq-title { font-size: 40px; }
    .odm-faq-body { padding: 82px 24px 72px; }
    .odm-faq-list { width: auto; }
}
@media (max-width: 767px) {
    .odm-faq-hero { height: 220px; }
    .odm-faq-hero-inner { padding: 0 16px; }
    .odm-faq-title { font-size: 26px; margin-bottom: 18px; }
    .odm-faq-sub { font-size: 12px; }
    .odm-faq-body { padding: 54px 16px 56px; }
    .odm-faq-list::before { left: 38px; }
    .odm-faq-item {
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 18px;
    }
    .odm-faq-index { font-size: 13px; padding-top: 22px; }
    .odm-faq-index::after { right: 11px; top: 26px; width: 7px; height: 7px; }
    //.odm-faq-card { padding: 22px 20px; }
    .odm-faq-question { font-size: 18px; }
    .odm-faq-answer { font-size: 12px; }
    .odm-faq-card .odm-faq-card-list {
        padding: 24px 20px 24px;
    }
}



.odm-request-wrap {
    background: #f5f5f6;
    padding: 82px 0 50px;
}
.odm-request-inner {
    width: 1680px;
    margin: 0 auto;
}
.odm-request-head {
    text-align: center;
    margin-bottom: 60px;
}
.odm-request-title {
    margin: 0 0 24px;
    color: #1d191b;
    font-size: 56px;
    line-height: 1.12;
    font-weight: bold;
    letter-spacing: 0;
}
.odm-request-sub {
    margin: 0;
    color: #3E3633;
    font-size: 18px;
    line-height: 1.4;
}
.odm-request-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px 80px;
}
.odm-request-field,
.odm-request-select-trigger,
.odm-request-message {
    width: 100%;
    border: 0;
    border-radius: 4px;
    background: #fff;
    color: #2d3035;
    font-size: 16px;
    font-family: inherit;
    box-sizing: border-box;
    outline: none;
}
.odm-request-field,
.odm-request-select-trigger {
    height: 50px;
    padding: 0 34px;
}
.odm-request-field::placeholder,
.odm-request-message::placeholder {
    color: #c4c5c8;
}
.odm-request-select {
    position: relative;
    min-width: 0;
}
.odm-request-select-trigger {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 72px;
    color: #c4c5c8;
    text-align: left;
    cursor: pointer;
}
.odm-request-select.odm-request-quantity .odm-request-select-trigger {
    height: 60px;
}
.odm-request-select.has-value .odm-request-select-trigger {
    color: #2d3035;
}
.odm-request-arrow {
    position: absolute;
    right: 16px;
    top: 50%;
    width: 32px;
    height: 32px;
    background: url(../images/langicon.png) no-repeat center center;
    transform: translateY(-50%);
}

.odm-request-menu {
    position: absolute;
    right: 48px;
    top: calc(100% - 28px);
    width: 410px;
    margin: 0;
    padding: 0;
    list-style: none;
    border-radius: 12px;
    overflow: hidden;
    background: rgba(87, 177, 166, .78);
    box-shadow: 0 18px 34px rgba(26, 75, 78, .14);
    z-index: 20;
    display: none;
}
.odm-request-select.is-open .odm-request-menu {
    display: block;
}
.odm-request-menu.is-small {
    width: 150px;
    right: 36px;
    top: calc(100% - 30px);
}
.odm-request-option {
    min-height: 42px;
    display: flex;
    align-items: center;
    padding: 0 42px;
    border-top: 1px solid rgba(255, 255, 255, .18);
    color: rgba(255, 255, 255, .86);
    font-size: 18px;
    line-height: 1.2;
    cursor: pointer;
}
.odm-request-menu.is-small .odm-request-option {
    justify-content: center;
    padding: 0 18px;
}
.odm-request-option:first-child {
    border-top: 0;
}
.odm-request-option:hover {
    background: rgba(47, 154, 150, .42);
}
.odm-request-drawing {
    grid-column: 1;
    margin-top: 10px;
}
.odm-request-drawing-title,
.odm-request-message-label {
    margin: 0 0 24px;
    color: #202329;
    font-size: 18px;
    line-height: 1.2;
    font-weight: 500;
}
.odm-request-choice-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 24px;
}
.odm-request-choice {
    height: 28px;
    border: 0;
    border-radius: 3px;
    background: #fff;
    color: #c4c5c8;
    font-size: 16px;
    font-family: inherit;
    cursor: pointer;
    position: relative;

}
.odm-request-choice span {
    display: inline-block;
    background: url(../images/langicon.png) no-repeat center center;
    height: 28px;
    width: 28px;
    position: absolute;
    right: 13px;
    pointer-events: none;
}
.odm-request-choice.is-active {
    background: linear-gradient(90deg, #3c9d98 0%, #77b79d 100%);
    color: #fff;
}
.odm-request-quantity {
    align-self: end;
}
.odm-request-message-wrap {
    grid-column: 1 / 3;
    margin-top: 15px;
    position: relative;
}
.odm-request-message-wrap .verify_status {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
}
.odm-request-message-wrap .verify_status img {
    height: 100%;
}
.odm-request-message {
    height: 65px;
    padding: 8px 34px;
    resize: vertical;
    display: block;
}
.odm-request-submit {
    grid-column: 1 / 3;
    height: 50px;
    margin-top: 20px;
    border: 0;
    border-radius: 4px;
    background: linear-gradient(90deg, #3c9d98 0%, #85bea3 100%);
    color: #fff;
    font-size: 20px;
    font-family: inherit;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
}
.odm-request-submit-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}
.odm-request-note {
    grid-column: 1 / 3;
    margin:  0 0;
    color: #48aaa7;
    font-size: 17px;
    line-height: 1.5;
}
.odm-request-status {
    grid-column: 1 / 3;
    min-height: 22px;
    margin: -18px 0 0;
    color: #3c9d98;
    font-size: 15px;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .odm-request-inner { width: calc(100% - 72px); }
    .odm-request-form { gap: 34px 70px; }
}
@media (max-width: 1199px) {
    .odm-request-wrap { padding: 92px 0 112px; }
    .odm-request-inner { width: auto; padding: 0 24px; }
    .odm-request-head { margin-bottom: 72px; }
    .odm-request-title { font-size: 40px; }
    .odm-request-sub { font-size: 18px; }
    .odm-request-form { gap: 24px; }
    .odm-request-field,
    .odm-request-select-trigger { height: 70px; font-size: 18px; }
    .odm-request-menu { right: 24px; }
}
@media (max-width: 767px) {
    .odm-request-wrap { padding: 50px 0 20px; }
    .odm-request-inner { padding: 0 16px; }
    .odm-request-head { margin-bottom: 42px; }
    .odm-request-title { font-size: 26px; }
    .odm-request-sub { font-size: 14px; }
    .odm-request-form { grid-template-columns: 1fr; }
    .odm-request-field,
    .odm-request-select-trigger,
    .odm-request-message,
    .odm-request-drawing,
    .odm-request-quantity,
    .odm-request-message-wrap,
    .odm-request-submit,
    .odm-request-note,
    .odm-request-status { grid-column: auto; }
    .odm-request-field,
    .odm-request-select-trigger { height: 56px; padding: 0 18px; font-size: 15px;    line-height: 1.4; }
    .odm-request-select-trigger { padding-right: 58px; }
    .odm-request-arrow { right: 16px; width: 34px; height: 34px; }
    .odm-request-arrow::before,
    .odm-request-arrow::after { top: 15px; width: 12px; }
    .odm-request-arrow::before { left: 8px; }
    .odm-request-arrow::after { right: 8px; }
    .odm-request-menu,
    .odm-request-menu.is-small {
        left: 18px;
        right: 18px;
        width: auto;
        top: calc(100% - 8px);
    }
    .odm-request-status {
        min-height: auto;
    }
    .odm-request-option { min-height: 40px; padding: 0 24px; font-size: 16px; }
    .odm-request-drawing-title,
    .odm-request-message-label { font-size: 17px; margin-bottom: 16px; }
    .odm-request-choice-grid { grid-template-columns: 1fr; gap: 8px; }
    .odm-request-choice { height: 40px; font-size: 16px; }
    .odm-request-message { height: 130px; padding: 18px; font-size: 15px;     line-height: 1.4;}
    .odm-request-submit { height: 56px; margin-top: 24px; font-size: 16px; }
    .odm-request-note { font-size: 13px; }
}


.app-hero-wrap { width: 100%; background: #315f74; overflow: hidden; }
.app-hero-swiper { width: 100%; height: 727px; }
.app-hero-slide { position: relative; width: 100%; height: 100%; overflow: hidden; }
.app-hero-image { width: 100%; height: 100%; object-fit: cover; object-position: center center; display: block; }
.app-hero-content {
    position: absolute;
    left: 9.5%;
    top: 110px;
    width: 1000px;
    z-index: 2;
}
.app-hero-title {
    margin: 0;
    color: #fff;
    font-size: 68px;
    line-height: 1.18;
    font-weight: bold;
    letter-spacing: 0;
}
.app-hero-desc {
    width: 770px;
    margin: 36px 0 0;
    color: rgba(255, 255, 255, .86);
    font-size: 22px;
    line-height: 1.55;
}
.app-hero-img {
    margin-top: 46px;
}
.app-hero-actions { display: flex; gap: 24px; margin-top: 70px; }
.app-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    background: #5eb4af;
    border: 1px solid rgba(34, 105, 100, .25);
    box-shadow: 0 4px 8px rgba(0, 0, 0, .22);
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    padding: 10px 35px;
}
.app-hero-btn:hover {
    background: #E18000;
}
@media (max-width: 1199px) {
    .app-hero-swiper { height: 520px; }
    //.app-hero-image { object-fit: fill; }
    .app-hero-content { left: 9.6%; top: 55px; width: 620px; }
    .app-hero-title { font-size: 44px; }
    .app-hero-desc { width: 560px; margin-top: 30px; font-size: 18px; }
    .app-hero-actions { margin-top: 82px; }
}
@media (max-width: 767px) {
    .app-hero-swiper { height: 520px; }
    .app-hero-image { _object-fit: fill; object-position: center center; }
    .app-hero-mask { background: linear-gradient(90deg, rgba(48, 94, 116, .9) 0%, rgba(48, 94, 116, .54) 58%, rgba(48, 94, 116, .12) 100%); }
    .app-hero-content { left: 37px; right: 18px; top: 48px; width: auto; }
    .app-hero-title { font-size: 26px; line-height: 1.16; }
    .app-hero-desc { width: auto; margin-top: 24px; font-size: 16px; line-height: 1.5; }
    .app-hero-cert { min-width: 42px; height: 26px; font-size: 14px; }
    .app-hero-cert.is-box { width: 52px; height: 32px; font-size: 11px; }
    .app-hero-actions { gap: 10px; margin-top: 50px; flex-wrap: wrap; }
    .app-hero-btn { font-size: 15px; }
}



.app-page-wrap {
    padding: 100px 0 275px;
    padding: 70px 0 50px;
    background: #fff;
    overflow: hidden;
}
.app-page-inner {
    width: 1680px;
    margin: 0 auto;
}
.app-tabs {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    border: 2px solid #d9e6e8;
    border-radius: 9px;
    overflow: hidden;
    background: rgba(255, 255, 255, .96);
}
.app-tab {
    border: 0;
    border-left: 2px solid #d9e6e8;
    background: transparent;
    color: #2a2d31;
    font-size: 17px;
    text-align: center;
    cursor: pointer;
    transition: color .2s ease, background .2s ease;
}
.app-tab a {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
}
.app-tab:first-child { border-left: 0; }
.app-tab.is-active , .app-tabs .app-tab:hover{
    color: #fff;
    background: linear-gradient(90deg, #8eb8dd 0%, #d8aa8a 100%);
}
.app-tab.is-active a ,.app-tabs .app-tab:hover a {
    color: #fff;
}
.app-showcase {
    position: relative;
    margin-top: 20px;
    margin-top: 40px;
    //min-height: 850px;
}
.app-ghost-card {
    position: absolute;
    left: 50%;
    height: 610px;
    border-radius: 26px;
    border: 1px solid rgba(205, 219, 223, .55);
    background: rgba(247, 251, 252, .66);
    box-shadow: 0 24px 62px rgba(25, 52, 70, .08);
    overflow: hidden;
    transform: translateX(-50%);
    transition: opacity .25s ease, width .25s ease;
    display: none;
}
.app-ghost-card:nth-child(1) { top: 10px; width: 86%; opacity: .5; }
.app-ghost-card:nth-child(2) { top: 50px; width: 91%; opacity: .62; }
.app-ghost-card:nth-child(3) { top: 100px; width: 96%; opacity: .72; }
.app-ghost-title {
    display: none;
}
.app-ghost-body {
    display: grid;
    grid-template-columns: 290px minmax(0, 1fr);
    height: 100%;
}
.app-ghost-info {
    position: relative;
    background: rgba(255,255,255,.82);
}
.app-ghost-icon {
    position: absolute;
    left: 44px;
    top: 42px;
    width: 82px;
    height: 82px;
    border-radius: 999px;
    background: rgba(84, 170, 166, .26);
    display: grid;
    place-items: center;
    overflow: hidden;
}
.app-ghost-icon img {
    width: 64px;
    height: 64px;
    border-radius: 999px;
    object-fit: cover;
    opacity: .45;
}
.app-ghost-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: .42;
    display: block;
}
.app-showcase-panel {
    //position: relative;
    //top: 200px;
    display: grid;
    grid-template-columns: 530px minmax(0, 1fr);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 24px 56px rgba(20, 31, 40, .16);
    overflow: hidden;
    //z-index: 3;
}
.app-showcase-title {
    position: absolute;
    right: 0;
    top: 90px;
    z-index: 4;
    height: 112px;
    border-radius: 0 10px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #202124;
    font-size: 88px;
    line-height: 1;
    font-weight: bold;
    pointer-events: none;
    display: none;
}
.app-copy {
    position: relative;
    padding: 36px 40px 30px;
    min-width: 0;
}
.app-copy-icon {
    width: 100px;
    height: 100px;
    border-radius: 999px;
    background: #54aaa6;
    display: grid;
    place-items: center;
    overflow: hidden;
}
.app-copy-icon img {
    width: 78px;
    height: 78px;
    border-radius: 999px;
    object-fit: cover;
    filter: saturate(.45) brightness(1.25);
}
.app-title {
    margin-top: 130px;
    color: #202124;
    font-size: 30px;
    line-height: 1.18;
    font-weight: bold;
    margin-left: 15px;
}
.app-desc {
    margin: 16px 0 0 15px;
    color: #40444b;
    font-size: 17px;
    line-height: 1.55;
    max-width: 430px;
}
.app-list {
    margin: 80px 0 0 15px;
    padding: 0;
    list-style: none;
}
.app-list li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 18px;
    color: #63b7b6;
    font-size: 18px;
    line-height: 1.2;
}
.app-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .45em;
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: #63b7b6;
}
.app-visual {
    position: relative;
    min-width: 0;
    background: #edf7fa;
    display: flex;
    align-items: center;
    justify-content: center;
}
.app-main-image {
    width: 100%;
    height: 100%;
    min-height: 690px;
    object-fit: cover;
    display: block;
    background: #edf7fa;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .app-page-inner { width: calc(100% - 72px); }
    .app-showcase-panel { grid-template-columns: 420px minmax(0, 1fr); }
    .app-showcase-title {  font-size: 58px; }
    .app-copy { padding-left: 48px; padding-right: 42px; }
}
@media (max-width: 1199px) {
    .app-page-wrap { padding: 70px 24px 180px; padding: 70px 24px 100px;}
    .app-page-inner { width: auto; }
    .app-tabs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .app-tab:nth-child(4) { border-left: 0; border-top: 2px solid #d9e6e8; }
    .app-tab:nth-child(n+5) { border-top: 2px solid #d9e6e8; }
    .app-showcase { margin-top: 52px; }
    .app-showcase-panel {
        grid-template-columns: 360px minmax(0, 1fr);
        min-height: 520px;
    }
    .app-showcase-title {
        top: 174px;
        height: 100px;
        font-size: 40px;
    }
    .app-copy { padding: 32px 34px 40px; }
    .app-copy-icon { position: static; width: 82px; height: 82px; margin-bottom: 40px; }
    .app-copy-icon img { width: 66px; height: 66px; }
    .app-title { margin: 50px 0 16px 15px; font-size: 25px; }
    .app-list { margin-top: 44px; }
    .app-main-image { height: 100%; min-height: 520px; _padding-top: 88px; box-sizing: border-box; }
}
@media (max-width: 767px) {
    .app-ghost-card ,.app-showcase-title{ display: none; }
    .app-showcase-panel {
        top: 0;
        height: auto;
    }
    .app-page-wrap { padding: 46px 14px 64px; }
    .app-tabs {
        border-radius: 8px;
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
    .app-tab { flex: 0 0 190px; height: 44px; line-height: 44px; font-size: 14px; border: 0 !important; }
    .app-tab + .app-tab {
        border-top: 2px solid #d9e6e8 !important;
    }
    .app-showcase {     min-height: auto;margin-top: 30px; }
    .app-showcase-panel {
        display: flex;
        flex-direction: column;
        border-radius: 18px;
        min-height: 0;
    }
    .app-showcase-title {
        position: relative;
        left: auto;
        right: auto;
        top: auto;
        height: auto;
        min-height: 58px;
        padding: 12px 16px;
        border-radius: 0;
        font-size: 30px;
        text-align: center;
        box-sizing: border-box;
    }
    .app-copy { padding: 28px 24px 30px; }
    .app-copy-icon { width: 72px; height: 72px; margin-bottom: 28px; }
    .app-copy-icon img { width: 56px; height: 56px; }
    .app-title { font-size: 26px; }
    .app-desc { max-width: none; font-size: 15px; }
    .app-list { margin-top: 28px; }
    .app-list li { margin-bottom: 14px; font-size: 16px; }
    .app-main-image { min-height: 0; height: auto; padding-top: 0; }
}




.app-solution-wrap {
    background: linear-gradient(90deg, #3f6c84 0%, #5f8fa4 100%);
    padding: 90px 0 90px;
    overflow: hidden;
}
.app-solution-inner {
    width: 1680px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 700px minmax(0, 1fr);
    align-items: center;
    gap: 150px;
}
.app-solution-title {
    margin: 0;
    color: #fff;
    font-size: 56px;
    line-height: 1.16;
    font-weight: 800;
}
.app-solution-desc {
    width: 600px;
    margin: 58px 0 0;
    color: #FFF;
    font-size: 18px;
    line-height: 1.7;
}
.app-solution-actions {
    display: flex;
    align-items: center;
    gap: 22px;
    margin-top: 82px;
}
.app-solution-btn {
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    box-sizing: border-box;
    padding: 10px 20px;
}
.app-solution-btn.is-primary {
    background: #62bdb7;
    border: 1px solid rgba(35, 103, 111, .35);
    box-shadow: 0 3px 8px rgba(15, 43, 56, .28);
}
.app-solution-btn.is-secondary {
    padding: 10px 20px;
    background: transparent;
    border: 1px solid rgba(232, 245, 249, .42);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
}
.app-solution-btn.is-primary:hover {
    background: #E18000;
}
.app-solution-btn:hover {
    background: #E18000;
}
.app-solution-media {
    width: 100%;
    aspect-ratio: 885 / 460;
    border-radius: 10px;
    background:
            linear-gradient(135deg, rgba(255,255,255,.22), rgba(255,255,255,.06)),
            linear-gradient(90deg, #d5e4e8 0%, #eef5f7 46%, #cbdde3 100%);
    box-shadow: 0 20px 42px rgba(19, 45, 60, .2);
    overflow: hidden;
    display: grid;
    place-items: center;
    color: rgba(63, 108, 132, .56);
    font-size: 58px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0;
}
.app-solution-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .app-solution-inner { width: calc(100% - 72px); grid-template-columns: 520px minmax(0, 1fr); gap: 56px; }
    .app-solution-title { font-size: 48px; }
    .app-solution-desc { width: auto; font-size: 21px; }
}
@media (max-width: 1199px) {
    .app-solution-wrap { padding: 90px 24px; }
    .app-solution-inner {
        width: auto;
        grid-template-columns: 1fr;
        gap: 54px;
    }
    .app-solution-title { font-size: 42px; }
    .app-solution-desc { width: auto; margin-top: 34px; font-size: 19px; }
    .app-solution-actions { margin-top: 46px; }
}
@media (max-width: 767px) {
    .app-solution-wrap { padding: 64px 16px 70px; }
    .app-solution-title { font-size: 26px; line-height: 1.18; }
    .app-solution-desc { margin-top: 24px; font-size: 16px; }
    .app-solution-actions { gap: 12px; margin-top: 34px; flex-wrap: wrap; }
    .app-solution-btn {  font-size: 16px; }
    .app-solution-media { border-radius: 8px; font-size: 36px; }
}





.app-detail-wrap {
    background: #fff;
    padding: 70px 0;
}
.app-detail-inner {
    width: 1680px;
    margin: 0 auto;
}
.app-detail-top {
    display: grid;
    grid-template-columns: 620px minmax(0, 1fr);
    gap: 76px;
    align-items: center;
}
.app-typical-card {
    width: 100%;
    min-height: 280px;
    border-radius: 8px;
    background: #DEEAEA;
    padding: 30px 30px 56px;
    box-sizing: border-box;
}
.app-typical-heading {
    border-radius: 8px;
    background: #CBDFDE;
    display: flex;
    align-items: center;
    padding: 10px 30px;
    color: #019392;
    font-size: 26px;
    line-height: 1;
    font-weight: bold;
}
.app-typical-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 60px;
    margin: 63px 0 0;
    padding: 0 26px;
    list-style: none;
}
.app-typical-list li {
    position: relative;
    padding-left: 28px;
    color: #626b70;
    font-size: 18px;
    line-height: 1.35;
}
.app-typical-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .58em;
    width: 4px;
    height: 4px;
    border-radius: 999px;
    background: #5c676b;
}
.app-detail-title {
    margin: 0;
    color: #020304;
    font-size: 40px;
    line-height: 1.18;
    font-weight: bold;
    max-width: 860px;
}
.app-detail-text {
    margin: 52px 0 0;
    color: #666d72;
    font-size: 18px;
    line-height: 1.5;
    max-width: 680px;
}
.app-detail-text + .app-detail-text { margin-top: 28px; }
.app-detail-divider {
    height: 1px;
    background: #cdd2d6;
    margin: 70px 0 0;
}
.app-products {
    padding-top: 40px;
    text-align: center;
}
.app-products-kicker {
    width: 60px;
    height: 3px;
    margin: 0 auto 42px;
    background: #83cbc9;
}
.app-products-title {
    margin: 0;
    color: #020304;
    font-size: 40px;
    line-height: 1.2;
    font-weight: bold;
}
.app-products-desc {
    width: 740px;
    margin: 26px auto 0;
    color: #585858;
    font-size: 18px;
    line-height: 1.6;
}
.app-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 52px;
    margin-top: 80px;
    text-align: left;
}
.app-product-grids{
    margin-top: 80px;
    text-align: left;
}
.app-product-card {
    border-radius: 8px;
    overflow: hidden;
    background: #F6F7F9;
    box-shadow: 0 4px 16px rgba(19, 31, 42, .18);
}
.app-product-image {
    width: 100%;
    aspect-ratio: 340 / 285;
    background:
            linear-gradient(135deg, rgba(255,255,255,.4), rgba(232,240,244,.12)),
            #dfeaed;
    display: block;
    object-fit: cover;
}
.app-product-placeholder {
    width: 100%;
    aspect-ratio: 340 / 285;
    display: grid;
    place-items: center;
    background:
            linear-gradient(135deg, rgba(255,255,255,.4), rgba(232,240,244,.12)),
            #dfeaed;
    color: rgba(63, 108, 132, .48);
    font-size: 40px;
    line-height: 1;
    font-weight: 900;
}
.app-product-body {
    min-height: 220px;
    padding: 36px 32px 34px;
    box-sizing: border-box;
}

.app-product-body > a {
    display: block;
    height: 64px;
}
.app-product-title {
    margin: 0;
    color: #040506;
    font-size: 24px;
    line-height: 1.22;
    font-weight: bold;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.app-product-title:hover {
    color: #08A7A5;
}
.app-product-text {
    margin: 34px 0 0;
    color: #57585A;
    font-size: 17px;
    line-height: 1.75;
}
.app-product-grids .app-product-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
@media (min-width: 1200px) and (max-width: 1799px) {
    .app-detail-inner { width: calc(100% - 72px); }
    .app-detail-top { grid-template-columns: 520px minmax(0, 1fr); gap: 64px; }
    .app-product-grid { gap: 34px; }
}
@media (max-width: 1199px) {
    .app-detail-wrap { padding: 82px 24px 105px; }
    .app-detail-inner { width: auto; }
    .app-detail-top { grid-template-columns: 1fr; gap: 52px; }
    .app-detail-title { font-size: 34px; }
    .app-detail-text { margin-top: 34px; }
    .app-detail-divider { margin-top: 30px; }
    .app-products { padding-top: 30px; }
    .app-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
}
@media (max-width: 767px) {
    .app-detail-wrap { padding: 30px 16px 30px; }
    .app-typical-card { min-height: 0; padding: 18px; }
    .app-typical-heading { height: 42px; padding: 8px 16px; font-size: 20px; }
    .app-typical-list { grid-template-columns: 1fr; gap: 18px; margin-top: 32px; padding: 0 12px; }
    .app-detail-title { font-size: 26px; }
    .app-detail-text { font-size: 15px; }
    .app-products-title { font-size: 26px; }
    .app-products-desc { width: auto; }
    .app-product-grid { grid-template-columns: 1fr; margin-top: 52px; }
    .app-product-body { min-height: 0; padding: 28px 24px 30px; }
    .app-product-text { margin-top: 22px; }
    .app-product-grids {
        margin-top: 30px;
        text-align: left;
    }
}




.product-page-inner { max-width: 1680px; margin: 0 auto; }
.product-search-row { display: grid; grid-template-columns: minmax(0, 1fr) 112px; gap: 26px; align-items: center; }
.product-search-input {
    width: 100%;
    height: 44px;
    border: 1px solid #cfdde1;
    border-radius: 4px;
    background: #fff;
    padding: 0 16px;
    color: #26323c;
    font-size: 16px;
    outline: 0;
    box-sizing: border-box;
}
.product-search-input::placeholder { color: #aeb7bd; }
.product-search-btn {
    height: 44px;
    border: 0;
    border-radius: 6px;
    background: linear-gradient(90deg,#029694,#74B99C);
    color: #fff;
    font-size: 17px;
    font-weight: bold;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.product-search-btn:hover {
    background: linear-gradient(90deg,#E28307,#EDDE62);
}
.product-search-btn-icon {
    width: 18px;
    height: 18px;
    display: block;
    object-fit: contain;
}
.product-category-bar {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 12px;
    border: 1px solid #bfd6d7;
    border-radius: 4px;
    background: #bfd6d7;
    gap: 1px;
}
.product-category-menu-list {
    position: relative;
}
.product-category-menu-list .EFfx.eefx-jiantou2 {
    display: none;
}
.product-category {
    position: relative;
    padding: 8px;
    border: 0;
    background: #fff;
    color: #23292e;
    font-size: 16px;
    cursor: pointer;
    width: 100%;
    height: 100%;
}
.product-category:first-child { border-left: 0; }
.product-category.is-active {
    color: #fff;
    background: linear-gradient(90deg, #85b7df 0%, #efad85 100%);
}
.product-category.is-actives {
    color: #fff;
    background: linear-gradient(90deg, #85b7df 0%, #efad85 100%);
}

.product-category.is-active a ,.product-category.is-actives a {
  color: #fff;
}
.product-category-menu {
    position: absolute;
    left: 0;
    top: 100%;
    //width: calc((100% - 0px) / 4);
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
    color: rgba(255, 255, 255, .92);
    background: linear-gradient(90deg, rgba(119, 174, 218, .78), rgba(238, 167, 126, .78));
    border-radius: 0 0 9px 9px;
    overflow: hidden;
    transform: translateX(calc(var(--active-category-index, 0) * 100%));
    transition: transform .2s ease;
}
.product-category-bar .product-category-menu:not(.is-menu-open) { display: none; }
.product-category-menu li {
    display: flex;
    align-items: center;
    border-top: 1px solid rgba(255, 255, 255, .62);
    box-sizing: border-box;
    font-size: 15px;
    line-height: 1;
    padding: 6px 0px 6px 116px;
    font-weight: bold;
}
.product-category-menu li::before {
    content: "•";
    margin-right: 15px;
    font-size: 12px;
}
.product-category-menu li a {
    color: #fff;
}
.product-filter-panel {
    margin-top: 52px;
    padding: 48px 32px 50px;
    border-radius: 8px;
    background: linear-gradient(90deg, rgba(210, 224, 235, .95) 0%, rgba(236, 235, 233, .92) 54%, rgba(238, 224, 214, .92) 100%);
}
.product-filter-title { margin: 0; color: #050709; font-size: 40px; line-height: 1.1; font-weight: bold; }
.product-filter-desc {
    margin: 15px 0 0;
    color: #3d4952;
    font-size: 15px;
}
.product-filter-line { height: 1px; margin: 25px 0 30px; background: #b8cfd4; }
.product-keywords { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 10px 14px; }
.product-keyword {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: #fff;
    color: #50606b;
    font-size: 12px;
    line-height: 1.3;
    font-weight: bold;
    padding: 8px 4px;
    text-align: center;
}
.product-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 22px 12px;
    margin-top: 44px;
}
.product-card {
    overflow: hidden;
    border: 1px solid #c8dcdf;
    border-radius: 8px;
    background: #fff;
}
.product-card-image-wrap {
    place-items: center;
    border-bottom: 1px solid #c8dcdf;
    background: #fff;
    overflow: hidden;
}
.product-card-image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}
.product-card-body {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    padding: 12px 30px 16px;
    text-align: left;
    background: #fff;
}
.product-card-title {
    height: 42px;
    margin: 0 0 14px;
    color: #111;
    font-size: 14px;
    line-height: 1.42;
    font-weight: bold;
    overflow: hidden;
}
.product-card-title span {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.product-card-actions {
    display: flex;
    gap: 10px 12px;
    align-items: center;
    flex-wrap: wrap;
}
.product-card-btn {
    padding: 6px 10px;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    background: linear-gradient(90deg, #8ab8df 0%, #e2ad86 100%);
    line-height: normal;
}
.product-card-btn.is-quote,
.product-card-btn.is-detail { background: linear-gradient(90deg, #8ab8df 0%, #e2ad86 100%); border: none; }
.product-card-btn.is-quote:hover,
.product-card-btn.is-detail:hover {
    background: linear-gradient(90deg, rgba(18, 139, 247, 0.88), rgba(249, 148, 75, 0.8));
}
.product-card-placeholder {
    visibility: hidden;
    pointer-events: none;
}
.product-empty {
    grid-column: 1 / -1;
    padding: 50px 20px;
    text-align: center;
    color: #64727d;
    font-size: 16px;
}
.product-pagination {
    display: flex;
    justify-content: center;
    gap: 6px;
    margin-top: 34px;
}
.product-page-btn {
    min-width: 28px;
    height: 27px;
    border: 1px solid #d2dce0;
    border-radius: 3px;
    background: #fff;
    color: #77838c;
    font-size: 12px;
    cursor: pointer;
}
.product-page-btn.is-wide { min-width: 54px; }
.product-page-btn.is-active {
    border-color: #45a79e;
    background: #45a79e;
    color: #fff;
}
.product-page-btn:disabled {
    opacity: .45;
    cursor: default;
}
@media (max-width: 1680px) {
    .product-page-inner {
        width: auto;
        margin: 0 10px;
    }
}
@media (max-width: 1199px) {
    .product-category-bar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .product-category {
        display: flex;
        justify-content: space-between;
        padding: 8px 15px;
        align-items: center;
        text-align: left;
        gap: 20px;
    }
    .product-category-menu-list .EFfx.eefx-jiantou2 {
        display: inline-block;
    }
    .product-category-menu-list .is-active .EFfx.eefx-jiantou2{
        transform: rotateZ(-90deg);
    }
    .product-category-menu {
        position: absolute;
        top: 100%;
        width: 100%;
        transform: none;
        right: 0;
        z-index: 11111;
    }
    .product-hero-inner { width: auto; margin: 0; padding: 0 24px; }
    .product-hero-content { left: 100px; top: 72px; width: min(560px, calc(100% - 48px)); }
    //.product-hero-bg { object-fit: fill; }
    .product-hero-title { font-size: 42px; }
    .product-hero-mark { margin-top: 30px; }
    .product-hero-desc { width: min(520px, 100%); font-size: 18px; }
    .product-page-wrap { padding: 54px 0 82px; }
    .product-page-inner { width: auto; margin: 0 10px; }
    .product-category-menu li { padding-left: 42px; }
    .product-filter-panel { margin-top: 42px; padding: 38px 24px 40px; }
    .product-filter-title { font-size: 32px; }
    .product-keywords { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .product-card-image-wrap { flex-basis: 210px; height: 210px; }
    .product-card-body { padding-left: 18px; padding-right: 18px; }
    .product-card-actions { gap: 12px; }
    .product-card-btn { font-size: 13px; }
}
@media (max-width: 767px) {
    .product-hero-bg { object-position: center center; }
    .product-hero-inner { padding: 0 18px; }
    .product-hero-content { left: 35px; top: 42px; width: calc(100% - 36px); }
    .product-hero-title { max-width: 330px; font-size: 34px; line-height: 1.12; }
    .product-hero-mark { width: 42px; height: 6px; margin: 24px 0 13px; }
    .product-hero-desc { max-width: 320px; font-size: 15px; line-height: 1.48; }
    .product-page-wrap { padding: 36px 0 58px; }
    .product-search-row { grid-template-columns: 1fr; gap: 10px; }
    .product-search-btn { width: 104px; }
    .product-category-bar { grid-template-columns: 1fr; }
    .product-category { border-left: 0; border-top: 1px solid #bfd6d7;  height: auto;    text-align: left; }
    .product-category:first-child { border-top: 0; }
    .product-category-menu { position: static; width: 100%; transform: none; grid-column: 1; }
    .product-category-menu li { padding-left: 38px; }
    .product-filter-panel { margin-top: 24px; padding: 30px 18px 34px; }
    .product-filter-title { font-size: 26px; }
    .product-filter-desc { font-size: 13px; line-height: 1.6; }
    .product-keywords { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .product-keyword { font-size: 11px; }
    .product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .product-card-image-wrap { flex-basis: 260px; height: 260px; }
    .product-card-title { height: auto; min-height: 34px; }
    .product-card-actions { gap: 14px; }
    .product-card-btn { }
    .product-pagination { flex-wrap: wrap; margin-top: 10px; }
}
@media (max-width: 465px) {
    .product-grid {
        grid-template-columns: 1fr;
        margin-top: 28px;
    }
}


.product-story-wrap {
    position: relative;
    height: 680px;
    overflow: hidden;
    background: #315d73;
}
.product-story-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-position: center center;
    display: block;
    object-fit: cover;
}
.product-story-inner {
    position: relative;
    z-index: 1;
    width: 1680px;
    height: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
}
.product-story-content {
    width: 790px;
    color: #fff;
}
.product-story-title {
    margin: 0 0 76px;
    color: #fff;
    font-size: 42px;
    line-height: 1.28;
    font-weight: bold;
    letter-spacing: 0;
    text-shadow: 1px 5px 8px rgba(0, 0, 0, .85);
}
.product-story-text {
    margin: 0 0 38px;
    color: rgba(255, 255, 255, .92);
    font-size: 18px;
    line-height: 1.75;
}
.product-story-text:last-child { margin-bottom: 0; }
@media (min-width: 1200px) and (max-width: 1799px) {
    .product-story-inner { width: calc(100% - 72px); }
    .product-story-content { width: 760px; }
}
@media (max-width: 1199px) {
    .product-story-wrap { height: 560px; }
    .product-story-inner { width: auto; padding: 0 32px; }
    .product-story-content { width: min(640px, 100%); }
    .product-story-title { margin-bottom: 56px; font-size: 34px; }
    .product-story-text { font-size: 16px; line-height: 1.65; }
}
@media (max-width: 767px) {
    .product-story-wrap { height: auto; min-height: 520px; }
    .product-story-bg { object-position: center center; }
    .product-story-inner { padding: 64px 18px; }
    .product-story-title { margin-bottom: 42px; font-size: 26px; line-height: 1.28; }
    .product-story-text { font-size: 14px; line-height: 1.75; }
}




.product-hero-wrap {
    position: relative;
    width: 100%;
    height: 727px;
    overflow: hidden;
    background: #7895a8;
}
.product-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}
.product-hero-inner {
    position: relative;
    z-index: 2;
    width: 1680px;
    height: 100%;
    margin: 0 auto;
}
.product-hero-content {
    position: absolute;
    left: 68px;
    top: 200px;
    width: 990px;
    color: #fff;
}
.product-hero-title {
    margin: 0;
    font-size: 66px;
    line-height: 1.08;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0;
}
.product-hero-mark {
    width: 48px;
    height: 8px;
    margin: 40px 0 2px;
    background: linear-gradient(90deg, #779EBB, #AE9A91);
}
.product-hero-desc {
    width: 720px;
    margin: 0;
    font-size: 22px;
    line-height: 1.38;
    color: rgba(255,255,255,.92);
}
.product-hero-pic {
    margin-top: 64px;
}
.product-hero-image-card img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
}
.product-page-wrap { padding: 20px 0 50px; background: #f3f3f4; }
//.product-page-inner { width: 1680px; margin: 0 auto; }
.product-detail-view { display: block; }
.product-detail-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    padding: 0 12px;
    margin-bottom: 42px;
    border: 1px solid #c9dadd;
    border-radius: 4px;
    background: #fff;
    color: #3f8f8c;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}
.product-detail-hero {
    display: grid;
    grid-template-columns: 640px minmax(0, 1fr);
    gap: 104px;
    align-items: start;
    padding: 10px 60px 78px;
    background: #fff;
}
.product-detail-herobg {
    background: #fff;
    padding-top: 30px;
    padding-bottom: 10px;
}




.product-detail-copy { padding-top: 24px; }
.product-detail-title {
    margin: 0 0 12px;
    color: #05070a;
    font-size: 32px;
    line-height: 1.38;
    font-weight: bold;
}
.product-detail-desc {
    width: 640px;
    margin: 0;
    color: #626a72;
    font-size: 17px;
    line-height: 1.35;
    font-weight: 700;
}
.product-detail-tags {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px 10px;
    width: 700px;
    margin-top: 26px;
}
.product-detail-tags-height {
    min-height: 176px;
}
.product-detail-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #DCE7E7;
    border-radius: 5px;
    color: #555f68;
    font-size: 13px;
    background: #fff;
    text-align: center;
    padding: 3px 6px;
}
.product-detail-rule { height: 2px; margin: 10px 0 38px; background: #D5E3E3; }
.product-detail-note {
    margin: 0 0 28px;
    color: #606060;
    font-size: 18px;
    line-height: 1.45;
}
.product-detail-actions { display: flex; gap: 18px; }
.product-detail-action {
    border: 0;
    border-radius: 7px;
    background: #4fa7a3;
    color: #fff;
    font-size: 18px;
    cursor: pointer;
    box-shadow: 0 3px 7px rgba(0, 0, 0, .16);
    padding: 6px 26px;
}
.product-detail-action:hover {
    background: #E18000;
}
.product-detail-section {
    padding: 86px 0 50px;
    padding: 0px 0 50px;
    border-top: 1px solid #9aa3aa;
}
.product-detail-solution {
    display: grid;
    grid-template-columns: 650px minmax(0, 1fr);
    gap: 76px;
    align-items: center;
}
.product-detail-solution-image {
    border-radius: 6px;
    overflow: hidden;
    background: #dde7e9;
    position: relative;
}
.product-detail-solution-image img { width: 100%; height: 100%; display: block; }
.product-detail-kicker {
    margin: 0 0 22px;
    color: #56aaa7;
    font-size: 17px;
}
.product-detail-solution-image .home-exhibitions-arrows {
    left: 32px;
    justify-content: space-between;
}
.product-detail-solution-image .home-exhibitions-arrows .home-exhibitions-arrow {
    width: 32px;
    height: 32px;
    border: 0;
    color: #fff;
    font-size: 24px;
    line-height: initial;
    border-radius: 60px !important;
    background: rgba(255,255,255,0.5) !important;
    font-weight: bold;
    cursor: pointer;
}
.product-detail-solution-image .home-exhibitions-arrows .home-exhibitions-arrow.is-next:hover {
    background: #4aaaa6 !important;
}
.product-detail-solution-image .home-exhibitions-arrows .home-exhibitions-arrow.is-prev:hover {
    background: #e7a236 !important;
}
.product-detail-section-title {
    margin: 0;
    color: #05070a;
    font-size: 28px;
    line-height: 1.18;
    font-weight: bold;
}
.product-detail-section-text {
    margin: 60px 0 0;
    color: #6E6E6E;
    font-size: 18px;
    line-height: 1.25;
}
.product-detail-section-text p { margin: 0 0 22px; }
.product-specs-head {
    text-align: center;
    padding-top: 78px;
    padding-top: 50px;
}
.product-specs-mark,
.product-manufacturing-mark {
    width: 46px;
    height: 3px;
    margin: 0 auto 28px;
    background: #65c0bf;
}
.product-specs-sub, .product-manufacturing-sub {
    max-width: 780px;
    margin: 28px auto 0;
    color: #656d75;
    font-size: 18px;
    line-height: 1.65;
}
.product-specs-table {
    overflow: hidden;
    margin-top: 56px;
    border-radius: 9px;
    background: #fff;
}
.product-specs-row {
    display: grid;
    grid-template-columns: 520px 1fr;
    min-height: 54px;
    border-bottom: 1px solid #c7cdd2;
}
.product-specs-row:last-child { border-bottom: 0; }
.product-specs-label {
    display: flex;
    align-items: center;
    padding-left: 160px;
    background: linear-gradient(90deg, #e8f4fb 0%, #f8eee7 100%);
    color: #23282d;
    font-weight: 800;
}
.product-specs-value {
    display: flex;
    align-items: center;
    padding-left: 165px;
    color: #6b7076;
    font-weight: 700;
}
.product-video-card {
    position: relative;
    margin-top: 52px;
    border-radius: 8px;
    overflow: hidden;
}
.product-video-card img { width: 100%; height: 100%; object-fit: cover; display: block; }
.product-video-play {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 86px;
    height: 86px;
    border: 5px solid rgba(110, 205, 200, .85);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}
.product-video-play::before {
    content: "";
    position: absolute;
    left: 34px;
    top: 25px;
    border-left: 26px solid #68cac5;
    border-top: 17px solid transparent;
    border-bottom: 17px solid transparent;
}
.product-manufacturing {
    padding: 36px 0 30px;
    text-align: center;
}
.product-manufacturing-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 35px 50px;
    margin-top: 84px;
}
.product-manufacturing-grids {
    margin-top: 84px;
}
.product-manufacturing-card {
    overflow: hidden;
    border: 1px solid #9ea7ad;
    border-radius: 8px;
    background: #fff;
    text-align: left;
}
.product-manufacturing-image {
    border-bottom: 1px solid #b7bdc2;
    background: #fff;
}
.product-manufacturing-image img { width: 100%; height: 100%; display: block; object-fit: contain;   max-height: 240px;}
.product-manufacturing-body { padding: 22px 16px 18px; }
.product-manufacturing-body a {
    padding-bottom: 10px;
    display: block;
    border-bottom: 1px solid #aeb5bb;
    height: 44px;
}
.product-manufacturing-title {
    margin: 0;
    color: #1f252b;
    font-size: 15px;
    font-weight: 800;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.product-manufacturing-title:hover {
    color: #08A7A5;
}
.product-manufacturing-text {
    margin: 13px 0 0;
    color: #555e66;
    font-size: 13px;
    line-height: 1.55;
    font-weight: 600;
}
.product-manufacturing-grids .product-manufacturing-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
.video-det {
    position: relative;
    padding-bottom: 56.45%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    max-height: 700px;
    margin:0 auto;
}
.video-det iframe,
.video-det object,
.video-det embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media (max-width: 1680px) {
    .product-page-inner {
        padding: 0 10px;
    }
}
@media (max-width: 1199px) {
    .product-hero-wrap { height: 560px; }
    .product-hero-inner { width: auto; margin: 0; padding: 0 24px; }
    .product-hero-content { left: 100px; top: 72px; width: min(560px, calc(100% - 48px)); }
    //.product-hero-bg { object-fit: fill; }
    .product-hero-title { font-size: 42px; }
    .product-hero-mark { margin-top: 30px; }
    .product-hero-desc { width: min(520px, 100%); font-size: 18px; }
    .product-page-wrap { padding: 54px 0 82px; }
    .product-page-inner { width: auto; margin: 0 24px; }
    .product-detail-hero { grid-template-columns: 1fr; gap: 42px; padding: 0 0 60px; background: none; }
    .product-detail-title { font-size: 34px; }
    .product-detail-desc,
    .product-detail-tags,
    .product-detail-note { width: auto; }
    .product-detail-rule { margin-top: 80px; }
    .product-detail-solution { grid-template-columns: 1fr; gap: 42px; }
    .product-detail-section-title { font-size: 30px; }
    .product-specs-row { grid-template-columns: 260px 1fr; }
    .product-specs-label,
    .product-specs-value { padding-left: 34px; }
    .product-video-card { height: 430px; }
    .product-manufacturing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 767px) {
    .product-hero-wrap { height: 520px; }
    .product-hero-bg { object-position: center center; }
    .product-hero-inner { padding: 0 18px; }
    .product-hero-content {
        left: 35px;
        top: 90px;
        width: calc(100% - 72px);
        right: 35px;
    }
    .product-detail-tags-height {
        min-height: auto;
    }
    .product-hero-title { max-width: 330px; font-size: 28px; line-height: 1.12; }
    .product-hero-mark { width: 42px; height: 6px; margin: 24px 0 13px; }
    .product-hero-desc { max-width: 320px; font-size: 15px; line-height: 1.48; }
    .product-page-wrap { padding: 3px 0 10px; }
    .product-page-inner { margin: 0 16px; }
    .product-detail-back { margin-bottom: 26px; }
    .product-detail-title { font-size: 24px; }
    .product-detail-tags { grid-template-columns: 1fr; }
    .product-detail-rule { margin: 52px 0 26px; }
    .product-detail-actions { flex-wrap: wrap; }
    .product-detail-section { padding: 40px 0; }
    //.product-detail-solution-image { height: 260px; }
    .product-detail-section-title { font-size: 26px; }
    .product-detail-section-text { margin-top: 34px; font-size: 14px; }
    .product-specs-sub,
    .product-manufacturing-sub { width: auto; }
    .product-specs-row { grid-template-columns: 1fr; }
    .product-specs-label,
    .product-specs-value { min-height: 44px; padding-left: 18px; }
    .product-video-card { height: 260px; }
    .product-video-play { width: 64px; height: 64px; }
    .product-video-play::before { left: 25px; top: 18px; border-left-width: 20px; border-top-width: 13px; border-bottom-width: 13px; }
    .product-manufacturing { padding-top: 30px;    padding-bottom: 20px;}
    .product-manufacturing-grid { grid-template-columns: 1fr; margin-top: 44px; }
    .product-detail-desc, .product-detail-note {
        font-size: 14px;
    }
    .product-manufacturing-grids {
        margin-top: 34px;
    }
    .product-specs-head {
        text-align: center;
        padding-top: 20px;
    }
}





/* ===== 图片展示区 ===== */
.product-gallery {
    flex: 0 0 520px;
    position: relative;
    z-index: 10;
    --bg: #f5f2ee;
    --card: #ffffff;
    --accent: #4FA7A3;
    --accent-hover: #4FA7A3;
    --accent-soft: #fdf0ec;
    --text: #1a1a1a;
    --text-secondary: #5a5a5a;
    --muted: #9a9a9a;
    --border: #e5e1dc;
    --shadow-sm: 0 1px 4px rgba(0,0,0,0.06);
    --shadow-md: 0 4px 20px rgba(0,0,0,0.08);
    --shadow-lg: 0 8px 40px rgba(0,0,0,0.12);
    --radius: 12px;
}

.main-image-wrap {
    position: relative;
}

.main-image-container {
    position: relative;
    width: 100%;
    //aspect-ratio: 1;
    border-radius: var(--radius);
    overflow: hidden;
    background: var(--card);
    box-shadow: var(--shadow-md);
    cursor: crosshair;
    border: 2px solid #CFDEDE;
}

.main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: opacity 0.3s ease;
    user-select: none;
    -webkit-user-drag: none;
}

.main-image.switching {
    animation: imgSwitch 0.35s ease;
}

@keyframes imgSwitch {
    0% { opacity: 0.3; transform: scale(1.03); }
    100% { opacity: 1; transform: scale(1); }
}

/* 放大镜遮罩层 */
.magnifier-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0);
    pointer-events: none;
    z-index: 5;
    transition: background 0.2s;
    border-radius: var(--radius);
}
.magnifier-overlay.active {
    background: rgba(0,0,0,0.12);
}

/* 放大镜镜头 */
.magnifier-lens {
    position: absolute;
    width: 160px;
    height: 160px;
    border: 2px solid var(--accent);
    background: rgba(255,255,255,0.05);
    pointer-events: none;
    display: none;
    z-index: 10;
    border-radius: 3px;
    box-shadow: 0 0 0 1px rgba(255,255,255,0.3), inset 0 0 0 1px rgba(255,255,255,0.1);
}

/* 放大结果区域 */
.magnifier-result {
    position: absolute;
    left: calc(100% + 16px);
    top: 0;
    width: 440px;
    height: 440px;
    border-radius: var(--radius);
    border: 1px solid var(--border);
    background-color: var(--card);
    background-repeat: no-repeat;
    box-shadow: var(--shadow-lg);
    display: none;
    z-index: 30;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.2s;
}
.magnifier-result.visible {
    opacity: 1;
}

/* 图片序号指示 */
.image-indicator {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: rgba(0,0,0,0.5);
    color: #fff;
    padding: 3px 12px;
    border-radius: 20px;
    font-size: 12px;
    pointer-events: none;
    z-index: 6;
    letter-spacing: 0.5px;
    backdrop-filter: blur(4px);
}

/* ===== 缩略图区域 ===== */
.thumbnail-section {
    margin-top: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: 34px;
    margin-right: 34px;
}

.thumb-nav-btn {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 1px solid var(--border);
    background: var(--card);
    color: var(--text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.25s ease;
    font-size: 12px;
    box-shadow: var(--shadow-sm);
}
#nextBtn.thumb-nav-btn {
    background: linear-gradient(-90deg,#029694,#74B99C);
    color: #fff;
}
#prevBtn.thumb-nav-btn {
    background: linear-gradient(90deg,#029694,#74B99C);
    color: #fff;
}
#prevBtn.thumb-nav-btn:hover:not(:disabled),#nextBtn.thumb-nav-btn:hover:not(:disabled) {
    background: var(--accent);
    color: #fff;
    border-color: var(--accent);
    box-shadow: 0 2px 10px rgba(196,90,60,0.3);
    transform: scale(1.05);
}
.thumb-nav-btn:active:not(:disabled) {
    transform: scale(0.92);
}
.thumb-nav-btn:disabled {
    opacity: 0.25;
    cursor: not-allowed;
}

.thumbnail-viewport {
    flex: 1;
    overflow: hidden;
    margin: 0 25px;
}

.thumbnail-track {
    display: flex;
    gap: 8px;
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.thumbnail-item {
    flex-shrink: 0;
    width: calc((100% - 24px) / 4);
    aspect-ratio: 1;
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid #CEDEDE;
    transition: all 0.3s ease;
    opacity: 0.5;
    background: var(--card);
    position: relative;
}
.thumbnail-item::after {
    content: '';
    position: absolute;
    inset: 0;
    transition: background 0.3s;
    border-radius: 6px;
}
.thumbnail-item.active {
    border-color: var(--accent);
    opacity: 1;
    box-shadow: 0 0 0 1px var(--accent);
}
.thumbnail-item:hover:not(.active) {
    opacity: 0.75;
    border-color: var(--border);
}
.thumbnail-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    pointer-events: none;
}

/* ===== 手机端弹窗 ===== */
.mobile-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.96);
    z-index: 1000;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.mobile-lightbox.active {
    display: flex;
    animation: lbFadeIn 0.25s ease;
}
@keyframes lbFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

.lightbox-close {
    position: absolute;
    top: env(safe-area-inset-top, 12px);
    right: 16px;
    width: 44px; height: 44px;
    margin-top: 12px;
    border-radius: 50%;
    background: rgba(255,255,255,0.1);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(255,255,255,0.08);
    color: #fff;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1001;
    transition: background 0.2s;
}
.lightbox-close:hover { background: rgba(255,255,255,0.2); }

.lightbox-wrapper {
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    touch-action: none;
    user-select: none;
}
.lightbox-image {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transform-origin: center center;
    will-change: transform;
    transition: transform 0.08s linear;
}

.lightbox-counter {
    position: absolute;
    bottom: calc(env(safe-area-inset-bottom, 16px) + 16px);
    left: 50%;
    transform: translateX(-50%);
    background: rgba(255,255,255,0.1);
    backdrop-filter: blur(8px);
    color: rgba(255,255,255,0.8);
    padding: 5px 18px;
    border-radius: 20px;
    font-size: 13px;
    z-index: 1002;
    letter-spacing: 1px;
}
.lightbox-hint {
    position: absolute;
    bottom: calc(env(safe-area-inset-bottom, 16px) + 56px);
    left: 50%;
    transform: translateX(-50%);
    color: rgba(255,255,255,0.35);
    font-size: 12px;
    z-index: 1002;
    white-space: nowrap;
}

/* ===== Toast 提示 ===== */
.toast-container {
    position: fixed;
    top: 80px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2000;
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-items: center;
}
.toast {
    background: rgba(26,26,26,0.88);
    color: #fff;
    padding: 10px 24px;
    border-radius: 8px;
    font-size: 13px;
    backdrop-filter: blur(10px);
    animation: toastIn 0.3s ease, toastOut 0.3s ease 2s forwards;
    white-space: nowrap;
}
@keyframes toastIn { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes toastOut { from { opacity: 1; } to { opacity: 0; transform: translateY(-10px); } }

/* ===== 响应式 ===== */
@media (max-width: 960px) {
    .product-page { gap: 32px; }
    .product-gallery { flex: 0 0 420px; }
    .magnifier-result { width: 360px; height: 360px; }
}

@media (max-width: 768px) {
    .product-page {
        flex-direction: column;
        padding: 0 0 32px;
        gap: 0;
    }
    .product-gallery { flex: none; width: 100%; }
    .main-image-container { border-radius: 0; cursor: pointer; }
    .magnifier-lens,
    .magnifier-result,
    .magnifier-overlay { display: none !important; }
    .thumbnail-section { padding: 0 12px; margin-top: 10px; }
    .product-info { padding: 20px 16px 0; }
    .product-title { font-size: 20px; }
    .price-current { font-size: 26px; }
}

@media (max-width: 480px) {
    .magnifier-result { display: none !important; }
}
