/* Landing sections for Совместимость */
.landing { padding-bottom: 20px; }
.lsec {
  padding: 72px 18px;
  opacity: 0; transform: translateY(22px);
  transition: opacity .7s ease, transform .7s ease;
}
.lsec.is-reveal { opacity: 1; transform: none; }
.lsec__inner { max-width: 980px; margin: 0 auto; }
.lsec__inner--narrow { max-width: 640px; }
.lsec__eyebrow {
  margin: 0 0 10px; font-family: var(--font-display);
  font-size: .7rem; letter-spacing: .22em; text-transform: uppercase; color: var(--gold-dim);
  text-align: center;
}
.lsec__title {
  margin: 0 0 14px; text-align: center;
  font-family: var(--font-display); font-weight: 600;
  font-size: clamp(1.8rem, 4.5vw, 2.6rem); letter-spacing: .04em; line-height: 1.15;
}
.lsec__lead {
  margin: 0 auto 32px; max-width: 36rem; text-align: center;
  color: var(--ink-soft); font-style: italic; font-size: 1.05rem;
}
.lsec__split {
  display: grid; gap: 28px; align-items: center;
}
@media (min-width: 820px) {
  .lsec__split { grid-template-columns: 1.15fr .85fr; gap: 40px; }
  .lsec__split .lsec__title,
  .lsec__split .lsec__eyebrow { text-align: left; }
  .lsec__split .lsec__lead { text-align: left; margin-left: 0; }
}

.axes-grid {
  display: grid; gap: 14px;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .axes-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 900px) {
  .axes-grid { grid-template-columns: repeat(5, 1fr); }
}
.ax {
  padding: 18px 16px;
  background: rgba(255,255,255,.55);
  border: 1px solid var(--line);
  opacity: 0; animation: riseIn .55s ease forwards;
}
.ax span {
  display: block; font-family: var(--font-display);
  font-size: .65rem; letter-spacing: .16em; color: var(--gold-dim); margin-bottom: 8px;
}
.ax h3 {
  margin: 0 0 8px; font-family: var(--font-display);
  font-size: 1.15rem; font-weight: 600; letter-spacing: .04em;
}
.ax p { margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.45; }
@keyframes riseIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: none; }
}

.rite-steps {
  margin: 0; padding: 0; list-style: none; display: grid; gap: 14px;
}
.rite-steps li {
  padding-left: 0; color: var(--ink-soft); line-height: 1.5;
  opacity: 0; animation: riseIn .5s ease forwards;
}
.rite-steps b { color: var(--ink); font-family: var(--font-display); font-weight: 600; letter-spacing: .03em; }

.rite-card {
  position: relative; padding: 28px 24px;
  border: 1px solid var(--line-strong);
  background: linear-gradient(160deg, rgba(47,95,98,.08), rgba(163,93,66,.1));
  overflow: hidden; text-align: center;
}
.rite-card__glow {
  position: absolute; inset: -20%;
  background: radial-gradient(circle at 50% 30%, rgba(184,149,90,.22), transparent 55%);
  pointer-events: none;
}
.rite-card__label {
  position: relative; margin: 0 0 8px; font-family: var(--font-display);
  font-size: .65rem; letter-spacing: .2em; text-transform: uppercase; color: var(--gold-dim);
}
.rite-card__name {
  position: relative; margin: 0 0 12px; font-family: var(--font-display);
  font-size: 1.6rem; letter-spacing: .06em;
}
.rite-card__text { position: relative; margin: 0; color: var(--ink-soft); font-style: italic; }

.kinds {
  display: grid; gap: 14px;
}
@media (min-width: 720px) { .kinds { grid-template-columns: repeat(2, 1fr); } }
.kind {
  padding: 22px 18px;
  background: rgba(255,255,255,.6);
  border: 1px solid var(--line);
}
.kind:nth-child(1) { border-top: 3px solid var(--b); }
.kind:nth-child(2) { border-top: 3px solid var(--a); }
.kind h3 {
  margin: 0 0 10px; font-family: var(--font-display);
  font-size: 1.25rem; letter-spacing: .05em;
}
.kind p { margin: 0; color: var(--muted); font-size: .95rem; }

.pay-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 14px; }
.pay-list li {
  padding: 14px 16px; border: 1px solid var(--line);
  background: rgba(255,255,255,.55); color: var(--ink-soft);
}
.pay-list li.is-free { border-color: rgba(47,95,98,.35); }
.pay-list li.is-lock { border-color: rgba(138,115,80,.35); }
.pay-list b { color: var(--ink); font-family: var(--font-display); letter-spacing: .03em; }

.pay-seal {
  text-align: center; padding: 32px 24px;
  border: 1px solid var(--line-strong);
  background: rgba(255,255,255,.7);
  box-shadow: var(--shadow);
}
.pay-seal__big {
  margin: 0; font-family: var(--font-display);
  font-size: 3.2rem; font-weight: 600; color: var(--ink); letter-spacing: .04em;
}
.pay-seal__sub {
  margin: 0 0 18px; font-family: var(--font-display);
  font-size: .72rem; letter-spacing: .16em; text-transform: uppercase; color: var(--muted);
}

.voices {
  display: grid; gap: 14px;
}
@media (min-width: 720px) { .voices { grid-template-columns: repeat(3, 1fr); } }
.voice {
  margin: 0; padding: 22px 18px;
  background: rgba(255,255,255,.55); border: 1px solid var(--line);
  opacity: 0; animation: riseIn .55s ease forwards;
}
.voice blockquote {
  margin: 0 0 14px; font-style: italic; color: var(--ink-soft); line-height: 1.5;
}
.voice figcaption {
  font-family: var(--font-display); font-size: .75rem;
  letter-spacing: .12em; text-transform: uppercase; color: var(--gold-dim);
}

.faq {
  border-bottom: 1px solid var(--line);
  padding: 14px 0;
}
.faq summary {
  cursor: pointer; font-family: var(--font-display);
  font-size: 1.05rem; letter-spacing: .03em; color: var(--ink);
  list-style: none;
}
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after {
  content: "+"; float: right; color: var(--gold-dim);
}
.faq[open] summary::after { content: "−"; }
.faq p { margin: 10px 0 4px; color: var(--ink-soft); line-height: 1.55; }

.lsec--final { text-align: center; position: relative; overflow: hidden; }
.final-ring {
  position: absolute; left: 50%; top: 40%;
  width: min(70vw, 420px); height: min(70vw, 420px);
  transform: translate(-50%, -50%);
  border: 1px solid rgba(138,115,80,.2);
  border-radius: 50%;
  box-shadow: inset 0 0 0 40px rgba(47,95,98,.04), inset 0 0 0 80px rgba(163,93,66,.04);
  pointer-events: none;
}
.final-note { margin: 18px 0 0; color: var(--muted); font-size: .8rem; }
