/* Footer v2 — полная вёрстка по Site/v2/home-sections/11-footer.html, платформа — один HTML-виджет внутри контейнера <footer> */

.vg-footer-inner { max-width: 1600px; margin: 0 auto; padding: 56px 16px 0; }
@media (min-width: 640px) { .vg-footer-inner { padding-left: 24px; padding-right: 24px; } }
@media (min-width: 1024px) { .vg-footer-inner { padding-top: 80px; padding-left: 32px; padding-right: 32px; } }

.vg-footer-grid {
  display: flex;
  flex-wrap: wrap;
  border-radius: 16px;
  overflow: hidden;
  border-left: 1px solid rgba(255,255,255,.2);
  border-top: 1px solid rgba(255,255,255,.2);
}
.vg-footer-col {
  box-sizing: border-box;
  width: 100%;
  padding: 24px;
  border-right: 1px solid rgba(255,255,255,.2);
  border-bottom: 1px solid rgba(255,255,255,.2);
}
@media (min-width: 640px) { .vg-footer-col { padding: 32px; } }
@media (min-width: 1024px) {
  .vg-footer-col--brand, .vg-footer-col--newsletter { width: 25%; }
  .vg-footer-col--links, .vg-footer-col--contact { width: 16.6666%; }
}

.vg-footer-logo { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.vg-footer-logo__mark { width: 44px; height: 44px; display: block; }
.vg-footer-logo__text { font-size: 18px; font-weight: 600; text-transform: uppercase; line-height: 1; letter-spacing: -0.04em; color: #fff; }

.vg-footer-mission { margin-top: 32px; font-size: 14px; line-height: 1.6; color: rgba(255,255,255,.6); max-width: 32ch; }
.vg-footer-kicker { margin-top: 48px; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: #64C8FF; font-family: 'JetBrains Mono', monospace; }
.vg-footer-col--newsletter .vg-footer-kicker { margin-top: 0; }

.vg-footer-heading { font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em; color: rgba(255,255,255,.45); font-family: 'JetBrains Mono', monospace; margin: 0; }

.vg-footer-links { list-style: none; margin: 28px 0 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.vg-footer-links a { font-size: 14px; color: rgba(255,255,255,.75); text-decoration: none; transition: color .15s ease; }
.vg-footer-links--blue a:hover { color: #64C8FF; }
.vg-footer-links--yellow a:hover { color: #FFDD23; }

.vg-footer-address { margin: 28px 0 0; font-style: normal; font-size: 14px; color: rgba(255,255,255,.75); display: flex; flex-direction: column; gap: 12px; }
.vg-footer-address a { color: inherit; text-decoration: none; }
.vg-footer-address a:hover { color: #64C8FF; }
.vg-footer-address__muted { color: rgba(255,255,255,.5); line-height: 1.6; }

.vg-footer-social { margin-top: 32px; display: flex; gap: 8px; }
.vg-footer-social__btn { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; border: 1px solid rgba(255,255,255,.3); color: #fff; transition: background-color .15s ease; }
.vg-footer-social__btn:hover { background: #0094FF; border-color: #0094FF; }

.vg-footer-newsletter-title { margin: 24px 0 0; max-width: 26ch; font-size: 24px; font-weight: 500; line-height: 1.2; letter-spacing: -0.01em; color: #fff; }
@media (min-width: 640px) { .vg-footer-newsletter-title { font-size: 30px; } }

.vg-footer-form { margin-top: 32px; }
.vg-footer-form__row { display: flex; overflow: hidden; border-radius: 12px; border: 1px solid rgba(255,255,255,.35); background: rgba(255,255,255,.05); }
.vg-footer-form__input { min-height: 56px; min-width: 0; flex: 1; background: transparent; border: none; padding: 0 16px; font-size: 14px; color: #fff; outline: none; font-family: 'Inter', sans-serif; }
.vg-footer-form__input::placeholder { color: rgba(255,255,255,.4); }
.vg-footer-form__submit { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; flex-shrink: 0; border: none; border-left: 1px solid rgba(255,255,255,.35); background: #0094FF; color: #fff; cursor: pointer; transition: background-color .15s ease, color .15s ease; }
.vg-footer-form__submit:hover { background: #FFDD23; color: #162032; }
.vg-footer-form__hint { margin: 12px 0 0; min-height: 20px; font-size: 12px; color: rgba(255,255,255,.5); }
.vg-footer-form__hint--error { color: #FF718F; }
.vg-footer-form__hint--ok { color: #64C8FF; }

.vg-footer-wordmark { border-top: 1px solid rgba(255,255,255,.2); padding: 24px 0; }
.vg-footer-wordmark p { margin: 0; font-size: 15vw; font-weight: 500; text-transform: uppercase; line-height: 1; letter-spacing: -0.06em; color: rgba(255,255,255,.15); }
@media (min-width: 640px) { .vg-footer-wordmark p { font-size: 9vw; } }
@media (min-width: 1024px) { .vg-footer-wordmark p { font-size: 7.2vw; } }
.vg-footer-wordmark__accent { font-style: italic; font-family: 'Source Serif 4', serif; color: rgba(255,221,35,.35); }

.vg-footer-bottom { border-top: 1px solid rgba(255,255,255,.2); padding: 24px 0; display: flex; flex-direction: column; gap: 20px; font-size: 12px; color: rgba(255,255,255,.45); }
@media (min-width: 640px) { .vg-footer-bottom { flex-direction: row; justify-content: space-between; align-items: center; } }
.vg-footer-bottom__links { display: flex; flex-wrap: wrap; gap: 24px; }
.vg-footer-bottom__links a { color: inherit; text-decoration: none; }
.vg-footer-bottom__links a:hover { color: #64C8FF; }
.vg-footer-bottom__top { display: inline-flex; align-items: center; gap: 8px; color: #64C8FF !important; }