@font-face{font-family:ReservationSans;src:url('/media/dm-sans.woff2') format('woff2');font-display:swap}@font-face{font-family:ReservationSerif;src:url('/media/cormorant.woff2') format('woff2');font-display:swap}
:root{color-scheme:light;--r-ink:#211b29;--r-muted:#706b76;--r-orange:#117176;--r-accent:#58d1d5;--r-paper:#fffaf4;--r-line:#e9dfd5;--r-error:#a8262e}
*{box-sizing:border-box}body{margin:0;background:#030909;color:var(--r-ink);font:15px/1.55 ReservationSans,system-ui,sans-serif}a{color:inherit}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.48}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #137e84;outline-offset:4px}button,input,select{border-radius:10px}button{min-height:44px}input,select{min-height:48px}button{color:inherit}a{text-underline-offset:3px}.r-skip{position:absolute;left:-10000px}.r-skip:focus{left:20px;top:20px;z-index:20;background:white;padding:12px}
.r-header{height:92px;max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:20px 38px;color:#fff7ef}.r-header img{width:138px;height:auto;display:block}.r-header>a:last-child{font-size:13px;text-decoration:none;color:#e8dacd}.r-header span{margin-left:10px;color:var(--r-accent)}
.r-layout{max-width:1200px;min-height:690px;margin:10px auto 24px;display:grid;grid-template-columns:42% 58%;border:1px solid #564340;border-radius:26px;overflow:hidden;box-shadow:0 25px 90px #06020c55;background:var(--r-paper)}
.r-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:52px 42px;color:white;background:linear-gradient(180deg,#24132977 0%,#21142566 35%,#21142511 60%,#211425cc 100%),radial-gradient(ellipse at 20% 20%,#16484c,#050909 70%);min-height:690px}.r-story:after{content:'';position:absolute;inset:0;border-right:1px solid #fff2;pointer-events:none}.r-kicker{font-size:10px;letter-spacing:.18em;font-weight:600}.r-story h1{font-family:ReservationSerif,Georgia,serif;font-size:78px;line-height:.96;font-weight:500;margin:38px 0 22px;letter-spacing:-.03em;text-shadow:0 2px 24px #30112566}.r-story h1 em{font-weight:400;color:#ffe0bc}.r-story p{font-size:16px;line-height:1.6}.r-story small{font-size:12px;color:#fff0df}.r-story-line{display:block;width:45px;height:1px;background:#fff9;margin:28px 0 16px}.r-location{font-size:10px;letter-spacing:.2em;font-weight:bold}.r-location span{margin:0 12px;color:#ffce90;font-size:19px}
.r-booking{padding:36px 40px 30px;min-width:0;scroll-margin-top:20px}.r-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.r-heading>span{border:1px solid var(--r-line);padding:6px 9px;border-radius:30px;font-size:10px;letter-spacing:.08em;white-space:nowrap}.r-eyebrow{font-size:10px;letter-spacing:.14em;color:var(--r-orange);font-weight:bold;margin:0 0 5px}.r-booking h2,.r-policy h1{font:500 40px/1.08 ReservationSerif,Georgia,serif;letter-spacing:-.025em;margin:0}.r-intro{font-size:13px;color:var(--r-muted);margin:9px 0 22px}.r-steps{padding:0;list-style:none;display:flex;justify-content:space-between;gap:10px;margin:22px 0 27px}.r-steps li{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--r-muted);flex:1;padding-bottom:12px;border-bottom:2px solid var(--r-line)}.r-steps li span{width:23px;height:23px;border:1px solid #d9d0c9;border-radius:50%;display:grid;place-items:center;font-size:10px}.r-steps li[aria-current=step]{border-color:var(--r-orange);color:var(--r-orange);font-weight:700}.r-steps li[aria-current=step] span{background:var(--r-orange);color:white;border-color:var(--r-orange)}
.r-fieldset{padding:0;margin:0 0 22px;border:0;min-width:0}.r-fieldset legend,.r-label{display:block;font-weight:600;font-size:13px;margin:0 0 10px}.r-party-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.r-party-row button{background:#fff;border:1px solid var(--r-line);width:45px;height:45px;font-weight:600}.r-party-row button[aria-pressed=true],.r-dates button[aria-pressed=true],.r-slots button[aria-pressed=true],.r-occasions button[aria-pressed=true]{border-color:var(--r-orange);background:#fff0e3;color:#9e3e19;box-shadow:inset 0 0 0 1px var(--r-orange)}.r-party-select{margin-left:5px;min-width:90px;border:1px solid var(--r-line);padding:0 10px;background:#fff}.r-dates{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.r-dates button{padding:8px 3px;background:#fff;border:1px solid var(--r-line);min-width:0;line-height:1.2}.r-dates small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.03em}.r-dates strong{display:block;font-size:22px;margin:5px 0}.r-dates span{font-size:10px;color:var(--r-muted)}.r-calendar-toggle{border:0;background:transparent;color:var(--r-orange);font-size:12px;padding:5px 0;min-height:32px;margin-top:8px}.r-calendar{background:#fff;border:1px solid var(--r-line);padding:12px;border-radius:12px;margin:8px 0}.r-month-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.r-month-nav button{width:36px;min-height:36px;border:1px solid var(--r-line);background:white}.r-month-nav strong{text-transform:capitalize;font-size:13px}.r-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center}.r-calendar-grid>small{color:var(--r-muted);font-size:10px;padding:4px}.r-calendar-grid button{border:0;background:white;min-height:35px;font-size:12px}.r-calendar-grid button[aria-pressed=true]{background:var(--r-orange);color:white}.r-calendar-grid button:disabled{opacity:.28}
.r-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.r-slots button{border:1px solid var(--r-line);background:white;padding:7px 5px;line-height:1.2;font-size:13px}.r-slots button small{display:block;font-size:9px;margin-top:3px;color:var(--r-muted)}.r-slot-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;color:var(--r-muted);margin:10px 0 0}.r-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:#428061;margin-right:5px}.r-empty{border:1px dashed #dccbc0;padding:15px;border-radius:10px;font-size:13px;color:var(--r-muted);margin:0}.r-empty button{display:block;border:0;background:none;color:var(--r-orange);padding:5px 0;min-height:34px;text-decoration:underline}.r-loading{color:var(--r-muted);font-size:13px}.r-primary{border:1px solid var(--r-orange);background:var(--r-orange);color:white;min-height:50px;padding:12px 20px;border-radius:11px;font-size:14px;font-weight:600}.r-primary:hover:not(:disabled){background:#9d3c17}.r-secondary{border:1px solid var(--r-line);background:transparent;padding:12px 17px;min-height:48px}.r-actions{display:flex;align-items:center;gap:10px;margin-top:24px}.r-actions .r-primary{flex:1}.r-actions a{font-size:12px;color:var(--r-muted)}.r-smallprint{font-size:11px;color:var(--r-muted);margin:14px 0 0}.r-error{background:#fff0ef;border:1px solid #edb8b6;color:var(--r-error);font-size:13px;padding:11px 13px;border-radius:9px;margin:12px 0}.r-error:empty{display:none}.r-summary-line{display:flex;flex-wrap:wrap;gap:8px;border:1px solid var(--r-line);background:#f7eee6;padding:12px 14px;border-radius:10px;font-size:12px;margin-bottom:22px}.r-summary-line button{margin-left:auto;border:0;background:none;color:var(--r-orange);min-height:20px;padding:0;font-size:11px}.r-form label{display:block;font-size:12px;font-weight:600;margin-bottom:15px}.r-form input{display:block;width:100%;margin-top:6px;border:1px solid #dbd1c9;background:#fff;padding:11px 13px;color:var(--r-ink)}.r-form input::placeholder{color:#8e8790}.r-form label small{font-weight:400;color:var(--r-muted)}.r-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.r-occasions{display:flex;flex-wrap:wrap;gap:7px}.r-occasions button{font-size:11px;padding:7px 12px;border:1px solid var(--r-line);background:#fff;min-height:38px}.r-check{display:flex;align-items:flex-start;gap:10px;font-size:12px}.r-check input{min-height:18px;width:18px;height:18px;flex-shrink:0;accent-color:var(--r-orange);margin:2px 0}.r-review-list{padding:0;margin:18px 0}.r-review-list>div{padding:12px 0;border-bottom:1px solid var(--r-line);display:flex;justify-content:space-between;gap:18px;font-size:13px}.r-review-list dt{color:var(--r-muted)}.r-review-list dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}.r-note{background:#f3e8dd;border-radius:10px;padding:13px 15px;font-size:12px;margin:18px 0}.r-note strong{display:block;margin-bottom:4px}.r-link{border:0;background:none;color:var(--r-orange);font-size:12px;text-decoration:underline;padding:0;min-height:32px}.r-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.r-success-symbol{width:60px;height:60px;border:1px solid #c3d5c9;background:#eaf2e9;color:#39704a;border-radius:50%;display:grid;place-items:center;font-size:27px;margin:15px 0 23px}.r-pending-symbol{background:#fff0d9;color:#9f5b17;border-color:#e8cda2}.r-reference{font-size:11px;letter-spacing:.1em;color:var(--r-muted);margin:12px 0 24px}.r-receipt-status{font-size:13px;line-height:1.7;color:var(--r-muted)}.r-contact{color:var(--r-orange);font-size:12px}.r-footer{max-width:1200px;margin:20px auto 30px;display:flex;justify-content:space-between;color:#c3afb8;font-size:11px;padding:0 10px}.r-policy{max-width:850px;margin:10px auto 30px;padding:40px;background:var(--r-paper);border-radius:22px}.r-policy h2{font-size:16px;margin-top:27px}.r-policy p,.r-policy li{font-size:14px}.r-policy pre{white-space:pre-wrap;font-family:inherit;font-size:13px}.r-policy a{color:var(--r-orange)}.r-alert{background:#ffeed0;border:1px solid #e5c38e;padding:15px;border-radius:10px;font-size:13px}
@media(max-width:900px){.r-layout{margin:0 18px 20px;grid-template-columns:35% 65%;min-height:650px}.r-story{padding:35px 25px}.r-story h1{font-size:58px}.r-booking{padding:30px 26px}.r-header{padding:20px 24px}.r-kicker{font-size:8px}.r-story p{font-size:13px}.r-story small{font-size:11px}}
@media(max-width:640px){.r-header{height:72px;padding:15px 20px}.r-header img{width:110px}.r-header>a:last-child{font-size:11px}.r-layout{display:block;margin:0 12px 18px;border-radius:19px;min-height:0}.r-story{min-height:0;height:128px;padding:20px 24px;background-position:center 45%;display:block}.r-story h1{font-size:39px;line-height:1;margin:5px 0 0}.r-story h1 br{display:none}.r-story p,.r-story small,.r-story-line,.r-location{display:none}.r-kicker{font-size:8px}.r-booking{padding:25px 20px 26px}.r-booking h2{font-size:35px}.r-heading>span{font-size:8px}.r-steps{margin:20px 0 24px;gap:8px}.r-steps li{font-size:10px;gap:5px}.r-steps li span{width:20px;height:20px}.r-dates{gap:4px}.r-dates strong{font-size:20px}.r-dates small{font-size:9px}.r-dates button{padding:8px 2px}.r-party-row{gap:6px}.r-party-row button{width:40px;height:42px;min-height:42px}.r-party-select{min-width:82px;font-size:12px;margin:0;padding:0 5px;min-height:42px}.r-slots{gap:6px}.r-form-grid{grid-template-columns:1fr;gap:0}.r-actions{position:sticky;bottom:0;background:var(--r-paper);padding:12px 0 3px;z-index:2}.r-actions .r-primary{min-height:50px}.r-footer{padding:0 22px;font-size:10px}.r-policy{margin:0 12px 20px;border-radius:16px;padding:27px 22px}.r-slot-caption{font-size:9px}}
@media(prefers-reduced-motion:no-preference){.r-booking>section{animation:r-enter .18s ease-out}@keyframes r-enter{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}}

.r-time-group{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--r-muted);margin:14px 0 7px}.r-time-group:first-of-type{margin-top:0}
@media(max-width:640px){.r-booking .r-actions{position:fixed;left:12px;right:12px;bottom:0;padding:12px 20px max(12px,env(safe-area-inset-bottom));margin:0;background:var(--r-paper);border-top:1px solid var(--r-line);box-shadow:0 -6px 20px #2a16300b;z-index:5}.r-layout{margin-bottom:100px}.r-footer{margin-bottom:95px}.r-story h1{font-size:37px}}
.r-demo-banner{padding:8px 16px;background:#fae0b9;color:#5c3317;text-align:center;font-size:11px;line-height:1.5}

.r-header img{width:76px;height:76px;object-fit:contain}.r-verification{margin-top:18px}.r-verification .r-actions{flex-wrap:wrap}.r-verification input{display:block;width:100%;margin:10px 0;border:1px solid var(--r-line);padding:12px;background:white}.r-verification strong{display:block}
