/* MarketTours shared hotel deal cards.
 * Used by hotel page alternatives/regional deals and mod_agent_value_tours.
 */
.hotel-price-alternatives { margin-top: 36px; }
.hotel-price-alternatives__list {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 12px;
}
.hotel-price-alternatives__item {
 display: flex;
 flex-direction: column;
 min-width: 0;
 overflow: hidden;
 border: 1px solid #e5e9ed;
 border-radius: 0;
 background: #fff;
}
.hotel-price-alternatives__photo { display: block; }
.hotel-price-alternatives__image {
 display: block;
 width: 100%;
 aspect-ratio: 4 / 3;
 background-color: #edf0f2;
 background-position: center;
 background-size: cover;
}
.hotel-price-alternatives__body {
 display: flex;
 flex: 1 1 auto;
 flex-direction: column;
 min-width: 0;
 padding: 10px;
}
.hotel-price-alternatives__name {
 display: -webkit-box;
 min-height: 2.7em;
 margin-bottom: 5px;
 overflow: hidden;
 -webkit-box-orient: vertical;
 -webkit-line-clamp: 2;
 line-height: 1.35;
 overflow-wrap: anywhere;
 color: var(--link, #007bff);
}
.hotel-price-alternatives__name:hover,
.hotel-price-alternatives__name:focus { text-decoration: underline; }
.hotel-price-alternatives__geo {
 margin: -1px 0 6px;
 overflow: hidden;
 color: var(--gray-dark, #6c757d);
 text-overflow: ellipsis;
 white-space: nowrap;
}
.hotel-price-alternatives__rating { margin-bottom: 8px; }
.hotel-price-alternatives__price {
 margin-top: auto;
 color: var(--osnov-color, #28a745);
 font-weight: 600;
}
.hotel-price-alternatives__details {
 margin-top: 4px;
 display: grid;
 grid-template-rows: repeat(3, minmax(1.4em, auto));
}
.hotel-price-alternatives__details > div {
 min-width: 0;
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}
@media (min-width: 768px) {
 .hotel-price-alternatives__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
 .hotel-price-alternatives__body { padding: 12px; }
}
@media (min-width: 992px) {
 .hotel-price-alternatives__list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
 .hotel-price-alternatives__list { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
.hotel-price-alternatives--similar { margin-top: 28px; }
.hotel-price-alternatives--similar .hotel-price-alternatives__list {
 display: flex;
 flex-wrap: nowrap;
 gap: 12px;
 overflow-x: auto;
 overscroll-behavior-x: contain;
 scroll-snap-type: x proximity;
 -webkit-overflow-scrolling: touch;
 padding-bottom: 10px;
}
.hotel-price-alternatives--similar .hotel-price-alternatives__item {
 flex: 0 0 180px;
 width: 180px;
 scroll-snap-align: start;
}

/* Home module: same cards, own controls only. */
.mt-value-tours__head {
 display:flex;
 align-items:flex-end;
 justify-content:space-between;
 gap:16px;
 margin-bottom:16px;
}
.mt-value-tours__departure-wrap { position:relative; white-space:nowrap; }
.mt-value-tours__departure {
 padding:0;
 color:var(--link, #007bff);
 background:transparent;
 border:0;
 border-bottom:1px dashed currentColor;
 font:inherit;
 cursor:pointer;
}
.mt-value-tours__departure.is-loading { opacity:.6; }
.mt-value-tours__departure-menu {
 position:absolute;
 right:0;
 z-index:20;
 min-width:180px;
 margin-top:6px;
 padding:6px 0;
 background:#fff;
 border:1px solid #e5e9ed;
 box-shadow:0 8px 24px rgba(0,0,0,.08);
}
.mt-value-tours__departure-option {
 display:block;
 width:100%;
 padding:7px 12px;
 text-align:left;
 background:transparent;
 border:0;
 cursor:pointer;
}
.mt-value-tours__departure-option:hover,
.mt-value-tours__departure-option:focus { background:#f7f6f6; }
.mt-value-tours__content { position:relative; min-height:90px; }
.mt-value-tours__loader {
 position:absolute;
 inset:0;
 z-index:10;
 display:flex;
 align-items:center;
 justify-content:center;
 gap:7px;
 background:rgba(247,246,246,.90);
}
.mt-value-tours.is-loading .hotel-price-alternatives__list { opacity:.45; }
@media (max-width: 575.98px) {
 .mt-value-tours__head { align-items:flex-start; flex-direction:column; gap:7px; }
 .mt-value-tours__departure-menu { right:auto; left:0; }
}
