
:root{
  --bg:#080808; --bg2:#101010; --panel:#141414; --gold:#d6b26e; --gold2:#efd39a;
  --text:#f6f1e8; --muted:#bdb5aa; --line:rgba(214,178,110,.28); --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}
.header{position:sticky;top:0;z-index:50;background:rgba(8,8,8,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.06)}
.navbar{height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:150px;height:62px;object-fit:contain}
.navlinks{display:flex;align-items:center;gap:24px;font-size:.92rem}
.navlinks a:hover{color:var(--gold2)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:10px;border:1px solid var(--line);font-weight:700;transition:.2s}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:var(--gold);color:#0b0b0b;border-color:var(--gold)}
.btn.dark{background:#0d0d0d;color:var(--gold2)}
.menu{display:none;background:transparent;color:white;border:1px solid var(--line);border-radius:10px;padding:10px 12px}
.hero{min-height:78vh;position:relative;display:flex;align-items:flex-end;background-size:cover;background-position:center}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.18)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.72))}
.hero-inner{position:relative;z-index:2;padding:130px 0 90px;max-width:790px}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold2);font-size:.75rem;font-weight:700}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;margin:0;line-height:.98}
h1{font-size:clamp(4rem,8vw,7.5rem)}
h2{font-size:clamp(2.8rem,5vw,4.8rem)}
h3{font-size:2rem}
.lead{font-size:1.2rem;color:#eee6dc;max-width:700px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.trustline{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px;color:#e8dfd4;font-size:.9rem}
.trustline span:before{content:"•";color:var(--gold);margin-right:8px}
.section{padding:90px 0}
.section.alt{background:var(--bg2)}
.section-head{display:grid;grid-template-columns:1fr .9fr;gap:40px;align-items:end;margin-bottom:42px}
.section-head p{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.card-body{padding:24px}
.card .rate{display:block;color:var(--gold2);font-weight:800;margin:16px 0}
.badge{display:inline-block;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--gold2);font-size:.75rem;margin-bottom:12px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fact{padding:24px;border:1px solid var(--line);background:#0f0f0f;border-radius:14px}
.fact strong{display:block;color:var(--gold2);margin-bottom:6px}
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:230px;gap:12px}
.gallery figure{margin:0;overflow:hidden;border-radius:14px}
.gallery figure:first-child{grid-row:span 2;grid-column:span 2}
.gallery img{width:100%;height:100%;object-fit:cover}
.booking-box{background:linear-gradient(135deg,#16100b,#0c0c0c);border:1px solid var(--line);border-radius:18px;padding:34px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:grid;gap:7px;color:#ddd3c7;font-size:.86rem}
input,select,textarea{width:100%;background:#0b0b0b;color:white;border:1px solid rgba(255,255,255,.16);border-radius:9px;padding:14px}
.footer{padding:55px 0;border-top:1px solid rgba(255,255,255,.08);background:#070707}
.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,.8fr);gap:30px}
.footer a{display:block;color:var(--muted);margin:8px 0}
.footer a:hover{color:var(--gold2)}
.muted{color:var(--muted)}
.room-hero{min-height:66vh}
.room-details{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px}
.price{font-family:"Cormorant Garamond";font-size:2.2rem;color:var(--gold2)}
.amenities{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
.amenities div{border:1px solid var(--line);padding:14px;border-radius:10px;background:#101010}
.payment{display:grid;grid-template-columns:.65fr 1.35fr;gap:40px;align-items:start}
.payment img{border-radius:18px;border:1px solid var(--line)}
.notice{padding:18px;border:1px solid var(--line);background:#111;border-radius:12px;color:#ded5c9}
.mobile-cta{display:none}
@media(max-width:900px){
  .navlinks{display:none;position:absolute;top:86px;left:0;right:0;background:#080808;padding:24px 20px;border-top:1px solid rgba(255,255,255,.06)}
  .navlinks.open{display:grid}
  .menu{display:block}
  .section-head,.grid-2,.payment,.room-details{grid-template-columns:1fr}
  .cards,.grid-3{grid-template-columns:1fr}
  .gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}
  .gallery figure,.gallery figure:first-child{min-width:86%;height:360px;scroll-snap-align:start}
  .formgrid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .container{width:min(var(--max),calc(100% - 28px))}
  .navbar{height:78px}
  .brand img{width:130px}
  .hero{min-height:82vh}
  .hero-inner{padding:120px 0 70px}
  h1{font-size:3.8rem}
  .section{padding:70px 0}
  .actions{display:grid}
  .btn{width:100%}
  .amenities{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .mobile-cta{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:60;background:#080808;border-top:1px solid var(--line);padding:9px}
  .mobile-cta a{padding:12px;text-align:center;font-weight:800}
  body{padding-bottom:65px}
}
