:root{--muted:#4e6f83}
[hidden]{display:none!important}
html{scroll-padding-top:6rem}
body{overflow-x:clip}
main{min-height:60vh}
main a:not(.mb-button):not([class*="rounded-"]){text-underline-offset:.22em}
a,button,summary,input{touch-action:manipulation}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #437fa5;outline-offset:4px}
.mb-skip{position:fixed;top:-6rem;left:1rem;z-index:200;background:#fff;padding:1rem;border-radius:.8rem}
.mb-skip:focus{top:1rem}
.mb-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.8rem 1.25rem;min-height:46px;background:var(--ink);color:#fff!important;border:1px solid var(--ink);border-radius:1rem;font-size:.94rem;font-weight:600;line-height:1.4;text-decoration:none;cursor:pointer;transition:background .18s}
.mb-button:hover{background:#27485f}
.mb-button-secondary{background:#fff;color:var(--ink)!important}
.mb-button-secondary:hover{background:#edf6fc}
.mb-menu-button{min-width:44px;min-height:44px;border:1px solid var(--line);padding:.5rem .85rem;border-radius:1rem}
.mb-language{border:1px solid var(--line);padding:.3rem .5rem;border-radius:.5rem}
.mb-panel{border:1px solid var(--line);background:rgba(255,255,255,.82);border-radius:1.5rem;padding:1.5rem}
.mb-prose{font-size:.98rem;line-height:1.8}
.mb-prose>h2{margin:2rem 0 .7rem;font-size:1.3rem;font-weight:600;line-height:1.4}
.mb-prose>p{margin:.8rem 0}
.mb-prose h3{font-weight:600}
.mb-prose a:not(.mb-button){text-decoration:underline;text-underline-offset:3px}
.mb-panel h2{font-size:1.15rem;font-weight:600;margin:0 0 .8rem;line-height:1.4}
.mb-panel h2:not(:first-child){margin-top:1.5rem}
.mb-panel p+p{margin-top:.75rem}
.mb-panel .mb-button{margin-top:1rem}
.mb-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:1rem;margin:1rem 0}
.mb-table-wrap table{border-collapse:collapse;width:100%;font-size:.88rem;min-width:500px}
.mb-table-wrap td,.mb-table-wrap th{padding:.8rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.mb-table-wrap th{background:var(--soft)}
.mb-faq{display:grid;gap:.75rem;margin-top:1.25rem}
.mb-faq details{border:1px solid var(--line);border-radius:1rem;background:rgba(255,255,255,.85)}
.mb-faq summary{padding:1.1rem 3rem 1.1rem 1.2rem;font-size:.95rem;font-weight:600;position:relative}
.mb-faq summary:after{content:"+";position:absolute;right:1.2rem;font-size:1.25rem;font-weight:400}
.mb-faq details[open] summary:after{content:"−"}
.mb-answer{padding:0 1.2rem 1.1rem;font-size:.92rem;line-height:1.75;color:var(--muted)}
.mb-answer a{text-decoration:underline}
.mb-map-placeholder{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;background:var(--soft)}
.mb-map-placeholder iframe{width:100%;height:380px;border:0}
.mb-map-placeholder:has(iframe){padding:0}
.mb-cookie-banner{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);width:min(850px,calc(100% - 2rem));z-index:120;background:#fff;border:1px solid var(--line);border-radius:1.25rem;box-shadow:0 8px 50px #183b5a26;padding:1.25rem;display:flex;align-items:center;gap:1.5rem}
.mb-cookie-actions{display:flex;gap:.6rem;flex-shrink:0}
.mb-cookie-actions .mb-button{font-size:.85rem;padding:.6rem 1rem}
.mb-site-footer a:hover{text-decoration:underline}
@media(max-width:700px){
 .mb-cookie-banner{bottom:.65rem;align-items:stretch;flex-direction:column;gap:.8rem;padding:1rem}
 .mb-cookie-actions .mb-button{flex:1}
 .mb-prose{font-size:.93rem}
 .mb-panel{padding:1.1rem}
 .mb-site-footer{padding-bottom:5rem}
 .hero-title{overflow-wrap:break-word}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.nav-booking-cta{background:var(--ink)!important;color:#fff!important}
.mobile-sticky-booking{position:fixed;left:1rem;right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));z-index:48;display:none;align-items:center;justify-content:center;min-height:50px;border-radius:1rem;background:var(--ink);color:#fff;font-weight:600;box-shadow:0 12px 30px #345d7933;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .2s,transform .2s}
.mobile-sticky-booking.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
@media(max-width:1023px){.mobile-sticky-booking{display:inline-flex}.mobile-sticky-booking.is-visible{background:var(--ink)}}

