.contact-float{position:fixed;z-index:80;right:24px;bottom:calc(32px + env(safe-area-inset-bottom));display:flex;align-items:center;gap:9px;padding:15px 21px;border:1px solid #ffffff40;border-radius:30px;color:white;background:#233d2e;box-shadow:0 8px 28px #183c2c30;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer}.contact-float:hover{background:#335c42}.contact-float svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.contact-float:focus-visible,.contact-close:focus-visible{outline:3px solid #ff6429;outline-offset:4px}
#contact-dialog{width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;padding:36px;border:1px solid #e4e8df;border-radius:22px;background:#fffefb;color:#24382b;box-shadow:0 24px 90px #13221838;overflow:auto;font-family:inherit}#contact-dialog::backdrop{background:#14271e70;backdrop-filter:blur(4px)}.contact-close{position:absolute;right:13px;top:11px;width:40px;height:40px;border:0;background:transparent;color:#59635a;font-size:28px;cursor:pointer}.contact-eyebrow{color:#d76230;font-size:11px;font-weight:700;letter-spacing:2px;margin:0 0 12px}#contact-dialog h2{margin:0 0 14px;font-size:28px;line-height:1.3;letter-spacing:-.5px}.contact-intro{margin:0 0 25px;font-size:15px;line-height:1.8;color:#687065}#contact-form label{display:block;margin-bottom:9px;font-size:14px;font-weight:600}#contact-phone{box-sizing:border-box;width:100%;height:50px;padding:0 14px;border:1px solid #d9dfd5;border-radius:9px;background:#fff;font:inherit;font-size:16px;color:#24382b}#contact-phone:focus{outline:2px solid #688767;outline-offset:1px}.contact-purpose{margin:9px 0 23px;font-size:12px;color:#7a8277}.contact-submit{width:100%;display:flex;justify-content:center;padding:15px 18px;border:0;border-radius:9px;background:#f16b35;color:#fff;font:inherit;font-weight:600;cursor:pointer}.contact-submit:disabled{opacity:.65;cursor:wait}.contact-status{font-size:13px;line-height:1.7;margin:14px 0 0}.contact-status:empty{display:none}.contact-status[data-state=success]{color:#2f7044}.contact-status[data-state=error]{color:#a6452e}@media(max-width:600px){.contact-float{right:14px;bottom:calc(18px + env(safe-area-inset-bottom));padding:12px 16px;font-size:14px}#contact-dialog{padding:29px 24px}#contact-dialog h2{font-size:25px}}
