/* «Дрезины» — стиль: бетон, графит, сигнальный жёлтый; рельсы и шпалы как разделители. */
@font-face{font-family:"Roboto Slab";font-weight:400;font-display:swap;src:url(/static/fonts/roboto-slab-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Roboto Slab";font-weight:700;font-display:swap;src:url(/static/fonts/roboto-slab-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Roboto Slab";font-weight:400;font-display:swap;src:url(/static/fonts/roboto-slab-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2193}
@font-face{font-family:"Roboto Slab";font-weight:700;font-display:swap;src:url(/static/fonts/roboto-slab-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2193}
@font-face{font-family:Manrope;font-weight:400;font-display:swap;src:url(/static/fonts/manrope-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-weight:700;font-display:swap;src:url(/static/fonts/manrope-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Manrope;font-weight:400;font-display:swap;src:url(/static/fonts/manrope-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2193}
@font-face{font-family:Manrope;font-weight:700;font-display:swap;src:url(/static/fonts/manrope-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2190-2193}
:root{--beton:#e9e7e1;--list:#f6f5f1;--grafit:#23262b;--tekst:#1f2328;--seryi:#5d5f63;--zhelt:#e0ad1f;--rzhav:#9c3d1c;--shpala:#8d8a82;--lin:#cfccc3}
*{box-sizing:border-box}
html{background:var(--beton)}
body{margin:0;color:var(--tekst);font:17px/1.6 Manrope,system-ui,sans-serif}
a{color:var(--rzhav)}a:hover{color:#6e2a12}
h1,h2,h3{font-family:"Roboto Slab",Georgia,serif;line-height:1.25;color:var(--grafit)}
h1{font-size:clamp(1.6rem,3.6vw,2.3rem);margin:.4em 0 .5em}
h2{font-size:1.35rem;margin:1.4em 0 .6em}
main{max-width:1120px;margin:0 auto;padding:0 18px 40px}
.shapka{background:var(--grafit);color:#eee}
.polosa{height:8px;background:repeating-linear-gradient(-45deg,var(--zhelt) 0 14px,var(--grafit) 14px 28px)}
.shapka-in{max-width:1120px;margin:0 auto;padding:10px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px}
.znak{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:700 1.35rem "Roboto Slab",serif}
.znak svg{width:36px;height:36px}
.nav{display:flex;flex-wrap:wrap;gap:2px 16px}
.nav a{color:#d9d7d0;text-decoration:none;font-size:.95rem;padding:4px 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current]{color:#fff;border-bottom-color:var(--zhelt)}
/* «путь»: два рельса на шпалах */
.put{height:22px;margin:28px 0 6px;background:linear-gradient(var(--shpala),var(--shpala)) 0 6px/100% 3px no-repeat,linear-gradient(var(--shpala),var(--shpala)) 0 14px/100% 3px no-repeat,repeating-linear-gradient(90deg,#b9b4a8 0 10px,transparent 10px 34px)}
.vvod{max-width:46em}
.vvod p{font-size:1.05rem}
.schet{font-family:"Roboto Slab",serif;color:var(--seryi)}
.kartochki{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px}
.kart a{display:block;text-decoration:none;color:var(--tekst);background:var(--list);border:1px solid var(--lin);border-bottom:4px solid var(--zhelt);height:100%}
.kart a:hover{border-color:var(--grafit)}
.kadr{position:relative;display:block;aspect-ratio:16/9;background:#3a3d42;overflow:hidden}
.kadr img{width:100%;height:100%;object-fit:cover;display:block}
.dl{position:absolute;right:6px;bottom:6px;background:rgba(20,22,25,.85);color:#fff;font:700 .8rem "Roboto Slab",serif;padding:1px 6px}
.kt{display:block;padding:9px 11px 2px;font-weight:700;line-height:1.35}
.km{display:block;padding:0 11px 10px;color:var(--seryi);font-size:.85rem}
.dalee{margin-top:14px}
.razdely{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.razdely li{background:var(--list);border-left:6px solid var(--grafit);padding:12px 14px}
.razdely a{display:flex;justify-content:space-between;gap:10px;text-decoration:none;font-family:"Roboto Slab",serif}
.razdely a span{color:var(--seryi);white-space:nowrap}
.razdely p{margin:.4em 0 0;font-size:.92rem;color:var(--seryi)}
.kroshki{margin:22px 0 0;font-size:.9rem;color:var(--seryi)}
.ekran{margin:0 0 20px;background:#111}
.ekran video{display:block;width:100%;aspect-ratio:16/9;background:#111}
.zvuk{color:#bbb;font-size:.85rem;padding:6px 10px;background:var(--grafit)}
.kachestvo{margin-left:10px}
.zapis{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px;align-items:start}
.opis p:first-child{margin-top:0}
.pasport{border-collapse:collapse;width:100%;background:var(--list);font-size:.92rem;border-top:4px solid var(--grafit)}
.pasport caption{text-align:left;font:700 1rem "Roboto Slab",serif;padding:0 0 6px}
.pasport th,.pasport td{text-align:left;vertical-align:top;padding:7px 10px;border-bottom:1px solid var(--lin)}
.pasport th{color:var(--seryi);font-weight:400;width:38%}
.pasport td{overflow-wrap:anywhere}
.vyshlo{color:var(--seryi);font-size:.9rem}
.sosedi{display:flex;justify-content:space-between;gap:16px;margin-top:26px;border-top:1px solid var(--lin);padding-top:14px}
.sosedi .sl{text-align:right;margin-left:auto}
.tabl{overflow-x:auto}
.vse{border-collapse:collapse;width:100%;background:var(--list);font-size:.92rem}
.vse th,.vse td{padding:7px 9px;border-bottom:1px solid var(--lin);text-align:left;vertical-align:top}
.vse thead th{background:var(--grafit);color:#eee;font-weight:700}
.vse .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.mesta{padding-left:1.1em}.mesta span{color:var(--seryi);font-size:.9rem}
.zhurnal{list-style:none;padding:0}.zhurnal time{display:inline-block;min-width:3.5em;font-family:"Roboto Slab",serif;color:var(--seryi)}
.slovar dt{font:700 1.05rem "Roboto Slab",serif;margin-top:1.1em}
.slovar dd{margin:.25em 0 0;max-width:46em}
.forma{display:grid;gap:14px;max-width:36em}
.forma label{display:grid;gap:4px;font-weight:700;font-size:.95rem}
.forma input,.forma select,.forma textarea{font:inherit;font-weight:400;padding:8px 10px;border:1px solid #a9a59b;background:#fff;color:var(--tekst)}
.forma button{justify-self:start;font:700 1rem Manrope,sans-serif;padding:10px 22px;background:var(--grafit);color:#fff;border:0;border-bottom:4px solid var(--zhelt);cursor:pointer}
.lovushka{position:absolute;left:-9999px}
.melko{font-size:.88rem;color:var(--seryi);max-width:40em}
#oshibka{background:#f7e3d9;border-left:5px solid var(--rzhav);padding:10px 14px;max-width:36em}
.podval{background:var(--grafit);color:#c9c7c0;font-size:.88rem;margin-top:30px}
.podval-in{max-width:1120px;margin:0 auto;padding:16px 18px}
.podval a{color:#f0c654}
@media (max-width:760px){.zapis{grid-template-columns:1fr}.shapka-in{padding:8px 16px}main{padding:0 16px 30px}}
