/* ============================================================================
   Premium multi-column footer (shared/foot.php) — light + brand green.
   Loaded globally (header.php) so it applies on every page regardless of which
   main stylesheet is present. Namespaced under .mewFoot so it never touches the
   PT footer (foot-pt.php), which uses the legacy .footerContentWrapper classes.
   ========================================================================== */
/* soft mint gradient surface + brand-green top accent bar (replaces legacy art) */
.footer:has(.mewFoot) { background: linear-gradient(180deg, #ffffff 0%, #f1fbf9 100%); }
.footer:has(.mewFoot)::before {
  background: linear-gradient(90deg, #05ada3, #24c7bd, #05ada3);
  width: 100%; height: 3px; top: 0; left: 0; right: auto; bottom: auto;
}
.mewFoot { position: relative; z-index: 1; }
.mewFoot-top {
  display: flex;
  align-items: stretch;
  gap: 52px;
  padding-bottom: 40px;
}
.mewFoot-brand { flex: 0 0 288px; max-width: 288px; }
.mewFoot-main { flex: 1; display: flex; flex-direction: column; }
.mewFoot-seal { margin-top: auto; align-self: flex-end; padding-top: 28px; }
.mewFoot-seal .stjr-badge { justify-content: flex-end; }
.mewFoot-logo { display: inline-block; transition: opacity 0.15s; }
.mewFoot-logo:hover { opacity: 0.8; }
.mewFoot-logo img { height: 34px; width: auto; display: block; }
.mewFoot-desc { font-size: 13.5px; line-height: 1.6; color: #475569; margin: 16px 0 0; }
.mewFoot-rating {
  display: flex; align-items: center; gap: 8px;
  margin: 16px 0 0; font-size: 13px; color: #475569;
}
.mewFoot-rating b { color: #0f2b26; font-weight: 700; }
.mewFoot-stars { color: #f59e0b; letter-spacing: 2px; font-size: 14px; }
.mewFoot-badges {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 18px 0 0;
}
.mewFoot-badges .dmca-badge { display: flex; }
.mewFoot-badges .dmca-badge img { max-width: 120px; width: 100%; height: 21px; }
.mewFoot .stjr-badge {   /* override legacy reserved 240px so it fits the brand column */
  width: auto; min-width: 0; flex: 0 0 auto; display: inline-flex; align-items: center;
}
.mewFoot-socials { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; margin: 20px 0 0; }
.mewFoot-social {
  width: 34px; height: 34px; border-radius: 9px;
  border: 1px solid #d6ece8; background: #fff;
  display: flex; align-items: center; justify-content: center;
  transition: border-color 0.15s, background 0.15s, transform 0.15s;
}
.mewFoot-social img { width: 17px; height: 17px; display: block; }
.mewFoot-social:hover { border-color: #05ada3; background: #f0fdf9; transform: translateY(-2px); }
.mewFoot-fine { font-size: 11.5px; line-height: 1.55; color: #94a3b8; margin: 22px 0 0; }
.mewFoot-cols {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 36px 34px;
}
.mewFoot-col { display: flex; flex-direction: column; gap: 30px; }
.mewFoot-head {
  font-size: 12.5px; font-weight: 800; letter-spacing: 0.07em; text-transform: uppercase;
  color: #0f2b26; margin: 0 0 16px;
}
.mewFoot-head::after {
  content: ""; display: block; width: 24px; height: 2px; margin-top: 10px;
  background: linear-gradient(90deg, #05ada3, #24c7bd); border-radius: 2px;
}
.mewFoot-col ul { list-style: none; margin: 0; padding: 0; }
.mewFoot-col li { margin: 0 0 12px; }
.mewFoot-col li:last-child { margin-bottom: 0; }
.mewFoot-col a {
  font-size: 13.5px; line-height: 1.45; color: #475569; text-decoration: none;
  display: inline-block; transition: color 0.13s, transform 0.13s;
}
.mewFoot-col a:hover { color: #05ada3; transform: translateX(3px); }
.mewFoot-bottom { border-top: 1px solid #d8f0ec; background: #e9f9f5; }
.mewFoot-bottomInner {
  display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 0;
}
.mewFoot-copy { font-size: 12.5px; color: #475569; }
.mewFoot-legal { display: flex; align-items: center; gap: 16px; font-size: 12.5px; }
.mewFoot-legal a { color: #64748b; text-decoration: none; }
.mewFoot-legal a:hover { color: #05ada3; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 991px) {
  .mewFoot-top { flex-direction: column; gap: 40px; align-items: stretch; }
  .mewFoot-brand { flex: none; max-width: 560px; }
  .mewFoot-seal { align-self: flex-start; margin-top: 0; padding-top: 30px; }
  .mewFoot-seal .stjr-badge { justify-content: flex-start; }
}
@media (max-width: 680px) {
  .mewFoot-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 20px; }
}
@media (max-width: 575px) {
  .mewFoot-bottomInner { flex-direction: column; align-items: flex-start; gap: 12px; }
}
@media (max-width: 400px) {
  .mewFoot-cols { grid-template-columns: 1fr; }
}
