/* Общий подвал: яркая графика поверх registry-footer.css (ноябрь 2026). У каждой итерации — свой самостоятельный раздел. */
/* ===== 0. Палитра (общая с шапкой header-vivid) ===== */
footer.rgf-footer {
  --fv-blue: #1F6FE0; --fv-blue-l: #6ea8ff;
  --fv-violet: #8083FF; --fv-violet-l: #b3b5ff;
  --fv-cyan: #19B6D2; --fv-cyan-l: #62dcef;
  --fv-green: #10A972; --fv-green-l: #4fdca5;
  --fv-orange: #EA7A16; --fv-orange-l: #ffab5e;
  --fv-pink: #E0457B; --fv-pink-l: #ff8db2;
}
/* ===== /0 ===== */

/* ===== 1. Вступление: бренд, маршрут, «Обсудить задачу», контакты (.rgf-intro) ===== */
footer.rgf-footer .rgf-brand img {
  border: 1px solid transparent;
  background: linear-gradient(#f0f3ff,#f0f3ff) padding-box,linear-gradient(135deg,var(--fv-blue),var(--fv-violet)) border-box;
  box-shadow: 0 0 18px rgba(110,168,255,.28);
}
footer.rgf-footer .rgf-brand small { color: var(--rgf-muted); }
footer.rgf-footer .rgf-route li:nth-child(1) { --fv-route: var(--fv-orange); --fv-route-l: var(--fv-orange-l); }
footer.rgf-footer .rgf-route li:nth-child(2) { --fv-route: var(--fv-violet); --fv-route-l: var(--fv-violet-l); }
footer.rgf-footer .rgf-route li:nth-child(3) { --fv-route: var(--fv-green); --fv-route-l: var(--fv-green-l); }
footer.rgf-footer .rgf-route svg {
  width: 34px;
  height: 34px;
  padding: 5px;
  border: 1px solid var(--fv-route-l);
  border-radius: 8px;
  background: rgba(255,255,255,.07);
  background: color-mix(in srgb,var(--fv-route) 18%,transparent);
  color: var(--fv-route-l);
  flex: 0 0 auto; /* базовый flex: 0 0 25px сплющивал плитку */
}
footer.rgf-footer .rgf-route span { color: var(--rgf-ink); }
footer.rgf-footer .rgf-route small { color: var(--fv-route-l); font-weight: 700; }
footer.rgf-footer .rgf-route li:not(:last-child)::after {
  height: 2px;
  background: linear-gradient(90deg,var(--fv-route),var(--fv-next-route));
  transform-origin: left center;
  transition: transform .42s ease;
}
footer.rgf-footer .rgf-route li:nth-child(1) { --fv-next-route: var(--fv-violet); }
footer.rgf-footer .rgf-route li:nth-child(2) { --fv-next-route: var(--fv-green); }
footer.rgf-footer .rgf-route.fv-armed:not(.is-drawn) li:not(:last-child)::after { transform: scaleX(0); }
footer.rgf-footer .rgf-route.fv-armed:not(.is-drawn) svg { opacity: .66; }
footer.rgf-footer .rgf-route.fv-armed svg { transition: opacity .26s ease; }
footer.rgf-footer .rgf-route.is-drawn li:nth-child(1)::after,
footer.rgf-footer .rgf-route.is-drawn li:nth-child(1) svg { transition-delay: .08s; }
footer.rgf-footer .rgf-route.is-drawn li:nth-child(2)::after,
footer.rgf-footer .rgf-route.is-drawn li:nth-child(2) svg { transition-delay: .22s; }
footer.rgf-footer .rgf-route.is-drawn li:nth-child(3) svg { transition-delay: .36s; }
footer.rgf-footer .fv-accent {
  color: var(--fv-blue-l);
}
@supports ((-webkit-background-clip:text) or (background-clip:text)) {
  footer.rgf-footer .fv-accent {
    background: linear-gradient(90deg,var(--fv-blue-l),var(--fv-violet-l));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}
footer.rgf-footer .rgf-consult {
  position: relative;
  overflow: hidden;
  background: linear-gradient(100deg,#1F6FE0,#4b4fd6);
  color: #fff;
  border-color: transparent;
  isolation: isolate;
  transition: transform .18s ease;
}
footer.rgf-footer .rgf-consult::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0 auto 0 -55%;
  width: 34%;
  background: linear-gradient(100deg,transparent,rgba(255,255,255,.18),transparent);
  transform: skewX(-22deg) translateX(0);
  transition: transform .52s ease;
}
footer.rgf-footer .rgf-consult:hover { background: linear-gradient(100deg,#1F6FE0,#4b4fd6); }
footer.rgf-footer .rgf-consult:hover::before { transform: skewX(-22deg) translateX(520%); }
footer.rgf-footer .rgf-consult>span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #f0f3ff;
  color: #1456ba;
  transition: transform .18s ease;
}
footer.rgf-footer .rgf-consult:hover>span { transform: translate(2px,-2px); }
footer.rgf-footer .rgf-consult:focus-visible { outline-color: var(--fv-cyan-l); }
footer.rgf-footer .rgf-price { color: var(--fv-cyan-l); }
footer.rgf-footer .rgf-price>span { display: inline-block; transition: transform .18s ease; }
footer.rgf-footer .rgf-price:hover { color: var(--fv-cyan-l); text-decoration: none; }
footer.rgf-footer .rgf-price:hover>span { transform: translateX(4px); }
footer.rgf-footer .rgf-contact { position: relative; border-left: 0; }
footer.rgf-footer .rgf-contact::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 2px;
  background: linear-gradient(var(--fv-cyan),var(--fv-violet));
}
footer.rgf-footer .rgf-contact>a,
footer.rgf-footer .rgf-contact>span { position: relative; padding-left: 28px; }
footer.rgf-footer .rgf-contact>a::before,
footer.rgf-footer .rgf-contact>span::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--fv-contact);
  transform: translateY(-50%);
}
footer.rgf-footer .rgf-contact>a::after,
footer.rgf-footer .rgf-contact>span::after {
  content: '';
  position: absolute;
  left: 4px;
  top: 50%;
  width: 12px;
  height: 12px;
  background: #fff;
  transform: translateY(-50%);
  -webkit-mask: var(--fv-contact-icon) center/contain no-repeat;
  mask: var(--fv-contact-icon) center/contain no-repeat;
}
footer.rgf-footer .rgf-phone { --fv-contact: var(--fv-green); --fv-contact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M6.6 2.8 9.3 2l1.8 4.7-2.2 1.4a15 15 0 0 0 7.1 7.1l1.4-2.2 4.7 1.8-.8 2.7c-.3 1.1-1.3 1.8-2.4 1.6C10.7 17.7 6.3 13.3 4.9 5.2 4.7 4.1 5.4 3.1 6.6 2.8Z'/%3E%3C/svg%3E"); }
footer.rgf-footer .rgf-email { --fv-contact: var(--fv-blue); --fv-contact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M3 5h18v14H3V5Zm2 2v.4l7 5.2 7-5.2V7l-7 5.2L5 7Z'/%3E%3C/svg%3E"); }
footer.rgf-footer .rgf-hours { --fv-contact: #64759a; --fv-contact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18Zm1 4v4.6l3.2 2-.8 1.3L11.5 12V7H13Z'/%3E%3C/svg%3E"); }
footer.rgf-footer .rgf-office { --fv-contact: var(--fv-pink); --fv-contact-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='white' d='M12 2a7 7 0 0 0-7 7c0 5.3 7 13 7 13s7-7.7 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E"); }
@media(max-width:1100px) {
  footer.rgf-footer .rgf-route svg { width: 32px; height: 32px; }
}
@media(min-width:761px) and (max-width:1100px) {
  footer.rgf-footer .rgf-contact::before { display: none; }
}
@media(max-width:760px) {
  footer.rgf-footer .rgf-contact::before { display: none; }
  footer.rgf-footer .rgf-route svg { width: 28px; height: 28px; padding: 4px; }
  footer.rgf-footer .rgf-route li:not(:last-child)::after { margin: 0 8px; min-width: 8px; }
}
@media(max-width:360px) {
  footer.rgf-footer .rgf-route svg { width: 25px; height: 25px; padding: 3px; }
  footer.rgf-footer .rgf-route li:not(:last-child)::after { margin: 0 5px; min-width: 5px; }
}
/* ===== /1 ===== */

/* ===== 2. Навигация: четыре группы (.rgf-navigation) ===== */
footer.rgf-footer .rgf-group.fv-g-blue { --g: var(--fv-blue); --g-l: var(--fv-blue-l); --g-rgb: 31,111,224; }
footer.rgf-footer .rgf-group.fv-g-violet { --g: var(--fv-violet); --g-l: var(--fv-violet-l); --g-rgb: 128,131,255; }
footer.rgf-footer .rgf-group.fv-g-cyan { --g: var(--fv-cyan); --g-l: var(--fv-cyan-l); --g-rgb: 25,182,210; }
footer.rgf-footer .rgf-group.fv-g-green { --g: var(--fv-green); --g-l: var(--fv-green-l); --g-rgb: 16,169,114; }

footer.rgf-footer .rgf-group-icon {
  box-sizing: border-box;
  width: 30px;
  height: 32px;
  flex-basis: 30px;
  padding: 3px;
  border: 1px solid var(--g-l);
  border-radius: 7px;
  background: rgba(var(--g-rgb), .16);
  color: var(--g-l);
}
footer.rgf-footer .rgf-group>summary:hover .rgf-group-icon,
footer.rgf-footer .rgf-group>summary:focus-visible .rgf-group-icon {
  background: rgba(var(--g-rgb), .28);
  box-shadow: 0 0 12px rgba(var(--g-rgb), .3);
}
footer.rgf-footer .rgf-group h3 {
  position: relative;
  color: #f0f3ff;
}
footer.rgf-footer .rgf-group h3::after {
  position: absolute;
  right: auto;
  bottom: -5px;
  left: 0;
  width: 24px;
  height: 2px;
  border-radius: 2px;
  background: var(--g-l);
  content: '';
}
footer.rgf-footer .rgf-toggle { color: var(--g-l); }
footer.rgf-footer .rgf-group li>a {
  position: relative;
}
footer.rgf-footer .rgf-group li>a::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--g-l);
  content: '';
  opacity: 0;
  transform: translate(-7px, -50%);
  transition: transform .16s ease, opacity .16s ease;
}
footer.rgf-footer .rgf-group li>a:hover,
footer.rgf-footer .rgf-group li>a:focus-visible { color: var(--g-l); }
footer.rgf-footer .rgf-group li>a:hover::before,
footer.rgf-footer .rgf-group li>a:focus-visible::before {
  opacity: 1;
  transform: translate(-7px, -50%) scale(1.35);
}
footer.rgf-footer .rgf-group>summary:focus-visible,
footer.rgf-footer .rgf-group li>a:focus-visible,
footer.rgf-footer .rgf-more>summary:focus-visible,
footer.rgf-footer .rgf-related>a:focus-visible {
  outline: 2px solid var(--g-l);
  outline-offset: 3px;
}
footer.rgf-footer .rgf-group li>a[aria-current="page"] {
  color: var(--g-l);
  text-decoration: underline;
  text-decoration-color: var(--g-l);
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}
footer.rgf-footer .rgf-more>summary {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--g-l);
}
footer.rgf-footer .rgf-more>summary span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-left: 0;
  border: 1px solid var(--g-l);
  border-radius: 50%;
  background: rgba(var(--g-rgb), .16);
  color: var(--g-l);
  line-height: 1;
  transition: transform .16s ease;
}
footer.rgf-footer .rgf-more[open]>summary span { transform: rotate(45deg); }
footer.rgf-footer .rgf-related>a {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  gap: 7px;
  padding: 3px 7px;
  border: 1px solid var(--g-l);
  border-radius: 5px;
  color: var(--g-l);
  line-height: 1.2;
}
footer.rgf-footer .rgf-related>a::after { content: '→'; }
footer.rgf-footer .rgf-related>a:hover { background: rgba(var(--g-rgb), .06); text-decoration: none; }

@media(max-width:760px) {
  footer.rgf-footer .rgf-group h3::after { display: none; }
  footer.rgf-footer .rgf-group[open]>summary {
    box-shadow: inset 3px 0 0 var(--g-l);
    background: linear-gradient(90deg, rgba(var(--g-rgb), .14), rgba(var(--g-rgb), 0) 70%);
  }
}
/* ===== /2 ===== */

/* ===== 3. Соцсети, города и нижняя строка (.rgf-community, .rgf-bottom) ===== */
footer.rgf-footer .rgf-social>p {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--fv-violet-l);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .11em;
  line-height: 1.3;
  text-transform: uppercase;
}
footer.rgf-footer .rgf-social>p::before {
  width: 16px;
  height: 2px;
  background: linear-gradient(90deg,var(--fv-cyan),var(--fv-violet));
  border-radius: 2px;
  content: "";
}
footer.rgf-footer .rgf-social-mark {
  border: 0;
  color: #07101f;
  transition: transform .16s ease, box-shadow .16s ease;
}
footer.rgf-footer .rgf-social-link[href*="dzen.ru"] .rgf-social-mark { background: #10131b; color: #f0f3ff; }
footer.rgf-footer .rgf-social-link[href*="ok.ru"] .rgf-social-mark { background: #ee8208; }
footer.rgf-footer .rgf-social-link[href*="vk.com"] .rgf-social-mark { background: #0077ff; color: #fff; }
footer.rgf-footer .rgf-social-link[href*="t.me"] .rgf-social-mark { background: #229ed9; }
footer.rgf-footer .rgf-social-link[href*="yandex.ru/profile"] .rgf-social-mark { background: #fc3f1d; }
footer.rgf-footer .rgf-social-link[href*="music.yandex.ru"] .rgf-social-mark { background: #ffcc00; }
footer.rgf-footer .rgf-social-link[href*="vc.ru"] .rgf-social-mark { background: #e8336d; }
footer.rgf-footer .rgf-social-link:hover,
footer.rgf-footer .rgf-social-link:focus-visible { color: #fff; }
footer.rgf-footer .rgf-social-link:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link:focus-visible .rgf-social-mark { transform: translateY(-2px); }
footer.rgf-footer .rgf-social-link[href*="dzen.ru"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="dzen.ru"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(240,243,255,.35); }
footer.rgf-footer .rgf-social-link[href*="ok.ru"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="ok.ru"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(238,130,8,.48); }
footer.rgf-footer .rgf-social-link[href*="vk.com"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="vk.com"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(0,119,255,.52); }
footer.rgf-footer .rgf-social-link[href*="t.me"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="t.me"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(34,158,217,.52); }
footer.rgf-footer .rgf-social-link[href*="yandex.ru/profile"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="yandex.ru/profile"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(252,63,29,.5); }
footer.rgf-footer .rgf-social-link[href*="music.yandex.ru"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="music.yandex.ru"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(255,204,0,.48); }
footer.rgf-footer .rgf-social-link[href*="vc.ru"]:hover .rgf-social-mark,
footer.rgf-footer .rgf-social-link[href*="vc.ru"]:focus-visible .rgf-social-mark { box-shadow: 0 5px 14px rgba(232,51,109,.5); }
footer.rgf-footer .rgf-social-link:focus-visible,
footer.rgf-footer .rgf-regions>summary:focus-visible,
footer.rgf-footer .rgf-bottom a:focus-visible,
footer.rgf-footer .rgf-city-search input:focus-visible { outline: 2px solid var(--fv-cyan-l); outline-offset: 3px; }

footer.rgf-footer .rgf-regions {
  border-radius: 8px;
}
footer.rgf-footer .rgf-regions>summary { justify-content: flex-start; min-height: 60px; padding: 7px 10px; gap: 10px; }
footer.rgf-footer .rgf-regions>summary>span:nth-child(2) { flex: 1 1 auto; min-width: 0; text-align: left; }
footer.rgf-footer .fv-region-pin {
  display: inline-flex;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: linear-gradient(135deg,var(--fv-cyan),var(--fv-blue));
}
footer.rgf-footer .fv-region-pin svg { width: 17px; height: 17px; fill: none; stroke: #152440; stroke-width: 1.8; }
footer.rgf-footer .rgf-regions>summary>span:last-child {
  display: inline-flex;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  margin-left: auto;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--fv-pink-l);
  border-radius: 50%;
  color: var(--fv-pink-l);
  font-size: 18px;
  line-height: 1;
  transition: transform .16s ease;
}
footer.rgf-footer .rgf-regions[open]>summary>span:last-child { transform: rotate(45deg); }
footer.rgf-footer .rgf-region-body { margin: 0 7px 7px; border-color: #49638c; }
footer.rgf-footer .rgf-city-search input:focus { border-color: var(--fv-cyan-l); }
footer.rgf-footer .rgf-region-body li>a:hover,
footer.rgf-footer .rgf-region-body li>a:focus-visible { color: var(--fv-cyan-l); }

footer.rgf-footer .rgf-bottom { border-top-color: transparent; border-image: linear-gradient(90deg,var(--fv-cyan),var(--fv-violet),var(--fv-pink)) 1; }
footer.rgf-footer .rgf-bottom nav>a { text-decoration: underline; text-decoration-color: transparent; text-underline-offset: 4px; }
footer.rgf-footer .rgf-bottom nav>a:hover,
footer.rgf-footer .rgf-bottom nav>a:focus-visible { color: #fff; text-decoration-color: var(--fv-pink-l); }
footer.rgf-footer .rgf-top {
  gap: 7px;
  padding: 0 8px 0 10px;
  border: 1px solid var(--fv-violet-l);
  border-radius: 999px;
  color: #f0f3ff;
}
footer.rgf-footer .rgf-top>span {
  display: inline-flex;
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--fv-violet);
  color: #152440;
  font-size: 13px;
  font-weight: 700;
  transition: transform .16s ease;
}
footer.rgf-footer .rgf-top:hover,
footer.rgf-footer .rgf-top:focus-visible { border-color: var(--fv-violet-l); color: #fff; }
footer.rgf-footer .rgf-top:hover>span,
footer.rgf-footer .rgf-top:focus-visible>span { transform: translateY(-2px); }
@media(max-width:1100px) {
  footer.rgf-footer .rgf-regions { width: 100%; }
}
@media(max-width:760px) {
  footer.rgf-footer .rgf-social-link { min-width: 0; }
  footer.rgf-footer .rgf-social-link .rgf-social-mark { flex: 0 0 24px; }
  footer.rgf-footer .rgf-regions>summary { min-height: 60px; }
}
/* ===== /3 ===== */

/* ===== 4. Фон, телефон и планшет ===== */
footer.rgf-footer {
  background:
    radial-gradient(ellipse at 0 0,rgba(31,111,224,.16),rgba(31,111,224,0) 55%),
    radial-gradient(ellipse at 100% 28%,rgba(128,131,255,.12),rgba(128,131,255,0) 55%),
    radial-gradient(ellipse at 60% 100%,rgba(16,169,114,.1),rgba(16,169,114,0) 50%),
    #152440;
}
footer.rgf-footer::before {
  pointer-events: none;
  background: linear-gradient(90deg,var(--fv-blue),var(--fv-violet),var(--fv-cyan),var(--fv-green),var(--fv-orange),var(--fv-pink),var(--fv-blue));
  background-size: 200% 100%;
  animation: fv-footer-flow 14s ease-in-out infinite;
}
@keyframes fv-footer-flow {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
footer.rgf-footer.fv-offscreen::before { animation-play-state: paused !important; }

footer.rgf-footer .rgf-social { min-width: 0; }
footer.rgf-footer .rgf-social-link { max-width: 100%; white-space: nowrap; }
footer.rgf-footer .rgf-social-mark { flex-shrink: 0; }
footer.rgf-footer .rgf-regions {
  position: relative;
  min-width: 0;
  border: 1px solid var(--fv-orange-l);
  background: rgba(21,36,64,.25);
}
/* Рамка пропускает фон подвала; без масок остаётся обычная скруглённая. */
@supports ((mask-composite:exclude) or (-webkit-mask-composite:xor)) {
  footer.rgf-footer .rgf-regions { border-color: transparent; }
  footer.rgf-footer .rgf-regions::before {
    content: '';
    position: absolute;
    inset: -1px;
    padding: 1px;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(110deg,var(--fv-orange-l),var(--fv-pink-l));
    -webkit-mask: linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
  }
}

@media(min-width:761px) and (max-width:1100px) {
  footer.rgf-footer .rgf-intro { grid-template-columns: repeat(2,minmax(0,1fr)); }
  footer.rgf-footer .rgf-route svg { flex: 0 0 32px; }
  footer.rgf-footer .rgf-route li:not(:last-child)::after {
    display: block;
    position: absolute;
    top: calc(100% + 2px);
    left: 15px;
    width: 2px;
    height: 12px;
    min-width: 0;
    margin: 0;
    background: linear-gradient(var(--fv-route-l),var(--fv-next-route));
    transform-origin: center top;
  }
  footer.rgf-footer .rgf-route.fv-armed:not(.is-drawn) li:not(:last-child)::after { transform: scaleY(0); }
  footer.rgf-footer .rgf-consult { max-width: 100%; gap: 16px; }
  footer.rgf-footer .rgf-regions { min-width: 240px; }
}
@media(max-width:760px) {
  footer.rgf-footer .rgf-route { flex-wrap: nowrap; }
  footer.rgf-footer .rgf-route span { white-space: nowrap; }
  footer.rgf-footer .rgf-contact>a,
  footer.rgf-footer .rgf-contact>span { display: flex; align-items: center; min-height: 44px; }
  footer.rgf-footer .rgf-consult { width: 100%; gap: 16px; }
  footer.rgf-footer .rgf-group>summary { min-height: 61px; }
  footer.rgf-footer .rgf-bottom { padding: 12px 0 11px; }
}
@media(max-width:360px) {
  footer.rgf-footer .rgf-route li { gap: 5px; }
}
@media(prefers-reduced-motion:reduce) {
  footer.rgf-footer,
  footer.rgf-footer::before,
  footer.rgf-footer::after,
  footer.rgf-footer *,
  footer.rgf-footer *::before,
  footer.rgf-footer *::after { animation: none !important; }
  footer.rgf-footer .rgf-route.fv-armed:not(.is-drawn) li:not(:last-child)::after { transform: none; }
  footer.rgf-footer .rgf-route.fv-armed:not(.is-drawn) svg { opacity: 1; }
}
/* ===== /4 ===== */

/* ===== 5. Общая полировка ===== */
/* ===== /5 ===== */
