/* One framed menu, with the same black and gold as the adult entry. */
html.db-menu-open,html.db-menu-open body{overflow:hidden}
body#topo:not(.canva-cover-visible):not(.age-check-pending) .nav-shell.signature-shell{position:fixed;inset:0 0 auto}
html.signature-menu-open body#topo .nav-shell.signature-shell{z-index:120}
body#topo #menu-overlay,
body#topo .signature-shell #nav{
  position:fixed;inset:0;z-index:120;width:100%;height:100dvh;max-height:none;
  margin:0;padding:16px;overflow:hidden;background:rgba(8,8,8,.97);
  align-items:center;justify-content:center;box-sizing:border-box;
}
body#topo #menu-overlay{display:flex}
body#topo #menu-overlay[hidden]{display:none!important}
body#topo .signature-shell #nav.open{display:flex}
body#topo :is(#nav,#menu-overlay) .db-menu-panel{
  position:relative;isolation:isolate;display:flex;flex-direction:column;gap:0;
  width:min(100%,480px);max-height:calc(100dvh - 32px);min-height:0;
  margin:auto;padding:24px;border:0;border-radius:0;background:#080808;
  box-shadow:none;overflow:hidden;color:#ece6d9;font-family:'DM Sans',Arial,sans-serif;
}
body#topo .db-menu-frame{position:absolute;inset:0;width:100%;height:100%;z-index:-1;overflow:visible;pointer-events:none}
body#topo .db-menu-frame path{fill:none;stroke:#b9a078;stroke-width:1;stroke-dasharray:1;stroke-dashoffset:0}
body#topo .db-menu-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px;flex:0 0 auto}
body#topo .db-menu-heading h2{margin:0!important;color:#b9a078;font:600 23px/1.2 'Playfair Display',Georgia,serif;letter-spacing:0}
body#topo .db-menu-close{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:8px;border:0;background:transparent;color:#b9a078;font:400 28px/1 Arial,sans-serif;cursor:pointer}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-links{
  flex:1 1 auto;min-height:0;width:100%;margin:0;padding:0;overflow:auto;overscroll-behavior:contain;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-eyebrow{display:none}
body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(.signature-nav-direct,.signature-nav-group>summary,.signature-nav-children>a){
  position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;
  width:100%;min-height:46px;margin:0;padding:10px 9px;border:0;border-radius:0;
  background:transparent;color:#ece6d9;font:400 16px/1.4 'DM Sans',Arial,sans-serif;
  white-space:normal;text-align:left;text-decoration:none;list-style:none;cursor:pointer;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(.signature-nav-direct,.signature-nav-group>summary,.signature-nav-children>a)::before{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:rgba(185,160,120,.3);transform-origin:left center;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(.signature-nav-direct,.signature-nav-children>a)::after{
  content:"↗";display:grid;place-items:center;flex:0 0 23px;width:23px;height:23px;
  border:1px solid #b9a078;border-radius:50%;color:#b9a078;font-size:13px;line-height:1;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-group{margin:0;padding:0;border:0;background:transparent}
body#topo :is(#nav,#menu-overlay) .db-menu-panel summary::-webkit-details-marker{display:none}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-symbol{
  display:block;flex:0 0 9px;width:9px;height:9px;margin-right:8px;border:solid #b9a078;border-width:0 1px 1px 0;transform:translateY(-2px) rotate(45deg);
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-group[open] .signature-nav-symbol{transform:translateY(2px) rotate(225deg)}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-children{position:relative;margin:0;padding:3px 0 5px 14px;background:#0e0d0b}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-children::before{display:none}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-children>a{font-size:14px;min-height:44px}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-actions{
  flex:0 0 auto;width:100%;margin:0;padding:16px 0 0;border:0;background:transparent;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-cta{
  display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;
  padding:12px 14px;border:1px solid #b9a078;border-radius:0;background:transparent;
  color:#b9a078;font:600 15px/1.4 'DM Sans',Arial,sans-serif;text-decoration:none;cursor:pointer;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(.panel-replay,.signature-nav-replay){
  display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;
  margin:6px 0 0;padding:10px;border:0;background:transparent;color:#b9a078;
  font:400 12px/1.4 'DM Sans',Arial,sans-serif;text-decoration:underline;text-underline-offset:5px;cursor:pointer;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel [hidden]{display:none!important}
body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(a,summary,button):focus-visible{outline:1px solid #eadbc0;outline-offset:-3px}
body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(a,summary):hover{background:#18150f}

/* Reveal follows the contour; reverse motion leaves the selected option lit. */
.db-menu-panel[data-menu-phase=opening] .db-menu-frame path{animation:db-menu-draw 850ms linear both}
.db-menu-panel[data-menu-phase=opening] :is(.signature-nav-links,.signature-nav-actions,.db-menu-heading){animation:db-menu-reveal 400ms ease 350ms both}
body#topo :is(#nav,#menu-overlay) .db-menu-panel[data-menu-phase=choosing] .is-selected{
  background:#b9a078;color:#080808;border-color:#b9a078;transition:none;
}
body#topo :is(#nav,#menu-overlay) .db-menu-panel[data-menu-phase=choosing] .is-selected::after{border-color:#080808;color:#080808}
.db-menu-panel:is([data-menu-phase=choosing],[data-menu-phase=closing]){pointer-events:none}
body#topo .db-menu-panel[data-menu-phase=choosing] .db-menu-frame path{
  stroke-dashoffset:var(--menu-current-dash,0);animation:db-menu-erase 650ms linear 180ms forwards;
}
body#topo .db-menu-panel[data-menu-phase=closing] .db-menu-frame path{
  stroke-dashoffset:var(--menu-current-dash,0);animation:db-menu-erase 600ms linear forwards;
}
.db-menu-panel[data-menu-phase=choosing] :is(.signature-nav-links a,.signature-nav-links summary,.signature-nav-actions>a,.signature-nav-actions>button,.db-menu-heading):not(.is-selected),
.db-menu-panel[data-menu-phase=closing] :is(.signature-nav-links,.signature-nav-actions,.db-menu-heading){animation:db-menu-retreat 350ms ease forwards}
.db-menu-panel[data-menu-phase=choosing] :is(a,summary):not(.is-selected)::before{animation:db-menu-line-off 400ms linear forwards}
.db-menu-panel[data-menu-phase=choosing] .is-selected{animation:db-menu-selected-off 180ms ease 850ms forwards}
@keyframes db-menu-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes db-menu-erase{to{stroke-dashoffset:1}}
@keyframes db-menu-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@keyframes db-menu-retreat{to{opacity:0;transform:translateY(-4px)}}
@keyframes db-menu-line-off{to{transform:scaleX(0)}}
@keyframes db-menu-selected-off{to{opacity:0}}
@media(max-height:600px){
  body#topo :is(#nav,#menu-overlay) .db-menu-panel{padding:16px 20px}
  body#topo .db-menu-heading{padding-bottom:5px}
  body#topo :is(#nav,#menu-overlay) .db-menu-panel :is(.signature-nav-direct,.signature-nav-group>summary){min-height:44px;padding-block:8px}
  body#topo :is(#nav,#menu-overlay) .db-menu-panel .signature-nav-actions{padding-top:10px}
}
@media(prefers-reduced-motion:reduce){
  .db-menu-panel *{animation:none!important;transition:none!important}
  .db-menu-panel .db-menu-frame path{stroke-dashoffset:0!important}
}
