/* Approved sage contact design: centered details within a warm letter panel. */
html .closing.contact-section{display:block;background:#e7ece3;color:#263d32;padding:clamp(36px,5vw,66px) var(--gutter,24px);border-bottom:1px solid #bdcbbc;scroll-margin-top:110px;text-align:center}
.contact-section .contact-shell{box-sizing:border-box;width:100%;max-width:1080px;margin:0 auto;background:#f8f9f3;border:1px solid #bdcbbc;padding:clamp(32px,4.5vw,52px) clamp(18px,2.8vw,32px) 42px;box-shadow:7px 7px 0 #bdcbbc45}
.contact-section .contact-intro{max-width:660px;margin:0 auto 38px;text-align:center}
html .contact-section .contact-kicker{font:600 12px/1.5 var(--sans,Arial,sans-serif);letter-spacing:.16em;color:#315841;margin:0 0 20px;max-width:none;text-align:center}
html .closing.contact-section h2{font:400 clamp(38px,4.6vw,64px)/1.15 var(--serif,Georgia,serif);letter-spacing:-.03em;max-width:none;color:#263d32;margin:0;text-align:center}
html .contact-section .contact-description{font:400 17px/1.85 var(--sans,Arial,sans-serif);color:#59685a;max-width:60ch;margin:22px auto 0;text-align:center;text-wrap:pretty}
.contact-section .contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;max-width:none;min-width:0;text-align:center;margin:0 auto}
.contact-section .contact-card{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;text-align:center;gap:13px;min-width:0;margin:0;padding:16px 12px;border:0;background:transparent;color:#263d32;text-decoration:none;border-radius:0}
.contact-section a.contact-card:hover .contact-action{text-decoration-thickness:2px}
.contact-section .contact-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;background:#e7ece3;color:#315841;margin-bottom:4px;flex:none}
.contact-section .contact-icon svg,.contact-section .contact-icon img{display:block;width:28px;height:28px}
.contact-section .contact-icon img{filter:brightness(0);opacity:.72}
.contact-section .contact-label{font:600 12px/1.5 var(--sans,Arial,sans-serif);color:#315841;letter-spacing:.09em;text-transform:uppercase}
.contact-section .contact-value{font:400 clamp(18px,1.8vw,23px)/1.5 var(--sans,Arial,sans-serif);letter-spacing:0;overflow-wrap:anywhere;max-width:100%;color:#263d32}
.contact-section .wechat-id{display:block;width:100%;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;user-select:all;-webkit-user-select:all;cursor:text;box-shadow:none;text-align:center}
.contact-section .contact-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 0;margin-top:6px;background:none;border:0;border-radius:0;color:#315841;font:600 14px/1.5 var(--sans,Arial,sans-serif);text-align:center;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.contact-section .wechat-copy:hover{color:#263d32;background:transparent;text-decoration-thickness:2px}.contact-section .wechat-copy:disabled{opacity:.6;cursor:wait}
html .closing.contact-section .wechat-contact .wechat-hint{font:400 13px/1.7 var(--sans,Arial,sans-serif);margin:0 auto;color:#59685a;max-width:26ch;min-height:0;text-align:center}
.contact-section .contact-card:focus-visible,.contact-section .wechat-copy:focus-visible,.contact-section .wechat-id:focus-visible{outline:3px solid #315841;outline-offset:5px}
@media(max-width:760px){html .closing.contact-section{padding:36px 20px}.contact-section .contact-shell{padding:32px 18px 10px}.contact-section .contact-grid{grid-template-columns:minmax(0,1fr);gap:0;max-width:420px}.contact-section .contact-card{padding:24px 8px}.contact-section .contact-card+.contact-card{border-left:0;border-top:1px solid #bdcbbc}.contact-section .contact-intro{margin-bottom:24px}html .contact-section .contact-description{font-size:16px}.contact-section .contact-value{font-size:22px}.contact-section .contact-icon{margin-bottom:1px}}

.consultation-faq{margin-top:28px;border-top:1px solid #17364b55;border-bottom:1px solid #17364b55;padding:20px 0}.consultation-faq summary{font:600 18px/1.5 var(--sans,Arial,sans-serif);cursor:pointer}.consultation-faq p{font:400 17px/1.7 var(--sans,Arial,sans-serif);margin-top:14px;max-width:75ch}
