:root {
  color-scheme: dark;
  --bg: #070b0a;
  --bg-soft: #0d1311;
  --surface: #121816;
  --surface-strong: #17201d;
  --line: rgba(226, 239, 234, 0.14);
  --line-strong: rgba(105, 216, 168, 0.42);
  --text: #f4f7f5;
  --muted: #aab7b1;
  --mint: #68d8a7;
  --mint-bright: #43e3a0;
  --ink: #06110c;
  --max: 1180px;
  --header: 76px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; scroll-padding-top: calc(var(--header) + 20px); }

body {
  margin: 0;
  min-width: 320px;
  background: var(--bg);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

body.menu-open { overflow: hidden; }

img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, a { -webkit-tap-highlight-color: transparent; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.skip-link {
  position: fixed;
  left: 18px;
  top: -60px;
  z-index: 1000;
  padding: 10px 14px;
  background: var(--mint);
  color: var(--ink);
  font-weight: 800;
}
.skip-link:focus { top: 16px; }

.shell { width: min(calc(100% - 48px), var(--max)); margin-inline: auto; }
.band { padding: 112px 0; }
.band-soft { background: var(--bg-soft); border-block: 1px solid rgba(255,255,255,0.04); }

.site-header {
  position: fixed;
  inset: 0 0 auto;
  z-index: 100;
  height: var(--header);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 max(24px, calc((100vw - var(--max)) / 2));
  border-bottom: 1px solid transparent;
  transition: background-color 180ms ease, border-color 180ms ease;
}

.site-header.is-scrolled,
.site-header.is-open {
  background: rgba(7, 11, 10, 0.94);
  border-color: var(--line);
  backdrop-filter: blur(14px);
}

.brand { display: inline-flex; align-items: center; gap: 11px; font-weight: 850; font-size: 1.05rem; }
.brand img { width: 42px; height: 42px; border-radius: 8px; object-fit: cover; }
.brand span { letter-spacing: 0; }

.main-nav { display: flex; align-items: center; gap: 30px; }
.main-nav > a { color: #d5ded9; font-size: 0.92rem; font-weight: 700; transition: color 160ms ease; }
.main-nav > a:hover, .main-nav > a:focus-visible { color: var(--mint); }
.main-nav .nav-cta { padding: 10px 15px; border: 1px solid var(--line-strong); border-radius: 6px; color: var(--mint); }

.menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(18,24,22,0.8);
  color: var(--text);
  align-items: center;
  justify-content: center;
}
.menu-icon { display: grid; gap: 5px; width: 20px; }
.menu-icon i { display: block; width: 100%; height: 2px; background: currentColor; transition: transform 180ms ease, opacity 180ms ease; }
.site-header.is-open .menu-icon i:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.site-header.is-open .menu-icon i:nth-child(2) { opacity: 0; }
.site-header.is-open .menu-icon i:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.hero {
  position: relative;
  min-height: min(860px, 88svh);
  height: max(680px, 88svh);
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
}
.hero-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; z-index: -3; }
.hero-shade { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg, rgba(4,8,7,0.97) 0%, rgba(4,8,7,0.8) 35%, rgba(4,8,7,0.18) 72%, rgba(4,8,7,0.35) 100%); }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 28%; z-index: -1; background: linear-gradient(0deg, var(--bg), transparent); }
.hero-content { padding-top: var(--header); }
.eyebrow, .section-kicker { margin: 0 0 18px; color: var(--mint); font-size: 0.78rem; font-weight: 850; text-transform: uppercase; }
.hero h1 { margin: 0; max-width: 700px; font-size: clamp(4.4rem, 10vw, 8.6rem); line-height: 0.9; letter-spacing: 0; }
.hero-lead { max-width: 650px; margin: 28px 0 0; color: #d9e1dd; font-size: clamp(1.1rem, 1.7vw, 1.42rem); line-height: 1.55; }
.hero-actions, .company-actions, .closing-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }

.button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 21px;
  border: 1px solid transparent;
  border-radius: 6px;
  font-weight: 800;
  transition: transform 160ms ease, background-color 160ms ease, border-color 160ms ease;
}
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--mint-bright); color: var(--ink); }
.button-primary:hover { background: #79edbb; }
.button-secondary { background: rgba(10,15,13,0.55); border-color: rgba(255,255,255,0.36); color: var(--text); backdrop-filter: blur(8px); }
.button-secondary:hover { border-color: var(--mint); }
.button-quiet { background: transparent; border-color: var(--line); color: var(--text); }

.hero-proof {
  position: absolute;
  inset: auto 0 30px;
  display: flex;
  gap: 28px;
  color: #bfc9c4;
  font-size: 0.78rem;
}
.hero-proof span { display: flex; gap: 7px; align-items: center; }
.hero-proof span::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--mint); }
.hero-proof strong { color: var(--text); }

.statement { background: #0a100e; border-top: 1px solid rgba(255,255,255,0.05); }
.statement-grid { display: grid; grid-template-columns: 0.7fr 2fr; gap: 80px; align-items: start; }
.statement h2, .section-heading h2, .product-copy h2, .company-copy h2, .trust h2, .faq h2, .closing h2, .share h2 {
  margin: 0;
  max-width: 900px;
  font-size: clamp(2.25rem, 4.7vw, 4.4rem);
  line-height: 1.05;
  letter-spacing: 0;
}
.statement-grid > div > p { max-width: 800px; margin: 28px 0 0; color: var(--muted); font-size: 1.18rem; }
.section-heading { max-width: 880px; margin-bottom: 58px; }

.steps { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.step { padding: 30px 34px 10px 0; }
.step + .step { border-left: 1px solid var(--line); padding-left: 34px; }
.step-number { color: var(--mint); font-size: 0.8rem; font-weight: 850; }
.step h3 { margin: 52px 0 12px; font-size: 1.45rem; }
.step p { margin: 0; color: var(--muted); }

.product-layout { display: grid; grid-template-columns: 0.92fr 1.08fr; gap: 90px; align-items: center; }
.product-copy > p:not(.section-kicker), .company-copy > p:not(.section-kicker) { margin: 26px 0 0; color: var(--muted); font-size: 1.08rem; }
.feature-list { list-style: none; margin: 32px 0; padding: 0; display: grid; gap: 14px; color: #d7dfdb; }
.feature-list li { display: flex; gap: 12px; }
.feature-list span { color: var(--mint); font-weight: 900; }
.text-link { display: inline-flex; gap: 10px; color: var(--mint); font-weight: 800; border-bottom: 1px solid var(--line-strong); padding-bottom: 4px; }

.phone-stage { position: relative; min-height: 660px; display: flex; align-items: center; justify-content: center; }
.phone { margin: 0; position: relative; overflow: hidden; border: 8px solid #1b211f; background: #020303; box-shadow: 0 24px 70px rgba(0,0,0,0.4); }
.phone img { width: 100%; height: 100%; object-fit: cover; }
.phone-main { width: min(340px, 64%); aspect-ratio: 9 / 19.5; border-radius: 32px; }
.phone-pip { position: absolute; width: 210px; aspect-ratio: 9 / 18; right: 1%; bottom: 0; border-radius: 24px; border-width: 6px; }
.phone-pip img { object-position: 68% center; }
.phone-pip figcaption { position: absolute; inset: auto 10px 10px; padding: 7px 9px; background: rgba(4,8,7,0.84); border-radius: 5px; font-size: 0.72rem; font-weight: 800; text-align: center; }

.companies { background: #0a0f0e; border-top: 1px solid var(--line); }
.company-layout { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 80px; align-items: center; }
.dashboard-preview { border: 1px solid var(--line); border-radius: 8px; background: #111714; padding: 26px; box-shadow: 0 30px 80px rgba(0,0,0,0.34); }
.dashboard-topline { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.dashboard-topline div { display: grid; gap: 5px; }
.dashboard-topline span, .dashboard-metrics span { color: var(--muted); font-size: 0.72rem; text-transform: uppercase; font-weight: 800; }
.dashboard-topline strong { font-size: 1.15rem; }
.status-pill { display: inline-flex; align-items: center; gap: 7px; padding: 7px 9px; border: 1px solid var(--line-strong); border-radius: 999px; color: var(--mint) !important; white-space: nowrap; }
.status-pill i { width: 7px; height: 7px; border-radius: 50%; background: var(--mint); }
.dashboard-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; padding: 24px 0; }
.dashboard-metrics div { display: grid; gap: 5px; min-width: 0; padding: 14px; background: #18201d; border: 1px solid var(--line); border-radius: 6px; }
.dashboard-metrics strong { font-size: clamp(1.35rem, 2.2vw, 2rem); }
.dashboard-metrics small { color: #819088; }
.dashboard-chart { height: 180px; display: flex; align-items: flex-end; gap: 9px; padding: 26px 8px 0; border-bottom: 1px solid var(--line); }
.dashboard-chart span { flex: 1; min-width: 5px; height: var(--bar); background: var(--mint); opacity: 0.72; border-radius: 3px 3px 0 0; }
.dashboard-footer { display: flex; flex-wrap: wrap; gap: 16px; padding-top: 18px; color: var(--muted); font-size: 0.72rem; }

.band-mint { background: var(--mint); color: var(--ink); }
.share-layout { display: grid; grid-template-columns: 0.8fr 1.6fr; gap: 70px; align-items: center; }
.share-number { margin: 0; font-size: clamp(7rem, 18vw, 14rem); line-height: 0.8; font-weight: 900; }
.share-number span { font-size: 0.36em; }
.band-mint .section-kicker { color: #174e37; }
.share h2 { max-width: 760px; }
.share div > p:not(.section-kicker) { margin: 24px 0 0; max-width: 780px; font-size: 1.07rem; }
.share small { display: block; margin-top: 20px; font-weight: 750; opacity: 0.72; }

.trust-layout { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: 100px; }
.trust-points { border-top: 1px solid var(--line); }
.trust-points article { padding: 26px 0; border-bottom: 1px solid var(--line); }
.trust-points h3 { margin: 0 0 8px; font-size: 1.15rem; }
.trust-points p { margin: 0; color: var(--muted); }

.faq-layout { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: 90px; align-items: start; }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { position: relative; cursor: pointer; list-style: none; padding: 24px 46px 24px 0; font-weight: 800; font-size: 1.05rem; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; position: absolute; right: 4px; top: 20px; color: var(--mint); font-size: 1.6rem; font-weight: 400; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list details p { margin: 0; padding: 0 40px 24px 0; color: var(--muted); }

.closing { min-height: 620px; display: flex; align-items: center; background: #0a110e; border-top: 1px solid var(--line); text-align: center; }
.closing-inner { display: flex; flex-direction: column; align-items: center; }
.closing h2 { max-width: 960px; }
.closing-actions { justify-content: center; }

.site-footer { padding: 34px 0; background: #050706; border-top: 1px solid var(--line); }
.footer-grid { display: grid; grid-template-columns: 1fr auto; gap: 28px 50px; align-items: center; }
.footer-brand { display: flex; align-items: center; gap: 12px; }
.footer-brand img { border-radius: 8px; }
.footer-brand div { display: grid; }
.footer-brand span { color: var(--muted); font-size: 0.8rem; }
.footer-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 20px; color: #ccd5d0; font-size: 0.85rem; }
.footer-links a:hover { color: var(--mint); }
.footer-note { grid-column: 1 / -1; margin: 0; padding-top: 22px; border-top: 1px solid var(--line); color: #7f8d86; font-size: 0.78rem; }

:focus-visible { outline: 3px solid var(--mint); outline-offset: 4px; }

@media (max-width: 900px) {
  :root { --header: 68px; }
  .menu-toggle { display: inline-flex; }
  .main-nav {
    position: fixed;
    inset: var(--header) 0 auto;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px 24px 28px;
    background: rgba(7,11,10,0.98);
    border-bottom: 1px solid var(--line);
  }
  .site-header.is-open .main-nav { display: flex; }
  .main-nav > a { padding: 16px 0; border-bottom: 1px solid var(--line); font-size: 1rem; }
  .main-nav .nav-cta { margin-top: 14px; padding: 13px 15px; text-align: center; border: 1px solid var(--line-strong); }
  .statement-grid, .product-layout, .company-layout, .share-layout, .trust-layout, .faq-layout { grid-template-columns: 1fr; gap: 48px; }
  .statement-grid { gap: 20px; }
  .steps { grid-template-columns: 1fr; }
  .step, .step + .step { border-left: 0; border-bottom: 1px solid var(--line); padding: 24px 0; }
  .step h3 { margin-top: 24px; }
  .product-copy { max-width: 680px; }
  .phone-stage { min-height: 610px; }
  .phone-main { width: min(320px, 62%); }
  .dashboard-preview { max-width: 700px; }
  .share-number { font-size: 8rem; }
}

@media (max-width: 620px) {
  .shell { width: min(calc(100% - 32px), var(--max)); }
  .band { padding: 78px 0; }
  .site-header { padding-inline: 16px; }
  .brand img { width: 38px; height: 38px; }
  .hero { height: max(650px, 86svh); min-height: 650px; align-items: flex-end; padding-bottom: 112px; }
  .hero-media { object-position: 66% center; }
  .hero-shade { background: linear-gradient(0deg, rgba(4,8,7,0.98) 0%, rgba(4,8,7,0.78) 55%, rgba(4,8,7,0.36) 100%); }
  .hero h1 { font-size: clamp(3.25rem, 16.5vw, 4.15rem); }
  .hero-lead { margin-top: 20px; font-size: 1rem; }
  .hero-actions { margin-top: 24px; }
  .hero-actions .button { flex: 1 1 150px; padding-inline: 13px; font-size: 0.86rem; white-space: nowrap; }
  .hero-proof { bottom: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; overflow: visible; padding-bottom: 3px; }
  .hero-proof span { min-width: 0; align-items: flex-start; line-height: 1.25; }
  .hero-proof strong { display: none; }
  .statement h2, .section-heading h2, .product-copy h2, .company-copy h2, .trust h2, .faq h2, .closing h2, .share h2 { font-size: clamp(2.15rem, 11vw, 3.2rem); }
  .phone-stage { min-height: 540px; justify-content: flex-start; padding-left: 6%; }
  .phone-main { width: 66%; border-width: 6px; border-radius: 26px; }
  .phone-pip { width: 42%; right: 1%; border-radius: 19px; }
  .dashboard-preview { padding: 18px; }
  .dashboard-topline { align-items: stretch; }
  .status-pill { align-self: flex-start; }
  .dashboard-metrics { grid-template-columns: 1fr; }
  .dashboard-metrics div { grid-template-columns: 1fr auto; align-items: baseline; }
  .dashboard-metrics small { grid-column: 1 / -1; }
  .dashboard-chart { height: 130px; gap: 5px; }
  .company-actions .button, .closing-actions .button { width: 100%; }
  .share-layout { gap: 30px; }
  .share-number { font-size: 7rem; }
  .closing { min-height: 560px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-links { justify-content: flex-start; gap: 14px 18px; }
}

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