:root{--black: #0e0d0b;--ink: #1c1a17;--muted: #5a5650;--line: #d8d2c7;--paper: #faf7f1;--off-white: #f1ece2;--bone: #ebe5d8;--bronze: #8a6a3d;--bronze-dk: #6f532d;--green: #2c3e2d;--green-dk: #1f2c20;--font-serif: "Cormorant Garamond", "EB Garamond", Georgia, serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--space-10: 8rem;--measure: 65ch;--container: 1280px;--container-narrow: 880px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;color-scheme:light}img,picture,svg{display:block;max-width:100%}button{font:inherit;cursor:pointer}body{font-family:var(--font-sans);font-weight:400;font-size:16px;line-height:1.6;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:400;color:var(--black);margin:0;letter-spacing:-.01em;line-height:1.1}h1{font-size:clamp(2.5rem,5.5vw,4.5rem)}h2{font-size:clamp(2rem,3.6vw,3rem)}h3{font-size:clamp(1.5rem,2.2vw,1.875rem)}h4{font-size:1.25rem}p{margin:0 0 var(--space-4);max-width:var(--measure)}em{font-family:var(--font-serif);font-style:italic;font-size:1.05em}a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);transition:border-color .2s,color .2s}a:hover{color:var(--bronze);border-color:var(--bronze)}.eyebrow{font-family:var(--font-sans);font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin:0 0 var(--space-3);display:inline-block}.lede{font-size:1.125rem;line-height:1.65;color:var(--muted);max-width:var(--measure)}.muted{color:var(--muted)}.serif-italic{font-family:var(--font-serif);font-style:italic}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--space-5)}.container--narrow{max-width:var(--container-narrow)}.section{padding:var(--space-9) 0}.section--tight{padding:var(--space-7) 0}.section--alt{background:var(--off-white)}.section--dark{background:var(--ink);color:var(--paper)}.section--dark h1,.section--dark h2,.section--dark h3{color:var(--paper)}.section--dark .eyebrow{color:var(--bronze)}.rule{height:1px;background:var(--line);border:0;margin:var(--space-7) 0}.site-header{position:sticky;top:0;z-index:100;background:#faf7f1f2;backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--line)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);max-width:var(--container);margin:0 auto}.wordmark{font-family:var(--font-sans);font-weight:500;font-size:.875rem;letter-spacing:.35em;color:var(--black);border:0;display:inline-block}.nav{display:flex;gap:var(--space-6);align-items:center}.nav a{font-size:.875rem;letter-spacing:.04em;color:var(--ink);border:0;padding:var(--space-2) 0}.nav a:hover{color:var(--bronze)}.nav a.active{border-bottom:1px solid var(--bronze);padding-bottom:calc(var(--space-2) - 1px)}.nav__cta{font-family:var(--font-sans);font-size:.75rem!important;font-weight:500;letter-spacing:.18em!important;text-transform:uppercase;padding:var(--space-3) var(--space-5)!important;border:1px solid var(--ink)!important;color:var(--ink)!important;transition:background .2s,color .2s}.nav__cta:hover{background:var(--ink);color:var(--paper)!important}@media(max-width:760px){.nav{gap:var(--space-4)}.nav a:not(.nav__cta){display:none}}.hero{position:relative;min-height:86vh;display:flex;align-items:flex-end;background:var(--ink);color:var(--paper);overflow:hidden}.hero__slides{position:absolute;inset:0}.hero__slide{position:absolute;inset:0;background-size:cover;background-position:center center;opacity:0;transition:opacity 1.6s ease-in-out;filter:saturate(.87) contrast(1.04) brightness(1.02) sepia(.04)}.hero__slide--active{opacity:1}.hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#00000052,#0000001a 28%,#0000 50%,#00000080 78%,#000000d1);z-index:1;pointer-events:none}.hero__content{position:relative;z-index:2;width:100%;padding:var(--space-9) var(--space-5);max-width:var(--container);margin:0 auto}.hero__wordmark{position:absolute;top:var(--space-6);right:var(--space-6);z-index:2;display:block;width:clamp(240px,32vw,480px);height:auto;margin:0;filter:invert(1);opacity:.97;text-shadow:0 2px 16px rgba(0,0,0,.3)}@media(max-width:760px){.hero__wordmark{top:var(--space-5);right:var(--space-5);width:clamp(180px,50vw,280px)}}.hero h1{color:var(--paper);max-width:18ch;margin-bottom:var(--space-5)}.hero .lede{color:#f4f1ecd9;max-width:56ch;font-size:1.125rem}.hero__dots{position:absolute;bottom:var(--space-5);left:50%;transform:translate(-50%);display:flex;gap:10px;z-index:3}.hero__dot{width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:transparent;cursor:pointer;padding:0;transition:width .35s,background .35s,border-color .35s}.hero__dot--active{background:#fffffff2;border-color:#fffffff2;width:22px;border-radius:5px}.hero__dot:hover{border-color:#ffffffe6}.ph{position:relative;background:var(--bone);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--muted);font-family:var(--font-sans);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;text-align:center;padding:var(--space-4)}.ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.ph:has(img){padding:0}.ph img,.product-card img,.design-panel__img img{filter:saturate(.87) contrast(1.04) brightness(1.02) sepia(.04)}.ar-4-3{aspect-ratio:4 / 3}.ar-3-2{aspect-ratio:3 / 2}.ar-1-1{aspect-ratio:1 / 1}.ar-16-9{aspect-ratio:16 / 9}.ar-3-4{aspect-ratio:3 / 4}.ar-2-3{aspect-ratio:2 / 3}.booking-strip{background:var(--off-white);padding:var(--space-6) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.booking-form{display:grid;grid-template-columns:1.4fr 1fr 1fr .9fr;gap:var(--space-4) var(--space-5);align-items:end;max-width:none}.booking-form__field{display:grid;gap:var(--space-2);min-width:0}.booking-form__field--email{grid-column:span 2}.booking-form__field label{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500}.booking-form__field input,.booking-form__field select{font-family:var(--font-sans);font-size:.95rem;padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);outline:none;transition:border-color .2s;border-radius:0;-webkit-appearance:none;width:100%}.booking-form__field input::placeholder{color:#c4bdb0}.booking-form__field input:focus,.booking-form__field select:focus{border-color:var(--bronze)}.booking-form button{white-space:nowrap;padding:var(--space-3) var(--space-6);height:48px}@media(max-width:760px){.booking-form{grid-template-columns:1fr 1fr;gap:var(--space-3)}.booking-form__field--listing,.booking-form__field--email{grid-column:1 / -1}.booking-form button{grid-column:1 / -1;margin-top:var(--space-2)}}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.product-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border:0}.product-card .ph{aspect-ratio:3 / 4}.product-card__body{padding:var(--space-5) 0 0}.product-card__eyebrow{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-bottom:var(--space-2)}.product-card h3{margin-bottom:var(--space-3)}.product-card__meta{font-size:.875rem;color:var(--muted);margin-bottom:var(--space-4);display:flex;gap:var(--space-4);flex-wrap:wrap}.product-card__meta span:after{content:"·";margin-left:var(--space-4);color:var(--line)}.product-card__meta span:last-child:after{content:"";margin:0}.product-card__cta{font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px;align-self:flex-start;transition:color .2s,border-color .2s}.product-card:hover .product-card__cta{color:var(--bronze);border-color:var(--bronze)}.product-card:hover .ph{filter:brightness(.95)}@media(max-width:900px){.products{grid-template-columns:1fr}}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-8);align-items:start}.two-col--3-2{grid-template-columns:3fr 2fr}.two-col--2-3{grid-template-columns:2fr 3fr}@media(max-width:900px){.two-col,.two-col--3-2,.two-col--2-3{grid-template-columns:1fr;gap:var(--space-6)}}.design-panel{margin-top:var(--space-9)}.design-panel:first-of-type{margin-top:var(--space-7)}.design-panel__img{width:100%;aspect-ratio:16 / 9}.design-panel__caption{max-width:56ch;margin:var(--space-6) auto 0;text-align:center}.design-panel__caption p{margin-left:auto;margin-right:auto;max-width:52ch}.design-panel__caption h3{margin-top:var(--space-2)}.design-panel__caption .eyebrow{display:inline-block}.spec{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-3) var(--space-6);font-size:.95rem;margin:var(--space-5) 0}.spec dt{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding-top:.3em}.spec dd{margin:0;color:var(--ink)}.amenities{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3) var(--space-6);list-style:none;padding:0;margin:0;font-size:.95rem}.amenities li{padding:var(--space-2) 0;border-bottom:1px solid var(--line)}@media(max-width:600px){.amenities{grid-template-columns:1fr}}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line)}.table th{font-family:var(--font-sans);font-weight:500;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.table td:first-child{font-family:var(--font-serif);font-size:1.125rem;color:var(--black)}.table tr:last-child td{border-bottom:0}.rate-panel{background:var(--off-white);padding:var(--space-6);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center}.rate-panel__price{font-family:var(--font-serif);font-size:2.5rem;line-height:1;color:var(--black)}.rate-panel__price small{font-size:.85rem;letter-spacing:.04em;color:var(--muted);font-family:var(--font-sans);display:block;margin-top:var(--space-2)}.rate-panel__note{font-size:.85rem;color:var(--muted);margin:0}@media(max-width:600px){.rate-panel{grid-template-columns:1fr}}.disclosure{border-left:2px solid var(--bronze);padding:var(--space-4) var(--space-5);background:var(--off-white);margin:var(--space-6) 0}.disclosure h4{font-family:var(--font-sans);font-weight:500;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-bottom:var(--space-2)}.disclosure p{margin:0;font-size:.95rem;max-width:none}.disclosure a{color:var(--ink);border-color:var(--bronze)}.btn{display:inline-block;font-family:var(--font-sans);font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;padding:var(--space-4) var(--space-6);border:1px solid var(--ink);color:var(--ink);background:transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.btn:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.btn--primary{background:var(--ink);color:var(--paper)}.btn--primary:hover{background:var(--bronze);border-color:var(--bronze)}.btn--ghost{border-color:var(--line);color:var(--ink)}.btn--ghost:hover{background:transparent;color:var(--bronze);border-color:var(--bronze)}.form{display:grid;gap:var(--space-5);max-width:560px}.field{display:grid;gap:var(--space-2)}.field--row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.field label{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-weight:500}.field input,.field textarea,.field select{font-family:var(--font-sans);font-size:1rem;padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);outline:none;transition:border-color .2s;border-radius:0;-webkit-appearance:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--bronze)}.field textarea{resize:vertical;min-height:120px;padding-top:var(--space-3)}.field--checkbox{grid-template-columns:auto 1fr;align-items:start;gap:var(--space-3);font-size:.875rem;color:var(--muted)}.field--checkbox input{width:auto;padding:0;align-self:center}.form-status{margin-top:var(--space-4);font-size:.95rem}.form-status--success{color:var(--green)}.form-status--error{color:#b53e3e}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6)}.review{font-family:var(--font-serif);font-style:italic;font-size:1.15rem;line-height:1.5;color:var(--ink)}.review:before{content:"“";font-family:var(--font-serif);font-size:2.5rem;color:var(--bronze);display:block;line-height:.6;margin-bottom:var(--space-3)}.review__attr{display:block;margin-top:var(--space-4);font-family:var(--font-sans);font-style:normal;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}@media(max-width:900px){.reviews{grid-template-columns:1fr;gap:var(--space-7)}}.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-3)}.gallery .ph{width:100%}.gallery .g-wide{grid-column:span 8;aspect-ratio:4/3}.gallery .g-tall{grid-column:span 4;aspect-ratio:3/4}.gallery .g-half{grid-column:span 6;aspect-ratio:4/3}.gallery .g-third{grid-column:span 4;aspect-ratio:3/2}.gallery .g-full{grid-column:span 12;aspect-ratio:21/9}@media(max-width:700px){.gallery .g-wide,.gallery .g-tall,.gallery .g-half,.gallery .g-third,.gallery .g-full{grid-column:span 12;aspect-ratio:4/3}}.faq details{border-bottom:1px solid var(--line);padding:var(--space-5) 0}.faq summary{font-family:var(--font-serif);font-size:1.375rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--black)}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--font-sans);font-weight:300;font-size:1.5rem;color:var(--bronze)}.faq details[open] summary:after{content:"−"}.faq details p{margin:var(--space-4) 0 0;color:var(--muted)}.faq details ul{margin:var(--space-3) 0 0;padding-left:var(--space-5);color:var(--muted)}.faq details li{margin-bottom:var(--space-2)}.map{position:relative;width:100%;aspect-ratio:16 / 9;background:var(--bone);overflow:hidden;border:1px solid var(--line)}.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.8) contrast(1.02)}@media(max-width:760px){.map{aspect-ratio:4 / 3}}.tag-row{display:flex;gap:var(--space-2);flex-wrap:wrap;font-family:var(--font-sans);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--space-3)}.tag-row span:not(:last-child):after{content:"·";margin-left:var(--space-2)}.site-footer{background:var(--ink);color:#f4f1ecb3;padding:var(--space-8) 0 var(--space-6);font-size:.875rem}.site-footer h4{font-family:var(--font-sans);font-weight:500;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--paper);margin-bottom:var(--space-4)}.site-footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-6);padding-bottom:var(--space-7);border-bottom:1px solid rgba(244,241,236,.12)}.site-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2)}.site-footer a{color:#f4f1ecb3;border:0}.site-footer a:hover{color:var(--bronze)}.site-footer__wordmark{font-size:1.125rem;letter-spacing:.4em;color:var(--paper);margin-bottom:var(--space-4)}.site-footer__tagline{max-width:36ch;line-height:1.55}.site-footer__bottom{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-5);font-size:.75rem;color:#f4f1ec73;flex-wrap:wrap;gap:var(--space-3)}@media(max-width:760px){.site-footer__grid{grid-template-columns:1fr 1fr;gap:var(--space-6)}.site-footer__grid>:first-child{grid-column:1 / -1}}.center{text-align:center}.center p,.center .lede{margin-left:auto;margin-right:auto}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-7{margin-top:var(--space-7)}@media print{.site-header,.site-footer,.nav{display:none}}
