/* NABAT | CORE — HERO-MENU */
/* =========================================================
   HERO / INTRODUÇÃO
   ========================================================= */
.intro-wrapper.ascension-wrapper { width: 100%; margin: 0; padding: 0; display: block; overflow: hidden; }
.ascension-hero { 
  position: relative; overflow: hidden; isolation: isolate; 
  width: 100vw; min-height: 100svh;
  margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw);
  padding: clamp(112px, 10.5vh, 138px) clamp(18px, 4.5vw, 64px) 104px;
  background: linear-gradient(90deg, rgba(3,5,8,.84) 0%, rgba(3,5,8,.56) 27%, rgba(3,5,8,.20) 52%, rgba(3,5,8,.30) 100%),
              linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.04) 45%, rgba(0,0,0,.76) 100%),
              url("../assets/nabat-hero-bg.png") center center / cover no-repeat;
}
.ascension-grid { position: absolute; inset: 0; z-index: 0; opacity: .045; pointer-events: none; background: radial-gradient(circle at 70% 68%, rgba(198,160,98,.08), transparent 32%), radial-gradient(circle at 82% 28%, rgba(106,76,255,.10), transparent 28%); mix-blend-mode: screen; }
.ascension-glow { position: absolute; left: 75%; top: 46%; z-index: 0; width: min(700px,62vw); height: min(700px,62vw); pointer-events: none; transform: translate(-50%,-50%); border-radius: 50%; background: radial-gradient(circle, rgba(198,160,98,.18), rgba(107,140,255,.08) 38%, transparent 72%); filter: blur(44px); opacity: .22; mix-blend-mode: screen; }
.ascension-copy { position: relative; z-index: 10; width: min(520px,40vw); max-width: 520px; padding-top: clamp(34px,8vh,82px); }
.ascension-kicker { margin: 0 0 18px; color: var(--gold); font-family: var(--font-brand); font-size: .70rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
.ascension-copy h1 { margin: 0; max-width: 520px; color: var(--fg); font-family: var(--font-display); font-weight: 400; font-size: clamp(3.65rem, 5.65vw, 6.8rem); line-height: .90; letter-spacing: -.048em; text-shadow: 0 18px 48px rgba(0,0,0,.48); }
.ascension-copy h1 span { color: var(--gold); font-family: var(--font-strong); font-weight: 700; }
.ascension-line { width: 86px; height: 1px; margin: 28px 0; background: linear-gradient(90deg, var(--gold), transparent); }
.ascension-copy p:not(.ascension-kicker) { margin: 0; max-width: 460px; color: rgba(247,240,228,.78); font-size: 1rem; line-height: 1.74; text-shadow: 0 12px 34px rgba(0,0,0,.50); }

/* SYSTEM MAP E MENU */
.nabat-system-map { position: absolute; z-index: 12; right: clamp(46px,5vw,74px); top: 50%; width: min(450px,33vw); height: 390px; transform: translateY(-48%); pointer-events: auto; }
.system-node { position: absolute; z-index: 2; min-height: 46px; display: flex; align-items: center; gap: 10px; padding: 11px 15px; border-radius: 999px; border: 1px solid rgba(216,182,122,.36); background: linear-gradient(135deg, rgba(12,15,20,.82), rgba(18,20,28,.66)); backdrop-filter: blur(14px) saturate(1.12); box-shadow: 0 18px 54px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08), 0 0 34px rgba(198,160,98,.08); transition: transform .45s var(--ease-premium), border-color .35s ease, box-shadow .35s ease, background .35s ease, opacity .35s ease; }
.system-node:hover { transform: translateX(-8px) translateY(-2px); border-color: rgba(216,182,122,.72); box-shadow: 0 28px 74px rgba(0,0,0,.30), 0 0 38px rgba(198,160,98,.18), inset 0 1px 0 rgba(255,255,255,.12); }
.node-visao { right: 0; top: 0; width: 230px; }
.node-produtos { right: 26px; top: 78px; width: 270px; }
.node-processos { right: 64px; top: 158px; width: 292px; border-color: rgba(107,140,255,.34); }
.node-gestao { right: 106px; top: 240px; width: 300px; }
.node-sistemas { right: 146px; bottom: 0; width: 350px; }
.node-icon { min-width: 20px; color: var(--gold); font-size: .82rem; text-align: center; }
.system-node strong { display: block; color: var(--fg); font-family: var(--font-strong); font-size: .58rem; font-weight: 800; letter-spacing: .105em; line-height: 1.08; text-transform: uppercase; }
.system-node small { display: block; margin-top: 4px; color: var(--gold); font-family: var(--font-brand); font-size: .42rem; font-weight: 800; letter-spacing: .15em; line-height: 1.05; text-transform: uppercase; }
.node-hover-note { position: absolute; right: calc(100% + 20px); top: 50%; width: min(210px,17vw); margin: 0; color: rgba(245,241,232,.82); font-family: var(--font-ui); font-size: .62rem; line-height: 1.42; text-align: right; opacity: 0; visibility: hidden; filter: blur(7px); transform: translateY(calc(-50% + 8px)); transition: .35s ease; pointer-events: none; text-shadow: 0 10px 30px rgba(0,0,0,.50); }
.system-node:hover .node-hover-note { opacity: 1; visibility: visible; filter: blur(0); transform: translateY(-50%); }
.nabat-system-map:has(.system-node:hover) .system-node:not(:hover) { opacity: .56; filter: saturate(.82); }

.menu-nabat { position: absolute; z-index: 14; left: 50%; bottom: 32px; transform: translateX(-50%); width: min(1040px,86vw); display: grid; grid-template-columns: repeat(5,1fr); background: linear-gradient(135deg, rgba(12,15,20,.78), rgba(18,20,28,.70)); border: 1px solid rgba(216,182,122,.22); border-radius: 22px; overflow: hidden; box-shadow: 0 22px 72px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.05); backdrop-filter: blur(18px); }
.menu-nabat a { min-height: 50px; display: flex; align-items: center; justify-content: center; padding: 0 12px; color: rgba(247,240,228,.72); font-family: var(--font-brand); font-size: .58rem; font-weight: 700; letter-spacing: .14em; text-align: center; text-transform: uppercase; border-right: 1px solid rgba(198,160,98,.10); transition: color .35s ease, background .35s ease, letter-spacing .35s ease; }
.menu-nabat a:last-child { border-right: 0; }
.menu-nabat a:hover { color: var(--gold); background: rgba(198,160,98,.04); letter-spacing: .17em; }

