/* MCA reusable component canonical layer v49.
   Shared blocks render consistently across destination, hotel, and legacy posts.
   Page CSS may place layout regions, but reusable block styling belongs here. */

/* MCA reusable Jump/TOC canonical layer v49.
   Jump bars are a post-body component, not a hotel/destination-specific visual system. */
.mca-single-jump,
.mca-native-jump,
.mca-destination-jump,
.mca-hotel-jump {
  box-sizing: border-box !important;
}

.mca-single-jump {
  position: relative !important;
}

.mca-single-opening .mca-single-jump {
  width: min(100%, 1120px) !important;
  margin: 24px auto 0 !important;
}

.mca-destination-main > .mca-destination-jump {
  max-width: 1120px !important;
}

.mca-native-jump,
.mca-destination-jump,
.mca-hotel-jump {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 9px !important;
  align-items: center !important;
  margin-block: 28px !important;
  padding: 10px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  border: 1px solid #f3d8df !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 8px 22px rgba(62, 47, 52, 0.07) !important;
  scroll-snap-type: x proximity !important;
  scroll-padding-left: 0 !important;
  scrollbar-width: thin !important;
  -webkit-overflow-scrolling: touch !important;
}

.mca-hotel-jump {
  position: sticky !important;
  top: 0 !important;
  z-index: 20 !important;
  margin-top: 28px !important;
  margin-bottom: 0 !important;
}

.mca-destination-jump {
  position: relative !important;
  z-index: 20 !important;
  margin-top: 18px !important;
  margin-bottom: 18px !important;
}

.mca-native-jump-label,
.mca-hotel-jump .mca-native-jump-label,
.mca-destination-jump .mca-native-jump-label {
  flex: 0 0 auto !important;
  padding: 0 8px !important;
  color: var(--hotel-coral, var(--destination-coral, var(--coral, #ee5f91))) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.mca-native-jump a,
.mca-destination-jump a,
.mca-hotel-jump a {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  gap: 9px !important;
  align-items: center !important;
  max-width: min(28vw, 260px) !important;
  min-height: 0 !important;
  padding: 8px 16px !important;
  border: 1px solid #f7cbd7 !important;
  border-radius: 999px !important;
  color: var(--hotel-coral, var(--destination-coral, var(--coral, #ee5f91))) !important;
  background: rgba(255, 248, 250, 0.95) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  scroll-snap-align: start !important;
  text-decoration: none !important;
}

.mca-native-jump a span:last-child,
.mca-destination-jump a span:last-child,
.mca-hotel-jump a span:last-child,
.mca-destination-jump a span:not(.mca-native-jump-icon),
.mca-native-jump a span:not(.mca-native-jump-icon) {
  min-width: 0 !important;
  max-width: 190px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.mca-native-jump a:hover,
.mca-native-jump a:focus,
.mca-destination-jump a:hover,
.mca-destination-jump a:focus,
.mca-hotel-jump a:hover,
.mca-hotel-jump a:focus {
  border-color: var(--hotel-coral, var(--destination-coral, var(--coral, #ee5f91))) !important;
  color: var(--hotel-coral, var(--destination-coral, var(--coral, #ee5f91))) !important;
}

.mca-native-jump-icon,
.mca-hotel-jump .mca-native-jump-icon,
.mca-hotel-jump-icon,
.mca-destination-jump .mca-native-jump-icon {
  display: inline-grid !important;
  min-width: 1.35em !important;
  place-items: center !important;
  color: var(--destination-teal, currentColor) !important;
  font-size: 16px !important;
  line-height: 1 !important;
}

.mca-native-jump + .mca-native-jump,
.mca-destination-jump + .mca-destination-jump,
.mca-single-jump + .mca-single-jump,
.mca-hotel-jump + .mca-hotel-jump,
.mca-destination-main > .mca-destination-jump + .mca-destination-jump {
  display: none !important;
}

/* MCA reusable Travel Favorites canonical layer v49.
   Travel Favorites is one shared block; post type only changes whether it is chosen. */
.mca-dg-travel-favorites {
  position: relative !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  padding: 14px 16px 15px !important;
  overflow: hidden !important;
  background: url("../images/sidebar-widgets/travel-favorites-pink-panel.png") center / 100% 100% no-repeat !important;
}

.mca-dg-travel-favorites::before,
.mca-dg-travel-favorites::after {
  display: none !important;
}

.mca-dg-travel-favorites > * {
  position: relative !important;
  z-index: 1 !important;
}

.mca-dg-travel-favorites h2 {
  margin: 0 0 4px !important;
  color: var(--mca-heading-color, #0d4d57) !important;
  font-size: 34px !important;
  line-height: 0.9 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list {
  display: grid !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list li {
  margin: 0 !important;
  padding: 0 !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list a,
.mca-dg-travel-favorites .mca-dg-favorite-entry {
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) !important;
  gap: 8px !important;
  align-items: center !important;
  min-height: 40px !important;
  padding: 0 !important;
  border-bottom: 1px dashed rgba(232, 107, 154, 0.42) !important;
  color: inherit !important;
  text-decoration: none !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list li:last-child a,
.mca-dg-travel-favorites .mca-dg-favorite-list li:last-child .mca-dg-favorite-entry {
  border-bottom: 0 !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon {
  display: block !important;
  width: 40px !important;
  height: 40px !important;
  max-width: 100% !important;
  min-width: 40px !important;
  flex: 0 0 40px !important;
  border-radius: 999px !important;
  background-color: transparent !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  box-shadow: none !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-book {
  background-image: url("../images/travel-widget/icon_where_to_book_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-tour {
  background-image: url("../images/travel-widget/icon_tours_excursions_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-transfer {
  background-image: url("../images/travel-widget/icon_airport_transfers_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-flight {
  background-image: url("../images/travel-widget/icon_compare_flights_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-suitcase {
  background-image: url("../images/travel-widget/icon_best_suitcases_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-esim {
  background-image: url("../images/travel-widget/icon_esim_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-car {
  background-image: url("../images/travel-widget/icon_rental_cars_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-icon-insurance {
  background-image: url("../images/travel-widget/icon_travel_insurance_real.png") !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list a > span:last-child,
.mca-dg-travel-favorites .mca-dg-favorite-entry > span:last-child {
  display: grid !important;
  align-content: center !important;
  gap: 0 !important;
  min-width: 0 !important;
  min-height: 40px !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list strong,
.mca-dg-travel-favorites .mca-dg-favorite-entry strong {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #1f1a17 !important;
  font-size: 17px !important;
  line-height: 0.98 !important;
  overflow-wrap: anywhere !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-list small,
.mca-dg-travel-favorites .mca-dg-favorite-entry small {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #d64f78 !important;
  font-size: 16px !important;
  line-height: 0.98 !important;
  overflow-wrap: anywhere !important;
}

.mca-dg-travel-favorites .mca-dg-favorite-sublinks a {
  display: inline !important;
  grid-template-columns: none !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  color: inherit !important;
  font: inherit !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 2px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites,
.mca-hotel-sidebar .mca-dg-travel-favorites {
  padding: 12px 13px 13px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites h2,
.mca-hotel-sidebar .mca-dg-travel-favorites h2 {
  margin-bottom: 3px !important;
  font-size: 26px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list a,
.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list a,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry {
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 7px !important;
  min-height: 34px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-icon,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-icon {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  flex-basis: 34px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list a > span:last-child,
.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry > span:last-child,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list a > span:last-child,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry > span:last-child {
  min-height: 34px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list strong,
.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry strong,
.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list small,
.mca-dg-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry small,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list strong,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry strong,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-list small,
.mca-hotel-sidebar .mca-dg-travel-favorites .mca-dg-favorite-entry small {
  font-size: 13px !important;
  line-height: 1 !important;
}

.mca-dg-mobile-pair .mca-dg-travel-favorites {
  padding: 9px !important;
}

.mca-dg-mobile-pair .mca-dg-travel-favorites h2 {
  margin-bottom: 2px !important;
  font-size: 19px !important;
}

.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-list a,
.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-entry {
  grid-template-columns: 30px minmax(0, 1fr) !important;
  gap: 5px !important;
  min-height: 30px !important;
}

.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-icon {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  flex-basis: 30px !important;
}

.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-list a > span:last-child,
.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-entry > span:last-child {
  min-height: 30px !important;
}

.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-list strong,
.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-entry strong,
.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-list small,
.mca-dg-mobile-pair .mca-dg-travel-favorites .mca-dg-favorite-entry small {
  font-size: 11px !important;
  line-height: 1 !important;
}

.mca-hotel-mobile-insert.mca-dg-travel-favorites {
  width: 100% !important;
  max-width: 100% !important;
}

.mca-dg-travel-favorites.mca-dg-local-favorites {
  padding: 10px 12px 12px !important;
}

.mca-dg-travel-favorites.mca-dg-local-favorites h2 {
  margin-bottom: 4px !important;
  font-size: clamp(21px, 1.8vw, 25px) !important;
  line-height: 0.95 !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list a,
.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list a,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry {
  grid-template-columns: 42px minmax(0, 1fr) !important;
  gap: 10px !important;
  min-height: 49px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-icon,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-icon {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  flex-basis: 42px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list a > span:last-child,
.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry > span:last-child,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list a > span:last-child,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry > span:last-child {
  min-height: 49px !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list strong,
.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry strong,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list strong,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry strong {
  font-size: 19px !important;
  line-height: 1.02 !important;
}

.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list small,
.mca-dg-sidebar .mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry small,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-list small,
.mca-dg-travel-favorites.mca-dg-local-favorites .mca-dg-favorite-entry small {
  font-size: 18px !important;
  line-height: 1.04 !important;
}

@media (max-width: 980px) {
  .mca-dg-travel-favorites.mca-dg-local-favorites h2 {
    font-size: 25px !important;
  }
}

/* MCA reusable TX Guide canonical layer v49.
   The Texas guide/signup card is reusable; Texas relevance decides whether it appears, not how it is styled. */
.mca-dg-travel-guide-card.mca-dg-guide-signup,
.mca-dg-guide-signup {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  padding: 16px !important;
  overflow: hidden !important;
  border-color: rgba(69, 174, 181, 0.28) !important;
  background: linear-gradient(135deg, #fff8fb, #f3ffff) !important;
  text-align: center !important;
}

.mca-dg-guide-signup > * {
  min-width: 0 !important;
}

.mca-dg-guide-signup-photo {
  width: 100% !important;
  max-width: 280px !important;
  aspect-ratio: 1200 / 851 !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  border-radius: 7px !important;
  background: transparent !important;
}

.mca-dg-guide-signup-photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: contain !important;
  object-position: var(--mca-object-position, center) !important;
}

.mca-dg-guide-signup h2 {
  margin: 0 !important;
  color: #0d4b55 !important;
  font-size: 25px !important;
  line-height: 1 !important;
  text-align: center !important;
  text-transform: none !important;
}

.mca-dg-guide-signup p {
  margin: 6px 0 10px !important;
  color: #626a74 !important;
  font-size: 14.5px !important;
  line-height: 1.28 !important;
  text-align: center !important;
}

.mca-dg-guide-signup-form,
.mca-dg-guide-signup-form form,
.mca-dg-guide-signup-form .fd-form,
.mca-dg-guide-signup-form .flodesk-form,
.mca-dg-guide-signup-form form[id*="flodesk"],
.mca-dg-guide-signup-form form[class*="flodesk"] {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  width: 100% !important;
}

.mca-dg-guide-signup-form input[type="email"],
.mca-dg-guide-signup-form input[type="text"],
.mca-dg-guide-signup-form .fd-form-control,
.mca-dg-guide-signup-form input[name*="email" i] {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 34px !important;
  padding-inline: 12px !important;
  border: 1px solid rgba(69, 174, 181, 0.22) !important;
  font-size: 12px !important;
}

.mca-dg-guide-signup-form button,
.mca-dg-guide-signup-form input[type="submit"],
.mca-dg-guide-signup-form .fd-form-button,
.mca-dg-guide-signup-form [type="submit"],
.mca-dg-guide-signup-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: center !important;
  max-width: 100% !important;
  min-height: 34px !important;
  padding: 10px 16px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #ee5f91 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: none !important;
}

/* MCA reusable Books canonical layer v49.
   Books is a reusable sidebar module; current styling is preserved until Jessica intentionally redesigns it. */
.mca-dg-books,
.mca-dg-sidebar .mca-dg-books,
.mca-dg-mobile-only .mca-dg-books,
.mca-dg-mobile-sidebar-copy .mca-dg-books {
  position: relative !important;
  box-sizing: border-box !important;
  display: grid !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 22px 20px 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(13, 75, 85, 0.14) !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f6fffd 100%) !important;
  box-shadow: 0 14px 32px rgba(13, 75, 85, 0.08) !important;
}

.mca-dg-books::before,
.mca-dg-books::after {
  display: none !important;
}

.mca-dg-books > * {
  min-width: 0 !important;
}

.mca-dg-books h2 {
  margin: 0 0 8px !important;
  color: #0d4b55 !important;
  font-size: clamp(22px, 1.75vw, 27px) !important;
  line-height: 1.05 !important;
  text-align: left !important;
  text-transform: none !important;
}

.mca-dg-books > p {
  margin: 0 0 14px !important;
  color: #56626b !important;
  font-size: 13px !important;
  line-height: 1.42 !important;
  text-align: left !important;
}

.mca-dg-book-grid,
.mca-dg-books .mca-dg-book-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.mca-dg-book-grid > *,
.mca-dg-books .mca-dg-book-grid > * {
  min-width: 0 !important;
}

.mca-dg-book-card,
.mca-dg-books .mca-dg-book-card {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 10px !important;
  border: 1px solid rgba(232, 95, 145, 0.16) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: inherit !important;
  text-align: left !important;
  text-decoration: none !important;
}

.mca-dg-book-card figure,
.mca-dg-books .mca-dg-book-card figure {
  grid-row: span 2 !important;
  overflow: hidden !important;
  width: 56px !important;
  max-width: 100% !important;
  aspect-ratio: 3 / 4 !important;
  margin: 0 !important;
  border-radius: 6px !important;
  background: linear-gradient(135deg, rgba(232, 95, 145, 0.14), rgba(69, 174, 181, 0.16)) !important;
  box-shadow: none !important;
}

.mca-dg-book-card figure:empty,
.mca-dg-books .mca-dg-book-card figure:empty,
.mca-dg-book-card figure:not(:has(img)),
.mca-dg-books .mca-dg-book-card figure:not(:has(img)) {
  display: none !important;
}

.mca-dg-book-card figure:empty + p,
.mca-dg-books .mca-dg-book-card figure:empty + p,
.mca-dg-book-card figure:not(:has(img)) + p,
.mca-dg-books .mca-dg-book-card figure:not(:has(img)) + p {
  grid-column: 1 / -1 !important;
}

.mca-dg-book-card img,
.mca-dg-books .mca-dg-book-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: var(--mca-object-position, center) !important;
}

.mca-dg-book-card p,
.mca-dg-books .mca-dg-book-card p {
  min-width: 0 !important;
  margin: 0 !important;
  color: #626a74 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
}

.mca-dg-book-card strong,
.mca-dg-books .mca-dg-book-card strong {
  display: block !important;
  margin: 0 0 3px !important;
  color: #173f47 !important;
  font-size: 14px !important;
  line-height: 1.12 !important;
  overflow-wrap: anywhere !important;
}

.mca-dg-book-card small,
.mca-dg-books .mca-dg-book-card small {
  color: #626a74 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
}

.mca-dg-books .wp-block-buttons {
  grid-column: 1 / -1 !important;
  display: grid !important;
  gap: 7px !important;
  width: 100% !important;
  margin: 0 !important;
}

.mca-dg-books .wp-block-button {
  width: 100% !important;
  margin: 0 !important;
}

.mca-dg-book-button,
.mca-dg-books .mca-dg-book-button,
.mca-dg-books .wp-block-button__link {
  box-sizing: border-box !important;
  display: inline-flex !important;
  grid-column: 1 / -1 !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 32px !important;
  padding: 7px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #00aab4 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.mca-dg-book-button.is-outline,
.mca-dg-books .mca-dg-book-button.is-outline,
.mca-dg-books .is-style-outline .wp-block-button__link {
  border: 1px solid rgba(0, 170, 180, 0.35) !important;
  background: #fff !important;
  color: #00828b !important;
}

/* MCA reusable Read More canonical layer v50.
   Read More/Nearby cards are reusable internal-link blocks, not destination-only styling. */
.mca-dg-nearby,
.mca-dg-sidebar .mca-dg-nearby,
.mca-dg-mobile-pair .mca-dg-nearby,
.mca-dg-mobile-sidebar-copy .mca-dg-nearby {
  position: relative !important;
  box-sizing: border-box !important;
  display: grid !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  padding: 22px 18px 24px !important;
  overflow: hidden !important;
  border: 1px solid rgba(69, 174, 181, 0.18) !important;
  border-radius: 8px !important;
  background:
    linear-gradient(180deg, rgba(247, 255, 253, 0.94), rgba(255, 255, 255, 0.98)),
    #fff !important;
  box-shadow: 0 12px 26px rgba(13, 75, 85, 0.06) !important;
}

.mca-dg-nearby > * {
  min-width: 0 !important;
}

.mca-dg-nearby h2 {
  margin: 0 !important;
  padding: 0 !important;
  color: #0d4b55 !important;
  font-size: clamp(28px, 2vw, 34px) !important;
  line-height: 1.02 !important;
  text-align: left !important;
  text-transform: none !important;
}

.mca-dg-nearby-list {
  display: grid !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.mca-dg-nearby-list li {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.mca-dg-nearby-list a,
.mca-dg-nearby-entry {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0 !important;
  align-items: start !important;
  min-height: 0 !important;
  padding: 0 0 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(69, 174, 181, 0.12) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 8px 18px rgba(13, 75, 85, 0.045) !important;
  color: inherit !important;
  text-decoration: none !important;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease !important;
}

.mca-dg-nearby-list a:hover,
.mca-dg-nearby-list a:focus {
  border-color: rgba(232, 95, 145, 0.32) !important;
  box-shadow: 0 8px 18px rgba(13, 75, 85, 0.09) !important;
  transform: translateY(-1px) !important;
}

.mca-dg-nearby-list li + li a,
.mca-dg-nearby-list li + li .mca-dg-nearby-entry {
  border-top-color: rgba(69, 174, 181, 0.12) !important;
}

.mca-dg-nearby-list figure {
  overflow: hidden !important;
  width: 100% !important;
  aspect-ratio: 1.55 / 1 !important;
  margin: 0 !important;
  border-radius: 8px 8px 0 0 !important;
  background: #eefafa !important;
  box-shadow: none !important;
}

.mca-dg-nearby-list figure img,
.mca-dg-nearby-list img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: var(--mca-object-position, center) !important;
}

.mca-dg-nearby-list figure:empty,
.mca-dg-nearby-list figure:not(:has(img)) {
  display: none !important;
}

.mca-dg-nearby-list figure:empty + span,
.mca-dg-nearby-list figure:not(:has(img)) + span {
  grid-column: 1 / -1 !important;
  padding-top: 14px !important;
}

.mca-dg-nearby-list a > span,
.mca-dg-nearby-entry > span {
  display: block !important;
  min-width: 0 !important;
  padding: 14px 14px 0 !important;
}

.mca-dg-nearby-list strong {
  display: block !important;
  color: #0d4b55 !important;
  font-family: Glacial, "Open Sans", Arial, sans-serif !important;
  font-size: clamp(22px, 1.85vw, 27px) !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
  overflow-wrap: anywhere !important;
}

.mca-dg-nearby-list small {
  display: block !important;
  margin-top: 7px !important;
  color: #4f5965 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.28 !important;
}

.mca-dg-nearby .mca-dg-edit-card {
  display: grid !important;
  grid-template-columns: 84px minmax(0, 1fr) !important;
  gap: 10px 12px !important;
  align-items: center !important;
  padding: 10px !important;
  border: 1px solid rgba(69, 174, 181, 0.12) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 8px 18px rgba(13, 75, 85, 0.045) !important;
}

.mca-dg-nearby .mca-dg-edit-card figure {
  overflow: hidden !important;
  grid-row: span 5 !important;
  width: 100% !important;
  aspect-ratio: 1.32 / 1 !important;
  margin: 0 !important;
  border-radius: 7px !important;
  background: #eefafa !important;
  box-shadow: none !important;
}

.mca-dg-nearby .mca-dg-edit-card figure img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: var(--mca-object-position, center) !important;
}

.mca-dg-nearby .mca-dg-edit-card strong {
  color: #00aab4 !important;
  font-size: clamp(20px, 1.65vw, 26px) !important;
  font-weight: 850 !important;
  line-height: 1 !important;
}

.mca-dg-nearby .mca-dg-edit-card small {
  color: #4f5965 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
}

.mca-dg-nearby .mca-dg-edit-card .components-button,
.mca-dg-nearby .mca-dg-edit-card .components-base-control {
  grid-column: 2 !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  .mca-dg-nearby,
  .mca-dg-sidebar .mca-dg-nearby,
  .mca-dg-mobile-pair .mca-dg-nearby,
  .mca-dg-mobile-sidebar-copy .mca-dg-nearby {
    padding: 18px 14px 20px !important;
  }

  .mca-dg-nearby-list {
    display: flex !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 6px !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mca-dg-nearby-list li {
    flex: 0 0 min(82vw, 292px) !important;
    width: min(82vw, 292px) !important;
    max-width: min(82vw, 292px) !important;
    scroll-snap-align: start !important;
  }

  .mca-dg-nearby-list a,
  .mca-dg-nearby-entry {
    width: 100% !important;
    height: 100% !important;
  }
}

@media (max-width: 520px) {
  .mca-dg-nearby-list a,
  .mca-dg-nearby-entry,
  .mca-dg-nearby .mca-dg-edit-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .mca-dg-mobile-pair .mca-dg-nearby h2 {
    font-size: 28px !important;
  }
}

/* MCA reusable More Posts canonical layer v49.
   More Posts/related cards are internal-link blocks, not destination-only styling. */
.mca-dg-related-section {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.mca-dg-related-section > * {
  min-width: 0 !important;
}

.mca-dg-related-section h2 {
  margin: 0 0 14px !important;
  color: #0d4b55 !important;
  font-size: clamp(26px, 2vw, 34px) !important;
  line-height: 1 !important;
}

.mca-dg-related-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.mca-dg-related-card {
  display: grid !important;
  gap: 11px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  padding: 14px !important;
  border: 1px solid rgba(69, 174, 181, 0.22) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(40, 41, 47, 0.06) !important;
  color: inherit !important;
  text-decoration: none !important;
}

.mca-dg-related-card figure {
  overflow: hidden !important;
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  height: auto !important;
  margin: 0 !important;
  border-radius: 8px !important;
  background: #eefafa !important;
}

.mca-dg-related-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: var(--mca-object-position, center) !important;
}

.mca-dg-related-card p {
  display: grid !important;
  gap: 5px !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.mca-dg-related-card br {
  display: none !important;
}

.mca-dg-related-card strong {
  display: block !important;
  color: #2b2c34 !important;
  font-size: clamp(17px, 1.35vw, 20px) !important;
  font-weight: 850 !important;
  line-height: 1.08 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.mca-dg-related-card span {
  display: block !important;
  margin-top: 0 !important;
  color: #626a74 !important;
  font-size: 13.5px !important;
  line-height: 1.2 !important;
}

.mca-dg-sidebar .mca-dg-related-section {
  display: grid !important;
  gap: 11px !important;
  padding: 17px 14px !important;
  border: 1px solid rgba(243, 201, 211, 0.95) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 14px 30px rgba(40, 41, 47, 0.07) !important;
}

.mca-dg-sidebar .mca-dg-related-section h2 {
  margin: 0 0 2px !important;
  color: #0d4b55 !important;
  font-size: 30px !important;
  line-height: 0.98 !important;
  text-transform: uppercase !important;
}

.mca-dg-sidebar .mca-dg-related-grid {
  grid-template-columns: 1fr !important;
  gap: 9px !important;
}

.mca-dg-sidebar .mca-dg-related-card {
  grid-template-columns: 80px minmax(0, 1fr) !important;
  gap: 11px !important;
  align-items: center !important;
  min-height: 96px !important;
  padding: 9px !important;
  box-shadow: none !important;
}

.mca-dg-sidebar .mca-dg-related-card figure {
  width: 80px !important;
  aspect-ratio: 1.12 / 1 !important;
  border-radius: 7px !important;
}

.mca-dg-sidebar .mca-dg-related-card p {
  align-content: center !important;
  gap: 6px !important;
}

.mca-dg-sidebar .mca-dg-related-card strong {
  font-size: 17px !important;
  line-height: 1.08 !important;
}

.mca-dg-sidebar .mca-dg-related-card span {
  font-size: 13.5px !important;
  line-height: 1.2 !important;
}

@media (max-width: 760px) {
  .mca-dg-related-grid {
    display: flex !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 6px !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mca-dg-related-grid > * {
    flex: 0 0 min(78vw, 275px) !important;
    width: min(78vw, 275px) !important;
    max-width: min(78vw, 275px) !important;
    scroll-snap-align: start !important;
  }

  .mca-dg-related-card {
    height: 100% !important;
  }
}

/* MCA reusable More Posts hotel alias layer v49.
   Legacy hotel auto-related classes share the same reusable More Posts behavior. */
.mca-hotel-related-auto {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 18px 0 !important;
  overflow: hidden !important;
  padding: 14px !important;
  border: 1px solid var(--hotel-border, rgba(69, 174, 181, 0.22)) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(55, 48, 52, 0.06) !important;
}

.mca-hotel-related-auto h3 {
  margin: 0 0 12px !important;
  color: var(--hotel-ink, #2b2c34) !important;
  font-size: clamp(20px, 2vw, 26px) !important;
  line-height: 1.05 !important;
}

.mca-hotel-related-auto-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.mca-hotel-related-auto-grid a {
  display: grid !important;
  gap: 0 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--hotel-border, rgba(69, 174, 181, 0.22)) !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: var(--hotel-ink, #2b2c34) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
}

.mca-hotel-related-auto-grid img,
.mca-hotel-related-thumb {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  background: linear-gradient(135deg, #fff6f9, #eafafb) !important;
  object-fit: cover !important;
  object-position: var(--mca-object-position, center) !important;
}

.mca-hotel-related-auto-grid a > span:last-child {
  padding: 9px !important;
}

@media (max-width: 760px) {
  .mca-hotel-related-auto-grid {
    display: flex !important;
    gap: 10px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 6px !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: thin !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mca-hotel-related-auto-grid > * {
    flex: 0 0 min(78vw, 275px) !important;
    width: min(78vw, 275px) !important;
    max-width: min(78vw, 275px) !important;
    scroll-snap-align: start !important;
  }

  .mca-hotel-related-auto-grid img,
  .mca-hotel-related-thumb {
    aspect-ratio: 16 / 10 !important;
  }
}

.mca-dg-mobile-universal-copy {
  gap: 18px !important;
  margin-top: 24px !important;
}

.mca-dg-about-me,
.mca-universal-about.mca-dg-about-me,
.mca-dg-mobile-universal-about.mca-dg-about-me,
.mca-single-mobile-about.mca-dg-about-me,
.mca-single-sidebar-about.mca-dg-about-me,
.mca-hotel-about-mobile.mca-dg-about-me,
.mca-hotel-about-sidebar.mca-dg-about-me {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 12px !important;
  justify-items: center !important;
  min-height: 0 !important;
  padding: 20px 18px 22px !important;
  border: 1px solid #d6f1f2 !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff 0%, #f7fffd 100%) !important;
  box-shadow: 0 14px 30px rgba(40, 41, 47, 0.07) !important;
  overflow: hidden !important;
  text-align: center !important;
}

.mca-dg-about-me > * {
  grid-column: 1 / -1 !important;
  min-width: 0 !important;
}

.mca-dg-about-me .mca-dg-about-photo {
  display: block !important;
  width: min(190px, 72%) !important;
  max-width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 auto 16px !important;
  overflow: hidden !important;
  border: 5px solid #fff !important;
  border-radius: 999px !important;
  box-shadow: 0 12px 28px rgba(13, 75, 85, 0.16) !important;
}

.mca-dg-about-me .mca-dg-about-photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.mca-dg-about-me h2,
.mca-dg-about-me p {
  max-width: 100% !important;
  text-align: center !important;
}

.mca-dg-about-me h2 {
  margin: 0 0 10px !important;
  color: #0d4b55 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(30px, 3vw, 42px) !important;
  line-height: 1 !important;
}

.mca-dg-about-me p {
  margin: 0 0 16px !important;
  color: #5f6670 !important;
  font-size: 15.5px !important;
  line-height: 1.45 !important;
}

.mca-dg-about-me .mca-dg-about-button,
.mca-single-sidebar .mca-dg-about-me .mca-dg-about-button,
.mca-hotel-sidebar .mca-dg-about-me .mca-dg-about-button,
.mca-dg-sidebar .mca-dg-about-me .mca-dg-about-button,
.entry-content .mca-single-mobile-about .mca-dg-about-button,
.mca-hotel-mobile-insert.mca-dg-about-me .mca-dg-about-button,
.mca-dg-mobile-universal-about .mca-dg-about-button,
.mca-universal-about .mca-dg-about-button {
  display: inline-flex !important;
  width: fit-content !important;
  max-width: 100% !important;
  min-height: 42px !important;
  padding: 10px 16px !important;
  border-color: #e85f91 !important;
  border-radius: 999px !important;
  background: #e85f91 !important;
  color: #fff !important;
  margin: 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: center !important;
  align-self: center !important;
  box-shadow: none !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.mca-dg-about-me .mca-dg-about-button:visited,
.mca-dg-about-me .mca-dg-about-button:hover,
.mca-dg-about-me .mca-dg-about-button:focus,
.mca-universal-about .mca-dg-about-button:visited,
.mca-universal-about .mca-dg-about-button:hover,
.mca-universal-about .mca-dg-about-button:focus {
  color: #fff !important;
  text-decoration: none !important;
}

.mca-dg-email-optin,
.mca-universal-email.mca-dg-email-optin,
.mca-dg-mobile-universal-email.mca-dg-email-optin,
.mca-single-mobile-email.mca-dg-email-optin,
.mca-single-sidebar-email.mca-dg-email-optin,
.mca-hotel-email-optin-mobile.mca-dg-email-optin,
.mca-hotel-email-optin-sidebar.mca-dg-email-optin {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 16px !important;
  border: 1px solid rgba(232, 95, 145, 0.26) !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #fff0f6, #fff8fb) !important;
  box-shadow: 0 14px 30px rgba(40, 41, 47, 0.07) !important;
  overflow: hidden !important;
  text-align: left !important;
}

.mca-dg-email-optin .home-subscribe-icon,
.mca-universal-email .home-subscribe-icon,
.mca-dg-mobile-universal-email .home-subscribe-icon,
.mca-single-mobile-email .home-subscribe-icon,
.mca-single-sidebar-email .home-subscribe-icon,
.mca-hotel-email-optin-mobile .home-subscribe-icon,
.mca-hotel-email-optin-sidebar .home-subscribe-icon {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  place-items: center !important;
  margin: 0 !important;
  border-radius: 999px !important;
  background: #e85f91 !important;
  color: #fff !important;
  font-size: 20px !important;
}

.mca-dg-email-optin h2,
.mca-universal-email h2,
.mca-dg-mobile-universal-email h2,
.mca-single-mobile-email h2,
.mca-single-sidebar-email h2,
.mca-hotel-email-optin-mobile h2,
.mca-hotel-email-optin-sidebar h2 {
  align-self: center !important;
  margin: 0 !important;
  color: #0d4b55 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 20px !important;
  line-height: 1.05 !important;
}

.mca-dg-email-optin p,
.mca-dg-email-optin .home-subscribe-form,
.mca-universal-email p,
.mca-universal-email .home-subscribe-form,
.mca-dg-mobile-universal-email p,
.mca-dg-mobile-universal-email .home-subscribe-form,
.mca-single-mobile-email p,
.mca-single-mobile-email .home-subscribe-form,
.mca-single-sidebar-email p,
.mca-single-sidebar-email .home-subscribe-form,
.mca-hotel-email-optin-mobile p,
.mca-hotel-email-optin-mobile .home-subscribe-form,
.mca-hotel-email-optin-sidebar p,
.mca-hotel-email-optin-sidebar .home-subscribe-form {
  grid-column: 1 / -1 !important;
}

.mca-dg-email-optin p,
.mca-universal-email p,
.mca-dg-mobile-universal-email p,
.mca-single-mobile-email p,
.mca-single-sidebar-email p,
.mca-hotel-email-optin-mobile p,
.mca-hotel-email-optin-sidebar p {
  margin: 0 !important;
  color: #626a74 !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.mca-dg-email-optin .home-subscribe-form form,
.mca-dg-email-optin .home-subscribe-form .fd-form,
.mca-dg-email-optin .home-subscribe-form .flodesk-form,
.mca-dg-email-optin .home-subscribe-form form[id*="flodesk"],
.mca-dg-email-optin .home-subscribe-form form[class*="flodesk"],
.mca-dg-email-optin .mca-flodesk-visible-form,
.mca-universal-email .home-subscribe-form form,
.mca-universal-email .home-subscribe-form .fd-form,
.mca-universal-email .home-subscribe-form .flodesk-form,
.mca-universal-email .home-subscribe-form form[id*="flodesk"],
.mca-universal-email .home-subscribe-form form[class*="flodesk"],
.mca-universal-email .mca-flodesk-visible-form,
.mca-dg-mobile-universal-email .home-subscribe-form form,
.mca-dg-mobile-universal-email .home-subscribe-form .fd-form,
.mca-dg-mobile-universal-email .home-subscribe-form .flodesk-form,
.mca-dg-mobile-universal-email .home-subscribe-form form[id*="flodesk"],
.mca-dg-mobile-universal-email .home-subscribe-form form[class*="flodesk"],
.mca-dg-mobile-universal-email .mca-flodesk-visible-form,
.mca-single-mobile-email .home-subscribe-form form,
.mca-single-mobile-email .home-subscribe-form .fd-form,
.mca-single-mobile-email .home-subscribe-form .flodesk-form,
.mca-single-mobile-email .home-subscribe-form form[id*="flodesk"],
.mca-single-mobile-email .home-subscribe-form form[class*="flodesk"],
.mca-single-mobile-email .mca-flodesk-visible-form,
.mca-single-sidebar-email .home-subscribe-form form,
.mca-single-sidebar-email .home-subscribe-form .fd-form,
.mca-single-sidebar-email .home-subscribe-form .flodesk-form,
.mca-single-sidebar-email .home-subscribe-form form[id*="flodesk"],
.mca-single-sidebar-email .home-subscribe-form form[class*="flodesk"],
.mca-single-sidebar-email .mca-flodesk-visible-form,
.mca-hotel-email-optin-mobile .home-subscribe-form form,
.mca-hotel-email-optin-mobile .home-subscribe-form .fd-form,
.mca-hotel-email-optin-mobile .home-subscribe-form .flodesk-form,
.mca-hotel-email-optin-mobile .home-subscribe-form form[id*="flodesk"],
.mca-hotel-email-optin-mobile .home-subscribe-form form[class*="flodesk"],
.mca-hotel-email-optin-mobile .mca-flodesk-visible-form,
.mca-hotel-email-optin-sidebar .home-subscribe-form form,
.mca-hotel-email-optin-sidebar .home-subscribe-form .fd-form,
.mca-hotel-email-optin-sidebar .home-subscribe-form .flodesk-form,
.mca-hotel-email-optin-sidebar .home-subscribe-form form[id*="flodesk"],
.mca-hotel-email-optin-sidebar .home-subscribe-form form[class*="flodesk"],
.mca-hotel-email-optin-sidebar .mca-flodesk-visible-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
}

.mca-dg-email-optin .home-subscribe-form input[type="email"],
.mca-dg-email-optin .home-subscribe-form input[type="text"],
.mca-dg-email-optin .fd-form-control,
.mca-dg-email-optin input[name*="email" i],
.mca-universal-email .home-subscribe-form input[type="email"],
.mca-universal-email .home-subscribe-form input[type="text"],
.mca-universal-email .fd-form-control,
.mca-universal-email input[name*="email" i],
.mca-dg-mobile-universal-email .home-subscribe-form input[type="email"],
.mca-dg-mobile-universal-email .home-subscribe-form input[type="text"],
.mca-dg-mobile-universal-email .fd-form-control,
.mca-dg-mobile-universal-email input[name*="email" i],
.mca-single-mobile-email .home-subscribe-form input[type="email"],
.mca-single-mobile-email .home-subscribe-form input[type="text"],
.mca-single-mobile-email .fd-form-control,
.mca-single-mobile-email input[name*="email" i],
.mca-single-sidebar-email .home-subscribe-form input[type="email"],
.mca-single-sidebar-email .home-subscribe-form input[type="text"],
.mca-single-sidebar-email .fd-form-control,
.mca-single-sidebar-email input[name*="email" i],
.mca-hotel-email-optin-mobile .home-subscribe-form input[type="email"],
.mca-hotel-email-optin-mobile .home-subscribe-form input[type="text"],
.mca-hotel-email-optin-mobile .fd-form-control,
.mca-hotel-email-optin-mobile input[name*="email" i],
.mca-hotel-email-optin-sidebar .home-subscribe-form input[type="email"],
.mca-hotel-email-optin-sidebar .home-subscribe-form input[type="text"],
.mca-hotel-email-optin-sidebar .fd-form-control,
.mca-hotel-email-optin-sidebar input[name*="email" i] {
  width: 100% !important;
  min-height: 36px !important;
  padding-inline: 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #304653 !important;
  font: inherit !important;
  font-size: 13.5px !important;
}

.mca-dg-email-optin .home-subscribe-form button,
.mca-dg-email-optin .home-subscribe-form input[type="submit"],
.mca-dg-email-optin .fd-form-button,
.mca-dg-email-optin [type="submit"],
.mca-universal-email .home-subscribe-form button,
.mca-universal-email .home-subscribe-form input[type="submit"],
.mca-universal-email .fd-form-button,
.mca-universal-email [type="submit"],
.mca-dg-mobile-universal-email .home-subscribe-form button,
.mca-dg-mobile-universal-email .home-subscribe-form input[type="submit"],
.mca-dg-mobile-universal-email .fd-form-button,
.mca-dg-mobile-universal-email [type="submit"],
.mca-single-mobile-email .home-subscribe-form button,
.mca-single-mobile-email .home-subscribe-form input[type="submit"],
.mca-single-mobile-email .fd-form-button,
.mca-single-mobile-email [type="submit"],
.mca-single-sidebar-email .home-subscribe-form button,
.mca-single-sidebar-email .home-subscribe-form input[type="submit"],
.mca-single-sidebar-email .fd-form-button,
.mca-single-sidebar-email [type="submit"],
.mca-hotel-email-optin-mobile .home-subscribe-form button,
.mca-hotel-email-optin-mobile .home-subscribe-form input[type="submit"],
.mca-hotel-email-optin-mobile .fd-form-button,
.mca-hotel-email-optin-mobile [type="submit"],
.mca-hotel-email-optin-sidebar .home-subscribe-form button,
.mca-hotel-email-optin-sidebar .home-subscribe-form input[type="submit"],
.mca-hotel-email-optin-sidebar .fd-form-button,
.mca-hotel-email-optin-sidebar [type="submit"] {
  min-height: 36px !important;
  padding-inline: 14px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #e85f91 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

/* MCA reusable body CTA center guard v40.
   CTA cards with centered buttons should not leave the heading/copy on a different axis. */
.mca-hotel-cta-box {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 7px !important;
  justify-items: center !important;
  align-items: center !important;
  padding: 18px 20px !important;
  margin-top: 26px !important;
  background: var(--hotel-blush, #fff0f6) !important;
  text-align: center !important;
}

.mca-hotel-cta-box > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 7px !important;
  justify-items: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  text-align: center !important;
}

.mca-hotel-cta-box h2,
.mca-hotel-cta-box h3,
.mca-hotel-cta-box p {
  width: 100% !important;
  max-width: 760px !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.mca-hotel-cta-box h3 {
  font-size: 22px !important;
}

.mca-hotel-cta-box p {
  font-size: 15px !important;
  line-height: 1.45 !important;
}

.mca-hotel-cta-box .wp-block-buttons,
.mca-hotel-cta-box .wp-block-button,
.mca-hotel-cta-box .mca-hotel-button {
  justify-content: center !important;
  justify-self: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.mca-hotel-cta-box .wp-block-button,
.mca-hotel-cta-box .wp-block-button__link {
  width: auto !important;
}

.mca-pinterest-save + .mv-ad-box:has(+ .mca-dg-mobile-universal-about),
.mca-dg-save + .mv-ad-box:has(+ .mca-dg-mobile-universal-about) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
}

/* MCA pre-TOC ad guard v53. */
.mca-pre-toc-no-ad {
  box-sizing: border-box !important;
  display: block !important;
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
}

.mca-pre-toc-no-ad > .mca-dg-intro {
  width: 100% !important;
  max-width: 100% !important;
}

.mca-pre-toc-no-ad .mv-ad-box,
.mca-pre-toc-no-ad .mca-destination-ad-space,
.mca-pre-toc-no-ad .mca-hotel-ad-space,
.mca-post-opening .mca-dg-intro + .mv-ad-box:has(+ .mca-destination-jump),
.mca-post-opening .mca-dg-intro + .mv-ad-box:has(+ .mca-native-jump),
.mca-post-opening .mv-ad-box:has(+ .mca-destination-jump),
.mca-post-opening .mv-ad-box:has(+ .mca-native-jump),
.mca-post-opening .mca-destination-ad-space:has(+ .mca-destination-jump),
.mca-post-opening .mca-hotel-ad-space:has(+ .mca-native-jump) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
}

.mca-post-opening .mca-pre-toc-ad-moved {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 18px auto 0 !important;
  overflow: visible !important;
  padding: 0 !important;
}

.mca-dg-affiliate-trio,
.mca-hotel-resource-promos {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.mca-dg-affiliate-trio figure {
  min-width: 0 !important;
  margin: 0 !important;
}

.mca-dg-affiliate-trio a,
.mca-dg-affiliate-card,
.mca-hotel-resource-card {
  display: block !important;
  overflow: hidden !important;
  border: 1px solid var(--hotel-border, var(--destination-border, #f2d7dd)) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(55, 48, 52, 0.08) !important;
}

.mca-dg-affiliate-trio img,
.mca-dg-affiliate-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: none !important;
  object-fit: contain !important;
}

.mca-hotel-resource-card img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

.mca-hotel-resource-promos-sidebar {
  order: 99 !important;
}

.mca-viator-cards {
  margin: 26px 0 !important;
}

.mca-viator-cards-sidebar {
  order: 90 !important;
}

.mca-viator-cards h2 {
  margin: 0 0 16px !important;
  color: var(--hotel-ink, #282932) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(28px, 3.2vw, 42px) !important;
  line-height: 1.05 !important;
  text-align: center !important;
}

.mca-viator-card-row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 12px !important;
}

.mca-viator-card {
  position: relative !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr auto !important;
  gap: 9px !important;
  min-width: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  padding: 0 12px 14px !important;
  border: 1px solid #f2d7dd !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(55, 48, 52, 0.07) !important;
  color: var(--hotel-ink, #282932) !important;
  text-decoration: none !important;
}

.mca-viator-card img {
  width: calc(100% + 24px) !important;
  max-width: none !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  margin: 0 -12px !important;
  object-fit: cover !important;
}

.mca-viator-number {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: var(--hotel-coral, #e85f91) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

.mca-viator-label,
.mca-viator-cta {
  color: var(--hotel-coral, #e85f91) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.mca-viator-card strong {
  font-size: 15px !important;
  line-height: 1.2 !important;
}

.mca-viator-description {
  color: #4d535b !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.mca-viator-cta {
  align-self: end !important;
  margin-top: auto !important;
  padding-top: 6px !important;
}

.mca-viator-cta::after {
  content: " \2192" !important;
}

.mca-viator-cards-sidebar .mca-viator-card-row {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 9px !important;
}

.mca-viator-cards-sidebar h2 {
  font-size: 24px !important;
}

.mca-viator-cards-sidebar .mca-viator-card {
  gap: 6px !important;
  padding: 0 8px 10px !important;
}

.mca-viator-cards-sidebar .mca-viator-card img {
  width: calc(100% + 16px) !important;
  margin: 0 -8px !important;
}

.mca-viator-cards-sidebar .mca-viator-number {
  top: 7px !important;
  left: 7px !important;
  width: 26px !important;
  height: 26px !important;
  font-size: 10px !important;
}

.mca-viator-cards-sidebar .mca-viator-label,
.mca-viator-cards-sidebar .mca-viator-cta {
  font-size: 10px !important;
}

.mca-viator-cards-sidebar .mca-viator-card strong {
  font-size: 12px !important;
  line-height: 1.15 !important;
}

.mca-viator-cards-sidebar .mca-viator-description {
  font-size: 11px !important;
  line-height: 1.25 !important;
}

.mca-dg-email-optin .mca-flodesk-native,
.mca-universal-email .mca-flodesk-native,
.mca-single-mobile-email .mca-flodesk-native,
.mca-single-sidebar-email .mca-flodesk-native,
.mca-hotel-email-optin-mobile .mca-flodesk-native,
.mca-hotel-email-optin-sidebar .mca-flodesk-native,
.mca-dg-mobile-universal-email .mca-flodesk-native {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* MCA reusable mobile insert slot canonical layer v49.
   Legacy "hotel" class names are shared mobile in-feed slots, not hotel-only styling. */
.mca-hotel-mobile-insert,
.mca-hotel-plan-mobile {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow-x: clip !important;
}

.mca-hotel-plan-mobile {
  display: none !important;
  margin-top: 18px !important;
}

.mca-hotel-section-card > .wp-block-group__inner-container > .mca-hotel-mobile-insert:first-child + h2 {
  margin-top: 0 !important;
}

/* MCA shared desktop/mobile visibility final guard v49. */
@media (min-width: 981px) {
  .mca-dg-mobile-only,
  .mca-dg-mobile-universal-copy,
  .mca-dg-mobile-universal-email,
  .mca-dg-mobile-universal-email.mca-dg-email-optin,
  .mca-dg-mobile-universal-email.mca-universal-email,
  .mca-dg-mobile-universal-about,
  .mca-dg-mobile-universal-about.mca-dg-about-me,
  .mca-dg-mobile-universal-about.mca-universal-about,
  .mca-dg-mobile-email-copy,
  .mca-dg-mobile-about-copy,
  .mca-single-mobile-email,
  .mca-single-mobile-email.mca-dg-email-optin,
  .mca-single-mobile-email.mca-universal-email,
  .mca-single-mobile-about,
  .mca-single-mobile-about.mca-dg-about-me,
  .mca-single-mobile-about.mca-universal-about,
  .mca-dg-main .mca-dg-affiliate-trio,
  .mca-dg-affiliate-trio.mca-dg-mobile-only,
  .mca-hotel-mobile-insert,
  .mca-hotel-plan-mobile,
  .mca-hotel-email-optin-mobile,
  .mca-hotel-email-optin-mobile.mca-dg-email-optin,
  .mca-hotel-email-optin-mobile.mca-universal-email,
  .mca-hotel-about-mobile,
  .mca-hotel-about-mobile.mca-dg-about-me,
  .mca-hotel-about-mobile.mca-universal-about,
  .mca-hotel-resource-promos-mobile,
  .mca-viator-cards-mobile {
    display: none !important;
  }
}

@media (max-width: 980px) {
  .mca-dg-desktop-only,
  .mca-single-sidebar,
  .mca-hotel-sidebar,
  .mca-hotel-resource-promos-sidebar,
  .mca-viator-cards-sidebar {
    display: none !important;
  }

  .mca-hotel-plan-mobile {
    display: block !important;
  }

  .mca-dg-main .mca-dg-affiliate-trio,
  .mca-dg-affiliate-trio.mca-dg-mobile-only {
    display: grid !important;
  }

  .mca-dg-affiliate-trio {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .mca-hotel-resource-promos-mobile {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 730px !important;
    margin: 26px 0 !important;
    overflow-x: visible !important;
    padding-bottom: 6px !important;
    scroll-snap-type: none !important;
  }

  .mca-hotel-resource-promos-mobile a,
  .mca-viator-card {
    scroll-snap-align: start !important;
  }

  .mca-hotel-email-optin-mobile {
    width: 100% !important;
    max-width: 730px !important;
    margin: 28px 0 !important;
  }

  .mca-viator-cards-mobile {
    display: block !important;
  }

  .mca-viator-card-row {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    grid-auto-columns: unset !important;
    grid-auto-flow: row !important;
    overflow-x: visible !important;
    padding-bottom: 0 !important;
    scroll-snap-type: none !important;
  }

  .mca-hotel-section-card > .wp-block-group__inner-container > .mca-hotel-resource-promos-mobile:first-child + h2,
  .mca-hotel-section-card > .wp-block-group__inner-container > .mca-viator-cards-mobile:first-child + h2 {
    margin-top: 0 !important;
  }
}

@media (max-width: 760px) {
  .mca-native-jump,
  .mca-destination-jump,
  .mca-hotel-jump {
    width: min(calc(100% - 24px), 366px) !important;
    max-width: min(calc(100% - 24px), 366px) !important;
    gap: 6px !important;
    margin: 10px auto 18px !important;
    padding: 8px 9px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-radius: 10px !important;
    box-shadow: 0 8px 18px rgba(30, 28, 36, 0.08) !important;
    scroll-snap-type: x proximity !important;
    scroll-padding-left: 0 !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .mca-hotel-jump {
    top: 0 !important;
  }

  .mca-native-jump::-webkit-scrollbar,
  .mca-destination-jump::-webkit-scrollbar,
  .mca-hotel-jump::-webkit-scrollbar {
    display: none !important;
  }

  .mca-native-jump-label,
  .mca-destination-jump .mca-native-jump-label,
  .mca-hotel-jump .mca-native-jump-label {
    position: static !important;
    left: auto !important;
    z-index: 2 !important;
    flex: 0 0 auto !important;
    align-self: center !important;
    margin: 0 4px 0 0 !important;
    padding: 8px 10px !important;
    border-radius: 999px !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: 10.25px !important;
    line-height: 1 !important;
  }

  .mca-native-jump a,
  .mca-destination-jump a,
  .mca-hotel-jump a {
    max-width: min(72vw, 260px) !important;
    gap: 3px !important;
    padding: 6px 8px !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  .mca-native-jump a span:last-child,
  .mca-destination-jump a span:last-child,
  .mca-hotel-jump a span:last-child,
  .mca-destination-jump a span:not(.mca-native-jump-icon),
  .mca-native-jump a span:not(.mca-native-jump-icon) {
    min-width: 0 !important;
    max-width: 190px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  .mca-native-jump-icon,
  .mca-hotel-jump-icon {
    font-size: 10px !important;
    line-height: 1 !important;
  }

  .mca-hotel-cta-box {
    gap: 8px !important;
    padding: 16px !important;
    margin-top: 28px !important;
  }

  .mca-hotel-cta-box .mca-hotel-button,
  .mca-hotel-cta-box .wp-block-button__link {
    box-sizing: border-box !important;
    max-width: 100% !important;
    padding-inline: 14px !important;
    font-size: clamp(10px, 2.85vw, 12px) !important;
    line-height: 1.14 !important;
    text-wrap: balance !important;
  }

  .mca-hotel-resource-promos-mobile {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    max-width: 100% !important;
  }

  .mca-dg-affiliate-trio {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .mca-hotel-main .mca-viator-cards {
    width: 100% !important;
    max-width: 100% !important;
    margin: 22px 0 !important;
    padding: 14px !important;
    overflow-x: clip !important;
  }

  .mca-hotel-main .mca-viator-cards h2 {
    margin: 0 0 12px !important;
    font-size: clamp(24px, 7vw, 30px) !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  .mca-hotel-main .mca-viator-card-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 9px !important;
    width: 100% !important;
  }

  .mca-hotel-main .mca-viator-card {
    gap: 6px !important;
    min-width: 0 !important;
    padding: 0 8px 10px !important;
  }

  .mca-hotel-main .mca-viator-card img {
    width: calc(100% + 16px) !important;
    margin: 0 -8px !important;
  }

  .mca-hotel-main .mca-viator-number {
    top: 7px !important;
    left: 7px !important;
    width: 26px !important;
    height: 26px !important;
    font-size: 10px !important;
  }

  .mca-hotel-main .mca-viator-label,
  .mca-hotel-main .mca-viator-cta {
    font-size: 10px !important;
  }

  .mca-hotel-main .mca-viator-card strong {
    font-size: 12px !important;
    line-height: 1.15 !important;
  }

  .mca-hotel-main .mca-viator-description {
    font-size: 11px !important;
    line-height: 1.25 !important;
  }
}

/* MCA final shared body component migration v50 START */
/* Shared body components now live here instead of hotel/destination/waterfall page CSS. */
/* Source migrated from theme-src/assets/css/theme.css. */
.mca-single-opening-content > style:first-child + .mca-wf,
.mca-single-opening-content > .mca-wf:first-child {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 560px) {
body.single-post .entry-content .mca-wf .mca-wf-collage {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
    margin: 12px 0 18px !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    background: #eefbfc !important;
  }

}

@media (max-width: 560px) {
body.single-post .entry-content .mca-wf .mca-wf-collage .mca-wf-photo {
    display: none !important;
  }

}

@media (max-width: 560px) {
body.single-post .entry-content .mca-wf .mca-wf-collage .mca-wf-photo:first-child {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    border-radius: 8px !important;
    background-image: url("https://lh7-us.googleusercontent.com/CeIr_KpASpc7XXZmeLziyPB9EtZ4HlAU_8k78e5gkScVeNOYyYEve-tQeEgaKFD0Nc7gtr6LemZLzb_hEPjLfxv-z3rT-zR-Nv2owO2LLnAswk1r2cN_aa87XRrqqA4s8nh4vhZzpc1Nif-N97KapvI") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
  }

}

/* Waterfall/trail reusable body components. Applied by the .mca-wf block, not by a post ID. */
body.single-post:has(.entry-content>.mca-wf) {--teal:#009aa6;--teal-dark:#064653;--pink:#f73578;--pale:#eefbfc;--border:#b9eef2;--ink:#123d49;--coral:#fb5f8f;overflow-x:hidden!important}

body.single-post:has(.entry-content>.mca-wf) article>header,
body.single-post:has(.entry-content>.mca-wf) .entry-header,
body.single-post:has(.entry-content>.mca-wf) .entry-title,
body.single-post:has(.entry-content>.mca-wf) .posted-on,
body.single-post:has(.entry-content>.mca-wf) .entry-date,
body.single-post:has(.entry-content>.mca-wf) .entry-meta,
body.single-post:has(.entry-content>.mca-wf) .post-thumbnail,
body.single-post:has(.entry-content>.mca-wf) .single-post-thumbnail,
body.single-post:has(.entry-content>.mca-wf) .featured-image,
body.single-post:has(.entry-content>.mca-wf) .featured-media,
body.single-post:has(.entry-content>.mca-wf) img.wp-post-image,
body.single-post:has(.entry-content>.mca-wf) .jump-links,
body.single-post:has(.entry-content>.mca-wf) .article-jump-links {display:none!important}

body.single-post:has(.entry-content>.mca-wf) .entry-content {display:block!important;max-width:none!important;padding-top:0!important}

.mca-wf {--teal:#009aa6;--teal-dark:#064653;--pink:#f73578;--pale:#eefbfc;--pink-pale:#fff8fb;--border:#b9eef2;--ink:#123d49;box-sizing:border-box;width:min(1180px,calc(100vw - 48px));margin:28px auto 26px!important;color:var(--ink);font-size:16px;line-height:1.5;transform:none!important}

.mca-wf * {box-sizing:border-box}

.mca-wf a {color:var(--pink);font-weight:900;text-decoration:none}

.mca-wf-shell {display:grid;grid-template-columns:minmax(0,1fr) 306px;gap:24px;align-items:start}

.mca-wf-main {min-width:0}

.mca-wf-rail {display:grid;gap:16px;position:static;top:auto;min-width:0}

.mca-wf-hero {display:grid;grid-template-columns:1fr;gap:18px;align-items:center;margin:0 0 34px}

.mca-wf-kicker {display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:999px;padding:7px 15px;color:var(--teal-dark);font-weight:900;background:#fff;margin-bottom:15px;font-size:15px}

.mca-wf h1 {margin:0 0 16px;color:var(--teal-dark);font-size:clamp(37px,3.25vw,48px);line-height:1.05;letter-spacing:0;text-transform:uppercase;font-weight:900;max-width:100%}

.mca-wf h1 span {display:block;white-space:nowrap}

.mca-wf-lede {font-size:19px;line-height:1.45;max-width:590px;margin:0 0 18px}

.mca-wf-meta {display:flex;gap:16px;flex-wrap:wrap;font-size:12px;text-transform:uppercase;font-weight:900;color:var(--teal-dark)}

.mca-wf-meta span {border-left:5px solid var(--pink);padding-left:10px}

.mca-wf-collage {display:grid;grid-template-columns:.82fr 1.16fr .82fr;gap:8px;height:260px;min-width:0;overflow:hidden;border-radius:8px;margin:0 0 2px}

.mca-wf-photo {display:block;width:100%;height:100%;min-height:0;background-size:cover;background-position:center;background-repeat:no-repeat}

.mca-wf-module,
.mca-wf-card {border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 10px 26px rgba(0,154,166,.07)}

.mca-wf-module {margin:0 0 18px;overflow:hidden}

.mca-wf-head {display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:18px 20px 12px}

.mca-wf-num {display:grid;place-items:center;width:46px;height:46px;border-radius:999px;background:var(--pink);color:#fff;font-size:25px;font-weight:900;line-height:1}

.mca-wf-num.teal {background:var(--teal)}

.mca-wf h2 {margin:0;color:var(--teal-dark);font-size:27px;line-height:1.14;letter-spacing:0}

.mca-wf-head p {margin:3px 0 0;font-size:15.5px;line-height:1.35}

.mca-wf-quick {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #f8bfd2}

.mca-wf-quick div {padding:14px 15px;border-right:1px solid #f8bfd2;background:linear-gradient(180deg,#fff,#fff8fb)}

.mca-wf-quick div:last-child {border-right:0}

.mca-wf-label {display:block;font-size:11px;line-height:1.15;text-transform:uppercase;color:var(--pink);font-weight:900;margin-bottom:5px}

.mca-wf-quick strong {display:block;color:var(--teal-dark);font-size:15px;line-height:1.25}

.mca-wf-levels {padding:0 20px 20px}

.mca-wf-checks {list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}

.mca-wf-checks li {position:relative;padding:14px 14px 14px 38px;font-size:15px;line-height:1.38;font-weight:800;border:1px solid var(--border);border-radius:8px;background:#fff;min-height:86px}

.mca-wf-checks li:before {content:"";position:absolute;left:14px;top:18px;width:14px;height:14px;border-radius:999px;background:var(--teal)}

.mca-wf-trails {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 20px 20px;align-items:stretch}

.mca-wf-card {overflow:hidden;display:flex;flex-direction:column;min-width:0}

.mca-wf-card-img {width:100%;height:176px;display:block;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:var(--pale)}

.mca-wf-card-body {padding:14px 16px 16px;display:flex;flex-direction:column;flex:1}

.mca-wf-card h3 {margin:0 0 6px;color:var(--teal-dark);font-size:21px;line-height:1.12;letter-spacing:0}

.mca-wf-facts {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px;color:var(--teal-dark);font-size:12px;font-weight:900}

.mca-wf-card p {margin:0 0 10px;font-size:15.5px;line-height:1.45}

.mca-wf-card a {display:inline-block;margin-top:auto}

body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h2,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h3,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h4,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~p,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~figure,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~ul,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~ol,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-image,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-gallery,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-columns,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-group,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-html,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.shopthepost-widget,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.mca-note-image {box-sizing:border-box;width:min(850px,calc(100vw - 420px));max-width:850px;margin-left:calc(50% - 560px);margin-right:auto;padding-left:0;padding-right:0;float:none;clear:both;position:relative}

body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h2 {margin-top:28px;margin-bottom:16px;font-size:30px;line-height:1.18}

body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h3 {margin-top:18px;margin-bottom:10px;font-size:23px;line-height:1.2}

body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~p {margin-top:0;margin-bottom:17px;font-size:18px;line-height:1.65}

body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~figure,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.mca-note-image {margin-top:16px;margin-bottom:16px;overflow:hidden;border-radius:8px}

body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~figure img,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.mca-note-image img {width:100%;height:auto;display:block;object-fit:cover;border-radius:8px}

.mca-2026-note {border-left:5px solid var(--teal)!important;background:var(--pale)!important;padding:11px 14px!important;font-size:16px!important;line-height:1.52!important;font-style:italic!important;color:var(--ink)!important}

.mca-2026-note strong {font-style:normal;color:var(--teal-dark)}

.mca-inline-ad {width:min(850px,calc(100vw - 420px));max-width:850px;margin:22px auto 22px calc(50% - 560px);clear:both}

.mca-empty-ad {display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf {width:min(100%,calc(100vw - 32px))}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-shell {grid-template-columns:minmax(0,1fr) 286px;gap:18px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-hero {grid-template-columns:1fr;gap:18px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf h1 {font-size:clamp(35px,4.1vw,44px);max-width:100%}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-collage {height:235px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-trails {gap:12px;padding:0 14px 16px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-card-img {height:142px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-card-body {padding:13px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-card h3 {font-size:19px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-card p {font-size:14px}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-quick {grid-template-columns:repeat(2,minmax(0,1fr))}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-quick div:nth-child(2) {border-right:0}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-quick div:nth-child(n+3) {border-top:1px solid #f8bfd2}

}

@media(max-width:1080px) and (min-width:901px) {
.mca-wf-checks {grid-template-columns:1fr}

}

@media(max-width:900px) {
.mca-wf {width:min(100%,calc(100vw - 22px));margin-top:18px!important}

}

@media(max-width:900px) {
.mca-wf-shell,
.mca-wf-hero {grid-template-columns:1fr}

}

@media(max-width:900px) {
.mca-wf-rail {position:static;grid-template-columns:1fr;gap:14px}

}

@media(max-width:900px) {
.mca-wf h1 {font-size:34px;line-height:1.08;max-width:100%}

}

@media(max-width:900px) {
.mca-wf h1 span {white-space:normal}

}

@media(max-width:900px) {
.mca-wf-lede {font-size:18px}

}

@media(max-width:900px) {
.mca-wf-collage {height:260px}

}

@media(max-width:900px) {
.mca-wf-quick,
.mca-wf-trails,
.mca-wf-checks {grid-template-columns:1fr}

}

@media(max-width:900px) {
.mca-wf-quick div {border-right:0;border-bottom:1px solid #f8bfd2}

}

@media(max-width:900px) {
.mca-wf-quick div:last-child {border-bottom:0}

}

@media(max-width:900px) {
.mca-wf-head {padding:16px;grid-template-columns:auto minmax(0,1fr)}

}

@media(max-width:900px) {
.mca-wf h2 {font-size:24px}

}

@media(max-width:900px) {
.mca-wf-trails {padding:0 16px 16px}

}

@media(max-width:900px) {
.mca-wf-card-img {height:auto;aspect-ratio:1.45/1}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h2,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h3,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~h4,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~p,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~figure,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~ul,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~ol,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-image,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-gallery,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-columns,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-group,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.wp-block-html,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.shopthepost-widget,
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~.mca-note-image,
.mca-inline-ad {width:min(820px,calc(100vw - 28px));max-width:min(820px,calc(100vw - 28px));margin-left:auto;margin-right:auto}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .entry-content>.mca-wf~p {font-size:18px;line-height:1.63}

}

.mca-wf *,
.wf-body-layout * {box-sizing:border-box}

.mca-wf {margin-top:28px!important}

.mca-wf-shell {display:block!important}

.mca-wf-main {width:100%!important}

.mca-wf-hero {max-width:none}

.mca-wf-module {max-width:100%}

.wf-body-layout {width:min(1180px,calc(100vw - 48px));margin:22px auto 0;display:grid;grid-template-columns:minmax(0,1fr) 306px;gap:24px;align-items:start}

.wf-body-main {min-width:0}

.mca-approved-sidebar {position:static;top:auto;display:grid;gap:18px;min-width:0}

/* Shared post layout contract. Old hotel/destination/single/waterfall names are compatibility labels only. */
:root {
  --mca-post-layout-width: 1180px;
  --mca-post-main-width: 760px;
  --mca-post-sidebar-width: 320px;
  --mca-post-layout-gap: clamp(24px, 4vw, 42px);
}

.mca-post-shell,
.mca-post-opening,
.mca-post-opening-content {
  box-sizing: border-box;
}

/* MCA shared post opening width guard v55.
   The opening package is one shared system: title, hero photos, intro copy, and TOC align. */
.mca-post-opening,
.mca-post-opening-content {
  width: min(var(--mca-post-layout-width), calc(100vw - 48px)) !important;
  max-width: var(--mca-post-layout-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mca-destination-hero h1,
.mca-hotel-hero h1 {
  width: 100% !important;
  max-width: 100% !important;
}

.mca-destination-hero h1 {
  font-size: clamp(40px, 4.2vw, 66px) !important;
}

.mca-post-opening .mca-dg-intro,
.mca-post-opening .mca-destination-narrative,
.mca-post-opening .mca-dg-intro > .wp-block-group__inner-container,
.mca-post-opening .mca-destination-narrative > .wp-block-group__inner-container,
.mca-post-opening-content > p,
.mca-post-opening-content > .wp-block-paragraph {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mca-post-opening .mca-destination-narrative {
  padding-top: 0 !important;
}

.mca-post-layout {
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, var(--mca-post-sidebar-width)) !important;
  gap: var(--mca-post-layout-gap) !important;
  align-items: start !important;
  width: min(var(--mca-post-layout-width), calc(100vw - 48px)) !important;
  max-width: var(--mca-post-layout-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mca-post-layout:not(:has(> .mca-post-sidebar)) {
  grid-template-columns: minmax(0, var(--mca-post-main-width)) !important;
  justify-content: center !important;
}

.mca-post-layout.has-embedded-layout {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
}

.mca-post-main {
  box-sizing: border-box;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mca-post-sidebar {
  box-sizing: border-box;
  display: grid;
  gap: 18px;
  align-self: start;
  min-width: 0;
  max-width: 100%;
  position: static !important;
  top: auto !important;
  max-height: none !important;
  overflow: visible !important;
  overscroll-behavior: auto !important;
}

.mca-single-mobile-contextual-sidebar {
  display: none !important;
}

@media (max-width: 980px) {
  .mca-post-layout {
    width: min(100%, calc(100vw - 28px)) !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .mca-post-main {
    width: 100% !important;
  }

	  .mca-hotel-sidebar.mca-post-sidebar,
	  .mca-dg-sidebar.mca-post-sidebar,
	  .mca-single-sidebar.mca-post-sidebar {
	    display: none !important;
	  }

  .mca-single-mobile-contextual-sidebar {
    display: grid !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 24px 0 !important;
  }
}

.mca-sidebar-card {box-sizing:border-box;width:100%;max-width:100%;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 10px 26px rgba(0,154,166,.07)}

.mca-sidebar-card *,
.mca-approved-sidebar * {box-sizing:border-box}

.mca-sidebar-card h3 {margin:0 0 9px;color:var(--teal-dark);font-size:24px;line-height:1.08}

.mca-sidebar-card p {margin:0 0 13px;color:#4f5965;font-size:16px;line-height:1.45}

.mca-sidebar-kicker {display:block;margin:0 0 6px;color:var(--pink);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}

.mca-sidebar-card-media {display:block;width:100%;margin:0;background:var(--pale)}

.mca-sidebar-card-media img {display:block;width:100%;height:158px;max-width:none;object-fit:cover;object-position:var(--mca-object-position, center);background:var(--pale)}

.mca-sidebar-card-body {display:grid;gap:0;padding:16px}

.mca-sidebar-button,
.mca-sidebar-card .mca-sidebar-button {display:inline-flex;justify-content:center;align-items:center;justify-self:start;min-height:40px;max-width:100%;padding:10px 16px;border-radius:999px;background:var(--teal);color:#fff!important;font-size:13px;font-weight:900;line-height:1;text-align:center;text-decoration:none;text-transform:uppercase}

.mca-sidebar-one-photo-card h3 {line-height:1.1}

.mca-sidebar-one-photo-card p {color:#315c66}

.mca-sidebar-one-photo-card .mca-sidebar-card-body {padding:16px}

.mca-sidebar-one-photo-card.is-pale {background:#f7feff}

.mca-sidebar-one-photo-card.is-alltrails .mca-sidebar-card-media img {object-position:center 35%}

.mca-sidebar-full-photo-card {border:0;background:transparent;box-shadow:none;overflow:visible}

.mca-sidebar-full-photo-card a {display:grid!important;position:relative;width:100%;aspect-ratio:1/1;min-height:0;padding:0!important;border:1px solid var(--border);border-radius:8px!important;overflow:hidden;background:#073f45!important;box-shadow:0 10px 26px rgba(0,154,166,.07);color:#fff!important;text-align:left!important;text-transform:none!important;align-content:end;text-decoration:none}

@supports not (aspect-ratio:1/1) {
	.mca-sidebar-full-photo-card a {min-height:306px}
}

.mca-sidebar-full-photo-card img {position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--mca-object-position, center 44%);filter:saturate(1.02)}

.mca-sidebar-full-photo-card a:after {content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 34%,rgba(0,48,54,.82) 100%)}

.mca-sidebar-full-photo-card span,
.mca-sidebar-full-photo-card strong,
.mca-sidebar-full-photo-card em {position:relative;z-index:1;margin:0 18px}

.mca-sidebar-full-photo-card .mca-sidebar-kicker {color:#ff8daf!important}

.mca-sidebar-full-photo-card strong {display:block;margin-bottom:18px;font-size:25px;line-height:1.05;font-weight:900;color:#fff!important}

.mca-sidebar-full-photo-card em {display:inline-flex;justify-self:start;justify-content:center;align-items:center;margin-bottom:18px;border-radius:999px;background:#fff;color:#073f45;font-style:normal;font-size:12px;font-weight:900;text-transform:uppercase;padding:9px 14px}

.wf-preview h2 {margin:0 0 18px;color:#2f323b;font-size:clamp(28px,4vw,36px);line-height:1.1}

.trail-list {display:grid;gap:14px}

.trail-card {display:grid;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:0 8px 22px rgba(0,154,166,.07);overflow:hidden}

.trail-card.has-photos {grid-template-columns:minmax(520px,62%) minmax(0,1fr);align-items:stretch}

.trail-card.no-photos {grid-template-columns:1fr}

.media {display:grid;gap:4px;background:var(--pale);padding:4px;min-height:300px}

.media img {display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:var(--mca-object-position, center center);border-radius:6px;background:var(--pale)}

.trail-card .media img[alt^="me " i],
.trail-card .media img[alt*=" me " i],
.trail-card .media img[alt*="person" i],
.trail-card .media img[alt*="people" i],
.trail-card .media img[alt*="jessica" i] {--mca-object-position:center 18%}

#h-nbsp-inks-lake-state-park .media img:first-child {object-position:center 18%}

.media-1 {grid-template-columns:1fr;height:340px}

.media-2 {grid-template-columns:1fr 1fr;height:330px}

.media-3 {grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;height:360px}

.media-3 img:first-child {grid-row:1/3}

.trail-body {padding:16px 18px;display:flex;flex-direction:column;justify-content:flex-start}

.trail-title-row {display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start}

.trail-number {display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--pale);color:var(--teal-dark);font-weight:900;font-size:14px}

.trail-card h3 {margin:0 0 6px;color:var(--teal-dark);font-size:23px;line-height:1.14}

.trail-card p {margin:0;font-size:16px;line-height:1.48}

.trail-extra {display:block;margin-top:9px;color:#315c66;font-size:15.5px;line-height:1.45}

.trail-card details {border-top:1px solid #d7f4f6;margin-top:14px;padding-top:10px}

.trail-card summary {cursor:pointer;color:var(--pink);font-weight:900;font-size:16px;line-height:1.48;list-style:none}

.trail-card summary::-webkit-details-marker {display:none}

.trail-notes {padding-top:12px}

.trail-notes p {font-size:16px;line-height:1.58;margin:0 0 14px}

.trail-notes figure {margin:14px 0;border-radius:8px;overflow:hidden}

.trail-notes img {display:block;width:100%;height:auto;border-radius:8px}

.trail-notes hr {border:0;border-top:1px solid #d7f4f6;margin:18px 0}

@media(max-width:900px) {
.wf-body-layout {width:min(100%,calc(100vw - 22px))}

}

@media(max-width:900px) {
.wf-body-layout {grid-template-columns:1fr}

}

@media(max-width:900px) {
.mca-approved-sidebar {position:static}

}

@media(max-width:900px) {
.trail-card.has-photos,
.trail-card.no-photos {grid-template-columns:1fr}

}

@media(max-width:900px) {
.media {min-height:0}

}

@media(max-width:900px) {
.media-1 {height:250px}

}

@media(max-width:900px) {
.media-2 {height:210px}

}

@media(max-width:900px) {
.media-3 {height:235px}

}

@media(max-width:900px) {
.trail-body {padding:14px}

}

@media(max-width:900px) {
.trail-extra {display:block}

}

@media(max-width:900px) {
.mca-wf {width:min(100%,calc(100vw - 22px))!important}

}

@media(max-width:900px) {
.mca-wf-collage {max-width:100%;grid-template-columns:1fr;height:260px}

}

@media(max-width:900px) {
.mca-wf-photo:nth-child(n+2) {display:none}

}

/* Shared approved sidebar card layout for reusable legacy/article sidebars. */
.mca-approved-sidebar {gap:18px}

@media(min-width:901px) {
.trail-list {grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}

}

@media(min-width:901px) {
.trail-card {height:auto}

}

@media(min-width:901px) {
.trail-card.trail-feature {grid-column:1/-1;grid-template-columns:minmax(390px,56%) minmax(0,1fr)}

}

@media(min-width:901px) {
.trail-card.trail-two {grid-template-columns:1fr}

}

@media(min-width:901px) {
.trail-card.trail-two .media {min-height:0}

}

@media(min-width:901px) {
.trail-card.trail-two .media-1 {height:238px}

}

@media(min-width:901px) {
.trail-card.trail-two .media-2 {height:238px}

}

@media(min-width:901px) {
.trail-card.trail-two .media-3 {height:258px}

}

@media(min-width:901px) {
.trail-card.trail-two .trail-body {justify-content:flex-start;min-height:0}

}

@media(min-width:901px) {
.trail-card.trail-two h3 {font-size:22px}

}

@media(min-width:901px) {
.trail-card.trail-two p {font-size:15.5px}

}

@media(min-width:901px) {
.trail-card.no-photos {grid-template-columns:1fr}

}

@media(min-width:901px) {
.trail-card.no-photos.trail-two {min-height:0}

}

@media(min-width:901px) {
.trail-card.no-photos.trail-feature {grid-column:1/-1;min-height:0}

}

@media(min-width:901px) {
.trail-card.no-photos .trail-body {justify-content:flex-start}

}

@media(max-width:900px) {
.mca-sidebar-card h3 {font-size:23px}

}

@media(max-width:900px) {
.mca-sidebar-card p {font-size:16px}

}

@media(max-width:900px) {
.trail-list {grid-template-columns:1fr}

}

@media(max-width:900px) {
.trail-card.trail-feature,
.trail-card.trail-two {grid-column:auto;grid-template-columns:1fr}

}


@media(min-width:901px) {
.trail-card.no-photos.trail-feature .trail-body {padding:18px 20px}

}

@media(min-width:901px) {
.trail-card.no-photos.trail-feature .trail-title-row {grid-template-columns:34px minmax(0,1fr)}

}

@media(min-width:901px) {
.trail-card.has-photos.trail-feature .trail-body {justify-content:flex-start;padding:22px}

}

@media(min-width:901px) {
.trail-card.has-photos.trail-feature details {margin-top:12px}

}

@media(min-width:901px) {
.trail-card.has-photos .trail-body {min-height:100%}

}

@media(min-width:901px) {
.trail-card.has-photos details:not([open]) {margin-top:auto}

}

@media(min-width:901px) {
.trail-card.has-photos details[open] {margin-top:14px}

}

.wf-lower-content {margin-top:24px;display:block}

.wf-lower-content h2 {margin:28px 0 14px;color:var(--teal-dark);font-size:30px;line-height:1.14}

.wf-lower-content h2 a {color:inherit;text-decoration:none}

.wf-lower-content p,
.wf-lower-content li {font-size:18px;line-height:1.62;color:var(--ink)}

.wf-lower-content p {margin:0 0 16px}

.wf-lower-content ul {margin:0 0 18px;padding-left:24px}

.wf-lower-content figure {margin:18px 0;border-radius:8px;overflow:hidden}

.wf-lower-content img {display:block;width:100%;height:auto;border-radius:8px}

.wf-lower-content .wp-block-gallery {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0;margin:18px 0}

.wf-lower-content .wp-block-gallery figure {margin:0}

.wf-lower-content .wp-block-gallery img {width:100%;height:210px;object-fit:cover}

.shopthepost-widget {min-height:54px;border:1px dashed #f8bfd2;border-radius:8px;padding:14px;margin:18px 0;color:#315c66;background:#fff8fb;font-weight:800}

@media(max-width:900px) {
.wf-lower-content h2 {font-size:27px}

}

@media(max-width:900px) {
.wf-lower-content p,
.wf-lower-content li {font-size:17px;line-height:1.58}

}

@media(max-width:900px) {
.wf-lower-content .wp-block-gallery {grid-template-columns:1fr}

}

@media(max-width:900px) {
.wf-lower-content .wp-block-gallery img {height:auto}

}

.mca-wf + .mv-ad-box {display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important}

body.single-post:has(.entry-content>.mca-wf) .mca-approved-sidebar-about,
body.single-post:has(.entry-content>.mca-wf) .mca-approved-sidebar-email {width:100%!important;max-width:100%!important}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .mca-approved-sidebar-about,
body.single-post:has(.entry-content>.mca-wf) .mca-approved-sidebar-email {display:none!important}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .wf-body-layout {display:flex!important;flex-direction:column!important}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .wf-body-main,
body.single-post:has(.entry-content>.mca-wf) .wf-lower-content {display:contents!important}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .mca-approved-sidebar {order:80;width:100%;display:grid!important;gap:14px!important}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .mca-wf-pinterest-save {order:90}

}

@media(max-width:900px) {
body.single-post:has(.entry-content>.mca-wf) .mca-single-mobile-about-flow-anchor {order:100}

}

/* Source migrated from theme-src/assets/css/destination-guide.css. */
.mca-destination-stay,
.mca-destination-plan {
  width: 100%;
  margin-top: 28px;
}

.mca-destination-stay-card span {
  display: inline-flex;
  margin-bottom: 10px;
  color: var(--destination-coral);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.mca-destination-stay-card h3 {
  margin: 0 0 8px;
  font-size: 23px;
}

.mca-destination-stay-card p {
  margin: 0;
  color: #41454d;
  font-size: 15px;
  line-height: 1.55;
}

.mca-destination-stay-card p + p {
  margin-top: 10px;
}

.mca-destination-stay {
  max-width: 1120px;
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid #f5dce2;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 246, 249, 0.96), rgba(244, 252, 252, 0.9)),
    #fff;
}

.mca-destination-outline-button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 11px 18px;
  border: 2px solid #f6adc0;
  border-radius: 8px;
  color: var(--destination-coral);
  background: #fff;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.mca-destination-outline-button::after {
  margin-left: 9px;
  content: ">";
}

.mca-destination-stay-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.mca-destination-stay-card {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.mca-destination-stay-card img {
  width: 100%;
  aspect-ratio: 16 / 7;
  object-fit: cover;
  object-position: center;
}

.mca-destination-plan {
  max-width: 1000px;
  display: grid;
  grid-template-columns: minmax(240px, 0.68fr) minmax(0, 1.32fr);
  gap: 24px;
  align-items: start;
  padding: clamp(20px, 3vw, 30px);
  border-radius: 8px;
  background: #fff8f3;
}

.mca-destination-plan > p,
.mca-destination-plan ol,
.mca-destination-plan-notes {
  grid-column: 2;
}

.mca-destination-plan > p {
  margin: 0 0 -6px;
  color: #3f4249;
  font-size: 15px;
  font-weight: 800;
}

.mca-destination-plan ol {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mca-destination-plan li {
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid #f4d8ce;
  font-size: 15px;
  line-height: 1.35;
}

.mca-destination-plan li:last-child {
  border-bottom: 0;
}

.mca-destination-plan li span {
  color: var(--destination-coral);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.mca-destination-plan-notes {
  display: grid;
  gap: 7px;
}

.mca-destination-plan-notes p {
  margin: 0;
  color: #41454d;
  font-size: 14px;
  line-height: 1.45;
}

@media (max-width: 760px) {
.mca-destination-plan {
    grid-template-columns: 1fr;
  }

}

@media (max-width: 760px) {
.mca-destination-stay-grid {
    display: block;
    grid-auto-columns: auto;
    grid-auto-flow: row;
    grid-template-columns: none;
    overflow: hidden;
    padding-bottom: 0;
  }

}

@media (max-width: 760px) {
.mca-destination-stay-grid > .wp-block-group__inner-container,
.mca-destination-stay-grid:not(:has(> .wp-block-group__inner-container)) {
    display: grid;
    grid-auto-columns: minmax(250px, calc(100% - 58px));
    grid-auto-flow: column;
    grid-template-columns: none;
    gap: 14px;
    width: 100%;
    min-width: 100%;
    overflow-x: auto;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

}

@media (max-width: 760px) {
.mca-destination-stay-card {
    scroll-snap-align: start;
  }

}

@media (max-width: 760px) {
.mca-destination-stay-card:last-child {
    scroll-snap-align: end;
  }

}

@media (max-width: 760px) {
.mca-destination-plan li {
    grid-template-columns: 1fr;
    gap: 4px;
  }

}

@media (max-width: 760px) {
.mca-destination-plan > p,
.mca-destination-plan ol,
.mca-destination-plan-notes {
    grid-column: auto;
  }

}

/* Source migrated from theme-src/assets/css/destination-guide-v2.css. */
.mca-destination-stay-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.35rem;
  padding: 0.72rem 1rem;
  border: 1px solid #f48cab;
  border-radius: 999px;
  background: #fff7fa;
  color: #e85f8e;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

.mca-destination-stay-cta:hover,
.mca-destination-stay-cta:focus {
  background: #e85f8e;
  color: #fff;
}

.mca-destination-stay-card .mca-destination-stay-cta {
  color: #e85f8e;
}

.mca-destination-stay-card .mca-destination-stay-cta:hover,
.mca-destination-stay-card .mca-destination-stay-cta:focus {
  color: #fff;
}

.mca-destination-stay-grid>.wp-block-group__inner-container {grid-column:1/-1;display:grid;grid-template-columns:inherit;gap:inherit;width:100%;max-width:none!important;margin:0!important}

.mca-destination-stay-grid>.wp-block-group__inner-container>.wp-block-group {display:grid;gap:9px;min-width:0}

@media(max-width:760px) {
/* MCA destination mobile stay rail viewport guard v29 */
  .mca-destination-stay-grid {
    display: block !important;
    grid-auto-flow: row !important;
    grid-auto-columns: auto !important;
    grid-template-columns: none !important;
    overflow: hidden;
  }

}

@media(max-width:760px) {
.mca-destination-stay-grid > .wp-block-group__inner-container {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(250px, calc(100% - 58px)) !important;
    grid-template-columns: none !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 0 10px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    scroll-padding-inline: 0;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }

}

@media(max-width:760px) {
.mca-destination-stay-grid > .wp-block-group__inner-container > .wp-block-group {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
    scroll-snap-align: start;
    height: auto !important;
    min-height: 0 !important;
  }

}

@media(max-width:760px) {
.mca-destination-stay-grid > .wp-block-group__inner-container > .wp-block-group:last-child {
    scroll-snap-align: end;
  }

}

.mca-destination-stay-card figure {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box;
  overflow: hidden;
}

.mca-destination-stay-card img {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}

@media(max-width:760px) {
body.single-post .mca-destination-guide .mca-destination-stay-grid {
    display:block!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    grid-template-columns:none!important;
    overflow:hidden!important;
  }

}

@media(max-width:760px) {
body.single-post .mca-destination-guide .mca-destination-stay-grid>.wp-block-group__inner-container {
    display:grid!important;
    grid-auto-flow:column!important;
    grid-auto-columns:minmax(250px,calc(100% - 58px))!important;
    grid-template-columns:none!important;
    gap:14px!important;
    width:100%!important;
    min-width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 0 10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-padding-inline:0!important;
    -webkit-overflow-scrolling:touch;
  }

}

@media(max-width:760px) {
body.single-post .mca-destination-guide .mca-destination-stay-grid>.wp-block-group__inner-container>.wp-block-group,
body.single-post .mca-destination-guide .mca-destination-stay-card {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    scroll-snap-align:start;
  }

}

@media(max-width:760px) {
body.single-post .mca-destination-guide .mca-destination-stay-grid>.wp-block-group__inner-container>.wp-block-group:last-child,
body.single-post .mca-destination-guide .mca-destination-stay-card:last-child {
    scroll-snap-align:end;
  }

}

@media(max-width:760px) {
body.single-post .mca-destination-guide .mca-destination-stay-card>.wp-block-group__inner-container {
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

}

/* MCA shared quick-plan canonical rebuild v56.
   This block is a reusable body component. The legacy destination class and
   the shared mca-quick-plan class must resolve to the same design. */
.mca-destination-quick-plan,
.mca-quick-plan {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 28px auto 0 !important;
  padding: clamp(18px, 2.2vw, 26px) !important;
  overflow: hidden !important;
  border: 1px solid #f3d8df !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #fff 0%, #fff7fa 58%, #f1fbfc 100%) !important;
  box-shadow: 0 12px 28px rgba(62, 47, 52, 0.06) !important;
  color: #2b2c34 !important;
}

.mca-destination-quick-plan *,
.mca-destination-quick-plan *::before,
.mca-destination-quick-plan *::after,
.mca-quick-plan *,
.mca-quick-plan *::before,
.mca-quick-plan *::after {
  box-sizing: border-box !important;
}

.mca-destination-quick-plan > .wp-block-group__inner-container,
.mca-quick-plan > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.55fr) minmax(0, 1fr) !important;
  gap: 14px 22px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.mca-destination-quick-plan > .wp-block-group__inner-container > .wp-block-group:first-child,
.mca-quick-plan > .wp-block-group__inner-container > .wp-block-group:first-child {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.mca-destination-quick-plan > .wp-block-group__inner-container > .wp-block-group:first-child > .wp-block-group__inner-container,
.mca-quick-plan > .wp-block-group__inner-container > .wp-block-group:first-child > .wp-block-group__inner-container {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.mca-destination-quick-plan .mca-destination-section-label,
.mca-quick-plan .mca-destination-section-label {
  display: inline-flex !important;
  margin: 0 0 6px !important;
  color: var(--hotel-coral, var(--destination-coral, var(--coral, #ee5f91))) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.mca-destination-quick-plan h2,
.mca-quick-plan h2 {
  max-width: 11ch !important;
  margin: 0 !important;
  color: var(--mca-heading-color, #0d4d57) !important;
  font-size: clamp(2rem, 3.1vw, 2.65rem) !important;
  line-height: 1.02 !important;
  letter-spacing: 0 !important;
  overflow-wrap: normal !important;
}

.mca-destination-quick-plan > .wp-block-group__inner-container > p,
.mca-quick-plan > .wp-block-group__inner-container > p {
  grid-column: 1 !important;
  grid-row: 2 !important;
  max-width: 30ch !important;
  margin: 0 !important;
  color: #4d5159 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  line-height: 1.42 !important;
}

.mca-destination-quick-plan ol.wp-block-list,
.mca-quick-plan ol.wp-block-list {
  display: grid !important;
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  list-style: none !important;
  counter-reset: none !important;
}

.mca-destination-quick-plan ol.wp-block-list li,
.mca-quick-plan ol.wp-block-list li {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #f7cbd7 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  color: #343740 !important;
  font-size: 0.92rem !important;
  line-height: 1.28 !important;
}

.mca-destination-quick-plan ol.wp-block-list li::marker,
.mca-destination-quick-plan ol.wp-block-list li::before,
.mca-quick-plan ol.wp-block-list li::marker,
.mca-quick-plan ol.wp-block-list li::before {
  content: none !important;
}

.mca-destination-quick-plan ol.wp-block-list strong,
.mca-quick-plan ol.wp-block-list strong {
  display: block !important;
  margin: 0 0 3px !important;
  color: var(--destination-teal, var(--teal, #06b0b9)) !important;
  font-size: 0.66rem !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

.mca-destination-quick-plan .mca-destination-plan-notes,
.mca-destination-plan-notes.mca-plan-notes,
.mca-quick-plan .mca-plan-notes {
  display: block !important;
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 2px 0 0 !important;
  overflow: visible !important;
}

.mca-destination-quick-plan .mca-destination-plan-notes > .wp-block-group__inner-container,
.mca-destination-plan-notes.mca-plan-notes > .wp-block-group__inner-container,
.mca-quick-plan .mca-plan-notes > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
}

.mca-destination-quick-plan .mca-destination-plan-notes p,
.mca-destination-plan-notes.mca-plan-notes p,
.mca-quick-plan .mca-plan-notes p {
  box-sizing: border-box !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 12px 14px 12px 16px !important;
  border: 1px solid rgba(69, 174, 181, 0.24) !important;
  border-left: 4px solid var(--destination-teal, var(--teal, #06b0b9)) !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  color: #41454d !important;
  font-size: 0.92rem !important;
  line-height: 1.38 !important;
  scroll-snap-align: none !important;
}

@media (max-width: 760px) {
  .mca-destination-quick-plan,
  .mca-quick-plan {
    width: 100% !important;
    max-width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 14px 12px !important;
    overflow-x: clip !important;
  }

  .mca-destination-quick-plan > .wp-block-group__inner-container,
  .mca-quick-plan > .wp-block-group__inner-container {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .mca-destination-quick-plan h2,
  .mca-quick-plan h2 {
    max-width: 100% !important;
    margin: 0 0 6px !important;
    font-size: clamp(1.45rem, 7.1vw, 1.95rem) !important;
    line-height: 1.02 !important;
    overflow-wrap: break-word !important;
  }

  .mca-destination-quick-plan > .wp-block-group__inner-container > p,
  .mca-quick-plan > .wp-block-group__inner-container > p {
    max-width: none !important;
    margin: 0 0 8px !important;
    font-size: 0.88rem !important;
    line-height: 1.3 !important;
  }

  .mca-destination-quick-plan ol.wp-block-list,
  .mca-quick-plan ol.wp-block-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
    margin: 8px 0 !important;
  }

  .mca-destination-quick-plan ol.wp-block-list li,
  .mca-quick-plan ol.wp-block-list li {
    padding: 6px 7px !important;
    font-size: 0.78rem !important;
    line-height: 1.18 !important;
  }

  .mca-destination-quick-plan ol.wp-block-list strong,
  .mca-quick-plan ol.wp-block-list strong {
    margin-bottom: 2px !important;
    font-size: 0.58rem !important;
  }

  .mca-destination-quick-plan .mca-destination-plan-notes,
  .mca-destination-plan-notes.mca-plan-notes,
  .mca-quick-plan .mca-plan-notes {
    margin-top: 8px !important;
  }

  .mca-destination-quick-plan .mca-destination-plan-notes > .wp-block-group__inner-container,
  .mca-destination-plan-notes.mca-plan-notes > .wp-block-group__inner-container,
  .mca-quick-plan .mca-plan-notes > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  .mca-destination-quick-plan .mca-destination-plan-notes p,
  .mca-destination-plan-notes.mca-plan-notes p,
  .mca-quick-plan .mca-plan-notes p {
    padding: 7px 9px 7px 11px !important;
    border-left-width: 3px !important;
    font-size: 0.78rem !important;
    line-height: 1.23 !important;
  }
}

@media (max-width: 340px) {
  .mca-destination-quick-plan ol.wp-block-list,
  .mca-quick-plan ol.wp-block-list {
    grid-template-columns: 1fr !important;
  }
}

.editor-styles-wrapper .mca-destination-stay,
.editor-styles-wrapper .mca-destination-plan {
  width: min(100%, 1120px) !important;
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.editor-styles-wrapper .mca-destination-stay > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-plan > .wp-block-group__inner-container {
  width: 100% !important;
  max-width: none !important;
}

.editor-styles-wrapper .mca-destination-stay-grid,
.editor-styles-wrapper .mca-destination-plan-notes,
.editor-styles-wrapper .mca-destination-stay-grid > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-plan-notes > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-stay-grid > .block-editor-inner-blocks > .block-editor-block-list__layout,
.editor-styles-wrapper .mca-destination-plan-notes > .block-editor-inner-blocks > .block-editor-block-list__layout {
  display: grid !important;
  gap: 14px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: none !important;
}

.editor-styles-wrapper .mca-destination-stay-grid,
.editor-styles-wrapper .mca-destination-stay-grid > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-stay-grid > .block-editor-inner-blocks > .block-editor-block-list__layout {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.editor-styles-wrapper .mca-destination-stay-card {
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 18px !important;
  border: 1px solid var(--destination-border) !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(62, 47, 52, .05) !important;
  overflow: hidden !important;
}

.editor-styles-wrapper .mca-destination-stay-card .wp-block-heading {
  margin-top: 0 !important;
}

.editor-styles-wrapper .mca-destination-stay-card .wp-block-image {
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 8px !important;
}

.editor-styles-wrapper .mca-destination-stay-card img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  aspect-ratio: auto !important;
}

.editor-styles-wrapper .mca-destination-stay,
.editor-styles-wrapper .mca-destination-plan {
  padding: clamp(18px, 3vw, 28px) !important;
  border-radius: 8px !important;
}

.editor-styles-wrapper .mca-destination-stay {
  border: 1px solid #f5dce2 !important;
  background: linear-gradient(135deg, rgba(255,246,249,.96), rgba(244,252,252,.9)), #fff !important;
}

.editor-styles-wrapper .mca-destination-plan {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  background: linear-gradient(135deg, #fff 0%, #fff7fa 58%, #f1fbfc 100%) !important;
}

.editor-styles-wrapper .mca-destination-quick-plan ol,
.editor-styles-wrapper .mca-destination-quick-plan ol > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-quick-plan ol > .block-editor-inner-blocks > .block-editor-block-list__layout {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
}

.editor-styles-wrapper .mca-destination-plan-notes,
.editor-styles-wrapper .mca-destination-plan-notes > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-plan-notes > .block-editor-inner-blocks > .block-editor-block-list__layout {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 900px) {
.editor-styles-wrapper .mca-destination-stay-grid,
.editor-styles-wrapper .mca-destination-stay-grid > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-plan-notes,
.editor-styles-wrapper .mca-destination-plan-notes > .wp-block-group__inner-container,
.editor-styles-wrapper .mca-destination-quick-plan ol {
    grid-template-columns: 1fr !important;
  }

}

/* Source migrated from theme-src/assets/css/hotel-review.css. */
.mca-hotel-quick-card h2::before,
.mca-hotel-best-card h2::before,
.mca-hotel-skip-card h2::before {
  content: none;
}

.mca-hotel-quick-card,
.mca-hotel-skip-card {
  background: linear-gradient(180deg, #fff8fb, #fff);
}

.mca-hotel-best-card {
  border-color: #b9eeee;
  background: linear-gradient(180deg, #f2ffff, #fff);
}

.mca-hotel-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
}

.mca-hotel-chips span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  min-height: 44px;
  padding: 9px 16px;
  border: 1px solid #f7cbd7;
  border-radius: 999px;
  color: #203845;
  background: #fff4f8;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.1;
}

.mca-hotel-chips span:nth-child(2n) {
  border-color: #c8eeee;
  background: #effdfd;
}

.mca-hotel-chips img {
  width: 22px;
  height: 22px;
}

.mca-hotel-best-card ul,
.mca-hotel-skip-card ul {
  display: grid;
  gap: 0;
  padding-left: 0;
  list-style: none;
}

.mca-hotel-best-card li,
.mca-hotel-skip-card li {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 10px 0;
  border-bottom: 2px dotted #bde8e9;
}

.mca-hotel-skip-card li {
  border-bottom-color: #f5b8c7;
}

.mca-hotel-best-card li:last-child,
.mca-hotel-skip-card li:last-child {
  border-bottom: 0;
}

.mca-hotel-verdict-icon {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border-radius: 999px;
  background: #eaffff;
  border: 1px solid #c7eeee;
}

.mca-hotel-skip-card .mca-hotel-verdict-icon {
  background: #fff0f5;
  border-color: #f8c7d4;
}

.mca-hotel-verdict-icon img {
  width: 32px;
  height: 32px;
}

.mca-hotel-disclosure {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #f2e2e6;
  color: var(--hotel-muted) !important;
  font-size: 13px !important;
}

.mca-hotel-verdict-bar {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: min(1180px, calc(100% - 32px));
  max-width: 1180px;
  margin-top: 22px;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--hotel-border);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 30px rgba(55, 48, 52, 0.08);
}

.mca-hotel-verdict-card {
  display: grid;
  align-content: start;
  min-width: 0;
  padding: clamp(18px, 2vw, 28px);
}

.mca-hotel-verdict-card + .mca-hotel-verdict-card {
  border-left: 1px solid #b9eeee;
}

.mca-hotel-quick-card {
  display: grid;
  gap: 14px;
  background: linear-gradient(180deg, #fff1f6, #fffafc);
}

.mca-hotel-quick-card h2 {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin: 0;
  color: var(--hotel-teal);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 2.4vw, 44px);
  line-height: 1;
}

.mca-hotel-quick-card h2::before,
.mca-hotel-mini-section h3::before {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 999px;
  color: #fff;
  font-family: var(--hotel-body);
  font-size: 25px;
  font-weight: 900;
  line-height: 1;
}

.mca-hotel-quick-card h2::before {
  content: "i";
  background: var(--hotel-coral);
}

.mca-hotel-quick-card p {
  margin: 0;
  color: #4b515c;
  font-size: clamp(16px, 1.45vw, 20px);
  font-weight: 800;
  line-height: 1.4;
}

.mca-hotel-mini-section {
  background: linear-gradient(180deg, #edfcfd, #fbffff);
}

.mca-hotel-mini-section.mca-hotel-skip-card {
  background: linear-gradient(180deg, #fff2f6, #fffafc);
}

.mca-hotel-mini-section h3 {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin: 0 0 14px;
  color: var(--hotel-teal);
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 2.4vw, 44px);
  line-height: 1;
}

.mca-hotel-best-card h3::before {
  content: "\2713";
  background: #09adb7;
}

.mca-hotel-mini-section.mca-hotel-skip-card h3 {
  color: var(--hotel-teal);
}

.mca-hotel-skip-card h3::before {
  content: "\00d7";
  background: var(--hotel-coral);
}

.mca-hotel-mini-section ul {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mca-hotel-mini-section li {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  color: #383c45;
  border: 0;
  font-size: clamp(16px, 1.35vw, 20px);
  font-weight: 800;
  line-height: 1.32;
}

.mca-hotel-mini-dot {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  margin-top: 0.04em;
  border-radius: 999px;
  color: #fff;
  background: #09adb7;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
}

.mca-hotel-skip-card .mca-hotel-mini-dot {
  background: var(--hotel-coral);
}

@media (max-width: 820px) {
.mca-hotel-verdict-bar {
    width: min(100%, calc(100vw - 24px));
    max-width: none;
    grid-auto-columns: minmax(286px, 78vw);
    grid-auto-flow: column;
    grid-template-columns: none;
    align-items: stretch;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
  }

}

@media (max-width: 820px) {
.mca-hotel-verdict-card + .mca-hotel-verdict-card {
    border-top: 0;
    border-left: 1px solid #b9eeee;
  }

}

@media (max-width: 820px) {
.mca-hotel-verdict-bar > .mca-hotel-verdict-card {
    width: 100%;
    min-width: 0;
    padding: 9px 12px !important;
    scroll-snap-align: start;
  }

}

@media (max-width: 820px) {
.mca-hotel-quick-card,
.mca-hotel-mini-section ul {
    gap: 4px;
  }

}

@media (max-width: 820px) {
.mca-hotel-quick-card h2,
.mca-hotel-mini-section h3 {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 9px;
    margin-bottom: 4px;
    font-size: 24px;
  }

}

@media (max-width: 820px) {
.mca-hotel-quick-card h2::before,
.mca-hotel-mini-section h3::before {
    width: 30px;
    height: 30px;
    font-size: 18px;
  }

}

@media (max-width: 820px) {
.mca-hotel-quick-card p,
.mca-hotel-mini-section li {
    font-size: 14.5px;
    line-height: 1.2;
  }

}

@media (max-width: 820px) {
.mca-hotel-mini-section li {
    grid-template-columns: 23px minmax(0, 1fr);
    gap: 7px;
    padding: 2px 0 !important;
  }

}

@media (max-width: 820px) {
.mca-hotel-mini-dot {
    width: 22px;
    height: 22px;
    font-size: 13px;
  }

}

@media (max-width: 820px) {
.mca-hotel-chips {
    gap: 6px;
    margin-top: 8px;
  }

}

@media (max-width: 820px) {
.mca-hotel-chips span {
    min-height: 30px;
    padding: 5px 10px;
    font-size: 13px;
  }

}

.editor-styles-wrapper .mca-pinterest-grid,
.editor-styles-wrapper .mca-hotel-pinterest-grid,
.editor-styles-wrapper .mca-dg-pinterest-grid,
.editor-styles-wrapper .mca-wf-pinterest-grid,
body.block-editor-page .mca-pinterest-grid,
body.block-editor-page .mca-hotel-pinterest-grid,
body.block-editor-page .mca-dg-pinterest-grid,
body.block-editor-page .mca-wf-pinterest-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px !important;
  overflow-x: visible;
}

.editor-styles-wrapper .mca-pinterest-grid figure,
.editor-styles-wrapper .mca-pinterest-grid .wp-block-image,
.editor-styles-wrapper .mca-pinterest-grid .block-editor-block-list__block,
.editor-styles-wrapper .mca-hotel-pinterest-grid figure,
.editor-styles-wrapper .mca-hotel-pinterest-grid .wp-block-image,
.editor-styles-wrapper .mca-hotel-pinterest-grid .block-editor-block-list__block,
.editor-styles-wrapper .mca-dg-pinterest-grid figure,
.editor-styles-wrapper .mca-dg-pinterest-grid .wp-block-image,
.editor-styles-wrapper .mca-dg-pinterest-grid .block-editor-block-list__block,
.editor-styles-wrapper .mca-wf-pinterest-grid figure,
.editor-styles-wrapper .mca-wf-pinterest-grid .wp-block-image,
.editor-styles-wrapper .mca-wf-pinterest-grid .block-editor-block-list__block,
body.block-editor-page .mca-pinterest-grid figure,
body.block-editor-page .mca-pinterest-grid .wp-block-image,
body.block-editor-page .mca-pinterest-grid .block-editor-block-list__block,
body.block-editor-page .mca-hotel-pinterest-grid figure,
body.block-editor-page .mca-hotel-pinterest-grid .wp-block-image,
body.block-editor-page .mca-hotel-pinterest-grid .block-editor-block-list__block,
body.block-editor-page .mca-dg-pinterest-grid figure,
body.block-editor-page .mca-dg-pinterest-grid .wp-block-image,
body.block-editor-page .mca-dg-pinterest-grid .block-editor-block-list__block,
body.block-editor-page .mca-wf-pinterest-grid figure,
body.block-editor-page .mca-wf-pinterest-grid .wp-block-image,
body.block-editor-page .mca-wf-pinterest-grid .block-editor-block-list__block {
  min-width: 0 !important;
  width: 100% !important;
}

.editor-styles-wrapper .mca-pinterest-grid img,
.editor-styles-wrapper .mca-hotel-pinterest-grid img,
.editor-styles-wrapper .mca-dg-pinterest-grid img,
.editor-styles-wrapper .mca-wf-pinterest-grid img,
body.block-editor-page .mca-pinterest-grid img,
body.block-editor-page .mca-hotel-pinterest-grid img,
body.block-editor-page .mca-dg-pinterest-grid img,
body.block-editor-page .mca-wf-pinterest-grid img {
  aspect-ratio: 2 / 3 !important;
  height: clamp(260px, 45vw, 420px) !important;
  object-fit: cover;
}

@media (min-width: 761px) {
.mca-hotel-chips {
    gap: 5px;
    margin-top: 8px;
  }

}

@media (min-width: 761px) {
.mca-hotel-chips span {
    min-height: 26px;
    padding: 3px 7px;
    font-size: 11px;
  }

}

@media (min-width: 761px) {
.mca-hotel-chips img {
    width: 15px;
    height: 15px;
  }

}

@media (min-width: 761px) {
.mca-hotel-best-card li,
.mca-hotel-skip-card li {
    grid-template-columns: 27px minmax(0, 1fr);
    gap: 7px;
    padding: 4px 0;
  }

}

@media (min-width: 761px) {
.mca-hotel-verdict-icon {
    width: 27px;
    height: 27px;
  }

}

@media (min-width: 761px) {
.mca-hotel-verdict-icon img {
    width: 19px;
    height: 19px;
  }

}

.mca-hotel-verdict-bar .mca-hotel-chips {
  gap: 8px;
  margin-top: 10px;
}

.mca-hotel-verdict-bar .mca-hotel-chips span {
  min-height: 34px !important;
  padding: 6px 11px !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
}

@media (max-width: 560px) {
.mca-hotel-verdict-bar .mca-hotel-chips {
    gap: 6px;
    margin-top: 8px;
  }

}

@media (max-width: 560px) {
.mca-hotel-verdict-bar .mca-hotel-chips span {
    min-height: 30px !important;
    padding: 5px 10px !important;
    font-size: 13px !important;
  }

}

/* MCA shared stay section mobile width guard v56. */
@media(max-width:760px) {
  .mca-destination-stay,
  .mca-stay-section,
  .mca-destination-plan {
    max-width: min(100% - 32px, 760px);
    margin-left: auto;
    margin-right: auto;
  }
}

/* MCA universal Pinterest Save component v52.
   Hotel, destination, waterfall, and future posts share one visual and one JS target. */
.mca-pinterest-save,
.mca-hotel-pinterest-save,
.mca-dg-save,
.mca-wf-pinterest-save {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: clamp(18px, 3vw, 28px) !important;
  overflow: hidden !important;
  border: 1px solid var(--hotel-border, var(--destination-border, #f3d8df)) !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #fff, var(--hotel-blush, var(--destination-blush, #fff8fb))) !important;
  box-shadow: 0 12px 26px rgba(62, 47, 52, 0.07) !important;
}

.mca-pinterest-save h2,
.mca-hotel-pinterest-save h2,
.mca-dg-save h2,
.mca-wf-pinterest-save h2 {
  margin: 0 0 10px !important;
  color: var(--hotel-ink, var(--destination-ink, #2e2c34)) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(28px, 3.2vw, 42px) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.08 !important;
  text-align: left !important;
}

.mca-pinterest-save p,
.mca-hotel-pinterest-save p,
.mca-dg-save p,
.mca-wf-pinterest-save p {
  max-width: 760px !important;
  margin: 0 0 16px !important;
  color: #454854 !important;
  font-family: inherit !important;
  font-size: clamp(16px, 1.45vw, 19px) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

.mca-pinterest-grid,
.mca-hotel-pinterest-grid,
.mca-dg-pinterest-grid,
.mca-wf-pinterest-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 16px 0 0 !important;
  overflow-x: visible !important;
  padding-bottom: 0 !important;
  scroll-snap-type: none !important;
}

.mca-pinterest-grid.mca-pin-count-1,
.mca-hotel-pinterest-grid.mca-pin-count-1,
.mca-dg-pinterest-grid.mca-pin-count-1,
.mca-wf-pinterest-grid.mca-pin-count-1 {
  grid-template-columns: minmax(0, min(100%, 320px)) !important;
  justify-content: center !important;
}

.mca-pinterest-grid.mca-pin-count-2,
.mca-hotel-pinterest-grid.mca-pin-count-2,
.mca-dg-pinterest-grid.mca-pin-count-2,
.mca-wf-pinterest-grid.mca-pin-count-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: min(100%, 760px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mca-pinterest-grid.mca-pin-count-3,
.mca-hotel-pinterest-grid.mca-pin-count-3,
.mca-dg-pinterest-grid.mca-pin-count-3,
.mca-wf-pinterest-grid.mca-pin-count-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.mca-pinterest-grid a,
.mca-pinterest-grid figure,
.mca-pinterest-grid .wp-block-image,
.mca-hotel-pinterest-grid a,
.mca-hotel-pinterest-grid figure,
.mca-hotel-pinterest-grid .wp-block-image,
.mca-dg-pinterest-grid a,
.mca-dg-pinterest-grid figure,
.mca-dg-pinterest-grid .wp-block-image,
.mca-wf-pinterest-grid a,
.mca-wf-pinterest-grid figure,
.mca-wf-pinterest-grid .wp-block-image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 8px !important;
}

.mca-pinterest-grid img,
.mca-hotel-pinterest-grid img,
.mca-dg-pinterest-grid img,
.mca-wf-pinterest-grid img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 2 / 3 !important;
  height: clamp(260px, 42vw, 440px) !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 22px rgba(62, 47, 52, 0.08) !important;
}

.mca-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art,
.mca-hotel-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art,
.mca-dg-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art,
.mca-wf-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art {
  aspect-ratio: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

.mca-pinterest-save .wp-block-buttons,
.mca-pinterest-save-actions,
.mca-hotel-pinterest-save .wp-block-buttons,
.mca-dg-save .wp-block-buttons,
.mca-wf-pinterest-save .wp-block-buttons {
  display: flex !important;
  justify-content: center !important;
  margin: 16px 0 0 !important;
}

.mca-pinterest-save .wp-block-button__link,
.mca-hotel-pinterest-save .wp-block-button__link,
.mca-dg-save .wp-block-button__link,
.mca-wf-pinterest-save .wp-block-button__link {
  border: 0 !important;
  border-radius: 999px !important;
  background: #ee5f91 !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  padding: 12px 24px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: 0 12px 20px rgba(238, 95, 145, 0.22) !important;
}

@media(max-width:520px) {
  .mca-pinterest-grid,
  .mca-hotel-pinterest-grid,
  .mca-dg-pinterest-grid,
  .mca-wf-pinterest-grid {
    gap: 8px !important;
  }

  .mca-pinterest-grid img,
  .mca-hotel-pinterest-grid img,
  .mca-dg-pinterest-grid img,
  .mca-wf-pinterest-grid img {
    height: clamp(260px, 82vw, 420px) !important;
  }

  .mca-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art,
  .mca-hotel-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art,
  .mca-dg-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art,
  .mca-wf-pinterest-grid.mca-pin-art-grid img.mca-pinterest-pin-art {
    height: auto !important;
  }
}

.mca-hotel-section-card:has(> .wp-block-group__inner-container > .mca-pinterest-save),
.mca-hotel-section-card:has(> .mca-pinterest-save) {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.mca-hotel-section-card > .wp-block-group__inner-container > .mca-pinterest-save,
.mca-hotel-section-card > .mca-pinterest-save {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
}

.mca-stay-rail,
.mca-destination-stay-grid {
  min-width: 0 !important;
}

.mca-stay-card,
.mca-destination-stay-card {
  min-width: 0 !important;
}

/* MCA shared ShopThePost containment v50.
   The waterfall/trail lower body can use shop widgets without keeping widget fixes in theme.css. */
@media(max-width:900px){
  .shopthepost-widget{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:hidden!important}
  .shopthepost-widget .stp-outer,
  .shopthepost-widget .stp-inner,
  .shopthepost-widget .stp-slide{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
  .shopthepost-widget .stp-control.stp-right{right:0!important;left:auto!important}
}

/* MCA final shared body component migration v50 END */

/* MCA shared legacy photo grids v51 START */
.mca-inline-photo-grid {
  display: grid !important;
  gap: 12px !important;
  margin: 1.25rem auto !important;
}

.mca-inline-photo-grid.mca-grid-count-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.mca-inline-photo-grid.mca-grid-count-3,
.mca-inline-photo-grid.mca-grid-count-4,
.mca-inline-photo-grid.mca-grid-count-5,
.mca-inline-photo-grid.mca-grid-count-many {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.mca-inline-photo-grid img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  aspect-ratio: 3 / 4 !important;
  object-fit: cover !important;
  margin: 0 !important;
}

.mca-photo-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
  gap: 16px !important;
  margin: 1.5rem 0 !important;
}

.mca-photo-grid img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  margin: 0 !important;
}

@media (max-width: 700px) {
  .mca-inline-photo-grid {
    grid-template-columns: 1fr !important;
  }

  .mca-inline-photo-grid img {
    height: auto !important;
    aspect-ratio: auto !important;
  }
}

@media (max-width: 640px) {
  .mca-photo-grid {
    grid-template-columns: 1fr !important;
  }

  .mca-photo-grid img {
    height: auto !important;
    aspect-ratio: auto !important;
  }
}
/* MCA shared legacy photo grids v51 END */

/* MCA shared post body/sidebar containment v52.
   Once content enters the shared body/sidebar grid, old wide section rules must
   fit the article column instead of sliding under the sidebar. */
@media (min-width: 981px) {
  body.single-post .mca-post-layout > .mca-post-main,
  body.single-post .mca-post-layout > .mca-post-main > *,
  body.single-post .mca-post-layout > .mca-post-main > * > .wp-block-group__inner-container {
    box-sizing: border-box !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  body.single-post .mca-post-layout > .mca-post-main > .alignwide,
  body.single-post .mca-post-layout > .mca-post-main > .alignfull,
  body.single-post .mca-post-layout > .mca-post-main > .wp-block-group,
  body.single-post .mca-post-layout > .mca-post-main > .wp-block-group > .wp-block-group__inner-container,
  body.single-post .mca-post-layout > .mca-post-main > .mca-destination-section-head,
  body.single-post .mca-post-layout > .mca-post-main > .mca-destination-section-head > .wp-block-group__inner-container,
  body.single-post .mca-post-layout > .mca-post-main > .mca-destination-entertainment-summary,
  body.single-post .mca-post-layout > .mca-post-main > .mca-destination-entertainment-summary > .wp-block-group__inner-container,
  body.single-post .mca-post-layout > .mca-post-main > .mca-destination-lede,
  body.single-post .mca-post-layout > .mca-post-main > h1,
  body.single-post .mca-post-layout > .mca-post-main > h2,
  body.single-post .mca-post-layout > .mca-post-main > h3,
  body.single-post .mca-post-layout > .mca-post-main > p,
  body.single-post .mca-post-layout > .mca-post-main > ul,
  body.single-post .mca-post-layout > .mca-post-main > ol {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.single-post .mca-post-layout > .mca-post-main h1,
  body.single-post .mca-post-layout > .mca-post-main h2,
  body.single-post .mca-post-layout > .mca-post-main h3,
  body.single-post .mca-post-layout > .mca-post-main p,
  body.single-post .mca-post-layout > .mca-post-main li {
    max-width: 100% !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
  }

  body.single-post .mca-post-layout > .mca-post-main > :is(#mca-post-containment-priority, .mca-destination-feature-row, .mca-destination-entertainment-summary),
  body.single-post .mca-post-layout > .mca-post-main > :is(#mca-post-containment-priority, .mca-destination-feature-row, .mca-destination-entertainment-summary) > .wp-block-group__inner-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}

/* MCA shared lower body full-width after sidebar guard v54.
   Approved reusable lower sections should not stay trapped in the left column
   once the desktop sidebar has visually ended. JS adds this class only after
   measuring the actual sidebar bottom, so earlier body/sidebar rows stay safe. */
@media (min-width: 981px) {
  body.single-post .mca-post-layout > .mca-post-main > .mca-post-lower-span:not(#mca-post-lower-span-priority):not(#mca-post-lower-span-priority-2) {
    box-sizing: border-box !important;
    width: calc(100% + var(--mca-post-lower-span-extra, 0px)) !important;
    max-width: calc(100% + var(--mca-post-lower-span-extra, 0px)) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: visible !important;
  }

  body.single-post .mca-post-layout > .mca-post-main > .mca-post-lower-span:not(#mca-post-lower-span-priority):not(#mca-post-lower-span-priority-2) > .wp-block-group__inner-container {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  body.single-post .mca-post-layout > .mca-post-main > .mca-post-lower-span.mca-pinterest-save {
    overflow: hidden !important;
  }
}

/* MCA shared compact guide typography v58.
   80+ style guide blocks stay condensed, but the hierarchy and spacing now use
   the shared post rhythm instead of older destination-only card sizing. */
body.single-post .mca-post-layout .mca-dg-quick-list {
  gap: 18px !important;
  color: #31343c !important;
  font-family: Glacial, "Open Sans", Arial, sans-serif !important;
}

body.single-post .mca-post-layout .mca-dg-quick-head {
  align-items: center !important;
  gap: 10px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-head-icon {
  width: 32px !important;
  height: 32px !important;
  flex: 0 0 32px !important;
  color: #0b8991 !important;
  background: #edfafa !important;
  border-color: #bdebed !important;
  font-family: Glacial, "Open Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-head h2 {
  margin: 0 !important;
  color: #28292f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(30px, 2.45vw, 34px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-head h2 span:first-child {
  color: #0b8991 !important;
  font-family: Glacial, "Open Sans", Arial, sans-serif !important;
  font-size: 0.82em !important;
  font-weight: 900 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-body,
body.single-post .mca-post-layout .mca-dg-quick-card-grid {
  gap: 14px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card {
  min-width: 0 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card-media {
  height: auto !important;
  aspect-ratio: 3 / 2 !important;
  border-radius: 8px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card-media figure {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: var(--mca-object-position, center center) !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="jessica" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="person" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="people" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="woman" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="man " i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="wearing" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="sitting" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="standing" i],
body.single-post .mca-post-layout .mca-dg-quick-card-media img[alt*="poses" i] {
  --mca-object-position: center 18%;
}

body.single-post .mca-post-layout .mca-dg-quick-card-media > span {
  width: 34px !important;
  height: 34px !important;
  color: #fff !important;
  background: #e85f91 !important;
  font-family: Glacial, "Open Sans", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card-body {
  gap: 7px !important;
  padding-top: 12px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card .mca-dg-label {
  color: #e85f91 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card h3 {
  margin: 0 !important;
  color: #28292f !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(22px, 1.7vw, 24px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card h3 a {
  color: inherit !important;
  text-decoration: none !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card h3 a:focus-visible {
  border-radius: 4px !important;
  outline: 2px solid #e85f91 !important;
  outline-offset: 3px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-card p:not(.mca-dg-label) {
  color: #3f454e !important;
  font-family: Glacial, "Open Sans", Arial, sans-serif !important;
  font-size: 16.5px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-list {
  border-color: rgba(11, 137, 145, 0.16) !important;
  border-radius: 8px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-toggle,
body.single-post .mca-post-layout .mca-dg-quick-row-static {
  grid-template-columns: 32px minmax(0, 1fr) 24px !important;
  gap: 10px !important;
  min-height: 58px !important;
  padding: 8px 10px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-static {
  grid-template-columns: 32px minmax(0, 1fr) !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-icon {
  width: 26px !important;
  height: 26px !important;
  color: #0b8991 !important;
  background: #edfafa !important;
  font-size: 11px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-copy {
  gap: 3px !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-copy strong {
  color: #31343c !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-copy small {
  color: #69717d !important;
  font-size: 16.5px !important;
  line-height: 1.35 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-row-action {
  color: #e85f91 !important;
  background: #fff3f7 !important;
}

body.single-post .mca-post-layout .mca-dg-quick-link,
body.single-post .mca-post-layout .mca-dg-quick-card-toggle {
  color: #e85f91 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
}

body.single-post .mca-post-layout .mca-dg-family-template .mca-dg-quick-card-body,
body.single-post .mca-post-layout .mca-dg-feature-rows-template .mca-dg-quick-card-body {
  padding: 14px !important;
}

body.single-post .mca-post-layout .mca-dg-family-template .mca-dg-quick-card p:not(.mca-dg-label),
body.single-post .mca-post-layout .mca-dg-feature-rows-template .mca-dg-quick-card p:not(.mca-dg-label) {
  font-size: 16.5px !important;
  line-height: 1.48 !important;
}

@media (max-width: 760px) {
  body.single-post .mca-post-layout .mca-dg-quick-list {
    gap: 14px !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-list:is(
    .mca-dg-historical-template,
    .mca-dg-family-template,
    .mca-dg-photo-rows-template,
    .mca-dg-feature-rows-template,
    .mca-dg-rows-template
  ) {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    padding-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-head {
    grid-template-columns: 30px minmax(0, 1fr) !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-head h2 {
    font-size: clamp(26px, 7vw, 34px) !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-card-grid,
  body.single-post .mca-post-layout .mca-dg-quick-list-mini .mca-dg-quick-card-grid,
  body.single-post .mca-post-layout .mca-dg-quick-list-cards-2 .mca-dg-quick-card-grid,
  body.single-post .mca-post-layout .mca-dg-quick-list-cards-3 .mca-dg-quick-card-grid,
  body.single-post .mca-post-layout .mca-dg-quick-list-cards-4 .mca-dg-quick-card-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    grid-template-columns: 1fr !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-row-list {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-card h3 {
    font-size: clamp(21px, 5.6vw, 25px) !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-card p:not(.mca-dg-label) {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }

  body.single-post .mca-post-layout .mca-dg-quick-row-toggle,
  body.single-post .mca-post-layout .mca-dg-quick-row-static {
    min-height: 54px !important;
  }
}

/* MCA shared mobile width normalization v66.
   Section shells should not keep desktop side padding on phones and shrink
   reusable cards compared with Email Signup, Pinterest, and the main column. */
@media (max-width: 760px) {
  body.single-post .mca-post-layout .mca-post-main > .mca-destination-category,
  body.single-post .mca-post-layout .mca-post-main > .mca-destination-soft-band,
  body.single-post .mca-post-layout .mca-post-main > .mca-destination-stay,
  body.single-post .mca-post-layout .mca-post-main > .mca-stay-section,
  body.single-post .mca-post-layout .mca-post-main > .mca-pinterest-save,
  body.single-post .mca-post-layout .mca-post-main > .mca-dg-mobile-universal-about,
  body.single-post .mca-post-layout .mca-post-main > .mca-single-mobile-about,
  body.single-post .mca-post-layout .mca-post-main > .mca-hotel-about-mobile,
  body.single-post .mca-post-layout .mca-post-main > .mca-dg-mobile-universal-email {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-dg-mobile-universal-about,
  body.single-post .mca-post-layout .mca-single-mobile-about,
  body.single-post .mca-post-layout .mca-hotel-about-mobile {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-soft-band,
  body.single-post .mca-post-layout .mca-destination-stay,
  body.single-post .mca-post-layout .mca-stay-section {
    padding-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-soft-band > .wp-block-group__inner-container,
  body.single-post .mca-post-layout .mca-destination-stay > .wp-block-group__inner-container,
  body.single-post .mca-post-layout .mca-stay-section > .wp-block-group__inner-container {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-soft-band .mca-destination-section-head,
  body.single-post .mca-post-layout .mca-destination-soft-band .mca-destination-card-grid,
  body.single-post .mca-post-layout .mca-destination-soft-band .mca-destination-card-grid > .wp-block-group__inner-container,
  body.single-post .mca-post-layout .mca-destination-stay .mca-destination-section-head,
  body.single-post .mca-post-layout .mca-destination-stay .mca-destination-stay-grid,
  body.single-post .mca-post-layout .mca-destination-stay .mca-destination-stay-grid > .wp-block-group__inner-container,
  body.single-post .mca-post-layout .mca-stay-section .mca-destination-section-head,
  body.single-post .mca-post-layout .mca-stay-section .mca-destination-stay-grid,
  body.single-post .mca-post-layout .mca-stay-section .mca-destination-stay-grid > .wp-block-group__inner-container {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-stay-grid > .wp-block-group__inner-container,
  body.single-post .mca-post-layout .mca-stay-rail > .wp-block-group__inner-container {
    grid-auto-columns: calc(100% - 58px) !important;
  }

  body.single-post .mca-post-layout .mca-destination-card-photos-even,
  body.single-post .mca-post-layout .mca-destination-card-photos-even > .wp-block-group__inner-container {
    align-items: stretch !important;
    align-content: stretch !important;
  }

  body.single-post .mca-post-layout .mca-destination-card-photos-even {
    margin-bottom: 10px !important;
  }

  body.single-post .mca-post-layout .mca-destination-card-photos-even > .wp-block-group__inner-container {
    height: 100% !important;
    margin: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-card-photos-even figure,
  body.single-post .mca-post-layout .mca-destination-card-photos-even > .wp-block-group__inner-container > figure {
    height: 100% !important;
  }

  body.single-post .mca-post-layout .mca-destination-card-photos-even img,
  body.single-post .mca-post-layout .mca-destination-card-photos-even > .wp-block-group__inner-container img {
    height: 100% !important;
    object-fit: cover !important;
  }
}

/* MCA shared mobile body rhythm v71.
   Keep section headings, intro copy, and the next visual block connected without
   letting independent legacy margins stack into large empty pockets. */
@media (max-width: 760px) {
  body.single-post .mca-post-layout .mca-destination-section-head {
    margin-bottom: 12px !important;
    row-gap: 12px !important;
    gap: 12px !important;
  }

  body.single-post .mca-post-layout .mca-destination-section-head h2,
  body.single-post .mca-post-layout .mca-destination-section-head h3 {
    margin-bottom: 0 !important;
  }

  body.single-post .mca-destination-guide .mca-destination-main .mca-destination-section-head h2.wp-block-heading,
  body.single-post .mca-destination-guide .mca-destination-main .mca-destination-section-head h3.wp-block-heading,
  body.single-post .mca-destination-guide .mca-destination-main .mca-destination-entertainment-summary h2.wp-block-heading,
  body.single-post .mca-destination-guide .mca-destination-main .mca-destination-feature-row h2.wp-block-heading,
  body.single-post .mca-destination-guide .mca-destination-main .mca-destination-feature-row h3.wp-block-heading {
    margin-bottom: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-guide .mca-destination-main .mca-destination-entertainment-summary .mca-destination-section-head h2.wp-block-heading,
  body.single-post .mca-post-layout .mca-destination-guide .mca-destination-main .mca-destination-feature-row .mca-destination-section-head h2.wp-block-heading,
  body.single-post .mca-post-layout .mca-destination-guide .mca-destination-main .mca-destination-feature-row .mca-destination-section-head h3.wp-block-heading {
    margin-bottom: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-section-head + .mca-destination-card-grid,
  body.single-post .mca-post-layout .mca-destination-section-head + .mca-destination-stay-grid,
  body.single-post .mca-post-layout .mca-destination-section-head + .mca-stay-rail,
  body.single-post .mca-post-layout .mca-destination-section-head + .mca-destination-reason-grid,
  body.single-post .mca-post-layout .mca-destination-section-head + .mca-destination-feature-collage {
    margin-top: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-entertainment-summary {
    padding-bottom: 18px !important;
    margin-bottom: 16px !important;
  }

  body.single-post .mca-post-layout .mca-destination-entertainment-summary .mca-destination-section-head {
    margin-bottom: 14px !important;
  }

  body.single-post .mca-post-layout .mca-destination-entertainment-summary .mca-destination-lede {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  body.single-post .mca-post-layout .mca-destination-entertainment-summary + .mca-destination-feature-row,
  body.single-post .mca-post-layout #wellness.mca-destination-feature-row {
    padding-top: 8px !important;
    margin-top: 0 !important;
  }
}
