
:root{--navy:#03172b;--gold:#c99a39;--gold2:#e4bc62;--teal:#0bafa9;--cream:#fbf8f0;--ink:#111;--line:#e8dcc8;--max:1180px;--full:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}.wrap{width:min(100% - 32px,var(--max));margin:auto}.full-wrap{width:min(100% - 36px,var(--full));margin:auto}
#wpadminbar{z-index:999999!important}body.admin-bar .site-header{top:32px!important}@media(max-width:782px){body.admin-bar .site-header{top:46px!important}}
.site-header{position:absolute;inset:0 0 auto 0;z-index:9999;color:#fff}.topbar{background:rgba(3,23,43,.82);border-bottom:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px)}.topbar-inner{min-height:42px;display:flex;justify-content:space-between;align-items:center;gap:16px}.topbar-left,.topbar-right{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.topbar-right{font-size:.84rem}.topbar-right strong{color:var(--gold2)}.social-icon{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18)}.social-icon svg{width:14px;height:14px;fill:#fff}
.mainnav{background:linear-gradient(180deg,rgba(3,23,43,.68),rgba(3,23,43,.15) 80%,transparent)}.nav-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand img{height:70px;width:auto;max-width:310px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.35))}.site-menu{display:flex;align-items:center;gap:7px}.site-menu a{color:#fff;text-transform:uppercase;letter-spacing:.11em;font-size:.82rem;font-weight:850;padding:12px 10px;border-radius:999px}.site-menu a:hover{color:var(--gold2)}.site-menu ul{display:flex;gap:7px;margin:0;padding:0;list-style:none}.nav-cta{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#061c34!important;margin-left:10px;padding:13px 22px!important}.menu-toggle{display:none;background:rgba(3,23,43,.35);border:1px solid rgba(255,255,255,.35);width:44px;height:44px;border-radius:8px}.menu-toggle span{display:block;height:2px;background:#fff;margin:6px}
.hero-slider{position:relative;width:100%;aspect-ratio:16/9;min-height:640px;overflow:hidden;background:var(--navy)}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity .8s}.hero-slide.active{opacity:1}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,23,43,.96),rgba(3,23,43,.82) 34%,rgba(3,23,43,.38) 60%,transparent)}.hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:center;transform:translateY(-25px);padding-top:110px}.hero-content{max-width:720px;color:#fff}.hero-badge{color:var(--gold2);letter-spacing:.18em;text-transform:uppercase;font-weight:900}.hero-badge:before{content:"✦";margin-right:10px}.hero-content h1,.hero-content h2{font-family:Georgia,serif;font-size:clamp(3.2rem,5.8vw,7.2rem);line-height:1.04;font-weight:500;margin:18px 0;color:#fff;text-shadow:0 12px 34px rgba(0,0,0,.36)}.hero-title-line{display:block}.hero-title-line.is-highlight{color:var(--gold2)}.gold-rule{width:155px;height:2px;background:var(--gold2);margin:22px 0}.hero-content p{color:#edf7fa;font-size:clamp(1rem,1.35vw,1.28rem);max-width:610px}.hero-actions{display:flex;gap:18px;flex-wrap:wrap;margin-top:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:2px;padding:15px 30px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.82rem;min-height:50px}.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#03172b}.btn-outline{background:rgba(3,23,43,.24);border:1px solid var(--gold2);color:var(--gold2)}.btn-dark{background:var(--navy);color:#fff}.btn-outline-dark{border:1px solid var(--navy);color:var(--navy);background:#fff}
.booking-strip{padding:30px 0 38px;background:#fff;border-top:4px solid rgba(228,188,98,.78)}.booking-box{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:18px;align-items:end;background:var(--navy);border:1px solid rgba(228,188,98,.34);border-radius:14px;box-shadow:0 18px 46px rgba(3,23,43,.18);padding:24px}.field label{display:block;color:#cbdde4;text-transform:uppercase;font-size:.72rem;letter-spacing:.11em;font-weight:900;margin-bottom:6px}.field input,.field select{width:100%;height:50px;border:1px solid rgba(228,188,98,.25);background:#071f3a;color:#fff;border-radius:8px;padding:0 14px}
.section{padding:84px 0}.section-soft{background:#f7fafb}.split-grid{display:grid;grid-template-columns:.95fr 1.2fr;gap:58px;align-items:center}.eyebrow{display:block;color:var(--gold);font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;font-weight:950;margin-bottom:10px}.copy-block h2,.section-title h2{font-family:Georgia,serif;font-size:clamp(2.25rem,4vw,4rem);line-height:1.08;color:var(--navy);margin:0 0 18px}.copy-block h2 span,.section-title h2 span{color:var(--teal)}.copy-block p{color:#526474}.photo-card img{height:420px;width:100%;object-fit:cover;border-radius:18px;box-shadow:0 18px 48px rgba(3,23,43,.12)}.section-title{text-align:center;margin-bottom:36px}.section-title.compact{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;text-align:left}
.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.room-card{background:#fff;border:1px solid #e6edf1;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(3,23,43,.08)}.room-card img{height:215px;width:100%;object-fit:cover}.room-body{padding:22px}.room-body h3{margin:0 0 8px;color:var(--navy)}.rate{display:flex;justify-content:space-between;align-items:center;margin:16px 0}.rate strong{font-size:1.35rem;color:var(--teal)}
.amenity-strip{margin-top:34px;background:var(--navy);color:#fff;border-radius:14px;display:grid;grid-template-columns:repeat(6,1fr);overflow:hidden}.amenity-strip div{padding:22px 10px;text-align:center;border-right:1px solid rgba(255,255,255,.1);font-size:.77rem;text-transform:uppercase;letter-spacing:.07em}.amenity-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin:0 auto 10px;color:var(--gold2)}.amenity-icon svg{width:34px;height:34px}
.gallery-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-row img{height:190px;width:100%;object-fit:cover;border-radius:14px}
.contact-band-reference{background:#fff;padding:34px 0}.reference-contact-strip{display:grid;grid-template-columns:repeat(4,1fr);background:linear-gradient(180deg,#fffdf7,#fbf7ed);border:1px solid #e8dcc8;border-radius:18px;box-shadow:0 16px 38px rgba(3,23,43,.07);overflow:hidden}.contact-item{display:flex;align-items:center;gap:18px;padding:26px 30px;min-height:112px;border-right:1px solid #ded2bf}.contact-item:last-child{border-right:0}.contact-icon{flex:0 0 54px;width:54px;height:54px;color:#b38222;display:flex;align-items:center;justify-content:center}.contact-icon svg{width:48px;height:48px;stroke:#b38222}.contact-copy span{display:block;color:#9b6f16;font-size:1rem;font-weight:950;text-transform:uppercase;letter-spacing:.16em;margin-bottom:7px}.contact-copy strong,.contact-copy strong a{display:block;color:#111;font-size:1rem;font-weight:500}
.page-hero{padding:190px 0 90px;color:#fff;background:linear-gradient(90deg,rgba(3,23,43,.94),rgba(3,23,43,.5)),var(--page-bg) center/cover no-repeat}.page-hero h1{font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,5.6rem);margin:0}.page-hero p{max-width:760px;font-size:1.1rem}.content-card,.form-card{background:#fff;border:1px solid #e6edf1;border-radius:16px;padding:28px;box-shadow:0 18px 48px rgba(3,23,43,.12)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-group.full{grid-column:1/-1}.form-card input,.form-card select,.form-card textarea{width:100%;border:1px solid #d7e2e8;border-radius:10px;padding:13px}.form-card textarea{min-height:130px}.alert{border-radius:12px;padding:14px;margin-bottom:18px}.alert-success{background:#e6fff4}.alert-error{background:#fff1f2;color:#9f1239}
.site-footer{background:var(--navy);color:#cfe0e6}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .9fr 1fr;gap:32px;padding:56px 0}.footer-logo img{height:88px;max-width:360px}.site-footer a{color:#cfe0e6}.site-footer h3{color:#fff;text-transform:uppercase;font-size:.83rem;letter-spacing:.12em}.site-footer ul{padding:0;margin:0;list-style:none}.socials{display:flex;gap:10px}.socials a{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;color:var(--gold2)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:16px;text-align:center}.floating-whatsapp{position:fixed;right:18px;bottom:18px;background:#25d366;color:#fff;padding:12px 18px;border-radius:999px;font-weight:900;z-index:999}
@media(max-width:1120px){.brand img{height:58px}.menu-toggle{display:block}.site-menu{position:absolute;left:0;right:0;top:132px;background:rgba(3,23,43,.98);display:none;flex-direction:column;align-items:stretch;padding:16px 18px}.site-menu.open{display:flex}.site-menu ul{display:block}.booking-box,.split-grid,.room-grid,.footer-grid{grid-template-columns:1fr}.amenity-strip{grid-template-columns:repeat(3,1fr)}.gallery-row{grid-template-columns:repeat(2,1fr)}.reference-contact-strip{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.wrap,.full-wrap{width:min(100% - 24px,var(--max))}.topbar-inner{display:block;padding:8px 0}.nav-inner{min-height:76px}.brand img{height:48px}.site-menu{top:126px}.hero-slider{height:640px;aspect-ratio:auto}.hero-inner{transform:translateY(-8px);padding-top:90px}.hero-content h1,.hero-content h2{font-size:clamp(2.45rem,12vw,3.7rem)}.hero-actions .btn{width:100%}.booking-box{grid-template-columns:1fr}.section{padding:58px 0}.amenity-strip{grid-template-columns:1fr 1fr}.gallery-row{grid-template-columns:1fr}.reference-contact-strip{grid-template-columns:1fr}.contact-item{border-right:0;border-bottom:1px solid #ded2bf}.form-grid{grid-template-columns:1fr}.section-title.compact{display:block;text-align:center}.floating-whatsapp{left:12px;right:12px;text-align:center}}


/* Full room management and room detail page */
.room-meta-line{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.room-meta-line span{display:inline-flex;background:#fbf8f0;color:#9b6f16;border:1px solid #eadfc9;border-radius:999px;padding:5px 10px;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.room-detail-grid{display:grid;grid-template-columns:1fr 360px;gap:32px;align-items:start}
.room-main-image{width:100%;height:520px;object-fit:cover;border-radius:18px;box-shadow:0 18px 48px rgba(3,23,43,.12);margin-bottom:24px}
.room-booking-card{position:sticky;top:110px;background:#fff;border:1px solid #e8dcc8;border-radius:18px;box-shadow:0 18px 48px rgba(3,23,43,.12);padding:26px}
.room-booking-card h3{font-family:Georgia,serif;color:var(--navy);font-size:1.7rem;margin:0 0 18px}
.room-booking-card div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid #eee5d4;padding:13px 0}
.room-booking-card div span{color:#9b6f16;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:950}
.room-booking-card div strong{color:#111;text-align:right}
.booking-note{background:#fbf8f0;border-left:4px solid var(--gold);padding:12px 14px;color:#4a5565}
.room-book-btn{width:100%;margin-top:14px}
.room-amenities,.room-gallery{background:#fff;border:1px solid #e6edf1;border-radius:16px;padding:26px;margin-top:24px;box-shadow:0 12px 32px rgba(3,23,43,.06)}
.room-amenities h3,.room-gallery h3{font-family:Georgia,serif;color:var(--navy);font-size:1.8rem;margin:0 0 18px}
.room-amenities ul{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 18px;margin:0;padding:0;list-style:none}
.room-amenities li{position:relative;padding-left:24px;color:#526474}
.room-amenities li:before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:900}
.room-gallery .gallery-row{grid-template-columns:repeat(3,1fr)}
.room-gallery .gallery-row img{height:170px}
@media(max-width:900px){
  .room-detail-grid{grid-template-columns:1fr}
  .room-booking-card{position:relative;top:auto}
  .room-main-image{height:320px}
  .room-amenities ul{grid-template-columns:1fr}
  .room-gallery .gallery-row{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .room-gallery .gallery-row{grid-template-columns:1fr}
}
