/* VIP scheduler panel — preview draft */
.sp-launch{position:fixed;right:16px;bottom:20px;z-index:960;display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 20px;border-radius:999px;border:2px solid #C9A96A;background:#2B2F33;color:#fff;font:700 .95rem/1 var(--font,"Montserrat",system-ui,sans-serif);letter-spacing:.04em;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.28)}
.sp-launch:hover,.sp-launch:focus-visible{background:#1f2326;outline:3px solid #81D8D0;outline-offset:2px}
.sp-launch .sp-dot{width:10px;height:10px;border-radius:50%;background:#81D8D0}
.sp-panel{position:fixed;right:16px;bottom:84px;z-index:970;width:min(380px,calc(100vw - 24px));max-height:calc(100vh - 110px);overflow:auto;background:#2B2F33;color:#F3EFE7;border:1px solid rgba(201,169,106,.55);border-radius:16px;box-shadow:0 20px 48px rgba(0,0,0,.35);font-family:var(--font,"Montserrat",system-ui,sans-serif);padding:18px 18px 14px}
.sp-panel[hidden]{display:none}
.sp-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
.sp-head h2{margin:0;font-family:var(--font-display,"Cormorant Garamond",Georgia,serif);font-size:1.5rem;color:#D4B87A;font-weight:600}
.sp-close{width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#F3EFE7;font-size:1.6rem;cursor:pointer}
.sp-close:focus-visible{outline:3px solid #81D8D0}
.sp-btn{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:12px;font-weight:800;text-decoration:none;letter-spacing:.03em;margin-bottom:10px;text-align:center}
.sp-call{background:#C9A96A;color:#1C1917;font-size:1.08rem;min-height:58px}
.sp-call:hover{background:#D4B87A}
.sp-book{background:transparent;color:#81D8D0;border:2px solid #81D8D0}
.sp-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.sp-sub{font-size:.78rem;color:#C8C2B8;margin:-4px 0 12px;text-align:center}
.sp-sec{border-top:1px solid rgba(255,255,255,.12);padding-top:12px;margin-top:6px}
.sp-sec h3{margin:0 0 8px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#D4B87A}
.sp-status{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.78rem;font-weight:700;margin-left:6px}
.sp-open{background:#81D8D0;color:#1C1917}.sp-closed{background:#5a5048;color:#fff}
.sp-today{margin:0 0 8px;font-size:.95rem}
.sp-hours,.sp-svc{list-style:none;margin:0;padding:0;font-size:.88rem}
.sp-hours li,.sp-svc li{display:flex;justify-content:space-between;gap:10px;padding:3px 0}
.sp-hours li.sp-is-today{color:#81D8D0;font-weight:700}
.sp-svc li span:last-child{color:#D4B87A;font-weight:700;white-space:nowrap}
.sp-note{font-size:.8rem;color:#C8C2B8;margin:8px 0 0}
.sp-link{color:#81D8D0}
.sp-voice{margin-top:10px;font-size:.8rem;color:#C8C2B8}
@media (max-width:899px){
 .sp-launch{bottom:calc(var(--callbar-h,64px) + 12px + env(safe-area-inset-bottom,0px))}
 .sp-panel{right:12px;bottom:calc(var(--callbar-h,64px) + 76px);max-height:calc(100vh - var(--callbar-h,64px) - 100px)}
}
/* guard against site-wide heading/text styles */
.sp-panel,.sp-panel p,.sp-panel li,.sp-panel span{color:#F3EFE7}
.sp-panel .sp-head h2{color:#D4B87A!important;font-size:1.5rem!important;letter-spacing:0!important;text-transform:none!important;margin:0!important}
.sp-panel .sp-sec h3{color:#D4B87A!important;font:700 .78rem/1.3 var(--font,"Montserrat",system-ui,sans-serif)!important;letter-spacing:.12em!important;margin:0 0 8px!important}
.sp-panel .sp-sub,.sp-panel .sp-note,.sp-panel .sp-voice p{color:#C8C2B8}
.sp-panel .sp-hours li.sp-is-today span{color:#81D8D0}
.sp-panel .sp-svc li span:last-child{color:#D4B87A}
.sp-panel .sp-open{color:#1C1917}.sp-panel a.sp-call{color:#1C1917}.sp-panel a.sp-book,.sp-panel a.sp-link{color:#81D8D0}
.sp-voice-btn{width:100%;min-height:48px;border-radius:12px;border:1px solid rgba(201,169,106,.6);background:transparent;color:#F3EFE7;font:600 .9rem var(--font,"Montserrat",system-ui,sans-serif);cursor:pointer}
.sp-voice-btn:focus-visible{outline:3px solid #81D8D0}
/* Talk to us pill (stacked above Book / Call) */
.sp-talk{position:fixed;right:16px;bottom:84px;z-index:960;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border-radius:999px;border:2px solid #81D8D0;background:#2B2F33;color:#81D8D0;font:700 .95rem/1 var(--font,"Montserrat",system-ui,sans-serif);letter-spacing:.04em;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.28)}
.sp-talk:hover,.sp-talk:focus-visible{background:#1f2326;outline:3px solid #C9A96A;outline-offset:2px}
.sp-panel{bottom:144px}
.sp-voice-open .sp-talk,.sp-voice-open .sp-launch,.sp-voice-open .sp-panel{display:none!important}
@media (max-width:899px){
 .sp-talk{bottom:calc(var(--callbar-h,64px) + 74px + env(safe-area-inset-bottom,0px))}
 .sp-panel{bottom:calc(var(--callbar-h,64px) + 136px);max-height:calc(100vh - var(--callbar-h,64px) - 160px)}
}
/* Single-pill mode: Talk to us replaces the Book / Call launcher */
.sp-launch{display:none!important}
.sp-talk{bottom:20px}
@media (max-width:899px){.sp-talk{bottom:calc(var(--callbar-h,64px) + 12px + env(safe-area-inset-bottom,0px))}}
/* Swap: Call pill floats above the big Talk to us bar at all widths */
.sp-callpill{text-decoration:none;color:#81D8D0!important;bottom:calc(var(--callbar-h,64px) + 14px + env(safe-area-inset-bottom,0px))!important;min-height:48px}
.sp-voice-open .call-bar{display:none!important}
.call-bar a.sp-bar-talk{display:flex;align-items:center;justify-content:center;min-height:48px}
/* Split bar: gold Call | teal-outline Talk to us */
.call-bar.sp-split{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
.call-bar.sp-split a{min-height:48px;display:flex;align-items:center;justify-content:center}
.call-bar.sp-split a.sp-bar-talk{background:#2B2F33!important;color:#81D8D0!important;border:2px solid #81D8D0!important}
.sp-voice-open .call-bar{display:none!important}
/* ===== 2026-10-17 evening polish (DRAFT): calmer bottom bar =====
   Slate bar. Call = solid ivory (clear, but not gold: gold is reserved for Book Online).
   Speak with Us = ghost/outline secondary. Phones: full-width bar. Desktop: compact floating pill, bottom-right. */
.call-bar.sp-split{background:rgba(43,47,51,.97)!important;border-top:1px solid rgba(212,176,86,.35)!important;box-shadow:0 -6px 20px rgba(16,20,22,.18)!important;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px))!important;gap:10px!important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.call-bar.sp-split a{box-sizing:border-box;min-height:46px!important;margin:0!important;padding:0 1rem!important;border-radius:999px!important;font-size:.85rem!important;font-weight:700!important;letter-spacing:.08em!important;text-transform:uppercase;white-space:nowrap;box-shadow:none!important;transition:background-color .15s ease,border-color .15s ease}
.call-bar.sp-split a.call{background:#F6F3EC!important;color:#1F2326!important;border:1.5px solid #F6F3EC!important}
.call-bar.sp-split a.call:hover{background:#fff!important}
.call-bar.sp-split a.call::before{content:"";display:inline-block;width:16px;height:16px;margin-right:8px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1.9.4 1.8.7 2.7a2 2 0 0 1-.5 2.1L8 9.8a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.7.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center/contain no-repeat}
.call-bar.sp-split a.sp-bar-talk{background:transparent!important;color:#F6F3EC!important;border:1.5px solid rgba(246,243,236,.45)!important}
.call-bar.sp-split a.sp-bar-talk svg{color:#81D8D0;margin-right:8px!important}
.call-bar.sp-split a.sp-bar-talk:hover{border-color:#81D8D0!important;background:rgba(129,216,208,.08)!important}
.call-bar.sp-split a:focus-visible{outline:2px solid #D4B056!important;outline-offset:2px}
@media (min-width:769px){
  .call-bar.sp-split{left:auto!important;right:24px!important;bottom:24px!important;width:auto!important;grid-template-columns:auto auto!important;border:1px solid rgba(212,176,86,.35)!important;border-radius:999px!important;padding:8px!important;box-shadow:0 12px 32px rgba(16,20,22,.28)!important}
  .call-bar.sp-split a{min-height:44px!important;padding:0 1.35rem!important;font-size:.8rem!important}
}

/* ===== 2026-10-20 DRAFT: Book Online primary, Call compact, Speak with Khai thin secondary ===== */
html.sp-has-bar3{--callbar-h:128px}
.call-bar.sp-bar3{grid-template-columns:1fr auto!important;grid-template-areas:"book call" "voice voice";row-gap:6px!important;column-gap:8px!important;padding:8px 12px calc(6px + env(safe-area-inset-bottom,0px))!important}
.call-bar.sp-bar3 a.sp-bar-book{grid-area:book;background:#D4B056!important;color:#102821!important;border:1.5px solid #D4B056!important;font-weight:800!important;font-size:.95rem!important}
.call-bar.sp-bar3 a.sp-bar-book:hover{background:#e0bf6a!important}
.call-bar.sp-bar3 a.call{grid-area:call;background:transparent!important;color:#F6F3EC!important;border:1.5px solid rgba(246,243,236,.55)!important;padding:0 1rem!important}
.call-bar.sp-bar3 .sp-bar-voice{grid-area:voice;display:flex;flex-direction:column;align-items:center;gap:1px}
.call-bar.sp-bar3 a.sp-bar-talk{min-height:32px!important;height:32px;padding:0 .9rem!important;font-size:.72rem!important;letter-spacing:.06em!important;font-weight:600!important;border:1px solid rgba(129,216,208,.45)!important;color:#81D8D0!important;background:transparent!important;display:inline-flex!important;width:auto}
.call-bar.sp-bar3 a.sp-bar-talk svg{width:14px;height:14px;margin-right:6px!important}
.call-bar.sp-bar3 .sp-bar-cap{margin:0;font-size:.68rem;line-height:1.3;color:rgba(246,243,236,.72);text-align:center;white-space:normal}
@media (min-width:769px){
  html.sp-has-bar3{--callbar-h:0px}
  .call-bar.sp-bar3{border-radius:20px!important;padding:10px 12px 8px!important;grid-template-columns:auto auto!important;max-width:340px}
}
html.sp-has-bar3 body:has(.call-bar.sp-novoice){--callbar-h:72px}
.call-bar.sp-bar3.sp-novoice{grid-template-areas:"book call"}
@media (min-width:769px){html.sp-has-bar3 body:has(.call-bar.sp-novoice){--callbar-h:0px}}
@media (max-width:768px){html.sp-has-bar3 body:has(.call-bar.sp-bar3 .sp-bar-voice){padding-bottom:calc(114px + env(safe-area-inset-bottom,0px) + 20px)!important}}
