.masthead .contact-entry{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:4px 5px 4px 15px;border:1px solid #a9bcc4;border-radius:999px;background:transparent;color:#2b4552;font-family:inherit;font-size:13px;font-weight:600;line-height:1.4;letter-spacing:.03em;white-space:nowrap;cursor:pointer}
.contact-entry .contact-arrow{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#2b4552;color:#fff;font:22px/1 Arial,sans-serif}
.masthead .contact-entry:hover{background:#edf2f3;border-color:#718e9d}
.contact-entry:focus-visible,.villa-contact-close:focus-visible{outline:2px solid #547c90;outline-offset:4px}
.villa-contact-dialog{box-sizing:border-box;width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;background:#f8faf8;color:#16202c;box-shadow:0 30px 90px #0005;font-family:inherit;overflow:auto;overscroll-behavior:contain}
.villa-contact-dialog::backdrop{background:#060a108a;backdrop-filter:blur(8px)}
.villa-contact-card{position:relative;box-sizing:border-box;padding:58px 38px 32px;text-align:center}
#villa-contact-dialog .villa-contact-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border:0;border-radius:50%;background:#16202c;color:#fff;font:300 30px/1 Arial,sans-serif;cursor:pointer}
.villa-contact-eyebrow{margin:0 0 20px;color:#245cff;font-size:12px;font-weight:600;letter-spacing:.22em;line-height:1.4}
.villa-contact-card h2{margin:0;color:#16202c;font-size:clamp(26px,3vw,42px);font-weight:750;letter-spacing:-.04em;line-height:1.2}
#villa-contact-description{margin:18px 0 24px;color:#5d6875;font-size:16px;line-height:1.6}
.villa-contact-qr{display:block;width:min(320px,100%);height:auto;margin:0 auto 20px;background:#fff;object-fit:contain}
.villa-contact-hint{margin:0;color:#687484;font-size:12px;line-height:1.7;letter-spacing:.03em}
@media(max-width:620px){.masthead{height:auto;min-height:80px;padding:14px 20px;flex-wrap:wrap;gap:12px}.masthead .project-meta{width:100%;gap:8px;justify-content:flex-end}.masthead .header-entry{flex:1;min-width:0;padding:9px 8px}.masthead .contact-entry{min-height:42px;padding:4px 5px 4px 12px;font-size:11px;gap:6px}.contact-entry .contact-arrow{width:30px;height:30px;font-size:20px}.villa-contact-card{padding:58px 18px 24px}.villa-contact-eyebrow{font-size:10px;margin-bottom:16px}#villa-contact-description{font-size:14px;margin:14px 0 20px}.villa-contact-qr{width:min(280px,100%)}.villa-contact-hint{font-size:11px}}
@media print{#header-contact,.villa-contact-dialog{display:none!important}}
.masthead .brand-mark{display:block;width:48px;height:48px;object-fit:contain;transform:none;flex-shrink:0}
@media(max-width:720px){.masthead .brand-mark{width:36px;height:36px}}
.masthead .contact-anchor{display:block;min-width:112px;width:112px;height:44px;flex-shrink:0}
#nankong-contact-widget{position:fixed;left:18px;top:18px;z-index:2147483000;pointer-events:none;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;line-height:1}
#nankong-contact-widget .ncw-trigger{box-sizing:border-box;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;min-height:0;min-width:0;padding:0 4px 0 10px;border:1px solid rgba(131,168,196,.2);border-radius:999px;background:rgba(8,13,18,.4);color:rgba(235,244,252,.94);box-shadow:0 6px 22px rgba(4,10,16,.22);-webkit-backdrop-filter:blur(9px) saturate(1.05);backdrop-filter:blur(9px) saturate(1.05);cursor:grab;font-family:inherit;font-size:12px;font-weight:600;letter-spacing:.03em;white-space:nowrap;transition:background .18s ease,border-color .18s ease,transform .18s ease}
#nankong-contact-widget .ncw-trigger:hover{background:rgba(13,23,33,.6);border-color:rgba(139,188,225,.34);transform:translateY(-1px)}
#nankong-contact-widget .ncw-trigger:active{cursor:grabbing;transform:none;transition:none}
#nankong-contact-widget .ncw-trigger:focus-visible{outline:2px solid rgba(139,188,225,.8);outline-offset:2px}
#nankong-contact-widget .ncw-label{display:inline-block;transform:translateY(.5px)}
#nankong-contact-widget .ncw-arrow{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:rgba(19,31,43,.96);color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:700;line-height:1}
@media(max-width:720px){.masthead .contact-anchor{min-width:98px;width:98px}}
@media(prefers-reduced-motion:reduce){#nankong-contact-widget .ncw-trigger{transition:none}}
@media print{#nankong-contact-widget{display:none!important}}
