:root{--site-font:"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif}
body,body *{font-family:var(--site-font)!important}
header nav{font-size:17px;gap:24px}header .header-cta,header .menu{font-size:16px}
main .section-title,main .section-head .section-title{font-size:32px;font-weight:500;line-height:1.5;letter-spacing:.03em;margin:0 0 34px;color:inherit}
.section-head{align-items:start}.section-head .section-title{margin-bottom:0!important}
.profile-grid{grid-template-columns:.75fr 1.25fr;gap:65px}.profile .portrait{width:85%;max-width:340px;margin:0 auto}.profile .portrait img{border-radius:12px}
.contact-list>div{grid-template-columns:180px minmax(0,1fr)}
@media(max-width:1100px){header{gap:18px}header nav{font-size:16px;gap:17px}.profile-grid{gap:40px}}
@media(min-width:801px) and (max-width:1050px){header{flex-wrap:wrap}header nav{flex-wrap:wrap;justify-content:center;flex:1}header .header-cta{margin-left:0}html{scroll-padding-top:150px}}
@media(max-width:800px){header nav{font-size:18px}.profile-grid{grid-template-columns:1fr}.profile .portrait{max-width:340px;width:82%}main .section-title,main .section-head .section-title{font-size:27px;line-height:1.5}.contact-list>div{grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:520px){.profile .portrait{max-width:290px}main .section-title,main .section-head .section-title{font-size:25px}.contact-list>div{grid-template-columns:minmax(0,1fr)}.contact-list>div>span,.contact-list>div>strong{grid-column:1}}
.profile-registration{font-size:16px;color:var(--muted);margin-top:-12px}
.primary-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:27px 0 17px}
.primary-actions .button{font-size:16px;min-height:48px}
.primary-actions .text-link{flex-basis:100%;width:fit-content;max-width:fit-content;font-size:16px;margin-top:2px;padding:5px 0}
.profile-service-meta{font-size:14px;color:var(--muted)}
.contact-intro{max-width:620px;margin-bottom:22px}
.contact-list>div{grid-template-columns:180px minmax(0,1fr)}
.contact-list>div>a{font-size:18px;overflow-wrap:anywhere;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px;padding:8px 0}
.contact-list a:hover{color:#d1e3bf}
.contact-number{display:flex;align-items:center;flex-wrap:wrap;gap:16px}
.contact-number>a{font-size:18px;text-decoration:underline;text-underline-offset:5px;padding:8px 0}
.contact-number .whatsapp-link{font-size:14px}
.contact-list button{min-height:44px;padding:7px 13px;border-radius:3px}
.contact-note{margin-top:20px;color:#d6dfd1}
#copy-status{min-height:1.9em;margin:10px 0 0;color:#e2ebdb}
header nav{gap:20px}
@media(max-width:1100px) and (min-width:801px){header{flex-wrap:wrap}header nav{flex-wrap:wrap;justify-content:center;flex:1}header .header-cta{margin-left:0}html{scroll-padding-top:170px}}
@media(max-width:800px){header nav{gap:0}.primary-actions{gap:12px}.contact-list>div{grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:520px){.primary-actions .button{padding:12px 16px}.contact-list>div{grid-template-columns:minmax(0,1fr);gap:4px}.contact-list>div>a,.contact-number{grid-column:1}.contact-list>div>a,.contact-number>a{font-size:17px}.contact-list .contact-number .whatsapp-link{font-size:14px}.contact-list>div{padding:17px 0}}

.site-heading{text-align:center;padding:20px 24px 12px;font-size:33px;font-weight:500;letter-spacing:.04em;line-height:1.5}header .menu{font-size:18px}
@media(max-width:520px){.site-heading{font-size:30px;padding:17px 16px 10px}}
.life-story{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;border-top:1px solid var(--line);margin-top:64px;padding-top:48px}
.life-story-heading h2{font-size:30px;font-weight:500;line-height:1.5;letter-spacing:.03em;margin:0 0 12px}
.life-story-heading p{font-size:16px;line-height:1.8;color:var(--muted);margin:0}
.life-story-rule{display:block;width:48px;height:2px;background:#8b9e80;margin-top:25px}
.life-story-copy{min-width:0;max-width:680px}
.life-story-copy p{font-size:17px;line-height:2;letter-spacing:.02em;margin:0 0 24px}
.life-story-copy .life-story-volunteering{background:#e9eee5;border-left:3px solid #8b9e80;padding:22px 26px;margin:30px 0 0;border-radius:0 8px 8px 0}
@media(max-width:1100px){.life-story{gap:40px}}
@media(max-width:800px){.life-story{grid-template-columns:1fr;gap:26px;margin-top:45px;padding-top:34px}.life-story-heading h2{font-size:27px}.life-story-rule{margin-top:18px}.life-story-copy{max-width:none}}
@media(max-width:520px){.life-story-heading h2{font-size:25px}.life-story-copy p{font-size:16px;line-height:1.95}.life-story-copy .life-story-volunteering{padding:19px 20px;margin-top:26px}}
.profile-copy .life-story{grid-template-columns:minmax(0,1fr);gap:22px;margin-top:30px;padding-top:28px}
.profile-copy .life-story-heading h2{font-size:27px}
.profile-copy .life-story-rule{margin-top:17px}
.services-photo{width:100%;max-width:880px;margin:0 auto 36px}
.services-photo img{display:block;width:100%;height:auto;border-radius:16px}
@media(max-width:520px){.services-photo{margin-bottom:24px}.services-photo img{border-radius:12px}}
.recovery-group{border-top:1px solid var(--line)}
.recovery-location{color:var(--muted);font-size:16px;margin-bottom:16px}
.recovery-lead{font-size:24px;line-height:1.7;margin-bottom:26px}
.recovery-copy{max-width:800px;font-size:17px;line-height:2}
.recovery-details{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:32px 0}
.recovery-details>div{border-top:1px solid var(--line);padding-top:24px;min-width:0}
.recovery-details h3{font-size:21px;margin-bottom:16px}
.recovery-details ul{margin:0;padding-left:24px}
.recovery-details li{margin-bottom:10px}
@media(min-width:801px){header nav{flex-wrap:wrap;justify-content:center;row-gap:8px;flex:1}header .header-cta{flex-shrink:0}html{scroll-padding-top:170px}}
@media(max-width:800px){.recovery-details{grid-template-columns:1fr;gap:24px}.recovery-lead{font-size:21px}.recovery-copy{font-size:16px}}
.site-heading .site-domains{margin-top:6px;font-size:14px;font-weight:400;line-height:1.6;letter-spacing:.02em;color:var(--muted);white-space:nowrap}
