:root{--bg:#faf6ee;--bg-deep:#f2ebdc;--ink:#1a1a1a;--ink-soft:#6b655c;--ink-faint:#a89f90;--line:#1a1a1a1a;--line-strong:#1a1a1a2e;--accent:#b85b3e;--serif:"Cormorant Garamond", "Times New Roman", serif;--sans:"Helvetica Neue", Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;line-height:1.6}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.wrap{max-width:1080px;margin:0 auto;padding:0 32px}.wrap-narrow{max-width:760px;margin:0 auto;padding:0 32px}.wrap-wide{max-width:1280px;margin:0 auto;padding:0 32px}.nav{justify-content:space-between;align-items:center;gap:32px;padding:22px 0;display:flex}.nav-brand{font-family:var(--serif);letter-spacing:.005em;align-items:center;gap:12px;font-size:22px;font-weight:400;display:flex}.nav-crest{width:auto;height:44px}.nav-links{gap:28px;font-size:13px;display:flex}.nav-links a{color:var(--ink-soft);transition:color .12s}.nav-links a:hover,.nav-links a.active{color:var(--ink)}.nav-cta{border:1px solid var(--ink);letter-spacing:.04em;border-radius:999px;padding:9px 16px;font-size:12px;transition:background .14s,color .14s}.nav-cta:hover{background:var(--ink);color:var(--bg)}.hero{width:100%;position:relative;overflow:hidden}.hero img{object-fit:cover;width:100%;height:100%}.hero-fade:after{content:"";pointer-events:none;background:linear-gradient(#00000040 0%,#0000 30%,#00000059 55%,#000000e6 100%);position:absolute;inset:0}.hero-cap{color:#fff;z-index:1;justify-content:space-between;align-items:flex-end;gap:32px;display:flex;position:absolute;bottom:36px;left:40px;right:40px}.hero-name{font-family:var(--serif);letter-spacing:-.01em;color:#fff;margin:0;font-size:84px;font-weight:400;line-height:.98}.hero-sub{letter-spacing:.24em;text-transform:uppercase;color:#fff;margin-top:14px;font-size:12px}.hero-meta{letter-spacing:.22em;text-transform:uppercase;text-align:right;color:#fff;font-size:12px}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.h{font-family:var(--serif);letter-spacing:-.008em;margin:0;font-size:56px;font-weight:300;line-height:1.04}.h-sm{font-family:var(--serif);margin:0;font-size:28px;font-weight:400;line-height:1.2}.lead{max-width:580px;font-size:17px;line-height:1.6}.body p{margin:0 0 1em}.muted{color:var(--ink-soft)}.section{padding:96px 0}.section-tight{padding:64px 0}.rule{background:var(--line);height:1px}.placeholder{color:var(--ink-faint);font-style:italic}.btn{letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:999px;align-items:center;gap:10px;padding:14px 22px;font-size:12px;transition:background .14s,color .14s;display:inline-flex}.btn:hover{color:var(--ink);background:0 0}.btn-accent{background:var(--accent);border-color:var(--accent);color:#fff}.btn-accent:hover{color:var(--accent);background:0 0}.field{flex-direction:column;gap:8px;display:flex}.field-label{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.field-input,.field-textarea{border:none;border-bottom:1px solid var(--line-strong);font-size:16px;font-family:var(--sans);color:var(--ink);box-sizing:border-box;background:0 0;outline:none;width:100%;min-width:0;padding:10px 0;transition:border-color .14s}.field{min-width:0}.field-input:focus,.field-textarea:focus{border-color:var(--accent)}.field-textarea{resize:vertical;min-height:100px;line-height:1.5}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;min-width:0;font-size:13px;display:grid}.cal-head{letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);text-align:center;padding:8px 0;font-size:10px}.cal-cell{aspect-ratio:1;font-variant-numeric:tabular-nums;color:var(--ink);border:1px solid #0000;justify-content:center;align-items:center;font-size:14px;display:flex;position:relative}.cal-cell.cal-out{color:var(--ink-faint)}.cal-cell.cal-booked{color:var(--ink-faint);background:0 0;text-decoration:line-through}.cal-cell.cal-available{background:var(--bg-deep);color:var(--ink)}.cal-month-name{font-family:var(--serif);margin:0 0 16px;font-size:22px;font-weight:400}.footer{color:var(--ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;padding:56px 0 40px;font-size:12px;display:flex}.footer .brand{font-family:var(--serif);color:var(--ink);font-size:18px}.v1-hero{aspect-ratio:16/10}.two-col{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.gallery{grid-template-columns:2fr 1fr 1fr;grid-auto-rows:280px;gap:14px;display:grid}.gallery .g-img{width:100%;height:100%;overflow:hidden}.gallery .g-img img{object-fit:cover;width:100%;height:100%}.gallery .g-tall{grid-row:span 2}.gallery .g-wide{grid-column:span 2}.history-section{background:var(--bg-deep);padding:96px 0}.history-frame{text-align:center;max-width:920px;margin:0 auto}.history-frame img{width:100%;height:auto;display:block;box-shadow:0 24px 60px #1a1a141a}.history-caption{font-family:var(--serif);color:var(--ink-soft);max-width:640px;margin:32px auto 0;font-size:22px;font-style:italic;font-weight:300;line-height:1.4}.history-eyebrow{margin-bottom:22px}.reserve-section{background:var(--bg-deep);padding:120px 0;position:relative}.reserve-head{text-align:center;max-width:720px;margin:0 auto 64px}.reserve-head h2{font-family:var(--serif);letter-spacing:-.01em;margin:16px 0 22px;font-size:72px;font-weight:300;line-height:1}.reserve-head p{color:var(--ink-soft);margin:0;font-size:17px;line-height:1.6}.reserve-card{background:var(--bg);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);align-items:start;gap:64px;max-width:1080px;margin:0 auto;padding:56px;display:grid;box-shadow:0 30px 80px #1a1a1414}.reserve-card>*{min-width:0}.cal-head-row{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.cal-pager{gap:8px;display:flex}.cal-arrow{border:1px solid var(--line-strong);width:32px;height:32px;color:var(--ink-soft);background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:14px;transition:background .14s,color .14s,border-color .14s,opacity .14s;display:inline-flex}.cal-arrow:not(:disabled):hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cal-arrow:disabled{opacity:.3;cursor:not-allowed}.cal-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;display:grid}.cal-legend{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:22px;margin-top:24px;font-size:11px;display:flex}.swatch{vertical-align:middle;width:12px;height:12px;margin-right:8px;display:inline-block}.swatch-avail{background:var(--bg-deep)}.swatch-booked{border:1px solid var(--ink-faint);background:0 0;position:relative}.swatch-booked:after{content:"";background:var(--ink-faint);height:1px;position:absolute;top:5px;left:1px;right:1px}.swatch-selected{background:var(--accent)}.cal-clear{font:inherit;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;margin-left:auto;padding:0;text-decoration:underline}.cal-clear:hover{color:var(--ink)}.cal-cell.cal-available{cursor:pointer;transition:background .12s,color .12s}.cal-cell.cal-available:hover:not(.cal-range-start):not(.cal-range-end):not(.cal-in-range){background:#b85b3e2e}.cal-cell.cal-in-range{color:var(--ink);background:#b85b3e38}.cal-cell.cal-range-start,.cal-cell.cal-range-end{background:var(--accent);color:#fff}.field-input-readonly{cursor:default;color:var(--ink)}.cal-error{color:var(--accent);margin-top:14px;font-size:13px;display:none}.cal-error.cal-error-visible{display:block}.reviews{padding:120px 0}.reviews-head{text-align:center;max-width:620px;margin:0 auto 56px}.reviews-head h2{font-family:var(--serif);margin:14px 0;font-size:48px;font-weight:300;line-height:1.05}.reviews-head p{color:var(--ink-soft);margin:0;font-size:15px}.carousel{max-width:760px;margin:0 auto;position:relative}.carousel-track{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.carousel-slides{transition:transform .5s cubic-bezier(.22,.61,.36,1);display:flex}.review{text-align:center;flex:0 0 100%;padding:56px 32px 48px}.review .quote-mark{font-family:var(--serif);color:var(--accent);margin-bottom:24px;font-size:72px;font-style:italic;font-weight:300;line-height:.5}.review blockquote{font-family:var(--serif);color:var(--ink);margin:0 0 32px;font-size:26px;font-style:italic;font-weight:300;line-height:1.4}.review .stars{color:var(--accent);letter-spacing:4px;margin-bottom:14px;font-size:14px}.review .meta{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.review .meta strong{color:var(--ink);font-weight:500}.review .placeholder{font-family:var(--sans);letter-spacing:.04em;color:var(--ink-faint);margin-top:14px;font-size:13px;font-style:normal}.carousel-nav{justify-content:center;align-items:center;gap:12px;margin-top:32px;display:flex}.carousel-dot{background:var(--ink-faint);cursor:pointer;border:none;border-radius:50%;width:7px;height:7px;padding:0;transition:background .16s,transform .16s}.carousel-dot.active{background:var(--ink);transform:scale(1.3)}.carousel-arrow{border:1px solid var(--line-strong);width:40px;height:40px;color:var(--ink);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;font-size:16px;transition:background .14s,color .14s,border-color .14s;display:inline-flex}.carousel-arrow:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.carousel-source{text-align:center;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);margin-top:24px;font-size:11px}@media (width<=900px){.hero-name{font-size:56px}.h{font-size:40px}.reserve-head h2{font-size:48px}.two-col{gap:40px;grid-template-columns:1fr!important}.reserve-card{grid-template-columns:minmax(0,1fr);gap:48px;padding:32px}.cal-wrap{grid-template-columns:minmax(0,1fr)}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:200px}.gallery .g-tall,.gallery .g-wide{grid-area:auto}.history-section{padding:64px 0}.history-caption{font-size:18px}.nav-links{display:none}.section,.reserve-section,.reviews{padding:72px 0}}@media (width<=600px){.wrap,.wrap-narrow,.wrap-wide{padding:0 20px}.nav{gap:12px;padding:16px 0}.nav-brand{font-size:18px}.nav-brand .est{display:none}.nav-cta{padding:8px 12px;font-size:11px}.v1-hero{aspect-ratio:4/5}.hero-cap{flex-direction:column;align-items:flex-start;gap:18px;bottom:28px;left:24px;right:24px}.hero-name{font-size:44px;line-height:1}.hero-sub{margin-top:10px}.hero-meta{text-align:left;opacity:.85}.h{font-size:32px}.reserve-head h2{font-size:34px}.reserve-head p{font-size:15px}.reviews-head h2{font-size:32px}.history-caption{font-size:16px}.reserve-card{grid-template-columns:minmax(0,1fr);gap:36px;padding:24px}.cal-cell{font-size:12px}.cal-month-name{font-size:18px}.review{padding:40px 16px 32px}.review blockquote{font-size:20px}.review .quote-mark{font-size:56px}.gallery{grid-template-columns:1fr;grid-auto-rows:240px}.footer{gap:16px}.section,.reserve-section,.reviews{padding:56px 0}.history-section{padding:48px 0}}
