.mj-site-footer{--mj-footer-bg:#151b28;--mj-footer-text:#f4f6fa;--mj-footer-muted:#b9c3d3;--mj-footer-line:#344154;--mj-footer-accent:#dc7695;background:var(--mj-footer-bg);color:var(--mj-footer-text);border-top:1px solid var(--mj-footer-line);margin-top:64px;font-family:'Noto Sans SC','Noto Sans TC','Microsoft YaHei',sans-serif;font-style:normal}
html[lang=zh-TW] .mj-site-footer{font-family:'Noto Sans TC','Noto Sans SC','Microsoft YaHei',sans-serif}
.mj-site-footer *{box-sizing:border-box}
.mj-site-footer .mj-footer-inner{width:100%;max-width:1536px;margin:0 auto;padding:48px clamp(20px,3.2vw,54px) 0}
.mj-site-footer .mj-footer-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,.8fr) minmax(0,.85fr) minmax(0,1fr);gap:clamp(24px,3.2vw,48px);padding-bottom:32px}
.mj-site-footer .mj-footer-brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:25px;line-height:1.25;font-weight:700;color:var(--mj-footer-text);text-decoration:none}
.mj-site-footer .mj-footer-mark{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:6px;background:#cc6489;color:#fff;font-size:30px;line-height:1;font-weight:700}
.mj-site-footer .mj-footer-intro h2{font-size:21px;font-weight:600;line-height:1.55;letter-spacing:0;margin:24px 0 14px;text-wrap:balance}
.mj-site-footer .mj-footer-intro p{max-width:34em;font-size:14px;line-height:1.95;color:var(--mj-footer-muted);margin:0}
.mj-site-footer .mj-footer-group{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:0}
.mj-site-footer .mj-footer-group:nth-child(2){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;align-content:start}
.mj-site-footer .mj-footer-group:nth-child(2) h2{grid-column:1/-1}
.mj-site-footer .mj-footer-group h2{font-size:15px;line-height:1.6;font-weight:600;color:var(--mj-footer-text);margin:8px 0 16px}
.mj-site-footer .mj-footer-group a{display:flex;align-items:center;min-height:38px;max-width:100%;font-size:14px;line-height:1.6;color:var(--mj-footer-muted);text-decoration:none;padding:6px 0;overflow-wrap:anywhere}
.mj-site-footer a:hover{color:var(--mj-footer-accent);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.mj-site-footer a:focus-visible{outline:2px solid #f49eb9;outline-offset:5px;border-radius:2px}
.mj-site-footer .mj-footer-base{display:flex;align-items:center;gap:16px 28px;border-top:1px solid var(--mj-footer-line);min-height:80px;padding:16px 0;font-size:11px;line-height:1.6;color:var(--mj-footer-muted)}
.mj-site-footer .mj-footer-base p{margin:0}
.mj-site-footer .mj-footer-legal{display:flex;align-items:center;flex-wrap:wrap;gap:0 20px}
.mj-site-footer .mj-footer-base a{display:inline-flex;align-items:center;min-height:36px;color:var(--mj-footer-muted);text-decoration:none}
.mj-site-footer .mj-footer-base a:hover{color:var(--mj-footer-accent);text-decoration:underline}
.mj-site-footer .mj-footer-top{margin-left:auto;flex:none;gap:6px}
.mj-site-footer ::selection{background:#a94468;color:#fff}
.mj-site-footer .mj-footer-mobile-copy,.mj-site-footer .mj-footer-mobile-folds{display:none}
@media(max-width:1100px){.mj-site-footer .mj-footer-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}.mj-site-footer .mj-footer-intro{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1.9fr;gap:0 32px}.mj-site-footer .mj-footer-brand{align-self:start}.mj-site-footer .mj-footer-intro h2{grid-column:1;margin:18px 0 0}.mj-site-footer .mj-footer-intro p{grid-column:2;grid-row:1/3;align-self:center;max-width:48em}.mj-site-footer .mj-footer-base{flex-wrap:wrap}.mj-site-footer .mj-footer-top{margin-left:auto}}
@media(max-width:640px){
 .mj-site-footer{margin-top:28px}
 .mj-site-footer .mj-footer-inner{padding-top:24px}
 .mj-site-footer .mj-footer-grid{grid-template-columns:minmax(0,1fr);gap:20px;padding-bottom:16px}
 .mj-site-footer .mj-footer-intro{display:block;grid-column:1}
 .mj-site-footer .mj-footer-brand{font-size:24px}
 .mj-site-footer .mj-footer-intro h2{font-size:19px;line-height:1.5;margin:12px 0 8px}
 .mj-site-footer .mj-footer-intro p{font-size:14px;line-height:1.75}
 .mj-site-footer .mj-footer-desktop-copy{display:none}
 .mj-site-footer .mj-footer-mobile-copy{display:inline}
 .mj-site-footer .mj-footer-group:nth-child(2){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px}
 .mj-site-footer .mj-footer-group:nth-child(3),.mj-site-footer .mj-footer-group:nth-child(4){display:none}
 .mj-site-footer .mj-footer-group h2{margin:0 0 8px;font-size:15px}
 .mj-site-footer .mj-footer-group a{font-size:14px;min-height:44px;padding:4px 0;line-height:1.5}
 .mj-site-footer .mj-footer-mobile-folds{display:block}
 .mj-site-footer .mj-footer-fold{border-top:1px solid var(--mj-footer-line)}
 .mj-site-footer .mj-footer-fold summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;list-style:none;font-size:14px;font-weight:600;cursor:pointer}
 .mj-site-footer .mj-footer-fold summary::-webkit-details-marker{display:none}
 .mj-site-footer .mj-footer-fold summary::marker{content:''}
 .mj-site-footer .mj-footer-fold summary:focus-visible{outline:2px solid #f49eb9;outline-offset:2px}
 .mj-site-footer .mj-footer-fold summary:hover{color:var(--mj-footer-accent)}
 .mj-site-footer .mj-footer-fold[open] summary svg{transform:rotate(180deg)}
 .mj-site-footer .mj-footer-fold-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;padding-bottom:8px}
 .mj-site-footer .mj-footer-fold-links a{display:flex;align-items:center;min-height:44px;max-width:100%;font-size:14px;line-height:1.5;padding:4px 0;color:var(--mj-footer-muted);text-decoration:none;overflow-wrap:anywhere}
 .mj-site-footer .mj-footer-fold-links a:hover{color:var(--mj-footer-accent);text-decoration:underline}
 .mj-site-footer .mj-footer-base{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;min-height:0;padding:8px 0 16px;align-items:center}
 .mj-site-footer .mj-footer-base p{grid-column:1;grid-row:1;font-size:11px}
 .mj-site-footer .mj-footer-base p>span{display:none}
 .mj-site-footer .mj-footer-legal{grid-column:1/-1;grid-row:2;gap:0 12px;font-size:10px}
 .mj-site-footer .mj-footer-base a{min-height:44px}
 .mj-site-footer .mj-footer-top{grid-column:2;grid-row:1;margin:0;font-size:12px}
}

/* Legacy inner-page wrappers already provide the outer page gutter. */
body.editorial-c .mj-site-footer .mj-footer-inner{padding-inline:0}
