/* One isolated footer system for public content pages, based on the homepage. */
body footer.vsl-footer{position:relative;display:block;width:100%;max-width:none;margin:0;padding:28px 0 24px;border:0;border-top:1px solid #4e3c2e24;background:#ECE4D8;color:#6E5C49;font:300 11px/1.8 'DM Sans','Noto Sans TC',sans-serif;letter-spacing:.06em;text-align:left;box-sizing:border-box}
body .vsl-footer .vsl-footer-inner{box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px 32px;width:90%;max-width:1440px;margin:0 auto;padding:0 40px 0 0}
body .vsl-footer .vsl-footer-brand{display:flex;flex-direction:column;gap:8px;max-width:320px;margin:0;padding:0}
body .vsl-footer .vsl-footer-logo img{display:block;width:125px;height:auto;max-width:100%;filter:invert(1);margin:0;object-fit:contain}
body .vsl-footer .vsl-footer-tag{font:300 11px/1.9 'DM Sans','Noto Sans TC',sans-serif;letter-spacing:.1em;color:#6E5C49}
body .vsl-footer .vsl-footer-nav{display:flex;flex:1 1 400px;flex-wrap:wrap;align-items:flex-start;justify-content:flex-start;gap:12px 24px;max-width:650px;margin:0;padding:0}
body .vsl-footer a{position:static;display:inline-block;padding:4px 0;margin:0;border:0;background:none;color:#6E5C49;font:300 11px/1.8 'DM Sans','Noto Sans TC',sans-serif;text-decoration:none;letter-spacing:.08em;white-space:normal;box-shadow:none}
body .vsl-footer a:hover{color:#271B12}
body .vsl-footer .vsl-footer-social{display:inline-flex;align-items:center;gap:12px;margin:0;padding:0}
body .vsl-footer .vsl-footer-social a{display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid #4e3c2e24;border-radius:50%;flex:none}
body .vsl-footer .vsl-footer-social svg{display:block;width:18px;height:18px;flex:none}
body .vsl-footer .vsl-footer-legal{display:flex;flex:0 0 100%;flex-wrap:wrap;align-items:center;gap:6px 14px;box-sizing:border-box;padding:12px 0 0;margin:0;border-top:1px solid #4e3c2e24;color:#6E5C49;font:300 11px/1.8 'DM Sans','Noto Sans TC',sans-serif;letter-spacing:.08em}
body .vsl-footer .vsl-footer-legal button{border:0;border-radius:0;background:none;box-shadow:none;padding:4px 0;margin:0;color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;min-height:30px;width:auto}
body .vsl-footer .dot-sep{opacity:.5}
body .vsl-footer a:focus-visible,body .vsl-footer button:focus-visible{outline:2px solid #9A6A3C;outline-offset:4px}
body dialog.vsl-cookie-dialog{position:fixed;inset:0;width:min(440px,90vw);height:auto;max-height:85svh;padding:30px;margin:auto;border:1px solid #C4AE96;border-radius:0;background:#F6F0E6;color:#4E3C2E;box-sizing:border-box;font:300 13px/1.9 'DM Sans','Noto Sans TC',sans-serif}
body dialog.vsl-cookie-dialog::backdrop{background:#0e0c0a88}
body .vsl-cookie-dialog h2{font:400 26px/1.5 'Cormorant Garamond','Noto Serif TC',serif;margin:0 0 18px;color:#271B12}
body .vsl-cookie-dialog p{font:300 13px/1.9 'DM Sans','Noto Sans TC',sans-serif;margin:0 0 20px;color:#6E5C49}
body .vsl-cookie-dialog form{display:block;margin:0;padding:0}
body .vsl-cookie-dialog button{position:static;border:1px solid #C4AE96;padding:12px 16px;font:400 12px/1.8 'DM Sans','Noto Sans TC',sans-serif;background:#C4AE96;color:#0E0C0A;cursor:pointer;margin:0 8px 12px 0}
body .vsl-cookie-dialog a{color:#6E5C49;text-decoration:underline;font:300 12px/1.8 'DM Sans','Noto Sans TC',sans-serif}
@media(max-width:720px){body footer.vsl-footer{padding:22px 0 20px}body .vsl-footer .vsl-footer-inner{width:88%;padding-right:38px;flex-direction:column;align-items:center;text-align:center;gap:12px}body .vsl-footer .vsl-footer-brand{align-items:center}body .vsl-footer .vsl-footer-nav{flex:0 1 auto;justify-content:center;gap:8px 18px;max-width:100%}body .vsl-footer .vsl-footer-tag{font-size:10px}body .vsl-footer a{font-size:10px}body .vsl-footer .vsl-footer-legal{flex:0 1 auto;width:100%;justify-content:center;font-size:10px;gap:6px 10px}}

/* Footer uses the five shared entries; article resources remain in the content. */
body .vsl-footer>.search-guide-links{display:none}

/* Center the compact footer as a whole, without a rail-sized offset. */
body .vsl-footer .vsl-footer-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0;text-align:center;gap:12px}
body .vsl-footer .vsl-footer-brand{align-items:center;max-width:100%;gap:8px}
body .vsl-footer .vsl-footer-nav{flex:0 1 auto;flex-wrap:nowrap;justify-content:center;max-width:100%;gap:clamp(10px,2vw,24px)}
body .vsl-footer .vsl-footer-nav a{white-space:nowrap}
body .vsl-footer .vsl-footer-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 20px;max-width:100%}
body .vsl-footer a.vsl-footer-email{font-size:12px;letter-spacing:.02em;white-space:nowrap}
body .vsl-footer .vsl-footer-legal{flex:0 1 auto;justify-content:center;width:100%;padding-top:10px;margin:0}
@media(max-width:720px){body .vsl-footer .vsl-footer-inner{width:90%;gap:10px}body .vsl-footer .vsl-footer-nav{gap:clamp(8px,2.6vw,16px)}body .vsl-footer .vsl-footer-nav a{letter-spacing:.02em;font-size:10px}body .vsl-footer .vsl-footer-contact{gap:6px 16px}body .vsl-footer a.vsl-footer-email{font-size:11px}body .vsl-footer .vsl-footer-social{gap:10px}}
@media(max-width:720px){body .vsl-footer .vsl-footer-inner{width:calc(100% - 112px)}body .vsl-footer .vsl-footer-tag{max-width:100%;text-wrap:balance}body .vsl-footer .vsl-footer-legal{gap:4px 8px}}
