/* Footer-only refinement. The existing footer background and its mask are untouched. */
body footer.pa-site-footer.pa-footer--compact {
  --pa-footer-separator: rgba(216, 145, 79, .46);
  --pa-footer-fade-horizontal: linear-gradient(90deg, transparent, var(--pa-footer-separator) 22%, var(--pa-footer-separator) 78%, transparent);
  --pa-footer-fade-vertical: linear-gradient(180deg, transparent, var(--pa-footer-separator) 24%, var(--pa-footer-separator) 76%, transparent);
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contacts {
  position: relative;
  border-top: 0 !important;
  border-bottom: 0 !important;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contacts::before,
body footer.pa-site-footer.pa-footer--compact .pa-footer__contacts::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  left: 0;
  height: 1px;
  background: var(--pa-footer-fade-horizontal);
  pointer-events: none;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contacts::before { top: 0; }
body footer.pa-site-footer.pa-footer--compact .pa-footer__contacts::after { bottom: 0; }

body footer.pa-site-footer.pa-footer--compact .foot-contacts-wrapper {
  grid-template-columns: .99fr 1.73fr 1.42fr 1.86fr;
  grid-template-rows: auto;
  align-items: stretch;
}

/* Every contact shares one icon column, one title row and one text inset. */
body footer.pa-site-footer.pa-footer--compact .foot-contact-item,
body footer.pa-site-footer.pa-footer--compact .foot-contact-item:nth-child(-n + 2) {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  grid-template-rows: 38px auto;
  align-content: start;
  align-items: start;
  column-gap: 12px;
  min-width: 0;
  min-height: 0;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 18px 16px 20px 12px !important;
  justify-content: stretch !important;
}

body footer.pa-site-footer.pa-footer--compact .foot-contact-item::before {
  position: static !important;
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  width: 38px !important;
  height: 38px !important;
  background-size: 18px 18px;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-head {
  grid-column: 2;
  grid-row: 1;
  align-items: center;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-body {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  width: 100%;
  min-width: 0;
  margin: 8px 0 0 !important;
  padding: 0 !important;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-title {
  margin: 0;
  font-size: 13px;
  line-height: 1.3;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-body,
body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-body :where(a, p, span) {
  font-size: 12px;
  line-height: 1.55;
}

body footer.pa-site-footer.pa-footer--compact .foot-contact-item:not(:last-child)::after,
body footer.pa-site-footer.pa-footer--compact .foot-contact-item:hover::after,
body footer.pa-site-footer.pa-footer--compact .pa-footer__socials::before,
body footer.pa-site-footer.pa-footer--compact .pa-footer__socials::after,
body footer.pa-site-footer.pa-footer--compact .pa-footer__slogan::before {
  background: var(--pa-footer-fade-vertical);
  box-shadow: none;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__slogan::before { width: 1px; }

body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
  justify-content: flex-start;
  width: 288px;
  max-width: 100%;
  gap: 6px;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers .pa-footer__messenger {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  min-height: 34px;
  margin: 0;
  padding: 7px 6px;
  border: 1px solid rgba(218, 141, 82, .55);
  border-radius: 999px;
  color: var(--pa-footer-ivory, #fff8f2);
  background: transparent;
  box-shadow: none;
  font-family: inherit;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  overflow-wrap: normal;
  transition: color .18s ease, border-color .18s ease, background-color .18s ease;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger svg {
  display: block;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  color: #dda16d;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger > span {
  display: inline;
  font: inherit;
  line-height: 1.2;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers a.pa-footer__messenger:hover:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))),
body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers a.pa-footer__messenger:focus-visible:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))) {
  color: #ffe1c4;
  border-color: rgba(238, 172, 113, .85);
  background-color: rgba(220, 138, 77, .09);
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger--unconfigured { opacity: .62; }

body footer.pa-site-footer.pa-footer--compact .pa-footer__bottom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 18px;
  padding: 18px 0 10px;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav {
  min-width: 0;
  grid-column: auto;
  grid-row: auto;
  border: 0 !important;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu {
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0;
  align-items: center;
  justify-content: flex-start;
  flex-flow: row wrap;
  gap: 2px 0 !important;
  border: 0 !important;
  list-style: none;
  text-align: left;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li {
  display: inline-flex;
  position: relative;
  flex: 0 1 auto;
  align-items: center;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li:first-child { padding-left: 0; }
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li:last-child { padding-right: 0; }

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li::before { content: none; }
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li:not(:last-child)::after {
  content: "" !important;
  display: block !important;
  position: absolute;
  top: 50%;
  right: 0 !important;
  width: 1px !important;
  height: 24px !important;
  background: var(--pa-footer-fade-vertical) !important;
  opacity: 1 !important;
  transform: translateY(-50%);
  pointer-events: none;
}
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li:last-child::after { content: none !important; display: none !important; }

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a {
  display: inline-flex;
  align-items: center;
  width: auto;
  height: auto;
  min-height: 34px;
  padding: 4px 0;
  border: 0;
  font: inherit;
  white-space: normal;
  text-align: inherit;
  overflow-wrap: anywhere;
  transition: color .18s ease, text-decoration-color .18s ease;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))) {
  color: rgba(255, 248, 242, .84);
  background: transparent;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a:visited:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))) { color: rgba(255, 248, 242, .84); }
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a:not(:where([role=button],[class*=btn],[class*=button],[class*=cta],.pa-cr__hero-call,.pa-cr__map-link,.pa-cr__messengers a,.gp-arrow-down,.pa-hero-services,.pa-scroll-next,.pa-final-route li>a)):hover,
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a:focus-visible,
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li.current-menu-item > a {
  text-decoration-thickness: 1px;
}
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a:not(:where([role=button],[class*=btn],[class*=button],[class*=cta],.pa-cr__hero-call,.pa-cr__map-link,.pa-cr__messengers a,.gp-arrow-down,.pa-hero-services,.pa-scroll-next,.pa-final-route li>a)):hover:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))),
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a:focus-visible:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))),
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li.current-menu-item > a:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))) {
  color: #eab382;
}

/* Legacy home-menu markup must have the same text layout as other footer links. */
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav .menu-item-homepage .add-menu-home { display: none; }
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav .menu-item-homepage .name {
  display: inline;
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
  clip-path: none;
  white-space: normal;
}

body footer.pa-site-footer.pa-footer--compact .pa-footer__socials {
  grid-column: auto;
  grid-row: auto;
  justify-self: center;
  width: auto;
  max-width: 290px;
  padding: 0 18px;
}
body footer.pa-site-footer.pa-footer--compact .pa-footer__socials ul.svg-social-icons { max-width: 254px; gap: 5px 7px; }
body footer.pa-site-footer.pa-footer--compact .pa-footer__credits { grid-column: auto; grid-row: auto; white-space: nowrap; }

body footer.pa-site-footer.pa-footer--compact .pa-footer__legal { padding-top: 18px; }
body footer.pa-site-footer.pa-footer--compact .pa-footer__disclaimer,
body footer.pa-site-footer.pa-footer--compact .pa-footer__disclaimer * {
  max-width: 1080px;
  margin-right: auto;
  margin-left: auto;
  font-size: 11px;
  line-height: 1.6;
}

@media (max-width: 1180px) {
  body footer.pa-site-footer.pa-footer--compact .pa-footer__bottom { grid-template-columns: minmax(0, 1fr) auto; gap: 10px 18px; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav { grid-column: 1 / -1; grid-row: 1; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials { grid-column: 1; grid-row: 2; justify-self: start; padding: 0 18px 0 0; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials::before { content: none !important; display: none !important; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__credits { grid-column: 2; grid-row: 2; justify-self: end; }
}

@media (max-width: 1200px) {
  body footer.pa-site-footer.pa-footer--compact .foot-contacts-wrapper { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
  body footer.pa-site-footer.pa-footer--compact .foot-contacts-wrapper {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto !important;
    justify-items: stretch;
    background-image: none !important;
  }
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item,
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item:nth-child(-n + 2) {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    grid-template-rows: 34px auto;
    align-items: start;
    column-gap: 12px;
    min-height: 0;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 16px 0 !important;
    justify-content: stretch !important;
    text-align: left;
  }
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item::before {
    position: static;
    
    
    width: 34px !important;
    height: 34px !important;
    background-size: 18px 18px;
  }
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item:not(:last-child)::after {
    content: "" !important;
    display: block !important;
    top: auto;
    bottom: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--pa-footer-fade-horizontal) !important;
  }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-head {
    grid-column: 2;
    grid-row: 1;
    min-height: 34px !important;
  }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-body {
    grid-column: 2;
    grid-row: 2;
    margin: 6px 0 0 !important;
  }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__bottom {  gap: 12px; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav,
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials,
  body footer.pa-site-footer.pa-footer--compact .pa-footer__credits { grid-column: 1; grid-row: auto; justify-self: start; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu { gap: 0 !important; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li { padding: 0 10px; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li:first-child { padding-left: 0; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a { min-height: 44px !important; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials { width: 100%; max-width: none; padding: 0; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials::after { content: none !important; display: none !important; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials ul.svg-social-icons {  justify-content: flex-start; }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers .pa-footer__messenger { min-height: 36px; }
}

@media (max-width: 380px) {
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers {
    grid-template-columns: repeat(2, minmax(0, 92px));
    width: 190px;
  }
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger:last-child:nth-child(3) {
    grid-column: 1 / -1;
    justify-self: center;
    width: 92px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger,
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav a { transition: none; }
}

/* All text links use the same soft line as Documents / Requisites. */
body footer.pa-site-footer.pa-footer--compact :is(.pa-footer__nav a,.pa-footer__contact-body a:not(.pa-footer__messenger),.pa-footer__legal a:not(.pa-checko)) {border-bottom:0!important;
  background-repeat:no-repeat!important;background-position:center bottom!important;background-size:0% 1px!important;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
  transition:color .26s ease,background-size .32s ease!important;
}
body footer.pa-site-footer.pa-footer--compact :is(.pa-footer__nav a,.pa-footer__contact-body a:not(.pa-footer__messenger),.pa-footer__legal a:not(.pa-checko)):not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))) {
  background-image:linear-gradient(90deg,transparent,currentColor 22%,currentColor 78%,transparent);
}
body footer.pa-site-footer.pa-footer--compact :is(.pa-footer__nav a,.pa-footer__contact-body a:not(.pa-footer__messenger),.pa-footer__legal a:not(.pa-checko)):is(:hover,:focus-visible),
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav li.current-menu-item>a {background-size:100% 1px!important;
}
body footer.pa-site-footer.pa-footer--compact :is(.pa-footer__nav a,.pa-footer__contact-body a:not(.pa-footer__messenger),.pa-footer__legal a:not(.pa-checko)):is(:hover,:focus-visible):not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))),
body footer.pa-site-footer.pa-footer--compact .pa-footer__nav li.current-menu-item>a:not(:where(.wpbar-item,[data-pa-ui-role]:not([data-pa-ui-role=link]))) {
  color:#ffd2a0;
}

/* Mobile contact details remain readable; messenger names use accessible labels. */
@media (max-width:767px) {
  body footer.pa-site-footer.pa-footer--compact {text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__top {flex-direction:column;align-items:center;gap:20px}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__brand-row {flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__slogan {margin:0;padding:0;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__cta {align-self:center;margin-inline:auto}
  body footer.pa-site-footer.pa-footer--compact .foot-contacts-wrapper {justify-items:center}
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item,
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item:nth-child(-n+2) {grid-template-columns:minmax(0,1fr)!important;grid-template-rows:38px auto auto;justify-items:center;align-items:center;gap:8px;max-width:100%!important;padding:18px 8px!important;text-align:center!important}
  body footer.pa-site-footer.pa-footer--compact .foot-contact-item::before {grid-column:1;grid-row:1;justify-self:center;align-self:center;width:38px!important;height:38px!important;margin:0!important;transform:none!important}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-head {grid-column:1;grid-row:2;display:flex!important;align-items:center!important;justify-content:center!important;min-height:0!important;width:100%;text-align:center!important}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-title {width:auto!important;margin-inline:auto!important;text-align:center!important}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-body {grid-column:1;grid-row:3;justify-self:center;width:100%;margin:0!important;text-align:center!important}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__contact-body :where(a,p,span) {text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__phones {display:flex;flex-direction:column;align-items:center!important;justify-content:center;gap:3px}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__phones a {width:auto;margin-inline:auto}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers {display:flex;align-items:center;justify-content:center;width:100%;gap:10px}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messengers .pa-footer__messenger {flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger svg {width:21px;height:21px;flex:0 0 21px}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__messenger > span {display:none}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__bottom {grid-template-columns:minmax(0,1fr);justify-items:center;gap:14px}
  body footer.pa-site-footer.pa-footer--compact :is(.pa-footer__nav,.pa-footer__socials,.pa-footer__credits) {grid-column:1;grid-row:auto;justify-self:center;width:100%;max-width:100%;margin:0;padding:0;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu {justify-content:center;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li {padding:0 9px}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__nav ul.footer-menu > li > a {min-height:44px;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials::before,
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials::after {content:none!important;display:none!important}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__socials ul.svg-social-icons {width:100%;max-width:100%;justify-content:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__legal {align-items:center;justify-content:center;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer__legal-copy {width:100%;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer-juridical {align-items:center;justify-content:center;text-align:center}
  body footer.pa-site-footer.pa-footer--compact .pa-footer-juridical nav {justify-content:center}
  body footer.pa-site-footer.pa-footer--compact .pa-checko--footer {align-self:center;margin:0 auto}
}
