.ob-dock[hidden],.ob-dock [hidden]{display:none!important}
.ob-dock{position:fixed;z-index:9990;left:50%;bottom:calc(22px + env(safe-area-inset-bottom,0px));width:max-content;max-width:calc(100% - 32px);font-family:Arial,Helvetica,sans-serif;opacity:0;visibility:hidden;transform:translate(-50%,calc(100% + 50px));transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .28s,visibility .42s;pointer-events:none}
.ob-dock.is-visible{opacity:1;visibility:visible;transform:translate(-50%,0);pointer-events:auto}
.ob-dock__bar{display:flex;align-items:stretch;gap:6px;padding:7px;border:1px solid #eadfdf;border-radius:19px;background:#fff;box-shadow:0 12px 50px #24101030,0 2px 8px #24101010}
.ob-dock .ob-booking__icon{width:21px;height:21px;flex:none;display:block;transition:transform .2s}
.ob-dock .ob-dock__bar :is(a,button){display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;padding:12px 18px;min-height:54px;color:#292323;background:transparent;font:inherit;font-size:14px;line-height:1.25;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}
.ob-dock__bar small,.ob-dock__bar strong{display:block;text-align:left}.ob-dock__bar small{font-size:11px;color:#746a6a;margin-bottom:3px}.ob-dock__bar strong{font-size:14px;font-weight:700}.ob-dock__bar .ob-booking__icon{color:#bd0010}
.ob-dock .ob-dock__bar .ob-dock__appointment{background:#bd0010;color:#fff;font-weight:700}.ob-dock__bar .ob-dock__appointment .ob-booking__icon{color:#fff}.ob-dock__bar .ob-dock__appointment .ob-booking__icon:last-child{width:17px}
.ob-dock .ob-dock__bar :is(a,button):hover{background:#faf0f1;transform:translateY(-2px)}.ob-dock .ob-dock__bar .ob-dock__appointment:hover{background:#990010}.ob-dock__bar :is(a,button):hover .ob-booking__icon{transform:translateY(-2px)}.ob-dock :is(a,button):focus-visible{outline:3px solid #bd0010;outline-offset:3px}.ob-dock__chevron{font-size:20px;color:#bd0010;transition:transform .2s}.ob-dock [aria-expanded=true] .ob-dock__chevron{transform:rotate(180deg)}
.ob-dock__menu{position:absolute;right:0;bottom:calc(100% + 12px);width:340px;max-width:calc(100vw - 32px);max-height:min(65vh,510px);overflow:auto;padding:20px;background:#fff;border:1px solid #eadfdf;border-radius:18px;box-shadow:0 16px 60px #24101030;animation:ob-dock-menu .2s ease-out}.ob-dock__menu>strong{font-size:17px;color:#211b1b}.ob-dock__menu>p{font-size:12px;line-height:1.4;color:#746a6a;margin:7px 0 12px}.ob-dock__menu button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#292323;border-radius:10px;padding:10px;cursor:pointer;text-align:left;font:inherit}.ob-dock__menu button:hover,.ob-dock__menu button[aria-pressed=true]{background:#fff1f2}.ob-dock__menu button .ob-booking__icon{color:#bd0010}.ob-dock__menu button strong{display:block;font-size:14px}.ob-dock__menu button small{display:block;margin-top:4px;font-size:12px;color:#746a6a}.ob-dock__check{margin-left:auto;color:#bd0010;visibility:hidden}.ob-dock__menu [aria-pressed=true] .ob-dock__check{visibility:visible}
@keyframes ob-dock-menu{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.ob-dock{bottom:calc(10px + env(safe-area-inset-bottom,0px));max-width:calc(100% - 20px);width:calc(100% - 20px)}.ob-dock__bar{gap:3px;padding:5px;border-radius:15px}.ob-dock .ob-dock__bar :is(a,button){padding:10px 7px;gap:5px;min-width:0;flex:1;font-size:12px;flex-direction:column}.ob-dock__bar .ob-dock__appointment .ob-booking__icon:last-child,.ob-dock__chevron,.ob-dock__phone strong,.ob-dock__location small{display:none}.ob-dock__bar small,.ob-dock__bar strong{text-align:center;font-size:12px;margin:0}.ob-dock__bar small{color:#292323}.ob-dock .ob-dock__bar .ob-dock__appointment{flex:1.35}.ob-dock__bar .ob-dock__location strong{font-size:11px}.ob-dock__menu{width:100%;max-height:60vh}.ob-dock .ob-booking__icon{width:20px;height:20px}}
@media(prefers-reduced-motion:reduce){.ob-dock,.ob-dock *{animation:none!important;transition:none!important}}
body:has(.ob-dock) #footer-outer{padding-bottom:100px}
.ob-dock__bar strong,.ob-dock__menu strong{font-family:Arial,Helvetica,sans-serif}
/* Isolate typography from the theme's 42px button line-height. */
.ob-dock,.ob-dock *{box-sizing:border-box}
.ob-dock{font-size:14px;line-height:1.4}
.ob-dock .ob-dock__menu{display:flex;flex-direction:column;width:350px;max-height:calc(100dvh - 130px);padding:0;overflow:hidden}
.ob-dock .ob-dock__menu-head{display:flex;align-items:center;gap:12px;flex:none;padding:18px 18px 13px;border-bottom:1px solid #eee7e5}
.ob-dock .ob-dock__menu-head>div{flex:1;min-width:0}
.ob-dock .ob-dock__menu-head strong{display:block;margin:0;padding:0;font:700 16px/22px Arial,Helvetica,sans-serif;color:#292323}
.ob-dock .ob-dock__menu-head p{margin:3px 0 0;padding:0;font:400 12px/17px Arial,Helvetica,sans-serif;color:#746a6a}
.ob-dock .ob-dock__menu-head button{display:grid;place-items:center;flex:none;width:36px;height:36px;min-height:36px;padding:0;margin:0;font:400 25px/1 Arial,Helvetica,sans-serif;background:#f7f3f2;color:#574747}
.ob-dock .ob-dock__list{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:6px;scroll-padding:6px}
.ob-dock .ob-dock__list button{display:grid;grid-template-columns:20px minmax(0,1fr) 18px;gap:12px;align-items:center;min-height:60px;height:auto;padding:10px 12px;margin:0;border:1px solid transparent;border-radius:9px;font:400 14px/20px Arial,Helvetica,sans-serif;box-shadow:none}
.ob-dock .ob-dock__list button>span{min-width:0;margin:0;padding:0;line-height:20px}
.ob-dock .ob-dock__list button strong{display:block;margin:0;padding:0;font:700 14px/20px Arial,Helvetica,sans-serif}
.ob-dock .ob-dock__list button small{display:block;margin:2px 0 0;padding:0;font:400 12px/17px Arial,Helvetica,sans-serif;color:#746a6a}
.ob-dock .ob-dock__list button[aria-pressed=true]{border-color:#ebbec4;background:#fff1f2}
.ob-dock .ob-dock__list .ob-dock__check{font:700 16px/20px Arial,Helvetica,sans-serif}
.ob-dock .ob-dock__list button:focus-visible{outline:2px solid #bd0010;outline-offset:-3px}
.ob-dock .ob-dock__memory{flex:none;margin:0;padding:10px 18px;border-top:1px solid #eee7e5;color:#746a6a;font:400 11px/16px Arial,Helvetica,sans-serif}
.ob-dock .ob-dock__bar strong{font:700 14px/18px Arial,Helvetica,sans-serif}
.ob-dock .ob-dock__bar small{font:400 11px/15px Arial,Helvetica,sans-serif}
@media(max-width:600px){.ob-dock .ob-dock__menu{width:100%;max-height:calc(100dvh - 120px - env(safe-area-inset-bottom,0px))}.ob-dock .ob-dock__location small{display:block;font-size:10px;line-height:12px}.ob-dock .ob-dock__bar strong{font-size:11px;line-height:14px}.ob-dock .ob-dock__phone strong{display:none}.ob-dock .ob-dock__bar .ob-dock__location{gap:3px}.ob-dock .ob-dock__bar .ob-dock__appointment{font-size:12px;line-height:16px}}

.ob-dock [hidden]{display:none!important}
@media(max-width:600px){.ob-dock__bar:has(.ob-dock__location[hidden]){grid-template-columns:1.5fr 1fr}}
