:root {
  --bg: #0c0612;
  --bg-2: #15091a;
  --surface: #1a0c22;
  --surface-2: #22102c;
  --line: #2a1638;
  --line-2: #3a1f4a;
  --ink: #f4eef6;
  --ink-dim: #b9a9c4;
  --ink-mute: #8a7a96;
  --pink: #ec1a5c;
  --pink-2: #ff3d7a;
  --pink-glow: rgba(236, 26, 92, .45);
  --pink-soft: rgba(236, 26, 92, .12);
  --green: #2dd47e;
  --blue: #3b82f6;
}

* {
  box-sizing: border-box
}

html {
  scroll-behavior: smooth
}

html,
body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: Inter, system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden
}

a {
  color: inherit;
  text-decoration: none
}

img {
  max-width: 100%;
  display: block
}

.wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 28px
}

/* ───── Nav ───── */
.nav {
  position: sticky;
  top: 0;
  z-index: 30;
  background: rgba(12, 6, 18, .78);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(255, 255, 255, .04)
}

.nav-inner {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 14px 0
}

.logo {
  display: flex;
  align-items: center;
  gap: 12px
}

.logo-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: radial-gradient(circle at 30% 30%, rgba(236, 26, 92, .4), transparent 70%)
}

.logo-mark svg {
  filter: drop-shadow(0 0 6px var(--pink-glow))
}

.logo-text {
  display: flex;
  flex-direction: column;
  line-height: 1
}

.logo-text b {
  font-family: Manrope, sans-serif;
  font-weight: 800;
  font-size: 22px;
  letter-spacing: .02em
}

.logo-text b span {
  color: var(--pink)
}

.logo-text small {
  font-size: 9px;
  letter-spacing: .32em;
  color: var(--ink-mute);
  margin-top: 4px;
  font-weight: 600
}

.nav-links {
  display: flex;
  gap: 24px;
  margin-left: 32px
}

.nav-links a {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .12em;
  color: var(--ink-dim);
  position: relative;
  padding: 6px 0;
  text-transform: uppercase;
  white-space: nowrap
}

.nav-links a.on {
  color: var(--ink)
}

.nav-links a.on::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -4px;
  height: 2px;
  background: var(--pink);
  border-radius: 2px
}

.nav-cta {
  margin-left: auto
}

/* ───── Lang Switcher ───── */
.lang-switcher {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-left: 12px;
  background: var(--surface);
  border: 1px solid var(--line-2);
  border-radius: 999px;
  padding: 3px;
}

.lang-btn {
  background: transparent;
  border: none;
  color: var(--ink-mute);
  font-family: Manrope, sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .08em;
  padding: 4px 9px;
  border-radius: 999px;
  cursor: pointer;
  transition: background .15s, color .15s;
  line-height: 1;
}

.lang-btn:hover {
  color: var(--ink);
}

.lang-btn.active {
  background: var(--pink);
  color: #fff;
}

.lang-switcher-drawer {
  margin: 8px 0;
  align-self: flex-start;
}

.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  border-radius: 999px;
  font-family: Manrope, sans-serif;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .1em;
  text-transform: uppercase;
  border: 0;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .2s ease;
  white-space: nowrap
}

.btn-primary {
  background: linear-gradient(135deg, var(--pink), var(--pink-2));
  color: #fff;
  box-shadow: 0 10px 30px -8px var(--pink-glow), inset 0 1px 0 rgba(255, 255, 255, .18)
}

.btn-primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 14px 34px -8px var(--pink-glow), inset 0 1px 0 rgba(255, 255, 255, .18)
}

.btn-ghost {
  background: transparent;
  color: var(--ink);
  border: 1px solid var(--line-2)
}

.btn-ghost:hover {
  border-color: var(--pink);
  color: var(--pink-2)
}

/* ───── Hero ───── */
.hero {
  position: relative;
  padding: 60px 0 40px;
  overflow: hidden
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(60% 60% at 80% 30%, rgba(236, 26, 92, .18), transparent 60%);
  pointer-events: none
}

.hero-grid {
  display: grid;
  grid-template-columns: 1fr 1.45fr;
  gap: 40px;
  align-items: center;
  position: relative
}

.eyebrow-rule {
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--ink-mute);
  font-size: 12px;
  letter-spacing: .3em;
  text-transform: uppercase;
  margin-bottom: 18px
}

.eyebrow-rule::before {
  content: "";
  width: 48px;
  height: 1px;
  background: var(--pink)
}

h1 {
  font-family: Manrope, sans-serif;
  font-weight: 800;
  font-size: 68px;
  line-height: .98;
  letter-spacing: -.02em;
  margin: 0 0 12px
}

h1 .accent {
  color: var(--pink);
  text-shadow: 0 0 30px rgba(236, 26, 92, .4)
}

h1 .rule {
  display: inline-block;
  width: 64px;
  height: 3px;
  background: var(--pink);
  vertical-align: middle;
  margin: 0 0 18px 14px;
  border-radius: 2px
}

.hero-sub {
  font-size: 18px;
  line-height: 1.55;
  color: var(--ink-dim);
  max-width: 520px;
  margin: 24px 0 36px
}

.hero-sub b {
  color: var(--ink);
  font-weight: 600
}

.hero-sub .em {
  color: var(--pink-2);
  font-weight: 600
}

.feat-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  max-width: 560px;
  margin: 30px 0 36px
}

.feat {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px
}

.feat-icon {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(236, 26, 92, .08);
  border: 1px solid rgba(236, 26, 92, .18)
}

.feat-icon svg {
  filter: drop-shadow(0 0 4px var(--pink-glow))
}

.feat-label {
  font-family: Manrope, sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .14em;
  color: var(--ink);
  line-height: 1.25;
  text-transform: uppercase
}

.hero-actions {
  display: flex;
  gap: 14px;
  align-items: center
}

.play {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .06);
  border: 1px solid var(--line-2);
  display: grid;
  place-items: center
}

/* Hero image */
.hero-art {
  position: relative;
  aspect-ratio: 4/5;
  border-radius: 20px;
  overflow: hidden;
  isolation: isolate
}

.badge-card {
  position: absolute;
  right: 18px;
  bottom: 150px;
  background: linear-gradient(135deg, rgba(60, 18, 40, .9), rgba(20, 8, 28, .9));
  border: 1px solid var(--line-2);
  border-radius: 18px;
  padding: 14px 20px 14px 14px;
  display: flex;
  align-items: center;
  gap: 14px;
  backdrop-filter: blur(8px);
  z-index: 4;
  max-width: 340px
}

.badge-card .ico {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(236, 26, 92, .5), rgba(236, 26, 92, .1));
  display: grid;
  place-items: center;
  border: 1px solid rgba(236, 26, 92, .4)
}

.badge-card h4 {
  font-family: Manrope, sans-serif;
  font-size: 14px;
  margin: 0 0 2px;
  letter-spacing: .04em;
  line-height: 1.2
}

.badge-card p {
  margin: 0;
  font-size: 10px;
  color: var(--pink-2);
  letter-spacing: .18em;
  font-weight: 700;
  text-transform: uppercase
}

/* ───── Sections ───── */
.section {
  padding: 90px 0;
  position: relative
}

.section-eyebrow {
  font-family: Manrope, sans-serif;
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .32em;
  color: var(--pink);
  text-transform: uppercase;
  margin-bottom: 10px
}

h2 {
  font-family: Manrope, sans-serif;
  font-weight: 800;
  font-size: 42px;
  line-height: 1;
  letter-spacing: -.01em;
  margin: 0 0 18px
}

.lead {
  font-size: 15px;
  color: var(--ink-dim);
  line-height: 1.6;
  max-width: 420px
}

.lead b {
  color: var(--ink);
  font-weight: 600
}

.biz {
  display: grid;
  grid-template-columns: .9fr 1.3fr;
  gap: 60px;
  align-items: center
}

.checks {
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 14px
}

.checks li {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 15px;
  color: var(--ink-dim)
}

.check {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1.5px solid var(--pink);
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  background: rgba(236, 26, 92, .08)
}

/* Dashboard mockup */
.dash-stage {
  position: relative
}

.mockup-img {
  width: 100%;
  height: auto;
  display: block
}

.dash-side {
  background: #11071a;
  border-right: 1px solid var(--line);
  padding: 14px 12px;
  display: flex;
  flex-direction: column;
  gap: 14px
}

.dash-logo {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line)
}

.dash-logo svg {
  filter: drop-shadow(0 0 4px var(--pink-glow))
}

.dash-logo b {
  font-family: Manrope, sans-serif;
  font-size: 13px;
  letter-spacing: .04em
}

.dash-logo b span {
  color: var(--pink)
}

.dash-nav {
  display: flex;
  flex-direction: column;
  gap: 2px
}

.dash-nav a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 6px;
  font-size: 11px;
  color: var(--ink-dim)
}

.dash-nav a.on {
  background: rgba(236, 26, 92, .12);
  color: #fff;
  border-left: 2px solid var(--pink)
}

.dash-nav .dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  opacity: .6
}

.dash-main {
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 12px
}

.dash-top {
  display: flex;
  justify-content: space-between;
  align-items: center
}

.dash-top h5 {
  font-size: 11px;
  margin: 0;
  letter-spacing: .1em;
  color: var(--ink-dim);
  text-transform: uppercase
}

.dash-top .who {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 9px;
  color: var(--ink-mute)
}

.kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px
}

.kpi {
  background: #150a1e;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 8px 10px
}

.kpi-l {
  font-size: 8px;
  color: var(--ink-mute);
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 3px
}

.kpi-v {
  font-family: Manrope, sans-serif;
  font-size: 18px;
  font-weight: 700
}

.kpi-d {
  font-size: 8px;
  color: var(--green);
  float: right;
  margin-top: -13px
}

.charts {
  display: grid;
  grid-template-columns: 1.6fr 1fr;
  gap: 8px
}

.card {
  background: #150a1e;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 10px
}

.card h6 {
  font-size: 9px;
  margin: 0 0 8px;
  color: var(--ink-dim);
  letter-spacing: .08em;
  text-transform: uppercase
}

.chart-line {
  position: relative;
  height: 96px
}

.chart-line svg {
  width: 100%;
  height: 100%
}

.donut {
  display: flex;
  align-items: center;
  gap: 10px
}

.donut svg {
  flex: 0 0 auto
}

.legend {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 8px;
  color: var(--ink-dim);
  width: 100%
}

.legend .row {
  display: flex;
  align-items: center;
  gap: 5px;
  justify-content: space-between
}

.legend .row .l {
  display: flex;
  align-items: center;
  gap: 5px
}

.legend .sw {
  width: 7px;
  height: 7px;
  border-radius: 2px
}

.top-table {
  background: #150a1e;
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 10px
}

.top-table .row {
  display: grid;
  grid-template-columns: 90px 1fr 28px;
  gap: 8px;
  align-items: center;
  padding: 3px 0;
  font-size: 9px;
  color: var(--ink-dim)
}

.bar {
  height: 5px;
  background: #241432;
  border-radius: 3px;
  overflow: hidden
}

.bar i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--pink), var(--pink-2))
}

/* Phone */
.phone {
  position: absolute;
  left: -50px;
  top: 60px;
  width: 188px;
  background: #0c0612;
  border: 6px solid #1c0e26;
  border-radius: 24px;
  padding: 8px;
  box-shadow: 0 25px 40px -10px rgba(0, 0, 0, .7);
  z-index: 2
}

.phone-screen {
  background: #11071a;
  border-radius: 16px;
  overflow: hidden;
  padding: 10px;
  border: 1px solid var(--line)
}

.phone .nb {
  display: flex;
  justify-content: space-between;
  font-size: 7px;
  color: var(--ink-mute);
  margin-bottom: 6px
}

.phone h6 {
  font-size: 10px;
  margin: 0 0 6px;
  display: flex;
  align-items: center;
  justify-content: space-between
}

.phone-img {
  aspect-ratio: 16/10;
  border-radius: 6px;
  background: repeating-linear-gradient(135deg, rgba(236, 26, 92, .1) 0 6px, transparent 6px 12px), #2a1230;
  display: grid;
  place-items: center;
  color: rgba(255, 255, 255, .4);
  font-size: 8px;
  font-family: JetBrains Mono, monospace;
  margin-bottom: 8px
}

.phone .pb {
  font-size: 8px;
  font-weight: 700;
  margin-bottom: 6px
}

.phone .li {
  display: flex;
  justify-content: space-between;
  font-size: 8px;
  padding: 3px 0;
  border-bottom: 1px dashed var(--line);
  color: var(--ink-dim)
}

.phone .li b {
  color: var(--ink);
  font-weight: 600
}

.phone .pbtn {
  background: linear-gradient(135deg, var(--pink), var(--pink-2));
  color: #fff;
  font-size: 9px;
  font-weight: 700;
  padding: 6px 0;
  border-radius: 5px;
  text-align: center;
  margin-top: 8px;
  letter-spacing: .06em
}

/* ───── Benefits ───── */
.benefits {
  background: #080410;
  border: 1px solid var(--line);
  border-radius: 18px;
  display: grid;
  grid-template-columns: repeat(4, 1fr) 1.3fr;
  align-items: stretch;
  overflow: hidden;
  position: relative
}

.benefit {
  padding: 28px 20px;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, .06)
}

.benefit:nth-last-child(2) {
  border-right: 0
}

.b-ico {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  border: 1.5px solid var(--pink);
  display: grid;
  place-items: center;
  margin: 0 auto 16px;
  background: rgba(236, 26, 92, .08);
  box-shadow: 0 0 32px -4px var(--pink-glow), 0 0 60px -20px var(--pink-glow), inset 0 0 16px rgba(236, 26, 92, .15)
}

.b-ico svg {
  filter: drop-shadow(0 0 6px var(--pink-glow))
}

.benefit h4 {
  font-family: Manrope, sans-serif;
  font-size: 12px;
  letter-spacing: .18em;
  margin: 0 0 8px;
  text-transform: uppercase;
  color: var(--ink)
}

.benefit p {
  font-size: 11px;
  color: var(--ink-dim);
  line-height: 1.55;
  margin: 0
}

.benefit-art {
  position: relative;
  min-height: 200px;
  overflow: hidden;
  background: #170820
}

.benefit-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(1.1) contrast(1.05) brightness(.9)
}

.benefit-art::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, rgba(8, 4, 16, 1) 0%, rgba(8, 4, 16, .7) 30%, transparent 60%);
  pointer-events: none
}

/* ───── Financial section ───── */
.fin-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center
}

.fin-card {
  background: linear-gradient(180deg, #170822, #0e0617);
  border: 1px solid var(--line-2);
  border-radius: 18px;
  padding: 24px;
  box-shadow: 0 30px 60px -30px rgba(236, 26, 92, .3)
}

.fin-card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px
}

.fin-card-top h5 {
  font-family: Manrope, sans-serif;
  font-size: 14px;
  margin: 0;
  letter-spacing: .04em
}

.fin-pill {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  color: var(--green);
  background: rgba(45, 212, 126, .12);
  padding: 4px 10px;
  border-radius: 999px;
  text-transform: uppercase
}

.fin-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  margin-bottom: 20px
}

.fin-stat {
  background: #11071a;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 12px
}

.fin-stat .l {
  font-size: 10px;
  color: var(--ink-mute);
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 6px
}

.fin-stat .v {
  font-family: Manrope, sans-serif;
  font-size: 22px;
  font-weight: 700
}

.fin-stat .v small {
  font-size: 13px;
  color: var(--ink-dim);
  margin-left: 2px;
  font-weight: 500
}

.fin-stat .d {
  font-size: 10px;
  color: var(--green);
  font-weight: 600;
  margin-top: 2px
}

.fin-stat .d.neg {
  color: var(--pink-2)
}

.fin-bars {
  background: #11071a;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 14px;
  margin-bottom: 14px
}

.fin-bars-top {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 14px
}

.fin-bars-top h6 {
  font-size: 11px;
  margin: 0;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--ink-dim)
}

.fin-bars-top span {
  font-size: 10px;
  color: var(--ink-mute)
}

.bars-row {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 8px;
  height: 90px;
  align-items: end
}

.bcol {
  display: flex;
  flex-direction: column;
  gap: 2px;
  align-items: center;
  height: 100%;
  justify-content: flex-end
}

.bcol .b1 {
  width: 100%;
  background: linear-gradient(180deg, var(--pink-2), var(--pink));
  border-radius: 3px 3px 0 0
}

.bcol .b2 {
  width: 100%;
  background: rgba(255, 255, 255, .16);
  border-radius: 3px 3px 0 0
}

.bcol .lbl {
  font-size: 9px;
  color: var(--ink-mute);
  margin-top: 6px
}

.fin-tx {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.fin-tx-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px dashed var(--line);
  font-size: 12px
}

.fin-tx-row:last-child {
  border: 0
}

.fin-tx-row .ico {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(236, 26, 92, .1);
  display: grid;
  place-items: center;
  flex: 0 0 auto
}

.fin-tx-row .ico.in {
  background: rgba(45, 212, 126, .12)
}

.fin-tx-row .meta {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px
}

.fin-tx-row .meta b {
  font-size: 12px;
  font-weight: 600;
  color: var(--ink)
}

.fin-tx-row .meta span {
  font-size: 10px;
  color: var(--ink-mute)
}

.fin-tx-row .amt {
  font-family: Manrope, sans-serif;
  font-weight: 700;
  font-size: 13px
}

.fin-tx-row .amt.in {
  color: var(--green)
}

.fin-tx-row .amt.out {
  color: var(--pink-2)
}

.fin-features {
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px
}

.fin-features li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  color: var(--ink-dim);
  line-height: 1.4
}

.fin-features li b {
  color: var(--ink);
  font-weight: 600;
  display: block;
  font-size: 13px;
  margin-bottom: 2px
}

/* ───── AI Assistant ───── */
.ai-section {
  background: radial-gradient(80% 60% at 30% 50%, rgba(236, 26, 92, .12), transparent 60%);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line)
}

.ai-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center
}

.ai-chat {
  background: #0e0617;
  border: 1px solid var(--line-2);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 30px 80px -30px rgba(236, 26, 92, .4)
}

.ai-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--line);
  background: #170822
}

.ai-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, var(--pink-2), var(--pink) 60%, #5a0a23);
  display: grid;
  place-items: center;
  box-shadow: 0 0 18px var(--pink-glow);
  position: relative
}

.ai-avatar::after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--green);
  bottom: 0;
  right: 0;
  border: 2px solid #170822
}

.ai-head h5 {
  font-family: Manrope, sans-serif;
  font-size: 14px;
  margin: 0;
  letter-spacing: .02em
}

.ai-head p {
  margin: 0;
  font-size: 10px;
  color: var(--green);
  letter-spacing: .1em;
  font-weight: 600;
  text-transform: uppercase
}

.ai-head .menu {
  margin-left: auto;
  color: var(--ink-mute);
  font-size: 18px;
  letter-spacing: .1em
}

.ai-body {
  padding: 22px 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 340px
}

.msg {
  max-width: 85%;
  font-size: 13px;
  line-height: 1.5;
  padding: 12px 14px;
  border-radius: 14px
}

.msg.me {
  align-self: flex-end;
  background: linear-gradient(135deg, var(--pink), var(--pink-2));
  color: #fff;
  border-bottom-right-radius: 4px;
  box-shadow: 0 8px 22px -8px var(--pink-glow)
}

.msg.bot {
  align-self: flex-start;
  background: #170822;
  color: var(--ink);
  border: 1px solid var(--line-2);
  border-bottom-left-radius: 4px
}

.msg.bot .mini-stat {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dashed var(--line-2)
}

.msg.bot .mini-stat div {
  font-size: 11px;
  color: var(--ink-dim)
}

.msg.bot .mini-stat b {
  display: block;
  font-family: Manrope, sans-serif;
  font-size: 18px;
  color: var(--ink);
  font-weight: 700;
  margin-bottom: 2px
}

.msg.bot .mini-stat b span {
  color: var(--green);
  font-size: 11px;
  margin-left: 4px;
  font-weight: 600
}

.typing {
  align-self: flex-start;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 12px 14px;
  background: #170822;
  border: 1px solid var(--line-2);
  border-radius: 14px;
  border-bottom-left-radius: 4px
}

.typing span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--pink);
  animation: bp 1.2s infinite
}

.typing span:nth-child(2) {
  animation-delay: .2s
}

.typing span:nth-child(3) {
  animation-delay: .4s
}

@keyframes bp {

  0%,
  80%,
  100% {
    opacity: .25;
    transform: translateY(0)
  }

  40% {
    opacity: 1;
    transform: translateY(-3px)
  }
}

.ai-input {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-top: 1px solid var(--line);
  background: #11071a
}

.ai-input input {
  flex: 1;
  background: transparent;
  border: 0;
  outline: 0;
  color: var(--ink);
  font-size: 13px;
  font-family: inherit;
  padding: 8px
}

.ai-input input::placeholder {
  color: var(--ink-mute)
}

.send {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--pink), var(--pink-2));
  display: grid;
  place-items: center;
  border: 0;
  cursor: pointer;
  box-shadow: 0 6px 18px -4px var(--pink-glow)
}

.ai-prompts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px
}

.ai-prompts span {
  font-size: 11px;
  padding: 6px 12px;
  border: 1px solid var(--line-2);
  border-radius: 999px;
  color: var(--ink-dim);
  background: rgba(236, 26, 92, .04)
}

.ai-prompts span::before {
  content: "❝ ";
  color: var(--pink-2)
}

.ai-features {
  margin-top: 30px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 18px
}

.ai-features li {
  display: flex;
  gap: 14px;
  align-items: flex-start
}

.ai-features li .ico {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: rgba(236, 26, 92, .1);
  border: 1px solid rgba(236, 26, 92, .2);
  display: grid;
  place-items: center;
  flex: 0 0 auto
}

.ai-features li b {
  display: block;
  font-family: Manrope, sans-serif;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 4px
}

.ai-features li p {
  margin: 0;
  font-size: 13px;
  color: var(--ink-dim);
  line-height: 1.5
}

/* ───── CTA Stats ───── */
.cta-banner {
  background: linear-gradient(135deg, #2a0a1f 0%, #1a0820 50%, #0e0617 100%);
  border: 1px solid var(--line-2);
  border-radius: 22px;
  padding: 52px 48px;
  text-align: center;
  position: relative;
  overflow: hidden
}

.cta-banner::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -60px;
  transform: translateX(-50%);
  width: 400px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(236, 26, 92, .18), transparent 70%);
  pointer-events: none
}

.cta-banner h3 {
  font-family: Manrope, sans-serif;
  font-size: 36px;
  font-weight: 800;
  margin: 0 0 10px;
  line-height: 1.1;
  position: relative
}

.cta-banner h3 span {
  color: var(--pink)
}

.cta-banner>p {
  font-size: 15px;
  color: var(--ink-dim);
  margin: 0 auto 40px;
  max-width: 480px;
  line-height: 1.6;
  position: relative
}

.cta-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  margin-bottom: 36px;
  position: relative
}

.cta-stat {
  text-align: center;
  padding: 0 20px;
  border-right: 1px solid var(--line)
}

.cta-stat:last-child {
  border-right: 0
}

.cta-stat b {
  display: block;
  font-family: Manrope, sans-serif;
  font-size: 44px;
  font-weight: 800;
  line-height: 1;
  color: var(--ink)
}

.cta-stat span {
  display: block;
  margin-top: 6px;
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--ink-mute);
  text-transform: uppercase
}

.cta-actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  position: relative
}

.cta-actions small {
  font-size: 11px;
  color: var(--ink-mute)
}

/* ───── Logos ───── */
.logos h6 {
  text-align: center;
  font-family: Manrope, sans-serif;
  letter-spacing: .32em;
  font-size: 12px;
  color: var(--pink-2);
  margin: 0 0 32px;
  text-transform: uppercase
}

.logo-row {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 30px;
  align-items: center
}

.logo-row .l {
  height: 64px;
  display: grid;
  place-items: center;
  color: rgba(255, 255, 255, .55);
  font-family: Manrope, sans-serif;
  font-weight: 700;
  font-size: 14px;
  text-align: center;
  line-height: 1.1;
  letter-spacing: .04em
}

.logo-row .l small {
  display: block;
  font-family: Inter, sans-serif;
  font-weight: 500;
  font-size: 9px;
  color: rgba(255, 255, 255, .35);
  letter-spacing: .16em;
  margin-top: 4px;
  text-transform: uppercase
}

.logo-row .l em {
  font-style: italic;
  font-family: 'Manrope', serif;
  font-weight: 600
}

/* ───── Footer ───── */
.foot {
  border-top: 1px solid var(--line);
  padding: 20px 0 30px;
  display: grid;
  grid-template-columns: repeat(4, auto) 1fr;
  gap: 30px;
  align-items: center;
  font-size: 13px;
  color: var(--ink-dim)
}

.foot-item {
  display: flex;
  align-items: center;
  gap: 8px
}

.foot-item svg {
  filter: drop-shadow(0 0 3px var(--pink-glow))
}

.foot-contact {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 10px
}

.foot-contact .wa {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: #25d366;
  display: grid;
  place-items: center
}

.foot-contact b {
  font-family: Manrope, sans-serif;
  font-weight: 700;
  font-size: 14px;
  color: var(--ink);
  letter-spacing: .02em
}

.foot-contact small {
  display: block;
  font-size: 11px;
  color: var(--ink-mute)
}

/* ───── Contact ───── */
.contact-grid {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 60px;
  align-items: start
}

.contact-form-card {
  background: linear-gradient(180deg, #170822, #0e0617);
  border: 1px solid var(--line-2);
  border-radius: 18px;
  padding: 28px;
  box-shadow: 0 30px 60px -30px rgba(236, 26, 92, .2)
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px
}

.form-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px
}

.form-label {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .1em;
  color: var(--ink-dim);
  text-transform: uppercase
}

.form-input {
  background: #11071a;
  border: 1px solid var(--line-2);
  border-radius: 8px;
  padding: 11px 14px;
  color: var(--ink);
  font-size: 14px;
  font-family: inherit;
  outline: 0;
  transition: border-color .15s
}

.form-input:focus {
  border-color: var(--pink)
}

.form-input::placeholder {
  color: var(--ink-mute)
}

select.form-input {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%238a7a96' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center
}

textarea.form-input {
  resize: vertical;
  min-height: 90px
}

/* ───── Hamburger ───── */
.nav-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 38px;
  height: 38px;
  background: transparent;
  border: 1px solid var(--line-2);
  border-radius: 8px;
  cursor: pointer;
  padding: 8px;
  margin-left: auto
}

.nav-hamburger span {
  display: block;
  height: 2px;
  background: var(--ink);
  border-radius: 2px;
  transition: transform .25s, opacity .25s
}

.nav-hamburger.open span:nth-child(1) {
  transform: translateY(7px) rotate(45deg)
}

.nav-hamburger.open span:nth-child(2) {
  opacity: 0
}

.nav-hamburger.open span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg)
}

.nav-drawer {
  display: none;
  flex-direction: column;
  gap: 4px;
  padding: 16px 20px 20px;
  border-top: 1px solid var(--line);
  background: rgba(12, 6, 18, .97);
  backdrop-filter: blur(14px)
}

.nav-drawer.open {
  display: flex
}

.nav-drawer a {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: .12em;
  color: var(--ink-dim);
  padding: 10px 0;
  border-bottom: 1px solid var(--line);
  text-transform: uppercase
}

.nav-drawer a:last-of-type {
  border-bottom: 0
}

.nav-drawer .btn {
  width: 100%;
  justify-content: center;
  margin-top: 12px
}

@media(max-width:1024px) {

  .hero-grid,
  .biz,
  .fin-grid,
  .ai-grid,
  .contact-grid {
    grid-template-columns: 1fr
  }

  .phone {
    position: static;
    margin: 0 auto 18px
  }

  h1 {
    font-size: 54px
  }

  .cta-banner {
    padding: 40px 32px
  }

  .cta-banner h3 {
    font-size: 28px
  }
}

@media(max-width:768px) {

  /* Nav */
  .nav-links,
  .nav-cta {
    display: none
  }

  .nav-hamburger {
    display: flex
  }

  /* Hero */
  .hero {
    padding: 40px 0 30px
  }

  h1 {
    font-size: 38px;
    line-height: 1.05
  }

  .hero-sub {
    font-size: 15px;
    margin: 16px 0 24px
  }

  .feat-row {
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    max-width: 100%
  }

  .hero-actions {
    flex-direction: column;
    align-items: stretch
  }

  .hero-actions .btn {
    justify-content: center
  }

  /* Sections */
  h2 {
    font-size: 30px
  }

  .section {
    padding: 60px 0
  }

  /* Dashboard — hide phone, simplify */
  .phone {
    display: none
  }

  .dash {
    grid-template-columns: 1fr;
    min-height: auto
  }

  .dash-side {
    display: none
  }

  .kpis {
    grid-template-columns: repeat(2, 1fr)
  }

  .charts {
    grid-template-columns: 1fr
  }

  /* Benefits */
  .benefits {
    grid-template-columns: 1fr 1fr;
    padding: 24px 0
  }

  .benefit-art {
    display: none
  }

  /* Financial bars */
  .fin-stats {
    grid-template-columns: 1fr 1fr
  }

  .fin-stats .fin-stat:last-child {
    grid-column: 1/-1
  }

  /* CTA banner */
  .cta-banner {
    padding: 36px 24px
  }

  .cta-banner h3 {
    font-size: 24px
  }

  .cta-stats {
    grid-template-columns: 1fr
  }

  .cta-stat {
    border-right: 0;
    border-bottom: 1px solid var(--line);
    padding: 16px 0
  }

  .cta-stat:last-child {
    border-bottom: 0
  }

  .cta-stat b {
    font-size: 36px
  }

  /* Logos */
  .logo-row {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px
  }

  /* Footer */
  .foot {
    grid-template-columns: 1fr 1fr;
    gap: 16px
  }

  /* Contact form */
  .form-row {
    grid-template-columns: 1fr
  }
}

@media(max-width:480px) {
  .wrap {
    padding: 0 16px
  }

  h1 {
    font-size: 32px
  }

  h2 {
    font-size: 26px
  }

  .benefits {
    grid-template-columns: 1fr
  }

  .logo-row {
    grid-template-columns: repeat(2, 1fr)
  }

  .fin-stats {
    grid-template-columns: 1fr
  }

  .fin-stats .fin-stat:last-child {
    grid-column: auto
  }

  .foot {
    grid-template-columns: 1fr
  }

  .cta-banner {
    border-radius: 14px
  }
}
