.directory-toggle { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 0; border: 0; background: none; color: #365b73; font-size: 12px; white-space: nowrap; }
.works-toolbar { position: sticky; top: 82px; z-index: 6; min-height: 44px; background: #f5fbfef5; }
.is-store-view .gallery-toolbar,.is-brand-view .gallery-toolbar { top: 132px; }
.is-brand-view .scroll-index { top: 212px; }
.is-brand-view .brand-chapter { scroll-margin-top: 212px; }
.directory-toggle svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.25; stroke-linecap: round; }
.directory-toggle:hover,.directory-toggle[aria-expanded="true"] { color: #a43e75; }
.header-right a .contact-label { margin-left: 0; }
.directory-dialog { position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; border: 0; padding: 0; background: transparent; color: #365b73; }
.directory-dialog::backdrop { background: #365b731a; }
.directory-sheet { position: absolute; top: 94px; right: 32px; width: min(420px,calc(100vw - 64px)); max-height: calc(100svh - 120px); overflow-y: auto; overscroll-behavior: contain; border: 1px solid #b4daeb; border-radius: 6px; background: #f8fcff; box-shadow: 0 12px 45px #365b7314; padding: 26px; }
.directory-sheet>header { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 24px; border-bottom: 1px solid #cae5f0; }
.directory-sheet header p { font-size: 9px; color: #6b8da0; margin-bottom: 9px; }
.directory-sheet h2 { font: 25px "Songti SC",serif; color: #a43e75; }
#closeDirectory { flex-shrink: 0; width: 44px; height: 44px; border: 0; background: none; font: 26px Georgia,serif; color: #a43e75; }
.directory-sheet nav { display: grid; padding-top: 8px; }
.directory-sheet nav>button,.directory-graphic>button { width: 100%; min-height: 64px; padding: 14px 0; border: 0; border-bottom: 1px solid #d8eaf3; background: none; display: flex; align-items: center; gap: 18px; text-align: left; font: 18px "Songti SC",serif; }
.directory-sheet nav>button>span,.directory-graphic>button>span { font: 12px Georgia,serif; color: #a43e75; }
.directory-sheet button b { margin-left: auto; font: 17px Georgia,serif; }
.directory-sheet button small { font: 10px Arial,sans-serif; color: #7e93a2; }
.directory-subitems { display: grid; margin: 8px 0 12px 34px; }
.directory-subitems button { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; min-height: 44px; background: none; border: 0; color: #52778d; font-size: 13px; text-align: left; }
.directory-sheet button:hover,.directory-sheet button[aria-current="page"] { color: #a43e75; }
@media(max-width:820px) {
  .works-toolbar { top: 78px; }
  .works-toolbar>span { max-width: 58%; text-align: right; line-height: 1.6; }
  .is-store-view .gallery-toolbar,.is-brand-view .gallery-toolbar { top: 126px; }
  .is-brand-view .scroll-index { top: 210px; }
  .is-brand-view .brand-chapter { scroll-margin-top: 266px; }
  .directory-toggle { justify-content: center; width: 44px; }
  .directory-toggle>span { display: none; }
  .directory-sheet { right: 18px; top: 82px; width: calc(100vw - 36px); max-width: 420px; max-height: calc(100svh - 105px); padding: 22px; }
  .header-right>a { width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 0; }
  .header-right a .contact-label { display: none; }
  .header-right a span { margin-left: 0; }
}
