:root{
    --primary:#1D2088;
    --primary-dark:#151870;
    --primary-light:#2d31a6;
    --primary-xlight:#eef0fb;
    --nav-height:68px;
    --bg:#ffffff;
    --bg2:#f8f9fc;
    --bg3:#f1f3f9;
    --text:#1a1d2e;
    --text-muted:#6b7280;
    --text-light:#9ca3af;
    --border:#e5e7eb;
    --card-shadow:0 2px 16px rgba(29,32,136,.08);
    --radius:16px;
    --radius-sm:10px
}
 *,::after,::before{
    box-sizing:border-box;
    margin:0;
    padding:0
}
 html{
    scroll-behavior:smooth;
    scrollbar-gutter:stable
}
 body{
    font-family:Inter,sans-serif;
    background:var(--bg);
    color:var(--text);
    overflow-x:hidden;
    line-height:1.6;
    max-width:1920px;
    margin:auto
}
 body.modal-scroll-lock{
    overflow:hidden;
    padding-right:var(--scroll-lock-offset,0)
}
 img{
    display:block;
    max-width:100%
}
 a{
    text-decoration:none;
    color:inherit
}
 ul{
    list-style:none
}
 .container{
    max-width:1400px;
    margin:0 auto;
    padding:0
}
 body::before{
    content:'';
    position:fixed;
    top:0;
    left:0;
    height:3px;
    background:linear-gradient(90deg,var(--primary),#06b6d4);
    z-index:9999;
    width:var(--scroll-progress,0%)
}
 #navbar{
    position:fixed;
    top:0;
    left:0;
    right:0;
    z-index:1000;
    padding:0 32px;
    height:68px;
    display:flex;
    align-items:center;
    background:0 0;
    backdrop-filter:blur(2px);
    transition:background .3s,box-shadow .3s
}
 body.modal-scroll-lock #navbar{
    right:var(--scroll-lock-offset,0)
}
 #navbar ::selection{
    background:var(--primary);
    color:#fff
}
 #navbar.scrolled{
    background:rgba(255,255,255,.97);
    box-shadow:0 1px 0 var(--border),0 1px 5px rgba(29,32,136,.08);
    backdrop-filter:blur(12px)
}
 body.product-detail-nav-solid #navbar{
    background:rgba(255,255,255,.97);
    box-shadow:0 1px 0 var(--border),0 8px 24px rgba(15,23,42,.08);
    backdrop-filter:blur(14px)
}
 body.product-detail-nav-solid #navbar .nav-logo{
    color:var(--primary)
}
 body.product-detail-nav-solid #navbar .nav-logo img{
    filter:none
}
 body.product-detail-nav-solid #navbar .nav-links a{
    color:var(--text)
}
 body.product-detail-nav-solid #navbar .hamburger span{
    background:var(--text)
}
 body.product-detail-nav-solid #navbar .nav-inquiry-btn{
    background:var(--primary);
    color:#fff;
    border-color:var(--primary);
    box-shadow:0 10px 24px rgba(29,32,136,.12)
}
 body.product-detail-nav-solid #navbar .nav-inquiry-btn:hover{
    background:var(--primary-dark);
    color:#fff;
    border-color:var(--primary-dark)
}
 body.product-detail-nav-solid #navbar .nav-search-btn{
    background:var(--primary-xlight);
    border-color:rgba(29,32,136,.2);
    color:var(--primary)
}
 body.product-detail-nav-solid #navbar .nav-search-btn:hover{
    background:rgba(29,32,136,.12)
}
 .nav-container{
    width:100%;
    max-width:1400px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between
}
 .nav-logo{
    font-size:22px;
    font-weight:900;
    color:#fff;
    letter-spacing:2px;
    transition:all .3s linear
}
 #navbar.scrolled .nav-logo{
    color:var(--primary)
}
 .nav-logo img{
    display:block;
    height:34px;
    width:auto;
    max-width:180px;
    object-fit:contain;
    filter:brightness(0) invert(1);
    transition:all .3s linear
}
 #navbar.scrolled .nav-logo img{
    filter:unset
}
 .footer-brand .nav-logo img{
    height:38px;
    max-width:200px;
    filter:brightness(0) invert(1)
}
 .loading-box{
    position:fixed;
    inset:0;
    display:none;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(2px);
    z-index:9999
}
 .loading-box img{
    width:56px;
    height:56px;
    object-fit:contain;
    display:block
}
 .nav-links{
    display:flex;
    align-items:center;
    gap:40px
}
 .nav-links li{
    list-style:none
}
 .nav-links a{
    font-size:17px;
    color:#fff;
    transition:color .2s
}
 #navbar.scrolled .nav-links a{
    color:var(--text)
}
 .nav-links a:hover{
    color:var(--primary)
}
 .hamburger{
    display:none;
    flex-direction:column;
    gap:5px;
    background:0 0;
    border:none;
    cursor:pointer;
    padding:4px
}
 .hamburger span{
    display:block;
    width:24px;
    height:2px;
    background:#fff;
    border-radius:2px;
    transition:all .3s
}
 .hamburger.active span:first-child{
    transform:translateY(7px) rotate(45deg)
}
 .hamburger.active span:nth-child(2){
    opacity:0
}
 .hamburger.active span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg)
}
 #navbar.scrolled .hamburger span{
    background:var(--text)
}
 .nav-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-shrink:0
}
 .nav-inquiry-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:40px;
    background:#fff;
    color:var(--primary);
    padding:8px 18px 8px 14px;
    border-radius:50px;
    font-weight:700;
    font-size:14px;
    white-space:nowrap;
    transition:transform .2s,box-shadow .2s,background .3s,color .3s;
    border:1px solid rgba(255,255,255,.52);
    box-shadow:0 10px 26px rgba(4,13,32,.12)
}
 .nav-inquiry-btn svg{
    width:18px;
    height:18px;
    stroke:currentColor;
    stroke-width:1.9;
    fill:none;
    stroke-linecap:round;
    stroke-linejoin:round;
    flex:0 0 auto
}
 .nav-quote-text{
    line-height:1;
    letter-spacing:.01em
}
 #navbar.scrolled .nav-inquiry-btn{
    background:var(--primary);
    color:#fff;
    border-color:var(--primary)
}
 .nav-inquiry-btn:hover{
    transform:translateY(-2px);
    background:rgba(255,255,255,.92);
    color:var(--primary);
    box-shadow:0 14px 30px rgba(29,32,136,.18)
}
 #navbar.scrolled .nav-inquiry-btn:hover{
    background:var(--primary-dark);
    color:#fff;
    border-color:var(--primary-dark)
}
 .nav-dropdown{
    position:relative
}
 .nav-dropdown::after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:100%;
    height:22px
}
 .nav-dropdown-toggle{
    display:flex;
    align-items:center;
    gap:5px;
    cursor:pointer
}
 .nav-dropdown-trigger{
    display:none;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    padding:0;
    border:none;
    background:0 0;
    color:inherit;
    cursor:pointer
}
 .nav-dropdown-trigger:focus-visible{
    outline:2px solid rgba(29,32,136,.35);
    outline-offset:2px;
    border-radius:999px
}
 .nav-arrow{
    transition:transform .25s ease;
    flex-shrink:0
}
 .nav-dropdown.open .nav-arrow,.nav-dropdown:hover .nav-arrow{
    transform:rotate(180deg)
}
 .nav-submenu{
    position:absolute;
    top:calc(100% + 10px);
    left:50%;
    transform:translateX(-50%);
    background:#fff;
    border-radius:12px;
    box-shadow:0 8px 40px rgba(29,32,136,.14),0 1px 0 rgba(29,32,136,.06);
    min-width:200px;
    padding:8px 0;
    opacity:0;
    pointer-events:none;
    transform:translateX(-50%) translateY(-8px);
    transition:opacity .22s ease,transform .22s ease;
    border:1px solid var(--border);
    z-index:200
}
 .nav-dropdown:hover .nav-submenu{
    opacity:1;
    pointer-events:all;
    transform:translateX(-50%) translateY(0)
}
 .nav-submenu::before{
    content:'';
    position:absolute;
    top:-6px;
    left:50%;
    transform:translateX(-50%);
    width:12px;
    height:6px;
    background:#fff;
    clip-path:polygon(50% 0%,0% 100%,100% 100%);
    filter:drop-shadow(0 -1px 0 var(--border))
}
 .nav-submenu li a{
    display:block;
    padding:9px 20px;
    font-size:14px;
    font-weight:500;
    color:var(--text-muted);
    transition:background .15s,color .15s,padding-left .15s;
    white-space:nowrap
}
 .nav-submenu li a:hover{
    background:var(--primary-xlight);
    color:var(--primary);
    padding-left:26px
}
 .btn-primary{
    display:inline-flex;
    align-items:center;
    background:var(--primary);
    color:#fff;
    font-size:15px;
    padding:8px 20px;
    border-radius:50px;
    border:none;
    cursor:pointer;
    transition:transform .2s,box-shadow .2s,background .2s
}
 .btn-primary:hover{
    transform:translateY(-2px)
}
 .btn-primary.full-width{
    width:max-content;
    justify-content:center;
    padding:12px 20px
}
 .btn-outline{
    display:inline-flex;
    align-items:center;
    gap:8px;
    border:2px solid #fff;
    color:#fff;
    font-weight:600;
    font-size:15px;
    padding:11px 28px;
    border-radius:50px;
    cursor:pointer;
    transition:background .2s,color .2s
}
 .btn-outline:hover{
    background:#fff;
    color:var(--primary)
}
 .section-heading{
    text-align:center;
    margin-bottom:60px
}
 .section-heading h2,.section-heading h1{
    margin:0 auto;
    font-size:clamp(32px,3vw,40px);
    font-weight:800;
    line-height:1.2;
    color:#111;
    letter-spacing:2px;
    text-transform:uppercase
}
 .section-heading h2 span,.section-heading h1 span{
    color:var(--primary)
}
 .section-heading-divider{
    width:60px;
    height:3px;
    background:var(--primary);
    margin:14px auto 18px;
    border-radius:2px
}
 .section-heading p{
    margin:0 auto;
    color:#666;
    font-size:16px;
    line-height:1.75;
    letter-spacing:1px
}
 .section-heading a{
    color:var(--primary)
}
 .section-heading.section-heading-light h2{
    color:#fff
}
 .section-heading.section-heading-light h2 span{
    color:#fff
}
 .section-heading.section-heading-light .section-heading-divider{
    background:rgba(255,255,255,.85)
}
 .section-heading.section-heading-light p{
    color:rgba(255,255,255,.75)
}
 [data-aos]{
    opacity:0;
    transform:translateY(28px);
    transition:opacity .65s ease,transform .65s ease
}
 [data-aos].aos-animate{
    opacity:1;
    transform:translateY(0)
}
 [data-aos=fade-right]{
    transform:translateX(-28px)
}
 [data-aos=fade-right].aos-animate{
    transform:translateX(0)
}
 [data-aos=fade-left]{
    transform:translateX(28px)
}
 [data-aos=fade-left].aos-animate{
    transform:translateX(0)
}
 [data-aos=fade-down]{
    transform:translateY(-20px)
}
 [data-aos=fade-down].aos-animate{
    transform:translateY(0)
}
 .hero{
    position:relative;
    height:92vh;
    min-height:620px;
    overflow:hidden
}
 .hero-slides{
    position:absolute;
    inset:0;
    z-index:0
}
 .hero-slide{
    position:absolute;
    inset:0;
    opacity:0;
    transition:opacity 1s ease
}
 .hero-slide.active{
    opacity:1
}
 .hero-slide img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center
}
 .hero-slide-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to right,rgba(0,0,0,.65) 0,rgba(0,0,0,.35) 60%,rgba(0,0,0,.15) 100%)
}
 .hero-slide-overlay{
    display:none
}
 .hero-content{
    position:relative;
    z-index:2;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    height:100%;
    max-width:1400px;
    margin:0 auto;
    padding:0 24px;
    padding-top:68px
}
 .hero-content{
    display:none
}
 .hero-badge{
    display:inline-block;
    background:rgba(255,255,255,.2);
    border:1px solid rgba(255,255,255,.5);
    color:#fff;
    font-size:12px;
    font-weight:700;
    letter-spacing:3px;
    text-transform:uppercase;
    padding:7px 18px;
    border-radius:50px;
    margin-bottom:20px;
    backdrop-filter:blur(8px)
}
 .hero-title{
    font-size:clamp(36px,5vw,64px);
    font-weight:900;
    line-height:1.1;
    color:#fff;
    margin-bottom:18px;
    max-width:700px;
    text-shadow:0 2px 20px rgba(0,0,0,.2)
}
 .hero-subtitle{
    font-size:clamp(16px,1.8vw,20px);
    color:rgba(255,255,255,.88);
    margin-bottom:14px;
    font-weight:300;
    max-width:560px
}
 .hero-desc{
    font-size:14px;
    color:rgba(255,255,255,.65);
    margin-bottom:28px;
    letter-spacing:.8px
}
 .hero-specs{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-bottom:16px
}
 .spec-pill{
    display:flex;
    flex-direction:column;
    align-items:center;
    background:rgba(255,255,255,.15);
    border:1px solid rgba(255,255,255,.3);
    border-radius:10px;
    padding:10px 18px;
    font-size:16px;
    font-weight:800;
    color:#fff;
    min-width:76px;
    backdrop-filter:blur(8px)
}
 .spec-pill span{
    font-size:10px;
    color:rgba(255,255,255,.7);
    font-weight:400;
    margin-top:2px;
    letter-spacing:.8px
}
 .hero-rec{
    display:inline-flex;
    align-items:center;
    gap:7px;
    font-size:12px;
    color:rgba(255,255,255,.55);
    letter-spacing:2px;
    margin-bottom:28px
}
 .rec-dot{
    width:7px;
    height:7px;
    background:#f44;
    border-radius:50%;
    animation:blink 1.2s ease-in-out infinite
}
 @keyframes blink{
    0%,100%{
        opacity:1
    }
     50%{
        opacity:.2
    }
}
 .hero-btns{
    display:flex;
    gap:14px;
    flex-wrap:wrap
}
 .slider-arrows{
    position:absolute;
    bottom:48px;
    right:10%;
    z-index:3;
    display:flex;
    gap:10px
}
 .slider-arrow{
    width:44px;
    height:44px;
    background:rgba(255,255,255,.2);
    border:1.5px solid rgba(255,255,255,.5);
    border-radius:50%;
    color:#fff;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .2s,transform .2s;
    backdrop-filter:blur(8px)
}
 .slider-arrow::after{
    content:'';
    display:block;
    width:10px;
    height:10px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor
}
 .slider-arrow-prev::after{
    transform:rotate(-135deg)
}
 .slider-arrow-next::after{
    transform:rotate(45deg)
}
 .slider-arrow:hover{
    background:rgba(255,255,255,.35);
    transform:scale(1.08)
}
 .slider-dots{
    position:absolute;
    bottom:28px;
    left:50%;
    transform:translateX(-50%);
    z-index:3;
    display:flex;
    gap:8px
}
 .slider-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:rgba(255,255,255,.4);
    cursor:pointer;
    transition:background .3s,transform .3s;
    border:none
}
 .slider-dot.active{
    background:#fff;
    transform:scale(1.3)
}
 .slider-progress{
    position:absolute;
    bottom:0;
    left:0;
    height:3px;
    background:rgba(255,255,255,.2);
    width:100%;
    z-index:3
}
 .slider-progress-bar{
    height:100%;
    background:rgba(255,255,255,.8);
    width:0%;
    transition:width .1s linear
}
 .hero-scroll{
    position:absolute;
    bottom:32px;
    left:50%;
    transform:translateX(-50%);
    z-index:3;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:6px;
    color:rgba(255,255,255,.6);
    font-size:12px;
    letter-spacing:2px
}
 .scroll-line{
    width:1px;
    height:36px;
    background:linear-gradient(to bottom,rgba(255,255,255,.6),transparent);
    animation:scrollPulse 2s ease-in-out infinite
}
 @keyframes scrollPulse{
    0%,100%{
        opacity:.4
    }
     50%{
        opacity:1
    }
}
 .categories{
    background:#111;
    overflow:hidden
}
 .categoriesSwiper{
    padding-bottom:0
}
 .categoriesSwiper .cat-banner-grid{
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    grid-template-rows:1fr 1fr;
    height:800px;
    gap:0
}
 .categoriesSwiper .swiper-slide{
    height:auto
}
 .cat-banner-item.cat-wide{
    grid-row:1/3
}
 .cat-banner-item{
    position:relative;
    overflow:hidden;
    cursor:pointer;
    color:inherit;
    text-decoration:none
}
 .cat-banner-item:hover .cat-banner-bg{
    transform:scale(1.06)
}
 .cat-banner-item:hover .cat-banner-overlay{
    background:linear-gradient(90deg,rgba(4,9,18,.54) 0,rgba(7,14,28,.34) 48%,rgba(7,14,28,.12) 100%)
}
 .cat-banner-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    transition:transform .6s ease
}
 .cat-banner-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(4,9,18,.62) 0,rgba(7,14,28,.42) 46%,rgba(7,14,28,.18) 100%);
    transition:background .4s;
    opacity:0
}
 .cat-banner-content{
    position:absolute;
    top:28px;
    left:28px;
    z-index:2
}
 .cat-banner-content h3{
    font-size:clamp(16px,2.2vw,26px);
    color:#fff;
    letter-spacing:2px;
    line-height:1.15;
    text-transform:uppercase
}
 .cat-banner-item.cat-wide .cat-banner-content h3{
    font-size:clamp(26px,3vw,39px)
}
 .cat-banner-shop{
    position:absolute;
    bottom:30px;
    left:30px;
    z-index:2;
    font-size:14px;
    font-weight:800;
    letter-spacing:2px;
    color:#fff;
    text-transform:uppercase;
    display:flex;
    align-items:center;
    gap:6px;
    border-bottom:1.5px solid rgba(255,255,255,.6);
    padding-bottom:3px;
    transition:color .3s,border-color .3s
}
 .categories-pagination{
    display:none
}
 .products{
    padding:90px 0;
    background:#f7f9fa;
    padding-top:45px
}
 .products .container{
    max-width:90%
}
 .product-swiper-wrap{
    position:relative;
    padding:0
}
 .productSwiper{
    overflow:visible;
    border-radius:var(--radius);
    padding-bottom:0!important
}
 .productSwiper .swiper-wrapper{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    align-items:stretch
}
 .productSwiper .swiper-slide{
    height:auto;
    width:auto!important
}
 .product-card{
    display:grid;
    grid-template-rows:auto 1fr;
    height:100%;
    position:relative;
    background:#fff;
    border:none;
    overflow:hidden;
    padding:30px
}
 .product-card-link{
    display:grid;
    grid-template-rows:auto 1fr;
    height:100%;
    min-width:0;
    color:inherit;
    text-decoration:none
}
 .product-img-wrap{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:14px 10px 4px
}
 .product-img{
    width:auto;
    object-fit:contain;
    transition:transform .5s,filter .5s
}
 .product-glow{
    display:none
}
 .product-card:focus-within .product-img,.product-card:hover .product-img{
    transform:scale(1.08) translateY(-8px)
}
 .product-info{
    padding:0 10px;
    display:flex;
    flex-direction:column;
    text-align:center;
    align-items:center;
    justify-content:flex-start;
    gap:0
}
 .product-info h3{
    font-size:20px;
    margin-bottom:0;
    line-height:1.5;
    color:#2b2f3a;
    min-height:calc(20px * 1.5 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .product-hover-link{
    position:absolute;
    left:24px;
    right:24px;
    bottom:22px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    height:max-content;
    padding:10px 20px;
    border-radius:100vh;
    background:var(--primary);
    color:#fff;
    font-size:14px;
    margin:auto;
    text-transform:uppercase;
    opacity:0;
    transform:translateY(18px);
    transition:opacity .28s ease,transform .28s ease,background .22s ease,box-shadow .22s ease;
    pointer-events:none;
    z-index:2
}
 .product-card:focus-within .product-hover-link,.product-card:hover .product-hover-link{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto
}
 .product-hover-link:hover{
    background:#111318
}
 .product-card .btn-primary{
    min-width:146px;
    justify-content:center;
    padding:14px 30px;
    border-radius:999px;
    background:#23242b;
    border:none;
    font-size:15px;
    font-weight:700;
    box-shadow:none
}
 .product-card .btn-primary:hover{
    background:#111318;
    transform:translateY(-1px);
    box-shadow:none
}
 .product-pagination{
    display:none
}
 .product-next,.product-prev{
    display:none!important
}
 .swiper-pagination{
    bottom:0!important
}
 .swiper-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:rgba(29,32,136,.25);
    opacity:1;
    transition:background .3s,transform .3s
}
 .swiper-pagination .swiper-pagination-bullet-active{
    background:var(--primary)
}
 .swiper-button-next,.swiper-button-prev{
    display:flex;
    align-items:center;
    justify-content:center;
    width:46px!important;
    height:46px!important;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(29,32,136,.16);
    border-radius:50%;
    color:var(--primary)!important;
    cursor:pointer;
    z-index:10;
    transition:background .22s ease,color .22s ease,box-shadow .22s ease,transform .22s ease
}
 .swiper-button-next,.swiper-button-prev{
    top:50%!important;
    transform:translateY(-50%)!important
}
 .swiper-button-prev{
    left:0!important
}
 .swiper-button-next{
    right:0!important
}
 .swiper-button-next:hover,.swiper-button-prev:hover{
    background:var(--primary);
    color:#fff!important;
    box-shadow:0 14px 34px rgba(29,32,136,.24);
    transform:translateY(-50%) scale(1.04)!important
}
 .swiper-button-next::after,.swiper-button-prev::after{
    font-size:14px!important;
    font-weight:900
}
 .features{
    position:relative;
    min-height:calc(100vh - var(--nav-height));
    display:flex;
    align-items:center;
    overflow:hidden
}
 .features-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    z-index:0
}
 .features-overlay{
    position:absolute;
    inset:0;
    z-index:1
}
 .features-inner-v2{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1400px;
    margin:0 auto
}
 .features-card-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:30px
}
 .fcard{
    position:relative;
    background:rgba(255,255,255,.8);
    border-radius:5px;
    padding:32px 28px 28px 28px;
    display:grid;
    grid-template-columns:160px 1fr;
    gap:24px;
    align-items:center;
    transition:background .3s,transform .3s,box-shadow .3s;
    cursor:default;
    overflow:hidden
}
 .fcard:hover{
    transform:translateY(-3px)
}
 .fcard-num{
    position:absolute;
    top:12px;
    right:16px;
    font-size:50px;
    font-weight:700;
    color:rgba(255,255,255,.35);
    letter-spacing:1px
}
 .fcard-left{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:18px
}
 .fcard-title{
    font-size:19px;
    font-weight:700;
    line-height:1.3;
    margin:0
}
 .fcard-icon{
    width:64px;
    height:64px
}
 .fcard-right p{
    font-size:16px;
    line-height:1.75;
    margin:0
}
 .scenarios{
    min-height:calc(100vh - var(--nav-height));
    padding:90px 0
}
 .scenario-strip{
    display:flex;
    height:calc(100vh - var(--nav-height) - 210px);
    overflow:hidden
}
 .scenario-item{
    flex:1;
    position:relative;
    background-size:cover;
    background-position:center;
    transition:flex .6s cubic-bezier(.4,0,.2,1);
    cursor:pointer;
    overflow:hidden;
    color:inherit;
    text-decoration:none
}
 .scenario-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(to top,rgba(0,0,0,.8) 0,rgba(0,0,0,.25) 60%,transparent 100%);
    transition:background .4s
}
 .scenario-item:hover .scenario-overlay{
    background:linear-gradient(to top,rgba(0,0,0,.88) 0,rgba(0,0,0,.45) 60%,rgba(0,0,0,.12) 100%)
}
 .scenario-content{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    padding:28px 24px;
    transform:translateY(56px);
    transition:transform .4s
}
 .scenario-item:hover .scenario-content{
    transform:translateY(0)
}
 .scenario-content h3{
    font-size:18px;
    font-weight:700;
    margin-bottom:7px;
    color:#fff
}
 .scenario-content p{
    font-size:14px;
    color:rgba(255,255,255,.8);
    margin-bottom:30px;
    line-height:1.5
}
 .scenario-link{
    font-size:13px;
    color:rgba(255,255,255,.9);
    font-weight:600
}
 .factory{
    position:relative;
    padding:90px 0;
    overflow:hidden;
    background:#0d1b2a
}
 .factory-bg-img{
    position:absolute;
    inset:0;
    background:url('images/factory-bg.webp') center/cover no-repeat;
    opacity:.5;
    z-index:0
}
 .factory-overlay{
    position:absolute;
    inset:0;
    z-index:1
}
 .factory .container{
    position:relative;
    z-index:2
}
 .fstats-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:60px
}
 .fstat-item{
    text-align:center;
    padding:30px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    border-radius:6px;
    backdrop-filter:blur(8px)
}
 .fstat-num{
    font-size:clamp(36px,4vw,52px);
    font-weight:900;
    color:#fff;
    line-height:1;
    display:inline
}
 .fstat-unit{
    font-size:18px;
    font-weight:700;
    color:#fff;
    display:inline;
    margin-left:4px
}
 .fstat-label{
    font-size:14px;
    color:rgba(255,255,255,.55);
    margin-top:8px;
    letter-spacing:.5px
}
 .fservices-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px
}
 .fservice-card{
    background:rgba(255,255,255,.07);
    border:1px solid rgba(255,255,255,.13);
    padding:30px;
    text-align:center;
    transition:background .3s,transform .3s,border-color .3s;
    backdrop-filter:blur(8px);
    border-radius:5px
}
 .fservice-card:hover{
    background:#113e77;
    border-color:#113e77;
    transform:translateY(-6px)
}
 .fservice-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:20px
}
 .fservice-icon img{
    width:62px;
    height:62px;
    object-fit:contain;
    display:block;
    filter:brightness(0) invert(1)
}
 .fservice-card h4{
    font-size:20px;
    color:#fff;
    margin-bottom:10px
}
 .fservice-card p{
    font-size:14px;
    color:#fff;
    line-height:1.6
}
 .blog{
    padding:90px 0;
    background:var(--bg)
}
 .blog-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px
}
 .blog-swiper-wrap{
    position:relative;
    padding-bottom:54px;
    overflow:hidden
}
 .blogSwiper{
    overflow:visible
}
 .blogSwiper .swiper-wrapper{
    align-items:stretch
}
 .blogSwiper .swiper-slide{
    display:flex;
    align-items:stretch;
    height:auto;
    transition:opacity .32s ease,transform .32s ease
}
 .blog-card{
    position:relative;
    width:100%;
    min-height:350px;
    background-color:#e9e3dc;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
    border:none;
    border-radius:0;
    overflow:hidden;
    text-align:center;
    transition:transform .32s ease,opacity .32s ease,box-shadow .32s ease
}
 .blogSwiper .blog-card-link{
    position:absolute;
    inset:0;
    display:block;
    color:inherit;
    text-decoration:none
}
 .blog-card-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0);
    z-index:1;
    transition:all .32s linear
}
 .blog-body{
    position:absolute;
    inset:0;
    z-index:2;
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    padding:30px;
    text-align:center;
    color:#fff;
    opacity:0;
    transition:all .3s linear
}
 .blog-meta{
    font-size:13px;
    margin-bottom:26px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    flex-wrap:wrap
}
 .blog-meta-item{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:8px
}
 .blog-meta-item::before{
    content:'';
    width:15px;
    height:15px;
    background-position:center;
    background-repeat:no-repeat;
    background-size:contain
}
 .blog-meta-author::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a7467' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
    filter:brightness(0) invert(1)
}
 .blog-meta-date::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a7467' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 11h18'/%3E%3C/svg%3E");
    filter:brightness(0) invert(1)
}
 .blog-meta-item+.blog-meta-item::after{
    content:'|';
    position:absolute;
    left:-12px;
    color:#fff
}
 .blog-body p{
    max-width:440px
}
 .blog-link{
    padding-bottom:0
}
 .blog-link:hover{
    color:var(--primary)
}
 .blogSwiper .blog-card:hover .blog-card-overlay{
    background:linear-gradient(180deg,rgba(5,18,35,.16),rgba(5,18,35,.62))
}
 .blogSwiper .blog-card:hover .blog-body{
    opacity:1;
    transform:translateY(0)
}
 .blogSwiper .blog-card:hover .blog-meta-item+.blog-meta-item::after{
    color:rgba(255,255,255,.55)
}
 .blogSwiper .blog-card:hover .blog-meta-item::before{
    filter:brightness(0) invert(1);
    opacity:1
}
 .blogSwiper .blog-card:hover .blog-link{
    color:#fff
}
 .faq-contact-parallax{
    position:relative;
    padding:90px 0;
    overflow:hidden;
    min-height:calc(100vh - var(--nav-height))
}
 .fcp-bg{
    position:absolute;
    inset:-80px 0;
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    will-change:transform;
    z-index:0
}
 .fcp-overlay{
    position:absolute;
    inset:0;
    background:rgb(0 0 0 / 50%);
    z-index:1
}
 .fcp-container{
    position:relative;
    z-index:2
}
 .fcp-layout{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    align-items:start
}
 .fcp-left{
    min-width:0
}
 .faq-list-dark{
    display:flex;
    flex-direction:column;
    gap:14px;
    max-height:calc(100vh - var(--nav-height) - 220px);
    overflow:auto
}
 .faq-list-dark::-webkit-scrollbar{
    width:6px
}
 .faq-list-dark::-webkit-scrollbar-thumb{
    background:rgba(29,32,136,.18);
    border-radius:999px
}
 .faq-list-dark::-webkit-scrollbar-track{
    background:0 0
}
 .faq-item-dark{
    background:#fff;
    overflow:hidden;
    transition:border-color .3s,background .3s;
    border-radius:10px
}
 .faq-q-dark{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:16px 18px;
    background:0 0;
    border:none;
    color:var(--text);
    font-size:16px;
    font-weight:600;
    text-align:left;
    cursor:pointer;
    transition:color .2s
}
 .faq-q-dark:hover{
    color:var(--primary)
}
 .faq-icon{
    font-size:21px;
    flex-shrink:0;
    transition:transform .3s;
    line-height:1
}
 .faq-item-dark.active .faq-icon,.faq-item.active .faq-icon{
    transform:rotate(45deg)
}
 .faq-a{
    display:none;
    overflow:hidden
}
 .faq-item-dark.active .faq-a,.faq-item.active .faq-a{
    padding-bottom:0;
    margin-bottom:14px;
    display:block
}
 .faq-a p{
    padding:0 18px 18px;
    padding-bottom:0;
    font-size:14px;
    line-height:1.6;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .fcp-form-card{
    background:#fff;
    border-radius:10px;
    padding:24px
}
 .fcp-form-card h3{
    font-size:30px;
    font-weight:800;
    margin-bottom:6px;
    color:var(--text);
    line-height:1
}
 .fcp-form-sub{
    margin:10px 0 0;
    font-size:15px;
    line-height:1.6;
    color:#667085;
    margin-bottom:22px
}
 .contact-form{
    display:flex;
    flex-direction:column;
    gap:10px
}
 .form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
}
 .contact-form input,.contact-form select,.contact-form textarea{
    border:1px solid var(--border);
    padding:12px 15px;
    color:var(--text);
    font-size:13px;
    outline:0;
    transition:border-color .2s;
    width:100%;
    font-family:Inter,sans-serif
}
 .contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{
    border-color:var(--primary);
    background:#fff
}
 .contact-form input::placeholder,.contact-form textarea::placeholder{
    color:var(--text-light)
}
 .contact-form select option{
    background:#fff;
    color:var(--text)
}
 .contact-form textarea{
    resize:vertical;
    min-height:185px
}
 .fcp-contact-info{
    display:flex;
    gap:14px;
    flex-wrap:wrap;
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid var(--border)
}
 .fcp-ci{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:15px;
    text-decoration:none;
    transition:opacity .2s
}
 .fcp-ci-icon{
    width:18px;
    height:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 18px
}
 .fcp-ci-icon img{
    width:18px;
    height:18px;
    object-fit:contain;
    display:block;
    filter:brightness(0)
}
 .footer{
    background:#113e77;
    padding:90px 0 30px
}
 .footer-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr 1.5fr;
    gap:44px;
    margin-bottom:44px
}
 .footer-brand .nav-logo{
    display:inline-block;
    margin-bottom:14px;
    color:#fff!important
}
 .footer-brand p{
    font-size:15px;
    color:rgb(255 255 255 / 75%);
    line-height:1.6;
    margin-bottom:22px
}
 .social-links{
    display:flex;
    gap:8px
}
 .social-btn{
    width:30px;
    height:30px;
    overflow:hidden;
    transition:background .2s,border-color .2s,transform .2s
}
 .social-btn img{
    filter:brightness(0) invert(1)
}
 .social-btn:hover{
    transform:translateY(-1px)
}

 .footer-subscribe{
    max-width:360px;
    margin-top:18px
}
 .footer-subscribe-label{
    display:block;
    margin-bottom:10px;
    font-size:14px;
    font-weight:700;
    color:#fff
}
 .footer-subscribe-control{
    display:flex;
    align-items:center;
    gap:8px;
    /* padding:6px; */
    border:1px solid rgba(255,255,255,.18);
    border-radius: 10px;
    background:rgba(255,255,255,.1)
}
 .footer-subscribe input{
    flex:1;
    min-width:0;
    height:40px;
    border:0;
    outline:0;
    padding:0 12px;
    background:transparent;
    color:#fff;
    font-size:14px
}
 .footer-subscribe input::placeholder{
    color:rgba(255,255,255,.62)
}
 .footer-subscribe button{
    flex:0 0 auto;
    height:40px;
    border:0;
    border-radius: 0 10px 10px 0;
    padding: 0 10px;
    background:#fff;
    color:#1d2088;
    font-size:14px;
    font-weight: 600;
    cursor:pointer;
    white-space:nowrap;
    transition:background .2s,transform .2s,box-shadow .2s
}
 .footer-subscribe button:hover{
    background:#eef0fb;
    transform:translateY(-1px);
    box-shadow:0 12px 24px rgba(0,0,0,.16)
}
 .footer-col h4{
    font-size:16px;
    font-weight:700;
    color:#fff;
    margin-bottom:18px
}
 .footer-col ul{
    display:flex;
    flex-direction:column;
    gap:9px
}
 .footer-col a{
    font-size:14px;
    color:rgba(255,255,255,.75);
    transition:color .2s
}
 .footer-col ul li a{
    display:flex;
    align-items:flex-start;
    gap:10px;
    line-height:1.6
}
 .footer-col a:hover{
    color:#fff
}
 .footer-contact-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 25px;
    width:25px;
    height:25px;
    margin-top:3px;
    color:rgba(255,255,255,.72)
}
 .footer-contact-icon img{
    width:18px;
    height:18px;
    object-fit:contain;
    display:block;
    filter:brightness(0) invert(1)
}
 .footer-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding-top:28px;
    border-top:1px solid rgba(255,255,255,.08);
    font-size:15px;
    color:rgba(255,255,255,.35)
}
 .footer-links{
    display:flex;
    gap:20px
}
 .footer-links a{
    color:rgba(255,255,255,.35);
    transition:color .2s
}
 .footer-links a:hover{
    color:rgba(255,255,255,.8)
}
 .video-modal{
    position:fixed;
    inset:0;
    z-index:9000;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    pointer-events:none;
    transition:opacity .3s
}
 .video-modal.open{
    opacity:1;
    pointer-events:all
}
 .modal-overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.7);
    backdrop-filter:blur(8px)
}
 .modal-content{
    position:relative;
    z-index:1;
    background:#fff;
    border:1px solid var(--border);
    border-radius:var(--radius);
    padding:56px 36px;
    text-align:center;
    min-width:380px;
    transform:scale(.9);
    transition:transform .3s;
    box-shadow:0 24px 80px rgba(29,32,136,.25)
}
 .video-modal.open .modal-content{
    transform:scale(1)
}
 .modal-close{
    position:absolute;
    top:14px;
    right:14px;
    background:var(--bg2);
    border:none;
    color:var(--text);
    width:30px;
    height:30px;
    border-radius:50%;
    cursor:pointer;
    font-size:14px;
    transition:background .2s
}
 .modal-close:hover{
    background:var(--border)
}
 .modal-play-icon{
    font-size:45px;
    color:var(--primary);
    margin-bottom:14px
}
 .modal-content p{
    color:var(--text-muted);
    font-size:15px
}
 .back-to-top{
    position:fixed;
    bottom:28px;
    right:28px;
    z-index:999;
    width:42px;
    height:42px;
    background:var(--primary);
    border:none;
    border-radius:50%;
    color:#fff;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
    opacity:0;
    transform:translateY(16px);
    transition:opacity .3s,transform .3s
}
 body.modal-scroll-lock .back-to-top{
    right:calc(28px + var(--scroll-lock-offset,0px))
}
 .side-contact-bar{
    position:fixed;
    right:28px;
    bottom:86px;
    z-index:999;
    display:flex;
    flex-direction:column;
    gap:10px
}
 body.modal-scroll-lock .side-contact-bar{
    right:calc(28px + var(--scroll-lock-offset,0px))
}
 .side-contact-btn{
    width:42px;
    height:42px;
    border-radius:50%;
    background:var(--primary);
    border:none;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    transition:transform .3s,box-shadow .3s,background .3s
}
 .side-contact-btn img,.side-contact-btn-icon{
    width:18px;
    height:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center
}
 .side-contact-btn img{
    object-fit:contain;
    filter:brightness(0) invert(1)
}
 .side-contact-btn-icon svg{
    width:18px;
    height:18px
}
 .side-contact-btn:hover{
    transform:translateY(-3px)
}
 .side-inquiry-btn{
    cursor:pointer
}
 .back-to-top::before{
    content:'';
    display:block;
    width:10px;
    height:10px;
    margin:0 auto;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
    transform:rotate(-45deg)
}
 .back-to-top.visible{
    opacity:1;
    transform:translateY(0)
}
 .back-to-top:hover{
    transform:translateY(-3px)
}
 .sidebar-inquiry-modal{
    position:fixed;
    inset:0;
    z-index:9100;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    pointer-events:none;
    transition:opacity .3s ease
}
 .sidebar-inquiry-modal.open{
    opacity:1;
    pointer-events:auto
}
 .sidebar-inquiry-overlay{
    position:absolute;
    inset:0;
    background:rgba(9,16,39,.58);
    backdrop-filter:blur(10px)
}
 .sidebar-inquiry-panel{
    position:relative;
    z-index:1;
    width:min(560px,calc(100vw - 32px));
    padding:34px 30px 28px;
    border-radius:24px;
    border:1px solid rgba(210,220,240,.9);
    background:linear-gradient(180deg,rgba(255,255,255,.98) 0,#fff 100%);
    box-shadow:0 32px 80px rgba(10,24,64,.24)
}
 .sidebar-inquiry-close{
    position:absolute;
    top:14px;
    right:14px;
    width:34px;
    height:34px;
    border:none;
    border-radius:50%;
    background:#edf2ff;
    color:#1d2088;
    font-size:22px;
    line-height:1;
    cursor:pointer;
    transition:transform .2s ease,background .2s ease
}
 .sidebar-inquiry-close:hover{
    background:#dfe8ff;
    transform:rotate(90deg)
}
 .sidebar-inquiry-head{
    margin-bottom:22px
}
 .sidebar-inquiry-eyebrow{
    margin-bottom:10px;
    color:#1d2088;
    font-size:12px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase
}
 .sidebar-inquiry-head h3{
    margin-bottom:10px;
    font-size:28px;
    line-height:1.15;
    color:#0f172a
}
 .sidebar-inquiry-head p{
    margin:0;
    color:#5b6677;
    font-size:14px;
    line-height:1.75
}
 #SidebarMessage .input{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    margin-bottom:12px
}
 #SidebarMessage input[type=text],#SidebarMessage textarea{
    width:100%;
    border:1px solid rgba(148,163,184,.34);
    border-radius:5px;
    background:#f8fbff;
    padding:14px 16px;
    color:#0f172a;
    font-size:14px;
    outline:0;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease
}
 #SidebarMessage input[type=text]::placeholder,#SidebarMessage textarea::placeholder{
    color:#94a3b8
}
 #SidebarMessage .textarea_box{
    margin-bottom:14px
}
 #SidebarMessage textarea{
    min-height:144px;
    resize:vertical;
    font-family:initial
}
 #SidebarMessage .submit{
    display:flex;
    justify-content:flex-end
}
 .btn_effect4{
    min-height:48px;
    padding:0 24px;
    border:none;
    border-radius:999px;
    background:linear-gradient(135deg,#1d2088 0,#2f56d6 100%);
    color:#fff;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
    transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;
    box-shadow:0 14px 28px rgba(29,32,136,.22)
}
 .btn_effect4:hover{
    transform:translateY(-2px)
}
 .btn_effect4:disabled{
    cursor:not-allowed;
    opacity:.78;
    transform:none
}
 .about-section{
    overflow:hidden
}
 .about-shell{
    padding:90px 0
}
 .about-heading{
    margin-bottom:90px;
    margin-top:60px
}
 .about-showcase{
    display:grid;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:32px;
    align-items:stretch;
    margin-bottom:60px
}
 .about-showcase-copy{
    background:rgba(255,255,255,.86);
    border-radius:10px;
    padding:40px 0;
    display:flex;
    flex-direction:column;
    justify-content:center
}
 .about-showcase-copy h3{
    font-size:clamp(28px,2.8vw,34px);
    text-transform:uppercase;
    line-height:1.6;
    color:var(--text);
    margin-bottom:18px
}
 .about-showcase-copy p{
    font-size:16px;
    line-height:1.8;
    color:#61697a;
    margin-bottom:14px
}
 .about-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:18px
}
 .about-video-btn{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:82px;
    height:82px;
    padding:0;
    background:#fff;
    color:#fff;
    border:0;
    border-radius:50%;
    font-size:0;
    backdrop-filter:blur(16px);
    cursor:pointer;
    transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
    animation:aboutVideoPulse 2.4s ease-in-out infinite
}
 .about-video-btn::after,.about-video-btn::before{
    content:'';
    position:absolute;
    inset:0;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.42);
    animation:aboutVideoRipple 2.8s ease-out infinite
}
 .about-video-btn::after{
    animation-delay:1.4s
}
 .about-play-icon{
    position:relative;
    z-index:2;
    width:54px;
    height:54px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:var(--primary);
    font-size:30px;
    padding-left:4px
}
 @keyframes aboutVideoPulse{
    0%,100%{
        transform:scale(1)
    }
     50%{
        transform:scale(1.03)
    }
}
 @keyframes aboutVideoRipple{
    0%{
        opacity:.72;
        transform:scale(1)
    }
     35%{
        opacity:.38
    }
     100%{
        opacity:0;
        transform:scale(2.35)
    }
}
 .about-showcase-media{
    position:relative;
    min-height:100%;
    padding:26px 0 0 26px;
    background:0 0;
    border:none;
    overflow:visible
}
 .about-showcase-media::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    width:78%;
    height:84%;
    background:linear-gradient(180deg,rgba(29,32,136,.14) 0,rgba(29,32,136,.08) 100%);
    z-index:0
}
 .about-showcase-media::after{
    content:'';
    position:absolute;
    inset:26px 0 0 26px;
    background:rgb(0 0 0 / 15%);
    z-index:2;
    pointer-events:none
}
 .about-showcase-media .about-video-btn{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    z-index:3
}
 .about-showcase-media .about-video-btn:hover{
    transform:translate(-50%,-50%) scale(1.04)
}
 .about-showcase-image{
    position:relative;
    z-index:1;
    width:100%;
    height:auto;
    min-height:560px;
    object-fit:cover;
    display:block;
    box-shadow:0 20px 50px rgba(15,23,42,.08)
}
 .about-gallery-topline{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:28px
}
 .about-gallery-topline h3{
    font-size:clamp(24px,2.3vw,34px);
    color:var(--text)
}
 .about-gallery-nav{
    display:flex;
    align-items:center;
    gap:10px
}
 .about-gallery-nav .about-next,.about-gallery-nav .about-prev{
    position:static;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    margin:0;
    flex-shrink:0
}
 .aboutSwiper{
    padding:0
}
 .aboutSwiper .swiper-wrapper{
    align-items:stretch
}
 .aboutSwiper .swiper-slide{
    height:auto;
    display:flex
}
 .about-tour-card{
    height:100%;
    width:100%;
    display:flex;
    flex-direction:column;
    border-radius:5px;
    overflow:hidden;
    border:1px solid rgba(15,23,42,.06)
}
 .about-tour-card img{
    width:100%;
    height:220px;
    object-fit:cover;
    display:block
}
 .about-tour-copy{
    padding:18px 18px 20px;
    flex:1
}
 .about-tour-copy strong{
    display:block;
    font-size:18px;
    font-weight:800;
    color:var(--text);
    margin-bottom:6px
}
 .about-tour-copy span{
    font-size:15px;
    line-height:1.6;
    color:#61697a
}
 .about-video-modal{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.75);
    z-index:9999;
    align-items:center;
    justify-content:center
}
 .about-video-modal.active{
    display:flex
}
 .about-video-inner{
    position:relative;
    width:90%;
    max-width:900px;
    background:#000;
    border-radius:12px;
    overflow:hidden
}
 .about-video-close{
    position:absolute;
    top:12px;
    right:16px;
    background:rgba(255,255,255,.15);
    border:none;
    color:#fff;
    font-size:26px;
    width:36px;
    height:36px;
    border-radius:50%;
    cursor:pointer;
    z-index:10;
    line-height:1;
    display:flex;
    align-items:center;
    justify-content:center
}
 .about-video-close:hover{
    background:rgba(255,255,255,.3)
}
 .about-video-player{
    position:relative;
    padding-top:56.25%
}
 .about-video-player iframe,.about-video-player video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%
}
 .cert-section{
    padding-bottom:90px
}
.cert-section .swiper-pagination{
    bottom: -50px !important;
}
 .cert-swiper-wrap{
    position:relative
}
 .certSwiper{
    overflow:hidden
}
 .certSwiper .swiper-slide{
    padding-top:6px
}
 .cert-card{
    overflow:hidden;
    height:100%;
    border:1px solid rgba(15,23,42,.06);
    transition:transform .3s linear
}
 .cert-card .cert-img-wrap{
    padding:0;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    transition:transform .3s linear
}
 .cert-card:hover{
    transform:translateY(-6px)
}
 .cert-img-wrap img{
    width:100%;
    height:400px;
    max-width:100%;
    object-fit:cover
}
 .cert-prev{
    left:0
}
 .cert-next{
    right:0
}
 .cert-pagination .swiper-pagination-bullet{
    background:var(--primary);
    opacity:.3
}
 .cert-pagination .swiper-pagination-bullet-active{
    opacity:1
}
 .blog-swiper-wrap{
    position:relative;
    padding-bottom:60px
}
 .blogSwiper{
    overflow:hidden
}
 .blogSwiper .blog-card{
    height:100%;
    display:block;
    background-position:center;
    background-repeat:no-repeat;
    background-size:cover;
    border-radius:0;
    overflow:hidden;
    padding-bottom:0;
    transition:transform .32s ease,opacity .32s ease,box-shadow .32s ease
}
 .blog-pagination .swiper-pagination-bullet{
    background:var(--primary);
    opacity:.3
}
 .blog-pagination .swiper-pagination-bullet-active{
    opacity:1
}
 .nav-search-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    background:rgba(255,255,255,.14);
    border:1.5px solid rgba(255,255,255,.35);
    border-radius:50%;
    color:#fff;
    cursor:pointer;
    transition:background .2s,transform .2s,border-color .2s;
    flex-shrink:0
}
 .nav-search-btn:hover{
    background:rgba(255,255,255,.22);
    transform:scale(1.08)
}
 #navbar.scrolled .nav-search-btn{
    background:var(--primary-xlight);
    border-color:rgba(29,32,136,.2);
    color:var(--primary)
}
 #navbar.scrolled .nav-search-btn:hover{
    background:rgba(29,32,136,.12)
}
 .nav-search-bar{
    position:fixed;
    top:0;
    left:0;
    right:0;
    height:68px;
    background:#fff;
    display:none;
    align-items:center;
    padding:0 32px;
    z-index:1001;
    box-shadow:0 4px 24px rgba(29,32,136,.12);
    border-bottom:1px solid var(--border)
}
 .nav-search-inner{
    display:flex;
    align-items:center;
    gap:12px;
    max-width:1400px;
    margin:0 auto;
    width:100%;
    height:100%
}
 .nav-search-icon{
    color:var(--primary);
    flex-shrink:0;
    opacity:.7
}
 .nav-search-input{
    flex:1;
    border:none;
    outline:0;
    font-size:16px;
    color:var(--text);
    background:0 0;
    caret-color:var(--primary);
    height:100%
}
 .nav-search-input.nav-search-input-error{
    color:#b42318
}
 .nav-search-input::placeholder{
    color:var(--text-light)
}
 .nav-search-input.nav-search-input-error::placeholder{
    color:#b42318
}
 .nav-search-tags{
    display:flex;
    align-items:center;
    gap:6px;
    flex-shrink:0
}
 .nav-search-close{
    display:flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    background:var(--bg3);
    border:none;
    border-radius:50%;
    color:var(--text-muted);
    cursor:pointer;
    transition:background .2s,color .2s,transform .2s;
    flex-shrink:0;
    margin-left:4px
}
 .nav-search-submit{
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    background:var(--primary);
    border:none;
    border-radius:50%;
    color:#fff;
    cursor:pointer;
    transition:background .2s,transform .2s,box-shadow .2s;
    flex-shrink:0;
    box-shadow:0 10px 20px rgba(29,32,136,.2)
}
 .nav-search-submit:hover{
    background:var(--primary-dark);
    transform:translateX(2px);
    box-shadow:0 12px 24px rgba(29,32,136,.26)
}
 .nav-search-close:hover{
    background:rgba(29,32,136,.1);
    color:var(--primary);
    transform:rotate(90deg)
}
 .nav-search-label{
    font-size:12px;
    color:var(--text-muted);
    font-weight:500;
    white-space:nowrap
}
 .nav-search-tag{
    font-size:12px;
    font-weight:600;
    color:var(--primary);
    background:var(--primary-xlight);
    border:1px solid rgba(29,32,136,.15);
    border-radius:50px;
    padding:3px 12px;
    cursor:pointer;
    transition:background .2s,color .2s,transform .15s;
    white-space:nowrap
}
 .nav-search-tag:hover{
    background:var(--primary);
    color:#fff;
    transform:translateY(-1px)
}
 #navbar.search-open .nav-container{
    pointer-events:none;
    transition:opacity .2s ease
}
 #navbar .nav-container{
    transition:opacity .25s ease .1s
}
 .nav-search-overlay{
    position:fixed;
    inset:68px 0 0 0;
    background:rgba(0,0,0,.35);
    z-index:999;
    opacity:0;
    pointer-events:none;
    transition:opacity .3s ease;
    backdrop-filter:blur(2px)
}
 .nav-search-overlay.visible{
    opacity:1;
    pointer-events:all
}
 .search-match-flash{
    box-shadow:0 0 0 3px rgba(29,32,136,.18),0 18px 45px rgba(29,32,136,.18);
    transition:box-shadow .25s ease
}
 .products-list-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px
}
 .products-list-card{
    min-height:100%;
    background:linear-gradient(180deg,#fff 0,#fbfcff 100%);
    border:1px solid rgba(29,32,136,.08);
    border-radius:10px;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    font-family:Inter,sans-serif;
    cursor:pointer;
    transition:transform .2s ease,box-shadow .2s ease
}
 .products-list-card:hover{
    transform:translateY(-2px)
}
 .products-list-card-image{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    border-bottom:1px solid #f8f8f8
}
 .products-list-card-image img{
    position:relative;
    z-index:1;
    width:100%;
    object-fit:contain;
    display:block
}
 .products-list-card-body{
    padding:22px 22px 24px;
    display:flex;
    flex-direction:column;
    flex:1
}
 .products-list-card-content-link{
    display:block;
    color:inherit;
    text-decoration:none
}
 .products-list-card-content-link:focus-visible{
    outline:2px solid #1d2088;
    outline-offset:4px
}
 .products-list-card-title{
    margin:0 0 14px;
    font-size:18px;
    line-height:1.32;
    font-weight:700;
    height:calc(1em * 1.32 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .products-list-card-desc{
    margin:0;
    font-size:15px;
    line-height:1.7;
    color:#666;
    height:calc(1em * 1.7 * 2);
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .products-list-card-divider{
    margin:18px 0;
    height:1px;
    background:rgba(29,32,136,.1)
}
 .products-list-card-meta{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:18px
}
 .products-list-card-model{
    display:flex;
    align-items:baseline;
    gap:8px;
    flex-wrap:wrap
}
 .products-list-card-label{
    font-size:14px;
    color:#666
}
 .products-list-card-value{
    font-size:14px;
    font-weight:700;
    color:#1d2088
}
 .products-list-card-price{
    font-size:16px;
    line-height:1.2;
    font-weight:800;
    color:#111827;
    white-space:nowrap
}
 .products-list-card-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:auto
}
 .products-list-card-btn{
    min-height:44px;
    padding:10px 18px;
    border-radius:999px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-size:15px;
    font-weight:600;
    text-decoration:none;
    transition:transform .2s,background .2s,color .2s,border-color .2s,box-shadow .2s
}
 .products-list-card-btn-primary{
    background:#1d2088;
    color:#fff;
    border:1px solid #1d2088
}
 .products-list-card-btn-primary:hover{
    background:#151870;
    color:#fff;
    transform:translateY(-2px)
}
 .products-list-card-btn-secondary{
    background:0 0;
    color:#1d2088;
    border:1px solid rgba(29,32,136,.16)
}
 .products-list-card-btn-secondary:hover{
    border-color:#1d2088;
    color:#1d2088;
    transform:translateY(-2px)
}
 .products-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .products-hero{
    padding:168px 0 96px;
    position:relative;
    overflow:hidden;
    background:url("/res/ask/images/products-inner-hero-banner-v4.webp") center center/cover no-repeat
}
 .products-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
    pointer-events:none
}
 .products-hero .container,.products-library .container{
    position:relative;
    z-index:1
}
 .products-hero-inner{
    max-width:760px
}
 .products-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:20px;
    color:rgba(255,255,255,.78);
    font-size:14px;
    font-weight:600
}
 .products-breadcrumb a{
    color:rgba(255,255,255,.92)
}
 .products-breadcrumb span{
    color:rgba(255,255,255,.55)
}
 .products-breadcrumb strong{
    color:#fff;
    font-weight:700
}
 .products-hero h1{
    margin:0 0 18px;
    max-width:760px;
    font-size:clamp(34px,5vw,56px);
    line-height:1.08;
    color:#fff
}
 .products-hero p{
    margin:0;
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.86)
}
 .products-library{
    padding:90px 0
}
 .products-section-head{
    margin-bottom:40px
}
 .products-section-head h2{
    margin:0 0 14px;
    font-size:clamp(32px,3vw,36px);
    line-height:1.2;
    color:#111;
    letter-spacing:1px;
    text-transform:uppercase
}
 .products-section-head p{
    margin:0;
    color:#666;
    font-size:16px;
    line-height:1.75
}
 .products-filter-row{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-bottom:28px
}
 .products-filter-chip{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 18px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(29,32,136,.14);
    color:#1d2088;
    font-size:14px;
    font-weight:600;
    transition:background .2s,color .2s,transform .2s,border-color .2s
}
 .products-filter-chip.active,.products-filter-chip:hover{
    background:#eef0fb;
    border-color:#dce1fb;
    color:#1d2088;
    transform:translateY(-1px)
}
 .inside-pagination.products-inside-pagination{
    display:flex;
    justify-content:center;
    margin-top:42px
}
 .products-inside-pagination{
    justify-content:center
}
 .inside-pagination.products-inside-pagination ul{
    justify-content:center;
    width:100%
}
 .inside-pagination.products-inside-pagination ul{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    padding:0;
    margin:0;
    list-style:none
}
 .inside-pagination.products-inside-pagination li a{
    min-width:42px;
    height:42px;
    padding:0 16px;
    border-radius:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid rgba(29,32,136,.16);
    color:#1d2088;
    font-size:15px;
    font-weight:600;
    transition:background .2s,color .2s,transform .2s
}
 .products-inside-pagination li.next-page a,.products-inside-pagination li.pre-page a{
    font-size:18px;
    line-height:1;
    padding:0;
    font-weight:500
}
 .products-inside-pagination li.next-page a span,.products-inside-pagination li.pre-page a span{
    transform:translateY(-1px)
}
 .inside-pagination.products-inside-pagination li a:hover,.inside-pagination.products-inside-pagination li.active a{
    background:#1d2088;
    border-color:#1d2088;
    color:#fff;
    transform:translateY(-2px)
}
 .contact-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .contact-page-hero{
    position:relative;
    padding:168px 0 96px;
    overflow:hidden;
    background:linear-gradient(rgba(0,0,0,.5)),url("/res/ask/images/contact-page-hero-bg.webp") center center/cover no-repeat
}
 .contact-page-hero::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.15);
    pointer-events:none
}
 .contact-page-core .container,.contact-page-hero .container,.contact-page-strip .container{
    position:relative;
    z-index:1
}
 .contact-page-hero-inner{
    max-width:780px
}
 .contact-page-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:22px;
    color:rgba(255,255,255,.74);
    font-size:14px;
    font-weight:600
}
 .contact-page-breadcrumb a{
    color:rgba(255,255,255,.92)
}
 .contact-page-breadcrumb span{
    color:rgba(255,255,255,.46)
}
 .contact-page-breadcrumb strong{
    color:#fff
}
 .contact-page-hero-copy{
    color:#fff
}
 .contact-page-hero-copy h1{
    margin:0 0 18px;
    max-width:760px;
    font-size:clamp(34px,5vw,56px);
    line-height:1.08;
    color:#fff
}
 .contact-page-hero-copy p{
    margin:0;
    max-width:700px;
    font-size:17px;
    line-height:1.85;
    color:rgba(255,255,255,.82)
}
 .contact-page-strip{
    margin-top:-34px;
    padding-bottom:20px
}
 .contact-page-strip-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px
}
 .contact-page-strip-card{
    padding:22px;
    border-radius:18px;
    background:#fff;
    border:1px solid rgba(29,32,136,.08)
}
 .contact-page-strip-card span{
    display:block;
    margin-bottom:10px;
    font-size:13px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#1d2088
}
 .contact-page-strip-card strong{
    display:block;
    margin-bottom:10px;
    font-size:20px;
    line-height:1.3;
    color:#111
}
 .contact-page-strip-link{
    color:inherit;
    text-decoration:none
}
 .contact-page-strip-link:hover{
    color:#1d2088
}
 .contact-page-strip-card p{
    margin:0;
    font-size:14px;
    line-height:1.75;
    color:#666
}
 .contact-page-core{
    padding:72px 0
}
 .contact-page-core{
    padding-top:42px
}
 .contact-page-core-grid{
    display:grid;
    grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
    gap:26px;
    align-items:start
}
 .contact-page-sales-head{
    margin-bottom:22px
}
 .contact-page-sales-head h3{
    margin:0;
    font-size:clamp(30px,3.2vw,30px);
    line-height:1.1
}
 .contact-page-sales-head p{
    margin:10px 0 0;
    font-size:15px;
    line-height:1.6;
    color:#667085
}
 .contact-page-sales-swiper-wrap{
    position:relative
}
 .contact-page-sales-swiper{
    overflow:hidden
}
 .contact-page-sales-swiper .swiper-wrapper{
    align-items:stretch
}
 .contact-page-sales-swiper .swiper-slide{
    height:auto;
    display:flex
}
 .contact-page-sales-card{
    width:100%;
    height:100%;
    padding:20px;
    border-radius:10px;
    border:1px solid rgba(29,32,136,.08);
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center
}
 .contact-page-sales-avatar{
    width:156px;
    height:156px;
    border-radius:50%;
    /* padding:7px; */
    background:linear-gradient(180deg,#eef2fb 0,#f7f9fd 100%);
    box-shadow:inset 0 0 0 1px rgba(29,32,136,.08);
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:18px;
    overflow: hidden;
}
 .contact-page-sales-avatar img{

}
 .contact-page-sales-copy h4{
    margin:0;
    font-size:18px;
    line-height:1.15;
    color:#1f2937
}
 .contact-page-sales-copy p{
    margin:8px 0 0;
    font-size:16px;
    line-height:1.5;
    color:#1d2088;
    font-weight:700
}
 .contact-page-sales-lines{
    width:100%;
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid rgba(29,32,136,.08);
    display:grid;
    gap:12px;
    text-align:left
}
 .contact-page-sales-line{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:10px;
    align-items:center;
    color:#4f5a67;
    font-size:15px;
    line-height:1.55;
    text-decoration:none
}
 .contact-page-sales-line:hover{
    color:#1d2088
}
 .contact-page-sales-line-icon{
    width:32px;
    height:32px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#eef0fb
}
 .contact-page-sales-line-icon img{
    width:16px;
    height:16px;
    object-fit:contain;
    filter:brightness(0)
}
 .contact-page-sales-actions{
    display:flex;
    justify-content:center;
    gap:14px;
    margin-top:22px
}
 .contact-page-sales-action{
    width:46px;
    height:46px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    /*box-shadow:0 10px 22px rgba(29,32,136,.14);*/
    transition:transform .2s,box-shadow .2s,background .2s
}
 .contact-page-sales-action img{
    width:20px;
    height:20px;
    object-fit:contain;
    filter:brightness(0) invert(1)
}
 .contact-page-sales-action:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 26px rgba(29,32,136,.18)
}
 .contact-page-sales-action-email,.contact-page-sales-action-whatsapp{
    background:linear-gradient(180deg,#4b63d4 0,#1d2088 100%)
}
 .contact-page-sales-action-phone{
    background:linear-gradient(180deg,#6a83f0 0,#3658d0 100%)
}
 .contact-page-sales-pagination{
    display:flex;
    justify-content:center;
    margin-top:18px
}
 .contact-page-sales-pagination .swiper-pagination-bullet{
    width:10px;
    height:10px;
    background:rgba(29,32,136,.18);
    opacity:1
}
 .contact-page-sales-pagination .swiper-pagination-bullet-active{
    background:#1d2088;
    transform:scale(1.05)
}
.contact-page-map-section{
    padding-bottom: 90px;
}
 .contact-page-map-shell{
    display:grid;
    grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);
    gap:24px;
    align-items:stretch;
    padding:24px;
    border-radius:24px;
    background:linear-gradient(180deg,#fff 0,#fbfcff 100%);
    border:1px solid rgba(29,32,136,.08);
    /*box-shadow:0 18px 44px rgba(15,23,42,.08)*/
}
 .contact-page-map-copy{
    padding:8px 6px 8px 4px
}
 .contact-page-map-copy h2{
    margin:0 0 14px;
    font-size:30px;
    line-height:1.16;
    color:#111
}
 .contact-page-map-copy p{
    margin:0;
    font-size:16px;
    line-height:1.85;
    color:#666
}
 .contact-page-map-details{
    display:grid;
    gap:16px;
    margin-top:24px
}
 .contact-page-map-details div{
    padding-top:16px;
    border-top:1px solid rgba(29,32,136,.08)
}
 .contact-page-map-details strong{
    display:block;
    margin-bottom:6px;
    font-size:16px;
    line-height:1.4;
    color:#111
}
 .contact-page-map-details span{
    display:block;
    font-size:14px;
    line-height:1.75;
    color:#666
}
 .contact-page-map-frame{
    min-height:420px;
    border-radius:20px;
    overflow:hidden;
    border:1px solid rgba(29,32,136,.08);
    background:#eef0fb
}
 .contact-page-map-frame iframe{
    width:100%;
    height:100%;
    min-height:420px;
    border:0;
    display:block
}
 .about-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .about-page-hero{
    position:relative;
    padding:168px 0 96px;
    min-height:450px;
    overflow:hidden;
    background:linear-gradient(rgba(0,0,0,.15),rgba(0,0,0,.15)),var(--banner-desktop-image,url("/res/ask/images/about_us_banner_skyscraper.webp")) center center/cover no-repeat
}
 .about-page-hero::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.18) 0,rgba(0,0,0,.34) 100%);
    pointer-events:none
}
 .about-page-certs .container,.about-page-cta .container,.about-page-hero .container{
    position:relative;
    z-index:1
}
 .about-page-hero-inner{
    max-width:760px
}
 .about-page-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:22px;
    color:rgba(255,255,255,.72);
    font-size:14px;
    font-weight:600
}
 .about-page-breadcrumb a{
    color:rgba(255,255,255,.9)
}
 .about-page-breadcrumb span{
    color:rgba(255,255,255,.45)
}
 .about-page-breadcrumb strong{
    color:#fff
}
 .about-page-hero h1,
 .about-page-hero-title{
    margin:0 0 18px;
    max-width:760px;
    font-size:clamp(34px,5vw,56px);
    line-height:1.08;
    color:#fff
}
 .about-page-hero p{
    margin:0;
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.82)
}
 .about-page-intro{
    padding:90px 0;
    padding-bottom:0
}
 .about-page-intro-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
    align-items:start
}
 .about-page-intro-copy h2{
    margin:0 0 40px;
    text-align:center;
    font-size:clamp(32px,3vw,44px);
    line-height:1.14;
    color:#111
}
 .about-page-intro-copy p{
    margin:0;
    font-size:16px;
    line-height:1.85;
    color:#666
}
 .about-page-intro-copy p+p{
    margin-top:14px
}
 .about-page-intro-side{
    display:block
}
 .about-page-intro-card{
    border-radius:22px;
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(29,32,136,.08)
}
 .about-page-intro-card img{
    width:100%;
    height:550px;
    object-fit:cover;
    display:block
}
 .about-page-certs,.about-page-cta{
    padding:90px 0
}
 .about-page-cta-shell{
    display:grid;
    grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
    gap:28px;
    align-items:center
}
 .about-page-cta-copy h2,.about-page-heading h2{
    margin:0 0 14px;
    font-size:clamp(32px,3vw,44px);
    line-height:1.14;
    color:#111;
    text-align:center
}
 .about-page-cta-copy p,.about-page-heading p{
    margin:0;
    font-size:16px;
    line-height:1.85;
    color:#666;
    text-align:center
}
 .about-page-heading{
    margin-bottom:60px
}
 .about-page-certs{
    background:linear-gradient(180deg,#fff 0,#f7f9fe 100%)
}
 .about-page-cert-swiper{
    overflow:visible
}
 .about-page-cert-grid.swiper-wrapper{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:18px
}
 .about-page-cert-grid.swiper-wrapper .swiper-slide{
    height:auto;
    width:auto
}
 .about-page-cert-pagination{
    display:none
}
 .about-page-cert-card{
    border-radius:10px;
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(29,32,136,.08)
}
 .about-page-cert-card img{
    width:100%;
    height:100%;
    min-height:260px;
    object-fit:cover;
    display:block
}
 .about-page-cta{
    padding-top:0;
    padding-bottom:90px
}
 .about-page-cta-shell{
    padding:60px 30px;
    border-radius:26px;
    position:relative;
    overflow:hidden;
    background:linear-gradient(135deg,rgba(9,16,38,.82) 0,rgba(20,31,92,.72) 48%,rgba(10,17,40,.84) 100%),url("/res/ask/images/about-cta-bg-generated.webp") center center/cover no-repeat
}
 .about-page-cta-shell::before{
    content:'';
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 18% 24%,rgba(118,155,255,.24),transparent 34%),radial-gradient(circle at 82% 72%,rgba(255,255,255,.1),transparent 24%);
    pointer-events:none
}
 .about-page-cta-shell>*{
    position:relative;
    z-index:1
}
 .about-page-cta-copy h2,.about-page-cta-copy p{
    text-align:left
}
 .about-page-cta-copy h2{
    color:#fff
}
 .about-page-cta-copy p{
    color:rgba(255,255,255,.76)
}
 .about-page-cta-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:14px
}
 .about-page-cta-actions .btn-outline{
    border-color:rgba(255,255,255,.24);
    color:#fff
}
 .about-page-cta-actions .btn-outline:hover{
    border-color:rgba(255,255,255,.5);
    color:#fff
}
 .about-page-heading-center{
    margin-left:auto;
    margin-right:auto;
    text-align:center
}
 .about-page-expo,.about-page-factory-showcase,.about-page-timeline{
    padding:90px 0
}
 .about-page-timeline{
    position:relative;
    overflow:hidden;
    background:linear-gradient(180deg,rgba(255,255,255,.92) 0,rgba(248,251,255,.9) 100%),url("/res/ask/images/about-page-timeline-bg.webp") center bottom/cover no-repeat;
    margin-top:90px
}
 .about-page-timeline .about-page-heading{
    margin-bottom:44px
}
 .about-page-timeline-shell{
    position:relative;
    padding:92px 104px 84px
}
 .about-page-timeline-shell::before{
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:50%;
    transform:translateY(-50%);
    height:2px;
    border-radius:999px;
    background:rgba(29,32,136,.18)
}
 .about-page-timeline-shell::after{
    display:none
}
 .about-page-timeline-swiper-wrap{
    position:relative;
    z-index:1;
    padding:0 18px
}
 .about-page-timeline-swiper{
    overflow:hidden
}
 .about-page-timeline-track{
    position:relative;
    z-index:1;
    align-items:stretch
}
 .about-page-timeline-item{
    height:auto;
    padding:0 15px;
    position:relative;
    display:flex;
    justify-content:center
}
 .about-page-timeline-item::before{
    content:'';
    position:absolute;
    left:10%;
    top:50%;
    width:20px;
    height:20px;
    border-radius:50%;
    transform:translate(-50%,-50%);
    background:#1d2088;
    border:5px solid #fff;
    box-shadow:0 0 0 8px rgba(29,32,136,.12);
    z-index:2
}
 .about-page-timeline-item:nth-child(odd)::before{
    top:49%
}
 .about-page-timeline-card{
    max-width:308px;
    padding:0;
    border-radius:0;
    background:0 0;
    border:0;
    box-shadow:none;
    transition:transform .25s ease,opacity .25s ease
}
 .about-page-timeline-item:hover .about-page-timeline-card{
    transform:translateY(-4px)
}
 .about-page-timeline-item.is-top .about-page-timeline-card{
    margin-bottom:246px
}
 .about-page-timeline-item.is-bottom .about-page-timeline-card{
    margin-top:234px
}
 .about-page-timeline-year{
    font-size:30px;
    font-weight:700;
    margin-bottom:15px
}
 .about-page-timeline-card h3{
    margin:0 0 12px;
    font-size:18px;
    line-height:1.42
}
 .about-page-timeline-card p{
    margin:0;
    font-size:16px;
    line-height:1.7;
    min-height:calc(1.7em * 4);
    display:-webkit-box;
    -webkit-line-clamp:4;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .about-page-timeline-nav{
    position:absolute;
    top:50%;
    z-index:3;
    width:50px;
    height:50px;
    border:0;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#1d2088;
    color:#fff;
    transform:translateY(-50%);
    transition:transform .25s ease,background .25s ease,opacity .25s ease
}
 .about-page-timeline-nav:hover{
    background:#151870;
    transform:translateY(-50%) scale(1.04)
}
 .about-page-timeline-nav.swiper-button-disabled{
    opacity:.55;
    cursor:default
}
 .about-page-timeline-prev{
    left:0
}
 .about-page-timeline-next{
    right:0
}
 .about-page-timeline-controls{
    display:none;
    align-items:center;
    justify-content:center;
    margin-top:24px
}
 .about-page-timeline-pagination{
    position:static!important;
    display:flex;
    align-items:center;
    justify-content:center;
    width:auto!important;
    margin:0!important
}
 .about-page-timeline-pagination .swiper-pagination-bullet{
    width:8px;
    height:8px;
    background:rgba(29,32,136,.24);
    opacity:1
}
 .about-page-timeline-pagination .swiper-pagination-bullet-active{
    background:#1d2088
}
 .about-page-factory-swiper{
    overflow:visible
}
 .about-page-factory-grid.swiper-wrapper{
    display:grid;
    grid-template-columns:repeat(12,1fr);
    gap:18px;
    transform:none
}
 .about-page-factory-grid.swiper-wrapper .swiper-slide{
    height:auto;
    width:auto
}
 .about-page-factory-pagination{
    display:none
}
 .about-page-factory-card{
    position:relative;
    overflow:hidden;
    min-height:280px;
    border-radius:10px;
    background:#dfe8f7;
    border:1px solid #e3ebf7
}
 .about-page-factory-card-large{
    grid-column:span 6;
    grid-row:span 2;
    min-height:580px
}
 .about-page-factory-card:not(.about-page-factory-card-large){
    grid-column:span 3
}
 .about-page-factory-card img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .5s ease
}
 .about-page-factory-card::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(23,32,51,.05) 0,rgba(23,32,51,.5) 100%);
    pointer-events:none
}
 .about-page-factory-card:hover img{
    transform:scale(1.05)
}
 .about-page-factory-overlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:1;
    padding:24px;
    color:#fff
}
 .about-page-factory-overlay h3{
    margin:0;
    font-size:18px;
    line-height:1.2
}
 .about-page-expo{
    padding-top:24px
}
 .about-page-expo-swiper{
    overflow:visible
}
 .about-page-expo-grid.swiper-wrapper{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px
}
 .about-page-expo-grid.swiper-wrapper .swiper-slide{
    height:auto;
    width:auto
}
 .about-page-expo-pagination{
    display:none
}
 .about-page-expo-item{
    overflow:hidden;
    border-radius:10px;
    border:1px solid #e3ebf7;
    background:#fff
}
 .about-page-expo-item img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    display:block;
    transition:transform .4s ease
}
 .about-page-expo-item:hover img{
    transform:scale(1.05)
}
 .show-products-page{
    background:linear-gradient(180deg,#f7f9fe 0,#fff 22%,#f5f8ff 100%)
}
 .show-products-hero{
    position:relative;
    padding:164px 0 92px;
    background:url("/res/ask/images/products-inner-hero-banner-v4.webp") center center/cover no-repeat;
    overflow:hidden
}
 .show-products-hero::before{
    content:'';
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
    pointer-events:none
}
 .show-products-hero .container,.show-products-overview .container{
    position:relative;
    z-index:1
}
 .show-products-hero-inner{
    max-width:860px
}
 .show-products-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:18px;
    font-size:13px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:rgba(255,255,255,.7)
}
 .show-products-breadcrumb a{
    color:rgba(255,255,255,.76)
}
 .show-products-breadcrumb strong{
    font-weight:700;
    color:#fff
}
 .show-products-hero h1{
    margin:0 0 18px;
    font-size:clamp(38px,5vw,62px);
    line-height:1.08;
    color:#fff
}
 .show-products-hero p{
    margin:0;
    max-width:760px;
    font-size:17px;
    line-height:1.85;
    color:rgba(255,255,255,.84)
}
 .show-products-overview{
    padding:84px 0
}
 .show-products-overview{
    padding-top:72px
}
 .show-products-overview-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(340px,.92fr);
    gap:32px;
    align-items:start
}
 .show-products-gallery-main{
    border-radius:28px;
    overflow:hidden
}
 .show-products-gallery-main img{
    width:100%;
    object-fit:cover;
    display:block
}
 .show-products-gallery-thumb{
    border-radius:18px;
    overflow:hidden;
    background:#fff;
    padding:12px
}
 .show-products-gallery-thumb img{
    width:100%;
    height:120px;
    object-fit:contain;
    display:block
}
 .show-products-summary{
    border-radius:28px;
    background:#fff;
    padding:28px
}
 .show-products-summary h1,
 .show-products-summary h2{
    margin:0 0 14px;
    font-size:clamp(30px,3vw,44px);
    line-height:1.14;
    color:#111
}
 .show-products-summary-text{
    margin:0;
    font-size:16px;
    line-height:1.5;
    color:#666;
    margin-bottom:20px
}
 .show-products-specs-table-wrap{
    overflow:hidden
}
 .show-products-specs-table{
    width:100%;
    border-collapse:collapse
}
 .show-products-specs-table td,.show-products-specs-table th{
    padding:18px 20px;
    border-bottom:1px solid #e7edf8;
    text-align:left;
    vertical-align:top
}
 .show-products-specs-table th{
    width:34%;
    font-size:14px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase
}
 .show-products-specs-table td{
    font-size:15px;
    line-height:1.8;
    color:#485066
}
 .show-products-specs-table tr:last-child td,.show-products-specs-table tr:last-child th{
    border-bottom:0
}
 .show-products-page-refined .show-products-detail-wrap .container,.show-products-page-refined .show-products-hero .container,.show-products-page-refined .show-products-overview .container{
    position:relative;
    z-index:1
}
 .show-products-page-refined .show-products-detail-wrap,.show-products-page-refined .show-products-overview{
    padding:90px 0
}
 .show-products-page-refined .show-products-overview{
    padding-bottom:0
}
 .show-products-overview-ref{
    padding-top:72px
}
 .show-products-overview-grid-ref{
    display:grid;
    grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);
    gap:34px;
    align-items:start
}
 .show-products-gallery-shell{
    display:block;
    min-width:0
}
 .show-products-gallery-stage{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
    min-width:0;
    width:100%
}
 .show-products-gallery-swiper{
    position:relative;
    min-width:0;
    width:100%
}
 .show-products-gallery-swiper .swiper-wrapper,.show-products-thumbs-swiper .swiper-wrapper{
    align-items:stretch
}
 .show-products-gallery-swiper .swiper-slide,.show-products-thumbs-swiper .swiper-slide{
    height:auto;
    min-width:0
}
 .show-products-thumbs-shell{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    position:relative
}
 .show-products-thumbs-nav{
    width:44px;
    height:44px;
    display:inline-flex !important;
    align-items:center;   
    justify-content:center;
    border:1px solid #d9e5fb;
    border-radius:999px;
    background:#fff;
    color:#172033;
    cursor:pointer;
    appearance:none;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease
}
 .show-products-thumbs-nav:hover{
    transform:translateY(-1px);
    border-color:#bcd0fb
}
 .show-products-thumbs-nav:focus-visible{
    outline:0;
    border-color:#8fb1ff;
    box-shadow:0 0 0 3px rgba(47,107,255,.14),0 14px 30px rgba(30,60,114,.12)
}
 .show-products-thumbs-nav span{
    font-size:22px;
    line-height:1
}
 .show-products-thumbs-swiper{
    padding:4px 2px 6px;
    min-width:0;
    width:100%
}
 .show-products-gallery-thumb{
    border:1px solid #e3ebf7;
    border-radius:10px;
    overflow:hidden;
    background:#fff;
    cursor:pointer;
    padding:0;
    margin-top:2px;
    appearance:none;
    transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease
}
 .show-products-gallery-thumb:hover{
    transform:translateY(-2px);
    border-color:#d4e1fb
}
 .show-products-gallery-thumb:focus-visible{
    outline:0;
    border-color:#8fb1ff;
    box-shadow:0 0 0 3px rgba(47,107,255,.16),0 16px 36px rgba(30,60,114,.12)
}
 .show-products-thumbs-swiper .swiper-slide-thumb-active .show-products-gallery-thumb{
    border-color:#8fb1ff
}
 .show-products-gallery-thumb img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;
    display:block
}
 .show-products-gallery-main-ref{
    display:block;
    width:100%;
    position:relative;
    border:1px solid #e3ebf7;
    border-radius:20px;
    overflow:hidden;
    cursor:pointer;
    appearance:none
}
 .show-products-gallery-main-ref img{
    width:100%
}
 .show-products-zoom-hint{
    width:40px;
    height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    right:18px;
    bottom:18px;
    border-radius:999px
}
 .show-products-zoom-hint svg{
    width:18px;
    height:18px
}
 .show-products-summary-ref{
    border:1px solid #e3ebf7
}
 .show-products-summary-ref h1,
 .show-products-summary-ref h2{
    font-size:clamp(30px,4vw,30px);
    line-height:1.05;
    margin:0 0 20px
}
 .show-products-meta-ref{
    margin-bottom:20px
}
 .show-products-meta-chip{
    position:relative;
    padding-left:20px;
    margin:10px 0
}
 .show-products-meta-chip:before{
    content:'';
    display:block;
    width:8px;
    height:8px;
    border-radius:10px;
    background:var(--primary-dark);
    position:absolute;
    left:0;
    top:8px
}
 .show-products-actions{
    display:flex;
    gap:15px;
    flex-wrap:wrap;
    margin-bottom:20px
}
 .show-products-cta-btn{
    width:max-content;
    padding:6px 10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    border-radius:999px;
    background:0 0;
    cursor:pointer;
    font-family:inherit;
    font-size:14px;
    font-weight:700;
    line-height:1;
    text-decoration:none;
    border:1px solid transparent;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease
}
 .show-products-cta-btn:hover{
    transform:translateY(-2px)
}
 .show-products-cta-btn-primary{
    background:#1d2088;
    border-color:#1d2088;
    color:#fff
}
 .show-products-cta-btn-whatsapp{
    background:#25d366;
    border-color:#25d366;
    color:#fff
}
 .show-products-cta-btn-whatsapp:hover{
    background:#1ebe5d;
    border-color:#1ebe5d;
    color:#fff
}
 .show-products-cta-btn-secondary{
    background:#fff;
    border-color:rgba(29,32,136,.16);
    color:#1d2088
}
 .show-products-cta-btn-secondary:hover{
    background:#f7f9ff;
    border-color:#1d2088;
    color:#1d2088
}
 .show-products-cta-btn-favorite{
    background:#fff5f7;
    border-color:rgba(190,31,73,.18);
    color:#be1f49;
    cursor:pointer
}
 .show-products-cta-btn-favorite:hover{
    transform:none;
    background:#fff5f7;
    border-color:rgba(190,31,73,.18);
    color:#be1f49
}
 .show-products-cta-btn-icon{
    width:24px;
    height:24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 24px
}
 .show-products-cta-btn-icon svg{
    width:100%;
    height:100%
}
 .show-products-contact-links{
    display:flex;
    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:20px
}
 .show-products-contact-link{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    border-radius:999px;
    color:#1d2088;
    font-size:14px;
    font-weight:700;
    line-height:1.45;
    text-decoration:none;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease
}
 .show-products-contact-link:hover{
    transform:translateY(-1px)
}
 .show-products-contact-icon{
    width:18px;
    height:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 18px
}
 .show-products-contact-icon svg{
    width:100%;
    height:100%
}
 .show-products-share-row{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:14px;
    padding-top:20px;
    border-top:1px solid #edf2fb
}
 .show-products-share-label{
    font-size:18px;
    font-weight:700;
    color:#172033
}
 .show-products-share-icons{
    display:flex;
    gap:10px
}
 .show-products-detail-wrap{
    padding-top:0
}
 .show-products-related-section{
    padding:0 0 84px
}
 .show-products-detail-tabs{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 28px;
    position:sticky;
    top:69px;
    z-index:20;
    padding:14px 0 18px;
    border-bottom:1px solid #e8eefb;
    background:linear-gradient(180deg,rgba(255,255,255,.96) 0,rgba(255,255,255,.92) 78%,rgba(255,255,255,.82) 100%)
}
 .show-products-detail-tab{
    height:40px;
    padding:0 20px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d9e5fb;
    border-radius:999px;
    background:#fff;
    color:#667085;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
    appearance:none;
    transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease,box-shadow .2s ease
}
 .show-products-detail-tab:hover{
    transform:translateY(-1px);
    border-color:#bcd0fb;
    color:#172033
}
 .show-products-detail-tab:focus-visible{
    outline:0;
    border-color:#8fb1ff;
    box-shadow:0 0 0 3px rgba(47,107,255,.14)
}
 .show-products-detail-tab.is-active{
    background:#1d2088;
    border-color:#1d2088;
    color:#fff
}
 .show-products-detail-panel[hidden]{
    display:none!important
}
 .show-products-detail-panel.is-active{
    display:block
}
 .show-products-detail-video{
    margin-bottom:34px;
    border-radius:28px;
    overflow:hidden;
    background:#0f1226
}
 .show-products-detail-video iframe,.show-products-detail-video video{
    width:100%;
    display:block;
    aspect-ratio:16/9;
    object-fit:cover;
    background:#000;
    border:0;
    height:400px
}
 .show-products-detail-heading{
    margin:0 0 40px
}
 .show-products-detail-heading h2{
    margin:0 0 14px;
    font-size:clamp(30px,3vw,44px);
    line-height:1.14;
    color:#111
}
 .show-products-detail-heading p{
    margin:0;
    font-size:16px;
    line-height:1.85;
    color:#666
}
 .show-products-inquiry-section{
    padding:0 0 90px
}
 .show-products-inquiry-shell{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(340px,.9fr);
    gap:26px
}
 .show-products-inquiry-copy{
    margin-bottom:22px
}
 .show-products-inquiry-copy h2{
    margin:0 0 12px;
    font-size:clamp(30px,3vw,42px);
    line-height:1.12;
    color:#111
}
 .show-products-inquiry-copy p{
    margin:0;
    font-size:15px;
    line-height:1.85;
    color:#667085
}
 .show-products-inquiry-visual{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
    align-content:start
}
 .show-products-inquiry-visual img{
    width:100%;
    display:block;
    aspect-ratio:1/1;
    object-fit:cover;
    max-height:600px;
    border-radius:10px;
    border:1px solid #e3ebf7
}
 .show-products-inquiry-form{
    padding:20px;
    border-radius:10px;
    background:#fff;
    border:1px solid #e3ebf7
}
 .show-products-form-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-bottom:14px
}
 .show-products-form-field{
    display:grid;
    grid-template-columns:1fr;
    gap:8px
}
 .show-products-form-field span{
    font-size:13px;
    font-weight:700;
    color:#172033
}
 .show-products-form-field input,.show-products-form-field textarea{
    width:100%;
    padding:14px 16px;
    border:1px solid #d9e5fb;
    border-radius:10px;
    background:#f9fbff;
    color:#172033;
    font-size:14px;
    line-height:1.5;
    outline:0;
    transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
    font-family:Inter
}
 .show-products-form-field input:focus,.show-products-form-field textarea:focus{
    border-color:#8fb1ff;
    box-shadow:0 0 0 3px rgba(47,107,255,.12);
    background:#fff
}
 .show-products-form-field textarea{
    resize:none;
    min-height:132px
}
 .show-products-form-submit{
    margin-top:16px;
    min-height:52px;
    padding:0 24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:999px;
    background:#1d2088;
    color:#fff;
    font-size:15px;
    font-weight:800;
    cursor:pointer;
    transition:transform .2s ease,box-shadow .2s ease,background .2s ease
}
 .show-products-form-submit:hover{
    transform:translateY(-1px);
    background:#171a72
}
 .show-products-related-wrap{
    margin-top:10px
}
 .show-products-related-carousel{
    /*display:grid;*/
    /*grid-template-columns:auto minmax(0,1fr) auto;*/
    /*gap:16px;*/
    /*align-items:center*/
}
 .show-products-related-swiper{
    min-width:0;
    width:100%
}
 .show-products-related-swiper .swiper-slide{
    height:auto
}
 .show-products-related-nav{
    width:46px;
    height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d9e5fb;
    border-radius:999px;
    background:#fff;
    color:#172033;
    cursor:pointer;
    appearance:none;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease
}
 .show-products-related-nav:hover{
    transform:translateY(-1px);
    border-color:#bcd0fb
}
 .show-products-related-nav span{
    font-size:22px;
    line-height:1
}
 .show-products-related-swiper .products-list-card{
    height:100%
}
 .show-products-lightbox{
    position:fixed;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
    background:rgba(7,12,28,.82);
    backdrop-filter:blur(8px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .25s ease,visibility .25s ease;
    z-index:1400
}
 .show-products-lightbox.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto
}
 .show-products-lightbox-dialog{
    max-width:min(1120px,92vw);
    max-height:88vh;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 26px 80px rgba(0,0,0,.28)
}
 .show-products-lightbox-dialog img{
    display:block;
    max-width:100%;
    max-height:88vh;
    background:#fff;
    object-fit:contain
}
 .show-products-lightbox-close{
    position:absolute;
    top:22px;
    right:22px;
    width:46px;
    height:46px;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.92);
    color:#172033;
    font-size:28px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 12px 30px rgba(15,23,42,.2)
}
 .services-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .services-hero{
    padding:168px 0 96px;
    position:relative;
    overflow:hidden;
    background:url("/res/ask/images/services-hero-banner-aosek.webp") center center/cover no-repeat
}
 .services-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
    pointer-events:none
}
 .services-hero .container{
    position:relative;
    z-index:1
}
 .services-hero-inner{
    max-width:780px
}
 .services-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:20px;
    color:rgba(255,255,255,.78);
    font-size:14px;
    font-weight:600
}
 .services-breadcrumb a{
    color:rgba(255,255,255,.92)
}
 .services-breadcrumb span{
    color:rgba(255,255,255,.55)
}
 .services-breadcrumb strong{
    color:#fff;
    font-weight:700
}
 .services-hero h1{
    margin:0 0 18px;
    max-width:760px;
    font-size:clamp(34px, 5vw, 56px);
    line-height:1.08;
    color:#fff
}
 .services-hero p{
    margin:0;
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.86)
}
 .services-hero .services-btn{
    background:#fff;
    color:#1d2088;
    box-shadow:0 14px 30px rgba(8,20,61,.18)
}
 .blog-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .blog-hero{
    padding:168px 0 96px;
    position:relative;
    overflow:hidden;
    background:url("/res/ask/images/downloads-cta-bg.webp") center center/cover no-repeat
}
 .blog-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.15);
    pointer-events:none
}
 .blog-hero .container,.blog-library .container{
    position:relative;
    z-index:1
}
 .blog-hero-inner{
    max-width:760px
}
 .blog-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:20px;
    color:rgba(255,255,255,.78);
    font-size:14px;
    font-weight:600
}
 .blog-breadcrumb a{
    color:rgba(255,255,255,.9)
}
 .blog-breadcrumb span{
    color:rgba(255,255,255,.58)
}
 .blog-breadcrumb strong{
    color:#fff;
    font-weight:700
}
 .blog-hero h1{
    max-width:760px;
    font-size:clamp(34px, 5vw, 56px);
    line-height:1.08;
    margin:0 0 18px;
    color:#fff
}
 .blog-hero p{
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.86);
    margin:0
}
 .blog-library{
    padding:90px 0
}
 .blog-section-head{
    margin-bottom:40px
}
 .blog-section-head h2{
    margin:0 0 14px;
    font-size:clamp(32px, 3vw, 40px);
    font-weight:800;
    line-height:1.2;
    color:#111;
    letter-spacing:1px;
    text-transform:uppercase
}
 .blog-section-head p{
    margin:0;
    color:#666;
    font-size:16px;
    line-height:1.75
}
 .blog-highlight{
    display:grid;
    grid-template-columns:minmax(300px,0.92fr) minmax(0,1.08fr);
    gap:24px;
    margin-bottom:34px;
    padding:22px;
    border-radius:24px;
    background:linear-gradient(180deg,#fff 0,#fbfcff 100%);
    border:1px solid rgba(29,32,136,.08);
    box-shadow:0 18px 48px rgba(15,23,42,.08);
    overflow:hidden
}
 .blog-highlight-media{
    position:relative;
    min-height:360px;
    border-radius:20px;
    overflow:hidden;
    background:#eef0fb
}
 .blog-highlight-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
 .blog-highlight-main{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    color:inherit;
    text-decoration:none
}
 .blog-highlight-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:6px 14px;
    margin-bottom:18px;
    border-radius:999px;
    background:#eef0fb;
    border:1px solid rgba(29,32,136,.08);
    width:fit-content;
    font-size:13px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#1d2088
}
 .blog-highlight-kicker::before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:#1d2088;
    box-shadow:0 0 0 6px rgba(29,32,136,.12)
}
 .blog-highlight-meta{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:0 0 16px
}
 .blog-highlight-meta span{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:6px 12px;
    border-radius:999px;
    background:#f6f8fd;
    border:1px solid rgba(29,32,136,.08);
    color:#5f6f8d;
    font-size:13px;
    font-weight:600
}
 .blog-highlight-meta .blog-highlight-category{
    color:#1d2088
}
 .blog-highlight h3{
    margin:0 0 14px;
    font-size:clamp(28px, 3vw, 28px);
    line-height:1.14;
    color:#111
}
 .blog-highlight p{
    margin:0;
    color:#666;
    font-size:16px;
    line-height:1.8
}
 .blog-highlight-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:22px
}
 .blog-highlight-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:10px 20px;
    border-radius:999px;
    font-size:15px;
    font-weight:700;
    transition:transform .2s,background .2s,color .2s,border-color .2s;
    white-space:nowrap
}
 .blog-highlight-link{
    border:1px solid rgba(29,32,136,.16);
    color:#1d2088;
    background:0 0
}
 .blog-highlight-link:hover{
    transform:translateY(-2px);
    border-color:#1d2088;
    color:#1d2088
}
 .blog-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:24px
}
 .blog-card{
    background:#fff;
    border:none;
    border-radius:20px;
    padding:20px;
    box-shadow:0 10px 30px rgba(15,23,42,.04);
    transition:transform .2s,box-shadow .2s;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:18px;
    height:100%
}
 .blog-grid .blog-card-link{
    display:flex;
    flex-direction:column;
    gap:18px;
    height:100%;
    color:inherit;
    text-decoration:none
}
 .blog-card:hover{
    transform:translateY(-2px)
}
 .blog-thumb{
    display:block;
    position:relative;
    border-radius:18px;
    overflow:hidden;
    aspect-ratio:4/3;
    background:#eef0fb
}
 .blog-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
 .blog-info{
    min-width:0
}
 .blog-meta{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
    margin-bottom:14px;
    font-size:14px;
    line-height:1.6
}
 .blog-meta span{
    display:inline-flex;
    align-items:center;
    gap:8px
}
 .blog-meta-date::before,.blog-meta-read::before{
    content:"";
    width:14px;
    height:14px;
    display:inline-block;
    background-repeat:no-repeat;
    background-position:center;
    background-size:contain;
    opacity:.78;
    flex:0 0 14px
}
 .blog-meta-date::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E")
}
 .blog-meta-read::before{
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpolyline points='12 7 12 12 15 14'/%3E%3C/svg%3E")
}
 .blog-card h3{
    margin:0 0 15px;
    font-size:20px;
    line-height:1.42;
    height:calc(1em * 1.42 * 2);
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden
}
 .blog-card p{
    margin:0;
    line-height:1.8;
    font-size:15px;
    margin-bottom:20px;
    height:calc(1em * 1.8 * 2);
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden
}
 .blog-actions{
    margin-top:auto;
    text-align:left
}
 .blog-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 20px;
    border-radius:50px;
    font-size:15px;
    font-weight:600;
    transition:transform .2s,background .2s,color .2s;
    background:#eef0fb;
    color:#1d2088;
    box-shadow:none;
    white-space:nowrap
}
 .blog-btn:hover{
    color:#1d2088;
    transform:translateY(-2px);
    background:#dfe4fb
}
 .blog-page .downloads-page .inside-pagination:not(.products-inside-pagination){
    display:flex;
    justify-content:flex-start;
    margin-top:42px
}
 .blog-page .downloads-page .inside-pagination:not(.products-inside-pagination) ul{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    padding:0;
    margin:0;
    list-style:none
}
 .blog-page .downloads-page .inside-pagination:not(.products-inside-pagination) li a{
    min-width:42px;
    height:42px;
    padding:0 16px;
    border-radius:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid rgba(29,32,136,.16);
    color:#1d2088;
    font-size:15px;
    font-weight:600;
    box-shadow:none;
    transition:background .2s,color .2s,transform .2s
}
 .blog-page .downloads-page .inside-pagination:not(.products-inside-pagination) li a:hover,.blog-page .downloads-page .inside-pagination:not(.products-inside-pagination) li.active a{
    background:#1d2088;
    border-color:#1d2088;
    color:#fff;
    transform:translateY(-2px)
}
 .blog-page .downloads-page .inside-pagination:not(.products-inside-pagination) li.pre-page a img,.blog-page .inside-pagination:not(.products-inside-pagination) li.next-page a img{
    width:14px;
    height:14px;
    object-fit:contain
}
 .blog-page .downloads-page .inside-pagination:not(.products-inside-pagination) li.pre-page a img{
    transform:rotate(180deg)
}
 .faq-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .faq-hero{
    padding:168px 0 96px;
    position:relative;
    overflow:hidden;
    background:url("/res/ask/images/faq-bg-light.webp") center center/cover no-repeat
}
 .faq-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
    pointer-events:none
}
 .faq-hero .container,.faq-main .container{
    position:relative;
    z-index:1
}
 .faq-hero-inner{
    max-width:780px
}
 .faq-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:20px;
    color:rgba(255,255,255,.78);
    font-size:14px;
    font-weight:600
}
 .faq-breadcrumb a{
    color:rgba(255,255,255,.92)
}
 .faq-breadcrumb span{
    color:rgba(255,255,255,.55)
}
 .faq-breadcrumb strong{
    color:#fff;
    font-weight:700
}
 .faq-hero h1{
    margin:0 0 18px;
    max-width:760px;
    font-size:clamp(34px, 5vw, 56px);
    line-height:1.08;
    color:#fff
}
 .faq-hero p{
    margin:0;
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.86)
}
 .faq-main{
    padding:90px 0
}
 .faq-cta,.faq-section-card{
    border-radius:28px
}
 .faq-sections{
    display:grid;
    gap:24px
}
 .faq-section-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 300px;
    align-items:start;
    gap:28px
}
 .faq-section-content{
    min-width:0
}
 .faq-faq-head{
    text-align:left;
    max-width:900px;
    margin:0 0 28px
}
 .faq-faq-head h3{
    margin:0 0 14px;
    color:#111;
    font-size:clamp(32px, 3.5vw, 50px);
    line-height:1.12
}
 .faq-faq-head p{
    margin:0 auto;
    color:#666;
    font-size:15px;
    line-height:1.85
}
 .faq-section-card .faq-list-dark{
    gap:0;
    max-height:none;
    overflow:visible;
    padding-right:0;
    border:1px solid rgba(15,23,42,.08);
    border-radius:18px;
    background:#fff;
    overflow:hidden
}
 .faq-section-card .faq-item-dark{
    border-radius:0;
    background:#fff;
    border-bottom:1px solid rgba(15,23,42,.08)
}
 .faq-section-card .faq-item-dark:last-child{
    border-bottom:none
}
 .faq-section-card .faq-q-dark{
    min-height:74px;
    padding:22px 26px;
    font-size:16px;
    font-weight:700;
    background:#fff
}
 .faq-section-card .faq-item-dark.active .faq-q-dark{
    background:#fff
}
 .faq-section-card .faq-a{
    padding:0 26px 24px
}
 .faq-section-card .faq-a p{
    color:#4f5a67;
    line-height:1.85;
    font-size:15px
}
 .faq-category-sidebar{
    position:sticky;
    top:110px
}
 .faq-category-panel{
    padding:20px;
    border:1px solid rgba(15,23,42,.08);
    border-radius:18px;
    background:#fff
}
 .faq-category-panel strong{
    display:block;
    margin-bottom:16px;
    color:#111;
    font-size:20px;
    line-height:1.2
}
 .faq-category-panel ul{
    display:grid;
    gap:10px;
    margin:0;
    padding:0;
    list-style:none
}
 .faq-category-panel a{
    display:flex;
    align-items:center;
    min-height:44px;
    padding:10px 14px;
    border-radius:12px;
    background:#f6f8fb;
    color:#344054;
    font-size:14px;
    font-weight:700;
    line-height:1.35;
    transition:background .2s,color .2s,transform .2s
}
 .faq-category-panel a:hover{
    background:#1d2088;
    color:#fff;
    transform:translateX(2px)
}
 .faq-cta{
    margin-top:8px;
    padding:34px;
    background:linear-gradient(135deg,rgba(7,18,56,.74) 0,rgba(19,44,118,.56) 100%),url("/res/ask/images/about-cta-bg-generated.webp") center center/cover no-repeat;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    flex-wrap:wrap;
    position:relative;
    overflow:hidden;
    isolation:isolate
}
 .faq-cta::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(5,12,34,.72) 0,rgba(5,12,34,.34) 46%,rgba(5,12,34,.2) 68%,rgba(5,12,34,.3) 100%);
    z-index:-1
}
 .faq-cta-copy{
    max-width:760px
}
 .faq-cta h3{
    margin:0 0 10px;
    font-size:clamp(28px, 3vw, 40px);
    line-height:1.12;
    color:#fff
}
 .faq-cta p{
    margin:0;
    color:rgba(255,255,255,.86);
    font-size:16px;
    line-height:1.8
}
 .faq-cta-actions{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap
}
 .faq-cta-btn,.faq-cta-btn-outline{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:12px 22px;
    border-radius:999px;
    font-size:14px;
    font-weight:700;
    transition:transform .2s,box-shadow .2s,background .2s,color .2s,border-color .2s
}
 .faq-cta-btn{
    background:#fff;
    color:#1d2088;
    box-shadow:0 12px 26px rgba(10,18,60,.18)
}
 .faq-cta-btn-outline{
    border:1px solid rgba(255,255,255,.42);
    color:#fff;
    background:0 0
}
 .faq-cta-btn-outline:hover,.faq-cta-btn:hover{
    transform:translateY(-1px)
}
 .downloads-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .downloads-hero{
    padding:168px 0 96px;
    position:relative;
    overflow:hidden;
    background:url("/res/ask/images/about-cta-bg-generated.webp") center center/cover no-repeat
}
 .downloads-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.55);
    pointer-events:none
}
 .downloads-hero-inner{
    max-width:760px
}
 .downloads-breadcrumb{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin-bottom:20px;
    color:rgba(255,255,255,.78);
    font-size:14px;
    font-weight:600
}
 .downloads-breadcrumb a{
    color:rgba(255,255,255,.9)
}
 .downloads-breadcrumb span{
    color:rgba(255,255,255,.58)
}
 .downloads-breadcrumb strong{
    color:#fff;
    font-weight:700
}
 .downloads-hero h1{
    max-width:760px;
    font-size:clamp(34px, 5vw, 56px);
    line-height:1.08;
    margin:0 0 18px;
    color:#fff
}
 .downloads-hero p{
    max-width:760px;
    font-size:17px;
    line-height:1.8;
    color:rgba(255,255,255,.86);
    margin:0
}
 .downloads-page .inside-pagination:not(.products-inside-pagination){
    display:flex;
    justify-content:center;
    margin-top:42px
}
 .downloads-page .inside-pagination:not(.products-inside-pagination) ul{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    padding:0;
    margin:0;
    list-style:none
}
 .downloads-page .inside-pagination:not(.products-inside-pagination) li a{
    min-width:42px;
    height:42px;
    padding:0 16px;
    border-radius:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid rgba(29,32,136,.16);
    color:#1d2088;
    font-size:15px;
    font-weight:600;
    box-shadow:none;
    transition:background .2s,color .2s,transform .2s
}
 .downloads-page .inside-pagination:not(.products-inside-pagination) li a:hover,.downloads-page .inside-pagination:not(.products-inside-pagination) li.active a{
    background:#1d2088;
    border-color:#1d2088;
    color:#fff;
    transform:translateY(-2px)
}
 .downloads-page .inside-pagination:not(.products-inside-pagination) li.next-page a img,.downloads-page .inside-pagination:not(.products-inside-pagination) li.pre-page a img{
    width:14px;
    height:14px;
    object-fit:contain
}
 .downloads-page .inside-pagination:not(.products-inside-pagination) li.pre-page a img{
    transform:rotate(180deg)
}
 .downloads-cta .container,.downloads-hero .container,.downloads-library .container{
    position:relative;
    z-index:1
}
 .downloads-library{
    padding:90px 0
}
 .downloads-section-head{
    margin-bottom:40px
}
 .downloads-section-head h2{
    margin:0 0 14px;
    font-size:clamp(32px, 3vw, 40px);
    font-weight:800;
    line-height:1.2;
    color:#111;
    letter-spacing:1px;
    text-transform:uppercase
}
 .downloads-section-head p{
    margin:0;
    color:#666;
    font-size:16px;
    line-height:1.75
}
 .download-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
    margin-top:24px
}
 .download-card{
    background:#fff;
    border:none;
    border-radius:20px;
    padding:24px 30px;
    box-shadow:0 10px 30px rgba(15,23,42,.04);
    transition:transform .2s,box-shadow .2s;
    display:grid;
    grid-template-columns:56px minmax(0,1fr) auto;
    align-items:center;
    column-gap:24px;
    min-height:auto
}
 .download-card:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 36px rgba(17,19,24,.08)
}
 .download-top{
    margin-bottom:0
}
 .download-icon{
    width:52px;
    height:52px;
    border-radius:50px;
    background:#eef0fb;
    color:#1d2088;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    box-shadow:none;
    flex-shrink:0
}
 .download-icon svg{
    width:22px;
    height:22px;
    stroke:currentColor
}
 .download-card h3{
    margin:0;
    font-size:20px;
    line-height:1.5;
    color:#2b2f3a
}
 .download-info{
    min-width:0
}
 .download-meta-inline{
    margin-top:8px;
    display:flex;
    flex-wrap:wrap;
    gap:18px;
    font-size:14px;
    color:#666;
    line-height:1.6
}
 .download-meta-inline span{
    position:relative
}
 .download-actions{
    margin-top:0
}
 .download-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:8px 20px;
    border-radius:50px;
    font-size:15px;
    font-weight:600;
    transition:transform .2s,box-shadow .2s,background .2s,color .2s;
    background:#eef0fb;
    color:#1d2088;
    box-shadow:none
}
 .download-btn:hover{
    color:#1d2088;
    transform:translateY(-2px);
    background:#dfe4fb
}
 .downloads-cta{
    padding:0 0 100px;
    background:linear-gradient(180deg,#f6f8fb 0,#fff 100%)
}
 .downloads-cta-box{
    position:relative;
    overflow:hidden;
    border-radius:24px;
    padding:40px;
    background:#113e77 url("/res/ask/images/downloads-cta-bg.webp") center center/cover no-repeat;
    color:#fff;
    box-shadow:none;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px
}
 .downloads-cta-box::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.42);
    pointer-events:none
}
 .downloads-cta-box>*{
    position:relative;
    z-index:1
}
 .downloads-cta-box h3{
    margin:0 0 12px;
    font-size:clamp(26px, 4vw, 38px);
    color:#fff
}
 .downloads-cta-box p{
    margin:0;
    max-width:760px;
    color:rgba(255,255,255,.86);
    line-height:1.8
}
 .downloads-cta-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    justify-content:flex-end
}
 .downloads-cta-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 22px;
    border-radius:999px;
    font-weight:800
}
 .downloads-cta-primary{
    background:#fff;
    color:#1d2088
}
 .downloads-cta-secondary{
    border:1px solid rgba(255,255,255,.22);
    color:#fff;
    background:rgba(255,255,255,.1)
}
 .products-editorial{
    margin-top:60px
}
 .quotation-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .quotation-page .contact-shell{
    width:min(1400px,calc(100% - 48px));
    margin:0 auto;
    padding:72px 0 96px
}
 .quotation-intro{
    text-align:center;
    margin:0 auto 34px
}
 .quotation-intro h1{
    margin:0 0 12px;
    color:#111;
    font-size:clamp(32px,3.8vw,48px);
    line-height:1.12;
    font-weight:800
}
 .quotation-intro p{
    max-width:820px;
    margin:0 auto;
    color:#666;
    font-size:16px;
    line-height:1.8
}
 .quotation-layout{
    display:grid;
    grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);
    gap:28px;
    align-items:start
}
 .quotation-page .form-card,.quote-selection-card{
    background:#fff;
    border:1px solid rgba(29,32,136,.08);
    border-radius:24px
}
 .quote-selection-card{
    border:0;
    background:0
}
 .quote-card-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:22px
}
 .quotation-page .form-card-header h2,.quote-card-head h2{
    margin:0;
    color:#111;
    font-size:22px;
    line-height:1.25;
    font-weight:800
}
 .quote-list-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px
}
 .quotation-page .btn-continue,.quote-list-actions button{
    border:1px solid rgba(29,32,136,.16);
    background:#eef0fb;
    color:#1d2088;
    border-radius:999px;
    padding:10px 15px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:background .2s,color .2s,border-color .2s,transform .2s
}
 .quotation-page .btn-continue:hover,.quote-list-actions button:hover{
    background:#1d2088;
    border-color:#1d2088;
    color:#fff;
    transform:translateY(-1px)
}
 .quote-empty{
    border:1px dashed rgba(29,32,136,.24);
    border-radius:18px;
    background:#f6f8ff;
    padding:34px 24px;
    text-align:center
}
 .quote-empty h3{
    margin:0 0 8px;
    color:#111;
    font-size:18px;
    font-weight:800
}
 .quote-empty p{
    margin:0 0 18px;
    color:#666;
    font-size:14px;
    line-height:1.7
}
 .quotation-page .btn-cta,.quotation-page .btn-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    border:none;
    border-radius:999px;
    padding:12px 24px;
    background:#1d2088;
    color:#fff;
    font-size:14px;
    font-weight:800;
    cursor:pointer;
    transition:transform .2s,box-shadow .2s,background .2s
}
 .quotation-page .btn-cta:hover,.quotation-page .btn-submit:hover{
    background:#151870;
    transform:translateY(-1px);
    box-shadow:0 12px 26px rgba(29,32,136,.22)
}
 .quote-product-list{
    display:flex;
    flex-direction:column;
    gap:12px
}
 .quote-product-item{
    display:grid;
    grid-template-columns:76px minmax(0,1fr);
    gap:14px;
    align-items:center;
    padding:12px;
    border:1px solid rgba(29,32,136,.08);
    border-radius:16px;
    background:#f8f9fc
}
 .quote-product-media{
    width:76px;
    height:76px;
    border-radius:12px;
    overflow:hidden;
    background:#fff;
    border:1px solid rgba(29,32,136,.08)
}
 .quote-product-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
 .quote-product-body{
    min-width:0
}
 .quote-product-title{
    display:block;
    color:#111;
    font-size:15px;
    font-weight:600;
    line-height:1.35;
    text-decoration:none
}
 .quote-product-actions{
    grid-column:1/-1;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px
}
 .quote-product-select{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#666;
    font-size:14px;
    font-weight:700;
    cursor:pointer
}
 .quote-product-check{
    width:16px;
    height:16px;
    accent-color:#1d2088
}
 .quote-product-remove{
    border:0;
    background:0 0;
    color:#dc2626;
    font-size:13px;
    font-weight:800;
    cursor:pointer;
    padding:4px 0
}
 .quote-list-footer{
    margin-top:20px
}
 .quote-list-footer p{
    margin:0;
    color:#666;
    font-size:14px;
    font-weight:700
}
 .quotation-page .form-card{
    padding:34px 36px 32px
}
 .quotation-page .form-card-header{
    margin-bottom:24px
}
 .quotation-page .form-card-header p{
    color:#666;
    font-size:14px;
    line-height:1.7;
    margin:8px 0 0
}
 .quotation-page .form-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px
}
 .quotation-page .form-group{
    display:flex;
    flex-direction:column;
    gap:7px
}
 .quotation-page .form-group.full{
    grid-column:1/-1
}
 .quotation-page .form-group label{
    color:#111;
    font-size:13px;
    font-weight:800
}
 .quotation-page .form-group label span{
    color:#dc2626
}
 .quotation-page .form-group input,.quotation-page .form-group textarea{
    width:100%;
    border:1px solid rgba(29,32,136,.16);
    border-radius:12px;
    background:#f6f8fb;
    font-size:16px;
    padding:15px;
    outline:0;
    font-family:inherit;
    transition:border-color .2s,box-shadow .2s,background .2s
}
 .quotation-page .form-group textarea{
    min-height:150px;
    resize:vertical
}
 .quotation-page .form-group input:focus,.quotation-page .form-group textarea:focus{
    border-color:#1d2088;
    background:#fff
}
 .quotation-submit{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    margin-top:24px
}
 .single-page{
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:#1f2937
}
 .single-page-content{
    padding:90px 0 100px
}
 .single-page-content .container{
    max-width:1120px
}
 .single-page-article{
    position:relative;
    padding:46px 52px;
    border:1px solid rgba(29,32,136,.08);
    border-radius:24px;
    background:#fff;
    box-shadow:0 18px 48px rgba(15,23,42,.08);
    overflow:hidden
}
 .single-page-article::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,#1d2088,#06b6d4)
}
 .single-page-article>:first-child{
    margin-top:0
}
 .single-page-article>:last-child{
    margin-bottom:0
}
 .single-page-article h2,.single-page-article h3,.single-page-article h4{
    margin:34px 0 14px;
    color:#111;
    font-weight:800;
    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:#4f5a67;
    font-size:16px;
    line-height:1.9
}
 .single-page-article p:has(br){
    padding:18px 20px;
    border-radius:16px;
    background:#f6f8fb;
    border:1px solid rgba(29,32,136,.08)
}
 .single-page-article p:not(:has(a)):not(:has(strong)){
    overflow-wrap:anywhere
}
 .single-page-article p:first-child{
    color:#344054;
    font-size:17px
}
 .single-page-cid-8 .single-page-article p:nth-child(14),.single-page-cid-8 .single-page-article p:nth-child(17),.single-page-cid-8 .single-page-article p:nth-child(19),.single-page-cid-8 .single-page-article p:nth-child(3),.single-page-cid-8 .single-page-article p:nth-child(9){
    margin-top:30px;
    margin-bottom:12px;
    color:#111;
    font-size:20px;
    font-weight:800;
    line-height:1.35
}
 .single-page-article a{
    color:#1d2088;
    font-weight:700;
    text-decoration:underline;
    text-underline-offset:3px
}
 .single-page-article strong{
    color:#111;
    font-weight:800
}
 .single-page-article ol,.single-page-article ul{
    display:grid;
    gap:10px;
    margin:0 0 22px 22px;
    color:#4f5a67;
    font-size:16px;
    line-height:1.8
}
 .single-page-article li::marker{
    color:#1d2088;
    font-weight:800
}
 .single-page-article blockquote{
    margin:28px 0;
    padding:22px 24px;
    border-left:4px solid #1d2088;
    border-radius:0 16px 16px 0;
    background:#f6f8fb;
    color:#344054;
    font-weight:600
}
 .single-page-article table{
    width:100%;
    margin:26px 0;
    border-collapse:collapse;
    overflow:hidden;
    border-radius:16px;
    box-shadow:0 0 0 1px rgba(29,32,136,.08)
}
 .single-page-article td,.single-page-article th{
    padding:14px 16px;
    border-bottom:1px solid rgba(29,32,136,.08);
    color:#4f5a67;
    font-size:15px;
    line-height:1.6;
    text-align:left
}
 .single-page-article th{
    background:#eef0fb;
    color:#111;
    font-weight:800
}
 .single-page-article img{
    max-width:100%;
    height:auto;
    border-radius:18px;
    margin:24px 0
}
 .single-page-title{
    margin:0 0 28px;
    padding-bottom:22px;
    border-bottom:1px solid rgba(29,32,136,.1);
    color:#111;
    font-size:clamp(32px,4vw,48px);
    line-height:1.12;
    font-weight:800
}
 .bd-page{
    --bd-blue:#1d2088;
    --bd-blue-dark:#151870;
    --bd-cyan:#06b6d4;
    --bd-ink:#111827;
    --bd-text:#4f5a67;
    --bd-muted:#788293;
    --bd-line:rgba(29,32,136,.1);
    --bd-soft:#f6f8fb;
    background:linear-gradient(180deg,#fff 0,#f6f8fb 100%);
    color:var(--bd-ink)
}
 .bd-page .container{
    max-width:1400px
}
 .bd-hero{
    padding:90px 0 90px
}
 .bd-hero-grid{
    display:block;
    max-width:90%;
    margin:0 auto;
    text-align:center
}
 .bd-meta{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:20px;
    margin:20px 0 0;
    font-size:16px;
    font-weight:500;
    letter-spacing:0;
    text-transform:none
}
 .bd-meta-item{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:26px;
    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:#777;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round
}
 .bd-hero-copy h1{
    margin:0;
    font-size:clamp(30px,3.2vw,36px);
    line-height:1.22;
    letter-spacing:0
}
 .bd-lead{
    max-width:760px;
    margin:0 0 28px;
    color:#4f5a67;
    font-size:17px;
    line-height:1.8
}
 .bd-author-row{
    display:flex;
    align-items:center;
    gap:14px
}
 .bd-author-mark{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:54px;
    height:54px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--bd-blue),var(--bd-cyan));
    color:#fff;
    font-size:22px;
    font-weight:900;
    box-shadow:0 16px 28px rgba(29,32,136,.18)
}
 .bd-author-row strong{
    display:block;
    color:#111;
    font-size:16px;
    line-height:1.3
}
 .bd-author-row span:not(.bd-author-mark){
    display:block;
    margin-top:3px;
    color:var(--bd-muted);
    font-size:14px;
    line-height:1.45
}
 .bd-hero-media{
    position:relative;
    min-width:0
}
 .bd-hero-media::before{
    content:"";
    position:absolute;
    inset:-18px 18px 18px -18px;
    border-radius:28px;
    background:linear-gradient(135deg,rgba(29,32,136,.14),rgba(6,182,212,.14));
    z-index:0
}
 .bd-hero-media img{
    position:relative;
    z-index:1;
    width:100%;
    height:420px;
    object-fit:cover;
    display:block;
    border-radius:24px;
    box-shadow:0 24px 56px rgba(15,23,42,.14)
}
 .bd-content{
    padding:90px 0 90xp
}
 .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:10px
}
 .bd-body>:first-child{
    margin-top:0
}
 .bd-body>:last-child{
    margin-bottom:0
}
 .bd-body p{
    margin:0 0 20px;
    font-size:16px;
    line-height:1.9;
    overflow-wrap:anywhere
}
 .bd-body h2,.bd-body h3,.bd-body h4{
    color:#111;
    scroll-margin-top:110px
}
 .bd-body h2{
    position:relative;
    margin:44px 0 18px;
    padding-left:18px;
    font-size:30px;
    line-height:1.25;
    font-weight:900
}
 .bd-body h2::before{
    content:"";
    position:absolute;
    left:0;
    top:.2em;
    width:5px;
    height:1.05em;
    border-radius:999px;
    background:linear-gradient(180deg,var(--bd-blue),var(--bd-cyan))
}
 .bd-body h3{
    margin:34px 0 14px;
    font-size:24px;
    line-height:1.3;
    font-weight:800
}
 .bd-body h4{
    margin:28px 0 12px;
    font-size:20px;
    line-height:1.35;
    font-weight:800
}
 .bd-body img{
    width:100%;
    max-width:100%!important;
    height:auto;
    display:block;
    margin:28px 0 12px;
    border-radius:5px
}
 .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)){
    margin-top:-2px;
    color:#6b7280;
    font-size:14px;
    line-height:1.6;
    text-align:center
}
 .bd-body strong{
    color:#111;
    font-weight:800
}
 .bd-body a{
    color:var(--bd-blue);
    font-weight:700;
    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:800
}
 .bd-table-wrap{
    overflow:auto;
    margin:28px 0
}
 .bd-body table{
    width:100%;
    border-collapse:collapse;
    min-width:680px;
    border-radius:16px;
    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:#eef0fb;
    color:#111;
    font-weight:800
}
 .bd-sidebar{
    position:sticky;
    top:96px;
    display:grid;
    gap:18px
}
 .bd-sidecard{
    padding:24px;
    border:1px solid var(--bd-line);
    border-radius:20px;
    background:#fff
}
 .bd-sidecard-tag{
    display:inline-block;
    margin-bottom:12px;
    color:var(--bd-blue);
    font-size:11px;
    font-weight:900;
    letter-spacing:2px;
    text-transform:uppercase
}
 .bd-sidecard h3,.bd-toc-card .sidebar-widget-title{
    margin:0 0 12px;
    font-size:18px;
    line-height:1.25
}
 .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;
    font-size:16px;
    font-weight:500;
    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-toc-fab,.bd-toc-mask{
    display:none
}
 body.bd-toc-open{
    overflow:hidden
}
 .bd-sidecard-dark{
    background:linear-gradient(135deg,#111827 0,#1d2088 100%);
    color:#fff
}
 .bd-sidecard-dark h3,.bd-sidecard-dark p{
    color:#fff
}
 .bd-sidecard-dark .bd-sidecard-tag{
    color:#a8f3ff
}
 .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:14px;
    object-fit:cover;
    background:#eef0fb
}
 .bd-related-item strong{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    line-clamp:2;
    overflow:hidden;
    color:#111;
    font-size:14px;
    line-height:1.45;
    font-weight:800
}
 .bd-related-item span{
    display:block;
    margin-top:5px;
    color:var(--bd-muted);
    font-size:13px
}
 .bd-post-nav{
    padding:0 0 96px
}
 .bd-post-nav-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px
}
 .bd-post-nav-grid:empty{
    display:none
}
 .bd-post-nav-item{
    display:grid;
    gap:10px;
    padding:20px;
    border:1px solid var(--bd-line);
    border-radius:10px;
    background:#fff;
    text-decoration:none;
    transition:transform .2s,border-color .2s,box-shadow .2s
}
 .bd-post-nav-item:hover{
    transform:translateY(-2px);
    border-color:rgba(29,32,136,.22)
}
 .bd-post-nav-empty-item{
    background:#f7f8fb;
    color:#8a93a5;
    box-shadow:none
}
 .bd-post-nav-empty-item:hover{
    transform:none;
    border-color:var(--bd-line);
    box-shadow:none
}
 .bd-post-nav-empty-item .bd-post-nav-label{
    color:#333
}
 .bd-post-nav-next{
    text-align:right
}
 .bd-post-nav-label{
    font-size:12px;
    font-weight:600;
    text-transform:uppercase
}
 .bd-post-nav-item strong{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
    font-size:16px;
    line-height:1.4
}
 
