:root{--bg:#f7f3ec;--surface:#fffdf8;--ink:#202927;--muted:#65716e;--line:#d9d2c8;--forest:#2f5d50;--forest-dark:#203f38;--rust:#b65d3c;--sky:#477f9f;--gold:#d5a449;--blue-soft:#e9f3f7;--green-soft:#e8f1eb;--rust-soft:#f7e8df;--shadow:0 20px 50px #2029271f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-width:320px;color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button,select,a{touch-action:manipulation}img{max-width:100%}.site-header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf8eb;border-bottom:1px solid #2029271a;justify-content:space-between;align-items:center;gap:20px;padding:14px clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.brand{min-width:0;color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand strong,.brand small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.brand small{color:var(--muted);font-size:.82rem}.site-nav{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.site-nav a,.nav-cta,.primary-action,.secondary-action,.icon-button{border-radius:8px;text-decoration:none}.site-nav a{color:var(--muted);padding:9px 10px}.site-nav a:hover,.site-nav a:focus-visible{background:var(--green-soft);color:var(--forest-dark);outline:none}.nav-cta,.primary-action,.secondary-action{border:1px solid #0000;justify-content:center;align-items:center;min-height:42px;padding:0 16px;font-weight:780;display:inline-flex}.nav-cta,.primary-action{background:var(--forest-dark);color:#fffdf8}.secondary-action{color:var(--ink);background:#fffdf8f0;border-color:#2029272e}.primary-action:hover,.secondary-action:hover,.nav-cta:hover,.icon-button:hover{transform:translateY(-1px)}.hero{isolation:isolate;min-height:clamp(560px,78vh,780px);display:grid;position:relative;overflow:hidden}.hero img{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero:after{z-index:-1;content:"";background:linear-gradient(90deg,#0e1816d1,#0e18167a 54%,#0e18162e),linear-gradient(#0e181614 36%,#0e18168c);position:absolute;inset:0}.hero-content{color:#fffdf8;align-self:end;width:min(980px,100% - 32px);margin:0 auto;padding:0 0 clamp(64px,12vh,116px)}.eyebrow{color:var(--rust);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.76rem;font-weight:850}.hero .eyebrow{color:#f4c468}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{letter-spacing:0}.hero h1{max-width:760px;margin:0;font-size:clamp(2.5rem,7vw,5.8rem);line-height:.98}.hero-copy{color:#fffdf8e0;max-width:700px;margin:18px 0 0;font-size:clamp(1.05rem,2vw,1.3rem);line-height:1.55}.hero-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.hero-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:820px;margin:34px 0 0;display:grid}.hero-facts div{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf81f;border:1px solid #fffdf84d;border-radius:8px;min-height:82px;padding:14px}.hero-facts dt{color:#fffdf8bd;text-transform:uppercase;font-size:.78rem}.hero-facts dd{margin:5px 0 0;font-size:1.16rem;font-weight:820}.quick-book,.section,.site-footer{width:min(1180px,100% - 32px);margin-inline:auto}.quick-book{z-index:2;background:var(--surface);box-shadow:var(--shadow);border:1px solid #2029271f;border-radius:8px;grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(0,1fr)) auto;gap:12px;margin-top:-42px;padding:16px;display:grid;position:relative}.section{padding:74px 0 0}.section-heading{margin-bottom:22px}.section-heading.compact{margin-bottom:16px}.section-heading h2{max-width:760px;margin:0;font-size:clamp(1.8rem,4vw,3rem);line-height:1.06}.calendar-legend{flex-wrap:wrap;gap:8px;display:flex}.availability-controls{grid-template-columns:minmax(240px,.5fr) minmax(0,1fr);align-items:end;gap:12px;margin-bottom:14px;display:grid}.availability-controls p{color:var(--muted);margin:0;line-height:1.45}.icon-button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);cursor:pointer;padding:0 13px}.listing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.listing-card,.booking-panel,.calendar-card,.room-summary,.room-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;box-shadow:0 12px 34px #20292712}.listing-card{align-content:start;gap:14px;min-height:330px;padding:18px;display:grid}.listing-kicker{color:var(--sky);letter-spacing:.05em;text-transform:uppercase;font-size:.78rem;font-weight:850}.listing-card h3,.booking-panel h2,.room-card h3{margin:0}.listing-card p,.room-summary p{color:var(--muted);margin:0;line-height:1.55}.badge-row{flex-wrap:wrap;gap:7px;margin-top:auto;display:flex}.badge-row span{background:var(--blue-soft);color:#22516a;border-radius:999px;padding:6px 9px;font-size:.82rem;font-weight:700}.split-section{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);align-items:start;gap:18px;display:grid}.calendar-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.calendar-toolbar h3{text-align:center;margin:0}.icon-button{width:42px;padding:0;font-size:1.4rem}.calendar-card{padding:12px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-weekdays{color:var(--muted);text-align:center;text-transform:uppercase;margin-bottom:8px;font-size:.78rem;font-weight:800}.day-button{border:1px solid var(--line);min-height:78px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:8px;padding:8px;display:grid}.day-button small{color:var(--muted);align-self:end;font-weight:700}.day-button.is-muted{opacity:.35}.day-button.is-booked,.day-button.is-held{cursor:not-allowed}.day-button.is-booked{color:#89827a;background:#f1eee9}.day-button.is-held{background:var(--rust-soft)}.day-button.is-selected,.day-button.is-range{background:var(--green-soft);border-color:#2f5d50b3}.day-button:focus-visible,.icon-button:focus-visible,.primary-action:focus-visible,.secondary-action:focus-visible,.nav-cta:focus-visible{outline-offset:2px;outline:3px solid #477f9f3d}.calendar-legend{color:var(--muted);margin-top:12px;font-size:.9rem}.legend-dot{border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.legend-dot.available{background:var(--forest)}.legend-dot.held{background:var(--rust)}.legend-dot.booked{background:#8f8980}.booking-panel{padding:20px}.selected-dates,.minimum-note,.selected-option,.request-output{color:var(--muted);line-height:1.5}.selected-option{margin:8px 0 0;font-weight:820}.minimum-note{margin:12px 0 0;font-weight:760}.price-list{gap:10px;margin:18px 0;display:grid}.price-list div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding-bottom:10px;display:flex}.price-list dt{color:var(--muted)}.price-list dd{margin:0;font-weight:820}.full-width{width:100%}.room-layout{gap:16px;display:grid}.room-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.room-card{align-content:start;gap:10px;min-height:242px;padding:16px;display:grid}.room-card p{color:var(--muted);margin:0;line-height:1.45}.room-card-action{cursor:pointer;align-self:end;margin-top:auto}.room-summary{border-left:4px solid var(--gold);padding:18px}.booking-section{padding-bottom:72px}.booking-section>div{max-width:860px}.booking-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}label,fieldset{color:var(--ink);gap:7px;font-size:.92rem;font-weight:760;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:8px;padding:11px 12px}input:focus,select:focus,textarea:focus{border-color:var(--sky);outline:3px solid #477f9f33}textarea{resize:vertical;min-height:110px;line-height:1.5}.wide-field,fieldset,.booking-form .primary-action,.booking-form .request-output{grid-column:span 2}fieldset{border:1px solid var(--line);border-radius:8px;padding:14px}legend{color:var(--muted);padding:0 6px}.inline-choice{align-items:center;gap:10px;font-weight:650;display:flex}.inline-choice input{width:16px;height:16px}.request-output{background:var(--blue-soft);border-radius:8px;min-height:0;padding:14px}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:20px;padding:26px 0 38px;display:flex}.site-footer p{margin:0}@media (max-width:960px){.site-header{flex-wrap:wrap;align-items:flex-start}.site-nav{order:3;justify-content:flex-start;width:100%}.quick-book,.listing-grid,.split-section,.availability-controls,.room-grid{grid-template-columns:1fr 1fr}.split-section{align-items:stretch}.booking-panel{grid-column:span 2}.hero-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.site-header{gap:12px;padding:12px 14px}.nav-cta{display:none}.site-nav a{padding:8px 6px;font-size:.92rem}.hero{min-height:680px}.hero-content{width:calc(100% - 28px);padding-bottom:86px}.hero h1{font-size:clamp(2.25rem,14vw,3.8rem)}.hero-facts,.quick-book,.listing-grid,.split-section,.availability-controls,.room-grid,.booking-form{grid-template-columns:1fr}.booking-panel,.wide-field,fieldset,.booking-form .primary-action,.booking-form .request-output{grid-column:auto}.quick-book{margin-top:-56px}.calendar-weekdays,.calendar-grid{gap:4px}.day-button{min-height:62px;padding:6px;font-size:.86rem}.day-button small{font-size:.72rem}.site-footer{flex-direction:column}}
