:root {
  --ink: #06182F;
  --ink-2: #0A2342;
  --ink-3: #0E2C50;
  --gold: #ecc463;
  --gold-hi: #fff0c2;
  --gold-deep: #b9831f;
  --gold-edge: #7a531a;
  --cream: #E7EEF6;
  --muted: rgba(231, 238, 246, .58);
  --line: rgba(236, 196, 99, .18);
  --shadow: 0 30px 80px -30px rgba(0, 0, 0, .9);

  /* brochure accent system (navy + cyan) */
  --lime: #2BD4DB;
  --lime-2: #5FE0E6;
  --lime-soft: rgba(43, 212, 219, .12);
  --lime-glow: rgba(43, 212, 219, .5);
  --cell: #0C2747;
  --cell-hi: #103258;
  --line-2: rgba(255, 255, 255, .12);
  --muted-2: rgba(231, 238, 246, .5);

  /* key-themes card tokens */
  --kt-accent: #2BD4DB;
  --kt-accent-soft: #7FE6EC;
  --kt-muted: rgba(231, 238, 246, .72);
  --kt-line: rgba(255, 255, 255, .14);
  --kt-photo: linear-gradient(180deg, #0A2342, #071A33);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  /* keep anchored sections clear of the fixed header */
  scroll-padding-top: 90px;
}

body {
  background: var(--ink);
  color: var(--cream);
  font-family: 'Sora', sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

/* ============ HERO SHELL ============ */
.hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  isolation: isolate;
  overflow: hidden;
  padding-top: 78px;
  background: radial-gradient(120% 90% at 78% 18%, rgba(236, 196, 99, .16), transparent 55%), radial-gradient(90% 80% at 12% 95%, rgba(60, 90, 120, .14), transparent 60%), linear-gradient(180deg, var(--ink-2) 0%, #0E3F3C 60%, #06182F 100%);
}

/* watermark wordmark behind everything */
.watermark {
  position: absolute;
  left: -3vw;
  bottom: -7vh;
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 800;
  font-size: 42vw;
  line-height: .7;
  letter-spacing: -.04em;
  color: transparent;
  -webkit-text-stroke: 1.5px rgba(236, 196, 99, .05);
  z-index: -2;
  user-select: none;
  pointer-events: none;
  white-space: nowrap;
}

/* grain overlay */
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 5;
  pointer-events: none;
  opacity: .05;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* vignette */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  box-shadow: inset 0 0 200px 40px rgba(0, 0, 0, .6);
}

/* floating coin field */
.coin-field {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.fcoin {
  position: absolute;
  bottom: -90px;
  width: var(--s);
  height: var(--s);
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--gold-edge);
  font-weight: 700;
  font-size: calc(var(--s) * .48);
  filter: blur(var(--blur));
  opacity: var(--op);
  background:
    radial-gradient(circle at 34% 28%, #fff4d2 0%, #f0cf78 26%, #dca93f 52%, #ad7c1f 82%, #7c5414 100%);
  box-shadow: inset 0 0 0 2px rgba(124, 84, 20, .5), inset 0 4px 8px rgba(255, 244, 210, .4);
  animation: floatUp var(--dur) linear infinite;
}

.fcoin span {
  transform: scaleX(.9);
  text-shadow: 0 1px 0 rgba(255, 255, 255, .35);
}

@keyframes floatUp {
  0% {
    transform: translateY(0) rotateY(0deg);
  }

  100% {
    transform: translateY(-118svh) rotateY(900deg);
  }
}

/* ============ TOP BAR ============ */
.topbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px clamp(12px, 4vw, 54px);
  gap: 24px;
  transition: background .35s ease, padding .35s ease, box-shadow .35s ease, backdrop-filter .35s ease;
}

/* solid bar once the page is scrolled */
.topbar.scrolled {
  background: rgba(6, 24, 47, .92);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 10px 34px rgba(0, 0, 0, .38);
  padding-top: 8px;
  padding-bottom: 8px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 14px;
}

.brand__mark {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 800;
  font-size: 18px;
  color: #4a330c;
  background:
    radial-gradient(circle at 34% 28%, #fff4d2 0%, #f0cf78 28%, #dca93f 55%, #ad7c1f 85%, #7c5414 100%);
  box-shadow: inset 0 0 0 2px rgba(124, 84, 20, .55), 0 0 22px rgba(236, 196, 99, .35);
}

.brand__mark span {
  transform: scaleX(.92);
  text-shadow: 0 1px 0 rgba(255, 255, 255, .4);
}

.brand__name {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: .01em;
}

.brand__name b {
  color: var(--gold);
}

.brand__sub {
  display: block;
  font-family: 'Space Mono', monospace;
  font-size: 10px;
  letter-spacing: .32em;
  color: var(--muted);
  text-transform: uppercase;
  margin-top: 1px;
}

.nav {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: clamp(16px, 1.8vw, 30px);
}

.nav a {
  color: white;
  text-decoration: none;
  font-size: 16px;
  letter-spacing: .02em;
  position: relative;
  transition: color .25s;
}

.nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 1px;
  background: var(--gold);
  transition: width .3s;
}

.nav a:hover {
  color: var(--cream);
}

.nav a:hover::after {
  width: 100%;
}

.btn {
  font-family: 'Sora', sans-serif;
  font-weight: 500;
  font-size: 14px;
  padding: 12px 22px;
  border-radius: 100px;
  cursor: pointer;
  border: 1px solid transparent;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  transition: transform .25s, box-shadow .3s, background .3s, color .3s;
}

.btn--gold {
  color: #0E3F3C !important;
  background: linear-gradient(180deg, #ffe9a8, var(--gold) 60%, var(--gold-deep));
  box-shadow: 0 10px 30px -10px rgba(236, 196, 99, .7), inset 0 1px 0 rgba(255, 255, 255, .6);
}

.btn--gold:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px -12px rgba(236, 196, 99, .85), inset 0 1px 0 rgba(255, 255, 255, .6);
}

.btn--ghost {
  color: var(--cream);
  border-color: var(--line);
}

.btn--ghost:hover {
  border-color: var(--gold);
  color: var(--gold);
  transform: translateY(-2px);
}

/* ============ TICKER ============ */
.ticker {
  position: relative;
  z-index: 6;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  overflow: hidden;
  padding: 11px 0;
  margin-top: 6px;
  background: rgb(7 26 51);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

.ticker__track {
  display: flex;
  gap: 0;
  width: max-content;
  animation: scroll 38s linear infinite;
}

.brand.reveal.d1 img {
  height: 38px;
  width: auto;
  max-width: 100%;
  display: block;
}

.ticker__track span {
  font-family: 'Space Mono', monospace;
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #ecc463;
  padding: 0 26px;
  display: inline-flex;
  align-items: center;
  gap: 26px;
  white-space: nowrap;
}

.ticker__track span::before {
  content: "◆";
  color: var(--gold);
  font-size: 8px;
}

@keyframes scroll {
  from {
    transform: translateX(0)
  }

  to {
    transform: translateX(-50%)
  }
}

/* ============ MAIN GRID ============ */
.stage {
  position: relative;
  z-index: 6;
  flex: 1;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  align-items: center;
  gap: 40px;
  padding: clamp(28px, 4vw, 56px) clamp(20px, 5vw, 72px);
}

/* ---- left content ---- */
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: 'Space Mono', monospace;
  font-size: 12px;
  letter-spacing: .3em;
  text-transform: uppercase;
  color: var(--gold);
  padding: 8px 16px;
  border: 1px solid var(--line);
  border-radius: 100px;
  background: rgba(236, 196, 99, .04);
  margin-bottom: 26px;
}

.eyebrow .dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--gold);
  box-shadow: 0 0 12px var(--gold);
  animation: pulse 2s infinite;
}

@keyframes pulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1)
  }

  50% {
    opacity: .4;
    transform: scale(.7)
  }
}

section.kt-section {
  background: #0E3F3C;
}

.headline {
  font-family: "Archivo", sans-serif;
  font-weight: 700;
  line-height: 56px;
  letter-spacing: -.025em;
  font-size: clamp(48px, 7vw, 32px);
  margin-bottom: 24px;
}

.headline .g {
  background: linear-gradient(110deg, var(--gold-hi), var(--gold) 45%, var(--gold-deep));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  position: relative;
}

.lede {
  max-width: 520px;
  font-size: clamp(15px, 1.5vw, 18px);
  line-height: 1.65;
  color: var(--muted);
  margin-bottom: 34px;
}

.meta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-bottom: 38px;
}

.meta__card {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 16px 22px;
  border-radius: 16px;
  border: 1px solid var(--line);
  background: linear-gradient(160deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .005));
  backdrop-filter: blur(6px);
  min-width: 150px;
}

.meta__card .lbl {
  font-family: 'Space Mono', monospace;
  font-size: 10px;
  letter-spacing: .26em;
  text-transform: uppercase;
  color: var(--gold);
}

.btn {
  display: inline-block;
  font-weight: 400;
  line-height: 1.5;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  background-color: #ffffff30;
  border: 1px solid #f0e794;
  padding: .375rem .75rem;
  font-size: 1rem;
  border-radius: .25rem;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.meta__card .val {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 600;
  font-size: 18px;
  letter-spacing: .01em;
  color: white;
}

.meta__card .sub {
  font-size: 12px;
  color: var(--muted);
}

.cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

.cta-note {
  font-family: 'Space Mono', monospace;
  font-size: 11px;
  letter-spacing: .12em;
  color: var(--muted);
}

/* ---- right: the coin ---- */
.coin-col {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 380px;
}

.coin-glow {
  position: absolute;
  width: min(560px, 90%);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(236, 196, 99, .4), rgba(236, 196, 99, .06) 45%, transparent 70%);
  filter: blur(20px);
  z-index: 0;
  animation: breathe 6s ease-in-out infinite;
}

@keyframes breathe {

  0%,
  100% {
    transform: scale(1);
    opacity: .85
  }

  50% {
    transform: scale(1.12);
    opacity: 1
  }
}

.coin-perspective {
  perspective: 1500px;
  z-index: 2;
}

.coin {
  width: clamp(230px, 30vw, 400px);
  aspect-ratio: 1;
  position: relative;
  transform-style: preserve-3d;
  animation: spin 8s cubic-bezier(.45, .05, .55, .95) infinite;
  filter: drop-shadow(0 40px 50px rgba(0, 0, 0, .7));
}

@keyframes spin {
  from {
    transform: rotateY(0deg) rotateX(8deg)
  }

  to {
    transform: rotateY(360deg) rotateX(8deg)
  }
}

.face {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  backface-visibility: hidden;
  display: grid;
  place-items: center;
  text-align: center;
  background:
    radial-gradient(circle at 35% 26%, #fff7dd 0%, #f2d484 20%, #e0ad42 46%, #bd861f 74%, #87591400 75%),
    radial-gradient(circle at 50% 50%, #cf9c33 0%, #a06d1a 100%);
  box-shadow:
    inset 0 0 0 12px rgba(165, 114, 28, .45),
    inset 0 0 40px rgba(255, 247, 221, .35),
    inset 0 -10px 30px rgba(80, 52, 10, .5);
}

.face.back {
  transform: rotateY(180deg);
}

/* milled / reeded outer ring */
.face .reed {
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: repeating-conic-gradient(from 0deg, #f6dd92 0deg 2.2deg, #9c6c20 2.2deg 4.4deg);
  -webkit-mask: radial-gradient(circle, transparent 0 86%, #000 86.5% 100%);
  mask: radial-gradient(circle, transparent 0 86%, #000 86.5% 100%);
  opacity: .85;
}

.face .inner-ring {
  position: absolute;
  inset: 9%;
  border-radius: 50%;
  border: 2px dashed rgba(94, 63, 12, .4);
}

.coin-content {
  position: relative;
  z-index: 3;
  color: #5b3e0c;
  padding: 0 8%;
}

.coin-content .top,
.coin-content .bot {
  font-family: 'Space Mono', monospace;
  font-weight: 700;
  font-size: clamp(11px, 1.5vw, 15px);
  letter-spacing: .22em;
  text-transform: uppercase;
  text-shadow: 0 1px 0 rgba(255, 255, 255, .45), 0 -1px 0 rgba(0, 0, 0, .18);
}

.coin-content .symbol {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 800;
  font-size: clamp(74px, 11vw, 128px);
  line-height: .9;
  margin: 2px 0;
  color: #4a3209;
  text-shadow: 0 2px 0 rgba(255, 247, 221, .6), 0 -2px 1px rgba(0, 0, 0, .25), 0 6px 12px rgba(80, 52, 10, .4);
}

.coin-content .city {
  font-family: 'Bricolage Grotesque', sans-serif;
  font-weight: 800;
  font-size: clamp(34px, 5vw, 58px);
  letter-spacing: .02em;
  line-height: .95;
  color: #4a3209;
  text-shadow: 0 2px 0 rgba(255, 247, 221, .5), 0 -1px 1px rgba(0, 0, 0, .2);
}

.coin-content .star {
  font-size: 13px;
  color: #6b4912;
}

/* orbiting tag chip on coin */
.coin-tag {
  position: absolute;
  z-index: 4;
  bottom: 6%;
  right: -6%;
  font-family: 'Space Mono', monospace;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--gold);
  padding: 8px 14px;
  border-radius: 100px;
  border: 1px solid var(--line);
  background: rgba(10, 12, 18, .82);
  backdrop-filter: blur(8px);
  box-shadow: var(--shadow);
}

/* ============ FOOTER STRIP ============ */
.scroll-cue {
  position: relative;
  z-index: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 18px;
  color: var(--muted);
  font-family: 'Space Mono', monospace;
  font-size: 11px;
  letter-spacing: .28em;
  text-transform: uppercase;
}

.scroll-cue .bar {
  width: 46px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold));
  animation: slide 2.4s ease-in-out infinite;
}

@keyframes slide {

  0%,
  100% {
    transform: scaleX(.4);
    opacity: .4
  }

  50% {
    transform: scaleX(1);
    opacity: 1
  }
}

/* ============ ENTRANCE ANIMATION ============ */
.reveal {
  opacity: 0;
  transform: translateY(26px);
  animation: rise .9s cubic-bezier(.2, .7, .3, 1) forwards;
}

.d1 {
  animation-delay: .1s
}

.d2 {
  animation-delay: .22s
}

.d3 {
  animation-delay: .34s
}

.d4 {
  animation-delay: .46s
}

.d5 {
  animation-delay: .58s
}

.d6 {
  animation-delay: .7s
}

@keyframes rise {
  to {
    opacity: 1;
    transform: none
  }
}

/* ============ RESPONSIVE ============ */
@media (max-width:900px) {
  /* .nav visibility is handled by the hamburger rules in index.html (≤1400px).
     Do NOT set display:none here — it would block the dropdown from opening. */

  .stage {
    grid-template-columns: 1fr;
    gap: 10px;
    padding-top: 18px;
  }

  .coin-col {
    order: -1;
    min-height: 300px;
    margin-bottom: 6px;
  }

  .coin {
    width: min(62vw, 300px);
  }

  .headline {
    font-size: clamp(44px, 12vw, 72px);
  }

  .watermark {
    font-size: 70vw;
  }

  .coin-tag {
    right: 0;
  }
}

@media (max-width:480px) {
  .topbar {
    padding: 14px 16px;
  }

  /* keep both brand logos on one row with the hamburger on small phones */
  .brand.reveal.d1 img {
    height: 28px;
  }

  .brand {
    gap: 8px;
  }

  .meta__card {
    flex: 1;
    min-width: 43%;
  }

  .btn--ghost {
    display: none;
  }
}

@media (prefers-reduced-motion:reduce) {
  * {
    animation: none !important;
  }

  .reveal {
    opacity: 1;
    transform: none;
  }
}

.logowrpa img {
  width: 57%;
}

/* ---------- ambient background ---------- */
.glance {
  position: relative;
  width: 100%;
  max-width: 1240px;
}

.bg-glow,
.bg-grid,
.grain {
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0
}

.bg-glow {
  background:
    radial-gradient(60% 50% at 78% -8%, rgba(43, 212, 219, .10), transparent 70%),
    radial-gradient(55% 45% at 12% 105%, rgba(60, 120, 180, .08), transparent 70%),
    radial-gradient(40% 40% at 50% 50%, rgba(43, 212, 219, .03), transparent 70%);
}

.bg-grid {
  background-image:
    linear-gradient(to right, rgba(255, 255, 255, .025) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 255, 255, .025) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: radial-gradient(ellipse 120% 90% at 50% 30%, #000 30%, transparent 85%);
  -webkit-mask-image: radial-gradient(ellipse 120% 90% at 50% 30%, #000 30%, transparent 85%);
}

.grain {
  opacity: .05;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.content {
  position: relative;
  z-index: 2
}

/* ---------- header ---------- */
.head {
  margin-bottom: clamp(2rem, 4vw, 3.2rem);
  opacity: 0;
  transform: translateY(16px);
  animation: rise .9s cubic-bezier(.16, 1, .3, 1) .05s forwards;
}

h1.headline.reveal.d3 {
  color: white;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .72rem;
  font-weight: 500;
  letter-spacing: .22em;
  color: #2BD4DB;
  text-transform: uppercase;
}

.eyebrow::before {
  content: "";
  width: 26px;
  height: 1px;
  background: var(--lime);
  box-shadow: 0 0 8px var(--lime-glow);
}

.title {
  font-size: clamp(1.9rem, 4.4vw, 3.2rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: .96;
  margin: 1rem 0 .9rem;
  font-stretch: 125%;
  font-family: "Archivo", sans-serif;
}

.title em {
  font-style: normal;
  color: var(--muted)
}

.title .dot {
  color: var(--lime)
}

.sub {
  max-width: 46ch;
  color: var(--ink-2);
  font-size: clamp(.95rem, 1.4vw, 1.08rem);
  font-weight: 400;
  line-height: 1.6;
}

/* ---------- stats panel ---------- */
.panel-wrap {
  opacity: 0;
  transform: translateY(24px);
  animation: rise 1s cubic-bezier(.16, 1, .3, 1) .2s forwards;
}

.stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgb(255 255 255 / 18%);
  border: 1px solid var(--line-2);
  border-radius: 18px;
  overflow: hidden;
  position: relative;
}

.stats::after {
  /* subtle top sheen */
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, .04), transparent 22%);
}

.stat {
  position: relative;
  background: var(--cell);
  padding: clamp(1.8rem, 1.6vw, 2.6rem) clamp(1.5rem, 2.2vw, 2.1rem);
  min-height: clamp(220px, 26vw, 219px);
  display: flex;
  flex-direction: column;
  transition: background .45s ease;
  overflow: hidden;
}

.stat::before {
  /* hover accent bar */
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--lime);
  box-shadow: 0 0 16px var(--lime-glow);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .5s cubic-bezier(.16, 1, .3, 1);
}

.stat::after {
  /* hover wash */
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(120% 80% at 50% 0%, var(--lime-soft), transparent 60%);
  opacity: 0;
  transition: opacity .45s ease;
}

.stat:hover {
  background: var(--cell-hi)
}

.stat:hover::before {
  transform: scaleX(1)
}

.stat:hover::after {
  opacity: 1
}

.stat__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: auto;
}

.stat__idx {
  font-family: "JetBrains Mono", monospace;
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .05em;
  color: var(--muted-2);
  transition: color .4s ease;
}

.stat:hover .stat__idx {
  color: var(--lime)
}

.stat__cat {
  font-family: "JetBrains Mono", monospace;
  font-size: .64rem;
  font-weight: 500;
  letter-spacing: .16em;
  color: var(--muted);
  text-transform: uppercase;
}

.stat__num {
  display: flex;
  align-items: flex-start;
  font-weight: 900;
  letter-spacing: -.04em;
  line-height: .9;
  font-stretch: 125%;
  margin: 1.4rem 0 0;
}

.stat__num .count {
  font-size: clamp(3.2rem, 7vw, 3.4rem);
  color: #ffffff;
  font-variant-numeric: tabular-nums;
}

.stat__num .plus {
  font-size: clamp(2rem, 4vw, 3rem);
  color: var(--lime);
  line-height: 1;
  margin-left: .06em;
  margin-top: .1em;
  text-shadow: 0 0 22px var(--lime-glow);
}

.stat__rule {
  height: 1px;
  width: 34px;
  background: var(--line-2);
  margin: 1.1rem 0 .9rem;
  transition: width .5s cubic-bezier(.16, 1, .3, 1), background .4s ease;
}

.stat:hover .stat__rule {
  width: 54px;
  background: var(--lime-2)
}

.stat__label {
  font-size: clamp(.95rem, 1.3vw, 15px);
  font-weight: 600;
  color: #f6f1c3;
  letter-spacing: -.01em;
  line-height: 1.3;
}

section#partners h2 {
  font-family: "Archivo", sans-serif;
  text-align: center;
  padding: 40px;
  font-size: clamp(1.9rem, 4.4vw, 3.2rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: 1.04;
  margin: 1rem 0 0;
  color: #0A2342;
  font-stretch: 115%;
  /* max-width: 18ch; */
}

/* ---------- footer strip ---------- */
.strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .8rem;
  margin-top: 1.4rem;
  padding: 0 .4rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .7rem;
  letter-spacing: .14em;
  color: var(--muted);
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(14px);
  animation: rise .9s cubic-bezier(.16, 1, .3, 1) .55s forwards;
}

.strip .live {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  color: var(--ink-2)
}

.strip .pip {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--lime);
  box-shadow: 0 0 0 0 var(--lime-glow);
  animation: pulse 2.4s ease-out infinite;
}

/* ---------- animations ---------- */
@keyframes rise {
  to {
    opacity: 1;
    transform: translateY(0)
  }
}

@keyframes pulse {
  0% {
    box-shadow: 0 0 0 0 var(--lime-glow)
  }

  70% {
    box-shadow: 0 0 0 8px rgba(43, 212, 219, 0)
  }

  100% {
    box-shadow: 0 0 0 0 rgba(43, 212, 219, 0)
  }
}

/* ---------- responsive ---------- */
@media (max-width:880px) {
  .stats {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width:480px) {
  .stats {
    grid-template-columns: 1fr
  }

  .stat {
    min-height: auto;
    padding: 1.7rem 1.5rem
  }
}

@media (prefers-reduced-motion:reduce) {
  * {
    animation: none !important;
    transition: none !important
  }

  .head,
  .panel-wrap,
  .strip {
    opacity: 1;
    transform: none
  }
}

#summit-glance {
  background: #071A33;
  color: #f2f5f1;
  font-family: "Archivo", sans-serif;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(0rem, 3vw, 6rem) clamp(1rem, 4vw, 3rem);
  overflow-x: hidden;
}

/* ===================== SECTION SHELL ===================== */
.nbfcAboutSection {
  position: relative;
  overflow: hidden;
  background: #EEF3F8;
  color: #0A2342;
  font-family: "Archivo", sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  padding: clamp(3rem, 7vw, 7rem) clamp(1.1rem, 4vw, 3rem);
}

.nbfcAboutSection * {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* ambient layers (scoped to the section, not the viewport) */
.nbfcAboutBgGlow,
.nbfcAboutBgGrid,
.nbfcAboutGrain {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.nbfcAboutBgGlow {
  background:
    radial-gradient(50% 50% at 90% 4%, rgba(22, 182, 194, .10), transparent 70%),
    radial-gradient(45% 45% at 2% 100%, rgba(22, 182, 194, .07), transparent 70%);
}

.nbfcAboutBgGrid {
  background-image:
    linear-gradient(to right, rgba(10, 35, 66, .035) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(10, 35, 66, .035) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: radial-gradient(ellipse 120% 100% at 50% 35%, #000 22%, transparent 82%);
  mask-image: radial-gradient(ellipse 120% 100% at 50% 35%, #000 22%, transparent 82%);
}

.nbfcAboutGrain {
  opacity: .035;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.nbfcAboutInner {
  position: relative;
  z-index: 2;
  max-width: 1240px;
  margin: 0 auto;
}

.nbfcAboutGrid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: clamp(2.2rem, 4.5vw, 4.5rem);
  align-items: center;
}

/* ===================== COPY COLUMN ===================== */
.nbfcAboutCopy {
  max-width: 620px;
}

.nbfcAboutEyebrow {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .22em;
  color: #0F8A99;
  text-transform: uppercase;
  opacity: 0;
  transform: translateY(14px);
  animation: nbfcAboutRise .8s cubic-bezier(.16, 1, .3, 1) .05s forwards;
}

.nbfcAboutEyebrow::before {
  content: "";
  width: 26px;
  height: 2px;
  background: #0F8A99;
}

.nbfcAboutTitle {
  font-size: clamp(2rem, 4.4vw, 2.4rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: 1.02;
  margin: 1.1rem 0 1.6rem;
  color: #0A2342;
  font-stretch: 115%;
  opacity: 0;
  transform: translateY(18px);
  animation: nbfcAboutRise .9s cubic-bezier(.16, 1, .3, 1) .12s forwards;
}

.nbfcAboutAccent {
  color: #0F8A99;
}

.nbfcAboutLead {
  font-size: clamp(1.1rem, 1.7vw, 1.35rem);
  line-height: 1.5;
  color: #0A2342;
  font-weight: 500;
  letter-spacing: -.01em;
  margin-bottom: 1.5rem;
  opacity: 0;
  transform: translateY(18px);
  animation: nbfcAboutRise .9s cubic-bezier(.16, 1, .3, 1) .2s forwards;
}

.nbfcAboutBody {
  font-size: 1.02rem;
  line-height: 1.65;
  color: #41506A;
  font-weight: 400;
  opacity: 0;
  transform: translateY(18px);
  animation: nbfcAboutRise .9s cubic-bezier(.16, 1, .3, 1) .28s forwards;
}

.nbfcAboutBody p {
  margin-bottom: 1rem;
}

.nbfcAboutBody p:last-child {
  margin-bottom: 0;
}

.nbfcAboutBody strong {
  color: #0A2342;
  font-weight: 600;
}

.nbfcAboutMark {
  color: #0F8A99;
  font-weight: 600;
  border-bottom: 1.5px solid rgba(22, 182, 194, .4);
  padding-bottom: 1px;
}

.nbfcAboutFacts {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: 2rem;
  opacity: 0;
  transform: translateY(18px);
  animation: nbfcAboutRise .9s cubic-bezier(.16, 1, .3, 1) .36s forwards;
}

.nbfcAboutPill {
  font-family: "JetBrains Mono", monospace;
  font-size: .68rem;
  letter-spacing: .1em;
  font-weight: 500;
  text-transform: uppercase;
  color: #41506A;
  padding: .5rem .85rem;
  border: 1px solid rgba(10, 35, 66, .16);
  border-radius: 100px;
  background: #FFFFFF;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  box-shadow: 0 1px 2px rgba(10, 35, 66, .04);
}

.nbfcAboutPill::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #16B6C2;
}

/* ===================== VIDEO COLUMN ===================== */
.nbfcAboutMedia {
  position: relative;
  opacity: 0;
  transform: translateY(24px) scale(.98);
  animation: nbfcAboutRiseScale 1s cubic-bezier(.16, 1, .3, 1) .3s forwards;
}

.nbfcAboutVideo {
  position: relative;
  aspect-ratio: 16/9;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(10, 35, 66, .08);
  background: #06182F;
  box-shadow: 0 30px 70px -28px rgba(8, 26, 51, .45), 0 4px 14px rgba(10, 35, 66, .08);
  cursor: pointer;
  transition: box-shadow .4s ease, transform .4s ease;
}

.nbfcAboutVideo:hover {
  box-shadow: 0 38px 90px -30px rgba(8, 26, 51, .55), 0 6px 18px rgba(10, 35, 66, .10);
  transform: translateY(-2px);
}

.nbfcAboutVideoEl {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: #06182F;
}

.nbfcAboutCover {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  background:
    radial-gradient(120% 120% at 72% 18%, rgba(22, 182, 194, .22), transparent 55%),
    linear-gradient(150deg, #0E2C50 0%, #0A2342 55%, #06182F 100%);
  transition: opacity .5s ease;
}

.nbfcAboutCover::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .07;
  mix-blend-mode: overlay;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.nbfcAboutVideo.nbfcAboutPlaying .nbfcAboutCover {
  opacity: 0;
  pointer-events: none;
}

.nbfcAboutLockup {
  position: absolute;
  left: 1.4rem;
  bottom: 1.3rem;
  z-index: 2;
}

.nbfcAboutLockupL1 {
  font-family: "JetBrains Mono", monospace;
  font-size: .66rem;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .6);
}

.nbfcAboutLockupL2 {
  font-family: "Archivo";
  font-weight: 800;
  font-size: 1.05rem;
  color: #fff;
  letter-spacing: -.01em;
  margin-top: .2rem;
}

.nbfcAboutChip {
  position: absolute;
  z-index: 2;
  top: 1.2rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .64rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-weight: 500;
  padding: .4rem .7rem;
  border-radius: 100px;
  background: rgba(7, 21, 13, .5);
  border: 1px solid rgba(255, 255, 255, .18);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  color: rgba(255, 255, 255, .85);
}

.nbfcAboutChipCat {
  left: 1.2rem;
  color: #9ef0f4;
  border-color: rgba(154, 242, 182, .45);
}

.nbfcAboutChipTime {
  right: 1.2rem;
}

.nbfcAboutPlay {
  position: relative;
  z-index: 2;
  width: clamp(64px, 9vw, 86px);
  height: clamp(64px, 9vw, 86px);
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .3);
  transition: transform .35s cubic-bezier(.16, 1, .3, 1);
}

.nbfcAboutPlay::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, .7);
  animation: nbfcAboutRing 2.6s ease-out infinite;
}

.nbfcAboutPlay svg {
  width: 38%;
  height: 38%;
  margin-left: 8%;
  fill: #0B6A75;
}

.nbfcAboutVideo:hover .nbfcAboutPlay {
  transform: scale(1.08);
}

.nbfcAboutBracket {
  position: absolute;
  width: 26px;
  height: 26px;
  z-index: 4;
  pointer-events: none;
  border-color: #16B6C2;
  opacity: .9;
}

.nbfcAboutBracketTL {
  top: -1px;
  left: -1px;
  border-top: 2px solid;
  border-left: 2px solid;
  border-top-left-radius: 18px;
}

.nbfcAboutBracketBR {
  bottom: -1px;
  right: -1px;
  border-bottom: 2px solid;
  border-right: 2px solid;
  border-bottom-right-radius: 18px;
}

.nbfcAboutCaption {
  margin-top: 1rem;
  display: flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .68rem;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #6A7890;
}

.nbfcAboutPip {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16B6C2;
  animation: nbfcAboutBlink 2.4s ease-in-out infinite;
}

/* ===================== KEYFRAMES (namespaced) ===================== */
@keyframes nbfcAboutRise {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes nbfcAboutRiseScale {
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes nbfcAboutRing {
  0% {
    transform: scale(1);
    opacity: .6;
  }

  70% {
    transform: scale(1.5);
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

@keyframes nbfcAboutBlink {

  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: .3;
  }
}

/* ===================== RESPONSIVE ===================== */
@media (max-width:920px) {
  .nbfcAboutGrid {
    grid-template-columns: 1fr;
    gap: 2.6rem;
  }

  .nbfcAboutCopy {
    max-width: none;
  }

  .nbfcAboutTitle br {
    display: none;
  }
}

@media (max-width:480px) {
  .nbfcAboutFacts {
    gap: .4rem;
  }

  .nbfcAboutPill {
    font-size: .62rem;
    padding: .45rem .7rem;
  }
}

@media (prefers-reduced-motion:reduce) {
  .nbfcAboutSection * {
    animation: none !important;
    transition: none !important;
  }

  .nbfcAboutEyebrow,
  .nbfcAboutTitle,
  .nbfcAboutLead,
  .nbfcAboutBody,
  .nbfcAboutFacts,
  .nbfcAboutMedia {
    opacity: 1;
    transform: none;
  }
}

#partners {
  scroll-margin-top: 100px;
  background: white;
}

.partner-box {
  text-align: center;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
  padding: 10px 0;
  margin-bottom: 20px;
  border-radius: 5px;
  min-height: 130px;
}

.logo-left {
  padding-right: 20px;
}

.logo-right {
  border-left: 2px solid #eee;
  padding-left: 10px;
}

.partner-box p {
  margin-bottom: 15px;
}

/* speaker */
.speakerItem01 {
  padding: 0;
  text-align: center;
  z-index: 2;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  height: 100%;
  position: relative;
  margin: 0 !important;
  background: #0A2342;
  border-radius: 30px;
  padding-bottom: 20px;
  -moz-transition: .5s;
  -ms-transition: .5s;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  -ms-border-radius: 30px;
  -o-border-radius: 30px;
}

.speakerItem01 figure {
  position: relative;
  margin: 0;
  overflow: hidden;
  max-height: 400px;
  border-radius: 30px 30px 0 0;
  background: #fff;
  -webkit-border-radius: 30px 30px 0 0;
  -moz-border-radius: 30px 30px 0 0;
  -ms-border-radius: 30px 30px 0 0;
  -o-border-radius: 30px 30px 0 0;
}


.speakerItem01 figure:before {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: -o-linear-gradient(269deg, #07070726, #14141400, #00000021, #000);
  background: linear-gradient(181deg, #07070726, #14141400, #00000021, #0A2342);
  border-radius: 30px 30px 0 0;
  -webkit-border-radius: 30px 30px 0 0;
  -moz-border-radius: 30px 30px 0 0;
  -ms-border-radius: 30px 30px 0 0;
  -o-border-radius: 30px 30px 0 0;
}

.speakerItem01 figure img {
  width: 100%;
}

.speakerItem01 .speakerInfo {
  position: relative;
  padding: 20px 30px;
  padding-bottom: 0;
}

.speakerItem01 .speakerInfo {
  position: relative;
  padding: 20px 30px;
  padding-bottom: 0;
}

.speakerItem01 .speakerInfo h2.speakername {
  font-size: 1.3vw !important;
  line-height: 1.9vw !important;
  padding-bottom: 6px !important;
}

.speakerItem01 .speakerInfo h2 {
  margin: 0;
  padding: 0;
  color: #fff;
  font-size: 24px;
  text-align: left;
  font-weight: 400;
  font-family: "Bebas Neue", sans-serif;
  line-height: 26px;
}

.speakerItem01 .speakerInfo p.speakDesg {
  font-size: 1.375vw !important;
  line-height: 1.5vw !important;
  padding: 0px 0px 10px 0px !important;
}

.speakerItem01 .speakerInfo p.speakComapny {
  color: #D9A93A;
}

.speakerItem01 .speakerInfo p.speakComapny {
  font-size: 1.45vw !important;
  line-height: 1.5vw !important;
}

.speakerItem01 .speakerInfo p.speakComapny {
  padding-bottom: 10px;
  line-height: 24px;
  font-size: 21px;
  color: #0F8A99;
  font-weight: 600 !important;
  font-family: "Bebas Neue", sans-serif !important;
}

.speakerItem01 .speakerInfo p.speakComapny {
  margin: 0;
  padding: 0 0 10px;
  color: #fff;
  font-weight: 600;
  font-size: 16px;
  text-align: left;
  line-height: 20px;
}

.speakerItem01 .speakerInfo p.speakCountry {
  line-height: 20px;
  font-size: 25px;
  padding-bottom: 20px;
  font-weight: 400 !important;
  font-family: "Bebas Neue", sans-serif !important;
  text-align: left;
}

.speakerItem01 .speakerInfo p {
  text-align: left;
  margin: 0;
  padding: 0;
  text-transform: uppercase;
  color: #fff;
}

.spkrbottom {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 100%;
  padding: 10px 0 8px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: end;
  text-align: right;
}

.ntsytbin {
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.ntsytbin svg {
  stroke: #fff;
  transition: .6s all ease-in-out;
  -webkit-transition: .6s all ease-in-out;
  -moz-transition: .6s all ease-in-out;
  -o-transition: .6s all ease-in-out;
  -ms-transition: .6s all ease-in-out;
}


/* ===================== SECTION SHELL ===================== */
.nbfcXSection {
  position: relative;
  background: #EEF3F8;
  color: #0A2342;
  font-family: "Archivo", sans-serif;
  -webkit-font-smoothing: antialiased;
  padding: clamp(2.6rem, 6vw, 5.5rem) clamp(1.1rem, 4vw, 3rem);
}

.nbfcXSection * {
  box-sizing: border-box;
}

.nbfcXInner {
  max-width: 1280px;
  margin: 0 auto;
}

.nbfcXHead {
  margin-bottom: clamp(1.8rem, 3.5vw, 2.8rem);
  max-width: 680px;
}

.nbfcXEyebrowTop {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .22em;
  color: #0F8A99;
  text-transform: uppercase;
}

.nbfcXEyebrowTop::before {
  content: "";
  width: 26px;
  height: 2px;
  background: #0F8A99;
}

.nbfcXHeading {
  font-size: clamp(1.9rem, 4.4vw, 3.2rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: 1.04;
  margin: 1rem 0 0;
  color: #0A2342;
  font-stretch: 115%;
  max-width: 18ch;
}

.nbfcXHeading span {
  color: #0F8A99;
}

/* ===================== EXPLORER ===================== */
.nbfcXExplorer {
  display: grid;
  grid-template-columns: minmax(290px, .85fr) 1.3fr;
  gap: clamp(1.4rem, 3vw, 2.4rem);
  align-items: start;
}

/* index (left) */
.nbfcXTabs {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(10, 35, 66, .08);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 20px -10px rgba(10, 35, 66, .16);
}

.nbfcXTab {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1rem;
  width: 100%;
  padding: 1.05rem 1.2rem;
  background: transparent;
  border: none;
  text-align: left;
  cursor: pointer;
  border-bottom: 1px solid rgba(10, 35, 66, .07);
  transition: background .25s ease;
  font-family: inherit;
}

.nbfcXTab:last-child {
  border-bottom: none;
}

.nbfcXTab:hover {
  background: rgba(22, 182, 194, .05);
}

.nbfcXTabNum {
  font-family: "JetBrains Mono", monospace;
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .05em;
  color: #9aa39a;
  transition: color .25s;
}

.nbfcXTabTitle {
  flex: 1;
  font-size: .98rem;
  font-weight: 700;
  letter-spacing: -.01em;
  color: #0A2342;
  line-height: 1.25;
  transition: color .25s;
}

.nbfcXTabChev {
  color: #c2cac2;
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity .25s, transform .25s, color .25s;
}

.nbfcXTabChev svg {
  width: 18px;
  height: 18px;
  display: block;
}

.nbfcXTab.active {
  background: rgba(22, 182, 194, .08);
}

.nbfcXTab.active .nbfcXTabNum {
  color: #0F8A99;
}

.nbfcXTab.active .nbfcXTabTitle {
  color: #0B6A75;
}

.nbfcXTab.active .nbfcXTabChev {
  opacity: 1;
  transform: translateX(0);
  color: #0F8A99;
}

.nbfcXTab.active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: #0F8A99;
}

.nbfcXProgress {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  width: 0;
  background: #16B6C2;
}

/* showcase (right) */
.nbfcXStage {
  position: relative;
}

.nbfcXPanel {
  display: none;
}

.nbfcXPanel.nbfcXActive {
  display: block;
  animation: nbfcXFade .5s cubic-bezier(.16, 1, .3, 1);
}

@keyframes nbfcXFade {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.nbfcXVisual {
  position: relative;
  aspect-ratio: 16/9;
  border-radius: 18px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(10, 35, 66, .06);
  box-shadow: 0 14px 36px -18px rgba(8, 26, 51, .35);
  background:
    radial-gradient(120% 120% at 75% 16%, rgba(22, 182, 194, .18), transparent 60%),
    linear-gradient(150deg, #eaf3ea, #d8e8d6);
}

.nbfcXVisualIcon {
  color: rgba(15, 138, 153, .3);
}

.nbfcXVisualIcon svg {
  width: 78px;
  height: 78px;
}

.nbfcXImg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.nbfcXBadge {
  position: absolute;
  top: 1rem;
  left: 1rem;
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: #fff;
  color: #0F8A99;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(8, 26, 51, .2);
}

.nbfcXBadge svg {
  width: 22px;
  height: 22px;
}

.nbfcXCaption {
  padding: 1.35rem .15rem 0;
}

.nbfcXEyebrow {
  font-family: "JetBrains Mono", monospace;
  font-size: .7rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: #0F8A99;
  font-weight: 600;
}

.nbfcXTitle {
  font-size: clamp(1.3rem, 2.4vw, 1.9rem);
  font-weight: 800;
  letter-spacing: -.02em;
  color: #0A2342;
  margin: .5rem 0 .6rem;
  line-height: 1.16;
}

.nbfcXDesc {
  font-size: 1rem;
  line-height: 1.6;
  color: #5A6B82;
  margin: 0;
  max-width: 64ch;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width:860px) {
  .nbfcXExplorer {
    grid-template-columns: 1fr;
  }

  .nbfcXTabs {
    flex-direction: row;
    overflow-x: auto;
    border-radius: 14px;
  }

  .nbfcXTab {
    flex-direction: column;
    min-width: 62px;
    gap: .3rem;
    padding: .8rem .65rem;
    border-bottom: none;
    border-right: 1px solid rgba(10, 35, 66, .07);
    align-items: center;
  }

  .nbfcXTab:last-child {
    border-right: none;
  }

  .nbfcXTabTitle,
  .nbfcXTabChev {
    display: none;
  }

  .nbfcXTab.active::before {
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
    height: 3px;
  }

  .nbfcXProgress {
    display: none;
  }
}

@media (prefers-reduced-motion:reduce) {
  .nbfcXSection * {
    animation: none !important;
    transition: none !important;
  }

  .nbfcXProgress {
    display: none;
  }
}

/* ===== SPEAKERS SECTION (self-contained, scoped under .spk-section) ===== */
.spk-section {
  --spk-bg: #06182F;
  --spk-card-top: #0E2C50;
  --spk-card-bot: #0A2342;
  --spk-line: rgba(255, 255, 255, .07);
  --spk-blue: #21C7D6;
  --spk-blue-text: #7FE6EC;
  --spk-card-w: 380px;
  --spk-card-h: 300px;
  --spk-pad: clamp(20px, 4vw, 56px);

  position: relative;
  background: radial-gradient(85% 55% at 50% 8%, #10325E 0%, rgba(24, 34, 77, 0) 55%), var(--spk-bg);
  color: #fff;
  font-family: "Archivo", system-ui, -apple-system, sans-serif;
  padding: 84px 0 96px;
  -webkit-font-smoothing: antialiased;
}

.spk-section * {
  box-sizing: border-box
}

.spk-head {
  max-width: 920px;
  margin: 0 auto;
  text-align: center;
  padding: 0 20px
}

.spk-eyebrow {
  color: var(--spk-blue-text);
  font-weight: 700;
  font-size: .8rem;
  letter-spacing: .3em;
  text-transform: uppercase;
  margin: 0 0 22px;
  animation: spk-rise .6s .05s both
}

.spk-title {
  font-weight: 800;
  text-transform: uppercase;
  color: #fff;
  font-size: clamp(2.05rem, 5.4vw, 4.1rem);
  line-height: .97;
  letter-spacing: -.015em;
  margin: 0 auto;
  max-width: 100%;
  animation: spk-rise .7s .12s both;
}

.spk-title-accent {
  color: var(--spk-blue)
}

.spk-cta {
  display: inline-block;
  margin-top: 30px;
  background: var(--spk-blue);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .07em;
  text-transform: uppercase;
  padding: 15px 28px;
  border-radius: 999px;
  box-shadow: 0 12px 30px -10px rgba(33, 199, 214, .7);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  animation: spk-rise .7s .2s both
}

.spk-cta:hover {
  transform: translateY(-2px);
  background: #21C7D6;
  box-shadow: 0 16px 36px -10px rgba(33, 199, 214, .85)
}

.spk-rail {
  margin-top: 58px;
  animation: spk-rise .8s .28s both
}

.spk-track {
  display: flex;
  gap: 26px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: var(--spk-pad);
  padding-inline: var(--spk-pad);
  padding-bottom: 6px;
  scrollbar-width: none;
  cursor: grab
}

.spk-track::-webkit-scrollbar {
  display: none
}

.spk-track.is-grabbing {
  cursor: grabbing;
  user-select: none
}

.spk-card {
  position: relative;
  flex: 0 0 auto;
  width: var(--spk-card-w);
  height: var(--spk-card-h);
  background: linear-gradient(180deg, var(--spk-card-top) 0%, var(--spk-card-bot) 100%);
  border: 1px solid var(--spk-line);
  border-radius: 18px;
  overflow: hidden;
  scroll-snap-align: start;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
  transition: transform .35s cubic-bezier(.2, .7, .2, 1), border-color .35s, box-shadow .35s;
  animation: spk-rise .55s both;
  animation-delay: calc(var(--i)*55ms + .35s)
}

.spk-card:hover {
  transform: translateY(-7px);
  border-color: rgba(45, 200, 215, .45);
  box-shadow: 0 26px 54px -22px rgba(33, 199, 214, .55), inset 0 1px 0 rgba(255, 255, 255, .06)
}

.spk-card-dots {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: radial-gradient(circle, rgba(60, 205, 220, .62) 1.5px, transparent 1.7px);
  background-size: 13px 13px;
  -webkit-mask-image: radial-gradient(135% 130% at 80% 110%, #000 0%, rgba(0, 0, 0, .28) 42%, transparent 66%);
  mask-image: radial-gradient(135% 130% at 80% 110%, #000 0%, rgba(0, 0, 0, .28) 42%, transparent 66%)
}

.spk-card-info {
  position: absolute;
  left: 26px;
  top: 28px;
  right: 47%;
  z-index: 3
}

.spk-name {
  font-weight: 800;
  font-size: 1.7rem;
  line-height: 1.0;
  letter-spacing: -.01em;
  text-transform: uppercase;
  color: #fff;
  margin: 0 0 13px
}

.spk-org {
  font-weight: 700;
  font-size: .86rem;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: #fff;
  font-size: 13px !important;
  margin: 0 0 5px;
  line-height: 1.18;
}

.spk-role {
  font-weight: 600;
  font-size: .77rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--spk-blue-text);
  margin: 0;
  font-size: 12px !important;
  line-height: 1.25;
}

.spk-photo {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 57%;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  z-index: 2
}

.spk-photo img {
  height: 91%;
  width: 100%;
  object-fit: cover;
  object-position: 50% 10%;
  display: block;
  position: relative;
  z-index: 1;
  -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 40%);
  mask-image: linear-gradient(to right, transparent 0%, #000 40%);
}

.tm-section h2 {
  text-align: center;
  font-size: clamp(1.9rem, 4.4vw, 3.1rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: 1.04;
  margin: 1rem 0 .8rem;
  color: #0A2342;
  font-stretch: 115%;
}

.spk-photo-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 3.2rem;
  color: rgba(255, 255, 255, .12);
  letter-spacing: .04em
}

.spk-dots {
  display: flex;
  gap: 14px;
  justify-content: flex-start;
  align-items: center;
  width: max-content;
  max-width: 100%;
  margin: 38px auto 0;
  padding: 4px 20px;
  overflow-x: auto;
  scrollbar-width: none
}

.spk-dots::-webkit-scrollbar {
  display: none
}

.spk-dots.is-centered {
  justify-content: center
}

.spk-dot {
  position: relative;
  flex: 0 0 auto;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  padding: 0;
  border: 2px solid rgba(255, 255, 255, .14);
  overflow: hidden;
  background: #0A2342;
  cursor: pointer;
  opacity: .62;
  transition: opacity .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease
}

.spk-dot:hover {
  opacity: 1;
  border-color: rgba(120, 220, 235, .6)
}

.spk-dot.is-active {
  opacity: 1;
  border-color: var(--spk-blue);
  transform: scale(1.1);
  box-shadow: 0 0 0 4px rgba(33, 199, 214, .22)
}

.spk-dot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 18%;
  display: block
}

.spk-dot-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: .85rem;
  color: rgba(255, 255, 255, .5)
}

.spk-more {
  text-align: center;
  color: #BFD6E2;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 600;
  font-size: .82rem;
  margin-top: 24px;
  animation: spk-rise .8s .5s both
}

@keyframes spk-rise {
  from {
    opacity: 0;
    transform: translateY(18px)
  }

  to {
    opacity: 1;
    transform: none
  }
}

@media (max-width:640px) {
  .spk-section {
    --spk-card-w: 82vw;
    --spk-card-h: 288px;
    padding: 60px 0 72px
  }

  .spk-name {
    font-size: 1.5rem
  }
}

@media (prefers-reduced-motion:reduce) {
  .spk-section * {
    animation: none !important;
    transition: none !important
  }

  .spk-track {
    scroll-behavior: auto !important
  }
}


/* ===================== SECTION SHELL ===================== */
.nbfcFocusSection {
  position: relative;
  background: #EEF3F8;
  color: #0A2342;
  font-family: "Archivo", sans-serif;
  -webkit-font-smoothing: antialiased;
  padding: clamp(2.6rem, 6vw, 5.5rem) clamp(1.1rem, 4vw, 3rem);
}

.nbfcFocusSection * {
  box-sizing: border-box;
}

.nbfcFocusInner {
  max-width: 1180px;
  margin: 0 auto;
}

.nbfcFocusHead {
  margin-bottom: clamp(1.8rem, 3.5vw, 2.6rem);
  max-width: 640px;
}

.nbfcFocusEyebrow {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .22em;
  color: #0F8A99;
  text-transform: uppercase;
}

.nbfcFocusEyebrow::before {
  content: "";
  width: 26px;
  height: 2px;
  background: #0F8A99;
}

.nbfcFocusHeading {
  font-size: clamp(1.9rem, 4.4vw, 3.1rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: 1.04;
  margin: 1rem 0 .8rem;
  color: #0A2342;
  font-stretch: 115%;
}

.nbfcFocusHeading span {
  color: #0F8A99;
}

.nbfcFocusSub {
  font-size: clamp(.98rem, 1.4vw, 1.08rem);
  color: #5A6B82;
  line-height: 1.55;
  margin: 0;
}

/* ===================== GRID (connected ledger) ===================== */
.nbfcFocusGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: rgba(10, 35, 66, .1);
  border: 1px solid rgba(10, 35, 66, .12);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 6px 26px -14px rgba(10, 35, 66, .18);
}

.nbfcFocusCell {
  position: relative;
  background: #fff;
  padding: 1.85rem 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  min-height: 172px;
  transition: background .3s ease;
}

.nbfcFocusCell:hover {
  background: #F8FBFF;
}

.nbfcFocusCell::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: #0F8A99;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .4s cubic-bezier(.16, 1, .3, 1);
}

.nbfcFocusCell:hover::after {
  transform: scaleX(1);
}

.nbfcFocusTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.nbfcFocusIcon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(22, 182, 194, .1);
  border: 1px solid rgba(15, 138, 153, .22);
  color: #0F8A99;
  transition: background .3s ease, border-color .3s ease, color .3s ease, transform .3s ease;
}

.nbfcFocusIcon svg {
  width: 24px;
  height: 24px;
}

.nbfcFocusCell:hover .nbfcFocusIcon {
  background: #0F8A99;
  border-color: #0F8A99;
  color: #fff;
  transform: translateY(-2px);
}

.nbfcFocusNum {
  font-family: "JetBrains Mono", monospace;
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .05em;
  color: #AEBCD0;
  transition: color .3s ease;
}

.nbfcFocusCell:hover .nbfcFocusNum {
  color: #0F8A99;
}

.nbfcFocusTitle {
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: -.01em;
  color: #0A2342;
  line-height: 1.3;
  margin: 0;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width:860px) {
  .nbfcFocusGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width:520px) {
  .nbfcFocusGrid {
    grid-template-columns: 1fr;
  }

  .nbfcFocusCell {
    min-height: 0;
    padding: 1.5rem 1.4rem;
  }
}

@media (prefers-reduced-motion:reduce) {
  .nbfcFocusSection * {
    transition: none !important;
  }
}


/* ===== KEY THEMES SECTION (self-contained, scoped under .kt-section) ===== */
.kt-card {
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  border: 1px solid rgb(224 219 173);
  border-radius: 30px;
  overflow: hidden;
  padding: clamp(30px, 5vw, 64px) clamp(20px, 4vw, 46px) clamp(26px, 4vw, 44px);
  background: linear-gradient(180deg, #222222 0%, rgba(8, 10, 24, .72) 42%, rgba(8, 10, 24, .92) 100%), var(--kt-photo) center / cover no-repeat, #0F8A99;
  box-shadow: 0 40px 90px -50px rgba(0, 0, 0, .9);
}

.kt-section * {
  box-sizing: border-box
}

/* the big hero card (photo + overlay), like the reference */
.kt-card {
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  border: 1px solid var(--kt-line);
  border-radius: 30px;
  overflow: hidden;
  padding: clamp(30px, 5vw, 64px) clamp(20px, 4vw, 46px) clamp(26px, 4vw, 44px);
  background: linear-gradient(180deg, rgba(8, 10, 24, .88) 0%, rgba(8, 10, 24, .72) 42%, rgba(8, 10, 24, .92) 100%), var(--kt-photo) center / cover no-repeat, #06182F;
  box-shadow: 0 40px 90px -50px rgba(0, 0, 0, .9);
}

.kt-card::before {
  /* soft accent glow behind the headline */
  content: "";
  position: absolute;
  left: 50%;
  top: -12%;
  width: 70%;
  height: 55%;
  transform: translateX(-50%);
  background: radial-gradient(closest-side, rgba(33, 199, 214, .28), transparent 70%);
  pointer-events: none;
}

/* hero text */
.kt-hero {
  position: relative;
  z-index: 1;
  text-align: center;
  max-width: 760px;
  margin: 0 auto
}

.kt-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #fff;
  font-size: clamp(1.9rem, 4.4vw, 3.1rem);
  line-height: .92;
  letter-spacing: -.02em;
  margin: 0;
}

.kt-title {
  font-weight: 900;
  text-transform: uppercase;
  color: #fff;
  font-size: clamp(2.4rem, 7vw, 5rem);
  line-height: .92;
  letter-spacing: -.02em;
  margin: 0;
}

.kt-title span {
  color: var(--kt-accent)
}

.kt-sub {
  color: var(--kt-muted);
  font-size: clamp(.98rem, 1.4vw, 1.12rem);
  font-weight: 500;
  line-height: 1.5;
  margin: 20px auto 0;
  max-width: 44ch
}

.kt-btn {
  display: inline-block;
  margin-top: 28px;
  background: #f6f3d5;
  color: #000000;
  text-decoration: none;
  font-weight: 700;
  font-size: .8rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding: 15px 30px;
  border-radius: 999px;
  box-shadow: 0 14px 32px -12px #0F8A99;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
}

.kt-btn:hover {
  transform: translateY(-2px);
  filter: brightness(1.08);
  box-shadow: 0 18px 40px -12px rgba(33, 199, 214, .95)
}

/* themes panel = frosted glass over the photo, with thin dividers */
.kt-panel {
  position: relative;
  z-index: 1;
  margin-top: clamp(30px, 4vw, 46px);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255, 255, 255, .13);
  /* shows through as 1px divider lines */
  border: 1px solid var(--kt-line);
  border-radius: 22px;
  overflow: hidden;
}

.kt-item {
  background: rgb(8 26 51 / 67%);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  padding: 26px 20px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  transition: background .25s ease;
}

.kt-item:hover {
  background: rgba(22, 30, 62, .72)
}

.kt-idx {
  font-weight: 700;
  font-size: .72rem;
  letter-spacing: .18em;
  color: var(--kt-accent-soft);
  margin-bottom: 12px
}

.kt-ico {
  width: 30px;
  height: 30px;
  color: #fff;
  margin-bottom: 14px;
  transition: color .25s ease, transform .25s ease
}

.kt-item:hover .kt-ico {
  color: var(--kt-accent);
  transform: translateY(-2px)
}

.kt-name {
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25;
  color: #fff;
  margin: 0 0 9px
}

.kt-desc {
  font-weight: 400;
  font-size: .82rem;
  line-height: 1.45;
  color: var(--kt-muted);
  margin: 0
}

@media (max-width:1023px) {
  .kt-panel {
    grid-template-columns: repeat(2, 1fr)
  }
}

@media (max-width:560px) {
  .kt-section {
    padding: 60px 16px 72px
  }

  .kt-panel {
    grid-template-columns: 1fr
  }

  .kt-item {
    padding: 24px 22px
  }
}

@media (prefers-reduced-motion:reduce) {
  .kt-section * {
    transition: none !important
  }
}



/* ===================== SECTION SHELL ===================== */
.nbfcLogoSection {
  position: relative;
  background: #EEF3F8;
  color: #0A2342;
  font-family: "Archivo", sans-serif;
  -webkit-font-smoothing: antialiased;
  padding: clamp(2.6rem, 6vw, 5.5rem) 0;
}

.nbfcLogoSection * {
  box-sizing: border-box;
}

.nbfcLogoHead {
  max-width: 1180px;
  margin: 0 auto clamp(1.8rem, 3.5vw, 2.8rem);
  padding: 0 clamp(1.1rem, 4vw, 3rem);
}

.nbfcLogoEyebrow {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .22em;
  color: #0F8A99;
  text-transform: uppercase;
}

.nbfcLogoEyebrow::before {
  content: "";
  width: 26px;
  height: 2px;
  background: #0F8A99;
}

.nbfcLogoHeading {
  font-size: clamp(1.9rem, 4.4vw, 3.1rem);
  font-weight: 900;
  letter-spacing: -.03em;
  line-height: 1.04;
  margin: 1rem 0 .8rem;
  color: #0A2342;
  font-stretch: 115%;
}

.nbfcLogoHeading span {
  color: #0F8A99;
}

.nbfcLogoSub {
  font-size: clamp(.98rem, 1.4vw, 1.08rem);
  color: #5A6B82;
  line-height: 1.55;
  margin: 0;
  max-width: 54ch;
}

/* ===================== MARQUEE WALL ===================== */
.nbfcLogoWall {
  display: flex;
  flex-direction: column;
  gap: 16px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}

.nbfcLogoRow {
  display: flex;
  gap: 16px;
  width: max-content;
  animation: nbfcLogoScroll 45s linear infinite;
  will-change: transform;
}

.nbfcLogoRow:hover {
  animation-play-state: paused;
}

.nbfcLogoRow:nth-child(1) {
  animation-duration: 44s;
}

.nbfcLogoRow:nth-child(2) {
  animation-duration: 56s;
  animation-direction: reverse;
}

.nbfcLogoRow:nth-child(3) {
  animation-duration: 48s;
}

@keyframes nbfcLogoScroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

.nbfcLogoItem {
  flex: 0 0 auto;
  width: 174px;
  height: 94px;
  background: #fff;
  border: 1px solid rgba(10, 35, 66, .08);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 1.3rem;
  box-shadow: 0 2px 10px -4px rgba(10, 35, 66, .1);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.nbfcLogoItem img {
  max-width: 100%;
  max-height: 48px;
  object-fit: contain;
  display: block;
  filter: none;
  opacity: .6;
  transition: filter .35s ease, opacity .35s ease;
}

.nbfcLogoItem:hover {
  transform: translateY(-4px);
  border-color: rgba(15, 138, 153, .3);
  box-shadow: 0 16px 32px -14px rgba(8, 26, 51, .32);
}

.nbfcLogoItem:hover img {
  filter: none;
  opacity: 1;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width:600px) {
  .nbfcLogoItem {
    width: 138px;
    height: 78px;
    padding: .8rem 1rem;
  }

  .nbfcLogoItem img {
    max-height: 38px;
  }

  .nbfcLogoWall {
    gap: 12px;
  }

  .nbfcLogoRow {
    gap: 12px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .nbfcLogoRow {
    animation: none;
  }

  .nbfcLogoWall {
    overflow-x: auto;
  }

  .nbfcLogoItem img {
    filter: none;
    opacity: 1;
  }
}


/* ===================== SHELL ===================== */
.nbfcVizSection {
  position: relative;
  overflow: hidden;
  background: #06182F;
  color: #EAF2F6;
  font-family: "Archivo", sans-serif;
  -webkit-font-smoothing: antialiased;
  padding: clamp(2.6rem, 6vw, 5.5rem) clamp(1.1rem, 4vw, 3rem);
}

.nbfcVizSection * {
  box-sizing: border-box;
}

.nbfcVizAmbient {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(55% 45% at 85% -5%, rgba(43, 212, 219, .10), transparent 70%), radial-gradient(45% 40% at 5% 105%, rgba(60, 120, 180, .06), transparent 70%);
}

.nbfcVizGridBg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image: linear-gradient(to right, rgba(255, 255, 255, .022) 1px, transparent 1px), linear-gradient(to bottom, rgba(255, 255, 255, .022) 1px, transparent 1px);
  background-size: 72px 72px;
  -webkit-mask-image: radial-gradient(ellipse 120% 90% at 50% 30%, #000 25%, transparent 85%);
  mask-image: radial-gradient(ellipse 120% 90% at 50% 30%, #000 25%, transparent 85%);
}

.nbfcVizInner {
  position: relative;
  z-index: 2;
  max-width: 1240px;
  margin: 0 auto;
}

.nbfcVizHead {
  margin-bottom: clamp(1.9rem, 3.5vw, 2.6rem);
  max-width: 760px;
}

.nbfcVizEyebrow {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  font-family: "JetBrains Mono", monospace;
  font-size: .72rem;
  font-weight: 500;
  letter-spacing: .22em;
  color: #2BD4DB;
  text-transform: uppercase;
}

.nbfcVizEyebrow::before {
  content: "";
  width: 26px;
  height: 1px;
  background: #2BD4DB;
  box-shadow: 0 0 8px rgba(43, 212, 219, .45);
}

.nbfcVizSection {
  position: relative;
  overflow: hidden;
  background: #071A33;
  color: #EAF2F6;
  font-family: "Archivo", sans-serif;
  -webkit-font-smoothing: antialiased;
  padding: clamp(2.6rem, 6vw, 5.5rem) clamp(1.1rem, 4vw, 3rem);
}

.nbfcVizHeading span {
  color: #f6f3d5;
}

/* ===================== CHART FEATURE ROW ===================== */
.nbfcVizFeature {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 1px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 18px;
  overflow: hidden;
  margin-bottom: 1px;
}

.nbfcVizCard {
  background: #00000012;
  padding: clamp(1.6rem, 2.6vw, 2.3rem);
}

/* donut */
.nbfcVizTag {
  font-family: "JetBrains Mono", monospace;
  font-size: .66rem;
  font-weight: 500;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #7E8AA0;
}

.nbfcVizCardTitle {
  font-size: 1.1rem;
  font-weight: 800;
  color: #EAF2F6;
  letter-spacing: -.01em;
  margin: .5rem 0 0;
  line-height: 1.25;
}

.nbfcVizDonutWrap {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-top: 1.4rem;
  flex-wrap: wrap;
}

.nbfcVizDonut {
  position: relative;
  width: 148px;
  height: 148px;
  flex: none;
}

.nbfcVizDonut svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.nbfcVizDonutBg {
  fill: none;
  stroke: rgba(255, 255, 255, .08);
  stroke-width: 14;
}

.nbfcVizDonutArc {
  fill: none;
  stroke: #2BD4DB;
  stroke-width: 14;
  stroke-linecap: round;
  filter: drop-shadow(0 0 8px rgba(43, 212, 219, .45));
}

.nbfcVizDonutCenter {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.nbfcVizDonutPct {
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: -.02em;
  color: #EAF2F6;
  font-stretch: 115%;
  line-height: 1;
}

.nbfcVizLegend {
  display: flex;
  flex-direction: column;
  gap: .7rem;
}

.nbfcVizLegItem {
  display: flex;
  align-items: center;
  gap: .6rem;
  font-size: .88rem;
  color: #BAC6D6;
}

.nbfcVizDot {
  width: 11px;
  height: 11px;
  border-radius: 3px;
  flex: none;
}

.nbfcVizLegItem b {
  color: #EAF2F6;
  font-weight: 700;
}

/* bar chart */
.nbfcVizBars {
  margin-top: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.3rem;
}

.nbfcVizBar .nbfcVizBarHead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: .5rem;
}

.nbfcVizBarName {
  font-size: .92rem;
  font-weight: 600;
  color: #E2E9F0;
}

.nbfcVizBarVal {
  font-family: "JetBrains Mono", monospace;
  font-size: 1.05rem;
  font-weight: 600;
}

.nbfcVizBarTrack {
  height: 13px;
  background: rgba(255, 255, 255, .07);
  border-radius: 99px;
  overflow: hidden;
}

.nbfcVizBarFill {
  height: 100%;
  width: 0;
  border-radius: 99px;
  transition: width 1.4s cubic-bezier(.16, 1, .3, 1);
}

.nbfcVizBarFill.nbfcVizFillHi {
  background: linear-gradient(90deg, #f6f3d5, #f6f3d5);
  box-shadow: 0 0 12px #f6f3d5;
}

.nbfcVizBarFill.nbfcVizFillLo {
  background: rgba(255, 255, 255, .22);
}

.nbfcVizHi {
  color: #f6f3d5;
}

.nbfcVizLo {
  color: #A6B4C6;
}

.nbfcVizBarNote {
  font-size: .82rem;
  color: rgba(234, 242, 246, .6);
  margin: 1.3rem 0 0;
  display: flex;
  align-items: center;
  gap: .5rem;
}

.nbfcVizBarNote svg {
  width: 16px;
  height: 16px;
  color: #2BD4DB;
  flex: none;
}

section.tm-section {
  background: #ffffff;
}

/* ===================== STAT CELLS ===================== */
.nbfcVizStats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 18px;
  overflow: hidden;
}

.nbfcVizStat {
  position: relative;
  background: #071A33b8;
  padding: clamp(1.4rem, 2.2vw, 1.9rem);
  display: flex;
  flex-direction: column;
  min-height: 190px;
  transition: background .4s ease;
}

.nbfcVizStat {
  position: relative;
  background: #0F1317;
  padding: clamp(1.4rem, 2.2vw, 1.9rem);
  display: flex;
  flex-direction: column;
  min-height: 190px;
  transition: background .4s ease;
}

.nbfcVizStat:hover {
  background: #141A1F;
}

.nbfcVizStat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: #2BD4DB;
  box-shadow: 0 0 16px rgba(43, 212, 219, .45);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .5s cubic-bezier(.16, 1, .3, 1);
}

.nbfcVizStat:hover::before {
  transform: scaleX(1);
}

.nbfcVizStatTop {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: auto;
}

.nbfcVizIcon {
  flex: none;
  width: 40px;
  height: 40px;
  border-radius: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(43, 212, 219, .12);
  border: 1px solid rgba(43, 212, 219, .26);
  color: #2BD4DB;
}

.nbfcVizIcon svg {
  width: 20px;
  height: 20px;
}

.nbfcVizNum {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  margin-top: 1.1rem;
  line-height: 1;
}

.nbfcVizPre {
  font-size: 1.4rem;
  font-weight: 800;
  color: #EAF2F6;
  font-stretch: 110%;
}

.nbfcVizCount {
  font-size: clamp(2.1rem, 3.6vw, 2.9rem);
  font-weight: 900;
  letter-spacing: -.03em;
  color: #EAF2F6;
  font-stretch: 115%;
  font-variant-numeric: tabular-nums;
}

.nbfcVizSuf {
  font-size: .82rem;
  font-weight: 600;
  color: #2BD4DB;
  margin-left: .35rem;
}

.nbfcVizLabel {
  font-size: .95rem;
  font-weight: 700;
  color: #EAF2F6;
  margin: .9rem 0 .3rem;
  line-height: 1.25;
}

.nbfcVizDesc {
  font-size: .82rem;
  line-height: 1.5;
  color: rgba(234, 242, 246, .7);
  margin: 0;
}

/* ===================== RESPONSIVE ===================== */
@media (max-width:880px) {
  .nbfcVizFeature {
    grid-template-columns: 1fr;
  }

  .nbfcVizStats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width:520px) {
  .nbfcVizStats {
    grid-template-columns: 1fr;
  }

  .nbfcVizStat {
    min-height: 0;
  }
}

@media (prefers-reduced-motion:reduce) {
  .nbfcVizSection * {
    transition: none !important;
  }

  .nbfcVizStat::before {
    transform: scaleX(1);
  }
}

/* ===== component (everything scoped under .ldr-poster) ===== */
.ldr-poster,
.ldr-poster * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.ldr-poster {
  --ldr-bg-deep: #06122f;
  --ldr-bg-mid: #0c1d4c;
  --ldr-bg-up: #15295f;
  --ldr-cyan: #3fe3ff;
  --ldr-cyan-soft: #86e6ff;
  --ldr-amber: #E6B655;
  --ldr-amber-soft: #F2D9A0;
  --ldr-glass: rgba(255, 255, 255, 0.055);
  --ldr-glass-border: rgba(120, 205, 255, 0.28);
  --ldr-text: #eef6ff;
  --ldr-text-dim: #9db4d6;
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 1180px;
  margin: 0 auto;
  overflow: hidden;
  border-radius: 6px;
  font-family: 'Manrope', sans-serif;
  color: var(--ldr-text);
  isolation: isolate;
  background:
    radial-gradient(120% 80% at 50% -10%, #1b3a82 0%, transparent 55%),
    radial-gradient(90% 60% at 80% 30%, rgba(63, 227, 255, .12) 0%, transparent 50%),
    linear-gradient(180deg, var(--ldr-bg-up) 0%, var(--ldr-bg-mid) 38%, var(--ldr-bg-deep) 70%);
  box-shadow: 0 40px 120px rgba(0, 0, 0, .6);
}


.ldr-poster::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 9;
  opacity: .045;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.ldr-layer {
  position: relative;
  z-index: 2;
}

/* ---- header ---- */
.ldr-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 28px 44px 0;
  animation: ldrfade .7s ease both;
}

.ldr-brand {
  display: flex;
  align-items: center;
  gap: 12px;
}

.ldr-logo {
  width: 46px;
  height: 46px;
  border-radius: 11px;
  display: grid;
  place-items: center;
  background: linear-gradient(145deg, var(--ldr-cyan), #0a7fae);
  box-shadow: 0 0 22px rgba(63, 227, 255, .45);
  color: #04121f;
  font-family: 'Sora';
  font-weight: 800;
  font-size: 22px;
}

.ldr-bname {
  display: block;
  font-family: 'Sora';
  font-weight: 700;
  font-size: 17px;
  letter-spacing: .5px;
  line-height: 1;
}

.ldr-bsub {
  display: block;
  font-size: 10.5px;
  color: var(--ldr-text-dim);
  letter-spacing: 2.4px;
  margin-top: 4px;
  text-transform: uppercase;
}

.ldr-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--ldr-glass-border);
  background: var(--ldr-glass);
  backdrop-filter: blur(6px);
  border-radius: 30px;
  padding: 8px 16px;
  font-family: 'Sora';
  font-weight: 600;
  font-size: 10.5px;
  letter-spacing: 2.2px;
  color: var(--ldr-cyan-soft);
  text-transform: uppercase;
}

.ldr-kdot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ldr-cyan);
  box-shadow: 0 0 8px var(--ldr-cyan);
}

/* ---- headline ---- */
.ldr-head {
  padding: 34px 44px 0;
  text-align: center;
}

.ldr-eyebrow {
  font-family: 'Sora';
  font-weight: 600;
  font-size: 12.5px;
  letter-spacing: 5px;
  color: var(--ldr-cyan);
  text-transform: uppercase;
  margin-bottom: 16px;
  animation: ldrfade .7s .05s ease both;
}

.ldr-title {
  font-family: 'Sora';
  font-weight: 800;
  font-size: 60px;
  line-height: .96;
  letter-spacing: 1px;
  text-transform: uppercase;
  background: linear-gradient(180deg, #fff 0%, #cfe9ff 60%, #8ec9ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 26px rgba(63, 227, 255, .35));
  animation: ldrrise .8s .1s cubic-bezier(.2, .7, .2, 1) both;
}

.ldr-accent {
  background: linear-gradient(180deg, var(--ldr-cyan) 0%, #1aa6d6 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.ldr-sub {
  max-width: 560px;
  margin: 18px auto 0;
  font-size: 15.5px;
  line-height: 1.55;
  color: var(--ldr-text-dim);
  font-weight: 500;
  animation: ldrfade .8s .25s ease both;
  padding-bottom: 32px;
}

.ldr-sub b {
  color: #dcebff;
  font-weight: 700;
}

/* ---- 3D carousel ---- */
.ldr-stage {
  position: relative;
  height: 420px;
  margin-top: 26px;
  perspective: 1700px;
  z-index: 3;
  animation: ldrfade .9s .35s ease both;
}

.ldr-track {
  position: absolute;
  inset: 0;
  transform-style: preserve-3d;
}

.ldr-slide {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 190px;
  height: 288px;
  margin: -144px 0 0 -95px;
  border-radius: 18px;
  overflow: hidden;
  cursor: pointer;
  transform-style: preserve-3d;
  will-change: transform, opacity;
  background: linear-gradient(160deg, #16284e, #0a1530);
  border: 1px solid var(--ldr-glass-border);
  box-shadow: 0 20px 50px rgba(2, 8, 24, .6);
  transition: transform .58s cubic-bezier(.25, .8, .3, 1), opacity .58s ease, filter .58s ease, box-shadow .58s ease, border-color .58s ease;
}

.ldr-ph {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: grid;
  place-items: center;
}

.ldr-ph svg {
  width: 46px;
  height: 46px;
  stroke: rgba(134, 230, 255, .55);
  stroke-width: 1.6;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ldr-slide img {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ldr-shade {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(to top, rgba(4, 9, 24, .95) 0%, rgba(4, 9, 24, .5) 32%, rgba(4, 9, 24, .05) 60%, transparent 100%);
}

.ldr-frame {
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: 18px;
  pointer-events: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), inset 0 0 0 1px rgba(120, 205, 255, .12);
}

.ldr-label {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 4;
  padding: 0 12px 16px;
  text-align: center;
}

.ldr-cardtitle {
  font-family: 'Sora';
  font-weight: 700;
  font-size: 12.5px;
  line-height: 1.18;
  text-transform: uppercase;
  color: #fff;
  letter-spacing: .3px;
  text-shadow: 0 2px 8px rgba(0, 0, 0, .6);
}

.ldr-cardsub {
  font-size: 10px;
  color: var(--ldr-cyan-soft);
  margin-top: 4px;
  font-weight: 600;
  letter-spacing: .4px;
}

.ldr-slide.ldr-active {
  box-shadow: 0 32px 74px rgba(2, 10, 30, .72), 0 0 40px rgba(63, 227, 255, .34);
  border-color: rgba(120, 205, 255, .55);
}

.ldr-slide.ldr-active::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  z-index: 5;
  background: linear-gradient(90deg, transparent, var(--ldr-cyan), transparent);
}

.ldr-slide.ldr-active .ldr-cardtitle {
  font-size: 14px;
}

/* arrows */
.ldr-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 200;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  cursor: pointer;
  background: rgba(10, 22, 48, .55);
  border: 1px solid var(--ldr-glass-border);
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .4), 0 0 18px rgba(63, 227, 255, .15);
  transition: .25s;
}

.ldr-nav:hover {
  background: rgba(63, 227, 255, .16);
  border-color: var(--ldr-cyan);
  box-shadow: 0 0 26px rgba(63, 227, 255, .4);
}

.ldr-nav svg {
  width: 22px;
  height: 22px;
  stroke: var(--ldr-cyan-soft);
  stroke-width: 2.2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ldr-nav-prev {
  left: 14px;
}

.ldr-nav-next {
  right: 14px;
}

/* dots */
.ldr-dots {
  position: relative;
  z-index: 6;
  display: flex;
  justify-content: center;
  gap: 9px;
  margin-top: 18px;
  animation: ldrfade .9s .5s ease both;
}

.ldr-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(134, 230, 255, .3);
  cursor: pointer;
  transition: .3s;
}

.ldr-dot.ldr-on {
  width: 26px;
  border-radius: 6px;
  background: linear-gradient(90deg, var(--ldr-cyan), #1aa6d6);
  box-shadow: 0 0 12px rgba(63, 227, 255, .6);
}

.ldr-hint {
  position: relative;
  z-index: 6;
  text-align: center;
  margin-top: 12px;
  font-family: 'Sora';
  font-weight: 500;
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--ldr-text-dim);
  text-transform: uppercase;
}

.ldr-hint b {
  color: var(--ldr-amber-soft);
  font-weight: 700;
}

/* ---- Chennai skyline ---- */
.ldr-skyline {
  position: absolute;
  left: 0;
  right: 0;
  top: 27px;
  height: auto;
  z-index: 1;
}

.ldr-skyline svg {
  width: 100%;
  height: 100%;
  display: block;
}

.ldr-glow {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 60px;
  height: 140px;
  z-index: 1;
  pointer-events: none;
  background: radial-gradient(120% 90% at 50% 100%, rgba(230, 182, 85, .30), transparent 65%);
}

/* ---- footer ---- */
.ldr-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 44px 20px;
  background: linear-gradient(180deg, rgba(6, 16, 40, 0) 0%, rgba(4, 10, 26, .85) 45%, #04081a 100%);
}

.ldr-fitem {
  display: flex;
  align-items: center;
  gap: 11px;
  font-size: 14.5px;
  font-weight: 600;
  color: #eaf3ff;
}

.ldr-fitem svg {
  width: 18px;
  height: 18px;
  stroke: var(--ldr-cyan);
  stroke-width: 1.9;
  fill: none;
  flex: none;
}

.ldr-pin {
  fill: var(--ldr-cyan);
  stroke: none;
}

.ldr-fdiv {
  width: 1px;
  height: 26px;
  background: rgba(120, 205, 255, .25);
}

@keyframes ldrfade {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes ldrrise {
  from {
    opacity: 0;
    transform: translateY(22px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ===== REACH CLUSTER (self-contained, scoped under .cl-section) ===== */
.cl-section {
  --cl-ink: #15161c;
  --cl-line: #e4e6ec;
  --cl-accent: #D9A93A;
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
  color: var(--cl-ink);
  background: #ffffff;
  padding: 66px 0 44px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
}

.cl-section * {
  box-sizing: border-box
}

.cl-head {
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
  font-size: clamp(2rem, 5.2vw, 3.7rem);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -.02em;
}

.cl-head .cl-num {
  font-weight: 300
}

/* draggable circle strip */
.cl-strip {
  display: flex;
  align-items: center;
  gap: 26px;
  min-height: 400px;
  margin-top: 26px;
  padding: 12px clamp(20px, 5vw, 64px);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  cursor: grab;
}

.cl-strip::-webkit-scrollbar {
  display: none
}

.cl-strip.is-grabbing {
  cursor: grabbing;
  user-select: none
}

.cl-item {
  flex: 0 0 auto;
  position: relative;
  width: var(--s);
  height: var(--s);
  transform: translateY(var(--y, 0px));
}

.cl-circle {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  overflow: hidden;
  background: #eef0f4;
  box-shadow: 0 20px 44px -26px rgba(20, 22, 40, .55);
}

.cl-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
  display: block
}

/* the "View All Speakers" circle */
.cl-ctalink {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  background: #f1f2f5;
  text-decoration: none;
  color: var(--cl-ink);
  text-align: center;
  padding: 14px;
  transition: background .2s ease, transform .2s ease;
}

.cl-ctalink:hover {
  background: #e9eaef
}

.cl-ctalink .cl-star {
  width: 17px;
  height: 17px;
  color: var(--cl-accent)
}

.cl-ctalink span {
  font-weight: 700;
  font-size: .9rem;
  line-height: 1.2
}

/* overlays (allowed to sit outside the circle) */
.cl-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 0;
  background: #111318;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px -10px rgba(0, 0, 0, .65);
  transition: transform .2s ease;
}

.cl-play:hover {
  transform: translate(-50%, -50%) scale(1.09)
}

.cl-play svg {
  width: 18px;
  height: 18px;
  margin-left: 2px;
  fill: #fff
}

.cl-plus {
  position: absolute;
  left: -6px;
  top: 10%;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--cl-line);
  background: #fff;
  color: var(--cl-ink);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  line-height: 1;
  box-shadow: 0 8px 18px -8px rgba(0, 0, 0, .35);
}

.cl-drag {
  position: absolute;
  right: -6px;
  top: 12%;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: #fff;
  border: 1px solid var(--cl-line);
  border-radius: 999px;
  padding: 5px 10px;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #6b7280;
  box-shadow: 0 8px 18px -8px rgba(0, 0, 0, .3);
  pointer-events: none;
}

.cl-drag svg {
  width: 11px;
  height: 11px;
  stroke: #6b7280
}

@media (max-width:640px) {
  .cl-section {
    padding: 48px 0 32px
  }

  .cl-strip {
    min-height: 300px;
    gap: 18px
  }

  .cl-item {
    width: calc(var(--s) * .72);
    height: calc(var(--s) * .72);
    transform: translateY(calc(var(--y) * .66))
  }

  .cl-play {
    width: 44px;
    height: 44px
  }

  .cl-play svg {
    width: 15px;
    height: 15px
  }
}

@media (prefers-reduced-motion:reduce) {
  .cl-section * {
    transition: none !important
  }
}


/* ===== TESTIMONIALS (self-contained, scoped under .tm-section) ===== */
/* ===== TESTIMONIALS (self-contained, scoped under .tm-section) ===== */
.tm-section {
  --tm-ink: #15161c;
  --tm-quote: #23252e;
  --tm-muted: #8b909c;
  --tm-card: #f3f4f7;
  --tm-line: #e4e6ec;
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
  color: var(--tm-ink);
  background: linear-gradient(180deg, #e7e9ef 0%, #f2f3f7 100%);
  padding: 72px 20px;
  -webkit-font-smoothing: antialiased;
}

.tm-section * {
  box-sizing: border-box
}

.tm-wrap {
  max-width: 1160px;
  margin: 0 auto;
  background: #fff;
  border-radius: 30px;
  padding: clamp(22px, 3vw, 40px);
  box-shadow: 0 40px 80px -42px rgba(20, 22, 40, .28);
}

/* carousel */
.tm-track {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  padding-bottom: 4px;
  scrollbar-width: none;
  cursor: grab;
}

.tm-track::-webkit-scrollbar {
  display: none
}

.tm-track.is-grabbing {
  cursor: grabbing;
  user-select: none
}

.tm-card {
  flex: 0 0 auto;
  width: clamp(248px, calc((100% - 54px) / 4), 320px);
  min-height: 328px;
  scroll-snap-align: start;
  background: #10325e;
  border-radius: 20px;
  padding: 26px 24px 24px;
  display: flex;
  flex-direction: column;
  transition: transform .3s ease, box-shadow .3s ease;
}

.tm-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 40px -26px rgba(20, 22, 40, .4)
}

/* one featured card with a soft pastel mesh, like the reference */
.tm-card--featured {
  background: #10325e;
}

.tm-eyebrow {
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #21c7d6;
  margin: 0;
}

.tm-quote {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.45;
  color: #f9faff;
  margin: 14px 0 0;
  letter-spacing: -.005em;
}

.tm-q {
  margin-top: auto;
  align-self: flex-end;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 3.1rem;
  line-height: .4;
  color: #21c7d6;
  padding-top: 18px
}

.tm-person {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 16px
}

.tm-avatar {
  position: relative;
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  overflow: hidden;
  background: #e7e9ef;
  border: 1px solid rgba(0, 0, 0, .05)
}

.tm-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 22%;
  display: block
}

.tm-avatar span {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: .78rem;
  font-weight: 700;
  color: #9aa0ac
}

.tm-name {
  font-size: .92rem;
  font-weight: 700;
  color: #21c7d6;
  margin: 0;
  line-height: 1.2
}

.tm-role {
  font-size: .76rem;
  font-weight: 500;
  color: #fff;
  margin: 2px 0 0;
  line-height: 1.2
}

/* pagination */
.tm-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: 28px
}

.tm-arrow {
  width: 36px;
  height: 36px;
  flex: 0 0 auto;
  border-radius: 50%;
  border: 1px solid var(--tm-line);
  background: #fff;
  color: #6b7280;
  font-size: 1.05rem;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color .2s ease, border-color .2s ease, background .2s ease;
}

.tm-arrow:hover {
  color: var(--tm-ink);
  border-color: #c9ccd4;
  background: #fafbfc
}

.tm-trackwrap {
  width: min(300px, 48%)
}

.tm-count {
  display: block;
  text-align: center;
  font-size: .82rem;
  color: var(--tm-ink);
  margin-bottom: 9px
}

.tm-count b {
  font-weight: 700
}

.tm-count i {
  font-style: normal;
  color: var(--tm-muted)
}

.tm-progress {
  height: 2px;
  background: var(--tm-line);
  border-radius: 2px;
  position: relative;
  overflow: hidden
}

.tm-progress-fill {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 10%;
  background: var(--tm-ink);
  border-radius: 2px;
  transition: width .22s ease
}

@media (max-width:1024px) {
  .tm-card {
    width: clamp(248px, calc((100% - 36px)/3), 320px)
  }
}

@media (max-width:760px) {
  .tm-card {
    width: calc((100% - 18px)/2)
  }
}

@media (max-width:560px) {
  .tm-section {
    padding: 54px 14px
  }

  .tm-card {
    width: 82vw;
    min-height: 300px
  }

  .tm-trackwrap {
    width: 58%
  }
}

@media (prefers-reduced-motion:reduce) {
  .tm-section * {
    transition: none !important
  }
}


/* ===== REACH CLUSTER (self-contained, scoped under .cl-section) ===== */
.cl-section {
  --cl-ink: #15161c;
  --cl-line: #e4e6ec;
  --cl-accent: #D9A93A;
  font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
  color: var(--cl-ink);
  background: #ffffff;
  padding: 0px 0 0px;
  overflow: hidden;
  -webkit-font-smoothing: antialiased;
}

.cl-section * {
  box-sizing: border-box
}

.cl-head {
  text-align: center;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 20px;
  font-size: clamp(2rem, 5.2vw, 3.7rem);
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -.02em;
}

.cl-head .cl-num {
  font-weight: 300
}

/* draggable circle strip */
.cl-strip {
  display: flex;
  align-items: center;
  gap: 26px;
  min-height: 400px;
  margin-top: 26px;
  padding: 12px clamp(20px, 5vw, 64px);
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  cursor: grab;
}

.cl-strip::-webkit-scrollbar {
  display: none
}

.cl-strip.is-grabbing {
  cursor: grabbing;
  user-select: none
}

.cl-item {
  flex: 0 0 auto;
  position: relative;
  width: var(--s);
  height: var(--s);
  transform: translateY(var(--y, 0px));
}

.cl-circle {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  overflow: hidden;
  background: #eef0f4;
  box-shadow: 0 20px 44px -26px rgba(20, 22, 40, .55);
}

.cl-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
  display: block
}

/* the "View All Speakers" circle */
.cl-ctalink {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 7px;
  background: #f1f2f5;
  text-decoration: none;
  color: var(--cl-ink);
  text-align: center;
  padding: 14px;
  transition: background .2s ease, transform .2s ease;
}

.cl-ctalink:hover {
  background: #e9eaef
}

.cl-ctalink .cl-star {
  width: 17px;
  height: 17px;
  color: var(--cl-accent)
}

.cl-ctalink span {
  font-weight: 700;
  font-size: .9rem;
  line-height: 1.2
}

/* overlays (allowed to sit outside the circle) */
.cl-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 0;
  background: #111318;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px -10px rgba(0, 0, 0, .65);
  transition: transform .2s ease;
}

.cl-play:hover {
  transform: translate(-50%, -50%) scale(1.09)
}

.cl-play svg {
  width: 18px;
  height: 18px;
  margin-left: 2px;
  fill: #fff
}

.cl-plus {
  position: absolute;
  left: -6px;
  top: 10%;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1px solid var(--cl-line);
  background: #fff;
  color: var(--cl-ink);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  line-height: 1;
  box-shadow: 0 8px 18px -8px rgba(0, 0, 0, .35);
}

.cl-drag {
  position: absolute;
  right: -6px;
  top: 12%;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: #fff;
  border: 1px solid var(--cl-line);
  border-radius: 999px;
  padding: 5px 10px;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #6b7280;
  box-shadow: 0 8px 18px -8px rgba(0, 0, 0, .3);
  pointer-events: none;
}

.cl-drag svg {
  width: 11px;
  height: 11px;
  stroke: #6b7280
}

@media (max-width:640px) {
  .cl-section {
    padding: 48px 0 32px
  }

  .cl-strip {
    min-height: 300px;
    gap: 18px
  }

  .cl-item {
    width: calc(var(--s) * .72);
    height: calc(var(--s) * .72);
    transform: translateY(calc(var(--y) * .66))
  }

  .cl-play {
    width: 44px;
    height: 44px
  }

  .cl-play svg {
    width: 15px;
    height: 15px
  }
}

@media (prefers-reduced-motion:reduce) {
  .cl-section * {
    transition: none !important
  }
}


/* legacy css */

.leg,
.leg * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.leg {
  --c-deep: #06122f;
  --c-mid: #0c1d4c;
  --c-up: #15295f;
  --cyan: #3fe3ff;
  --cyan-soft: #86e6ff;
  --amber: #E6B655;
  --amber-soft: #F2D9A0;
  --glass: rgba(255, 255, 255, .055);
  --glass-2: rgba(255, 255, 255, .09);
  --gb: rgba(120, 205, 255, .28);
  --text: #eef6ff;
  --dim: #9db4d6;
  position: relative;
  overflow: hidden;
  font-family: 'Manrope', sans-serif;
  color: var(--text);
  padding: 70px 24px 0;
  background:
    radial-gradient(120% 70% at 50% -10%, #1b3a82 0%, transparent 55%),
    radial-gradient(80% 50% at 85% 20%, rgba(63, 227, 255, .12) 0%, transparent 50%),
    linear-gradient(180deg, var(--c-up) 0%, var(--c-mid) 42%, var(--c-deep) 78%);
}

.leg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(rgba(120, 205, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(120, 205, 255, .04) 1px, transparent 1px);
  background-size: 48px 48px;
  -webkit-mask-image: radial-gradient(130% 80% at 50% 12%, #000 30%, transparent 78%);
  mask-image: radial-gradient(130% 80% at 50% 12%, #000 30%, transparent 78%);
}

.leg-wrap {
  position: relative;
  z-index: 2;
  max-width: 1180px;
  margin: 0 auto;
  padding-top: 61px;
}

/* ---- hero ---- */
.leg-eyebrow {
  text-align: center;
  font-family: 'Sora';
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 5px;
  color: var(--cyan);
  text-transform: uppercase;
  margin-bottom: 18px;
  animation: legFade .7s ease both;
}

.leg-title {
  text-align: center;
  font-family: 'Sora';
  font-weight: 800;
  font-size: 58px;
  line-height: 1.02;
  letter-spacing: .5px;
  background: linear-gradient(180deg, #fff 0%, #cfe9ff 55%, #8ec9ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 28px rgba(63, 227, 255, .32));
  animation: legRise .8s .05s cubic-bezier(.2, .7, .2, 1) both;
}

.leg-title span {
  background: linear-gradient(180deg, var(--cyan), #1aa6d6);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.leg-intro {
  max-width: 720px;
  margin: 22px auto 0;
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
  color: var(--dim);
  animation: legFade .8s .2s ease both;
}

.leg-intro b {
  color: #dcebff;
  font-weight: 600;
}

/* ---- stats ---- */
.leg-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 46px;
}

.leg-stat {
  position: relative;
  border: 1px solid var(--gb);
  background: linear-gradient(160deg, var(--glass-2), var(--glass));
  border-radius: 16px;
  padding: 24px 18px;
  text-align: center;
  backdrop-filter: blur(8px);
  overflow: hidden;
  box-shadow: 0 14px 34px rgba(2, 10, 30, .4);
  animation: legRise .7s ease both;
}

.leg-stat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(63, 227, 255, .7), transparent);
}

.leg-stat:nth-child(1) {
  animation-delay: .25s
}

.leg-stat:nth-child(2) {
  animation-delay: .33s
}

.leg-stat:nth-child(3) {
  animation-delay: .41s
}

.leg-stat:nth-child(4) {
  animation-delay: .49s
}

.leg-num {
  font-family: 'Sora';
  font-weight: 800;
  font-size: 46px;
  line-height: 1;
  background: linear-gradient(180deg, #fff, #7fd3ff);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 14px rgba(63, 227, 255, .3));
}

.leg-lbl {
  margin-top: 10px;
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--dim);
  font-weight: 500;
  letter-spacing: .2px;
}

/* ---- timeline feature ---- */
.leg-timeline {
  margin-top: 54px;
}

.leg-headrow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-bottom: 24px;
  animation: legFade .8s .3s ease both;
}

.leg-headrow .ln {
  height: 1px;
  width: 54px;
  background: linear-gradient(90deg, transparent, var(--cyan));
}

.leg-headrow .ln.r {
  background: linear-gradient(90deg, var(--cyan), transparent);
}

.leg-headrow h3 {
  font-family: 'Sora';
  font-weight: 700;
  font-size: 15px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--cyan-soft);
}

.leg-feature {
  position: relative;
  height: 440px;
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid var(--gb);
  background: linear-gradient(160deg, #16284e, #0a1530);
  box-shadow: 0 30px 70px rgba(2, 10, 30, .6), 0 0 40px rgba(63, 227, 255, .12);
  animation: legRise .9s .35s cubic-bezier(.2, .7, .2, 1) both;
}

.leg-stack {
  position: absolute;
  inset: 0;
}

.leg-stack img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: scale(1.08);
  transition: opacity 1s ease;
}

.leg-stack img.leg-on {
  opacity: 1;
  animation: legKen 7s ease-out forwards;
}

.leg-fade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to top, rgba(4, 9, 24, .97) 0%, rgba(4, 9, 24, .55) 40%, rgba(4, 9, 24, .08) 72%, transparent 100%),
    linear-gradient(to right, rgba(4, 9, 24, .72) 0%, rgba(4, 9, 24, .18) 45%, transparent 70%);
}

.leg-fcontent {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 34px 42px 36px;
}

.leg-fyear {
  font-family: 'Sora';
  font-weight: 800;
  font-size: 56px;
  line-height: 1;
  letter-spacing: 1px;
  background: linear-gradient(180deg, var(--cyan), #1aa6d6);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 18px rgba(63, 227, 255, .45));
}

.leg-ftitle {
  font-family: 'Sora';
  font-weight: 700;
  font-size: 25px;
  color: #fff;
  margin-top: 4px;
  letter-spacing: .3px;
}

.leg-fblurb {
  margin-top: 11px;
  max-width: 640px;
  font-size: 15px;
  line-height: 1.55;
  color: #c4d6ef;
}

.leg-fcontent.leg-in {
  animation: legUp .55s ease both;
}

.leg-counter {
  position: absolute;
  top: 20px;
  right: 22px;
  z-index: 3;
  font-family: 'Sora';
  font-weight: 600;
  font-size: 11.5px;
  letter-spacing: 2px;
  color: var(--cyan-soft);
  background: rgba(10, 22, 48, .5);
  border: 1px solid var(--gb);
  border-radius: 30px;
  padding: 7px 14px;
  backdrop-filter: blur(6px);
}

.leg-fnav {
  position: absolute;
  top: 38%;
  transform: translateY(-50%);
  z-index: 3;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  cursor: pointer;
  background: rgba(10, 22, 48, .55);
  border: 1px solid var(--gb);
  backdrop-filter: blur(8px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .4);
  transition: .25s;
}

.leg-fnav:hover {
  background: rgba(63, 227, 255, .16);
  border-color: var(--cyan);
  box-shadow: 0 0 24px rgba(63, 227, 255, .4);
}

.leg-fnav svg {
  width: 20px;
  height: 20px;
  stroke: var(--cyan-soft);
  stroke-width: 2.2;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.leg-prev {
  left: 18px;
}

.leg-next {
  right: 18px;
}

/* ---- year track ---- */
.leg-track {
  position: relative;
  margin: 34px 6px 0;
  padding-top: 8px;
  animation: legFade .9s .5s ease both;
}

.leg-line {
  position: absolute;
  left: 10%;
  right: 10%;
  top: 15px;
  height: 3px;
  border-radius: 3px;
  background: rgba(120, 205, 255, .18);
}

.leg-progress {
  height: 100%;
  width: 0;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--cyan), #1aa6d6);
  box-shadow: 0 0 14px rgba(63, 227, 255, .7);
  transition: width .6s cubic-bezier(.4, .8, .3, 1);
}

.leg-years {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.leg-year {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  background: none;
  border: 0;
  cursor: pointer;
  font-family: inherit;
}

.leg-dot {
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: #0b1d44;
  border: 2px solid rgba(120, 205, 255, .5);
  z-index: 2;
  transition: .35s;
}

.leg-year.leg-done .leg-dot {
  background: var(--cyan);
  border-color: var(--cyan);
}

.leg-year.leg-active .leg-dot {
  background: var(--amber);
  border-color: var(--amber);
  transform: scale(1.3);
  box-shadow: 0 0 0 6px rgba(230, 182, 85, .18), 0 0 20px rgba(230, 182, 85, .8);
}

.leg-yr {
  font-family: 'Sora';
  font-weight: 700;
  font-size: 18px;
  color: var(--dim);
  transition: .3s;
}

.leg-year.leg-active .leg-yr {
  color: #fff;
}

.leg-year.leg-done .leg-yr {
  color: var(--cyan-soft);
}

.leg-cap {
  font-size: 11px;
  line-height: 1.3;
  color: #7d93b5;
  max-width: 130px;
  text-align: center;
  transition: .3s;
}

.leg-year.leg-active .leg-cap {
  color: var(--cyan-soft);
}

/* ---- skyline sign-off ---- */
.leg-sky {
  position: relative;
  z-index: 1;
  /* margin-top: 48px; */
  top: -259px;
  height: 356px;
  padding: 0px;
}

section.leg {
  padding: 0px;
}

.leg-sky svg {
  width: 100%;
  height: 100%;
  display: block;
}

.leg-foot {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 20px 6px 26px;
  border-top: 1px solid rgba(120, 205, 255, .12);
  margin-top: -2px;
}

.leg-fitem {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 600;
  color: #dcebff;
}

.leg-fitem svg {
  width: 17px;
  height: 17px;
  stroke: var(--cyan);
  stroke-width: 1.9;
  fill: none;
}

.leg-fitem .pin {
  fill: var(--cyan);
  stroke: none;
}

.leg-brandmini {
  font-family: 'Sora';
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 2px;
  color: var(--cyan-soft);
  text-transform: uppercase;
}

@keyframes legFade {
  from {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

@keyframes legRise {
  from {
    opacity: 0;
    transform: translateY(24px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

@keyframes legUp {
  from {
    opacity: 0;
    transform: translateY(16px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

@keyframes legKen {
  from {
    transform: scale(1.14)
  }

  to {
    transform: scale(1.0)
  }
}

@media(max-width:780px) {
  .leg {
    padding: 48px 16px 0;
  }

  .leg-sky {
    position: relative;
    z-index: 1;
    /* margin-top: 48px; */
    top: -259px;
    height: 103px !important;
    padding: 0px;
  }

  .tm-wrap {
    max-width: 100% !important;
    margin: 0 auto;
    background: #fff;
    border-radius: 30px;
    padding: clamp(2px, 0vw, 40px) !important;
    box-shadow: 0 40px 80px -42px rgba(20, 22, 40, .28);
  }

  .leg-title {
    font-size: 38px;
  }

  .leg-stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .leg-num {
    font-size: 36px;
  }

  .leg-feature {
    height: 380px;
  }

  .leg-fyear {
    font-size: 42px;
  }

  .leg-ftitle {
    font-size: 20px;
  }

  .leg-fblurb {
    font-size: 13.5px;
  }

  .leg-cap {
    display: none;
  }

  .leg-line {
    left: 8%;
    right: 8%;
  }
}

.ven,
.ven * {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.ven {
  --cyan: #3fe3ff;
  --cyan-soft: #86e6ff;
  --amber: #E6B655;
  --amber-soft: #F2D9A0;
  --glass: rgba(255, 255, 255, .055);
  --glass-2: rgba(255, 255, 255, .09);
  --gb: rgba(120, 205, 255, .28);
  --text: #eef6ff;
  --dim: #9db4d6;
  position: relative;
  overflow: hidden;
  font-family: 'Manrope', sans-serif;
  color: var(--text);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 38px 26px;
  background:
    radial-gradient(120% 70% at 50% -10%, #1b3a82 0%, transparent 55%),
    radial-gradient(80% 50% at 12% 16%, rgba(63, 227, 255, .12) 0%, transparent 50%),
    linear-gradient(180deg, #15295f 0%, #0c1d4c 46%, #06122f 84%);
}

.ven::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(rgba(120, 205, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(120, 205, 255, .04) 1px, transparent 1px);
  background-size: 46px 46px;
  -webkit-mask-image: radial-gradient(130% 90% at 50% 14%, #000 32%, transparent 80%);
  mask-image: radial-gradient(130% 90% at 50% 14%, #000 32%, transparent 80%);
}

.ven-wrap {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* compact header */
.ven-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 18px;
  flex-wrap: wrap;
  animation: venFade .7s ease both;
}

.ven-htext {
  min-width: 0;
}

.ven-eyebrow {
  font-family: 'Sora';
  font-weight: 600;
  font-size: 11.5px;
  letter-spacing: 4.5px;
  color: var(--cyan);
  text-transform: uppercase;
  margin-bottom: 9px;
}

.ven-title {
  font-family: 'Sora';
  font-weight: 800;
  font-size: clamp(30px, 4.4vw, 46px);
  line-height: 1;
  letter-spacing: .5px;
  background: linear-gradient(180deg, #fff, #9fd2ff);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 0 24px rgba(63, 227, 255, .3));
}

.ven-title span {
  background: linear-gradient(180deg, var(--cyan), #1aa6d6);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.ven-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(230, 182, 85, .13);
  border: 1px solid rgba(230, 182, 85, .5);
  color: var(--amber-soft);
  font-family: 'Sora';
  font-weight: 600;
  font-size: 12px;
  letter-spacing: .4px;
  padding: 8px 14px;
  border-radius: 30px;
  white-space: nowrap;
}

.ven-badge svg {
  width: 14px;
  height: 14px;
  fill: var(--amber);
}

/* the single row */
.ven-row {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 18px;
  height: clamp(330px, 52vh, 480px);
  animation: venRise .8s .12s cubic-bezier(.2, .7, .2, 1) both;
}

.ven-card {
  position: relative;
  border: 1px solid var(--gb);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 24px 56px rgba(2, 10, 30, .5);
  background: linear-gradient(160deg, #16284e, #0a1530);
}

/* left: photo */
.ven-photo img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  animation: venKen 18s ease-out forwards;
}

.ven-photo .fade {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(4, 9, 24, .96) 0%, rgba(4, 9, 24, .4) 48%, rgba(4, 9, 24, .04) 80%, transparent 100%);
}

.ven-photo .body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 24px 26px;
}

.ven-photo h2 {
  font-family: 'Sora';
  font-weight: 800;
  font-size: 30px;
  color: #fff;
  line-height: 1;
  letter-spacing: .3px;
}

.ven-photo .loc {
  margin-top: 7px;
  font-size: 12.5px;
  color: var(--cyan-soft);
  font-weight: 600;
  letter-spacing: 1.4px;
  text-transform: uppercase;
}

.ven-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 15px;
}

.ven-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(10, 22, 48, .5);
  border: 1px solid var(--gb);
  border-radius: 30px;
  padding: 7px 12px;
  font-size: 11.5px;
  font-weight: 600;
  color: #dcebff;
  backdrop-filter: blur(4px);
}

.ven-chip svg {
  width: 14px;
  height: 14px;
  stroke: var(--cyan);
  stroke-width: 1.9;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* right: map + info */
.ven-side {
  display: flex;
  flex-direction: column;
}

.ven-map {
  position: relative;
  flex: 1;
  min-height: 0;
  background: radial-gradient(circle at 50% 42%, rgba(63, 227, 255, .12), transparent 60%), linear-gradient(160deg, #0e1d40, #081124);
}

.ven-map .ph {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  color: #6f86a8;
}

.ven-map .ph svg {
  width: 36px;
  height: 36px;
  stroke: rgba(134, 230, 255, .5);
  stroke-width: 1.6;
  fill: none;
}

.ven-map .ph span {
  font-family: 'Sora';
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.ven-map iframe {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  filter: saturate(1.05);
}

.ven-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 18px;
  background: rgba(6, 14, 34, .85);
  border-top: 1px solid rgba(120, 205, 255, .16);
  backdrop-filter: blur(6px);
}

.ven-meta {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.ven-line {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 12.5px;
  color: #dbe9ff;
  font-weight: 600;
}

.ven-line svg {
  width: 15px;
  height: 15px;
  stroke: var(--cyan);
  stroke-width: 1.9;
  fill: none;
  flex: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ven-line .pin {
  fill: var(--cyan);
  stroke: none;
}

.ven-btn {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  font-family: 'Sora';
  font-weight: 700;
  font-size: 13px;
  letter-spacing: .4px;
  padding: 12px 18px;
  border-radius: 11px;
  color: #04121f;
  background: linear-gradient(135deg, var(--cyan), #1aa6d6);
  box-shadow: 0 10px 24px rgba(63, 227, 255, .3);
  transition: .25s;
  white-space: nowrap;
}

.ven-btn:hover {
  box-shadow: 0 0 28px rgba(63, 227, 255, .55);
  transform: translateY(-1px);
}

.ven-btn svg {
  width: 15px;
  height: 15px;
  stroke: currentColor;
  stroke-width: 2.3;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@keyframes venFade {
  from {
    opacity: 0
  }

  to {
    opacity: 1
  }
}

@keyframes venRise {
  from {
    opacity: 0;
    transform: translateY(22px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

@keyframes venKen {
  from {
    transform: scale(1.12)
  }

  to {
    transform: scale(1)
  }
}

@media(max-width:860px) {
  .ven {
    min-height: 0;
    padding: 34px 16px;
  }

  .ven-row {
    grid-template-columns: 1fr;
    height: auto;
  }

  .ven-photo {
    height: 300px;
  }

  .ven-map {
    height: 300px;
  }

  .ven-bar {
    flex-wrap: wrap;
  }
}

/* ========================================================================
   GLOBAL TYPOGRAPHY UNIFICATION
   - Whole site uses a single font: Archivo
   - Paragraphs use a separate body font (Sora) at one fixed size (18px)
   - All main section headings share the same size
   ======================================================================== */
*,
*::before,
*::after {
  font-family: 'Archivo', system-ui, -apple-system, sans-serif !important;
}

/* paragraphs: separate font + one uniform size */
p {
  font-family: 'Sora', system-ui, -apple-system, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.65 !important;
}

/* all main section headings: same size */
h1,
h2,
.headline,
.title,
.nbfcAboutTitle,
.nbfcXHeading,
.nbfcFocusHeading,
.nbfcLogoHeading,
.nbfcVizHeading,
.spk-title,
.kt-title,
.cl-head,
.ldr-title,
.leg-title,
.ven-title {
  font-size: clamp(1.9rem, 4.4vw, 3.2rem) !important;
  line-height: 1.1 !important;
}

a#readMoreBtn {
  display: inline-block;
  margin-top: 30px;
  background: #0F8A99;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .07em;
  text-transform: uppercase;
  padding: 15px 28px !important;
  border-radius: 12px;
  box-shadow: 0 12px 30px -10px rgba(33, 199, 214, .7);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
  animation: spk-rise .7s .2s both;
}


#nbxFooter {
  --nbx-ink: #0a090e;
  --nbx-ink2: #100e15;
  --nbx-panel: #14111b;
  --nbx-cream: #f4efe6;
  --nbx-mut: #9a93a5;
  --nbx-line: rgba(244, 239, 230, .13);
  --nbx-gold: #d6a94c;
  --nbx-gold2: #f0ce84;
  --nbx-gold-deep: #8f6b22;
  --nbx-ease: cubic-bezier(.22, .8, .24, 1);

  all: unset;
  display: block !important;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  width: 100%;
  background: var(--nbx-ink) !important;
  color: var(--nbx-cream) !important;
  font-family: 'Archivo', sans-serif !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  text-align: left;
  -webkit-font-smoothing: antialiased;
}

/* Hard reset inside the footer — beats theme element styles */
#nbxFooter *,
#nbxFooter *::before,
#nbxFooter *::after {
  box-sizing: border-box !important
}

#nbxFooter div,
#nbxFooter section,
#nbxFooter aside,
#nbxFooter nav,
#nbxFooter ul,
#nbxFooter li,
#nbxFooter h2,
#nbxFooter p,
#nbxFooter span,
#nbxFooter small,
#nbxFooter button,
#nbxFooter a,
#nbxFooter hr,
#nbxFooter b,
#nbxFooter i,
#nbxFooter em,
#nbxFooter strong,
#nbxFooter sup {
  margin: 0 !important;
  padding: 0 !important;
  border: 0;
  background: none;
  float: none !important;
  text-shadow: none !important;
  box-shadow: none;
}

#nbxFooter ul {
  list-style: none !important
}

#nbxFooter li::before,
#nbxFooter li::marker {
  content: none
}

#nbxFooter a {
  color: inherit !important;
  text-decoration: none !important;
  cursor: pointer
}

#nbxFooter a:hover,
#nbxFooter a:focus {
  text-decoration: none !important;
  outline: none
}

#nbxFooter img,
#nbxFooter svg {
  display: block;
  max-width: none
}

#nbxFooter ::selection {
  background: var(--nbx-gold);
  color: var(--nbx-ink)
}

#nbxFooter :focus-visible {
  outline: 2px solid var(--nbx-gold) !important;
  outline-offset: 3px
}

/* Atmosphere: gold aurora + film grain */
#nbxFooter::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(900px 520px at 12% -8%, rgba(214, 169, 76, .16), transparent 62%),
    radial-gradient(760px 480px at 96% 112%, rgba(214, 169, 76, .10), transparent 60%);
}

#nbxFooter::after {
  content: "";
  position: absolute;
  inset: -50%;
  pointer-events: none;
  z-index: 1;
  opacity: .05;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation: nbxGrain 9s steps(8) infinite;
}

@keyframes nbxGrain {

  0%,
  100% {
    transform: translate(0, 0)
  }

  20% {
    transform: translate(-2%, 3%)
  }

  40% {
    transform: translate(3%, -2%)
  }

  60% {
    transform: translate(-3%, -3%)
  }

  80% {
    transform: translate(2%, 2%)
  }
}

#nbxFooter>* {
  position: relative;
  z-index: 2
}

/* THE LAYOUT BACKBONE — fully armored */
#nbxFooter .nbx-shell {
  display: block !important;
  width: 100% !important;
  max-width: 93% !important;
  margin: 0 auto !important;
  padding-left: clamp(20px, 4vw, 48px) !important;
  padding-right: clamp(20px, 4vw, 48px) !important;
}

/* Micro-labels (mono) */
#nbxFooter .nbx-tag {
  display: inline-block;
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  color: var(--nbx-mut) !important;
  line-height: 1.6 !important;
}

#nbxFooter .nbx-tag b {
  color: var(--nbx-gold) !important;
  font-weight: 500 !important
}

/* Scroll reveals */
#nbxFooter .nbx-rev {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .9s var(--nbx-ease), transform .9s var(--nbx-ease)
}

#nbxFooter .nbx-rev.nbx-in {
  opacity: 1;
  transform: none
}

#nbxFooter .nbx-d1 {
  transition-delay: .08s
}

#nbxFooter .nbx-d2 {
  transition-delay: .16s
}

#nbxFooter .nbx-d3 {
  transition-delay: .24s
}

#nbxFooter .nbx-d4 {
  transition-delay: .32s
}

/* ------------------------------------------------------------
  1 · DELEGATE PASS
------------------------------------------------------------ */
#nbxFooter .nbx-pass-wrap {
  padding-top: clamp(64px, 8vw, 110px) !important;
  padding-bottom: clamp(56px, 7vw, 96px) !important
}

#nbxFooter .nbx-pass {
  display: grid !important;
  grid-template-columns: 1fr 290px;
  background: var(--nbx-cream) !important;
  color: #16131c !important;
  border-radius: 18px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .55), 0 2px 0 rgba(244, 239, 230, .06);
  transform: rotate(-.4deg);
  transition: transform .7s var(--nbx-ease), box-shadow .7s var(--nbx-ease);
}

#nbxFooter .nbx-pass:hover {
  transform: rotate(0deg) translateY(-5px);
  box-shadow: 0 44px 110px rgba(0, 0, 0, .6)
}

#nbxFooter .nbx-pass-main {
  padding: clamp(30px, 4.4vw, 54px) clamp(26px, 4.4vw, 58px) !important
}

#nbxFooter .nbx-pass-eyebrow {
  display: flex !important;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px !important
}

#nbxFooter .nbx-pass-eyebrow .nbx-tag {
  color: #6f6878 !important
}

#nbxFooter .nbx-pass-eyebrow i {
  flex: 0 0 36px;
  height: 1px;
  background: #16131c !important;
  opacity: .35
}

#nbxFooter .nbx-pass h2 {
  display: block !important;
  font-family: 'Fraunces', serif !important;
  font-weight: 640 !important;
  font-size: clamp(28px, 3.6vw, 48px) !important;
  line-height: 1.04 !important;
  letter-spacing: -.015em !important;
  color: #16131c !important;
  max-width: 14ch !important;
  text-transform: none !important;
}

#nbxFooter .nbx-pass h2 em {
  font-style: italic !important;
  font-weight: 500 !important;
  color: var(--nbx-gold-deep) !important;
  font-family: 'Fraunces', serif !important
}

#nbxFooter .nbx-pass-meta {
  display: flex !important;
  flex-wrap: wrap;
  gap: clamp(18px, 3vw, 44px);
  margin: 26px 0 30px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(22, 19, 28, .16) !important;
}

#nbxFooter .nbx-pass-meta .nbx-tag {
  display: block !important;
  color: #857d90 !important;
  margin-bottom: 7px !important
}

#nbxFooter .nbx-pass-meta strong {
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: .06em !important;
  color: #16131c !important
}

#nbxFooter .nbx-cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  background: #16131c !important;
  color: var(--nbx-cream) !important;
  border-radius: 999px !important;
  padding: 15px 12px 15px 26px !important;
  font-family: 'Archivo', sans-serif !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  transition: color .45s var(--nbx-ease);
}

#nbxFooter .nbx-cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(110deg, var(--nbx-gold-deep), var(--nbx-gold) 50%, var(--nbx-gold2));
  transform: translateX(-101%);
  transition: transform .55s var(--nbx-ease);
}

#nbxFooter .nbx-cta:hover {
  color: #16131c !important
}

#nbxFooter .nbx-cta:hover::before {
  transform: translateX(0)
}

#nbxFooter .nbx-cta span {
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: grid !important;
  place-items: center;
  background: var(--nbx-gold) !important;
  color: #16131c !important;
  font-size: 16px !important;
  transition: transform .45s var(--nbx-ease), background .45s var(--nbx-ease), color .45s var(--nbx-ease);
}

#nbxFooter .nbx-cta:hover span {
  transform: translateX(4px);
  background: #16131c !important;
  color: var(--nbx-gold2) !important
}

/* Stub + perforation */
#nbxFooter .nbx-pass-stub {
  border-left: 2px dashed rgba(22, 19, 28, .32) !important;
  position: relative;
  display: flex !important;
  flex-direction: column;
  justify-content: space-between;
  gap: 18px;
  padding: clamp(26px, 3vw, 38px) clamp(22px, 2.6vw, 30px) !important;
  background: radial-gradient(circle at 50% 0, rgba(214, 169, 76, .22), transparent 58%), var(--nbx-cream) !important;
  border-radius: 0 18px 18px 0;
}

#nbxFooter .nbx-pass-stub::before,
#nbxFooter .nbx-pass-stub::after {
  content: "";
  position: absolute;
  left: -13px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--nbx-ink);
  box-shadow: inset 0 2px 5px rgba(0, 0, 0, .5);
}

#nbxFooter .nbx-pass-stub::before {
  top: -12px
}

#nbxFooter .nbx-pass-stub::after {
  bottom: -12px
}

#nbxFooter .nbx-stub-top {
  display: flex !important;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px
}

#nbxFooter .nbx-stub-top .nbx-tag {
  color: #857d90 !important
}

#nbxFooter .nbx-stub-seal {
  font-family: 'Fraunces', serif !important;
  font-style: italic !important;
  font-weight: 640 !important;
  font-size: 15px !important;
  color: var(--nbx-gold-deep) !important;
  border: 1px solid var(--nbx-gold-deep) !important;
  border-radius: 999px;
  padding: 5px 12px !important;
  transform: rotate(6deg);
  white-space: nowrap;
}

#nbxFooter .nbx-stub-city {
  font-family: 'Fraunces', serif !important;
  font-weight: 640 !important;
  font-size: clamp(26px, 2.4vw, 34px) !important;
  line-height: 1 !important;
  letter-spacing: -.01em !important;
  color: #16131c !important;
}

#nbxFooter .nbx-stub-city em {
  font-style: italic !important;
  color: var(--nbx-gold-deep) !important
}

#nbxFooter .nbx-barcode {
  width: 100%;
  height: 54px;
  color: #16131c
}

#nbxFooter .nbx-stub-no {
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 11px !important;
  letter-spacing: .3em !important;
  color: #857d90 !important;
  text-transform: uppercase !important;
}

/* ------------------------------------------------------------
  2 · MARQUEE
------------------------------------------------------------ */
#nbxFooter .nbx-marquee {
  border-top: 1px solid var(--nbx-line) !important;
  border-bottom: 1px solid var(--nbx-line) !important;
  background: linear-gradient(180deg, rgba(214, 169, 76, .07), rgba(214, 169, 76, .02)) !important;
  overflow: hidden;
  white-space: nowrap;
  width: 100%;
}

#nbxFooter .nbx-marquee-track {
  display: inline-flex !important;
  animation: nbxScroll 30s linear infinite;
  will-change: transform
}

#nbxFooter .nbx-marquee:hover .nbx-marquee-track {
  animation-play-state: paused
}

#nbxFooter .nbx-marquee-seq {
  display: inline-flex !important;
  align-items: center;
  padding: 16px 0 !important
}

#nbxFooter .nbx-marquee-seq span {
  display: inline-block;
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  letter-spacing: .26em !important;
  text-transform: uppercase !important;
  color: var(--nbx-cream) !important;
}

#nbxFooter .nbx-marquee-seq i {
  display: inline-block;
  font-style: normal !important;
  color: var(--nbx-gold) !important;
  font-size: 13px !important;
  margin: 0 26px !important;
}

@keyframes nbxScroll {
  to {
    transform: translateX(-50%)
  }
}

/* ------------------------------------------------------------
  3 · MAIN GRID
------------------------------------------------------------ */
#nbxFooter .nbx-grid {
  display: grid !important;
  grid-template-columns: 3.35fr 1.7fr 1.7fr 2.8fr 0.15fr;
  gap: clamp(28px, 4vw, 0px);
  padding-top: clamp(56px, 7vw, 92px) !important;
  padding-bottom: clamp(40px, 5vw, 0px) !important;
}

#nbxFooter .nbx-logo {
  font-family: 'Fraunces', serif !important;
  font-weight: 640 !important;
  font-size: 30px !important;
  letter-spacing: -.02em !important;
  line-height: 1 !important;
  color: var(--nbx-cream) !important;
  display: inline-flex !important;
  align-items: baseline;
  gap: 2px;
}

#nbxFooter .nbx-logo b {
  color: var(--nbx-gold) !important;
  font-weight: 640 !important;
  font-family: 'Fraunces', serif !important
}

#nbxFooter .nbx-logo sup {
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 10px !important;
  letter-spacing: .18em !important;
  color: var(--nbx-mut) !important;
  margin-left: 8px !important;
}

#nbxFooter .nbx-brand p {
  color: var(--nbx-mut) !important;
  font-size: 14.5px !important;
  line-height: 1.6 !important;
  max-width: 36ch !important;
  margin: 18px 0 24px !important;
  font-family: 'Archivo', sans-serif !important;
}

#nbxFooter .nbx-brand p b {
  color: var(--nbx-cream) !important;
  font-weight: 500 !important
}

#nbxFooter .nbx-mail {
  display: inline-block;
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 13px !important;
  letter-spacing: .08em !important;
  color: var(--nbx-cream) !important;
  border-bottom: 1px solid var(--nbx-gold-deep) !important;
  padding-bottom: 3px !important;
  transition: color .3s, border-color .3s;
}

#nbxFooter .nbx-mail:hover {
  color: var(--nbx-gold2) !important;
  border-color: var(--nbx-gold2) !important
}

#nbxFooter .nbx-socials {
  display: flex !important;
  gap: 10px;
  margin-top: 26px !important
}

#nbxFooter .nbx-socials a {
  width: 40px;
  height: 40px;
  border: 1px solid var(--nbx-line) !important;
  border-radius: 50% !important;
  display: grid !important;
  place-items: center;
  color: var(--nbx-mut) !important;
  background: transparent !important;
  transition: all .4s var(--nbx-ease);
}

#nbxFooter .nbx-socials a:hover {
  background: var(--nbx-gold) !important;
  border-color: var(--nbx-gold) !important;
  color: var(--nbx-ink) !important;
  transform: translateY(-3px) rotate(-6deg);
}

#nbxFooter .nbx-socials svg {
  width: 15px;
  height: 15px;
  fill: currentColor
}

#nbxFooter .nbx-col>.nbx-tag {
  display: block !important;
  margin-bottom: 20px !important;
}

#nbxFooter .nbx-col li+li {
  margin-top: 12px !important;
}

#nbxFooter .nbx-col a {
  position: relative;
  display: inline-block !important;
  font-family: 'Archivo', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  color: #ffffff !important;
  line-height: 1.5 !important;
  transition: color .35s var(--nbx-ease), transform .35s var(--nbx-ease);
}

#nbxFooter .nbx-col a::before {
  content: "✦";
  position: absolute;
  left: -16px;
  top: 1px;
  font-size: 9px;
  color: var(--nbx-gold);
  opacity: 0;
  transform: translateX(-6px) rotate(-90deg);
  transition: all .35s var(--nbx-ease);
}

#nbxFooter .nbx-col a:hover {
  color: var(--nbx-cream) !important;
  transform: translateX(16px)
}

#nbxFooter .nbx-col a:hover::before {
  opacity: 1;
  transform: none
}

/* Departure board */
#nbxFooter .nbx-board {
  border: 1px solid var(--nbx-line) !important;
  border-radius: 16px;
  background: linear-gradient(160deg, #06125a, #01443e) !important;
  padding: 24px 24px 22px !important;
  box-shadow: inset 0 1px 0 rgba(244, 239, 230, .06);
}

#nbxFooter .nbx-board-head {

  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px !important
}

.cont h4 {
  font-size: 15px;
}

.cont h5 {
  font-size: 18px;
  line-height: 27px;
}

#nbxFooter .nbx-live {
  display: inline-flex !important;
  align-items: center;
  gap: 7px;
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 10px !important;
  letter-spacing: .22em !important;
  color: var(--nbx-gold) !important;
}

#nbxFooter .nbx-live i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--nbx-gold) !important;
  animation: nbxPulse 1.6s ease infinite
}

@keyframes nbxPulse {

  0%,
  100% {
    opacity: 1;
    box-shadow: 0 0 0 0 rgba(214, 169, 76, .5)
  }

  50% {
    opacity: .55;
    box-shadow: 0 0 0 6px rgba(214, 169, 76, 0)
  }
}

#nbxFooter .nbx-clock {
  font-family: 'Spline Sans Mono', monospace !important;
  font-variant-numeric: tabular-nums;
  font-size: clamp(30px, 2.6vw, 38px) !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  color: var(--nbx-cream) !important;
  line-height: 1 !important;
}

#nbxFooter .nbx-clock i {
  font-style: normal !important;
  color: var(--nbx-gold) !important;
  animation: nbxBlink 1s steps(2) infinite
}

@keyframes nbxBlink {
  50% {
    opacity: .15
  }
}

#nbxFooter .nbx-board hr {
  border: 0;
  border-top: 1px dashed var(--nbx-line) !important;
  margin: 20px 0 16px !important;
  height: 0
}

#nbxFooter .nbx-count {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-top: 12px !important
}

#nbxFooter .nbx-cell {
  border: 1px solid var(--nbx-line) !important;
  border-radius: 10px;
  background: rgba(10, 9, 14, .5) !important;
  padding: 10px 6px 8px !important;
  text-align: center !important;
}

#nbxFooter .nbx-cell b {
  display: block !important;
  font-family: 'Spline Sans Mono', monospace !important;
  font-variant-numeric: tabular-nums;
  font-size: clamp(20px, 1.8vw, 26px) !important;
  font-weight: 500 !important;
  color: var(--nbx-gold2) !important;
  line-height: 1 !important;
}

#nbxFooter .nbx-cell span {
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 9px !important;
  letter-spacing: .2em !important;
  color: var(--nbx-mut) !important;
  text-transform: uppercase !important;
}

#nbxFooter .nbx-venue {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: 18px !important
}

#nbxFooter .nbx-venue p {
  font-size: 13px !important;
  color: var(--nbx-mut) !important;
  line-height: 1.45 !important;
  font-family: 'Archivo', sans-serif !important
}

#nbxFooter .nbx-venue p b {
  display: block !important;
  color: var(--nbx-cream) !important;
  font-weight: 500 !important
}

#nbxFooter .nbx-dir {
  flex: 0 0 auto;
  display: inline-block !important;
  font-family: 'Spline Sans Mono', monospace !important;
  font-size: 10.5px !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
  color: var(--nbx-gold) !important;
  border: 1px solid var(--nbx-gold-deep) !important;
  border-radius: 999px !important;
  padding: 9px 14px !important;
  transition: all .35s var(--nbx-ease);
  white-space: nowrap;
}

#nbxFooter .nbx-dir:hover {
  background: var(--nbx-gold) !important;
  color: var(--nbx-ink) !important;
  border-color: var(--nbx-gold) !important
}

/* ------------------------------------------------------------
  4 · GIANT KINETIC TYPE — auto gold-fills on scroll, sheen loops
------------------------------------------------------------ */
#nbxFooter .nbx-giant {
  padding-top: clamp(8px, 2vw, 24px) !important;
  text-align: center !important;
  user-select: none;
  overflow: hidden;
  width: 100%
}

#nbxFooter .nbx-giant>.nbx-tag {
  display: inline-flex !important;
  align-items: center;
  gap: 14px;
  margin-bottom: 6px !important
}

#nbxFooter .nbx-giant>.nbx-tag::before,
#nbxFooter .nbx-giant>.nbx-tag::after {
  content: "";
  width: 44px;
  height: 1px;
  background: var(--nbx-line)
}

#nbxFooter .nbx-giant-word {
  position: relative;
  display: table !important;
  margin: 10px auto 0 !important;
  text-align: left !important;
  font-family: 'Fraunces', serif !important;
  font-weight: 640 !important;
  font-size: clamp(60px, 13.5vw, 210px) !important;
  line-height: .9 !important;
  letter-spacing: -.03em !important;
  white-space: nowrap;
  color: transparent !important;
  -webkit-text-stroke: 1.5px rgba(244, 239, 230, .28);
  padding-bottom: .06em !important;
  max-width: 100%;
}

#nbxFooter .nbx-giant-word::after {
  content: attr(data-word);
  position: absolute;
  inset: 0;
  -webkit-text-stroke: 0;
  background: linear-gradient(105deg, var(--nbx-gold-deep) 0%, var(--nbx-gold) 38%, var(--nbx-gold2) 55%, var(--nbx-gold) 72%, var(--nbx-gold-deep) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  clip-path: inset(0 100% -12% 0);
  transition: clip-path 1.6s var(--nbx-ease) .25s;
  animation: nbxSheen 6s linear infinite;
}

#nbxFooter .nbx-giant-word.nbx-filled::after,
#nbxFooter .nbx-giant-word:hover::after {
  clip-path: inset(0 0% -12% 0)
}

@keyframes nbxSheen {
  to {
    background-position: 200% 0
  }
}

#nbxFooter .nbx-giant-word em {
  font-style: italic !important;
  font-weight: 500 !important;
  font-family: 'Fraunces', serif !important;
  -webkit-text-stroke: 0;
  color: var(--nbx-gold) !important;
  font-size: .42em !important;
  vertical-align: .62em;
  margin-left: .04em !important;
  letter-spacing: 0 !important;
}

#nbxFooter .nbx-credit {
  display: block !important;
  text-align: center !important;
  font-family: 'Fraunces', serif !important;
  font-style: italic !important;
  font-size: 14px !important;
  color: var(--nbx-mut) !important;
  margin: 18px auto 0 !important;
  opacity: .9;
}

#nbxFooter .nbx-credit b {
  color: var(--nbx-gold) !important;
  font-weight: 500 !important;
  font-family: 'Fraunces', serif !important
}

/* ------------------------------------------------------------
  5 · BOTTOM BAR — badge now lives IN the bar (no overlap possible)
------------------------------------------------------------ */
#nbxFooter .nbx-bottom {
  border-top: 1px solid var(--nbx-line) !important;
  margin-top: clamp(21px, -0.5vw, 50px) !important;
  padding: 22px 0 26px !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px 26px;
  flex-wrap: wrap;
}

footer#nbxFooter {
  background: radial-gradient(120% 90% at 78% 18%, rgba(236, 196, 99, .16), transparent 55%), radial-gradient(90% 80% at 12% 95%, rgba(60, 90, 120, .14), transparent 60%), linear-gradient(180deg, var(--ink-2) 0%, #0E3F3C 60%, #06182F 100%) !important;
}

#nbxFooter .nbx-bottom small {
  font-size: 12.5px !important;
  color: var(--nbx-mut) !important;
  letter-spacing: .02em !important;
  font-family: 'Archivo', sans-serif !important
}

#nbxFooter .nbx-legal {
  display: flex !important;
  gap: 22px
}

#nbxFooter .nbx-legal a {
  font-size: 12.5px !important;
  color: var(--nbx-mut) !important;
  font-family: 'Archivo', sans-serif !important;
  transition: color .3s
}

#nbxFooter .nbx-legal a:hover {
  color: var(--nbx-gold2) !important
}

#nbxFooter .nbx-top {
  margin-left: auto !important;
  width: 84px;
  height: 84px;
  flex: 0 0 84px;
  border: 0 !important;
  background: none !important;
  cursor: pointer;
  padding: 0 !important;
  -webkit-appearance: none;
  appearance: none;
}

#nbxFooter .nbx-top svg {
  width: 100%;
  height: 100%;
  overflow: visible
}

#nbxFooter .nbx-top .nbx-ring {
  animation: nbxSpin 16s linear infinite;
  transform-origin: 50% 50%;
  fill: var(--nbx-mut);
  font-family: 'Spline Sans Mono', monospace;
  font-size: 8.4px;
  letter-spacing: .32em;
}

#nbxFooter .nbx-top circle {
  fill: rgba(20, 17, 27, .85);
  stroke: var(--nbx-line);
  transition: all .4s var(--nbx-ease)
}

#nbxFooter .nbx-top .nbx-arrow {
  fill: var(--nbx-gold);
  transition: transform .4s var(--nbx-ease)
}

#nbxFooter .nbx-top:hover circle {
  fill: var(--nbx-gold);
  stroke: var(--nbx-gold)
}

#nbxFooter .nbx-top:hover .nbx-arrow {
  fill: var(--nbx-ink);
  transform: translateY(-3px)
}

@keyframes nbxSpin {
  to {
    transform: rotate(360deg)
  }
}

/* ------------------------------------------------------------
  RESPONSIVE
------------------------------------------------------------ */
@media (max-width:1080px) {
  #nbxFooter .nbx-grid {
    grid-template-columns: 1fr 1fr
  }

  #nbxFooter .nbx-brand {
    grid-column: 1/-1
  }

  #nbxFooter .nbx-board {
    grid-column: 1/-1
  }
}

@media (max-width:760px) {
  #nbxFooter .nbx-pass {
    grid-template-columns: 1fr;
    transform: rotate(0)
  }

  #nbxFooter .nbx-pass-stub {
    border-left: 0 !important;
    border-top: 2px dashed rgba(22, 19, 28, .32) !important;
    border-radius: 0 0 18px 18px;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
  }

  #nbxFooter .nbx-pass-stub::before {
    left: -12px;
    top: -13px
  }

  #nbxFooter .nbx-pass-stub::after {
    left: auto;
    right: -12px;
    top: -13px;
    bottom: auto
  }

  #nbxFooter .nbx-barcode {
    width: 130px;
    height: 44px;
    order: 3;
    margin-left: auto !important
  }

  #nbxFooter .nbx-grid {
    grid-template-columns: 1fr
  }

  #nbxFooter .nbx-bottom {
    justify-content: center;
    text-align: center !important
  }

  #nbxFooter .nbx-top {
    margin: 6px auto 0 !important
  }
}

@media (prefers-reduced-motion:reduce) {

  #nbxFooter *,
  #nbxFooter *::before,
  #nbxFooter *::after {
    animation: none !important;
    transition-duration: .01ms !important
  }

  #nbxFooter .nbx-rev {
    opacity: 1;
    transform: none
  }

  #nbxFooter .nbx-giant-word::after {
    clip-path: inset(0 0 -12% 0)
  }
}

/* ============================================================
   THE LEADERS IN THE ROOM — Section
   Unique prefix: lroomx-  (koi bhi class generic nahi hai,
   isliye existing site ke CSS se conflict nahi hoga)
   ============================================================ */

.lroomx-section {
  font-family: 'Poppins', sans-serif;
  background: linear-gradient(115deg, #07051f 0%, #1b0e38 52%, #421549 100%);
  padding: clamp(36px, 5vw, 72px) clamp(14px, 3vw, 40px);
  box-sizing: border-box;
}

.lroomx-section *,
.lroomx-section *::before,
.lroomx-section *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.lroomx-shell {
  max-width: 1320px;
  margin: 0 auto;
  border-radius: 30px;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 44%) minmax(0, 56%);
  min-height: 580px;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .45);
  background: url(../images/leadersintheroom.webp);
}

/* ---------- Left : Photo ---------- */
.lroomx-media {
  position: relative;
  background: linear-gradient(160deg, #241b4d, #0d0930);
  /* fallback agar image load na ho */
  min-height: 100%;
}

.lroomx-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ---------- Right : Lime Panel ---------- */
.lroomx-panel {
  background: #0b1654a8;
  padding: clamp(30px, 4vw, 58px) clamp(22px, 3.4vw, 54px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 10;
}

.ldr-poster {
  display: none;
}

.lroomx-title {
  font-size: clamp(27px, 3.1vw, 44px);
  font-weight: 700;
  line-height: 1.16;
  letter-spacing: -.5px;
  color: #ffffff;
  text-align: center;
}

.lroomx-subline {
  margin: 14px auto 0;
  display: inline-block;
  align-self: center;
  text-align: center;
  font-size: clamp(12.5px, 1.15vw, 15.5px);
  font-weight: 600;
  color: #1d2240;
  background: rgba(255, 255, 255, .55);
  border: 1px solid #aabf63;
  border-radius: 999px;
  padding: 9px 22px;
  max-width: 100%;
}

/* ---------- Cards Grid ---------- */
.lroomx-grid {
  margin-top: clamp(24px, 3vw, 38px);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}

.lroomx-card {
  background: #fdfff2;
  border: 1px solid #b9cf7d;
  border-radius: 16px;
  padding: 18px 12px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 11px;
  text-align: center;
  z-index: 9999;
  min-height: 138px;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.lroomx-card:hover {
  transform: translateY(-4px);
  border-color: #5d731f;
  box-shadow: 0 14px 26px rgba(74, 96, 12, .18);
}

.lroomx-ic {
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  color: #1d2240;
}

.lroomx-label {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.42;
  color: #1d2240;
}

/* last card — "& Many More…" */
.lroomx-card--more {
  border-style: dashed;
}

/* ---------- Responsive ---------- */
@media (max-width:1080px) {
  .lroomx-shell {
    grid-template-columns: 1fr;
  }

  .lroomx-media {
    min-height: 300px;
  }
}

@media (max-width:760px) {
  .lroomx-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
  }

  .lroomx-card {
    min-height: 124px;
    padding: 15px 10px 13px;
  }
}

@media (max-width:420px) {
  .lroomx-label {
    font-size: 11.5px;
  }

  .lroomx-ic {
    width: 33px;
    height: 33px;
  }

  .lroomx-media {
    min-height: 240px;
  }

  .lroomx-shell {
    border-radius: 22px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .lroomx-card {
    transition: none;
  }
}

/* ============================================================
   RESPONSIVE FIXES  (v-resp-1)
   Added to make every section work on mobile / small / large
   screens. These rules ONLY apply on smaller screens, so the
   desktop layout stays exactly the same. Safe to remove this
   whole block if ever needed.
   ============================================================ */

/* Universal safety net — media never overflows the screen */
@media (max-width: 768px) {

  img,
  video,
  iframe,
  svg {
    max-width: 100%;
    height: auto;
  }
}

/* ---- FOOTER (#nbxFooter) — previously had NO responsive rules,
        so its 5-column / 4-column grids overflowed on phones ---- */
@media (max-width: 980px) {
  #nbxFooter .nbx-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 40px 28px !important;
  }
}

@media (max-width: 640px) {
  #nbxFooter .nbx-grid {
    grid-template-columns: 1fr !important;
    gap: 34px !important;
  }

  #nbxFooter .nbx-pass {
    grid-template-columns: 1fr !important;
    transform: none !important;
  }

  #nbxFooter .nbx-venue {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

@media (max-width: 480px) {
  #nbxFooter .nbx-count {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* ---- Speakers carousel cards — fixed width could exceed phone width ---- */
@media (max-width: 560px) {
  .spk-card {
    width: min(82vw, 320px) !important;
  }
}

/* ---- Multi-column stat / panel grids — fewer columns on phones ---- */
@media (max-width: 560px) {
  .leg-stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .kt-panel {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 420px) {

  .leg-stats,
  .kt-panel {
    grid-template-columns: 1fr;
  }
}


.nbfc100ch-wrap {
  background: #06182F;
  padding: 2.5rem 0 2rem;
  font-family: 'DM Sans', sans-serif;
  overflow: hidden;
  border-radius: 12px;
}

.nbfc100ch-header {
  text-align: center;
  margin-bottom: 1.5rem;
  padding: 0 1.5rem;
}

.nbfc100ch-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #d4a843;
  margin-bottom: 0.4rem;
}

.nbfc100ch-eyebrow::before,
.nbfc100ch-eyebrow::after {
  content: '';
  display: block;
  width: 20px;
  height: 1px;
  background: #d4a84366;
}

.nbfc100ch-title {
  font-family: 'Archivo', system-ui, -apple-system, sans-serif !important;
  font-size: 26px;
  font-weight: 400;
  color: #f0e8d8;
  margin: 0;
  line-height: 1.2;
}

.nbfc100ch-subtitle {
  font-family: 'Archivo', system-ui, -apple-system, sans-serif !important;
  font-style: italic;
  font-size: 13px;
  color: #d4a843;
  margin: 2px 0 0;
}

.nbfc100ch-track-outer {
  position: relative;
  overflow: hidden;
  margin-bottom: 8px;
}

.nbfc100ch-track-outer::before,
.nbfc100ch-track-outer::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 60px;
  z-index: 2;
  pointer-events: none;
}

.nbfc100ch-track-outer::before {
  left: 0;
  background: linear-gradient(to right, #07080f, transparent);
}

.nbfc100ch-track-outer::after {
  right: 0;
  background: linear-gradient(to left, #07080f, transparent);
}

.nbfc100ch-track {
  display: flex;
  gap: 8px;
  width: max-content;
  animation: nbfc100ch-scroll 30s linear infinite;
}

.nbfc100ch-track:hover {
  animation-play-state: paused;
}

.nbfc100ch-track2 {
  display: flex;
  gap: 8px;
  width: max-content;
  animation: nbfc100ch-scroll2 36s linear infinite;
}

.nbfc100ch-track2:hover {
  animation-play-state: paused;
}

@keyframes nbfc100ch-scroll {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

@keyframes nbfc100ch-scroll2 {
  0% {
    transform: translateX(-50%);
  }

  100% {
    transform: translateX(0);
  }
}

.nbfc100ch-img-item {
  flex-shrink: 0;
  width: 160px;
  height: 108px;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid #d4a84322;
  cursor: pointer;
  position: relative;
}

.nbfc100ch-img-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s;
}

.nbfc100ch-img-item:hover img {
  transform: scale(1.08);
}

.nbfc100ch-img-item-ov {
  position: absolute;
  inset: 0;
  background: #07080faa;
  opacity: 0;
  transition: opacity 0.25s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.nbfc100ch-img-item:hover .nbfc100ch-img-item-ov {
  opacity: 1;
}

.nbfc100ch-img-item-ov i {
  font-size: 18px;
  color: #d4a843;
}

.nbfc100ch-lb {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(7, 8, 15, 0.95);
  z-index: 9999;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.nbfc100ch-lb.nbfc100ch-open {
  display: flex;
}

.nbfc100ch-lb-img-wrap {
  position: relative;
}

.nbfc100ch-lb-img-wrap img {
  max-width: 88vw;
  max-height: 75vh;
  border-radius: 6px;
  display: block;
}

.nbfc100ch-lb-close {
  position: absolute;
  top: -32px;
  right: 0;
  background: none;
  border: none;
  color: #d4a843;
  font-size: 13px;
  cursor: pointer;
  letter-spacing: 0.08em;
  font-family: 'DM Sans', sans-serif;
}

.nbfc100ch-lb-nav {
  display: flex;
  gap: 12px;
  margin-top: 14px;
}

.nbfc100ch-lb-nav button {
  background: #d4a84318;
  border: 1px solid #d4a84344;
  color: #d4a843;
  font-size: 12px;
  font-weight: 500;
  padding: 7px 18px;
  border-radius: 4px;
  cursor: pointer;
  font-family: 'DM Sans', sans-serif;
  letter-spacing: 0.06em;
}

.nbfc100ch-lb-ctr {
  font-size: 11px;
  color: #60504a;
  margin-top: 8px;
  letter-spacing: 0.1em;
}

.nbfc100ch-lb-ctr span {
  color: #d4a843;
}

.nbfc100ct-wrap {
  background: #06182F;
  border-radius: 14px;
  overflow: hidden;
  font-family: 'DM Sans', sans-serif;
  position: relative;
}

.nbfc100ct-top-bar {
  background: #7fe6ec;
  height: 3px;
  width: 100%;
}

.nbfc100ct-inner {
  padding: 3rem 2.5rem 2.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  z-index: 2;
}

.nbfc100ct-corner-tl {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 28px;
  height: 28px;
  border-top: 1px solid #2d7a2d55;
  border-left: 1px solid #2d7a2d55;
}

.nbfc100ct-corner-tr {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 28px;
  height: 28px;
  border-top: 1px solid #2d7a2d55;
  border-right: 1px solid #2d7a2d55;
}

.nbfc100ct-corner-bl {
  position: absolute;
  bottom: 16px;
  left: 16px;
  width: 28px;
  height: 28px;
  border-bottom: 1px solid #2d7a2d55;
  border-left: 1px solid #2d7a2d55;
}

.nbfc100ct-corner-br {
  position: absolute;
  bottom: 16px;
  right: 16px;
  width: 28px;
  height: 28px;
  border-bottom: 1px solid #2d7a2d55;
  border-right: 1px solid #2d7a2d55;
}

.nbfc100ct-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #4caf50;
  margin-bottom: 0.6rem;
}

.nbfc100ct-eyebrow::before,
.nbfc100ct-eyebrow::after {
  content: '';
  display: block;
  width: 22px;
  height: 1px;
  background: #4caf5066;
}

.nbfc100ct-heading {
  font-family: 'Archivo', system-ui, -apple-system, sans-serif !important;
  font-size: 40px;
  font-weight: 400;
  color: #f0ede8;
  margin: 0 0 0.25rem;
  line-height: 1.1;
}

.nbfc100ct-heading span {
  color: #7fe6ec;
}

.nbfc100ct-sub {
  font-family: 'Archivo', system-ui, -apple-system, sans-serif !important;
  font-style: normal;
  font-size: 14px;
  color: #ffffff99;
  margin: 0 0 2rem;
}

.nbfc100ct-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 2rem;
}

.nbfc100ct-divider__line {
  width: 36px;
  height: 1px;
  background: #2d7a2d44;
}

.nbfc100ct-divider__dot {
  width: 4px;
  height: 4px;
  background: #3a8c3a;
  border-radius: 50%;
}

.nbfc100ct-card {
  background: #121d5b0f;
  border: 1px solid #2d7a2d33;
  border-radius: 10px;
  padding: 1.75rem 2rem;
  width: 100%;
  max-width: 100%;
}

.nbfc100ct-opp-label {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: white;
  background: #3a8c3a18;
  border: 1px solid #3a8c3a33;
  display: inline-block;
  padding: 4px 12px;
  border-radius: 20px;
  margin-bottom: 1.25rem;
}

.nbfc100ct-name {
  font-size: 18px;
  font-weight: 500;
  color: #f0ede8;
  margin: 0 0 1.25rem;
  letter-spacing: 0.01em;
}

.nbfc100ct-details {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.nbfc100ct-row {
  display: flex;
  align-items: center;
  gap: 12px;
  background: #141e14;
  border: 1px solid #2d7a2d22;
  border-radius: 6px;
  padding: 10px 14px;
  text-decoration: none;
  transition: border-color 0.2s, background 0.2s;
}

.nbfc100ct-row:hover {
  border-color: #3a8c3a66;
  background: #1a2a1a;
}

.nbfc100ct-icon-wrap {
  width: 34px;
  height: 34px;
  background: #3a8c3a1a;
  border: 1px solid #3a8c3a33;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.nbfc100ct-icon-wrap i {
  font-size: 16px;
  color: #4caf50;
}

.nbfc100ct-row-label {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: white;
  display: block;
  line-height: 1;
  text-align: left;
  margin-bottom: 3px;
}

.nbfc100ct-row-val {
  font-size: 17px;
  font-weight: 500;
  color: #ffffff;
  display: block;
  line-height: 1.2;
}



.nbfc100sp-root {
  --nbfc100sp-bldg: url("data:image/png;base64,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");
  --sp-navy0: #0b2845;
  --sp-navy1: #0a3450;
  --sp-teal-deep: #0e565a;
  --sp-stage-h: 176px;
  --sp-cut-h: 250px;
  --sp-pop: 74px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 62px 26px 80px;
  box-sizing: border-box;
  font-family: 'Sora', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  background:
    radial-gradient(120% 80% at 50% -8%, rgba(46, 201, 185, .20), transparent 60%),
    linear-gradient(176deg, var(--sp-navy0) 0%, #0a324c 34%, #0b485660 66%, var(--sp-teal-deep) 100%);
  color: #fff;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.nbfc100sp-root * {
  box-sizing: border-box;
}

.nbfc100sp-bldg {
  position: absolute;
  inset: auto 0 0 0;
  height: 46%;
  z-index: 0;
  pointer-events: none;
  background-image: var(--nbfc100sp-bldg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
  opacity: .16;
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 55%);
  mask-image: linear-gradient(180deg, transparent 0%, #000 55%);
}

.nbfc100sp-head {
  position: relative;
  z-index: 2;
  text-align: center;
  max-width: 760px;
  margin: 0 auto 90px;
}

.nbfc100sp-eyebrow {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .28em;
  text-transform: uppercase;
  color: #46d8c8;
  padding: 7px 18px;
  border: 1px solid rgba(70, 216, 200, .4);
  border-radius: 40px;
  background: rgba(70, 216, 200, .07);
  margin-bottom: 20px;
}

.nbfc100sp-title {
  font-size: clamp(30px, 5vw, 50px);
  font-weight: 800;
  margin: 0 0 14px;
  letter-spacing: -.01em;
  line-height: 1.05;
}

.nbfc100sp-title span {
  color: #3ad7c6;
}

.nbfc100sp-sub {
  font-size: 15px;
  font-weight: 400;
  color: rgba(255, 255, 255, .62);
  margin: 0;
  line-height: 1.5;
}

.nbfc100sp-grid {
  position: relative;
  z-index: 2;
  max-width: 87%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 26px;
  row-gap: 184px;
  margin-top: 177px;
}

.nbfc100sp-card {
  flex: 1 1 232px;
  min-width: 224px;
  max-width: 258px;
  position: relative;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(108, 226, 212, .16);
  border-radius: 20px;
  overflow: visible;
  background: linear-gradient(180deg, #0e3047, #0a2740);
  box-shadow: 0 22px 46px -20px rgba(0, 0, 0, .62), inset 0 1px 0 rgba(255, 255, 255, .04);
  opacity: 0;
  transform: translateY(16px);
  animation: nbfc100sp-rise .7s cubic-bezier(.2, .7, .2, 1) forwards;
  animation-delay: var(--d);
}

.nbfc100sp-stage {
  position: relative;
  height: var(--sp-stage-h);
  border-radius: 20px 20px 0 0;
  overflow: visible;
  background: linear-gradient(180deg, #3bd8c7 0%, #27c2b2 56%, #15a597 100%);
}

.nbfc100sp-stage::after {
  /* melt torso into panel */
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 42px;
  border-radius: 0;
  background: linear-gradient(180deg, rgba(13, 44, 66, 0) 0%, #0c2c41 92%);
  z-index: 2;
}

.nbfc100sp-cut {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  height: 300px;
  width: auto;
  max-width: 100%;
  display: block;
  object-fit: cover;
  z-index: 1;
  filter: drop-shadow(0 10px 14px rgba(0, 0, 0, .30));
}

.nbfc100sp-panel {
  position: relative;
  z-index: 3;
  text-align: center;
  padding: 16px 15px 22px;
  border-radius: 0 0 20px 20px;
}

.nbfc100sp-name {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 4px;
  line-height: 1.18;
  color: #fff;
}

.nbfc100sp-role {
  font-size: 13px !important;
  font-weight: 400;
  margin: 0 0 7px;
  line-height: 1.32;
  color: rgb(255 255 255);
}

.nbfc100sp-org {
  font-size: 13px !important;
  font-weight: 700;
  margin: 0;
  line-height: 1.3;
  color: #46d8c8;
}

.nbfc100sp-card:hover {
  transform: translateY(-6px);
  transition: transform .3s ease;
}

.nbfc100sp-card:hover .nbfc100sp-cut {
  transform: translateX(-50%) scale(1.03);
  transition: transform .35s ease;
}

@keyframes nbfc100sp-rise {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width:1024px) {
  .nbfc100sp-card {
    flex-basis: 30%;
  }
}

@media (max-width:760px) {
  .nbfc100sp-root {
    --sp-stage-h: 170px;
    --sp-cut-h: 242px;
  }

  .nbfc100sp-card {
    flex-basis: 44%;
    max-width: none;
  }

  .nbfc100sp-grid {
    column-gap: 18px;
    row-gap: 74px;
  }
}

@media (max-width:460px) {
  .nbfc100sp-root {
    --sp-stage-h: 200px;
    --sp-cut-h: 286px;
    padding: 48px 18px 64px;
  }

  .nbfc100sp-card {
    flex-basis: 84%;
    min-width: 0;
    max-width: 320px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .nbfc100sp-card {
    animation: none;
    opacity: 1;
    transform: none;
  }

  .nbfc100sp-card:hover {
    transform: none;
  }

  .nbfc100sp-card:hover .nbfc100sp-cut {
    transform: translateX(-50%);
  }
}