/* Scoped to the accommodation comparison; package and experience layouts stay unchanged. */
.accommodations-page{background:#f7f7f1}
.accommodations-page .page-heading{padding:58px 24px 48px;background:linear-gradient(150deg,#e9f6f3,#f7f7f1)}
.accommodations-page .page-heading h1{font-size:clamp(34px,4vw,54px);line-height:1.12;max-width:900px;margin:auto;text-wrap:balance}
.accommodations-page .listing-intro{max-width:720px;margin:20px auto 24px;line-height:1.75;color:#4a666a}
.accommodations-page .decision-strip{max-width:1200px;margin:0 auto;border-radius:14px;padding:24px 32px;gap:28px;background:#074653}
.accommodations-page .decision-strip div+div{border-left:1px solid #ffffff30;padding-left:28px}
.accommodations-page>.section{padding:42px 24px 64px}
.accommodations-page .booking-card-grid{width:100%;max-width:1200px;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.accommodations-page .package-card{min-width:0;overflow:hidden;border-radius:20px;background:#fff;border:1px solid #dce7e1;box-shadow:0 14px 40px #123d4710}
.accommodations-page .package-image{height:auto;aspect-ratio:16/10;overflow:hidden}
.accommodations-page .package-image img{display:block;width:100%;height:100%;object-fit:cover}
.accommodations-page .stay-badge{top:20px;left:20px;padding:9px 16px;background:#fffffff2;backdrop-filter:blur(6px)}
.accommodations-page .stay-photo-strip{padding:8px;gap:8px}
.accommodations-page .stay-photo-strip a{overflow:hidden;border-radius:8px;display:block}
.accommodations-page .stay-photo-strip img{height:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .2s ease}
.accommodations-page .stay-photo-strip a:hover img{transform:scale(1.04)}
.accommodations-page .package-copy{padding:26px 30px 30px;gap:0}
.accommodations-page .package-copy>h2{order:0;font-size:36px;line-height:1.15;margin:0 0 20px}
.accommodations-page .package-copy p{min-height:0;margin:0 0 14px;line-height:1.7}
.accommodations-page .booking-highlights{order:1;padding:22px;background:#eef6f3;border:1px solid #d6e8df;border-radius:12px;margin:0 0 24px}
.accommodations-page .accommodation-total{border-bottom:1px solid #d6e8df;padding-bottom:14px;color:#164f51}
.accommodations-page .accommodation-total strong{font-size:14px}
.accommodations-page .accommodation-total small{font-size:12px;color:#536e70}
.accommodations-page .booking-price strong{font-size:38px}
.accommodations-page .package-copy .price-basis{margin:10px 0 16px;font-size:12px}
.accommodations-page .package-copy .transfer-caption{font-size:12px;margin:14px 0 0}
.accommodations-page .stay-details{order:2;padding:0 2px 12px}
.accommodations-page .package-copy .stay-details h3{font-size:19px;line-height:1.3;margin:24px 0 10px;color:#174c50}
.accommodations-page .package-copy .stay-details p{font-size:15px;line-height:1.8;margin:0 0 16px;color:#52696b}
.accommodations-page .card-actions{order:3;margin-top:auto;padding-top:22px;border-top:1px solid #e2eae6;gap:14px}
.accommodations-page .card-actions .button{border-radius:9px;min-height:50px}
.accommodations-page .booking-reassurance{max-width:1200px;margin:0 auto 48px;border-radius:16px;padding:32px;gap:28px;background:#eaf2ed}
.accommodations-page .booking-reassurance h2{font-size:28px;margin:8px 0}
.accommodations-page .booking-reassurance h3{font-size:21px;margin:8px 0 12px}
@media(max-width:760px){
 .accommodations-page .booking-card-grid{grid-template-columns:1fr;gap:28px;max-width:580px}
 .accommodations-page .page-heading{padding:38px 20px}
 .accommodations-page .decision-strip{margin:0 20px;padding:22px;border-radius:12px;gap:16px}
 .accommodations-page .decision-strip div+div{border-left:0;border-top:1px solid #ffffff30;padding:16px 0 0}
 .accommodations-page>.section{padding:28px 18px 40px}
 .accommodations-page .package-copy{padding:22px}
 .accommodations-page .package-copy>h2{font-size:31px}
 .accommodations-page .booking-highlights{padding:18px}
 .accommodations-page .booking-reassurance{margin:0 18px 32px;padding:24px}
}
@media(prefers-reduced-motion:reduce){.accommodations-page .stay-photo-strip img{transition:none}}
