/* chrome.css — shared nav, preloader, melt shell, footer, reveal */

/* Shared page base */
body { background: var(--navi-dark-blue); color: var(--navi-off-white); overflow-x: hidden; }
::selection { background: var(--navi-light-blue); color: var(--navi-dark-blue); }

/* Page-progress rail: sits on hero bottom, then docks to viewport bottom */
.n6-seam { position:fixed; top:100vh; bottom:auto; left:0; width:100%; height:0; pointer-events:none; z-index:40; --seam-x:8%; --seam-c:#fff; }
.n6-seam__line { position:absolute; top:-1px; height:2px; left:0; width:max(0px, calc(var(--seam-x) - 34px)); background:linear-gradient(90deg, rgba(99,159,255,0) 0%, #639fff 60%, #dce6fd 100%); will-change:width; }
.n6-seam__star { position:absolute; top:0; left:var(--seam-x); width:52px; height:54px; transform:translate(-50%,-50%);
  -webkit-mask:url(../assets/navi-star-clean.svg) center/contain no-repeat; mask:url(../assets/navi-star-clean.svg) center/contain no-repeat;
  background:var(--seam-c); filter:drop-shadow(0 0 14px rgba(99,159,255,.6)); will-change:left; }
.n6-seam--on-light { --seam-c:#161638; }
.n6-seam--on-light .n6-seam__line { background:linear-gradient(90deg, rgba(99,159,255,0) 0%, #639fff 55%, #161638 100%); }
.n6-seam--flip { --seam-x:32%; }
.n6-seam--flip .n6-seam__line { left:auto; right:0; width:calc(100% - var(--seam-x) - 34px); background:linear-gradient(270deg, rgba(99,159,255,0) 0%, #639fff 60%, #dce6fd 100%); }
@media (max-width:720px){
  .n6-seam__star { width:36px; height:38px; }
  .n6-seam__line { width:max(0px, calc(var(--seam-x) - 22px)); }
}


/* THE MELT WRAPPER — structure + grain; page CSS sets background gradient */
.n7b-melt { position:relative; }
.n7b-melt > * { position:relative; }
.n7b-melt::before { content:""; position:absolute; inset:0; pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size:240px 240px; opacity:var(--navi-grain);
  /* Fade grain out through the light half so noise doesn't fake a hard band edge */
  -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 48%,rgba(0,0,0,.55) 56%,rgba(0,0,0,.2) 68%,transparent 78%);
  mask-image:linear-gradient(180deg,#000 0%,#000 48%,rgba(0,0,0,.55) 56%,rgba(0,0,0,.2) 68%,transparent 78%); }
.n7b-melt .band-vivid::after, .n7b-melt .navi-grain::after { content:none; }
.band-deep  { color:var(--navi-off-white); }
.band-vivid { color:var(--navi-off-white); }
.melt-a { color:var(--navi-off-white); }
.melt-b { color:var(--navi-ink); }
.melt-dark { color:var(--navi-off-white); }

/* Shared dark→light runway floor (feature runways). Bridges size to content. */
.n6-melt-runway {
  min-height: var(--melt-runway-min);
}

/* PRELOADER — code-built brand animation (identical system to n07) */
.n7-pre { position:fixed; inset:0; z-index:1000; cursor:pointer; }
.n7-pre__bg {
  position:absolute; inset:0;
  background:
    radial-gradient(70% 55% at 18% 88%, rgba(99,159,255,.22), transparent 62%),
    radial-gradient(55% 50% at 92% 12%, rgba(23,41,135,.55), transparent 68%),
    linear-gradient(165deg, #0b0b20 0%, #101029 42%, #161638 78%, #172987 100%);
  transition:opacity .55s var(--navi-ease);
}
.n7-pre.is-leaving .n7-pre__bg { opacity:0; }
.n7-pre__lockup { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:clamp(140px,22vw,220px); will-change:transform; transform-origin:center center; }
.n7-pre__lockup svg { width:100%; height:auto; display:block; overflow:visible; }
.n7-pre__lockup path { fill:#fff; }
.n7-pre .pl-star { transform-box:fill-box; transform-origin:center; opacity:0; transform:scale(.15) rotate(-120deg); }
.n7-pre .pl-l { transform-box:fill-box; transform-origin:center; opacity:0; transform:translateY(16px); filter:blur(8px); }
body.n7-preloading { overflow:hidden; }
body.n7-preloading .n6-nav__logo img { opacity:0; }


/* NAV — same glass pill both states; adapts over the white world */
.n6-nav {
  position:fixed; top:14px; left:50%; transform:translateX(-50%); z-index:200;
  display:flex; align-items:center; justify-content:space-between;
  width:min(var(--navi-maxw), calc(100% - (2 * var(--navi-pad))));
  padding:12px 20px; border-radius:999px;
  background:linear-gradient(160deg, rgba(255,255,255,.10), rgba(255,255,255,.03));
  border:1px solid rgba(220,230,253,.16);
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
  box-shadow:0 30px 80px -40px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.14);
  transition:width .45s var(--navi-ease), background .45s var(--navi-ease),
    border-color .45s var(--navi-ease), box-shadow .45s var(--navi-ease);
}
/* Stuck collapses harder than resting — inset scales with viewport so 13" laptops
   still get a clear morph (fixed 48px was nearly invisible below ~1440px). */
.n6-nav.is-stuck {
  width: min(
    calc(var(--navi-maxw) - 280px),
    calc(100% - (2 * var(--navi-pad)) - clamp(96px, 14vw, 280px))
  );
}
.n6-nav__logo { display:flex; align-items:center; align-self:center; }
.n6-nav__logo img { display:block; height:26px; width:auto; transform:translateY(-1px); transition:opacity .25s; }
.n6-nav__logo .lg-dark { display:none; }
.n6-nav__links {
  position:absolute; left:50%; top:0; bottom:0; transform:translateX(-50%);
  display:flex; gap:24px; align-items:stretch; font-size:14px; color:rgba(244,246,255,.88);
}
.n6-nav__links > a {
  display:inline-flex; align-items:center;
}
.n6-nav__links a:hover,
.n6-nav__links a[aria-current="page"] { color:var(--navi-off-white); }

/* Features dropdown — mega is a direct child of .n6-nav so it matches the pill width */
.n6-nav__drop {
  position:relative;
  display:flex; align-items:center;
}
/* Wide hit bridge from Features down into the mega — keeps :hover alive across the gap */
.n6-nav__drop::after {
  content:""; position:absolute; left:50%; top:100%; z-index:81;
  width:min(1020px, calc(100vw - 48px)); height:28px;
  transform:translateX(-50%);
  pointer-events:none;
}
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__drop::after,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__drop::after,
.n6-nav:has(.n6-nav__menu:hover) .n6-nav__drop::after {
  pointer-events:auto;
}
.n6-nav__drop-trigger {
  display:inline-flex; align-items:center; gap:6px;
  color:inherit; text-decoration:none; cursor:pointer;
}
.n6-nav__drop-trigger::after {
  content:""; width:6px; height:6px;
  border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-2px); opacity:.7;
  transition:transform .25s var(--navi-ease), opacity .25s;
}
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__drop-trigger::after,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__drop-trigger::after,
.n6-nav:has(.n6-nav__menu:hover) .n6-nav__drop-trigger::after {
  transform:rotate(225deg) translateY(-2px); opacity:1;
}
.n6-nav__menu {
  position:absolute; top:calc(100% + 8px); left:50%; right:auto;
  width:75%; max-width:75%; box-sizing:border-box;
  transform:translate(-50%, 6px);
  padding:18px 18px 14px;
  border-radius:20px; border:0;
  background:#101029;
  box-shadow:none;
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .22s var(--navi-ease), transform .22s var(--navi-ease), visibility 0s linear .22s;
  z-index:80;
}
.n6-nav__menu::before {
  content:""; position:absolute; left:0; right:0; bottom:100%; height:20px;
}
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__menu,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__menu,
.n6-nav__menu:hover {
  opacity:1; visibility:visible; pointer-events:auto;
  transform:translate(-50%, 0);
  transition-delay:0s;
}
.n6-nav__menu a { text-decoration:none; color:inherit; }
.n6-nav__mega-grid {
  display:grid; grid-template-columns:repeat(3, 1fr); gap:14px;
}
.n6-nav__mega-col {
  display:flex; flex-direction:column; gap:0;
  padding:4px; border-radius:14px;
  transition:background .2s var(--navi-ease);
}
.n6-nav__mega-col:hover,
.n6-nav__mega-col[aria-current="page"] {
  background:rgba(99,159,255,.08);
}
.n6-nav__mega-kicker {
  font-family:var(--navi-mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase;
  color:var(--navi-pastel-blue); line-height:1.2; padding:0 2px; margin-bottom:10px;
}
.n6-nav__mega-media {
  position:relative; aspect-ratio:16/10; border-radius:12px; overflow:hidden;
  background:transparent;
  border:0;
  margin-bottom:14px;
}
.n6-nav__mega-media img,
.n6-nav__mega-media video {
  width:100%; height:100%; object-fit:contain; object-position:center center;
  display:block; transform:scale(1.02);
  transition:transform .45s var(--navi-ease);
  background:transparent;
}
.n6-nav__mega-col:hover .n6-nav__mega-media img,
.n6-nav__mega-col:hover .n6-nav__mega-media video { transform:scale(1.05); }

/* Compact Navi AI chat demo (plays while Features menu is open) */
.n6-nav__mega-media--ai {
  background:linear-gradient(165deg, #14183a, #0e0e22);
  display:flex; align-items:stretch;
}
.n6-nav__mega-ai-demo {
  display:flex; flex-direction:column; gap:8px;
  width:100%; padding:12px 12px 10px;
  pointer-events:none;
}
.n6-nav__mega-ai-head {
  display:flex; align-items:center; gap:8px; margin-bottom:2px;
}
.n6-nav__mega-ai-dot {
  width:22px; height:22px; border-radius:7px; flex:0 0 auto;
  display:grid; place-items:center;
  background:linear-gradient(135deg, #639fff, #172987);
  color:#fff; font-size:11px; line-height:1;
}
.n6-nav__mega-ai-name {
  font-family:var(--navi-mono); font-size:9.5px; letter-spacing:.18em;
  color:var(--navi-pastel-blue);
}
.n6-nav__mega-ai-ready {
  display:block; font-size:10px; font-weight:300; color:#8b93b8; margin-top:1px;
}
.n6-nav__mega-ai-live {
  margin-left:auto; width:6px; height:6px; border-radius:50%;
  background:#7ee2a8; box-shadow:0 0 0 3px rgba(126,226,168,.16);
}
.n6-nav__mega-ai-step {
  opacity:0; transform:translateY(8px);
}
.n6-nav__mega-ai-msg-user {
  align-self:flex-end; max-width:88%;
  padding:8px 11px; border-radius:12px 12px 4px 12px;
  background:var(--navi-light-blue); color:#fff;
  font-size:11.5px; font-weight:400; line-height:1.35;
}
.n6-nav__mega-ai-typing {
  display:inline-flex; align-items:center; gap:4px; align-self:flex-start;
  padding:8px 12px; border-radius:12px;
  background:rgba(255,255,255,.06); border:1px solid rgba(220,230,253,.10);
}
.n6-nav__mega-ai-typing span {
  width:5px; height:5px; border-radius:50%; background:var(--navi-pastel-blue); opacity:.4;
}
.n6-nav__mega-ai-msg-ai {
  align-self:flex-start; max-width:92%;
  padding:8px 11px; border-radius:12px 12px 12px 4px;
  background:rgba(255,255,255,.07); border:1px solid rgba(220,230,253,.10);
  color:rgba(220,230,253,.9); font-size:11.5px; font-weight:300; line-height:1.4;
}
.n6-nav__mega-ai-msg-ai strong { font-weight:500; color:#fff; }

.n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-step--user,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-step--user,
.n6-nav__menu:hover .n6-nav__mega-ai-step--user {
  animation:n6MegaAiIn .4s var(--navi-ease) .25s forwards;
}
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-step--typing,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-step--typing,
.n6-nav__menu:hover .n6-nav__mega-ai-step--typing {
  animation:
    n6MegaAiIn .28s var(--navi-ease) .7s forwards,
    n6MegaAiOut .22s var(--navi-ease) 1.35s forwards;
}
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-typing span,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-typing span,
.n6-nav__menu:hover .n6-nav__mega-ai-typing span {
  animation:n6MegaAiDot .45s ease-in-out .7s 3;
}
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-typing span:nth-child(2),
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-typing span:nth-child(2),
.n6-nav__menu:hover .n6-nav__mega-ai-typing span:nth-child(2) { animation-delay:.82s; }
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-typing span:nth-child(3),
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-typing span:nth-child(3),
.n6-nav__menu:hover .n6-nav__mega-ai-typing span:nth-child(3) { animation-delay:.94s; }
.n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-step--ai,
.n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-step--ai,
.n6-nav__menu:hover .n6-nav__mega-ai-step--ai {
  animation:n6MegaAiIn .4s var(--navi-ease) 1.45s forwards;
}
@keyframes n6MegaAiIn {
  to { opacity:1; transform:translateY(0); }
}
@keyframes n6MegaAiOut {
  to { opacity:0; transform:translateY(4px); }
}
@keyframes n6MegaAiDot {
  0%, 100% { opacity:.35; transform:translateY(0); }
  50% { opacity:1; transform:translateY(-3px); }
}
@media (prefers-reduced-motion: reduce) {
  .n6-nav__mega-ai-step { opacity:1; transform:none; }
  .n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-step--user,
  .n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-step--user,
  .n6-nav__menu:hover .n6-nav__mega-ai-step--user,
  .n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-step--typing,
  .n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-step--typing,
  .n6-nav__menu:hover .n6-nav__mega-ai-step--typing,
  .n6-nav:has(.n6-nav__drop:hover) .n6-nav__mega-ai-step--ai,
  .n6-nav:has(.n6-nav__drop:focus-within) .n6-nav__mega-ai-step--ai,
  .n6-nav__menu:hover .n6-nav__mega-ai-step--ai {
    animation:none;
  }
  .n6-nav__mega-ai-step--typing { display:none; }
}
.n6-nav__mega-card-title {
  display:block; font-size:clamp(20px,2vw,26px); font-weight:500;
  color:var(--navi-off-white); line-height:1.15; padding:0 2px; margin-bottom:8px;
}
.n6-nav__mega-card-desc {
  display:block; font-size:13px; color:rgba(166,172,214,.92); line-height:1.4;
  padding:0 2px; margin-bottom:12px; max-width:28ch;
}
.n6-nav__mega-cta {
  display:block; margin-top:auto; padding:2px 2px 4px;
  font-size:13px; font-weight:500; color:var(--navi-light-blue);
}
.n6-nav__mega-col:hover .n6-nav__mega-cta { color:#8eb8ff; }

.n6-nav__mega-footer {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  margin-top:14px; padding-top:12px;
  border-top:1px solid rgba(220,230,253,.10);
}
.n6-nav__mega-footer-all,
.n6-nav__mega-footer-faq {
  font-size:13.5px; font-weight:500; color:var(--navi-off-white);
}
.n6-nav__mega-footer-all:hover,
.n6-nav__mega-footer-faq:hover { color:var(--navi-light-blue); }
.n6-nav__mega-footer-faq[aria-current="page"] { color:var(--navi-light-blue); }

/* Features mega stays dark in both nav states — only the pill adapts over light */

@media (max-width:1040px) {
  .n6-nav__mega-grid { grid-template-columns:1fr; }
  .n6-nav__mega-card-desc { max-width:none; }
}
.n6-nav__cta { display:flex; gap:12px; align-items:center; }
.n6-nav .navi-btn--ghost { color:var(--navi-off-white); border-color:rgba(220,230,253,.3); }
.n6-nav.over-light {
  background:linear-gradient(160deg, rgba(255,255,255,.72), rgba(255,255,255,.5));
  border-color:rgba(22,22,56,.10);
  box-shadow:0 24px 60px -34px rgba(22,22,56,.35), inset 0 1px 0 rgba(255,255,255,.7);
}
.n6-nav.over-light .n6-nav__links { color:rgba(22,22,56,.78); }
.n6-nav.over-light .n6-nav__links a:hover,
.n6-nav.over-light .n6-nav__links a[aria-current="page"] { color:var(--navi-ink); }
.n6-nav.over-light .navi-btn--ghost { color:var(--navi-ink); border-color:rgba(22,22,56,.18); }
.n6-nav.over-light .lg-light { display:none; }
.n6-nav.over-light .lg-dark { display:block; }
@media (max-width:880px) {
  .n6-nav__links { display:none; }
  .n6-nav__cta .navi-btn--ghost { display:none; }
  /* Avoid translateX + backdrop-filter seam/clip — keep the same glass as desktop */
  .n6-nav,
  .n6-nav.is-stuck {
    left: max(10px, env(safe-area-inset-left, 0px));
    right: max(10px, env(safe-area-inset-right, 0px));
    width: auto;
    transform: none;
  }
}


/* FAQ accordion + closing CTA — shared (pricing + feature pages) */
.n7g-dark-label { color:var(--navi-pastel-blue); }
.n7g-faq {
  padding:clamp(90px,11vw,150px) var(--navi-pad);
  background:var(--navi-deep);
  color:var(--navi-off-white);
}
.n7g-faq__in { width:min(850px,100%); margin:0 auto; }
.n7g-faq h2 { margin-top:14px; font-size:clamp(36px,5vw,62px); font-weight:400; }
.n7g-faq h2 .g {
  background:linear-gradient(92deg,#dce6fd,#639fff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.n7g-faq__list { display:grid; gap:10px; margin-top:44px; }
.n7g-q {
  border:1px solid rgba(220,230,253,.15);
  border-radius:18px;
  background:rgba(255,255,255,.04);
  overflow:hidden;
}
.n7g-q summary {
  list-style:none;
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  padding:20px 22px;
  cursor:pointer;
  font-size:17px;
  font-weight:500;
  color:var(--navi-off-white);
}
.n7g-q summary::-webkit-details-marker { display:none; }
.n7g-q summary::after { content:"+"; color:var(--navi-light-blue); font-size:24px; font-weight:300; line-height:1; }
.n7g-q[open] summary::after { content:"–"; }
.n7g-q__body { padding:0 22px 22px; color:var(--navi-muted-dark); font-weight:300; line-height:1.55; }
.n7g-q__body b { color:var(--navi-off-white); }
.n7g-q__body a { color:var(--navi-light-blue); }
.n7g-close {
  position:relative;
  padding:clamp(100px,14vw,190px) var(--navi-pad);
  text-align:center;
  overflow:hidden;
  color:var(--navi-off-white);
  background:var(--navi-dark-blue);
}
.n7g-close__bg { position:absolute; inset:0; z-index:0; }
.n7g-close__bg img { width:100%; height:100%; object-fit:cover; }
.n7g-close__scrim {
  position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(180deg, #101029 0%, rgba(16,16,41,.82) 12%, rgba(16,16,41,.35) 42%, rgba(16,16,41,.88) 100%),
    radial-gradient(60% 70% at 50% 100%, rgba(99,159,255,.32), transparent 70%);
}
.n7g-close > :not(.n7g-close__bg):not(.n7g-close__scrim) { position:relative; z-index:2; }
.n7g-close h2 { font-size:clamp(42px,6.5vw,82px); font-weight:400; }
.n7g-close h2 .g {
  background:linear-gradient(92deg,#dce6fd,#639fff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.n7g-close p { max-width:650px; margin:22px auto 0; color:rgba(255,255,255,.84); font-size:18px; font-weight:300; }
.n7g-close__actions { display:flex; justify-content:center; gap:12px; margin-top:32px; flex-wrap:wrap; }
.n7g-close .navi-btn--ghost { color:#fff; border-color:rgba(255,255,255,.45); }

/* FOOTER — canonical shared n08 footer */
.n6-foot { padding:60px var(--navi-pad) 40px; border-top:1px solid var(--navi-line-dark); background:var(--navi-dark-blue); color:var(--navi-muted-dark); overflow:hidden; }
.n6-foot__grid { max-width:var(--navi-maxw); margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:30px; }
.n6-foot__grid h4 { color:var(--navi-off-white); font-size:13px; margin:0 0 12px; font-weight:500; }
.n6-foot__grid a { display:block; font-size:14px; padding:5px 0; }
.n6-foot__grid a:hover { color:var(--navi-off-white); }
.n6-foot__logo { height:30px; width:auto; display:block; }
.n6-foot__bottom {
  max-width:var(--navi-maxw);
  margin:40px auto 0;
  padding-top:20px;
  border-top:1px solid var(--navi-line-dark);
  font-size:13px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
}
.n6-foot__bottom > :first-child { justify-self:start; }
.n6-foot__bottom > :last-child { justify-self:end; text-align:right; }
.n6-foot__credit { justify-self:center; text-align:center; opacity:.5; }
.n6-foot__bottom a:hover { color:var(--navi-off-white); }
.n6-foot__giant { position:relative; width:min(1500px,94vw); margin:76px auto 0; }
.n6-foot__giant img { width:100%; height:auto; display:block; opacity:.13; }
.n6-foot__giant::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(22,22,56,0) 10%, var(--navi-dark-blue) 97%); }
@media (max-width:820px) {
  .n6-foot__grid { grid-template-columns:1fr 1fr; }
  .n6-foot__bottom {
    grid-template-columns:1fr;
    justify-items:start;
    text-align:left;
  }
  .n6-foot__bottom > :first-child,
  .n6-foot__bottom > :last-child,
  .n6-foot__credit { justify-self:start; text-align:left; }
}

.reveal { opacity:0; transform:translateY(34px); transition:opacity .9s var(--navi-ease), transform .9s var(--navi-ease); }
.reveal.in { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1 !important; transform:none !important; }
  .n6-stack :is(img,video){ opacity:1 !important; transform:none !important; } .n6-stack > :is(img,video) + :is(img,video){ opacity:0 !important; }
  .n6-track{ animation:none; } .n6-hero__bg img, .n6-hero__bg video{ transform:none; } .n6-step{ opacity:1; }
  .n6-railstar{ transition:none; }
  .n6-seam{ --seam-x:62%; }
  .n6-stack{ transform:none !important; }
}


/* Footer blurb (replaces inline style) */
.n6-foot__blurb { margin-top:14px; max-width:340px; font-size:14px; }

/* Footer social + email */
.n6-foot__social {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:14px 16px;
  margin-top:18px;
}
.n6-foot__grid .n6-foot__social-link,
.n6-foot__grid .n6-foot__email {
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:0;
  font-size:13px;
  color:var(--navi-muted-dark);
  text-decoration:none;
  line-height:1;
}
.n6-foot__grid .n6-foot__social-link:hover,
.n6-foot__grid .n6-foot__email:hover {
  color:var(--navi-off-white);
}
.n6-foot__social-link svg,
.n6-foot__email svg {
  width:18px;
  height:18px;
  flex-shrink:0;
  fill:currentColor;
}
.n6-foot__email { cursor:pointer; }
.n6-foot__copied {
  position:fixed;
  z-index:1200;
  transform:translate(-50%, calc(-100% - 10px));
  padding:8px 12px;
  background:var(--navi-off-white);
  color:var(--navi-dark-blue);
  font-family:var(--navi-font);
  font-size:13px;
  line-height:1.2;
  border-radius:6px;
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
  white-space:nowrap;
  box-shadow:0 6px 20px rgba(0,0,0,.25);
}
.n6-foot__copied.is-visible {
  opacity:1;
  visibility:visible;
  transform:translate(-50%, calc(-100% - 14px));
}

.navi-eyebrow--accent { color: var(--navi-light-blue); }

/* Utility classes replacing former inline styles */
.n6-melt-state--rel { position: relative; }
.navi-eyebrow--blue { color: var(--navi-blue); }
.navi-eyebrow--pastel { color: var(--navi-pastel-blue); }
.n6-title-gap { margin-top: 14px; }
.navi-btn--on-dark { color: #fff; border-color: rgba(255,255,255,.5); }
.n6-chip__sf { stroke: #00A1E0; }

/* Page transition — dark curtain wipe (bottom → top) */
.n7-pt {
  position: fixed;
  inset: 0;
  z-index: 1100;
  background: var(--navi-deep);
  pointer-events: none;
  transform: translateY(101%);
  transition: transform 0.45s var(--navi-ease);
  will-change: transform;
}
.n7-pt.n7-pt--cover {
  transform: translateY(0);
  pointer-events: auto;
}
.n7-pt.n7-pt--leave {
  transform: translateY(-101%);
  transition-duration: 0.5s;
}
.n7-pt.n7-pt--noanim {
  transition: none !important;
}
@media (prefers-reduced-motion: reduce) {
  .n7-pt { display: none !important; }
}
