
:root{--bg:#fff;--text:#1b1b1b;--muted:#2d2d2d;--primary:#0a66c2;--primary-d:#084e96;--border:#d0d7de;--focus:#ffbf47}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6;color:var(--text);background:var(--bg)}
.container{max-width:72rem;margin-inline:auto;padding-inline:1rem}
.site-header{border-bottom:1px solid var(--border);background:#fff}
.header-inner{padding-block:1rem}
.site-title{font-size:1.6rem;margin:0}
.top-nav ul{display:flex;flex-wrap:wrap;gap:.5rem 1rem;list-style:none;margin:0;padding: .5rem 1rem;border-bottom:1px solid var(--border)}
.top-nav a{display:inline-flex;align-items:center;min-height:44px;padding:.25rem .6rem;border-radius:6px;text-decoration:none;color:var(--muted)}
.top-nav a:focus,.top-nav a:hover{background:var(--primary);color:#fff}
.skip-link{position:absolute;left:0;top:0;transform:translateY(-150%);background:var(--focus);color:#000;padding:.5rem .75rem;border-radius:0 0 4px 0;text-decoration:none;z-index:1000}
.skip-link:focus{transform:translateY(0);outline:3px solid #000}
:where(a,button,input,textarea,select,summary){outline-offset:3px}
:focus-visible{outline:3px solid var(--focus)}
h1{font-size:2rem;line-height:1.25}
h2{font-size:1.5rem;margin-top:2rem}
h3{font-size:1.25rem;margin-top:1.25rem}
.nowrap{white-space:nowrap}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:var(--primary);color:#fff;text-decoration:none;padding:.6rem .9rem;border-radius:6px;border:2px solid var(--primary-d)}
.button:hover,.button:focus{background:var(--primary-d)}
.card{border:1px solid var(--border);border-radius:8px;padding:1rem;background:#fff}
.contacts{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.muted{color:#555}
.site-footer{margin-top:3rem;border-top:1px solid var(--border);padding:1rem 0;background:#fafafa}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
