/*
 * V73 / FINAL POLISH · раунды шефа 30.07 (вторая сессия)
 * Аддитивный слой. Канон-файлы не трогаем, всё переопределяется здесь.
 *
 * 1. Двери #routes: сцены выходят из тесных виджетов на всю ширину карточки
 * 2. ONE MINER FIRST: один раздел вместо пустого пина + оторванной подписи
 * 3. Финдер: степпер и карточки семейств
 * 4. Safe-install: путь вместо половины пустого экрана
 * 5. Парк: армия + когорта = один раздел
 * 6. Authority: инспекции + одна орбита
 * 7. Models: карта покрытия
 * 8. FAQ на дверях
 * 9. Instagram
 */

/* ================= 1 · ДВЕРИ: СЦЕНА ВО ВСЮ КАРТОЧКУ ================= */
/* КОРЕНЬ ПРОБЛЕМЫ: .scene Бивиса меряет высоту вьюпортом (86svh), а не
   контейнером - в окошке 348x230 она втрое выше рамки и обрезается.
   Переводим на cqh: сцена садится в свой контейнер целиком. */
.miner-identity--a08 .a08-root .scene {
  width: min(1180px, 72cqw) !important;
  height: min(720px, 72cqh) !important;
  transform:
    translate3d(-50%, -50%, 0)
    perspective(1200px)
    rotateX(calc(var(--my) * -2.2deg))
    rotateY(calc(var(--mx) * 3.2deg)) !important;
}

/* слэбы держатся дальше от краёв кадра, майнер не давит центр */
.miner-identity--a08 .a08-root .slab-one { left: 10% !important; width: 32% !important; }
.miner-identity--a08 .a08-root .slab-fleet { right: 6% !important; width: 36% !important; }
.miner-identity--a08 .a08-root .slab-hosting { left: 13% !important; width: 34% !important; }
.miner-identity--a08 .a08-root .slab-control { right: 10% !important; width: 31% !important; }
.miner-identity--a08 .a08-root .miner-wrap { width: min(500px, 32cqw) !important; left: 52% !important; }

.route-doors { margin-top: 54px; }

.route-door {
  min-height: 0;
  padding: 34px 42px 40px;
}

.route-door h3 { margin: 0 0 14px; }
.route-door p { max-width: 560px; margin: 0 0 26px; color: #97958e; font-size: 14.5px; line-height: 1.65; }
.route-door > b { margin-top: auto; }

.door-index {
  display: flex;
  width: 100%;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
}
.door-index i {
  color: #5f5d57;
  font-size: 8px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: .16em;
}

/* сцена вылезает за паддинги карточки: кадр во всю её ширину */
.miner-identity--a08,
.fleet-orchestration--wave {
  position: relative !important;
  z-index: 0;
  top: auto !important;
  right: auto !important;
  width: calc(100% + 84px) !important;
  max-width: none;
  margin: 20px -42px 24px !important;
  aspect-ratio: 16 / 9.8 !important;
  overflow: hidden !important;
}
/* края растворяются в карточке: одна мягкая маска вместо двух слоёв
   (mask-composite: intersect этот Chrome складывал как add и маска не работала) */
.miner-identity--a08,
.fleet-orchestration--wave {
  -webkit-mask: radial-gradient(ellipse 74% 72% at 50% 46%, #000 46%, rgba(0,0,0,.55) 78%, transparent 100%) !important;
  mask: radial-gradient(ellipse 74% 72% at 50% 46%, #000 46%, rgba(0,0,0,.55) 78%, transparent 100%) !important;
}
/* чёрная подложка сцены Бивиса гасится - иначе в карточке виден прямоугольник */
.miner-identity--a08 .a08-root .scene { background: transparent !important; }
.fleet-orchestration--wave { background: transparent !important; }

/* три шага прямо в двери: месседж вместо абстрактных слов */
.door-steps {
  display: grid;
  width: 100%;
  margin: 0 0 26px;
  padding: 0;
  gap: 1px;
  background: var(--line);
  list-style: none;
}
.door-steps li {
  display: grid;
  grid-template-columns: 34px 1fr;
  align-items: baseline;
  gap: 4px;
  padding: 13px 0 13px 2px;
  background: #0d0f0f;
}
.door-steps b {
  color: #a5834c;
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: 13px;
  font-weight: 400;
}
.door-steps span { display: block; color: #7f7e79; font-size: 11.5px; line-height: 1.5; }
.door-steps strong {
  display: block;
  margin-bottom: 2px;
  color: var(--ivory, #f1eee7);
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: .01em;
}

.door-assurance {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 26px;
  gap: 8px;
}
.door-assurance span {
  border: 1px solid rgba(231, 199, 125, .26);
  border-radius: 999px;
  padding: 6px 12px;
  background: rgba(231, 199, 125, .05);
  color: #cbb083;
  font-size: 8.5px;
  font-weight: 600;
  letter-spacing: .14em;
}

/* обе двери ведут в один написанный путь */
.route-guides {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 26px;
  gap: 10px 26px;
}
.route-guides p {
  margin: 0 8px 0 0;
  color: #6d6c66;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.route-guides a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid rgba(231, 199, 125, .2);
  padding-bottom: 4px;
  color: #cfc7b6;
  font-size: 12.5px;
  transition: color .25s ease, border-color .25s ease;
}
.route-guides a em { color: var(--gold, #e7c77d); font-style: normal; }
.route-guides a:hover { border-color: var(--gold, #e7c77d); color: #fff; }

.route-continuity { margin-top: 30px; }

/* ================= 2 · ONE MINER FIRST: ОДИН РАЗДЕЛ ================= */
/* было: 440vh пустого пина с заголовком и оторванная подпись внизу.
   стало: обычная секция. #stage03 сохранён - на нём держится движок актов */
.cinema-act--ritual .cinema-pin--ritual { height: auto; }
.cinema-act--ritual .cinema-viewport {
  position: relative;
  height: auto;
  overflow: visible;
  background: #080a0a;
}
.cinema-act--ritual .cinema-stage {
  position: relative;
  inset: auto;
  padding: 140px 0 150px;
  background:
    radial-gradient(ellipse at 78% 30%, rgba(203, 158, 72, .1), transparent 34rem),
    radial-gradient(ellipse at 8% 68%, rgba(96, 156, 176, .06), transparent 30rem),
    #080a0a;
}

.oneminer-head { max-width: 1000px; }
.oneminer-head h2 {
  margin: 0;
  max-width: 15ch;
  color: var(--ivory, #f1eee7);
  font-family: "Iowan Old Style", Baskerville, Georgia, serif;
  font-size: clamp(46px, 5vw, 84px);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .98;
}
.oneminer-lede {
  max-width: 62ch;
  margin: 26px 0 0;
  color: #93918b;
  font-size: 15px;
  line-height: 1.75;
}

.oneminer-body {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  align-items: start;
  margin-top: 64px;
  gap: 60px;
}

.oneminer-facts { margin: 0; padding: 0; list-style: none; }
.oneminer-facts li {
  display: grid;
  grid-template-columns: 62px 1fr;
  align-items: start;
  border-top: 1px solid var(--line);
  padding: 26px 0;
}
.oneminer-facts li:last-child { border-bottom: 1px solid var(--line); }
.oneminer-facts b {
  color: var(--gold, #e7c77d);
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 1;
}
.oneminer-facts strong {
  display: block;
  margin-bottom: 9px;
  color: var(--ivory, #f1eee7);
  font-size: 17px;
  font-weight: 500;
  letter-spacing: -.01em;
}
.oneminer-facts p { margin: 0; max-width: 52ch; color: #8b8a84; font-size: 13.5px; line-height: 1.65; }

/* слот сцены: пока живёт наш кадр, сюда встанет сцена шефа */
.oneminer-scene {
  position: relative;
  aspect-ratio: 16 / 13;
  overflow: hidden;
  isolation: isolate;
}
.oneminer-scene .ritual-backdrop { position: absolute; inset: 0; opacity: .9; }
.oneminer-scene .gold-axis,
.oneminer-scene .floor-plane,
.oneminer-scene .light-ribbon { opacity: .55; }
.oneminer-unit {
  position: absolute;
  z-index: 3;
  bottom: 15%;
  left: 50%;
  width: min(58%, 310px);
  margin: 0;
  translate: -50% 0;
  text-align: center;
}
.oneminer-unit img {
  width: 100%;
  height: auto;
  filter: drop-shadow(0 40px 60px rgba(0, 0, 0, .6)) drop-shadow(0 0 40px rgba(231, 199, 125, .1));
}
.oneminer-unit figcaption {
  margin-top: 18px;
  color: #6f6d66;
  font-size: 8px;
  font-weight: 600;
  letter-spacing: .22em;
}
.oneminer-scene::after {
  position: absolute;
  z-index: 2;
  bottom: 9%;
  left: 50%;
  width: min(80%, 460px);
  height: 26px;
  translate: -50% 0;
  border-radius: 50%;
  background: radial-gradient(ellipse at 50% 50%, rgba(231, 199, 125, .22), transparent 70%);
  content: "";
  filter: blur(6px);
}

/* один и тот же аппарат, два состояния: цифры сверены с публичной таблицей */
.oneminer-proof {
  display: grid;
  grid-template-columns: 1fr auto 1fr 1.35fr;
  align-items: center;
  margin-top: 72px;
  gap: 1px;
  background: var(--line);
}
.oneminer-proof > * {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: center;
  gap: 9px;
  padding: 26px 28px;
  background: #0b0d0d;
}
.oneminer-proof small { color: #6b6a64; font-size: 8px; font-weight: 600; letter-spacing: .2em; }
.oneminer-proof b {
  color: var(--ivory, #f1eee7);
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: 38px;
  font-weight: 400;
  line-height: 1;
}
.oneminer-proof b em { color: #77746c; font-size: 15px; font-style: normal; }
.oneminer-proof span { color: #86857f; font-size: 12px; letter-spacing: .04em; }
.op-col--vnish b { color: var(--gold, #e7c77d); }
.op-arrow { align-items: center; padding: 26px 20px; }
.op-arrow i {
  display: block;
  width: 46px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold, #e7c77d));
}
.op-arrow span { color: #5f5e58; font-size: 7.5px; letter-spacing: .18em; }
.op-delta b { color: var(--gold, #e7c77d); font-size: 30px; }
.op-delta span { max-width: 44ch; color: #86857f; font-size: 12px; line-height: 1.55; }

.oneminer-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 40px;
  gap: 18px 30px;
}
.oneminer-actions .text-link { color: #cfc7b6; font-size: 13px; }
.oneminer-actions .text-link b { color: var(--gold, #e7c77d); }
.oneminer-note { color: #6d6c66; font-size: 9px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; }

/* ================= 3 · ФИНДЕР: ПОРЯДОК ВМЕСТО «ТАБЛИЦЫ» ================= */
.finder-explainer {
  max-width: 66ch;
  margin: 18px 0 0;
  color: #6f6c66;
  font-size: 13.5px;
  line-height: 1.7;
}

/* степпер: дорожка процесса, а не пять ячеек таблицы */
.finder-resolver-panel .resolver-steps,
.resolver-steps {
  display: flex;
  align-items: center;
  gap: 0;
  border-bottom: 1px solid rgba(231, 199, 125, .12);
  padding: 0 38px;
  background: rgba(231, 199, 125, .03);
  counter-reset: rstep;
}
.resolver-steps span {
  display: flex;
  flex: 1;
  align-items: center;
  gap: 9px;
  padding: 17px 0;
  background: none;
  color: #a29d94;
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: .16em;
}
.resolver-steps span + span { border-left: 0; }
.resolver-steps span::before {
  display: grid;
  width: 19px;
  height: 19px;
  flex: none;
  border: 1px solid rgba(231, 199, 125, .22);
  border-radius: 50%;
  color: #8d887f;
  content: counter(rstep, decimal-leading-zero);
  counter-increment: rstep;
  font-size: 7.5px;
  letter-spacing: 0;
  place-items: center;
}
.resolver-steps span.is-active { background: none; color: var(--ivory, #f1eee7); }
.resolver-steps span.is-active::before {
  border-color: var(--gold, #e7c77d);
  background: var(--gold, #e7c77d);
  color: #10120f;
}
.resolver-steps span.is-active::after { background: var(--gold, #e7c77d); }
.resolver-steps span.is-active::after { left: 0; right: auto; width: 100%; height: 2px; }

/* быстрые модели живут по сетке панели, а не липнут к краю */
.finder-model-chips { margin: 28px 38px 2px !important; }
.finder-model-chips b {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 4px;
  color: #8b877f;
}
.finder-model-chips b i {
  color: #a5a097;
  font-size: 10.5px;
  font-style: normal;
  font-weight: 500;
  letter-spacing: .02em;
  text-transform: none;
}
.finder-model-chip { font-size: 11.5px; }

.resolver-prompt {
  margin: 0 38px;
  padding: 26px 0 20px;
  border-top: 1px solid rgba(0, 0, 0, .08);
  color: #55524d;
  font-size: 13.5px;
}
.finder-resolver-panel .resolver-option { min-height: 104px; }
.finder-resolver-panel .resolver-option b { font-size: 19px; letter-spacing: -.02em; }
.finder-resolver-panel .resolver-option small { color: #8a867f; font-size: 10.5px; letter-spacing: .04em; }

/* подсказка по платам закрывает пустоту панели и продолжает клиентский путь */
.finder-boardhint {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  margin: 34px 38px 38px;
  border-top: 1px solid rgba(231, 199, 125, .14);
  padding-top: 26px;
  gap: 20px 34px;
}
.finder-boardhint small {
  display: block;
  margin-bottom: 10px;
  color: var(--gold, #e7c77d);
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: .2em;
}
.finder-boardhint p { margin: 0; max-width: 74ch; color: #8b8a84; font-size: 12.5px; line-height: 1.65; }
.finder-boardhint p b { color: var(--ivory, #f1eee7); font-weight: 600; }
.finder-boardhint a { white-space: nowrap; }

@media (max-width: 900px) {
  .finder-boardhint { grid-template-columns: 1fr; margin: 26px 18px 28px; }
}

/* ================= 7 · MODELS: КАРТА ПОКРЫТИЯ ИЗ ЖИВОГО КАТАЛОГА ========= */
/* раздел давно перекрашен в чёрный (v66) - карта живёт в тёмном каноне */
.models { padding: 130px 0 140px; }
.models-intro { max-width: 1080px; }
.models .models-deck { max-width: 68ch; margin-top: 22px; font-size: 14.5px; line-height: 1.7; }

.coverage { position: relative; z-index: 3; margin-top: 50px; }
.coverage-head {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  align-items: start;
  gap: 40px;
}
.coverage-legend {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 26px;
}
.coverage-legend span {
  display: flex;
  align-items: baseline;
  gap: 10px;
  color: #86847e;
  font-size: 11.5px;
  line-height: 1.45;
}
.coverage-legend b {
  min-width: 34px;
  border: 1px solid rgba(231, 199, 125, .3);
  padding: 3px 6px;
  color: var(--gold, #e7c77d);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .1em;
  text-align: center;
}

.coverage-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.coverage-filters button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(231, 199, 125, .22);
  border-radius: 999px;
  padding: 9px 15px;
  background: rgba(231, 199, 125, .04);
  color: #cfc7b6;
  cursor: pointer;
  font-family: inherit;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .02em;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}
.coverage-filters button i {
  color: #8b8778;
  font-size: 9.5px;
  font-style: normal;
  font-weight: 700;
}
.coverage-filters button:hover { border-color: rgba(231, 199, 125, .5); color: #fff; }
.coverage-filters button.is-active {
  border-color: var(--gold, #e7c77d);
  background: var(--gold, #e7c77d);
  color: #10120f;
}
.coverage-filters button.is-active i { color: rgba(16, 18, 15, .6); }

.coverage-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(215px, 1fr));
  margin-top: 34px;
  gap: 1px;
  background: rgba(231, 199, 125, .14);
}
.cov-tile {
  display: flex;
  min-height: 146px;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  border: 0;
  padding: 20px 20px 18px;
  background: #0a0c0c;
  cursor: pointer;
  font-family: inherit;
  text-align: left;
  transition: background .22s ease;
}
.cov-name {
  color: var(--ivory, #f1eee7);
  font-size: 19px;
  font-weight: 400;
  letter-spacing: -.03em;
  line-height: 1.05;
}
.cov-boards { display: flex; flex-wrap: wrap; gap: 5px; }
.cov-boards i {
  border: 1px solid rgba(231, 199, 125, .22);
  padding: 3px 7px;
  color: #9a927f;
  font-size: 8.5px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .1em;
}
.cov-builds { margin-top: auto; color: #79776f; font-size: 10px; letter-spacing: .06em; }
.cov-builds b {
  margin-right: 6px;
  color: var(--gold, #e7c77d);
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: 17px;
  font-weight: 400;
}
.cov-go {
  color: var(--gold, #e7c77d);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .12em;
  opacity: 0;
  transition: opacity .22s ease;
}
.cov-tile:hover,
.cov-tile:focus-visible {
  background: #12100b;
  outline: 0;
}
.cov-tile:hover .cov-boards i,
.cov-tile:focus-visible .cov-boards i { border-color: rgba(231, 199, 125, .5); color: var(--gold, #e7c77d); }
.cov-tile:hover .cov-go,
.cov-tile:focus-visible .cov-go { opacity: 1; }

.coverage-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  margin-top: 22px;
  gap: 12px 30px;
}
.coverage-foot p { margin: 0; color: #7e7c76; font-size: 12px; letter-spacing: .02em; }
.coverage-foot a {
  border-bottom: 1px solid rgba(231, 199, 125, .28);
  padding-bottom: 3px;
  color: #cfc7b6;
  font-size: 11.5px;
  font-weight: 600;
}
.coverage-foot a:hover { border-color: var(--gold, #e7c77d); color: var(--gold, #e7c77d); }

.models .model-actions { margin-top: 42px; }

@media (max-width: 900px) {
  .coverage-head { grid-template-columns: 1fr; }
  .coverage-filters { justify-content: flex-start; }
  .coverage-legend { grid-template-columns: 1fr; }
  .coverage-grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
  .cov-tile { min-height: 128px; padding: 16px; }
  .cov-name { font-size: 16px; }
}

/* ================= 8 · FAQ: ПОРТАЛ И ВОПРОСЫ ================= */
/* стили FAQ были снесены при перекраске карты моделей (замена по диапазону
   съела соседний блок) - отсюда «сломанный» раздел у шефа. Собран заново:
   сцена больше не растягивается фоном на весь экран, это кадрированный
   портал с фиксированной геометрией, одинаковый и на 1440, и на 3440 */
.faq {
  position: relative;
  --faq-open: 0;
  min-height: 0;
  padding: 104px 0 112px;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(ellipse at 22% 46%, rgba(231, 199, 125, calc(.05 + var(--faq-open) * .07)), transparent 52%),
    #060808;
}

.faq-layout {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  align-items: start;
  gap: 66px;
}

/* ---- портал ---- */
.faq-portal { position: sticky; top: 116px; }
.faq-portal-frame {
  position: relative;
  aspect-ratio: 936 / 846;
  overflow: hidden;
  border-radius: 4px;
  isolation: isolate;
}
.faq-portal-frame img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(calc(1 + var(--faq-open) * .045));
  filter: brightness(calc(.78 + var(--faq-open) * .3)) saturate(calc(1.02 + var(--faq-open) * .12));
  transition: transform 1.3s cubic-bezier(.2, .75, .2, 1), filter 1s ease;
}
.faq-portal-frame::after {
  position: absolute;
  z-index: 3;
  inset: 0;
  background:
    radial-gradient(ellipse at 50% 58%, transparent 34%, rgba(6, 8, 8, .5) 78%),
    linear-gradient(180deg, rgba(6, 8, 8, .5), transparent 18%, transparent 74%, rgba(6, 8, 8, .82));
  content: "";
  pointer-events: none;
}
.faq .vgo-threshold-bloom {
  z-index: 2;
  opacity: calc(.4 + var(--faq-open) * .6) !important;
  transition: opacity .9s ease;
}
.faq .vgo-th-beams i { opacity: calc(.26 + var(--faq-open) * .54); transition: opacity .9s ease; }
.faq .vgo-th-dust { opacity: calc(.5 + var(--faq-open) * .5); }

/* номер открытой двери прямо на портале */
.faq-portal-num {
  position: absolute;
  z-index: 4;
  left: 8%;
  bottom: 7%;
  color: rgba(244, 221, 164, calc(.35 + var(--faq-open) * .6));
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: clamp(52px, 4.6vw, 84px);
  font-weight: 400;
  line-height: 1;
  text-shadow: 0 10px 40px rgba(0, 0, 0, .85);
  transition: color .5s ease;
}
.faq-portal-cap {
  position: absolute;
  z-index: 4;
  right: 8%;
  bottom: 10%;
  max-width: 46%;
  color: rgba(214, 208, 194, calc(.42 + var(--faq-open) * .4));
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .22em;
  text-align: right;
  text-transform: uppercase;
}

.faq-contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 24px;
  gap: 10px 20px;
}
.faq-contact span { color: #6d6c66; font-size: 8.5px; font-weight: 700; letter-spacing: .18em; }
.faq-contact a {
  border-bottom: 1px solid rgba(231, 199, 125, .3);
  padding-bottom: 3px;
  color: var(--gold, #e7c77d);
  font-size: 12.5px;
}
.faq-contact a:hover { border-color: var(--gold, #e7c77d); color: #fff; }

/* ---- вопросы ---- */
.faq-head { margin-bottom: 30px; }
.faq-head .vgo-kicker { color: var(--gold, #e7c77d); }
.faq .faq-head h2 {
  margin: 12px 0 0;
  color: var(--ivory, #f1eee7);
  font-family: "Iowan Old Style", Baskerville, Georgia, serif;
  font-size: clamp(44px, 4.6vw, 78px);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .98;
}
.faq-lede {
  max-width: 54ch;
  margin: 20px 0 0;
  color: #97958e;
  font-size: 14.5px;
  line-height: 1.7;
}

.faq-list { display: grid; border-top: 1px solid rgba(231, 199, 125, .14); }
.faq-item {
  position: relative;
  border-bottom: 1px solid rgba(231, 199, 125, .14);
  transition: background .3s ease;
}
.faq-item[open] { background: linear-gradient(90deg, rgba(231, 199, 125, .05), transparent 60%); }
/* луч из портала в открытый ответ */
.faq-item[open]::before {
  position: absolute;
  top: 27px;
  left: -66px;
  width: 66px;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold, #e7c77d));
  content: "";
  animation: faqBeam .5s ease both;
}
@keyframes faqBeam {
  from { opacity: 0; transform: scaleX(.2); transform-origin: right; }
  to { opacity: 1; transform: none; }
}
.faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px 18px 4px;
  cursor: pointer;
  gap: 22px;
  list-style: none;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary b {
  color: #ddd7ca;
  font-size: 16.5px;
  font-weight: 400;
  letter-spacing: -.015em;
  line-height: 1.35;
  transition: color .25s ease, translate .3s var(--ease, cubic-bezier(.16, 1, .3, 1));
}
.faq-item[open] summary b { color: var(--ivory, #f1eee7); translate: 8px 0; }
.faq-item summary:hover b { color: var(--ivory, #f1eee7); }
.faq-item summary i { position: relative; width: 13px; height: 13px; flex: none; }
.faq-item summary i::before,
.faq-item summary i::after {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: var(--gold, #e7c77d);
  content: "";
  transition: transform .3s var(--ease, cubic-bezier(.16, 1, .3, 1)), opacity .3s ease;
}
.faq-item summary i::after { transform: rotate(90deg); }
.faq-item[open] summary i::after { opacity: 0; transform: rotate(0deg); }
.faq-answer { padding: 0 20px 24px 12px; }
.faq-answer p {
  max-width: 78ch;
  margin: 0;
  color: #98968f;
  font-size: 13.5px;
  line-height: 1.75;
}
.faq-item[open] .faq-answer { animation: faqReveal .45s cubic-bezier(.16, 1, .3, 1) both; }
@keyframes faqReveal {
  from { opacity: 0; transform: translateY(-6px); }
  to { opacity: 1; transform: none; }
}

@media (max-width: 1040px) {
  .faq-layout { grid-template-columns: 1fr; gap: 34px; }
  .faq-portal { position: static; }
  .faq { padding: 76px 0 86px; }
  .faq-item[open]::before { display: none; }
  .faq-item summary { padding: 16px 14px 16px 2px; }
  .faq-item summary b { font-size: 14.5px; }
  .faq-answer { padding: 0 14px 18px 2px; }
}

@media (prefers-reduced-motion: reduce) {
  .faq-portal-frame img { transition: none; }
  .faq-item[open] .faq-answer,
  .faq-item[open]::before { animation: none; }
}

/* ================= 9 · INSTAGRAM: РОДНОЙ ЗНАК НА РОДНОМ ГРАДИЕНТЕ ========= */
/* в ряду с FB/X/YT все знаки в своих фирменных цветах - инста была
   единственной выдуманной. Возвращаем канонический глиф Meta */
.fol-tile--ig .ic {
  border: 0 !important;
  border-radius: 12px !important;
  background:
    radial-gradient(circle at 28% 108%, #fdf497 0%, #fdf497 6%, #fd5949 42%, #d6249f 62%, #285aeb 92%) !important;
  box-shadow: 0 8px 22px rgba(214, 36, 159, .28) !important;
}
.fol-tile--ig .ic svg { color: #fff; fill: none !important; }
.fol-tile--ig .ic svg rect,
.fol-tile--ig .ic svg circle[stroke] { fill: none !important; stroke: #fff !important; }
.fol-tile--ig .ic svg circle[fill] { fill: #fff !important; stroke: none !important; }
.fol-tile--ig .ic svg path { fill: none !important; }
.fol-tile--ig:hover .ic {
  border: 0 !important;
  box-shadow: 0 10px 30px rgba(214, 36, 159, .45) !important;
}

/* ================= 6 · ДОВЕРИЕ: ЧТО ИМЕННО МОЖНО ОСМОТРЕТЬ ================= */
/* приказ: из анимации убрать все орбиты, оставить одну переднюю */
.authority .artifact-spectrum,
.authority .artifact-reactor,
.authority-ripples { display: none !important; }
/* боковая грань плиты давала золотую палку у правого края - убираем */
.authority .artifact-edge { display: none !important; }
/* одна орбита в стабильной плоскости: раньше кольцо крутилось ещё и в
   плоскости экрана (rotate:1turn поверх transform) - отсюда «капля» и рваный
   правый край. Теперь плоскость стоит, по ней едет только сигнальная точка */
.authority .artifact-orbit {
  inset: 6%;
  border-color: rgba(231, 199, 125, .28);
  rotate: none !important;
  transform: rotateX(74deg) rotateZ(0deg);
  animation: v73OrbitRun 11s linear infinite !important;
}
@keyframes v73OrbitRun {
  from { transform: rotateX(74deg) rotateZ(0deg); }
  to { transform: rotateX(74deg) rotateZ(360deg); }
}
.authority .artifact-orbit::before {
  width: 8px;
  height: 8px;
  box-shadow: 0 0 22px rgba(231, 199, 125, .9);
}

.authority { min-height: 0; padding: 130px 0 140px; align-items: center; }
.authority-copy { padding-block: 0; }
.authority-lede {
  max-width: 62ch;
  margin: 20px 0 0;
  color: #8d8c86;
  font-size: 14px;
  line-height: 1.75;
}
.authority-stats { margin-top: 38px; }

.authority-inspect {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-top: 30px;
  gap: 1px;
  background: var(--line);
}
.authority-inspect a {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 22px 22px 20px;
  background: #090b0b;
  transition: background .25s ease;
}
.authority-inspect a:hover { background: #0e1111; }
.authority-inspect small { color: var(--gold, #e7c77d); font-size: 7.5px; font-weight: 700; letter-spacing: .2em; }
.authority-inspect b { color: var(--ivory, #f1eee7); font-size: 15px; font-weight: 500; letter-spacing: -.01em; }
.authority-inspect span { color: #85847e; font-size: 12px; line-height: 1.55; }
.authority-inspect em {
  margin-top: 4px;
  color: #a08a5e;
  font-size: 10px;
  font-style: normal;
  letter-spacing: .08em;
}
.authority-inspect a:hover em { color: var(--gold, #e7c77d); }

.authority-links-label {
  color: #57564f;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .2em;
}
.authority-links {
  position: static;
  align-items: center;
  justify-content: center;
  margin-top: 46px;
  transform: none;
  grid-column: 1 / -1;
}

@media (max-width: 1040px) {
  .authority { grid-template-columns: 1fr; }
  .authority-inspect { grid-template-columns: 1fr; }
}

/* ================= 5 · ПАРК: АРМИЯ + КОГОРТА = ОДИН РАЗДЕЛ ================= */
.fleet--merged { min-height: 0; padding: 150px 0 160px; }
.fleet--merged .fleet-copy { max-width: 1040px; margin-bottom: 54px; }
.fleet--merged .fleet-lede {
  max-width: 74ch;
  margin-top: 22px;
  color: #93918b;
  font-size: 15px;
  line-height: 1.75;
}
.fleet--merged .vgo-array { padding: 0; background: none; }
.fleet--merged .vgo-array .vgo-shell { padding: 0; }

.fleet-story {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 56px;
  gap: 1px;
  background: var(--line);
}
.fleet-story article {
  padding: 32px 30px 34px;
  background: #0a0c0c;
}
.fleet-story small {
  display: block;
  margin-bottom: 16px;
  color: var(--gold, #e7c77d);
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .2em;
}
.fleet-story h3 {
  margin: 0 0 12px;
  color: var(--ivory, #f1eee7);
  font-size: 20px;
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.15;
}
.fleet-story p { margin: 0; color: #8b8a84; font-size: 13px; line-height: 1.65; }

.fleet-scale {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 40px;
  gap: 18px 34px;
}
.fleet-scale span { display: flex; align-items: baseline; gap: 12px; }
.fleet-scale b {
  color: var(--gold, #e7c77d);
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 1;
}
.fleet-scale small { color: #7c7b75; font-size: 8.5px; font-weight: 600; letter-spacing: .18em; }
.fleet-scale i {
  width: 42px;
  height: 1px;
  background: linear-gradient(90deg, rgba(231, 199, 125, .5), transparent);
}

.fleet-stageshead { max-width: 760px; margin-top: 96px; margin-bottom: 34px; }
.fleet-stageshead h3 {
  margin: 0 0 14px;
  color: var(--ivory, #f1eee7);
  font-family: "Iowan Old Style", Baskerville, Georgia, serif;
  font-size: clamp(32px, 3.2vw, 50px);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: 1.02;
}
.fleet-stageshead p { margin: 0; max-width: 58ch; color: #8f8e88; font-size: 14px; line-height: 1.7; }

@media (max-width: 1040px) {
  .fleet-story { grid-template-columns: 1fr; }
  .fleet--merged { padding: 90px 0 100px; }
}

/* ================= 4 · SAFE INSTALL: ПУТЬ, А НЕ ПУСТОТА ================= */
.safe-install { padding: 120px 0 130px; }
.safe-layout { display: block; }
.safe-head {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  align-items: end;
  gap: 18px 60px;
}
.safe-head .eyebrow { grid-column: 1; grid-row: 1; }
.safe-head h2 { grid-column: 1; grid-row: 2; }
.safe-head .safe-lede { grid-column: 2; grid-row: 1 / 3; align-self: end; }
.safe-install h2 { font-size: clamp(40px, 4vw, 62px); }
.safe-lede {
  max-width: 56ch;
  margin: 0 0 6px;
  color: #8c8b85;
  font-size: 14px;
  line-height: 1.7;
}

.safe-path {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin: 58px 0 0;
  padding: 0;
  gap: 1px;
  background: var(--line);
  list-style: none;
}
.safe-install .safe-path li {
  display: block;
  min-height: 0;
  border: 0;
  background: #0b0d0d;
}
.safe-install .safe-path li > b {
  display: block;
  padding: 24px 24px 0;
  color: #a5834c;
  font-size: 22px;
}
.safe-path .safe-step-link {
  display: flex;
  height: calc(100% - 46px);
  flex-direction: column;
  padding: 14px 24px 26px;
  gap: 14px;
}
.safe-install .safe-path li span {
  display: block;
  grid-template-columns: none;
  color: #85847e;
  font-size: 12.5px;
  line-height: 1.6;
}
.safe-install .safe-path li strong {
  display: block;
  margin-bottom: 8px;
  font-size: 16px;
}
.safe-path .safe-step-link em {
  margin-top: auto;
  color: var(--gold, #e7c77d);
  font-size: 18px;
  font-style: normal;
  transition: translate .3s ease;
}
.safe-path .safe-step-link:hover em { translate: 6px; }
.safe-path li:hover { background: #0e1111; }

.safe-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 26px;
  gap: 10px 26px;
}
.safe-foot span {
  margin-right: 6px;
  color: #6d6c66;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .18em;
}
.safe-foot a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid rgba(231, 199, 125, .18);
  padding-bottom: 4px;
  color: #cfc7b6;
  font-size: 12.5px;
  transition: color .25s ease, border-color .25s ease;
}
.safe-foot a em { color: var(--gold, #e7c77d); font-style: normal; }
.safe-foot a:hover { border-color: var(--gold, #e7c77d); color: #fff; }

@media (max-width: 1040px) {
  .safe-head { grid-template-columns: 1fr; gap: 26px; }
  .safe-path { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 700px) {
  .safe-path { grid-template-columns: 1fr; }
}

@media (max-width: 1040px) {
  .oneminer-body { grid-template-columns: 1fr; gap: 44px; }
  .oneminer-scene { aspect-ratio: 16 / 11; }
  .oneminer-proof { grid-template-columns: 1fr 1fr; }
  .op-arrow { display: none; }
  .cinema-act--ritual .cinema-stage { padding: 90px 0 100px; }
}

@media (max-width: 1040px) {
  .route-door { padding: 26px 24px 32px; }
  .miner-identity--a08,
  .fleet-orchestration--wave {
    width: calc(100% + 48px) !important;
    margin: 18px -24px 22px !important;
  }
}
