/* Deliberate contact only. The optional white launcher leaves booking primary. */
.contact-widget{--cw-paper:#FBF8F1;--cw-surface:#FFFEFA;--cw-ink:#221A11;--cw-soft:#5C4F3D;--cw-espresso:#4A2A15;--cw-focus:#9A6B1C;--cw-line:#928575;--sp-bound:12px;--sp-flow:22px;--sp-break:34px;--cw-bottom:16px;--cw-panel-bottom:84px;--cw-safe-bottom:0px;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--sp-bound);padding:16px max(16px,var(--gutter,34px));font-family:var(--lum-font-body,Inter,Arial,sans-serif);font-size:16px;line-height:1.5;color:var(--cw-ink)}
.contact-widget *{box-sizing:border-box}
.contact-widget [hidden]{display:none!important}
.contact-widget :is(a,button){font:inherit;line-height:1.25;text-decoration:none;touch-action:manipulation}
.contact-widget :is(a,button):focus-visible{outline:2px solid var(--cw-focus);outline-offset:4px}
.contact-widget svg{display:block;width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.contact-widget svg.contact-widget__whatsapp-icon{fill:currentColor;stroke:none}
.contact-widget__launcher{display:inline-flex;align-items:center;justify-content:center;gap:10px;max-width:calc(100vw - 32px);min-height:52px;padding:12px 18px;border:1px solid var(--cw-line);border-radius:999px;background:var(--cw-surface);color:var(--cw-ink);box-shadow:0 4px 20px rgba(34,26,17,.1);cursor:pointer}
.contact-widget__launcher .contact-widget__whatsapp-icon{width:24px;height:24px;color:#25D366}
.contact-widget[data-enhanced=true]{padding:0}
.contact-widget[data-enhanced=true] .contact-widget__launcher{position:fixed;inset-inline-end:16px;inset-block-end:calc(var(--cw-bottom) + env(safe-area-inset-bottom,0px));z-index:34}
.contact-widget[data-docked=true]{padding:16px max(16px,var(--gutter,34px)) calc(16px + var(--cw-safe-bottom))}
.contact-widget[data-docked=true] .contact-widget__launcher{position:static}
.contact-widget[data-obscured=true] .contact-widget__launcher{visibility:hidden;pointer-events:none}
.contact-widget__panel{position:fixed;inset:auto 16px var(--cw-panel-bottom) auto;z-index:44;width:min(360px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - var(--cw-panel-bottom) - 16px);margin:0;padding:var(--sp-flow);overflow:auto;overscroll-behavior:contain;scroll-padding-block:var(--sp-flow);border:1px solid var(--cw-line);border-radius:24px;background:var(--cw-paper);color:var(--cw-ink);box-shadow:0 12px 48px rgba(34,26,17,.16);font-family:inherit;font-size:1rem;line-height:1.5}
.contact-widget__panel:not([open]){display:none}
.contact-widget__panel[open]{display:block}
.contact-widget__header{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:var(--sp-bound)}
.contact-widget__header h2{min-width:0;margin:0;font-family:var(--lum-font-display,"Coolvetica",Inter,sans-serif);font-size:1.75rem;font-weight:400;font-synthesis:none;line-height:1.16;letter-spacing:normal;text-wrap:balance;overflow-wrap:anywhere}
.contact-widget__header h2[tabindex="-1"]:focus{outline:none}
.contact-widget__close{display:grid;place-items:center;align-self:start;width:44px;min-height:44px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--cw-ink);cursor:pointer}
.contact-widget__close svg{width:20px;height:20px}
.contact-widget__intro{margin:var(--sp-bound) 0 0;color:var(--cw-soft);font-size:1rem;line-height:1.6;text-wrap:pretty}
.contact-widget__actions{display:grid;gap:var(--sp-bound);margin-top:var(--sp-flow)}
.contact-widget__action{display:flex;align-items:center;gap:var(--sp-bound);min-width:0;min-height:52px;padding:14px 16px;border:1px solid var(--cw-line);border-radius:14px;text-align:start;overflow-wrap:anywhere}
.contact-widget__action>span{min-width:0}
.contact-widget__action--whatsapp{background:var(--cw-espresso);border-color:var(--cw-espresso);color:var(--cw-paper)}
.contact-widget__action--call{background:var(--cw-surface);color:var(--cw-ink)}
.contact-widget__action b{display:block;font-weight:500}
.contact-widget__number{display:block;margin-top:4px;color:var(--cw-soft);font-size:.875rem;line-height:1.5}
.contact-widget__hours{margin:var(--sp-bound) 0 0;color:var(--cw-soft);font-size:.8125rem;line-height:1.6;text-wrap:pretty}
.contact-widget__fallback-call{display:inline-flex;align-items:center;min-height:44px;color:var(--cw-espresso);text-decoration:underline!important;text-underline-offset:4px}
@media(min-width:900px){.contact-widget[data-enhanced=true] .contact-widget__launcher{inset-inline-end:24px}.contact-widget__panel{inset-inline-end:24px}}
@media(max-width:480px){.contact-widget[data-enhanced=true] .contact-widget__launcher{width:56px;min-height:56px;padding:12px}.contact-widget[data-enhanced=true] .contact-widget__launcher>span{display:none}.contact-widget__panel{border-radius:22px}}
@media(max-width:350px){.contact-widget__panel{padding:18px}.contact-widget__header h2{font-size:1.625rem}}
@media(hover:hover){.contact-widget__launcher:hover,.contact-widget__close:hover{background:var(--cw-paper)}.contact-widget__action--whatsapp:hover{background:var(--cw-ink)}.contact-widget__action--call:hover{background:var(--cw-paper)}}
@media(prefers-reduced-motion:no-preference){.contact-widget__launcher,.contact-widget__action,.contact-widget__close{transition:background var(--dur-1,120ms) var(--ease),transform var(--dur-1,120ms) var(--ease)}.contact-widget__launcher:active,.contact-widget__action:active,.contact-widget__close:active{transform:scale(.96)}.contact-widget__panel[open]{animation:contact-widget-enter var(--dur-3,320ms) var(--ease-out)}@keyframes contact-widget-enter{from{opacity:0;transform:translateY(20px) scale(.985);filter:blur(10px)}to{opacity:1;transform:none;filter:blur(0)}}}
@media(prefers-reduced-motion:reduce){.contact-widget,.contact-widget *{animation:none!important;transition:none!important}}
@media(forced-colors:active){.contact-widget__launcher,.contact-widget__panel,.contact-widget__action,.contact-widget__close{border-color:CanvasText;background:Canvas;color:CanvasText}.contact-widget :is(a,button):focus-visible{outline-color:Highlight}.contact-widget__launcher .contact-widget__whatsapp-icon,.contact-widget__number,.contact-widget__hours,.contact-widget__intro{color:CanvasText}}
