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