/* header */
@media (max-width:767px){
 .bl-header{position:relative}
 .bl-header .bl-nav{position:absolute !important;top:14px;right:10px;width:auto !important;margin:0 !important}
 .bl-header .bl-nav .hfe-nav-menu__toggle{margin:0 0 0 auto !important}
}
/* global */
html,body{overflow-x:clip}
#page,.site{overflow-x:clip}
/* thin 3-line hamburger like Wix */
.bl-nav .hfe-nav-menu-icon:has(.e-fas-bars){width:26px;height:19px;background:linear-gradient(#4D5151,#4D5151) 0 0/100% 2px no-repeat,linear-gradient(#4D5151,#4D5151) 0 50%/100% 2px no-repeat,linear-gradient(#4D5151,#4D5151) 0 100%/100% 2px no-repeat}
.bl-nav .hfe-nav-menu-icon .e-fas-bars{display:none}
/* tablet */
@media (max-width:1040px) and (min-width:768px){
 .e-con.e-con-boxed > .e-con-inner{max-width:calc(100% - 48px) !important}
 .bl-header .bl-nav .hfe-nav-menu > li > a,.bl-header .bl-nav .menu-item a.hfe-menu-item{padding-left:8px !important;padding-right:8px !important;font-size:12px !important}
 .bl-bear{left:58vw !important;top:11.2vw !important;width:47vw !important}
 .bl-bear img{width:100% !important}
 .bl-memories .elementor-heading-title{font-size:56px !important;line-height:62px !important}
}
/* Wix-style sticky header that slides away on scroll down (JS in the header template toggles the class) */
@media (min-width:768px){
 #masthead{position:sticky !important;top:0;z-index:100 !important;transition:transform .2s ease-in}
 #masthead.bl-hdr-hidden{transform:translateY(-100%)}
 .admin-bar #masthead{top:32px}
}
.bl-js{position:absolute !important;width:0;height:0;overflow:hidden}
/* mobile footer contact lines: Wix spaces them 34px / 26px apart */
@media (max-width:767px){
 .bl-foot-contact p:nth-child(1){margin-bottom:14px !important}
 .bl-foot-contact p:nth-child(2){margin-bottom:6px !important}
 .bl-cta .elementor-button-text{display:block;max-width:100px;line-height:19px;font-size:15px}
}
/* full-width header: Wix keeps the logo 87px / button ~84px from the window edges, a little less below 1280px */
@media (min-width:768px){.bl-header{--padding-left:min(87px, calc(16px + 5.5vw)) !important;--padding-right:min(84.5px, calc(14px + 5.5vw)) !important}}
/* desktop/tablet menu never wraps: when it doesn't fit on one line the header JS adds .bl-nav-collapsed and the
   hamburger dropdown (HFE's mobile rules, copied) takes over. HFE writes a px width onto <nav> on every resize,
   which otherwise locks the menu at its narrowest width */
@media (min-width:768px){
 .bl-header>.bl-logo,.bl-header>.bl-brush{flex-shrink:0}
 .bl-header .bl-nav ul.hfe-nav-menu{flex-wrap:nowrap}
 .bl-header:not(.bl-nav-collapsed) .bl-nav nav{width:auto !important}
 .bl-nav-collapsed{position:relative}
 .bl-nav-collapsed .bl-nav,.bl-nav-collapsed .bl-nav .elementor-widget-container,.bl-nav-collapsed .bl-nav .hfe-nav-menu{position:static !important}
 .bl-nav-collapsed .bl-nav .hfe-nav-menu__toggle{display:block;visibility:visible;opacity:1}
 .bl-nav-collapsed .bl-nav nav{visibility:hidden;opacity:0;height:0;position:absolute;top:100%;left:0 !important;right:0;width:auto !important;margin-top:0 !important;z-index:9999}
 .bl-nav-collapsed .bl-nav .hfe-active-menu+nav{visibility:visible;opacity:1;height:auto}
 .bl-nav-collapsed .bl-nav ul.hfe-nav-menu{flex-wrap:wrap;visibility:hidden;opacity:0}
 .bl-nav-collapsed .bl-nav .hfe-active-menu+nav ul.hfe-nav-menu{visibility:visible;opacity:1}
 .bl-nav-collapsed .bl-nav ul.hfe-nav-menu,.bl-nav-collapsed .bl-nav li.menu-item{width:100%}
 .bl-nav-collapsed .bl-nav .menu-item a.hfe-menu-item{padding:14px 20px !important;font-size:16px !important}
}
