:root{
  --bg:#0f1115;--bg2:#161a21;--card:#1b2029;--line:#2a313d;
  --text:#e8eaed;--muted:#9aa3b2;--accent:#e0a458;--accent2:#6fb3b8;
  --radius:14px;--max:1080px;
  font-family:"Inter","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);line-height:1.6;font-size:16px}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
img,svg{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}

header.site{position:sticky;top:0;z-index:10;background:rgba(15,17,21,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;color:var(--text);font-weight:700;letter-spacing:.02em}
.logo:hover{text-decoration:none}
.logo svg{width:34px;height:34px}
nav a{color:var(--muted);margin-left:22px;font-size:15px}
nav a:first-child{margin-left:0}
nav a.active,nav a:hover{color:var(--text);text-decoration:none}

.hero{padding:88px 0 64px;background:radial-gradient(1200px 400px at 70% 0%,rgba(224,164,88,.12),transparent 60%)}
.hero h1{font-size:clamp(32px,5vw,52px);line-height:1.15;margin:0 0 18px;max-width:760px}
.hero p{color:var(--muted);font-size:18px;max-width:620px;margin:0 0 30px}
.btn{display:inline-block;padding:12px 22px;border-radius:999px;background:var(--accent);color:#1a1206;font-weight:600}
.btn:hover{text-decoration:none;filter:brightness(1.08)}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line);margin-left:10px}
.wave{margin-top:56px;opacity:.9}

section{padding:64px 0;border-top:1px solid var(--line)}
section h2{font-size:30px;margin:0 0 10px}
section .lead{color:var(--muted);margin:0 0 34px;max-width:680px}
.grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.card h3{margin:0 0 8px;font-size:19px}
.card p{margin:0;color:var(--muted);font-size:15px}
.card .icon{width:40px;height:40px;margin-bottom:14px;color:var(--accent)}
.room{border-radius:var(--radius);overflow:hidden;border:1px solid var(--line);background:var(--bg2)}
.room figcaption{padding:14px 18px;color:var(--muted);font-size:14px}

table.price{width:100%;border-collapse:collapse;background:var(--card);border-radius:var(--radius);overflow:hidden}
table.price th,table.price td{padding:14px 18px;border-bottom:1px solid var(--line);text-align:left}
table.price th{color:var(--muted);font-weight:500;font-size:14px}
table.price td:last-child{white-space:nowrap;text-align:right}
.table-wrap{overflow-x:auto}

.notice{background:linear-gradient(135deg,rgba(111,179,184,.12),rgba(224,164,88,.08));border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.notice strong{color:var(--accent2)}
dl.facts{display:grid;grid-template-columns:max-content 1fr;gap:10px 22px;margin:0}
dl.facts dt{color:var(--muted)}
dl.facts dd{margin:0}

footer.site{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:14px}
footer.site .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

.page-head{padding:64px 0 10px}
.page-head h1{font-size:clamp(28px,4vw,40px);margin:0 0 10px}
.page-head p{color:var(--muted);margin:0;max-width:680px}

@media (max-width:640px){
  nav a{margin-left:14px;font-size:14px}
  .btn.ghost{margin:10px 0 0}
  .hero{padding:56px 0 40px}
}
