/*
 * servisy.css — раздел «Сервисы» (/servisy/) и лендинг Incognito Web
 * (/servisy/incognito-web/). Префикс .sv-* отдельный от префиксов .il-
 * и .pl- (других продуктовых лендингов).
 * Палитра и типографика — конституция Iustitia: тёмный графит, один
 * teal-акцент, PT Serif для заголовков, hairline-разделители.
 */
.sv-page {
    --sv-ink: #091012;
    --sv-surface: #101a1c;
    --sv-raised: #142124;
    --sv-deep: #071112;
    --sv-line: rgba(213, 232, 227, .17);
    --sv-line-strong: rgba(95, 186, 180, .48);
    --sv-text: #edf3f1;
    --sv-muted: #afbfbc;
    --sv-accent: #5fbab4;
    --sv-accent-dim: rgba(95, 186, 180, .12);
    --sv-warn: #c8a55a;
    background: var(--sv-ink);
    color: var(--sv-text);
    font-family: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
}

.sv-shell { width: min(100% - 2.5rem, 72rem); margin: 0 auto; }

.sv-kick {
    color: var(--sv-accent);
    font: 600 .7rem/1.5 "JetBrains Mono", monospace;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.sv-h1 { margin: .9rem 0 0; font: 700 clamp(2rem, 4vw, 3.2rem)/1.06 "PT Serif", Georgia, serif; letter-spacing: -.02em; }
.sv-h2 { font: 700 clamp(1.4rem, 2.4vw, 2rem)/1.12 "PT Serif", Georgia, serif; letter-spacing: -.01em; }

.sv-lead { max-width: 44rem; margin-top: 1.1rem; color: #d3dfdc; font-size: 1.04rem; line-height: 1.7; }
.sv-muted { color: var(--sv-muted); }
.sv-copy { max-width: 46rem; margin-top: 1rem; color: var(--sv-muted); font-size: .92rem; line-height: 1.65; }

.sv-sec { padding: 4rem 0; border-bottom: 1px solid var(--sv-line); }
.sv-sec--surface { background: var(--sv-surface); }
.sv-sec--deep { background: var(--sv-deep); }

.sv-crumb { font: 500 .74rem/1 "JetBrains Mono", monospace; color: #5c6f6c; margin-bottom: 1.6rem; }
.sv-crumb a { color: var(--sv-muted); text-decoration: none; }

.sv-badge-free {
    display: inline-flex; align-items: center; gap: .55rem;
    border: 1px solid var(--sv-warn); color: #e8d9b0; border-radius: 2px;
    padding: .5rem .95rem; font: 600 .8rem/1.3 "Inter", sans-serif; letter-spacing: .02em;
}
.sv-badge-free i { width: .5rem; height: .5rem; background: var(--sv-warn); border-radius: 50%; }

.sv-btn { display: inline-block; border-radius: 2px; text-decoration: none; font-weight: 600; font-size: .92rem; padding: .78rem 1.5rem; transition: .15s; }
.sv-btn--accent { background: var(--sv-accent); color: #06211f; }
.sv-btn--accent:hover { background: #79cdc7; }
.sv-btn--ghost { border: 1px solid var(--sv-line-strong); color: var(--sv-text); }
.sv-btn--ghost:hover { background: var(--sv-accent-dim); }
.sv-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.8rem; }

.sv-trust { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--sv-line); margin-top: 2.8rem; }
.sv-trust > div { padding: 1.2rem 1.3rem 1.4rem; border-left: 1px solid var(--sv-line); }
.sv-trust > div:first-child { border-left: none; }
.sv-trust b { display: block; font: 700 1.45rem/1.2 "PT Serif", Georgia, serif; }
.sv-trust span { display: block; margin-top: .25rem; color: var(--sv-muted); font-size: .8rem; line-height: 1.45; }

.sv-steps { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--sv-line); margin-top: 2.4rem; counter-reset: svst; }
.sv-steps > div { padding: 1.7rem 1.6rem 0; border-left: 1px solid var(--sv-line); counter-increment: svst; }
.sv-steps > div:first-child { border-left: none; }
.sv-steps > div::before { content: "0" counter(svst); font: 600 .8rem/1 "JetBrains Mono", monospace; color: var(--sv-accent); letter-spacing: .1em; }
.sv-steps h3 { margin: .7rem 0 .35rem; font: 600 .95rem/1.4 "Inter", sans-serif; }
.sv-steps p { color: var(--sv-muted); font-size: .86rem; line-height: 1.6; }

.sv-punch { max-width: 46rem; margin-top: 2.2rem; padding: 1.1rem 1.5rem; border-left: 2px solid var(--sv-accent); background: var(--sv-accent-dim); font-size: .98rem; }
.sv-fineprint { margin-top: 1.6rem; color: #5c6f6c; font-size: .76rem; line-height: 1.6; }
.sv-fineprint a { color: var(--sv-accent); }

/* Страница раздела: строки-сервисы */
.sv-row { display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; border-top: 1px solid var(--sv-line); padding: 1.9rem 0; }
.sv-row:last-child { border-bottom: 1px solid var(--sv-line); }
.sv-row h3 { font: 700 1.25rem/1.3 "PT Serif", Georgia, serif; }
.sv-row p { margin-top: .4rem; color: var(--sv-muted); font-size: .9rem; line-height: 1.6; max-width: 46rem; }
.sv-row-cta { text-align: right; }
.sv-state { font: 600 .68rem/1 "JetBrains Mono", monospace; letter-spacing: .12em; text-transform: uppercase; border: 1px solid var(--sv-line); color: var(--sv-muted); border-radius: 2px; padding: .4rem .7rem; white-space: nowrap; display: inline-block; }
.sv-state--live { border-color: var(--sv-line-strong); color: var(--sv-accent); }

/* Тарифные карточки */
.sv-grid3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.2rem; margin-top: 2.2rem; }
.sv-tariff { border: 1px solid var(--sv-line); background: var(--sv-raised); padding: 1.7rem 1.7rem 1.9rem; display: flex; flex-direction: column; gap: .4rem; }
.sv-tariff h3 { font: 700 1.2rem/1.25 "PT Serif", Georgia, serif; }
.sv-tariff .sv-price { font: 700 1.7rem/1.2 "PT Serif", Georgia, serif; color: var(--sv-accent); }
.sv-tariff ul { list-style: none; margin: .8rem 0 1.2rem; }
.sv-tariff li { padding: .42rem 0 .42rem 1.2rem; position: relative; color: var(--sv-muted); font-size: .86rem; border-top: 1px solid var(--sv-line); }
.sv-tariff li::before { content: "—"; position: absolute; left: 0; color: var(--sv-accent); }
.sv-tariff .sv-btn { margin-top: auto; text-align: center; }

/* Виджет партнёра */
.sv-partner-frame { border: 1px solid var(--sv-line-strong); background: #060b0c; padding: 1.1rem; margin-top: 2rem; }
.sv-partner-tag { font: 600 .62rem/1 "JetBrains Mono", monospace; color: #5c6f6c; letter-spacing: .1em; margin-bottom: .8rem; }
.sv-partner-site { background: #f4f4f2; color: #26302e; padding: 2rem 1.6rem; border-radius: 2px; font-family: "Inter", sans-serif; }
.sv-ps-nav { display: flex; gap: 1rem; font-size: .72rem; color: #8a938f; border-bottom: 1px solid #dcded8; padding-bottom: .6rem; margin-bottom: 1.4rem; }
.sv-widget { max-width: 22rem; border: 1px solid #10201f; background: var(--sv-surface); color: var(--sv-text); border-radius: 2px; overflow: hidden; }
.sv-widget-head { display: flex; align-items: center; gap: .55rem; padding: .7rem .95rem; border-bottom: 1px solid var(--sv-line); font-size: .78rem; font-weight: 600; }
.sv-widget-head .sv-dot { width: .5rem; height: .5rem; border-radius: 50%; background: var(--sv-accent); }
.sv-widget-body { padding: .95rem; }
.sv-widget-body p { font-size: .78rem; color: var(--sv-muted); line-height: 1.55; }
.sv-widget-upl { margin-top: .8rem; border: 1px dashed var(--sv-line-strong); border-radius: 2px; padding: .9rem; text-align: center; font-size: .78rem; color: var(--sv-muted); }
.sv-widget-upl b { display: block; color: var(--sv-text); font-size: .82rem; margin-bottom: .15rem; }
.sv-widget-foot { padding: .55rem .95rem; border-top: 1px solid var(--sv-line); font: 500 .62rem/1.4 "Inter", sans-serif; color: #5c6f6c; }
.sv-widget-foot a { color: var(--sv-accent); text-decoration: none; }

@media (max-width: 860px) {
    .sv-trust, .sv-steps, .sv-grid3 { grid-template-columns: 1fr; }
    .sv-trust > div, .sv-steps > div { border-left: none; border-top: 1px solid var(--sv-line); }
    .sv-row { grid-template-columns: 1fr; }
    .sv-row-cta { text-align: left; }
}
