*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;margin:0}body{font:14px/1.4 system-ui;color:#302b34;background:#f7f6f9;display:flex;flex-direction:column}button,input{font:inherit}button{cursor:pointer}header{height:63px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:white;border-bottom:1px solid #e9e4ee}header strong{color:#6a0e9c;font-size:26px}header span{font-size:12px;font-weight:500;margin-left:12px;color:#777}header small{font-size:10px;color:#888}main{flex:1;min-height:0;display:grid;grid-template-columns:47% 53%}.plane{display:grid;grid-template-rows:1.3fr .9fr 1fr;gap:10px;padding:12px;min-height:0;overflow:auto}.visual{border:1px solid #e2d9e9;background:white;border-radius:13px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.panelTitle{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;gap:8px;font-size:12px;flex:none}.panelTitle>span{font-size:11px;color:#777;text-align:right}.panelTitle button{border:1px solid #dfd2e6;border-radius:15px;background:white;color:#6a0e9c;padding:4px 9px;font-size:11px}.panelTitle button[aria-pressed=true]{background:#6a0e9c;color:white}.scene{position:relative;flex:1;min-height:120px;background:#f2f0ed}.scene>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.chips{display:flex;gap:5px;flex-wrap:wrap;padding:7px 10px;font-size:10px}.chips span{background:#f4eff7;border-radius:12px;padding:3px 8px}.visual iframe{width:100%;height:100%;flex:1;min-height:150px;border:0}#grid{min-height:255px}#visualItems{position:absolute;bottom:7px;right:7px;display:flex;gap:4px}.mini{border:1px solid #dfd2e6;background:#ffffffed;border-radius:9px;padding:4px;display:flex;align-items:center;font-size:11px}.mini img{width:32px;height:30px;object-fit:contain}.selection{border-left:1px solid #e4deea;background:white;min-height:0;display:flex;flex-direction:column}.cartbar{padding:12px 18px;background:#fbf8fd;border-bottom:1px solid #e4d7ec;position:relative;z-index:10;flex:none}.bookingFields{display:grid;grid-template-columns:63px 63px 145px 1fr;gap:8px;align-items:center}.bookingFields label{font-size:10px;color:#777}.bookingFields input{width:100%;display:block;border:1px solid #ddcfe6;background:white;border-radius:7px;padding:7px 5px;font-size:12px;color:#302b34;margin-top:3px}.weather{font-size:11px;padding-left:5px}.weather small{display:block;font-size:9px;color:#888;margin-top:3px}#cartToggle{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;background:#6a0e9c;color:white;border-radius:10px;padding:12px;font-size:12px}#cartDetail{position:absolute;left:18px;right:18px;top:100%;background:white;border:1px solid #ded0e7;border-radius:0 0 12px 12px;box-shadow:0 9px 20px #0002;max-height:350px;overflow:auto;padding:10px 16px}#cartLines{list-style:none;padding:0;margin:0}#cartLines li{display:flex;align-items:center;gap:9px;border-bottom:1px solid #eee;padding:8px 0;font-size:12px}#cartLines img{height:38px;width:45px;object-fit:contain}#cartFoot{font-size:11px;color:#777}.browse{padding:20px 18px;overflow:auto;flex:1;min-height:0}h1{font-size:28px;letter-spacing:-.8px;line-height:1.1;margin:0}p{margin:8px 0 16px}.browseTitle p{font-size:12px;color:#777}nav{display:flex;gap:8px;overflow:auto;padding:4px 0 16px}nav button{background:white;border:1px solid #ddd;border-radius:20px;padding:8px 13px;white-space:nowrap;font-size:12px}nav button[aria-pressed=true]{background:#302b34;color:white;border-color:#302b34}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{border:2px solid transparent;border-radius:13px;overflow:hidden;background:#fff;min-width:0;box-shadow:0 1px 6px #0001}.card.selected{border-color:#6a0e9c;background:#faf5fd}.card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:#f7f6f4}.card .copy{padding:9px 10px}.card h2{font-size:14px;margin:0 0 5px}.card p{font-size:10px;color:#777;margin:5px 0}.card .bottom{display:flex;justify-content:space-between;align-items:center;gap:8px}.card strong{font-size:12px}.card button{border:1px solid #d7c4e3;background:white;color:#6a0e9c;padding:7px 10px;border-radius:8px;font-size:12px}.card.selected button{background:#6a0e9c;color:white}.counter{display:flex;gap:8px;align-items:center;font-size:12px}.card .counter button{padding:3px 8px}.note{font-size:11px;color:#888}.status{padding:12px 18px;border-top:1px solid #eee;display:flex;align-items:center;gap:12px;font-size:11px}.status span{flex:1}.status button{background:#6a0e9c;color:white;border:0;border-radius:9px;padding:11px 15px;font-weight:650}.status button:disabled{opacity:.4;cursor:default}footer{flex:none;background:#2c2632;color:#e8dfee;font-size:10px;text-align:center;padding:7px}button:focus-visible,input:focus-visible{outline:3px solid #b178ca;outline-offset:2px}@media(max-width:950px){.bookingFields{grid-template-columns:55px 55px 130px}.weather{grid-column:1/-1}.cards{gap:10px}.card .bottom{flex-wrap:wrap}header span{display:none}}@media(max-width:700px){html,body{height:auto;min-height:100%}main{display:flex;flex-direction:column}.plane{order:2;grid-template-rows:340px 250px 310px;overflow:visible}.selection{order:1;min-height:650px}.browse{max-height:650px}.cartbar{position:sticky;top:0}.bookingFields{grid-template-columns:55px 55px 135px 1fr}.weather{grid-column:auto}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}header{padding:10px 15px}.status{position:sticky;bottom:0;background:white}.scene{min-height:200px}}@media(max-width:400px){.bookingFields{grid-template-columns:50px 50px 1fr}.weather{grid-column:1/-1}}

.brandHeader{height:82px;gap:18px}.leadBrand img{display:block;width:160px;height:60px;object-fit:contain}.brandPrograms{display:flex;flex-direction:column;gap:4px;margin-right:auto}.brandPrograms strong{font-size:13px;color:#29252f}.brandPrograms span{font-size:11px;margin:0;display:block;color:#777}.supportBrands{display:flex;align-items:center;gap:18px}.supportBrands img{width:95px;height:40px;object-fit:contain}.supportBrands img:last-child{width:125px}.libraryLink{font-size:10px;color:#6a0e9c;text-decoration:none}.card.product img{object-fit:contain;padding:10px;background:white}@media(max-width:950px){.brandHeader{height:90px;gap:12px;padding:8px 14px}.leadBrand img{width:130px}.supportBrands img{width:65px}.supportBrands img:last-child{width:85px}.libraryLink{display:none}.brandPrograms strong{font-size:11px}.brandPrograms span{display:block;font-size:10px}}@media(max-width:600px){.brandHeader{height:auto;flex-wrap:wrap}.leadBrand img{width:125px;height:45px}.brandPrograms{margin-left:auto;margin-right:0}.supportBrands{width:100%;justify-content:center;gap:25px}.supportBrands img{height:25px;width:75px}.supportBrands img:last-child{width:100px}}

#grid{min-height:285px}.panelTitle>div{display:flex;gap:4px;flex-wrap:nowrap}.panelTitle>div button{white-space:nowrap}@media(max-width:700px){.plane{grid-template-rows:340px 250px 350px}.panelTitle{flex-wrap:wrap}.panelTitle>div{margin-left:auto}}

#cartBuckets{display:flex;gap:6px;padding:8px 0 0;overflow:visible}#cartBuckets button{flex:1;border:1px solid #dccde5;background:white;color:#6a0e9c;border-radius:8px;padding:7px 5px;font-size:11px;white-space:nowrap}#cartBuckets b{background:#f1e8f7;border-radius:8px;padding:1px 5px}#cartDetail{max-height:65vh}.cartGroup{border-bottom:1px solid #eee;padding:8px 0}.cartGroup h3{font-size:13px;color:#6a0e9c;margin:3px 0}.cartGroup p{font-size:11px;color:#777;margin:5px 0}.cartGroup ul{list-style:none;padding:0}.splitPlan{padding:8px 0}.splitPlan label{font-size:12px}.splitPlan input{width:50px;border:1px solid #ddd;border-radius:6px;padding:5px;font:inherit}.splitPlan small{font-size:10px;color:#777}#splitEstimate{font-size:12px}.shareActions{display:flex;gap:7px;margin-top:10px}.shareActions button{border:1px solid #d5bfdf;border-radius:7px;background:white;color:#6a0e9c;font-size:11px;padding:8px;flex:1}#shareStatus{font-size:11px;color:#65546d}.cartGroup li{margin:0}.cartGroup li span{flex:1}
/* Guest counts keep the date readable in the narrow POS column. */
.bookingFields{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end}.bookingFields input{box-sizing:border-box}.bookingFields label:has(#date){grid-column:span 2}.bookingFields .weather{grid-column:span 2}@media(max-width:480px){.bookingFields{grid-template-columns:repeat(2,minmax(0,1fr))}.bookingFields label:has(#date),.bookingFields .weather{grid-column:1/-1}}

/* Give embedded views their own space; 100% height plus the title clipped controls. */
.plane{grid-template-rows:320px 290px 350px}.visual iframe{height:0;min-height:0;flex:1 1 0}#grid{min-height:0}#sphere{min-height:0}@media(max-width:700px){.plane{grid-template-rows:300px 280px 350px}.cartbar{position:relative}.status{position:sticky;bottom:0;background:white;z-index:12}}
/* Three deliberate steps share one cart and the existing checkout. */
body{height:auto;min-height:100dvh}main{flex:none;min-height:600px;max-width:1320px;width:100%;margin:auto;grid-template-columns:minmax(300px,40%) minmax(0,60%)}.brandHeader{height:auto;min-height:92px}.brandPrograms strong{font-size:18px}.brandPrograms span{max-width:360px}.stageNav{max-width:1280px;width:calc(100% - 32px);margin:16px auto 8px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));padding:0!important}.stageNav button{white-space:normal;min-height:54px;background:white;color:#6a0e9c;font-weight:700}.bookingRollup{max-width:1280px;width:calc(100% - 32px);margin:0 auto 12px;border-radius:12px}.plane{overflow:visible;grid-template-rows:300px 300px;align-content:start}.selection{border:0;border-radius:16px;overflow:visible}.browse{overflow:visible}.status{position:sticky;bottom:0;background:white;z-index:15;border-top:1px solid #eee}.status button{min-height:48px}.timeLocationFields{padding:22px}.timeLocationFields h1{font-size:26px;margin-bottom:12px}.timeLocationFields p{color:#685a6d}.arrivalFields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.arrivalFields input{display:block;padding:12px;width:100%;border:1px solid #d8c5e3;border-radius:9px}.arrivalFields p{grid-column:1/-1}.departmentNav{display:flex;flex-wrap:wrap}.departmentNav button{white-space:normal;flex:1}.departmentNav button[aria-pressed=true]{background:#6a0e9c;color:white}body[data-booking-step=location] .plane{grid-template-rows:300px 440px}body[data-booking-step=food] main{display:block;max-width:1100px}body[data-booking-step=food] .selection{width:100%}body[data-booking-step=food] .cards{grid-template-columns:repeat(3,minmax(0,1fr))}#cartDetail{position:relative;left:auto;right:auto;top:auto;max-height:none;box-shadow:none;border-radius:12px;margin-top:12px}.finalCheckout{padding:16px;background:#f7f0fb;border-radius:12px}.finalCheckout button{padding:14px;background:#6a0e9c;color:white;border:0;border-radius:10px}.browseTitle h1{font-size:30px}.cards{gap:14px}.card h2{font-size:17px}.card p{font-size:12px}.card button{min-height:44px}.libraryLink{display:none}.brandHeader .leadBrand{pointer-events:none}#cartBuckets{display:none}footer{margin-top:20px} @media(max-width:700px){main{display:flex;flex-direction:column;min-height:0}.selection{order:0}.plane{order:1;grid-template-rows:260px 280px;padding:12px}.stageNav{gap:5px}.stageNav button{padding:8px;font-size:12px}.brandPrograms strong{font-size:15px}.brandPrograms span{font-size:11px}.bookingRollup{font-size:12px;padding:12px}.browse{padding:18px 12px}.browseTitle h1{font-size:27px}body[data-booking-step=food] .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card .bottom{flex-wrap:wrap}.card .copy{padding:10px}.status{padding:12px;flex-wrap:wrap}.status span{font-size:12px}.status button{width:100%}.timeLocationFields{padding:16px}body[data-booking-step=location] .plane{grid-template-rows:270px 440px}.brandHeader .supportBrands{gap:16px}.bookingFields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.rentalGuests{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.rentalGuests label{font-size:12px;color:#67586e}.rentalGuests input{display:block;width:100%;padding:10px;border:1px solid #dccde5;border-radius:9px;margin-top:5px}.weeklyTheme{display:block!important;margin-top:4px}@media(max-width:480px){.rentalGuests{grid-template-columns:repeat(2,minmax(0,1fr))}}
.rentalSimple img{object-fit:contain;padding:14px;background:white}.foodVendors{flex-wrap:wrap}.foodVendors button{flex:1;min-height:48px;font-weight:700}.foodVendors button[aria-pressed=true]{background:#6a0e9c;color:white}
.departmentNav{display:block}.departmentNav details{margin:12px 0;border:1px solid #dfd1e7;border-radius:13px;background:white;overflow:hidden}.departmentNav summary{cursor:pointer;padding:18px;font-size:17px;font-weight:700;color:#6a0e9c;background:#faf6fc}.departmentNav details[open] summary{border-bottom:1px solid #dfd1e7}.departmentContent{padding:14px}.departmentContent .cards{margin-top:14px}
@media(max-width:600px){.brandHeader{display:grid;grid-template-columns:90px 1fr;gap:8px}.brandHeader .leadBrand img{width:90px;height:46px}.brandPrograms{margin:0}.brandPrograms strong{font-size:14px}.brandPrograms span{font-size:10px}.brandPrograms .weeklyTheme{font-size:10px}.brandHeader .supportBrands{grid-column:1/-1}.brandHeader .supportBrands img{height:22px}.stageNav{margin-top:10px!important}.bookingRollup{font-size:11px}}

/* Release the old POS shelf height so all rental cards remain clickable. */
.browse{max-height:none;flex:none}.selection{min-height:0}

/* A single reading path avoids a tall catalog beside an empty preview column. */
main{display:flex;flex-direction:column;gap:16px;max-width:1200px;padding:0 20px;min-height:0}.selection{order:0;flex:none;width:100%;align-self:stretch}.plane{order:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:300px!important;padding:0;gap:16px}.status{order:2;flex:none;border:1px solid #e4d7ec;border-radius:12px;box-shadow:0 -3px 14px #30253508;margin-bottom:12px}.browse{padding:24px}.cards{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.card{border:1px solid #e5dce9;box-shadow:none;display:flex;flex-direction:column}.card.selected{border:2px solid #6a0e9c}.card img{height:170px;aspect-ratio:auto}.card .copy{display:flex;flex-direction:column;flex:1;padding:14px}.card h2{font-size:17px;line-height:1.3}.card .bottom{margin-top:auto;padding-top:12px;order:2;flex-wrap:wrap}.card .copy>p{font-size:12px;line-height:1.5}.rentalGuests{max-width:680px;margin:18px 0 24px}.moreSetups{margin-top:20px;border-top:1px solid #e6dce9;padding-top:16px}.moreSetups>summary{cursor:pointer;font-weight:650;color:#6a0e9c;padding:10px 0}.moreSetups .cards{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.moreSetups>p{font-size:13px;color:#74647c}.timeLocationFields{padding:24px}.timeLocationFields .bookingFields{grid-template-columns:1fr 1fr;gap:18px;align-items:center}.timeLocationFields .bookingFields label:has(#date),.timeLocationFields .bookingFields .weather{grid-column:auto}.timeLocationFields input{min-height:46px}.timeLocationFields .weather{font-size:14px}.timeLocationFields .weather small{font-size:11px}.arrivalFields{max-width:700px}.arrivalFields>p{font-size:12px;margin:0}.staySummary{font-weight:650;color:#6a0e9c!important}.brandHeader{padding:14px max(24px,calc((100vw - 1200px)/2));gap:20px}.leadBrand img{width:135px}.brandPrograms strong{font-size:18px}.stageNav,.bookingRollup{max-width:1160px}.stageNav{margin:18px auto 10px!important}.stageNav button{min-height:48px}.bookingRollup{padding:12px 16px!important}.bookingRollup button{white-space:nowrap}.note{margin-bottom:0}.browseTitle p{font-size:14px}.bookingFields label{font-size:12px}body[data-booking-step=outing] .cartbar{padding:0;border:0;background:transparent}body[data-booking-step=outing] #cartToggle,body[data-booking-step=location] #cartToggle{display:none}body[data-booking-step=location] .cartbar{padding:0;border:0}body[data-booking-step=food] main{display:flex}body[data-booking-step=food] .card img{height:160px}body[data-booking-step=food] .card .copy>p{font-size:12px}.departmentNav summary{font-size:16px;padding:16px}.departmentContent{padding:16px}.departmentNav{margin-top:18px}.scene{min-height:0}.summaryPanel .scene>img{object-fit:contain;background:#f7f5f8}.plane>.visual{height:300px}.plane #grid{min-height:0}.selection>.browse{border-radius:14px}.status span{max-width:70%;font-size:13px;color:#65566c}.status button{font-size:14px;min-width:235px}.businessPanel{margin:0 0 16px}.finalCheckout p{font-size:13px;line-height:1.6}
@media(max-width:700px){main{padding:0 12px;gap:12px}.browse,.timeLocationFields{padding:16px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card img{height:135px}.card .copy{padding:10px}.card h2{font-size:16px}.card .copy>p{font-size:11px}.card .bottom{gap:8px}.card .bottom button{width:100%}.rentalGuests{gap:8px;margin:14px 0 18px}.rentalGuests input{padding:8px}.moreSetups .cards{grid-template-columns:1fr 1fr}.plane{grid-template-columns:1fr;grid-template-rows:260px 320px!important}.plane>.visual{height:auto;min-height:0}.plane:has(.summaryPanel:not([hidden])){grid-template-rows:220px 260px!important}.status{padding:12px;gap:8px;position:sticky;bottom:0}.status span{max-width:none;width:100%;font-size:12px}.status button{width:100%;min-width:0}.timeLocationFields .bookingFields{grid-template-columns:1fr}.bookingRollup{width:calc(100% - 24px);gap:8px!important}.bookingRollup span{font-size:11px;line-height:1.5}.bookingRollup button{font-size:11px;padding:8px!important}.stageNav{width:calc(100% - 24px)}.brandHeader{padding:10px 14px;grid-template-columns:85px 1fr}.brandPrograms strong{font-size:14px}.leadBrand img{width:85px}.supportBrands{margin-top:2px}.timeLocationFields .weather{background:#f6effa;border-radius:10px;padding:10px}.timeLocationFields h1{font-size:24px}.browseTitle h1{font-size:26px}.moreSetups{margin-top:12px}.departmentContent{padding:10px}.departmentNav summary{font-size:14px}.finalCheckout{padding:12px}.arrivalFields{gap:10px}}

main,body[data-booking-step=food] main{margin:0 auto;max-width:1200px}.cartbar{padding:0;border:0;background:transparent}#cartToggle{display:none!important}.reviewingCart #cartDetail{margin:0;padding:22px;border:1px solid #e4d7ec;border-radius:14px}.reviewingCart .cartbar{padding:0}.reviewingCart .status{box-shadow:none}.reviewingCart #cartFoot{font-size:12px;line-height:1.5}body[data-booking-step=location] .plane{grid-template-rows:360px!important}body[data-booking-step=location] .plane>.visual{height:360px}.foodVendors{padding-bottom:4px}.departmentContent:has(#cards:empty) #cards{display:none}@media(max-width:700px){body[data-booking-step=location] .plane{grid-template-rows:240px 380px!important}body[data-booking-step=location] .plane>.visual{height:auto}.reviewingCart #cartDetail{padding:14px}}

#cartDetail>h1{font-size:26px;margin:0 0 18px}.cartGroup h3{font-size:15px}.cartGroup p{font-size:12px}.cartGroup li{font-size:13px}.splitPlan fieldset{border:1px solid #daccdf;border-radius:10px;padding:12px}.splitPlan label{line-height:1.6}#cartDetail .finalCheckout h3{font-size:19px}#cartDetail .finalCheckout button{width:100%;min-height:48px}
.cartGroup li button{margin-left:auto;border:1px solid #d7c6e2;border-radius:8px;background:white;color:#6a0e9c;padding:8px;font-size:12px;min-height:36px}.cartGroup li b{white-space:nowrap}.finalCheckout h2{font-size:23px}.finalCheckout>section{border:1px solid #dbcde3;border-radius:12px;background:white;padding:16px;margin:14px 0}.finalCheckout li{margin:6px 0;line-height:1.5}.quoteActions{display:flex;gap:8px;flex-wrap:wrap}.quoteActions button{flex:1}.finalCheckout #continueGrid4:disabled{background:#e9e2ed;color:#66566f;cursor:default}.comfortDisclosure,.sharingDisclosure{border-top:1px solid #e6dce9;margin:14px 0;padding-top:10px}.comfortDisclosure>summary,.sharingDisclosure>summary{padding:10px 0;cursor:pointer;font-weight:650;color:#6a0e9c}.comfortDisclosure .guestAccess{border:0;margin:0;padding-top:8px}#pricedPending{font-weight:650;font-size:16px}#checkoutBridgeStatus{color:#67536f}.reviewingCart .finalCheckout{margin-top:20px}@media(max-width:600px){.cartGroup li{flex-wrap:wrap}.cartGroup li>span{flex-basis:65%}.cartGroup li button{margin-left:0}.quoteActions{flex-direction:column}.finalCheckout>section{padding:12px}}

body[data-booking-step=outing] #cards{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){body[data-booking-step=outing] #cards{grid-template-columns:1fr}}

.partyGuide{padding:16px;border:1px solid #d8c5e3;border-radius:14px;margin:18px 0;background:#faf6fc}.partyGuide h2{font-size:19px}.partyChoices{display:flex;flex-wrap:wrap;gap:8px}.partyChoices button{min-height:44px;padding:10px 16px;border:1px solid #d8c5e3;border-radius:12px;background:white;color:#6a0e9c}.partyChoices button[aria-pressed=true]{background:#6a0e9c;color:white}.partyGuide small{display:block;line-height:1.5}.card.recommended{outline:3px solid #6a0e9c}

/* Compact booking identity and full product framing. */
.brandHeader{height:auto;display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px max(16px,calc((100vw - 1200px)/2))}.brandHeader .leadBrand img{width:110px;height:62px;object-fit:contain}.brandPrograms{display:flex;flex-direction:column;gap:3px;min-width:0}.brandPrograms strong{font-size:17px;line-height:1.25}.brandPrograms span{margin:0;font-size:11px}.brandPrograms small{font-size:10px}.supportBrands{display:flex;align-items:center;gap:14px}.supportBrands img{width:80px;height:48px;object-fit:contain}.rentalGuests{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:580px}.rentalGuests label{min-width:0;font-size:12px}.rentalGuests input{width:100%;min-width:0;min-height:44px}.card img{object-fit:contain;background:#faf9fb}body[data-booking-step=outing] .card img{height:auto;aspect-ratio:4/3;object-fit:contain}.photoUnavailable{display:grid;place-items:center;aspect-ratio:4/3;padding:20px;background:#f5f0f8;color:#65566c}.foodDialog{width:min(650px,calc(100vw - 24px));max-height:90dvh;border:1px solid #d8c5e3;border-radius:18px;padding:20px;color:#302b34}.foodDialog::backdrop{background:#20132699}.foodDialog>img{width:100%;height:220px;object-fit:contain}.foodDialog fieldset{border:1px solid #dfd1e7;border-radius:10px;margin:12px 0}.foodDialog label{display:flex;align-items:center;gap:10px;padding:10px;min-height:44px}.foodDialog input{width:20px;height:20px;flex:none}.foodDialog button{padding:12px;margin:6px;border:1px solid #6a0e9c;border-radius:10px}.foodDialog button:last-child{background:#6a0e9c;color:white}.foodDialog button:disabled{opacity:.5}
@media(max-width:700px){.brandHeader{grid-template-columns:76px minmax(0,1fr);gap:10px}.brandHeader .leadBrand img{width:76px;height:54px}.brandPrograms strong{font-size:14px}.brandHeader .supportBrands{grid-column:1/-1;justify-content:flex-end;margin:0;gap:12px}.supportBrands img{height:30px;width:68px}.rentalGuests{grid-template-columns:repeat(3,minmax(0,1fr))!important}.rentalGuests label{font-size:11px}.brandPrograms small{display:none}}

.imageZoom{width:min(1100px,95vw);border:0;border-radius:14px;padding:12px}.imageZoom img{width:100%;max-height:80dvh;object-fit:contain}.imageZoom button{padding:12px}.imageZoom::backdrop{background:#000a}.card img[role=button]{cursor:zoom-in}

@media(max-width:700px){.partyGuide{padding:12px;margin:12px 0}.partyGuide h2{font-size:17px;margin:0 0 10px}.partyChoices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.partyChoices button{padding:6px 2px;min-height:44px;font-size:11px;line-height:1.2}.partyGuide>p{font-size:12px;line-height:1.4;margin:10px 0}.partyGuide summary{font-size:11px;cursor:pointer}.partyGuide small{font-size:11px;margin-top:8px}.brandHeader .weeklyTheme{display:none}.brandHeader{padding:8px 14px}.rentalGuests{margin:12px 0}.browseTitle h1{font-size:24px}}
