/* ===== Общий каркас сайта: шапка, мессенджеры, подвал, панель связи. Один источник для всех страниц (_shell/). ===== */
:root{--tg:#2aabee;--tg-2:#1e96c8;--mx-1:#2d8cff;--mx-2:#8a3dff}

/* --- мессенджеры в шапке: Telegram сверху, MAX снизу --- */
.hmsg{display:flex;flex-direction:column;gap:5px;flex:none}
.hmsg__b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#fff;transition:transform .2s,box-shadow .2s}
.hmsg__b svg{width:15px;height:15px}
.hmsg__max svg{width:17px;height:17px}
.hmsg__tg{background:linear-gradient(135deg,var(--tg),var(--tg-2))}
.hmsg__max{background:linear-gradient(135deg,var(--mx-1),var(--mx-2))}
.hmsg__b:hover{transform:scale(1.1);box-shadow:0 6px 14px -6px rgba(13,13,15,.5)}
@media(max-width:1024px){.hmsg{flex-direction:row;gap:6px}.hmsg__b{width:36px;height:36px}.hmsg__b svg{width:19px;height:19px}.hmsg__max svg{width:21px;height:21px}}
@media(max-width:420px){.hmsg{display:none}}
.nav a[aria-current="page"]{color:var(--ink);background:var(--paper);border-radius:999px}

/* --- мобильное меню: мессенджеры --- */
.mmenu__contacts--m{display:flex;flex-wrap:wrap;gap:10px}
.mmenu__contacts--m a{display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 18px;border-radius:999px;font-size:16px;font-weight:500}
.mmenu__contacts--m .mmc__ph{background:var(--paper);color:var(--ink)}
.mmenu__contacts--m .mmc__tg,.mmenu__contacts--m .mmc__max{color:#fff}
.mmenu__contacts--m .mmc__tg{background:linear-gradient(135deg,var(--tg),var(--tg-2))}
.mmenu__contacts--m .mmc__max{background:linear-gradient(135deg,var(--mx-1),var(--mx-2))}
.mmenu__contacts--m svg{width:20px;height:20px}

/* --- панель связи --- */
.dock__tg.dock__tgb{background:linear-gradient(135deg,var(--tg),var(--tg-2));color:#fff}
.dock__tg.dock__max{background:linear-gradient(135deg,var(--mx-1),var(--mx-2));color:#fff}
.dock__tg.dock__tgb svg{width:21px;height:21px}
.dock__tg.dock__max svg{width:23px;height:23px}
.dock__tg:hover{filter:brightness(1.08)}

/* --- подвал --- */
footer.sf{background:var(--dark,#0e0e10);color:#fff;padding:clamp(64px,7vw,104px) 0 36px;margin:0}
footer.sf .wrap{max-width:var(--wrap,1360px)}
.sf-cta{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:28px 48px;padding-bottom:clamp(40px,5vw,64px);border-bottom:1px solid rgba(255,255,255,.12)}
.sf-cta__t{margin:0;max-width:780px;font-size:clamp(30px,3.6vw,54px);line-height:1.05;letter-spacing:-.035em;font-weight:500;text-wrap:balance}
.sf-cta__t span{color:#8a8b91}
.sf-cta p{margin:16px 0 0;max-width:520px;font-size:17px;line-height:1.5;color:var(--dark-ink-2,#a7a7ad)}
.sf-main{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(40px,6vw,96px);padding:clamp(40px,5vw,64px) 0}
.sf-logo{display:block;width:188px;height:34px}
.sf-logo img{display:block;width:188px;height:34px;max-width:none;object-fit:contain;object-position:left center}
.sf-sew{margin:22px 0 0;font-size:15px;line-height:1.55;color:var(--dark-ink-2,#a7a7ad)}
.sf-sew b{display:block;margin-bottom:6px;font-size:17px;font-weight:500;letter-spacing:-.015em;color:#fff}
.sf-ph{display:block;margin-top:26px;font-size:22px;font-weight:500;letter-spacing:-.02em;color:#fff}
.sf-hrs{display:block;margin-top:2px;font-size:13px;color:var(--dark-ink-2,#a7a7ad)}
.sf-msg{display:flex;gap:8px;margin-top:18px}
.sf-m{display:inline-flex;align-items:center;gap:9px;height:40px;padding:0 16px 0 12px;border-radius:999px;font-size:14px;font-weight:500;color:#fff;transition:filter .2s}
.sf-m svg{width:18px;height:18px;flex:none}
.sf-m i{display:grid;place-items:center;width:20px;height:20px}
.sf-m i svg{width:20px;height:20px}
.sf-m--tg{background:linear-gradient(135deg,var(--tg),var(--tg-2))}
.sf-m--max{background:linear-gradient(135deg,var(--mx-1),var(--mx-2))}
.sf-m:hover{filter:brightness(1.1)}
.sf-cols{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:32px 24px;align-content:start}
.sf-c h4{margin:0 0 14px;font-size:13px;font-weight:500;color:var(--dark-ink-2,#a7a7ad)}
.sf-c ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.sf-c a{font-size:14px;line-height:1.3;color:#fff;transition:color .2s}
.sf-c a:hover{color:var(--accent)}
.sf-c .b16g__more{color:var(--dark-ink-2,#a7a7ad)}
.sf-pledge{margin:0;padding:28px 0;border-top:1px solid rgba(255,255,255,.12);font-size:clamp(20px,2.2vw,30px);font-weight:500;letter-spacing:-.03em;color:#fff}
.sf-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 32px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:var(--dark-ink-2,#a7a7ad)}
.sf-legal a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,255,255,.3)}
.sf-legal a:hover{color:#fff}
@media(max-width:1180px){.sf-main{grid-template-columns:1fr;gap:40px}.sf-cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.sf-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.sf-cta .btn{width:100%}.sf-legal{flex-direction:column}}
.nv__b[aria-current="true"]{background:var(--paper)}
