/* Matchday Hotels V9.2.7 — Supporter Tone + Hotel Experience */

/* Remove implementation/source language from the customer-facing journey. */
.mhd-v92-source,
.mhd-hotel-preview-visual-v808 figcaption,
.mhd-hotel-preview-dialog-visual-v808 figcaption {
  display: none !important;
}

/* Strong visual guard for older duplicated builder fragments. */
.mhd-v9-load-note,
[data-v9-load-trip],
.mhd-v9-quick-builder [data-v9-room-setup],
.mhd-v9-quick-builder label:has([data-v9-room-setup]) {
  display: none !important;
}

/* Natural supporter copy under Your Plan. */
.mhd-v927-supporter-line {
  max-width: 72rem;
  margin: .8rem 0 .15rem;
  color: #344451;
  font-size: .96rem;
  line-height: 1.55;
}

[data-away-day-recommendation][data-v927-naturalised="true"] {
  margin-top: .35rem;
  color: #4d5b66;
  line-height: 1.5;
}

/* Hotel cards should use the available width rather than bunching on the left. */
.mhd-v77-hotel-conversion[data-away-day-created="true"] .mhd-v77-hotel-panel.is-away-day-selected,
.mhd-v77-hotel-conversion[data-away-day-created="true"] [data-hotel-results-container],
.mhd-v77-hotel-conversion[data-away-day-created="true"] .mhd-hotel-preview-grid-v808 {
  width: 100% !important;
  max-width: none !important;
}

.mhd-v77-hotel-conversion[data-away-day-created="true"] .mhd-hotel-preview-grid-v808 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.2rem !important;
  align-items: stretch;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"],
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] {
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100%;
  overflow: hidden;
  padding: 0 !important;
  border: 1px solid rgba(18, 32, 43, .16) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 34px rgba(3, 12, 20, .12) !important;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] .mhd-hotel-preview-visual-v808,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] .mhd-hotel-preview-visual-v808 {
  width: 100%;
  margin: 0;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 0 !important;
  background: #142131;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] .mhd-hotel-preview-visual-v808 img,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] .mhd-hotel-preview-visual-v808 img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] .mhd-hotel-preview-card-copy-v808,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] .mhd-hotel-preview-card-copy-v808 {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  padding: 1rem 1rem .7rem;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] h4,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] h4 {
  margin: .35rem 0 .6rem !important;
  color: #111b23 !important;
  font-size: 1.1rem !important;
  line-height: 1.2;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] p,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] p {
  color: #51606c !important;
  line-height: 1.48 !important;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] .mhd-hotel-preview-card-actions-v808,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] .mhd-hotel-preview-card-actions-v808 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .55rem !important;
  width: 100%;
  box-sizing: border-box;
  margin-top: auto;
  padding: 0 1rem 1rem;
}

.mhd-hotel-preview-card-v808[data-v927-hotel-card="true"] .mhd-hotel-preview-card-actions-v808 .button,
.mhd-supporter-hotel-card-v8081[data-v927-hotel-card="true"] .mhd-hotel-preview-card-actions-v808 .button {
  width: 100%;
  min-height: 46px;
  justify-content: center;
}

@media (max-width: 980px) {
  .mhd-v77-hotel-conversion[data-away-day-created="true"] .mhd-hotel-preview-grid-v808 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .mhd-v77-hotel-conversion[data-away-day-created="true"] .mhd-hotel-preview-grid-v808 {
    grid-template-columns: 1fr !important;
    gap: .9rem !important;
  }

  .mhd-v927-supporter-line {
    font-size: .92rem;
  }
}
