.whatsapp-widget{position:relative;z-index:35}
html:has(.whatsapp-widget){scrollbar-gutter:stable}
.whatsapp-launcher{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:11px;min-height:56px;padding:11px 18px;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:var(--ink);color:#fff;font:600 14px/1.3 var(--sans);text-align:left;box-shadow:0 3px 8px rgba(20,51,82,.12),0 8px 24px rgba(20,51,82,.16);cursor:pointer;transition:background-color 160ms ease,transform 160ms ease}
.whatsapp-launcher:hover{background:var(--accent-hover);color:#fff}
.whatsapp-launcher:active{transform:scale(.96)}
.whatsapp-launcher-hint{display:block;font-size:11px;font-weight:400;margin-top:2px;color:#d6eef0}
.whatsapp-launcher[hidden]{display:none}
.whatsapp-dialog{position:fixed;inset:auto max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) auto;margin:0;width:390px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 6px 18px rgba(20,51,82,.12),0 20px 64px rgba(20,51,82,.18)}
.whatsapp-dialog::backdrop{background:rgba(20,51,82,.17)}
.whatsapp-dialog:not([open]){display:none}
body.whatsapp-open{overflow:hidden}
.whatsapp-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px 14px 20px;border-bottom:1px solid var(--line);background:var(--soft)}
.whatsapp-brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.whatsapp-brand img{flex:none;width:40px;height:40px;object-fit:contain}
.whatsapp-brand small{display:block;margin-top:3px;font-size:10px;font-weight:400;color:var(--text)}
.whatsapp-close{display:grid;place-items:center;flex:none;width:44px;height:44px;border:0;border-radius:5px;color:var(--ink);background:transparent;cursor:pointer}
.whatsapp-close:hover{background:var(--line)}
.whatsapp-body{padding:23px}
.whatsapp-body .eyebrow{font-size:10px;margin:0 0 9px}
.whatsapp-body h2{font-size:27px;line-height:1.15;letter-spacing:-.035em;margin:0 0 13px;text-wrap:balance}
.whatsapp-body>p:not(.eyebrow){font-size:14px;line-height:1.65;color:var(--text);margin:0 0 20px}
.whatsapp-body label{display:block;font-size:12px;font-weight:600;margin:0 0 8px}
.whatsapp-body select{width:100%;min-height:48px;padding:10px 30px 10px 11px;border:1px solid #7895a4;border-radius:5px;background:#fff;color:var(--ink);font:400 16px/1.4 var(--sans)}
.whatsapp-body .whatsapp-continue{display:flex;justify-content:space-between;width:100%;min-height:50px;margin:16px 0 10px;padding:12px 15px;background:var(--accent);border:1px solid var(--accent);color:#fff;font-size:14px;border-radius:5px}
.whatsapp-body .whatsapp-continue:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.whatsapp-body>p.whatsapp-note{font-size:11px;line-height:1.5;margin-bottom:18px}
.whatsapp-hours{display:grid;gap:3px;border-top:1px solid var(--line);padding-top:14px;color:var(--text);font-size:12px;line-height:1.6}
.whatsapp-hours strong{color:var(--ink);font-weight:600}
.whatsapp-consultation{display:flex;align-items:center;min-height:44px;font-size:12px;font-weight:500;text-decoration:underline;text-underline-offset:3px;color:var(--ink);margin-top:8px}
.whatsapp-widget :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.whatsapp-launcher:focus-visible{outline-color:#fff;box-shadow:0 0 0 6px var(--accent)}
/* Let privacy choices, navigation and form completion take precedence. */
body:has(#cookie-notice:not([hidden])) .whatsapp-widget,body.menu-open .whatsapp-widget,body:has(#enquiry-form :focus) .whatsapp-launcher{display:none}
@media(max-width:600px){.whatsapp-launcher{right:16px;bottom:max(16px,env(safe-area-inset-bottom));min-height:48px;padding:10px 14px;gap:8px}.whatsapp-launcher-hint{display:none}.whatsapp-dialog{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}.whatsapp-body{padding:20px}.whatsapp-heading{padding-left:16px}}
@media(prefers-reduced-motion:reduce){.whatsapp-launcher{transition:none}.whatsapp-launcher:active{transform:none}}
@media print{.whatsapp-widget{display:none}}
