/* SERPion guides — общая типографика для всех /guides/ страниц.
   Наследует палитру лендинга (Editorial Scorpion). */
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;padding:0}
:root{
  --paper:#F5F2EC;--paper-2:#EDE8DC;--paper-3:#FAF7F0;
  --ink:#12110F;--ink-2:#4A4742;--ink-3:#8A857C;
  --line:#D9D3C6;--line-2:#C8C1B0;
  --venom:#D8411B;--venom-soft:#D8411B14;
  --ok:#2E6B3E;--warn:#B8860B;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;
  --serif:"Instrument Serif",Georgia,"Times New Roman",serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
html{color-scheme:light}
body{
  font-family:var(--sans);background:var(--paper);color:var(--ink);
  -webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
a.inline{color:var(--venom);border-bottom:1px solid var(--line-2);padding-bottom:1px;transition:border-color .15s}
a.inline:hover{border-bottom-color:var(--venom)}
::selection{background:var(--venom);color:var(--paper)}
code{font-family:var(--mono);font-size:.92em;background:var(--paper-2);padding:1px 5px;border-radius:2px}
pre{font-family:var(--mono);font-size:13px;line-height:1.6;background:var(--paper-3);border:1px solid var(--line);padding:20px 24px;border-radius:2px;overflow-x:auto;margin:20px 0}
pre code{background:transparent;padding:0;font-size:inherit}

.container{max-width:760px;margin:0 auto;padding:0 24px}
.container.wide{max-width:1080px}

/* Header */
header{padding:22px 0;position:sticky;top:0;z-index:5;background:color-mix(in srgb, var(--paper) 92%, transparent);backdrop-filter:saturate(150%) blur(6px);border-bottom:1px solid transparent}
header.scrolled{border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:1080px;margin:0 auto;padding:0 24px}
.logo{display:inline-flex;align-items:baseline;gap:3px;font-family:var(--serif);font-size:24px;letter-spacing:-.01em;color:var(--ink)}
.logo .i{font-style:italic}
.logo .mark{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--venom);margin-left:8px;transform:translateY(-10px)}
.nav-links{display:flex;gap:24px;color:var(--ink-2);font-size:14px}
.nav-links a:hover{color:var(--ink)}
@media (max-width:720px){.nav-links{display:none}}
.back{font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.04em}
.back:hover{color:var(--venom)}

/* Article */
article{padding:60px 0 40px}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:var(--ink-2);text-transform:uppercase;display:flex;align-items:center;gap:10px;margin-bottom:18px}
.eyebrow::before{content:"";display:inline-block;width:22px;height:1px;background:var(--venom)}

h1{font-family:var(--serif);font-weight:400;font-size:clamp(36px,5vw,56px);line-height:1.05;letter-spacing:-.015em;margin:0 0 20px;max-width:22ch}
h1 em{font-style:italic;color:var(--venom)}
.byline{display:flex;gap:14px;font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;margin:0 0 40px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.byline time{color:var(--ink-2)}

.lede{font-size:clamp(18px,1.6vw,21px);line-height:1.55;color:var(--ink-2);margin:0 0 32px;max-width:62ch}
.lede strong{color:var(--ink);font-weight:500}

article h2{font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.15;letter-spacing:-.01em;margin:44px 0 14px}
article h3{font-family:var(--sans);font-weight:600;font-size:19px;line-height:1.3;margin:28px 0 10px}

article p{margin:0 0 16px;max-width:64ch;color:var(--ink)}
article ul,article ol{margin:0 0 20px;padding-left:22px;max-width:62ch}
article li{margin:6px 0;line-height:1.6}
article li::marker{color:var(--venom)}

.callout{border:1px solid var(--line);background:var(--paper-3);padding:20px 24px;margin:24px 0;border-left:3px solid var(--venom)}
.callout h4{margin:0 0 8px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);font-weight:500}
.callout p{margin:0 0 8px;color:var(--ink-2);font-size:15px;line-height:1.55}
.callout p:last-child{margin:0}
.callout.warn{border-left-color:var(--warn)}
.callout.ok{border-left-color:var(--ok)}

table{width:100%;border-collapse:collapse;margin:20px 0;font-size:14px}
th{text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-weight:500;padding:10px 12px;border-bottom:1px solid var(--ink)}
td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}
td:first-child{font-family:var(--mono);font-size:13px}

.checklist{list-style:none;padding:0;margin:0}
.checklist li{padding:10px 0;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:flex-start;font-size:14px}
.checklist li:last-child{border-bottom:0}
.checklist .glyph{font-family:var(--mono);font-weight:500;flex:0 0 20px;margin-top:1px}
.checklist .pass .glyph{color:var(--ok)}
.checklist .warn .glyph{color:var(--warn)}
.checklist .fail .glyph{color:var(--venom)}

.faq{margin:24px 0}
.faq details{border-top:1px solid var(--line);padding:14px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{font-size:17px;color:var(--ink);cursor:pointer;list-style:none;position:relative;padding-right:28px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:0;font-family:var(--mono);font-weight:500;color:var(--venom);font-size:16px}
.faq details[open] summary::after{content:"−"}
.faq details > *:not(summary){margin-top:12px;color:var(--ink-2);font-size:15px}

/* Next / related */
.next{margin-top:52px;padding-top:28px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.next a{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border:1px solid var(--line);background:var(--paper-3);border-radius:2px;transition:border-color .15s}
.next a:hover{border-color:var(--venom)}
.next a .l{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-3);text-transform:uppercase}
.next a .t{font-family:var(--serif);font-size:20px;line-height:1.2;color:var(--ink);letter-spacing:-.005em}

footer{padding:40px 0 60px;border-top:1px solid var(--line);margin-top:60px;font-size:13px;color:var(--ink-3)}
footer .fnav{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}
footer a:hover{color:var(--venom)}

/* CTA */
.cta{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:28px 32px;margin:40px 0;border-radius:2px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.cta .t{font-family:var(--serif);font-size:24px;line-height:1.2;letter-spacing:-.01em;max-width:36ch}
.cta .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;background:var(--venom);color:var(--paper);font-weight:500;font-size:15px;border-radius:2px;transition:transform .15s}
.cta .btn:hover{transform:translateX(2px)}

/* Guides hub */
.guides-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:32px 0}
@media (max-width:720px){.guides-grid{grid-template-columns:1fr}}
.guide-card{background:var(--paper);padding:28px 28px 26px;display:flex;flex-direction:column;gap:12px;transition:background .15s}
.guide-card:hover{background:var(--paper-3)}
.guide-card .num{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--ink-3);text-transform:uppercase}
.guide-card h3{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.15;letter-spacing:-.01em;margin:0;color:var(--ink)}
.guide-card p{margin:0;color:var(--ink-2);font-size:15px;line-height:1.55}
.guide-card .meta{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-3);margin-top:auto;padding-top:8px}
