/* Keep menu links and bottom actions in separate rows. */
.bhl-mobile-panel.bhl-curtain-fixed .bhl-menu-scroll{min-height:0}
@media(max-width:860px){
 .bhl-mobile-panel.bhl-curtain-fixed{
   display:grid;grid-template-rows:minmax(0,1fr) auto;
   height:var(--bhl-curtain-height,calc(100dvh - var(--bhl-mobile-top,80px)));
   max-height:var(--bhl-curtain-height,calc(100dvh - var(--bhl-mobile-top,80px)));
   bottom:auto;overflow:hidden;gap:0;
 }
 .bhl-mobile-panel.bhl-curtain-fixed>.bhl-menu-scroll{
   min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;
   scrollbar-width:thin;scrollbar-color:#80634a transparent;
   padding-bottom:12px;scroll-padding-block:8px;
 }
 .bhl-mobile-panel.bhl-curtain-fixed>.bhl-mobile-actions{
   position:static!important;bottom:auto!important;margin:0!important;
   padding:18px 0 0!important;border-top:1px solid #de9e4833;
   background:#372C2E;min-width:0;z-index:auto;align-self:end;
 }
 .bhl-mobile-panel.bhl-curtain-fixed .bhl-mobile-submenu a{min-height:44px}
 .bhl-mobile-panel.bhl-curtain-fixed .bhl-mobile-actions>a{min-height:48px}
 body footer .w a:not(.digitech-credit){min-height:44px;display:flex;align-items:center;font-size:14px;line-height:1.5}
 body footer .bhl-footer-bottom .footer-legal a{min-height:44px;font-size:12px}
 body footer .digitech-credit{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
 body footer .bhl-footer-left{row-gap:4px}
 body #app .reading-nav a{min-height:44px;display:flex;align-items:center}
 body #app .contact-layout aside>a[href^="mailto:"]{min-height:44px;display:inline-flex;align-items:center}
 body #app .faq-list summary{min-height:44px;align-items:center}
 body #app .planner-options button{min-height:44px;font-size:14px}
 body #app .contact-consent{min-height:44px;line-height:1.65}
 body #app .bhl-enquiry-form .bhl-form-submit{min-height:50px}
 body #app .bhl-booking-section>.w{padding-left:12px;padding-right:12px}
 body #app .bhl-booking-section .bhl-booking-panel{padding:8px}
}
@media(max-width:860px) and (max-height:500px){
 .bhl-mobile-panel.bhl-curtain-fixed{padding:10px 18px max(10px,env(safe-area-inset-bottom));}
 .bhl-mobile-panel.bhl-curtain-fixed>.bhl-mobile-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:10px!important}
 .bhl-mobile-panel.bhl-curtain-fixed .bhl-mobile-phone{font-size:12px;white-space:nowrap}
 .bhl-mobile-panel.bhl-curtain-fixed .bhl-mobile-actions .btn{padding:10px 12px;font-size:13px;letter-spacing:0}
}
/* Booking controls inside the third-party iframe remain provider-owned. */
.bhl-booking-access{display:flex;justify-content:flex-end;margin:0 0 18px}
.bhl-booking-access a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 20px;border:1px solid #b8742a55;border-radius:999px;background:#fffdf9;color:#563727;font-size:14px;font-weight:600;line-height:1.5;text-align:center}
.bhl-booking-access a:hover{background:#f0e5d7}
.bhl-booking-access svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}
#bhl-booking-embed iframe{display:block;width:100%!important;max-width:100%;border:0}
@media(max-width:540px){.bhl-booking-access a{width:100%}}
/* Glass back-to-top: below the navigation curtain. */
button.bhl-back-top{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:45;width:48px;height:48px;display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid #b8742a66;background:rgba(246,239,229,.84);color:#563727;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:0 8px 28px #372c2e20,inset 0 1px 0 #ffffffb3;opacity:0;visibility:hidden;transform:translateY(12px);pointer-events:none;cursor:pointer;transition:opacity .25s,transform .25s,background .25s,visibility .25s}
button.bhl-back-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
button.bhl-back-top:hover{background:#f6efe5;transform:translateY(-3px)}
button.bhl-back-top:focus-visible,.bhl-booking-access a:focus-visible{outline:2px solid #DE9E48;outline-offset:4px}
button.bhl-back-top svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:540px){button.bhl-back-top{right:18px;width:48px;height:48px}}
@media(prefers-reduced-motion:reduce){button.bhl-back-top,.bhl-mobile-panel.bhl-curtain-fixed,.bhl-mobile-panel.bhl-curtain-fixed *{animation:none!important;transition:none!important}}
