/**
 * MakkiPlay Global Footer — Phase 5.
 *
 * Sole visual owner of .mp-footer*. The footer has one consistent global
 * width on every template; page-specific CSS must never resize it.
 */
.mp-footer{margin-top:0;border-top:1px solid var(--mp-line);background:var(--mp-bg);color:var(--mp-text)}
.mp-footer__inner,.mp-footer__bottom{box-sizing:border-box;width:min(calc(100% - 48px),var(--mp-container));margin-inline:auto}
.mp-footer__inner{display:grid;grid-template-columns:minmax(260px,1.45fr) repeat(3,minmax(150px,1fr));gap:clamp(30px,3vw,54px);align-items:start;padding:42px 0 34px}
.mp-footer__brand-column{min-width:0;max-width:360px}.mp-brand--footer{width:max-content;max-width:100%;margin-bottom:13px}.mp-brand--footer.mp-brand--logo img{max-width:min(220px,100%);max-height:42px}
.mp-footer__tagline{max-width:330px;margin:0;color:var(--mp-muted);font-size:var(--mp-fs-12);line-height:var(--mp-lh-155);text-wrap:pretty}
.mp-footer__group{min-width:0}.mp-footer__group h2{margin:2px 0 12px;color:var(--mp-muted);font-family:var(--mp-font-section);font-size:var(--mp-fs-12);font-weight:var(--mp-weight-bold);line-height:var(--mp-lh-12);letter-spacing:var(--mp-track-pos-045);text-transform:uppercase}
.mp-footer__menu{display:grid;gap:8px;list-style:none;margin:0;padding:0}.mp-footer__menu li{min-width:0;margin:0}.mp-footer__menu a{display:inline-block;max-width:100%;color:var(--mp-text);font-family:var(--mp-font-body);font-size:var(--mp-fs-13);font-weight:var(--mp-weight-regular);line-height:var(--mp-lh-14);text-decoration:none;transition:color var(--mp-motion-fast) var(--mp-ease)}
.mp-footer__menu a:hover,.mp-footer__menu a:focus-visible{color:var(--mp-accent)}.mp-footer__menu a:focus-visible,.mp-brand--footer:focus-visible,.mp-brand--footer a:focus-visible{outline:2px solid var(--mp-accent);outline-offset:3px;border-radius:3px}
.mp-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:17px 0 24px;border-top:1px solid var(--mp-line)}
.mp-footer__bottom p{margin:0;color:var(--mp-muted);font-size:var(--mp-fs-11);line-height:var(--mp-lh-14)}.mp-footer__signature{text-align:right}

@media(max-width:960px){
  .mp-footer__inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 34px;padding-top:40px}
  .mp-footer__brand-column{grid-column:1/-1;max-width:520px}
}
@media(max-width:760px){
  .mp-footer__inner,.mp-footer__bottom{width:min(calc(100% - 24px),var(--mp-container))}
  .mp-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;padding:34px 0 30px}
  .mp-footer__brand-column{grid-column:1/-1;max-width:100%;margin-inline:auto;text-align:center}
  .mp-brand--footer{margin-inline:auto}
  .mp-footer__tagline{margin-inline:auto}
  .mp-footer__group{text-align:center}
  .mp-footer__group h2{text-align:center}
  .mp-footer__menu{gap:2px}
  .mp-footer__menu a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:36px;padding:6px 8px;text-align:center;overflow-wrap:anywhere}
  .mp-footer__bottom{align-items:center;padding:15px 0 21px;text-align:center}
  .mp-footer__bottom p{width:100%}
  .mp-footer__signature{text-align:center}
}
@media(max-width:480px){
  .mp-footer__inner{grid-template-columns:1fr 1fr;gap:27px 18px}
  .mp-footer__group h2{font-size:var(--mp-fs-11)}.mp-footer__menu{gap:3px}.mp-footer__menu a{font-size:var(--mp-fs-12)}
  .mp-footer__bottom{display:grid;gap:5px}.mp-footer__signature{text-align:center}
}
@media(max-width:360px){.mp-footer__inner{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.mp-footer__menu a{transition:none}}
