/* BeastBrowser — Fire & Ice marketing layer (70% white / 20% peach / 10% fire red) */

body.nb-site {
  background: var(--nb-bg);
}

body.nb-site .nb-mark {
  background: var(--nb-peach);
  color: var(--nb-ink);
}

/* —— Nav brand + hamburger —— */
body.nb-site .nb-nav-brand .fire-word,
body.nb-site #bb-nav-shell .nb-nav-brand .fire-word {
  color: var(--nb-red) !important;
}

body.nb-site #mobile-menu-btn.fire-hamburger {
  width: 2.6rem;
  height: 2.35rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e5e7eb;
  border-radius: 0.85rem;
  background: #fff;
  color: #111827;
  box-shadow: 0 4px 12px rgba(17, 24, 39, 0.05);
}

@media (min-width: 1024px) {
  body.nb-site #mobile-menu-btn.fire-hamburger {
    display: none !important;
  }
}

/* Features mega-menu — coral icons, premium card */
.fire-mega {
  background: #fff;
  border: 1px solid #f3e8e4;
  border-radius: 1.35rem;
  padding: 0.7rem;
  box-shadow:
    0 28px 64px rgba(17, 24, 39, 0.12),
    0 8px 20px rgba(255, 176, 156, 0.12);
}
.fire-mega-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.65rem 0.75rem;
  border-radius: 1rem;
  text-decoration: none;
  transition: background 0.15s ease;
}
.fire-mega-item:hover {
  background: #fff5f3;
}
.fire-mega-ico {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 999px;
  background: #fff1ee;
  color: #ef2b24;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.fire-mega-ico i,
.fire-mega-ico svg {
  width: 1.05rem;
  height: 1.05rem;
}
.fire-mega-title {
  display: block;
  font-size: 0.8125rem;
  font-weight: 700;
  color: #1e293b;
  line-height: 1.25;
}
.fire-mega-sub {
  display: block;
  font-size: 0.6875rem;
  color: #64748b;
  margin-top: 0.1rem;
}
.fire-mega-all {
  background: #f4f6f8;
}
.fire-mega-all:hover {
  background: #eef1f4;
}
.fire-mega-ico-all {
  background: #ef2b24;
  color: #fff;
}

body.nb-site #main-nav .group\/menu > div > div:not(.fire-mega) {
  border-radius: 1.15rem;
  border: 1px solid #f3e8e4;
  box-shadow: 0 24px 56px rgba(17, 24, 39, 0.1);
}
body.nb-site #main-nav .group\/menu a.flex:hover {
  background: #fff5f3 !important;
}
body.nb-site #main-nav .group\/menu a.flex > span.w-9 {
  border-radius: 999px !important;
  background: #fff1ee !important;
  color: #ef2b24 !important;
}
body.nb-site #main-nav .group\/menu button:hover {
  color: #ef2b24;
}

body.nb-site #mobile-menu-btn.fire-hamburger:hover {
  background: #fff;
  border-color: var(--nb-border);
}

body.nb-site #mobile-menu-close {
  border: 1px solid #e5e7eb !important;
  background: #fff !important;
  border-radius: 0.85rem !important;
}

body.nb-site #mobile-panel img {
  border: 0 !important;
}

body.nb-inner:not(.bb-home-page) {
  background: var(--nb-bg);
}

body.nb-inner:not(.bb-home-page) .nb-hero-checks li::before {
  background: var(--nb-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2.2 6.2 4.8 8.7 9.8 3.3'/%3E%3C/svg%3E") center / 0.7rem no-repeat;
}

/* —— Homepage canvas —— */
body.bb-home-page,
body.bb-home-page main.bb-home-main {
  background: #fff9f7 !important;
}

body.bb-home-page .nb-hero {
  position: relative;
  overflow: visible !important;
  isolation: isolate;
  background: transparent !important;
  padding: 1.75rem 0 1.25rem;
}

body.bb-home-page .nb-hero::before {
  display: none;
}

.fire-canvas {
  position: absolute;
  inset: -8% -4% -90% -4%;
  z-index: 0;
  pointer-events: none;
  overflow: visible;
}

.fire-scene {
  position: absolute;
  inset: -6% -2% -10% -2%;
  width: 104%;
  height: 116%;
  display: block;
}

.fire-dots {
  position: absolute;
  top: 8%;
  left: 2.5%;
  width: 240px;
  height: 200px;
  background-image: radial-gradient(circle, rgba(180, 140, 132, 0.42) 1.2px, transparent 1.3px);
  background-size: 14px 14px;
  opacity: 0.75;
  -webkit-mask-image: linear-gradient(135deg, #000 18%, transparent 80%);
  mask-image: linear-gradient(135deg, #000 18%, transparent 80%);
}

.fire-dots-br {
  top: auto;
  left: auto;
  bottom: 10%;
  right: 4%;
  width: 180px;
  height: 150px;
  opacity: 0.35;
  -webkit-mask-image: linear-gradient(315deg, #000 10%, transparent 78%);
  mask-image: linear-gradient(315deg, #000 10%, transparent 78%);
}

.fire-orb {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff;
  box-shadow:
    0 0 10px 4px rgba(255, 255, 255, 0.95),
    0 0 22px 8px rgba(255, 232, 226, 0.7);
  opacity: 0.85;
}

.fire-orb.o1 { top: 16%; left: 9%; }
.fire-orb.o2 { top: 28%; left: 5%; width: 6px; height: 6px; opacity: 0.55; }
.fire-orb.o3 { top: 14%; right: 22%; width: 7px; height: 7px; }
.fire-orb.o4 { top: 38%; right: 8%; width: 8px; height: 8px; }
.fire-orb.o5 { bottom: 26%; left: 12%; width: 6px; height: 6px; opacity: 0.5; }
.fire-orb.o6 { bottom: 18%; right: 18%; }
.fire-orb.o7 { top: 48%; left: 18%; width: 5px; height: 5px; opacity: 0.4; }
.fire-orb.o8 { top: 22%; right: 38%; width: 6px; height: 6px; opacity: 0.45; }

body.bb-home-page .nb-hero-inner {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1.75rem;
  max-width: 1180px;
  position: relative;
  z-index: 1;
}

body.bb-home-page .nb-hero-copy {
  text-align: center;
  position: relative;
  z-index: 2;
}

body.bb-home-page .nb-hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  font-size: 0.82rem;
  font-weight: 500;
  color: var(--nb-text-muted);
  background: #fff;
  border: 1px solid rgba(243, 216, 210, 0.9);
  border-radius: 999px;
  padding: 0.32rem 1rem 0.32rem 0.38rem;
  margin: 0 auto 1.15rem;
  box-shadow: 0 10px 28px rgba(239, 43, 36, 0.12);
}

body.bb-home-page .nb-hero-kicker strong {
  color: var(--nb-ink);
  font-weight: 800;
}

body.bb-home-page .nb-face {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 999px;
  border: 2px solid #fff;
  margin-left: -0.45rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: -0.03em;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

body.bb-home-page .nb-hero-faces .nb-face:first-child {
  margin-left: 0;
}

body.bb-home-page .nb-hero h1 {
  font-family: Inter, ui-sans-serif, system-ui, sans-serif;
  font-weight: 800;
  color: var(--nb-ink);
  line-height: 1.02;
  letter-spacing: -0.045em;
  font-size: clamp(2.35rem, 8vw, 3.4rem);
  margin: 0 0 0.55rem;
}

body.bb-home-page .nb-h1-red {
  color: var(--nb-red);
  position: relative;
}

body.bb-home-page .fire-er {
  position: relative;
  display: inline-block;
}

body.bb-home-page .fire-er::after {
  content: '';
  position: absolute;
  top: -0.55em;
  right: -0.05em;
  width: 0.72em;
  height: 0.72em;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23EF2B24' d='M12 2s3 3.2 3 6.2c0 1.7-.8 3.1-2 4.1.7-.2 1.4-.8 1.8-1.6.9 1.6 1.2 3.3.6 4.9C14.6 18.4 12 21 12 21s-2.6-2.6-3.4-5.4c-.6-1.6-.3-3.3.6-4.9.4.8 1.1 1.4 1.8 1.6-1.2-1-2-2.4-2-4.1C9 5.2 12 2 12 2z'/%3E%3C/svg%3E") center / contain no-repeat;
  pointer-events: none;
}

body.bb-home-page .nb-hero-punch {
  font-size: clamp(1.02rem, 2.4vw, 1.35rem);
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -0.03em;
  color: var(--nb-ink);
  margin: 0 auto 0.7rem;
  max-width: 36rem;
}

body.bb-home-page .fire-underline {
  position: relative;
  display: inline-block;
}

body.bb-home-page .fire-underline::after {
  content: '';
  position: absolute;
  left: -2%;
  right: -2%;
  bottom: -0.12em;
  height: 0.28em;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 10' preserveAspectRatio='none'%3E%3Cpath fill='none' stroke='%23FF5A36' stroke-width='3' stroke-linecap='round' d='M2 7c18-5 38 2 58-2 18-3.5 40 3 58 0'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}

body.bb-home-page .nb-hero-tagline {
  font-size: 0.98rem;
  line-height: 1.6;
  color: var(--nb-text-muted);
  max-width: 34rem;
  margin: 0 auto 1.35rem;
  font-weight: 500;
}

body.bb-home-page .nb-hero-ctas {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

body.bb-home-page .nb-hero-ctas .nb-btn-dark,
body.bb-home-page .nb-hero-ctas .nb-btn-ghost {
  border-radius: 999px;
  padding: 0.88rem 1.5rem;
  font-weight: 700;
}

body.bb-home-page .nb-hero-ctas .nb-btn-dark {
  box-shadow: 0 12px 28px rgba(239, 43, 36, 0.32);
}

body.bb-home-page .nb-hero-checks {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.55rem 1.1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

body.bb-home-page .nb-hero-checks li {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--nb-text-muted);
}

body.bb-home-page .nb-hero-checks li::before {
  content: '';
  width: 1.05rem;
  height: 1.05rem;
  flex-shrink: 0;
  border-radius: 999px;
  background: var(--nb-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2.2 6.2 4.8 8.7 9.8 3.3'/%3E%3C/svg%3E") center / 0.7rem no-repeat;
}

/* —— Hero stage (mascot + dashboard) —— */
.fire-hero-art {
  position: relative;
  min-height: 22rem;
  margin-top: 0.25rem;
  z-index: 2;
}

.fire-hero-art::before {
  content: '';
  position: absolute;
  right: -2%;
  top: 0;
  width: 96%;
  height: 100%;
  border-radius: 50%;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(circle at 52% 46%,
    #fff 0%,
    rgba(255, 255, 255, 0.92) 22%,
    rgba(255, 232, 226, 0.7) 42%,
    rgba(255, 210, 196, 0.28) 62%,
    transparent 76%);
}

.fire-hand {
  font-family: Caveat, 'Segoe Script', cursive;
  color: var(--nb-red);
  font-weight: 700;
  line-height: 1.1;
  pointer-events: none;
}

.fire-hand-top {
  position: absolute;
  top: -0.15rem;
  left: 6%;
  font-size: 1.35rem;
  transform: rotate(-8deg);
  z-index: 4;
}

.fire-hand-more {
  position: absolute;
  right: 18%;
  bottom: 1.5%;
  font-size: 1.2rem;
  transform: rotate(6deg);
  z-index: 4;
}

.fire-mascot {
  position: absolute;
  left: -4%;
  bottom: 6%;
  width: 48%;
  max-width: 220px;
  height: auto;
  z-index: 3;
  filter: drop-shadow(0 18px 24px rgba(17, 24, 39, 0.12));
  pointer-events: none;
}

.fire-iso {
  position: absolute;
  left: 2%;
  top: 22%;
  z-index: 4;
  width: 9.4rem;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(243, 216, 210, 0.9);
  border-radius: 1.1rem;
  padding: 0.7rem 0.75rem 0.65rem;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 10px 24px rgba(239, 43, 36, 0.1);
}

.fire-iso-head {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.68rem;
  font-weight: 800;
  color: var(--nb-ink);
  line-height: 1.25;
}

.fire-iso-ico {
  width: 1.35rem;
  height: 1.35rem;
  border-radius: 999px;
  background: var(--nb-red);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.fire-iso-bars {
  display: flex;
  align-items: flex-end;
  gap: 4px;
  height: 1.35rem;
  margin-top: 0.5rem;
  padding-left: 0.1rem;
}

.fire-iso-bars span {
  width: 7px;
  border-radius: 3px 3px 0 0;
  background: linear-gradient(180deg, #ff8a70, var(--nb-red));
}

.fire-iso-bars span:nth-child(1) { height: 45%; }
.fire-iso-bars span:nth-child(2) { height: 70%; }
.fire-iso-bars span:nth-child(3) { height: 100%; }
.fire-iso-bars span:nth-child(4) { height: 62%; }

.fire-chrome,
.fire-phone {
  position: absolute;
  z-index: 4;
  height: auto;
}

.fire-chrome {
  width: 6.1rem;
  right: 1%;
  top: 7%;
  background: #fff;
  border: 1px solid #e8edf5;
  border-radius: 0.85rem;
  overflow: hidden;
  box-shadow:
    0 18px 36px rgba(17, 24, 39, 0.16),
    0 4px 10px rgba(255, 176, 156, 0.12);
}

.fire-chrome-bar {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0.32rem 0.4rem;
  background: #f8fafc;
  border-bottom: 1px solid #eef2f7;
}
.fire-chrome-bar i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.fire-chrome-bar i:nth-child(1) { background: #ff5f57; }
.fire-chrome-bar i:nth-child(2) { background: #febc2e; }
.fire-chrome-bar i:nth-child(3) { background: #28c840; }
.fire-chrome-bar span {
  flex: 1;
  min-width: 0;
  margin-left: 4px;
  height: 11px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e8edf5;
  font-size: 5px;
  font-weight: 600;
  color: #94a3b8;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.01em;
}
.fire-chrome-page {
  aspect-ratio: 1.05;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #fff, #f8fafc);
  padding: 0.55rem;
}

.fire-phone {
  width: 4.55rem;
  aspect-ratio: 9 / 19.5;
  right: 0.2%;
  bottom: 6%;
  padding: 0.28rem 0.2rem 0.24rem;
  border-radius: 1.45rem;
  display: flex;
  box-sizing: border-box;
  background:
    linear-gradient(145deg, #5c5c62 0%, #2c2c30 18%, #141416 55%, #0c0c0e 100%);
  box-shadow:
    0 28px 50px rgba(17, 24, 39, 0.3),
    0 8px 16px rgba(17, 24, 39, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    inset 0 -2px 4px rgba(0, 0, 0, 0.45);
  transform: rotate(-4deg);
}

.fire-phone-vol,
.fire-phone-pwr {
  position: absolute;
  background: #2a2a2e;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}
.fire-phone-vol {
  left: -3px;
  top: 22%;
  width: 3px;
  height: 18%;
  border-radius: 2px 0 0 2px;
}
.fire-phone-pwr {
  right: -3px;
  top: 34%;
  width: 3px;
  height: 11%;
  border-radius: 0 2px 2px 0;
}

.fire-phone-screen {
  position: relative;
  flex: 1 1 auto;
  width: 100%;
  min-height: 0;
  border-radius: 1.2rem;
  overflow: hidden;
  background:
    radial-gradient(120% 80% at 50% 0%, #ffe8df 0%, transparent 55%),
    linear-gradient(180deg, #fff6f2 0%, #f3d5c8 42%, #e8b9a8 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0.55rem 0.28rem 0.28rem;
}
.fire-phone-screen::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(125deg, rgba(255, 255, 255, 0.38) 0%, transparent 36%, transparent 70%, rgba(255, 255, 255, 0.08) 100%);
}

.fire-phone-cam {
  position: absolute;
  top: 0.28rem;
  left: 50%;
  width: 0.42rem;
  height: 0.42rem;
  margin-left: -0.21rem;
  border-radius: 50%;
  background: radial-gradient(circle at 40% 35%, #4b5563 0%, #111827 55%, #000 100%);
  box-shadow: 0 0 0 1.5px #1f2937, 0 0 0 3px rgba(0, 0, 0, 0.25);
  z-index: 2;
}

.fire-phone-status {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.36rem;
  font-weight: 800;
  color: #111827;
  letter-spacing: 0.02em;
  padding: 0 0.12rem;
  z-index: 1;
}
.fire-phone-status span {
  display: flex;
  align-items: center;
}

.fire-phone-clock {
  margin-top: 0.85rem;
  font-size: 1.15rem;
  font-weight: 300;
  letter-spacing: -0.04em;
  line-height: 1;
  color: #1f2937;
  z-index: 1;
}
.fire-phone-date {
  margin-top: 0.12rem;
  font-size: 0.38rem;
  font-weight: 600;
  color: #4b5563;
  z-index: 1;
}

.fire-phone-gs {
  margin-top: 0.55rem;
  width: 88%;
  display: flex;
  align-items: center;
  gap: 0.22rem;
  background: rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  padding: 0.22rem 0.38rem;
  font-size: 0.38rem;
  font-weight: 600;
  color: #6b7280;
  box-shadow: 0 4px 10px rgba(17, 24, 39, 0.08);
  z-index: 1;
}

.fire-phone-apps {
  margin-top: auto;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.18rem;
  padding: 0 0.08rem 0.18rem;
  z-index: 1;
}
.fp-app {
  width: 0.82rem;
  height: 0.82rem;
  margin: 0 auto;
  border-radius: 0.28rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(17, 24, 39, 0.16);
}
.fp-app svg { width: 100%; height: 100%; }
.fp-chrome { background: #fff; }
.fp-play { background: #111; padding: 0.08rem; }
.fp-play svg { width: 70%; height: 70%; }
.fp-msg { background: #e8f0fe; padding: 0.12rem; }
.fp-cam { background: #111827; padding: 0.1rem; }

.fire-phone-homebar {
  display: block;
  width: 1.55rem;
  height: 0.16rem;
  background: rgba(17, 24, 39, 0.45);
  border-radius: 999px;
  z-index: 1;
}

.fire-arrows {
  position: absolute;
  inset: 8% 8% 18% 36%;
  z-index: 2;
  pointer-events: none;
  overflow: visible;
}

/* Dashboard — preserve product UI look */
.fire-dash {
  position: relative;
  z-index: 2;
  margin-left: 18%;
  background: #fff;
  border: 1px solid #e8edf5;
  border-radius: 1.35rem;
  box-shadow:
    0 40px 80px rgba(17, 24, 39, 0.12),
    0 14px 32px rgba(255, 176, 156, 0.16),
    0 0 0 1px rgba(255, 255, 255, 0.8),
    0 0 0 12px rgba(255, 255, 255, 0.42);
  overflow: hidden;
  display: grid;
  grid-template-columns: 2.55rem 1fr;
  min-height: 16.5rem;
}

.fire-dash-side {
  background: #f5f7fb;
  border-right: 1px solid #e8edf5;
  padding: 0.7rem 0.35rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.55rem;
}

.fire-dash-side .dot {
  width: 1.45rem;
  height: 1.45rem;
  border-radius: 0.45rem;
  background: #fff;
  border: 1px solid #e5eaf2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #64748b;
}

.fire-dash-side .dot.is-on {
  background: #fff1ee;
  color: var(--nb-red);
  border-color: #f3d8d2;
}

.fire-dash-main {
  padding: 0.7rem 0.75rem 0.65rem;
  min-width: 0;
}

.fire-dash-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.55rem;
}

.fire-dash-top h3 {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.fire-new {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  background: var(--nb-red);
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  border-radius: 999px;
  padding: 0.28rem 0.55rem;
  white-space: nowrap;
}

.fire-search {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  background: #fff;
  border: 1px solid #e8edf5;
  border-radius: 0.7rem;
  padding: 0.42rem 0.65rem;
  color: #94a3b8;
  font-size: 0.7rem;
  margin-bottom: 0.45rem;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.fire-dash-chrome {
  display: flex;
  gap: 5px;
  margin: -0.15rem 0 0.5rem;
}
.fire-dash-chrome i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e5e7eb;
}
.fire-dash-chrome i:nth-child(1) { background: #f87171; }
.fire-dash-chrome i:nth-child(2) { background: #fbbf24; }
.fire-dash-chrome i:nth-child(3) { background: #34d399; }

.fire-row {
  display: grid;
  grid-template-columns: 1.15rem 1fr auto auto auto;
  align-items: center;
  gap: 0.4rem;
  padding: 0.46rem 0.28rem;
  border-radius: 0.55rem;
}

.fire-proxy {
  font-size: 0.58rem;
  font-weight: 600;
  color: #94a3b8;
  white-space: nowrap;
}

.fire-row + .fire-row {
  border-top: 1px solid #f1f5f9;
}

.fire-row:hover {
  background: #f8fafc;
}

.fire-os {
  width: 1.15rem;
  height: 1.15rem;
  border-radius: 0.28rem;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fire-name {
  font-size: 0.72rem;
  font-weight: 700;
  color: #334155;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.fire-ready {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  font-size: 0.62rem;
  font-weight: 700;
  color: var(--nb-success);
}

.fire-ready::before {
  content: '';
  width: 0.42rem;
  height: 0.42rem;
  border-radius: 999px;
  background: var(--nb-success);
}

.fire-launch {
  background: #ef2b24;
  color: #fff;
  border: 0;
  border-radius: 999px;
  font-size: 0.62rem;
  font-weight: 700;
  padding: 0.28rem 0.72rem;
  cursor: default;
  box-shadow: 0 4px 10px rgba(239, 43, 36, 0.28);
}

/* Feature strip */
.fire-strip-wrap {
  position: relative;
  z-index: 3;
  margin-top: -0.35rem;
  padding: 0 1rem 1.5rem;
}

.fire-strip {
  max-width: 1180px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--nb-border);
  border-radius: 1.35rem;
  box-shadow: 0 16px 40px rgba(239, 43, 36, 0.08);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  display: flex;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.fire-strip::-webkit-scrollbar { display: none; }

.fire-strip-item {
  flex: 1 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  padding: 0.95rem 1.05rem;
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--nb-ink);
  white-space: nowrap;
  border-right: 1px solid #f3e7e3;
}

.fire-strip-item:last-child { border-right: 0; }

.fire-strip-item svg {
  width: 1.05rem;
  height: 1.05rem;
  color: var(--nb-red);
  flex-shrink: 0;
}

/* Trust */
.fire-trust {
  padding: 0.5rem 0 2.5rem;
  background: transparent;
}

.fire-trust-kicker {
  text-align: center;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  color: #9ca3af;
  margin: 0 0 1.1rem;
}

.fire-trust-logos {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
}

.fire-trust-logos span {
  width: 3.4rem;
  height: 3.4rem;
  border-radius: 1rem;
  background: #fff;
  border: 1px solid var(--nb-border);
  box-shadow: 0 8px 18px rgba(17, 24, 39, 0.05);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #6b7280;
}

.fire-trust-logos svg {
  width: 1.35rem;
  height: 1.35rem;
}

.fire-trust .nb-proof {
  margin-top: 1.4rem;
  opacity: 0.85;
}

/* Remaining homepage chrome */
body.bb-home-page .nb-frame,
body.bb-home-page .nb-frame-round,
body.bb-home-page .nb-video,
body.bb-home-page .nb-table-wrap,
body.bb-home-page .nb-faq details {
  border: 1px solid var(--nb-border);
  box-shadow: var(--nb-shadow-sm);
}

body.bb-home-page .nb-frame,
body.bb-home-page .nb-frame-round {
  border-radius: var(--nb-radius-lg);
}

body.bb-home-page .nb-video {
  box-shadow: var(--nb-shadow);
}

body.bb-home-page .nb-table th,
body.bb-home-page .nb-table td {
  border-bottom: 1px solid var(--nb-border);
}

body.bb-home-page .nb-table th {
  background: #fff5f3;
}

body.bb-home-page .nb-use-grid > div > .nb-dash {
  background: var(--nb-red);
}

body.bb-home-page .nb-rotate {
  background: var(--nb-peach);
}

body.bb-home-page .nb-cta-band {
  background:
    radial-gradient(700px 240px at 80% 0%, rgba(255, 232, 226, 0.9), transparent 70%),
    var(--nb-bg);
  border-top: 1px solid var(--nb-border);
}

body.bb-home-page .nb-section {
  background: transparent;
  border-top: 0;
}

/* Circular contact stack */
#bb-community-fab {
  bottom: 6.4rem !important;
  right: 1.35rem !important;
  gap: 0.7rem !important;
}

#bb-community-fab a {
  width: 3.25rem;
  height: 3.25rem;
  padding: 0 !important;
  border-radius: 999px !important;
  justify-content: center;
  border: 0 !important;
  box-shadow: 0 10px 22px rgba(17, 24, 39, 0.16) !important;
}

#bb-community-fab a > span:last-child {
  display: none !important;
}

#bb-community-fab a > span:first-child {
  width: 100% !important;
  height: 100% !important;
  border-radius: 999px;
}

#bb-btn {
  background: linear-gradient(135deg, #ef2b24, #ff5a36) !important;
  box-shadow: 0 10px 24px rgba(239, 43, 36, 0.38) !important;
  right: 1.35rem !important;
}

@media (min-width: 640px) {
  body.bb-home-page .nb-hero-copy { text-align: left; }
  body.bb-home-page .nb-hero-kicker { margin-left: 0; }
  body.bb-home-page .nb-hero-punch,
  body.bb-home-page .nb-hero-tagline { margin-left: 0; margin-right: 0; }
  body.bb-home-page .nb-hero-ctas {
    flex-direction: row;
    align-items: center;
  }
  body.bb-home-page .nb-hero-checks { justify-content: flex-start; }
}

@media (min-width: 768px) {
  body.bb-home-page .nb-hero { padding: 2.6rem 0 2rem; overflow: visible; }
  body.bb-home-page .nb-hero-inner {
    flex-direction: row;
    align-items: center;
    gap: 1.5rem;
  }
  body.bb-home-page .nb-hero-copy {
    flex: 0 1 44%;
    max-width: 32rem;
  }
  .fire-hero-art {
    flex: 1 1 56%;
    min-height: 26rem;
  }
  body.bb-home-page .nb-hero h1 { font-size: clamp(2.8rem, 4.6vw, 4.1rem); }
  .fire-mascot { width: 42%; max-width: 250px; left: -2%; }
  .fire-dash { margin-left: 22%; }
  .fire-hand-top { font-size: 1.7rem; left: 4%; }
  .fire-iso { display: none; }
}

@media (min-width: 1024px) {
  body.bb-home-page .nb-hero { padding: 2.8rem 0 2.4rem; overflow: visible; }
  .fire-hero-art { min-height: 28rem; }
  .fire-dash {
    grid-template-columns: 3.1rem 1fr;
    min-height: 18.5rem;
  }
  .fire-chrome { width: 7.4rem; right: -0.6rem; top: 3%; }
  .fire-phone { width: 5.35rem; right: -0.35rem; bottom: 4%; }
  .fire-strip-item { padding: 1.05rem 0.7rem; font-size: 0.74rem; }
}

@media (max-width: 639px) {
  .fire-dots { width: 140px; height: 120px; }
  .fire-trust .nb-proof { display: none; }
  .fire-chrome,
  .fire-phone,
  .fire-arrows { display: none; }
  .fire-dash { margin-left: 22%; }
  .fire-mascot { width: 46%; max-width: 190px; left: -6%; bottom: 8%; }
  .fire-proxy { display: none; }
  .fire-row { grid-template-columns: 1.15rem 1fr auto auto; }
}

/* —— Site-wide premium sky (all marketing pages) —— */
html {
  background: #fff9f7;
}
body.nb-site {
  background: #fff9f7 !important;
  position: relative;
}
.saas-sky {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  min-height: 100%;
  min-height: max(100%, 220vh);
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  opacity: 1;
}
.saas-sky-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 1;
}
.saas-sky-blob {
  position: absolute;
  pointer-events: none;
  filter: none;
}
.saas-sky-1 {
  width: min(42vw, 520px);
  height: min(34vw, 420px);
  top: 18%;
  right: -12%;
  background: radial-gradient(ellipse at 30% 40%, #ffcdb8 0%, transparent 72%);
  opacity: 0.7;
  border-radius: 62% 38% 48% 52% / 42% 58% 42% 58%;
}
.saas-sky-2 {
  width: min(50vw, 620px);
  height: min(38vw, 440px);
  bottom: -6%;
  left: -12%;
  background: radial-gradient(ellipse at 70% 50%, #ffd2c2 0%, transparent 74%);
  opacity: 0.65;
  border-radius: 48% 52% 38% 62% / 58% 42% 58% 42%;
}
.saas-sky-blob.saas-sky-mid {
  width: min(46vw, 560px);
  height: min(28vw, 320px);
  top: 58%;
  left: 28%;
  background: radial-gradient(ellipse at 50% 50%, #ffe0d6 0%, transparent 72%);
  opacity: 0.5;
  border-radius: 54% 46% 60% 40% / 48% 52% 48% 52%;
  filter: blur(22px);
}
.saas-sky-blob.saas-sky-4 {
  width: min(48vw, 540px);
  height: min(32vw, 380px);
  top: 82%;
  right: -10%;
  left: auto;
  background: radial-gradient(ellipse at 40% 40%, #ffcdb8 0%, transparent 74%);
  opacity: 0.55;
  border-radius: 42% 58% 48% 52% / 60% 40% 55% 45%;
}
.saas-sky-dots {
  position: absolute;
  top: 10%;
  left: 5%;
  width: 200px;
  height: 180px;
  background-image: radial-gradient(circle, rgba(180, 140, 132, 0.42) 1.1px, transparent 1.2px);
  background-size: 16px 16px;
  opacity: 0.55;
  -webkit-mask-image: linear-gradient(135deg, #000 12%, transparent 78%);
  mask-image: linear-gradient(135deg, #000 12%, transparent 78%);
}
.saas-sky-dots-2 {
  top: 46%;
  left: auto;
  right: 6%;
  opacity: 0.32;
  -webkit-mask-image: linear-gradient(225deg, #000 12%, transparent 78%);
  mask-image: linear-gradient(225deg, #000 12%, transparent 78%);
}
.saas-sky-dots-br {
  top: auto;
  left: auto;
  bottom: 8%;
  right: 8%;
  opacity: 0.3;
  -webkit-mask-image: linear-gradient(315deg, #000 10%, transparent 78%);
  mask-image: linear-gradient(315deg, #000 10%, transparent 78%);
}
.saas-sky-orb {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff;
  box-shadow:
    0 0 10px 4px rgba(255, 255, 255, 0.95),
    0 0 22px 8px rgba(255, 232, 226, 0.7);
  opacity: 0.8;
}
.saas-sky-orb.o1 { top: 14%; left: 8%; }
.saas-sky-orb.o2 { top: 22%; right: 18%; width: 7px; height: 7px; }
.saas-sky-orb.o3 { top: 48%; left: 12%; width: 6px; height: 6px; opacity: 0.55; }
.saas-sky-orb.o4 { top: 56%; right: 10%; }
.saas-sky-orb.o5 { top: 78%; left: 20%; width: 7px; height: 7px; }
.saas-sky-orb.o6 { top: 86%; right: 22%; width: 8px; height: 8px; }
body.nb-site main,
body.nb-site footer,
body.nb-site #bb-nav-spacer,
body.nb-site .nb-page-hero,
body.nb-site .nb-page-body,
body.nb-site .bb-pricing,
body.nb-site .saas-sec,
body.nb-site .nb-hero,
body.nb-site .fire-strip-wrap,
body.nb-site .fire-strip,
body.nb-site .fire-trust,
body.nb-site .bb-pp,
body.nb-site .bb-sol,
body.nb-site .bb-seo,
body.nb-site article {
  position: relative;
  z-index: 1;
  background-color: transparent;
}

.saas-sec {
  position: relative;
  padding: 4.25rem 0;
  overflow: hidden;
  background: transparent;
}
.saas-sec::before,
.saas-sec::after {
  content: '';
  position: absolute;
  z-index: 0;
  pointer-events: none;
}
.saas-sec::before {
  width: min(42vw, 34rem);
  height: min(34vw, 26rem);
  filter: blur(18px);
  opacity: 0.7;
}
.saas-sec-a::before {
  right: -8rem;
  top: -6rem;
  background: linear-gradient(135deg, #ffe8e2 0%, #ffd2c2 55%, transparent 100%);
  border-radius: 58% 42% 62% 38% / 46% 54% 46% 54%;
}
.saas-sec-b::before {
  left: -10rem;
  bottom: -7rem;
  background: linear-gradient(200deg, #ffd8cc 0%, #ffe8e2 60%, transparent 100%);
  border-radius: 42% 58% 38% 62% / 54% 46% 54% 46%;
}
.saas-sec-c::before {
  right: 8%;
  bottom: -8rem;
  background: linear-gradient(20deg, #ffeee8 0%, #ffc4b0 48%, transparent 100%);
  border-radius: 63% 37% 48% 52% / 40% 60% 40% 60%;
}
.saas-sec::after {
  width: 9rem;
  height: 9rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(243, 216, 210, 0.55);
}
.saas-sec-a::after { left: 6%; bottom: 8%; }
.saas-sec-b::after { right: 10%; top: 12%; width: 6.5rem; height: 6.5rem; }
.saas-sec-c::after { left: 18%; top: 6%; width: 5rem; height: 5rem; opacity: 0.7; }
.saas-sec .nb-wrap {
  position: relative;
  z-index: 1;
}
.saas-kicker {
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #ef2b24;
  margin: 0 0 0.65rem;
}
.saas-sec h2 {
  font-size: clamp(1.5rem, 3vw, 2.15rem);
  font-weight: 800;
  color: #111827;
  letter-spacing: -0.035em;
  margin: 0 0 0.65rem;
}
.saas-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-top: 1.75rem;
}
@media (min-width: 640px) {
  .saas-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .saas-grid { grid-template-columns: repeat(4, 1fr); }
  .saas-grid-3 { grid-template-columns: repeat(3, 1fr); }
}
.saas-card {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #f3d8d2;
  border-radius: 1.25rem;
  box-shadow: 0 18px 40px rgba(17, 24, 39, 0.05);
  padding: 1.2rem 1.15rem;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.saas-card h3 {
  margin: 0 0 0.35rem;
  font-size: 0.98rem;
  font-weight: 800;
  color: #111827;
}
.saas-card p {
  margin: 0;
  font-size: 0.86rem;
  line-height: 1.5;
  color: #4b5563;
}
.saas-card-pad { padding: 1.35rem 1.3rem; }
.saas-card-hi {
  border-color: rgba(239, 43, 36, 0.28);
  box-shadow: 0 18px 44px rgba(239, 43, 36, 0.08);
}
.saas-ico {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.8rem;
  background: #fff5f3;
  color: #ef2b24;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.75rem;
}
.saas-split {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.75rem;
  align-items: center;
}
@media (min-width: 900px) {
  .saas-split { grid-template-columns: 1.1fr 0.9fr; gap: 3rem; }
  .saas-split-rev { grid-template-columns: 0.9fr 1.1fr; }
}
.saas-ticks {
  list-style: none;
  margin: 1.1rem 0 0;
  padding: 0;
}
.saas-ticks li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.92rem;
  font-weight: 600;
  color: #374151;
  margin: 0 0 0.55rem;
}
.saas-ticks li::before {
  content: '';
  width: 1.05rem;
  height: 1.05rem;
  border-radius: 999px;
  flex-shrink: 0;
  background: #ef2b24 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M2.2 6.2 4.8 8.7 9.8 3.3'/%3E%3C/svg%3E") center / 0.7rem no-repeat;
}
.saas-mini {
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #9ca3af;
  margin: 0 0 0.85rem;
}
.saas-type {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  gap: 0.1rem 0.75rem;
  padding: 0.7rem 0;
  border-top: 1px solid #f3e7e3;
}
.saas-type:first-of-type { border-top: 0; }
.saas-type strong {
  font-size: 0.9rem;
  color: #111827;
}
.saas-type span {
  grid-column: 1;
  font-size: 0.75rem;
  color: #6b7280;
}
.saas-type em {
  grid-row: 1 / span 2;
  align-self: center;
  font-style: normal;
  font-size: 0.72rem;
  font-weight: 800;
  color: #22c55e;
}
.saas-textlink {
  display: inline-block;
  margin-top: 1rem;
  font-weight: 700;
  color: #ef2b24;
  text-decoration: none;
}
.saas-connect {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0.85rem 0;
  font-size: 0.88rem;
  font-weight: 700;
  color: #111827;
}
.saas-connect i {
  flex: 1;
  height: 0;
  border-top: 1.5px dashed #ef2b24;
  opacity: 0.55;
}
.saas-connect span:last-child {
  color: #ef2b24;
}

body.bb-home-page .nb-cta-band {
  position: relative;
  z-index: 1;
  text-align: center;
  background: transparent;
  border-top: 0;
}
body.bb-home-page .nb-cta-band .nb-wrap {
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid #f3d8d2;
  border-radius: 1.75rem;
  box-shadow: 0 22px 50px rgba(17, 24, 39, 0.06);
  padding: 2.25rem 1.5rem 2.5rem;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
body.bb-home-page .nb-cta-band h2 {
  margin-left: auto;
  margin-right: auto;
}
body.bb-home-page .nb-cta-band p {
  color: #4b5563;
  max-width: 32rem;
  margin-left: auto;
  margin-right: auto;
}

body.bb-home-page .nb-faq details {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #f3d8d2;
  border-radius: 1.1rem;
  box-shadow: 0 12px 28px rgba(17, 24, 39, 0.04);
  margin: 0 0 0.65rem;
}
body.bb-home-page .nb-faq details[open] summary {
  background: #fff8f6;
  border-bottom: 1px solid #f3e7e3;
}
body.bb-home-page .nb-rev-card {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid #f3d8d2;
  border-radius: 1.25rem;
  box-shadow: 0 16px 36px rgba(17, 24, 39, 0.05);
  backdrop-filter: blur(10px);
}
body.bb-home-page .nb-frame-round {
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid #f3d8d2;
  border-radius: 1.5rem;
  box-shadow: 0 22px 48px rgba(17, 24, 39, 0.06);
  overflow: hidden;
}
body.bb-home-page .nb-table-wrap,
body.bb-home-page .nb-video {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid #f3d8d2;
  border-radius: 1.35rem;
  box-shadow: 0 18px 40px rgba(17, 24, 39, 0.05);
  overflow: hidden;
}
body.bb-home-page .nb-stats {
  background: rgba(255, 255, 255, 0.7);
  border: 1px solid #f3d8d2;
  border-radius: 1.35rem;
  padding: 1.25rem 1rem;
}

body.nb-inner:not(.bb-home-page) {
  background: transparent !important;
}
body.nb-inner:not(.bb-home-page) .nb-page-hero {
  position: relative;
  z-index: 1;
  overflow: visible;
  background: transparent !important;
  border-bottom: 0;
}
body.nb-inner:not(.bb-home-page) .nb-page-hero::before {
  content: '';
  position: absolute;
  width: min(46vw, 34rem);
  height: min(34vw, 24rem);
  right: -8rem;
  top: -7rem;
  background: linear-gradient(135deg, #ffe8e2, #ffd2c2 55%, transparent);
  border-radius: 58% 42% 62% 38% / 46% 54% 46% 54%;
  filter: blur(16px);
  pointer-events: none;
}
body.nb-inner:not(.bb-home-page) .nb-page-hero::after {
  content: '';
  position: absolute;
  width: 8rem;
  height: 8rem;
  left: 8%;
  bottom: 6%;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid rgba(243, 216, 210, 0.6);
  filter: none;
}
body.nb-inner:not(.bb-home-page) .nb-page-hero-inner {
  position: relative;
  z-index: 1;
}
body.nb-inner:not(.bb-home-page) .nb-page-kicker {
  box-shadow: 0 8px 22px rgba(239, 43, 36, 0.1);
  border: 1px solid #f3d8d2;
  color: #ef2b24;
}
body.nb-inner:not(.bb-home-page) .nb-page-body {
  background: transparent;
}
body.nb-inner:not(.bb-home-page) .nb-page-card,
body.nb-inner .bb-pricing-card {
  background: rgba(255, 255, 255, 0.86) !important;
  border: 1px solid #f3d8d2 !important;
  border-radius: 1.25rem !important;
  box-shadow: 0 18px 40px rgba(17, 24, 39, 0.05) !important;
  backdrop-filter: blur(12px);
}
body.nb-inner .bb-pricing {
  background: transparent !important;
}
body.nb-inner:not(.bb-home-page) .nb-page-cta {
  background: rgba(255, 255, 255, 0.82) !important;
  color: #111827 !important;
  border: 1px solid #f3d8d2 !important;
  box-shadow: 0 22px 48px rgba(17, 24, 39, 0.06);
}
body.nb-inner:not(.bb-home-page) .nb-page-cta h2 {
  color: #111827 !important;
}
body.nb-inner:not(.bb-home-page) .nb-page-cta p {
  color: #4b5563 !important;
}
body.nb-inner:not(.bb-home-page) .nb-page-cta .nb-btn-ghost {
  background: #fff;
  color: #ef2b24;
  border-color: #ef2b24;
}

body.nb-site footer.nb-footer,
body.nb-site footer.bb-foot {
  background: transparent !important;
  color: #111827 !important;
  border-top: 1px solid #f3d8d2 !important;
}
body.nb-site footer.nb-footer .nb-footer-brand,
body.nb-site footer.nb-footer .text-white,
body.nb-site footer.nb-footer h3,
body.nb-site footer.nb-footer h4,
body.nb-site footer.nb-footer .nb-tool-list h4 {
  color: #111827 !important;
}
body.nb-site footer.nb-footer a,
body.nb-site footer.bb-foot a,
body.nb-site footer.nb-footer .text-gray-400,
body.nb-site footer.nb-footer p,
body.nb-site footer.nb-footer .text-xs,
body.nb-site footer.nb-footer .text-sm {
  color: #4b5563 !important;
}
body.nb-site footer.nb-footer a:hover,
body.nb-site footer.nb-footer a.nb-footer-accent,
body.nb-site footer.nb-footer a.hover\:text-blue-400:hover,
body.nb-site footer.nb-footer a.hover\:text-green-500:hover,
body.nb-site footer.nb-footer a.hover\:text-pink-500:hover,
body.nb-site footer.nb-footer a.hover\:text-blue-500:hover,
body.nb-site footer.nb-footer a.hover\:text-blue-600:hover,
body.nb-site footer.nb-footer a.hover\:text-yellow-300:hover {
  color: #ef2b24 !important;
}
body.nb-site footer.nb-footer .nb-footer-rule {
  border-color: #f3d8d2 !important;
}

@media (max-width: 767px) {
  .saas-sky-hide-m,
  .saas-sky-dots,
  .saas-sky-dots-br,
  .saas-sec::after { display: none; }
  .saas-sky-blob { opacity: 0.4; }
  .saas-sec { padding: 3rem 0; }
  .saas-sec::before { filter: blur(14px); opacity: 0.45; width: 16rem; height: 14rem; }
}

/* Shades stay continuous — never a clipped white wall */
body.bb-home-page main.bb-home-main {
  overflow: visible;
  background: transparent !important;
}
.saas-sky-svg { opacity: 1; }

body.nb-inner .bb-sol,
body.nb-inner .bb-pp {
  background: transparent !important;
  color: #111827;
}
body.nb-inner .bb-sol-hero,
body.nb-inner .bb-pp-hero {
  background: transparent !important;
  border-bottom: 0 !important;
  overflow: visible !important;
}
body.nb-inner .bb-sol-sec-muted,
body.nb-inner .bb-pp section.bg-slate-50,
body.nb-inner .bb-pp [class*="bg-slate-50"] {
  background: transparent !important;
}
body.nb-inner .bb-sol-btn,
body.nb-inner .bb-pp-btn {
  background: linear-gradient(90deg, #ef2b24, #ff5a36) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(239, 43, 36, 0.28) !important;
}
body.nb-inner .bb-sol-btn:hover,
body.nb-inner .bb-pp-btn:hover { filter: brightness(1.05); }
body.nb-inner .bb-sol-btn-s,
body.nb-inner .bb-pp-btn-s {
  background: #fff !important;
  color: #ef2b24 !important;
  border-color: #ef2b24 !important;
}
body.nb-inner .bb-sol-lead,
body.nb-inner .bb-sol-sub,
body.nb-inner .bb-sol-card p {
  color: #374151 !important;
}
body.nb-inner .bb-sol-eyebrow,
body.nb-inner .bb-sol-crumb a,
body.nb-inner .bb-pp-eyebrow { color: #ef2b24 !important; }
body.nb-inner .bb-sol-ico {
  background: #fff5f3 !important;
  color: #ef2b24 !important;
}
body.nb-inner .bb-sol-pill {
  background: #fff5f3 !important;
  color: #ef2b24 !important;
  border-color: #f3d8d2 !important;
}
body.nb-inner .bb-sol-card,
body.nb-inner .bb-pp-card,
body.nb-inner .bb-sol-faq details,
body.nb-inner .bb-pp-faq details {
  background: rgba(255, 255, 255, 0.84) !important;
  border: 1px solid #f3d8d2 !important;
  box-shadow: 0 16px 36px rgba(17, 24, 39, 0.05);
}
body.nb-inner .bb-sol-final,
body.nb-inner .bb-pp-cta {
  background: rgba(255, 255, 255, 0.84) !important;
  color: #111827 !important;
  border: 1px solid #f3d8d2;
  box-shadow: 0 22px 48px rgba(17, 24, 39, 0.06);
}
body.nb-inner .bb-sol-final h2,
body.nb-inner .bb-pp-cta h2,
body.nb-inner .bb-sol-final p { color: #111827 !important; }
body.nb-inner .bb-sol-faq details[open] summary,
body.nb-inner .bb-pp-faq details[open] summary { color: #ef2b24 !important; }

/* Login / signup / password — light premium SaaS */
body.bb-auth-page .min-h-screen,
body.bb-auth-page [class*="from-gray-900"] {
  background: transparent !important;
  background-image: none !important;
}
body.bb-auth-page {
  min-height: 100vh;
}
.bb-auth {
  position: relative;
  z-index: 1;
  padding: 2.5rem 1.25rem 4rem;
}
.bb-auth-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: center;
  max-width: 1080px;
  margin: 0 auto;
}
@media (min-width: 900px) {
  .bb-auth-grid { grid-template-columns: 1fr 1fr; gap: 3.5rem; min-height: calc(100vh - 8rem); }
}
.bb-auth-copy h1 {
  font-size: clamp(1.8rem, 4vw, 2.7rem);
  font-weight: 800;
  letter-spacing: -0.04em;
  color: #111827;
  margin: 0 0 0.75rem;
}
.bb-auth-copy h1 span { color: #ef2b24; }
.bb-auth-copy p {
  color: #4b5563;
  line-height: 1.6;
  margin: 0 0 1.1rem;
  max-width: 28rem;
}
.bb-auth-mascot {
  width: min(58%, 260px);
  height: auto;
  margin-top: 1rem;
  filter: drop-shadow(0 18px 28px rgba(17, 24, 39, 0.12));
}
@media (max-width: 899px) {
  .bb-auth-copy { text-align: center; }
  .bb-auth-copy p { margin-left: auto; margin-right: auto; }
  .bb-auth-mascot { margin-left: auto; margin-right: auto; display: block; }
  .bb-auth-copy .saas-ticks { display: inline-block; text-align: left; }
}
.bb-auth-card,
body.bb-auth-page .glass-card {
  background: rgba(255, 255, 255, 0.88) !important;
  border: 1px solid #f3d8d2 !important;
  border-radius: 1.5rem !important;
  box-shadow: 0 24px 50px rgba(17, 24, 39, 0.08) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  padding: 1.75rem 1.5rem;
}
body.bb-auth-page h2,
body.bb-auth-page .text-white,
body.bb-auth-page .gradient-text {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  background: none !important;
}
body.bb-auth-page .text-gray-400,
body.bb-auth-page .text-gray-300,
body.bb-auth-page .text-gray-500 {
  color: #6b7280 !important;
}
body.bb-auth-page input[type="email"],
body.bb-auth-page input[type="password"],
body.bb-auth-page input[type="text"],
body.bb-auth-page input[type="tel"] {
  background: #fff !important;
  color: #111827 !important;
  border: 1px solid #f3d8d2 !important;
  border-radius: 0.9rem !important;
}
body.bb-auth-page input::placeholder { color: #9ca3af !important; }
body.bb-auth-page label { color: #374151 !important; }
body.bb-auth-page button[type="submit"] {
  background: linear-gradient(90deg, #ef2b24, #ff5a36) !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 26px rgba(239, 43, 36, 0.28);
}
body.bb-auth-page a { color: #ef2b24; }
body.bb-auth-page .hover\:text-white:hover { color: #111827 !important; }

/* Every marketing page sits on the same ivory + coral silk */
body.nb-inner .bb-aff,
body.nb-inner .bb-auth,
body.nb-inner .bb-sol,
body.nb-inner .bb-pp {
  position: relative;
  z-index: 1;
}
body.nb-inner section.bg-white,
body.nb-inner section.bg-gray-50,
body.nb-inner section.bg-slate-50,
body.nb-inner .min-h-screen,
body.nb-inner .bb-pricing {
  background-color: transparent !important;
  background-image: none !important;
}
body.nb-inner .rounded-2xl.bg-white,
body.nb-inner .rounded-xl.bg-white,
body.nb-inner .bg-white.rounded-2xl,
body.nb-inner .bg-white.rounded-xl,
body.nb-inner .bg-slate-50.rounded-2xl,
body.nb-inner .p-6.rounded-2xl,
body.nb-inner .p-8.rounded-2xl,
body.nb-inner .p-5.rounded-xl {
  background: rgba(255, 255, 255, 0.88) !important;
  border-color: #f3d8d2 !important;
  box-shadow: 0 16px 36px rgba(17, 24, 39, 0.05);
}
body.nb-inner h1,
body.nb-inner h2,
body.nb-inner h3 {
  color: #111827;
}
.nb-h1-red { color: #ef2b24 !important; }
