:root{--ink:#161514;--gold:#d7a943;--paper:#f7f4ee;--white:#fff;--muted:#716d66;--line:rgba(22,21,20,.14)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6}
img{display:block;width:100%}
a{color:inherit;text-decoration:none}
.topbar{position:absolute;z-index:10;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:24px clamp(24px,5vw,72px);color:#fff;border-bottom:1px solid rgba(255,255,255,.22)}
.brand img{width:180px;height:72px;object-fit:contain;object-position:left center}
nav{display:flex;gap:32px;font-size:.92rem}
nav a{opacity:.88}nav a:hover{opacity:1}
.header-cta{padding:12px 20px;border:1px solid var(--gold);color:var(--gold);font-weight:600}
.hero{position:relative;min-height:760px;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.hero-image,.hero-overlay{position:absolute;inset:0;width:100%;height:100%}
.hero-image{object-fit:cover;object-position:center;transform:scale(1.14)}
.hero-overlay{background:linear-gradient(90deg,rgba(6,6,6,.84) 0%,rgba(6,6,6,.56) 48%,rgba(6,6,6,.14) 100%),linear-gradient(0deg,rgba(0,0,0,.62),transparent 50%)}
.hero-content{position:relative;z-index:2;max-width:760px;padding:180px clamp(24px,8vw,120px) 92px}
.eyebrow{margin:0 0 14px;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:700;color:var(--gold)}
.eyebrow.dark{color:#98711e}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.1;margin:0}
h1{font-size:clamp(2.55rem,4.8vw,4.5rem);max-width:720px}
h2{font-size:clamp(2.25rem,4vw,4.1rem)}
h3{font-size:1.55rem}
.hero-text{font-size:clamp(1.05rem,1.7vw,1.28rem);max-width:600px;margin:24px 0 30px;color:rgba(255,255,255,.88)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;min-height:52px;align-items:center;justify-content:center;padding:14px 24px;font-weight:700;transition:.2s ease;border:1px solid var(--gold)}
.btn-primary{background:var(--gold);color:#19140a}.btn-primary:hover{background:#e5bc64}
.btn-secondary{background:rgba(0,0,0,.2);color:#fff;border-color:rgba(255,255,255,.65);backdrop-filter:blur(8px)}
.btn-secondary:hover{background:#fff;color:#171717}
.hero-note{margin:22px 0 0;font-size:.9rem;color:rgba(255,255,255,.72)}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);padding:0 clamp(24px,5vw,72px);background:#fff;border-bottom:1px solid var(--line)}
.benefits article{padding:38px 28px;border-right:1px solid var(--line)}.benefits article:last-child{border-right:0}
.benefits span{display:block;color:var(--gold);font-size:.72rem;font-weight:700;margin-bottom:8px}
.benefits strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.18rem}
.benefits p{margin:5px 0 0;color:var(--muted);font-size:.9rem}
.section{padding:110px clamp(24px,7vw,100px)}
.section-heading{max-width:780px;margin-bottom:52px}.section-heading>p:last-child{color:var(--muted);font-size:1.08rem;max-width:620px}
.room-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.room-card{background:#fff}.room-card img{height:340px;object-fit:cover}.room-card div{padding:28px}.room-card p{color:var(--muted);margin-bottom:0}
.room-wide{grid-row:span 2}.room-wide img{height:520px}
.room-list{background:var(--ink);color:#fff;padding:38px;display:flex;flex-direction:column;justify-content:center}
.room-list ul{list-style:none;padding:0;margin:12px 0 22px}.room-list li{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.text-link{color:var(--gold);font-weight:700}
.corporate{display:grid;grid-template-columns:1.05fr .95fr;background:var(--ink);color:#fff}
.corporate-image img{height:100%;min-height:610px;object-fit:cover}
.corporate-copy{padding:90px clamp(34px,7vw,100px);display:flex;flex-direction:column;justify-content:center}
.corporate-copy>p:not(.eyebrow){color:rgba(255,255,255,.72);font-size:1.06rem}
.corporate-copy ul{padding-left:20px;margin:10px 0 30px}.corporate-copy li{padding:6px 0}
.corporate-copy .btn{align-self:flex-start}
.gallery-grid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:260px 260px;gap:18px}
.gallery-grid figure{margin:0;overflow:hidden}.gallery-grid img{height:100%;object-fit:cover;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.025)}
.gallery-main{grid-row:span 2}
.reviews{background:#eee8dc;overflow:hidden}
.reviews-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}
.reviews-summary{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:12px;text-align:right}.reviews-summary strong{font-family:Georgia,"Times New Roman",serif;font-size:2.3rem;line-height:1}.reviews-summary>span:last-child{grid-column:1/-1;color:var(--muted);font-size:.84rem}
.stars{color:#b88418;letter-spacing:.12em;font-size:1rem}
.review-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:2px 1px 16px}.review-track::-webkit-scrollbar{display:none}
.review-card{flex:0 0 calc((100% - 40px)/3);min-height:300px;background:#fff;padding:34px;display:flex;flex-direction:column;justify-content:space-between;scroll-snap-align:start;border-top:3px solid var(--gold)}
.review-card blockquote{margin:24px 0 30px;font-family:Georgia,"Times New Roman",serif;font-size:1.22rem;line-height:1.5}.review-card p{margin:0;display:grid}.review-card p span{color:var(--muted);font-size:.84rem;margin-top:2px}
.carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px}.carousel-btn{width:46px;height:46px;border:1px solid var(--ink);border-radius:50%;background:transparent;color:var(--ink);font-size:1.2rem;cursor:pointer}.carousel-btn:hover,.carousel-btn:focus-visible{background:var(--ink);color:#fff}.carousel-dots{display:flex;gap:8px}.carousel-dot{width:8px;height:8px;border:0;border-radius:50%;background:#b9b0a0;padding:0;cursor:pointer}.carousel-dot.active{background:var(--ink);transform:scale(1.3)}
.faq{background:#fff}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px}
.faq details{border-top:1px solid var(--line);padding:20px 0}
.faq summary{cursor:pointer;font-family:Georgia,"Times New Roman",serif;font-size:1.18rem;font-weight:700;list-style:none;padding-right:32px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;color:var(--gold);font-family:"DM Sans",sans-serif}
.faq details[open] summary::after{content:"−"}
.faq details p{color:var(--muted);margin:12px 34px 0 0}
.final-cta{text-align:center;background:#24211d;color:#fff;padding:110px 24px}.final-cta h2{max-width:800px;margin:0 auto}.final-cta>p:not(.eyebrow){color:rgba(255,255,255,.7)}
.center{justify-content:center;margin-top:28px}
footer{background:#0d0d0d;color:rgba(255,255,255,.68);text-align:center;padding:56px 24px;font-size:.9rem}
footer img{width:230px;height:92px;object-fit:contain;margin:0 auto 18px}footer p{margin:5px}
.whatsapp-float{position:fixed;z-index:20;right:24px;bottom:24px;width:62px;height:62px;display:flex;align-items:center;justify-content:center;background:#25d366;color:#fff;border:2px solid rgba(255,255,255,.9);box-shadow:0 10px 28px rgba(0,0,0,.28);border-radius:50%;transition:transform .2s ease,background .2s ease}
.whatsapp-float:hover{background:#1fbd5a;transform:translateY(-3px) scale(1.03)}
.whatsapp-float:focus-visible{outline:3px solid #fff;outline-offset:3px}
.whatsapp-float svg{width:35px;height:35px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.whatsapp-float svg path:last-child{fill:currentColor;stroke:none}
@media(max-width:900px){nav{display:none}.header-cta{display:none}.topbar{padding:16px 22px}.brand img{width:150px;height:60px}.hero{min-height:690px}.hero-content{padding:150px 24px 62px}.hero-overlay{background:linear-gradient(0deg,rgba(5,5,5,.88),rgba(5,5,5,.24) 85%)}.benefits{grid-template-columns:1fr 1fr}.benefits article:nth-child(2){border-right:0}.benefits article:nth-child(-n+2){border-bottom:1px solid var(--line)}.room-grid,.corporate{grid-template-columns:1fr}.room-wide{grid-row:auto}.room-wide img,.room-card img{height:360px}.corporate-image img{min-height:360px}.corporate-copy{padding:70px 24px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 220px}.gallery-main{grid-column:span 2;grid-row:auto}.reviews-heading{align-items:flex-start}.review-card{flex-basis:calc((100% - 20px)/2)}.faq-grid{grid-template-columns:1fr}}
@media(max-width:560px){h1{font-size:2.45rem}.hero-actions{display:grid}.btn{width:100%}.benefits{grid-template-columns:1fr}.benefits article{border-right:0!important;border-bottom:1px solid var(--line)}.section{padding:78px 20px}.room-wide img,.room-card img{height:280px}.gallery-grid{display:block}.gallery-grid figure{height:250px;margin-bottom:12px}.reviews-heading{display:block}.reviews-summary{display:flex;text-align:left;margin-top:22px}.reviews-summary>span:last-child{display:none}.review-card{flex-basis:100%;min-height:310px}.final-cta{padding:78px 20px}.whatsapp-float{right:18px;bottom:18px;width:58px;height:58px}}
