/* Shared header navigation; product and Company panels use native links. */
.site-header, .platform-header { z-index: 30; overflow: visible; }
.site-header { display: flex; align-items: center; gap: 20px; }
.vantera-navigation { display: flex; align-items: center; justify-content: center; gap: 12px; margin-inline: auto; font-family: Manrope, 'Noto Sans Arabic', sans-serif; }
.vantera-navigation button, .vantera-navigation a { font-family: inherit; letter-spacing: 0; }
.nav-trigger, .nav-direct { display: inline-flex; align-items: center; gap: 7px; min-height: 44px; padding: 10px 8px; border: 0; border-radius: 9px; background: transparent; color: #4c3e55; font-size: 13px; line-height: 1.4; font-weight: 700; text-decoration: none; white-space: nowrap; cursor: pointer; }
.nav-trigger:hover, .nav-direct:hover, .nav-trigger[aria-expanded=true] { background: #eee4f5; color: #7626a3; }
.nav-trigger > svg { width: 16px; height: 16px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.6; transition: transform .18s; }
.nav-trigger[aria-expanded=true] > svg { transform: rotate(180deg); }
.nav-disclosure { position: static; }
.nav-panel { position: absolute; top: calc(100% - 1px); border: 1px solid #dccce5; border-radius: 20px; background: #fff; box-shadow: 0 24px 60px #35114e24; }
.nav-panel[hidden] { display: none; }
.mega-menu { inset-inline: 24px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 22px; }
.mega-card { display: grid; align-content: start; gap: 16px; min-width: 0; padding: 20px 16px; border-radius: 14px; color: #281335; text-decoration: none; }
.mega-card:hover { background: #f7f0fb; }
.mega-icon { display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; border: 1px solid #e2ccec; border-radius: 14px; background: #f4eafa; color: #8127c5; }
.mega-icon svg { width: 30px; height: 30px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.mega-card > span:last-child { min-width: 0; }
.mega-card strong { display: block; margin: 1px 0 7px; color: #2b1638; font-size: 16px; line-height: 1.35; font-weight: 800; }
.mega-card small { display: block; color: #776381; font-size: 12px; line-height: 1.6; }
.company-menu { display: grid; gap: 3px; min-width: 240px; padding: 10px; inset-inline-end: 140px; }
.company-menu a { display: block; min-height: 44px; padding: 12px 16px; border-radius: 10px; color: #4c3e55; font-size: 14px; font-weight: 650; text-decoration: none; }
.company-menu a:hover { background: #f4eafa; color: #7626a3; }
.vantera-navigation :is(a, button):focus-visible, .nav-mobile-toggle:focus-visible { outline: 3px solid #b527df; outline-offset: 3px; }
.site-header .nav-mobile-toggle, .platform-header .nav-mobile-toggle { display: none; }
.platform-header .header-actions { margin-inline-start: 12px; margin-inline-end: 0; }
@media (max-width: 1100px) {
  .site-header, .platform-header { display: flex; gap: 8px; align-items: center; }
  .site-header .nav-actions, .platform-header .header-actions { position: static; margin-inline-start: auto !important; margin-inline-end: 0 !important; }
  .site-header .nav-actions .button, .platform-header .header-cta { display: none; }
  .site-header .nav-mobile-toggle, .platform-header .nav-mobile-toggle { display: flex !important; position: static !important; flex: 0 0 44px; width: 44px; height: 44px; padding: 10px; align-items: center; justify-content: center; flex-direction: column; gap: 5px; border: 1px solid #dccce5; border-radius: 11px; background: #fff; color: #7626a3; cursor: pointer; }
  .nav-mobile-toggle span { display: block; width: 20px; height: 2px; background: currentColor; }
  .vantera-navigation { display: none; }
  .vantera-navigation.is-mobile-open { position: absolute; top: 100%; inset-inline: 8px; display: flex; flex-direction: column; align-items: stretch; gap: 4px; max-height: calc(100dvh - 100px); overflow-y: auto; overscroll-behavior: contain; margin: 0; padding: 12px; border: 1px solid #dccce5; border-radius: 16px; background: #fff; box-shadow: 0 24px 50px #35114e24; }
  .nav-trigger, .nav-direct { width: 100%; justify-content: space-between; min-height: 48px; padding: 12px; font-size: 14px; white-space: normal; }
  .nav-disclosure { width: 100%; }
  .nav-panel { position: static; margin: 4px 0 10px; border-radius: 12px; box-shadow: none; }
  .mega-menu { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 6px; }
  .mega-card { display: flex; align-items: flex-start; gap: 12px; padding: 13px 10px; }
  .mega-icon { flex-basis: 40px; width: 40px; height: 40px; border-radius: 11px; }
  .mega-card strong { font-size: 14px; }
  .mega-card small { font-size: 12px; }
  .company-menu { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) { .nav-trigger > svg { transition: none; } }
@media (min-width: 1101px) {
  .vantera-navigation { margin-inline-start: auto; margin-inline-end: 0; }
  .site-header .nav-actions { margin-inline-start: 0; }
  .nav-trigger, .nav-direct { font-size: 15px; }
  .company-disclosure { position: relative; }
  .company-menu { inset-inline-start: 0; inset-inline-end: auto; }
  .mega-menu::before { position: absolute; inset-inline: 0; top: -20px; height: 20px; content: ''; }
}
@media (min-width: 1101px) and (max-width: 1280px) {
  .mega-menu { inset-inline: 12px; gap: 4px; padding: 16px; }
  .mega-card { padding-inline: 8px; }
  .mega-card small { font-size: 11.5px; }
}
/* Product groups retain the shared icon language and native link behavior. */
.mega-group { min-width: 0; }
.mega-group h3 { margin: 0 12px 14px; color: #776381; font-size: 13px; line-height: 1.5; font-weight: 700; }
.mega-group .mega-card { display: flex; align-items: center; gap: 14px; padding: 14px 12px; }
.mega-group .mega-card strong { margin: 0; font-size: 15px; }
.mega-group .mega-card small { margin-top: 4px; font-size: 12px; line-height: 1.45; color: #776381; overflow-wrap: anywhere; }
.mega-group .mega-icon { flex-basis: 40px; width: 40px; height: 40px; border-radius: 11px; }
.mega-group .mega-icon svg { width: 27px; height: 27px; }
@media (max-width: 1100px) {
  .mega-group + .mega-group { margin-top: 18px; padding-top: 16px; border-top: 1px solid #e8ddef; }
  .mega-group h3 { margin: 8px 10px; }
  .mega-group .mega-card { padding: 12px 10px; }
}
/* Company uses the existing product menu's material, icon and interaction language. */
.company-menu-group{min-width:0}
.company-menu .company-card{display:flex;align-items:center;gap:14px;min-width:0;padding:14px 12px;border-radius:var(--brand-radius-button)}
.company-menu .company-card>span:last-child{min-width:0}
.company-menu .company-icon{flex-basis:40px;width:40px;height:40px;border-radius:11px}
.company-menu .company-icon svg{width:27px;height:27px}
.company-menu .company-card strong{display:block;margin:0;color:var(--brand-text-dark);font-size:15px;line-height:1.35;font-weight:800}
.company-menu .company-card small{display:block;margin-top:4px;color:var(--brand-muted-dark);font-size:12px;line-height:1.45;overflow-wrap:anywhere}
@media(min-width:1101px){
  body .platform-header .vantera-navigation :is(.nav-trigger,.nav-direct){font-weight:800}
  body .platform-header .vantera-navigation .nav-trigger>svg{display:none}
  .company-disclosure{position:static}
  .company-menu{inset-inline:24px;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:22px}
  .company-menu::before{position:absolute;inset-inline:0;top:-20px;height:20px;content:''}
}
@media(min-width:1101px) and (max-width:1280px){
  .company-menu{inset-inline:12px;gap:4px;padding:16px}
  .company-menu .company-card{padding-inline:8px}
}
@media(max-width:1100px){
  .company-menu{grid-template-columns:minmax(0,1fr)}
  .company-menu-group{display:contents}
  .company-menu .company-card{display:block;padding:12px 16px}
  .company-menu .company-icon,.company-menu .company-card small{display:none}
  .company-menu .company-card strong{font-size:14px;line-height:1.4;font-weight:650}
}
