/* Desktop /menu containment repair — keep category rail inside the centered site frame */
@media (min-width:901px){
  body[data-page="menu"]:not(.ipad-menu) .menu-browser>.wrap{overflow:visible!important}
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-layout{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;align-items:start!important;width:100%!important;min-width:0!important;gap:0!important}
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-menu-layout{grid-template-columns:54px minmax(0,1fr)!important}
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-content{width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail,
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed{position:sticky!important;z-index:35!important;top:146px!important;left:auto!important;right:auto!important;transform:none!important;width:100%!important;max-width:none!important;height:calc(100dvh - 146px)!important;margin:0!important;align-self:start!important;border-radius:0!important;box-shadow:10px 0 28px rgba(18,60,78,.10)!important}
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed .dm-rail-panel{display:none!important}
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed .dm-rail-toggle{position:static!important;width:54px!important;height:54px!important;background:linear-gradient(135deg,#3f88a8,#8385b6)!important;color:#fff!important}
  body[data-page="menu"]:not(.ipad-menu) .dm-v22-backdrop{display:none!important}
  body[data-page="menu"]:not(.ipad-menu).menu-rail-open .site-header,
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .site-header{padding-left:0!important}
}

/* Main website mobile menu section-header overlap fix v3 */
@media (max-width:767px){
  body[data-page="menu"]:not(.ipad-menu) .dm-section-head{
    position:static!important;
    top:auto!important;
    z-index:auto!important;
  }
}

/* MAIN SITE MENU UX V4 — non-overlapping headings + persistent drawer + unified settings gear */
body[data-page="menu"]:not(.ipad-menu) .dm-section-head{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
}
body[data-page="menu"]:not(.ipad-menu) .dm-section-block{
  scroll-margin-top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h) + 14px)!important;
}
body[data-page="menu"] .dm-simple-controls{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
}
body[data-page="menu"] .dm-simple-clear,
body[data-page="menu"] .dm-text-control-wrap,
body[data-page="menu"] .dm-theme-switch,
body[data-page="menu"] .dm-print-simple{
  display:none!important;
}
body[data-page="menu"] .dm-settings-wrap{
  position:relative!important;
  display:block!important;
}
body[data-page="menu"] .dm-settings-button{
  width:44px!important;
  min-width:44px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.68)!important;
  border-radius:11px!important;
  background:rgba(16,65,88,.56)!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  font:700 1.35rem/1 Arial,sans-serif!important;
  cursor:pointer!important;
  box-shadow:0 6px 16px rgba(7,40,55,.14)!important;
  transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
body[data-page="menu"] .dm-settings-button:hover,
body[data-page="menu"] .dm-settings-button[aria-expanded="true"]{
  background:#fff!important;
  color:#174f6b!important;
  transform:translateY(-1px)!important;
}
body[data-page="menu"] .dm-settings-popover{
  position:absolute!important;
  right:0!important;
  top:calc(100% + 10px)!important;
  width:300px!important;
  padding:10px!important;
  border:1px solid rgba(19,79,107,.18)!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 22px 55px rgba(5,37,51,.28)!important;
  z-index:31000!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(-7px)!important;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;
}
body[data-page="menu"] .dm-settings-popover.open{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translateY(0)!important;
}
body[data-page="menu"] .dm-settings-head{
  min-height:40px!important;
  padding:2px 4px 8px 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  color:#174f6b!important;
  font-size:.68rem!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  border-bottom:1px solid #dce7eb!important;
}
body[data-page="menu"] #menu-settings-close{
  width:34px!important;
  height:34px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#edf4f7!important;
  color:#174f6b!important;
  font-size:1.25rem!important;
  line-height:1!important;
  cursor:pointer!important;
}
body[data-page="menu"] .dm-settings-section{
  padding:12px 8px 11px!important;
  border-bottom:1px solid #e1e9ed!important;
}
body[data-page="menu"] .dm-settings-label{
  display:block!important;
  margin-bottom:8px!important;
  color:#58717d!important;
  font-size:.62rem!important;
  font-weight:900!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
body[data-page="menu"] .dm-settings-zoom{
  display:grid!important;
  grid-template-columns:44px 1fr 44px!important;
  gap:8px!important;
  align-items:center!important;
}
body[data-page="menu"] .dm-settings-zoom button{
  width:44px!important;
  height:40px!important;
  border:1px solid #bed3dd!important;
  border-radius:10px!important;
  background:#eef7fa!important;
  color:#174f6b!important;
  font:900 1.35rem/1 Arial,sans-serif!important;
  cursor:pointer!important;
}
body[data-page="menu"] .dm-settings-zoom button:hover:not(:disabled){
  background:#174f6b!important;
  color:#fff!important;
}
body[data-page="menu"] .dm-settings-zoom button:disabled{
  opacity:.38!important;
  cursor:not-allowed!important;
}
body[data-page="menu"] #menu-settings-zoom-value{
  min-width:0!important;
  text-align:center!important;
  color:#174f6b!important;
  font-size:.95rem!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
body[data-page="menu"] .dm-settings-row{
  width:100%!important;
  min-height:58px!important;
  padding:9px 10px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  border:0!important;
  border-bottom:1px solid #e1e9ed!important;
  background:transparent!important;
  color:#174f6b!important;
  text-align:left!important;
  cursor:pointer!important;
}
body[data-page="menu"] .dm-settings-row:last-child{
  border-bottom:0!important;
}
body[data-page="menu"] .dm-settings-row:hover{
  background:#eef7fa!important;
  border-radius:10px!important;
}
body[data-page="menu"] .dm-settings-row:disabled{
  opacity:.45!important;
  cursor:wait!important;
}
body[data-page="menu"] .dm-settings-row-icon{
  width:36px!important;
  height:36px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:10px!important;
  background:linear-gradient(135deg,#dff0f5,#e6e5f4)!important;
  color:#174f6b!important;
  font-size:1.05rem!important;
}
body[data-page="menu"] .dm-settings-row strong{
  display:block!important;
  color:#174f6b!important;
  font-size:.76rem!important;
  line-height:1.15!important;
}
body[data-page="menu"] .dm-settings-row small{
  display:block!important;
  margin-top:3px!important;
  color:#708590!important;
  font-size:.62rem!important;
  line-height:1.25!important;
}
body[data-page="menu"].menu-dark .dm-settings-popover{
  background:#10191f!important;
  border-color:#334a55!important;
}
body[data-page="menu"].menu-dark .dm-settings-head,
body[data-page="menu"].menu-dark #menu-settings-zoom-value,
body[data-page="menu"].menu-dark .dm-settings-row,
body[data-page="menu"].menu-dark .dm-settings-row strong{
  color:#e5f1f5!important;
}
body[data-page="menu"].menu-dark .dm-settings-head,
body[data-page="menu"].menu-dark .dm-settings-section,
body[data-page="menu"].menu-dark .dm-settings-row{
  border-color:#2e424c!important;
}
body[data-page="menu"].menu-dark .dm-settings-label,
body[data-page="menu"].menu-dark .dm-settings-row small{
  color:#a9bdc6!important;
}
body[data-page="menu"].menu-dark .dm-settings-row:hover{
  background:#18262e!important;
}
body[data-page="menu"].menu-dark #menu-settings-close,
body[data-page="menu"].menu-dark .dm-settings-zoom button{
  background:#18262e!important;
  color:#e5f1f5!important;
  border-color:#3b5360!important;
}
body[data-page="menu"].menu-dark .dm-settings-row-icon{
  background:#1d3039!important;
  color:#d5e9f0!important;
}

@media(max-width:860px){
  body[data-page="menu"] .dm-settings-button{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
  }
  body[data-page="menu"] .dm-settings-popover{
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:12px!important;
    width:auto!important;
    max-height:min(520px,calc(100dvh - 110px))!important;
    overflow:auto!important;
    border-radius:18px!important;
  }
}

/* MAIN MENU UX V5 — compact header, hidden specials, tighter persistent rail, visible gear panel */
body[data-page="menu"]:not(.ipad-menu) .menu-browser{
  padding-top:1.35rem!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-browser-head{
  margin-bottom:.65rem!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-browser-head h2{
  margin:0!important;
  line-height:1!important;
}
body[data-page="menu"]:not(.ipad-menu) #specials-wrap{
  display:none!important;
}
body[data-page="menu"] .dm-settings-popover{
  z-index:50000!important;
}
@media(min-width:901px){
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-layout{
    grid-template-columns:230px minmax(0,1fr)!important;
  }
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-menu-layout{
    grid-template-columns:54px minmax(0,1fr)!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail,
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed{
    top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important;
    height:calc(100dvh - var(--dm-v22-header-offset) - var(--dm-v22-bar-h))!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-rail-head{
    position:sticky!important;
    top:0!important;
    z-index:4!important;
    padding:8px 9px!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-rail-search{
    min-height:40px!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-rail-cat{
    min-height:46px!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:6px!important;
    padding:4px 8px!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-rail-cat-icon{
    width:34px!important;
    height:34px!important;
    font-size:1.2rem!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-rail-cat-label{
    font-size:.6rem!important;
  }
}
/* Menu hero action colors v6 */
body[data-page="menu"] .menu-hero-actions{
  gap:.75rem;
}
body[data-page="menu"] .menu-hero-actions .menu-hero-gift,
body[data-page="menu"] .menu-hero-actions .menu-hero-visit{
  color:#fff!important;
  border-color:rgba(255,255,255,.54)!important;
  box-shadow:0 10px 24px rgba(5,49,67,.18)!important;
}
body[data-page="menu"] .menu-hero-actions .menu-hero-gift{
  background:#aeb6dc!important;
}
body[data-page="menu"] .menu-hero-actions .menu-hero-visit{
  background:#92ceee!important;
}
body[data-page="menu"] .menu-hero-actions .menu-hero-gift:hover,
body[data-page="menu"] .menu-hero-actions .menu-hero-visit:hover{
  color:#fff!important;
  filter:brightness(.96) saturate(1.05);
  transform:translateY(-1px);
}
/* Main menu desktop filter fill v7 */
@media(min-width:901px){
  body[data-page="menu"] #quick-filters{
    gap:7px!important;
    overflow:visible!important;
  }
  body[data-page="menu"] #quick-filters .dm-quick-filter{
    flex:1 1 auto!important;
    min-width:0!important;
    min-height:42px!important;
    padding:.52rem .9rem!important;
    justify-content:center!important;
    font-size:.70rem!important;
    line-height:1!important;
  }
}
/* MENU PAGE TITLE PROTOTYPE V8 — compact nautical/Bangers treatment */
@font-face{
  font-family:'BangersLocal';
  src:url('/assets/fonts/bangers-v25.ttf') format('truetype');
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
body[data-page="menu"]:not(.ipad-menu) .menu-browser{
  padding-top:.8rem!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype{
  position:relative;
  min-height:92px;
  margin:0 0 10px;
  padding:8px 18px;
  display:grid;
  grid-template-columns:120px minmax(0,1fr) 120px;
  align-items:center;
  overflow:hidden;
  border:1px solid rgba(10,70,102,.16);
  border-top:3px solid #149fc4;
  border-bottom:3px solid #d71920;
  border-radius:16px;
  background:
    radial-gradient(circle at 6% 22%,rgba(20,159,196,.16) 0 4px,transparent 5px),
    radial-gradient(circle at 10% 68%,rgba(20,159,196,.11) 0 7px,transparent 8px),
    radial-gradient(circle at 95% 28%,rgba(20,159,196,.14) 0 5px,transparent 6px),
    radial-gradient(circle at 91% 72%,rgba(20,159,196,.09) 0 8px,transparent 9px),
    linear-gradient(180deg,#fff,#faf9f5);
  box-shadow:0 8px 22px rgba(20,72,92,.08);
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:before,
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:after{
  content:"";
  position:absolute;
  left:112px;
  right:112px;
  height:2px;
  background:repeating-linear-gradient(90deg,#1d2529 0 12px,transparent 12px 19px);
  opacity:.12;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:before{top:12px}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:after{bottom:12px}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-copy{
  position:relative;
  z-index:2;
  min-width:0;
  text-align:center;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-kicker{
  display:block;
  margin-bottom:1px;
  color:#0d7890;
  font-size:.56rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype h1{
  margin:0!important;
  font-family:'BangersLocal',Impact,'Arial Narrow',sans-serif!important;
  font-size:clamp(2.9rem,4.4vw,4.35rem)!important;
  font-weight:400!important;
  line-height:.88!important;
  letter-spacing:.035em!important;
  color:#d71920!important;
  text-shadow:2px 2px 0 rgba(10,70,102,.10);
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-ornament{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-ornament-left{justify-content:flex-start}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-ornament-right{justify-content:flex-end}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-porthole{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border:6px solid #82441f;
  border-radius:50%;
  background:#fff;
  box-shadow:
    0 0 0 3px #2a170e,
    inset 0 0 0 3px #c48545,
    0 5px 10px rgba(0,0,0,.12);
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-porthole>span{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#0d7890;
  background:radial-gradient(circle,#eaf8fb 0 60%,#cde8ef 61% 100%);
  font-size:1.35rem;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles{
  width:88px;
  height:54px;
  position:relative;
  display:block;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles i{
  position:absolute;
  display:block;
  border:2px solid #149fc4;
  border-radius:50%;
  background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.9),rgba(20,159,196,.18) 52%,rgba(20,159,196,.34));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles i:nth-child(1){width:18px;height:18px;left:2px;top:24px}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles i:nth-child(2){width:10px;height:10px;left:27px;top:7px}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles i:nth-child(3){width:26px;height:26px;left:35px;top:24px}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles i:nth-child(4){width:13px;height:13px;left:67px;top:8px}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles i:nth-child(5){width:9px;height:9px;left:72px;top:38px}

@media(max-width:700px){
  body[data-page="menu"]:not(.ipad-menu) .menu-browser{padding-top:.55rem!important}
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype{
    min-height:74px;
    grid-template-columns:58px minmax(0,1fr) 58px;
    padding:7px 10px;
    border-radius:12px;
    margin-bottom:8px;
  }
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:before,
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:after{left:58px;right:58px}
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-porthole{
    width:42px;height:42px;border-width:4px
  }
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-porthole>span{
    width:28px;height:28px;font-size:1rem
  }
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-bubbles{width:48px;height:42px;transform:scale(.75);transform-origin:right center}
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-kicker{font-size:.46rem;letter-spacing:.10em}
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype h1{font-size:2.75rem!important}
}
/* MENU PAGE TITLE REFINEMENT V9 — integrated, restrained, nautical */
body[data-page="menu"]:not(.ipad-menu) .menu-browser{
  padding-top:.5rem!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype{
  min-height:0!important;
  margin:0 0 8px!important;
  padding:4px 0 7px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:before,
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:after{
  content:""!important;
  position:static!important;
  display:block!important;
  flex:1 1 auto!important;
  width:auto!important;
  height:1px!important;
  max-width:180px!important;
  margin:0 14px!important;
  background:linear-gradient(90deg,transparent,rgba(10,70,102,.26))!important;
  opacity:1!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:after{
  background:linear-gradient(90deg,rgba(10,70,102,.26),transparent)!important;
}
body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype h1{
  flex:0 0 auto!important;
  margin:0!important;
  font-family:'BangersLocal',Impact,'Arial Narrow',sans-serif!important;
  font-size:clamp(2.15rem,3vw,2.8rem)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:.045em!important;
  color:#0a4666!important;
  text-shadow:none!important;
}
@media(max-width:700px){
  body[data-page="menu"]:not(.ipad-menu) .menu-browser{padding-top:.35rem!important}
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype{
    min-height:0!important;
    padding:3px 0 6px!important;
    margin-bottom:7px!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:before,
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype:after{
    max-width:70px!important;
    margin:0 9px!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .menu-page-title-prototype h1{
    font-size:2.2rem!important;
  }
}
/* MENU FULL-WIDTH + SHARED FROSTED TITLE V10 */
body[data-page="menu"] .simple-page-title{
  width:100%!important;
  max-width:none!important;
  min-height:58px!important;
  margin:0!important;
  padding:7px 22px 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  background:linear-gradient(90deg,rgba(255,255,255,.76),rgba(242,248,250,.64) 48%,rgba(255,255,255,.76))!important;
  border:0!important;
  border-top:1px solid rgba(255,255,255,.72)!important;
  border-bottom:1px solid rgba(10,70,102,.12)!important;
  border-radius:0!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 4px 16px rgba(10,70,102,.055)!important;
  backdrop-filter:blur(16px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(135%)!important;
}
body[data-page="menu"] .simple-page-title:before,
body[data-page="menu"] .simple-page-title:after{
  content:""!important;
  display:block!important;
  flex:1 1 auto!important;
  width:auto!important;
  max-width:180px!important;
  height:1px!important;
  margin:0!important;
  position:static!important;
  background:linear-gradient(90deg,transparent,rgba(10,70,102,.30))!important;
  opacity:1!important;
}
body[data-page="menu"] .simple-page-title:after{
  background:linear-gradient(90deg,rgba(10,70,102,.30),transparent)!important;
}
body[data-page="menu"] .simple-page-title h1{
  margin:0!important;
  font-family:'BangersLocal',Impact,'Arial Narrow',sans-serif!important;
  font-size:clamp(2.05rem,3vw,2.8rem)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:.05em!important;
  color:#0a4666!important;
  text-shadow:none!important;
}

/* Closed category navigation consumes zero width; open state overlays the menu. */
body[data-page="menu"] .dm-menu-layout,
body[data-page="menu"].menu-rail-open .dm-menu-layout,
body[data-page="menu"]:not(.menu-rail-open) .dm-menu-layout{
  display:block!important;
  grid-template-columns:1fr!important;
  width:100%!important;
  min-width:0!important;
  gap:0!important;
}
body[data-page="menu"] .dm-menu-content,
body[data-page="menu"].menu-rail-open .dm-menu-content,
body[data-page="menu"]:not(.menu-rail-open) .dm-menu-content{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
body[data-page="menu"] .dm-category-rail,
body[data-page="menu"] .dm-category-rail.collapsed{
  position:fixed!important;
  z-index:25000!important;
  top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important;
  left:0!important;
  right:auto!important;
  width:var(--dm-v22-rail-w,260px)!important;
  max-width:min(86vw,320px)!important;
  height:calc(100dvh - var(--dm-v22-header-offset) - var(--dm-v22-bar-h))!important;
  margin:0!important;
  border-radius:0!important;
  align-self:auto!important;
  transform:translateX(0)!important;
  transition:transform .18s ease!important;
  box-shadow:18px 0 42px rgba(0,0,0,.22)!important;
}
body[data-page="menu"] .dm-category-rail.collapsed,
body[data-page="menu"]:not(.menu-rail-open) .dm-category-rail{
  transform:translateX(-105%)!important;
  box-shadow:none!important;
}
body[data-page="menu"] .dm-category-rail .dm-rail-panel,
body[data-page="menu"] .dm-category-rail.collapsed .dm-rail-panel{
  display:flex!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body[data-page="menu"] .dm-category-rail.collapsed .dm-rail-toggle{
  position:static!important;
  width:auto!important;
  height:auto!important;
  background:transparent!important;
}
body[data-page="menu"] .menu-browser>.wrap{
  overflow:visible!important;
}

@media(max-width:700px){
  body[data-page="menu"] .simple-page-title{
    min-height:50px!important;
    padding:5px 14px 6px!important;
    gap:9px!important;
  }
  body[data-page="menu"] .simple-page-title:before,
  body[data-page="menu"] .simple-page-title:after{max-width:64px!important}
  body[data-page="menu"] .simple-page-title h1{font-size:2.05rem!important}
}
/* MENU OVERLAY RAIL FINAL V11 */
@media(min-width:901px){
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-layout,
  body[data-page="menu"]:not(.ipad-menu).menu-rail-open .dm-menu-layout,
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-menu-layout{
    display:block!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    min-width:0!important;
    gap:0!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-content,
  body[data-page="menu"]:not(.ipad-menu).menu-rail-open .dm-menu-content,
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-menu-content{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail,
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed{
    position:fixed!important;
    z-index:25000!important;
    top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important;
    left:0!important;
    right:auto!important;
    width:260px!important;
    max-width:min(86vw,320px)!important;
    height:calc(100dvh - var(--dm-v22-header-offset) - var(--dm-v22-bar-h))!important;
    margin:0!important;
    align-self:auto!important;
    border-radius:0!important;
    transform:translateX(0)!important;
    transition:transform .18s ease!important;
    box-shadow:18px 0 42px rgba(0,0,0,.22)!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed,
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-category-rail{
    transform:translateX(-105%)!important;
    box-shadow:none!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail .dm-rail-panel,
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed .dm-rail-panel{
    display:flex!important;
    visibility:visible!important;
    pointer-events:auto!important;
    width:100%!important;
    height:100%!important;
  }
}
/* MENU RAIL IN-FRAME PUSH LAYOUT V12 */
body[data-page="menu"] .dm-control-deck .dm-toolbar-rail-toggle{
  position:static!important;
  z-index:auto!important;
  flex:0 0 44px!important;
  width:44px!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.62)!important;
  border-radius:999px!important;
  background:#174f6b!important;
  color:#fff!important;
  box-shadow:none!important;
}
body[data-page="menu"] .dm-control-deck .dm-toolbar-rail-toggle .rail-toggle-label{display:none!important}
body[data-page="menu"] .dm-control-deck .dm-toolbar-rail-toggle .rail-toggle-icon{
  font-size:1.25rem!important;
  line-height:1!important;
}
body[data-page="menu"].menu-rail-open .dm-control-deck .dm-toolbar-rail-toggle{
  background:#626694!important;
}
@media(min-width:901px){
  body[data-page="menu"] .dm-menu-layout{
    display:grid!important;
    grid-template-columns:0 minmax(0,1fr)!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    gap:0!important;
    transition:grid-template-columns .22s ease!important;
  }
  body[data-page="menu"].menu-rail-open .dm-menu-layout{
    grid-template-columns:260px minmax(0,1fr)!important;
  }
  body[data-page="menu"] .dm-category-rail,
  body[data-page="menu"] .dm-category-rail.collapsed{
    position:sticky!important;
    z-index:68!important;
    top:calc(var(--dm-sticky-base) + var(--dm-control-h))!important;
    left:auto!important;
    right:auto!important;
    width:0!important;
    max-width:none!important;
    height:calc(100dvh - var(--dm-sticky-base) - var(--dm-control-h))!important;
    margin:0!important;
    overflow:hidden!important;
    transform:none!important;
    opacity:0!important;
    pointer-events:none!important;
    box-shadow:none!important;
    transition:width .22s ease,opacity .16s ease!important;
  }
  body[data-page="menu"].menu-rail-open .dm-category-rail{
    width:260px!important;
    opacity:1!important;
    pointer-events:auto!important;
    border-right:1px solid rgba(47,120,152,.18)!important;
  }
  body[data-page="menu"] .dm-category-rail .dm-rail-panel,
  body[data-page="menu"] .dm-category-rail.collapsed .dm-rail-panel{
    display:flex!important;
    width:260px!important;
    height:100%!important;
    visibility:visible!important;
  }
  body[data-page="menu"] .dm-menu-content,
  body[data-page="menu"].menu-rail-open .dm-menu-content{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  body[data-page="menu"] .menu-browser>.wrap,
  body[data-page="menu"].menu-rail-open .menu-browser>.wrap,
  body[data-page="menu"]:not(.menu-rail-open) .menu-browser>.wrap{
    padding-left:0!important;
    padding-right:0!important;
  }
  body[data-page="menu"] .site-header,
  body[data-page="menu"].menu-rail-open .site-header,
  body[data-page="menu"]:not(.menu-rail-open) .site-header{
    padding-left:0!important;
  }
}
/* MENU RAIL IN-FRAME PUSH OVERRIDE V13 */
@media(min-width:901px){
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-layout,
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-menu-layout{
    display:grid!important;
    grid-template-columns:0 minmax(0,1fr)!important;
    align-items:start!important;
    width:100%!important;
    min-width:0!important;
    gap:0!important;
    transition:grid-template-columns .22s ease!important;
  }
  body[data-page="menu"]:not(.ipad-menu).menu-rail-open .dm-menu-layout{
    display:grid!important;
    grid-template-columns:260px minmax(0,1fr)!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail,
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed{
    position:sticky!important;
    z-index:68!important;
    top:calc(var(--dm-sticky-base) + var(--dm-control-h))!important;
    left:auto!important;
    right:auto!important;
    width:0!important;
    max-width:none!important;
    height:calc(100dvh - var(--dm-sticky-base) - var(--dm-control-h))!important;
    margin:0!important;
    overflow:hidden!important;
    transform:none!important;
    opacity:0!important;
    pointer-events:none!important;
    box-shadow:none!important;
    transition:width .22s ease,opacity .16s ease!important;
    align-self:start!important;
  }
  body[data-page="menu"]:not(.ipad-menu).menu-rail-open .dm-category-rail{
    width:260px!important;
    opacity:1!important;
    pointer-events:auto!important;
    border-right:1px solid rgba(47,120,152,.18)!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail .dm-rail-panel,
  body[data-page="menu"]:not(.ipad-menu) .dm-category-rail.collapsed .dm-rail-panel{
    display:flex!important;
    width:260px!important;
    height:100%!important;
    visibility:visible!important;
  }
  body[data-page="menu"]:not(.ipad-menu) .dm-menu-content,
  body[data-page="menu"]:not(.ipad-menu).menu-rail-open .dm-menu-content,
  body[data-page="menu"]:not(.ipad-menu):not(.menu-rail-open) .dm-menu-content{
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
}
