/* Shared header/footer only, including pages without the full site stylesheet. */
body .site-header[data-shared-chrome], body .site-footer[data-shared-chrome] {
  box-sizing: border-box; width: 100%; margin: 0; color: #f7ecf2; background: #100b13;
  font: 16px/1.5 ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
[data-shared-chrome] *, [data-shared-chrome] *::before, [data-shared-chrome] *::after { box-sizing: border-box; }
body .site-header[data-shared-chrome] { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid #f6ccde29; padding: 0; }
body .site-header[data-shared-chrome] > .container {
  position: relative; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between;
  width: min(1180px, calc(100% - 40px)); max-width: none; min-height: 76px; margin: 0 auto; padding: 12px 0; gap: 12px;
}
body .site-header[data-shared-chrome] .logo {
  flex: 0 0 auto; color: #f7ecf2; font-size: 18px; font-weight: 820; letter-spacing: .08em; text-transform: uppercase; text-decoration: none;
}
body .site-header[data-shared-chrome] .nav {
  position: static; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; width: auto; margin: 0; padding: 0; gap: 4px;
  visibility: visible; opacity: 1; transform: none; background: transparent; border: 0; box-shadow: none;
}
body .site-header[data-shared-chrome] .nav > a {
  display: inline-flex; align-items: center; min-height: 44px; padding: 10px 12px; color: #c9aeba; font-size: 14px; line-height: 1.5; text-decoration: none; border-radius: 999px;
}
body .site-header[data-shared-chrome] .nav > a:hover,
body .site-header[data-shared-chrome] .nav > a[aria-current="page"],
body .site-header[data-shared-chrome] .nav > a[aria-current="location"] { color: #f7ecf2; background: #ffffff0e; }
body .site-header[data-shared-chrome] .nav > a.highlight { color: #f7ecf2; border: 1px solid #d2a27c6b; background: #d2a27c14; }
body .site-header[data-shared-chrome] .menu-toggle { display: none; }
body .site-footer[data-shared-chrome] { display: block; padding: 36px 20px 120px; border-top: 1px solid #f6ccde29; text-align: center; }
body .site-footer[data-shared-chrome] > .container { display: grid; width: min(1180px, 100%); margin: 0 auto; padding: 0; gap: 16px; }
body .site-footer[data-shared-chrome] p { margin: 0; max-width: none; font-size: 14px; color: #c9aeba; }
body .site-footer[data-shared-chrome] nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 24px; width: 100%; }
body .site-footer[data-shared-chrome] nav a { display: inline-flex; align-items: center; min-height: 44px; color: #f7ecf2; font-size: 14px; text-decoration: none; }
body .site-footer[data-shared-chrome] nav a:hover { text-decoration: underline; }
[data-shared-chrome] a:focus-visible, [data-shared-chrome] button:focus-visible { outline: 2px solid #d2a27c; outline-offset: 4px; }
@media (max-width: 1000px) {
  body .site-header[data-shared-chrome] > .container { min-height: 68px; }
  body .site-header[data-shared-chrome] .logo { font-size: 16px; }
  body .site-header[data-shared-chrome] .nav { width: 100%; justify-content: flex-start; }
  body .site-header[data-shared-chrome].navigation-ready > .container { flex-wrap: nowrap; }
  body .site-header[data-shared-chrome].navigation-ready .menu-toggle {
    display: inline-grid; place-content: center; gap: 5px; flex: 0 0 44px; width: 44px; height: 44px; margin: 0; padding: 10px;
    color: #f7ecf2; background: #1a111b; border: 1px solid #f6ccde29; border-radius: 10px; cursor: pointer;
  }
  body .site-header[data-shared-chrome] .menu-toggle span { display: block; width: 20px; height: 2px; background: currentColor; }
  body .site-header[data-shared-chrome].navigation-ready .nav {
    display: none; position: absolute; top: 100%; left: 0; right: 0; width: 100%; max-height: calc(100dvh - 80px); overflow-y: auto;
    padding: 8px; background: #1a111b; border: 1px solid #f6ccde29; border-radius: 12px;
  }
  body .site-header[data-shared-chrome].navigation-ready .nav.is-open { display: grid; }
  body .site-header[data-shared-chrome] .nav > a { justify-content: flex-start; }
}
