@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600&display=swap";:root{--ink:#202c3e;--olive:#385f70;--sand:#e7ddd0;--cream:#f8f5ef;--white:#fff;--line:#d8d0c3}.real-photo{background:#ddd;min-height:330px;margin:0;overflow:hidden}.real-photo img{object-fit:cover;width:100%;height:100%;min-height:330px;display:block}.real-photo-hero{min-height:100%;position:absolute;inset:0}.real-photo-hero img{filter:brightness(.52);height:100%;min-height:100%}.photo-credit{color:#777;text-align:right;margin:.55rem 0 0;font-size:.68rem}.room-card .real-photo,.room-card .real-photo img{height:250px;min-height:250px}.editorial-grid .real-photo,.editorial-grid .real-photo img{height:280px;min-height:280px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);margin:0;font-family:DM Sans,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3{margin:0;font-family:Playfair Display,serif;font-weight:500;line-height:1.08}h1{font-size:clamp(2.8rem,6.5vw,6.2rem)}h2{font-size:clamp(2rem,4vw,3.7rem)}h3{font-size:1.65rem}.preview-banner{background:var(--ink);color:#fff;text-align:center;letter-spacing:.14em;padding:.45rem 1rem;font-size:.7rem}.site-header{z-index:20;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f7f3ecf0;align-items:center;gap:2rem;height:92px;padding:0 4vw;display:flex;position:sticky;top:0}.brand{align-items:center;gap:.75rem;margin-right:auto;font-family:Playfair Display,serif;font-size:1.2rem;display:flex}.brand small{letter-spacing:.13em;text-transform:uppercase;font-family:DM Sans,sans-serif;font-size:.57rem;display:block}.brand-mark{border:1px solid var(--olive);width:43px;height:43px;color:var(--olive);border-radius:50%;place-items:center;font-size:1.45rem;display:grid}.desktop-nav{gap:1.5rem;font-size:.8rem;display:flex}.desktop-nav a:hover,.text-link:hover{color:var(--olive)}.button{background:var(--olive);color:#fff;border:1px solid var(--olive);text-transform:uppercase;letter-spacing:.1em;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.35rem;font-size:.78rem;display:inline-flex}.button.secondary{color:var(--ink);border-color:var(--ink);background:0 0}.button.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}.mobile-nav{display:none}.hero{place-items:center;min-height:780px;display:grid;position:relative;overflow:hidden}.photo-placeholder{text-align:center;color:#6b685e;background:repeating-linear-gradient(135deg,#ded7ca,#ded7ca 2px,#e7e0d5 2px 14px);border:1px solid #cec5b7;flex-direction:column;justify-content:center;align-items:center;min-height:330px;padding:2rem;display:flex}.photo-placeholder span{text-transform:uppercase;letter-spacing:.16em;font-size:.7rem}.photo-placeholder strong{max-width:420px;margin-top:.5rem;font-size:.72rem}.hero>.photo-hero{filter:brightness(.68);min-height:100%;position:absolute;inset:0}.hero-copy{z-index:2;color:#fff;text-align:center;max-width:1000px;padding:3rem;position:relative}.hero-copy h1 span{letter-spacing:.08em;text-transform:uppercase;margin-top:1.6rem;font-family:DM Sans,sans-serif;font-size:clamp(.85rem,1.6vw,1.15rem);display:block}.hero-copy>p:not(.eyebrow){max-width:670px;margin:1.8rem auto}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--olive);font-size:.7rem;font-weight:600}.hero .eyebrow{color:#fff}.actions{flex-wrap:wrap;justify-content:center;gap:.8rem;display:flex}.hero .secondary{color:#fff;border-color:#fff}.section{padding:8rem max(5vw,50vw - 640px)}.section-title{max-width:780px;margin-bottom:3.4rem}.feature-grid{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.feature{border-right:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;padding:2rem;display:flex}.feature strong{color:var(--olive);font-family:Playfair Display,serif;font-size:1.9rem}.feature span{font-size:.85rem}.split{background:#fff;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;display:grid}.lead{font-size:1.25rem}.text-link{border-bottom:1px solid;margin-top:1.2rem;font-weight:600;display:inline-block}.rooms-section{background:var(--ink);color:#fff}.rooms-section .eyebrow{color:#b9bd96}.room-grid{grid-template-columns:repeat(12,1fr);gap:1.2rem;display:grid}.room-card{background:var(--cream);color:var(--ink);grid-column:span 4}.room-card:nth-child(4),.room-card:nth-child(5){grid-column:span 6}.room-card .photo-placeholder{min-height:250px}.room-card>div{padding:1.5rem}.room-size{letter-spacing:.12em;text-transform:uppercase;color:var(--olive);font-size:.72rem}.room-card a{font-size:.8rem;font-weight:600}.services-preview{background:var(--sand)}.service-list{border-top:1px solid #bcb29f;grid-template-columns:1fr 1fr;display:grid}.service-list div{border-bottom:1px solid #bcb29f;align-items:center;gap:1.5rem;padding:1.3rem;display:flex}.service-list span{color:var(--olive);font-size:.75rem}.service-list p{margin:0}.editorial-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.editorial-grid .photo-placeholder{min-height:280px}.editorial-grid h3{margin-top:1rem}.editorial>.button{margin-top:3rem}.booking-cta{text-align:center;color:#fff;background:var(--olive);padding:7rem 5vw}.booking-cta .eyebrow{color:#fff}.booking-cta p{max-width:630px;margin:1.3rem auto}.contact-placeholders{justify-content:center;gap:2rem;margin-top:1.5rem;font-size:.75rem;display:flex}.page-hero{background:var(--sand);padding:6rem max(5vw,50vw - 640px)}.page-hero h1{max-width:1050px;font-size:clamp(2.8rem,5.5vw,5.5rem)}.page-hero>p:last-child{max-width:720px;font-size:1.15rem}.breadcrumb{gap:.5rem;margin-bottom:3.5rem;font-size:.72rem;display:flex}.content-section{border-bottom:1px solid var(--line);background:#fff;padding:5rem max(5vw,50vw - 550px)}.content-section:nth-of-type(2n){background:var(--cream)}.content-section h2{margin-bottom:1.5rem;font-size:clamp(2rem,3.5vw,3.2rem)}.content-section .photo-placeholder{margin:2rem 0}.chips{flex-wrap:wrap;gap:.6rem;margin:1.5rem 0;display:flex}.chip{border:1px solid var(--line);padding:.5rem .8rem;font-size:.8rem}.provisional{border-left:3px solid var(--olive);background:var(--sand);padding:.8rem 1rem;font-size:.8rem;font-weight:600}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem;max-width:900px;display:grid}.field{flex-direction:column;gap:.45rem;min-width:0;display:flex}.field.full{grid-column:1/-1}.field label{font-size:.8rem;font-weight:600}.field input,.field select,.field textarea{background:var(--cream);border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);border-radius:0;padding:.85rem 1rem;display:block}.field input,.field select{min-height:52px}.field textarea{resize:vertical;min-height:150px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.consent-field{grid-template-columns:auto 1fr;align-items:start;gap:.7rem;display:grid}.consent-field input{width:1.1rem;min-width:1.1rem;min-height:1.1rem;accent-color:var(--olive);margin:.2rem 0 0;padding:0}.consent-field label{font-weight:500;line-height:1.5}.form-actions{align-items:flex-start}.form-actions .button{width:auto;min-width:220px}.faq details{border-bottom:1px solid var(--line);padding:1.2rem 0}.faq summary{cursor:pointer;font-weight:600}.faq p{max-width:800px}.simple-grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}footer{color:#eee;background:#20221c;grid-template-columns:2fr 1fr 1.3fr 1.3fr;gap:3rem;padding:5rem 5vw 7rem;font-size:.8rem;display:grid}footer h2{text-transform:uppercase;letter-spacing:.15em;color:#b9bd96;margin-bottom:1rem;font-family:DM Sans,sans-serif;font-size:.72rem}footer>div>a{margin:.5rem 0;display:block}.footer-brand{margin-bottom:1rem}.mobile-actions{display:none}@media (width<=1000px){.desktop-nav,.header-cta{display:none}.mobile-nav{display:block}.mobile-nav button{border:1px solid var(--ink);background:0 0;padding:.65rem 1rem}.mobile-nav nav{background:var(--cream);border-bottom:1px solid var(--line);gap:1rem;padding:2rem;display:grid;position:absolute;top:92px;left:0;right:0}.feature-grid{grid-template-columns:repeat(2,1fr)}.room-card,.room-card:nth-child(4),.room-card:nth-child(5){grid-column:span 6}.editorial-grid,footer{grid-template-columns:1fr 1fr}}@media (width<=680px){body{padding-bottom:58px}.site-header{height:75px;padding:0 1rem}.mobile-nav nav{top:75px}.preview-banner{font-size:.57rem}.hero{min-height:670px}.hero-copy{padding:2rem 1.2rem}.hero-copy h1{font-size:2.65rem}.section{padding:5rem 1.2rem}.feature-grid,.service-list,.simple-grid,.form-grid{grid-template-columns:1fr}.split{grid-template-columns:1fr;gap:3rem}.room-card,.room-card:nth-child(4),.room-card:nth-child(5){grid-column:1/-1}.editorial-grid{grid-template-columns:1fr}.page-hero{padding:3.5rem 1.2rem}.content-section{padding:4rem 1.2rem}.contact-placeholders{flex-direction:column;gap:.3rem}.field.full{grid-column:auto}.consent-field{grid-template-columns:auto 1fr}.form-actions .button{width:100%;min-width:0}footer{grid-template-columns:1fr;padding:4rem 1.2rem 6rem}.mobile-actions{z-index:30;background:var(--ink);color:#fff;grid-template-columns:repeat(3,1fr);height:58px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-actions>*{border-right:1px solid #444;place-items:center;font-size:.72rem;display:grid}.mobile-actions span{opacity:.55}}
