:root{--ink:#1c2228;--steel:#1b3a5c;--muted:#5b6670;--line:#d5dbe1;--bg:#ffffff;--bg2:#eef1f4;--mark:#f2b705;--fill:#fff3bf}
*{box-sizing:border-box}html{scroll-padding-top:80px}
body{margin:0;font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:17px;line-height:1.55}
a{color:var(--steel)}a:focus-visible,button:focus-visible{outline:3px solid var(--mark);outline-offset:2px}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px}
header{border-bottom:4px solid var(--mark);background:var(--bg)}
.top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0;flex-wrap:wrap}
.brand{text-decoration:none;color:var(--ink);font-weight:600;font-size:1.05rem;letter-spacing:.01em;line-height:1.2}
.brand small{display:block;font-weight:400;color:var(--muted);font-size:.8rem}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;flex-wrap:wrap}
nav a{display:block;padding:8px 10px;text-decoration:none;color:var(--ink);border-bottom:3px solid transparent;font-size:.95rem}
nav a[aria-current]{border-bottom-color:var(--steel);font-weight:600}
nav a:hover{border-bottom-color:var(--line)}
.tel{white-space:nowrap;font-weight:600;color:var(--steel);text-decoration:none}
main{padding:40px 0 64px}
h1{font-size:clamp(1.9rem,4.5vw,2.8rem);line-height:1.15;margin:0 0 16px;max-width:22ch;font-weight:600;letter-spacing:-.01em}
h2{font-size:1.35rem;margin:40px 0 10px;font-weight:600}
h3{font-size:1.1rem;margin:22px 0 6px;font-weight:600}
p,li{max-width:66ch}
.lead{font-size:1.2rem;color:var(--ink);max-width:56ch}
.hero{padding:16px 0 32px;border-bottom:1px solid var(--line)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;margin:32px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.facts li{padding:18px 18px 18px 0;border-bottom:1px solid var(--line);max-width:none}
.facts b{display:block;font-size:1.05rem;margin-bottom:4px}
.btn{display:inline-block;background:var(--steel);color:#fff;text-decoration:none;padding:12px 20px;font-weight:600;border-radius:3px}
.btn.alt{background:transparent;color:var(--steel);border:2px solid var(--steel)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.steps{list-style:none;padding:0;margin:0;counter-reset:s}
.steps li{position:relative;padding:14px 0 14px 56px;border-bottom:1px solid var(--line);max-width:none;counter-increment:s}
.steps li::before{content:counter(s);position:absolute;left:0;top:12px;width:38px;height:38px;border:2px solid var(--steel);color:var(--steel);font-weight:600;display:grid;place-items:center;border-radius:50%}
.steps b{display:block}
.note{background:var(--bg2);padding:20px 22px;border-left:4px solid var(--mark);margin:28px 0}
.note p{margin:0}
.fill{background:var(--fill);border-bottom:1px dashed #c9a100;padding:0 3px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
.obj{border-top:2px solid var(--ink);padding-top:14px}
.obj .pics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}
.ph{aspect-ratio:4/3;background:var(--bg2);display:grid;place-items:center;color:var(--muted);font-size:.85rem;border:1px dashed var(--line)}
.obj small{color:var(--muted)}
dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 20px;max-width:66ch}dt{font-weight:600}dd{margin:0}
form{display:grid;gap:14px;max-width:520px;margin-top:8px}
label{display:grid;gap:6px;font-weight:600;font-size:.95rem}
input,textarea{font:inherit;padding:10px 12px;border:1px solid #9aa4ad;border-radius:3px;width:100%}
textarea{min-height:120px}
button{font:inherit;cursor:pointer;border:0}
footer{border-top:1px solid var(--line);padding:24px 0;color:var(--muted);font-size:.9rem}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media(max-width:640px){.top{padding:14px 0}nav a{padding:8px 8px}.obj .pics{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){nav a{transition:border-color .15s}}
/* Обекти – снимки преди/след и видео */
.obj .pics figure{margin:0;position:relative;max-width:none}
.obj .pics img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:var(--bg2)}
.obj .pics figcaption{position:absolute;top:8px;left:8px;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;color:#fff;background:rgba(28,34,40,.82)}
.obj .pics figure.after figcaption{background:var(--steel)}
.obj .tags{list-style:none;margin:6px 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:6px;max-width:none}
.obj .tags li{background:var(--bg2);padding:2px 9px;font-size:.85rem;max-width:none}
.obj .vids{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 4px}
.obj .vids div{flex:0 1 180px;max-width:100%}
.obj .vids video{display:block;width:100%;aspect-ratio:9/16;background:#000;border:1px solid var(--line)}
.obj .vids small{display:block;margin-top:4px;font-size:.8rem}
.obj h3{margin-top:0}
.obj p{max-width:none}
@media(max-width:640px){.obj .pics{grid-template-columns:1fr 1fr}}
