:root{
    --vm-navy:#0b1b2b;
    --vm-navy-2:#12263a;
    --vm-blue:#2b6ef3;
    --vm-red:#ef4d48;
    --vm-cyan:#18b7d9;
    --vm-white:#ffffff;
    --vm-text:#17212b;
    --vm-muted:#687786;
    --vm-line:#e8edf2;
    --vm-soft:#f5f7f9;
    --vm-radius:18px;
    --vm-shadow:0 20px 50px rgba(11,27,43,.10);
}

html{scroll-behavior:smooth}
body.vm-site{background:#fff;color:var(--vm-text);font-family:Poppins,sans-serif}
.vm-main{margin-top:0!important;padding-top:0!important}
.vm-main .page-content{overflow:hidden}

/* Utility bar */
.vm-utility-bar{background:var(--vm-navy);color:#dce5ec;font-size:12px;position:relative;z-index:1100}
.vm-utility-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.vm-utility-message{display:flex;align-items:center;gap:8px;white-space:nowrap}
.vm-status-dot{width:7px;height:7px;border-radius:50%;background:#42d392;box-shadow:0 0 0 4px rgba(66,211,146,.10)}
.vm-utility-links{display:flex;align-items:center;gap:18px}
.vm-utility-links a{color:#dce5ec;font-weight:500}
.vm-utility-links a:hover{color:#fff}
.vm-utility-links i{margin-right:5px}
.vm-whatsapp-link i{color:#4dd98a}

/* Main header */
.vm-header{position:sticky;top:0;z-index:1090;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(232,237,242,.9);backdrop-filter:blur(16px);transition:box-shadow .3s ease,transform .3s ease,background .3s ease}
.vm-header.vm-scrolled{box-shadow:0 12px 36px rgba(11,27,43,.10);background:rgba(255,255,255,.985)}
.vm-header-inner{height:82px;display:flex;align-items:center;gap:28px}
.vm-logo{display:flex;align-items:center;flex:0 0 auto}
.vm-logo img{width:auto;height:54px;display:block}
.vm-main-nav{flex:1;display:flex;justify-content:center}
.vm-main-nav>.menu{display:flex;align-items:center;gap:3px}
.vm-main-nav>.menu>li{position:relative}
.vm-main-nav>.menu>li>a{display:flex;align-items:center;min-height:82px;padding:0 13px;color:var(--vm-text);font-size:13px;font-weight:600;letter-spacing:-.01em;position:relative;white-space:nowrap}
.vm-main-nav>.menu>li>a:after{content:"";position:absolute;left:13px;right:13px;bottom:18px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--vm-red),var(--vm-blue));transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.vm-main-nav>.menu>li:hover>a,.vm-main-nav>.menu>li.active>a{color:var(--vm-navy)}
.vm-main-nav>.menu>li:hover>a:after,.vm-main-nav>.menu>li.active>a:after{transform:scaleX(1)}

.vm-main-nav .menu>li>ul{min-width:245px;padding:14px;background:#fff;border:1px solid var(--vm-line);border-radius:14px;box-shadow:var(--vm-shadow);top:76px}
.vm-main-nav .menu>li>ul li a{padding:10px 12px;border-radius:9px;color:#394957;font-size:13px;font-weight:500;transition:background .2s ease,color .2s ease,transform .2s ease}
.vm-main-nav .menu>li>ul li a:hover{background:var(--vm-soft);color:var(--vm-navy);transform:translateX(3px)}
.vm-main-nav .vm-mega-list{min-width:285px}

.vm-header-actions{display:flex;align-items:center;flex:0 0 auto}
.vm-portal-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 17px;border-radius:999px;background:var(--vm-navy);color:#fff!important;font-size:12.5px;font-weight:700;box-shadow:0 8px 24px rgba(11,27,43,.16);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.vm-portal-btn:hover{transform:translateY(-2px);background:var(--vm-blue);box-shadow:0 12px 30px rgba(43,110,243,.24)}
.vm-portal-btn i{font-size:16px}
.vm-mobile-toggle{display:none;color:var(--vm-navy)}

/* Reusable modern section language */
.vm-section{padding:90px 0}
.vm-section-sm{padding:60px 0}
.vm-eyebrow{display:inline-block;margin-bottom:12px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--vm-blue)}
.vm-display-title{font-size:clamp(32px,4.5vw,68px);line-height:1.02;letter-spacing:-.045em;font-weight:700;color:var(--vm-navy)}
.vm-section-title{font-size:clamp(27px,3vw,44px);line-height:1.1;letter-spacing:-.035em;color:var(--vm-navy);font-weight:700}
.vm-lead{font-size:16px;line-height:1.8;color:var(--vm-muted);max-width:760px}
.vm-card{background:#fff;border:1px solid var(--vm-line);border-radius:var(--vm-radius);box-shadow:0 10px 30px rgba(11,27,43,.05);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;overflow:hidden}
.vm-card:hover{transform:translateY(-7px);box-shadow:var(--vm-shadow);border-color:#dbe5ef}
.vm-media-zoom{overflow:hidden;border-radius:var(--vm-radius)}
.vm-media-zoom img{width:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.vm-media-zoom:hover img{transform:scale(1.045)}

.vm-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.vm-btn:hover{transform:translateY(-2px)}
.vm-btn-light{background:#fff;color:var(--vm-navy)!important;border:1px solid #fff}
.vm-btn-outline-light{border:1px solid rgba(255,255,255,.55);color:#fff!important;background:transparent}
.vm-btn-outline-light:hover{background:#fff;color:var(--vm-navy)!important}

/* Scroll reveal */
[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}
[data-reveal="left"]{transform:translateX(-34px)}
[data-reveal="right"]{transform:translateX(34px)}
[data-reveal="scale"]{transform:scale(.96)}
[data-reveal].vm-visible{opacity:1;transform:none}
.vm-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}
.vm-stagger.vm-visible>*{opacity:1;transform:none}
.vm-stagger.vm-visible>*:nth-child(2){transition-delay:.08s}
.vm-stagger.vm-visible>*:nth-child(3){transition-delay:.16s}
.vm-stagger.vm-visible>*:nth-child(4){transition-delay:.24s}
.vm-stagger.vm-visible>*:nth-child(5){transition-delay:.32s}
.vm-stagger.vm-visible>*:nth-child(6){transition-delay:.40s}

/* Global CTA */
.vm-global-cta{margin:0;background:linear-gradient(115deg,#0b1b2b 0%,#0f304b 62%,#163e59 100%);color:#fff;position:relative;overflow:hidden}
.vm-global-cta:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-120px;top:-210px;background:radial-gradient(circle,rgba(43,110,243,.35),rgba(43,110,243,0) 70%)}
.vm-global-cta-inner{min-height:260px;display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;z-index:1}
.vm-global-cta .vm-eyebrow{color:#88b0ff}
.vm-global-cta h2{margin:0 0 12px;color:#fff;font-size:clamp(27px,3vw,42px);line-height:1.12;letter-spacing:-.035em;font-weight:700;max-width:780px}
.vm-global-cta p{margin:0;color:#bdc9d4;font-size:14px;max-width:720px}
.vm-global-cta-actions{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto}

/* Footer */
.vm-footer{background:#07131f!important;color:#9eb0bf;padding:0!important}
.vm-footer .container-fluid{padding-top:64px}
.vm-footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:42px;padding-bottom:48px}
.vm-footer-brand img{width:150px;margin-bottom:22px}
.vm-footer-brand p{font-size:13px;line-height:1.8;color:#9eb0bf;max-width:330px}
.vm-footer h4{color:#fff;font-size:13px;font-weight:700;margin-bottom:18px}
.vm-footer ul{list-style:none;margin:0;padding:0}
.vm-footer li{margin-bottom:10px}
.vm-footer a{color:#9eb0bf;font-size:12.5px}
.vm-footer a:hover{color:#fff}
.vm-footer-social{display:flex;gap:10px;margin-top:20px}
.vm-footer-social a{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.13);color:#fff}
.vm-footer-social a:hover{background:#fff;color:var(--vm-navy)}
.vm-footer-contact{display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding:20px 0;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09);font-size:12px}
.vm-footer-contact i{margin-right:7px;color:#fff}
.vm-footer-bottom{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.vm-footer-bottom p{margin:0;color:#728698;font-size:11.5px}
.vm-footer-bottom div{display:flex;gap:18px}

/* Mobile menu polish */
.vm-mobile-brand{padding:6px 0 26px}
.vm-mobile-brand img{width:135px}
.mobile-menu-wrapper .mobile-menu-container-fluid{background:var(--vm-navy);padding:30px 24px}
.mobile-menu a{color:#d9e3eb}
.mobile-menu>li>a{font-weight:600;border-bottom:1px solid rgba(255,255,255,.08)}
.mobile-menu li:hover>a{color:#fff}

.scroll-top{border-radius:50%!important;width:48px!important;height:48px!important;line-height:48px!important;background:var(--vm-navy)!important;color:#fff!important}

@media (max-width:1399px){
    .vm-main-nav>.menu>li>a{padding:0 9px;font-size:12px}
    .vm-main-nav>.menu>li>a:after{left:9px;right:9px}
    .vm-header-inner{gap:18px}
}
@media (max-width:1199px){
    .vm-main-nav{display:none}
    .vm-mobile-toggle{display:flex;align-items:center;justify-content:center}
    .vm-header-inner{height:72px}
    .vm-logo{margin-right:auto}
    .vm-logo img{height:48px}
    .vm-portal-btn span{display:none}
    .vm-portal-btn{width:44px;height:44px;padding:0;justify-content:center}
}
@media (max-width:767px){
    .vm-utility-message{display:none}
    .vm-utility-inner{justify-content:center}
    .vm-utility-links{width:100%;justify-content:center;gap:14px}
    .vm-utility-links a:nth-child(1),.vm-utility-links a:nth-child(2){display:none}
    .vm-global-cta-inner{padding-top:55px;padding-bottom:55px;display:block}
    .vm-global-cta-actions{margin-top:26px}
    .vm-footer-grid{grid-template-columns:1fr 1fr;gap:34px 22px}
    .vm-footer-brand{grid-column:1/-1}
    .vm-footer-contact{display:block}
    .vm-footer-contact>*{display:block;margin-bottom:10px}
    .vm-footer-bottom{align-items:flex-start;flex-direction:column;padding:22px 0}
}
@media (max-width:479px){
    .vm-footer-grid{grid-template-columns:1fr}
    .vm-footer-brand{grid-column:auto}
    .vm-header-inner{padding-left:15px;padding-right:15px}
}

@media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*:before,*:after{animation:none!important;transition:none!important}
    [data-reveal],.vm-stagger>*{opacity:1!important;transform:none!important}
}

/* =========================================================
   VM DIAG PREMIUM HEADER / NAVIGATION V2
   ========================================================= */
.vm-utility-bar{
    min-height:30px;
    background:linear-gradient(90deg,#06131f 0%,#0b2032 55%,#0d2a3e 100%);
    border-bottom:1px solid rgba(255,255,255,.06);
}
.vm-utility-inner{min-height:30px;max-width:1680px;margin:0 auto;padding-left:28px;padding-right:28px}
.vm-utility-message{font-size:10.5px;letter-spacing:.035em;color:#b9c7d2}
.vm-utility-links a{font-size:10.5px;color:#c9d5de}

.vm-header{
    background:rgba(255,255,255,.975);
    border-bottom:1px solid rgba(9,30,47,.07);
    box-shadow:0 4px 18px rgba(7,22,36,.035);
    backdrop-filter:blur(20px) saturate(140%);
    -webkit-backdrop-filter:blur(20px) saturate(140%);
}
.vm-header:after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:-1px;height:1px;
    background:linear-gradient(90deg,transparent 0%,rgba(21,94,232,.22) 38%,rgba(22,184,217,.22) 62%,transparent 100%);
    pointer-events:none;
}
.vm-header.vm-scrolled{box-shadow:0 12px 36px rgba(7,22,36,.10)}
.vm-header-inner{height:88px;max-width:1680px;margin:0 auto;padding-left:28px;padding-right:28px;gap:30px}
.vm-logo img{height:58px;transition:transform .3s ease}
.vm-logo:hover img{transform:scale(1.025)}
.vm-main-nav>.menu{gap:2px}
.vm-main-nav>.menu>li>a{
    min-height:88px;
    padding:0 14px;
    font-size:12.2px;
    font-weight:600;
    color:#1b2a36;
    letter-spacing:-.015em;
}
.vm-main-nav>.menu>li>a:after{
    left:14px;right:14px;bottom:20px;height:2px;
    background:linear-gradient(90deg,#155ee8,#16b8d9);
}
.vm-main-nav>.menu>li:hover>a{color:#155ee8}
.vm-main-nav .menu>li>ul{
    top:80px;
    min-width:270px;
    padding:12px;
    border:1px solid rgba(9,30,47,.08);
    border-radius:16px;
    box-shadow:0 24px 65px rgba(7,22,36,.16);
}
.vm-main-nav .menu>li>ul:before{
    content:"";
    position:absolute;
    top:-6px;left:28px;
    width:12px;height:12px;
    background:#fff;
    transform:rotate(45deg);
    border-left:1px solid rgba(9,30,47,.06);
    border-top:1px solid rgba(9,30,47,.06);
}
.vm-main-nav .menu>li>ul li a{
    padding:11px 12px;
    border-radius:9px;
    font-size:12.2px;
    color:#465563;
}
.vm-main-nav .menu>li>ul li a:hover{
    background:linear-gradient(90deg,#f3f7ff,#f4fbfd);
    color:#155ee8;
    transform:translateX(3px);
}
.vm-header-actions{gap:9px}
.vm-head-whatsapp{
    width:44px;height:44px;border-radius:50%;
    display:inline-flex;align-items:center;justify-content:center;
    border:1px solid #dfe8ed;background:#fff;color:#0aa866!important;
    font-size:18px;
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.vm-head-whatsapp:hover{transform:translateY(-2px);border-color:#9de0bf;box-shadow:0 9px 24px rgba(10,168,102,.15)}
.vm-portal-btn{
    min-height:46px;
    padding:0 20px;
    background:linear-gradient(110deg,#0a1b2b 0%,#133d5b 100%);
    box-shadow:0 10px 26px rgba(7,22,36,.18);
}
.vm-portal-btn:hover{
    background:linear-gradient(110deg,#155ee8 0%,#168db9 100%);
    box-shadow:0 14px 32px rgba(21,94,232,.24);
}

/* Footer depth */
.vm-footer{position:relative;overflow:hidden;background:linear-gradient(145deg,#06121d 0%,#081827 65%,#0a2134 100%)!important}
.vm-footer:before{
    content:"";position:absolute;width:520px;height:520px;border-radius:50%;
    right:-250px;bottom:-290px;
    background:radial-gradient(circle,rgba(22,184,217,.11),rgba(22,184,217,0) 70%);
}
.vm-footer .container-fluid{position:relative;z-index:1;max-width:1680px}
.vm-footer-grid{padding-top:8px}
.vm-footer h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#dfe9f0}
.vm-footer a{transition:color .2s ease,transform .2s ease;display:inline-block}
.vm-footer li a:hover{transform:translateX(3px);color:#fff}

/* Home page hides duplicate global CTA; home has its own stronger closing CTA */
.vm-home-page .vm-global-cta{display:none}

@media (max-width:1399px){
    .vm-header-inner{gap:18px}
    .vm-main-nav>.menu>li>a{padding:0 9px;font-size:11.6px}
    .vm-main-nav>.menu>li>a:after{left:9px;right:9px}
}
@media (max-width:1199px){
    .vm-header-inner{height:74px}
    .vm-logo img{height:49px}
    .vm-head-whatsapp{width:42px;height:42px}
}
@media (max-width:767px){
    .vm-utility-bar{display:none}
    .vm-header-inner{padding-left:15px;padding-right:15px}
    .vm-head-whatsapp{display:none}
}
