/* Cookie preferences */
.cookie-banner[hidden],.cookie-banner [hidden],.booking-frame[hidden],.booking-consent[hidden]{display:none!important}
.cookie-banner{position:fixed;z-index:1000;left:24px;right:24px;bottom:24px;max-width:1050px;margin:auto;background:#f9faf5;color:#102a36;border:1px solid #bcc9be;border-top:4px solid #e75d31;box-shadow:0 12px 60px #09263038;padding:25px 30px;max-height:calc(100dvh - 40px);overflow:auto}
.cookie-eyebrow{font-size:9px;font-weight:700;letter-spacing:1.8px;color:#a63b1b}
.cookie-banner h2{font-size:24px;letter-spacing:-.6px;line-height:1.2;margin:8px 0 10px}
.cookie-banner p{font-size:13px;line-height:1.65;max-width:900px;margin:0 0 8px;color:#455d64}
.cookie-privacy{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.cookie-actions button,.booking-consent button{font:600 13px Arial,Helvetica,sans-serif;cursor:pointer;padding:12px 19px;border:1px solid #102a36;background:#fff;color:#102a36;border-radius:0}
.cookie-actions button:hover,.booking-consent button:hover{background:#e4eae0}
.cookie-actions [data-consent="accept"],.cookie-actions [data-consent="save"]{background:#102f3d;color:#fff;border-color:#102f3d}
.cookie-actions [data-consent="accept"]:hover,.cookie-actions [data-consent="save"]:hover{background:#214957}
.cookie-preferences{border-top:1px solid #d2dcd2;margin-top:18px;padding-top:8px}
.cookie-option{display:flex;align-items:flex-start;gap:12px;padding:11px 0;font-size:13px;cursor:pointer}
.cookie-option input{width:18px;height:18px;flex:none;accent-color:#133542;margin:2px 0 0}
.cookie-option small{display:block;font-size:12px;color:#52666a;margin-top:4px}
.cookie-footer{font:inherit;cursor:pointer;padding:0;border:0;background:none;color:inherit;text-align:left}
.cookie-footer:hover{text-decoration:underline}
.cookie-banner button:focus-visible,.cookie-banner input:focus-visible,.cookie-footer:focus-visible,.booking-consent button:focus-visible{outline:3px solid #df582e;outline-offset:4px}
.booking-consent{padding:65px 25px;text-align:center;border:1px solid #c6d1c7;background:#edf0e9;max-width:100%;margin:0 auto}
.booking-consent h2{font-size:30px;letter-spacing:-1px}
.booking-consent p{max-width:560px;margin:15px auto 22px;font-size:15px;color:#52666a}
@media(max-width:760px){.cookie-banner{left:12px;right:12px;bottom:12px;padding:20px;max-height:calc(100dvh - 24px)}.cookie-banner h2{font-size:22px}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions [data-consent="accept"],.cookie-actions [data-consent="save"]{grid-column:1/-1}.cookie-actions button{padding:13px 10px;font-size:12px}.footline>div{flex-wrap:wrap}.booking-consent{padding:45px 22px}.booking-consent h2{font-size:26px}}