/* Shared visual refinement: additive only, so individual itinerary and article layouts keep their structure. */
:root {
  --rmg-forest: #211F1A;
  --rmg-ochre: #8C7A5E;
  --rmg-sand: #D8D6CE;
  --rmg-ivory: #D8D6CE;
}

html { scroll-behavior: smooth; }
body { color: var(--rmg-forest); font-family: 'Ubuntu', sans-serif; }
h1, h2, h3, h4, h5, h6 {
  font-family: 'Hammersmith One', serif;
  font-weight: 600;
  letter-spacing: .015em;
}

:where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid var(--rmg-ochre) !important;
  outline-offset: 3px;
}

:where(.fa-solid, .fa-regular, .fa-brands) {
  display: inline-block;
  width: 1.15em;
  text-align: center;
}

:where(.zk-btn, .button, .theme_btn, .primary-btn, .submit-btn) {
  border-radius: 0;
  font-family: 'Ubuntu', sans-serif;
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
}

:where(.zk-eyebrow, .section-title, .sub-title, .title-top) {
  color: var(--rmg-ochre);
  font-family: 'Ubuntu', sans-serif;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

:where(.card, .zk-card, .zk-package-card, .package-card, .single-package) {
  border-color: rgba(58,56,47,.11);
  box-shadow: 0 12px 32px rgba(58,56,47,.07);
}

:where(.card:hover, .zk-card:hover, .zk-package-card:hover, .package-card:hover, .single-package:hover) {
  box-shadow: 0 18px 38px rgba(58,56,47,.13);
}

@media (max-width: 1023px) {
  h1 { letter-spacing: .01em; }
}
