
:root{--maroon:#741525;--deep:#260a10;--gold:#d9ad55;--green:#129447;--cream:#fff8ef;--ink:#241719;--muted:#706365;--line:#eaded3;--shadow:0 20px 60px rgba(55,20,20,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);line-height:1.7;background:#fff}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,92%);margin:auto}
.notice{background:#21090e;color:#fff;text-align:center;font-size:13px;padding:8px}.notice a{color:#f2d083;margin-left:16px;font-weight:800}
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid #eee;transition:.25s}header.scrolled{box-shadow:0 8px 28px rgba(0,0,0,.12)}
.nav{min-height:76px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--maroon),#ba344b);color:#fff;font-size:23px}.brand strong{display:block;font:800 18px "Playfair Display",serif;color:var(--maroon)}.brand small{display:block;font-size:9px;font-weight:800;letter-spacing:.05em;color:#756668}nav{display:flex;align-items:center;gap:21px;font-size:13px;font-weight:800}nav a{position:relative}nav a:not(.nav-call):after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--gold);transition:.25s}nav a:hover:after{width:100%}.nav-call{background:var(--maroon);color:#fff;padding:10px 16px;border-radius:999px}.menu-btn{display:none;border:0;background:none;font-size:28px}
.hero{height:min(88vh,800px);min-height:650px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url("../assets/images/exterior-night.webp") center/cover;animation:heroZoom 16s ease-in-out infinite alternate}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,3,8,.9),rgba(22,3,8,.55),rgba(22,3,8,.18))}.hero-content{position:relative;z-index:2;padding-top:45px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.18em;color:var(--gold)}.eyebrow.dark{color:var(--maroon)}h1,h2,h3{line-height:1.12}.hero h1{font:800 clamp(40px,6vw,72px) "Playfair Display",serif;max-width:850px;margin:15px 0 8px}.hero h2{font-size:clamp(20px,3vw,31px);margin:0 0 16px}.lead{font-size:18px;max-width:700px;color:#f8e9e7}.buttons{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}.btn{min-height:48px;padding:12px 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:900;transition:.25s;border:0}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(0,0,0,.2)}.btn-gold{background:var(--gold);color:#21150e}.btn-green{background:var(--green);color:#fff}.btn-light{background:#fff;color:var(--maroon)}.btn-maroon{background:var(--maroon);color:#fff}.hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.hero-pills span{font-size:12px;padding:6px 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.08)}
.contact-strip{background:#fff;box-shadow:0 12px 38px rgba(30,15,10,.08);position:relative;z-index:5}.strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}.strip-grid a{padding:20px;border-right:1px solid var(--line);transition:.25s}.strip-grid a:last-child{border:0}.strip-grid a:hover{background:var(--cream);transform:translateY(-3px)}.strip-grid b,.strip-grid span{display:block}.strip-grid span{font-size:12px;color:var(--muted)}
.section{padding:100px 0}.cream{background:var(--cream)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.image-card{position:relative}.image-card img{width:100%;height:520px;object-fit:cover;border-radius:26px;box-shadow:var(--shadow)}.image-label{position:absolute;left:20px;right:20px;bottom:20px;padding:12px 15px;border-radius:13px;background:rgba(27,5,9,.86);color:#fff;font-weight:800}.text h2,.section-head h2,.center h2,.banner-box h2,.cta-inner h2{font:800 clamp(32px,4vw,50px) "Playfair Display",serif;color:var(--maroon);margin:8px 0 20px}.text p,.section-head>p,.center>p{color:var(--muted)}.feature-list{margin-top:25px}.feature-list>div{display:flex;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.feature-list>b,.feature-list>div>b{color:var(--gold)}.feature-list strong,.feature-list small{display:block}.feature-list small{color:var(--muted)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-head>p{max-width:500px;margin:0}.room-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.room{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.3s}.room:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.room img{height:225px;width:100%;object-fit:cover}.room div{padding:19px}.room h3{font:700 23px "Playfair Display",serif;color:var(--maroon);margin:0 0 8px}.room p{font-size:13px;color:var(--muted);min-height:65px}.room a{font-size:13px;color:var(--maroon);font-weight:900}
.center{text-align:center;max-width:760px;margin:auto}.facility-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}.facility{border:1px solid var(--line);border-radius:20px;padding:28px;background:#fff;transition:.3s}.facility:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.facility span{font-size:31px}.facility h3{color:var(--maroon);margin:9px 0 4px}.facility p{margin:0;color:var(--muted);font-size:14px}
.photo-banner{padding:30px 0}.banner-box{min-height:270px;border-radius:30px;padding:48px;background:linear-gradient(110deg,rgba(67,6,15,.97),rgba(122,21,37,.82)),url("../assets/images/exterior-day.webp") center/cover;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.banner-box h2,.cta-inner h2{color:#fff}.banner-box p,.cta-inner p{color:#f4dedb}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px}.gallery-item{border:0;padding:0;background:none;overflow:hidden;border-radius:18px;cursor:pointer;position:relative}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.6s}.gallery-item:hover img{transform:scale(1.08)}.gallery-item:after{content:"↗";position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.55);opacity:0;transition:.2s}.gallery-item:hover:after{opacity:1}.gallery-item.big{grid-column:span 2;grid-row:span 2}
.map-wrap{min-height:500px;overflow:hidden;border-radius:25px;box-shadow:var(--shadow)}.map-wrap iframe{width:100%;height:500px;border:0}.address-box{display:flex;gap:14px;background:#fff;border:1px solid var(--line);padding:16px;border-radius:16px}.address-box span{font-size:25px}.address-box p{margin:3px 0}.small-note{font-size:12px!important;color:#8b7b77!important}.narrow{max-width:850px}.faq details{background:#fff;border:1px solid var(--line);border-radius:15px;margin:11px 0}.faq summary{cursor:pointer;padding:18px 20px;font-weight:900;color:var(--maroon)}.faq details p{padding:0 20px 18px;color:var(--muted)}
.final-cta{background:linear-gradient(115deg,var(--maroon),#3b0710);padding:68px 0;color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.final-cta .eyebrow{color:var(--gold)}
footer{background:#1c0f11;color:#d8c9c6;padding-top:55px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px;padding-bottom:45px}.footer-grid h3{color:#fff;font-size:15px}.footer-grid a,.footer-grid span{display:block;margin:7px 0;font-size:13px}.footer-brand strong{color:#fff}.copyright{text-align:center;border-top:1px solid rgba(255,255,255,.1);padding:17px;font-size:12px}
.floating{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;flex-direction:column;gap:10px}.floating a{width:55px;height:55px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;box-shadow:0 10px 26px rgba(0,0,0,.28)}.float-call{background:var(--maroon)}.float-wa{background:var(--green)}
.lightbox{display:none;position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.94);place-items:center;padding:25px}.lightbox.open{display:grid}.lightbox img{max-width:94vw;max-height:88vh;border-radius:12px}.lightbox button{position:absolute;right:20px;top:8px;border:0;background:none;color:#fff;font-size:48px;cursor:pointer}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}@keyframes heroZoom{to{transform:scale(1.08)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:1050px){.room-grid{grid-template-columns:repeat(2,1fr)}.facility-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.notice a{display:block;margin:2px 0 0}.nav{min-height:68px}.menu-btn{display:block}nav{display:none;position:absolute;left:4%;right:4%;top:68px;background:#fff;padding:14px;border-radius:18px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}nav.open{display:flex}.nav-call{text-align:center}.hero{min-height:720px}.hero h1{font-size:43px}.strip-grid{grid-template-columns:repeat(2,1fr)}.strip-grid a{border-bottom:1px solid var(--line)}.section{padding:75px 0}.two-col{grid-template-columns:1fr;gap:40px}.image-card img{height:390px}.section-head{display:block}.section-head>p{margin-top:14px}.room-grid,.facility-grid{grid-template-columns:1fr}.banner-box,.cta-inner{display:block;padding:35px}.banner-box .btn,.cta-inner .btn{margin-top:18px}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:180px}.gallery-item.big{grid-column:span 2}.footer-grid{grid-template-columns:1fr}}
@media(max-width:430px){.strip-grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery-item.big{grid-column:span 1;grid-row:span 1}.gallery-item{height:240px}.hero h1{font-size:37px}.brand small{font-size:8px}}
