@font-face{font-family:Poppins;font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/poppins/fonts/poppins-400-latin-730c81dc.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/poppins/fonts/poppins-700-latin-6ae78aaa.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #29415e;--muted: #5d6d84;--field-ink: #536580;--line: #dfe2eb;--paper: #ffffff;--cta: #fbde64;--cta-hover: #fad53b;--error: #c42b3b;--error-bg: #f8d7da;--error-line: #f5c2c7;--error-ink: #842029;--ok: #32bbaa;--focus: rgba(41, 65, 94, .25);--canvas: #f3f5f8;--font: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;color-scheme:light}*,*:before,*:after{box-sizing:border-box}body.pre-reservation-page{margin:0;min-height:100vh;display:flex;flex-direction:row-reverse;font-family:var(--font);font-size:1rem;line-height:1.5;color:var(--ink);background:var(--paper);-webkit-text-size-adjust:100%}h1,h2,h3{text-wrap:balance}.pre-reservation-sidebar{position:relative;flex:0 0 33.333%;max-width:33.333%;min-height:100vh;padding:56px 41px 120px;color:var(--hotel-ink, #ffffff);background:var(--hotel-bg, var(--ink))}.pre-reservation-sidebar__logo{display:block;width:auto;max-width:100%;height:80px;object-fit:contain;object-position:left center;margin-bottom:32px}.pre-reservation-sidebar__initials{display:grid;place-items:center;width:72px;height:72px;margin-bottom:32px;border:2px solid currentColor;border-radius:50%;font-weight:700;font-size:1.25rem;letter-spacing:.02em}.pre-reservation-sidebar__name{margin:0 0 8px;font-size:1.5rem;line-height:1.3}.pre-reservation-sidebar address{font-style:normal}.pre-reservation-sidebar__contact{margin-top:40px}.pre-reservation-sidebar__contact h2{margin:0 0 8px;font-size:1rem}.pre-reservation-sidebar__contact span{display:block;overflow-wrap:anywhere}.pre-reservation-sidebar__footer{position:absolute;right:41px;bottom:56px;left:41px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:.875rem}.pre-reservation-sidebar__footer a{margin-left:12px;color:inherit}.pre-reservation-main{flex:1 1 auto;min-width:0}.pre-reservation-form,.pre-reservation-success,.pre-reservation-not-found{padding:56px 41px}.pre-reservation-form__intro{margin-bottom:48px}.pre-reservation-form__title{margin:0;font-size:1.75rem;line-height:1.3}.pre-reservation-form__subtitle{margin:4px 0 0;color:var(--muted)}.pre-reservation-masthead{display:none}.pre-reservation-form__section{margin-bottom:40px}.pre-reservation-form__section h3{margin:0 0 24px;color:var(--accent, var(--ink));font-size:1.5rem}.pre-reservation-grid{display:grid;gap:0 16px}.pre-reservation-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.pre-reservation-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.pre-reservation-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.pre-reservation-field{min-width:0;margin-bottom:16px}.pre-reservation-field label,.pre-reservation-ages legend{display:block;margin-bottom:4px}.pre-reservation-field__optional{color:var(--muted);font-size:.875rem}.pre-reservation-field input,.pre-reservation-field select,.pre-reservation-field textarea{display:block;width:100%;min-height:48px;padding:11px 16px;border:1px solid var(--line);border-radius:3px;color:var(--field-ink);font:inherit;background:var(--paper);transition:border-color .12s ease}.pre-reservation-field textarea{resize:vertical}.pre-reservation-field input:focus-visible,.pre-reservation-field select:focus-visible,.pre-reservation-field textarea:focus-visible{border-color:var(--accent, var(--ink));outline:2px solid var(--focus);outline-color:color-mix(in srgb,var(--accent, var(--ink)) 25%,transparent)}.pre-reservation-field.has-error input,.pre-reservation-field.has-error select,.pre-reservation-field.has-error textarea,.pre-reservation-field select.is-invalid{border-color:var(--error)}.pre-reservation-field__error{margin:4px 0 0;color:var(--error);font-size:.875rem}.pre-reservation-phone{display:flex;gap:8px}.pre-reservation-phone select{flex:0 0 120px}.pre-reservation-ages{min-width:0;margin:0 0 16px;padding:16px 16px 0;border:1px solid var(--line);border-radius:3px}.pre-reservation-ages legend{padding:0 4px}.pre-reservation-ages>.pre-reservation-field__error{margin:-8px 0 16px}.pre-reservation-form__promo{max-width:280px}.pre-reservation-form__submit{display:flex;justify-content:flex-end}.pre-reservation-button{display:inline-block;margin-bottom:16px;padding:13.5px 32px;border:0;border-radius:30px;color:var(--hotel-ink, var(--ink));font:inherit;font-size:1.125rem;font-weight:700;text-decoration:none;background:var(--hotel-bg, var(--cta));cursor:pointer;transition:filter .12s ease}.pre-reservation-button:hover,.pre-reservation-button:focus-visible{filter:brightness(.94)}.pre-reservation-button:focus-visible{outline:2px solid var(--accent, var(--ink));outline-offset:2px}.pre-reservation-button:disabled{cursor:progress;opacity:.7}.pre-reservation-alert{margin-bottom:32px;padding:12px 16px;border:1px solid var(--error-line);border-radius:3px;color:var(--error-ink);font-size:.875rem;background:var(--error-bg)}.pre-reservation-alert ul{margin:0;padding-left:20px}.pre-reservation-success,.pre-reservation-not-found{text-align:center}.pre-reservation-success__icon{margin:40px 0 24px;color:var(--ok)}.pre-reservation-success h2,.pre-reservation-not-found h2{margin:0 0 8px}.pre-reservation-success p,.pre-reservation-not-found p{margin:0 0 32px}@media(prefers-reduced-motion:no-preference){.pre-reservation-success__icon{animation:pre-reservation-pop .32s ease-out}@keyframes pre-reservation-pop{0%{opacity:.4;transform:scale(.85)}to{opacity:1;transform:scale(1)}}}@media(prefers-reduced-motion:reduce){.pre-reservation-field input,.pre-reservation-field select,.pre-reservation-field textarea,.pre-reservation-button{transition:none}}@media(max-width:1300px){.pre-reservation-sidebar,.pre-reservation-form,.pre-reservation-success,.pre-reservation-not-found{padding-right:25px;padding-left:25px}.pre-reservation-sidebar__footer{right:25px;left:25px}}@media(max-width:767px){body.pre-reservation-page{flex-direction:column;background:var(--canvas)}.pre-reservation-masthead{display:flex;align-items:center;gap:14px;padding:calc(16px + env(safe-area-inset-top)) 20px 16px;color:var(--hotel-ink, #ffffff);background:var(--hotel-bg, var(--ink))}.pre-reservation-masthead__logo{flex:none;width:auto;max-width:120px;height:48px;border-radius:8px;object-fit:contain}.pre-reservation-masthead__initials{display:grid;flex:none;place-items:center;width:44px;height:44px;border:2px solid currentColor;border-radius:50%;font-weight:700}.pre-reservation-masthead__name{font-weight:700;font-size:1.0625rem;line-height:1.3;text-wrap:balance}.pre-reservation-sidebar{flex-basis:auto;max-width:none;min-height:0;padding:28px 20px calc(28px + env(safe-area-inset-bottom))}.pre-reservation-sidebar__logo,.pre-reservation-sidebar__initials{display:none}.pre-reservation-sidebar__name{font-size:1.25rem}.pre-reservation-sidebar__contact{margin-top:24px}.pre-reservation-sidebar__footer{position:static;margin-top:32px}.pre-reservation-form{padding:24px 16px 0}.pre-reservation-success,.pre-reservation-not-found{padding:32px 20px}.pre-reservation-form__intro{margin:0 4px 20px}.pre-reservation-form__title{font-size:1.5rem}.pre-reservation-alert{margin-bottom:16px;border-radius:12px}.pre-reservation-form__section{margin-bottom:16px;padding:20px 16px 4px;border:1px solid #e6e9f0;border-radius:16px;background:var(--paper);box-shadow:0 1px 2px #1018280d}.pre-reservation-form__section h3{margin-bottom:16px;font-size:1.125rem}.pre-reservation-field input,.pre-reservation-field select,.pre-reservation-field textarea{border-radius:10px}.pre-reservation-grid--2{grid-template-columns:minmax(0,1fr)}.pre-reservation-grid--3,.pre-reservation-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}.pre-reservation-grid--3>:nth-child(3){grid-column:1 / -1}.pre-reservation-ages{border-radius:12px}.pre-reservation-ages .pre-reservation-grid--4{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.pre-reservation-phone select{flex-basis:104px}.pre-reservation-form__promo{max-width:none}.pre-reservation-form__submit{position:sticky;bottom:0;z-index:1;margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#f3f5f8eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.pre-reservation-button{width:100%;min-height:52px;margin-bottom:0;text-align:center}}@media(max-width:359px){.pre-reservation-grid--3,.pre-reservation-grid--4{grid-template-columns:minmax(0,1fr)}}
