/* Big Party Kit shared breadcrumbs and Astra menu polish. */
.bpk-breadcrumbs{width:min(1740px,calc(100vw - 28px));margin:14px auto 12px;padding:0 6px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:#657086;font:600 13px/1.5 Montserrat,Arial,sans-serif}
.bpk-breadcrumbs a{color:#173365;text-decoration:none;border-bottom:1px solid transparent}
.bpk-breadcrumbs a:hover,.bpk-breadcrumbs a:focus-visible{color:#b48731;border-bottom-color:#b48731}
.bpk-breadcrumbs [aria-current="page"]{color:#657086}
@media(max-width:700px){.bpk-breadcrumbs{font-size:12px;margin-top:10px}}


/* 0.7.8.97 — Big Party Kit menu polish.
   Keep the WordPress/Astra menu structure, but make the Birthday Invitations
   hierarchy visually lighter and consistent with the cream/navy/gold system. */

/* Desktop submenu: compact premium popover, no heavy default treatment. */
@media (min-width: 922px) {
  .main-header-menu .menu-item-has-children > .sub-menu,
  .ast-builder-menu-1 .sub-menu {
    min-width: 250px !important;
    padding: 8px !important;
    border: 1px solid #ead8b4 !important;
    border-radius: 14px !important;
    background: #fffdfa !important;
    box-shadow: 0 14px 34px rgba(17,35,72,.12) !important;
  }
  .main-header-menu .sub-menu .menu-link,
  .ast-builder-menu-1 .sub-menu .menu-link {
    min-height: 42px !important;
    padding: 10px 13px !important;
    border-radius: 9px !important;
    color: #173365 !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
  }
  .main-header-menu .sub-menu .menu-link:hover,
  .main-header-menu .sub-menu .menu-link:focus-visible,
  .ast-builder-menu-1 .sub-menu .menu-link:hover,
  .ast-builder-menu-1 .sub-menu .menu-link:focus-visible {
    background: #fbf5e9 !important;
    color: #173365 !important;
  }
}

/* Mobile off-canvas: a clean vertical navigation panel, not an admin-looking accordion. */
@media (max-width: 921px) {
  .ast-mobile-popup-drawer .ast-mobile-popup-inner,
  .ast-header-break-point .main-header-menu,
  .ast-builder-menu-mobile .main-navigation,
  .ast-builder-menu-mobile .main-header-menu {
    background: #fffdfa !important;
  }

  .ast-mobile-popup-drawer .ast-mobile-popup-content,
  .ast-builder-menu-mobile .main-navigation {
    padding: 8px 0 18px !important;
  }

  .ast-header-break-point .main-header-menu .menu-item,
  .ast-builder-menu-mobile .main-header-menu .menu-item {
    border: 0 !important;
  }

  .ast-header-break-point .main-header-menu .menu-link,
  .ast-builder-menu-mobile .main-header-menu .menu-link {
    min-height: 50px !important;
    padding: 13px 22px !important;
    border: 0 !important;
    border-bottom: 1px solid #f0e7d8 !important;
    background: transparent !important;
    color: #173365 !important;
    font-size: 16px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
  }

  /* Parent row is distinguished only by weight and a warm hairline, not a blue slab. */
  .ast-header-break-point .main-header-menu > .menu-item-has-children > .menu-link,
  .ast-builder-menu-mobile .main-header-menu > .menu-item-has-children > .menu-link {
    color: #173365 !important;
    background: #fffaf1 !important;
    font-weight: 800 !important;
    border-top: 1px solid #ead8b4 !important;
    border-bottom: 1px solid #ead8b4 !important;
  }

  /* Sub-items read as one quiet group. */
  .ast-header-break-point .main-header-menu .sub-menu,
  .ast-builder-menu-mobile .main-header-menu .sub-menu {
    margin: 0 !important;
    padding: 4px 0 7px !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  .ast-header-break-point .main-header-menu .sub-menu .menu-link,
  .ast-builder-menu-mobile .main-header-menu .sub-menu .menu-link {
    min-height: 46px !important;
    padding: 11px 22px 11px 36px !important;
    background: #fff !important;
    color: #273650 !important;
    font-size: 15px !important;
    font-weight: 550 !important;
    border-bottom: 1px solid #f3eee5 !important;
  }

  /* Make Astra's expand button feel like a small chevron control rather than a huge box. */
  .ast-header-break-point .main-header-menu .ast-menu-toggle,
  .ast-builder-menu-mobile .main-header-menu .ast-menu-toggle {
    top: 7px !important;
    right: 12px !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #173365 !important;
    box-shadow: none !important;
  }
  .ast-header-break-point .main-header-menu .ast-menu-toggle:hover,
  .ast-header-break-point .main-header-menu .ast-menu-toggle:focus-visible,
  .ast-builder-menu-mobile .main-header-menu .ast-menu-toggle:hover,
  .ast-builder-menu-mobile .main-header-menu .ast-menu-toggle:focus-visible {
    background: #f7eedf !important;
    outline: none !important;
  }

  /* Remove accidental blue active-row slab while keeping a subtle active state. */
  .ast-header-break-point .main-header-menu .current-menu-item > .menu-link,
  .ast-header-break-point .main-header-menu .current-menu-ancestor > .menu-link,
  .ast-builder-menu-mobile .main-header-menu .current-menu-item > .menu-link,
  .ast-builder-menu-mobile .main-header-menu .current-menu-ancestor > .menu-link {
    background: #fff8eb !important;
    color: #173365 !important;
  }
}


/* 0.7.8.100 — universal Astra mobile submenu-toggle alignment.
   Keep the chevron centered in a predictable 48x48 touch target across phones. */
@media (max-width: 921px) {
  .ast-header-break-point .main-header-menu .menu-item-has-children,
  .ast-builder-menu-mobile .main-header-menu .menu-item-has-children,
  .ast-mobile-popup-drawer .main-header-menu .menu-item-has-children {
    position: relative !important;
  }

  .ast-header-break-point .main-header-menu .menu-item-has-children > .ast-menu-toggle,
  .ast-builder-menu-mobile .main-header-menu .menu-item-has-children > .ast-menu-toggle,
  .ast-mobile-popup-drawer .main-header-menu .menu-item-has-children > .ast-menu-toggle {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    right: 16px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    line-height: 1 !important;
    z-index: 5 !important;
  }

  .ast-header-break-point .main-header-menu .menu-item-has-children > .ast-menu-toggle svg,
  .ast-builder-menu-mobile .main-header-menu .menu-item-has-children > .ast-menu-toggle svg,
  .ast-mobile-popup-drawer .main-header-menu .menu-item-has-children > .ast-menu-toggle svg {
    display: block !important;
    margin: 0 !important;
  }
}
