:root{
    --primary-blue:#0a2540;
    --secondary-blue:#1e3a5f;
    --accent-orange:#ff6b2c;
    --accent-orange-hover:#e55a1f;
    --text-dark:#1a1a1a;
    --text-gray:#4a5568;
    --text-light:#718096;
    --bg-light:#f7fafc;
    --bg-white:#ffffff;
    --border-color:#e2e8f0;
    --shadow-sm:0 2px 4px rgba(0, 0, 0, 0.08);
    --shadow-md:0 4px 12px rgba(0, 0, 0, 0.1);
    --shadow-lg:0 8px 24px rgba(0, 0, 0, 0.12);
    --radius:10px;
    --transition:all 0.3s ease
}
 *{
    margin:0;
    padding:0;
    box-sizing:border-box
}
 html{
    scroll-behavior:smooth
}
 body{
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;
    line-height:1.6;
    color:var(--text-dark);
    background-color:var(--bg-white)
}
 img{
    max-width:100%;
    height:auto;
    display:block
}
 a{
    text-decoration:none;
    color:inherit;
    outline:unset
}
 .container{
    max-width:1400px;
    margin:0 auto;
    padding:0 20px
}
 .header{
    position:fixed;
    top:0;
    left:0;
    right:0;
    background:var(--bg-white);
    box-shadow:var(--shadow-sm);
    z-index:1000;
    transition:all .3s ease
}
 .header.scrolled{
    box-shadow:var(--shadow-md)
}
 .header-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0;
    min-height:72px
}
 .logo{
    display:flex;
    align-items:center;
    gap:15px;
    flex:1;
    max-width:25%;
    color:inherit;
    text-decoration:none
}
 .logo-icon{
    flex-shrink:0
}
 .logo-icon img{
    height:64px;
    width:auto;
    display:block
}
 .logo-tagline{
    font-size:14px;
    font-weight:600;
    color:var(--text-dark);
    margin:0;
    line-height:1.4;
    max-width:230px
}
 .nav{
    display:flex;
    align-items:center;
    gap:40px;
    flex:1;
    justify-content:flex-end
}
 .nav-menu{
    display:flex;
    align-items:center;
    gap:25px
}
 .nav-link{
    color:var(--text-gray);
    font-weight:500;
    font-size:17px;
    transition:color .2s;
    position:relative
}
 .nav-item.active .nav-link,.nav-item:hover .nav-link{
    color:var(--accent-orange)
}
 .nav-item.active .nav-dropdown-trigger,.nav-item:hover .nav-dropdown-trigger{
    color:var(--accent-orange)
}
 .cta-button{
    background:var(--accent-orange);
    color:#fff;
    padding:8px 10px;
    border-radius:5px;
    font-weight:600;
    font-size:14px;
    transition:all .2s;
    display:inline-block;
    border:none;
    cursor:pointer;
    width:max-content
}
 .cta-button:hover{
    background:var(--accent-orange-hover);
    transform:translateY(-1px)
}
 .cta-button-small{
    padding:10px 20px;
    font-size:14px
}
 .mobile-toggle{
    display:none;
    flex-direction:column;
    gap:6px;
    cursor:pointer;
    padding:8px;
    border:none;
    background:0 0
}
 .mobile-toggle span{
    width:28px;
    height:3px;
    background:var(--primary-blue);
    border-radius:2px;
    transition:all .3s
}
 .mobile-toggle.active span:first-child{
    transform:translateY(9px) rotate(45deg)
}
 .mobile-toggle.active span:nth-child(2){
    opacity:0
}
 .mobile-toggle.active span:nth-child(3){
    transform:translateY(-9px) rotate(-45deg)
}
 .hero{
    min-height:100vh;
    background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%);
    color:#fff;
    position:relative;
    overflow:hidden
}
 .hero::before{
    display:none
}
 .hero-swiper{
    width:100%;
    min-height:100vh
}
 .hero-swiper .swiper-slide,.hero-swiper .swiper-wrapper{
    height:auto
}
 .hero-slide{
    position:relative;
    min-height:100vh;
    display:flex;
    align-items:center;
    padding:100px 0 60px;
    overflow:hidden
}
 .hero-slide::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(10,37,64,.78) 0,rgba(30,58,95,.66) 100%);
    z-index:1;
    opacity:.1
}
 .hero-slide-bg{
    position:absolute;
    inset:0;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    opacity:.34;
    transform:scale(1.02);
    z-index:0
}
 .hero-slide .container{
    position:relative;
    z-index:2;
    width:100%
}
 .hero-inner{
    display:flex;
    flex-direction:row;
    gap:60px;
    align-items:center;
    position:relative;
    z-index:1;
    width:100%
}
 .hero-content,.hero-image{
    flex:1 1 0
}
 .hero-content h1,.hero-content .hero-title{
    font-size:48px;
    font-weight:700;
    line-height:1.3;
    margin-bottom:28px;
    letter-spacing:-.5px
}
 .hero-content .subheadline{
    font-size:20px;
    opacity:.95;
    margin-bottom:40px;
    line-height:1.7
}
 .trust-badges{
    display:flex;
    flex-wrap:wrap;
    gap:28px 32px;
    margin-bottom:48px
}
 .trust-badge{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:15px;
    font-weight:500
}
 .trust-badge-icon{
    width:24px;
    height:24px;
    background:rgba(255,255,255,.2);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px
}
 .hero-cta{
    display:flex;
    gap:16px;
    flex-wrap:wrap
}
 .hero-cta .cta-button{
    background:#fff;
    color:var(--primary-blue)
}
 .hero-cta .cta-button:hover{
    background:var(--bg-light);
    transform:translateY(-2px)
}
 .hero-cta .cta-button-secondary{
    background:0 0;
    color:#fff;
    border:2px solid #fff
}
 .hero-cta .cta-button-secondary:hover{
    background:rgba(255,255,255,.1)
}
 .hero-image{
    display:none
}
 .hero-image img{
    width:100%;
    max-width:620px;
    margin-left:auto;
    border-radius:12px;
    box-shadow:var(--shadow-lg)
}
 .hero-pagination.swiper-pagination{
    bottom:32px
}
 .hero-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    border-radius:999px;
    background:rgba(255,255,255,.36);
    opacity:1;
    transition:var(--transition)
}
 .hero-pagination .swiper-pagination-bullet-active{
    width:36px;
    background:var(--accent-orange)
}
 .section{
    padding:90px 0
}
 .section-gray{
    background:var(--bg-light)
}
 .section-header{
    text-align:center;
    margin-bottom:60px
}
 .section-tag{
    display:inline-block;
    background:rgba(255,107,44,.1);
    color:var(--accent-orange);
    padding:6px 16px;
    border-radius:20px;
    font-size:14px;
    font-weight:600;
    margin-bottom:16px;
    text-transform:uppercase;
    letter-spacing:.5px
}
 .section-title{
    font-size:42px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:16px;
    line-height:1.3
}
 .section-subtitle{
    font-size:18px;
    color:var(--text-gray);
    max-width:700px;
    margin:0 auto
}
 .services-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
    gap:32px
}
 .service-card{
    background:var(--bg-white);
    border-radius:12px;
    overflow:hidden;
    transition:all .3s;
    border:1px solid var(--border-color)
}
 .service-card:hover{
    transform:translateY(-4px)
}
 .service-image{
    height:220px;
    overflow:hidden;
    position:relative
}
 .service-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .3s
}
 .service-card:hover .service-image img{
    transform:scale(1.05)
}
 .service-content{
    padding:28px
}
 .service-icon{
    width:56px;
    height:56px;
    background:rgba(10,37,64,.08);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    margin-bottom:20px
}
 .service-icon img{
    width:40px;
    height:40px;
    display:block;
    object-fit:contain
}
 .service-content h3{
    font-size:24px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .service-content p{
    color:var(--text-gray);
    margin-bottom:20px;
    line-height:1.7
}
 .service-features{
    list-style:none;
    margin-bottom:24px
}
 .service-features li{
    padding:8px 0;
    color:var(--text-gray);
    font-size:15px;
    display:flex;
    align-items:center;
    gap:10px
}
 .service-features li::before{
    content:'\2713';
    color:var(--accent-orange);
    font-weight:700;
    font-size:18px
}
 .service-cta{
    width:100%;
    padding:12px;
    background:var(--bg-light);
    color:var(--primary-blue);
    border:2px solid var(--border-color);
    border-radius:6px;
    font-weight:600;
    cursor:pointer;
    transition:all .2s
}
 .service-cta:hover{
    background:var(--primary-blue);
    color:#fff;
    border-color:var(--primary-blue)
}
 .why-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(425px,1fr));
    gap:32px
}
 .why-card{
    background:var(--bg-white);
    padding:32px;
    border-radius:12px;
    text-align:center;
    transition:all .3s;
    border:1px solid var(--border-color)
}
 .why-card:hover{
    border-color:var(--accent-orange)
}
 .why-icon{
    width:72px;
    height:72px;
    background:linear-gradient(135deg,var(--accent-orange) 0,var(--accent-orange-hover) 100%);
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:36px;
    margin:0 auto 24px;
    color:#fff
}
 .why-icon img{
    width:44px;
    height:44px;
    display:block;
    object-fit:contain
}
 .why-card h3{
    font-size:20px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .why-card p{
    color:var(--text-gray);
    line-height:1.7
}
 .stats-section{
    background:var(--primary-blue);
    color:#fff;
    padding:60px 0
}
 .stats-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:40px
}
 .stat-item{
    text-align:center
}
 .stat-number{
    font-size:48px;
    font-weight:700;
    color:var(--accent-orange);
    margin-bottom:8px
}
 .stat-label{
    font-size:16px;
    opacity:.9
}
 .applications-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(400px,1fr));
    gap:24px
}
 .application-card{
    background:var(--bg-white);
    padding:32px;
    border-radius:12px;
    border-left:4px solid var(--accent-orange);
    box-shadow:var(--shadow-sm);
    transition:all .3s
}
 .application-card:hover{
    transform:translateX(4px)
}
 .application-card h3{
    font-size:20px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .application-card p{
    color:var(--text-gray);
    line-height:1.7
}
 .strength-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:32px
}
 .strength-card{
    background:var(--bg-white);
    border-radius:12px;
    overflow:hidden;
    box-shadow:var(--shadow-sm)
}
 .strength-image{
    height:280px;
    overflow:hidden
}
 .strength-image img{
    width:100%;
    height:100%;
    object-fit:cover
}
 .strength-content{
    padding:28px
}
 .strength-content h3{
    font-size:22px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .strength-content p{
    color:var(--text-gray);
    line-height:1.7
}
 .about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:stretch
}
 .about-content h2{
    font-size:38px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:24px;
    line-height:1.3
}
 .about-content p{
    color:var(--text-gray);
    line-height:1.8;
    margin-bottom:20px;
    font-size:17px;
    white-space:pre-wrap
}
 .about-highlights{
    list-style:none;
    margin:32px 0;
    display:none
}
 .about-highlights li{
    padding:12px 0;
    display:flex;
    align-items:center;
    gap:16px;
    font-size:16px;
    color:var(--text-dark)
}
 .about-highlights li::before{
    content:'\2713';
    width:28px;
    height:28px;
    background:rgba(255,107,44,.15);
    color:var(--accent-orange);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    flex-shrink:0
}
 .about-image{
    height:100%;
    display:flex;
    align-items:stretch
}
 .about-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:12px
}
 .trust-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:32px
}
 .trust-card{
    background:var(--bg-white);
    padding:32px;
    border-radius:12px;
    text-align:center;
    box-shadow:var(--shadow-sm)
}
 .trust-card-icon{
    font-size:48px;
    margin-bottom:20px
}
 .trust-card-icon img{
    width:56px;
    height:56px;
    display:block;
    object-fit:contain;
    margin:0 auto
}
 .trust-card h3{
    font-size:18px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:8px
}
 .trust-card p{
    color:var(--text-gray);
    font-size:15px
}
 .testimonials-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
    gap:32px
}
 .testimonial-card{
    background:var(--bg-white);
    padding:36px;
    border-radius:12px;
    box-shadow:var(--shadow-sm);
    position:relative
}
 .testimonial-card::before{
    content:'"';
    position:absolute;
    top:20px;
    left:24px;
    font-size:72px;
    color:rgba(10,37,64,.08);
    font-family:Georgia,serif;
    line-height:1
}
 .testimonial-text{
    color:var(--text-gray);
    line-height:1.8;
    margin-bottom:24px;
    font-style:italic;
    position:relative;
    z-index:1;
    display:-webkit-box;
    -webkit-line-clamp:5;
    line-clamp:5;
    -webkit-box-orient:vertical;
    overflow:hidden;
    min-height:calc(1.8em * 5);
    max-height:calc(1.8em * 5)
}
 .testimonial-author{
    display:flex;
    align-items:center;
    gap:16px
}
 .testimonial-avatar{
    width:56px;
    height:56px;
    background:linear-gradient(135deg,var(--accent-orange) 0,var(--accent-orange-hover) 100%);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-weight:700;
    font-size:20px;
    flex-shrink:0
}
 .testimonial-avatar svg{
    width:36px;
    height:36px;
    stroke:#ffffff;
    fill:none;
    stroke-width:1.5;
    stroke-linecap:round;
    stroke-linejoin:round
}
 .testimonial-info h4{
    font-size:16px;
    font-weight:700;
    color:var(--primary-blue)
}
 .testimonial-info p{
    font-size:14px;
    color:var(--text-gray)
}
 .contact-section{
    background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%);
    color:#fff
}
 .contact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:stretch
}
 .contact-info{
    display:flex;
    flex-direction:column
}
 .contact-info h2{
    font-size:38px;
    font-weight:700;
    margin-bottom:20px
}
 .contact-info p{
    opacity:.9;
    margin-bottom:32px;
    line-height:1.7
}
 .contact-details{
    margin-bottom:32px
}
 .contact-item{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:20px
}
 .contact-item-icon{
    width:48px;
    height:48px;
    background:rgba(255,255,255,.15);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    color:#fff
}
 .contact-item-icon svg{
    width:20px;
    height:20px;
    fill:currentColor
}
 .contact-item-text h4{
    font-size:14px;
    opacity:.8;
    margin-bottom:4px
}
 .contact-item-text p{
    font-size:16px;
    font-weight:600;
    margin:0
}
 .contact-form-wrapper{
    background:var(--bg-white);
    padding:40px;
    border-radius:12px;
    color:var(--text-dark);
    height:100%;
    display:flex;
    flex-direction:column
}
 .contact-form-wrapper h3{
    font-size:26px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:8px
}
 .contact-form-wrapper p{
    color:var(--text-gray);
    margin-bottom:28px
}
 .form-group{
    margin-bottom:0
}
 .form-group label{
    display:block;
    font-weight:600;
    color:var(--text-dark);
    margin-bottom:8px;
    font-size:15px
}
 .form-group input,.form-group select,.form-group textarea{
    width:100%;
    padding:11px 16px;
    border:1px solid var(--border-color);
    border-radius:8px;
    font-size:15px;
    font-family:inherit;
    transition:border-color .2s
}
 .form-group input:focus,.form-group select:focus,.form-group textarea:focus{
    outline:0;
    border-color:var(--accent-orange)
}
 .form-group textarea{
    min-height:120px;
    resize:vertical
}
 .contact-form{
    flex:1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    align-content:start
}
 .contact-form>.input{
    display:contents
}
 .contact-form .form-group{
    display:flex;
    flex-direction:column
}
 .contact-form .form-group:has(textarea){
    grid-column:1/-1;
    flex:1;
    display:flex;
    flex-direction:column
}
 .contact-form>.form-group:nth-child(5){
    grid-column:1/-1
}
 .contact-form>.input>.form-group:last-child{
    grid-column:1/-1
}
 .contact-form .form-privacy,.contact-form button{
    grid-column:1/-1
}
 .contact-form textarea{
    flex:1;
    min-height:120px
}
 .contact-form>.textarea_box{
    grid-column:1/-1
}
 .contact-form>.submit{
    grid-column:1/-1
}
 .contact-form>.submit .form-privacy{
    margin-top:12px;
    margin-bottom:0
}
 .form-submit{
    width:100%;
    padding:16px;
    background:var(--accent-orange);
    color:#fff;
    border:none;
    border-radius:8px;
    font-size:18px;
    font-weight:700;
    cursor:pointer;
    transition:all .2s
}
 .form-submit:hover{
    background:var(--accent-orange-hover);
    transform:translateY(-2px);
    box-shadow:var(--shadow-md)
}
 .form-privacy{
    margin-top:16px;
    font-size:13px;
    color:var(--text-light);
    text-align:center
}
 .form-success{
    display:none;
    text-align:center;
    padding:60px 40px
}
 .form-success-icon{
    width:80px;
    height:80px;
    background:#10b981;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:48px;
    margin:0 auto 24px;
    color:#fff
}
 .form-success h3{
    font-size:26px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .form-success p{
    color:var(--text-gray)
}
 .footer{
    background:var(--primary-blue);
    color:#fff;
    padding:60px 0 24px
}
 .footer-grid{
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr 1.5fr;
    gap:40px;
    margin-bottom:40px
}
 .footer-brand h3{
    font-size:22px;
    font-weight:700;
    margin-bottom:16px
}
 .footer-brand p{
    opacity:.85;
    line-height:1.7;
    margin-bottom:20px
}
 .footer-brand-logo img{
    height:50px;
    margin-bottom:16px
}
 .footer-column h4{
    font-size:16px;
    font-weight:700;
    margin-bottom:20px;
    text-transform:uppercase;
    letter-spacing:.5px
}
 .footer-links{
    list-style:none
}
 .footer-links li{
    margin-bottom:12px
}
 .footer-links a{
    color:rgba(255,255,255,.8);
    font-size:15px;
    transition:color .2s
}
 .footer-links a:hover{
    color:var(--accent-orange)
}
 .footer-bottom{
    border-top:1px solid rgba(255,255,255,.1);
    padding-top:24px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    opacity:.7;
    font-size:16px
}
 .footer-bottom-left p{
    margin:0
}
 .footer-bottom-right{
    display:flex;
    align-items:center;
    gap:24px
}
 .footer-bottom-right a{
    color:rgba(255,255,255,.8);
    text-decoration:none;
    transition:opacity .2s
}
 .footer-bottom-right a:hover{
    opacity:1
}
 .footer-bottom-right span{
    color:rgba(255,255,255,.6)
}
 .floating-cta{
    display:none;
    position:fixed;
    bottom:24px;
    right:24px;
    z-index:999
}
 .floating-cta .cta-button{
    box-shadow:var(--shadow-lg);
    border-radius:50px;
    white-space:nowrap
}
 .floating-contact-bar{
    position:fixed;
    top:50%;
    right:24px;
    transform:translateY(-50%);
    display:flex;
    flex-direction:column;
    gap:14px;
    z-index:998
}
 .floating-contact-entry{
    position:relative;
    display:flex;
    justify-content:flex-end
}
 .floating-contact-trigger{
    width:50px;
    height:50px;
    border:none;
    border-radius:10px;
    padding:0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%);
    cursor:pointer;
    transition:transform .28s ease,box-shadow .28s ease,background .28s ease
}
 .floating-contact-entry.backtop .floating-contact-trigger,.floating-contact-entry.whatsapp .floating-contact-trigger{
    background:linear-gradient(135deg,var(--accent-orange) 0,#ff8d56 100%)
}
 .floating-contact-entry:focus-within .floating-contact-trigger,.floating-contact-trigger:hover{
    transform:translateY(-4px)
}
 .floating-contact-icon{
    width:24px;
    height:24px;
    display:inline-flex;
    align-items:center;
    justify-content:center
}
 .floating-contact-icon img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block
}
 .floating-contact-label{
    position:absolute;
    top:50%;
    right:calc(100% + 10px);
    transform:translateY(-50%) translateX(8px);
    padding:10px 14px;
    border-radius:10px;
    background:rgba(255,255,255,.96);
    color:var(--primary-blue);
    font-size:14px;
    font-weight:700;
    letter-spacing:.01em;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
    pointer-events:none
}
 .floating-contact-entry.active .floating-contact-label,.floating-contact-entry:focus-within .floating-contact-label,.floating-contact-entry:hover .floating-contact-label{
    opacity:1;
    visibility:visible;
    transform:translateY(-50%) translateX(0)
}
 .floating-contact-preview{
    position:absolute;
    top:50%;
    right:calc(100% + 10px);
    transform:translateY(-50%) translateX(14px);
    width:125px;
    opacity:0;
    visibility:hidden;
    transition:opacity .24s ease,transform .24s ease,visibility .24s ease;
    pointer-events:none
}
 .floating-contact-item-preview.active .floating-contact-preview,.floating-contact-item-preview:focus-within .floating-contact-preview,.floating-contact-item-preview:hover .floating-contact-preview{
    opacity:1;
    visibility:visible;
    transform:translateY(-50%) translateX(0);
    pointer-events:auto
}
 .floating-contact-preview-card{
    padding:10px;
    border-radius:10px;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(10,37,64,.08)
}
 .floating-contact-preview-card img{
    display:block;
    width:100%
}
 .floating-contact-backtop{
    opacity:0;
    visibility:hidden;
    transform:translateY(12px);
    pointer-events:none;
    transition:opacity .24s ease,transform .24s ease,visibility .24s ease
}
 .floating-contact-backtop.is-visible{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
    pointer-events:auto
}
 body.mobile-nav-open .floating-contact-bar,body.search-open .floating-contact-bar{
    opacity:0;
    visibility:hidden;
    pointer-events:none
}
 @keyframes fadeInUp{
    from{
        opacity:0;
        transform:translateY(30px)
    }
     to{
        opacity:1;
        transform:translateY(0)
    }
}
 .animate-fade-in{
    animation:fadeInUp .6s ease-out
}
 .usa-logistics-section{
    background:linear-gradient(180deg,var(--bg-light) 0,var(--bg-white) 100%);
    padding:90px 0;
    position:relative;
    overflow:hidden
}
 .usa-logistics-section::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:radial-gradient(ellipse at 30% 20%,rgba(10,37,64,.03) 0,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(255,107,44,.02) 0,transparent 50%);
    pointer-events:none
}
 .usa-logistics-header{
    text-align:center;
    margin-bottom:60px;
    position:relative;
    z-index:1
}
 .usa-logistics-tag{
    display:inline-block;
    background:rgba(255,107,44,.1);
    color:var(--accent-orange);
    padding:6px 16px;
    border-radius:20px;
    font-size:14px;
    font-weight:600;
    margin-bottom:16px;
    text-transform:uppercase;
    letter-spacing:.5px
}
 .usa-logistics-title{
    font-size:42px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:16px;
    letter-spacing:-.5px
}
 .usa-logistics-subtitle{
    font-size:18px;
    color:var(--text-gray);
    font-weight:400
}
 .usa-logistics-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    position:relative;
    z-index:1
}
 .usa-map-card{
    grid-column:1/-1
}
 .usa-map-card{
    background:var(--bg-white);
    border-radius:16px;
    border:1px solid var(--border-color);
    position:relative;
    overflow:hidden
}
 .usa-map-card::before{
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,var(--primary-blue),var(--accent-orange),var(--primary-blue))
}
 .usa-map-header{
    text-align:center;
    margin-bottom:30px
}
 .usa-map-title{
    font-size:24px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:10px
}
 .usa-map-subtitle{
    font-size:14px;
    color:var(--text-gray);
    font-weight:500;
    letter-spacing:1px
}
 .usa-map-container{
    position:relative;
    width:100%;
    overflow:hidden
}
 .usa-map-svg{
    width:100%;
    height:100%
}
 .usa-map-object{
    width:100%;
    height:100%;
    display:block;
    object-fit:fill
}
 .usa-map-svg .state{
    fill:#f8fafc;
    stroke:var(--primary-blue);
    stroke-width:1.5;
    stroke-opacity:0.15;
    transition:fill .3s ease
}
 .usa-map-svg .state:hover{
    fill:#e8f4fc
}
 .usa-map-svg .port-circle{
    fill:var(--primary-blue)
}
 .usa-map-svg .port-glow{
    fill:rgba(74,144,217,0.4)
}
 .usa-map-svg .port-text{
    font-size:11px;
    font-weight:600;
    fill:var(--primary-blue);
    font-family:system-ui,-apple-system,sans-serif;
    text-shadow:0 0 6px rgba(255,255,255,.95)
}
 .map-land{
    fill:#ffffff;
    stroke:var(--primary-blue);
    stroke-width:.8;
    stroke-opacity:0.25
}
 .port-marker{
    position:absolute;
    width:12px;
    height:12px;
    background:var(--primary-blue);
    border-radius:50%;
    transform:translate(-50%,-50%);
    z-index:10;
    box-shadow:0 0 10px rgba(10,37,64,.6),0 0 20px rgba(10,37,64,.4),0 0 30px rgba(10,37,64,.2)
}
 .port-marker::before{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:8px;
    height:8px;
    background:#4a90d9;
    border-radius:50%;
    transform:translate(-50%,-50%);
    box-shadow:0 0 8px rgba(74,144,217,.9);
    animation:portPulse 2s ease-in-out infinite
}
 .port-marker::after{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:20px;
    height:20px;
    background:radial-gradient(circle,rgba(74,144,217,.4) 0,transparent 70%);
    border-radius:50%;
    transform:translate(-50%,-50%);
    animation:portGlow 2s ease-in-out infinite
}
 @keyframes portPulse{
    0%,100%{
        opacity:1;
        transform:translate(-50%,-50%) scale(1)
    }
     50%{
        opacity:.7;
        transform:translate(-50%,-50%) scale(.85)
    }
}
 @keyframes portGlow{
    0%,100%{
        opacity:.3;
        transform:translate(-50%,-50%) scale(1)
    }
     50%{
        opacity:.8;
        transform:translate(-50%,-50%) scale(1.5)
    }
}
 .port-los-angeles{
    bottom:87%;
    left:53.6%
}
 .port-seattle{
    bottom:88%;
    left:81.5%
}
 .port-houston{
    bottom:57.3%;
    left:30%
}
 .port-dallas{
    bottom:60.9%;
    left:40.1%
}
 .port-chicago{
    bottom:52.5%;
    left:58.7%
}
 .port-atlanta{
    bottom:49.4%;
    left:40.1%
}
 .port-new-york{
    bottom:33.3%;
    left:57%
}
 .port-savannah{
    bottom:47.3%;
    left:33.4%
}
 .port-label{
    position:absolute;
    font-size:11px;
    font-weight:600;
    color:var(--primary-blue);
    white-space:nowrap;
    pointer-events:none;
    z-index:15;
    text-shadow:0 0 6px rgba(255,255,255,.95),0 0 3px rgba(255,255,255,.8),0 1px 2px rgba(10,37,64,.1);
    animation:labelBreathing 2.5s ease-in-out infinite;
    letter-spacing:.2px
}
 .port-label::before{
    content:'';
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:6px;
    height:6px;
    background:var(--primary-blue);
    border-radius:50%;
    box-shadow:0 0 6px rgba(74,144,217,.7);
    animation:portPulse 2s ease-in-out infinite
}
 .port-label.left-label{
    padding-left:12px;
    margin-left:-6px
}
 .port-label.left-label::before{
    left:-3px
}
 .port-label.right-label{
    padding-right:12px;
    margin-left:6px
}
 .port-label.right-label::before{
    right:-3px
}
 .port-label.top-label{
    padding-bottom:12px;
    margin-top:-6px;
    transform:translateX(-50%)
}
 .port-label.top-label::before{
    bottom:-3px;
    left:50%;
    transform:translateX(-50%)
}
 .port-label.bottom-label{
    padding-top:12px;
    margin-top:6px;
    transform:translateX(-50%)
}
 .port-label.bottom-label::before{
    top:-3px;
    left:50%;
    transform:translateX(-50%)
}
 @keyframes labelBreathing{
    0%,100%{
        opacity:1
    }
     50%{
        opacity:.7
    }
}
 .label-los-angeles{
    bottom:87%;
    left:53.6%
}
 .label-seattle{
    bottom:88%;
    left:81.5%
}
 .label-houston{
    bottom:57.3%;
    left:30%
}
 .label-dallas{
    bottom:60.9%;
    left:40.1%
}
 .label-chicago{
    bottom:52.5%;
    left:58.7%
}
 .label-atlanta{
    bottom:49.4%;
    left:40.1%
}
 .label-new-york{
    bottom:33.3%;
    left:57%
}
 .label-savannah{
    bottom:47.3%;
    left:33.4%
}
 .map-legend{
    display:flex;
    justify-content:center;
    gap:24px;
    margin-top:20px;
    flex-wrap:wrap
}
 .legend-item{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    color:var(--text-gray)
}
 .legend-dot{
    width:8px;
    height:8px;
    background:var(--primary-blue);
    border-radius:50%
}
 .legend-dot.orange{
    background:var(--accent-orange)
}
 .usa-service-card{
    background:var(--bg-white);
    border-radius:12px;
    padding:28px;
    border:1px solid var(--border-color);
    position:relative;
    overflow:hidden;
    transition:all .3s ease
}
 .usa-service-card::before{
    position:absolute;
    top:0;
    left:0;
    width:4px;
    height:100%
}
 .usa-service-card:hover{
    transform:translateY(-4px)
}
 .usa-card-header{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:20px
}
 .usa-card-icon{
    width:50px;
    height:50px;
    background:var(--primary-blue);
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    color:#fff
}
 .usa-service-card.fcl .usa-card-icon svg{
    stroke:var(--primary-blue)
}
 .usa-service-card.lcl .usa-card-icon svg{
    stroke:var(--accent-orange)
}
 .usa-card-icon svg{
    width:24px;
    height:24px;
    stroke-width:1.5
}
 .usa-card-icon img{
    width:24px;
    height:24px;
    display:block;
    object-fit:contain
}
 .usa-card-title{
    font-size:22px;
    font-weight:700;
    color:var(--primary-blue)
}
 .carrier-logos{
    display:flex;
    gap:10px;
    margin-bottom:16px;
    flex-wrap:wrap
}
 .carrier-logo{
    padding:6px 14px;
    border:1px solid rgba(255,107,44,.2);
    border-radius:6px;
    font-size:16px;
    font-weight:600;
    color:var(--accent-orange);
    letter-spacing:1px;
    transition:all .3s ease
}
 .carrier-logo:hover{
    background:var(--accent-orange);
    color:#fff
}
 .usa-service-features{
    list-style:none;
    margin-bottom:20px
}
 .usa-service-features li{
    padding:8px 0;
    color:var(--text-gray);
    font-size:18px;
    display:flex;
    align-items:center;
    gap:10px
}
 .usa-service-features li::before{
    content:'\2713';
    color:var(--accent-orange);
    font-weight:700;
    font-size:16px
}
 .usa-card-cta{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:12px 24px;
    border-radius:8px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    transition:all .3s ease;
    border:none
}
 .usa-service-card.fcl .usa-card-cta{
    background:var(--primary-blue);
    color:#fff
}
 .usa-service-card.fcl .usa-card-cta:hover{
    background:var(--secondary-blue);
    transform:translateY(-1px)
}
 .usa-service-card.lcl .usa-card-cta{
    background:var(--accent-orange);
    color:#fff
}
 .usa-service-card.lcl .usa-card-cta:hover{
    background:var(--accent-orange-hover);
    transform:translateY(-1px)
}
 .usa-card-cta svg{
    width:16px;
    height:16px;
    transition:transform .3s ease
}
 .usa-card-cta:hover svg{
    transform:translateX(4px)
}
 .quote-button{
    display:inline-flex;
    align-items:center;
    gap:10px
}
 .quote-button-icon,.search-close svg,.search-toggle svg{
    flex-shrink:0
}
 .quote-button-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center
}
 .nav{
    gap:15px
}
 .nav-menu{
    list-style:none
}
 .nav-item{
    position:relative
}
 .nav-dropdown-trigger,.nav-link,.nav-sublink{
    background:0 0;
    border:none;
    cursor:pointer;
    font:inherit
}
 .nav-dropdown-trigger{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:24px;
    height:24px;
    padding:0;
    color:var(--text-gray);
    transition:color .2s ease
}
 .nav-dropdown-trigger:hover{
    color:var(--primary-blue)
}
 .nav-caret{
    width:8px;
    height:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-1px);
    transition:transform .25s ease
}
 .nav-item.has-dropdown.open>.nav-dropdown-trigger .nav-caret,.nav-item.has-dropdown:hover>.nav-dropdown-trigger .nav-caret{
    transform:rotate(225deg) translateY(-1px)
}
 .nav-dropdown{
    position:absolute;
    top:calc(100% + 23px);
    left:0;
    min-width:220px;
    margin:0;
    list-style:none;
    border:1px solid rgba(10,37,64,.08);
    border-radius:5px;
    background:rgba(255,255,255,.98);
    opacity:0;
    visibility:hidden;
    transform:translateY(12px);
    transition:opacity .25s ease,transform .25s ease,visibility .25s ease;
    backdrop-filter:blur(18px);
    z-index:20
}
 .nav-item.has-dropdown.open>.nav-dropdown,.nav-item.has-dropdown:focus-within>.nav-dropdown,.nav-item.has-dropdown:hover>.nav-dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0)
}
 .nav-dropdown li+li{
    margin-top:8px
}
 .nav-subitem{
    position:relative
}
 .nav-subitem-has-submenu{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    column-gap:8px
}
 .nav-subdropdown-trigger{
    width:20px;
    height:20px;
    margin-right:10px
}
 .nav-subitem-has-submenu>.nav-subdropdown-trigger .nav-caret{
    transform:rotate(-45deg) translateY(-1px)
}
 .nav-subitem-has-submenu.open>.nav-subdropdown-trigger .nav-caret,.nav-subitem-has-submenu:hover>.nav-subdropdown-trigger .nav-caret{
    transform:rotate(45deg) translateY(-1px)
}
 .nav-subdropdown{
    top:0;
    left:100%;
    min-width:200px;
    transform:translateX(8px)
}
 .nav-subdropdown::before{
    content:"";
    position:absolute;
    top:0;
    right:100%;
    width:10px;
    height:100%
}
 .nav-subitem.has-dropdown.open>.nav-subdropdown,.nav-subitem.has-dropdown:focus-within>.nav-subdropdown,.nav-subitem.has-dropdown:hover>.nav-subdropdown{
    opacity:1;
    visibility:visible;
    transform:translateX(0)
}
 .nav-sublink{
    display:block;
    padding:10px 12px;
    color:var(--text-gray);
    transition:background .2s ease,color .2s ease,transform .2s ease
}
 .nav-sublink:hover{
    color:var(--primary-blue)
}
 .nav-thirdlink{
    padding-left:18px
}
 .search-toggle{
    width:40px;
    height:40px;
    border-radius:50%;
    border:1px solid rgba(10,37,64,.12);
    background:rgba(10,37,64,.04);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    color:var(--primary-blue);
    transition:transform .2s ease,background .2s ease,box-shadow .2s ease
}
 .search-toggle:hover{
    transform:translateY(-1px)
}
 .search-overlay{
    position:fixed;
    inset:0;
    z-index:2000;
    display:grid;
    place-items:start center;
    padding:96px 20px 20px;
    opacity:0;
    visibility:hidden;
    transition:opacity .25s ease,visibility .25s ease
}
 .search-overlay.active{
    opacity:1;
    visibility:visible
}
 .search-overlay-backdrop{
    position:absolute;
    inset:0;
    background:rgba(10,37,64,.55);
    backdrop-filter:blur(6px)
}
 .search-panel{
    position:relative;
    z-index:1;
    width:min(760px,100%);
    padding:22px
}
 .search-panel label{
    display:block;
    margin-bottom:12px;
    color:var(--primary-blue);
    font-size:14px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase;
    display:none
}
 .search-panel input{
    width:100%;
    height:65px;
    padding:0 72px 0 20px;
    border-radius:10px;
    border:1px solid rgba(10,37,64,.12);
    font-size:16px;
    color:var(--text-dark);
    outline:0
}
.search-panel .bnts{
    display: none;
}
 .search-close{
    position:absolute;
    top:0;
    right:0;
    width:35px;
    height:35px;
    border-radius:50%;
    border:none;
    background:#fff;
    color:var(--primary-blue);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer
}
 body.search-open{
    overflow:hidden
}
 .section-swiper{
    overflow:hidden
}
 .section-swiper .swiper-wrapper{
    align-items:stretch
}
 .section-swiper .swiper-slide{
    height:auto;
    display:flex
}
 .section-swiper .news-card,.section-swiper .service-card,.section-swiper .testimonial-card{
    width:100%;
    height:100%
}
 .section-swiper .swiper-pagination{
    bottom:0!important
}
 .section-swiper .swiper-pagination-bullet{
    width:10px;
    height:10px;
    background:rgba(10,37,64,.2);
    opacity:1
}
 .section-swiper .swiper-pagination-bullet-active{
    background:var(--accent-orange);
    transform:scale(1.15)
}
 .news-section{
    background:linear-gradient(180deg,#fff 0,#f7fafc 100%)
}
 .news-section .swiper{
    padding-bottom:50px
}
 .news-card{
    background:var(--bg-white);
    border-radius:20px;
    overflow:hidden;
    border:1px solid var(--border-color);
    box-shadow:var(--shadow-sm);
    transition:transform .3s ease,box-shadow .3s ease
}
 .news-card:hover{
    transform:translateY(-6px);
    box-shadow:var(--shadow-lg)
}
 .news-card-image{
    position:relative;
    overflow:hidden;
    aspect-ratio:4/3
}
 .news-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .4s ease
}
 .news-card:hover .news-card-image img{
    transform:scale(1.06)
}
 .news-card-content{
    padding:24px
}
 .news-meta{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:14px;
    color:var(--text-gray);
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.08em
}
 .news-card h3{
    font-size:22px;
    line-height:1.35;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .news-card p{
    color:var(--text-gray);
    margin-bottom:18px
}
 .news-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--accent-orange);
    font-weight:700
}
 .news-link span{
    transition:transform .2s ease
}
 .news-link:hover span{
    transform:translateX(4px)
}
 .section-remark{
    font-size:18px;
    color:var(--text-gray);
    max-width:80%;
    margin:0 auto
}
 .news-card-link,.service-card-link,.testimonial-card-link,.usa-service-card-link{
    text-decoration:none;
    color:inherit;
    display:block
}
 .news-title,.service-title{
    font-size:inherit;
    font-weight:inherit;
    color:inherit
}
 .news-summary,.service-summary,.usa-card-summary{
    color:var(--text-gray);
    line-height:1.7
}
 .service-card-link{
    height:100%
}
 .service-card-link .service-content{
    display:flex;
    flex-direction:column;
    height:100%
}
 .service-card-link .service-cta{
    margin-top:auto
}
 .service-card-link:hover .service-cta{
    background:var(--primary-blue);
    color:#fff;
    border-color:var(--primary-blue)
}
 .usa-logistics-header .section-title{
    color:var(--primary-blue)
}
 .usa-logistics-header .section-remark{
    color:var(--text-gray)
}
 .usa-service-card-link{
    height:100%
}
 .usa-card-summary{
    margin-bottom:16px;
    font-size:16px
}
 .testimonial-card-link{
    display:block;
    height:100%
}
 .news-card-link{
    height:100%
}
 .news-card-link .blog-card-body,.news-card-link .news-card-content{
    display:flex;
    flex-direction:column;
    height:100%
}
 .news-swiper .blog-card{
    background:#fff;
    border:1px solid var(--border-color);
    border-radius:16px;
    overflow:hidden;
    transition:box-shadow .25s,transform .25s;
    text-decoration:none;
    color:inherit;
    height:100%
}
 .news-swiper .blog-card:hover{
    transform:translateY(-4px)
}
 .news-swiper .blog-card-img{
    position:relative;
    overflow:hidden;
    height:210px
}
 .news-swiper .blog-card-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .5s ease
}
 .news-swiper .blog-card:hover .blog-card-img img{
    transform:scale(1.04)
}
 .news-swiper .blog-card-body{
    padding:24px 26px
}
 .news-swiper .blog-card-meta{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:14px
}
 .news-swiper .blog-cat-tag{
    display:inline-block;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--accent-orange);
    background:#fff4ef;
    padding:4px 12px;
    border-radius:20px
}
 .news-swiper .blog-meta-date{
    font-size:12px;
    font-weight:500;
    color:var(--text-light)
}
 .news-swiper .blog-card-title{
    font-size:17px;
    font-weight:700;
    color:var(--primary-blue);
    line-height:1.4;
    margin-bottom:12px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .news-swiper .blog-card-excerpt{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.75;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    margin-bottom:20px;
    flex:1
}
 .news-swiper .blog-card-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    padding-top:16px;
    border-top:1px solid var(--border-color)
}
 .news-swiper .blog-author{
    font-size:13px;
    font-weight:600;
    color:var(--text-light)
}
 .news-swiper .blog-read-more{
    display:inline-flex;
    align-items:center;
    gap:7px;
    font-size:14px;
    font-weight:700;
    color:var(--accent-orange);
    text-decoration:none
}
 .news-swiper .blog-read-more svg{
    width:16px;
    height:16px;
    stroke:currentColor;
    fill:none;
    stroke-width:2.5;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .2s
}
 .news-swiper .blog-card:hover .blog-read-more svg{
    transform:translateX(4px)
}
 .application-card-link,.strength-card-link,.trust-card-link,.why-card-link{
    text-decoration:none;
    color:inherit;
    display:block
}
 .contact-remark,.contact-title{
    color:#fff
}
 .contact-remark{
    max-width:none;
    margin:0 0 32px
}
 .strength-card-link{
    height:100%
}
 .strength-card-link .strength-content{
    height:100%
}
 .contact-tag{
    background:rgba(255,255,255,.2);
    color:#fff
}
 .about-title{
    color:var(--primary-blue)
}
 .footer-contact-list{
    display:flex;
    flex-direction:column;
    gap:14px
}
 .footer-contact-list li.footer-contact-item{
    margin-bottom:0
}
 .footer-contact-item{
    display:flex;
    align-items:center;
    gap:12px;
    color:rgba(255,255,255,.88);
    font-size:15px;
    line-height:1.6
}
 .footer-contact-icon{
    width:28px;
    height:28px;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0
}
 .footer-contact-icon img{
    width:14px;
    height:14px;
    object-fit:contain
}
 .footer-contact-text{
    display:inline-block
}
 a.footer-contact-text{
    color:inherit;
    text-decoration:none;
    transition:color .2s ease
}
 a.footer-contact-text:hover{
    color:var(--accent-orange)
}
 .news-button{
    align-self:flex-start;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:6px 20px;
    border-radius:999px;
    border:1px solid var(--accent-orange);
    color:var(--accent-orange);
    transition:transform .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease
}
 .news-card-link:hover .news-button{
    background:var(--accent-orange-hover);
    border-color:var(--accent-orange-hover);
    transform:translateY(-1px);
    color:#fff
}
 .news-card-link:hover .news-button span{
    transform:translateX(3px)
}
 .about-page{
    background:linear-gradient(180deg,#f7f9fc 0,#fff 34%,#f5f8fb 100%)
}
 .breadcrumb{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-size:14px
}
 .breadcrumb-link{
    color:rgba(255,255,255,.82);
    transition:color .2s ease
}
 .breadcrumb-link:hover{
    color:#fff
}
 .breadcrumb-current{
    color:var(--accent-orange);
    font-weight:700
}
 .breadcrumb-separator{
    color:rgba(255,255,255,.56)
}
 .breadcrumb-hero{
    margin-bottom:24px
}
 .about-hero{
    position:relative;
    min-height:520px;
    overflow:hidden;
    background:#10253b
}
 .about-hero::before{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,rgba(8,24,40,.78) 0,rgba(8,24,40,.42) 45%,rgba(8,24,40,.18) 100%),linear-gradient(180deg,rgba(30,58,95,.28) 0,transparent 100%);
    z-index:1;
    transition:transform .45s ease
}
 .about-hero:hover::before{
    transform:scale(1.02)
}
 .about-hero-media{
    position:absolute;
    inset:0;
    overflow:hidden
}
 .about-hero-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .45s ease
}
 .about-hero:hover .about-hero-media img{
    transform:scale(1.05)
}
 .about-hero-overlay{
    position:relative;
    z-index:2;
    min-height:520px;
    display:flex;
    align-items:center
}
 .about-hero-content{
    max-width:760px
}
 .about-hero-title{
    font-size:58px;
    line-height:1.04;
    color:#fff;
    margin:0 0 14px;
    letter-spacing:.02em
}
 .about-hero-subtitle{
    max-width:620px;
    color:rgba(255,255,255,.82);
    font-size:18px;
    line-height:1.85
}
 .about-section-header{
    margin-bottom:50px
}
 .section-header-left{
    text-align:left
}
 .section-header-left .section-remark{
    margin:0;
    max-width:760px
}
 .about-profile-grid{
    display:grid;
    grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
    gap:44px;
    align-items:start
}
 .about-profile-media{
    position:relative
}
 .about-profile-media img{
    width:100%;
    min-height:620px;
    object-fit:cover;
    border-radius:28px;
    box-shadow:0 22px 50px rgba(10,37,64,.12)
}
 .about-profile-content{
    position:relative;
    display:flex;
    flex-direction:column;
    gap:24px;
    padding-right:12px
}
 .about-copy-block{
    padding:0;
    background:0 0;
    border:0;
    box-shadow:none
}
 .about-block-title{
    font-size:15px;
    color:var(--accent-orange);
    margin-bottom:18px;
    text-transform:uppercase;
    letter-spacing:.12em
}
 .about-copy-block p{
    color:#425466;
    line-height:1.95;
    margin-bottom:16px;
    font-size:16px
}
 .about-copy-block p:last-child{
    margin-bottom:0
}
 .about-founded-badge{
    position:absolute;
    right:12px;
    bottom:126px;
    padding:14px 18px;
    border-radius:18px;
    background:rgba(10,37,64,.94);
    color:#fff;
    font-size:14px;
    font-weight:700;
    letter-spacing:.08em;
    box-shadow:0 18px 36px rgba(10,37,64,.18)
}
 .about-stat-list{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
    margin-top:34px
}
 .about-stat-item{
    padding:24px 22px;
    border-radius:20px;
    background:linear-gradient(180deg,#fff 0,#f2f6fb 100%);
    border:1px solid rgba(10,37,64,.08)
}
 .about-stat-item strong{
    display:block;
    color:var(--primary-blue);
    font-size:34px;
    font-weight:800;
    margin-bottom:10px
}
 .about-stat-item span{
    display:block;
    color:var(--text-gray);
    line-height:1.6;
    font-size:14px
}
 .culture-layout{
    display:grid;
    grid-template-columns:minmax(0,0.42fr) minmax(0,0.58fr);
    gap:42px;
    align-items:start
}
 .culture-feature{
    display:grid;
    gap:18px
}
 .culture-feature-media img{
    width:100%;
    min-height:340px;
    object-fit:cover;
    border-radius:24px
}
 .culture-feature-card{
    padding:26px 28px;
    border-radius:24px;
    background:#fff;
    box-shadow:0 14px 34px rgba(10,37,64,.06)
}
 .culture-feature-card .section-title{
    margin-bottom:12px
}
 .culture-feature-card .section-remark{
    margin:0 0 20px;
    max-width:none
}
 .culture-feature-title{
    font-size:15px;
    color:var(--accent-orange);
    margin-bottom:12px;
    text-transform:uppercase;
    letter-spacing:.12em
}
 .culture-feature-text{
    color:#425466;
    line-height:1.9
}
 .culture-values{
    display:grid;
    gap:0;
    border-top:1px solid rgba(10,37,64,.12)
}
 .culture-value-item{
    display:grid;
    grid-template-columns:80px minmax(0,1fr);
    gap:20px;
    padding:24px 0;
    border-bottom:1px solid rgba(10,37,64,.12)
}
 .culture-value-label{
    font-size:28px;
    line-height:1;
    font-weight:800;
    color:rgba(10,37,64,.22)
}
 .culture-value-title{
    font-size:22px;
    line-height:1.35;
    color:var(--primary-blue);
    margin-bottom:8px
}
 .culture-value-text{
    color:#4a5b6d;
    line-height:1.9;
    font-size:15px
}
 .culture-vision-banner{
    margin-top:38px;
    padding:34px 38px;
    border-radius:28px;
    background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%)
}
 .culture-vision-label{
    display:inline-flex;
    margin-bottom:12px;
    padding:6px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:12px;
    letter-spacing:.12em;
    text-transform:uppercase
}
 .culture-vision-text{
    color:rgba(255,255,255,.9);
    font-size:22px;
    line-height:1.6;
    max-width:900px
}
 .advantage-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px
}
 .advantage-card{
    position:relative;
    padding:30px 28px 26px;
    border-radius:24px;
    background:#fff;
    border:1px solid rgba(10,37,64,.08);
    overflow:hidden
}
 .advantage-card-line{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:var(--accent-orange);
    transform:translateX(-102%);
    transition:transform .28s ease
}
 .advantage-card:hover .advantage-card-line{
    transform:translateX(0)
}
 .advantage-card-icon{
    width:58px;
    height:58px;
    border-radius:18px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-bottom:18px;
    background:rgba(10,37,64,.06);
    color:var(--primary-blue)
}
 .advantage-card-title{
    font-size:22px;
    line-height:1.35;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .advantage-card-summary{
    color:#4a5b6d;
    line-height:1.9;
    font-size:15px;
    margin-bottom:18px
}
 .advantage-card-tag{
    display:inline-flex;
    padding:6px 12px;
    border-radius:999px;
    background:rgba(255,107,44,.12);
    color:var(--accent-orange);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .partner-group+.partner-group{
    margin-top:34px
}
 .partner-group-head{
    margin-bottom:18px
}
 .partner-group-title{
    font-size:22px;
    color:var(--primary-blue)
}
 .partner-logo-wall{
    display:grid;
    gap:18px
}
 .carrier-wall{
    grid-template-columns:repeat(4,minmax(0,1fr))
}
 .platform-wall{
    grid-template-columns:repeat(4,minmax(0,1fr))
}
 .partner-logo-item{
    min-height:120px;
    padding:20px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(10,37,64,.08);
    border-radius:18px;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease
}
 .partner-logo-item:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 28px rgba(10,37,64,.06);
    border-color:rgba(255,107,44,.28)
}
 .partner-logo-item img{
    width:100%;
    max-width:180px;
    height:auto
}
 .partner-cta{
    margin-top:36px;
    padding:30px 32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    border-radius:26px;
    background:linear-gradient(135deg,rgba(10,37,64,.98) 0,rgba(30,58,95,.95) 100%)
}
 .partner-cta-title{
    color:#fff;
    font-size:24px;
    line-height:1.3;
    margin-bottom:8px
}
 .partner-cta-text{
    color:rgba(255,255,255,.82);
    line-height:1.85;
    max-width:720px
}
 .about-template-page{
    background:#fff
}
 .page-banner{
    position:relative;
    margin-top:72px;
    min-height:350px;
    display:flex;
    align-items:center;
    overflow:hidden
}
 .page-banner-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    transform:scale(1.03);
    transition:transform 6s ease
}
 .page-banner:hover .page-banner-bg{
    transform:scale(1)
}
 .page-banner-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(10,37,64,.78) 0,rgba(14,44,84,.48) 100%)
}
 .page-banner .container{
    position:relative;
    z-index:2;
    width:100%;
    padding:0
}
 .page-banner-content{
    color:#fff;
    margin:0 auto;
    text-align:center
}
 .page-banner-title{
    font-size:46px;
    font-weight:700;
    line-height:1.2;
    margin:0 0 16px;
    letter-spacing:-.5px
}
 .page-banner-desc{
    font-size:18px;
    line-height:1.75;
    color:rgba(255,255,255,.88);
    margin:0 auto
}
 .breadcrumb-section{
    background:#fff;
    border-bottom:1px solid var(--border-color)
}
 .breadcrumb-section .container{
    padding-top:18px;
    padding-bottom:18px
}
 .breadcrumb-list{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    list-style:none
}
 .breadcrumb-item a,.breadcrumb-list>a{
    color:var(--text-gray);
    font-size:14px;
    font-weight:500;
    transition:color .2s
}
 .breadcrumb-item a:hover,.breadcrumb-list>a:hover{
    color:var(--accent-orange)
}
 .breadcrumb-sep{
    color:var(--text-light);
    font-size:18px
}
 .breadcrumb-active{
    color:var(--accent-orange);
    font-size:15px;
    font-weight:600
}
 .about-align-left{
    text-align:left;
    margin-left:0;
    margin-right:0
}
 .about-intro-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:stretch
}
 .about-intro-image{
    position:relative;
    border-radius:12px;
    overflow:visible;
    min-height:100%
}
 .about-intro-image img{
    width:100%;
    height:100%;
    border-radius:12px;
    object-fit:cover;
    aspect-ratio:auto
}
 .about-intro-badge{
    position:absolute;
    bottom:-20px;
    right:-20px;
    background:var(--accent-orange);
    color:#fff;
    padding:20px 28px;
    border-radius:12px;
    text-align:center
}
 .badge-number{
    font-size:36px;
    font-weight:800;
    line-height:1
}
 .badge-label{
    font-size:13px;
    font-weight:600;
    opacity:.9;
    margin-top:4px;
    text-transform:uppercase;
    letter-spacing:.5px
}
 .about-intro-content .section-title{
    font-size:36px;
    margin-bottom:18px
}
 .about-intro-content .section-remark{
    margin-bottom:20px;
    white-space:pre-wrap;
    max-width:100%
}
 .about-intro-content p{
    color:var(--text-gray);
    line-height:1.8;
    margin-bottom:18px;
    font-size:16px
}
 .about-stats-row{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin:32px 0 28px;
    padding:24px;
    background:var(--bg-light);
    border-radius:12px;
    border:1px solid var(--border-color)
}
 .about-stat{
    text-align:center
}
 .about-stat-number{
    font-size:28px;
    font-weight:800;
    color:var(--accent-orange);
    line-height:1
}
 .about-stat-label{
    font-size:12px;
    color:var(--text-light);
    margin-top:6px;
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:.3px
}
 .culture-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:32px;
    align-items:stretch;
    margin-bottom:40px
}
 .culture-card-featured{
    background:var(--bg-white);
    border-radius:12px;
    overflow:hidden;
    display:flex;
    flex-direction:column
}
 .culture-card-image img{
    width:100%;
    height:260px;
    object-fit:cover
}
 .culture-card-body{
    padding:32px
}
 .culture-feature-block+.culture-feature-block{
    margin-top:10px
}
 .culture-card-body h3{
    font-size:24px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .culture-card-body p{
    color:var(--text-gray);
    line-height:1.8;
    font-size:16px
}
 .culture-values{
    display:flex;
    flex-direction:column;
    gap:10px
}
 .culture-value-item{
    display:flex;
    gap:20px;
    align-items:flex-start;
    background:var(--bg-white);
    padding:24px;
    border-radius:12px;
    border:1px solid var(--border-color);
    transition:.3s ease
}
 .culture-value-item:hover{
    border-color:var(--accent-orange);
    transform:translateX(4px)
}
 .culture-value-body h4{
    font-size:17px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:6px
}
 .culture-value-body p{
    font-size:14px;
    color:var(--text-gray);
    line-height:1.7
}
 .advantages-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px
}
 .advantage-card{
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:12px;
    padding:36px 32px;
    transition:.3s ease;
    position:relative;
    overflow:hidden
}
 .advantage-card::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,var(--accent-orange),var(--accent-orange-hover));
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .3s ease
}
 .advantage-card:hover{
    transform:translateY(-6px)
}
 .advantage-card:hover::before{
    transform:scaleX(1)
}
 .advantage-icon-wrap{
    width:60px;
    height:60px;
    background:linear-gradient(135deg,var(--accent-orange) 0,var(--accent-orange-hover) 100%);
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:24px;
    color:#fff
}
 .advantage-icon-wrap svg{
    width:28px;
    height:28px
}
 .advantage-icon-wrap img{
    width:28px;
    height:28px;
    display:block;
    object-fit:contain
}
 .advantage-card h3{
    font-size:20px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:12px
}
 .advantage-card p{
    color:var(--text-gray);
    line-height:1.75;
    font-size:15px;
    margin-bottom:20px
}
 .advantage-highlight{
    display:inline-block;
    background:rgba(255,107,44,.1);
    color:var(--accent-orange);
    padding:5px 14px;
    border-radius:20px;
    font-size:13px;
    font-weight:600
}
 .partner-category{
    margin-bottom:52px
}
 .partner-category-title{
    display:flex;
    align-items:center;
    gap:16px;
    font-size:16px;
    font-weight:700;
    color:var(--text-gray);
    text-transform:uppercase;
    letter-spacing:.8px;
    margin-bottom:28px
}
 .partner-category-line{
    flex:1;
    height:1px;
    background:var(--border-color)
}
 .partners-row{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
    gap:20px
}
 .partner-logo-card{
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:12px;
    padding:24px 16px 16px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    transition:.3s ease;
    box-shadow:0 2px 4px rgba(0,0,0,.08)
}
 .partner-logo-card:hover{
    box-shadow:0 4px 12px rgba(0,0,0,.1);
    border-color:var(--accent-orange);
    transform:translateY(-3px)
}
 .partner-logo-card-platform{
    padding:28px 20px 16px
}
 .partner-logo-inner{
    display:flex;
    align-items:center;
    justify-content:center;
    height:48px;
    width:100%
}
 .partner-logo-inner img{
    max-width:130px;
    max-height:42px;
    width:auto;
    height:auto
}
 .partner-type{
    font-size:12px;
    color:var(--text-light);
    font-weight:500;
    text-align:center
}
 .partner-type-authorized{
    color:#10b981;
    font-weight:700;
    font-size:12px
}
 .partner-cta-block{
    text-align:center;
    margin-top:12px;
    padding:40px;
    background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%);
    border-radius:12px;
    color:#fff
}
 .partner-cta-block p{
    font-size:18px;
    opacity:.9;
    margin-bottom:20px
}
 .about-stat{
    position:relative;
    text-align:center;
    padding-top:14px
}
 .culture-value-icon{
    width:48px;
    height:48px;
    flex:0 0 48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,rgba(10,37,64,.08) 0,rgba(255,107,44,.14) 100%);
    color:var(--accent-orange);
    box-shadow:inset 0 0 0 1px rgba(10,37,64,.08)
}
 .culture-value-icon svg{
    width:22px;
    height:22px
}
 .culture-value-icon img{
    width:22px;
    height:22px;
    display:block;
    object-fit:contain
}
 .culture-feature-block{
    position:relative;
    padding-left:72px
}
 .culture-feature-icon{
    position:absolute;
    top:2px;
    left:0;
    width:48px;
    height:48px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:linear-gradient(135deg,rgba(10,37,64,.08) 0,rgba(255,107,44,.14) 100%);
    color:var(--accent-orange);
    box-shadow:inset 0 0 0 1px rgba(10,37,64,.08)
}
 .culture-feature-icon svg{
    width:22px;
    height:22px
}
 .culture-feature-icon img{
    width:22px;
    height:22px;
    display:block;
    object-fit:contain
}
 .nav-link.is-active{
    color:var(--accent-orange)
}
 .svc-intro{
    padding:56px 0;
    background:var(--bg-white);
    border-bottom:1px solid var(--border-color)
}
 .svc-intro-inner{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center
}
 .svc-intro-text .section-title{
    margin-bottom:16px
}
 .svc-intro-text .section-remark{
    margin:0;
    max-width:none
}
 .svc-intro-stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    background:var(--bg-light);
    border-radius:var(--radius);
    border:1px solid var(--border-color);
    overflow:hidden
}
 .svc-stat{
    text-align:center;
    padding:28px 16px;
    border-right:1px solid var(--border-color)
}
 .svc-stat:last-child{
    border-right:none
}
 .svc-stat-num{
    font-size:30px;
    font-weight:800;
    color:var(--accent-orange);
    line-height:1;
    margin-bottom:6px
}
 .svc-stat-label{
    font-size:14px;
    color:var(--text-light);
    font-weight:500;
    letter-spacing:.3px
}
 .svc-item{
    padding:80px 0;
    background:var(--bg-white)
}
 .svc-item-alt{
    background:var(--bg-light)
}
 .svc-item-grid{

}
.svc-item-grid a{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:72px;
    align-items:center
}
 .svc-item-grid-reverse{
    direction:rtl
}
 .svc-item-grid-reverse>*{
    direction:ltr
}
 .svc-item-image{
    position:relative;
    border-radius:var(--radius);
    overflow:visible
}
 .svc-item-image img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:var(--radius);
    display:block
}
 .svc-item-badge{
    position:absolute;
    top:-20px;
    left:-20px;
    width:64px;
    height:64px;
    background:linear-gradient(135deg,var(--accent-orange) 0,var(--accent-orange-hover) 100%);
    color:#fff;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    z-index:2
}
 .svc-item-badge svg{
    width:28px;
    height:28px
}
 .svc-item-badge img{
    width:28px;
    height:28px;
    display:block;
    object-fit:contain
}
 .svc-item-title{
    font-size:32px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:16px;
    line-height:1.3
}
 .svc-item-desc{
    color:var(--text-gray);
    font-size:16px;
    line-height:1.8;
    margin-bottom:14px
}
 .svc-features{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px 20px;
    margin:24px 0
}
 .svc-feature{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:14px;
    color:var(--text-dark);
    font-weight:500
}
 .svc-feature-dot{
    width:7px;
    height:7px;
    background:var(--accent-orange);
    border-radius:50%;
    flex-shrink:0
}
 .svc-cta-strip{
    background:linear-gradient(135deg,var(--primary-blue) 0,var(--secondary-blue) 100%);
    padding:64px 0
}
 .svc-cta-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px
}
 .svc-cta-text h2{
    font-size:32px;
    font-weight:700;
    color:#fff;
    margin-bottom:10px;
    line-height:1.3
}
 .svc-cta-text p{
    color:rgba(255,255,255,.85);
    font-size:17px;
    line-height:1.8
}
 .svc-cta-actions{
    display:flex;
    gap:16px;
    flex-shrink:0;
    flex-wrap:wrap
}
 .svc-cta-actions a:first-child{
    background:var(--accent-orange);
    border-color:var(--accent-orange)
}
 .cta-button-outline{
    display:inline-block;
    border:2px solid rgba(255,255,255,.6);
    color:#fff;
    padding:12px 28px;
    border-radius:6px;
    font-weight:600;
    font-size:16px;
    transition:var(--transition)
}
 .cta-button-outline:hover{
    background:rgba(255,255,255,.15);
    border-color:#fff;
    transform:translateY(-2px)
}
 .svc-cta-actions a:first-child:hover{
    background:#fff;
    color:var(--accent-orange);
    border-color:#fff
}
 .services-page .page-banner-desc,.services-page .page-banner-title{
    opacity:0;
    transform:translateY(26px);
    animation:servicesHeroReveal .8s ease-out forwards
}
 .services-page .page-banner-desc{
    animation-delay:.14s
}
 .svc-cta-strip,.svc-intro,.svc-item{
    overflow:clip
}
 .svc-cta-inner,.svc-intro-inner,.svc-item-content,.svc-item-image{
    opacity:0;
    transition:opacity .7s ease,transform .7s ease
}
 .svc-intro-inner{
    transform:translateY(34px)
}
 .svc-item-image{
    transform:translateX(-42px)
}
 .svc-item-content{
    transform:translateX(42px)
}
 .svc-item-grid-reverse .svc-item-image{
    transform:translateX(42px)
}
 .svc-item-grid-reverse .svc-item-content{
    transform:translateX(-42px)
}
 .svc-cta-inner{
    transform:translateY(34px)
}
 .svc-cta-strip.is-visible .svc-cta-inner,.svc-intro.is-visible .svc-intro-inner,.svc-item.is-visible .svc-item-content,.svc-item.is-visible .svc-item-image{
    opacity:1;
    transform:translate(0,0)
}
 .svc-feature,.svc-item .cta-button,.svc-stat{
    opacity:0;
    transform:translateY(18px);
    transition:opacity .5s ease,transform .5s ease
}
 .svc-intro.is-visible .svc-stat,.svc-item.is-visible .cta-button,.svc-item.is-visible .svc-feature{
    opacity:1;
    transform:translateY(0)
}
 .svc-intro.is-visible .svc-stat:first-child,.svc-item.is-visible .svc-feature:first-child{
    transition-delay:80ms
}
 .svc-intro.is-visible .svc-stat:nth-child(2),.svc-item.is-visible .svc-feature:nth-child(2){
    transition-delay:0.14s
}
 .svc-intro.is-visible .svc-stat:nth-child(3),.svc-item.is-visible .svc-feature:nth-child(3){
    transition-delay:0.2s
}
 .svc-intro.is-visible .svc-stat:nth-child(4),.svc-item.is-visible .cta-button,.svc-item.is-visible .svc-feature:nth-child(4){
    transition-delay:0.26s
}
 .svc-item-image img{
    transition:transform .5s ease,box-shadow .35s ease
}
 .svc-item-badge{
    transition:transform .35s ease,box-shadow .35s ease
}
 .svc-item:hover .svc-item-image img{
    transform:scale(1.03)
}
 .svc-item:hover .svc-item-badge{
    transform:translateY(-4px) scale(1.04)
}
 @keyframes servicesHeroReveal{
    from{
        opacity:0;
        transform:translateY(26px)
    }
     to{
        opacity:1;
        transform:translateY(0)
    }
}
 .about-page .page-banner-title,.services-page .page-banner-title{
    font-size:48px;
    font-weight:700;
    line-height:1.3
}
 .about-intro-content .section-title,.svc-cta-text h2,.svc-item-title{
    font-size:36px;
    font-weight:700;
    line-height:1.3
}
 .advantage-card h3,.culture-card-body h3,.partner-category-title,.svc-stat-num{
    line-height:1.3
}
 .advantage-card h3,.culture-card-body h3{
    font-size:20px
}
 .culture-value-body h4,.svc-feature{
    font-size:16px
}
 .about-intro-content p,.advantage-card p,.culture-card-body p,.culture-value-body p,.svc-cta-text p,.svc-item-desc{
    font-size:16px;
    line-height:1.8
}
 #partners.section-gray{
    background:#f7f7f5
}
 .partner-logo-wall{
    max-width:1080px;
    margin:0 auto
}
 .partner-logo-wall-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px
}
 .partner-logo-card{
    min-height:118px;
    padding:24px 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.9);
    border:1px solid rgba(10,37,64,.08);
    border-radius:18px;
    box-shadow:0 10px 24px rgba(10,37,64,.05);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease
}
 .partner-logo-card:hover{
    transform:translateY(-3px);
    border-color:rgba(255,107,44,.24);
    box-shadow:0 14px 30px rgba(10,37,64,.08)
}
 .partner-logo-inner{
    width:100%;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center
}
 .partner-logo-inner img{
    max-width:118px;
    max-height:42px;
    object-fit:contain;
    filter:saturate(.98)
}
 .partner-type,.partner-type-authorized{
    display:none
}
 .sea-freight-page .page-banner-title,.sea-freight-page .section-title{
    font-size:30px;
    line-height:1.3
}
 .sea-freight-page .page-banner-desc,.sea-freight-page .section-remark,.sea-freight-page .sf-adv-card p,.sea-freight-page .sf-faq-card p,.sea-freight-page .sf-intro-left p,.sea-freight-page .sf-list-desc{
    font-size:16px;
    line-height:1.8;
    max-width:100%
}
 .sea-banner .page-banner-content{
    text-align:center
}
 .sf-reveal{
    opacity:0;
    transform:translateY(28px);
    transition:opacity .65s ease,transform .65s ease
}
 .sf-reveal.is-visible{
    opacity:1;
    transform:translateY(0)
}
 .sf-faq-card h3,.sf-faq-card h4{
    font-size:18px;
    line-height:1.45;
    color:var(--primary-blue);
    margin-bottom:10px
}
 .sf-pricing-button{
    width:100%;
    display:inline-flex;
    justify-content:center;
    text-align:center
}
 .sf-section-title{
    font-size:34px;
    font-weight:800;
    color:var(--primary-blue);
    margin-bottom:12px;
    line-height:1.25
}
 .sf-section-sub{
    font-size:16px;
    color:var(--text-gray);
    max-width:680px;
    line-height:1.75;
    margin-bottom:40px;
    margin:revert-layer;
    margin-bottom:40px
}
 .sf-intro-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center
}
 .sf-intro-left h2{
    margin-bottom:20px
}
 .sf-intro-left p{
    font-size:16px;
    color:var(--text-gray);
    line-height:1.8;
    margin-bottom:16px;
    white-space:pre-wrap
}
 .sf-intro-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:24px 0 32px
}
 .sf-tag{
    background:var(--bg-light);
    border:1px solid var(--border-color);
    color:var(--text-dark);
    font-size:13px;
    font-weight:600;
    padding:5px 12px;
    border-radius:20px
}
 .sf-intro-right img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:var(--radius);
    display:block;
    box-shadow:var(--shadow-lg)
}
 .sf-type-single{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:start
}
 .sf-type-single-img img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:var(--radius);
    display:block;
    box-shadow:var(--shadow-lg);
    position:sticky;
    top:100px
}
 .sf-type-single-text .sf-section-title{
    margin-bottom:8px
}
 .sf-type-single-text .sf-section-sub{
    margin-bottom:28px
}
 .sf-type-item{
    padding:16px 0;
    border-bottom:1px solid var(--border-color);
    margin-bottom:0
}
 .sf-type-item:last-child{
    border-bottom:none
}
 .sf-type-item:last-child{
    margin-bottom:0
}
 .sf-type-item h4{
    font-size:17px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:8px
}
 .sf-type-item p{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.75;
    margin:0
}
 .sf-transit-split{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center
}
 .sf-transit-img-col img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:var(--radius);
    display:block;
    box-shadow:var(--shadow-lg)
}
 .sf-transit-text-col .sf-section-title{
    margin-bottom:10px
}
 .sf-transit-text-col .sf-section-sub{
    margin-bottom:28px
}
 .sf-transit-list{
    display:flex;
    flex-direction:column;
    gap:0
}
 .sf-transit-item{
    padding:16px 0;
    border-bottom:1px solid var(--border-color);
    margin-bottom:0
}
 .sf-transit-item:last-child{
    border-bottom:none
}
 .sf-transit-item h4{
    font-size:17px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:6px
}
 .sf-transit-item p{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.7;
    margin:0
}
 .sf-docs-list{
    border:1px solid var(--border-color);
    border-radius:var(--radius);
    overflow:hidden;
    background:var(--bg-white);
    box-shadow:var(--shadow-sm)
}
 .sf-doc-row{
    display:flex;
    align-items:baseline;
    gap:16px;
    padding:16px 24px;
    border-bottom:1px solid var(--border-color)
}
 .sf-doc-row:last-child{
    border-bottom:none
}
 .sf-doc-row:nth-child(2n){
    background:var(--bg-light)
}
 .sf-doc-title{
    font-size:15px;
    font-weight:700;
    color:var(--primary-blue);
    min-width:220px;
    flex-shrink:0
}
 .sf-doc-desc{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.6
}
 .sf-docs-outer{
    display:grid;
    grid-template-columns:1fr 380px;
    gap:48px;
    align-items:stretch
}
 .sf-docs-left{
    display:flex;
    flex-direction:column
}
 .sf-docs-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
    flex:1
}
 .sf-doc-card{
    background:var(--bg-light);
    border-radius:10px;
    border:1px solid var(--border-color);
    padding:18px;
    display:flex;
    gap:14px;
    align-items:flex-start
}
 .sf-doc-num{
    font-size:22px;
    font-weight:900;
    color:var(--accent-orange);
    line-height:1;
    flex-shrink:0;
    min-width:32px
}
 .sf-doc-content h4{
    font-size:15px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:5px
}
 .sf-doc-content p{
    font-size:14px;
    color:var(--text-gray);
    line-height:1.6;
    margin:0
}
 .sf-docs-right{
    display:flex;
    align-items:stretch
}
 .sf-docs-right img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:var(--radius);
    display:block;
    box-shadow:var(--shadow-lg)
}
 .sf-process-steps{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0;
    border:1px solid var(--border-color);
    border-radius:var(--radius);
    overflow:hidden;
    background:var(--bg-white);
    box-shadow:var(--shadow-sm)
}
 .sf-step{
    display:flex;
    align-items:flex-start;
    gap:20px;
    padding:24px 28px;
    border-bottom:1px solid var(--border-color);
    border-right:1px solid var(--border-color)
}
 .sf-step:nth-child(2n){
    border-right:none
}
 .sf-step:nth-last-child(-n+2){
    border-bottom:none
}
 .sf-step-num{
    width:38px;
    height:38px;
    border-radius:50%;
    background:var(--accent-orange);
    color:#fff;
    font-size:14px;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0
}
 .sf-step-text h4{
    font-size:16px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:6px
}
 .sf-step-text p{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.65;
    margin:0
}
 .sf-form-outer{
    display:grid;
    grid-template-columns:1fr 2fr;
    gap:60px;
    align-items:start
}
 .sf-form-left h2{
    margin-bottom:16px
}
 .sf-form-left p{
    font-size:16px;
    color:var(--text-gray);
    line-height:1.75;
    margin-bottom:24px
}
 .sf-form-info{
    list-style:none;
    padding:0;
    margin:0 0 28px
}
 .sf-form-info li{
    font-size:15px;
    color:var(--text-gray);
    padding:6px 0;
    border-bottom:1px solid var(--border-color)
}
 .sf-form-info li:last-child{
    border-bottom:none
}
 .sf-form-contact p{
    font-size:15px;
    color:var(--text-gray);
    margin-bottom:6px
}
 .sf-form{
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:var(--radius);
    padding:36px;
    box-shadow:var(--shadow-sm)
}
 .sf-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-bottom:20px
}
 .sf-form-group{
    display:flex;
    flex-direction:column;
    gap:6px
}
 .sf-form-group--full{
    grid-column:1/-1;
    margin-bottom:20px
}
 .sf-form-group label{
    font-size:14px;
    font-weight:600;
    color:var(--text-dark)
}
 .sf-required{
    color:var(--accent-orange)
}
 .sf-form-group input,.sf-form-group select,.sf-form-group textarea{
    padding:10px 14px;
    border:1px solid var(--border-color);
    border-radius:6px;
    font-size:15px;
    color:var(--text-dark);
    background:#fafafa;
    transition:border-color .2s;
    font-family:inherit
}
 .sf-form-group input:focus,.sf-form-group select:focus,.sf-form-group textarea:focus{
    outline:0;
    border-color:var(--primary-blue);
    background:#fff
}
 .sf-form-group textarea{
    resize:vertical
}
 .sf-submit-btn{
    width:100%;
    padding:14px;
    font-size:16px;
    letter-spacing:.5px
}
 .sf-page-nav{
    background:rgba(255,255,255,.96);
    border-bottom:1px solid var(--border-color);
    position:sticky;
    top:72px;
    z-index:90;
    box-shadow:0 2px 8px rgba(0,0,0,.06);
    backdrop-filter:blur(12px)
}
 .sea-freight-page #sea-advantages,.sea-freight-page #sea-documents,.sea-freight-page #sea-faq,.sea-freight-page #sea-inquiry,.sea-freight-page #sea-overview,.sea-freight-page #sea-pricing,.sea-freight-page #sea-process,.sea-freight-page #sea-transit,.sea-freight-page #sea-types{
    scroll-margin-top:140px
}
 #sea-faq{
    padding-bottom:0
}
 .sf-page-nav-list{
    display:flex;
    align-items:center;
    gap:0;
    list-style:none;
    margin:0;
    padding:0;
    overflow-x:auto;
    scrollbar-width:none
}
 .sf-page-nav-list::-webkit-scrollbar{
    display:none
}
 .sf-page-nav-list li a{
    display:block;
    padding:14px 18px;
    font-size:14px;
    font-weight:600;
    color:var(--text-dark);
    text-decoration:none;
    white-space:nowrap;
    border-bottom:3px solid transparent;
    transition:color .2s,border-color .2s
}
 .sf-page-nav-list li a:hover{
    color:var(--primary-blue);
    border-bottom-color:var(--primary-blue)
}
 .sf-page-nav-list li a.sf-nav-cta{
    margin-left:8px;
    background:var(--accent-orange);
    color:#fff;
    border-radius:6px;
    padding:8px 18px;
    border-bottom:none
}
 .sf-page-nav-list li a.sf-nav-cta:hover{
    background:#d4600a;
    border-bottom:none
}
 .sf-intro-actions{
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
    margin-top:28px
}
 .sf-whatsapp-btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 10px;
    background:#25d366;
    color:#fff;
    font-size:15px;
    font-weight:600;
    border-radius:6px;
    text-decoration:none;
    transition:background .2s
}
 .sf-whatsapp-btn:hover{
    background:#1ebe5d
}
 .sf-intro-img-wrap{
    position:relative
}
 .sf-intro-img-wrap img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:var(--radius);
    display:block;
    box-shadow:var(--shadow-lg)
}
 .sf-intro-badges{
    position:absolute;
    bottom:-16px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:12px;
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:10px;
    padding:12px 20px;
    box-shadow:var(--shadow-lg);
    white-space:nowrap
}
 .sf-badge{
    display:flex;
    flex-direction:column;
    align-items:center;
    padding:0 12px;
    border-right:1px solid var(--border-color)
}
 .sf-badge:last-child{
    border-right:none
}
 .sf-badge strong{
    font-size:20px;
    font-weight:800;
    color:var(--accent-orange);
    line-height:1.2
}
 .sf-badge span{
    font-size:12px;
    color:var(--text-gray);
    margin-top:2px
}
 .sf-intro-right{
    padding-bottom:0
}
 .sf-pricing-cta-box{
    background:var(--primary-blue);
    color:#fff;
    border-radius:var(--radius);
    padding:32px 28px;
    position:sticky;
    top:130px
}
 .sf-pricing-cta-box h3{
    font-size:20px;
    font-weight:800;
    color:#fff;
    margin-bottom:12px
}
 .sf-pricing-cta-box p{
    font-size:15px;
    color:rgba(255,255,255,.85);
    line-height:1.7;
    margin-bottom:20px
}
 .sf-pricing-cta-list{
    list-style:none;
    padding:0;
    margin:0 0 24px
}
 .sf-pricing-cta-list li{
    font-size:14px;
    color:rgba(255,255,255,.9);
    padding:6px 0;
    border-bottom:1px solid rgba(255,255,255,.12);
    display:flex;
    align-items:center;
    gap:8px
}
 .sf-pricing-cta-list li::before{
    content:"\2713";
    color:var(--accent-orange);
    font-weight:700
}
 .sf-pricing-cta-list li:last-child{
    border-bottom:none
}
 .sf-pricing-contact{
    margin-top:20px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.15)
}
 .sf-pricing-contact p{
    font-size:13px;
    color:rgba(255,255,255,.8);
    margin-bottom:6px;
    line-height:1.5
}
 .sf-faq-list{
    max-width:860px;
    margin:0 auto
}
 .sf-faq-row{
    padding:24px 0;
    border-bottom:1px solid var(--border-color)
}
 .sf-faq-row:last-child{
    border-bottom:none
}
 .sf-faq-row h4{
    font-size:17px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:10px;
    line-height:1.4
}
 .sf-faq-row p{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.75;
    margin:0
}
 .sf-step-form{
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:var(--radius);
    padding:32px
}
 .sf-step-header{
    margin-bottom:24px
}
 .sf-step-badge{
    display:inline-block;
    background:var(--accent-orange);
    color:#fff;
    font-size:12px;
    font-weight:700;
    padding:3px 10px;
    border-radius:20px;
    margin-bottom:10px;
    letter-spacing:.5px
}
 .sf-step-header h3{
    font-size:20px;
    font-weight:700;
    color:var(--primary-blue);
    margin:0
}
 .sf-next-btn{
    width:100%;
    text-align:center;
    margin-top:8px
}
 .sf-form-btns{
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:8px
}
 .sf-back-btn{
    background:0 0;
    border:1px solid var(--border-color);
    color:var(--text-dark);
    font-size:14px;
    font-weight:600;
    padding:12px 20px;
    border-radius:6px;
    cursor:pointer;
    white-space:nowrap;
    transition:background .2s
}
 .sf-back-btn:hover{
    background:var(--bg-light)
}
 .sf-form.sf-form-inner{
    background:0 0;
    border:none;
    border-radius:0;
    padding:0;
    box-shadow:none
}
 .sf-form.sf-form-inner .sf-form-row:last-of-type{
    margin-bottom:0
}
 .region-page .page-banner-title,.region-page .section-title{
    font-size:42px;
    line-height:1.3
}
 .region-page .page-banner-desc,.region-page .region-ctry-desc,.region-page .region-inquiry-text p,.region-page .region-intro-text p,.region-page .section-remark{
    font-size:16px;
    line-height:1.8
}
 .region-intro-section{
    padding:72px 0
}
 .region-intro-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center
}
 .region-intro-text{
    display:flex;
    flex-direction:column
}
 .region-intro-text .section-remark,.region-intro-text>p{
    max-width:100%;
    color:inherit;
    white-space:pre-line
}
 .region-intro-text .cta-button{
    margin-top:20px
}
 .region-intro-img{
    position:relative
}
 .region-intro-img img{
    width:100%;
    aspect-ratio:4/3;
    object-fit:cover;
    border-radius:var(--radius);
    display:block
}
 .region-intro-badges{
    display:flex;
    gap:12px;
    margin-top:16px
}
 .region-badge{
    flex:1;
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-top:3px solid var(--accent-orange);
    border-radius:8px;
    padding:14px 12px;
    text-align:center
}
 .region-badge strong{
    display:block;
    font-size:18px;
    font-weight:800;
    color:var(--primary-blue);
    line-height:1.2
}
 .region-badge span{
    display:block;
    font-size:12px;
    color:var(--text-gray);
    margin-top:4px
}
 .region-section-header{
    margin-bottom:48px
}
 .region-section-header .section-remark{
    max-width:100%
}
 .region-countries-main-section{
    padding-top:0
}
 .region-layout{
    display:grid;
    grid-template-columns:220px 1fr;
    gap:48px;
    align-items:start
}
 .region-sidebar{
    position:sticky;
    top:104px;
    align-self:start
}
 .region-sidebar-inner{
    position:relative;
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:var(--radius);
    overflow:hidden
}
 .region-sidebar-title{
    font-size:13px;
    font-weight:700;
    color:var(--text-gray);
    text-transform:uppercase;
    letter-spacing:.08em;
    padding:16px 20px 12px;
    border-bottom:1px solid var(--border-color)
}
 .region-sidebar-list{
    list-style:none;
    margin:0
}
 .region-sidebar-link{
    display:block;
    padding:11px 20px;
    font-size:15px;
    font-weight:500;
    color:var(--text-gray);
    text-decoration:none;
    border-left:3px solid transparent;
    transition:color .2s,background .2s,border-color .2s
}
 .region-sidebar-active,.region-sidebar-link:hover{
    color:var(--accent-orange);
    background:#fff5f0;
    border-left-color:var(--accent-orange)
}
 .region-sidebar-active{
    font-weight:700
}
 .region-country-alt{
    display:flex;
    flex-direction:column;
    gap:0;
    border-top:1px solid var(--border-color)
}
 .region-ctry-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:40px;
    align-items:stretch;
    text-decoration:none
}
 .region-ctry-row .region-ctry-img{
    order:1
}
 .region-ctry-row .region-ctry-body{
    order:2
}
 .region-ctry-row--reverse .region-ctry-img{
    order:2
}
 .region-ctry-row--reverse .region-ctry-body{
    order:1
}
 .region-ctry-img{
    overflow:hidden;
    min-height:240px
}
 .region-ctry-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .4s ease
}
 .region-ctry-row:hover .region-ctry-img img{
    transform:scale(1.03)
}
 .region-ctry-body{
    padding:40px 0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:var(--bg-white)
}
 .region-ctry-title{
    font-size:22px;
    font-weight:800;
    color:var(--primary-blue);
    margin-bottom:14px;
    padding-bottom:12px;
    border-bottom:2px solid var(--accent-orange);
    display:inline-block
}
 .region-ctry-desc{
    color:var(--text-gray);
    margin-bottom:24px
}
 .region-ctry-btn{
    display:inline-block;
    padding:10px 24px;
    background:var(--accent-orange);
    color:#fff;
    font-size:14px;
    font-weight:700;
    border-radius:6px;
    align-self:flex-start;
    transition:background .2s
}
 .region-ctry-row:hover .region-ctry-btn{
    background:var(--accent-orange-hover)
}
 .region-inquiry-section{
    padding:90px 0
}
 .region-inquiry-grid{
    display:grid;
    grid-template-columns:420px 1fr;
    gap:60px;
    align-items:start
}
 .region-inquiry-text{
    display:block
}
 .region-inquiry-text .section-title{
    font-size:30px
}
 .region-inquiry-text .section-remark{
    max-width:100%;
    margin-bottom:30px
}
 .region-page .region-inquiry-text p{
    font-size:16px;
    line-height:1.8;
    max-width:100%
}
 .region-inquiry-list{
    list-style:none;
    padding:0;
    margin:0 0 24px
}
 .region-inquiry-list li{
    font-size:15px;
    color:var(--text-dark);
    padding:8px 0 8px 20px;
    border-bottom:1px solid var(--border-color);
    position:relative
}
 .region-inquiry-list li::before{
    content:'\2713';
    position:absolute;
    left:0;
    color:var(--accent-orange);
    font-weight:700
}
 .region-inquiry-list li:last-child{
    border-bottom:none
}
 .region-inquiry-contact{
    display:block;
    margin-top:0
}
 .region-inquiry-contact p{
    font-size:15px;
    color:var(--text-gray);
    margin-bottom:6px
}
 .region-inquiry-form{
    display:block
}
 .region-form{
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:var(--radius);
    padding:32px;
    box-shadow:var(--shadow-sm)
}
 .region-form>.input{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-bottom:16px
}
 .region-form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
    margin-bottom:16px
}
 .region-form-group{
    display:flex;
    flex-direction:column;
    gap:6px
}
 .region-form-group--full{
    margin-bottom:16px
}
 .region-form-group label{
    font-size:14px;
    font-weight:600;
    color:var(--text-dark)
}
 .region-required{
    color:var(--accent-orange)
}
 .region-form input,.region-form select,.region-form textarea{
    width:100%;
    padding:10px 14px;
    border:1px solid var(--border-color);
    border-radius:6px;
    background:#fff;
    color:var(--text-dark);
    font-size:15px;
    font-family:inherit;
    transition:border-color .2s
}
 .region-form input:focus,.region-form select:focus,.region-form textarea:focus{
    outline:0;
    border-color:var(--accent-orange)
}
 .region-form textarea{
    resize:vertical
}
 .region-form>.textarea_box{
    margin-bottom:16px
}
 .region-form>.submit{
    display:block
}
 .region-submit-btn{
    width:100%;
    text-align:center;
    padding:14px;
    font-size:16px;
    margin-top:4px
}
 .country-page .page-banner-desc,.country-page .section-remark,.country-page p{
    font-size:1rem;
    line-height:1.8
}
 .country-page .section-remark,.country-page p{
    max-width:100%;
    color:inherit
}
 .country-page .svc-card-badge{
    position:absolute;
    top:18px;
    left:18px;
    padding:6px 12px;
    border-radius:999px;
    background:var(--accent-orange);
    color:#fff;
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase
}
 .country-page .svc-card-badge--blue{
    background:var(--primary-blue)
}
 .country-page .svc-card-sub{
    font-size:.875rem;
    font-weight:600;
    color:var(--accent-orange)
}
 .country-page .inquiry-wrap{
    display:grid;
    grid-template-columns:minmax(0,0.88fr) minmax(0,1.12fr);
    gap:48px;
    align-items:start
}
 .country-page .inquiry-info{
    background:linear-gradient(180deg,#0a2540 0,#123a60 100%);
    color:#fff;
    border-radius:18px;
    padding:36px 32px
}
 .country-page .inquiry-info .section-remark,.country-page .inquiry-info .section-title,.country-page .inquiry-info li,.country-page .inquiry-info p{
    color:rgba(255,255,255,.9)
}
 .country-page .inquiry-contact-list{
    margin:22px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:12px
}
 .country-page .inquiry-form{
    background:var(--bg-white);
    border-radius:18px;
    padding:34px;
    box-shadow:0 14px 34px rgba(10,37,64,.08)
}
 .country-page .form-row-2{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px
}
 .country-page .form-group{
    display:flex;
    flex-direction:column;
    gap:10px;
    margin-bottom:18px
}
 .country-page .form-label{
    font-size:.9375rem;
    font-weight:600;
    color:var(--primary-blue)
}
 .country-page .form-input,.country-page .form-textarea,.country-page .inquiry-form select{
    width:100%;
    padding:14px 16px;
    border:1px solid var(--border-color);
    border-radius:12px;
    background:#fff;
    font:inherit;
    color:var(--text-dark);
    transition:border-color .25s ease,box-shadow .25s ease
}
 .country-page .form-input:focus,.country-page .form-textarea:focus,.country-page .inquiry-form select:focus{
    outline:0;
    border-color:rgba(255,107,44,.7);
    box-shadow:0 0 0 4px rgba(255,107,44,.12)
}
 .country-page .form-textarea{
    min-height:140px;
    resize:vertical
}
 .country-page .country-submit-btn{
    width:100%;
    justify-content:center
}
 .nav-sublink.is-active{
    color:var(--accent-orange)
}
 .faq-page .page-banner .page-banner-bg{
    background-image:url('../images/style-about-banner.webp')
}
 .faq-page .faq-section-header{
    text-align:center;
    padding:64px 0 48px
}
 .faq-page .faq-section-kicker{
    display:inline-block;
    font-size:13px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--accent-orange);
    background:#fff4ef;
    padding:5px 16px;
    border-radius:20px;
    margin:0 0 16px
}
 .faq-page .faq-section-header .section-title{
    font-size:36px;
    font-weight:800;
    margin-bottom:16px
}
 .faq-page .faq-section-header .section-remark{
    margin:0 auto
}
 .faq-page .faq-full-wrap{
    padding-bottom:80px
}
 .faq-page .faq-category{
    margin-bottom:56px
}
 .faq-page .faq-category:last-child{
    margin-bottom:0
}
 .faq-page .faq-category-header{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:24px;
    padding-bottom:16px;
    border-bottom:2px solid var(--border-color)
}
 .faq-page .faq-category-icon{
    width:44px;
    height:44px;
    background:linear-gradient(135deg,var(--accent-orange) 0,#ff8c52 100%);
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0
}
 .faq-page .faq-category-icon svg{
    width:22px;
    height:22px;
    stroke:white;
    fill:none;
    stroke-width:2
}
 .faq-page .faq-category-title{
    font-size:22px;
    font-weight:700;
    color:var(--primary-blue);
    margin:0
}
 .faq-page .faq-category-count{
    margin-left:auto;
    font-size:13px;
    color:var(--text-light);
    background:var(--bg-light);
    padding:4px 14px;
    border-radius:20px
}
 .faq-page .faq-accordion{
    display:flex;
    flex-direction:column;
    gap:12px
}
 .faq-page .faq-item{
    background:var(--bg-white);
    border:1px solid var(--border-color);
    border-radius:12px;
    overflow:hidden;
    transition:box-shadow .25s ease,border-color .25s ease
}
 .faq-page .faq-item.open{
    border-color:#ffd4bc
}
 .faq-page .faq-question{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:22px 28px;
    cursor:pointer;
    user-select:none
}
 .faq-page .faq-question-text{
    font-size:16px;
    font-weight:600;
    color:var(--text-dark);
    line-height:1.5;
    flex:1
}
 .faq-page .faq-item.open .faq-question-text{
    color:var(--accent-orange)
}
 .faq-page .faq-toggle-icon{
    width:30px;
    height:30px;
    flex-shrink:0;
    border-radius:50%;
    background:var(--bg-light);
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .2s,transform .3s
}
 .faq-page .faq-toggle-icon svg{
    width:14px;
    height:14px;
    stroke:var(--text-gray);
    fill:none;
    stroke-width:2.5;
    stroke-linecap:round;
    transition:stroke .2s
}
 .faq-page .faq-item.open .faq-toggle-icon{
    background:var(--accent-orange);
    transform:rotate(45deg)
}
 .faq-page .faq-item.open .faq-toggle-icon svg{
    stroke:white
}
 .faq-page .faq-answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .38s cubic-bezier(.4, 0, .2, 1)
}
 .faq-page .faq-answer-inner{
    padding:20px 28px 26px;
    font-size:15px;
    color:var(--text-gray);
    line-height:1.8;
    border-top:1px solid var(--border-color)
}
 .faq-page .faq-answer-inner p{
    margin-bottom:12px
}
 .faq-page .faq-answer-inner p:last-child{
    margin-bottom:0
}
 .faq-page .faq-answer-inner ul{
    margin:10px 0 12px 20px
}
 .faq-page .faq-answer-inner ul li{
    margin-bottom:6px
}
 .faq-page .faq-answer-inner strong{
    color:var(--text-dark)
}
 .faq-page .answer-tag{
    display:inline-block;
    background:#fff4ef;
    color:var(--accent-orange);
    font-size:12px;
    font-weight:600;
    padding:3px 10px;
    border-radius:20px;
    margin-bottom:10px
}
 .faq-page .faq-contact-strip{
    position:relative;
    margin:0 0 72px;
    padding:100px 32px;
    text-align:center;
    overflow:hidden;
    background-color:var(--primary-blue);
    border-radius:10px
}
 .faq-page .faq-contact-strip-bg{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat
}
 .faq-page .faq-contact-strip-overlay{
    position:absolute;
    inset:0;
    background:rgb(0 0 0 / 40%)
}
 .faq-page .faq-contact-strip-inner{
    position:relative;
    z-index:2;
    max-width:680px;
    margin:0 auto;
    padding:0 24px
}
 .faq-page .faq-contact-strip h3{
    font-size:36px;
    font-weight:800;
    color:#fff;
    margin-bottom:16px;
    line-height:1.25
}
 .faq-page .faq-contact-strip p{
    font-size:17px;
    color:rgba(255,255,255,.85);
    line-height:1.7;
    margin-bottom:36px
}
 .faq-page .faq-contact-btns{
    display:flex;
    gap:16px;
    justify-content:center;
    flex-wrap:wrap
}
 .faq-page .faq-contact-btns .cta-button,.faq-page .faq-contact-btns .cta-button-outline{
    display:inline-flex;
    align-items:center;
    gap:8px
}
 .faq-page .faq-contact-btns .cta-button-outline{
    padding:12px 28px;
    border:2px solid rgba(255,255,255,.7);
    border-radius:8px;
    color:#fff;
    font-size:15px;
    font-weight:600;
    transition:background .2s,border-color .2s;
    text-decoration:none
}
 .faq-page .faq-contact-btns .cta-button-outline svg{
    width:18px;
    height:18px;
    stroke:currentColor;
    fill:none;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round
}
 .faq-page .faq-contact-btns .cta-button-outline:hover{
    background:rgba(255,255,255,.15);
    border-color:#fff
}
 .contact-page .page-banner .page-banner-bg{
    background-image:url('../images/style-about-banner-2.webp')
}
 .contact-page .contact-section{
    padding:80px 0;
    background:#f7f9fc
}
 .contact-page .contact-section-header{
    text-align:center;
    margin-bottom:56px
}
 .contact-page .contact-section-header .section-label{
    display:inline-block;
    font-size:13px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--accent-orange);
    background:#fff4ef;
    padding:5px 16px;
    border-radius:20px;
    margin-bottom:14px
}
 .contact-page .contact-section-header h2{
    font-size:36px;
    font-weight:800;
    color:var(--primary-blue);
    margin-bottom:14px;
    line-height:1.25
}
 .contact-page .contact-section-header p{
    font-size:16px;
    color:var(--text-gray);
    max-width:80%;
    margin:0 auto;
    line-height:1.75
}
 .contact-page .contact-info-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:64px
}
 .contact-page .contact-info-card{
    background:#fff;
    border:1px solid var(--border-color);
    border-radius:16px;
    padding:32px 24px;
    text-align:center;
    transition:box-shadow .25s,transform .25s;
    position:relative;
    overflow:hidden
}
 .contact-page .contact-info-card::before{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:3px;
    background:linear-gradient(90deg,var(--accent-orange),#ff8c52);
    transform:scaleX(0);
    transition:transform .3s
}
 .contact-page .contact-info-card:hover{
    transform:translateY(-4px)
}
 .contact-page .contact-info-card:hover::before{
    transform:scaleX(1)
}
 .contact-page .contact-info-icon{
    width:56px;
    height:56px;
    background:linear-gradient(135deg,#fff4ef 0,#ffe8d8 100%);
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 18px
}
 .contact-page .contact-info-icon svg{
    width:26px;
    height:26px;
    stroke:var(--accent-orange);
    fill:none;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round
}
 .contact-page .contact-info-card h4{
    font-size:15px;
    font-weight:700;
    color:var(--primary-blue);
    margin-bottom:10px
}
 .contact-page .contact-info-card a,.contact-page .contact-info-card p{
    font-size:14px;
    color:var(--text-gray);
    line-height:1.7;
    text-decoration:none;
    display:block
}
 .contact-page .contact-info-card a:hover{
    color:var(--accent-orange)
}
 .contact-page .contact-body{
    display:grid;
    grid-template-columns:1fr 1fr;
    background:#fff;
    border-radius:20px 20px 0 0;
    overflow:hidden
}
 .contact-page .contact-form-wrap{
    padding:56px 52px
}
 .contact-page .contact-form-title,.contact-page .contact-map-title{
    font-size:24px;
    font-weight:800;
    color:var(--primary-blue);
    margin-bottom:8px
}
 .contact-page .contact-form-desc,.contact-page .contact-map-desc{
    font-size:14px;
    color:var(--text-gray);
    margin-bottom:32px;
    line-height:1.7
}
 .contact-page .form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px
}
 .contact-page .form-group{
    margin-bottom:20px
}
 .contact-page .form-group.full{
    grid-column:1/-1
}
 .contact-page .form-group label{
    display:block;
    font-size:13px;
    font-weight:600;
    color:var(--text-dark);
    margin-bottom:7px
}
 .contact-page .form-group label .req{
    color:var(--accent-orange);
    margin-left:2px
}
 .contact-page .form-control{
    width:100%;
    padding:12px 16px;
    font-size:14px;
    color:var(--text-dark);
    background:#f7f9fc;
    border:1.5px solid var(--border-color);
    border-radius:10px;
    outline:0;
    transition:border-color .2s,box-shadow .2s,background .2s;
    box-sizing:border-box;
    font-family:inherit
}
 .contact-page .form-control:focus{
    border-color:var(--accent-orange);
    background:#fff;
    box-shadow:0 0 0 3px rgba(255,107,44,.1)
}
 .contact-page .form-control::placeholder{
    color:#b0b8c4
}
 .contact-page select.form-control{
    cursor:pointer;
    appearance:none;
    background-image:url("../images/style-select-caret.webp");
    background-repeat:no-repeat;
    background-position:right 14px center;
    padding-right:36px
}
 .contact-page textarea.form-control{
    resize:vertical;
    min-height:120px
}
 .contact-page .form-submit-row{
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:8px;
    flex-wrap:wrap
}
 .contact-page .form-submit-btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:14px 36px;
    background:linear-gradient(135deg,var(--accent-orange) 0,#ff8c52 100%);
    color:#fff;
    font-size:15px;
    font-weight:700;
    border:none;
    border-radius:10px;
    cursor:pointer;
    transition:opacity .2s,transform .2s,box-shadow .2s
}
 .contact-page .form-submit-btn:hover{
    opacity:.92;
    transform:translateY(-1px);
    box-shadow:0 6px 20px rgba(255,107,44,.3)
}
 .contact-page .form-privacy-note{
    font-size:14px;
    color:var(--text-light);
    line-height:1.6
}
 .contact-page .form-success-toast{
    display:none;
    align-items:center;
    gap:10px;
    background:#edfaf3;
    border:1px solid #a3e6c0;
    border-radius:10px;
    padding:14px 18px;
    margin-top:20px;
    font-size:14px;
    color:#1a7a4a;
    font-weight:600
}
 .contact-page .form-success-toast.show{
    display:flex
}
 .contact-page .contact-map-wrap{
    display:flex;
    flex-direction:column
}
 .contact-page .contact-map-header{
    padding:40px 44px 24px
}
 .contact-page .contact-map-address-row{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:0 44px 24px
}
 .contact-page .contact-map-address-row svg{
    width:18px;
    height:18px;
    stroke:var(--accent-orange);
    fill:none;
    stroke-width:2;
    flex-shrink:0;
    margin-top:2px
}
 .contact-page .contact-map-address-row p{
    font-size:14px;
    color:var(--text-gray);
    line-height:1.7
}
 .contact-page .contact-map-address-row strong{
    color:var(--text-dark)
}
 .contact-page .contact-map-iframe-wrap{
    flex:1;
    min-height:380px;
    position:relative
}
 .contact-page .contact-map-iframe-wrap iframe{
    width:100%;
    height:100%;
    min-height:380px;
    border:none;
    display:block
}
 .contact-page .map-loading{
    position:absolute;
    inset:0;
    background:#f0f4f8;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    color:var(--text-gray);
    font-size:14px;
    pointer-events:none;
    transition:opacity .4s
}
 .contact-page .map-loading.hidden{
    opacity:0
}
 .contact-page .map-loading svg{
    width:40px;
    height:40px;
    stroke:var(--accent-orange);
    fill:none;
    stroke-width:1.5;
    animation:spin 1.4s linear infinite
}
 .contact-page .contact-hours-strip{
    background:var(--primary-blue);
    padding:48px 0
}
 .contact-page .contact-hours-inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:32px;
    flex-wrap:wrap
}
 .contact-page .contact-hours-left h3{
    font-size:22px;
    font-weight:800;
    color:#fff;
    margin-bottom:6px
}
 .contact-page .contact-hours-left p{
    font-size:14px;
    color:rgba(255,255,255,.75);
    line-height:1.6
}
 .contact-page .contact-hours-list{
    display:flex;
    gap:32px;
    flex-wrap:wrap
}
 .contact-page .contact-hours-item{
    text-align:center
}
 .contact-page .contact-hours-item .day{
    font-size:12px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:rgba(255,255,255,.6);
    margin-bottom:4px
}
 .contact-page .contact-hours-item .time{
    font-size:15px;
    font-weight:700;
    color:#fff
}
 .contact-page .contact-hours-item .time.closed{
    color:rgba(255,255,255,.4)
}
 .contact-page .contact-hours-badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.2);
    border-radius:20px;
    padding:6px 16px;
    font-size:13px;
    color:#fff;
    font-weight:600
}
 .contact-page .contact-hours-badge .dot{
    width:8px;
    height:8px;
    background:#4ade80;
    border-radius:50%
}
 .blog-page .page-banner .page-banner-bg{
    background-image:url('../images/style-about-banner-3.webp')
}
 .blog-page .blog-page-wrap{
    background:#f7f9fc;
    padding-bottom:80px
}
 .blog-page .blog-section-header{
    text-align:center;
    padding:64px 0 52px
}
 .blog-page .blog-section-header .section-label{
    display:inline-block;
    font-size:13px;
    font-weight:700;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--accent-orange);
    background:#fff4ef;
    padding:5px 16px;
    border-radius:20px;
    margin-bottom:16px
}
 .blog-page .blog-section-header h2{
    font-size:36px;
    font-weight:800;
    color:var(--primary-blue);
    margin-bottom:16px;
    line-height:1.25
}
 .blog-page .blog-section-header p{
    font-size:16px;
    color:var(--text-gray);
    max-width:80%;
    margin:0 auto;
    line-height:1.75
}
 .blog-page .blog-filter-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    flex-wrap:wrap;
    margin-bottom:40px
}
 .blog-page .blog-filter-tabs{
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
 .blog-page .blog-filter-tab{
    padding:8px 20px;
    border-radius:20px;
    font-size:14px;
    font-weight:600;
    cursor:pointer;
    border:1.5px solid var(--border-color);
    background:#fff;
    color:var(--text-gray);
    transition:all .2s;
    user-select:none
}
 .blog-page .blog-filter-tab.active,.blog-page .blog-filter-tab:hover{
    border-color:var(--accent-orange)
}
 .blog-page .blog-filter-tab.active{
    background:var(--accent-orange);
    color:#fff
}
 .blog-page .blog-result-count{
    font-size:14px;
    color:var(--text-light)
}
 .blog-page .blog-result-count strong{
    color:var(--text-dark)
}
 .blog-page .blog-featured{
    background:#fff;
    border:1px solid var(--border-color);
    border-radius:18px;
    overflow:hidden;
    margin-bottom:32px;
    transition:box-shadow .25s,transform .25s;
    text-decoration:none;
    color:inherit
}
 .blog-page .blog-featured a{
    display:grid;
    grid-template-columns:1fr 1fr
}
 .blog-page .blog-featured:hover{
    transform:translateY(-3px)
}
 .blog-page .blog-featured-img{
    position:relative;
    overflow:hidden;
    min-height:320px
}
 .blog-card-img img,.blog-page .blog-card-img img,.blog-page .blog-featured-img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    transition:transform .5s ease
}
 .blog-card:hover .blog-card-img img,.blog-page .blog-card:hover .blog-card-img img,.blog-page .blog-featured:hover .blog-featured-img img{
    transform:scale(1.04)
}
 .blog-page .blog-featured-badge{
    position:absolute;
    top:20px;
    left:20px;
    background:var(--accent-orange);
    color:#fff;
    font-size:12px;
    font-weight:700;
    padding:5px 14px;
    border-radius:20px;
    letter-spacing:.05em;
    text-transform:uppercase
}
 .blog-page .blog-featured-body{
    padding:44px 48px;
    display:flex;
    flex-direction:column;
    justify-content:center
}
 .blog-card-meta,.blog-page .blog-card-meta,.blog-page .blog-featured-meta{
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:14px
}
 .blog-page .blog-cat-tag{
    display:inline-block;
    font-size:12px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:var(--accent-orange);
    background:#fff4ef;
    padding:4px 12px;
    border-radius:20px
}
 .blog-meta-date,.blog-page .blog-meta-date,.blog-page .blog-read-time,.blog-read-time{
    font-size:14px;
    font-weight:500;
    color:var(--text-light);
    display:flex;
    align-items:center;
    gap:4px;
    letter-spacing:.01em
}
 .blog-meta-date svg,.blog-page .blog-meta-date svg,.blog-page .blog-read-time svg,.blog-read-time svg{
    width:13px;
    height:13px;
    flex-shrink:0;
    stroke:var(--accent-orange);
    fill:none;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round
}
 .blog-page .blog-featured-title{
    font-size:22px;
    font-weight:700;
    color:var(--primary-blue);
    line-height:1.3;
    margin-bottom:15px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .blog-card-excerpt,.blog-page .blog-card-excerpt,.blog-page .blog-featured-excerpt{
    font-size:15px;
    color:var(--text-gray);
    line-height:1.75;
    display:-webkit-box;
    display:box;
    -webkit-line-clamp:2;
    line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    max-height:calc(1.75em * 2);
    margin-bottom:20px;
    flex:1
}
 .blog-page .blog-read-more,.blog-read-more{
    display:inline-flex;
    align-items:center;
    gap:7px;
    font-size:14px;
    font-weight:700;
    color:var(--accent-orange);
    text-decoration:none
}
 .blog-page .blog-read-more svg,.blog-read-more svg{
    width:16px;
    height:16px;
    stroke:currentColor;
    fill:none;
    stroke-width:2.5;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .2s
}
 .blog-page .blog-read-more:hover svg,.blog-read-more:hover svg{
    transform:translateX(4px)
}
 .blog-card-footer,.blog-page .blog-card-footer,.blog-page .blog-featured-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap
}
 .blog-author,.blog-page .blog-author{
    font-size:13px;
    font-weight:600;
    color:var(--text-light)
}
 .blog-page .blog-author-avatar{
    width:36px;
    height:36px;
    border-radius:50%;
    background:linear-gradient(135deg,var(--primary-blue),var(--accent-orange));
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:700;
    color:#fff;
    flex-shrink:0
}
 .blog-page .blog-author-name{
    font-size:13px;
    font-weight:600;
    color:var(--text-dark)
}
 .blog-page .blog-author-role{
    font-size:12px;
    color:var(--text-light)
}
 .blog-page .blog-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
    margin-bottom:32px
}
 .blog-page .blog-card{
    background:#fff;
    border:1px solid var(--border-color);
    border-radius:16px;
    overflow:hidden;
    transition:box-shadow .25s,transform .25s;
    display:flex;
    flex-direction:column;
    text-decoration:none;
    color:inherit
}
 .blog-page .blog-card:hover{
    transform:translateY(-4px)
}
 .blog-page .blog-card-img{
    position:relative;
    overflow:hidden;
    height:210px
}
 .blog-page .blog-card-img .blog-cat-tag{
    position:absolute;
    top:14px;
    left:14px
}
 .blog-page .blog-card-body{
    padding:24px 26px;
    flex:1;
    display:flex;
    flex-direction:column
}
 .blog-page .blog-card-title{
    font-size:17px;
    font-weight:700;
    color:var(--primary-blue);
    line-height:1.4;
    margin-bottom:12px;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .blog-page .blog-card-footer{
    padding-top:16px;
    border-top:1px solid var(--border-color)
}
 .blog-page .blog-pagination-wrap{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:16px 0 0
}
 .blog-page .inside-pagination{
    padding:16px 0 0
}
 .blog-page .inside-pagination ul{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    margin:0;
    padding:0;
    list-style:none
}
 .blog-page .inside-pagination li{
    margin:0;
    padding:0
}
 .blog-page .inside-pagination a{
    width:40px;
    height:40px;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:600;
    border:1.5px solid var(--border-color);
    background:#fff;
    color:var(--text-gray);
    text-decoration:none
}
 .blog-page .inside-pagination li.active a{
    background:var(--accent-orange);
    border-color:var(--accent-orange);
    color:#fff
}
 .blog-page .inside-pagination .next-page img,.blog-page .inside-pagination .pre-page img{
    display:none
}
 .blog-page .inside-pagination .next-page a::before,.blog-page .inside-pagination .pre-page a::before{
    content:"";
    width:8px;
    height:8px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
    flex-shrink:0
}
 .blog-page .inside-pagination .pre-page a::before{
    transform:rotate(-135deg);
    margin-left:2px
}
 .blog-page .inside-pagination .next-page a::before{
    transform:rotate(45deg);
    margin-right:2px
}
 .blog-page .blog-page-btn{
    width:40px;
    height:40px;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:600;
    border:1.5px solid var(--border-color);
    background:#fff;
    color:var(--text-gray);
    text-decoration:none
}
 .blog-page .blog-page-arrow{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:8px;
    height:8px;
    border-top:2px solid currentColor;
    border-right:2px solid currentColor;
    flex-shrink:0
}
 .blog-page .blog-page-arrow--prev{
    transform:rotate(-135deg);
    margin-left:2px
}
 .blog-page .blog-page-arrow--next{
    transform:rotate(45deg);
    margin-right:2px
}
 .blog-page .blog-page-btn.active{
    background:var(--accent-orange);
    border-color:var(--accent-orange);
    color:#fff
}
 .blog-page .blog-page-btn.disabled{
    opacity:.4;
    pointer-events:none
}
 .blog-page .blog-page-ellipsis{
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    color:var(--text-light)
}
 .blog-page .nav-link.is-active{
    color:var(--accent-orange)
}
 .blog-detail{
    background:#f5f6fa;
    padding-bottom:90px
}
 .blog-detail .cta-section{
    margin-bottom:0
}
 .blog-detail-layout{
    display:grid;
    grid-template-columns:1fr 345px;
    gap:40px;
    padding:90px 0
}
 .blog-detail-main{
    min-width:0;
    background:#fff;
    padding:50px;
    font-size:16px
}
 .blog-detail-title{
    font-size:28px;
    font-weight:700;
    color:#1a2236;
    line-height:1.5;
    margin:0 0 20px;
    text-align:center
}
 .blog-detail-meta{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:20px;
    padding-bottom:30px;
    color:#6b7280;
    font-size:16px;
    line-height:1.6;
    border-bottom:1px solid #ddd
}
 .blog-detail-divider{
    padding-top:30px
}
 .blog-detail-meta span{
    display:inline-flex;
    align-items:center;
    gap:6px
}
 .blog-detail-meta svg{
    width:16px;
    height:16px;
    flex-shrink:0
}
 .blog-detail-intro{
    font-size:16px;
    color:#333;
    margin-bottom:8px;
    font-weight:700
}
 .blog-detail-main p{
    font-size:16px;
    line-height:1.65;
    margin:0 0 14px
}
 .blog-detail-main ul,.sd-detail-section .sd-advantages ul,.service-offerings-content ul,.ship-by-region-detail-box ul{
    list-style:disc;
    padding-left:1.2em;
    margin:0 0 14px
}
 .blog-detail-main ol,.sd-detail-section .sd-advantages ol,.service-offerings-content ol,.ship-by-region-detail-box ol{
    list-style:decimal;
    padding-left:1.35em;
    margin:0 0 14px
}
 .blog-detail-main li,.sd-detail-section .sd-advantages li,.service-offerings-content li,.ship-by-region-detail-box li{
    display:list-item;
    margin:0 0 6px
}
 .blog-detail-main ul li ol,.sd-detail-section .sd-advantages ul li ol,.service-offerings-content ul li ol,.ship-by-region-detail-box ul li ol{
    margin-top:6px
}
 .blog-detail-main td,.blog-detail-main th,.sd-detail-section .sd-advantages td,.sd-detail-section .sd-advantages th,.service-offerings-content td,.service-offerings-content th,.ship-by-region-detail-box td,.ship-by-region-detail-box th{
    padding:10px
}
 .blog-detail-h2{
    scroll-margin-top:110px;
    font-size:20px;
    font-weight:700;
    color:#1a2236;
    margin:28px 0 12px;
    padding-bottom:8px
}
 .blog-detail-h3{
    font-size:16px;
    font-weight:700;
    color:#1a2236;
    margin:18px 0 8px
}
 .blog-detail-img-wrap{
    margin:24px 0;
    border-radius:8px;
    overflow:hidden
}
 .blog-detail-img-wrap img{
    width:100%;
    height:auto;
    display:block;
    border-radius:8px
}
 .blog-detail-table-wrap{
    overflow-x:auto;
    margin:20px 0 24px
}
 .blog-detail-table{
    width:100%;
    border-collapse:collapse;
    font-size:16px
}
 .blog-detail-table th{
    background:#1a6fc4;
    color:#fff;
    padding:10px 14px;
    text-align:left;
    font-weight:600
}
 .blog-detail-table td{
    padding:9px 14px;
    border-bottom:1px solid #e8edf5;
    color:#555;
    vertical-align:top
}
 .blog-detail-table tr:nth-child(2n) td{
    background:#f7f9fc
}
 .blog-detail-share{
    display:flex;
    align-items:center;
    gap:14px;
    margin:32px 0 24px;
    padding-bottom:24px;
    border-bottom:1px solid #e8edf5
}
 .blog-detail-share-label{
    font-size:16px;
    font-weight:600;
    white-space:nowrap
}
 .blog-detail-share-icons{
    display:flex;
    gap:8px;
    flex-wrap:wrap
}
 .share-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:#1a6fc4;
    color:#fff;
    transition:background .2s,transform .2s;
    text-decoration:none
}
 .blog-detail-nav{
    display:flex;
    flex-direction:column;
    gap:15px;
    margin-top:20px
}
 .blog-nav-next,.blog-nav-prev{
    display:block;
    text-decoration:none;
    padding:0;
    border:0;
    border-radius:0;
    transition:opacity .2s;
    font-weight:600
}
 .blog-nav-next:hover,.blog-nav-prev:hover{
    opacity:.75
}
 .blog-nav-label{
    font-size:15px;
    text-transform:none;
    letter-spacing:0
}
 .blog-nav-text{
    font-size:15px;
    line-height:1.45
}
 .blog-detail-sidebar{
    display:flex;
    flex-direction:column;
    gap:16px;
    position:sticky;
    top:110px;
    align-self:start
}
 .blog-detail-sidebar-toggle{
    display:none
}
 .blog-sidebar{
    display:flex;
    flex-direction:column;
    gap:16px
}
 .sidebar-widget{
    background:#fff;
    border:1px solid #edf1f6;
    border-radius:6px;
    overflow:hidden
}
 .sidebar-widget-title{
    position:relative;
    margin:0;
    padding:20px;
    font-size:20px;
    font-weight:800;
    border-bottom:1px solid #edf1f6
}
 .sidebar-category-list{
    list-style:none;
    padding:0 20px;
    margin:0
}
 .sidebar-category-list li{
    border-bottom:1px solid #edf1f6
}
 .sidebar-category-list li:last-child{
    border-bottom:none
}
 .sidebar-category-list li a{
    display:block;
    padding:16px 8px;
    font-size:16px;
    font-weight:600;
    color:#353b46;
    text-decoration:none;
    transition:color .2s,background .2s
}
 .sidebar-category-list li a:hover,.sidebar-category-list li.active a{
    color:var(--accent-orange)
}
 .sidebar-anchor-list li a{
    font-size:14px;
    line-height:1.45;
    padding:12px 0
}
 .sidebar-recent-list{
    list-style:none;
    padding:18px 28px 22px;
    margin:0
}
 .sidebar-recent-item+.sidebar-recent-item{
    margin-top:18px
}
 .sidebar-recent-thumb{
    display:block;
    width:100%;
    height:142px;
    border-radius:2px;
    overflow:hidden;
    margin-bottom:8px
}
 .sidebar-recent-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block
}
 .sidebar-recent-title{
    margin:0 0 6px;
    font-size:16px;
    line-height:1.5;
    color:#373d47;
    font-weight:400;
    text-decoration:none;
    transition:color .2s;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden
}
 .sidebar-recent-title:hover{
    color:var(--accent-orange)
}
 .sidebar-recent-date{
    display:block;
    font-size:14px;
    color:#9aa3af
}
 .sidebar-service-list{
    list-style:none;
    padding:18px 26px 22px;
    margin:0
}
 .sidebar-service-list li+li{
    margin-top:10px
}
 .sidebar-service-list a{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
    font-size:15px
}
 .sidebar-service-list img{
    width:22px;
    height:22px;
    object-fit:contain
}
 .blog-pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin-top:40px;
    padding-top:32px
}
 .blog-pagination a,.blog-pagination span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:45px;
    height:45px;
    border-radius:4px;
    font-size:15px;
    font-weight:600;
    color:#444;
    text-decoration:none;
    border:1px solid #e0e6ef;
    transition:all .2s;
    cursor:pointer
}
 .blog-pagination a:hover{
    background:#1a6fc4;
    color:#fff;
    border-color:#1a6fc4
}
 .blog-pagination .active{
    background:#1a6fc4;
    color:#fff;
    border-color:#1a6fc4
}
 .blog-pagination .dots{
    border:none;
    color:#999;
    cursor:default
}
 .warehouse-page .warehouse-directory{
    padding:72px 0 104px;
    background:radial-gradient(circle at top left,rgba(255,107,44,.08),transparent 28%),linear-gradient(180deg,#fff 0,#f7faff 100%)
}
 .warehouse-page .warehouse-page-banner .page-banner-bg{
    background-position:center 36%
}
 .warehouse-page .warehouse-directory-intro{
    margin:0 auto 60px;
    text-align:center
}
 .warehouse-page .warehouse-directory-kicker{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 16px;
    margin-bottom:18px;
    border-radius:999px;
    background:rgba(255,107,44,.12);
    color:var(--accent-orange);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-transform:uppercase
}
 .warehouse-page .warehouse-directory-list{
    display:grid;
    gap:20px
}
 .warehouse-page .warehouse-directory-shell{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:30px
}
 .warehouse-page .warehouse-directory-content{
    flex:1 1 0;
    min-width:0
}
 .warehouse-page .warehouse-form-wrap{
    flex:0 0 380px;
    width:380px;
    max-width:100%;
    align-self:flex-start;
    position:relative;
    z-index:1
}
 .warehouse-page .warehouse-form-card{
    display:block;
    width:100%;
    padding:30px;
    border-radius:10px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(163,177,214,.2);
    box-sizing:border-box
}
 .warehouse-page .warehouse-form-title{
    margin-bottom:30px;
    color:var(--primary-blue);
    font-size:22px;
    font-weight:700;
    line-height:1.15
}
 .warehouse-page .warehouse-form{
    display:block;
    padding:0;
    border:none;
    border-radius:0;
    box-shadow:none;
    background:0 0
}
 .warehouse-page .warehouse-form>.input{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    margin-bottom:14px
}
 .warehouse-page .warehouse-form-group{
    display:flex;
    flex-direction:column;
    gap:0
}
 .warehouse-page .warehouse-form input,.warehouse-page .warehouse-form textarea{
    padding:14px 15px;
    border:unset;
    border-radius:0;
    background:#eef3ff;
    color:var(--text-dark);
    font-size:15px;
    outline:unset
}
 .warehouse-page .warehouse-form input::placeholder,.warehouse-page .warehouse-form textarea::placeholder{
    color:#6c7894
}
 .warehouse-page .warehouse-form input:focus,.warehouse-page .warehouse-form textarea:focus{
    border-color:rgba(61,98,233,.42);
    background:#f7f9ff
}
 .warehouse-page .warehouse-form>.textarea_box{
    margin-bottom:28px
}
 .warehouse-page .warehouse-form textarea{
    min-height:170px;
    resize:unset;
    font-family:unset
}
 .warehouse-page .warehouse-form>.submit{
    text-align:center
}
 .warehouse-page .warehouse-submit-btn{
    display:inline-flex;
    width:auto;
    min-width:160px;
    justify-content:center;
    align-items:center;
    padding:15px 20px;
    margin-top:0;
    border-radius:100vh;
    background:linear-gradient(135deg,#3664ef 0,#2d4fd7 100%);
    border:none;
    color:#fff;
    font-size:15px;
    font-weight:700;
    line-height:1;
    text-decoration:none;
    cursor:pointer;
    transition:transform .22s ease,box-shadow .22s ease,opacity .22s ease
}
 .warehouse-page .warehouse-submit-btn:hover{
    transform:translateY(-2px)
}
 .warehouse-page .warehouse-card{
    border-radius:10px;
    background:rgba(255,255,255,.94);
    border:1px solid rgba(163,177,214,.24);
    overflow:hidden;
    transition:border-color .26s ease,box-shadow .26s ease,transform .26s ease
}
 .warehouse-page .warehouse-card.is-open,.warehouse-page .warehouse-card:hover{
    border-color:rgba(92,117,189,.22)
}
 .warehouse-page .warehouse-card-toggle{
    -webkit-appearance:none;
    appearance:none;
    width:100%;
    border:none;
    background:0 0;
    color:inherit;
    font:inherit;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:20px;
    text-align:left;
    cursor:pointer;
    box-sizing:border-box
}
 .warehouse-page .warehouse-card-main{
    min-width:0;
    display:flex;
    align-items:center;
    gap:26px;
    flex:1
}
 .warehouse-page .warehouse-card-heading{
    min-width:0
}
 .warehouse-page .warehouse-card-title{
    display:block;
    color:var(--primary-blue);
    font-size:22px;
    font-weight:700;
    line-height:1.22
}
 .warehouse-page .warehouse-card-action{
    flex-shrink:0;
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:#7d88b5;
    font-size:18px;
    font-weight:500;
    transition:color .24s ease
}
 .warehouse-page .warehouse-card-action-text-close{
    display:none
}
 .warehouse-page .warehouse-card.is-open .warehouse-card-action-text-open{
    display:none
}
 .warehouse-page .warehouse-card.is-open .warehouse-card-action-text-close{
    display:inline
}
 .warehouse-page .warehouse-card.is-open .warehouse-card-action,.warehouse-page .warehouse-card:hover .warehouse-card-action{
    color:var(--primary-blue)
}
 .warehouse-page .warehouse-card-action-icon{
    width:12px;
    height:12px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg);
    transition:transform .24s ease
}
 .warehouse-page .warehouse-card.is-open .warehouse-card-action-icon{
    transform:rotate(225deg)
}
 .warehouse-page .warehouse-card-panel{
    max-height:0;
    overflow:hidden;
    transition:max-height .34s ease
}
 .warehouse-page .warehouse-card-panel-inner{
    padding:0 20px
}
 .warehouse-page .warehouse-card-note{
    padding:24px 26px;
    border-radius:22px;
    background:linear-gradient(180deg,#f7faff 0,#eef3ff 100%);
    color:var(--text-gray);
    line-height:1.9
}
 .warehouse-page .warehouse-card-note strong{
    color:var(--primary-blue)
}
 .warehouse-page .warehouse-card-scroll{
    overflow-x:auto
}
 .warehouse-page .warehouse-table{
    width:100%;
    min-width:760px;
    border-collapse:collapse;
    border-spacing:0;
    color:#4d5d78
}
 .warehouse-page .warehouse-table thead th{
    padding:10px;
    background:#d8e0fb;
    color:var(--primary-blue);
    font-size:16px;
    text-align:left
}
 .warehouse-page .warehouse-table tbody tr{
    border-bottom:1px solid rgba(163,177,214,.22)
}
 .warehouse-page .warehouse-table tbody tr:last-child{
    border-bottom:none
}
 .warehouse-page .warehouse-table tbody tr:hover{
    background:rgba(216,224,251,.18)
}
 .warehouse-page .warehouse-table td{
    padding:10px;
    font-size:16px;
    line-height:1.7;
    vertical-align:middle
}
 .warehouse-page .warehouse-table td:first-child{
    color:var(--primary-blue)
}
 .warehouse-page .warehouse-flag{
    position:relative;
    width:100px;
    height:60px;
    flex-shrink:0;
    border:1px solid rgba(163,177,214,.3);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.6);
    overflow:hidden
}
 .warehouse-page .warehouse-flag-img img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover
}
 .warehouse-page .warehouse-flag-japan{
    background:#fff
}
 .warehouse-page .warehouse-flag-japan::before{
    content:"";
    position:absolute;
    inset:0;
    margin:auto;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#ff1a10
}
 .warehouse-page .warehouse-flag-usa{
    background:repeating-linear-gradient(to bottom,#c81642 0 7px,#fff 7px 14px)
}
 .warehouse-page .warehouse-flag-usa::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:44px;
    height:34px;
    border-top-left-radius:14px;
    background:radial-gradient(circle,rgba(255,255,255,.9) 0 1px,transparent 1.2px) 4px 4px/7px 7px,#21468b
}
 