:root{
  --bg:#0b0c10; --panel:#111319; --panel-2:#141826;
  --text:#e8ecf1; --muted:#9aa3af; --brand:#6be675; --brand-2:#3ac2ff;
  --border:#1f2330; --shadow:0 10px 30px rgba(0,0,0,.35); --radius:16px;
}

/* База */
*{box-sizing:border-box}
html,body{height:100%;scroll-behavior:smooth}
body{
  margin:0;color:var(--text);
  background:
    radial-gradient(1200px 600px at 10% -10%, #19203955, transparent 60%),
    radial-gradient(1000px 500px at 100% 0%, #0e1a1455, transparent 50%),
    var(--bg);
  font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,Arial;
}
.container{width:min(1100px,92%);margin:0 auto}

/* Хедер */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(10,12,16,.8);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border)
}
.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:64px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text)}
.brand-logo{width:36px;height:36px;border-radius:8px;object-fit:cover;border:1px solid var(--border)}
.brand-name{font-weight:700;letter-spacing:.3px}
.nav-toggle{display:none;background:transparent;color:var(--text);border:1px solid var(--border);border-radius:10px;padding:6px 10px}
.nav-menu{display:flex;gap:18px;list-style:none;margin:0;padding:0;align-items:center}
.nav-menu a{color:var(--text);text-decoration:none}
.nav-menu a:hover{text-decoration:underline}

/* Кнопки */
.btn{
  appearance:none;border:1px solid var(--border);background:var(--panel);color:var(--text);
  padding:12px 18px;border-radius:12px;font-weight:600;cursor:pointer;box-shadow:var(--shadow);
  transition:transform .15s ease, filter .2s ease, box-shadow .2s ease, background .2s ease;
  text-decoration:none;
}
.btn,.btn:link,.btn:visited,.btn:hover,.btn:active{ text-decoration:none; }
.btn:hover{ filter:brightness(1.05); transform:translateY(-1px); }
.btn:active{ transform:translateY(0); }
.btn-small{ padding:8px 12px; font-weight:600; }
.btn-primary{ background:linear-gradient(135deg,var(--brand),var(--brand-2)); border:none; color:#071109; }
.site-header .btn-primary{ color:#000 !important; } /* текст в хедере — чёрный */
.btn-ghost{ background:transparent; border-color:var(--border); }
.cta .btn-ghost{ border-width:2px; border-color:var(--brand-2); }
.cta .btn-primary:hover, .cta .btn-ghost:hover{
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 12px 24px rgba(0,0,0,.35);
}
.cta .btn-primary:active, .cta .btn-ghost:active{ transform: translateY(0) scale(0.99); }

.i{ width:22px; height:22px; display:inline-block; vertical-align:-4px; }

/* Hero */
.hero{ padding:72px 0 60px; position:relative; overflow:clip; }
.hero-inner{ display:grid; grid-template-columns:1.1fr .9fr; gap:24px; align-items:center; }
.hero-text h1{ font-size:clamp(28px,5vw,48px); line-height:1.05; margin:0 0 10px; }
.subtitle{ color:var(--muted); max-width:60ch; }
.cta{ display:flex; gap:12px; margin-top:20px; }
.hero-art{ display:grid; place-items:center; }
.hero-logo{
  width:min(420px,80%); aspect-ratio:1; object-fit:cover;
  border-radius:var(--radius); background:var(--panel-2); border:1px solid var(--border); box-shadow:var(--shadow);
}
.scroll-down{
  position:absolute; left:50%; transform:translateX(-50%);
  bottom:12px; width:44px; height:44px; border-radius:50%;
  border:1px solid var(--border); background:rgba(17,19,25,.6); color:var(--text);
  display:grid; place-items:center; cursor:pointer;
}

/* Секции и акценты */
.section{ padding:56px 0; position:relative; }
.section h2{
  margin:0 0 20px; font-size:28px; text-align:center;
  display:inline-block; width:100%; padding-bottom:12px;
}
.section h2::after{
  content:""; display:block; height:3px; width:140px; margin:10px auto 0;
  background:linear-gradient(90deg, transparent, var(--brand-2), var(--brand), transparent);
  border-radius:3px;
}
.section h2::before{
  content:""; position:absolute; left:50%; transform:translateX(-50%);
  width:10px; height:10px; border-radius:50%; bottom: calc(100% - 8px);
  background:var(--brand-2);
  box-shadow:0 0 0 6px rgba(58,194,255,.15), 0 0 18px rgba(107,230,117,.35);
}
.grid{ display:grid; gap:18px; }
.features-grid{ grid-template-columns: repeat(4, 1fr); }

/* Тонкие разделители между секциями внутри общего блока */
.solid-wrap .section::after{
  content:""; position:absolute; left:5%; right:5%; bottom:0;
  height:1px; background:linear-gradient(90deg, transparent, #2a3142, transparent);
}
.solid-wrap .section:last-child::after{ display:none; }

/* ЕДИНЫЙ ФОН ДЛЯ "Возможности" + "Для кого" + "Отзывы" — с картинкой maze */
.solid-wrap{
  position: relative;
  overflow: hidden;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  background:#0e1218; /* запасной цвет */
}
.solid-wrap::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(14,18,24,.92), rgba(14,18,24,.92)),
    url('assets/maze.jpg') center/cover no-repeat;
  filter: saturate(.9) contrast(1.05) brightness(.95);
  z-index:0;
  pointer-events:none;
}
.solid-wrap > *{ position: relative; z-index: 1; }

/* Карточки */
.card{
  background:var(--panel); border:1px solid var(--border); border-radius:var(--radius);
  padding:18px; min-height:130px; box-shadow:var(--shadow);
  transition:transform .15s ease, box-shadow .25s ease, border-color .25s ease;
}
.card:hover{ transform:translateY(-2px); box-shadow:0 14px 34px rgba(0,0,0,.45); border-color:#2a3142; }
.card h3{ margin:6px 0 8px; font-size:18px; }
.card p{ margin:0; color:var(--muted); }
.card-ico{
  width:36px; height:36px; border:1px solid var(--border); border-radius:10px;
  display:grid; place-items:center; background:#0c0f15;
}

/* Для кого */
.who-card .tags{ display:flex; gap:6px; margin-bottom:8px; }
.tag{
  display:inline-block; padding:2px 8px; border:1px solid var(--border); border-radius:999px;
  font-size:12px; color:var(--muted); background:#0c0f15;
}
.check{ margin:10px 0 12px; padding-left:18px; }
.check li{ margin:4px 0; }
.more{ color:var(--brand-2); text-decoration:none; border-bottom:1px dashed rgba(58,194,255,.5); }
.more:hover{ filter:brightness(1.15); }

/* Отзывы — одна строка, бесконечная прокрутка */
.reviews-marquee{ position:relative; }
.marquee-viewport{
  overflow:hidden; border:1px solid var(--border); border-radius:16px; background:#0c0f15;
}
.marquee-track{
  display:flex; align-items:stretch; gap:12px; padding:12px;
  will-change: transform;
}
.review-card{
  flex:0 0 clamp(260px, 32vw, 340px);
  background:var(--panel); border:1px solid var(--border);
  border-radius:14px; padding:16px; box-shadow:var(--shadow);
}
.stars{ display:flex; gap:6px; margin-bottom:8px; opacity:.9; }
.quote{ margin:6px 0 10px; color:var(--text); }
.author{ margin:0; color:var(--muted); }

/* Кнопки сторах */
.store-badges{ display:flex; gap:12px; flex-wrap:wrap; margin-top:12px; }
.store-badge{
  display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius:12px;
  border:1.5px solid var(--border); background:rgba(15,19,26,.8); color:var(--text);
  box-shadow:var(--shadow); cursor:default; pointer-events:none;
}
.store-ico{ width:28px; height:28px; }
.store-badge span{ display:flex; flex-direction:column; line-height:1.05; }
.store-badge em{ font-style:normal; font-size:12px; color:var(--muted); }
.store-badge b{ font-size:14px; }

/* Футер */
.site-footer{ border-top:1px solid var(--border); background:#0a0c10; }
.footer-inner{ padding:20px 0; }
.muted{ color:var(--muted); }
.small{ font-size:12px; }

/* Параллакс-секции */
.parallax{
  background-image:var(--bg);
  background-size:cover; background-position:center; position:relative; background-attachment:fixed;
}
.parallax::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.35));
  pointer-events:none;
}
.parallax > *{ position:relative; z-index:1; }

/* Адаптив */
@media (max-width:960px){
  .features-grid{ grid-template-columns: repeat(2, 1fr); }
  .hero-inner{ grid-template-columns: 1fr; }
  .hero-art{ order: -1; }
}
@media (max-width:680px){
  .nav-toggle{ display:inline-flex; }
  .nav-menu{
    position:absolute; right:4%; top:64px; display:none; flex-direction:column;
    background:var(--panel); border:1px solid var(--border); border-radius:12px; padding:12px; min-width:220px
  }
  .nav-menu[open="true"]{ display:flex; }
  .parallax{ background-attachment:scroll; } /* mobile fallback */
}

/* Footer split (FIX): left text + right link */
.site-footer .footer-inner.footer-split{
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.site-footer .footer-inner.footer-split .footer-left{
  margin:0;
}

.site-footer .footer-inner.footer-split .footer-right{
  margin:0;
  color: inherit;
  text-decoration:none;
  opacity:.9;
  white-space:nowrap;
}

.site-footer .footer-inner.footer-split .footer-right:hover{
  opacity:1;
  text-decoration:underline;
}

/* На мобильных: в две строки */
@media (max-width: 560px){
  .site-footer .footer-inner.footer-split{
    flex-direction:column;
    align-items:flex-start;
  }
}
