/* ZMPT 1.4.8 refined footer */

.zmpt-trustbar--after-hero {
  position: relative;
  z-index: 2;
  border-top: 0;
  box-shadow: 0 12px 32px rgba(11, 20, 23, .055);
}

.zmpt-footer-cta-v2 {
  position: relative;
  overflow: hidden;
  padding: clamp(3.5rem, 6vw, 5.25rem) 0;
  background:
    radial-gradient(circle at 88% 12%, rgba(111, 207, 221, .2), transparent 33%),
    linear-gradient(135deg, #0A8597 0%, #075B69 54%, #0B252C 100%);
  color: #fff;
}
.zmpt-footer-cta-v2::after {
  content: "";
  position: absolute;
  right: -100px;
  bottom: -160px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 50%;
}
.zmpt-footer-cta-v2__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center;
}
.zmpt-footer-cta-v2 .zmpt-eyebrow { margin-bottom: .35rem; color: #C5F3F7; }
.zmpt-footer-cta-v2 h2 {
  max-width: 840px;
  margin: 0 0 .65rem;
  color: #fff;
  font-size: clamp(2rem, 3.5vw, 3.35rem);
}
.zmpt-footer-cta-v2 p:not(.zmpt-eyebrow) { max-width: 760px; margin-bottom: 0; color: rgba(255, 255, 255, .78); }
.zmpt-footer-cta-v2__actions { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: flex-end; }

.zmpt-footer-v2 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 7% 0%, rgba(13, 170, 192, .1), transparent 27%),
    #081418;
  color: rgba(255, 255, 255, .68);
}
.zmpt-footer-v2::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.55), transparent 68%);
}
.zmpt-footer-v2 .zmpt-container { max-width: 1380px; }
.zmpt-footer-v2__main {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(250px, 1.15fr) minmax(190px, .85fr) minmax(170px, .72fr) minmax(290px, 1.18fr);
  gap: clamp(2rem, 4vw, 4.75rem);
  padding-top: clamp(4.5rem, 7vw, 6.5rem);
  padding-bottom: clamp(4rem, 6vw, 5.5rem);
}
.zmpt-footer-v2__logo { display: inline-flex; max-width: 235px; }
.zmpt-footer-v2__logo img { display: block; width: 100%; height: auto; }
.zmpt-footer-v2__brand > p {
  max-width: 365px;
  margin: 1.35rem 0 1.55rem;
  color: rgba(255,255,255,.7);
  font-size: .98rem;
  line-height: 1.75;
}
.zmpt-footer-v2__credentials { display: flex; flex-wrap: wrap; gap: .6rem; }
.zmpt-footer-v2__credentials span {
  padding: .58rem .72rem;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 10px;
  background: rgba(255,255,255,.045);
  color: rgba(255,255,255,.64);
  font-size: .76rem;
}
.zmpt-footer-v2__credentials strong { color: #9CE4ED; }
.zmpt-footer-v2__heading {
  margin: .2rem 0 1.35rem;
  color: #fff;
  font-size: .8rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.zmpt-footer-v2__column ul { margin: 0; padding: 0; list-style: none; }
.zmpt-footer-v2__column li { margin: 0; border-bottom: 1px solid rgba(255,255,255,.065); }
.zmpt-footer-v2__column li:last-child { border-bottom: 0; }
.zmpt-footer-v2__column a {
  display: block;
  padding: .56rem 0;
  color: rgba(255,255,255,.69);
  text-decoration: none;
  font-size: .89rem;
  line-height: 1.42;
  transition: color .18s ease, transform .18s ease;
}
.zmpt-footer-v2__column a:hover { color: #9CE4ED; transform: translateX(3px); }

.zmpt-footer-v2__contact-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: .85rem;
  align-items: center;
  margin-bottom: .7rem;
  padding: .82rem;
  border: 1px solid rgba(255,255,255,.095);
  border-radius: 14px;
  background: rgba(255,255,255,.035);
  color: #fff;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.zmpt-footer-v2__contact-row:hover {
  transform: translateY(-2px);
  border-color: rgba(111,207,221,.38);
  background: rgba(111,207,221,.075);
  color: #fff;
}
.zmpt-footer-v2__contact-row > svg {
  width: 22px;
  height: 22px;
  margin: auto;
  color: #7ED7E3;
}
.zmpt-footer-v2__contact-row span,
.zmpt-footer-v2__contact-row small,
.zmpt-footer-v2__contact-row strong { display: block; min-width: 0; }
.zmpt-footer-v2__contact-row small { margin-bottom: .08rem; color: rgba(255,255,255,.48); font-size: .69rem; letter-spacing: .08em; text-transform: uppercase; }
.zmpt-footer-v2__contact-row strong { overflow-wrap: anywhere; color: #fff; font-size: .86rem; }
.zmpt-footer-v2__hours {
  margin: 1rem 0 1.2rem;
  padding-left: .1rem;
}
.zmpt-footer-v2__hours strong,
.zmpt-footer-v2__hours span { display: block; }
.zmpt-footer-v2__hours strong { margin-bottom: .2rem; color: #fff; font-size: .85rem; }
.zmpt-footer-v2__hours span { color: rgba(255,255,255,.58); font-size: .83rem; line-height: 1.55; }
.zmpt-footer-v2__actions { display: flex; flex-wrap: wrap; gap: .8rem; align-items: center; }
.zmpt-footer-v2__actions .zmpt-btn { padding: .72rem 1.15rem; font-size: .86rem; }
.zmpt-footer-v2__whatsapp { color: #9CE4ED; font-size: .86rem; font-weight: 800; text-decoration: none; }
.zmpt-footer-v2__whatsapp:hover { color: #fff; }

.zmpt-footer-v2__bottom { position: relative; z-index: 1; border-top: 1px solid rgba(255,255,255,.09); background: rgba(0,0,0,.12); }
.zmpt-footer-v2__bottom-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 1.5rem;
  align-items: center;
  min-height: 76px;
  padding-top: 1rem;
  padding-bottom: 1rem;
  color: rgba(255,255,255,.46);
  font-size: .75rem;
}
.zmpt-footer-v2__bottom-inner > div:first-child { display: flex; flex-wrap: wrap; gap: .9rem; }
.zmpt-footer-v2__bottom a { color: rgba(255,255,255,.58); text-decoration: none; }
.zmpt-footer-v2__bottom a:hover { color: #9CE4ED; }
.zmpt-footer-v2__social { display: flex; gap: .55rem; }
.zmpt-footer-v2__social a {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 50%;
  background: rgba(255,255,255,.035);
  color: rgba(255,255,255,.7);
  transition: color .18s ease, border-color .18s ease, background .18s ease;
}
.zmpt-footer-v2__social a:hover { border-color: rgba(111,207,221,.4); background: rgba(111,207,221,.1); color: #9CE4ED; }
.zmpt-footer-v2__social svg { width: 17px; height: 17px; }
.zmpt-footer-v2__credit { justify-self: end; text-align: right; }

@media (max-width: 1160px) {
  .zmpt-footer-v2__main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zmpt-footer-v2__brand > p { max-width: 520px; }
}

@media (max-width: 850px) {
  .zmpt-footer-cta-v2__inner { grid-template-columns: 1fr; }
  .zmpt-footer-cta-v2__actions { justify-content: flex-start; }
  .zmpt-footer-v2__bottom-inner { grid-template-columns: 1fr auto; }
  .zmpt-footer-v2__credit { grid-column: 1 / -1; justify-self: start; text-align: left; }
}

@media (max-width: 660px) {
  .zmpt-footer-cta-v2__actions,
  .zmpt-footer-cta-v2__actions .zmpt-btn { width: 100%; }
  .zmpt-footer-v2__main { grid-template-columns: 1fr; gap: 2.7rem; padding-top: 4rem; }
  .zmpt-footer-v2__brand > p { max-width: none; }
  .zmpt-footer-v2__bottom-inner { grid-template-columns: 1fr; }
  .zmpt-footer-v2__social { order: -1; }
  .zmpt-footer-v2__credit { grid-column: auto; }
}
