@font-face{font-family:Barlow;src:url('/assets/fonts/barlow-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Barlow;src:url('/assets/fonts/barlow-semibold.woff2') format('woff2');font-weight:600 800;font-display:swap}
:root{--night:#30364f;--amber:#e6a34a;--stone:#f1f2f2;--muted:#596273;--radius:12px;--small-radius:6px;--shadow:0 12px 35px #30364f15}body:has(dialog[open]){overflow:hidden}button:disabled{opacity:.4;cursor:default}input,select{font:inherit}button svg,a svg{pointer-events:none}.icon{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.button.amber{background:var(--amber);color:var(--night)}.button.outline{background:white;color:var(--night);border:1px solid var(--line)}
.booking-wrap{position:relative;z-index:2;margin-top:-39px}.booking{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;background:white;border-radius:var(--radius);box-shadow:var(--shadow);padding:10px;max-width:1030px;margin:auto}.booking-field{background:white;border:1px solid var(--line);border-radius:var(--small-radius);padding:11px 16px;text-align:left;display:flex;gap:12px;align-items:center;min-width:0;color:var(--night)}.booking-field span{display:block}.booking-label{font-size:13px;color:var(--muted);line-height:1.2}.booking-value{font-weight:600;margin-top:3px;white-space:nowrap}.booking .button{min-width:168px}dialog{color:var(--ink);border:0;padding:25px;border-radius:14px;max-width:calc(100% - 30px);max-height:90dvh;box-shadow:0 20px 90px #00002644}dialog::backdrop{background:#000026aa;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:start;gap:20px;justify-content:space-between;margin-bottom:20px}.dialog-head h2{font-size:28px}.close{background:var(--stone);border:0;border-radius:50%;width:36px;height:36px;display:grid;place-content:center;font-size:25px;line-height:1;color:var(--night);flex-shrink:0}.calendar-dialog{width:690px}.calendar-controls{display:flex;justify-content:space-between;margin-bottom:14px}.calendar-controls button{border:1px solid var(--line);background:white;border-radius:5px;width:38px;height:34px;font-size:22px}.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:28px}.calendar-month h3{font-size:19px;margin-bottom:12px;text-transform:capitalize}.weekdays,.month-days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.weekdays span{font-size:12px;color:var(--muted);padding:6px}.day{height:37px;border:0;background:white;color:var(--ink);border-radius:4px;font-size:14px;padding:0}.day:hover:not(:disabled){background:var(--stone)}.day.selected,.day.selected:hover{background:var(--night);color:white}.day.in-range{background:#fbead3;border-radius:0}.day.today{box-shadow:inset 0 -2px var(--amber)}.calendar-summary{margin:18px 0 0;font-size:15px;min-height:24px}.dialog-bottom{display:flex;justify-content:space-between;gap:14px;margin-top:19px}.link-button{background:none;border:0;text-decoration:underline;color:var(--ink);padding:8px 0}.guest-dialog{width:430px}.guest-stepper{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0}.guest-stepper button{width:42px;height:42px;background:white;border:1px solid var(--line);border-radius:50%;font-size:24px}.guest-stepper output{font-size:28px;font-weight:600}.guest-stepper span{margin-right:auto}.dialog-note{font-size:14px;color:var(--muted)}.gallery-dialog{width:1080px;background:var(--night);color:white;padding:20px}.gallery-dialog .dialog-head{margin-bottom:12px;align-items:center}.gallery-dialog .dialog-head h2{font-size:23px}.gallery-stage{position:relative;height:min(63dvh,630px);display:flex;align-items:center;justify-content:center}.gallery-stage img{max-height:100%;max-width:100%;object-fit:contain}.gallery-stage button{position:absolute;top:50%;transform:translateY(-50%);border:0;border-radius:50%;width:42px;height:42px;background:#fff;color:var(--night);font-size:25px}.gallery-prev{left:8px}.gallery-next{right:8px}.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:14px}.gallery-thumbs{display:flex;gap:7px;overflow-x:auto;max-width:75%;padding:4px}.gallery-thumbs button{border:2px solid transparent;background:none;padding:0;width:60px;flex-shrink:0;border-radius:4px;overflow:hidden}.gallery-thumbs button[aria-current=true]{border-color:var(--amber)}.gallery-thumbs img{width:60px;height:44px;object-fit:cover}.newsletter-dialog{padding:0;width:740px;overflow:hidden}.newsletter-layout{display:grid;grid-template-columns:.85fr 1fr}.newsletter-layout>img{height:100%;width:100%;object-fit:cover}.newsletter-copy{padding:30px}.newsletter-copy .dialog-head{margin-bottom:15px}.newsletter-copy h2{font-size:35px}.newsletter-copy p{font-size:16px;color:var(--muted)}.newsletter-copy form{margin-top:20px}.newsletter-copy label{display:block;font-size:14px;margin-top:13px}.newsletter-copy input[type=email]{width:100%;padding:12px;border:1px solid #9699a2;border-radius:5px;margin-top:6px}.newsletter-copy .consent{display:flex;gap:8px;font-size:12px;line-height:1.4;align-items:flex-start}.consent input{margin-top:3px}.newsletter-copy .button{width:100%;margin-top:14px}.newsletter-copy small{display:block;margin-top:12px;font-size:12px;color:var(--muted)}.form-message{font-size:14px!important;margin-top:12px;color:#9b2828!important}.honeypot{position:absolute;left:-9999px}
@media(max-width:700px){.booking{grid-template-columns:1fr 1fr;gap:7px;padding:8px}.booking-field{padding:9px 12px;min-height:59px}.booking-field>.icon{display:none}.booking .button{min-height:59px;min-width:0}.calendar-dialog,.guest-dialog{position:fixed;inset:auto 0 0;max-width:100%;width:100%;margin:0;border-radius:18px 18px 0 0;max-height:92dvh;padding:20px}.calendar-months{grid-template-columns:1fr;gap:22px;max-height:55dvh;overflow:auto}.day{height:39px}.dialog-head h2{font-size:25px}.calendar-summary{margin-top:12px}.gallery-dialog{padding:13px;max-width:100%;width:100%;max-height:100dvh;height:100dvh;border-radius:0;margin:0;inset:0}.gallery-stage{height:65dvh}.gallery-footer{flex-wrap:wrap;gap:14px}.gallery-thumbs{max-width:100%;width:100%;order:2}.newsletter-dialog{width:400px;overflow:auto;max-height:90dvh}.newsletter-layout{grid-template-columns:1fr}.newsletter-layout>img{height:145px;object-position:center 70%}.newsletter-copy{padding:22px}.newsletter-copy h2{font-size:31px}.newsletter-copy .close{position:absolute;top:12px;right:12px}.newsletter-copy p{font-size:15px}.newsletter-copy form{margin-top:12px}}
