:root{--ink:#151d1a;--ink-2:#3f4b46;--muted:#75827c;--line:#e4e6e2;--line-2:#cdd2ce;--paper:#fafaf8;--card:#fff;--card-2:#f3f4f1;--accent:#1d5a47;--accent-ink:#fff;--accent-soft:#e6efea;--accent-line:#b9d2c6;--taken:#efece6;--taken-ink:#7c6b4f;--ok:#1e7a52;--bad:#b3261e;--shadow:0 20px 50px rgba(21,29,26,.1);--shadow-sm:0 1px 2px rgba(21,29,26,.06);--r:18px;--rs:12px}@media (prefers-color-scheme:dark){:root{--ink:#ecefec;--ink-2:#b7c0bb;--muted:#7f8a85;--line:#242b28;--line-2:#333c38;--paper:#0f1412;--card:#161c19;--card-2:#1c2320;--accent:#5fbf9b;--accent-ink:#06211a;--accent-soft:#16302a;--accent-line:#2e5a4b;--taken:#2a2620;--taken-ink:#c9b48c;--ok:#5fd39f;--bad:#f08a84;--shadow:0 20px 50px rgba(0,0,0,.5);--shadow-sm:0 1px 2px rgba(0,0,0,.4);color-scheme:dark}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:Manrope,system-ui,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:"Instrument Serif",Georgia,serif;font-weight:400;margin:0;letter-spacing:-.01em;text-wrap:balance}button{font-family:inherit}a{color:inherit}.page{padding:0 24px 80px}.wrap{max-width:1180px;margin:0 auto}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:600}.top{display:flex;justify-content:space-between;align-items:center;padding:22px 0}.logo{font-family:"Instrument Serif",Georgia,serif;font-size:26px;text-decoration:none;letter-spacing:-.01em}.nav{display:flex;gap:26px;font-size:14px;color:var(--ink-2)}.nav a{text-decoration:none}.nav a:hover{color:var(--ink)}@media(max-width:640px){.nav{display:none}}.hero{display:grid;grid-template-columns:1fr 1.1fr;grid-gap:48px;gap:48px;align-items:center;padding:28px 0 56px}.hero h1{font-size:clamp(40px,5.2vw,64px);line-height:1.02}.hero h1 em{font-style:italic;color:var(--accent)}.hero p{font-size:18px;color:var(--ink-2);max-width:46ch;margin:20px 0 26px}.hero .facts{font-size:14px;color:var(--muted);margin-top:22px;line-height:1.9}.hero .facts b{color:var(--ink-2);font-weight:600}.hero .pic{position:relative;border-radius:var(--r);overflow:hidden;aspect-ratio:4/3;background:var(--card-2);box-shadow:var(--shadow)}.hero .pic img{width:100%;height:100%;object-fit:cover;display:block}.hero .pic figcaption{position:absolute;left:16px;bottom:16px;background:rgba(21,29,26,.72);color:#fff;font-size:13px;padding:7px 12px;border-radius:999px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.btn{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:14px 22px;background:var(--ink);color:var(--paper);font:600 15px Manrope;cursor:pointer;text-decoration:none;transition:transform .12s,opacity .12s}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line-2)}@media(max-width:820px){.hero{grid-template-columns:1fr;gap:26px;padding-bottom:36px}.hero .pic{order:-1}}.strip{display:grid;grid-template-columns:auto 1fr;grid-gap:18px;gap:18px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin-bottom:64px}.strip .lbl{font-size:13px;color:var(--muted);white-space:nowrap}.strip .rows{display:grid;grid-gap:6px;gap:6px}.strip .row{display:grid;grid-template-columns:110px repeat(5,minmax(0,1fr));grid-gap:6px;gap:6px;align-items:center;font-size:13px}.strip .row .n{font-weight:600;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.strip .d{height:22px;border-radius:6px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:11px;font-weight:600}.strip .d.t{background:var(--taken);color:var(--taken-ink)}.strip .d.r{background:transparent;border:1px dashed var(--line-2);color:var(--muted);font-weight:500}.strip .hd{display:grid;grid-template-columns:110px repeat(5,minmax(0,1fr));grid-gap:6px;gap:6px;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}@media(max-width:640px){.strip{grid-template-columns:1fr}.strip .hd,.strip .row{grid-template-columns:70px repeat(5,minmax(0,1fr))}}.sec{margin-bottom:72px}.sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px}.sec-h h2{font-size:clamp(28px,3.2vw,38px);line-height:1.1}.sec-h p{margin:0;color:var(--muted);font-size:14px;max-width:44ch;text-align:right}@media(max-width:640px){.sec-h{flex-direction:column;align-items:flex-start}.sec-h p{text-align:left}}.rooms{display:grid;grid-template-columns:1fr 1fr;grid-gap:26px;gap:26px}@media(max-width:820px){.rooms{grid-template-columns:1fr}}.room{text-align:left;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;display:grid;grid-gap:14px;gap:14px}.room,.room .art{position:relative;border-radius:var(--r)}.room .art{aspect-ratio:4/3;overflow:hidden;background:var(--card-2);box-shadow:var(--shadow-sm);transition:box-shadow .2s,transform .2s}.room:hover .art{transform:translateY(-3px);box-shadow:var(--shadow)}.room.on .art{outline:3px solid var(--accent);outline-offset:3px}.room .art img,.room .art svg{width:100%;height:100%;object-fit:cover;display:block}.room .badge{left:12px;font:600 11px Manrope;letter-spacing:.1em;text-transform:uppercase;background:hsla(0,0%,100%,.92);color:var(--ink);padding:6px 10px;border-radius:999px}.room .badge,.room .sel{position:absolute;top:12px}.room .sel{right:12px;width:28px;height:28px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-size:14px;opacity:0;transform:scale(.8);transition:all .15s}.room.on .sel{opacity:1;transform:scale(1)}.room .meta{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.room h3{font-size:28px;line-height:1.1}.room h3 small{font:400 14px Manrope;color:var(--muted);margin-left:10px}.room .price{font:600 14px Manrope;color:var(--ink-2);white-space:nowrap;text-align:right}.room .price span{display:block;font-weight:400;color:var(--muted);font-size:13px}.room p{margin:0;color:var(--ink-2);font-size:15px}.room .amen{font-size:13px;color:var(--muted)}.also{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}@media(max-width:820px){.also{grid-template-columns:1fr}}.also .it{display:grid;grid-template-columns:96px 1fr;grid-gap:14px;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card)}.also .it img,.also .it svg{width:96px;height:72px;object-fit:cover;border-radius:8px;display:block;background:var(--card-2)}.also .it b{font-size:15px;display:block}.also .it span{font-size:13px;color:var(--muted)}.book{display:grid;grid-template-columns:1.35fr .85fr;grid-gap:26px;gap:26px;align-items:start}@media(max-width:900px){.book{grid-template-columns:1fr}}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px}.panel h4{font:600 13px Manrope;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}.panel+.panel{margin-top:18px}.seg{display:inline-grid;grid-template-columns:1fr 1fr;border:1px solid var(--line-2);border-radius:999px;padding:4px;margin-bottom:18px}.seg button{border:0;background:transparent;color:var(--ink-2);padding:9px 18px;border-radius:999px;font:600 14px Manrope;cursor:pointer}.seg button.on{background:var(--ink);color:var(--paper)}.days{grid-template-columns:repeat(5,1fr);grid-gap:8px;gap:8px}.day,.days{display:grid}.day{border:1px solid var(--line-2);border-radius:var(--rs);padding:14px 6px 12px;text-align:center;cursor:pointer;background:var(--card);color:inherit;grid-gap:2px;gap:2px;transition:all .12s}.day b{font:600 15px Manrope}.day small{color:var(--muted);font-size:12px}.day.on,.day:hover{border-color:var(--ink)}.day.on{background:var(--ink);color:var(--paper)}.day.on small{color:hsla(0,0%,100%,.7)}.day.taken{background:var(--taken);color:var(--taken-ink);cursor:not-allowed;border-color:transparent}.day.taken small{color:inherit}.day:disabled:not(.taken){opacity:.45;cursor:not-allowed}.once{display:grid;grid-template-columns:300px 1fr;grid-gap:26px;gap:26px}@media(max-width:700px){.once{grid-template-columns:1fr}}.calh{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.calh b{font:600 15px Manrope}.calh button{border:1px solid var(--line-2);background:transparent;border-radius:50%;width:30px;height:30px;cursor:pointer;color:inherit;font-size:16px}.cal{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:3px;gap:3px}.cal .h{font-size:11px;color:var(--muted);text-align:center;text-transform:uppercase;letter-spacing:.06em;padding-bottom:6px}.cal button{aspect-ratio:1;border:0;background:transparent;border-radius:50%;font:500 14px Manrope;color:inherit;cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal button:hover{background:var(--card-2)}.cal button.dim{opacity:.25;cursor:not-allowed}.cal button.on{background:var(--ink);color:var(--paper)}.tl .sub{font-size:13px;color:var(--muted);margin-bottom:10px;min-height:20px}.bar{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:6px;gap:6px}.bar button{height:46px;border-radius:10px;background:var(--card);cursor:pointer;color:var(--ink-2);font:600 13px Manrope;border:1px solid var(--line-2);transition:all .1s}.bar button.on,.bar button:hover{border-color:var(--ink)}.bar button.on{background:var(--ink);color:var(--paper)}.bar button.taken{background:repeating-linear-gradient(135deg,var(--taken),var(--taken) 4px,var(--card) 4px,var(--card) 8px);color:var(--taken-ink);cursor:not-allowed;border-color:transparent}.bar button:disabled:not(.taken){opacity:.4;cursor:not-allowed}.hint{font-size:13px;color:var(--muted);margin:14px 0 0}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}@media(max-width:560px){.grid2{grid-template-columns:1fr}}.field{display:grid;grid-gap:6px;gap:6px}.field label{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.field input,.field select{border:1px solid var(--line-2);border-radius:var(--rs);padding:13px 14px;font:inherit;font-size:16px;background:var(--card);color:inherit;width:100%}.field input:focus,.field select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.agree{display:flex;gap:10px;align-items:flex-start;margin-top:16px;font-size:14px;color:var(--ink-2)}.agree input{margin-top:3px}.agree a{color:var(--accent)}.err{margin-top:12px;color:var(--bad);font-size:14px;font-weight:600}.sum{position:-webkit-sticky;position:sticky;top:20px;background:var(--ink);color:var(--paper);border-radius:var(--r);padding:24px;box-shadow:var(--shadow)}.sum h4{font:600 12px Manrope;letter-spacing:.14em;text-transform:uppercase;color:hsla(0,0%,100%,.55);margin:0 0 16px}.sum .thumb{aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:hsla(0,0%,100%,.08);margin-bottom:16px}.sum .thumb img{width:100%;height:100%;object-fit:cover;display:block}.sum .row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid hsla(0,0%,100%,.12);font-size:14px}.sum .row span{color:hsla(0,0%,100%,.6)}.sum .row b{font-weight:600;text-align:right}.sum .total{display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 6px}.sum .total .n{font-family:"Instrument Serif",Georgia,serif;font-size:40px;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sum .total small{color:hsla(0,0%,100%,.6);font-size:13px}.sum .btn{width:100%;justify-content:center;margin-top:14px}.sum .note{font-size:12px;color:hsla(0,0%,100%,.55);margin:12px 0 0;line-height:1.5}@media (prefers-color-scheme:dark){.sum{background:var(--card);color:var(--ink);border:1px solid var(--line)}.sum .note,.sum .row span,.sum .total small,.sum h4{color:var(--muted)}.sum .row{border-color:var(--line)}}.suite{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}@media(max-width:820px){.suite{grid-template-columns:1fr}}.suite figure{margin:0}.suite img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--rs);display:block;background:var(--card-2)}.suite figcaption{font-size:14px;color:var(--ink-2);margin-top:10px}.suite figcaption b{display:block;font-weight:600;color:var(--ink)}.how{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:26px;gap:26px;border-top:1px solid var(--line);padding-top:28px}@media(max-width:820px){.how{grid-template-columns:1fr}}.how .n{font-family:"Instrument Serif",Georgia,serif;font-size:34px;color:var(--accent);line-height:1}.how b{display:block;margin:10px 0 4px;font-size:16px}.how p{margin:0;color:var(--ink-2);font-size:14px}.done{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:40px 28px;text-align:center;max-width:640px;margin:20px auto 0}.done .ok{width:60px;height:60px;border-radius:50%;background:var(--accent-soft);color:var(--ok);display:grid;place-items:center;margin:0 auto 16px}.done h2{font-size:36px}.done p{color:var(--ink-2);margin:8px 0 0}.tix{margin:22px auto 0;text-align:left;border:1px solid var(--line);border-radius:var(--rs);overflow:hidden}.tix .row{display:flex;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid var(--line);font-size:15px}.tix .row:last-child{border:0}.tix .row span{color:var(--muted)}.tix .row b{font-weight:600;text-align:right}.code{font:600 30px Manrope;letter-spacing:.25em;background:var(--accent-soft);color:var(--accent);display:inline-block;padding:10px 22px;border-radius:12px;margin-top:18px}.note{font-size:13px;color:var(--muted);margin-top:12px}.ghost{border:1px solid var(--line-2);border-radius:999px;color:var(--ink);text-decoration:none;display:inline-block}.danger,.ghost{background:transparent;padding:11px 18px;font:600 14px Manrope;cursor:pointer;margin-top:18px}.danger{border:1px solid var(--bad);color:var(--bad);border-radius:999px}.foot{font-size:13px;margin-top:56px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.foot,.foot a{color:var(--muted)}.gal{position:relative}.gal,.gal img{width:100%;height:100%}.gal img{object-fit:cover;display:block}.gal .nav{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:hsla(0,0%,100%,.9);color:var(--ink);display:grid;place-items:center;font-size:18px;line-height:1;cursor:pointer;opacity:0;transition:opacity .15s}.gal .nav.l{left:10px}.gal .nav.r{right:10px}.room:hover .gal .nav{opacity:1}.gal .dots{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:5px}.gal .dots i{width:6px;height:6px;border-radius:50%;background:hsla(0,0%,100%,.55);cursor:pointer}.gal .dots i.on{background:#fff}.adm{padding:16px;max-width:1200px;margin:0 auto}.adm h1{font-size:26px;margin-bottom:12px}.adm table{width:100%;border-collapse:collapse;font-size:14px;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}.adm td,.adm th{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.adm th{font:600 12px Manrope;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);background:var(--card-2)}.adm .wk{display:grid;grid-template-columns:120px repeat(5,1fr);grid-gap:4px;gap:4px;margin:10px 0 20px}.adm .wk .h{font-size:12px;color:var(--muted);text-align:center;text-transform:uppercase}.adm .wk .cell{min-height:64px;border:1px solid var(--line);border-radius:8px;padding:6px;font-size:12px;background:var(--card)}.adm .wk .cell.t{background:var(--accent-soft)}.adm .wk .cell.r{background:var(--taken);color:var(--taken-ink)}.adm .wk .lbl{font:600 13px Manrope;display:flex;align-items:center}.adm .pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:var(--accent-soft);color:var(--accent)}.adm .pill.c{background:var(--taken);color:var(--taken-ink)}.adm .pill.p{background:#fdebd0;color:#8a5a2b}.adm button.sm{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:5px 10px;font-size:13px;cursor:pointer;color:inherit}.adm .row-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:8px 0 18px}.adm .row-form input,.adm .row-form select{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font:inherit;background:var(--card);color:inherit}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px}