﻿:root{
    --primary-blue:#1d70c5;
    --primary-dark:#155a9e;
    --primary-light:#4a8fd4;
    --secondary-teal:#2ba0a3;
    --accent-cyan:#41c5bb;
    --dark-gray:#1A2533;
    --medium-gray:#5A6C7D;
    --light-gray:#E8EEF2;
    --text-gray:#6B7280;
    --white:#FFFFFF;
    --off-white:#F5F8FB;
    --accent-orange:#FF6B2C;
    --success-green:#28A745;
    --font-heading:'Montserrat',sans-serif;
    --font-body:'Open Sans',sans-serif;
    --section-padding:80px 0;
    --container-width:1400px;
    --transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1)
}
 .about-page__hero.list-products-page__hero,.applications-page__hero.list-products-page__hero,.case-page__hero.list-products-page__hero,.contact-page__hero.list-products-page__hero,.list-blog-page__hero.list-products-page__hero,.product-detail-page__hero.list-products-page__hero,.services-page__hero.list-products-page__hero{
    position:relative;
    padding:90px 0 0;
    color:#fff;
    overflow:hidden
}
 .list-blog-page__hero.list-products-page__hero{
    background:url('images/list-blog-hero-generated-2.webp') center/cover no-repeat
}
 .about-page__hero.list-products-page__hero .container,.applications-page__hero.list-products-page__hero .container,.case-page__hero.list-products-page__hero .container,.contact-page__hero.list-products-page__hero .container,.list-blog-page__hero.list-products-page__hero .container,.product-detail-page__hero.list-products-page__hero .container,.services-page__hero.list-products-page__hero .container{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:350px;
    text-align:center
}
 .about-page__hero.list-products-page__hero .list-products-page__title,.applications-page__hero.list-products-page__hero .list-products-page__title,.case-page__hero.list-products-page__hero .list-products-page__title,.contact-page__hero.list-products-page__hero .list-products-page__title,.list-blog-page__hero.list-products-page__hero .list-products-page__title,.product-detail-page__hero.list-products-page__hero .list-products-page__title,.services-page__hero.list-products-page__hero .list-products-page__title{
    max-width:920px
}
 .list-blog .list-blog-page__category-bar-wrap{
    margin-top:0;
    padding-top:0
}
 .contact-page .contact-page__channels{
    margin-top:0
}
 *,::after,::before{
    box-sizing:border-box;
    margin:0;
    padding:0
}
 html{
    scroll-behavior:smooth;
    scroll-padding-top:80px
}
 body{
    font-family:var(--font-body);
    color:var(--dark-gray);
    line-height:1.7;
    overflow-x:hidden;
    -webkit-font-smoothing:antialiased
}
 .single-page{
    background:linear-gradient(180deg,#fff 0,var(--off-white) 100%);
    color:var(--dark-gray)
}
 .single-page-content{
    padding:90px 0 90px
}
 .single-page-article{
    position:relative;
    padding:30px;
    border:1px solid rgba(29,112,197,.12);
    border-radius:8px;
    background:#fff;
    overflow:hidden
}
 .single-page-article::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,var(--primary-blue),var(--secondary-teal))
}
 .single-page-article>:first-child{
    margin-top:0
}
 .single-page-article>:last-child{
    margin-bottom:0
}
 .single-page-title{
    margin:0 0 30px;
    padding-bottom:30px;
    border-bottom:1px solid rgba(29,112,197,.14);
    color:var(--dark-gray);
    font-family:var(--font-heading);
    font-size:clamp(20px,4vw,28px);
    line-height:1.12;
    font-weight:600;
    text-align:center
}
 .single-page-article h2,.single-page-article h3,.single-page-article h4{
    margin:34px 0 14px;
    color:var(--dark-gray);
    font-family:var(--font-heading);
    font-weight:600;
    line-height:1.25
}
 .single-page-article h2{
    font-size:30px
}
 .single-page-article h3{
    font-size:24px
}
 .single-page-article h4{
    font-size:20px
}
 .single-page-article p{
    margin:0 0 18px;
    color:var(--medium-gray);
    font-size:16px;
    line-height:1.9;
    overflow-wrap:anywhere
}
 .single-page-article p:first-child{
    color:#344054;
    font-size:17px
}
 .single-page-article p:has(br){
    padding:18px 20px;
    border:1px solid rgba(29,112,197,.1);
    border-radius:8px;
    background:var(--off-white)
}
 .single-page-article a{
    color:var(--primary-blue);
    font-weight:600;
    text-decoration:underline;
    text-underline-offset:3px
}
 .single-page-article strong{
    color:var(--dark-gray);
    font-weight:600
}
 .single-page-article ol,.single-page-article ul{
    display:grid;
    gap:10px;
    margin:0 0 22px 22px;
    color:var(--medium-gray);
    font-size:16px;
    line-height:1.8
}
 .single-page-article li::marker{
    color:var(--primary-blue);
    font-weight:600
}
 .single-page-article blockquote{
    margin:28px 0;
    padding:22px 24px;
    border-left:4px solid var(--primary-blue);
    border-radius:0 8px 8px 0;
    background:var(--off-white);
    color:#344054;
    font-weight:600
}
 .single-page-article table{
    width:100%;
    margin:26px 0;
    border-collapse:collapse;
    overflow:hidden;
    border-radius:8px;
    box-shadow:0 0 0 1px rgba(29,112,197,.12)
}
 .single-page-article td,.single-page-article th{
    padding:14px 16px;
    border-bottom:1px solid rgba(29,112,197,.1);
    color:var(--medium-gray);
    font-size:15px;
    line-height:1.6;
    text-align:left
}
 .single-page-article th{
    background:#eef6fc;
    color:var(--dark-gray);
    font-weight:600
}
 .single-page-article img{
    display:block;
    max-width:100%;
    height:auto;
    margin:24px 0;
    border-radius:8px
}
 .bd-page{
    --bd-blue:var(--primary-blue);
    --bd-blue-dark:var(--primary-dark);
    --bd-cyan:var(--secondary-teal);
    --bd-ink:var(--dark-gray);
    --bd-text:var(--medium-gray);
    --bd-muted:var(--text-gray);
    --bd-line:rgba(29,112,197,.12);
    --bd-soft:var(--off-white);
    background:linear-gradient(180deg,#fff 0,var(--off-white) 100%);
    color:var(--bd-ink)
}
 .bd-page .container{
    max-width:var(--container-width)
}
 .bd-hero{
    padding:86px 0 70px
}
 .bd-hero-grid{
    display:block;
    max-width:95%;
    margin:0 auto;
    text-align:center
}
 .bd-hero-copy h1{
    margin:0;
    color:var(--dark-gray);
    font-family:var(--font-heading);
    font-size: clamp(26px,3.2vw,26px);
    line-height:1.22;
    letter-spacing:0;
    font-weight: 600;
}
 .bd-meta{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;
    margin:20px 0 0;
    color:var(--bd-muted);
    font-size:14px;
    font-weight:500;
    letter-spacing:0;
    text-transform:none
}
 .bd-meta-item{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:20px;
    padding:0;
    border:0;
    border-radius:0;
    background:0 0;
    white-space:nowrap
}
 .bd-meta-item svg{
    width:20px;
    height:20px;
    flex:0 0 auto;
    fill:none;
    stroke:var(--bd-muted);
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round
}
 .bd-content{
    padding:0 0 90px
}
 .bd-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 340px;
    gap:30px;
    align-items:start;
    margin-bottom:40px
}
 .bd-article{
    min-width:0
}
 .bd-body{
    padding:30px;
    border:1px solid var(--bd-line);
    border-radius:8px;
    background:#fff;
    overflow:hidden
}
 .bd-body>:first-child{
    margin-top:0
}
 .bd-body>:last-child{
    margin-bottom:0
}
 .bd-body p{
    margin:0 0 20px;
    color:var(--bd-text);
    font-size:16px;
    line-height: 1.45;
    overflow-wrap:anywhere
}
 .bd-body h2,.bd-body h3,.bd-body h4{
    color:var(--dark-gray);
    font-family:var(--font-heading);
    scroll-margin-top:110px
}
 .bd-body h2{
    position:relative;
    margin: 20px 0 10px;
    /* padding-left:18px; */
    font-size: 20px;
    line-height:1.25;
    font-weight: 600;
}
 .bd-body h3{
    margin: 20px 0 15px;
    font-size: 18px;
    line-height:1.3;
    font-weight:600;
}
 .bd-body h4{
    margin: 20px 0 10px;
    font-size: 16px;
    line-height:1.35;
    font-weight:600
}
 .bd-body img{
    display:block;
    /* width:100%; */
    /* max-width:100%!important; */
    /* height:auto; */
    margin:28px 0 12px;
    border-radius:8px
}
 .bd-body p:has(> img){
    margin:34px 0 12px
}
 .bd-body p:has(> img) img{
    margin:0
}
 .bd-body p:has(> strong):not(:has(img)){
    color:var(--text-gray);
    font-size:14px;
    line-height:1.6
}
 .bd-body strong{
    color:var(--dark-gray);
    font-weight:600
}
 .bd-body a{
    color:var(--bd-blue);
    font-weight:600;
    text-decoration:underline;
    text-underline-offset:3px
}
 .bd-body ol,.bd-body ul{
    display:grid;
    gap:10px;
    margin:0 0 24px 24px;
    color:var(--bd-text);
    font-size:16px;
    line-height:1.85
}
 .bd-body li::marker{
    /* color:var(--bd-blue); */
    /* font-weight:600; */
}
 .bd-table-wrap{
    overflow:auto;
    margin:28px 0
}
 .bd-body table{
    width:100%;
    min-width:680px;
    border-collapse:collapse;
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 0 0 1px var(--bd-line)
}
 .bd-body td,.bd-body th{
    padding:14px 16px;
    border-bottom:1px solid var(--bd-line);
    color:var(--bd-text);
    font-size:15px;
    line-height:1.6;
    text-align:left
}
 .bd-body th{
    background:#eef6fc;
    color:var(--dark-gray);
    font-weight:600
}
 .bd-sidebar{
    position:sticky;
    top:96px;
    display:grid;
    gap:18px
}
 .bd-sidecard{
    padding:20px;
    border:1px solid var(--bd-line);
    border-radius:8px;
    background:#fff;
    border:0
}
 .bd-sidecard-tag{
    display:inline-block;
    margin-bottom:15px;
    color:var(--bd-blue);
    font-size:14px;
    font-weight:500
}
 .bd-sidecard h3,.bd-toc-card .sidebar-widget-title{
    margin:0 0 12px;
    color:var(--dark-gray);
    font-family:var(--font-heading);
    font-size:18px;
    line-height:1.25;
    font-weight:500
}
 .bd-sidecard p{
    margin:0;
    color:var(--bd-text);
    font-size:14px;
    line-height:1.75
}
 .bd-side-list{
    display:grid;
    gap:8px;
    margin:10px 0 0;
    padding:0;
    list-style:none
}
 .bd-side-list a{
    display:block;
    padding:9px 0;
    color:var(--medium-gray);
    font-size:15px;
    font-weight:600;
    line-height:1.45;
    text-decoration:none;
    transition:color .2s,padding-left .2s
}
 .bd-side-list a.active,.bd-side-list a:hover,.bd-side-list li.active>a{
    padding-left:8px;
    color:var(--bd-blue)
}
 .bd-sidecard-dark{
    background:linear-gradient(135deg,var(--primary-dark) 0,var(--secondary-teal) 100%);
    color:#fff
}
 .bd-sidecard-dark h3,.bd-sidecard-dark p{
    color:#fff
}
 .bd-sidecard-dark .bd-sidecard-tag{
    color:#d7fffb
}
 .bd-side-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    margin-top:18px;
    padding:10px 18px;
    border-radius:999px;
    background:#fff;
    color:var(--bd-blue);
    font-size:14px;
    font-weight:900;
    text-decoration:none;
    transition:transform .2s,box-shadow .2s
}
 .bd-side-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 12px 24px rgba(0,0,0,.14)
}
 .bd-related-list{
    display:grid;
    gap:14px
}
 .bd-related-item{
    display:grid;
    grid-template-columns:82px minmax(0,1fr);
    gap:12px;
    align-items:center;
    color:inherit;
    text-decoration:none
}
 .bd-related-item img{
    width:82px;
    height:82px;
    border-radius:8px;
    object-fit:cover;
    background:#eef6fc
}
 .bd-related-item strong{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    overflow:hidden;
    color:var(--dark-gray);
    font-size:15px;
    line-height:1.45;
    font-weight:600
}
 .bd-related-item span{
    display:block;
    margin-top:5px;
    color:var(--bd-muted);
    font-size:13px
}
 .bd-post-nav{
    padding:0 0 90px
}
 .bd-post-nav-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px
}
 .bd-post-nav-item{
    display:grid;
    gap:10px;
    padding:22px;
    border:1px solid var(--bd-line);
    border-radius:8px;
    background:#fff;
    color:var(--dark-gray);
    text-decoration:none;
    transition:transform .2s,border-color .2s,box-shadow .2s
}
 .bd-post-nav-item:hover{
    transform:translateY(-2px);
    border-color:rgba(29,112,197,.25)
}
 .bd-post-nav-empty-item{
    background:#f7f9fb;
    color:#8a93a5;
    box-shadow:none
}
 .bd-post-nav-empty-item:hover{
    transform:none;
    border-color:var(--bd-line);
    box-shadow:none
}
 .bd-post-nav-next{
    text-align:right
}
 .bd-post-nav-label{
    color:var(--bd-blue);
    font-size:14px;
    font-weight:500
}
 .bd-post-nav-item strong{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    color:inherit;
    font-size:16px;
    line-height:1.4;
    font-weight:500
}
 .bd-toc-fab,.bd-toc-mask{
    display:none
}
 body.bd-toc-open{
    overflow:hidden
}
 img{
    max-width:100%;
    height:auto;
    display:block
}
 a{
    text-decoration:none;
    color:inherit;
    outline:0
}
 button{
    font-family:inherit;
    cursor:pointer;
    border:none;
    background:0 0
}
 .container{
    max-width:var(--container-width);
    margin:0 auto
}
 .index .btn-primary{
    display:inline-flex;
    align-items:center;
    gap:12px;
    background:var(--primary-blue);
    color:var(--white);
    padding:18px 40px;
    border:1px solid var(--primary-blue);
    border-radius:5px;
    font-weight:600;
    font-size:16px;
    transition:var(--transition)
}
 .index .btn-primary:hover{
    background:var(--primary-dark);
    transform:translateY(-3px)
}
 .index .btn-secondary{
    display:inline-flex;
    align-items:center;
    gap:12px;
    background:0 0;
    color:var(--white);
    padding:18px 40px;
    border:2px solid rgba(255,255,255,.5);
    border-radius:5px;
    font-weight:600;
    font-size:16px;
    transition:var(--transition)
}
 .index .btn-secondary:hover{
    background:rgba(255,255,255,.1);
    border-color:var(--white)
}
 .index .section{
    padding:var(--section-padding)
}
 .index .section-header{
    text-align:center;
    margin-bottom:60px
}
 .index .section-tag{
    display:inline-block;
    background:rgba(0,102,204,.1);
    color:var(--primary-blue);
    padding:8px 20px;
    border-radius:50px;
    font-size:12px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
    margin-bottom:20px
}
 .index .section-title{
    font-family:var(--font-heading);
    font-size:clamp(28px, 4vw, 36px);
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:20px
}
 .index .section-subtitle{
    font-size:16px;
    color:var(--medium-gray);
    max-width:80%;
    margin:0 auto
}
 .jquery-ripples{
    position:relative;
    z-index:0
}
 .index .reveal{
    opacity:0;
    transform:translateY(30px);
    transition:opacity .6s ease,transform .6s ease
}
 .index .reveal.active{
    opacity:1;
    transform:translateY(0)
}
 .index .full-landing-image{
    position:absolute;
    inset:0;
    width:100%;
    z-index:0;
    height:100%;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center
}
 .index .section-bg-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
 .index .full-landing-image::after,.index .full-landing-image::before{
    content:"";
    position:absolute;
    inset:-18%;
    background-repeat:no-repeat;
    opacity:.85;
    display:none
}
 .index .swiper-container{
    display:none;
    padding:0 20px
}
 .index .swiper-slide{
    height:auto
}
 .index .swiper-pagination-bullet{
    background:var(--primary-blue);
    opacity:.3
}
 .index .swiper-pagination-bullet-active{
    opacity:1
}
 .header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    background:rgba(255,255,255,.98);
    backdrop-filter:blur(10px);
    box-shadow:0 1px 10px rgba(0,0,0,.08);
    z-index:1000;
    transition:var(--transition)
}
 .header.scrolled{
    box-shadow:0 1px 5px rgba(0,0,0,.12)
}
 .nav-container{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    max-width:1680px;
    margin:0 auto
}
 .logo{
    display:flex;
    align-items:center;
    gap:20px;
    text-decoration:none
}
 .logo-img{
    height:58px;
    width:auto;
    object-fit:contain
}
 .logo-tagline{
    font-size:15px;
    color:var(--medium-gray);
    font-weight:500;
    line-height:1.4;
    max-width:320px;
    border-left:2px solid var(--primary-blue);
    padding-left:16px
}
 .nav-menu-shell{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex:1 1 auto;
    min-width:0;
    margin-left:auto;
    position:static;
    background:0 0;
    z-index:auto
}
 .nav-menu-panel{
    display:flex;
    align-items:center;
    min-width:0;
    position:static;
    width:auto;
    max-width:none;
    background:0 0;
    box-shadow:none;
    transform:none
}
 .nav-menu-header{
    display:none
}
 .nav-menu{
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:28px
}
 .nav-link--contact-mobile{
    display:none
}
 .nav-link{
    color:var(--dark-gray);
    font-weight: 500;
    font-size: 18px;
    /* text-transform:uppercase; */
    /* letter-spacing:.35px; */
    white-space:nowrap;
    transition:var(--transition);
    position:relative;
    padding:30px 0
}
 .nav-link::after{
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:0;
    height:2px;
    background:var(--primary-blue);
    transition:var(--transition)
}
 .nav-link.active,.nav-link:hover{
    color:var(--primary-blue)
}
 .nav-link.active::after,.nav-link:hover::after{
    width:100%
}
 .nav-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-shrink:0;
    margin-left:20px
}
 .nav-contact-link{
    color:var(--dark-gray);
    font-size:16px;
    font-weight:600;
    white-space:nowrap;
    transition:var(--transition)
}
 .nav-contact-link:hover{
    color:var(--primary-blue)
}
 .nav-quote-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:0 20px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.12);
    background:var(--accent-orange);
    color:var(--white);
    font-weight:600;
    font-size:15px;
    white-space:nowrap;
    transition:var(--transition)
}
 .nav-quote-btn:hover{
    transform:translateY(-2px)
}
 .nav-item-has-children{
    position:relative
}
 .nav-item-has-children>.nav-link{
    display:flex;
    align-items:center;
    gap:4px
}
 .nav-item-has-children>.nav-submenu-toggle{
    display:none
}
 .nav-submenu{
    position:absolute;
    top:100%;
    left:50%;
    transform:translateX(-50%) translateY(10px);
    min-width:220px;
    background:var(--white);
    border-radius:8px;
    padding:8px 0;
    opacity:0;
    visibility:hidden;
    transition:all .25s ease;
    z-index:1000
}
 .nav-item-has-children:hover .nav-submenu{
    opacity:1;
    visibility:visible;
    transform:translateX(-50%) translateY(0)
}
 .nav-submenu-link{
    display:block;
    padding:10px 20px;
    color:var(--dark-gray);
    font-size:14px;
    font-weight:500;
    transition:var(--transition);
    white-space:nowrap
}
 .nav-submenu-link.active,.nav-submenu-link:hover{
    background:rgba(29,112,197,.08);
    color:var(--primary-blue);
    padding-left:25px
}
 .mobile-nav-wrapper{
    display:none;
    align-items:center;
    gap:8px
}
 .mobile-search-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border:none;
    background:rgba(29,112,197,.1);
    color:var(--primary-blue);
    font-size:15px;
    cursor:pointer;
    transition:var(--transition);
    border-radius:8px
}
 .mobile-search-toggle.active,.mobile-search-toggle:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .mobile-quote-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:30px;
    height:30px;
    background:var(--accent-orange);
    color:var(--white);
    font-size:15px;
    border-radius:8px;
    transition:var(--transition);
    text-decoration:none
}
 .mobile-quote-btn:hover{
    background:#e55a2b;
    transform:translateY(-2px);
    box-shadow:0 4px 15px rgba(255,107,44,.3)
}
 .mobile-toggle{
    display:none;
    width:40px;
    height:40px;
    font-size:18px;
    color:var(--primary-dark);
    border-radius:8px;
    transition:var(--transition);
    cursor:pointer;
    background:0 0;
    border:none
}
 .mobile-toggle i{
    transition:transform .3s ease,opacity .3s ease;
    display:block
}
 .mobile-toggle:hover{
    background:rgba(29,112,197,.1)
}
 .mobile-toggle:active{
    transform:scale(.95)
}
 .nav-menu-title{
    font-size:18px;
    font-weight:600;
    color:var(--primary-dark)
}
 .nav-menu-close{
    width:36px;
    height:36px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:0 0;
    border:none;
    color:var(--text-light);
    font-size:20px;
    cursor:pointer;
    border-radius:50%;
    transition:var(--transition)
}
 .nav-menu-close:hover{
    background:rgba(29,112,197,.1);
    color:var(--primary-blue)
}
 .search-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
    width:40px;
    height:40px;
    border:1px solid rgba(37,72,170,.2);
    background:#f7f9ff;
    color:var(--primary-dark);
    font-size:18px;
    cursor:pointer;
    transition:var(--transition);
    border-radius:50%
}
 .search-toggle:hover{
    background:#eef3ff;
    border-color:rgba(37,72,170,.35)
}
 .search-toggle.active{
    color:var(--white);
    background:var(--primary-blue)
}
 .search-toggle.active i{
    transform:rotate(90deg)
}
 .search-overlay{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(15,24,35,.98);
    z-index:9999;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .3s ease,visibility .3s ease
}
 .search-overlay.active{
    opacity:1;
    visibility:visible;
    pointer-events:auto
}
 .search-container{
    width:100%;
    max-width:700px;
    padding:0 30px;
    transform:translateY(-20px);
    transition:transform .3s ease
}
 .search-overlay.active .search-container{
    transform:translateY(0)
}
 .search-box{
    display:flex;
    align-items:center;
    gap:15px;
    background:var(--white);
    border-radius:50px;
    padding:8px 8px 8px 25px;
    box-shadow:0 10px 40px rgba(0,0,0,.2)
}
 .search-icon{
    color:var(--text-gray);
    font-size:18px
}
 .search-input{
    flex:1;
    border:none;
    background:0 0;
    font-size:16px;
    font-family:var(--font-body);
    color:var(--dark-gray);
    outline:0
}
 .search-input::placeholder{
    color:var(--text-gray)
}
 .search-close{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border:none;
    background:var(--primary-blue);
    color:var(--white);
    border-radius:50%;
    cursor:pointer;
    transition:var(--transition)
}
 .search-close:hover{
    background:var(--primary-dark);
    transform:rotate(90deg)
}
 .search-overlay.active~main .nav-menu{
    opacity:0;
    pointer-events:none
}
 .index .hero{
    position:relative;
    min-height:min(100vh,920px);
    height:min(100vh,920px);
    overflow:hidden;
    padding-top:80px;
    background:#dfe7ef
}
 .index .hero-swiper{
    width:100%;
    height:100%
}
 .index .hero-swiper .swiper-slide,.index .hero-swiper .swiper-wrapper{
    height:100%
}
 .index .hero-slide{
    position:relative;
    width:100%;
    height:100%;
    overflow:hidden
}
 .index .hero-slide-link{
    position:absolute;
    inset:0;
    display:block;
    z-index:0
}
 .index .hero-picture{
    position:absolute;
    inset:0;
    display:block
}
 .index .hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(0,0,0,.7),rgba(0,0,0,.5));
    z-index:1;
    pointer-events:none
}
 .index .hero-slide-image{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover
}
 .index .hero .container{
    position:relative;
    height:100%;
    z-index:2
}
 .index .hero-content{
    position:absolute;
    left:0;
    bottom:clamp(25%,12vh,140px);
    max-width:min(720px,62%);
    color:var(--white);
    z-index:2
}
 .index .hero-content .hero-title,.index .hero-content h1{
    margin:0;
    font-family:var(--font-heading);
    font-size:clamp(40px,4.8vw,68px);
    line-height:1.05;
    font-weight:600;
    color:var(--white)
}
 .index .hero-content .hero-title span,.index .hero-content h1 span{
    color:#fff;
    opacity:.88
}
 .index .hero-subtitle{
    margin:22px 0 0;
    max-width:640px;
    font-size:18px;
    line-height:1.75;
    color:rgba(255,255,255,.86)
}
 .index .hero-slide-icon{
    display:block;
    width:auto;
    max-width:180px;
    max-height:70px;
    margin-top:24px;
    object-fit:contain
}
 .index .hero-cta{
    margin-top:30px
}
 .index .hero-nav{
    position:absolute;
    inset:50% 24px auto;
    z-index:3;
    display:flex;
    justify-content:space-between;
    pointer-events:none;
    transform:translateY(-50%)
}
 .index .hero-nav-btn{
    width:52px;
    height:52px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.18);
    color:var(--white);
    font-size:18px;
    cursor:pointer;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    transition:var(--transition);
    pointer-events:auto
}
 .index .hero-nav-btn:hover{
    background:rgba(255,255,255,.28)
}
 .index .hero-pagination{
    position:absolute;
    left:50%!important;
    bottom:32px!important;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    width:auto!important;
    transform:translateX(-50%)
}
 .index .hero-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    margin:0!important;
    background:rgba(255,255,255,.35);
    opacity:1
}
 .index .hero-pagination .swiper-pagination-bullet-active{
    width:38px;
    border-radius:999px;
    background:var(--white)
}
 .index .stat-item{
    text-align:center
}
 .index .stat-number{
    font-family:var(--font-heading);
    font-size:42px;
    font-weight:600;
    color:var(--accent-cyan)
}
 .index .stat-label{
    font-size:13px;
    color:rgba(255,255,255,.75);
    text-transform:uppercase;
    letter-spacing:1px;
    margin-top:5px
}
 .index .about{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    background:0 0
}
 .index .about .container{
    position:relative;
    z-index:1
}
 .index .about .full-landing-image{
    background-image:url("../images/93942fc049df52ac228bba8484336e53.webp");
    opacity:.62
}
 .index .about .full-landing-image::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(245,250,255,.82) 0,rgba(235,245,252,.74) 45%,rgba(255,255,255,.7) 100%);
    z-index:1;
    display:block
}
 .index .about-container{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    align-items:stretch
}
 .index .about-image{
    position:relative
}
 .index .about-image img{
    width:100%;
    border-radius:12px;
    aspect-ratio:4/3;
    object-fit:cover
}
 .index .about-badge{
    position:absolute;
    bottom:-30px;
    right:-30px;
    background:var(--white);
    padding:30px;
    border-radius:12px;
    box-shadow:0 15px 40px rgba(0,0,0,.15)
}
 .index .about-badge .years{
    font-family:var(--font-heading);
    font-size:48px;
    font-weight:600;
    color:var(--primary-blue);
    line-height:1
}
 .index .about-badge .label{
    font-size:13px;
    color:var(--medium-gray);
    text-transform:uppercase;
    letter-spacing:1px
}
 .index .about-content p{
    font-size:16px;
    color:var(--medium-gray);
    margin-bottom:18px
}
 .index .about-highlights{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin:30px 0
}
 .index .about-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
    margin-top:42px
}
 .index .about-stat-card{
    background:rgba(255,255,255,.72);
    border:1px solid rgba(29,112,197,.12);
    border-radius:8px;
    padding:20px;
    text-align:center;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px)
}
 .index .about-stat-value{
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:4px;
    margin-bottom:10px
}
 .index .about-stat-card .stat-number{
    font-size:44px;
    line-height:1;
    color:var(--primary-blue)
}
 .index .stat-suffix{
    font-family:var(--font-heading);
    font-size:20px;
    font-weight:600;
    line-height:1.2;
    color:var(--primary-blue)
}
 .index .about-stat-label{
    font-size:14px;
    font-weight:600;
    color:var(--medium-gray);
    letter-spacing:.4px;
    text-transform:uppercase
}
 .index .highlight-item{
    display:flex;
    align-items:center;
    gap:12px
}
 .index .highlight-item i{
    color:var(--success-green);
    font-size:18px
}
 @keyframes aboutRippleDrift{
    0%{
        transform:translate3d(0,0,0) scale(1)
    }
     50%{
        transform:translate3d(-2.5%,1.5%,0) scale(1.04)
    }
     100%{
        transform:translate3d(2%,-2%,0) scale(1.08)
    }
}
 @keyframes aboutRipplePulse{
    0%{
        transform:translate3d(0,0,0) scale(.98);
        opacity:.4
    }
     100%{
        transform:translate3d(1.5%,-1%,0) scale(1.08);
        opacity:.82
    }
}
 .index .solutions{
    background:linear-gradient(180deg,var(--off-white) 0,var(--white) 100%)
}
 .index .solutions-swiper-wrapper{
    display:block
}
 .index .solutions-pagination{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:12px!important;
    width:auto!important;
    margin:40px auto 0!important;
    position:relative!important;
    bottom:auto!important
}
 .index .solutions-pagination .swiper-pagination-bullet{
    width:12px!important;
    height:12px!important;
    background:rgba(29,112,197,.3)!important;
    border-radius:50%!important;
    opacity:1!important;
    transition:all .3s ease;
    margin:0!important
}
 .index .solutions-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)!important
}
 .index .solutions-pagination .swiper-pagination-bullet-active{
    background:var(--primary-blue)!important;
    width:36px!important;
    border-radius:6px!important
}
 .index .solution-card{
    background:var(--white);
    border-radius:12px;
    padding:40px 30px;
    transition:var(--transition);
    border:1px solid var(--light-gray);
    position:relative;
    overflow:hidden
}
 .index .solution-card::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:linear-gradient(90deg,var(--primary-blue),var(--accent-cyan));
    transform:scaleX(0);
    transition:var(--transition)
}
 .index .solution-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 50px rgba(0,102,204,.15)
}
 .index .solution-card:hover::before{
    transform:scaleX(1)
}
 .index .solution-icon{
    width:70px;
    height:70px;
    background:linear-gradient(135deg,rgba(0,102,204,.1),rgba(0,191,216,.1));
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:25px
}
 .index .solution-icon i{
    font-size:30px;
    color:var(--primary-blue)
}
 .index .solution-card h3{
    font-family:var(--font-heading);
    font-size:19px;
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:15px
}
 .index .solution-card p{
    font-size:14px;
    color:var(--medium-gray);
    margin-bottom:20px
}
 .index .solution-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--primary-blue);
    font-weight:600;
    font-size:14px;
    transition:var(--transition)
}
 .index .solution-link:hover{
    color:var(--accent-orange);
    gap:12px
}
 .index .industries{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    background:0 0;
    color:var(--dark-gray);
    padding:var(--section-padding);
    padding-bottom:0
}
 .index .industries .container{
    position:relative;
    z-index:1
}
 .index .industries .full-landing-image{
    background-image:url("../images/applications-section-bg.webp");
    opacity:.42
}
 .index .industries .full-landing-image::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,.86) 0,rgba(247,250,252,.78) 45%,rgba(255,255,255,.82) 100%);
    z-index:1;
    display:block
}
 .index .industries .section-tag{
    background:rgba(29,112,197,.1);
    color:var(--primary-blue)
}
 .index .industries .section-title{
    color:var(--primary-dark)
}
 .index .industries .section-subtitle{
    color:var(--medium-gray)
}
 .index .applications-swiper-wrapper{
    max-width:var(--container-width);
    margin:0 auto
}
 .index .applications-swiper{
    overflow:visible
}
 .index .applications-swiper .swiper-wrapper{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:12px
}
 .index .applications-swiper .swiper-slide{
    height:auto;
    width:auto!important;
    min-width:0
}
 .index .applications-swiper .showcase-card{
    height:100%
}
 .index .applications-swiper .swiper-slide:first-child{
    grid-column:1;
    grid-row:1
}
 .index .applications-swiper .swiper-slide:nth-child(2){
    grid-column:1;
    grid-row:2
}
 .index .applications-swiper .swiper-slide:nth-child(3){
    grid-column:2;
    grid-row:1
}
 .index .applications-swiper .swiper-slide:nth-child(4){
    grid-column:2;
    grid-row:2
}
 .index .applications-swiper .swiper-slide:nth-child(5){
    grid-column:3;
    grid-row:1/span 2
}
 .index .applications-pagination{
    display:none!important
}
 .index .showcase-card{
    display:block;
    position:relative;
    border-radius:12px;
    overflow:hidden;
    flex:1;
    min-height:180px;
    cursor:pointer;
    color:inherit;
    text-decoration:none;
    transition:transform .4s cubic-bezier(.4, 0, .2, 1),box-shadow .4s cubic-bezier(.4, 0, .2, 1);
    border:1px solid rgba(0,0,0,.08)
}
 .index .showcase-card:hover{
    transform:translateY(-4px)
}
 .index .card-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .5s ease
}
 .index .showcase-card:hover .card-image{
    transform:scale(1.05)
}
 .index .card-overlay{
    position:absolute;
    bottom:-60px;
    left:0;
    right:0;
    padding:10px 15px 16px 15px;
    background:linear-gradient(to top,rgba(0,0,0,.75) 0,rgba(0,0,0,.4) 40%,rgba(0,0,0,0) 100%);
    transition:all .3s linear
}
 .index .showcase-card:hover .card-overlay{
    bottom:0
}
 .index .card-title{
    font-family:var(--font-heading);
    font-size:18px;
    font-weight:600;
    color:var(--white);
    margin:0;
    letter-spacing:.3px;
    line-height:1.3
}
 .index .card-desc{
    font-size:14px;
    color:rgba(255,255,255,.85);
    margin-top:6px;
    font-weight:400;
    line-height:1.4;
    opacity:0;
    transform:translateY(8px);
    transition:opacity .25s ease,transform .25s ease
}
 .index .card-link{
    display:inline-flex;
    align-items:center;
    gap:4px;
    font-size:13px;
    color:var(--white);
    text-decoration:none;
    margin-top:10px;
    font-weight:600;
    padding:6px 14px;
    background:var(--primary-blue);
    border:none;
    border-radius:4px;
    opacity:0;
    transform:translateY(8px);
    transition:opacity .25s ease,transform .25s ease,background .3s ease,gap .3s ease,box-shadow .3s ease
}
 .index .card-link:hover{
    gap:8px;
    background:var(--accent-orange);
    box-shadow:0 4px 12px rgba(0,0,0,.2)
}
 .index .card-link svg{
    width:14px;
    height:14px;
    display:block;
    flex:0 0 auto
}
 .index .card-link svg path{
    fill:currentColor
}
 .index .showcase-card:hover .card-desc{
    opacity:1;
    transform:translateY(0)
}
 .index .showcase-card:hover .card-link{
    opacity:1;
    transform:translateY(0);
    transition-delay:0.1s
}
 .index .card-badge{
    position:absolute;
    top:12px;
    left:12px;
    background:rgba(255,255,255,.95);
    color:var(--primary-dark);
    padding:4px 10px;
    border-radius:4px;
    font-size:10px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.5px
}
 .index .application-field-card,.index .field-content{
    display:none
}
 .index .products{
    background:var(--off-white)
}
 .index .products-swiper-wrapper{
    position:relative
}
 .index .products-swiper .swiper-slide{
    height:auto
}
 .index .products-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:50px;
    height:50px;
    background:var(--white);
    border:1px solid var(--light-gray);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:10;
    transition:var(--transition);
    color:var(--primary-blue);
    font-size:18px
}
 .index .products-swiper-wrapper{
    display:block;
    position:relative
}
 .index .products-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    width:auto;
    position:relative;
    bottom:auto
}
 .index .products-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:rgba(29,112,197,.3);
    border-radius:50%;
    opacity:1;
    transition:all .3s ease;
    margin:0
}
 .index .products-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)
}
 .index .products-pagination .swiper-pagination-bullet-active{
    background:var(--primary-blue);
    width:36px;
    border-radius:6px
}
 .index .product-card{
    background:var(--white);
    border-radius:12px;
    overflow:hidden;
    transition:var(--transition);
    display:flex;
    flex-direction:column;
    cursor:pointer
}
 .index .product-img-box{
    position:relative;
    width:100%;
    aspect-ratio:1/1;
    overflow:hidden;
    background:#fff
}
 .index .product-img-box a{
    display:block;
    width:100%;
    height:100%
}
 .index .product-image{
    width:100%;
    height:100%;
    aspect-ratio:1/1;
    object-fit:contain;
    display:block;
    transition:transform .4s ease
}
 .index .product-card:hover .product-image{
    transform:scale(1.05)
}
 .index .product-placeholder{
    width:100%;
    aspect-ratio:16/10;
    display:flex;
    align-items:center;
    justify-content:center
}
 .index .quote-button{
    position:absolute;
    top:15px;
    right:15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    padding:8px 14px;
    background:rgba(255,255,255,.95);
    border:none;
    border-radius:8px;
    cursor:pointer;
    transition:all .3s ease;
    font-family:var(--font-heading);
    font-size:13px;
    font-weight:600;
    color:var(--primary-blue);
    box-shadow:0 4px 15px rgba(0,0,0,.15);
    white-space:nowrap;
    z-index:10
}
 .index .quote-button:hover{
    background:var(--primary-blue);
    color:var(--white);
    transform:translateY(-2px)
}
 .index .product-placeholder i{
    font-size:64px;
    color:rgba(255,255,255,.9)
}
 .index .product-text-box{
    padding:20px 24px 24px;
    flex:1;
    display:flex;
    flex-direction:column;
    background:#74bffd26;
    border-top:1px solid #dce7f0
}
 .index .product-title{
    font-family:var(--font-heading);
    font-size:18px;
    font-weight:600;
    color:var(--primary-dark);
    margin:0 0 8px 0;
    line-height:1.3;
    height:calc(18px * 1.3 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .index .product-desc{
    font-size:14px;
    color:var(--text-gray);
    margin:0 0 12px 0;
    line-height:1.6;
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .index .product-code{
    font-size:13px;
    font-weight:500;
    color:var(--secondary-teal);
    background:var(--off-white);
    padding:4px 10px;
    border-radius:4px;
    display:inline-block;
    margin-top:auto
}
 .index .product-content p{
    font-size:14px;
    color:var(--medium-gray);
    margin:0;
    line-height:1.5;
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .index .btn-outline{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:var(--primary-blue);
    font-weight:600;
    font-size:14px;
    padding:10px 20px;
    border:2px solid var(--primary-blue);
    border-radius:5px;
    transition:var(--transition);
    background:0 0;
    cursor:pointer
}
 .index .btn-outline:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .index .btn-outline-blue{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:var(--primary-blue);
    font-weight:600;
    font-size:14px;
    padding:10px 20px;
    border:1px solid var(--primary-blue);
    border-radius:5px;
    transition:var(--transition);
    background:0 0;
    cursor:pointer
}
 .index .btn-outline-blue:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .index .systems-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:30px
}
 .index .system-card{
    background:var(--white);
    border-radius:12px;
    overflow:hidden;
    display:grid;
    grid-template-columns:1fr 1.3fr;
    transition:var(--transition);
    box-shadow:0 5px 30px rgba(0,0,0,.05)
}
 .index .system-card:hover{
    transform:translateY(-5px);
    box-shadow:0 15px 50px rgba(0,102,204,.15)
}
 .index .system-icon-area{
    background:linear-gradient(135deg,var(--primary-blue),var(--secondary-teal));
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px
}
 .index .system-icon-area i{
    font-size:64px;
    color:rgba(255,255,255,.9)
}
 .index .system-content{
    padding:35px;
    display:flex;
    flex-direction:column;
    justify-content:center
}
 .index .system-content h3{
    font-family:var(--font-heading);
    font-size:19px;
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:12px
}
 .index .system-content p{
    font-size:14px;
    color:var(--medium-gray);
    margin-bottom:15px
}
 .index .system-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px
}
 .index .system-tag{
    background:rgba(0,102,204,.08);
    color:var(--primary-blue);
    padding:5px 12px;
    border-radius:20px;
    font-size:11px;
    font-weight:500
}
 .index .atoz-service{
    background:linear-gradient(135deg,#0a1628 0,#1a3a52 50%,#0a1628 100%);
    position:relative;
    overflow:hidden;
    padding:var(--section-padding)
}
 .index .atoz-bg-image{
    position:absolute;
    inset:0;
    opacity:.15
}
 .index .atoz-service>.container{
    position:relative;
    z-index:1
}
 .index .atoz-service .section-tag{
    background:rgba(255,102,0,.2);
    color:var(--accent-orange)
}
 .index .atoz-service .section-subtitle,.index .atoz-service .section-title{
    color:var(--white)
}
 .index .atoz-services{
    margin-top:60px;
    position:relative
}
 .index .atoz-services .swiper-wrapper{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0
}
 .index .atoz-services .swiper-slide{
    height:auto!important;
    border-right:1px solid rgba(255,255,255,.1)
}
 .index .atoz-services .swiper-slide:nth-child(4n){
    border-right:none
}
 .index .atoz-services .swiper-slide:nth-child(n+5){
    border-top:1px solid rgba(255,255,255,.1)
}
 .index .atoz-service-block{
    position:relative;
    padding:50px 30px;
    text-align:center;
    background:rgba(255,255,255,.03);
    transition:all .4s ease;
    overflow:hidden;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center
}
 .index .atoz-service-block::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(0,102,204,.6) 0,rgba(255,102,0,.5) 100%);
    opacity:0;
    transition:opacity .4s ease
}
 .index .atoz-service-block:hover{
    background:rgba(255,255,255,.08);
    transform:scale(1.02)
}
 .index .atoz-service-block:hover::before{
    opacity:1
}
 .index .atoz-service-block>*{
    position:relative;
    z-index:1
}
 .index .atoz-block-number{
    font-family:var(--font-heading);
    font-size:72px;
    font-weight:900;
    color:rgba(255,255,255,.2);
    line-height:1;
    margin-bottom:10px;
    transition:all .4s ease
}
 .index .atoz-service-block:hover .atoz-block-number{
    color:var(--accent-orange);
    transform:scale(1.15)
}
 .index .atoz-block-content .atoz-block-icon,.index .atoz-block-content i{
    font-size:42px;
    color:var(--accent-orange);
    margin-bottom:20px;
    display:inline-block;
    transition:all .4s ease
}
 .index .atoz-block-content .atoz-block-icon{
    width:42px;
    height:42px;
    object-fit:contain
}
 .index .atoz-service-block:hover .atoz-block-content .atoz-block-icon,.index .atoz-service-block:hover .atoz-block-content i{
    transform:translateY(-8px) scale(1.1);
    color:#fff;
    filter:drop-shadow(0 0 10px rgba(255,102,0,.5))
}
 .index .atoz-block-content h3{
    font-family:var(--font-heading);
    font-size:18px;
    font-weight:600;
    color:var(--white);
    margin:0 0 12px 0;
    transition:all .3s ease
}
 .index .atoz-service-block:hover .atoz-block-content h3{
    transform:translateY(-2px)
}
 .index .atoz-block-content p{
    font-size:13px;
    color:rgba(255,255,255,.7);
    margin:0;
    line-height:1.6;
    transition:all .3s ease
}
 .index .atoz-service-block:hover .atoz-block-content p{
    color:rgba(255,255,255,.95)
}
 .index .atoz-cta{
    text-align:center;
    margin-top:60px
}
 .index .atoz-swiper-pagination{
    display:none
}
 .index .advantage-services-grid{
    margin-top:40px
}
 .index .advantage-services-grid .swiper-wrapper{
    display:grid;
    grid-template-columns:repeat(3,1fr)
}
 .index .advantage-services-grid .swiper-slide{
    height:auto!important
}
 .index .advantage-service-card{
    background:var(--white);
    border-radius:8px;
    overflow:hidden;
    box-shadow:0 4px 20px rgba(0,0,0,.06);
    transition:all .3s ease;
    height:100%
}
 .index .advantage-service-card:hover{
    transform:translateY(-5px)
}
 .index .service-image{
    position:relative;
    height:265px;
    overflow:hidden;
    background:linear-gradient(135deg,#1a3a52,#2d5a7b)
}
 .index .service-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.85
}
 .index .service-icon{
    position:absolute;
    bottom:-22px;
    left:20px;
    width:50px;
    height:50px;
    background:var(--accent-orange);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 4px 15px rgba(0,0,0,.15)
}
 .index .service-icon i{
    font-size:20px;
    color:var(--white)
}
 .index .advantage-service-card .advantage-service-icon-img{
    width:24px;
    height:24px;
    object-fit:contain;
    display:block
}
 .index .service-content{
    padding:32px 20px 20px
}
 .index .service-content h3{
    font-family:var(--font-heading);
    font-size:18px;
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:10px
}
 .index .service-content p{
    font-size:15px;
    color:var(--medium-gray);
    line-height:1.5
}
 .index .advantage-swiper-pagination{
    display:none
}
 .index .video-section{
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,rgba(22,34,48,.84) 0,rgba(22,34,48,.72) 100%);
    padding:80px 0
}
 .index .video-section-bg{
    position:absolute;
    inset:0
}
 .index .video-section-bg::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(22,34,48,.9) 0,rgba(22,34,48,.9) 100%)
}
 .index .video-section .container{
    position:relative;
    z-index:1
}
 .index .video-section .section-subtitle{
    color:var(--off-white)
}
 .index .video-section-title{
    color:var(--white)
}
 .index .video-wrapper{
    position:relative;
    max-width:1000px;
    margin:0 auto;
    aspect-ratio:16/9;
    border-radius:12px;
    overflow:hidden;
    cursor:pointer
}
 .index .video-cover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:var(--transition)
}
 .index .video-cover-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover
}
 .index .video-wrapper:hover .video-cover{
    transform:scale(1.02)
}
 .index .video-cover::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.2);
    transition:var(--transition)
}
 .index .video-wrapper:hover .video-cover::before{
    background:rgba(0,0,0,.3)
}
 .index .play-button{
    position:relative;
    z-index:2;
    width:90px;
    height:90px;
    background:rgba(255,255,255,.95);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:var(--transition);
    box-shadow:0 10px 40px rgba(0,0,0,.3)
}
 .index .play-button::before{
    content:'';
    width:0;
    height:0;
    border-left:30px solid var(--primary-blue);
    border-top:18px solid transparent;
    border-bottom:18px solid transparent;
    margin-left:6px;
    transition:var(--transition)
}
 .index .video-wrapper:hover .play-button{
    transform:scale(1.1);
    background:var(--primary-blue)
}
 .index .video-wrapper:hover .play-button::before{
    border-left-color:#fff
}
 .index .video-wrapper iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border:none
}
 .index .video-modal{
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,.9);
    z-index:9999;
    align-items:center;
    justify-content:center;
    padding:20px
}
 .index .video-modal.active{
    display:flex
}
 .index .video-modal-content{
    position:relative;
    width:100%;
    max-width:1000px;
    aspect-ratio:16/9
}
 .index .video-modal-content iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border-radius:12px
}
 .index .video-modal-close{
    position:absolute;
    top:-50px;
    right:0;
    width:44px;
    height:44px;
    background:rgba(255,255,255,.1);
    border:none;
    border-radius:50%;
    color:#fff;
    font-size:24px;
    cursor:pointer;
    transition:var(--transition);
    display:flex;
    align-items:center;
    justify-content:center
}
 .index .video-modal-close:hover{
    background:var(--primary-blue)
}
 .index .video-caption{
    text-align:center;
    margin-top:30px
}
 .index .video-caption h3{
    font-family:var(--font-heading);
    font-size:22px;
    font-weight:600;
    color:var(--white);
    margin-bottom:10px
}
 .index .video-caption p{
    color:rgba(255,255,255,.7)
}
 .index .service{
    background:var(--off-white)
}
 .index .service-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:30px
}
 .index .service-card{
    text-align:center;
    padding:40px 25px;
    background:var(--white);
    border-radius:12px;
    transition:var(--transition)
}
 .index .service-card:hover{
    transform:translateY(-8px);
    box-shadow:0 15px 40px rgba(0,102,204,.12)
}
 .index .service-icon{
    width:80px;
    height:80px;
    margin:0 auto 25px;
    background:linear-gradient(135deg,var(--primary-blue),var(--secondary-teal));
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center
}
 .index .service-icon i{
    font-size:32px;
    color:var(--white)
}
 .index .service-card h3{
    font-family:var(--font-heading);
    font-size:17px;
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:12px
}
 .index .service-card p{
    font-size:13px;
    color:var(--medium-gray)
}
 .index .blog{
    position:relative;
    overflow:hidden;
    isolation:isolate;
    background:linear-gradient(135deg,rgba(255,255,255,.92) 0,rgba(255,255,255,.88) 100%)
}
 .index .blog .container{
    position:relative;
    z-index:1
}
 .index .blog .full-landing-image{
    background-image:url("../images/blog-section-bg.webp")
}
 .index .blog .full-landing-image::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(255,255,255,.92) 0,rgba(255,255,255,.88) 100%);
    z-index:1;
    display:block
}
 .index .blog-swiper-wrapper{
    position:relative;
    display:block
}
 .index .blog-swiper{
    overflow:hidden
}
 .index .blog-swiper .swiper-slide{
    height:auto
}
 .index .blog-card{
    display:block;
    background:var(--white);
    border-radius:12px;
    overflow:hidden;
    border:1px solid var(--light-gray);
    transition:var(--transition);
    height:100%;
    color:inherit;
    text-decoration:none
}
 .index .blog-card:hover{
    transform:translateY(-8px)
}
 .index .blog-image{
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    min-height:320px
}
 .index .blog-content{
    padding:25px
}
 .index .blog-date{
    font-size:14px;
    color:var(--medium-gray);
    margin-bottom:10px
}
 .index .blog-content h3{
    font-family:var(--font-heading);
    font-size:16px;
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:10px;
    line-height:1.4;
    height:calc(16px * 1.4 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .index .blog-content p{
    font-size:14px;
    color:var(--medium-gray);
    margin-bottom:20px;
    line-height:1.6;
    height:calc(14px * 1.6 * 3);
    display:-webkit-box;
    -webkit-line-clamp:3;
    line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .index .blog-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--primary-blue);
    font-weight:600;
    font-size:13px;
    transition:var(--transition)
}
 .index .blog-link:hover{
    color:var(--accent-orange);
    gap:12px
}
 .index .blog-swiper-wrapper{
    position:relative
}
 .index .blog-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    background:var(--white);
    border:none;
    border-radius:50%;
    box-shadow:0 4px 15px rgba(0,0,0,.1);
    color:var(--primary-blue);
    font-size:18px;
    cursor:pointer;
    z-index:10;
    transition:var(--transition);
    display:flex;
    align-items:center;
    justify-content:center
}
 .index .blog-nav:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .index .blog-nav.prev{
    left:-60px
}
 .index .blog-nav.next{
    right:-60px
}
 .index .blog-pagination{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:12px!important;
    width:auto!important;
    margin:40px auto 0!important;
    position:relative!important;
    bottom:auto!important
}
 .index .blog-pagination .swiper-pagination-bullet{
    width:12px!important;
    height:12px!important;
    background:rgba(29,112,197,.3)!important;
    border-radius:50%!important;
    opacity:1!important;
    transition:all .3s ease;
    margin:0!important
}
 .index .blog-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)!important
}
 .index .blog-pagination .swiper-pagination-bullet-active{
    background:var(--primary-blue)!important;
    width:36px!important;
    border-radius:6px!important
}
 .index .project-showcase{
    position:relative;
    background:var(--off-white);
    overflow:hidden
}
 .index .project-showcase-bg{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    overflow:hidden
}
 .index .project-showcase-bg img{
    width:100%;
    height:100%;
    object-fit:cover;
    filter:blur(3px);
    transform:scale(1.05)
}
 .index .project-showcase-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(180deg,rgba(245,248,251,.92) 0,rgba(255,255,255,.88) 50%,rgba(245,248,251,.92) 100%)
}
 .index .project-showcase>.container{
    position:relative;
    z-index:2
}
 .index .project-showcase .section-header{
    margin-bottom:50px
}
 .index .project-showcase .section-tag{
    background:rgba(29,112,197,.1);
    color:var(--primary-blue)
}
 .index .project-showcase .section-title{
    color:var(--primary-dark)
}
 .index .project-showcase .section-subtitle{
    color:var(--text-gray)
}
 .index .project-item{
    aspect-ratio:4/3;
    border-radius:12px;
    overflow:hidden;
    background:var(--white);
    transition:var(--transition)
}
 .index .project-item:hover{
    transform:translateY(-8px)
}
 .index .project-image{
    position:relative;
    width:100%;
    height:100%;
    overflow:hidden
}
 .index .project-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .6s ease
}
 .index .project-item:hover .project-image img{
    transform:scale(1.1)
}
 .index .project-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(135deg,rgba(29,112,197,.1) 0,rgba(43,160,163,.05) 100%);
    opacity:0;
    transition:var(--transition)
}
 .index .project-item:hover .project-overlay{
    opacity:1
}
 .index .project-cta{
    text-align:center;
    max-width:1000px;
    margin:50px auto 0
}
 .index .project-cta h2{
    font-family:var(--font-heading);
    font-size:32px;
    font-weight:600;
    color:var(--primary-dark);
    margin-bottom:20px
}
 .index .project-cta p{
    font-size:16px;
    color:var(--medium-gray);
    line-height:1.7;
    margin-bottom:30px
}
 .index .project-cta-buttons{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:20px;
    flex-wrap:wrap
}
 .index .project-cta .btn-outline-blue,.index .project-cta .btn-primary{
    padding:10px 20px;
    font-size:16px
}
 .index .project-gallery{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin-bottom:50px
}
 .index .project-swiper-mobile{
    display:none
}
 .index .project-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    width:auto;
    margin:40px auto 0
}
 .index .project-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:rgba(29,112,197,.3);
    opacity:1;
    border-radius:50%;
    transition:var(--transition);
    margin:0
}
 .index .project-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)
}
 .index .project-pagination .swiper-pagination-bullet-active{
    width:36px;
    border-radius:6px;
    background:var(--primary-blue)
}
 .index .exhibitions{
    background:var(--white);
    padding-bottom:0
}
 .index .exhibitions-swiper{
    position:relative
}
 .index .exhibition-item{
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:50px;
    align-items:center;
    padding:40px;
    background:var(--off-white);
    border-radius:8px
}
 .index .exhibition-image{
    aspect-ratio:16/9;
    border-radius:8px;
    overflow:hidden;
    background:var(--light-gray)
}
 .index .exhibition-image img{
    width:100%;
    height:100%;
    object-fit:cover
}
 .index .exhibition-image-placeholder{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    background:linear-gradient(135deg,var(--light-gray) 0,#e0e6ed 100%);
    color:var(--text-gray)
}
 .index .exhibition-image-placeholder i{
    font-size:48px;
    opacity:.4
}
 .index .exhibition-image-placeholder span{
    font-size:14px;
    font-weight:500;
    opacity:.6;
    text-transform:uppercase;
    letter-spacing:1px
}
 .index .exhibition-info{
    display:flex;
    flex-direction:column;
    gap:20px
}
 .index .exhibition-year{
    display:inline-block;
    font-size:13px;
    font-weight:600;
    color:var(--text-gray);
    text-transform:uppercase;
    letter-spacing:2px;
    padding:6px 14px;
    background:rgba(29,112,197,.08);
    border-radius:4px;
    width:fit-content
}
 .index .exhibition-title{
    font-family:var(--font-heading);
    font-size:24px;
    font-weight:600;
    color:var(--primary-dark);
    line-height:1.3
}
 .index .exhibition-details{
    display:flex;
    flex-direction:column;
    gap:14px
}
 .index .exhibition-detail{
    display:flex;
    align-items:center;
    gap:12px;
    font-size:16px;
    color:var(--medium-gray)
}
 .index .exhibition-detail i{
    width:18px;
    text-align:center;
    color:var(--primary-blue);
    font-size:14px
}
 .index .exhibition-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--white);
    border:none;
    border-radius:50%;
    box-shadow:0 4px 15px rgba(0,0,0,.1);
    color:var(--primary-blue);
    font-size:18px;
    cursor:pointer;
    transition:var(--transition);
    z-index:10
}
 .index .exhibition-nav:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .index .exhibition-nav.prev{
    left:-60px
}
 .index .exhibition-nav.next{
    right:-60px
}
 .index .exhibition-pagination{
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:12px!important;
    width:auto!important;
    margin:40px auto 0!important;
    position:relative!important;
    bottom:auto!important
}
 .index .exhibition-pagination .swiper-pagination-bullet{
    width:12px!important;
    height:12px!important;
    background:rgba(29,112,197,.3)!important;
    border-radius:50%!important;
    opacity:1!important;
    transition:all .3s ease;
    margin:0!important
}
 .index .exhibition-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)!important
}
 .index .exhibition-pagination .swiper-pagination-bullet-active{
    background:var(--primary-blue)!important;
    width:36px!important;
    border-radius:6px!important
}
 .index .inquiry-section{
    background:linear-gradient(135deg,var(--dark-gray) 0,#0d1a2a 100%);
    background-attachment:fixed;
    position:relative;
    overflow:hidden
}
 .index .inquiry-bg-image{
    position:absolute;
    inset:0
}
 .index .inquiry-section::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:linear-gradient(135deg,rgba(0,102,204,.92),rgba(0,153,168,.9));
    z-index:1
}
 .index .inquiry-section .section-tag{
    background:rgba(255,255,255,.15);
    color:var(--white)
}
 .index .inquiry-section .section-subtitle{
    max-width:100%
}
 .index .inquiry-container{
    max-width:1400px;
    margin:0 auto;
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 40%;
    gap:60px;
    align-items:start
}
 .index .inquiry-form-wrapper{
    background:var(--white);
    border-radius:8px;
    padding:50px
}
 .index .inquiry-form-header{
    text-align:left;
    margin-bottom:35px
}
 .index .inquiry-form-title{
    color:var(--primary-dark);
    font-size:32px;
    margin-bottom:12px
}
 .index .inquiry-form-subtitle{
    color:var(--text-gray)
}
 .index .inquiry-form{
    background:0 0;
    padding:0;
    box-shadow:none
}
 .index .inquiry-info{
    color:var(--white)
}
 .index .inquiry-info h3{
    font-family:var(--font-heading);
    font-size:24px;
    font-weight:600;
    margin-bottom:25px
}
 .index .inquiry-info>p{
    color:rgba(255,255,255,.8);
    margin-bottom:30px
}
 .index .contact-info-list{
    list-style:none
}
 .index .contact-info-list{
    text-align:left
}
 .index .contact-info-item{
    align-items:unset
}
 .index .contact-info-item i{
    color:#fff;
    font-size:20px;
    margin-top:4px
}
 .index .contact-info-item div{
    color:rgba(255,255,255,.9)
}
 .index .contact-info-item strong{
    color:var(--white);
    font-weight:600
}
 .index .inquiry-info .btn-primary{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:var(--white);
    color:var(--primary-blue);
    padding:14px 28px;
    border-radius:5px;
    font-weight:600;
    font-size:15px;
    transition:var(--transition)
}
 .index .inquiry-whatsapp-cta{
    margin-top:35px;
    padding-top:30px;
    border-top:1px solid rgba(255,255,255,.2)
}
 .index .inquiry-whatsapp-btn{
    display:inline-flex;
    align-items:center;
    gap:10px
}
 .index .inquiry-info .btn-primary:hover{
    background:var(--accent-cyan);
    color:var(--white);
    transform:translateY(-2px)
}
 .index .form-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px
}
 .index .form-group.full{
    grid-column:1/-1
}
 .index .form-label{
    display:block;
    font-weight:600;
    font-size:14px;
    color:var(--primary-dark);
    margin-bottom:8px
}
 .index .form-label span{
    color:var(--accent-orange)
}
 .index .form-input,.index .form-select,.index .form-textarea{
    width:100%;
    padding:14px 16px;
    border:2px solid var(--light-gray);
    border-radius:8px;
    font-size:15px;
    font-family:var(--font-body);
    color:var(--dark-gray);
    transition:var(--transition)
}
 .index .form-input:focus,.index .form-select:focus,.index .form-textarea:focus{
    outline:0;
    border-color:var(--primary-blue);
    box-shadow:0 0 0 4px rgba(0,102,204,.1)
}
 .index .form-textarea{
    min-height:130px;
    resize:vertical
}
 .index .form-submit{
    width:100%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    background:var(--primary-blue);
    color:var(--white);
    padding:18px 40px;
    border-radius:5px;
    font-weight:600;
    font-size:16px;
    transition:var(--transition)
}
 .index .form-submit:hover{
    background:var(--primary-dark);
    transform:translateY(-2px)
}
 .index .certificates{
    background:var(--off-white)
}
 .index .certificates-swiper-wrapper{
    position:relative
}
 .index .certificates-swiper{
    padding:10px 0 30px
}
 .index .cert-item{
    background:var(--white);
    border-radius:10px;
    text-align:center;
    transition:var(--transition);
    height:auto
}
 .index .cert-item:hover{
    transform:translateY(-5px);
    box-shadow:0 10px 30px rgba(0,102,204,.15)
}
 .index .cert-item img{
    width:100%;
    height:auto;
    object-fit:contain;
    margin:0 auto
}
 .index .cert-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    background:var(--white);
    border:none;
    border-radius:50%;
    box-shadow:0 4px 15px rgba(0,0,0,.1);
    color:var(--primary-blue);
    font-size:18px;
    cursor:pointer;
    z-index:10;
    transition:var(--transition);
    display:flex;
    align-items:center;
    justify-content:center
}
 .index .cert-nav:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .index .cert-nav.prev{
    left:-70px
}
 .index .cert-nav.next{
    right:-70px
}
 .index .certificates-pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    width:auto;
    margin:40px auto 0;
    position:relative;
    bottom:auto
}
 .index .certificates-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:rgba(29,112,197,.3);
    border-radius:50%;
    opacity:1;
    transition:all .3s ease;
    margin:0
}
 .index .certificates-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)
}
 .index .certificates-pagination .swiper-pagination-bullet-active{
    background:var(--primary-blue);
    width:36px;
    border-radius:6px
}
 .footer{
    background:#0f1823;
    padding:80px 0 30px
}
 .footer-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1.5fr;
    gap:50px;
    margin-bottom:50px
}
 .footer-about p{
    color:rgba(255,255,255,.7);
    font-size:16px;
    line-height:1.5;
    margin-bottom:25px
}
 .footer-social{
    display:flex;
    gap:15px
}
 .social-link{
    width:40px;
    height:40px;
    background:rgba(255,255,255,.1);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--white);
    transition:var(--transition)
}
 .social-link:hover{
    background:var(--primary-blue)
}
 .footer-title{
    font-family:var(--font-heading);
    font-size:20px;
    font-weight:600;
    color:var(--white);
    margin-bottom:25px
}
 .footer-links{
    list-style:none
}
 .footer-links li{
    margin-bottom:12px
}
 .footer-links a{
    color:rgba(255,255,255,.7);
    font-size:16px;
    transition:var(--transition)
}
 .footer-links a:hover{
    color:var(--primary-blue);
    padding-left:5px
}
 .footer-contact-item{
    display:flex;
    gap:15px;
    margin-bottom:20px
}
 .footer-contact-item i{
    color:#fff;
    font-size:18px;
    margin-top:3px
}
 .footer-contact-item i.fa-whatsapp{
    font-size:22px
}
 .footer-contact-item div{
    color:rgba(255,255,255,.7);
    font-size:16px
}
 .footer-contact-item a{
    color:inherit
}
 .social-link img{
    max-width:18px;
    max-height:18px;
    object-fit:contain;
    display:block
}
 .footer-bottom{
    padding-top:30px;
    border-top:1px solid rgba(255,255,255,.1);
    display:flex;
    justify-content:space-between;
    align-items:center
}
 .footer-bottom p{
    color:rgba(255,255,255,.5);
    font-size:16px
}
 .footer-bottom-links{
    display:flex;
    gap:25px
}
 .footer-bottom-links a{
    color:rgba(255,255,255,.5);
    font-size:16px;
    transition:var(--transition)
}
 .footer-bottom-links a:hover{
    color:var(--primary-blue)
}
 .index .product-category-module{
    position:relative;
    overflow:hidden;
    background:var(--white)
}
 @keyframes categoryDecorFloat{
    0%,100%{
        transform:translate3d(0,0,0)
    }
     50%{
        transform:translate3d(0,-24px,0) scale(1.05)
    }
}
 @keyframes categoryDecorBreathe{
    0%,100%{
        transform:translate3d(0,0,0) scale(1);
        opacity:.18
    }
     50%{
        transform:translate3d(0,16px,0) scale(1.09);
        opacity:.34
    }
}
 .index .product-category-module::after,.index .product-category-module::before{
    content:none
}
 .index .product-category-decor{
    position:absolute;
    z-index:0;
    pointer-events:none;
    opacity:.18
}
 .index .product-category-decor-01{
    top:32px;
    left:-36px;
    width:320px;
    height:320px;
    animation:categoryDecorFloat 5.8s ease-in-out infinite
}
 .index .product-category-decor-02{
    right:-48px;
    bottom:20px;
    width:340px;
    height:340px;
    animation:categoryDecorBreathe 6.2s ease-in-out infinite
}
 .index .product-category-module .container{
    position:relative;
    z-index:1
}
 .index .category-split-layout{
    display:flex;
    gap:30px;
    align-items:stretch
}
 .index .category-list{
    flex:0 0 280px;
    display:flex;
    flex-direction:column;
    gap:12px
}
 .index .category-item{
    display:flex;
    align-items:center;
    gap:16px;
    padding:20px;
    background:var(--off-white);
    border:2px solid transparent;
    border-radius:8px;
    cursor:pointer;
    transition:var(--transition)
}
 .index .category-item-number{
    font-family:var(--font-heading);
    font-size:20px;
    font-weight:600;
    color:var(--primary-blue);
    opacity:.6;
    transition:var(--transition);
    min-width:30px
}
 .index .category-item-info{
    display:flex;
    align-items:center;
    gap:12px;
    flex:1
}
 .index .category-item-info .category-item-icon,.index .category-item-info i{
    font-size:20px;
    color:var(--primary-blue);
    opacity:.6;
    filter:none;
    transition:var(--transition);
    width:24px;
    height:24px;
    object-fit:contain;
    text-align:center
}
 .index .category-item-name{
    font-size:14px;
    font-weight:600;
    color:var(--dark-gray);
    text-transform:uppercase;
    letter-spacing:.5px;
    transition:var(--transition)
}
 .index .category-item:hover{
    border-color:var(--primary-blue);
    background:var(--white);
    transform:translateX(5px)
}
 .index .category-item:hover .category-item-info .category-item-icon,.index .category-item:hover .category-item-info i,.index .category-item:hover .category-item-number{
    opacity:1
}
 .index .category-item:hover .category-item-icon{
    filter:brightness(0) invert(1)
}
 .index .category-item:hover .category-item-name{
    color:var(--primary-blue)
}
 .index .category-item.active{
    border-color:var(--primary-blue);
    background:var(--primary-blue)
}
 .index .category-item.active .category-item-info .category-item-icon,.index .category-item.active .category-item-info i,.index .category-item.active .category-item-name,.index .category-item.active .category-item-number{
    color:var(--white);
    opacity:1
}
 .index .category-item.active .category-item-icon{
    filter:brightness(0) invert(1)
}
 .index .category-display{
    flex:1;
    position:relative;
    min-height:500px;
    overflow:hidden
}
 .index .category-display .swiper-wrapper{
    position:relative;
    min-height:500px
}
 .index .category-display-slide{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    border-radius:8px;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    transition:opacity .5s ease,visibility .5s ease
}
 .index .category-display-slide.active{
    opacity:1;
    visibility:visible
}
 .index .category-pagination{
    display:none!important
}
 .index .category-display-image{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%
}
 .index .category-display-image img{
    width:100%;
    height:100%;
    object-fit:cover
}
 .index .category-display-overlay{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgb(0 0 0 / 50%)
}
 .index .category-display-content{
    position:absolute;
    left:40px;
    right:40px;
    bottom:40px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    text-align:left;
    color:var(--white);
    width:auto;
    max-width:100%;
    padding:0
}
 .index .category-display-icon{
    width:65px;
    height:65px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.2);
    backdrop-filter:blur(10px);
    border-radius:10px;
    font-size:24px;
    color:var(--white);
    margin:0 0 15px
}
 .index .category-display-icon-img{
    width:32px;
    height:32px;
    object-fit:contain;
    display:block;
    filter:brightness(0) invert(1)
}
 .index .category-display-title{
    font-family:var(--font-heading);
    font-size:30px;
    font-weight:700
}
 .index .category-display-desc{
    font-size:16px;
    line-height:1.7;
    opacity:.95;
    margin-bottom:20px
}
 .index .category-display-features{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
    margin-top:0;
    margin-bottom:28px;
    list-style:none
}
 .index .category-display-features li{
    display:flex;
    align-items:center;
    gap:6px;
    font-size:14px;
    font-weight:500;
    background:rgba(255,255,255,.15);
    padding:8px 16px;
    border-radius:30px;
    text-transform:capitalize
}
 .index .category-display-features li i{
    color:var(--primary-dark)
}
 .index .category-display-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:14px 32px;
    background:var(--white);
    color:var(--primary-blue);
    font-size:15px;
    font-weight:600;
    border-radius:50px;
    transition:var(--transition)
}
 .index .category-display-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 25px rgba(0,0,0,.2)
}
 .index .category-display-btn i{
    transition:transform .3s ease
}
 .index .category-display-btn:hover i{
    transform:translateX(4px)
}
 
 
 
 
 
 
 
 
 .list_products{
    background:linear-gradient(180deg,#eef5fb 0,#f7fbff 28%,#f4f8fc 100%)
}
 .list-products-page__hero{
    position:relative;
    padding:85.5px 0 0;
    background:url('images/list-products-hero-generated-1.webp') bottom;
    color:#fff;
    overflow:hidden
}
 .list-products-page__hero-overlay{
    position:absolute;
    inset:0;
    background:#000;
    opacity:.2
}
 .list-products-page__hero .container{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:450px;
    text-align:center
}
 .list-products-page__breadcrumb-wrap{
    position:relative;
    z-index:20;
    border-bottom:1px solid #d7e4f2
}
 .list-products-page__breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    width:fit-content;
    min-height:45px;
    margin:0;
    font-size:14px
}
 .list-products-page__breadcrumb a{
    text-decoration:none
}
 .list-products-page__breadcrumb strong{
    white-space:normal
}
 .list-products-page__eyebrow,.list-products-page__section-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 16px;
    border-radius:999px;
    font-size:12px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .list-products-page__title{
    margin:0;
    font-size:54px;
    line-height:1.12;
    color:#fff;
    font-weight:700
}
 .list-products-page__category-bar-wrap{
    position:relative;
    z-index:30;
    margin-top:0
}
 .list-products-page__category-bar{
    display:flex;
    align-items:center;
    gap:0;
    width:min(1400px,calc(100vw - 16px));
    max-width:calc(100vw - 16px);
    padding:12px 16px;
    margin-top:30px;
    overflow-x:auto;
    scrollbar-width:none;
    border-bottom:1px solid rgba(131,160,193,0);
    justify-content:flex-start;
    flex-wrap:nowrap
}
 .list-products-page__category-bar.is-floating{
    position:fixed;
    top:85.5px;
    left:50%;
    z-index:999;
    transform:translateX(-50%);
    background:rgba(255,255,255,.98);
    margin-top:0;
    border-color:rgba(131,160,193,.16)
}
 .list-products-page__category-pill{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:40px;
    padding:10px 24px;
    border:0;
    border-radius:999px;
    background:0 0;
    font-size:15px;
    font-weight:600;
    line-height:1;
    transition:all .3s ease;
    white-space:nowrap
}
 .list-products-page__category-pill:hover{
    color:var(--primary-blue);
    transform:translateY(-2px)
}
 .list-products-page__category-pill:not(:first-child)::before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:1px;
    height:18px;
    background:rgba(36,56,79,.18);
    transform:translateY(-50%)
}
 .list-products-page__editorial{
    padding:90px 0
}
 .list-products-page__catalog{
    padding-top:40px;
    padding-bottom:90px
}
 .list-products-page__editorial{
    background:#fff
}
 .list-products-page__catalog .container{
    position:relative;
    overflow:hidden
}
 .list-products-page__section-head{
    margin:0 auto 42px;
    text-align:center
}
 .list-products-page__section-head--left{
    margin-left:0;
    text-align:left
}
 .list-products-page__section-kicker{
    margin-bottom:16px;
    background:rgba(5,86,166,.08);
    color:#0556a6
}
 .list-products-page__section-head h2{
    margin:0 0 14px;
    font-size:28px;
    line-height:1.16;
    color:#0f172a
}
 .list-products-page__section-head p{
    margin:0;
    color:#5b6b7c;
    font-size:15px;
    line-height:1.8
}
 .list-products-page__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:20px;
    margin-top:8px
}
 .list_products .product-card{
    display:flex;
    flex-direction:column;
    height:100%;
    overflow:hidden;
    position:relative;
    border:1px solid rgba(221,232,243,.94);
    background:linear-gradient(180deg,#fff 0,#f7fbff 100%);
    border-radius:10px;
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
    cursor:pointer
}
 .list_products .product-card:hover{
    transform:translateY(-8px);
    border-color:rgba(125,176,224,.92)
}
 .list_products .product-img-box{
    position:relative;
    width:100%;
    aspect-ratio:1/1;
    overflow:hidden
}
 .list_products .product-img-box::after{
    content:'';
    position:absolute;
    inset:0;
    pointer-events:none
}
 .list_products .product-img-box a{
    display:block;
    width:100%;
    height:100%
}
 .list_products .product-image{
    width:100%;
    aspect-ratio:1/1;
    height:100%;
    object-fit:contain;
    display:block;
    transition:transform .4s ease
}
 .list_products .product-card:hover .product-image{
    transform:scale(1.05)
}
 .list_products .quote-button{
    position:absolute;
    top:18px;
    right:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-height:38px;
    padding:8px 14px;
    background:rgba(255,255,255,.92);
    border:none;
    border-radius:999px;
    cursor:pointer;
    transition:all .3s ease;
    font-family:var(--font-heading);
    font-size:13px;
    font-weight:600;
    color:var(--primary-blue);
    border:1px solid var(--primary-blue);
    white-space:nowrap;
    z-index:10;
    backdrop-filter:blur(10px)
}
 .list_products .quote-button:hover{
    background:var(--primary-blue);
    color:var(--white);
    transform:translateY(-2px)
}
 .list_products .product-text-box{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:20px;
    background:#fff;
    border-top:1px solid rgba(220,231,240,.92)
}
 .list_products .product-text-box>a{
    display:block;
    text-decoration:none
}
 .list_products .product-title{
    font-family:var(--font-heading);
    font-size:18px;
    font-weight:600;
    margin:0 0 10px 0;
    line-height:1.34;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    height:calc(18px * 1.34 * 2)
}
 .list_products .product-desc{
    font-size:16px;
    color:var(--text-gray);
    margin:0 0 20px 0;
    line-height:1.5;
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:calc(16px * 1.5 * 2)
}
 .list_products .product-code{
    font-size:14px;
    font-weight:500;
    border-radius:999px;
    display:inline-block
}
 .list-products-page__card-footer{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:auto;
    padding-top:16px;
    border-top:1px dashed rgba(183,202,221,.8)
}
 .list-products-page__price-tag{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    border-radius:999px;
    font-size:14px;
    font-weight:600;
    line-height:1.4;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8)
}
 .list-products-page__details-link,.list-products-page__page-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:5px;
    font-size:14px;
    font-weight:600;
    border:1px solid transparent;
    text-decoration:none;
    cursor:pointer
}
 .list-products-page__details-link{
    width:max-content;
    margin-top:15px;
    gap:8px;
    color:#0556a6
}
 .list-products-page__details-link i{
    font-size:12px;
    transition:transform .25s ease
}
 .list-products-page__pagination{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top:44px
}
 .list-products-page__pagination .inside-pagination{
    width:100%
}
 .list-products-page__pagination .inside-pagination ul{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    list-style:none;
    padding:0;
    margin:0
}
 .list-products-page__pagination .inside-pagination li{
    margin:0
}
 .list-products-page__pagination .inside-pagination a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:40px;
    min-height:40px;
    padding:6px 20px;
    border-radius:5px;
    border:1px solid #d7e4f2;
    color:#33506b;
    font-size:14px;
    font-weight:600;
    line-height:1;
    text-decoration:none;
    cursor:pointer
}
 .list-products-page__pagination .inside-pagination .next-page a,.list-products-page__pagination .inside-pagination .pre-page a{
    padding:6px 16px
}
 .list-products-page__pagination .inside-pagination li.active a{
    background:#0556a6;
    border-color:#0556a6;
    color:#fff
}
 .list-products-page__pagination .inside-pagination li.is-disabled a{
    background:linear-gradient(180deg,#f7fafc 0,#edf3f8 100%);
    border-color:#dbe5ef;
    color:#9aabbb;
    opacity:.72
}
 .list-products-page__empty{
    grid-column:1/-1;
    padding:56px 24px;
    border-radius:24px;
    text-align:center;
    background:linear-gradient(180deg,#fff 0,#f8fbff 100%);
    box-shadow:0 18px 50px rgba(15,23,42,.08);
    color:#5b6b7c
}
 .list-products-page__editorial-hero{
    margin-bottom:28px
}
 .list-products-page__editorial-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px
}
 .list-products-page__editorial-bottom{
    margin-top:28px
}
 .list-products-page__editorial-card--feature{
    display:block
}
 .list-products-page__editorial-badge{
    display:inline-flex;
    align-items:center;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(5,86,166,.08);
    color:#0556a6;
    font-size:12px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .list-products-page__editorial-card--feature h3{
    margin:18px 0 14px;
    font-size:24px;
    line-height:1.22;
    color:#0f172a
}
 .list-products-page__editorial-card--feature p{
    margin:0;
    color:#475569;
    line-height:1.9
}
 .list-products-page__editorial-richtext h4{
    margin:8px 0 0;
    font-size:20px;
    line-height:1.4;
    color:#0f172a
}
 .list-products-page__editorial-richtext ul{
    margin:0;
    padding-left:22px;
    color:#334155
}
 .list-products-page__editorial-richtext li+li{
    margin-top:10px
}
 .list-products-page__editorial-richtext-image{
    float:right;
    width:50%;
    margin-left:30px;
    display:block;
    object-fit:cover
}
 .list-products-page__editorial-stats{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    margin-top:28px
}
 .list-products-page__stat-card{
    padding:18px 16px;
    border-radius:18px;
    background:linear-gradient(180deg,#f8fbff 0,#eef5fd 100%);
    border:1px solid #deebf8
}
 .list-products-page__stat-card strong{
    display:block;
    margin-bottom:8px;
    color:#0556a6;
    font-size:24px;
    line-height:1.1
}
 .list-products-page__stat-card span{
    color:#5b6b7c;
    line-height:1.7;
    font-size:14px
}
 .list-products-page__editorial-card--image{
    min-height:340px
}
 .list-products-page__editorial-card--image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
 .list-products-page__editorial-card--content h3{
    margin:0 0 14px;
    font-size:22px;
    line-height:1.3;
    color:#0f172a
}
 .list-products-page__editorial-card--content p{
    margin:0;
    color:#5b6b7c;
    line-height:1.85
}
 .list-products-page__editorial-list{
    margin:20px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:12px
}
 .list-products-page__editorial-list li::before,.list-products-page__info-points div::before{
    content:'';
    position:absolute;
    left:0;
    top:11px;
    width:10px;
    height:10px;
    border-radius:50%;
    background:#0ea5e9;
    box-shadow:0 0 0 4px rgba(14,165,233,.12)
}
 .list-products-page__info-points{
    display:grid;
    gap:14px;
    margin-top:22px
}
 .list-products-page__info-points strong{
    display:block;
    margin-bottom:4px;
    color:#0f172a
}
 .list-products-page__timeline{
    display:grid;
    gap:16px;
    margin-top:22px
}
 .list-products-page__timeline-item strong{
    display:block;
    margin-bottom:6px;
    color:#0f172a
}
 .list-products-page__timeline-item span{
    color:#5b6b7c;
    line-height:1.8
}
 .list-products-page__capability-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:24px
}
 .list-products-page__capability-item strong{
    display:block;
    margin-bottom:8px;
    color:#0f172a
}
 .list-products-page__capability-item span{
    color:#5b6b7c;
    line-height:1.8
}
 .list-products-page__inquiry{
    margin-top:0
}
 .list-products-page__inquiry{
    position:relative;
    overflow:hidden;
    padding:92px 0;
    background:#253748
}
 .list-products-page__inquiry .inquiry-bg-image{
    position:absolute;
    inset:0
}
 .list-products-page__inquiry::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(26,40,54,.72);
    z-index:1
}
 .list-products-page__inquiry .inquiry-bg-image .section-bg-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    opacity:.26;
    filter:saturate(.8)
}
 .list-products-page__inquiry .inquiry-container{
    position:relative;
    z-index:2
}
 .list-products-page__inquiry-banner{
    max-width:1080px;
    margin:0 auto
}
 .list-products-page__inquiry .inquiry-form-wrapper.list-products-page__inquiry-banner-inner{
    background:0 0;
    border-radius:0;
    padding:0;
    box-shadow:none
}
 .list-products-page__inquiry .inquiry-form-header.list-products-page__inquiry-header{
    margin-bottom:50px;
    text-align:center
}
 .list-products-page__inquiry .inquiry-form-title{
    margin:0 0 14px;
    color:#fff;
    font-size:48px
}
 .list-products-page__inquiry .inquiry-form-subtitle{
    margin:0 auto;
    color:rgba(255,255,255,.9);
    line-height:1.9
}
 .list-products-page__inquiry .inquiry-form.list-products-page__inquiry-form{
    background:0 0
}
 .list-products-page__banner-grid{
    display:grid;
    gap:26px 34px
}
 .list-products-page__banner-grid--primary,.list-products-page__banner-grid--secondary{
    grid-template-columns:repeat(3,minmax(0,1fr))
}
 .list-products-page__banner-grid--secondary{
    margin-top:22px
}
 .list-products-page__banner-grid--message{
    grid-template-columns:1fr;
    margin-top:22px
}
 .list-products-page__inquiry .form-group{
    min-width:0
}
 .list-products-page__inquiry .form-group.full{
    grid-column:1/-1
}
 .list-products-page__inquiry .form-label{
    display:block;
    margin-bottom:10px;
    color:rgba(255,255,255,.96);
    font-size:15px;
    font-weight:500
}
 .list-products-page__inquiry .form-label span{
    color:rgba(255,255,255,.96)
}
 .list-products-page__inquiry .form-input,.list-products-page__inquiry .form-textarea{
    width:100%;
    border:none;
    border-bottom:1px solid rgba(255,255,255,.34);
    border-radius:0;
    background:0 0;
    color:#fff;
    font-size:15px;
    padding-left:0;
    padding-right:0;
    transition:border-color .2s ease,box-shadow .2s ease
}
 .list-products-page__inquiry .form-input::placeholder,.list-products-page__inquiry .form-textarea::placeholder{
    color:rgba(255,255,255,.6)
}
 .list-products-page__inquiry .form-input{
    height:50px;
    padding-top:5px;
    padding-bottom:10px
}
 .list-products-page__inquiry .form-textarea{
    min-height:94px;
    padding-top:12px;
    padding-bottom:12px;
    resize:vertical;
    font-family:initial
}
 .list-products-page__inquiry .form-input:focus,.list-products-page__inquiry .form-textarea:focus{
    outline:0
}
 .list-products-page__banner-actions{
    margin-top:26px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:22px;
    flex-wrap:wrap
}
 .list-products-page__banner-note{
    margin:0;
    color:rgba(255,255,255,.9);
    line-height:1.8;
    text-align:center
}
 .list-products-page__inquiry .form-submit.list-products-page__banner-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:10px 30px;
    border-radius:999px;
    border:none;
    background:var(--primary-blue);
    color:#fff;
    font-size:15px;
    cursor:pointer;
    transition:all .3s linear
}
 .list-products-page__inquiry .form-submit.list-products-page__banner-submit:hover{
    transform:translateY(-5px)
}
 .list-products-page__inquiry .form-submit.list-products-page__banner-submit i{
    margin-right:10px
}
 .list-products-page__inquiry .contact-info-list,.list-products-page__inquiry .inquiry-info,.list-products-page__inquiry .inquiry-whatsapp-btn{
    display:none
}
 .list-blog{
    background:#f5f8fc
}
 .list-blog-page__hero{
    position:relative;
    padding:148px 0 86px;
    background:linear-gradient(rgba(10,40,80,.42),rgba(10,40,80,.42)),url('images/list-blog-hero-generated-2.webp') center/cover no-repeat;
    color:#fff
}
 .list-blog-page__hero-inner{
    display:flex;
    align-items:center
}
 .list-blog-page__hero-copy{
    max-width:760px
}
 .list-blog-page__breadcrumb{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:18px;
    color:rgba(255,255,255,.82);
    font-size:14px
}
 .list-blog-page__breadcrumb a{
    color:#fff;
    text-decoration:none
}
 .list-blog-page__eyebrow,.list-blog-page__section-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(255,255,255,.14);
    color:#fff;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .list-blog-page__eyebrow{
    margin-bottom:18px
}
 .list-blog-page__title{
    margin:0 0 18px;
    font-size:52px;
    line-height:1.14;
    color:#fff;
    text-shadow:0 10px 28px rgba(0,0,0,.28),0 2px 8px rgba(0,0,0,.2)
}
 .list-blog-page__desc{
    margin:0;
    max-width:700px;
    color:rgba(255,255,255,.9);
    font-size:17px;
    line-height:1.85;
    text-shadow:0 8px 24px rgba(0,0,0,.24),0 2px 6px rgba(0,0,0,.18)
}
 .list-blog-page__category-bar-wrap{
    position:relative;
    z-index:30;
    margin-top:0
}
 .list-blog-page__category-bar{
    gap:12px
}
 .list-blog-page__category-pill{
    transition:all .25s ease
}
 .list-blog-page__category-pill.is-active,.list-products-page__category-pill.is-active{
    color:var(--primary-blue)
}
 .list-products-page__category-pill.is-active::before{
    display:none
}
 .list-blog-page__listing{
    padding:48px 0 86px
}
 .list-blog-page__section-head{
    max-width:780px;
    margin:0 auto 38px;
    text-align:center
}
 .list-blog-page__section-kicker{
    margin-bottom:16px;
    background:rgba(5,86,166,.08);
    color:#0556a6
}
 .list-blog-page__section-head h2{
    margin:0 0 14px;
    font-size:36px;
    line-height:1.22;
    color:#0f172a
}
 .list-blog-page__section-head p{
    margin:0;
    color:#5b6b7c;
    line-height:1.85
}
 .list-blog-page__cards{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px
}
 .list-blog .blog-card.list-blog-page__card{
    display:grid;
    overflow:hidden;
    border-radius:8px;
    border:1px solid var(--light-gray);
    background:var(--white);
    transition:var(--transition);
    min-height:100%;
    color:inherit;
    text-decoration:none;
    cursor:pointer
}
 .list-blog .blog-card.list-blog-page__card:hover{
    transform:translateY(-8px)
}
 .list-blog-page__card-media{
    display:block;
    overflow:hidden;
    background:#dbeafe;
    height:100%;
    height:245px;
    border-bottom:1px solid #dbeafe
}
 .list-blog .blog-card .blog-image{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .35s ease;
    min-height:100%
}
 .list-blog .blog-card.list-blog-page__card:hover .blog-image{
    transform:scale(1.04)
}
 .list-blog .blog-card .blog-content.list-blog-page__card-body{
    display:flex;
    flex-direction:column;
    flex:1;
    padding:25px
}
 .list-blog-page__card-meta{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px 18px;
    margin-bottom:10px
}
 .list-blog-page__card-date,.list-blog-page__card-readtime{
    display:inline-flex;
    align-items:center;
    gap:6px;
    color:var(--medium-gray);
    font-size:14px
}
 .list-blog-page__card-date i,.list-blog-page__card-readtime i{
    color:var(--primary-blue)
}
 .list-blog-page__card-title{
    margin:0 0 10px;
    font-family:var(--font-heading);
    font-size:16px;
    font-weight:600;
    line-height:1.4;
    height:calc(17px * 1.4 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .list-blog-page__card-title a{
    text-decoration:none
}
 .list-blog-page__card-excerpt{
    margin:0;
    color:var(--medium-gray);
    font-size:14px;
    line-height:1.5;
    height:calc(14px * 1.5 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .list-blog-page__card-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:auto;
    padding-top:18px;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:600;
    text-decoration:none
}
 .list-blog-page__card-link::after{
    content:none
}
 .list-blog-page__pagination{
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:40px
}
 .list-blog-page__page-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:46px;
    min-height:46px;
    padding:0 18px;
    border-radius:999px;
    border:1px solid #d8e2ee;
    background:#fff;
    color:#0f172a;
    font-weight:600;
    text-decoration:none;
    transition:all .25s ease
}
 .list-blog-page__page-btn.is-active,.list-blog-page__page-btn:hover{
    background:#0556a6;
    border-color:#0556a6;
    color:#fff
}
 .list-blog-page__page-btn--next{
    padding:0 22px
}
 .applications-page{
    background:linear-gradient(180deg,#fff 0,#f6faff 100%)
}
 .applications-page__hero{
    position:relative;
    padding:158px 0 88px;
    background:url('images/applications-hero-generated-3.webp') center/cover no-repeat;
    overflow:hidden
}
 .applications-page__hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(7,24,45,.34) 0,rgba(7,24,45,.22) 46%,rgba(7,24,45,.32) 100%)
}
 .applications-page__hero-inner{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(260px,360px);
    gap:32px;
    align-items:end
}
 .applications-page__hero-copy{
    max-width:760px
}
 .applications-page__hero-eyebrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(255,255,255,.14);
    color:#fff;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .applications-page__hero-title{
    margin:20px 0 18px;
    color:#fff;
    font-size:58px;
    line-height:1.15;
    text-shadow:0 10px 26px rgba(7,24,45,.28)
}
 .applications-page__hero-desc{
    margin:0;
    max-width:680px;
    color:rgba(255,255,255,.92);
    font-size:17px;
    line-height:1.9;
    text-shadow:0 6px 18px rgba(7,24,45,.24)
}
 .applications-page__hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px
}
 .applications-page__hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 24px;
    border-radius:999px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    transition:all .25s ease
}
 .applications-page__hero-btn--primary{
    background:#0556a6;
    color:#fff;
    box-shadow:0 16px 30px rgba(5,86,166,.28)
}
 .applications-page__hero-btn--primary:hover{
    background:#0b66c1
}
 .applications-page__hero-btn--secondary{
    border-color:rgba(255,255,255,.28);
    background:rgba(255,255,255,.06);
    color:#fff
}
 .applications-page__hero-btn--secondary:hover{
    background:rgba(255,255,255,.14)
}
 .applications-page__hero-metrics{
    display:grid;
    gap:14px
}
 .applications-page__metric-card{
    padding:22px 20px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px)
}
 .applications-page__metric-card strong{
    display:block;
    margin-bottom:8px;
    color:#fff;
    font-size:30px;
    line-height:1
}
 .applications-page__metric-card span{
    display:block;
    color:rgba(255,255,255,.84);
    font-size:14px;
    line-height:1.7
}
 .applications-page__intro{
    padding:72px 0 38px
}
 .applications-page__intro-copy{
    margin:0 auto;
    text-align:center;
    max-width:1080px
}
 .applications-page__eyebrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(5,86,166,.08);
    color:#0556a6;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .applications-page__title{
    color:#111827;
    font-size:36px;
    line-height:1.2;
    margin-bottom:30px
}
 .applications-page__desc{
    margin:0 auto;
    color:#5f6b7a;
    font-size:16px;
    line-height:1.5
}
 .applications-page__listing{
    padding:20px 0 96px
}
 .applications-page__stack{
    display:grid;
    gap:30px
}
 .applications-page__card{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(360px,.85fr);
    gap:30px;
    align-items:center;
    padding:30px;
    border-radius:10px;
    border:1px solid rgba(206,222,237,.92);
    background:#fff;
    transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
    color:inherit;
    text-decoration:none;
    cursor:pointer
}
 .applications-page__card:hover{
    transform:translateY(-6px)
}
 .applications-page__card-copy{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    padding:4px 4px;
    height:100%;
    min-width:0
}
 .applications-page__badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:0 14px;
    border-radius:999px;
    background:#98d45e;
    color:#fff;
    font-size:13px;
    font-weight:700
}
 .applications-page__card-title{
    margin:18px 0 18px;
    color:#12314a;
    font-size:22px;
    line-height:1.34;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    min-height:calc(22px * 1.34 * 2)
}
 .applications-page__card-desc{
    margin:0;
    color:#617587;
    font-size:16px;
    line-height:1.78;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    min-height:calc(16px * 1.7 * 3)
}
 .applications-page__meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px 18px;
    margin-top:24px;
    color:#6b7d90;
    font-size:14px
}
 .applications-page__meta span{
    display:inline-flex;
    align-items:center;
    gap:8px
}
 .applications-page__meta i{
    color:var(--primary-blue)
}
 .applications-page__card-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:18px;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:600;
    transition:color .25s ease,transform .25s ease
}
 .applications-page__card-link:hover{
    color:var(--primary-dark);
    transform:translateX(4px)
}
 .applications-page__card-media{
    overflow:hidden;
    max-height:300px;
    width:100%;
    aspect-ratio:4/3
}
 .applications-page__card-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .4s ease
}
 .applications-page__card:hover .applications-page__card-media img{
    transform:scale(1.04)
}
 .case-page{
    background:#fff
}
 .case-page__hero{
    position:relative;
    padding:158px 0 92px;
    background:url('images/hero-banner-02-leading-supplier.webp') center/cover no-repeat;
    overflow:hidden
}
 .case-page__hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(7,24,45,.92) 0,rgba(7,24,45,.76) 42%,rgba(7,24,45,.46) 100%)
}
 .case-page__hero-inner{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(280px,360px);
    gap:34px;
    align-items:end
}
 .case-page__hero-copy{
    max-width:760px
}
 .case-page__eyebrow,.case-page__section-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 16px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .case-page__eyebrow{
    background:rgba(255,255,255,.14);
    color:#fff
}
 .case-page__hero-title{
    margin:20px 0 18px;
    color:#fff;
    font-size:56px;
    line-height:1.16
}
 .case-page__hero-desc{
    margin:0;
    max-width:680px;
    color:rgba(255,255,255,.9);
    font-size:17px;
    line-height:1.9
}
 .case-page__hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px
}
 .case-page__hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 24px;
    border-radius:999px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    transition:all .25s ease
}
 .case-page__hero-btn--primary{
    background:#0556a6;
    color:#fff;
    box-shadow:0 16px 30px rgba(5,86,166,.28)
}
 .case-page__hero-btn--primary:hover{
    background:#0b66c1
}
 .case-page__hero-btn--secondary{
    border-color:rgba(255,255,255,.28);
    background:rgba(255,255,255,.06);
    color:#fff
}
 .case-page__hero-btn--secondary:hover{
    background:rgba(255,255,255,.14)
}
 .case-page__hero-summary{
    display:grid;
    gap:14px
}
 .case-page__summary-card{
    padding:22px 20px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px)
}
 .case-page__summary-card strong{
    display:block;
    margin-bottom:8px;
    color:#fff;
    font-size:28px;
    line-height:1.1
}
 .case-page__summary-card span{
    display:block;
    color:rgba(255,255,255,.86);
    font-size:14px;
    line-height:1.7
}
 .case-page__section{
    padding: 90px 0;
}
 .case-page__section--visits{
    background:#fff;
    padding-bottom: 0;
}
 .case-page__section--video{
    background:#eef4f9
}
 .case-page__section-head{
    margin:0 auto 40px;
    text-align:center
}
 .case-page__section-tag{
    background:rgba(5,86,166,.08);
    color:#0556a6
}
 .case-page__section-title{
    margin-bottom:15px;
    color:#11283d;
    font-size:36px;
    line-height:1.28
}
 .case-page__section-desc{
    margin:0;
    color:#607081;
    font-size:16px;
    line-height:1.85
}
 .case-page__image{
    width:100%;
    display:block;
    object-fit:cover
}
 .case-page__visit-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1.04fr) minmax(0,1fr);
    grid-template-areas:"visit-a visit-b visit-c" "visit-d visit-b visit-e";
    grid-auto-rows:clamp(190px,15vw,250px);
    gap:22px;
    align-items:stretch
}
 .case-page__visit-extra-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    margin-top: 0;
    justify-content:start;
    justify-items:start
}
 .case-page__visit-extra-grid .case-page__visit-card{
    width:100%;
    max-width:none;
    justify-self:stretch
}
 .case-page__visit-mobile{
    display:none
}
 .case-page__visit-card{
    position:relative;
    height:100%;
    overflow:hidden;
    border-radius:6px;
    background:#dbe7f1;
    box-shadow:0 16px 34px rgba(17,40,61,.08)
}
 .case-page__visit-card img{
    height:100%;
    min-height:180px;
    transition:transform .35s ease
}
 .case-page__visit-card:hover img{
    transform:scale(1.04)
}
 .case-page__visit-grid>.case-page__visit-card:first-child{
    grid-area:visit-a
}
 .case-page__visit-grid>.case-page__visit-card:nth-child(2){
    grid-area:visit-b
}
 .case-page__visit-grid>.case-page__visit-card:nth-child(3){
    grid-area:visit-c
}
 .case-page__visit-grid>.case-page__visit-card:nth-child(4){
    grid-area:visit-d
}
 .case-page__visit-grid>.case-page__visit-card:nth-child(5){
    grid-area:visit-e
}
 .case-page__visit-grid .case-page__visit-card{
    aspect-ratio:auto
}
 .case-page__visit-card--wide{
    aspect-ratio:1.62/1
}
 .case-page__visit-card--tall{
    aspect-ratio:1.08/1.22
}
 .case-page__visit-overlay{
    position:absolute;
    inset:auto 0 0;
    padding:42px 18px 18px;
    background:linear-gradient(180deg,rgba(7,24,45,0) 0,rgba(7,24,45,.7) 100%)
}
 .case-page__visit-label{
    display:inline-block;
    color:#fff;
    font-size:16px;
    font-weight:600;
    line-height:1.3
}
 .case-page .exhibitions-swiper{
    position:relative
}
 .case-page .exhibition-item{
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:50px;
    align-items:center;
    padding:40px;
    background:var(--off-white);
    border-radius:16px
}
 .case-page .exhibition-image{
    aspect-ratio:16/9;
    border-radius:12px;
    overflow:hidden;
    background:var(--light-gray)
}
 .case-page .exhibition-image img{
    width:100%;
    height:100%;
    object-fit:cover
}
 .case-page .exhibition-info{
    display:flex;
    flex-direction:column;
    gap:20px
}
 .case-page .exhibition-year{
    display:inline-block;
    width:fit-content;
    padding:6px 14px;
    border-radius:4px;
    background:rgba(29,112,197,.08);
    color:var(--text-gray);
    font-size:13px;
    font-weight:600;
    letter-spacing:2px;
    text-transform:uppercase
}
 .case-page .exhibition-title{
    color:var(--primary-dark);
    font-family:var(--font-heading);
    font-size:26px;
    font-weight:600;
    line-height:1.3
}
 .case-page .exhibition-details{
    display:flex;
    flex-direction:column;
    gap:14px
}
 .case-page .exhibition-detail{
    display:flex;
    align-items:center;
    gap:12px;
    color:var(--medium-gray);
    font-size:15px
}
 .case-page .exhibition-detail i{
    width:18px;
    text-align:center;
    color:var(--primary-blue);
    font-size:14px
}
 .case-page .exhibition-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#f7f9fc;
    border:none;
    border-radius:50%;
    color:var(--primary-blue);
    font-size:18px;
    cursor:pointer;
    transition:var(--transition);
    z-index:10
}
 .case-page .exhibition-nav:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .case-page .exhibition-nav.prev{
    left:-60px
}
 .case-page .exhibition-nav.next{
    right:-60px
}
 .case-page .exhibition-pagination{
    position:relative!important;
    bottom:auto!important;
    width:auto!important;
    margin:40px auto 0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:12px!important
}
 .case-page .exhibition-pagination .swiper-pagination-bullet{
    width:12px!important;
    height:12px!important;
    margin:0!important;
    background:rgba(29,112,197,.3)!important;
    border-radius:50%!important;
    opacity:1!important;
    transition:all .3s ease
}
 .case-page .exhibition-pagination .swiper-pagination-bullet:hover{
    background:rgba(29,112,197,.6)!important
}
 .case-page .exhibition-pagination .swiper-pagination-bullet-active{
    width:36px!important;
    border-radius:6px!important;
    background:var(--primary-blue)!important
}
 .case-page__slider-arrow{
    position:relative;
    z-index:2;
    width:44px;
    height:44px;
    border:none;
    border-radius:999px;
    background:#fff;
    color:#1d70c5;
    box-shadow:0 12px 24px rgba(21,43,70,.1);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:transform .25s ease,background .25s ease,color .25s ease
}
 .case-page__slider-arrow:hover{
    transform:translateY(-2px);
    background:#1d70c5;
    color:#fff
}
 .case-page__video-shell{
    position:relative;
    display:block
}
 .case-page__video-swiper{
    min-width:0;
    width:100%;
    max-width:100%;
    overflow:hidden
}
 .case-page__video-swiper .swiper-slide,.case-page__video-swiper .swiper-wrapper{
    min-width:0;
    height:auto
}
 .case-page__video-card{
    height:calc(100% - 2px);
    overflow:hidden;
    border-radius: 8px;
    background:#fff;
    cursor:pointer
}
 .case-page__video-media{
    position:relative;
    cursor:pointer
}
 .case-page__video-media .case-page__image{
    aspect-ratio:1.08/0.78
}
 .case-page__video-play{
    position:absolute;
    top:0;
    right:0;
    left:0;
    bottom:0;
    margin:auto;
    width:44px;
    height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#fff;
    color:var(--primary-blue);
    font-size:16px
}
 .case-page__video-content{
    padding: 20px;
}
 .case-page__video-title{
    margin:0;
    color:#11283d;
    font-size:18px;
    line-height:1.45;
    min-height:52px
}
 .case-page__video-meta{
    display:flex;
    flex-wrap:wrap;
    gap:16px 24px;
    margin-top:18px;
    color:#677789;
    font-size: 14px;
}
 .case-page__video-meta span{
    display:inline-flex;
    align-items:center;
    gap:8px
}
 .case-page__video-author{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:18px;
    color:#173249;
    font-size:16px;
    font-weight:700
}
 .case-page__video-author img{
    width:34px;
    height:34px;
    border-radius:999px;
    object-fit:contain;
    background:#f3f7fb;
    padding:4px
}
 .case-page__video-pagination{
    position:absolute!important;
    left:50%!important;
    bottom:0!important;
    width:auto!important;
    display:flex!important;
    gap:12px!important;
    transform:translateX(-50%)
}
 .case-page__video-pagination .swiper-pagination-bullet{
    width:12px!important;
    height:12px!important;
    margin:0!important;
    border-radius:50%!important;
    background:rgba(29,112,197,.3)!important;
    opacity:1!important;
    transition:all .3s ease
}
 .case-page__video-pagination .swiper-pagination-bullet-active{
    width:36px!important;
    border-radius:999px!important;
    background:var(--primary-blue)!important
}
 .case-page__after-stage-shell{
    position:relative
}
 .case-page__after-thumb{
    width:100%;
    padding:0;
    overflow:hidden;
    border:1px solid transparent;
    border-radius:8px;
    opacity:.82;
    background:#fff;
    transition:opacity .25s ease,transform .25s ease,border-color .25s ease
}
 .case-page__after-thumb img{
    width:100%;
    height:120px;
    object-fit:cover
}
 .case-page__after-thumbs{
    overflow:hidden;
    margin-top:30px
}
 .case-page__after-thumbs .swiper-slide{
    height:auto
}
 .case-page__after-thumb:hover,.case-page__after-thumbs .swiper-slide-thumb-active .case-page__after-thumb{
    opacity:1;
    transform:translateY(-2px);
    border-color:#1d70c5
}
 .case-page__after-stage{
    position:relative;
    overflow:hidden;
    border-radius:10px;
    background:#fff;
    border:1px solid rgba(17,40,61,.08)
}
 .case-page__after-main-swiper{
    overflow:hidden
}
 .case-page__after-slide img{
    aspect-ratio:1.8/1
}
 .case-page__after-caption{
    padding:18px 24px 22px;
    border-top:1px solid #e6eef5
}
 .case-page__after-caption strong{
    display:block;
    color:#11283d;
    font-size:22px;
    line-height:1.35
}
 .case-page__after-caption p{
    margin:10px 0 0;
    color:#62717f;
    font-size:15px;
    line-height:1.8
}
 .case-page__after-arrow{
    position:absolute;
    top:50%;
    z-index:2;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    border:none;
    border-radius:999px;
    background:var(--white);
    color:var(--primary-blue);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 8px 24px rgba(0,102,204,.14);
    cursor:pointer;
    transition:var(--transition)
}
 .case-page__after-arrow--prev{
    left:-60px
}
 .case-page__after-arrow--next{
    right:-60px
}
 .case-page__after-arrow:hover{
    background:var(--primary-blue);
    color:var(--white);
    transform:translateY(-50%)
}
 .case-page__after-thumbs .swiper-wrapper{
    align-items:stretch
}
 .case-page .video-modal{
    display:none;
    position:fixed;
    inset:0;
    z-index:9999;
    background:rgba(0,0,0,.88);
    align-items:center;
    justify-content:center;
    padding:24px
}
 .case-page .video-modal.active{
    display:flex
}
 .case-page .video-modal-content{
    position:relative;
    width:100%;
    max-width:1000px;
    aspect-ratio:16/9
}
 .case-page .video-modal-content iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:none;
    border-radius:14px
}
 .case-page .video-modal-close{
    position:absolute;
    top:-52px;
    right:0;
    width:44px;
    height:44px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:background .25s ease
}
 .case-page .video-modal-close:hover{
    background:#0556a6
}
 .about-page{
    background:#fff
}
 .about-page__hero{
    position:relative;
    padding:158px 0 108px;
    background:url('images/about-hero-generated-1.webp') center/cover no-repeat;
    overflow:hidden
}
 .about-page__hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(rgba(10,40,80,.42),rgba(10,40,80,.42))
}
 .about-page__hero-inner{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(280px,340px);
    gap:36px;
    align-items:end
}
 .about-page__eyebrow,.about-page__panel-tag,.about-page__section-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 16px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .about-page__eyebrow{
    background:rgba(255,255,255,.14);
    color:#fff
}
 .about-page__hero-title{
    margin:20px 0 18px;
    max-width:760px;
    color:#fff;
    font-size:56px;
    line-height:1.16;
    text-shadow:0 10px 28px rgba(0,0,0,.28),0 2px 8px rgba(0,0,0,.2)
}
 .about-page__hero-desc{
    margin:0;
    max-width:680px;
    color:rgba(255,255,255,.88);
    font-size:17px;
    line-height:1.9;
    text-shadow:0 8px 24px rgba(0,0,0,.24),0 2px 6px rgba(0,0,0,.18)
}
 .about-page__hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px
}
 .about-page__hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 24px;
    border-radius:999px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    transition:all .25s ease
}
 .about-page__hero-btn--primary{
    background:#0556a6;
    color:#fff;
    box-shadow:0 16px 30px rgba(5,86,166,.28)
}
 .about-page__hero-btn--primary:hover{
    background:#0b66c1
}
 .about-page__hero-btn--secondary{
    border-color:rgba(255,255,255,.28);
    background:rgba(255,255,255,.06);
    color:#fff
}
 .about-page__hero-btn--secondary:hover{
    background:rgba(255,255,255,.14)
}
 .about-page__hero-card{
    padding:28px 24px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:22px;
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px)
}
 .about-page__hero-card strong{
    display:block;
    margin-bottom:10px;
    color:#fff;
    font-size:28px;
    line-height:1.15
}
 .about-page__hero-card p{
    margin:0;
    color:rgba(255,255,255,.86);
    font-size:15px;
    line-height:1.8
}
 .about-page__intro,.about-page__manufacturing,.about-page__strength{
    padding:86px 0
}
 .about-page__section-soft,.about-page__stats{
    background:#f7f9fc
}
 .about-page__intro-copy,.about-page__section-head{
    margin:0 auto;
    text-align:center
}
 .about-page__panel-tag,.about-page__section-tag{
    background:rgba(5,86,166,.08);
    color:#0556a6
}
 .about-page__panel-title,.about-page__section-title{
    margin:0 0 15px;
    color:#11283d;
    font-size:40px;
    line-height:1.28
}
 .about-page__panel-text,.about-page__section-desc{
    margin:0;
    color:#607081;
    font-size:16px;
    line-height:1.85
}
 .about-page__who{
    padding:0 0 86px
}
 .about-page__who-grid{
    display:grid;
    grid-template-columns:minmax(0,0.96fr) minmax(0,1.04fr);
    border-radius:28px;
    overflow:hidden;
    box-shadow:0 18px 42px rgba(15,23,42,.08)
}
 .about-page__who-panel{
    padding:42px 38px;
    background:linear-gradient(180deg,#35b46a 0,#1f8d52 100%)
}
 .about-page__panel-tag{
    background:rgba(255,255,255,.16);
    color:#fff
}
 .about-page__panel-title{
    color:#fff
}
 .about-page__panel-text{
    margin-top:14px;
    color:rgba(255,255,255,.9)
}
 .about-page__who-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover
}
 .about-page__stats{
    padding:0 0 86px
}
 .about-page__stats-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px
}
 .about-page__stat-item{
    padding:28px 24px;
    border-radius:22px;
    background:#fff;
    box-shadow:0 14px 34px rgba(15,23,42,.06);
    text-align:center
}
 .about-page__stat-item strong{
    display:block;
    margin-bottom:10px;
    color:#0556a6;
    font-size:34px;
    line-height:1.1
}
 .about-page__stat-item span{
    display:block;
    color:#607081;
    font-size:14px;
    line-height:1.7
}
 .about-page__strength-grid,.about-page__timeline-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
    margin-top:36px
}
 .about-page__strength-card,.about-page__timeline-card{
    padding:28px 24px;
    border-radius:22px;
    background:#fff;
    box-shadow:0 18px 42px rgba(15,23,42,.08)
}
 .about-page__strength-icon{
    width:58px;
    height:58px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:rgba(5,86,166,.1);
    color:#0556a6;
    font-size:24px
}
 .about-page__media-copy h3,.about-page__strength-card h3,.about-page__timeline-card strong{
    display:block;
    margin:18px 0 12px;
    color:#12283b;
    font-size:22px;
    line-height:1.4
}
 .about-page__media-copy p,.about-page__strength-card p,.about-page__timeline-card p{
    margin:0;
    color:#62717f;
    font-size:15px;
    line-height:1.8
}
 .about-page__timeline{
    padding:86px 0
}
 .about-page__manufacturing-grid{
    display:grid;
    grid-template-columns:1.3fr 1fr 1fr;
    gap:24px;
    margin-top:36px
}
 .about-page__media-card{
    overflow:hidden;
    border-radius:22px;
    background:#fff;
    box-shadow:0 18px 42px rgba(15,23,42,.08)
}
 .about-page__media-card img{
    width:100%;
    display:block;
    object-fit:cover;
    aspect-ratio:4/3
}
 .about-page__media-card--large img{
    aspect-ratio:4/4.45
}
 .about-page__media-copy{
    padding:22px 22px 24px
}
 .about-page__cta{
    padding:86px 0
}
 .about-page__cta-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:38px 40px;
    border-radius:28px;
    background:#fff;
    box-shadow:0 18px 42px rgba(15,23,42,.08)
}
 .about-page__certificates,.about-page__company,.about-page__factory-team,.about-page__history{
    padding:90px 0
}
 .about-page__section-head--compact{
    margin:0 auto 34px;
    text-align:center
}
 .about-page__section-head--compact .about-page__section-tag{
    background:rgba(5,86,166,.08);
    color:#0556a6
}
 .about-page__section-head--compact .about-page__section-title{
    color:#11283d;
    font-size:40px;
    line-height:1.28
}
 .about-page__section-intro{
    margin:0;
    color:#5f6f80;
    font-size:16px;
    line-height:1.9;
    max-width:85%;
    margin:auto
}
 .about-page__video-stage{
    margin:0 auto;
    border-radius:8px;
    overflow:hidden;
    border:1px solid #d8e4ee;
    box-shadow:0 18px 40px rgba(17,40,61,.08)
}
 .about-page .video-wrapper{
    position:relative;
    width:100%;
    aspect-ratio:19/7;
    border-radius:0;
    overflow:hidden;
    cursor:pointer
}
 .about-page .video-cover{
    position:absolute;
    inset:0;
    transition:transform .3s ease
}
 .about-page .video-cover-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover
}
 .about-page .video-cover::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(7,24,45,.8) 0,rgba(7,24,45,.38) 38%,rgba(7,24,45,.06) 72%,rgba(7,24,45,.2) 100%),linear-gradient(180deg,rgba(7,24,45,.05),rgba(7,24,45,.22));
    transition:background .3s ease
}
 .about-page .video-wrapper:hover .video-cover{
    transform:scale(1.02)
}
 .about-page .video-wrapper:hover .video-cover::before{
    background:linear-gradient(90deg,rgba(7,24,45,.74) 0,rgba(7,24,45,.34) 38%,rgba(7,24,45,.04) 72%,rgba(7,24,45,.16) 100%),linear-gradient(180deg,rgba(7,24,45,.03),rgba(7,24,45,.18))
}
 .about-page__video-caption{
    position:absolute;
    top:50%;
    left:72px;
    z-index:2;
    transform:translateY(-50%);
    color:#fff;
    pointer-events:none
}
 .about-page__video-caption span{
    display:block;
    margin-bottom:8px;
    color:#8fd3ff;
    font-size:18px;
    font-weight:600;
    letter-spacing:.06em;
    text-transform:uppercase
}
 .about-page__video-caption strong{
    display:block;
    max-width:360px;
    font-size:54px;
    font-weight:600;
    line-height:1.02;
    letter-spacing:-.03em
}
 .about-page .play-button{
    position:absolute;
    top:50%;
    left:50%;
    z-index:2;
    transform:translate(-50%,-50%);
    width:84px;
    height:84px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.94);
    border:3px solid rgba(255,255,255,.65);
    box-shadow:0 18px 42px rgba(21,90,158,.2);
    transition:transform .3s ease,background .3s ease,border-color .3s ease
}
 .about-page .play-button::before{
    content:'';
    width:0;
    height:0;
    margin-left:6px;
    border-left:24px solid #1d70c5;
    border-top:14px solid transparent;
    border-bottom:14px solid transparent;
    transition:border-left-color .3s ease
}
 .about-page .video-wrapper:hover .play-button{
    transform:translate(-50%,-50%) scale(1.08);
    background:#1d70c5;
    border-color:rgba(255,255,255,.75)
}
 .about-page .video-wrapper:hover .play-button::before{
    border-left-color:#fff
}
 .about-page__history{
    background:linear-gradient(180deg,#f8fbfe 0,#fff 100%)
}
 .about-page__history-timeline{
    position:relative;
    display:flex;
    grid-template-columns:56px minmax(0,1fr) 56px;
    gap:40px;
    align-items:center;
    margin-bottom:34px
}
 .about-page__history-timeline::before{
    content:'';
    position:absolute;
    top:70px;
    left:80px;
    right:80px;
    height:1px;
    background:#d4dde6
}
 .about-page__history-arrow{
    width:44px;
    height:44px;
    border:none;
    border-radius:50%;
    background:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(17,40,61,.08);
    cursor:pointer;
    transition:var(--transition);
    z-index:1
}
 .about-page__history-arrow:hover{
    background:var(--primary-blue);
    color:#fff
}
 .about-page__history-nav-swiper{
    max-width:80%
}
 .about-page__history-nav-swiper .swiper-slide{
    height:auto
}
 .about-page__history-chip{
    width:100%;
    padding:0;
    border:none;
    background:0 0;
    color:#8a96a2;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:16px;
    font-size:18px;
    font-weight:600;
    line-height:1.2;
    cursor:pointer;
    text-align:center;
    transition:color .25s ease
}
 .about-page__history-chip-date{
    display:block;
    min-height:26px;
    font-size:30px;
    font-weight:700
}
 .about-page__history-chip-marker{
    width:40px;
    height:40px;
    border-radius:50%;
    border:2px solid #d4dde6;
    background:#d4dde6;
    color:var(--primary-blue);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:15px;
    transition:background .25s ease,border-color .25s ease,transform .25s ease,color .25s ease
}
 .about-page__history-chip.is-active,.about-page__history-chip:hover{
    color:#11283d
}
 .about-page__history-chip.is-active .about-page__history-chip-date,.about-page__history-chip:hover .about-page__history-chip-date{
    color:#11283d
}
 .about-page__history-chip.is-active .about-page__history-chip-marker,.about-page__history-chip:hover .about-page__history-chip-marker{
    background:var(--primary-blue);
    border-color:var(--primary-blue);
    transform:translateY(-2px);
    color:#fff
}
 .about-page__history-panel{
    height:100%;
    display:flex;
    flex-direction:column;
    border-radius:10px;
    overflow:hidden;
    background:#f3f5f7;
    transition:transform .25s ease,box-shadow .25s ease
}
 .about-page__history-panel.is-active,.about-page__history-panel:hover{
    transform:translateY(-4px)
}
 .about-page__history-panel-media{
    overflow:hidden;
    overflow:hidden
}
 .about-page__history-panel-media img{
    width:100%;
    aspect-ratio:16/10;
    display:block;
    object-fit:cover
}
 .about-page__history-panel-copy{
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:24px 26px 28px;
    text-align:center
}
 .about-page__history-panel-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 12px;
    margin-bottom:20px;
    border-radius:999px;
    background:var(--primary-blue);
    color:#fff;
    font-size:12px;
    font-weight:600;
    line-height:1
}
 .about-page__history-panel-copy h3{
    margin:0 0 16px;
    color:#11283d;
    font-size:24px;
    font-weight:600;
    line-height:1.42
}
 .about-page__history-panel-copy p{
    margin:0;
    color:#6b7a88;
    font-size:16px;
    line-height:1.9
}
 .about-page__history-panel-meta{
    margin-top:auto;
    padding-top:18px;
    color:var(--primary-blue);
    font-size:13px;
    font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase
}
 .about-page__factory-team{
    background:#fff;
    padding-top:0
}
 .about-page__gallery-tabs{
    display:flex;
    width:fit-content;
    gap:8px;
    margin:0 auto
}
 .about-page__gallery-tab{
    min-width:164px;
    min-height:52px;
    padding:0 22px;
    border:1px solid #dbe7f1;
    border-radius:6px;
    background:#fff;
    color:#155a9e;
    font-size:15px;
    font-weight:600;
    cursor:pointer;
    transition:background .25s ease,color .25s ease,border-color .25s ease
}
 .about-page__gallery-tab.is-active{
    border-color:#1d70c5;
    background:#1d70c5;
    color:#fff
}
 .about-page__gallery-panels{
    margin-top:40px
}
 .about-page__gallery-panel[hidden]{
    display:none
}
 .about-page__gallery-card{
    overflow:hidden
}
 .about-page__gallery-card--mosaic{
    padding:0
}
 .about-page__gallery-shell--mobile{
    display:none
}
 .about-page__gallery-mosaic{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-template-rows:300px 300px;
    gap:10px
}
 .about-page__gallery-tile{
    margin:0;
    overflow:hidden;
    border-radius:5px;
    background:#edf3f8
}
 .about-page__gallery-tile img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .3s ease
}
 .about-page__gallery-card .about-page__gallery-tile img:hover{
    transform:scale(1.02)
}
 .about-page__gallery-tile--hero{
    grid-column:1/span 2;
    grid-row:1
}
 .about-page__gallery-tile--top-a{
    grid-column:3;
    grid-row:1
}
 .about-page__gallery-tile--top-b{
    grid-column:4;
    grid-row:1
}
 .about-page__gallery-tile--bottom-a{
    grid-column:1;
    grid-row:2
}
 .about-page__gallery-tile--bottom-b{
    grid-column:2;
    grid-row:2
}
 .about-page__gallery-tile--wide{
    grid-column:3/span 2;
    grid-row:2
}
 .about-page__gallery-card--mobile img{
    width:100%;
    aspect-ratio:4/5;
    display:block;
    object-fit:cover
}
 .about-page__cert-shell,.about-page__gallery-shell{
    position:relative
}
 .about-page__gallery-controls{
    position:absolute;
    inset:0;
    pointer-events:none
}
 .about-page .exhibition-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--white);
    border-radius:50%;
    color:var(--primary-blue);
    border:1px solid var(--primary-blue);
    cursor:pointer;
    transition:var(--transition);
    z-index:10;
    pointer-events:auto
}
 .about-page .exhibition-nav:hover{
    background:var(--primary-blue);
    color:var(--white)
}
 .about-page .exhibition-nav.prev{
    left:-60px
}
 .about-page .exhibition-nav.next{
    right:-60px
}
 .about-page__cert-pagination,.about-page__gallery-mobile-pagination,.about-page__gallery-pagination{
    position:static;
    width:auto;
    margin-top:22px
}
 .about-page__cert-pagination .swiper-pagination-bullet,.about-page__gallery-mobile-pagination .swiper-pagination-bullet,.about-page__gallery-pagination .swiper-pagination-bullet{
    width:10px;
    height:10px;
    background:rgba(29,112,197,.22);
    opacity:1
}
 .about-page__cert-pagination .swiper-pagination-bullet-active,.about-page__gallery-mobile-pagination .swiper-pagination-bullet-active,.about-page__gallery-pagination .swiper-pagination-bullet-active{
    width:28px;
    border-radius:999px;
    background:#1d70c5
}
 .about-page__certificates{
    background:#f5f8fb
}
 .about-page__cert-swiper{
    min-width:0;
    width:100%;
    max-width:100%;
    overflow:hidden;
    padding-bottom:42px
}
 .about-page__cert-swiper .swiper-slide,.about-page__cert-swiper .swiper-wrapper{
    min-width:0
}
 .about-page__cert-frame{
    padding:0 4px 8px;
    background:0 0
}
 .about-page__cert-frame img{
    width:100%;
    margin:0 auto;
    display:block;
    object-fit:contain
}
 .about-page .video-modal{
    display:none;
    position:fixed;
    inset:0;
    z-index:9999;
    background:rgba(0,0,0,.88);
    align-items:center;
    justify-content:center;
    padding:24px
}
 .about-page .video-modal.active{
    display:flex
}
 .about-page .video-modal-content{
    position:relative;
    width:100%;
    max-width:1000px;
    aspect-ratio:16/9
}
 .about-page .video-modal-content iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:none;
    border-radius:14px
}
 .about-page .video-modal-close{
    position:absolute;
    top:-52px;
    right:0;
    width:44px;
    height:44px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:background .25s ease
}
 .about-page .video-modal-close:hover{
    background:#0556a6
}
 .services-page{
    background:#fff
}
 .services-page__hero{
    position:relative;
    padding:158px 0 100px;
    background:url('images/services-hero-generated-2.webp') center/cover no-repeat;
    overflow:hidden
}
 .services-page__hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(7,24,45,.18) 0,rgba(7,24,45,.14) 52%,rgba(7,24,45,.2) 100%)
}
 .services-page__hero-inner{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(280px,340px);
    gap:34px;
    align-items:end
}
 .services-page__eyebrow,.services-page__section-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 16px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .services-page__eyebrow{
    background:rgba(255,255,255,.14);
    color:#fff
}
 .services-page__hero-title{
    margin:20px 0 18px;
    max-width:780px;
    color:#fff;
    font-size:56px;
    line-height:1.16;
    text-shadow:0 8px 24px rgba(7,24,45,.34)
}
 .services-page__hero-desc{
    margin:0;
    max-width:720px;
    color:rgba(255,255,255,.92);
    font-size:17px;
    line-height:1.9;
    text-shadow:0 6px 18px rgba(7,24,45,.28)
}
 .services-page__hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px
}
 .services-page__hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 24px;
    border-radius:999px;
    border:1px solid transparent;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    transition:all .25s ease
}
 .services-page__hero-btn--primary{
    background:#0556a6;
    color:#fff;
    box-shadow:0 16px 30px rgba(5,86,166,.28)
}
 .services-page__hero-btn--primary:hover{
    background:#0b66c1
}
 .services-page__hero-btn--secondary{
    border-color:rgba(255,255,255,.28);
    background:rgba(255,255,255,.06);
    color:#fff
}
 .services-page__hero-btn--secondary:hover{
    background:rgba(255,255,255,.14)
}
 .services-page__hero-panel{
    padding:28px 24px;
    border-radius:22px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.1);
    backdrop-filter:blur(10px)
}
 .services-page__hero-panel strong{
    display:block;
    margin-bottom:10px;
    color:#fff;
    font-size:28px;
    line-height:1.15
}
 .services-page__hero-panel p{
    margin:0;
    color:rgba(255,255,255,.86);
    font-size:15px;
    line-height:1.8
}
 .services-page__hero-points{
    margin:18px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px
}
 .services-page__hero-points li{
    color:rgba(255,255,255,.92);
    font-size:14px;
    line-height:1.7;
    padding-left:20px;
    position:relative
}
 .services-page__hero-points li::before{
    content:'';
    position:absolute;
    top:9px;
    left:0;
    width:8px;
    height:8px;
    border-radius:50%;
    background:#31c2ff
}
 .services-page__cards,.services-page__cta,.services-page__intro,.services-page__support{
    padding:84px 0
}
 .services-page__assurance,.services-page__process{
    background:#f7f9fc
}
 .services-page__assurance-grid,.services-page__cards-grid,.services-page__process-grid{
    display:grid;
    gap:24px;
    margin-top:36px
}
 .services-page__cards-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))
}
 .services-page__assurance-card,.services-page__card,.services-page__step{
    padding:28px 24px;
    border-radius:22px;
    background:#fff;
    box-shadow:0 18px 42px rgba(15,23,42,.08)
}
 .services-page__card--feature{
    background:linear-gradient(180deg,#0556a6 0,#0d6ec8 100%)
}
 .services-page__card-icon{
    width:58px;
    height:58px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:rgba(5,86,166,.1);
    color:#0556a6;
    font-size:24px
}
 .services-page__card--feature .services-page__card-icon{
    background:rgba(255,255,255,.14);
    color:#fff
}
 .services-page__assurance-card h3,.services-page__card h3,.services-page__step h3{
    margin:18px 0 12px;
    color:#12283b;
    font-size:22px;
    line-height:1.4
}
 .services-page__assurance-card p,.services-page__card p,.services-page__step p,.services-page__support-row span{
    margin:0;
    color:#62717f;
    font-size:15px;
    line-height:1.8
}
 .services-page__card--feature h3,.services-page__card--feature p{
    color:#fff
}
 .services-page__process{
    padding:84px 0
}
 .services-page__process-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))
}
 .services-page__step-number{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:60px;
    min-height:34px;
    padding:0 12px;
    border-radius:999px;
    background:rgba(5,86,166,.08);
    color:#0556a6;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em
}
 .services-page__support-grid{
    display:grid;
    grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
    gap:28px;
    align-items:start
}
 .services-page__support-table{
    display:grid;
    gap:14px
}
 .services-page__support-row{
    display:grid;
    grid-template-columns:180px 1fr;
    gap:18px;
    padding:22px 24px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 16px 36px rgba(15,23,42,.07)
}
 .services-page__support-row strong{
    color:#0556a6;
    font-size:16px;
    line-height:1.6
}
 .services-page__assurance{
    padding:84px 0
}
 .services-page__assurance-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))
}
 .services-page__cta-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:38px 40px;
    border-radius:28px;
    background:#f7f9fc
}
 .services-page__inquiry{
    padding:86px 0
}
 .services-page__section-tag--light{
    background:rgba(255,255,255,.14);
    color:#fff
}
 .services-page__inquiry{
    padding:18px 0 96px
}
 .services-page__inquiry-shell{
    position:relative;
    overflow:hidden;
    width:100%;
    min-height:620px;
    display:grid;
    align-items:center;
    padding:72px clamp(22px,5vw,68px)
}
 .services-page__inquiry-bg,.services-page__inquiry-overlay{
    position:absolute;
    inset:0
}
 .services-page__inquiry-bg{
    width:100%;
    height:100%;
    object-fit:cover
}
 .services-page__inquiry-overlay{
    background:linear-gradient(180deg,rgba(7,21,40,.5),rgba(7,21,40,.62)),linear-gradient(90deg,rgba(5,28,61,.4),rgba(5,28,61,.18))
}
 .services-page__inquiry-card{
    position:relative;
    z-index:1;
    max-width:980px;
    width:100%;
    margin:0 auto;
    padding:48px 52px 40px;
    border-radius:22px;
    background:linear-gradient(135deg,rgba(7,93,197,.96) 0,rgba(8,74,166,.97) 100%);
    box-shadow:0 26px 54px rgba(6,51,114,.34)
}
 .services-page__inquiry-head{
    max-width:760px;
    margin:0 auto 30px;
    text-align:center
}
 .services-page__inquiry-head h2{
    margin:18px 0 14px;
    color:#fff;
    font-size:42px;
    line-height:1.14
}
 .services-page__inquiry-head p{
    margin:0;
    color:rgba(255,255,255,.86);
    font-size:15px;
    line-height:1.9
}
 .services-page__inquiry-form{
    display:grid;
    gap:22px
}
 .services-page__inquiry-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px
}
 .services-page__inquiry-field{
    display:grid;
    gap:10px
}
 .services-page__inquiry-field--wide{
    grid-column:1/-1
}
 .services-page__inquiry-field span{
    color:rgba(255,255,255,.9);
    font-size:12px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .services-page__inquiry-input,.services-page__inquiry-textarea{
    width:100%;
    border:1px solid rgba(255,255,255,.18);
    border-radius:16px;
    background:rgba(255,255,255,.97);
    color:#10283c;
    font-size:15px;
    line-height:1.6;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease
}
 .services-page__inquiry-input{
    min-height:56px;
    padding:0 18px
}
 .services-page__inquiry-textarea{
    min-height:148px;
    padding:16px 18px;
    resize:vertical
}
 .services-page__inquiry-input::placeholder,.services-page__inquiry-textarea::placeholder{
    color:#7a8b98
}
 .services-page__inquiry-select{
    appearance:none;
    padding-right:48px;
    background-image:linear-gradient(45deg,transparent 50%,#0556a6 50%),linear-gradient(135deg,#0556a6 50%,transparent 50%);
    background-position:calc(100% - 24px) calc(50% - 3px),calc(100% - 18px) calc(50% - 3px);
    background-size:6px 6px,6px 6px;
    background-repeat:no-repeat
}
 .services-page__inquiry-input:focus,.services-page__inquiry-textarea:focus{
    outline:0;
    border-color:rgba(255,255,255,.45);
    box-shadow:0 0 0 4px rgba(255,255,255,.12);
    transform:translateY(-1px)
}
 .services-page__inquiry-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px
}
 .services-page__inquiry-footer p{
    margin:0;
    max-width:580px;
    color:rgba(255,255,255,.8);
    font-size:14px;
    line-height:1.8
}
 .services-page__inquiry-submit{
    flex:0 0 auto;
    min-height:54px;
    padding:0 32px;
    border:none;
    border-radius:999px;
    background:linear-gradient(180deg,#ff8a1d 0,#ff6c02 100%);
    color:#fff;
    font-size:14px;
    font-weight:600;
    letter-spacing:.04em;
    text-transform:uppercase;
    cursor:pointer;
    transition:transform .2s ease,box-shadow .2s ease
}
 .services-page__inquiry-submit:hover{
    transform:translateY(-2px)
}
 .contact-page{
    background:linear-gradient(180deg,#fff 0,#f7fbff 58%,#f3f8fc 100%)
}
 .contact-page__hero{
    position:relative;
    padding:156px 0 96px;
    background:url('images/contact_us_banner_no_phones_final.webp') center/cover no-repeat;
    overflow:hidden
}
 .contact-page__hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(120deg,rgba(7,21,40,.84) 0,rgba(7,21,40,.5) 48%,rgba(4,83,125,.58) 100%),linear-gradient(180deg,rgba(7,21,40,.12) 0,rgba(7,21,40,.46) 100%)
}
 .contact-page__hero-inner{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(280px,360px);
    gap:34px;
    align-items:end
}
 .contact-page__eyebrow,.contact-page__section-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 16px;
    border-radius:999px;
    font-size:13px;
    font-weight:600;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .contact-page__eyebrow{
    background:rgba(255,255,255,.14);
    color:#fff
}
 .contact-page__hero-title{
    margin:20px 0 18px;
    max-width:820px;
    color:#fff;
    font-size:56px;
    line-height:1.14;
    text-shadow:0 10px 28px rgba(7,21,40,.3)
}
 .contact-page__hero-desc{
    margin:0;
    max-width:720px;
    color:rgba(255,255,255,.9);
    font-size:17px;
    line-height:1.92;
    text-shadow:0 6px 18px rgba(7,21,40,.2)
}
 .contact-page__hero-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px
}
 .contact-page__hero-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 24px;
    border-radius:999px;
    border:1px solid transparent;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    transition:all .25s ease
}
 .contact-page__hero-btn--primary{
    background:#34b56a;
    color:#fff;
    box-shadow:0 18px 34px rgba(52,181,106,.26)
}
 .contact-page__hero-btn--primary:hover{
    background:#249652
}
 .contact-page__hero-btn--secondary{
    background:rgba(255,255,255,.08);
    border-color:rgba(255,255,255,.26);
    color:#fff
}
 .contact-page__hero-btn--secondary:hover{
    background:rgba(255,255,255,.16)
}
 .contact-page__hero-panel{
    padding:30px 26px;
    border-radius:26px;
    border:1px solid rgba(255,255,255,.16);
    background:linear-gradient(180deg,rgba(255,255,255,.14),rgba(255,255,255,.08));
    backdrop-filter:blur(12px)
}
 .contact-page__hero-panel strong{
    display:block;
    margin-bottom:12px;
    color:#fff;
    font-size:28px;
    line-height:1.12
}
 .contact-page__hero-panel p{
    margin:0;
    color:rgba(255,255,255,.84);
    font-size:15px;
    line-height:1.82
}
 .contact-page__hero-points{
    margin:20px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px
}
 .contact-page__hero-points li{
    position:relative;
    padding-left:20px;
    color:rgba(255,255,255,.94);
    font-size:14px;
    line-height:1.72
}
 .contact-page__hero-points li::before{
    content:'';
    position:absolute;
    top:9px;
    left:0;
    width:8px;
    height:8px;
    border-radius:50%;
    background:#8ae6ff
}
 .contact-page__channels{
    margin-top:-42px;
    position:relative;
    z-index:2
}
 .contact-page__channels-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px
}
 .contact-page__channel-card{
    display:grid;
    gap:10px;
    padding:24px 22px;
    border-radius:24px;
    background:#fff;
    box-shadow:0 22px 48px rgba(15,23,42,.1);
    text-decoration:none;
    transition:transform .25s ease,box-shadow .25s ease
}
 .contact-page__channel-card:hover{
    transform:translateY(-5px);
    box-shadow:0 26px 58px rgba(15,23,42,.14)
}
 .contact-page__channel-card--static:hover{
    transform:none;
    box-shadow:0 22px 48px rgba(15,23,42,.1)
}
 .contact-page__channel-icon{
    width:54px;
    height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:linear-gradient(180deg,rgba(5,86,166,.12),rgba(52,181,106,.12));
    color:#0556a6;
    font-size:22px
}
 .contact-page__channel-card strong{
    color:#10283c;
    font-size:20px;
    line-height:1.3
}
 .contact-page__channel-card span:last-child{
    color:#607081;
    font-size:14px;
    line-height:1.8
}
 .contact-page__faq,.contact-page__intro{
    padding:84px 0
}
 .contact-page__contact,.contact-page__support{
    padding:84px 0
}
 .contact-page__section-soft{
    background:linear-gradient(180deg,#f6f9fc 0,#eef5f7 100%)
}
 .contact-page__section-head{
    max-width:920px;
    margin:0 auto;
    text-align:center
}
 .contact-page__section-tag{
    background:rgba(5,86,166,.08);
    color:#0556a6
}
 .contact-page__section-tag--light{
    background:rgba(255,255,255,.12);
    color:#fff
}
 .contact-page__section-title{
    margin:18px 0 16px;
    color:#11283d;
    font-size:40px;
    line-height:1.28
}
 .contact-page__section-desc{
    margin:0;
    color:#607081;
    font-size:16px;
    line-height:1.9
}
 .contact-page__contact-grid,.contact-page__support-grid{
    display:grid;
    gap:28px
}
 .contact-page__support-grid{
    grid-template-columns:minmax(0,1fr) minmax(320px,0.88fr);
    align-items:start
}
 .contact-page__details-card,.contact-page__faq-card,.contact-page__form-card,.contact-page__support-card,.contact-page__support-story{
    border-radius:26px;
    background:#fff;
    box-shadow:0 20px 44px rgba(15,23,42,.08)
}
 .contact-page__support-story{
    padding:34px 34px 36px
}
 .contact-page__support-pills{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px
}
 .contact-page__support-pills span{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    padding:0 16px;
    border-radius:999px;
    background:rgba(5,86,166,.06);
    color:#173249;
    font-size:13px;
    font-weight:600;
    letter-spacing:.03em
}
 .contact-page__support-stack{
    display:grid;
    gap:18px
}
 .contact-page__support-card{
    padding:28px 26px
}
 .contact-page__support-card--accent{
    background:linear-gradient(180deg,#0556a6 0,#0d6ec8 100%)
}
 .contact-page__support-card h3{
    margin:0 0 12px;
    color:#11283d;
    font-size:24px;
    line-height:1.36
}
 .contact-page__support-card li,.contact-page__support-card p{
    color:#607081;
    font-size:15px;
    line-height:1.86
}
 .contact-page__support-card--accent h3,.contact-page__support-card--accent li{
    color:#fff
}
 .contact-page__support-card ul{
    margin:0;
    padding-left:18px
}
 .contact-page__contact-grid{
    grid-template-columns:minmax(280px,0.92fr) minmax(0,1.08fr);
    align-items:start
}
 .contact-page__details{
    display:grid;
    gap:18px
}
 .contact-page__details-card{
    padding:30px 28px
}
 .contact-page__details-card--feature{
    background:linear-gradient(180deg,#0f2034 0,#173a56 100%)
}
 .contact-page__details-card--feature h2,.contact-page__details-card--feature p{
    color:#fff
}
 .contact-page__details-card h2,.contact-page__details-card h3{
    margin:18px 0 14px;
    color:#10283c;
    font-size:28px;
    line-height:1.28
}
 .contact-page__details-card h3{
    margin-top:0;
    font-size:22px
}
 .contact-page__details-card p{
    margin:0;
    color:#607081;
    font-size:15px;
    line-height:1.85
}
 .contact-page__details-list{
    display:grid;
    gap:14px;
    margin-top:24px
}
 .contact-page__details-list a,.contact-page__details-list div{
    display:grid;
    grid-template-columns:22px 1fr;
    gap:12px;
    align-items:start;
    color:rgba(255,255,255,.92);
    text-decoration:none;
    font-size:15px;
    line-height:1.75
}
 .contact-page__details-list i{
    color:#8ae6ff;
    margin-top:4px
}
 .contact-page__form-card{
    padding:34px 34px 36px
}
 .contact-page__form-head{
    margin-bottom:26px
}
 .contact-page__form-title{
    margin:16px 0 12px;
    color:#10283c;
    font-size:34px;
    line-height:1.2
}
 .contact-page__form-desc{
    margin:0;
    color:#607081;
    font-size:15px;
    line-height:1.8
}
 .contact-page__form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
 .contact-page__field{
    display:grid;
    gap:10px
}
 .contact-page__field span{
    color:#173249;
    font-size:13px;
    font-weight:600;
    letter-spacing:.04em;
    text-transform:uppercase
}
 .contact-page__field--full{
    margin-top:18px
}
 .contact-page__input,.contact-page__textarea{
    width:100%;
    border:1px solid rgba(16,40,60,.12);
    border-radius:18px;
    background:#f8fbfd;
    color:#10283c;
    font-size:15px;
    line-height:1.7;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease
}
 .contact-page__input{
    min-height:56px;
    padding:0 18px
}
 .contact-page__textarea{
    min-height:160px;
    padding:16px 18px;
    resize:vertical
}
 .contact-page__input::placeholder,.contact-page__textarea::placeholder{
    color:#7a8b98
}
 .contact-page__input:focus,.contact-page__textarea:focus{
    outline:0;
    border-color:rgba(5,86,166,.42);
    box-shadow:0 0 0 4px rgba(5,86,166,.08);
    background:#fff
}
 .contact-page__form-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-top:22px
}
 .contact-page__form-footer p{
    margin:0;
    color:#607081;
    font-size:14px;
    line-height:1.75
}
 .contact-page__submit{
    flex:0 0 auto;
    min-height:52px;
    padding:0 28px;
    border:none;
    border-radius:999px;
    background:linear-gradient(180deg,#34b56a 0,#249652 100%);
    color:#fff;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    box-shadow:0 18px 34px rgba(52,181,106,.22);
    transition:transform .2s ease,box-shadow .2s ease
}
 .contact-page__submit:hover{
    transform:translateY(-2px);
    box-shadow:0 22px 40px rgba(52,181,106,.28)
}
 .contact-page__faq-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    margin-top:36px
}
 .contact-page__faq-card{
    padding:28px 26px
}
 .contact-page__faq-card h3{
    margin:0 0 14px;
    color:#10283c;
    font-size:22px;
    line-height:1.38
}
 .contact-page__faq-card p{
    margin:0;
    color:#607081;
    font-size:15px;
    line-height:1.85
}
 .quotation-page{
    background:linear-gradient(180deg,#fff 0,#f6f9fc 54%,#eef5f7 100%);
    color:#10283c
}
 .quotation-page .contact-shell{
    width:min(1400px,calc(100% - 48px));
    margin:0 auto;
    padding:72px 0 96px
}
 .quotation-intro{
    max-width:900px;
    margin:0 auto 38px;
    text-align:center
}
 .quotation-intro h1{
    margin:0 0 14px;
    color:#10283c;
    font-size:42px;
    line-height:1.18;
    font-weight:600
}
 .quotation-intro p{
    max-width:780px;
    margin:0 auto;
    color:#607081;
    font-size:16px;
    line-height:1.85
}
 .quotation-layout{
    display:grid;
    grid-template-columns:minmax(320px,0.92fr) minmax(0,1.08fr);
    gap:28px;
    align-items:start
}
 .quotation-page .form-card,.quote-selection-card{
    border:1px solid rgba(206,222,237,.92);
    border-radius:10px;
    background:#fff
}
 .quote-selection-card{
    padding:30px 28px
}
 .quotation-page .form-card{
    padding:34px 34px 36px
}
 .quote-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:22px
}
 .quotation-page .form-card-header h2,.quote-card-head h2{
    margin:0;
    color:#10283c;
    font-size:24px;
    line-height:1.3;
    font-weight:600
}
 .quotation-page .form-card-header{
    margin-bottom:24px
}
 .quotation-page .form-card-header p{
    margin:8px 0 0;
    color:#607081;
    font-size:15px;
    line-height:1.8
}
 .quotation-submit,.quote-list-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:12px
}
 .quotation-page .btn-continue,.quote-list-actions button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 20px;
    border:1px solid rgba(5,86,166,.18);
    border-radius:999px;
    background:rgba(5,86,166,.08);
    line-height:1.5;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    cursor:pointer;
    transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease
}
 .quotation-page .btn-continue:hover,.quote-list-actions button:hover{
    transform:translateY(-1px);
    border-color:#0556a6;
    background:#0556a6;
    color:#fff
}
 .quote-empty{
    padding:36px 24px;
    border:1px dashed rgba(5,86,166,.28);
    border-radius:10px;
    background:linear-gradient(180deg,#f8fbfd 0,#eef7ff 100%);
    text-align:center
}
 .quote-empty h3{
    margin:0 0 8px;
    color:#10283c;
    font-size:20px;
    line-height:1.35;
    font-weight:600
}
 .quote-empty p{
    max-width:360px;
    margin:0 auto 18px;
    color:#607081;
    font-size:14px;
    line-height:1.75
}
 .quotation-page .btn-cta,.quotation-page .btn-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 20px;
    border:none;
    border-radius:999px;
    border:1px solid var(--accent-orange);
    background:var(--accent-orange);
    color:#fff;
    line-height:1.5;
    font-size:14px;
    font-weight:600;
    text-decoration:none;
    cursor:pointer;
    transition:transform .2s ease,box-shadow .2s ease
}
 .quotation-page .btn-cta:hover,.quotation-page .btn-submit:hover{
    transform:translateY(-2px)
}
 .quote-product-list{
    display:grid;
    gap:12px
}
 .quote-product-item{
    display:grid;
    grid-template-columns:78px minmax(0,1fr);
    gap:14px;
    align-items:center;
    padding:12px;
    border:1px solid rgba(206,222,237,.92);
    border-radius:10px;
    background:#f8fbfd
}
 .quote-product-img,.quote-product-media{
    width:71px;
    height:71px;
    overflow:hidden;
    border:1px solid rgba(16,40,60,.1);
    border-radius:8px;
    background:#fff
}
 .quote-product-img img,.quote-product-media img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover
}
 .quote-product-body,.quote-product-text{
    min-width:0
}
 .quote-product-text a,.quote-product-title{
    color:#10283c;
    text-decoration:none
}
 .quote-product-text h3,.quote-product-title{
    display:-webkit-box;
    margin:0;
    overflow:hidden;
    font-size:14px;
    line-height:1.45;
    font-weight:600;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2
}
 .quote-product-actions{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px
}
 .quote-product-actions .custom-checkbox,.quote-product-check{
    width:17px;
    height:17px;
    accent-color:#0556a6;
    cursor:pointer
}
 .quote-product-actions .remove-btn,.quote-product-remove{
    padding:4px 0;
    border:none;
    background:0 0;
    color:#dc2626;
    font-size:13px;
    font-weight:600;
    cursor:pointer
}
 .quote-list-footer{
    margin-top:20px
}
 .quote-list-footer p{
    margin:0;
    color:#607081;
    font-size:14px
}
 .quotation-page .form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
 .quotation-page .form-group{
    display:grid;
    gap:9px
}
 .quotation-page .form-group.full{
    grid-column:1/-1
}
 .quotation-page .form-group label{
    color:#173249;
    font-size:13px;
    font-weight:600;
    letter-spacing:.02em
}
 .quotation-page .form-group label span{
    color:#dc2626
}
 .quotation-page .form-group input,.quotation-page .form-group textarea{
    width:100%;
    border:1px solid rgba(16,40,60,.12);
    border-radius:8px;
    background:#f8fbfd;
    color:#10283c;
    font-family:inherit;
    font-size:14px;
    line-height:1.5;
    outline:0;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease
}
 .quotation-page .form-group input{
    padding:10px 15px
}
 .quotation-page .form-group textarea{
    min-height:154px;
    padding:15px 16px;
    resize:vertical
}
 .quotation-page .form-group input::placeholder,.quotation-page .form-group textarea::placeholder{
    color:#7a8b98
}
 .quotation-page .form-group input:focus,.quotation-page .form-group textarea:focus{
    border-color:rgba(5,86,166,.42);
    background:#fff;
    box-shadow:0 0 0 4px rgba(5,86,166,.08)
}
 .quotation-submit{
    margin-top:24px
}
 .contact-page__connect,.contact-page__form-section,.contact-page__map-section{
    padding:84px 0
}
 .contact-page__connect{
    background:0 0
}
 .contact-page__map-section{
    background:linear-gradient(180deg,#fff 0,#f6faff 100%)
}
 .contact-page__split-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,0.84fr);
    gap:30px;
    align-items:start;
    margin-bottom:34px
}
 .contact-page__split-head .contact-page__section-title{
    margin:16px 0 0
}
 .contact-page__split-head .contact-page__section-desc{
    margin-top:10px
}
 .contact-page__connect-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px
}
 .contact-page__connect-card{
    display:grid;
    gap:15px;
    min-height:100%;
    padding:30px;
    border:1px solid rgba(206,222,237,.92);
    border-radius:10px;
    background:linear-gradient(180deg,#fff 0,#f7fbff 100%);
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
    text-decoration:none;
    color:inherit;
    text-align:center
}
 .contact-page__connect-card:hover{
    transform:translateY(-4px);
    border-color:rgba(125,176,224,.92)
}
 .contact-page__connect-icon{
    width:54px;
    height:54px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(5,86,166,.1);
    color:#0556a6;
    font-size:20px;
    margin:auto
}
 .contact-page__connect-card h3{
    margin:8px 0 0;
    font-size:16px;
    line-height:1.32
}
 .contact-page__connect-value{
    display:block;
    margin-top:2px;
    color:#173249;
    font-size:16px;
    line-height:1.6
}
 .contact-page__connect-card:hover .contact-page__connect-value{
    color:#0556a6
}
 .contact-page__map-shell{
    overflow:hidden;
    border-radius:24px;
    box-shadow:0 18px 42px rgba(15,23,42,.08);
    border:1px solid rgba(206,222,237,.92);
    background:#eaf2f8
}
 .contact-page__map-shell iframe{
    display:block;
    width:100%;
    height:480px;
    border:0
}
 .contact-page__form-shell{
    margin:42px auto 0
}
 .contact-page .inquiry-form-wrapper{
    background:linear-gradient(180deg,#fff 0,#f8fbff 100%);
    border:1px solid rgba(206,222,237,.92);
    border-radius:10px;
    padding:40px
}
 .contact-page .inquiry-form-header{
    text-align:left;
    margin-bottom:30px
}
 .contact-page .inquiry-form-title{
    margin:0 0 12px;
    color:#10283c;
    font-size:34px;
    line-height:1.2
}
 .contact-page .inquiry-form-subtitle{
    margin:0;
    color:#607081;
    font-size:15px;
    line-height:1.8
}
 .contact-page .inquiry-form{
    background:0 0;
    padding:0;
    box-shadow:none
}
 .contact-page .form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px
}
 .contact-page .form-group.full{
    grid-column:1/-1
}
 .contact-page .form-label{
    display:block;
    margin-bottom:8px;
    color:#173249;
    font-size:14px;
    font-weight:700
}
 .contact-page .form-label span{
    color:var(--accent-orange)
}
 .contact-page .form-input,.contact-page .form-select,.contact-page .form-textarea{
    width:100%;
    border:1px solid rgba(16,40,60,.12);
    border-radius:10px;
    background:#f8fbfd;
    color:#10283c;
    font-size:15px;
    line-height:1.7;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease
}
 .contact-page .form-input,.contact-page .form-select{
    min-height:56px;
    padding:0 18px
}
 .contact-page .form-textarea{
    min-height:160px;
    padding:16px 18px;
    resize:unset;
    font-family:initial
}
 .contact-page .form-input::placeholder,.contact-page .form-textarea::placeholder{
    color:#7a8b98
}
 .contact-page .form-input:focus,.contact-page .form-select:focus,.contact-page .form-textarea:focus{
    outline:0;
    border-color:rgba(5,86,166,.42);
    background:#fff
}
 .contact-page .form-submit{
    width:max-content;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    border:none;
    border-radius:999px;
    background:linear-gradient(180deg,#0556a6 0,#0d6ec8 100%);
    color:#fff;
    font-size:16px;
    padding:10px 20px;
    cursor:pointer;
    transition:transform .2s ease,box-shadow .2s ease
}
 .contact-page .form-submit:hover{
    transform:translateY(-2px)
}
 .floating-contact-sidebar{
    position:fixed;
    right:18px;
    bottom:10%;
    z-index:1200;
    display:flex;
    flex-direction:column;
    gap:10px
}
 .floating-contact-sidebar__item{
    width:48px;
    height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(5,86,166,.12);
    border-radius:10px;
    background:#fff;
    color:#0556a6;
    text-decoration:none;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease,visibility .2s ease
}
 .floating-contact-sidebar__item i{
    font-size:19px;
    line-height:1
}
 .floating-contact-sidebar__item:hover{
    transform:translateY(-2px)
}
 .floating-contact-sidebar__item--phone{
    color:#0556a6
}
 .floating-contact-sidebar__item--email{
    color:#0f172a
}
 .floating-contact-sidebar__item--whatsapp{
    color:#22c55e
}
 .floating-contact-sidebar__item--top{
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    pointer-events:none
}
 .floating-contact-sidebar__item--top.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto
}
 .auto-container{
    width:100%;
    max-width:var(--container-width);
    margin:0 auto
}
 .loading-box{
    display:none;
    position:fixed;
    inset:0;
    z-index:9999;
    background:rgba(0,0,0,.35);
    align-items:center;
    justify-content:center
}
 .loading-box[style*="display: block"]{
    display:flex!important
}
 .loading-box img{
    width:32px;
    height:32px
}

.list_products,
.show_products {
    background: #f5f8fc;
    min-height: 100vh;
}

.products-page-hero,
.product-detail-hero {
    padding: 140px 0 80px;
    background: linear-gradient(135deg, rgba(5, 86, 166, 0.94), rgba(18, 151, 180, 0.88)), url('images/product-categories-bg-01.webp') center/cover no-repeat;
    color: #fff;
}

.products-page-hero__inner,
.product-detail-hero__inner {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 32px;
    align-items: center;
}

.products-page-kicker {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.products-page-hero h1,
.product-detail-hero h1 {
    margin: 0 0 18px;
    font-size: 46px;
    line-height: 1.15;
    color: #fff;
}

.products-page-hero p,
.product-detail-hero p {
    margin: 0;
    max-width: 760px;
    color: rgba(255, 255, 255, 0.92);
    font-size: 17px;
    line-height: 1.8;
}

.products-page-hero__actions,
.product-detail-hero__actions,
.products-list-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}

.primary-btn,
.secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 8px 20px;
    border-radius: 999px;
    border: 1px solid transparent;
    font-weight: 700;
    font-size: 15px;
    transition: all 0.25s ease;
    cursor: pointer;
    text-decoration: none;
}

.primary-btn {
    background: #ffb703;
    color: #0f172a;
    /* box-shadow: 0 12px 28px rgba(255, 183, 3, 0.28); */
}

.primary-btn:hover {
    transform: translateY(-2px);
    /* box-shadow: 0 16px 34px rgba(255, 183, 3, 0.32); */
}

.primary-btn--full {
    width: max-content;
}

.secondary-btn {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.28);
    color: #fff;
}

.secondary-btn--link:hover,
.secondary-btn:hover {
    background: rgba(255, 255, 255, 0.16);
}

.products-page-hero__stats {
    display: grid;
    gap: 16px;
}

.products-stat-card,
.product-gallery-card,
.product-content-card,
.product-side-card,
.products-list-card,
.related-product-card {
    background: #fff;
    border-radius: 24px;
    /* box-shadow: 0 18px 55px rgba(15, 23, 42, 0.08); */
}

.products-stat-card {
    padding: 24px;
    color: #0f172a;
}

.products-stat-card strong {
    display: block;
    margin-bottom: 8px;
    font-size: 28px;
    color: #0556a6;
}

.products-stat-card span {
    color: #475569;
    line-height: 1.7;
}

.products-list-section,
.product-detail-section,
.related-products-section {
    padding: 90px 0;
}

.related-products-section{padding-top: 0;}

.products-section-heading {
    max-width: 760px;
    margin: 0 auto 36px;
    text-align: center;
}

.products-section-heading--left {
    margin: 0 0 24px;
    text-align: left;
}

.products-section-heading h2 {
    margin: 0 0 12px;
    font-size: 34px;
    color: #0f172a;
}

.products-section-heading p {
    margin: 0;
    color: #475569;
    line-height: 1.8;
}

.products-section-heading .products-page-kicker {
    background: rgba(5, 86, 166, 0.08);
    color: #0556a6;
}

.products-list-grid {
    display: grid;
    gap: 28px;
}

.products-list-card {
    display: grid;
    grid-template-columns: minmax(280px, 360px) 1fr;
    overflow: hidden;
}

.products-list-card__media {
    display: block;
    min-height: 100%;
    background: #e2e8f0;
}

.products-list-card__media img,
.related-product-card__media img,
.product-gallery__hero img,
.product-gallery__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.products-list-card__body {
    padding: 28px;
}

.products-list-card__category,
.related-product-card__body span {
    display: inline-flex;
    margin-bottom: 14px;
    color: #0556a6;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.products-list-card__title,
.related-product-card__body h3 {
    margin: 0 0 14px;
    font-size: 28px;
    line-height: 1.3;
    color: #0f172a;
}

.products-list-card__title a,
.related-product-card__body a,
.product-breadcrumb a,
.text-link {
    color: inherit;
    text-decoration: none;
}

.products-list-card__desc,
.related-product-card__body p {
    margin: 0 0 18px;
    color: #475569;
    line-height: 1.8;
}

.products-list-card__features,
.product-highlight-list,
.product-content-list,
.product-side-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 12px;
}

.products-list-card__features li,
.product-highlight-list li,
.product-content-list li,
.product-side-list li {
    position: relative;
    padding-left: 24px;
    color: #334155;
    line-height: 1.7;
}

.products-list-card__features li::before,
.product-highlight-list li::before,
.product-content-list li::before,
.product-side-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 10px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #0ea5e9;
    box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.14);
}

.products-list-card__meta,
.product-detail-hero__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 22px;
}

.products-list-card__meta span,
.product-detail-hero__meta span {
    display: inline-flex;
    align-items: center;
    padding: 10px 16px;
    border-radius: 999px;
    background: #eff6ff;
    color: #1e3a8a;
    font-size: 14px;
    font-weight: 600;
}

.product-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 20px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
}

.product-breadcrumb strong {
    color: #fff;
}

.product-gallery-card {
    padding: 24px;
}

.product-gallery__hero {
    overflow: hidden;
    border-radius: 20px;
    aspect-ratio: 4 / 3;
    background: #e2e8f0;
}

.product-gallery__thumbs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 16px;
}

.product-gallery__thumb {
    border: 0;
    border-radius: 16px;
    overflow: hidden;
    background: #dbeafe;
    padding: 0;
    cursor: pointer;
    opacity: 0.7;
    transition: all 0.25s ease;
}

.product-gallery__thumb.is-active,
.product-gallery__thumb:hover {
    opacity: 1;
    transform: translateY(-2px);
    box-shadow: 0 10px 26px rgba(5, 86, 166, 0.18);
}

.product-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
    gap: 28px;
    align-items: start;
}

.product-detail-main {
    display: grid;
    gap: 28px;
}

.product-detail-main--full {
    grid-column: 1 / -1;
}

.product-content-card,
.product-side-card {
    /* padding: 30px; */
}

.product-side-card--accent {
    background: linear-gradient(180deg, #0556a6, #0f3d75);
    color: #fff;
}

.product-side-card--accent p,
.product-side-card--accent h3,
.product-side-card--accent li {
    color: #fff;
}

.product-side-card h3,
.related-products-grid h3 {
    margin: 0 0 18px;
    font-size: 24px;
    color: #0f172a;
}

.product-side-card--accent h3 {
    color: #fff;
}

.product-spec-table-wrap {
    overflow-x: auto;
}

.product-spec-table {
    width: 100%;
    border-collapse: collapse;
}

.product-spec-table tr + tr {
    border-top: 1px solid #e2e8f0;
}

.product-spec-table th,
.product-spec-table td {
    padding: 18px 16px;
    text-align: left;
    vertical-align: top;
}

.product-spec-table th {
    width: 220px;
    color: #0f172a;
    font-size: 15px;
}

.product-spec-table td {
    color: #475569;
    line-height: 1.7;
}

.related-products-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.related-product-card {
    overflow: hidden;
}

.related-product-card__media {
    display: block;
    aspect-ratio: 4 / 3;
    background: #e2e8f0;
}

.related-product-card__body {
    padding: 24px;
}

.related-products-carousel {
    position: relative;
    padding: 0;
    min-height: auto;
}

.related-products-carousel .swiper {
    overflow: hidden;
    padding-top: 10px;
}

.related-products-carousel .swiper-slide {
    height: auto;
}

.related-products-carousel .product-card {
    height: 100%;
}

.show_products .related-products-carousel .exhibition-pagination {
    position: static;
    width: auto;
    margin-top: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}

.show_products .related-products-carousel .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    margin: 0 !important;
    background: rgba(5, 86, 166, 0.2);
    opacity: 1;
}

.show_products .related-products-carousel .swiper-pagination-bullet-active {
    width: 28px;
    border-radius: 999px;
    background: var(--primary-blue);
}

.show_products .related-products-carousel .product-image {
    background: #ffffff;
}

.show_products .related-products-carousel .product-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(19px * 1.34 * 2);
}

.show_products .related-products-carousel .product-desc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(14px * 1.72 * 2);
}

.text-link {
    display: inline-flex;
    align-items: center;
    color: #0556a6;
    font-weight: 700;
}

.product-detail-facts {
    margin-top: -36px;
    position: relative;
    z-index: 2;
}

.product-detail-facts__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.product-detail-fact-card {
    padding: 28px;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 18px 55px rgba(15, 23, 42, 0.08);
}

.product-detail-fact-card__label {
    display: inline-flex;
    margin-bottom: 14px;
    color: #0556a6;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product-detail-fact-card h3 {
    margin: 0 0 10px;
    font-size: 24px;
    line-height: 1.35;
    color: #0f172a;
}

.product-detail-fact-card p {
    margin: 0;
    color: #475569;
    line-height: 1.8;
}

.product-detail-richtext h2,
.product-detail-richtext h3 {
    color: #0f172a;
}

.product-detail-richtext h2 {
    margin: 0 0 18px;
    font-size: 32px;
}

.product-detail-richtext h3 {
    margin: 28px 0 14px;
    font-size: 22px;
}

.product-detail-richtext p,
.product-detail-richtext li {
    color: #475569;
    line-height: 1.9;
    font-size: 16px;
}

.product-detail-richtext p {
    margin: 0 0 16px;
}

.product-detail-richtext ul {
    margin: 0;
    padding-left: 22px;
}

.product-detail-richtext li + li {
    margin-top: 10px;
}

.product-detail-page__hero {
    position: relative;
}

.product-detail-page__hero .list-products-page__hero-inner {
    min-height: 520px;
    align-items: end;
}

.product-detail-page__hero-copy {
    max-width: 880px;
}

.product-detail-page__breadcrumb {
    color: rgba(255, 255, 255, 0.86);
}

.product-detail-top {
    /* margin-top: -72px; */
    padding: 90px 0;
    position: relative;
    z-index: 2;
    background: #ffffff;
}

.product-detail-top__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 1.2fr);
    gap: 28px;
    align-items: start;
}

.product-gallery-panel,
.product-summary-card {
    /* background: #fff; */
    /* border-radius: 28px; */
    /* box-shadow: 0 24px 65px rgba(15, 23, 42, 0.1); */
}

.product-gallery-panel {
    /* padding: 24px; */
}

.product-gallery-main {
    position: relative;
}

.product-gallery-main .swiper {
    border-radius: 10px;
    overflow: hidden;
    /* background: #eff6ff; */
    border: 1px solid rgba(206, 222, 237, 0.92);
}

.product-gallery-main__trigger,
.product-lightbox__slide {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: zoom-in;
}

.product-gallery-main__trigger img,
.product-lightbox__slide img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    background: #f8fafc;
}

.product-gallery-main__zoom {
    position: absolute;
    right: 18px;
    bottom: 18px;
    z-index: 5;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.78);
    color: #ffffff;
    font-size: 16px;
    cursor: pointer;
}

.product-gallery-main .swiper-button-prev,
.product-gallery-main .swiper-button-next,
.product-lightbox .swiper-button-prev,
.product-lightbox .swiper-button-next {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: rgba(15, 23, 42, 0.72);
    color: #fff;
}

.product-gallery-main .swiper-button-prev::after,
.product-gallery-main .swiper-button-next::after,
.product-lightbox .swiper-button-prev::after,
.product-lightbox .swiper-button-next::after {
    font-size: 16px;
    font-weight: 700;
}

.product-gallery-thumbs {
    margin-top: 16px;
}

.product-gallery-thumbs .swiper-slide {
    height: auto;
}

.product-gallery-thumbs__item {
    width: 100%;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 10px;
    overflow: hidden;
    background: #eff6ff;
    cursor: pointer;
}

.product-gallery-thumbs__item img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.product-gallery-thumbs .swiper-slide-thumb-active .product-gallery-thumbs__item {
    border-color: #0556a6;
    /* box-shadow: 0 10px 24px rgba(5, 86, 166, 0.18); */
}

.product-summary-card {
    padding: 20px;
    display: grid;
    gap: 20px;
    position: sticky;
    top: 110px;
}

.product-summary-card__eyebrow {
    display: inline-flex;
    width: fit-content;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(5, 86, 166, 0.08);
    color: #0556a6;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product-summary-card h2 {
    margin: 0;
    font-size: 26px;
    line-height: 1.22;
    /* color: #0f172a; */
}

.product-summary-card__desc {
    margin: 0;
    color: #475569;
    font-size: 16px;
    line-height: 1.85;
}

.product-summary-card__price {
    /* padding: 18px 20px; */
    /* border-radius: 22px; */
    /* background: linear-gradient(135deg, #eff6ff, #f8fbff); */
    /* border: 1px solid rgba(5, 86, 166, 0.08); */
}

.product-summary-card__price span {
    display: block;
    margin-bottom: 8px;
    color: #64748b;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product-summary-card__price strong {
    color: #0556a6;
    font-size: 18px;
    line-height: 1.2;
}

.product-summary-card__attrs {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.product-summary-card__attr {
    display: flex;
    align-items: center;
    gap: 10px;
    /* padding: 10px; */
    /* border-radius: 5px; */
    /* background: #f8fafc; */
    /* border: 1px solid #e2e8f0; */
}

.product-summary-card__attr span {
    flex: 1 1 auto;
    /* color: #0f172a; */
    font-size: 14px;
    line-height: 1.6;
}

.product-summary-card__attr strong {
    flex: 0 0 auto;
    /* color: #64748b; */
    font-size: 14px;
    font-weight: 700;
    /* letter-spacing: 0.08em; */
    /* text-transform: uppercase; */
    line-height: 1.4;
}

.product-summary-card__actions {
    display: flex;
    gap: 12px;
}

.product-summary-card__actions .primary-btn,
.product-summary-card__actions .secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.product-summary-card__actions .primary-btn {
    background: linear-gradient(180deg, #0556a6 0%, #0d6ec8 100%);
    border-color: #0556a6;
    color: #fff;
}

.product-summary-card__actions .primary-btn:hover {
    background: linear-gradient(180deg, #0d6ec8 0%, #0556a6 100%);
    border-color: #0d6ec8;
    box-shadow: 0 18px 34px rgba(5, 86, 166, 0.24);
}

.product-summary-card__actions .secondary-btn {
    background: rgba(5, 86, 166, 0.08);
    border-color: rgba(5, 86, 166, 0.18);
    color: #0556a6;
}

.product-summary-card__actions .secondary-btn:hover {
    /* background: rgba(5, 86, 166, 0.14); */
    border-color: rgba(5, 86, 166, 0.28);
    color: #ffffff;
}

.secondary-btn--dark {
    background: linear-gradient(180deg, #0556a6 0%, #0d6ec8 100%);
    border-color: #0556a6;
    color: #fff;
}

.secondary-btn--dark:hover {
    background: linear-gradient(180deg, #0d6ec8 0%, #0556a6 100%);
    border-color: #0d6ec8;
    /* box-shadow: 0 18px 34px rgba(5, 86, 166, 0.24); */
}

.product-summary-card__contact,
.product-summary-card__share {
    padding-top: 10px;
    border-top: 1px solid #e2e8f0;
}

.product-summary-card__share{
    display: flex;
    gap: 20px;
    align-items: center;
    padding-top: 20px;
}

.product-summary-card__contact h3,
.product-summary-card__share span {
    display: block;
    margin: 0 0 14px;
    color: #0f172a;
    font-size: 18px;
    font-weight: 700;
}

.product-summary-card__contact-list {
    display: grid;
    gap: 10px;
    grid-auto-flow: column;
}

.product-summary-card__contact-list a {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #334155;
    text-decoration: none;
    line-height: 1.7;
}

.product-summary-card__contact-list i,
.product-summary-card__share-links a {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.product-summary-card__contact-list i {
    background: rgba(5, 86, 166, 0.08);
    color: #0556a6;
}

.product-side-card--accent .product-side-list li::before {
    background: #fff;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.18);
}

.product-lightbox {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 32px;
    background: rgba(2, 6, 23, 0.82);
    z-index: 4000;
}

.product-lightbox.is-open {
    display: flex;
}

.product-lightbox__dialog {
    position: relative;
    width: min(1080px, 100%);
    padding: 26px;
    border-radius: 28px;
    background: #0f172a;
    box-shadow: 0 24px 70px rgba(2, 6, 23, 0.45);
}

.product-lightbox__close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 26px;
    cursor: pointer;
    z-index: 3;
}

.product-lightbox .swiper {
    border-radius: 20px;
    overflow: hidden;
}

.product-lightbox .swiper-slide {
    background: #020617;
}

.product-lightbox .swiper-pagination-bullet {
    background: rgba(255, 255, 255, 0.58);
}

.product-lightbox .swiper-pagination-bullet-active {
    background: #fff;
}

.product-lightbox-open {
    overflow: hidden;
}

.product-detail-editorial__tabs {
    position: sticky;
    top: 90px;
    /* left: 10px; */
    z-index: 30;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: 0;
    /* row-gap: 10px; */
    /* margin-bottom: 28px; */
    padding: 15px 0;
    background: var(--white);
    /* border: 1px solid #e2e8f0; */
    /* border-radius: 18px; */
    /* box-shadow: 0 18px 38px rgba(15, 23, 42, 0.06); */
    overflow: hidden;
}

.product-detail-editorial__tabs-toggle {
    display: none;
}

.product-detail-editorial__tabs-next {
    grid-column: 2;
    grid-row: 1;
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 0;
    /* border-radius: 50%; */
    /* background: transparent; */
    color: var(--primary-blue);
    cursor: pointer;
    transition: color 0.2s ease, background 0.2s ease;
    /* border-left: 1px solid #e2e8f0; */
    /* padding-left: 12px; */
    /* margin-left: 6px; */
}

.product-detail-editorial__tabs-next:hover {
    /* background: rgba(5, 86, 166, 0.08); */
    /* color: #0556a6; */
}

.product-detail-editorial__tabs-next i {
    font-size: 16px;
}

.product-detail-editorial__tabs-panel {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    /* flex: 1 1 0; */
    min-width: 0;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: 0px;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scroll-behavior: smooth;
}

.product-detail-editorial__tabs-panel::-webkit-scrollbar {
    display: none;
}

.product-detail-editorial__tabs-scrollbar {
    grid-column: 1;
    grid-row: 2;
    position: relative;
    width: 100%;
    height: 1px;
    border-radius: 999px;
    background: rgba(131, 160, 193, 0.16);
    overflow: hidden;
}

.product-detail-editorial__tabs.is-scrollbar-hidden .product-detail-editorial__tabs-scrollbar {
    visibility: hidden;
}

.product-detail-editorial__tabs-scrollbar-thumb {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    min-width: 42px;
    border: 0;
    border-radius: 999px;
    background: rgba(131, 160, 193, 0.78);
    cursor: grab;
    transition: background 0.2s ease;
    opacity:0
}

.product-detail-editorial__tabs-scrollbar-thumb:hover {
    background: rgba(108, 140, 177, 0.92);
}

.product-detail-editorial__tabs-scrollbar-thumb:active {
    cursor: grabbing;
}

.product-detail-editorial__tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 15px 15px;
    padding-bottom: 20px;
    border: 0;
    border-radius: 0;
    background: transparent;
    /* color: #516176; */
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0;
    text-decoration: none;
    text-transform: none;
    white-space: nowrap;
    cursor: pointer;
    transition: color 0.2s ease, box-shadow 0.2s ease;
}

.product-detail-editorial__tab:hover {
    color: #0556a6;
}

.product-detail-editorial__tab.is-active {
    color: #0556a6;
    box-shadow: inset 0 -1px 0 #0556a6;
}

.product-detail-editorial__panel[hidden] {
    display: none;
}
