:root{--wine:#71191c;--ink:#201e1b;--cream:#f5f3ef;--line:#ded8d1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.45;background:#fcfbf9}body.modal-open{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}button,a{touch-action:manipulation}:focus-visible{outline:3px solid #ba792c;outline-offset:5px}.container{width:min(1280px,calc(100% - 112px));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-80px;background:white;padding:14px;z-index:30}.skip-link:focus{top:12px}.header{background:#fff}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;flex-direction:column;flex-shrink:0;color:var(--wine)}.brand span{font:700 43px/.95 Georgia,'Times New Roman',serif;letter-spacing:-1px}.brand small{font-size:9px;letter-spacing:4px;margin-top:7px}.header nav{display:flex;align-items:center;gap:30px}.header nav a{font-size:12px;text-transform:uppercase;letter-spacing:.3px;padding-block:16px}.header nav a:hover{color:var(--wine);text-decoration:underline;text-underline-offset:7px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:12px 29px;border:1px solid var(--wine);border-radius:2px;background:var(--wine);color:white;font-size:13px;font-weight:500;text-transform:uppercase;letter-spacing:.35px;transition:background .18s,color .18s}.button:hover{background:#511013;border-color:#511013}.button-outline{color:var(--wine);background:transparent}.button-outline:hover{color:#fff}.button-light{background:#0002;border-color:#fff}.button-light:hover{background:white;color:var(--wine);border-color:white}.header-book{min-width:140px}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;min-height:520px;display:flex;align-items:center;color:#fff;background:#221b15}.hero-image{position:absolute;inset:0;height:100%;z-index:-2;object-position:center 58%}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.46) 45%,rgba(0,0,0,.08))}.hero-content{padding-block:54px}.hero h1{font:700 clamp(54px,5.8vw,84px)/1 Georgia,serif;margin:0 0 3px;letter-spacing:1px}.hero-tagline{font:italic clamp(29px,3.4vw,46px)/1.1 Georgia,serif;margin:0 0 24px}.hero-specialties{text-transform:uppercase;letter-spacing:1.4px;font-size:15px;margin:0 0 24px}.actions{display:flex;flex-wrap:wrap;gap:18px}.hero .button{min-width:190px}.intro{background:#faf8f4;border-top:14px solid white;overflow:hidden}.intro-inner{min-height:340px;position:relative;display:flex;align-items:center}.intro-copy{width:48%;position:relative;z-index:1;padding-block:38px}.rule{display:block;width:30px;height:2px;background:var(--wine);margin-bottom:23px}h2{font:700 clamp(25px,2.6vw,37px)/1.12 Georgia,serif;text-transform:uppercase;margin:0 0 22px}p{margin:0 0 18px}.intro-copy p{max-width:465px}.intro-inner>img{position:absolute;right:-56px;top:0;width:62%;height:100%;object-position:center 37%;mask-image:linear-gradient(90deg,transparent,#000 25%)}.offerings{background:var(--cream);padding:24px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.card{background:#fdfcfb}.card>img{height:225px;object-position:center 30%}.card .room-card{object-position:center 48%}.card-body{padding:24px 30px}.card h2{font-size:27px;margin-bottom:13px}.card .rule{margin-bottom:14px}.card p{font-size:17px;min-height:50px;margin-bottom:24px}.card .button{min-width:195px}.space{display:grid;grid-template-columns:29% 1fr;gap:35px;padding-block:30px}.space-copy{align-self:center;padding:14px 0}.space h2{font-size:29px}.space p{font-size:16px}.space-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.space-photos button{border:0;padding:0;background:#e7ded0;overflow:hidden}.space-photos img{height:285px;transition:transform .25s}.space-photos button:hover img{transform:scale(1.035)}.room-left{object-position:10% center}.room-center{object-position:50% center}.room-right{object-position:95% center}.contact{padding:30px 0;background:white}.contact-inner{display:grid;grid-template-columns:1.55fr .65fr 1fr;gap:30px;align-items:center}.contact h2{font-size:31px}.contact .rule{margin-bottom:20px}.contact p{font-size:17px}.contact-actions{gap:12px;flex-wrap:nowrap}.contact .button{padding:12px 17px;font-size:12px;white-space:nowrap}.contact .phone{font-size:18px;letter-spacing:0}.contact address{display:flex;align-items:center;gap:12px;border-left:1px solid var(--line);padding:50px 0 50px 25px;font-size:14px;font-style:normal}.contact address svg{width:25px;min-width:25px;fill:var(--wine)}.map{position:relative}.map iframe{width:100%;height:200px;border:0;display:block;background:#e9e6de}.map>a{position:absolute;bottom:8px;right:8px;background:white;padding:7px 12px;color:var(--wine);font-size:12px;box-shadow:0 2px 10px #0002}footer{background:#222220;color:#fff;padding:40px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;font-size:14px}.footer-brand{color:white;border-right:1px solid #a5a19d;padding-right:55px}.footer-brand span{font:400 36px/1 Arial,sans-serif;letter-spacing:1px}.footer-brand small{letter-spacing:2.7px;font-size:8px}.footer-inner p{margin:0}.footer-tagline{color:#c7c3bf;font-size:13px;text-align:right}.gallery{width:min(1000px,94vw);max-height:94dvh;border:0;padding:20px;background:#f8f5ef;color:var(--ink)}.gallery::backdrop{background:#000d}.gallery-top,.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px}.gallery-top h2{font-size:22px;margin:0}.gallery button{background:transparent;border:1px solid var(--line);color:var(--wine);min-width:44px;min-height:44px;font-size:22px}.gallery>img{height:min(65dvh,650px);object-fit:contain;margin:15px 0;background:#211e1b}.gallery-bottom p{margin:0;text-align:center;font-size:15px}
@media(min-width:1500px){.hero{min-height:580px}}@media(max-width:1150px){.container{width:calc(100% - 64px)}.header-inner{gap:20px}.header nav{gap:18px}.brand span{font-size:35px}.brand small{font-size:8px;letter-spacing:3px}.header-book{min-width:110px;padding-inline:18px}.contact-inner{grid-template-columns:1.5fr 1fr}.contact address{border:0;padding:10px 0}.map{grid-column:2;grid-row:1 / span 2}.contact-actions{flex-wrap:wrap}.card-body{padding:22px}.card h2{font-size:23px}.card .button{min-width:0}.intro-inner>img{right:-32px}.footer-brand{padding-right:30px}.space h2{font-size:25px}}
@media(max-width:850px){.header-inner{min-height:80px;flex-wrap:wrap;position:relative;padding-block:15px}.menu-toggle{display:flex;align-items:center;gap:9px;background:transparent;border:1px solid var(--line);padding:8px 12px;font-size:13px;margin-left:auto;color:var(--wine)}.menu-lines{font-size:20px}.header-book{display:none}.header nav{display:flex;width:100%;flex-wrap:wrap;gap:5px 25px;order:3;border-top:1px solid var(--line);padding-top:10px}.js .header nav{display:none}.js .header nav.is-open{display:flex}.hero{min-height:490px}.hero h1{font-size:65px}.hero-tagline{font-size:38px}.intro-copy{width:55%}.intro-inner>img{width:65%;opacity:.7}.intro h2{font-size:29px}.cards{gap:15px}.card>img{height:170px}.card-body{padding:18px}.card h2{font-size:22px}.card p{font-size:15px;min-height:66px}.card p br{display:none}.card .button{font-size:11px;padding-inline:12px}.space{grid-template-columns:1fr;gap:12px}.space-copy{max-width:520px}.space-photos img{height:240px}.footer-inner{flex-wrap:wrap}.footer-tagline{width:100%;text-align:left}.footer-brand{border:0}.contact h2{font-size:27px}}
@media(max-width:560px){.container{width:calc(100% - 40px)}.brand span{font-size:33px}.brand small{font-size:7px;letter-spacing:3px}.hero{min-height:510px;align-items:flex-end}.hero-image{object-position:62% center}.hero:after{background:linear-gradient(0deg,#000d,#0005)}.hero-content{padding-block:40px}.hero h1{font-size:55px}.hero-tagline{font-size:35px}.hero-specialties{font-size:11px;letter-spacing:1.1px}.hero .actions{gap:10px}.hero .button{min-width:0;flex:1;padding-inline:12px;font-size:12px}.intro{border-top-width:9px}.intro-inner{display:flex;flex-direction:column;align-items:stretch}.intro-copy{width:100%;padding:33px 0 15px}.intro h2{font-size:30px;max-width:310px}.intro-inner>img{position:static;width:calc(100% + 40px);margin-left:-20px;height:225px;mask-image:none;opacity:1;object-position:center 30%}.cards{grid-template-columns:1fr;gap:22px}.offerings{padding:22px 0}.card>img{height:215px;object-position:center 25%}.card-body{padding:23px}.card h2{font-size:27px}.card p{font-size:17px;min-height:0;margin-bottom:21px}.card .button{font-size:12px;padding-inline:25px}.space{padding-block:27px}.space h2{font-size:28px}.space-photos{gap:7px}.space-photos img{height:180px}.contact{padding-block:30px}.contact-inner{grid-template-columns:1fr;gap:24px}.contact h2{font-size:30px}.contact-actions{flex-direction:column;align-items:stretch}.contact .button{min-height:49px}.contact address{padding:0}.map{grid-column:auto;grid-row:auto}.map iframe{height:210px}.footer-inner{gap:25px}.footer-inner>p:not(.footer-tagline){width:100%}.footer-brand{padding:0}.footer-tagline{padding-top:15px;border-top:1px solid #555}.gallery{padding:13px}.gallery-top h2{font-size:18px}.gallery-bottom p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Keep card actions aligned and give each real-room crop its own framing. */
.card{display:flex;flex-direction:column}.card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start}.card-body .button{margin-top:auto}.space-photos .room-left{transform:scale(1.35);transform-origin:top left}.space-photos .room-center{transform:scale(1.8);transform-origin:45% 45%}.space-photos .room-right{transform:scale(1.65);transform-origin:100% 95%}

/* Show one featured room image on the home page. */
.space-photos{grid-template-columns:1fr;gap:0}.space-photos img{object-position:center 55%}

