.stay-page {
    background:
        radial-gradient(circle at 8% 3%, rgba(185, 116, 83, .1), transparent 28%),
        linear-gradient(
            180deg,
            color-mix(in srgb, var(--color-sand-light) 44%, var(--color-white)) 0,
            color-mix(in srgb, var(--color-paper) 92%, var(--color-white)) 340px,
            var(--color-paper) 100%
        );
    padding-bottom: 64px;
}
.hotel-features { background: #fffaf2; border: 1px solid #ddd0bd; border-radius: 10px; padding: 25px; }
.hotel-features h2, .hotel-faqs h2 { font-size: 26px; line-height: 1.25; margin: 0 0 20px; }
.hotel-features ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 0 24px; }
.hotel-features li { display: flex; gap: 12px; align-items: baseline; padding: 10px 0; font-size: 16px; border-bottom: 1px solid #ece2d4; }
.hotel-features li:last-child { border-bottom: 0; }
.hotel-features__check { color: #617348; font-weight: 700; }
.hotel-faqs { margin: 28px 0; }
.hotel-faq { border: 1px solid #ddd0bd; border-radius: 8px; margin: 10px 0; background: #fffaf2; }
.hotel-faq summary { cursor: pointer; padding: 18px 20px; font-weight: 600; }
.hotel-faq summary:focus-visible { outline: 3px solid #936440; outline-offset: 2px; }
.hotel-faq__answer { padding: 0 20px 20px; overflow-wrap: anywhere; }
@media (max-width: 600px) { .hotel-features ul { grid-template-columns: minmax(0, 1fr); } }
.stay-header { display: grid; grid-template-columns: 1.15fr 1fr; max-width: 1440px; margin: auto; background: #eee5d8; }
.stay-header__copy { padding: 48px max(28px, calc((100vw - 1180px) / 2)); padding-right: 40px; align-self: center; }
.stay-header__copy .eyebrow { color: #876243; font-size: 12px; margin: 0 0 10px; }
.stay-header h1 { font-size: clamp(34px, 4vw, 54px); line-height: 1.1; margin: 0 0 18px; }
.stay-header__copy > p:last-child { font-size: 18px; max-width: 460px; margin: 0; }
.stay-header__image { position: relative; min-height: 260px; overflow: hidden; }
.stay-header__image > img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.stay-results { max-width: 1180px; margin: auto; padding: 30px 0 0; scroll-margin-top: 110px; }
.stay-search { margin: 0 0 24px; padding: 24px; border: 1px solid color-mix(in srgb, var(--color-taupe) 38%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--color-white) 96%, var(--color-paper)); box-shadow: 0 14px 34px rgba(59, 52, 41, .09); }
.stay-search__heading { margin: 0 0 18px; }
.stay-search__heading h2 { margin: 0 0 6px; font-size: 25px; line-height: 1.25; }
.stay-search__heading p { margin: 0; color: #6e614e; }
.stay-search__fields { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) auto; gap: 14px; align-items: end; }
.stay-search__date-range { position: relative; grid-column: span 2; min-width: 0; }
.stay-search__date-native { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.stay-search__date-range.is-enhanced .stay-search__date-native { display: none; }
.stay-search__date-trigger { width: 100%; min-height: 68px; box-sizing: border-box; display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 12px; align-items: center; border: 1px solid #bcae9b; border-radius: 6px; padding: 9px 13px; background: #fff; color: #30291f; text-align: left; cursor: pointer; }
.stay-search__date-trigger[hidden] { display: none; }
.stay-search__date-trigger > span:not(.stay-search__date-arrow) { display: grid; gap: 3px; min-width: 0; }
.stay-search__date-trigger small { color: #6e614e; font-size: 12px; font-weight: 700; }
.stay-search__date-trigger strong { overflow: hidden; font-size: 15px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.stay-search__date-arrow { color: #8b6342; font-size: 19px; }
.stay-search__date-trigger:hover { border-color: #936440; background: #fffaf2; }
.stay-search__date-trigger:focus-visible { outline: 3px solid #936440; outline-offset: 2px; border-color: #936440; }
.stay-search__date-trigger[aria-invalid="true"] { border-color: #a84935; }
.stay-search__children-ages { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.stay-search__children-ages[hidden],
.stay-search__field[hidden] { display: none !important; }
.stay-search__field { display: grid; gap: 7px; min-width: 0; font-size: 14px; font-weight: 700; color: #514536; }
.stay-search__field input,
.stay-search__field select { width: 100%; min-height: 46px; box-sizing: border-box; border: 1px solid #bcae9b; border-radius: 6px; padding: 9px 11px; background: #fff; color: #30291f; font: inherit; font-weight: 400; }
.stay-search__field input:focus-visible,
.stay-search__field select:focus-visible { outline: 3px solid #936440; outline-offset: 2px; border-color: #936440; }
.stay-search__submit { min-height: 46px; border: 1px solid #3b3429; border-radius: 6px; padding: 10px 20px; background: #3b3429; color: #fffaf2; font: inherit; font-weight: 700; cursor: pointer; }
.stay-search__submit:hover { background: #5b4d3d; }
.stay-search__submit:focus-visible,
.stay-search__reset:focus-visible { outline: 3px solid #936440; outline-offset: 3px; }
.stay-search__reset { display: inline-block; margin-top: 14px; color: #65472f; font-weight: 600; }
.stay-calendar { width: min(420px, calc(100vw - 32px)); max-width: none; box-sizing: border-box; border: 1px solid #bcae9b; border-radius: 12px; padding: 0; background: #fffdf9; color: #30291f; box-shadow: 0 24px 70px #241b1160; }
.stay-calendar::backdrop { background: #231b1466; backdrop-filter: blur(2px); }
.stay-calendar__panel { padding: 20px; }
.stay-calendar__header { display: grid; grid-template-columns: 42px minmax(0, 1fr) 42px; gap: 9px; align-items: center; }
.stay-calendar__header h3 { margin: 0; font-size: 19px; line-height: 1.25; text-align: center; }
.stay-calendar__nav { width: 42px; min-height: 42px; border: 1px solid #d6c8b7; border-radius: 7px; background: #fff; color: #443a2e; font: inherit; font-size: 25px; line-height: 1; cursor: pointer; }
.stay-calendar__nav:hover:not(:disabled) { background: #eee5d8; }
.stay-calendar__nav:disabled { opacity: .35; cursor: default; }
.stay-calendar__nav:focus-visible,
.stay-calendar__day:focus-visible,
.stay-calendar__cancel:focus-visible { outline: 3px solid #936440; outline-offset: 2px; }
.stay-calendar__instruction { min-height: 40px; margin: 13px 0 15px; color: #655743; font-size: 13px; line-height: 1.4; text-align: center; }
.stay-calendar__month { margin: 0 0 10px; font-size: 16px; font-weight: 800; text-align: center; }
.stay-calendar__weekdays,
.stay-calendar__days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; }
.stay-calendar__weekdays { margin-bottom: 5px; }
.stay-calendar__weekday { padding: 3px 0; color: #756854; font-size: 11px; font-weight: 800; text-align: center; text-transform: uppercase; }
.stay-calendar__blank { min-height: 40px; }
.stay-calendar__day { min-width: 0; min-height: 40px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: #30291f; font: inherit; font-size: 13px; font-weight: 600; cursor: pointer; }
.stay-calendar__day:hover:not(:disabled) { border-color: #bcae9b; background: #f1e8dc; }
.stay-calendar__day.is-in-range { border-radius: 3px; background: #ede0cf; }
.stay-calendar__day.is-start,
.stay-calendar__day.is-end { border-color: #3b3429; background: #3b3429; color: #fff; }
.stay-calendar__day[aria-current="date"] { box-shadow: inset 0 0 0 1px #a46e3e; }
.stay-calendar__day:disabled { color: #aaa092; cursor: not-allowed; text-decoration: line-through; }
.stay-calendar__footer { display: flex; justify-content: flex-end; margin-top: 16px; padding-top: 14px; border-top: 1px solid #e5d9ca; }
.stay-calendar__cancel { min-height: 40px; border: 1px solid #bcae9b; border-radius: 6px; padding: 7px 15px; background: #fff; color: #514536; font: inherit; font-weight: 700; cursor: pointer; }
.stay-calendar__cancel:hover { background: #eee5d8; }
.stay-search__errors { margin: 18px 0 0; padding: 14px 18px; border-left: 4px solid #a84935; background: #fff0ec; color: #6f2f22; }
.stay-search__errors p { margin: 0 0 7px; font-weight: 700; }
.stay-search__errors ul { margin: 0; padding-left: 20px; }
.detail-intro__availability-actions { display: flex; justify-content: flex-start; margin-top: 20px; }
.detail-availability-search,
.detail-availability-anchor { scroll-margin-top: 110px; }
.detail-availability-search { margin: 0; }
.detail-availability-anchor { display: block; }
.stay-search-status { margin: 20px 0 24px; padding: 13px 16px; border-radius: 7px; background: #eee6da; color: #5f523f; }
.stay-search-status--error { border-left: 4px solid #a84935; background: #fff0ec; color: #6f2f22; }
.stay-filters { display: flex; gap: 8px; flex-wrap: wrap; padding-bottom: 25px; border-bottom: 1px solid #ded4c6; }
.stay-filter { display: inline-flex; align-items: center; gap: 12px; border: 1px solid #d6c8b7; border-radius: 30px; padding: 10px 18px; text-decoration: none; font-size: 15px; font-weight: 600; background: #fffdf9; color: #514536; }
.stay-filter span { font-size: 12px; padding: 0 6px; border-radius: 12px; background: #e8e0d5; color: #514536; }
.stay-filter.is-selected, .stay-filter:hover { background: #3b3429; color: #fffaf2; border-color: #3b3429; }
.stay-group { padding-top: 30px; }
.stay-result-count { position: relative; display: flex; align-items: center; gap: 6px; margin: 0 0 20px; color: #766954; font-size: 15px; }
.stay-sort-info { position: static; display: inline-flex; }
.stay-sort-info__toggle { display: inline-grid; width: 19px; height: 19px; place-items: center; border: 1px solid currentColor; border-radius: 50%; color: #766954; font-size: 12px; font-weight: 700; line-height: 1; cursor: pointer; list-style: none; }
.stay-sort-info__toggle::-webkit-details-marker { display: none; }
.stay-sort-info__toggle:hover,
.stay-sort-info__toggle:focus-visible { color: #9b4f30; }
.stay-sort-info__panel { position: absolute; z-index: 8; top: calc(100% + 8px); left: 0; width: min(520px, calc(100vw - 40px)); border: 1px solid #d8c7b1; border-radius: 8px; padding: 14px 16px; background: #fffaf2; color: #554938; box-shadow: 0 12px 30px rgba(59, 52, 41, .18); font-size: 12px; line-height: 1.5; }
.stay-sort-info__panel strong { display: block; margin-bottom: 7px; color: #3b3429; font-size: 13px; }
.stay-sort-info__panel p { margin: 0 0 7px; }
.stay-sort-info__panel p:last-child { margin-bottom: 0; }
.stay-group + .stay-group { margin-top: 18px; }
.stay-group__heading { margin-bottom: 20px; }
.stay-group__heading h2 { font-size: 27px; line-height: 1.25; margin: 0 0 6px; }
.stay-group__heading p { font-size: 16px; color: #766954; margin: 0; }
.stay-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.stay-card { overflow: hidden; display: flex; flex-direction: column; background: #fffdfa; border: 1px solid #e5dccc; border-radius: 10px; text-decoration: none; color: #3b3429; transition: box-shadow .2s, transform .2s; }
.stay-advertisements { margin: 0 0 34px; border: 1px solid #c8a77b; border-radius: 12px; padding: 20px; background: #f8f0e3; }
.stay-advertisements__heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; margin-bottom: 16px; }
.stay-advertisements__heading p { margin: 0; }
.stay-advertisements__heading > p:last-child { color: #6e614e; font-size: 14px; }
.stay-card--advertisement { border-color: #b6844e; box-shadow: 0 8px 20px #5c3c1717; }
.stay-card__advertisement { position: absolute; z-index: 3; top: 12px; left: 12px; border-radius: 999px; padding: 6px 10px; background: #3b3429; color: #fff; font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; box-shadow: 0 3px 12px #251a1045; }
.stay-organic-title { margin: 0 0 18px; font-size: 26px; }
.stay-card:hover { box-shadow: 0 10px 24px #3b342918; transform: translateY(-3px); }
.stay-card:focus-visible, .stay-filter:focus-visible { outline: 3px solid #936440; outline-offset: 4px; }
.stay-card__media { position: relative; }
.stay-card__image { aspect-ratio: 16 / 10; position: relative; background: #e9e1d5; overflow: hidden; }
.stay-card__image { display: block; }
.stay-card h3 a, .stay-card__link { color: inherit; text-decoration: none; }
.stay-card { position: relative; }
.stay-card:focus-within { outline: 3px solid #936440; outline-offset: 3px; }
.stay-card h3 a:hover, .stay-card__link:hover { text-decoration: none; }
.stay-affiliates { margin: 0 0 20px; }
.stay-affiliates__label { margin: 0 0 8px; font-size: 12px; font-weight: 600; color: #766954; }
.stay-affiliates__links { display: flex; flex-wrap: wrap; gap: 8px; }
.stay-affiliates__link { display: inline-flex; align-items: center; justify-content: space-between; gap: 14px; padding: 9px 13px; border: 1px solid #d6c8b7; border-radius: 6px; background: #f4ede3; color: #514536; text-decoration: none; font-size: 14px; font-weight: 600; }
.stay-affiliates__link:hover { background: #3b3429; color: #fffaf2; }
.stay-affiliates__link:focus-visible, .stay-card a:focus-visible { outline: 3px solid #936440; outline-offset: 3px; }
.stay-card__image > img { width: 100%; height: 100%; object-fit: cover; }
.stay-card__offer-badge { position: absolute; z-index: 2; top: 12px; right: 12px; max-width: calc(100% - 24px); box-sizing: border-box; display: grid; gap: 3px; border: 1px solid #fff8ed; border-radius: 8px; padding: 9px 30px 9px 11px; background: #fffaf2f2; color: #30291f; box-shadow: 0 4px 16px #251a1050; text-align: right; }
.stay-card__offer-badge strong { font-size: 18px; line-height: 1.15; }
.stay-card__offer-nightly { color: #5d4f3e; font-size: 12px; font-weight: 700; white-space: nowrap; }
.stay-card__offer-marker { position: absolute; top: 3px; right: 4px; width: 25px; height: 25px; display: inline-grid; place-items: center; border-radius: 50%; color: #694726; font-size: 19px; font-weight: 900; line-height: 1; text-decoration: none; }
.stay-card__offer-marker:hover { background: #e7d7c1; }
.stay-card__offer-marker:focus-visible { outline: 3px solid #936440; outline-offset: 1px; }
.stay-card__rating-badge { position: absolute; z-index: 2; right: 12px; bottom: 12px; border: 1px solid #fff8ed; border-radius: 7px; padding: 6px 9px; background: #3b3429ed; color: #fff; box-shadow: 0 4px 14px #251a1045; font-size: 14px; font-weight: 800; line-height: 1; }
.stay-card__image--empty { display: grid; place-items: center; background: linear-gradient(135deg, #ece5da, #dfd2be); }
.stay-card__image--empty > img { width: 84px; height: 84px; object-fit: contain; opacity: .65; }
.stay-card__body { padding: 22px; display: flex; flex-direction: column; flex: 1; }
.stay-card__location { margin: 0 0 8px; font-size: 12px; color: #8b6342; font-weight: 600; }
.stay-stars { color: #98691b; font-size: 16px; white-space: nowrap; vertical-align: baseline; }
.stay-stars__half { position: relative; display: inline-block; }
.stay-stars__half::before { content: "★"; position: absolute; left: 0; top: 0; width: 50%; overflow: hidden; }
.hotel-information .stay-stars { font-size: 24px; }
.stay-card h3 { margin: 0 0 9px; font-size: 24px; line-height: 1.2; }
.stay-card__address { font-size: 14px; color: #766954; margin: 0 0 12px; }
.stay-card__intro { font-size: 16px; margin: 0 0 20px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.stay-card__offer { margin: auto 0 0; padding: 15px; border: 1px solid #d9c7ad; border-radius: 8px; background: #f7efe3; }
.stay-card__offer { scroll-margin-top: 120px; }
.stay-card__offer:target,
.stay-card__offer:focus { border-color: #936440; box-shadow: 0 0 0 3px #93644033; }
.stay-card__offer-detail { margin: 0; color: #5f523f; font-size: 12px; line-height: 1.5; }
.stay-card__offer-detail-marker { color: #694726; font-weight: 900; }
.stay-card__offer-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; margin: 0; color: #30291f; }
.stay-card__offer-price span { font-size: 14px; }
.stay-card__offer-price strong { font-size: 23px; line-height: 1.15; }
.stay-card__offer-note { margin: 7px 0 0; color: #6e614e; font-size: 12px; line-height: 1.4; }
.stay-card__offer-rating { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin: 12px 0 0; font-size: 14px; }
.stay-card__offer-score { display: inline-flex; align-items: center; min-height: 27px; border-radius: 5px; padding: 3px 8px; background: #3b3429; color: #fff; font-weight: 800; }
.stay-card__offer-room { margin: 9px 0 0; color: #5f523f; font-size: 13px; line-height: 1.35; }
.hotel-availability { overflow: hidden; margin: 0 0 24px; border: 1px solid #cfb894; border-radius: 10px; background: linear-gradient(135deg, #fffaf2, #f5ead9); box-shadow: 0 12px 28px #3b342919; }
.hotel-availability__top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, 34%); }
.hotel-availability__top--single { grid-template-columns: 1fr; }
.hotel-availability__heading { display: grid; align-content: center; gap: 7px; padding: 28px; background: #3b3429; color: #fff; }
.hotel-availability__heading .eyebrow { margin: 0; color: #e6d5be; font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.hotel-availability__heading h2 { margin: 0; color: inherit; font-size: 26px; line-height: 1.08; }
.hotel-availability__travel { margin: 4px 0 0; color: #f3eadf; font-size: 14px; font-weight: 600; line-height: 1.45; }
.hotel-availability__offer { padding: 24px 28px 6px; }
.hotel-availability__price-summary { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-content: center; align-items: center; gap: 20px; min-width: 0; padding: 26px 28px 26px 48px; text-align: left; }
.hotel-availability__price-summary::before { position: absolute; top: 28px; bottom: 28px; left: 28px; width: 3px; background: #c77a53; content: ""; }
.hotel-availability__price-main { min-width: 0; }
.hotel-availability__price { display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: baseline; gap: 8px 12px; }
.hotel-availability__price > span:first-child { width: 100%; color: #675744; font-size: 13px; font-weight: 700; line-height: 1.25; }
.hotel-availability__price strong { color: #3b3429; font-size: clamp(24px, 3vw, 30px); line-height: 1.1; }
.hotel-availability__price s { color: #776a58; }
.hotel-availability__discount { border-radius: 20px; padding: 4px 9px; background: #607348; color: #fff; font-size: 13px; font-weight: 800; }
.hotel-availability__nightly { margin: 7px 0 0; color: #675744; font-size: 14px; font-weight: 700; }
.hotel-availability__rating-summary { display: grid; justify-items: end; gap: 5px; max-width: 150px; text-align: right; }
.hotel-availability__rating-summary strong { border-radius: 6px; padding: 6px 9px; background: #3b3429; color: #fff; font-size: 18px; line-height: 1; white-space: nowrap; }
.hotel-availability__rating-summary span { color: #675744; font-size: 11px; line-height: 1.3; }
.hotel-availability__booking-row { display: grid; grid-template-columns: minmax(240px, .85fr) minmax(0, 1.15fr); gap: 30px; align-items: start; }
.hotel-availability__booking-row--facts-only { grid-template-columns: 1fr; }
.hotel-availability__booking-action { display: grid; justify-items: start; gap: 12px; }
.hotel-availability__facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 18px; padding-left: 24px; border-left: 1px solid #ddcdb6; }
.hotel-availability__booking-row--facts-only .hotel-availability__facts { padding-left: 0; border-left: 0; }
.hotel-availability__facts p { margin: 0; color: #514536; font-size: 14px; }
.hotel-availability__button { justify-self: start; }
.hotel-availability__price-note { margin: 0; max-width: 480px; color: #6e614e; font-size: 12px; line-height: 1.45; }
.hotel-availability__price-note span { color: #694726; font-weight: 900; }
.hotel-availability__empty { display: grid; justify-items: start; gap: 16px; padding: 22px 28px 26px; }
.hotel-availability__empty .stay-search-status { margin: 0; }
.hotel-availability__affiliates { margin: 16px 28px 0; padding: 18px 0 24px; border-top: 1px solid #ddcdb6; }
.hotel-availability__affiliates .stay-affiliates { margin-bottom: 0; }
.hotel-availability > .stay-search__errors,
.hotel-availability > .stay-search-status { margin: 22px 28px 0; }
.hotel-availability__back { display: inline-block; margin: 18px 28px 20px; }
.hotel-availability__back + .hotel-availability__affiliates { margin-top: 0; }
.stay-card__link { border-top: 1px solid #e9e0d4; padding-top: 15px; margin-top: auto; display: flex; justify-content: space-between; font-size: 15px; font-weight: 600; }
.stay-empty { border-radius: 8px; background: #efe9df; padding: 18px 22px; font-size: 16px; color: #6e614e; }
@media (max-width: 1236px) { .stay-results { margin: 0 28px; } .stay-header__copy { padding-left: 28px; } }
@media (max-width: 900px) { .stay-search__fields, .stay-search__children-ages { grid-template-columns: repeat(2, minmax(0, 1fr)); } .stay-search__date-range, .stay-search__children-ages { grid-column: 1 / -1; } .stay-search__submit { width: 100%; } .stay-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
    .stay-header { grid-template-columns: 1fr; }
    .stay-header__copy { padding: 28px 20px; }
    .stay-header__image { display: none; }
    .stay-results { margin: 0 20px; padding-top: 22px; }
    .stay-search { padding: 19px; }
    .stay-search__fields { grid-template-columns: 1fr; }
    .stay-search__date-range { grid-column: span 1; }
    .stay-search__date-native { grid-template-columns: 1fr; }
    .stay-search__children-ages { grid-template-columns: 1fr; }
    .detail-intro__availability-actions .button { width: 100%; justify-content: center; }
    .stay-search__date-trigger { min-height: 64px; gap: 8px; padding-inline: 10px; }
    .stay-search__date-trigger strong { font-size: 14px; }
    .stay-calendar__panel { padding: 16px; }
    .stay-calendar__day, .stay-calendar__blank { min-height: 38px; }
    .stay-card__offer-badge { top: 9px; right: 9px; max-width: calc(100% - 18px); }
    .stay-card__advertisement { top: 9px; left: 9px; }
    .stay-card__rating-badge { right: 9px; bottom: 9px; }
    .hotel-availability__top { grid-template-columns: 1fr; gap: 0; }
    .hotel-availability__heading { padding: 22px 20px; }
    .hotel-availability__price-summary { min-width: 0; padding: 20px 20px 20px 40px; text-align: left; }
    .hotel-availability__price-summary::before { top: 20px; bottom: 20px; left: 20px; }
    .hotel-availability__price { justify-content: flex-start; }
    .hotel-availability__offer { padding: 20px 20px 4px; }
    .hotel-availability__price-summary { gap: 13px; }
    .hotel-availability__rating-summary { max-width: 112px; }
    .hotel-availability__rating-summary strong { padding: 6px 8px; font-size: 16px; }
    .hotel-availability__booking-row { grid-template-columns: 1fr; gap: 18px; }
    .hotel-availability__facts { padding: 16px 0 0; border-top: 1px solid #ddcdb6; border-left: 0; }
    .hotel-availability__empty { padding: 20px; }
    .hotel-availability__affiliates { margin: 16px 20px 0; }
    .hotel-availability > .stay-search__errors,
    .hotel-availability > .stay-search-status { margin: 20px 20px 0; }
    .hotel-availability__back { margin: 18px 20px 20px; }
    .hotel-availability__facts { grid-template-columns: 1fr; }
    .stay-filters { gap: 7px; }
    .stay-filter { font-size: 13px; padding: 8px 12px; gap: 7px; }
    .stay-grid { grid-template-columns: 1fr; gap: 20px; }
    .stay-advertisements { padding: 15px; }
    .stay-group__heading h2 { font-size: 24px; }
}
