.contact .contact-inner{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:32px}
.mobile-contact-shortcut{display:none}
@media(max-width:800px){
 .mobile-contact-shortcut{position:fixed;right:max(12px,env(safe-area-inset-right));bottom:calc(92px + env(safe-area-inset-bottom));z-index:19;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;width:66px;min-height:68px;padding:10px 4px;border:1px solid #aabd9d;border-radius:15px;background:#344d3e;color:#fff;text-decoration:none;font-size:12px;line-height:1.3;box-shadow:0 4px 18px #16281c30;-webkit-tap-highlight-color:transparent}
 .mobile-contact-shortcut:focus-visible{outline:2px solid #b49765;outline-offset:3px}
 .mobile-contact-shortcut[hidden],.nav-open .mobile-contact-shortcut{display:none}
}
.contact-inner>.contact-direct{margin-top:0;flex-direction:column;align-items:flex-start;gap:12px}
.contact-social{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px;padding-top:32px;border-top:1px solid #626e5e}
@media(max-width:800px){.contact .contact-inner{grid-template-columns:1fr;gap:24px}}
.contact-social-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;min-width:0;gap:12px;padding:25px;border:1px solid #78836f;border-radius:18px;background:#313d30;color:#f6f4ee;text-decoration:none;font:inherit;cursor:pointer;transition:background .2s,border-color .2s}
.contact-social-card:hover{background:#3c4b39;border-color:#bbc5af}
.contact-social-card:focus-visible{outline:2px solid #e1d1a9;outline-offset:4px}
.contact-social-card .social-platform{display:block;font-size:12px;letter-spacing:.15em;color:#d7c6a8;margin-bottom:8px}
.contact-social-card strong{display:block;font-size:19px;font-weight:500;overflow-wrap:anywhere}
.contact-social-card small{display:block;font-size:12px;color:#d4dacd;margin-top:8px}
.contact-social-card p{font-size:14px;line-height:1.8;margin:8px 0}
.contact-social-card img{height:155px;width:100%;object-fit:contain;background:#fff;border-radius:10px;display:block}
.contact-social-card .social-action{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:auto;padding-top:14px;font-size:13px;color:#f2eee5}
.contact-social-card .social-action b{font-size:20px;font-weight:400}
.social-actions{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-top:auto;padding-top:14px;grid-column:1/-1;font-size:13px}
.social-actions a{color:#f6f4ee;text-decoration:none;border-bottom:1px solid #aeb8a4;padding-bottom:3px}
.social-actions button{color:#e4e9dc;border:1px solid #91a184;border-radius:20px;background:transparent;padding:7px 12px;font:inherit;cursor:pointer}
.contact-code-dialog{padding:0;border:0;border-radius:18px;background:#f8f7f2;color:#29332c;width:min(560px,calc(100vw - 28px));max-height:calc(100dvh - 32px);overflow:auto}
.contact-code-dialog::backdrop{background:rgba(12,20,14,.78)}
.contact-code-content{position:relative;padding:24px;text-align:center}
.contact-code-close{position:absolute;right:10px;top:10px;width:42px;height:42px;border:0;border-radius:50%;background:#e9ecdf;color:#29332c;font:28px/1 sans-serif;cursor:pointer}
.contact-code-dialog h2{font-size:23px;margin:0 42px 8px;font-weight:500}
.contact-code-instructions{font-size:13px;line-height:1.7;margin:0 0 16px;color:#626a5d}
.contact-code-dialog img{display:block;width:100%;max-height:65dvh;object-fit:contain;background:#fff}
.contact-code-download{display:inline-block;margin-top:18px;padding:10px 24px;border:1px solid #526b45;border-radius:24px;color:#354a2b;text-decoration:none;font-size:14px}
@media(max-width:800px){.contact-social{grid-template-columns:1fr;gap:14px;margin-top:32px}.contact-social-card{padding:20px}.social-qr{display:grid;grid-template-columns:minmax(0,1fr) 100px;align-items:center}.contact-social-card img{height:128px}.social-qr .social-action{grid-column:1/-1;padding-top:0}.contact-code-content{padding:24px 16px 18px}}
.home-page .contact{background:#eae6de;color:#3c352f;border-top:1px solid #ddd6ca}
.home-page .contact h2{color:#3c352f}
.home-page .contact .section-kicker{color:#8b7358}
.home-page .contact p,.home-page .contact-direct small{color:#6c665e}
.home-page .contact-direct a{color:#514737;border-color:#ada18d}
.contact-social{border-top-color:#cec6b8;gap:22px}
.contact-social-card{background:#faf8f3;color:#3c352f;border:1px solid #d5ccbd;border-radius:16px;box-shadow:0 3px 14px #5c4c3410}
.contact-social-card:hover{background:#fffdf8;border-color:#a5957b}
.contact-social-card:focus-visible{outline-color:#8b7358}
.contact-social-card .social-platform{color:#8b7358;font-size:12px;letter-spacing:.12em}
.contact-social-card strong{color:#3c352f;font-size:18px}
.contact-social-card small,.contact-social-card p{color:#746b5e}
.contact-social-card img{border:1px solid #e8e2d8;background:#fff;border-radius:8px}
.contact-social-card .social-action,.social-actions a{color:#66523a}
.social-actions a{border-color:#b8a991}
.social-actions button{color:#66523a;border-color:#c6b99f;min-height:40px;padding:8px 14px}
.contact-code-close{background:#eae4d9;color:#5b503f}
.contact-code-download{border-color:#b8a78c;color:#66523a}
@media(max-width:800px){
 .mobile-contact-shortcut{bottom:calc(28px + env(safe-area-inset-bottom));width:64px;min-height:66px;border-radius:14px;background:#f7f3eb;color:#655640;border:1px solid #c8bca6;box-shadow:0 4px 20px #3d34252b}
 .mobile-contact-shortcut:hover{background:#fffcf6}
 .contact-social-card{padding:20px;gap:14px}
 .contact-social-card strong{font-size:17px}
 .social-qr{grid-template-columns:minmax(0,1fr) 92px}
}

/* Quiet, consistent social entrances; QR posters live in the dialog. */
.contact-social{gap:0;padding-top:0;margin-top:36px;border-bottom:1px solid #cec6b8}
.contact-social-card{padding:28px;gap:0;border:0;border-right:1px solid #cec6b8;border-radius:0;background:transparent;box-shadow:none;transition:background .2s ease}
.contact-social-card:first-child{padding-left:0}
.contact-social-card:last-child{border-right:0;padding-right:0}
.contact-social-card:hover{background:#ffffff30}
.contact-social-card .social-platform{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;font-size:20px;letter-spacing:.04em;color:#3c352f}
.contact-social-card .social-platform{justify-content:space-between;gap:10px;width:100%}
.contact-social-card .social-brand-icon{width:28px;height:28px;flex:none;margin-left:auto;object-fit:contain;border:0;border-radius:0;background:transparent;opacity:1;filter:saturate(.72) brightness(.88)}
.contact-social-card .social-brand-red{width:48px;height:28px}
.contact-social-card strong{font-size:14px;font-weight:400;line-height:1.6}
.contact-social-card p{font-size:12px;line-height:1.8;margin:8px 0 24px}
.contact-social-card .social-action,.contact-social-card .social-actions{min-height:32px;padding:0;margin-top:auto;font-size:12px}
.social-actions a{border:0;padding:0}
.social-actions button{min-height:32px;padding:4px 0;border:0;border-radius:0;border-bottom:1px solid #b8a991;font-size:12px}
.contact-social-card:focus:not(:focus-visible),.social-actions button:focus:not(:focus-visible){outline:none}
@media(max-width:800px){
 .contact-social{gap:0;margin-top:26px}
 .contact-social-card,.contact-social-card:first-child,.contact-social-card:last-child{padding:22px 0;border-right:0;border-bottom:1px solid #cec6b8}
 .contact-social-card:last-child{border-bottom:0}
 .contact-social-card .social-platform{font-size:19px;margin-bottom:12px}
 .contact-social-card p{margin:5px 0 14px}
 .contact-social-card .social-action,.contact-social-card .social-actions{min-height:28px}
}
@media(prefers-reduced-motion:reduce){.contact-social-card{transition:none}}
