/* Visible bilingual contact details shared across every public page. */
.footer-contact{padding:30px 0;margin:24px 0 26px;border-top:1px solid var(--line,#cad8d2);border-bottom:1px solid var(--line,#cad8d2)}
.footer-contact h2{font-size:25px;line-height:1.25;font-weight:700;letter-spacing:-.02em;margin:0 0 8px;color:var(--green,#153e35)}
.footer-contact>.footer-company{font-size:14px;line-height:1.7;margin:0 0 24px;color:var(--green,#153e35)}
.footer-contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:32px 48px;align-items:start}
.footer-contact-details{margin:0;display:grid;gap:20px}.footer-contact-details>div{min-width:0}
.footer-contact-details dt{font-size:13px;line-height:1.6;font-weight:600;margin:0 0 4px;color:#476052}
.footer-contact-details dd{font-size:16px;line-height:1.6;font-weight:650;margin:0;overflow-wrap:anywhere}
.footer-contact-details a{color:#153e35;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.footer-address{min-width:0}.footer-address h3{font-size:16px;line-height:1.5;font-weight:700;margin:0 0 10px;color:#153e35}
.footer-address address{font-size:15px;font-style:normal;line-height:1.8;color:#344d44;overflow-wrap:anywhere}
.address-zh{display:block;margin-top:10px;line-height:1.8;overflow-wrap:anywhere}
@media(max-width:700px){.footer-contact{padding:26px 0}.footer-contact-grid{grid-template-columns:minmax(0,1fr);gap:28px}.footer-contact h2{font-size:24px}.footer-contact-details dd{font-size:16px}.footer-address address{font-size:15px}}
