/* Shared enquiry, identity and footer components. */
.utilities #userlink.profile-entry{display:inline-grid;place-items:center;width:36px;height:36px;min-width:36px;border-radius:50%;overflow:hidden;background:#e6e9dc;color:#274536;border:1px solid #68796140;font-size:14px;font-weight:600;transition:box-shadow .2s,transform .2s}
.utilities #userlink.profile-entry:hover{box-shadow:0 0 0 4px #9aa78633;transform:translateY(-1px)}
.utilities #userlink.profile-entry img{width:100%;height:100%;object-fit:cover}
.utilities #userlink[hidden]{display:none!important}
dialog:has(.care-dialog),dialog:has(.care-custom){width:min(900px,94vw);padding:0;background:#faf9f5;border:1px solid #e2e5da}
dialog:has(.care-dialog),dialog:has(.care-custom){overflow:hidden}
dialog:has(.care-dialog)>#modalbody,dialog:has(.care-custom)>#modalbody{max-height:88dvh;overflow:auto;overscroll-behavior:contain}
dialog:has(.care-dialog)>.close,dialog:has(.care-custom)>.close{top:12px;right:12px;background:#e5e8df;color:#203c34}
.care-dialog{display:grid;grid-template-columns:1.08fr 1fr}
.care-intro{padding:55px 38px 42px;background:#e8eddf;position:relative}
.care-intro:before{content:'';display:block;width:42px;height:3px;background:#c55932;margin-bottom:24px}
.care-intro .eyebrow,.care-connect .eyebrow,.care-custom .eyebrow{font-size:10px;letter-spacing:2px}
.care-dialog h2{font-size:36px;line-height:1.35;margin:17px 0 20px;letter-spacing:-.5px}
.care-dialog p{font-size:14px;line-height:1.9;color:#5c6d5c}
.care-prompts{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0 32px}
.care-prompts span{font-size:12px;border:1px solid #b7c2ab;padding:5px 10px;border-radius:30px}
.care-intro .solid{display:flex;align-items:center;justify-content:space-between;width:100%;gap:16px;text-align:left}
.care-intro>small{display:block;font-size:12px;color:#5a6f56;line-height:1.8;margin-top:12px}
.care-trip{border-left:2px solid #bf613f;padding-left:13px;margin:24px 0}
.care-trip small,.care-trip strong{display:block}.care-trip small{font-size:10px;color:#63735c;letter-spacing:1px}.care-trip strong{font-weight:500;margin-top:4px}
.care-connect{padding:57px 32px 30px;min-width:0}
.care-connect h3{font-size:23px;margin:14px 0 22px}
.care-qr{padding:17px;background:white;border:1px solid #e2e5da;text-align:center;margin-bottom:15px}
.care-qr>img{width:145px;height:145px;object-fit:contain;margin:0 auto 10px}
.care-qr strong{font-size:14px}.care-qr p{font-size:12px;margin:4px 0 0;line-height:1.65}
.care-contact{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid #dde2d6;font-size:10px;letter-spacing:1px;color:#607258}
.care-contact strong{display:block;font-size:15px;letter-spacing:0;color:#234735;overflow-wrap:anywhere;font-weight:500}
.care-contact:hover strong{color:#aa441f}.care-contact b{font-size:20px;font-weight:400}
.care-connect .tiny{font-size:11px;line-height:1.7;margin-bottom:0}
.care-custom{padding:42px 44px 28px}.care-custom h2{margin-top:12px;font-size:34px}
.care-custom>p{font-size:14px;margin:10px 0 28px}
.care-fieldset{border:0;border-top:1px solid #d9dfd1;padding:20px 0 0;margin:24px 0;min-width:0}
.care-fieldset legend{padding:0 12px 0 0;font-size:15px;font-weight:600}
.care-fieldset legend>span{font-size:11px;color:#9a5639;font-weight:400;margin-right:9px}
.care-fieldset legend small{font-weight:400;font-size:11px;color:#65725f;display:inline-block;margin-left:8px}
.care-custom .dialog-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}
.care-custom .form label{display:block;margin-top:0;color:#3b5142;font-size:13px}
.care-custom .form label>input,.care-custom .form label>select,.care-custom .form label>textarea{margin-top:8px;width:100%;border-radius:4px;border:1px solid #d4dccd;background:#fff;min-width:0}
.care-custom .form input::placeholder,.care-custom .form textarea::placeholder{color:#8a9187;font-size:14px}
.care-custom .form textarea{min-height:85px;resize:vertical}
.care-custom .care-fieldset>.dialog-form-grid+label{margin-top:18px}
.care-source-options{display:flex;gap:9px;flex-wrap:wrap}
.care-custom .care-source-options label{position:relative;margin:0;cursor:pointer}
.care-custom .care-source-options label input{position:absolute;opacity:0;width:1px;min-height:0;height:1px;margin:0}
.care-source-options span{display:block;padding:8px 15px;border:1px solid #d4dccd;border-radius:5px;background:#fff;transition:background .15s,color .15s;font-size:13px}
.care-source-options input:checked+span{background:#2d5140;color:#fff;border-color:#2d5140}
.care-source-options input:checked+span:before{content:'✓';margin-right:6px}
.care-source-options input:focus-visible+span{outline:2px solid #bd4a24;outline-offset:3px}
.care-source-options label:hover span{border-color:#526c51}
.care-custom .care-error{color:#a23720;font-size:13px;margin-bottom:0}
.care-form-end{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #d9dfd1;padding-top:20px}
.care-form-end p{font-size:12px;max-width:280px;line-height:1.7;margin:0}.care-form-end .solid{flex-shrink:0}
.care-private{border:1px solid #d6dfd1;background:#edf1e7;border-radius:6px;padding:20px;margin:25px 0 10px;min-width:0}
.care-private legend{font-size:14px;font-weight:600;padding:0 8px}.care-private legend span{font-size:10px;background:#2f5543;color:white;border-radius:20px;padding:4px 8px;margin-left:8px;font-weight:400}
.care-private>p{font-size:13px;margin:0 0 5px;color:#52654e}.care-private small{display:block;font-size:11px;color:#5d6b56;margin-top:15px;line-height:1.7}
.care-private .buddy-form-grid{gap:16px}.care-private .buddy-form-grid label{margin-top:12px}
.identity-form .buddy-photo-field{margin-bottom:22px}
footer.site-footer{display:block;padding:0 6% 25px;background:#203b31;color:#f3f2e8;position:relative}
.site-footer a,.site-footer button{margin:0;transition:color .2s}
.site-footer a:hover,.site-footer button:hover{color:#f6bc96}
footer.site-footer>.footer-invitation{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:65px 0 46px;border-bottom:1px solid #ffffff26}
.footer-invitation .eyebrow{font-size:10px;letter-spacing:2px;color:#c2cdb5}
.footer-invitation h2{font-size:clamp(28px,3vw,44px);line-height:1.4;margin-top:14px;color:#f3f2e8}
.footer-invitation p{font-size:14px;color:#b8c7b3;margin-bottom:0}
.site-footer .footer-cta{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:35px;border:1px solid #879a82;border-radius:3px;padding:16px 20px;font-size:15px;min-width:190px;background:#f1efdf;color:#233e30}
.site-footer .footer-cta:hover{background:#e4d6bf;color:#233e30}.footer-cta span{font-size:24px}
.footer-directory{display:grid;grid-template-columns:1.4fr .75fr .85fr 1.1fr;gap:35px;padding:42px 0}
.footer-directory>div{min-width:0}.footer-wordmark{display:flex;gap:14px;align-items:center;width:max-content}
.footer-wordmark>img{width:58px;height:58px;object-fit:contain;border-radius:3px}
.footer-wordmark>span{font-size:21px;letter-spacing:3px}.footer-wordmark small{display:block;font-size:8px;letter-spacing:1px;margin-top:1px}
.footer-identity p{font-size:13px;line-height:1.9;margin:20px 0 18px}.footer-social{display:inline-flex;font-size:12px;border-bottom:1px solid #708b73;padding-bottom:5px}
.footer-directory h3{font-family:inherit;font-size:12px;font-weight:500;color:#a6bea2;letter-spacing:1px;margin:0 0 21px}
.footer-links>a,.footer-links>button{display:block;font-size:14px;padding:0;margin-bottom:13px;border:0;min-height:28px;text-align:left}
.footer-reach>a{display:block;font-size:13px;margin-bottom:7px;overflow-wrap:anywhere}.footer-reach .footer-phone{font-size:21px;letter-spacing:1px}
.footer-wechat{display:flex;gap:13px;align-items:center;margin-top:18px}.footer-wechat img{width:80px;height:80px;padding:5px;background:white;object-fit:contain;border-radius:3px}
.footer-wechat p{font-size:11px;line-height:1.8;margin:0}
.footer-legal{border-top:1px solid #ffffff26;padding-top:22px;display:flex;justify-content:space-between;gap:16px;font-size:10px;color:#b0c0ad;line-height:1.8}
.footer-legal>div{display:flex;flex-wrap:wrap;gap:4px 18px}.footer-legal>span{flex-shrink:0}
.footer-legal a{font-size:inherit}
@media(max-width:1000px){.footer-directory{grid-template-columns:1.3fr 1fr 1fr;gap:35px}.footer-reach{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.3fr;column-gap:25px}.footer-reach h3{grid-column:1;margin-bottom:12px}.footer-reach>a{grid-column:1}.footer-wechat{grid-column:2;grid-row:1/4;margin:0;justify-self:end}.footer-legal{display:block}.footer-legal>span{display:block;margin-top:8px}}
@media(max-width:650px){dialog:has(.care-dialog),dialog:has(.care-custom){width:calc(100% - 24px);max-height:90dvh}.care-dialog{grid-template-columns:1fr}.care-intro{padding:36px 24px 27px}.care-intro:before{margin-bottom:16px}.care-dialog h2{font-size:29px;margin:13px 0}.care-dialog h2 br{display:none}.care-dialog p{font-size:13px}.care-prompts{margin:18px 0 22px}.care-connect{padding:26px 24px}.care-connect h3{margin:8px 0 17px;font-size:21px}.care-qr{display:flex;align-items:center;text-align:left;gap:18px;padding:12px}.care-qr>img{width:110px;height:110px;margin:0}.care-qr p{font-size:11px}.care-custom{padding:42px 22px 24px}.care-custom h2{font-size:28px}.care-custom .dialog-form-grid{grid-template-columns:1fr;gap:15px}.care-fieldset legend{font-size:14px}.care-fieldset legend small{display:block;margin:5px 0 0 28px}.care-source-options{gap:8px}.care-source-options span{padding:7px 13px}.care-form-end{display:block}.care-form-end .solid{width:100%;margin-top:15px}.care-form-end p{max-width:none}.care-private{padding:16px}.care-private .buddy-form-grid{grid-template-columns:1fr;gap:2px}footer.site-footer{padding:0 6% 22px}.footer-invitation{display:block;padding:42px 0 32px}.footer-invitation .eyebrow{font-size:8px;letter-spacing:1.5px}.footer-invitation h2{font-size:29px}.footer-invitation p{font-size:13px}.site-footer .footer-cta{margin-top:25px;width:100%;font-size:14px;padding:12px 17px;min-height:52px}.footer-directory{grid-template-columns:1fr 1fr;gap:30px 22px;padding:30px 0}.footer-identity{grid-column:1/-1}.footer-wordmark>img{width:50px;height:50px}.footer-identity p{margin:15px 0}.footer-directory h3{margin-bottom:15px}.footer-reach{display:block;border-top:1px solid #ffffff26;padding-top:25px}.footer-wechat{margin-top:20px;justify-self:auto}.footer-legal>div{display:block}.footer-legal a{display:block;margin-top:6px}}
@media(max-width:380px){.utilities{gap:9px}.utilities #userlink.profile-entry{width:30px;height:30px;min-width:30px}.utilities .solid{padding-inline:8px;font-size:11px}.care-qr{gap:10px}.care-qr>img{width:95px;height:95px}}
@media(prefers-reduced-motion:reduce){.utilities #userlink.profile-entry,.care-source-options span{transition:none}}
@media(max-width:650px){footer.site-footer>.footer-invitation{display:block;padding:42px 0 32px}}
