/* The Book online / Request a callback rail, pinned to the right edge of every
   generated page (10 Oct 2026: Carver asked for it everywhere, always
   available). The homepage has its own copy of these rules in its stylesheet;
   this file carries its own colours so it does not depend on a page's theme.
   Both tabs link to the homepage, which opens the matching drawer on arrival.
   NOT on /contact, /privacy or /terms: those carry the chat widget, and the
   A2P registration says the widget is the only phone-number route on them. */
.sidetabs{position:fixed;top:50%;right:env(safe-area-inset-right);z-index:41;display:flex;
  transform:translateY(-50%);flex-direction:column;gap:2px;align-items:flex-end}
.sidetab{display:block;color:#141008;font-weight:700;font-size:12px;letter-spacing:.22em;
  text-transform:uppercase;text-decoration:none;padding:20px 11px;border-radius:3px 0 0 3px;
  background:linear-gradient(135deg,#E7CF8F,#C9A961 55%,#A98B45);
  box-shadow:-3px 0 14px rgba(22,24,28,.22);transition:transform .22s ease,filter .22s ease;
  font-family:"Segoe UI",system-ui,-apple-system,sans-serif}
.sidetab span{writing-mode:vertical-rl;text-orientation:mixed}
.sidetab.tab2{background:linear-gradient(135deg,#DCE1E7,#A6AEB8 52%,#79818C);color:#15181C;font-size:11px;padding:16px 11px}
.sidetab:hover{transform:translateX(-3px);filter:brightness(1.07)}
.sidetab:focus-visible{outline:2px solid #E7CF8F;outline-offset:3px}
.tabshort{display:none}
@media (max-width:760px){
  .tablong{display:none}
  .tabshort{display:block}
  .sidetab{font-size:11px;letter-spacing:.14em;padding:14px 7px}
  .sidetab.tab2{font-size:10.5px;padding:13px 7px}
  /* Bottom corner on a phone, Book nearest the thumb. Same as the homepage. */
  .sidetabs{top:auto;transform:none;flex-direction:column-reverse;bottom:calc(14px + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){ .sidetab{transition:none} }

/* The panel assets/drawer.js opens: the homepage's booking or callback drawer,
   shown in place on the right, over a dimmed page. */
.fsi-drawer{position:fixed;inset:0;z-index:60}
.fsi-drawer[hidden]{display:none}
.fsi-drawer-back{position:absolute;inset:0;background:rgba(4,5,7,0);transition:background .3s ease}
.fsi-drawer.in .fsi-drawer-back{background:rgba(4,5,7,.72)}
.fsi-drawer-frame{position:absolute;top:0;right:0;width:min(460px,100vw);height:100%;border:0;
  background:#14161A;transform:translateX(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}
.fsi-drawer.in .fsi-drawer-frame{transform:none}
@media (prefers-reduced-motion:reduce){ .fsi-drawer-frame,.fsi-drawer-back{transition:none} }
