@media (max-width: 767px) {
  #header.twmm-mobile-ready #menu-icon,
  #header.twmm-mobile-ready #block_top_menu,
  #header.twmm-mobile-ready #mobile_top_menu_wrapper,
  #header.twmm-mobile-ready .twmm-mobile-panel[hidden],
  #header.twmm-mobile-ready .twmm-mobile-list[hidden] { display: none !important; }

  #header .twmm-mobile-trigger,
  #header .twmm-mobile-close,
  #header .twmm-mobile-branch,
  #header .twmm-mobile-search-submit {
    box-sizing: border-box; min-height: 44px; font: inherit; cursor: pointer; touch-action: manipulation;
  }
  #header .twmm-mobile-trigger {
    float: left; display: inline-flex; align-items: center; gap: .42rem;
    margin: 3px .45rem 3px 0; padding: 0 .65rem;
    border: 1px solid #e3d9e2; border-radius: .55rem; background: #fff;
    color: #392a48; font-size: .875rem; font-weight: 700; line-height: 1;
  }
  #header .twmm-mobile-trigger[aria-expanded="true"] { background: #f7f0f5; border-color: #bda8b8; }
  .twmm-mobile-symbol {
    display: inline-block; position: relative; width: 15px; height: 12px;
    border-top: 2px solid currentColor; border-bottom: 2px solid currentColor;
  }
  .twmm-mobile-symbol::after { content: ""; position: absolute; left: 0; right: 0; top: 3px; height: 2px; background: currentColor; }
  #header .twmm-mobile-panel {
    clear: both; box-sizing: border-box; max-width: 100%; margin: .3rem 0 .75rem;
    border: 1px solid #e8dfe5; border-radius: .75rem; background: #fff; color: #392c3c; overflow: hidden;
  }
  #header .twmm-mobile-heading {
    display: flex; align-items: center; justify-content: space-between; padding: .15rem .5rem .15rem .95rem;
    background: #f8f4f7; color: #3e3243; text-align: left;
  }
  #header .twmm-mobile-heading strong { font-size: 1rem; }
  #header .twmm-mobile-close {
    border: 0; background: transparent; padding: .45rem .65rem; color: #695065; font-size: .875rem; text-decoration: underline;
  }
  #header .twmm-mobile-list { margin: 0; padding: 0; list-style: none; }
  #header .twmm-mobile-root {
    max-height: max(15rem, 55vh); max-height: max(15rem, 55dvh); overflow-y: auto; overscroll-behavior-y: contain; scroll-padding-block: .3rem;
  }
  #header .twmm-mobile-list > li { display: block; float: none; margin: 0; padding: 0; }
  #header .twmm-mobile-row {
    display: flex; align-items: stretch; border-bottom: 1px solid #eee7ec;
    text-align: left; background: #fff;
  }
  #header .twmm-mobile-link {
    display: flex; align-items: center; box-sizing: border-box; flex: 1; min-width: 0; min-height: 46px;
    padding: .5rem .95rem; color: #352b38; line-height: 1.35; font-weight: 650; overflow-wrap: anywhere;
    text-transform: none; text-decoration: none;
  }
  #header .twmm-mobile-list .twmm-mobile-list {
    border-left: 2px solid #e6d7e0; margin-left: .8rem;
  }
  #header .twmm-mobile-list .twmm-mobile-list .twmm-mobile-link { color: #524653; font-size: .94rem; font-weight: 500; }
  #header .twmm-mobile-models, #header .twmm-mobile-link[aria-current="page"] { color: #843653; background: #fcf5f8; }
  #header .twmm-mobile-branch {
    display: inline-grid; place-items: center; position: relative; flex: 0 0 48px;
    border: 0; border-left: 1px solid #eee7ec; background: transparent; color: #6d4e67;
  }
  .twmm-mobile-branch::before, .twmm-mobile-branch::after {
    content: ""; position: absolute; display: block; width: 12px; height: 2px; background: currentColor;
  }
  .twmm-mobile-branch::after { transform: rotate(90deg); }
  .twmm-mobile-branch[aria-expanded="true"]::after { display: none; }
  #header .twmm-mobile-panel .js-top-menu-bottom { padding: .2rem .95rem; background: #faf8fa; font-size: .875rem; text-align: left; }
  #header .twmm-mobile-panel .js-top-menu-bottom select { min-height: 44px; max-width: 100%; font-size: 16px; }
  #header .twmm-mobile-panel .js-top-menu-bottom a { color: #5a4058; }
  #header.twmm-mobile-ready #searchbox-mobile.twmm-mobile-search p {
    display: flex; align-items: stretch; gap: .4rem; margin: 0; padding: .3rem 0;
  }
  #header.twmm-mobile-ready #searchbox-mobile.twmm-mobile-search p::after { display: none; }
  #header.twmm-mobile-ready #searchbox-mobile.twmm-mobile-search input[name="search_query"] {
    box-sizing: border-box; flex: 1; min-width: 0; width: auto; min-height: 44px; margin: 0;
    padding: .55rem .78rem; border: 1px solid #d6c9d2; border-radius: .5rem; font-size: 16px;
  }
  #header .twmm-mobile-search-submit {
    flex: 0 0 auto; margin: 0; padding: 0 .85rem;
    border: 1px solid #5a4058; border-radius: .5rem; background: #5a4058; color: #fff; font-size: .875rem; font-weight: 650;
  }
  #header .twmm-mobile-trigger:focus-visible,
  #header .twmm-mobile-panel :focus-visible,
  #header .twmm-mobile-search :focus-visible { outline: 2px solid #843653; outline-offset: -3px; }
}
