.stay-booking{margin:12px 0;padding:10px 0;border-top:1px solid #dde6e4;color:#34565b;font-size:13px;line-height:1.55}
.booking-handoff{margin:0 0 12px;padding:10px;background:#f2f6ed;border-radius:8px;font-size:12px;line-height:1.5}
.booking-handoff strong,.booking-handoff span{display:block}.booking-handoff span+span{margin-top:5px}
.booking-rate-label{font-size:12px;font-weight:600;margin:8px 0;color:#34565b}
.booking-checks{margin:10px 0 14px;padding:14px;background:#f5f3e9;border:1px solid #d6ddd4;border-radius:10px;color:#34565b;font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.booking-checks ul{margin:7px 0;padding-left:20px}.booking-checks li+li{margin-top:8px}.booking-checks a{color:#245c50;text-decoration:underline;text-underline-offset:3px}.booking-checks .named-offer-links{margin:10px 0 6px}.booking-checks a:focus-visible{outline:2px solid #245c50;outline-offset:3px}
.stay-booking .stay-booking-links{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap;margin:0}
.stay-booking-links>span{font-size:12px;color:#526c70}
.stay-booking .stay-booking-links>a{color:#245c50;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;white-space:nowrap;padding:5px 0;background:none;border:0;border-radius:0}
.stay-booking a:hover{color:#0f3448;text-decoration-thickness:2px}
.stay-booking a:focus-visible{outline:2px solid #245c50;outline-offset:4px;border-radius:2px}
.stay-booking .stay-booking-note{font-size:11px;line-height:1.5;color:#526c70;margin:3px 0 0}
.stay-booking-note a{color:inherit;text-decoration:underline}
.stay-booking.is-compact{font-size:12px;margin:10px 0 0;padding:8px 0 0}
.stay-booking.is-compact .stay-booking-links{gap:4px 12px}
.planner-stay-offer .stay-booking{margin:0}
.planner-stay-offer>p{margin:0 0 4px;font-size:12px;color:#526c70}
.recommended-body>.planner-stay-offer{margin:0 0 14px;padding:10px 14px;background:#f5f8f5;border:1px solid #dce6df;border-radius:10px}
.planner-saved-stays article .stay-booking{grid-column:1/-1;width:100%}
.stay-booking .stay-booking-links>.booking-primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;width:100%;padding:11px 14px;border:1px solid #123b36;border-radius:9px;background:#123b36;color:#fff;font-size:14px;line-height:1.4;text-decoration:none;white-space:normal;text-align:center}
.stay-booking .stay-booking-links>.booking-primary:hover{background:#245c50;color:#fff}
.booking-alternatives,.booking-check-details{margin-top:8px;font-size:13px}
.booking-alternatives>summary,.booking-check-details>summary{display:flex;align-items:center;min-height:44px;cursor:pointer;color:#245c50;text-decoration:underline;text-underline-offset:3px;list-style:revert}
.booking-alternatives .stay-booking-links{flex-direction:column;align-items:stretch}
.stay-booking .booking-alternatives a{min-height:44px;white-space:normal;display:inline-flex;align-items:center}
.booking-alternatives p{font-size:12px;margin:6px 0;color:#526c70}
.recommendation-card>.stay-booking{margin-top:auto}
.recommendation-card .recommendation-actions{margin-top:0;padding-top:5px}
.recommendation-planning{margin-top:18px;padding-top:14px;border-top:1px solid #d4dfd9;display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}
.recommendation-planning p{margin:0;color:#4d655d;font-size:13px;line-height:1.5;flex:1 1 250px}
.recommendation-planning .recommended-entry{min-height:44px;margin:0}
.recommendation-photo{margin:-1px 0 12px;position:relative}
.recommendation-photo img{width:100%;height:155px;object-fit:cover;border-radius:9px;display:block}
.recommendation-photo figcaption{font-size:11px;line-height:1.4;margin-top:5px;color:#4d655d}
.recommendation-photo a{color:inherit;text-underline-offset:2px}
.trip-date-group{min-width:0}
.trip-controls.recommendation-dates{grid-template-columns:1fr;margin-bottom:16px}
#explore>.trip-controls{grid-template-columns:1fr}
.recommendation-ai-help{margin-top:12px;color:#4d655d;font-size:13px}
.recommendation-ai-help>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.recommendation-ai-help p{margin-top:3px}
@media(max-width:700px){.trip-controls input,.trip-controls select,.comparison-search input{font-size:16px}.trip-control>summary{min-height:48px}.recommendation-grid{display:grid;grid-template-columns:1fr;overflow:visible}.recommendation-card{width:100%;flex:none}.recommendation-photo img{height:170px}.stay-booking .stay-booking-note{font-size:12px}}
@media(max-width:700px){.trip-controls #trip-form input,.trip-controls #trip-form select,.trip-controls .search input{font-size:16px}.trip-controls .search{height:48px}.trip-controls #trip-form .trip-calendar-nav button{height:44px}.trip-controls #trip-form .trip-calendar [data-date]{height:44px}.trip-calendar-nav{grid-template-columns:44px 1fr 44px}}
.editorial-actions>.editorial-booking{flex:1 1 240px;min-width:0}
@media(max-width:520px){.stay-booking-links>span{flex-basis:100%}.stay-booking .stay-booking-links>a{padding:7px 0}.recommended-body>.planner-stay-offer{padding:10px}.stay-booking .stay-booking-note{font-size:11px}}
