/* Swipe, trackpad, keyboard and arrows all use the same native scroll rail. */
.guest-quotes{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 24px)/2);gap:24px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 0 10px}
.guest-quotes::-webkit-scrollbar{display:none}
.guest-quote{scroll-snap-align:start;padding:30px 32px 26px 54px;border:1px solid #d8cfc2;background:#f8f6f29c;min-height:270px}
.guest-quote-symbol{left:21px;top:29px}
.guest-quote blockquote{font-size:clamp(21px,2vw,27px);line-height:1.5;max-width:none}
.reviews-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:20px;min-height:44px}
.review-arrow{display:grid;place-items:center;width:44px;height:44px;border:1px solid #bbae9c;border-radius:50%;background:transparent;color:var(--ink);font-size:19px;transition:background .2s}
.review-arrow:hover:not(:disabled){background:#dfd4c4}
.review-arrow:disabled{opacity:.3}
.review-position{font:500 10px/1.5 var(--sans);letter-spacing:.12em;min-width:92px;text-align:center;color:var(--muted);font-variant-numeric:tabular-nums}
.reviews-date{margin-top:22px;padding-top:17px}
/* Reserve the notice's measured height: it never covers dates or a fixed CTA. */
.cookie-banner{top:auto;bottom:0;left:0;right:0;width:100%;max-width:none;align-items:center;justify-content:space-between;gap:20px;padding:11px max(24px,calc((100vw - 1220px)/2)) calc(11px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);box-shadow:0 -4px 24px #16212c0c}
.cookie-banner>div{min-width:0;max-width:1000px}
.cookie-banner h2{font-size:11px;margin:0 0 2px}
.cookie-banner p{font-size:11px;line-height:1.5;margin:0}
.cookie-banner a{white-space:nowrap}
.cookie-banner .btn{flex-shrink:0}
body{padding-bottom:var(--privacy-notice-space,0px)}
.home-intro .home-hero{padding-bottom:calc(22px + var(--privacy-notice-space,0px))}
.mobile-reserve{bottom:var(--privacy-notice-space,0px)}
.home-intro-pending .cookie-banner{visibility:hidden;opacity:0;pointer-events:none}
@media(max-width:800px){
 .cookie-banner{bottom:0;left:0;right:0;width:100%;padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:12px}
 .cookie-banner h2{font-size:10px}.cookie-banner p,.cookie-banner a{font-size:10px;line-height:1.45}
 .cookie-banner .btn{padding:10px 12px;font-size:10px}
 .home-intro .home-hero{padding-bottom:calc(18px + var(--privacy-notice-space,0px))}
 .mobile-reserve.visible + .cookie-banner{bottom:0}
}
@media(max-width:400px){
 .home-hero-utilities .hero-ratings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px;width:100%;max-width:310px;margin-inline:auto}
 .home-hero-utilities .hero-ratings .rating-link{flex-direction:row;justify-content:center;gap:7px;min-height:36px}
 .home-hero-utilities .rating-body{column-gap:4px}
 .home-hero-utilities .rating-platform{font-size:9px}
}
@media(max-width:400px) and (max-height:640px){.home-intro .home-hero{height:auto;min-height:100svh;gap:18px}.home-intro .home-hero-copy{padding-top:15px}}
@media(max-width:700px){
 .guest-quotes{grid-auto-columns:88%;gap:16px;scroll-padding-inline:0}
 .guest-quote{padding:25px 24px 22px 43px;min-height:280px}.guest-quote-symbol{left:14px;top:24px}.guest-quote blockquote{font-size:23px}
}
@media(prefers-reduced-motion:reduce){.review-arrow{transition:none}}
