.contact{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;padding-top:48px;padding-bottom:38px;scroll-margin-top:40px}
.contact-heading .eyebrow{color:var(--muted);font-size:8px;letter-spacing:.14em}
.contact h2{font-size:27px;margin:15px 0 12px;letter-spacing:-.025em}
.contact h2 em{font-family:var(--serif);font-weight:400;margin-left:9px;color:var(--muted)}
.contact-intro{font-size:11px;color:var(--muted);line-height:1.9}
.contact-channels{min-width:0;padding-top:1px}
.contact-channel{display:grid;grid-template-columns:110px minmax(0,1fr) auto;column-gap:20px;min-height:66px;padding:11px 0;border-bottom:1px solid var(--line);align-items:center}
.contact-platform{font-size:11px;color:var(--muted);line-height:1.5}
.contact-platform em{display:block;font-family:var(--serif);font-size:10px;margin-top:3px}
.contact-value{font-size:18px;letter-spacing:-.02em;line-height:1.5;overflow-wrap:anywhere}
.contact-wechat-id{user-select:all}
.contact-action,.contact-copy{display:inline-flex;gap:9px;align-items:center;font-size:10px;white-space:nowrap;min-height:44px}
.contact-action svg,.contact-copy svg{width:15px;height:15px;transition:transform .3s}
.contact-social .contact-value{transition:color .3s}
.contact-social:hover .contact-value{color:#6a775a}
.contact-social:hover .contact-action svg{transform:translate(2px,-2px)}
.contact-copy{border:0;border-radius:0;background:none;padding:0;color:var(--muted);text-underline-offset:5px;transition:color .25s}
.contact-copy:hover{color:var(--ink);text-decoration:underline}
.contact-copy:disabled{cursor:wait}
.contact-copy-status{min-height:23px;color:var(--muted);font-size:10px;line-height:1.8;padding-top:5px}
@media(max-width:900px){.contact-channel{grid-template-columns:83px minmax(0,1fr) auto;column-gap:12px}.contact-value{font-size:16px}}
@media(max-width:700px){.contact{grid-template-columns:1fr;gap:20px;padding-top:31px;padding-bottom:23px}.contact h2{font-size:24px;margin:12px 0 10px}.contact-intro{font-size:10px}.contact-channel{grid-template-columns:64px minmax(0,1fr) auto;column-gap:10px;min-height:64px;padding:8px 0}.contact-value{font-size:15px}.contact-platform{font-size:10px}.contact-platform em{font-size:9px}.contact-copy,.contact-action{font-size:9px;gap:6px}.contact-copy svg,.contact-action svg{width:13px;height:13px}}
@media(prefers-reduced-motion:reduce){.contact-social .contact-value,.contact-action svg,.contact-copy{transition:none}}
@media print{.contact-copy{display:none}.contact{break-inside:avoid}.contact-copy-status{display:none}}
.contact-channel-actions{display:flex;align-items:center;justify-content:flex-end;gap:18px}
.contact-qr-open{display:inline-flex;align-items:center;min-height:44px;font-size:10px;color:var(--muted);white-space:nowrap;text-underline-offset:5px}
.contact-qr-open:hover{color:var(--ink);text-decoration:underline}
.contact-pdf{display:inline-flex;align-items:center;gap:11px;min-height:44px;margin-top:12px;font-size:11px;flex-wrap:wrap}
.contact-pdf em{font:italic 11px/1.5 var(--serif);color:var(--muted)}
.contact-pdf>span:last-child{font-size:17px;margin-left:3px}
.contact-pdf:hover>span:first-child{text-decoration:underline;text-underline-offset:5px}
.contact-qr-opened{overflow:hidden}
.contact-qr-dialog{width:min(356px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:24px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);box-shadow:0 18px 80px #24231f1c;overflow:auto}
.contact-qr-dialog::backdrop{background:#18181842;backdrop-filter:blur(3px)}
.contact-qr-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.contact-qr-heading p{font-size:8px;letter-spacing:.13em;color:var(--muted)}
.contact-qr-heading h2{font-size:20px;font-weight:400;margin-top:10px;line-height:1.5}
.contact-qr-heading button{display:grid;place-items:center;width:36px;height:36px;padding:0;margin:-9px -9px 0 0;border:0;background:transparent;font-size:25px;font-weight:300;color:var(--muted)}
.contact-qr-image{width:100%;height:auto;max-width:264px;margin:14px auto 0;image-rendering:auto}
.contact-qr-account{text-align:center;font-size:14px;letter-spacing:.02em;margin-top:1px}
.contact-qr-note{text-align:center;font-size:10px;line-height:1.9;color:var(--muted);margin:13px auto 0;max-width:25em}
.contact-qr-save{display:flex;justify-content:center;align-items:center;gap:16px;min-height:44px;font-size:11px;margin-top:8px;text-underline-offset:5px}
.contact-qr-save:hover{text-decoration:underline}
@media(max-width:700px){
 .contact-heading .eyebrow{font-size:10px}
 .contact-intro{font-size:12px}
 .contact-platform{font-size:11px}
 .contact-platform em{font-size:11px}
 .contact-copy,.contact-action,.contact-copy-status{font-size:11px}
 .contact-wechat{grid-template-columns:64px minmax(0,1fr)}
 .contact-wechat .contact-channel-actions{grid-column:2;justify-content:flex-start;gap:22px;margin-top:1px}
 .contact-qr-open{font-size:11px}
 .contact-pdf{font-size:12px;margin-top:8px;gap:9px}
 .contact-pdf em{font-size:11px}
 .contact-qr-heading p{font-size:10px}
 .contact-qr-note{font-size:12px}
 .contact-qr-save{font-size:12px}
}
@media print{.contact-qr-dialog,.contact-qr-open,.contact-pdf{display:none!important}}
