@charset "UTF-8";
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: #100d0e; }
body { margin: 0; color: #fff; font-family: Arial, Helvetica, sans-serif; }
img { display: block; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.skip-link { position: fixed; left: 12px; top: -80px; z-index: 100; padding: 12px; background: #181415; color: #fff; }
.skip-link:focus { top: 12px; }
.site-header { position: absolute; z-index: 5; top: 1.055vw; left: 1.758vw; width: 11.133vw; }
.site-header img { width: 100%; height: auto; }
.panel { position: relative; width: 100%; overflow: hidden; background-position: center top; background-repeat: no-repeat; background-size: 100% 100%; container-type: inline-size; }
.panel-0 { background-image: url('../images/bg_header.jpg'); }
.panel-1 { background-image: url('../images/bg_1.jpg'); }
.panel-2 { background-image: url('../images/bg_2.jpg'); }
.panel-3 { background-image: url('../images/bg_3.jpg'); }
.panel-4 { background-image: url('../images/bg_4.jpg'); }
.panel-5 { background-image: url('../images/bg_5.jpg'); }
.art { position: absolute; pointer-events: none; }
.solo-title { position: absolute; top: 7.879%; width: 100%; text-align: center; font-family: Georgia, 'Times New Roman', serif; font-variant: small-caps; color: #d5bd84; text-shadow: 0 0 12px #3b3419, 0 2px 2px #401210; }
.solo-title div { font-size: 4.453125cqw; line-height: 1; }
.solo-title p { margin: 1.45cqw 0 0; font-size: 2.578125cqw; line-height: 1; color: #c8aaa1; }
.update-nav { position: fixed; z-index: 10; left: 0; top: 50%; transform: translateY(-50%); width: 19.609375vw; height: 18.828125vw; background: url('../images/nav_bg.png') left top / 100% 100% no-repeat; }
.update-nav ul { position: absolute; inset: 8.3% 0 0 11.16%; padding: 0; margin: 0; list-style: none; }
.nav-item { position: absolute; display: block; width: 15.9vw; height: 2.3vw; background-image: url('../images/nav_spr.png'); background-repeat: no-repeat; background-size: 35.3515625vw 15.5078125vw; }
.nav-item span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.nav-1 { top: 0; background-position: 0 0; }
.nav-2 { top: 3.5546875vw; background-position: 0 -3.5546875vw; }
.nav-3 { top: 6.171875vw; background-position: 0 -6.171875vw; }
.nav-4 { top: 9.921875vw; background-position: 0 -9.921875vw; }
.nav-5 { top: 13.5546875vw; background-position: 0 -13.5546875vw; }
.nav-item:hover, .nav-item[aria-current="location"] { background-position-x: -19.453125vw; }
a:focus-visible { outline: 2px solid #edce83; outline-offset: 4px; }
.mobile-copy { display: none; }
/* Desktop uses a centered, fixed-size composition; resizing reveals its sides. */
@media (min-width: 701px) {
  main { overflow: clip; }
  .panel { width: 1920px; left: 50%; margin-left: -960px; }
  .site-header { top: 20px; left: 34px; width: 214px; }
  .update-nav { width: 251px; height: 241px; }
  .nav-item { width: 204px; height: 30px; background-size: 452.5px 198.5px; }
  .nav-1 { top: 0; background-position: 0 0; }
  .nav-2 { top: 45.5px; background-position: 0 -45.5px; }
  .nav-3 { top: 79px; background-position: 0 -79px; }
  .nav-4 { top: 127px; background-position: 0 -127px; }
  .nav-5 { top: 173.5px; background-position: 0 -173.5px; }
  .nav-item:hover, .nav-item[aria-current="location"] { background-position-x: -249px; }
}
@media (max-width: 700px) {
  .mobile-copy { display: block; padding: 16px 20px; background: #181315; border-bottom: 1px solid #594331; font-size: 16px; line-height: 1.6; }
  .mobile-copy summary { color: #edd0a1; cursor: pointer; }
  .mobile-copy p { color: #eee7dd; }
  .site-header { width: 23vw; top: 12px; left: 12px; }
  .update-nav { top: auto; bottom: 0; width: 100%; height: auto; transform: none; background: #171416f5; border-top: 1px solid #806442; }
  .update-nav ul { position: static; display: flex; }
  .update-nav li { flex: 1; min-width: 0; }
  .nav-item { position: static; width: auto; height: 62px; display: flex; align-items: center; justify-content: center; padding: 5px; background: none; color: #c8bba2; text-decoration: none; font-size: 10px; line-height: 1.3; text-align: center; }
  .nav-item span { position: static; width: auto; height: auto; overflow: visible; clip-path: none; }
  .nav-item:hover, .nav-item[aria-current="location"] { color: #ffe0a0; background: #33271e; }
  body { padding-bottom: 62px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
