/* Option 1: three rental choices, followed by a compact package row. */
.site-page.cabanas .cabana-main { max-width: 1184px; padding: 24px 24px 0; }
.cabanas .rental-intro { text-align: center; margin-bottom: 22px; }
.cabanas .rental-intro .location-only-badge { margin-bottom: 7px; border: 1px solid #dcb74c; background: #ffda69; color: #07396e; }
.cabanas .rental-intro h1 { margin: 0 0 7px; font: 800 clamp(26px,3vw,38px)/1.15 Nunito,Arial,sans-serif; letter-spacing: -.6px; color: #07396e; }
.cabanas .rental-intro p { margin: 0 auto; font-size: 16px; color: #466474; }
.cabanas :is(#choose-rental,#sunset-special,#water-rentals,#rental-packages,#more-rentals) { scroll-margin-top: 110px; }
.cabanas .rental-choice-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch; gap: 16px; }
.cabanas :is(.rental-choice-card,.rental-bundle,.rental-small-card) { min-width: 0; background: #fff; border: 0; border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.cabanas .rental-choice-card { display: flex; flex-direction: column; overflow: hidden; padding: 8px; }
.rental-choice-photo { display: block; flex: 0 0 180px; width: 100%; height: 180px; object-fit: cover; object-position: center; border-radius: 8px; }
.rental-choice-copy { display: flex; flex-direction: column; flex: 1; min-width: 0; padding: 14px 8px 8px; }
.cabanas .rental-choice-copy h2 { font: 900 clamp(20px,2vw,24px)/1.2 Nunito,Arial,sans-serif; color: #07396e; margin: 0 0 8px; letter-spacing: -.35px; }
.rental-choice-copy > p { font-size: 14px; line-height: 1.5; margin: 0 0 12px; color: #526c79; }
.cabanas .rental-fineprint { color: #526977; font-size: 13px; line-height: 1.45; margin: 10px 0 0; }
.rental-shade-buttons { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: auto; padding-top: 20px; }
.rental-shade-button { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 52px; padding: 10px; border: 1px solid #91cbe7; border-radius: 7px; background: #eaf7ff; color: #07396e; font: 800 16px/1.3 Nunito,Arial,sans-serif; cursor: pointer; }
.rental-shade-button:hover { background: #d7effe; border-color: #006fb3; }
.rental-shade-button:focus-visible, .rental-time-choice:has(input:focus-visible), .rental-water-choice:has(input:focus-visible) { outline: 3px solid #07396e; outline-offset: 3px; }
/* The only shade actions on the page open this small rate picker. */
.rental-shade-form { display: block; }
.rental-shade-form fieldset, .rental-water-form fieldset { min-width: 0; padding: 0; margin: 0; border: 0; }
.rental-shade-form legend { padding: 0; margin: 0 0 10px; font-size: 16px; font-weight: 800; }
.rental-time-grid { display: grid; gap: 8px; }
.rental-time-choice { display: flex; align-items: center; gap: 12px; min-height: 62px; padding: 12px; border: 1px solid #dce7eb; border-radius: 7px; cursor: pointer; }
.rental-time-choice:has(input:checked), .rental-water-choice:has(input:checked) { background: #eaf7ff; border-color: #399fd4; }
.rental-time-choice input[type=radio], .rental-water-choice input[type=radio] { flex: 0 0 18px; width: 18px; height: 18px; min-height: 18px; margin: 0; padding: 0; accent-color: #006fb3; }
.rental-time-choice span { display: grid; gap: 2px; }
.rental-time-choice strong { font-size: 16px; }
.rental-time-choice small { font-size: 13px; color: #526c79; }
.rental-time-choice b { margin-left: auto; font-size: 25px; line-height: 1.15; color: #07396e; }
#shade-pricing-description { margin: 12px 0 20px; color: #526c79; font-size: 14px; line-height: 1.5; }
.rental-shade-estimate { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-top: 18px; padding: 14px; border-radius: 8px; background: #f0f8fd; }
.rental-shade-estimate > label { display: grid; gap: 6px; width: 130px; font-size: 14px; font-weight: 800; }
.rental-shade-estimate > div { display: grid; gap: 4px; }
.rental-shade-estimate span { font-size: 14px; color: #526c79; }
.rental-shade-estimate strong { font-size: 30px; line-height: 1.1; color: #07396e; }
.rental-shade-form > .rental-book-button { width: 100%; margin-top: 18px; }
/* Keep the evening offer distinct, with its original warm copy and action. */
.cabanas .rental-sunset { background: linear-gradient(135deg,#ffefd5,#fde0e7 72%,#f4ddeb); }
.cabanas .rental-sunset-copy h2 { color: #74335f; }
.rental-sunset-copy > p { color: #77544f; }
.rental-sunset-copy > .rental-sunset-kicker { font-size: 16px; font-weight: 900; color: #74335f; margin: 0 0 8px; }
.rental-sunset-copy > .rental-sunset-includes { color: #64384e; font-size: 13px; font-weight: 800; margin: 0; }
.rental-sunset-action { display: grid; gap: 10px; margin-top: auto; padding-top: 12px; text-align: center; }
.rental-sunset-action > strong { color: #74335f; font-size: 38px; line-height: 1.1; }
.rental-sunset-eyebrow { display: flex; align-items: center; gap: 6px; font-size: 11px; font-weight: 900; letter-spacing: 1.4px; color: #994125; margin: 0 0 6px; }
.rental-water-form { margin-top: auto; }
.rental-water-options { display: grid; gap: 7px; }
.rental-water-choice { display: flex; align-items: center; gap: 9px; min-height: 46px; padding: 8px 11px; border: 1px solid #dce7eb; border-radius: 7px; color: #07396e; cursor: pointer; }
.rental-water-choice span { font-size: 14px; font-weight: 800; }
.rental-water-choice strong { margin-left: auto; font-size: 23px; line-height: 1.1; }
.rental-water-form > .rental-book-button { width: 100%; margin-top: 12px; }
/* One image per package, arranged beside concise benefits and the price. */
.rental-section { margin: 18px 0; }
.rental-section-heading { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 16px; margin-bottom: 12px; }
.cabanas .rental-section-heading h2 { margin: 0; font-size: 25px; line-height: 1.2; color: #07396e; }
.rental-section-heading p { margin: 0; font-size: 14px; color: #526c79; }
.rental-bundle-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; align-items: stretch; }
.rental-bundle { display: grid; grid-template-columns: 96px minmax(0,1fr); gap: 12px; overflow: hidden; padding: 12px; }
.rental-bundle-cover { display: block; width: 100%; height: 180px; object-fit: cover; object-position: center; border-radius: 7px; align-self: center; }
.rental-bundle-copy { display: flex; flex-direction: column; min-width: 0; }
.cabanas .rental-bundle h3 { margin: 0 0 7px; font-size: 16px; line-height: 1.25; color: #07396e; }
.rental-bundle ul { list-style: none; padding: 0; margin: 0 0 10px; font-size: 13px; color: #426273; line-height: 1.6; }
.rental-bundle li { position: relative; padding-left: 16px; margin-bottom: 3px; }
.rental-bundle li::before { content: '✓'; position: absolute; left: 0; color: #bb4d1b; font-weight: 900; }
.rental-bundle-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 6px; margin: auto 0 10px; }
.rental-bundle-price strong { color: #07396e; font-size: 28px; line-height: 1.1; }
.rental-bundle-price span { font-size: 12px; color: #526c79; }
.rental-bundle-label { margin-bottom: 5px; font-size: 10px; font-weight: 900; color: #075a91; letter-spacing: .6px; }
.site-page.cabanas .rental-bundle .rental-book-button { padding: 8px 10px; font-size: 13px; min-height: 44px; gap: 5px; }
.rental-small-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.rental-small-card { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: 12px; padding: 12px 16px; }
.cabanas .rental-small-card h3 { margin: 0; font-size: 16px; line-height: 1.3; }
.rental-small-card p { margin: 3px 0 0; font-size: 13px; color: #526c79; }
.rental-small-card > strong { font-size: 25px; color: #07396e; }
.site-page.cabanas .rental-small-card .rental-book-button { min-height: 44px; padding: 8px 12px; font-size: 13px; }
.cabanas .cabana-visit { margin-top: 18px; border: 0; border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,.05); font-size: 14px; }
.cabanas .cabana-visit h2 { font-size: 19px; margin-bottom: 8px; color: #07396e; }
.rental-noscript { padding: 16px; background: #fff; border-radius: 6px; }
/* Native dialog keeps the choice and price visible during the short request step. */
body.rental-dialog-open { overflow: hidden; }
.rental-dialog { width: min(600px,calc(100% - 24px)); max-width: 600px; max-height: calc(100dvh - 32px); margin: auto; padding: 24px; border: 1px solid #d9e5e7; border-radius: 12px; background: #fff; color: #123d59; box-shadow: 0 20px 70px #00314e38; overscroll-behavior: contain; }
.rental-dialog::backdrop { background: #0d29498c; backdrop-filter: blur(3px); }
.rental-dialog [hidden] { display: none; }
.rental-dialog-header { display: flex; justify-content: space-between; align-items: start; gap: 16px; }
.rental-dialog-header .eyebrow { font-size: 11px; margin: 0 0 5px; letter-spacing: 1.3px; }
.cabanas .rental-dialog h2 { margin: 0; font-size: 24px; line-height: 1.2; color: #07396e; }
.rental-close { flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid #d9e6e9; border-radius: 6px; background: #f4f8f9; color: #35556b; font-size: 28px; line-height: 1; }
#rental-dialog-description { margin: 12px 0 16px; font-size: 14px; color: #526c79; line-height: 1.45; }
.rental-request-item { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 8px 16px; padding: 14px 16px; margin-bottom: 18px; border: 1px solid #d9e8f1; border-left: 3px solid #0879b4; border-radius: 8px; background: #f5faff; }
.rental-request-item > div { min-width: 0; }
.cabanas .rental-request-item h3 { font-size: 17px; line-height: 1.3; margin: 0 0 4px; }
.rental-request-item p { margin: 0 0 4px; font-size: 13px; color: #526c79; }
.rental-request-item .request-selection-label { margin: 0 0 5px; font-size: 10px; font-weight: 700; letter-spacing: 1px; color: #506a7c; }
.rental-request-item > strong { max-width: 130px; font-size: 15px; line-height: 1.4; color: #075a91; text-align: right; }
.rental-request-item ul { grid-column: 1 / -1; margin: 0; padding-left: 17px; font-size: 13px; line-height: 1.5; color: #436472; }
.rental-availability { grid-column: 1 / -1; margin: 0; padding: 9px 11px; border-radius: 6px; background: #eef6fc; color: #365b73; font-size: 12px; line-height: 1.5; }
.rental-availability.is-unavailable { background: #fff3e6; color: #843d14; }
.rental-request-sunset { padding: 16px; margin: 0 0 18px; border: 1px solid #ead0d8; border-radius: 12px; background: linear-gradient(110deg,#fff0da,#fff1e9 48%,#f3e6f2); }
.request-sunset-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.cabanas .request-sunset-heading h3 { margin: 0; font-size: 21px; line-height: 1.2; color: #74335f; }
.request-sunset-heading > strong { font-size: 30px; line-height: 1.1; color: #74335f; }
.request-sunset-heading .rental-sunset-eyebrow { font-size: 10px; margin: 0 0 4px; }
.request-sunset-description { color: #77544f; margin: 9px 0; font-size: 13px; line-height: 1.5; }
.request-sunset-description > strong { color: #64384e; }
.request-sunset-includes { font-size: 13px; font-weight: 800; margin: 0 0 12px; color: #64384e; }
.request-sunset-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; }
.rental-request-sunset > small { display: block; margin-top: 8px; color: #795e6b; font-size: 12px; line-height: 1.4; }
#request-sunset-selected { margin: 0; color: #74335f; font-size: 14px; font-weight: 800; }
.request-sunset-back { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 0; border: 0; background: transparent; color: #74335f; font-size: 13px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
#request-sunset-option[hidden], #request-sunset-option [hidden] { display: none; }
.rental-request-extras { min-width: 0; margin: 20px 0 0; padding: 14px; border: 1px solid #dae6eb; border-radius: 10px; background: #f7fafb; }
.rental-request-extras legend { padding: 0 6px; font-size: 16px; font-weight: 800; }
.rental-request-extras legend span { font-size: 13px; font-weight: 400; }
.rental-request-extras > p:first-of-type { margin: 0 0 12px; font-size: 13px; color: #526c79; }
.request-extra-rate { font-size: 13px; font-weight: 400; color: #526c79; }
.rental-request-breakdown { margin: 16px 0 0; padding: 12px 0 0; border-top: 1px solid #d4e6e5; font-size: 13px; line-height: 1.4; }
.rental-request-breakdown > div { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin: 0 0 6px; }
.rental-request-breakdown dd { margin: 0; font-weight: 800; }
.rental-request-breakdown:not([hidden]) + .rental-request-total { margin-top: 10px; padding-top: 0; border-top: 0; }
.rental-request-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.rental-request-fields label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 800; min-width: 0; }
.rental-dialog :is(input,select,textarea) { width: 100%; min-width: 0; max-width: 100%; min-height: 46px; padding: 10px 11px; border: 1px solid #bfced6; border-radius: 6px; background: #fff; color: #133d58; font: 400 16px/1.4 Nunito,Arial,sans-serif; }
.rental-notes { margin-top: 12px; font-size: 14px; }
.rental-notes summary { min-height: 44px; padding: 12px 0; cursor: pointer; color: #006e74; font-weight: 800; }
.rental-notes label { display: block; margin-bottom: 5px; }
.rental-notes textarea { resize: vertical; }
.rental-request-total { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-top: 18px; padding: 14px 0 0; border-top: 1px solid #d4e6e5; font-size: 15px; font-weight: 800; }
.rental-request-total strong { color: #00747b; font-size: 30px; line-height: 1.15; overflow-wrap: anywhere; }
.rental-request-actions { display: flex; flex-direction: column; align-items: stretch; text-align: center; gap: 4px; margin-top: 16px; }
.rental-request-actions > a { display: flex; justify-content: center; align-items: center; min-height: 44px; color: #006e74; font-size: 14px; font-weight: 800; text-underline-offset: 3px; }
.rental-request-error { color: #a13319; background: #fff0e8; border-radius: 5px; padding: 10px; font-size: 14px; line-height: 1.4; }
#rental-request-status { padding: 12px; background: #eaf8f3; border-radius: 6px; }

@media (max-width: 1100px) and (min-width: 1024px) {
 .rental-bundle { grid-template-columns: 80px minmax(0,1fr); gap: 10px; padding: 10px; }
 .rental-choice-copy { padding-right: 4px; padding-left: 4px; }
}
@media (max-width: 1023px) {
 .cabanas .rental-choice-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .cabanas .rental-water-card { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(180px,.7fr) minmax(0,1fr); gap: 12px; }
 .rental-water-card .rental-choice-photo { height: 100%; min-height: 180px; }
 .rental-water-card .rental-choice-copy { padding: 10px 8px; }
 .rental-water-options { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .rental-water-choice { display: grid; grid-template-columns: 18px minmax(0,1fr); gap: 7px; padding: 10px; }
 .rental-water-choice strong { grid-column: 2; margin-left: 0; }
 .rental-bundle-grid { grid-template-columns: minmax(0,1fr); gap: 10px; }
 .rental-bundle { grid-template-columns: 140px minmax(0,1fr); gap: 16px; }
 .rental-bundle-cover { height: 150px; }
 .rental-bundle-copy { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 0 18px; }
 .rental-bundle h3, .rental-bundle ul, .rental-bundle-label { grid-column: 1; }
 .rental-bundle-price { grid-column: 2; grid-row: 1 / 3; align-self: start; margin-top: 0; }
 .rental-bundle .rental-book-button { grid-column: 2; grid-row: 3 / 5; align-self: end; }
 .rental-small-card { grid-template-columns: minmax(0,1fr) auto; }
 .rental-small-card .rental-book-button { grid-column: 1 / -1; }
}
@media (max-width: 679px) {
 .site-page.cabanas .cabana-main { padding: 20px 16px 0; }
 .cabanas .rental-intro { margin-bottom: 18px; }
 .cabanas .rental-intro h1 { font-size: 28px; }
 .cabanas .rental-intro p { font-size: 15px; }
 .cabanas .rental-choice-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
 .cabanas .rental-water-card { display: flex; grid-column: auto; }
 .rental-choice-photo, .rental-water-card .rental-choice-photo { flex-basis: 160px; height: 160px; min-height: 0; }
 .rental-choice-copy { padding: 12px 8px 8px; }
 .cabanas .rental-choice-copy h2 { font-size: 23px; }
 .rental-shade-buttons { padding-top: 4px; }
 .rental-shade-button { min-height: 48px; }
 .rental-sunset-action { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; text-align: left; }
 .rental-sunset-action .rental-book-button { flex: 1; }
 .rental-bundle { grid-template-columns: 100px minmax(0,1fr); gap: 12px; }
 .rental-bundle-cover { height: 180px; }
 .rental-bundle-copy { display: flex; }
 .rental-bundle-price { margin: auto 0 8px; }
 .cabanas .rental-section-heading h2 { font-size: 23px; }
 .rental-small-options { gap: 10px; }
 .rental-small-card { padding: 12px; gap: 8px; }
 .cabanas .rental-small-card h3 { font-size: 15px; }
 .rental-small-card > strong { font-size: 22px; }
 .rental-small-card .rental-book-button { width: 100%; }
}
@media (max-width: 540px) {
 .rental-dialog { padding: 18px; max-height: calc(100dvh - 24px); }
 .cabanas .rental-dialog h2 { font-size: 22px; }
 .rental-request-fields { gap: 14px 10px; }
 .rental-request-fields label { font-size: 13px; }
 .rental-request-item { gap: 8px 12px; padding: 12px; }
 .cabanas .rental-request-item h3 { font-size: 16px; }
 .rental-shade-estimate { gap: 10px; }
}
@media (max-width: 359px) {
 .rental-request-item { grid-template-columns: minmax(0,1fr); }
 .rental-request-item > strong { max-width: none; text-align: left; }
 .rental-request-fields { grid-template-columns: minmax(0,1fr); }
 .rental-small-options { grid-template-columns: minmax(0,1fr); }
 .rental-bundle { grid-template-columns: 80px minmax(0,1fr); gap: 10px; }
}
/* Smaller page proportions and compact pricing panels, with full-size tap targets. */
.site-page.cabanas .cabana-main { max-width: 1080px; padding-top: 20px; }
.cabanas .rental-intro { margin-bottom: 16px; }
.cabanas .rental-intro h1 { font-size: clamp(25px,2.7vw,33px); }
.cabanas .rental-intro p { font-size: 15px; }
.cabanas .rental-choice-grid { gap: 12px; }
.rental-choice-photo { flex-basis: 145px; height: 145px; }
.rental-choice-copy { padding: 11px 7px 6px; }
.cabanas .rental-choice-copy h2 { font-size: 21px; margin-bottom: 6px; }
.rental-choice-copy > p { margin-bottom: 9px; font-size: 14px; }
.rental-shade-buttons { gap: 8px; padding-top: 14px; }
.rental-shade-button { min-height: 46px; font-size: 15px; }
.rental-sunset-action > strong { font-size: 32px; }
.rental-bundle { grid-template-columns: 82px minmax(0,1fr); padding: 10px; gap: 10px; }
.rental-bundle-cover { height: 150px; }
.cabanas .rental-section-heading h2 { font-size: 22px; }
.rental-dialog { width: min(500px,calc(100% - 24px)); padding: 18px; }
.rental-pricing-dialog { max-width: 480px; }
.cabanas .rental-dialog h2 { font-size: 21px; }
.rental-dialog-header { gap: 12px; }
.rental-dialog-header .eyebrow { margin-bottom: 3px; font-size: 10px; }
.rental-close { flex-basis: 44px; width: 44px; height: 44px; font-size: 25px; }
#shade-pricing-description { margin: 8px 0 14px; }
.rental-shade-form legend { margin-bottom: 7px; font-size: 15px; }
.rental-time-grid { gap: 6px; }
.rental-time-choice { min-height: 50px; padding: 9px 11px; gap: 10px; }
.rental-time-choice strong { font-size: 15px; }
.rental-time-choice small { font-size: 12px; line-height: 1.35; }
.rental-time-choice b { font-size: 23px; }
.rental-time-sunset { background: linear-gradient(110deg,#fff0da,#fde4ed); border-color: #e7becd; }
.rental-time-sunset :is(strong,b) { color: #74335f; }
.rental-time-sunset small { color: #77544f; }
.rental-time-sunset:has(input:checked) { background: linear-gradient(110deg,#ffe4be,#f8ccdf); border-color: #9d3c69; }
.rental-time-sunset input[type=radio] { accent-color: #9d3c69; }
.rental-shade-estimate { margin-top: 12px; padding: 11px; gap: 12px; }
.rental-shade-estimate > label { width: 115px; font-size: 13px; }
.rental-shade-estimate strong { font-size: 25px; }
.rental-shade-estimate span { font-size: 13px; }
.rental-shade-form > .rental-book-button { margin-top: 12px; }
.rental-request-fields { gap: 10px 12px; }
.rental-dialog :is(input,select,textarea) { min-height: 44px; padding: 8px 10px; }
.rental-request-item { margin-bottom: 14px; }
.rental-request-sunset { padding: 12px; margin-bottom: 14px; }
.rental-request-extras { margin-top: 14px; padding: 12px; }
.rental-request-total { margin-top: 14px; padding-top: 11px; }
.rental-request-total strong { font-size: 26px; }
.rental-request-actions { margin-top: 12px; }
.rental-book-button:disabled { opacity: .65; cursor: wait; }
.rental-booking-confirmation { padding: 12px 0; }
.booking-confirmed-icon { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 12px; border-radius: 50%; background: #eaf6ec; color: #226837; font-size: 27px; }
.cabanas .rental-booking-confirmation h3 { margin: 0 0 8px; font-size: 24px; color: #07396e; }
.rental-booking-confirmation > p { margin: 0 0 12px; font-size: 14px; }
#booking-reference { display: block; padding: 12px; border-radius: 6px; background: #eaf7ff; color: #07396e; font-size: 16px; letter-spacing: .5px; overflow-wrap: anywhere; }
#booking-confirmed-details { display: grid; grid-template-columns: 80px minmax(0,1fr); gap: 7px 12px; font-size: 14px; line-height: 1.5; margin: 16px 0; }
#booking-confirmed-details dt { color: #526c79; }
#booking-confirmed-details dd { margin: 0; overflow-wrap: anywhere; }
#booking-calendar-link { width: 100%; margin-top: 12px; }
@media (max-width: 1023px) and (min-width: 680px) {
 .rental-bundle { grid-template-columns: 120px minmax(0,1fr); }
}
@media (max-width: 679px) {
 .site-page.cabanas .cabana-main { padding-top: 16px; }
 .cabanas .rental-intro h1 { font-size: 26px; }
 .rental-choice-photo, .rental-water-card .rental-choice-photo { flex-basis: 135px; height: 135px; }
 .rental-bundle { grid-template-columns: 88px minmax(0,1fr); }
 .rental-shade-buttons { padding-top: 4px; }
 .rental-dialog { padding: 16px; }
}
