/* ==========================================================================
   ЧЕРТЁЖНЫЙ ЛИСТ — тёмный «синька» с белой сеткой, рамкой листа и выносками.
   Логика: страница = лист сборочного чертежа, секции = виды, таблица = спецификация.
   ========================================================================== */
@import url("_skeleton.css");

:root {
  --paper: #14232B;
  --surface: #1A2C35;
  --ink: #E9F1F3;
  --ink-deep: #0E1A21;
  --ink-soft: #A7BFC6;
  --muted: #7C949C;
  --accent: #EDFF49;
  --line: rgba(233, 241, 243, 0.16);
  --line-strong: rgba(233, 241, 243, 0.34);
  --radius: 3px;
  --h1: clamp(30px, 4.2vw, 50px);
  --h2: clamp(22px, 2.6vw, 30px);
  --body: 15px;
  --lead: 1.5;
  --section-pad: 40px;
}

body {
  background-color: var(--paper);
  background-image:
    linear-gradient(rgba(233, 241, 243, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(233, 241, 243, 0.055) 1px, transparent 1px);
  background-size: 24px 24px;
}

/* Рамка листа по периметру */
body::before {
  display: block;
  background: none;
  border: 1px solid rgba(233, 241, 243, 0.22);
}

.site-header { background: var(--ink-deep); }
.logo-mark { background: var(--accent); color: var(--ink-deep); border-radius: 2px; }

/* ---------- Первый экран: штамп + выноски ---------- */
.hero { background: var(--surface); }
.hero-inner { gap: 34px; }

.hero h1 {
  font-size: var(--h1);
  line-height: 1.06;
  letter-spacing: 0.01em;
  color: var(--ink);
  border: 1px solid var(--line-strong);
  padding: 14px 18px;
  background: rgba(233, 241, 243, 0.04);
}
.hero h1 .hl { color: var(--accent); }

.hero-eyebrow { color: var(--muted); letter-spacing: 0.18em; }
.hero-sub { color: var(--ink-soft); }

/* Выноска: линия с квадратной точкой на конце */
.hero-sub::after {
  content: "";
  display: block;
  width: 64px;
  height: 1px;
  margin-top: 14px;
  background: var(--accent);
}

.hero-facts { }
.fact {
  border: 1px solid var(--line);
  background: rgba(233, 241, 243, 0.03);
  border-radius: 2px;
}
.fact b { color: var(--ink); font-size: 22px; }
.fact span { color: var(--muted); }

/* Таблица спецификации: заголовок блока как штамп чертежа */
.hero-spec {
  border: 1px solid var(--line-strong);
  background: rgba(233, 241, 243, 0.04);
  padding: 18px 20px;
}
.hero-spec::before {
  content: "СПЕЦИФИКАЦИЯ · ЛИСТ 01";
  display: block;
  font-family: ui-monospace, 'JetBrains Mono', monospace;
  font-size: 10px;
  letter-spacing: 0.16em;
  color: var(--accent);
  border-bottom: 1px solid var(--line-strong);
  padding-bottom: 10px;
  margin-bottom: 12px;
}
.spec-label { display: none; }
.spec-table tr { border-bottom: 1px dashed var(--line); }
.spec-key { font-size: 14px; color: var(--ink-soft); }
.spec-val { color: var(--ink); }
.spec-val a { color: var(--accent); }
.spec-note { color: var(--muted); }

/* ---------- Секции: нумерация листов и размерные линии ---------- */
.section { border-bottom: 1px solid var(--line); }
.index {
  font-family: ui-monospace, 'JetBrains Mono', monospace;
  color: var(--accent);
  letter-spacing: 0.18em;
}
.index::before { display: none; }
.section-title { color: var(--ink); }
.section-title::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-top: 12px;
  background: repeating-linear-gradient(90deg, var(--line-strong) 0 6px, transparent 6px 12px);
}
.section-sub { color: var(--muted); }

.panel { border: 1px solid var(--line); background: rgba(233, 241, 243, 0.03); padding: 22px; }

.showcase-card { background: rgba(233, 241, 243, 0.03); border-radius: 2px; }
.showcase-card .thumb { background: var(--ink-deep); }
.showcase-card strong { color: var(--ink); }
.showcase-card span { color: var(--muted); }

/* Этапы как размерная цепь */
.steps { gap: 14px; }
.step { border-top: 1px solid var(--line); }
.step .num {
  font-family: ui-monospace, 'JetBrains Mono', monospace;
  font-size: 12px;
  letter-spacing: 0.1em;
  color: var(--accent);
}
.step h3 { color: var(--ink); }
.step p { color: var(--muted); }

.partner-logo { background: rgba(233, 241, 243, 0.04); border-radius: 2px; }
.ind-row { background: rgba(233, 241, 243, 0.03); border-radius: 2px; }
.ind-main b { color: var(--ink); }
.ind-main span { color: var(--muted); }

.faq-q { color: var(--ink); }
.faq-a { color: var(--ink-soft); }

.cta-form input, .cta-form textarea { background: var(--ink-deep); border-color: var(--line); border-radius: 2px; }

/* ---------- Адаптив ---------- */
@media (max-width: 1020px) {
  .hero-inner { gap: 22px; }
  .hero-facts { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
  .hero h1 { padding: 10px 12px; }
  .hero-spec { padding: 14px; }
  .fact { padding: 10px 12px; }
  .fact b { font-size: 19px; }
}

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; }
}
