/* Shared component refinement, authored for NV Infolab Solutions. */
.nv-mega-toggle{display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0}
.nv-chevron{display:block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg)}
@media(min-width:992px){
 .nv-nav nav{align-self:stretch}
 .nv-mega-parent{align-self:stretch;align-items:center}
 .nv-mega-toggle{align-self:center;height:32px;flex-shrink:0}
 /* The full-height trigger touches the panel, removing the dead hover gap. */
 .nv-mega-parent>#nv-services-menu{top:calc(100% - 3px)}
}
.nv-nav{display:grid;grid-template-columns:230px minmax(0,1fr) 145px;gap:25px;min-height:100px}
.nv-brand{margin-right:0}.nv-nav nav{justify-content:center;gap:8px}.nv-nav-cta{text-align:center;padding:15px 18px;box-shadow:0 7px 18px #0044eb1a;transition:transform .25s,box-shadow .25s}
.nv-nav-cta:hover{transform:translateY(-2px);box-shadow:0 12px 24px #0044eb28}
.nv-nav nav>a,.nv-mega-parent>a{position:relative;padding:13px 15px;border-radius:8px;font-size:14px;transition:color .25s,background .25s}
.nv-nav nav>a::after,.nv-mega-parent>a::after{content:'';position:absolute;height:2px;left:16px;right:16px;bottom:6px;background:var(--nv-blue);transform:scaleX(0);transform-origin:center;transition:transform .25s}
.nv-nav nav>a:hover,.nv-nav nav>a[aria-current=page],.nv-mega-parent:hover>a,.nv-mega-parent>a[aria-current=page]{background:#eef3ff;color:var(--nv-blue)}
.nv-nav nav>a:hover::after,.nv-nav nav>a[aria-current=page]::after,.nv-mega-parent:hover>a::after{transform:scaleX(1)}
.nv-mega-parent{gap:0;border-radius:8px}.nv-mega-toggle{margin-right:8px}.nv-mega-grid>a{border:1px solid transparent;transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}
.nv-mega-grid>a:hover,.nv-mega-grid>a:focus-visible{background:#f5f8ff;border-color:#dde7ff;transform:translateY(-3px);box-shadow:0 8px 20px #10265c08}
.nv-mega-grid>a>span{transition:transform .3s,background .3s}.nv-mega-grid>a:hover>span{transform:rotate(-8deg);background:#dce7ff}
/* Centered technology navigation and equally sized showcase tiles. */
.nv-tech{background:radial-gradient(ellipse at 50% 10%,#edf3ff 0%,#fff 58%);position:relative}
.nv-tech .nv-section-heading{text-align:center;margin-left:auto;margin-right:auto;max-width:820px}
.nv-tech .nv-section-heading p{margin-left:auto;margin-right:auto;max-width:670px}
.nv-tech .nv-eyebrow{background:#eaf0ff;padding:9px 16px;border:1px solid #dbe5ff;border-radius:30px;font-size:10px;letter-spacing:.16em}
.nv-tech-tabs{justify-content:center;gap:8px;border:1px solid #e0e7f4;background:#fff;padding:10px;border-radius:16px;width:fit-content;max-width:100%;margin:0 auto 40px;box-shadow:0 12px 35px #10265c08}
.nv-tech-tabs button{background:transparent;color:#586881;border:1px solid transparent;padding:13px 23px;border-radius:10px;font-size:13px;transition:background .25s,transform .25s,box-shadow .25s,color .25s}
.nv-tech-tabs button:hover{background:#edf3ff;color:var(--nv-blue);transform:translateY(-2px)}
.nv-tech-tabs button[aria-selected=true]{background:linear-gradient(135deg,#0055ff,#0035c5);color:white;box-shadow:0 6px 16px #0044eb33;border-color:#0044eb}
.nv-tech-panel:not([hidden]){display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:20px;animation:nv-panel-in .4s ease both}
.nv-tech-item{flex:0 1 185px;min-height:168px;padding:27px 18px 24px;display:flex;flex-direction:column;justify-content:center;gap:18px;text-align:center;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(150deg,#fff,#f9fbff);border:1px solid #e0e8f6;border-radius:16px;box-shadow:0 5px 18px #173c7910;transition:transform .3s,box-shadow .3s,border-color .3s}
.nv-tech-item::before{content:'';position:absolute;left:25%;right:25%;bottom:0;height:3px;border-radius:5px;background:linear-gradient(90deg,#0044eb,#59a7ff);transform:scaleX(0);transition:transform .3s}
.nv-tech-item::after{content:'';position:absolute;width:120px;height:120px;border-radius:50%;right:-70px;top:-65px;background:#eaf0ff;z-index:-1;transition:transform .45s,background .45s}
.nv-tech-item>span{width:61px;height:61px;border-radius:17px;background:linear-gradient(135deg,#e2ebff,#f4f7ff);border:1px solid #d8e4ff;color:#0044eb;font-size:20px;font-weight:750;letter-spacing:-.04em;box-shadow:0 5px 12px #0044eb09;transition:transform .35s,box-shadow .35s}
.nv-tech-item:nth-child(3n+2)>span{background:linear-gradient(135deg,#ffe4ef,#fff5f9);border-color:#ffdaea;color:#d83070}
.nv-tech-item:nth-child(3n)>span{background:linear-gradient(135deg,#dff7f3,#f1fffc);border-color:#cceee8;color:#0b867b}
.nv-tech-item strong{font-size:14px;font-weight:700;line-height:1.5}
.nv-tech-item:hover{transform:translateY(-8px);border-color:#9ab8ff;box-shadow:0 18px 35px #0044eb16}
.nv-tech-item:hover::before{transform:scaleX(1)}.nv-tech-item:hover::after{transform:scale(1.65);background:#dce7ff}
.nv-tech-item:hover>span{transform:rotate(-7deg) translateY(-2px);box-shadow:0 8px 18px #0044eb18}
/* Match surrounding sections to the same card language. */
.nv-value-grid{gap:18px}.nv-value-grid article{position:relative;overflow:hidden;background:white;border:1px solid #e1e8f5;border-radius:14px;padding:27px;box-shadow:0 8px 26px #10265c07;transition:transform .3s,box-shadow .3s,border-color .3s}
.nv-value-grid article>span{display:grid;place-items:center;width:36px;height:36px;background:#eaf1ff;border-radius:10px}
.nv-value-grid article:hover{transform:translateY(-6px);border-color:#a6bfff;box-shadow:0 18px 32px #0044eb12}
.nv-step{position:relative;overflow:hidden;border-radius:18px;background:linear-gradient(155deg,#fff,#f9fbff);box-shadow:0 8px 25px #10265c07;transition:transform .3s,box-shadow .3s,border-color .3s}
.nv-step::after{content:'';position:absolute;top:-90px;right:-80px;width:190px;height:190px;border:28px solid #edf2ff;border-radius:50%;pointer-events:none;transition:transform .5s}
.nv-step:hover{border-color:#a6bfff;box-shadow:0 16px 30px #0044eb12;transform:translateY(-5px)}.nv-step:hover::after{transform:translate(-8px,8px) rotate(20deg)}
.nv-step-number{color:#d5e1ff}.nv-process-carousel{padding:8px 3px 16px;margin-left:-3px;margin-right:-3px}
.nv-slider-controls .swiper-button-disabled{opacity:.35;cursor:default}.nv-industry-grid>a{background:linear-gradient(150deg,#fff,#fafcff);box-shadow:0 5px 20px #10265c06;border-radius:14px;transition:transform .3s,box-shadow .3s,border-color .3s}
.nv-industry-grid>a>span:first-child{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:#eaf1ff;flex-shrink:0;font-weight:700}
.nv-industry-grid>a>span:last-child{transition:transform .3s}.nv-industry-grid>a:hover{transform:translateY(-5px);box-shadow:0 16px 30px #0044eb12;border-color:#a6bfff}
.nv-industry-grid>a:hover>span:last-child{transform:translate(3px,-3px)}
.nv-model-grid article{position:relative;background:linear-gradient(150deg,#fff,#f0f5ff);box-shadow:0 8px 25px #10265c08;transition:transform .3s,box-shadow .3s,border-color .3s}
.nv-model-grid article:hover{transform:translateY(-6px);box-shadow:0 18px 32px #0044eb14;border-color:#9ab8ff}
.contact_info_box .iconbox_block{transition:transform .3s,box-shadow .3s,border-color .3s}.contact_info_box .iconbox_block:hover{transform:translateY(-6px);border-color:#a6bfff;box-shadow:0 18px 35px #0044eb13}
.contact_info_box .iconbox_icon img{transition:transform .3s}.contact_info_box .iconbox_block:hover .iconbox_icon img{transform:translateY(-3px) rotate(-6deg)}
.nv-faq details{box-shadow:0 5px 18px #10265c05;transition:border-color .3s,box-shadow .3s}.nv-faq details:hover,.nv-faq details[open]{border-color:#9ab8ff;box-shadow:0 10px 25px #0044eb0b}
.nv-service-card:focus-visible{outline:4px solid #f44380;outline-offset:5px}.nv-footer a:not(.nv-button){transition:color .2s,transform .2s}.nv-footer a:not(.nv-button):hover{transform:translateX(3px)}
@keyframes nv-panel-in{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1199px){.nv-nav{grid-template-columns:190px minmax(0,1fr);gap:15px}.nv-nav nav{gap:3px}.nv-nav nav>a,.nv-mega-parent>a{padding:13px 12px}.nv-tech-item{flex-basis:175px}}
@media(max-width:991px){.nv-nav{display:flex;justify-content:space-between;min-height:82px}.nv-brand{margin-right:auto}.nv-nav nav{display:none}.nv-nav nav.nv-open{display:block}.nv-nav nav>a{padding:14px 15px;margin:4px 0}.nv-mega-parent>a{padding:14px 15px}.nv-mega-parent{background:#f8faff}.nv-mega-toggle{margin-right:12px}.nv-tech-tabs{border-radius:14px}.nv-tech-item{flex-basis:calc(25% - 15px);min-height:155px}.nv-value-grid article{padding:24px}.nv-industry-grid>a{gap:15px}}
@media(max-width:575px){.nv-tech-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:8px;margin-bottom:25px}.nv-tech-tabs button{padding:12px 6px;font-size:11px;min-height:42px}.nv-tech-panel:not([hidden]){gap:12px}.nv-tech-item{flex:0 1 calc(50% - 6px);min-height:146px;padding:20px 12px;gap:14px;border-radius:13px}.nv-tech-item>span{width:50px;height:50px;font-size:17px;border-radius:14px}.nv-tech-item strong{font-size:12px}.nv-tech .nv-section-heading h2{font-size:32px}.nv-value-grid{gap:13px}.nv-value-grid article{padding:22px 18px}.nv-industry-grid h3{font-size:18px}}
@media(hover:none){.nv-tech-item:hover,.nv-step:hover,.nv-model-grid article:hover,.nv-value-grid article:hover,.contact_info_box .iconbox_block:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.nv-tech-panel:not([hidden]){animation:none}*,*::before,*::after{transition:none!important;animation:none!important}}
