/* The city guide's section navigation: the same destinations, easier to explore. */
.city-guide .city-toc.city-guide-navigation {
  display: block;
  position: sticky;
  top: 12px;
  z-index: 8;
  margin: 32px 0 0;
  padding: 14px 14px 10px;
  overflow: visible;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 8px 30px #10233f0b, 0 2px 6px #10233f04;
}
.city-guide-nav-heading {display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 0 6px 10px;}
.city-guide-nav-heading span:first-child {font-size: 13px; font-weight: 750; color: #183549;}
.city-guide-nav-heading span:last-child {font-size: 11px; color: #657589;}
.city-guide-nav-links {display: grid; grid-template-columns: repeat(9, minmax(0, 1fr)); gap: 5px;}
.city-guide-navigation [data-section="sights"] {--nav-color: #a85b00; --nav-tint: #fff1cf; --nav-strong: #ed9a13;}
.city-guide-navigation [data-section="museums"] {--nav-color: #6150c9; --nav-tint: #f0eaff; --nav-strong: #8c6cef;}
.city-guide-navigation [data-section="outdoors"] {--nav-color: #087b69; --nav-tint: #ddf8eb; --nav-strong: #0bae81;}
.city-guide-navigation [data-section="family"] {--nav-color: #176cc0; --nav-tint: #e3f2ff; --nav-strong: #349cf4;}
.city-guide-navigation [data-section="couple"] {--nav-color: #b82969; --nav-tint: #ffe6ef; --nav-strong: #ef5796;}
.city-guide-navigation [data-section="children"] {--nav-color: #b04e12; --nav-tint: #ffeddc; --nav-strong: #f78a38;}
.city-guide-navigation [data-section="history"] {--nav-color: #525bc0; --nav-tint: #ebedff; --nav-strong: #7d86f1;}
.city-guide-navigation [data-section="practical"] {--nav-color: #087e93; --nav-tint: #def7fc; --nav-strong: #10aec6;}
.city-guide-navigation [data-section="contacts"] {--nav-color: #8a49ae; --nav-tint: #f5e7fc; --nav-strong: #b36cda;}
.city-guide .city-guide-navigation a.city-guide-nav-link {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  min-width: 0;
  min-height: 98px;
  padding: 9px 5px 13px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: transparent;
  color: #34495e;
  text-decoration: none;
  white-space: normal;
  text-align: center;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.3;
  transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.city-guide-nav-icon, .city-guide-nav-current-icon {display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 12px; color: var(--nav-color); background: var(--nav-tint); transition: transform .18s ease;}
.city-guide-navigation svg {display: block; width: 23px; height: 23px;}
.city-guide-nav-label {max-width: 120px;}
.city-guide .city-guide-navigation a.city-guide-nav-link:hover {background: var(--nav-tint); color: var(--nav-color);}
.city-guide-nav-link:hover .city-guide-nav-icon {transform: translateY(-2px);}
.city-guide .city-guide-navigation a.city-guide-nav-link[aria-current="location"] {background: var(--nav-tint); color: var(--nav-color); border-color: var(--nav-strong);}
.city-guide-nav-link[aria-current="location"]::after {content: ""; position: absolute; height: 3px; width: 22px; border-radius: 4px; background: var(--nav-strong); bottom: 5px;}
.city-guide .city-guide-navigation :focus-visible {outline: 3px solid #086bba; outline-offset: 3px;}
.city-guide-nav-toggle {display: none;}
.city-guide .city-story section {scroll-margin-top: var(--city-guide-nav-offset, 180px);}
.city-guide .city-story section:focus {outline: none;}
@media (max-width: 1000px) {
  .city-guide .city-toc.city-guide-navigation {top: 8px; padding: 10px; border-radius: 17px;}
  .city-guide-nav-links {grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px;}
  .city-guide .city-guide-navigation a.city-guide-nav-link {min-height: 92px; padding: 12px 7px;}
  .city-guide-navigation.is-enhanced .city-guide-nav-heading {display: none;}
  .city-guide-navigation.is-enhanced .city-guide-nav-toggle {display: flex; align-items: center; gap: 12px; width: 100%; padding: 0; border: 0; border-radius: 10px; background: #fff; text-align: left; cursor: pointer; color: #183549;}
  .city-guide-nav-toggle-copy {display: grid; gap: 4px; flex: 1; min-width: 0;}
  .city-guide-nav-toggle-copy>span {font-size: 10px; font-weight: 650; color: #657589;}
  .city-guide-nav-toggle-copy strong {font-size: 13px; line-height: 1.3; font-weight: 750;}
  .city-guide-nav-current-icon {width: 42px; height: 42px;}
  .city-guide-nav-toggle-action {display: flex; align-items: center; gap: 5px; margin-right: 4px; font-size: 11px; font-weight: 650; color: #49657a;}
  .city-guide-nav-toggle-action svg {width: 16px; height: 16px; transition: transform .18s;}
  .city-guide-nav-toggle[aria-expanded="true"] .city-guide-nav-toggle-action svg {transform: rotate(180deg);}
  .city-guide-navigation.is-enhanced .city-guide-nav-links {display: none; position: absolute; top: calc(100% + 7px); left: 0; right: 0; max-height: min(65vh, 400px); overflow-y: auto; overscroll-behavior: contain; padding: 10px; border: 1px solid #e2e8f0; border-radius: 17px; background: #fff; box-shadow: 0 16px 35px #10233f24;}
  .city-guide-navigation.is-open .city-guide-nav-links {display: grid;}
  .city-guide .city-story section {scroll-margin-top: var(--city-guide-nav-offset, 96px);}
}
@media (max-width: 600px) {
  .city-guide .city-toc.city-guide-navigation {margin: 24px 0 0;}
  .city-guide .city-guide-navigation a.city-guide-nav-link {font-size: 11px;}
}
@media (max-width: 359px) {
  .city-guide-nav-toggle-action {font-size: 0; gap: 0;}
}
@media (prefers-reduced-motion: reduce) {
  .city-guide-navigation *, .city-guide-navigation *::after {transition: none!important;}
}
