.contact-widget{position:fixed;z-index:40;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));color:#202329}
.contact-trigger{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:60px;min-height:60px;padding:16px 23px;border:1px solid #202329;border-radius:999px;background:#C91D2E;color:#FFFFFF;font:600 15px/1.3 Instrument,Arial,sans-serif;text-decoration:none;box-shadow:0 10px 32px #171A1F33;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease;border-color:#C91D2E}
.contact-trigger:hover{transform:translateY(-3px);box-shadow:0 13px 34px #171A1F40;background:#A61222;border-color:#A61222}
.contact-icon{width:24px;height:24px;display:block;flex:0 0 24px}
.contact-trigger .contact-icon{width:25px;height:25px;flex-basis:25px}
.contact-dialog{position:fixed;inset:auto 24px calc(24px + env(safe-area-inset-bottom)) auto;width:min(390px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 48px - env(safe-area-inset-bottom));margin:0;padding:22px;border:1px solid #171A1F1a;border-radius:26px;background:#fff;color:#202329;box-shadow:0 24px 100px #171A1F3d;overflow-y:auto;overscroll-behavior:contain;font:16px/1.5 Instrument,Arial,sans-serif}
.contact-dialog::backdrop{background:#171A1F59;backdrop-filter:blur(5px)}
.contact-dialog[open]{animation:contact-enter .18s ease-out}
.contact-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:17px}
.contact-kicker{color:#5D626B;font-size:10px;letter-spacing:.13em;font-weight:700}
.contact-close{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;min-height:48px;padding:12px;background:#F3F4F6;color:#202329;border:0;border-radius:50%;cursor:pointer}
.contact-close:hover{background:#E4E7EB}
.contact-dialog h2{font-family:Bricolage,Arial,sans-serif;font-size:30px;font-weight:700;line-height:1.06;letter-spacing:-.04em;margin:0 0 14px;text-wrap:balance;overflow-wrap:anywhere}
.contact-dialog #contact-intro{font-size:14px;line-height:1.55;margin:0 0 23px;color:#5D626B;max-width:none}
.contact-actions{display:grid;gap:10px}
.contact-action{display:flex;align-items:center;gap:13px;min-height:80px;padding:14px;border:1px solid #DEE1E6;border-radius:17px;text-decoration:none;background:#F3F4F6;color:#202329;transition:background .15s ease,border-color .15s ease}
.contact-action:hover{background:#FCEBED;border-color:#BBC1CA}
.contact-action-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border:1px solid #171A1F1c;border-radius:50%;background:#FCEBED;color:#C91D2E;border-color:#F1CCD1}
.contact-action-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:3px}
.contact-action strong{font-size:16px;font-weight:650;line-height:1.25}
.contact-action small{font-size:12px;line-height:1.35;color:#5D626B;overflow-wrap:anywhere}
.contact-action>.contact-icon{width:18px;height:18px;flex-basis:18px;opacity:.65}
.contact-whatsapp{background:#F3F4F6;border-color:#DEE1E6}
.contact-whatsapp:hover{background:#E4E7EB;border-color:#BBC1CA}
.contact-whatsapp .contact-action-icon{background:#25D366;color:#171A1F;border-color:#25D366}
.contact-whatsapp small{color:#5D626B}
.contact-request{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:52px;margin-top:14px;padding:8px 2px;font-size:13px;font-weight:600;color:#202329;text-decoration:none}
.contact-request:hover{text-decoration:underline}
.contact-request span{font-size:22px}
.contact-dialog .contact-note{padding-top:14px;margin:5px 0 0;border-top:1px solid #DEE1E6;color:#5D626B;font-size:11px;line-height:1.5}
.contact-trigger:focus-visible,.contact-dialog a:focus-visible,.contact-dialog button:focus-visible{outline:3px solid #C91D2E;outline-offset:3px;box-shadow:0 0 0 6px #FFFFFF}
.contact-widget [hidden]{display:none!important}
.contact-keyboard .contact-widget{visibility:hidden;pointer-events:none}
@keyframes contact-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){
 .contact-widget{right:16px;bottom:calc(18px + env(safe-area-inset-bottom))}
 .has-mobile-bar .contact-widget,.contact-bar-visible .contact-widget{bottom:calc(90px + env(safe-area-inset-bottom))}
 .contact-ready:not(.contact-bar-visible) .contact-widget{bottom:calc(18px + env(safe-area-inset-bottom))}
 .contact-trigger{min-width:56px;min-height:56px;padding:15px}
 .contact-trigger>span{display:none}
 .contact-dialog{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));max-height:calc(100dvh - 32px - env(safe-area-inset-bottom))}
 .contact-bar-visible .contact-dialog{bottom:calc(90px + env(safe-area-inset-bottom));max-height:calc(100dvh - 110px - env(safe-area-inset-bottom))}
}
@media(max-width:360px){
 .contact-dialog{padding:18px;border-radius:22px}
 .contact-dialog h2{font-size:27px}
 .contact-action{padding:12px 10px;gap:10px}
 .contact-action-icon{flex-basis:36px;width:36px;height:36px}
 .contact-action small{font-size:11px}
 .contact-action>.contact-icon{width:16px;height:16px;flex-basis:16px}
}
@media(prefers-reduced-motion:reduce){.contact-trigger,.contact-action,.contact-dialog[open]{animation:none;transition:none}.contact-trigger:hover{transform:none}}

.contact-trigger:focus-visible{outline-color:#171A1F}
