*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f7f4ee;color:#151515}.header{height:78px;background:#0b0b0b;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 5%;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.brand img{width:54px;height:54px;object-fit:contain;border-radius:50%;background:#fff}.hotel-name{font-family:Georgia,serif;font-size:20px;font-weight:700;letter-spacing:1px}.tagline{font-size:11px;color:#c9a85a;margin-top:2px}.wa-top,.wa-large{background:#25D366;color:#06351a;text-decoration:none;font-weight:800;border-radius:12px;padding:12px 18px;display:inline-flex;align-items:center;gap:9px}.wa-top svg,.wa-large svg{width:23px;height:23px}.hero{min-height:590px;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.22)),url('hero.jpg') center/cover,#222;display:flex;align-items:center}.hero-overlay{color:#fff;max-width:760px;padding:75px 7%}.eyebrow{color:#c9a85a;font-weight:800;letter-spacing:3px;font-size:13px}.hero h1{font:700 58px Georgia,serif;margin:12px 0}.hero h1 span{color:#e7c76a}.hero p{font-size:18px;line-height:1.6}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.primary-btn,.secondary-btn,.book-btn{border:0;background:#c9a85a;color:#111;font-weight:900;padding:14px 20px;border-radius:10px;cursor:pointer;text-decoration:none;display:inline-block}.secondary-btn{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.45)}.section{padding:72px 5%;max-width:1250px;margin:auto}.section-head{text-align:center;max-width:800px;margin:0 auto 40px}.section-head h2{font:700 42px Georgia,serif;margin:8px 0}.section-head p{color:#666;line-height:1.6}.gallery-section{max-width:1400px}.wide-carousel{height:500px;position:relative;border-radius:24px;overflow:hidden;background:#222;box-shadow:0 18px 50px rgba(0,0,0,.15)}.gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .25s}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;border:0;border-radius:50%;background:rgba(0,0,0,.58);color:#fff;font-size:38px;line-height:1;cursor:pointer}.gallery-arrow.prev{left:18px}.gallery-arrow.next{right:18px}.gallery-caption{position:absolute;left:25px;right:25px;bottom:25px;display:flex;justify-content:space-between;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(0,0,0,.75),rgba(0,0,0,.25));padding:14px 17px;border-radius:13px}.gallery-caption strong{font:700 22px Georgia,serif}.gallery-caption span{font-size:13px}.gallery-dots{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);display:flex;gap:7px}.gallery-dot,.dot{width:8px;height:8px;border:0;border-radius:50%;background:#aaa;padding:0;cursor:pointer}.gallery-dot.active,.dot.active{background:#fff;transform:scale(1.3)}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.room-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 12px 35px rgba(0,0,0,.09)}.carousel{height:280px;position:relative;background:#ddd;overflow:hidden}.carousel>img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .2s}.carousel button.prev,.carousel button.next{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;font-size:30px;cursor:pointer}.carousel .prev{left:12px}.carousel .next{right:12px}.dots{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.room-body{padding:24px}.pill{display:inline-block;background:#eee8db;color:#6e5520;border-radius:20px;padding:7px 11px;font-size:11px;font-weight:900}.pill.gold{background:#f5e4b3}.pill.red{background:#f4d5d1;color:#8a2419}.room-body h3{font:700 28px Georgia,serif;margin:12px 0 7px}.room-body p{color:#666;min-height:50px;line-height:1.5}.room-meta{display:flex;align-items:baseline;gap:8px;margin:18px 0}.room-meta b{font-size:25px}.room-meta span{color:#777}.book-btn{width:100%}.dark{max-width:none;background:#101010;color:#fff}.dark .section-head p{color:#aaa}.availability{max-width:1150px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.avail-card{background:#181818;border:1px solid #333;border-radius:18px;padding:22px}.avail-card h3{margin:0 0 6px;font:700 23px Georgia,serif;color:#e8c96e}.avail-card p{color:#bbb}.room-numbers{display:flex;flex-wrap:wrap;gap:8px}.room-number{background:#e9f8ee;color:#14652f;border:1px solid #a7ddb9;border-radius:9px;padding:7px 10px;font-weight:700;font-size:13px}.room-number.sold{background:#eee;color:#888;border-color:#ddd;text-decoration:line-through}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.amenity-grid>div{background:#fff;border-radius:16px;padding:22px;display:grid;gap:6px;box-shadow:0 8px 25px rgba(0,0,0,.06);font-size:24px}.amenity-grid strong{font-size:17px}.amenity-grid span{font-size:13px;color:#777}.contact{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact h2{font:700 36px Georgia,serif}.contact p{color:#666;line-height:1.6}.wa-large{font-size:17px;padding:17px 22px}footer{background:#080808;color:#bbb;text-align:center;padding:35px 20px;line-height:1.7}footer img{width:62px;height:62px;object-fit:contain;border-radius:50%;background:#fff}footer strong{color:#e8c96e;font:700 22px Georgia,serif}footer small{display:block;margin-top:14px;color:#777}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.76);z-index:50;align-items:center;justify-content:center;padding:18px}.modal.show{display:flex}.modal-box{background:#fff;width:min(560px,100%);max-height:94vh;overflow:auto;border-radius:22px;padding:30px;position:relative}.close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:36px;cursor:pointer}.modal-box h2{font:700 36px Georgia,serif;margin:5px 0}.muted{color:#777;line-height:1.5}.modal form{display:grid;gap:12px;margin-top:20px}.modal input,.modal select{width:100%;padding:14px;border:1px solid #ddd;border-radius:10px;font-size:16px;background:#fff;color:#111}.modal input:focus,.modal select:focus{outline:2px solid #c9a85a;border-color:#c9a85a}.modal label{font-size:13px;font-weight:700;display:grid;gap:6px}.date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stay-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:13px;background:#f6f2e8;border-radius:12px}.stay-summary div{display:grid;gap:4px}.stay-summary span{font-size:12px;color:#777}.stay-summary strong{font-size:17px}.stay-summary .grand{border-left:1px solid #ddd;padding-left:10px}.pay-btn:disabled{opacity:.6;cursor:wait}.payment-note{font-size:12px;color:#777;text-align:center;margin:0}.success{text-align:center;padding:42px 30px}.success-icon{width:64px;height:64px;border-radius:50%;background:#e9f8ee;color:#16813c;font-size:38px;display:grid;place-items:center;margin:0 auto 18px}.success h2{margin-bottom:12px}@media(max-width:900px){.room-grid,.availability,.amenity-grid{grid-template-columns:1fr}.wide-carousel{height:420px}.hero h1{font-size:45px}.contact{display:block}.wa-large{margin-top:20px}.hotel-name{font-size:16px}.tagline{display:none}}@media(max-width:600px){.header{padding:9px 4%;height:70px}.brand img{width:48px;height:48px}.wa-top{padding:9px 11px;font-size:13px}.hero{min-height:520px}.hero-overlay{padding:55px 6%}.hero h1{font-size:39px}.section{padding:55px 5%}.section-head h2{font-size:34px}.wide-carousel{height:360px;border-radius:18px}.gallery-arrow{width:42px;height:42px;font-size:30px}.carousel{height:250px}.date-grid,.stay-summary{grid-template-columns:1fr}.stay-summary .grand{border-left:0;border-top:1px solid #ddd;padding-left:0;padding-top:8px}.modal-box{padding:25px 20px}.modal-box h2{font-size:31px}}

/* Live availability + automatic hero carousel */
.hero{position:relative;overflow:hidden;background:#111}
.hero-slides{position:absolute;inset:0;z-index:0}
.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.04);transition:opacity 1s ease,transform 6s ease}
.hero-slide.active{opacity:1;transform:scale(1)}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.35) 55%,rgba(0,0,0,.5));z-index:1}
.hero-overlay{position:relative;z-index:2}
.hero-dots{position:absolute;z-index:3;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.hero-dot{width:9px;height:9px;border-radius:50%;border:1px solid #fff;background:rgba(255,255,255,.45);padding:0;cursor:pointer}
.hero-dot.active{background:#d3ad55;transform:scale(1.2)}
.availability-badge{display:inline-flex;align-items:center;gap:7px;margin-bottom:10px;padding:7px 12px;border-radius:999px;background:#e7f8eb;color:#128a3a;font-weight:800;font-size:.78rem;letter-spacing:.04em;border:1px solid #b9e8c4}
.availability-badge.soldout{background:#fdeaea;color:#c62828;border-color:#f2b8b8}
.book-btn.soldout-btn{background:#777!important;color:#fff!important;cursor:not-allowed!important;opacity:.8}
.room-card .room-body{position:relative}
.room-card .availability-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:#19a84a;box-shadow:0 0 0 3px rgba(25,168,74,.12)}
.room-card .availability-badge.soldout:before{background:#d32f2f;box-shadow:0 0 0 3px rgba(211,47,47,.12)}
@media(max-width:700px){.hero{min-height:620px}.hero-slide{background-position:center}.hero-dots{bottom:16px}.availability-badge{font-size:.72rem}}

.live-total{display:inline-flex;align-items:center;justify-content:center;margin-top:14px;padding:10px 18px;border-radius:999px;background:#e7f8eb;color:#128a3a;border:1px solid #b9e8c4;font-weight:900;letter-spacing:.05em}.live-total:before{content:"";width:9px;height:9px;border-radius:50%;background:#19a84a;margin-right:8px;box-shadow:0 0 0 4px rgba(25,168,74,.12)}.live-total.soldout{background:#fdeaea;color:#c62828;border-color:#f2b8b8}.live-total.soldout:before{background:#d32f2f;box-shadow:0 0 0 4px rgba(211,47,47,.12)}
/* FINAL FRONT-PAGE OVERRIDES */
.nav{height:44px;background:#c9a85a;display:flex;align-items:center;gap:4px;padding:0 7%;position:sticky;top:78px;z-index:19}.nav a{color:#111;text-decoration:none;font-weight:900;font-size:12px;padding:10px 18px}.nav a:hover{background:#111;color:#e8c96e}.nav .nav-book{margin-left:auto;background:#111;color:#e8c96e;border-radius:3px}.top-contact{font-size:13px;color:#fff;margin-left:auto;margin-right:20px}.hero{min-height:560px;position:relative;overflow:hidden;background:#111}.hero-slides{position:absolute;inset:0;z-index:0}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}.hero-slide.active{opacity:1}.hero-slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.28) 58%,rgba(0,0,0,.55));z-index:1}.hero-overlay{position:relative;z-index:2;max-width:1250px;width:100%;margin:auto;padding:55px 7%;display:flex;justify-content:space-between;align-items:center;gap:40px}.hero-copy{max-width:650px}.hero-copy h1{font:700 60px Georgia,serif;line-height:.98;margin:10px 0 18px;color:#fff}.hero-copy h1 span{color:#e7c76a}.hero-copy>p:not(.eyebrow){font-size:18px;color:#fff;max-width:620px}.hero-features{display:flex;gap:35px;margin-top:30px}.hero-features span{display:flex;align-items:center;gap:10px;color:#e5b92f;font-size:27px}.hero-features b{font-size:13px;color:#fff;line-height:1.2}.hero-book{width:410px;background:rgba(12,12,12,.82);padding:26px;border-radius:4px;box-shadow:0 12px 40px rgba(0,0,0,.35)}.hero-book h3{text-align:center;color:#e7c76a;font:700 18px Georgia,serif;margin:0 0 20px}.book-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.book-grid label{font-size:11px;color:#fff;font-weight:900}.book-grid input,.book-grid select{margin-top:7px;width:100%;padding:12px;border:0;border-radius:2px;font-size:13px}.hero-book .primary-btn{width:100%;margin-top:18px}.hero-dots{bottom:15px}.stats{background:#101010;color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:18px 8%;gap:20px}.stats>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;border-right:1px solid #444;padding-right:18px}.stats>div:last-child{border-right:0}.stats>div:first-letter{font-size:25px}.stats b{color:#e7c76a;font:700 24px Georgia,serif}.stats span{grid-column:2;color:#fff;font-size:13px}.rooms-section{background:#111;color:#fff;max-width:none}.rooms-section .section-head p:not(.eyebrow){color:#bbb}.room-grid{max-width:1260px;margin:auto}.room-card{box-shadow:none}.price-tag{position:absolute;right:12px;top:12px;background:rgba(20,20,20,.86);color:#e7c76a;padding:8px 12px;border-radius:4px;font-weight:900;font-size:20px;z-index:3}.price-tag small{display:block;color:#fff;font-size:11px;text-align:right}.room-body{color:#111}.room-body p{min-height:25px}.availability-badge{margin-right:6px}.live-total{margin-top:10px}.about{display:flex;justify-content:center;text-align:center}.about>div{max-width:800px}.hero-book input:focus,.hero-book select:focus{outline:2px solid #c9a85a}@media(max-width:1000px){.top-contact{display:none}.nav{top:70px;padding:0 2%;overflow:auto;white-space:nowrap}.nav a{padding:10px 12px}.hero-overlay{padding:45px 5%}.hero-book{width:360px}.stats{padding:18px 4%}}@media(max-width:760px){.header{position:relative}.nav{position:relative;top:auto}.hero{min-height:700px}.hero-overlay{display:block;padding:55px 6%}.hero-copy h1{font-size:46px}.hero-features{gap:18px}.hero-book{width:100%;margin-top:30px}.stats{grid-template-columns:1fr 1fr}.stats>div:nth-child(2){border-right:0}.stats>div{border-bottom:1px solid #333;padding-bottom:10px}.room-grid{grid-template-columns:1fr}.price-tag{font-size:17px}}@media(max-width:520px){.hotel-name{font-size:15px}.wa-top{padding:9px 12px}.hero-copy h1{font-size:40px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-features{justify-content:space-between}.hero-features span{font-size:22px}.hero-features b{font-size:10px}.book-grid{gap:10px}.stats{grid-template-columns:1fr 1fr;font-size:12px}.stats b{font-size:19px}.stats span{font-size:11px}}
/* V5 critical fix: hero carousel images must be layered, never stacked in document flow. */
.hero{position:relative!important;overflow:hidden!important;isolation:isolate;min-height:590px}
.hero-slides{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important;z-index:0!important}
.hero-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;opacity:0!important;visibility:hidden!important;overflow:hidden!important;z-index:0!important;background:none!important;transform:scale(1.04);transition:opacity 1s ease,transform 6s ease,visibility 0s linear 1s!important}
.hero-slide.active{opacity:1!important;visibility:visible!important;z-index:1!important;transform:scale(1)!important;transition:opacity 1s ease,transform 6s ease,visibility 0s!important}
.hero-slide img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;display:block!important;object-fit:cover!important;object-position:center!important;margin:0!important;padding:0!important}
.hero-overlay{position:relative!important;z-index:3!important;width:100%!important}
.hero:after{z-index:2!important;pointer-events:none!important}
.hero-dots{z-index:4!important}
@media(max-width:700px){
  .hero{min-height:650px!important}
  .hero-slide img{object-position:center center!important}
  .hero-overlay{padding-top:42px!important;padding-bottom:70px!important}
  .hero h1{font-size:40px!important;line-height:1.02!important}
  .hero-book{margin-top:20px!important}
}
