/* AutoHost: визитка. Без внешних шрифтов и скриптов. Системный шрифт, крупный текст. */
:root{
  color-scheme: light;
  --ink:#0b1b33; --ink2:#2b3a52; --line:#cfdcec;
  --bg:#ffffff; --soft:#eef5fd;
  --brand:#0a58b8; --brand-d:#083f85; --brand-soft:#dcebfb;
  --ok:#0b6b47;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; -webkit-text-size-adjust:100%}
body{margin:0; background:var(--bg); color:var(--ink);
  font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:19px; line-height:1.6}
a{color:var(--brand-d)}
a:focus-visible,.btn:focus-visible{outline:3px solid #f5a300; outline-offset:2px}
.wrap{max-width:860px; margin:0 auto; padding:0 16px}
header.top{background:#fff; border-bottom:1px solid var(--line)}
.top .wrap{display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; min-height:68px; padding-top:8px; padding-bottom:4px}
.top img{width:44px; height:44px; flex:none}
.top .who{font-weight:700; font-size:18px; line-height:1.25; text-decoration:none; color:var(--ink)}
.top nav{margin-left:auto; display:flex; gap:16px; font-size:17px}
.top nav a,footer a{display:inline-flex; align-items:center; min-height:44px; white-space:nowrap}
@media (max-width:480px){ .top nav{margin-left:0; width:100%; gap:22px; border-top:1px solid var(--line)} }
.hero{background:var(--brand-d); color:#fff; padding:36px 0 40px}
.hero h1{font-size:32px; line-height:1.2; margin:0 0 14px}
.hero p{margin:0 0 12px; font-size:21px}
.hero .city{font-size:18px; opacity:.95}
.btns{display:flex; flex-wrap:wrap; gap:12px; margin-top:22px}
.btn{display:inline-flex; align-items:center; justify-content:center; min-height:56px; padding:12px 24px;
  border-radius:14px; font-size:20px; font-weight:700; text-decoration:none; text-align:center;
  background:var(--brand); color:#fff; border:2px solid var(--brand)}
.btn:hover{background:var(--brand-d); border-color:var(--brand-d)}
.hero .btn{background:#fff; color:var(--brand-d); border-color:#fff}
.hero .btn:hover{background:var(--brand-soft)}
.hero .btn.alt{background:transparent; color:#fff; border-color:#fff}
.btn.line{background:#fff; color:var(--brand-d); border-color:var(--brand)}
section{padding:34px 0; border-bottom:1px solid var(--line)}
section.soft{background:var(--soft)}
h1,h2,h3{color:inherit}
h2{font-size:28px; line-height:1.25; margin:0 0 16px}
h3{font-size:21px; margin:22px 0 6px}
ol,ul{padding-left:1.3em; margin:0 0 12px}
li{margin:0 0 10px}
.cols{display:grid; gap:18px}
@media (min-width:720px){ .cols{grid-template-columns:1fr 1fr} .hero h1{font-size:40px} }
.card{background:#fff; border:2px solid var(--line); border-radius:16px; padding:20px}
.note{background:#fff7e0; border-left:6px solid #f5a300; padding:14px 16px; border-radius:8px}
.contact-list{list-style:none; padding:0; margin:18px 0 0; display:grid; gap:12px}
.contact-list li{margin:0}
.contact-list .btn{width:100%}
.max{border:2px solid var(--line); border-radius:14px; padding:12px 16px; background:#fff}
h1,h2{overflow-wrap:break-word; hyphens:auto}
.doc h1{font-size:30px; line-height:1.2}
@media (max-width:480px){ .doc h1{font-size:26px} }
.doc h2{font-size:23px; margin-top:28px}
.doc p,.doc li{font-size:18px}
footer{background:var(--ink); color:#e8eef7; padding:30px 0; font-size:17px}
footer a{color:#fff}
footer p{margin:0 0 8px}
.skip{position:absolute; left:-999px}
.skip:focus{left:8px; top:8px; background:#fff; padding:8px; z-index:9}
