/* Navissoft shared alignment system */
:root{
  --nvs-max:1320px;
  --nvs-gutter:32px;
  --nvs-navy:#102a43;
  --nvs-ink:#0b2a43;
  --nvs-line:#d7e1e6;
  --nvs-bg:#fbfbf8;
}
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:hidden}
.wrap,.nvs-header-inner{width:min(var(--nvs-max),calc(100% - (var(--nvs-gutter) * 2)))!important;margin-left:auto!important;margin-right:auto!important;max-width:none!important}
.nvs-header{height:92px!important;background:rgba(251,251,248,.98)!important;border-bottom:1px solid #dbe3e7!important;position:sticky!important;top:0!important;z-index:5000!important;display:flex!important;align-items:center!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nvs-header-inner{height:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:32px!important}
.nvs-logo{display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 0 auto!important;margin:0!important;text-decoration:none!important}
.nvs-logo img{width:150px!important;max-width:150px!important;height:auto!important;display:block!important;object-fit:contain!important}
.nvs-nav{margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:38px!important;height:100%!important;white-space:nowrap!important}
.nvs-nav>a,.nvs-platform-link{display:flex!important;align-items:center!important;height:100%!important;color:var(--nvs-ink)!important;text-decoration:none!important;font-size:14px!important;font-weight:500!important;position:relative!important}
.nvs-platform-menu{height:100%!important;display:flex!important;align-items:center!important;position:relative!important}
.nvs-chevron{font-size:15px!important;margin-left:4px!important;line-height:1!important}
.nvs-mega{top:78px!important;right:0!important;left:auto!important;max-width:780px!important;width:min(780px,calc(100vw - 48px))!important}
.nvs-menu-toggle{margin-left:auto!important}
/* Normalize section alignment */
.hero>.wrap,.section>.wrap,.intro>.wrap,.beliefs>.wrap,.statement>.wrap,.footer>.wrap,.bottom>.wrap,footer .wrap{width:min(var(--nvs-max),calc(100% - (var(--nvs-gutter) * 2)))!important;margin-left:auto!important;margin-right:auto!important}
img{max-width:100%}
.footer-grid{align-items:start}
/* Product/card grids */
.grid-3,.metric-row,.reg-grid,.flow,.cards{align-items:stretch}
.feature,.card,.metric,.reg,.flowbox{min-width:0}
/* Legal pages and analytics dashboard */
.nvs-simple-page{min-height:60vh;padding:72px 0;background:#fbfbf8;color:var(--nvs-ink)}
.nvs-simple-page h1{font-size:clamp(38px,5vw,58px);line-height:1.08;font-weight:400;margin:0 0 22px}
.nvs-simple-page h2{font-size:26px;margin:38px 0 12px;font-weight:500}
.nvs-simple-page p,.nvs-simple-page li{font-size:16px;line-height:1.75;color:#526674}
.nvs-simple-page .legal-copy{max-width:900px}
@media(max-width:900px){
  :root{--nvs-gutter:22px}
  .nvs-header{height:76px!important}
  .nvs-logo img{width:126px!important;max-width:126px!important}
  .nvs-menu-toggle{display:block!important;border:0!important;background:transparent!important;font-size:24px!important;color:var(--nvs-ink)!important;padding:8px!important}
  .nvs-nav{display:none!important;position:absolute!important;top:76px!important;left:0!important;right:0!important;width:100%!important;height:auto!important;background:#fff!important;padding:10px var(--nvs-gutter) 18px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;border-bottom:1px solid #dbe3e7!important;box-shadow:0 14px 28px rgba(8,35,55,.10)!important;white-space:normal!important}
  .nvs-header.open .nvs-nav{display:flex!important}
  .nvs-nav>a,.nvs-platform-link{height:auto!important;padding:14px 0!important}
  .nvs-platform-menu{height:auto!important;display:block!important}
  .nvs-mega{position:static!important;width:100%!important;max-width:none!important;box-shadow:none!important;border:0!important;padding:8px 0 12px!important;display:none!important}
  .nvs-platform-menu.open .nvs-mega{display:block!important}
  .nvs-mega-grid{grid-template-columns:1fr!important}
}
@media(max-width:560px){
  :root{--nvs-gutter:16px}
  .hero h1{font-size:clamp(36px,11vw,46px)!important}
  .section h2,.intro h2,.statement h2{font-size:clamp(32px,9vw,42px)!important}
}

/* Complete shared desktop navigation / legal-page styles */
.nvs-mega{position:absolute!important;background:#fff!important;border:1px solid #dbe3e7!important;border-radius:16px!important;padding:24px!important;box-shadow:0 22px 55px rgba(8,35,55,.16)!important;opacity:0!important;visibility:hidden!important;transform:translateY(8px)!important;transition:.18s ease!important;pointer-events:none!important;white-space:normal!important}
.nvs-platform-menu:hover .nvs-mega,.nvs-platform-menu:focus-within .nvs-mega{opacity:1!important;visibility:visible!important;transform:translateY(0)!important;pointer-events:auto!important}
.nvs-mega:before{content:"";position:absolute;top:-14px;left:0;right:0;height:18px}
.nvs-mega-title{font-size:10px;letter-spacing:.25em;color:#5b7890;margin-bottom:14px}
.nvs-mega-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.nvs-mega-grid a{display:block;padding:14px;border-radius:10px;text-decoration:none;color:#0b2a43;background:#f7f9f9;transition:.15s}
.nvs-mega-grid a:hover{background:#eaf3f7}
.nvs-mega-grid b{display:block;font-size:15px;margin-bottom:5px}
.nvs-mega-grid span{display:block;font-size:12px;color:#657783;line-height:1.35}
.nvs-view-platform{display:inline-block;margin-top:15px;color:#0b527d;text-decoration:none;font-size:13px;font-weight:600}
.nvs-menu-toggle{display:none}
.nvs-simple-page{padding:0;background:#fbfbf8}
.legal-hero{padding:72px 0 54px;background:#eaf3f7;border-bottom:1px solid #d7e1e6}
.legal-hero .eyebrow{margin-bottom:14px}
.legal-hero h1{max-width:800px}
.legal-body{padding:64px 0 90px}
.legal-copy{max-width:880px!important}
.legal-copy h2{padding-top:4px}
.legal-note{margin-top:44px;padding:18px 20px;border-left:3px solid #6c9bb7;background:#eef5f7;border-radius:0 10px 10px 0}
.footer-legal{display:flex;gap:22px;flex-wrap:wrap;align-items:center}
.bottom .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}
.footer-legal a{color:#c9d9e3;text-decoration:none;font-size:13px}
.footer-legal a:hover{text-decoration:underline;color:#fff}
@media(max-width:900px){
 .nvs-mega{opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
 .nvs-menu-toggle{display:block!important}
 .legal-hero{padding:48px 0 36px}.legal-body{padding:42px 0 65px}
 .bottom .wrap{flex-direction:column;align-items:flex-start}
}
