/* Final shared mobile system for headings and footer consistency. */

body.event-page :is(
  .event-intake__inner,
  .event-catalog-cta__inner,
  .event-services-catalog__inner,
  .event-control__inner,
  .event-why__inner,
  .posm-hero__inner
) {
  min-width: 0 !important;
}

/* Shared SEO/GEO blocks used on the homepage and service hubs. */
.geo-services {
  position: relative;
  overflow: hidden;
  background: var(--paper-200);
  color: var(--ink-100);
  padding: clamp(86px, 10vw, 150px) 0;
}

.geo-services::before {
  content: "B";
  position: absolute;
  right: -0.08em;
  top: 50%;
  transform: translateY(-50%);
  font: 900 clamp(260px, 42vw, 760px) / .8 Inter, Arial, sans-serif;
  letter-spacing: -.08em;
  color: rgba(0, 0, 0, .035);
  pointer-events: none;
}

.geo-services__inner {
  position: relative;
  z-index: 1;
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
}

.geo-services__head {
  max-width: 840px;
  margin: 0 auto clamp(34px, 5vw, 58px);
  text-align: center;
}

.geo-services__kicker,
.geo-services__meta {
  margin: 0;
  font: 760 .72rem / 1.15 Inter, Arial, sans-serif;
  letter-spacing: .32em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, .48);
}

.geo-services__title {
  margin: 16px 0 0;
  font: 900 clamp(34px, 5.4vw, 76px) / .94 Inter, Arial, sans-serif;
  letter-spacing: 0;
  text-transform: uppercase;
  text-wrap: balance;
}

.geo-services__lead {
  max-width: 760px;
  margin: 20px auto 0;
  font: 500 clamp(17px, 1.55vw, 22px) / 1.42 Inter, Arial, sans-serif;
  letter-spacing: 0;
  color: rgba(0, 0, 0, .58);
  text-wrap: pretty;
}

.geo-services__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.geo-services__card {
  min-height: 300px;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid rgba(0, 0, 0, .1);
  border-radius: 24px;
  background: rgba(255, 255, 255, .74);
  box-shadow: 0 24px 70px rgba(0, 0, 0, .06);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 24px;
}

.geo-services__card h3 {
  margin: 18px 0 0;
  font: 900 clamp(24px, 2.7vw, 38px) / .98 Inter, Arial, sans-serif;
  letter-spacing: -.035em;
  text-transform: uppercase;
  text-wrap: balance;
}

.geo-services__card p:not(.geo-services__meta) {
  margin: 0;
  max-width: 34ch;
  font: 500 clamp(15px, 1.15vw, 17px) / 1.42 Inter, Arial, sans-serif;
  color: rgba(0, 0, 0, .62);
}

.geo-services__links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 2px;
}

.geo-services__links a,
.geo-services__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid rgba(0, 0, 0, .16);
  border-radius: 999px;
  color: var(--ink-100);
  font: 800 .72rem / 1 Inter, Arial, sans-serif;
  letter-spacing: .16em;
  text-decoration: none;
  text-transform: uppercase;
}

.geo-services__cta--dark {
  background: var(--ink-100);
  color: var(--paper-000);
  border-color: var(--ink-100);
}

.geo-services__actions {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin-top: clamp(28px, 4vw, 46px);
}

@media (max-width: 980px) {
  .geo-services__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .geo-services {
    padding: 78px 0;
  }

  .geo-services__inner {
    width: min(100% - 28px, 480px);
  }

  .geo-services__title {
    font-size: clamp(32px, 10vw, 44px);
    line-height: .98;
  }

  .geo-services__lead {
    font-size: clamp(15px, 4.15vw, 17px);
    line-height: 1.42;
  }

  .geo-services__grid {
    grid-template-columns: 1fr;
  }

  .geo-services__card {
    min-height: 0;
    align-items: center;
    text-align: center;
  }

  .geo-services__card p:not(.geo-services__meta) {
    max-width: 30ch;
  }

  .geo-services__links,
  .geo-services__actions {
    justify-content: center;
  }

  .geo-services__actions {
    flex-direction: column;
  }
}

body.event-page :is(
  .event-intake__copy,
  .event-intake__form,
  .event-catalog-cta__copy,
  .event-catalog-cta__actions,
  .event-services-catalog__aside,
  .event-services-catalog__list,
  .event-control__copy,
  .event-control__visual,
  .event-why__head,
  .event-why__body,
  .posm-hero__copy,
  .posm-hero__media
) {
  min-width: 0 !important;
  max-width: 100% !important;
}

body.event-page :is(
  .event-intake__lead,
  .event-services-catalog__lead,
  .event-catalog-cta__text,
  .event-control__lead,
  .event-directions__lead,
  .event-why__introText,
  .posm-hero__lead
) {
  width: auto !important;
  max-width: min(100%, 36rem) !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

body.event-page .event-intake__lead {
  max-width: min(100%, 34rem) !important;
}

body.event-page .event-intake__title {
  max-width: min(100%, 11ch) !important;
}

body.event-page .event-intake .event-intake__copy > .event-intake__lead {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

body.event-page :is(
  .event-intake__copy,
  .event-services-catalog__aside,
  .event-catalog-cta__copy,
  .event-control__copy,
  .event-why__head,
  .posm-hero__copy
) > :is(p, h1, h2, h3, a, span) {
  max-width: 100% !important;
  overflow-wrap: break-word !important;
}

@media (min-width: 961px) {
  body.event-page .event-intake__inner {
    grid-template-columns: minmax(0, .72fr) minmax(420px, .92fr) !important;
    gap: clamp(34px, 5vw, 76px) !important;
  }

  body.event-page .event-intake__copy {
    justify-self: center !important;
    width: min(100%, 36rem) !important;
    padding-right: clamp(12px, 1.8vw, 28px) !important;
  }

  body.event-page .event-intake__form {
    justify-self: stretch !important;
    z-index: 1 !important;
  }

  body.event-page .event-intake__lead {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}

@media (min-width: 961px) and (max-width: 1180px) {
  body.event-page .event-intake__inner {
    grid-template-columns: minmax(0, .82fr) minmax(390px, 1fr) !important;
    gap: clamp(26px, 3.4vw, 42px) !important;
  }
}

@media (max-width: 768px) {
  body main :is(
    .about-hero__copy,
    .about-section__head,
    .about-section__intro,
    .about-founder__content,
    .resources-command-head,
    .howpath__head,
    .clients-shuffle__head,
    .contacts-hero__copy,
    .offices-cards__head,
    .contact__head,
    .projects-showcase__heroCopy,
    .projects-reading__head,
    .projects-filter__head,
    .projects-case-section__head,
    .projects-cta__inner,
    .news-page__intro,
    .news-hub-filter__head,
    .news-contact__inner,
    .content-page__main,
    .project-hero__copy,
    .project-section .project-shell > header,
    .project-section__head,
    .project-news__head,
    .service-hero__copy,
    .event-task__head,
    .event-directions__head,
    .event-catalog-cta__copy,
    .event-services-catalog__head,
    .event-why__head,
    .event-control__copy,
    .event-intake__copy,
    .globe-intro,
    .faq-home__head,
    .posm-hero__copy
  ) {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  body main :is(
    h1,
    .about-hero__title,
    .about-section__head > h2,
    .about-section__intro > h2,
    .about-founder h2,
    .resources-command-title,
    .howpath__title,
    .clients-shuffle__title,
    .contacts-hero h1,
    .offices-cards__title,
    .contact__title,
    .projects-showcase__hero h1,
    .projects-reading h2,
    .projects-filter h2,
    .projects-case-section__head h2,
    .projects-cta h2,
    .news-page__title,
    .news-hub-filter__title,
    .news-contact__title,
    .content-page__title,
    .project-hero__title,
    .project-section__title,
    .project-news__title,
    .service-hero__title,
    .event-task__title,
    .event-directions__title,
    .event-catalog-cta__title,
    .event-services-catalog__title,
    .event-why__title,
    .event-control__title,
    .event-intake__title,
    .globe-intro__title,
    .faq-home__title,
    .posm-hero__title
  ) {
    max-width: min(100%, 12.5ch) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    text-align: center !important;
    text-wrap: balance;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
  }

  body main :is(
    .about-hero__lead,
    .about-offices__lead,
    .resources-command-lead,
    .contacts-hero__lead,
    .projects-showcase__lead,
    .projects-filter__lead,
    .news-page__lead,
    .news-hub-filter__lead,
    .news-contact__lead,
    .content-page__lead,
    .project-hero__lead,
    .project-section__lead,
    .project-news__lead,
    .service-hero__lead,
    .event-directions__lead,
    .event-services-catalog__lead,
    .event-control__lead,
    .event-intake__lead,
    .globe-intro__lead,
    .posm-hero__lead
  ) {
    display: block !important;
    max-width: min(100%, 31rem) !important;
    margin: 14px auto 0 !important;
    text-align: center !important;
    font-size: clamp(15px, 4.15vw, 17px) !important;
    line-height: 1.42 !important;
    letter-spacing: 0 !important;
    text-wrap: pretty;
  }

  body main :is(
    .about-kicker,
    .contacts-kicker,
    .projects-showcase__kicker,
    .event-task__kicker,
    .event-directions__kicker,
    .event-catalog-cta__kicker,
    .event-services-catalog__kicker,
    .event-control__kicker,
    .globe-intro__kicker,
    .faq-home__kicker,
    .resources-command-subtitle,
    .resources-command-kicker,
    .howpath__kicker,
    .clients-shuffle__kicker,
    .project-hero__kicker,
    .project-news__kicker,
    .content-page__kicker
  ) {
    width: 100% !important;
    text-align: center !important;
  }

  body.event-page main :is(.event-directions__title, .event-control__title, .event-intake__title) {
    max-width: min(100%, 13ch) !important;
    font-size: clamp(34px, 10.8vw, 48px) !important;
    line-height: .98 !important;
    letter-spacing: .012em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  body.event-page main .event-directions__lead,
  body.event-page main .event-control__lead,
  body.event-page main .event-intake__lead {
    font-size: clamp(15px, 4.1vw, 17px) !important;
    line-height: 1.42 !important;
  }

  body.event-page main .posm-hero__copy {
    align-items: center !important;
    text-align: center !important;
  }

  body.event-page main .posm-hero {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    padding: calc(92px + env(safe-area-inset-top)) 0 clamp(38px, 10vw, 56px) !important;
    overflow: visible !important;
  }

  body.event-page main .posm-hero .posm-hero__inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 18px !important;
    display: flex !important;
    grid-template-columns: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: clamp(26px, 7.6vw, 38px) !important;
  }

  body.event-page main .posm-hero__copy {
    order: 1 !important;
    width: 100% !important;
    max-width: min(100%, calc(100vw - 24px), 372px) !important;
  }

  body.event-page main .posm-hero .project-breadcrumbs {
    width: 100% !important;
    margin: 0 0 14px !important;
    text-align: center !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    letter-spacing: .18em !important;
  }

  body.event-page main .posm-hero__title {
    max-width: min(100%, calc(100vw - 24px)) !important;
    font-size: clamp(30px, 9.2vw, 38px) !important;
    line-height: 1.02 !important;
    letter-spacing: .012em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
  }

  body.event-page main .posm-hero__lead {
    max-width: min(100%, 356px) !important;
    margin-top: 16px !important;
  }

  body.event-page main .posm-hero__media {
    order: 2 !important;
    width: min(100%, calc(100vw - 32px)) !important;
    max-width: none !important;
    margin: 0 auto !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 16px !important;
    transform: none !important;
  }

  body.event-page main .posm-hero__media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}

/* Catalog hardening: no overlap on desktop, centered service lists on mobile. */
body.event-page .event-services-catalog,
body.event-page .event-services-catalog * {
  box-sizing: border-box !important;
}

body.event-page .event-services-catalog__list {
  position: relative !important;
  z-index: 2 !important;
  min-width: 0 !important;
}

body.event-page .event-services-catalog__item {
  overflow: hidden !important;
}

body.event-page .event-services-catalog__name,
body.event-page .event-services-catalog__desc,
body.event-page .event-services-catalog__service-link {
  word-break: normal !important;
  hyphens: none !important;
}

body.event-page .event-services-catalog__name {
  line-height: 1.06 !important;
}

body.event-page .event-services-catalog__service-link {
  line-height: 1.36 !important;
  overflow-wrap: break-word !important;
}

@media (min-width: 769px) {
  body.event-page .event-services-catalog__inner {
    grid-template-columns: minmax(260px, .48fr) minmax(0, 1fr) !important;
    gap: clamp(56px, 6vw, 104px) !important;
    align-items: start !important;
  }

  body.event-page .event-services-catalog__aside {
    width: 100% !important;
    max-width: min(100%, 390px) !important;
    justify-self: start !important;
    text-align: left !important;
    z-index: 1 !important;
  }

  body.event-page .event-services-catalog__aside > :is(p, h2, span) {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  body.event-page .event-services-catalog__lead {
    max-width: 30ch !important;
  }

  body.event-page .event-services-catalog__trigger {
    grid-template-columns: minmax(38px, 52px) minmax(0, 1fr) minmax(70px, max-content) 26px !important;
    gap: clamp(12px, 1.45vw, 22px) !important;
  }

  body.event-page .event-services-catalog__panelInner {
    width: 100% !important;
    padding-left: clamp(54px, 5vw, 86px) !important;
    padding-right: clamp(18px, 2vw, 30px) !important;
  }

  body.event-page .event-services-catalog__desc {
    max-width: min(100%, 58ch) !important;
  }

  body.event-page .event-services-catalog__services {
    columns: unset !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px clamp(24px, 3vw, 48px) !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.event-page .event-services-catalog__services li {
    min-width: 0 !important;
    padding: 0 !important;
  }

  body.event-page .event-services-catalog__service-link {
    display: inline-block !important;
    max-width: 100% !important;
  }
}

@media (min-width: 769px) and (max-width: 1120px) {
  body.event-page .event-services-catalog__services {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 768px) {
  body.event-page .event-services-catalog__aside {
    align-items: center !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__trigger {
    grid-template-columns: 34px minmax(0, 1fr) 24px !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__name {
    justify-self: center !important;
    text-align: center !important;
    font-size: clamp(21px, 6vw, 27px) !important;
    line-height: 1.08 !important;
  }

  body.event-page .event-services-catalog__count {
    justify-self: center !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__panelInner {
    justify-items: center !important;
    gap: 14px !important;
    padding: 0 clamp(10px, 3vw, 16px) 22px !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__desc {
    max-width: min(100%, 34ch) !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__services {
    columns: unset !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
    font-size: clamp(14px, 4.2vw, 16px) !important;
    line-height: 1.36 !important;
  }

  body.event-page .event-services-catalog__services li {
    width: 100% !important;
    padding: 0 !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__service-link {
    display: inline-block !important;
    max-width: min(100%, 32ch) !important;
    text-align: center !important;
  }

  body.event-page .event-services-catalog__cta {
    width: min(100%, 320px) !important;
    margin: 4px auto 0 !important;
    text-align: center !important;
  }
}

footer.sticky-footer {
  background: var(--ink-100) !important;
  color: rgba(255, 255, 255, .74) !important;
  text-align: left !important;
}

footer.sticky-footer .sticky-footer__group h2,
footer.sticky-footer .im-footer-toggle {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--paper-200) !important;
  font-size: clamp(12px, .82vw, 14px) !important;
  line-height: 1.18 !important;
  font-weight: 760 !important;
  letter-spacing: .18em !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

footer.sticky-footer .footer-socials {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  margin: 28px 0 0 !important;
}

footer.sticky-footer .social {
  display: inline-grid !important;
  place-items: center !important;
  width: 54px !important;
  height: 54px !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .035) !important;
  color: var(--paper-200) !important;
  opacity: .88 !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, .26), 0 1px 0 rgba(255, 255, 255, .06) inset !important;
  transition: transform .22s ease, border-color .22s ease, background .22s ease, opacity .22s ease !important;
}

footer.sticky-footer .social:hover,
footer.sticky-footer .social:focus-visible,
footer.sticky-footer .social.is-pulse {
  transform: translateY(-3px) scale(1.035) !important;
  border-color: rgba(255, 255, 255, .34) !important;
  background: rgba(255, 255, 255, .08) !important;
  opacity: 1 !important;
}

footer.sticky-footer .social__icon {
  width: 21px !important;
  height: 21px !important;
}

footer.sticky-footer .social__path {
  stroke: currentColor !important;
  stroke-width: 1.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  stroke-dasharray: 120 !important;
  stroke-dashoffset: 0 !important;
  opacity: .96 !important;
  transition: stroke-dashoffset .55s ease, opacity .18s ease !important;
}

footer.sticky-footer .sticky-footer__group--services .footer-svc {
  margin: 0 !important;
  border-top: 1px solid rgba(255, 255, 255, .12) !important;
}

footer.sticky-footer .sticky-footer__group--services .footer-svc:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, .12) !important;
}

footer.sticky-footer .sticky-footer__group--services .footer-svc summary,
footer.sticky-footer .sticky-footer__group--services .footer-svc-more > summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  padding: 13px 0 !important;
  color: rgba(255, 255, 255, .88) !important;
  cursor: pointer !important;
  list-style: none !important;
  font-size: clamp(16px, 1.18vw, 20px) !important;
  line-height: 1.1 !important;
  font-weight: 620 !important;
  letter-spacing: -.025em !important;
}

footer.sticky-footer .sticky-footer__group--services .footer-svc summary::marker,
footer.sticky-footer .sticky-footer__group--services .footer-svc-more > summary::marker {
  content: "" !important;
  display: none !important;
}

footer.sticky-footer .sticky-footer__group--services .footer-svc summary::-webkit-details-marker,
footer.sticky-footer .sticky-footer__group--services .footer-svc-more > summary::-webkit-details-marker {
  display: none !important;
}

footer.sticky-footer .footer-svc__ar {
  display: block !important;
  flex: 0 0 auto !important;
  width: 9px !important;
  height: 9px !important;
  margin-right: 2px !important;
  border: 0 !important;
  border-right: 2px solid currentColor !important;
  border-bottom: 2px solid currentColor !important;
  opacity: .62 !important;
  transform: rotate(45deg) !important;
  transition: transform .25s ease, opacity .25s ease !important;
}

footer.sticky-footer .footer-svc[open] > summary .footer-svc__ar,
footer.sticky-footer .footer-svc-more[open] > summary .footer-svc__ar {
  opacity: .95 !important;
  transform: rotate(225deg) !important;
}

footer.sticky-footer .footer-svc__scroll {
  max-height: 210px !important;
  margin: 2px 0 14px !important;
  padding-right: 10px !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(255, 255, 255, .35) transparent !important;
}

footer.sticky-footer .footer-svc__scroll ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

@media (max-width: 900px) {
  footer.sticky-footer {
    height: auto !important;
    min-height: 0 !important;
    clip-path: none !important;
  }

  footer.sticky-footer .sticky-footer__fixed,
  footer.sticky-footer .sticky-footer__sticky {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }

  footer.sticky-footer .sticky-footer__inner {
    min-height: 0 !important;
    padding: 46px 22px 24px !important;
  }

  footer.sticky-footer .sticky-footer__grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 34px 22px !important;
  }

  footer.sticky-footer .sticky-footer__brand {
    grid-column: 1 / -1 !important;
    width: min(100%, 520px) !important;
  }

  footer.sticky-footer .sticky-footer__mark {
    width: 174px !important;
    margin-bottom: 24px !important;
  }

  footer.sticky-footer .sticky-footer__text {
    max-width: 360px !important;
    font-size: 14px !important;
    line-height: 1.66 !important;
    letter-spacing: .035em !important;
  }

  footer.sticky-footer .sticky-footer__group h2,
  footer.sticky-footer .im-footer-toggle {
    margin-bottom: 16px !important;
    font-size: 14px !important;
    letter-spacing: .16em !important;
  }

  footer.sticky-footer .sticky-footer__group ul {
    display: grid !important;
    gap: 9px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  footer.sticky-footer .sticky-footer__group a {
    font-size: 15px !important;
    line-height: 1.18 !important;
  }

  footer.sticky-footer .footer-socials {
    gap: 10px !important;
  }

  footer.sticky-footer .social {
    width: 48px !important;
    height: 48px !important;
    border-radius: 14px !important;
  }

  footer.sticky-footer .sticky-footer__bottom {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    text-align: left !important;
  }

  footer.sticky-footer .footer-note {
    max-width: 100% !important;
    text-align: left !important;
  }

  footer.sticky-footer .im-footer-panel {
    display: block !important;
  }

}

@media (max-width: 560px) {
  footer.sticky-footer .sticky-footer__inner {
    padding: 42px 24px 22px !important;
  }

  footer.sticky-footer .sticky-footer__grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  footer.sticky-footer .sticky-footer__group:nth-child(n + 4) {
    padding-top: 4px !important;
  }

  footer.sticky-footer .sticky-footer__group:not(.sticky-footer__group--services) ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 18px !important;
    row-gap: 12px !important;
  }

  footer.sticky-footer .sticky-footer__group--services .footer-svc__scroll ul {
    grid-template-columns: 1fr !important;
  }

  footer.sticky-footer .sticky-footer__group a {
    font-size: 14px !important;
  }

  footer.sticky-footer .social {
    width: 44px !important;
    height: 44px !important;
  }
}
