@font-face {
  font-family: "Satoshi";
  src: url("../fonts/Satoshi-Variable.woff2") format("woff2");
  font-weight: 300 900;
  font-display: swap;
}

:root {
  --nb-deep: #152c59;
  --nb-blue: #337693;
  --nb-sky: #dcebf1;
  --nb-ink: #14181c;
  --nb-muted: #657482;
  --nb-line: #dce4e9;
  --nb-light: #f4f0e7;
  --nb-orange: #ee7946;
  --nb-white: #ffffff;
}

html { scroll-behavior: smooth; }
body.navbrief-site { font-family: "Satoshi", Arial, sans-serif; color: var(--nb-ink); background: #fff; }
html.file-protocol body.navbrief-site { font-family: Arial, Helvetica, sans-serif; }
.navbrief-site h1, .navbrief-site h2, .navbrief-site h3, .navbrief-site h4, .navbrief-site p, .navbrief-site li, .navbrief-site a { font-family: inherit; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 10000; padding: 10px 16px; color: #fff; background: var(--nb-deep); border-radius: 0 0 8px 8px; }
.skip-link:focus { top: 0; color: #fff; }
.site-header { position: sticky; top: 0; z-index: 1000; background: rgba(255,255,255,.94); border-bottom: 1px solid rgba(21,44,89,.08); backdrop-filter: blur(14px); }
.site-header .main-nav { min-height: 88px; background: transparent; }
.site-header .navbar-brand { display: flex; align-items: center; width: 122px; height: 76px; overflow: hidden; }
.site-header .navbar-brand img { display: block; width: 122px; height: auto; }
.site-header .navbar-nav .nav-item .nav-link { padding: 0 14px; color: #33445a; font-size: 14px; font-weight: 650; line-height: 44px; text-transform: none; letter-spacing: .01em; }
.site-header .navbar-nav .nav-item .nav-link:hover, .site-header .navbar-nav .nav-item .nav-link:focus { color: var(--nb-blue); }
.site-header .nav-account { margin-left: 8px; }
.btn-nav-cta { margin-left: 7px; padding: 11px 18px; color: #fff !important; background: var(--nb-deep); border-radius: 9px; font-size: 14px; font-weight: 700; box-shadow: 0 8px 18px rgba(21,44,89,.16); }
.btn-nav-cta:hover { background: var(--nb-blue); transform: translateY(-1px); }
.site-header .navbar-toggler { width: 44px; height: 44px; color: var(--nb-deep); border: 1px solid var(--nb-line); border-radius: 9px; }

.navbrief-hero { position: relative; min-height: 700px; padding: 82px 0 112px; overflow: hidden; background: linear-gradient(135deg,#fff 0%,#fff 52%,#f0f6f8 100%); }
.navbrief-hero::before { content: ""; position: absolute; width: 760px; height: 760px; right: -280px; top: -260px; border: 1px solid rgba(51,118,147,.13); border-radius: 50%; box-shadow: 0 0 0 90px rgba(51,118,147,.025), 0 0 0 180px rgba(51,118,147,.018); }
.navbrief-hero::after { content: ""; position: absolute; inset: 0; opacity: .055; background: url("../images/navbrief/pattern-route.webp") center/cover no-repeat; pointer-events: none; mix-blend-mode: multiply; }
.navbrief-hero .container { position: relative; z-index: 2; }
.hero-row { min-height: 520px; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 24px; color: var(--nb-blue); font-size: 13px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.eyebrow-dot { position: relative; width: 10px; height: 10px; background: var(--nb-orange); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px rgba(238,121,70,.45); }
.hero-copy h1 { margin: 0 0 26px; color: var(--nb-deep); font-size: clamp(46px,5vw,72px); font-weight: 720; line-height: .98; letter-spacing: -.045em; }
.hero-copy h1 span { color: var(--nb-blue); }
.hero-copy > p { max-width: 540px; margin: 0 0 30px; color: var(--nb-muted); font-size: 18px; line-height: 1.62; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 28px; }
.hero-actions .btn { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: 12px; padding: 12px 22px; border-radius: 10px; font-size: 15px; font-weight: 750; transition: .2s ease; }
.btn-primary-action { color: #fff !important; background: var(--nb-deep); box-shadow: 0 14px 30px rgba(21,44,89,.2); }
.btn-primary-action:hover { background: var(--nb-blue); transform: translateY(-2px); }
.btn-secondary-action { color: var(--nb-deep) !important; background: #fff; border: 1px solid #ccd7de; }
.btn-secondary-action:hover { border-color: var(--nb-blue); transform: translateY(-2px); }
.hero-points { display: flex; flex-wrap: wrap; gap: 9px 18px; margin: 0; padding: 0; list-style: none; }
.hero-points li { display: flex; align-items: center; gap: 7px; color: #566777; font-size: 13px; font-weight: 650; }
.hero-points i { color: var(--nb-blue); font-size: 11px; }
.hero-product { position: relative; min-height: 520px; }
.screen-frame { position: absolute; overflow: hidden; background: #fff; border: 1px solid rgba(21,44,89,.16); box-shadow: 0 30px 70px rgba(21,44,89,.2); }
.screen-frame img { display: block; width: 100%; height: auto; }
.web-frame { width: 91%; left: 3%; top: 68px; border-radius: 18px; transform: perspective(1400px) rotateY(-4deg) rotateX(1deg); }
.ipad-frame { width: 27%; right: -1%; bottom: -8px; border: 5px solid #fff; border-radius: 22px; transform: rotate(2.2deg); box-shadow: 0 32px 55px rgba(21,44,89,.32); }
.screen-label { display: flex; position: absolute; z-index: 2; left: 12px; top: 12px; align-items: center; gap: 7px; padding: 7px 10px; color: var(--nb-deep); background: rgba(255,255,255,.92); border: 1px solid rgba(21,44,89,.1); border-radius: 7px; font-size: 11px; font-weight: 750; backdrop-filter: blur(8px); }
.screen-label span { width: 7px; height: 7px; background: var(--nb-orange); border-radius: 50%; }
.product-orbit { position: absolute; width: 460px; height: 460px; left: 18%; top: 34px; border: 1px dashed rgba(51,118,147,.25); border-radius: 50%; }
.product-orbit::after { content: ""; position: absolute; width: 9px; height: 9px; left: 16px; top: 112px; background: var(--nb-orange); border: 3px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px var(--nb-orange); }
.hero-route-line { position: absolute; z-index: 1; left: 0; bottom: 36px; width: 34%; height: 90px; border-top: 1px dashed rgba(51,118,147,.26); border-radius: 0 80% 0 0; transform: rotate(-3deg); }
.hero-route-line span { position: absolute; width: 8px; height: 8px; top: -4px; background: #fff; border: 2px solid var(--nb-blue); border-radius: 50%; }
.hero-route-line span:nth-child(1) { left: 14%; }.hero-route-line span:nth-child(2) { left: 50%; }.hero-route-line span:nth-child(3) { right: 5%; background: var(--nb-orange); border-color: var(--nb-orange); }

@media (max-width: 1199px) {
  .hero-copy h1 { font-size: 54px; }
  .hero-product { min-height: 460px; }
  .web-frame { top: 82px; }
  .ipad-frame { width: 29%; bottom: 6px; }
}
@media (max-width: 991px) {
  .site-header .main-nav { min-height: 78px; }
  .site-header .navbar-brand { width: 104px; height: 68px; }
  .site-header .navbar-brand img { width: 104px; }
  .site-header .navbar-collapse { padding: 8px 0 20px; border-top: 1px solid var(--nb-line); }
  .site-header .navbar-nav { align-items: stretch !important; }
  .site-header .navbar-nav .nav-item .nav-link { padding: 5px 0; text-align: left; }
  .site-header .nav-account { margin-left: 0; }
  .btn-nav-cta { display: block; margin: 8px 0 0; text-align: center; }
  .navbrief-hero { padding: 68px 0 80px; }
  .hero-copy { text-align: center; }
  .hero-copy > p { margin-left: auto; margin-right: auto; }
  .hero-actions, .hero-points { justify-content: center; }
  .hero-product { min-height: 560px; margin-top: 38px; }
  .web-frame { width: 88%; left: 4%; top: 40px; }
  .ipad-frame { width: 25%; right: 3%; bottom: 22px; }
}
@media (max-width: 767px) {
  .navbrief-hero { min-height: 0; padding-top: 52px; }
  .hero-copy h1 { font-size: 46px; }
  .hero-copy > p { font-size: 16px; }
  .hero-product { min-height: 410px; }
  .screen-label { top: 8px; left: 8px; padding: 5px 7px; font-size: 9px; }
  .ipad-frame { width: 28%; bottom: 18px; border-width: 3px; border-radius: 14px; }
  .product-orbit { width: 330px; height: 330px; }
}
@media (max-width: 480px) {
  .hero-copy h1 { font-size: 39px; }
  .hero-actions { flex-direction: column; }
  .hero-actions .btn { width: 100%; }
  .hero-points { display: grid; grid-template-columns: 1fr 1fr; text-align: left; }
  .hero-product { min-height: 330px; margin-top: 28px; }
  .web-frame { width: 94%; left: 1%; top: 25px; border-radius: 11px; }
  .ipad-frame { width: 31%; right: 0; bottom: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}


.navbrief-site :focus-visible { outline: 3px solid rgba(238,121,70,.55); outline-offset: 3px; }
.site-header.is-scrolled { box-shadow: 0 10px 30px rgba(21,44,89,.07); }
.section-space { position: relative; padding: 116px 0; }
.section-heading { position: relative; z-index: 2; }
.section-heading.centered { max-width: 760px; margin: 0 auto 58px; text-align: center; }
.section-kicker { display: inline-flex; align-items: center; margin-bottom: 17px; color: var(--nb-blue); font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.section-kicker::before { content: ""; width: 24px; height: 1px; margin-right: 10px; background: currentColor; }
.section-kicker-light { color: #90c6da; }
.section-heading h2, .web-copy h2, .navmap-copy h2, .faq-intro h2 { margin: 0 0 22px; color: var(--nb-deep); font-size: clamp(38px,4vw,57px); font-weight: 690; line-height: 1.04; letter-spacing: -.035em; }
.section-heading p, .section-sidecopy p, .web-copy > p, .faq-intro > p { color: var(--nb-muted); font-size: 17px; line-height: 1.65; }
.section-heading-row { margin-bottom: 50px; }
.section-sidecopy p { max-width: 420px; margin-left: auto; padding-left: 34px; border-left: 1px solid var(--nb-line); }

.integration-section { background: #fff; }
.integration-section::before { content: ""; position: absolute; width: 420px; height: 420px; left: -280px; top: 70px; border: 1px solid rgba(51,118,147,.13); border-radius: 50%; }
.integration-flow { display: grid; grid-template-columns: 1fr 76px 1fr 76px 1fr; align-items: stretch; }
.flow-card { position: relative; min-height: 298px; padding: 34px 30px; background: #fff; border: 1px solid var(--nb-line); border-radius: 17px; box-shadow: 0 18px 46px rgba(21,44,89,.07); }
.flow-card-core { background: linear-gradient(145deg,#f4f8fa,#eef5f7); border-color: rgba(51,118,147,.22); }
.flow-index { position: absolute; right: 25px; top: 24px; color: #b7c3ca; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.flow-icon { display: inline-flex; width: 54px; height: 54px; align-items: center; justify-content: center; margin-bottom: 30px; color: var(--nb-blue); background: #edf5f8; border: 1px solid #d4e5eb; border-radius: 14px; font-size: 21px; }
.flow-card h3 { margin: 0 0 13px; color: var(--nb-deep); font-size: 23px; font-weight: 700; line-height: 1.2; }
.flow-card p { color: var(--nb-muted); font-size: 15px; line-height: 1.65; }
.flow-connector { display: flex; position: relative; align-items: center; justify-content: center; color: var(--nb-blue); }
.flow-connector::before { content: ""; position: absolute; left: 0; right: 0; top: 50%; border-top: 1px dashed rgba(51,118,147,.42); }
.flow-connector i { position: relative; z-index: 2; padding: 8px; background: #fff; font-size: 13px; }
.flow-connector span { position: absolute; z-index: 2; top: calc(50% - 4px); width: 8px; height: 8px; background: #fff; border: 2px solid var(--nb-blue); border-radius: 50%; }
.flow-connector span:first-child { left: -4px; }.flow-connector span:last-child { right: -4px; }

.features-section { overflow: hidden; background: #f5f8fa; }
.features-section::after { content: ""; position: absolute; width: 560px; height: 560px; right: -260px; bottom: -310px; background: url("../images/navbrief/compass-route.webp") center/contain no-repeat; opacity: .48; }
.feature-grid { display: grid; position: relative; z-index: 2; grid-template-columns: repeat(3,1fr); gap: 18px; }
.feature-card { display: flex; min-height: 220px; gap: 22px; padding: 30px; background: #fff; border: 1px solid #e0e8ec; border-radius: 15px; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.feature-card:hover { border-color: rgba(51,118,147,.42); box-shadow: 0 20px 42px rgba(21,44,89,.08); transform: translateY(-4px); }
.feature-card-wide { grid-column: span 2; }
.feature-card-accent { background: var(--nb-deep); border-color: var(--nb-deep); }
.feature-icon { display: inline-flex; flex: 0 0 46px; width: 46px; height: 46px; align-items: center; justify-content: center; color: var(--nb-blue); background: #eef5f7; border-radius: 12px; font-size: 18px; }
.feature-card h3 { margin: 2px 0 11px; color: var(--nb-deep); font-size: 20px; font-weight: 700; line-height: 1.25; }
.feature-card p { color: var(--nb-muted); font-size: 14px; line-height: 1.65; }
.feature-card-accent .feature-icon { color: #fff; background: rgba(255,255,255,.12); }
.feature-card-accent h3 { color: #fff; }.feature-card-accent p { color: #becbd6; }

.web-section { overflow: hidden; background: #fff; }
.web-copy { position: relative; z-index: 3; padding-right: 34px; }
.check-list { margin: 32px 0 27px; padding: 0; list-style: none; }
.check-list li { display: flex; gap: 14px; margin-bottom: 20px; }
.check-list li > span { display: inline-flex; flex: 0 0 28px; width: 28px; height: 28px; align-items: center; justify-content: center; color: #fff; background: var(--nb-blue); border-radius: 50%; font-size: 10px; }
.check-list strong, .check-list small { display: block; }
.check-list strong { margin-bottom: 3px; color: var(--nb-deep); font-size: 15px; font-weight: 730; }
.check-list small { color: var(--nb-muted); font-size: 13px; line-height: 1.5; }
.text-link { display: inline-flex; align-items: center; gap: 10px; color: var(--nb-blue); font-size: 15px; font-weight: 760; }
.text-link:hover { color: var(--nb-deep); gap: 14px; }
.web-visual { position: relative; min-height: 520px; }
.visual-grid { position: absolute; width: 520px; height: 420px; right: -110px; top: -70px; opacity: .17; background-image: linear-gradient(rgba(51,118,147,.28) 1px,transparent 1px),linear-gradient(90deg,rgba(51,118,147,.28) 1px,transparent 1px); background-size: 30px 30px; transform: rotate(-6deg); }
.product-figure { position: relative; z-index: 2; margin: 0; overflow: hidden; background: #fff; border: 1px solid rgba(21,44,89,.16); border-radius: 18px; box-shadow: 0 35px 75px rgba(21,44,89,.2); }
.landscape-figure { width: 110%; margin-left: 3%; transform: perspective(1400px) rotateY(-4deg) rotateX(1deg); }
.product-figure img { display: block; width: 100%; height: auto; }
.product-figure figcaption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 15px 18px; background: #fff; }
.product-figure figcaption span { color: var(--nb-deep); font-size: 13px; font-weight: 760; }
.product-figure figcaption small { color: var(--nb-muted); font-size: 12px; }

.navmap-section { min-height: 820px; overflow: hidden; color: #fff; background: radial-gradient(circle at 22% 45%,#244f76 0,#152c59 37%,#101f3d 100%); }
.navmap-section::before { content: ""; position: absolute; inset: 0; opacity: .11; background: url("../images/navbrief/pattern-route.webp") center/cover no-repeat; filter: invert(1); mix-blend-mode: screen; }
.navmap-compass { position: absolute; width: 760px; height: 397px; right: -240px; bottom: -60px; background: url("../images/navbrief/compass-route.webp") center/contain no-repeat; opacity: .08; filter: invert(1); }
.navmap-visual { min-height: 650px; }
.ipad-device { position: absolute; width: 52%; left: 20%; top: -8px; overflow: hidden; background: #fff; border: 7px solid #f7f9fa; border-radius: 30px; box-shadow: 0 45px 90px rgba(0,0,0,.4); transform: rotate(-3deg); }
.ipad-device::after { content: ""; position: absolute; width: 34px; height: 4px; left: calc(50% - 17px); top: 7px; background: rgba(20,24,28,.45); border-radius: 10px; }
.ipad-device img { display: block; width: 100%; height: auto; }
.map-status-card { display: flex; position: absolute; z-index: 3; left: 4%; bottom: 112px; min-width: 250px; align-items: center; gap: 12px; padding: 14px 17px; color: var(--nb-deep); background: rgba(255,255,255,.94); border: 1px solid rgba(255,255,255,.7); border-radius: 12px; box-shadow: 0 20px 40px rgba(0,0,0,.24); backdrop-filter: blur(10px); }
.map-status-card strong, .map-status-card small { display: block; }.map-status-card strong { font-size: 13px; }.map-status-card small { color: #657482; font-size: 11px; }
.status-pulse { position: relative; width: 10px; height: 10px; background: #35a574; border-radius: 50%; box-shadow: 0 0 0 5px rgba(53,165,116,.14); }
.navmap-copy { position: relative; z-index: 3; }
.navmap-copy h2 { color: #fff; }
.navmap-copy > p { margin: 0 0 32px; color: #c0ceda; font-size: 17px; line-height: 1.67; }
.navmap-specs { margin-bottom: 32px; }
.navmap-specs > div { display: flex; gap: 18px; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.13); }
.navmap-specs > div > span { flex: 0 0 30px; color: #78b6cf; font-size: 11px; font-weight: 800; letter-spacing: .1em; }
.navmap-specs p { margin: 0; }.navmap-specs strong, .navmap-specs small { display: block; }.navmap-specs strong { margin-bottom: 4px; color: #fff; font-size: 15px; }.navmap-specs small { color: #aebfcb; font-size: 13px; line-height: 1.5; }
.btn-light-action { display: inline-flex; align-items: center; gap: 12px; padding: 14px 21px; color: var(--nb-deep) !important; background: #fff; border-radius: 9px; font-size: 14px; font-weight: 760; }
.btn-light-action:hover { color: var(--nb-deep); background: #e8f2f6; transform: translateY(-2px); }

.trust-section { background: #f8fafb; }
.legal-links { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 27px; }
.legal-links a { display: inline-flex; align-items: center; gap: 8px; color: var(--nb-blue); font-size: 14px; font-weight: 730; }
.trust-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 15px; margin-left: 30px; }
.trust-grid article { min-height: 230px; padding: 28px; background: #fff; border: 1px solid var(--nb-line); border-radius: 15px; }
.trust-grid article > span { display: inline-flex; width: 42px; height: 42px; align-items: center; justify-content: center; margin-bottom: 23px; color: var(--nb-blue); background: #edf5f8; border-radius: 12px; }
.trust-grid h3 { margin: 0 0 10px; color: var(--nb-deep); font-size: 18px; font-weight: 700; line-height: 1.25; }
.trust-grid p { color: var(--nb-muted); font-size: 13px; line-height: 1.6; }

.faq-section { background: #fff; }
.faq-intro { position: sticky; top: 135px; align-self: flex-start; padding-right: 55px; }
.faq-intro .text-link { margin-top: 20px; }
.faq-accordion { border-top: 1px solid var(--nb-line); }
.faq-item { border-bottom: 1px solid var(--nb-line); }
.faq-item h3 { margin: 0; }
.faq-item button { display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 20px; padding: 24px 4px; color: var(--nb-deep); background: transparent; border: 0; font-size: 17px; font-weight: 700; line-height: 1.35; text-align: left; cursor: pointer; }
.faq-item button:hover { color: var(--nb-blue); }
.faq-item p { max-width: 760px; padding: 0 50px 24px 4px; color: var(--nb-muted); font-size: 15px; line-height: 1.65; }
.faq-toggle { position: relative; flex: 0 0 24px; width: 24px; height: 24px; border: 1px solid #c9d6dc; border-radius: 50%; }
.faq-toggle::before, .faq-toggle::after { content: ""; position: absolute; left: 6px; right: 6px; top: 11px; height: 1px; background: var(--nb-deep); transition: .2s ease; }
.faq-toggle::after { transform: rotate(90deg); }
.faq-item button:not(.collapsed) .faq-toggle::after { transform: rotate(0); }

.final-cta { position: relative; overflow: hidden; padding: 78px 0; color: #fff; background: var(--nb-blue); }
.final-cta::after { content: ""; position: absolute; inset: 0; opacity: .08; background: url("../images/navbrief/pattern-route.webp") center/cover no-repeat; filter: invert(1); }
.cta-inner { display: flex; position: relative; z-index: 2; align-items: center; justify-content: space-between; gap: 45px; }
.cta-inner h2 { margin: 0 0 10px; color: #fff; font-size: clamp(34px,4vw,52px); font-weight: 700; line-height: 1.05; letter-spacing: -.035em; }.cta-inner p { color: #d5e6ec; font-size: 16px; }
.cta-actions { display: flex; flex: 0 0 auto; gap: 10px; }
.cta-actions .btn { padding: 14px 19px; border-radius: 9px; font-size: 14px; font-weight: 760; }
.btn-orange-action { color: #fff !important; background: var(--nb-orange); box-shadow: 0 12px 28px rgba(88,43,24,.22); }.btn-orange-action:hover { background: #d96534; transform: translateY(-2px); }
.btn-ghost-action { color: #fff !important; background: transparent; border: 1px solid rgba(255,255,255,.45); }.btn-ghost-action:hover { background: rgba(255,255,255,.1); }
.cta-route { position: absolute; z-index: 1; width: 380px; height: 130px; right: -50px; top: 0; border-bottom: 1px dashed rgba(255,255,255,.35); border-radius: 0 0 60% 0; transform: rotate(-8deg); }.cta-route span { position: absolute; width: 8px; height: 8px; bottom: -4px; background: var(--nb-blue); border: 2px solid #fff; border-radius: 50%; }.cta-route span:nth-child(1){left:10%;}.cta-route span:nth-child(2){left:52%;}.cta-route span:nth-child(3){right:4%;background:var(--nb-orange);border-color:var(--nb-orange);}

.navbrief-footer { padding: 72px 0 0; color: #fff; background: #101a2d; }
.footer-main-row { padding-bottom: 58px; }
.footer-brand > a { display: block; width: 126px; height: 82px; overflow: hidden; margin-bottom: 20px; }.footer-brand img { width: 126px; height: auto; }.footer-brand p { max-width: 290px; color: #8fa1b2; font-size: 14px; line-height: 1.6; }
.footer-column h3 { margin: 10px 0 19px; color: #fff; font-size: 13px; font-weight: 760; letter-spacing: .07em; text-transform: uppercase; }.footer-column ul { margin: 0; padding: 0; list-style: none; }.footer-column li { margin-bottom: 11px; }.footer-column a { color: #8fa1b2; font-size: 13px; }.footer-column a:hover { color: #fff; }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; padding: 20px 0 24px; color: #718499; border-top: 1px solid rgba(255,255,255,.09); font-size: 12px; }
.navbrief-site .scroll-top-to { display: none; position: fixed; z-index: 999; right: 20px; bottom: 20px; width: 42px; height: 42px; padding: 0; color: #fff; background: var(--nb-deep); border: 0; border-radius: 50%; line-height: 42px; box-shadow: 0 12px 28px rgba(21,44,89,.28); cursor: pointer; }

@media (max-width: 1199px) {
  .section-space { padding: 96px 0; }
  .integration-flow { grid-template-columns: 1fr 48px 1fr 48px 1fr; }
  .flow-card { padding: 28px 24px; }
  .feature-card { padding: 25px; }
  .web-visual { min-height: 450px; }
  .navmap-section { min-height: 760px; }
  .ipad-device { width: 58%; left: 18%; }
}

@media (max-width: 991px) {
  .section-space { padding: 82px 0; }
  .section-heading-row { margin-bottom: 38px; }
  .section-sidecopy p { max-width: none; margin: 20px 0 0; padding-left: 0; border-left: 0; }
  .integration-flow { grid-template-columns: 1fr; gap: 14px; max-width: 700px; margin: 0 auto; }
  .flow-card { min-height: 0; }
  .flow-connector { height: 35px; transform: rotate(90deg); }
  .flow-connector::before { left: calc(50% - 35px); right: calc(50% - 35px); }
  .feature-grid { grid-template-columns: repeat(2,1fr); }
  .feature-card-wide { grid-column: span 2; }
  .web-copy { padding-right: 15px; }
  .web-visual { min-height: 500px; margin-top: 46px; }
  .landscape-figure { width: 100%; margin-left: 0; transform: none; }
  .navmap-section { min-height: 1120px; padding-bottom: 50px; }
  .navmap-copy { margin-bottom: 42px; }
  .navmap-visual { min-height: 650px; }
  .ipad-device { width: 43%; left: 28%; }
  .map-status-card { left: 18%; bottom: 120px; }
  .trust-grid { margin: 42px 0 0; }
  .faq-intro { position: static; padding-right: 15px; margin-bottom: 35px; }
  .cta-inner { align-items: flex-start; flex-direction: column; }
  .footer-brand { margin-bottom: 34px; }
}

@media (max-width: 767px) {
  .section-space { padding: 70px 0; }
  .section-heading.centered { margin-bottom: 40px; }
  .section-heading h2, .web-copy h2, .navmap-copy h2, .faq-intro h2 { font-size: 38px; }
  .feature-grid { grid-template-columns: 1fr; }
  .feature-card-wide { grid-column: auto; }
  .feature-card { min-height: 0; }
  .web-visual { min-height: 390px; }
  .product-figure figcaption { align-items: flex-start; flex-direction: column; gap: 4px; }
  .navmap-section { min-height: 1020px; }
  .navmap-visual { min-height: 600px; }
  .ipad-device { width: 55%; left: 23%; }
  .map-status-card { left: 8%; bottom: 98px; }
  .trust-grid { grid-template-columns: 1fr; }
  .trust-grid article { min-height: 0; }
  .cta-actions { width: 100%; flex-direction: column; }.cta-actions .btn { width: 100%; }
  .footer-column { margin-bottom: 30px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; gap: 7px; }
}

@media (max-width: 480px) {
  .section-space { padding: 62px 0; }
  .section-heading h2, .web-copy h2, .navmap-copy h2, .faq-intro h2 { font-size: 34px; }
  .flow-card { padding: 25px 22px; }
  .feature-card { gap: 15px; padding: 23px 20px; }
  .web-visual { min-height: 305px; }
  .visual-grid { display: none; }
  .navmap-section { min-height: 920px; }
  .navmap-visual { min-height: 530px; }
  .ipad-device { width: 67%; left: 17%; border-width: 5px; border-radius: 22px; }
  .map-status-card { left: 0; bottom: 62px; min-width: 225px; }
  .trust-grid { gap: 12px; }
  .faq-item button { padding: 20px 2px; font-size: 15px; }.faq-item p { padding-right: 20px; font-size: 14px; }
  .final-cta { padding: 62px 0; }
}

/* Public legal pages */
.legal-page { background: #f6f9fa; }
.legal-hero {
  position: relative;
  overflow: hidden;
  padding: 78px 0 72px;
  color: #fff;
  background: radial-gradient(circle at 78% 20%, #285b7c 0, var(--nb-deep) 44%, #101f3d 100%);
}
.legal-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .12;
  background: url("../images/navbrief/pattern-route.webp") center/cover no-repeat;
  filter: invert(1);
  pointer-events: none;
}
.legal-hero::after {
  content: "";
  position: absolute;
  width: 410px;
  height: 410px;
  right: -160px;
  top: -210px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  box-shadow: 0 0 0 68px rgba(255,255,255,.025), 0 0 0 136px rgba(255,255,255,.018);
}
.legal-hero .container { position: relative; z-index: 2; }
.legal-breadcrumb { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 20px; color: #a9cad8; font-size: 13px; font-weight: 650; }
.legal-breadcrumb a { color: #fff; }
.legal-breadcrumb a:hover { color: #c9e3ec; }
.legal-breadcrumb i { font-size: 9px; }
.legal-hero h1 { max-width: 820px; margin: 0 0 17px; color: #fff; font-size: clamp(42px, 5vw, 65px); font-weight: 710; line-height: 1.02; letter-spacing: -.04em; }
.legal-updated { margin: 0; color: #bdd1dc; font-size: 14px; }
.legal-content-section { position: relative; padding: 72px 0 100px; }
.legal-layout { align-items: flex-start; }
.legal-sidebar {
  position: sticky;
  top: 118px;
  padding: 24px 22px;
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 14px;
  box-shadow: 0 14px 35px rgba(21,44,89,.055);
}
.legal-sidebar h2 { margin: 0 0 16px; color: var(--nb-deep); font-size: 13px; font-weight: 780; letter-spacing: .08em; text-transform: uppercase; }
.legal-sidebar ol { margin: 0; padding: 0; list-style: none; }
.legal-sidebar li + li { margin-top: 6px; }
.legal-sidebar a { display: block; padding: 7px 0; color: var(--nb-muted); font-size: 13px; line-height: 1.35; }
.legal-sidebar a:hover, .legal-sidebar a:focus { color: var(--nb-blue); }
.legal-card {
  padding: 52px 58px;
  background: #fff;
  border: 1px solid var(--nb-line);
  border-radius: 18px;
  box-shadow: 0 22px 55px rgba(21,44,89,.065);
}
.legal-notice {
  position: relative;
  margin-bottom: 42px;
  padding: 20px 22px 20px 53px;
  color: #29445d;
  background: #edf6f9;
  border: 1px solid #d1e5ec;
  border-radius: 12px;
  font-size: 14px;
  line-height: 1.65;
}
.legal-notice::before {
  content: "i";
  position: absolute;
  left: 20px;
  top: 20px;
  display: flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--nb-blue);
  border-radius: 50%;
  font-size: 12px;
  font-weight: 800;
  font-style: normal;
}
.legal-clause { scroll-margin-top: 120px; }
.legal-clause + .legal-clause { margin-top: 38px; padding-top: 38px; border-top: 1px solid #e6ecef; }
.legal-clause h2 { margin: 0 0 15px; color: var(--nb-deep); font-size: 24px; font-weight: 710; line-height: 1.25; letter-spacing: -.015em; }
.legal-clause p, .legal-clause li { color: #526576; font-size: 16px; line-height: 1.78; }
.legal-clause p:last-child { margin-bottom: 0; }
.legal-clause ul { margin: 18px 0 20px; padding-left: 24px; }
.legal-clause li + li { margin-top: 10px; }
.legal-clause a { color: var(--nb-blue); font-weight: 680; text-decoration: underline; text-decoration-color: rgba(51,118,147,.35); text-underline-offset: 3px; }
.legal-clause strong { color: #33485a; font-weight: 760; }

@media (max-width: 991px) {
  .legal-hero { padding: 64px 0 60px; }
  .legal-content-section { padding: 56px 0 82px; }
  .legal-sidebar { position: static; margin-bottom: 24px; }
  .legal-sidebar ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px 24px; }
  .legal-card { padding: 44px; }
}

@media (max-width: 767px) {
  .legal-hero { padding: 52px 0 50px; }
  .legal-hero h1 { font-size: 42px; }
  .legal-content-section { padding: 38px 0 62px; }
  .legal-sidebar { padding: 20px; }
  .legal-sidebar ol { grid-template-columns: 1fr; }
  .legal-sidebar li:nth-child(n+6) { display: none; }
  .legal-card { padding: 30px 24px; border-radius: 14px; }
  .legal-notice { margin-bottom: 34px; padding: 18px 18px 18px 49px; }
  .legal-notice::before { left: 17px; top: 18px; }
  .legal-clause + .legal-clause { margin-top: 31px; padding-top: 31px; }
  .legal-clause h2 { font-size: 21px; }
  .legal-clause p, .legal-clause li { font-size: 15px; line-height: 1.7; }
}

/* Product device compositions and motion */
.motion-layer { --motion-x:0px; --motion-y:0px; --motion-scale:1; --motion-tilt:0deg; transform-origin:center; transform-style:preserve-3d; backface-visibility:hidden; will-change:transform; }
.web-frame { transform: perspective(1400px) rotateY(-4deg) rotateX(1deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.ipad-frame { transform: rotate(2.2deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.ipad-device { transform: rotate(-3deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }

.flight-deck-showcase { position: relative; z-index: 2; margin-top: 78px; padding: 34px 34px 0; overflow: hidden; background: #f4f8fa; border: 1px solid #dbe6eb; border-radius: 24px; box-shadow: 0 28px 70px rgba(21,44,89,.09); }
.flight-deck-showcase::before { content: ""; position: absolute; width: 480px; height: 480px; right: -220px; top: -280px; border: 1px dashed rgba(51,118,147,.22); border-radius: 50%; box-shadow: 0 0 0 70px rgba(51,118,147,.025),0 0 0 140px rgba(51,118,147,.018); }
.flight-deck-copy { display: grid; position: relative; z-index: 3; grid-template-columns: auto 1fr; align-items: end; gap: 7px 28px; max-width: 810px; margin-bottom: 28px; }
.device-context { display: inline-flex; grid-row: span 2; align-self: center; align-items: center; gap: 8px; padding: 9px 12px; color: var(--nb-blue); background: #fff; border: 1px solid #d9e4e9; border-radius: 9px; font-size: 11px; font-weight: 760; letter-spacing: .04em; }
.device-context > span { width: 7px; height: 7px; background: #35a574; border-radius: 50%; box-shadow: 0 0 0 4px rgba(53,165,116,.12); }
.flight-deck-copy strong { color: var(--nb-deep); font-size: 24px; font-weight: 720; line-height: 1.2; }
.flight-deck-copy small { color: var(--nb-muted); font-size: 13px; line-height: 1.5; }
.flight-deck-stage { position: relative; min-height: 560px; }
.tablet-reveal { position: absolute; width: 86%; left: 2%; bottom: -9%; }
.tablet-device { position: relative; margin: 0; overflow: hidden; background: #111827; border: 9px solid #172131; border-radius: 26px; box-shadow: 0 42px 80px rgba(21,44,89,.25); }
.tablet-device::before { content: ""; position: absolute; z-index: 2; inset: 0; pointer-events: none; border: 1px solid rgba(255,255,255,.14); border-radius: 16px; }
.tablet-device img { display: block; width: 100%; height: auto; }
.tablet-device-landscape { transform: perspective(1500px) rotateX(2deg) rotateY(1deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.tablet-camera { position: absolute; z-index: 3; width: 5px; height: 5px; left: 8px; top: calc(50% - 2px); background: #273b55; border: 1px solid #48627c; border-radius: 50%; }
.companion-reveal { position: absolute; z-index: 4; width: 31%; right: 1%; bottom: 5%; }
.companion-screen { position: relative; margin: 0; overflow: hidden; background:#fff; border:5px solid #fff; border-radius:17px; box-shadow:0 28px 58px rgba(21,44,89,.29); transform:rotate(3deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.companion-screen img { display: block; width: 100%; height: auto; }
.companion-screen figcaption { display: flex; align-items: center; gap: 9px; padding: 10px 12px; color: var(--nb-deep); background: #fff; font-size: 10px; font-weight: 750; }
.companion-screen .status-pulse { flex: 0 0 8px; width: 8px; height: 8px; }

.web-visual { min-height: 570px; }
.notebook-wrap { position:relative; z-index:2; width:110%; margin-left:1%; padding-bottom:36px; transform:perspective(1500px) rotateY(-3deg) rotateX(1deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.notebook-device { position: relative; z-index: 2; margin: 0; overflow: hidden; background: #111b2b; border: 9px solid #111b2b; border-bottom-width: 13px; border-radius: 17px 17px 9px 9px; box-shadow: 0 38px 80px rgba(21,44,89,.23); }
.notebook-bar { display: flex; height: 28px; align-items: center; gap: 5px; padding: 0 9px; color: #a7b8c7; background: #e7edf1; }
.notebook-bar > span { width: 6px; height: 6px; background: #b5c1c8; border-radius: 50%; }
.notebook-bar > span:first-child { background: #ee7946; }
.notebook-bar small { margin-left: auto; margin-right: auto; padding-right: 34px; color: #6f7e89; font-size: 9px; }
.notebook-device img { display: block; width: 100%; height: auto; }
.notebook-device figcaption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 13px 14px 2px; color: #fff; }
.notebook-device figcaption span { font-size: 12px; font-weight: 760; }
.notebook-device figcaption small { color: #aab9c5; font-size: 10px; }
.notebook-base { position: absolute; z-index: 1; width: 112%; height: 22px; left: -6%; bottom: 18px; background: linear-gradient(#dce3e7,#aebbc3); border-radius: 2px 2px 18px 18px; box-shadow: 0 14px 20px rgba(21,44,89,.2); }
.notebook-base::after { content: ""; position: absolute; width: 96%; height: 4px; left: 2%; bottom: -4px; background: #8e9ca5; border-radius: 0 0 50% 50%; }
.notebook-base span { position: absolute; width: 84px; height: 5px; left: calc(50% - 42px); top: 0; background: #9eabb3; border-radius: 0 0 7px 7px; }

.platforms-section { overflow: hidden; background: #f4f8fa; }
.platforms-section::before { content: ""; position: absolute; width: 720px; height: 720px; right: -380px; top: -290px; border: 1px solid rgba(51,118,147,.12); border-radius: 50%; box-shadow: 0 0 0 90px rgba(51,118,147,.025),0 0 0 180px rgba(51,118,147,.018); }
.platforms-copy { position: relative; z-index: 4; }
.platforms-copy h2 { margin: 0 0 22px; color: var(--nb-deep); font-size: clamp(38px,4vw,57px); font-weight: 690; line-height: 1.04; letter-spacing: -.035em; }
.platforms-copy > p { max-width: 520px; color: var(--nb-muted); font-size: 17px; line-height: 1.65; }
.platform-list { margin: 34px 0 30px; border-top: 1px solid var(--nb-line); }
.platform-item { display: flex; align-items: center; gap: 16px; padding: 17px 0; border-bottom: 1px solid var(--nb-line); }
.platform-icon { display: inline-flex; flex: 0 0 42px; width: 42px; height: 42px; align-items: center; justify-content: center; color: var(--nb-blue); background: #fff; border: 1px solid #d9e4e9; border-radius: 12px; font-size: 17px; }
.platform-item p { margin: 0; }
.platform-item strong,.platform-item small { display: block; }
.platform-item strong { margin-bottom: 2px; color: var(--nb-deep); font-size: 15px; font-weight: 740; }
.platform-item small { color: var(--nb-muted); font-size: 13px; }
.stores-coming-soon { padding: 19px 20px; background: rgba(255,255,255,.76); border: 1px solid #dbe6eb; border-radius: 14px; }
.stores-kicker { display: block; margin-bottom: 12px; color: var(--nb-deep); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.store-badges { display: flex; flex-wrap: wrap; gap: 10px; }
.store-badge { display: inline-flex; width: 142px; cursor: default; opacity: .42; filter: grayscale(1); user-select: none; }
.store-badge img { display: block; width: 100%; height: auto; border-radius: 5px; pointer-events: none; }
.stores-coming-soon > small { display: block; margin-top: 10px; color: #7a8995; font-size: 11px; line-height: 1.45; }
.platforms-visual { position: relative; min-height: 690px; }
.ecosystem-orbit { position: absolute; width: 520px; height: 520px; left: 10%; top: 5%; border: 1px dashed rgba(51,118,147,.24); border-radius: 50%; }
.ecosystem-orbit::before,.ecosystem-orbit::after { content: ""; position: absolute; background: var(--nb-orange); border: 3px solid #f4f8fa; border-radius: 50%; box-shadow: 0 0 0 1px rgba(238,121,70,.42); }
.ecosystem-orbit::before { width: 11px; height: 11px; left: 55px; top: 70px; }
.ecosystem-orbit::after { width: 8px; height: 8px; right: 20px; bottom: 120px; }
.ecosystem-laptop-reveal { position: absolute; z-index: 2; width: 88%; left: 8%; top: 86px; }
.ecosystem-laptop { position:relative; padding:7px 7px 18px; background:#152236; border-radius:14px 14px 7px 7px; box-shadow:0 36px 75px rgba(21,44,89,.23); transform:rotate(-2deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.mini-browser { display: flex; height: 20px; align-items: center; gap: 4px; padding: 0 7px; background: #edf1f4; }
.mini-browser span { width: 5px; height: 5px; background: #aebbc3; border-radius: 50%; }
.mini-browser span:first-child { background: var(--nb-orange); }
.ecosystem-laptop img { display: block; width: 100%; height: auto; }
.ecosystem-laptop-base { position: absolute; width: 110%; height: 16px; left: -5%; bottom: -7px; background: linear-gradient(#d6dee3,#aebac2); border-radius: 2px 2px 15px 15px; }
.ecosystem-tablet-reveal { position: absolute; z-index: 4; width: 49%; right: -1%; bottom: 40px; }
.ecosystem-tablet { position:relative; padding:7px; background:#152236; border-radius:20px; box-shadow:0 30px 60px rgba(21,44,89,.3); transform:rotate(4deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.ecosystem-tablet > span { position: absolute; z-index: 2; width: 4px; height: 4px; left: 3px; top: calc(50% - 2px); background: #52677f; border-radius: 50%; }
.ecosystem-tablet img { display: block; width: 100%; height: auto; border-radius: 13px; }
.ecosystem-phone-reveal { position: absolute; z-index: 5; width: 19%; left: 2%; bottom: 17px; }
.ecosystem-phone { position:relative; padding:5px; overflow:hidden; background:#111b2b; border-radius:20px; box-shadow:0 28px 55px rgba(21,44,89,.31); transform:rotate(-5deg) translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
.ecosystem-phone > span { position: absolute; z-index: 2; width: 32%; height: 4px; left: 34%; top: 7px; background: #111b2b; border-radius: 0 0 7px 7px; }
.ecosystem-phone img { display: block; width: 100%; height: auto; border-radius: 15px; }

@media (max-width:1199px) {
  .flight-deck-stage { min-height: 500px; }
  .notebook-wrap { width: 104%; }
  .platforms-visual { min-height: 620px; }
}

@media (max-width:991px) {
  .flight-deck-showcase { margin-top: 62px; }
  .flight-deck-stage { min-height: 510px; }
  .web-visual { min-height: 540px; }
  .notebook-wrap { width:100%; margin-left:0; transform:translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
  .platforms-visual { min-height: 650px; margin-top: 40px; }
  .ecosystem-laptop-reveal { width: 82%; left: 9%; }
  .ecosystem-tablet-reveal { right: 3%; }
  .ecosystem-phone-reveal { left: 8%; }
}

@media (max-width:767px) {
  .flight-deck-showcase { padding: 27px 22px 0; border-radius: 18px; }
  .flight-deck-copy { grid-template-columns: 1fr; align-items: start; gap: 8px; }
  .device-context { grid-row: auto; justify-self: start; margin-bottom: 5px; }
  .flight-deck-copy strong { font-size: 21px; }
  .flight-deck-stage { min-height: 390px; }
  .tablet-reveal { width: 94%; left: 0; bottom: -3%; }
  .companion-reveal { width: 35%; right: -2%; bottom: 2%; }
  .tablet-device { border-width: 6px; border-radius: 18px; }
  .web-visual { min-height: 420px; }
  .notebook-device { border-width: 6px; border-bottom-width: 10px; }
  .notebook-device figcaption { align-items: flex-start; flex-direction: column; gap: 3px; }
  .platforms-visual { min-height: 520px; }
  .ecosystem-laptop-reveal { width: 94%; left: 3%; top: 70px; }
  .ecosystem-tablet-reveal { width: 48%; }
  .ecosystem-phone-reveal { width: 21%; left: 2%; }
}

@media (max-width:480px) {
  .flight-deck-showcase { margin-top: 46px; padding: 24px 17px 0; }
  .flight-deck-stage { min-height: 255px; }
  .tablet-reveal { width: 100%; }
  .companion-reveal { display: none; }
  .tablet-device { border-width: 4px; border-radius: 13px; }
  .web-visual { min-height: 315px; }
  .notebook-wrap { padding-bottom: 22px; }
  .notebook-bar { height: 20px; }
  .notebook-bar small { font-size: 7px; }
  .notebook-device figcaption { display: none; }
  .notebook-base { bottom: 10px; height: 15px; }
  .platforms-visual { min-height: 270px; margin-top: 30px; }
  .ecosystem-orbit { width: 300px; height: 300px; left: 12%; top: -5%; }
  .ecosystem-laptop-reveal { width: 100%; left: 0; top: 26px; }
  .ecosystem-laptop { transform:translate3d(var(--motion-x),var(--motion-y),0) rotateZ(var(--motion-tilt)) scale(var(--motion-scale)); }
  .ecosystem-tablet-reveal,.ecosystem-phone-reveal { display: none; }
  .store-badge { width: 128px; }
}

@media (prefers-reduced-motion:reduce) {
  .motion-layer { --motion-x:0px !important; --motion-y:0px !important; --motion-scale:1 !important; --motion-tilt:0deg !important; will-change:auto; }
}

/* NavBrief V2 Beta access */
.beta-badge { display: inline-flex; align-items: center; min-height: 22px; margin-left: 3px; padding: 3px 8px; color: var(--nb-white); background: var(--nb-orange); border-radius: 999px; font-size: 9px; font-weight: 850; letter-spacing: .13em; }
.beta-hero-notice { display: grid; max-width: 540px; gap: 4px; margin: -10px 0 24px; padding: 14px 16px; color: var(--nb-muted); background: rgba(220,235,241,.48); border: 1px solid rgba(51,118,147,.18); border-left: 3px solid var(--nb-blue); border-radius: 10px; font-size: 13px; line-height: 1.5; }
.beta-hero-notice strong { color: var(--nb-deep); font-size: 13px; font-weight: 800; }
.beta-access-note { display: flex; max-width: 540px; align-items: center; gap: 7px; margin: -16px 0 25px !important; color: var(--nb-muted) !important; font-size: 12px !important; font-weight: 650; line-height: 1.4 !important; }
.beta-access-note i { color: var(--nb-blue); font-size: 12px; }
.beta-cta-note { display: flex; width: 100%; align-items: center; justify-content: center; gap: 7px; margin-top: 2px; color: rgba(255,255,255,.72); font-size: 11px; line-height: 1.4; text-align: center; }
.beta-cta-note i { color: var(--nb-orange); }
body.beta-modal-open { overflow: hidden; }
.beta-access-modal { display: none; position: fixed; z-index: 12000; inset: 0; align-items: center; justify-content: center; padding: 24px; }
.beta-access-modal.is-open { display: flex; }
.beta-modal-backdrop { position: absolute; inset: 0; background: rgba(10,22,43,.72); backdrop-filter: blur(6px); }
.beta-modal-dialog { position: relative; z-index: 1; width: min(100%, 470px); max-height: calc(100vh - 48px); overflow-y: auto; padding: 34px; color: var(--nb-ink); background: var(--nb-white); border: 1px solid rgba(255,255,255,.45); border-radius: 18px; box-shadow: 0 28px 80px rgba(10,22,43,.32); }
.beta-modal-dialog:focus { outline: none; }
.beta-modal-close { display: inline-flex; position: absolute; right: 16px; top: 16px; width: 36px; height: 36px; align-items: center; justify-content: center; color: var(--nb-muted); background: transparent; border: 0; border-radius: 50%; cursor: pointer; }
.beta-modal-close:hover, .beta-modal-close:focus-visible { color: var(--nb-deep); background: var(--nb-sky); }
.beta-modal-kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0 46px 14px 0; color: var(--nb-blue); font-size: 11px; font-weight: 820; letter-spacing: .11em; text-transform: uppercase; }
.beta-modal-dot { width: 8px; height: 8px; background: var(--nb-orange); border-radius: 50%; box-shadow: 0 0 0 4px rgba(238,121,70,.13); }
.beta-modal-dialog h2 { margin: 0 42px 12px 0; color: var(--nb-deep); font-size: 29px; font-weight: 740; line-height: 1.12; letter-spacing: -.025em; }
.beta-modal-dialog > p { margin: 0 0 25px; color: var(--nb-muted); font-size: 15px; line-height: 1.6; }
.beta-form-group label { display: block; margin-bottom: 8px; color: var(--nb-deep); font-size: 13px; font-weight: 760; }
.beta-form-group input { width: 100%; height: 50px; padding: 0 14px; color: var(--nb-ink); background: var(--nb-white); border: 1px solid #cbd8df; border-radius: 9px; font: inherit; transition: border-color .18s ease, box-shadow .18s ease; }
.beta-form-group input:focus { border-color: var(--nb-blue); outline: 0; box-shadow: 0 0 0 3px rgba(51,118,147,.14); }
.beta-form-group input[aria-invalid="true"] { border-color: var(--nb-orange); box-shadow: 0 0 0 3px rgba(238,121,70,.12); }
.beta-form-error { margin: 8px 0 0; color: #a83f20; font-size: 12px; font-weight: 680; }
.beta-modal-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 25px; }
.beta-modal-actions .btn { min-height: 44px; padding: 10px 17px; border-radius: 9px; font-size: 14px; font-weight: 740; }
.beta-cancel-button { color: var(--nb-deep); background: var(--nb-white); border: 1px solid #cbd8df; }
.beta-cancel-button:hover { color: var(--nb-deep); border-color: var(--nb-blue); }
.beta-continue-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; color: var(--nb-white) !important; background: var(--nb-deep); border: 1px solid var(--nb-deep); }
.beta-continue-button:hover { background: var(--nb-blue); border-color: var(--nb-blue); }
.beta-modal-close:focus-visible, .beta-modal-actions .btn:focus-visible { outline: 3px solid rgba(51,118,147,.28); outline-offset: 2px; }

@media (max-width: 991px) {
  .beta-hero-notice, .beta-access-note { margin-left: auto !important; margin-right: auto !important; text-align: left; }
}

@media (max-width: 575px) {
  .beta-access-modal { align-items: flex-end; padding: 12px; }
  .beta-modal-dialog { width: 100%; max-height: calc(100vh - 24px); padding: 28px 22px 22px; border-radius: 17px; }
  .beta-modal-dialog h2 { font-size: 25px; }
  .beta-modal-actions { flex-direction: column-reverse; }
  .beta-modal-actions .btn { width: 100%; }
  .beta-hero-notice { padding: 13px 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .beta-form-group input, .beta-modal-close { transition: none; }
}
