/* Shared, calm hover feedback for actionable controls throughout the site. */
:is(button,[role="button"],summary,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn,.category-card,.feature-btn,.suite-directory-card,.city-card,.journal-card) {
  cursor: pointer;
  transition: translate 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background-color 180ms ease, filter 180ms ease;
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  :is(button,[role="button"],summary,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn,.category-card,.feature-btn,.suite-directory-card,.city-card,.journal-card):not(:disabled):not([aria-disabled="true"]):hover {
    translate: 0 -1px;
    filter: brightness(1.015);
    box-shadow: 0 5px 15px rgba(20, 58, 105, .12);
  }
  :is(button,[role="button"],summary,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn,.category-card,.feature-btn,.suite-directory-card,.city-card,.journal-card):not(:disabled):not([aria-disabled="true"]):active {
    translate: 0 0;
    filter: brightness(.99);
  }
}
:is(button,[role="button"],summary,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn,.category-card,.feature-btn,.suite-directory-card,.city-card,.journal-card):disabled,
:is(button,[role="button"],summary,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn,.category-card,.feature-btn,.suite-directory-card,.city-card,.journal-card)[aria-disabled="true"] {
  cursor: not-allowed;
}

/* Keep compact dropdown chevrons optically centered with their labels. */
.site-header .language-chevron {
  display: inline-grid;
  place-items: center;
  align-self: center;
  flex: 0 0 10px;
  width: 10px;
  height: 1em;
  line-height: 1;
}
.site-header .language-chevron::after {
  transform: rotate(45deg);
}
.site-header .main-nav button > span,
.site-header .main-nav a > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  line-height: 1;
  height: 1em;
}
.city-page .city-select small {
  display: inline-flex;
  align-items: center;
  gap: .28em;
  line-height: 1.2;
}
.city-page .city-select-caret {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 1em;
  line-height: 1;
  font-size: .9em;
}
.city-page .compare-search > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  height: 1em;
  line-height: 1;
}
.caret {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  height: 1em;
  line-height: 1;
  margin-inline-start: .16em;
}
@media (prefers-reduced-motion: reduce) {
  :is(button,[role="button"],summary,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn,.category-card,.feature-btn,.suite-directory-card,.city-card,.journal-card) {
    transition: none;
  }
}