/* Shared two-level navigation for child-theme headers and the mobile drawer. */
.to-hier-nav { position: relative; z-index: 60; overflow: visible; }
.to-hier-nav .to-hier-list { display: flex; align-items: stretch; justify-content: flex-start; gap: 0; padding: 0; margin: 0; list-style: none; overflow: visible; }
.to-hier-nav .to-hier-list > li { position: relative; list-style: none; display: flex; align-items: center; margin: 0; padding: 0; }
.to-hier-nav .to-hier-list > li > a { display: inline-flex; align-items: center; min-height: 46px; padding: 10px 16px; color: #3c2730; text-decoration: none; font-size: 13px; font-weight: 650; line-height: 1.3; white-space: nowrap; }
.to-hier-nav .to-hier-list > li > a:hover, .to-hier-nav .to-hier-list > li:focus-within > a, .to-hier-nav .to-hier-list > li.is-open > a { color: #8a1c32; }
.to-hier-nav .to-hier-list > li.menu-item-has-children > a { padding-right: 32px; }
.to-hier-nav .menu-item-has-children > .to-hier-toggle { position: absolute; right: 3px; top: 50%; transform: translateY(-50%); display: inline-grid; place-items: center; width: 28px; height: 36px; min-width: 28px; min-height: 36px; padding: 0; margin: 0; border: 0; background: transparent; color: inherit; font-size: 15px; line-height: 1; cursor: pointer; box-shadow: none; }
.to-hier-nav .to-hier-toggle::after { content: '⌄'; transform: translateY(-2px); }
.to-hier-nav .menu-item-has-children:hover > .sub-menu, .to-hier-nav .menu-item-has-children:focus-within > .sub-menu, .to-hier-nav .menu-item-has-children.is-open > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.to-hier-nav .menu-item-has-children.is-dismissed > .sub-menu { opacity: 0; visibility: hidden; pointer-events: none; }
.to-hier-nav .sub-menu { position: absolute; top: 100%; left: 0; z-index: 80; display: block; min-width: 250px; max-width: 330px; max-height: min(70vh, 480px); overflow-y: auto; padding: 8px; margin: 0; background: #fff; border: 1px solid #ebd9da; border-radius: 0 0 12px 12px; list-style: none; box-shadow: 0 16px 35px rgba(51,23,30,.17); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(5px); transition: opacity .15s, transform .15s, visibility .15s; }
.to-hier-nav .sub-menu li { display: block; margin: 0; padding: 0; list-style: none; }
.to-hier-nav .sub-menu a { display: flex; align-items: center; min-height: 42px; width: 100%; padding: 9px 12px; border-radius: 7px; color: #402d32; text-decoration: none; font-size: 12.5px; font-weight: 600; line-height: 1.4; white-space: normal; }
.to-hier-nav .sub-menu a:hover, .to-hier-nav .sub-menu a:focus-visible { color: #75192c; background: #f9edf0; }
.to-hier-nav a:focus-visible, .to-hier-nav .to-hier-toggle:focus-visible, #to-mobile-site-menu .to-hier-toggle:focus-visible { outline: 2px solid #cb5165; outline-offset: -2px; }
/* Home uses a burgundy bar; the other child templates use white headers. */
.to-navbar.to-hier-nav .to-hier-list > li > a, .to-navbar.to-hier-nav .to-hier-toggle { color: #fff; }
.to-navbar.to-hier-nav .to-hier-list > li:hover > a, .to-navbar.to-hier-nav .to-hier-list > li:focus-within > a, .to-navbar.to-hier-nav .to-hier-list > li.is-open > a { background: #5b1221; color: #fff; }
.to-navbar.to-hier-nav .sub-menu a { color: #402d32; }
.to-header-about .to-hier-nav .to-hier-list > li > a { padding-inline: 10px; font-size: 12px; }
.to-header-custom-layer { position: relative; z-index: 61; }
.to-header-main-nav.to-hier-nav .to-hier-list > li > a { padding-inline: 13px; }
@media (min-width: 769px) and (max-width: 1130px) { .to-nav-right-quote, .to-nav-quote, .to-header-script-quote, .to-header-about .to-search-pill-about { display: none !important; } }
/* The blog template previously hid its bar up to 992px, leaving tablets without navigation. */
@media (min-width: 769px) and (max-width: 992px) { .to-main-nav.to-hier-nav { display: block !important; } }
@media (min-width: 769px) and (max-width: 950px) {
  .to-header-about-flex { gap: 8px; }
  .to-logo-about-name { font-size: 16px; }
  .to-header-about .to-hier-nav .to-hier-list > li > a { padding-inline: 6px; font-size: 11px; }
}
@media (max-width: 768px) {
  .to-hier-nav { display: none !important; }
  #to-mobile-site-menu .to-mobile-hier-list, #to-mobile-site-menu .to-mobile-hier-list ul { display: block; padding: 0; margin: 0; list-style: none; }
  #to-mobile-site-menu .to-mobile-hier-list li { position: relative; display: block; list-style: none; margin: 0; }
  #to-mobile-site-menu .to-mobile-hier-list > li > a { padding-right: 50px; }
  #to-mobile-site-menu .to-mobile-hier-list .sub-menu { display: none; padding-left: 12px; background: #f5eeeb; border-radius: 8px; }
  #to-mobile-site-menu .to-mobile-hier-list .is-open > .sub-menu { display: block; }
  #to-mobile-site-menu .to-mobile-hier-list .sub-menu a { padding-left: 16px; font-size: 12px; font-weight: 550; min-height: 44px; }
  #to-mobile-site-menu .to-mobile-hier-list .to-hier-toggle { position: absolute; top: 2px; right: 0; display: grid; place-items: center; width: 44px; min-width: 44px; height: 44px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 6px; box-shadow: none; background: transparent; color: #6a1b29; cursor: pointer; font-size: 19px; }
  #to-mobile-site-menu .to-mobile-hier-list .to-hier-toggle::after { content: '+'; }
  #to-mobile-site-menu .to-mobile-hier-list .is-open > .to-hier-toggle::after { content: '−'; }
}
@media (prefers-reduced-motion: reduce) { .to-hier-nav .sub-menu { transition: none; } }

/* Authorized launch UI corrections; shared menu records remain native. */
.tos-header[data-site-chrome] :is(.tos-brand,.tos-phone,.tos-account,.tos-cart){text-decoration:none}
.tos-header[data-site-chrome] .tos-phone{display:flex;flex-direction:column;align-items:flex-start;gap:0}
.tos-header[data-site-chrome] .tos-phone small{font-size:12px;line-height:1.5;color:#554248}
.tos-header[data-site-chrome] .tos-phone strong{font-size:19px;line-height:1.35;color:#85152b}
.tos-header[data-site-chrome] .tos-menu{gap:0;justify-content:space-between}
.tos-header[data-site-chrome] .tos-menu>li{flex:1 1 auto;justify-content:center;min-width:max-content}
.tos-header[data-site-chrome] .tos-menu>li>a{justify-content:center;flex:1;padding-inline:14px;white-space:nowrap}
/* The submenu toggle previously overlapped its label: reserve its actual 44px target. */
.tos-header[data-site-chrome] .tos-menu>li.menu-item-has-children>a{padding-right:52px}
.tos-header[data-site-chrome] .tos-menu>li:last-child>.sub-menu{left:auto;right:0}
.tos-header[data-site-chrome] .tos-menu>li>.to-hier-toggle{color:#fff}
.tos-header[data-site-chrome] .tos-menu :is(a,button):focus-visible{outline:3px solid #ffd6dc;outline-offset:-3px}
@media(min-width:850px){.toh-page .tos-header[data-site-chrome] .tos-wrap{padding-inline:0;width:calc(100% - 48px)}}
@media(max-width:849px){.tos-header[data-site-chrome] .tos-phone-group{display:none}}

/* Only the shared desktop submenu: retain logo, bar, parent links and drawer geometry. */
@media(min-width:850px){
 .tos-header[data-site-chrome] .tos-menu>li>.sub-menu{box-sizing:border-box;display:block;position:absolute;inset:calc(100% - 1px) auto auto 0;z-index:80;width:304px;min-width:0;max-width:calc(100vw - 32px);max-height:min(65vh,480px);overflow:auto;margin:0;padding:8px;background:#faf7f5;border:1px solid #e5ced2;border-top:3px solid #7a1526;border-radius:0 0 14px 14px;box-shadow:0 14px 30px #38131b24;opacity:0;visibility:hidden;pointer-events:none;transform:none;transition:opacity .12s ease,visibility .12s ease}
 .tos-header[data-site-chrome] .tos-menu>li>.sub-menu li{display:block;margin:0;padding:0;border:0}
 .tos-header[data-site-chrome] .tos-menu>li>.sub-menu a{box-sizing:border-box;display:flex;align-items:center;width:100%;min-height:48px;margin:0;padding:12px 14px;border:0;border-radius:8px;background:transparent;color:#51232e;font:600 14px/1.5 Montserrat,Arial,sans-serif;text-align:left;text-transform:none;letter-spacing:normal;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
 .tos-header[data-site-chrome] .tos-menu>li>.sub-menu a:hover,.tos-header[data-site-chrome] .tos-menu>li>.sub-menu a:focus-visible{background:#f4e4e7;color:#75152a}
 .tos-header[data-site-chrome] .tos-menu>li>.sub-menu a:focus-visible{outline:2px solid #85152b;outline-offset:-3px}
 .tos-header[data-site-chrome] .tos-menu>li.is-open>.sub-menu,.tos-header[data-site-chrome] .tos-menu>li:not([data-to-nav-ready]):hover>.sub-menu,.tos-header[data-site-chrome] .tos-menu>li:not([data-to-nav-ready]):focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:none}
 .tos-header[data-site-chrome] .tos-menu>li.is-dismissed>.sub-menu{opacity:0;visibility:hidden;pointer-events:none}
 .tos-header[data-site-chrome] .tos-menu>li>.to-hier-toggle{width:44px;min-width:44px;height:44px;min-height:44px;border-radius:6px}
 .tos-header[data-site-chrome] .tos-menu>li>.to-hier-toggle:hover,.tos-header[data-site-chrome] .tos-menu>li>.to-hier-toggle:focus-visible{background:#641023}
 .tos-header[data-site-chrome] .tos-menu>li>.to-hier-toggle::after{content:'';width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);margin-top:-4px}
 .tos-header[data-site-chrome] .tos-menu>li.is-open>.to-hier-toggle::after{transform:rotate(225deg);margin-top:4px}
}
@media(prefers-reduced-motion:reduce){.tos-header[data-site-chrome] .tos-menu>li>.sub-menu{transition:none}}

/* Shared state comes from WordPress context, never URL-prefix matching. */
.tos-header[data-site-chrome] .tos-nav{background:#7a1526!important}
.tos-header[data-site-chrome] .tos-menu>li:is(.current-menu-item,.current-menu-parent,.current-menu-ancestor)>a{background:#faf7f5;color:#7a1526!important;box-shadow:inset 0 -3px #7a1526}
.tos-header[data-site-chrome] .tos-menu>li:is(.current-menu-item,.current-menu-parent,.current-menu-ancestor)>.to-hier-toggle{color:#7a1526}
.tos-header[data-site-chrome] .tos-menu>li:is(.current-menu-item,.current-menu-parent,.current-menu-ancestor)>.to-hier-toggle:hover{background:#ead9dc}
.tos-header[data-site-chrome] .tos-menu>li>.sub-menu li.current-menu-item>a{background:#7a1526;color:#fff;box-shadow:inset 3px 0 #7a1526}
.tos-header[data-site-chrome] .tos-menu>li>a:hover{background:#59101d}
.tos-header[data-site-chrome] .tos-menu>li:is(.current-menu-item,.current-menu-parent,.current-menu-ancestor)>a:hover{background:#ead9dc;color:#7a1526!important}
#to-mobile-site-menu li:is(.current-menu-item,.current-menu-parent,.current-menu-ancestor)>a{background:#f0e0e2;color:#7a1526;box-shadow:inset 3px 0 #7a1526;font-weight:700}
.tos-header[data-site-chrome] .tos-menu>li>.sub-menu{scrollbar-width:thin;scrollbar-color:#b88d96 #faf7f5}
