.booking-banner{position:relative;margin:0 0 32px;isolation:isolate;background:#f2f5f4;border-radius:4px;overflow:hidden;color:#173f4b}
.booking-banner-viewport{display:grid;overflow:hidden}
.booking-banner-slide{grid-area:1 / 1;min-width:0;position:relative;aspect-ratio:4/1;overflow:hidden}
.booking-banner [hidden]{display:none!important}
.booking-banner-slide img{display:block;width:100%;height:100%;object-fit:contain}
.booking-banner-editorial img{position:absolute;right:0;width:48%;object-fit:cover;object-position:center}
.booking-banner-copy{position:relative;width:60%;min-height:100%;padding:36px 48px 48px;background:linear-gradient(90deg,#edf3f1 82%,transparent)}
.booking-banner-eyebrow{font-size:11px;letter-spacing:2px;font-weight:500}
.booking-banner-copy h2{margin:16px 0 12px;font-size:clamp(22px,2.6vw,34px);line-height:1.35;font-weight:500}
.booking-banner-copy p{margin:0;font-size:15px;color:#4c666a}
.booking-banner-arrow{position:absolute;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:36px;height:48px;border:0;border-radius:3px;background:rgba(255,255,255,.88);color:#17485a;font-size:32px;cursor:pointer;box-shadow:0 1px 6px #0001}
.booking-banner-prev{left:8px}.booking-banner-next{right:8px}
.booking-banner-pagination{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:2px;padding:0 8px;border-radius:24px;background:rgba(255,255,255,.94);box-shadow:0 1px 6px #0001}
.booking-banner-dot{display:grid;place-items:center;min-width:32px;min-height:32px;border:0;background:transparent;cursor:pointer}
.booking-banner-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#97a9ad}
.booking-banner-dot[aria-current=true]:before{width:20px;border-radius:5px;background:#006695}
.booking-banner button:hover{background-color:#e4eef1}.booking-banner:focus-visible,.booking-banner button:focus-visible{outline:3px solid #006695;outline-offset:-3px}
.booking-banner-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:639px){.booking-banner{margin-bottom:24px}.booking-banner-slide{aspect-ratio:2/1}.booking-banner-editorial img{width:45%}.booking-banner-copy{width:68%;padding:20px 28px 48px 32px;background:linear-gradient(90deg,#edf3f1 80%,transparent)}.booking-banner-eyebrow{font-size:9px;letter-spacing:.5px}.booking-banner-copy h2{font-size:20px;margin:10px 0;max-width:160px}.booking-banner-copy p{font-size:12px;max-width:150px}.booking-banner-arrow{width:28px;height:40px}.booking-banner-prev{left:0}.booking-banner-next{right:0}.booking-banner-pagination{bottom:8px}}
