:root {
  --shell-max: 1180px;
  --shell-line: rgba(255, 255, 255, .1);
  --shell-muted: #aeb2cc;
}

html { scroll-behavior: smooth; }

body {
  min-width: 320px;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

header {
  background: rgba(5, 6, 18, .82) !important;
  border-bottom: 1px solid var(--shell-line) !important;
  box-shadow: 0 12px 42px rgba(0, 0, 0, .22);
  backdrop-filter: blur(20px) saturate(135%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(135%);
}

.nav {
  width: min(100%, var(--shell-max)) !important;
  min-height: 76px;
  padding: 12px 24px !important;
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: max-content;
  color: inherit;
  text-decoration: none;
}

.brand img {
  width: 42px !important;
  height: 42px !important;
  border-radius: 13px !important;
  background: rgba(255, 255, 255, .04);
}

.brand .title {
  font-size: 16px !important;
  font-weight: 750 !important;
  letter-spacing: -.01em;
}

.brand .subtitle {
  margin-top: 1px;
  font-size: 10px !important;
  letter-spacing: .035em;
}

.links {
  display: flex;
  flex-wrap: nowrap !important;
  align-items: center;
  gap: 4px !important;
}

.links a {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  padding: 8px 12px !important;
  border: 1px solid transparent;
  font-weight: 620;
  white-space: nowrap;
}

.links a:hover {
  border-color: var(--shell-line);
  transform: translateY(-1px);
}

.links a.current {
  box-shadow: 0 8px 24px rgba(91, 140, 255, .25);
}

.container { max-width: var(--shell-max) !important; }

.btn { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 12px 30px rgba(91, 140, 255, .22); }

footer {
  margin-top: 28px;
  padding: 0 !important;
  background: rgba(4, 4, 14, .78);
  border-top: 1px solid var(--shell-line) !important;
}

.footer-inner {
  width: min(100%, var(--shell-max)) !important;
  min-height: 88px;
  padding: 22px 24px;
  align-items: center;
  gap: 18px !important;
}

.footer-brand {
  display: grid;
  gap: 3px;
}

.footer-brand strong { color: #f5f6ff; font-size: 13px; }
.footer-brand span { color: var(--shell-muted); }

.footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px 16px;
}

.footer-links a { color: var(--shell-muted); font-weight: 600; }
.footer-links a:hover { color: #fff; text-decoration: none !important; }

.promo-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 380px);
  align-items: center;
  gap: clamp(24px, 5vw, 64px);
  padding: clamp(22px, 4vw, 42px) !important;
  background:
    radial-gradient(circle at 78% 28%, rgba(91, 140, 255, .18), transparent 30%),
    linear-gradient(145deg, rgba(18, 20, 44, .94), rgba(10, 11, 27, .92)) !important;
}

.promo-copy { max-width: 60ch; }
.promo-kicker {
  display: inline-flex;
  margin-bottom: 12px;
  color: #9fe7ff;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.promo-copy h2 { margin-bottom: 12px; font-size: clamp(25px, 4vw, 38px); line-height: 1.12; }
.promo-copy p { color: var(--shell-muted); }
.promo-points { display: grid; gap: 9px; margin: 20px 0 24px; }
.promo-points span { color: #e6e8fa; font-size: 14px; }

.promo-phone {
  width: min(100%, 340px);
  justify-self: center;
  padding: 9px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 30px;
  background: #05060d;
  box-shadow: 0 28px 70px rgba(0, 0, 0, .58), 0 0 42px rgba(91, 140, 255, .14);
}

.promo-phone video {
  display: block;
  width: 100%;
  aspect-ratio: 9 / 16;
  border-radius: 22px;
  object-fit: cover;
  background: #000;
}

@media (max-width: 860px) {
  .nav { align-items: flex-start !important; flex-direction: column !important; }
  .links {
    width: 100%;
    overflow-x: auto;
    justify-content: flex-start !important;
    padding-bottom: 3px;
    scrollbar-width: none;
  }
  .links::-webkit-scrollbar { display: none; }
  .promo-showcase { grid-template-columns: 1fr; }
  .promo-phone { width: min(100%, 300px); }
}

@media (max-width: 560px) {
  .nav { padding: 11px 16px !important; }
  .brand .subtitle { display: none; }
  .links a { min-height: 36px; padding: 7px 10px !important; font-size: 12px; }
  .footer-inner { align-items: flex-start !important; flex-direction: column; padding: 22px 16px; }
  .footer-links { justify-content: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
