:root{
  --bg:#0f2a43; --bg2:#16406b; --accent:#f2a541; --accent-d:#d98a1f;
  --card:#ffffff; --ink:#1c2b3a; --muted:#5d7285; --line:#e3eaf1;
  --ok:#1e8e5a; --bad:#c0392b;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:#f4f7fa;line-height:1.5}
.wrap{max-width:1020px;margin:0 auto;padding:0 20px}
.topbar{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:12px;flex-wrap:wrap}
.brand{font-size:1.5rem;font-weight:800;color:var(--bg);letter-spacing:.5px}
.topbar-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.contact-link{color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem}
.contact-link:hover{color:var(--bg2)}
.lang-toggle{border:1px solid var(--line);border-radius:999px;overflow:hidden;display:flex}
.lang-toggle button{border:0;background:#fff;padding:6px 14px;cursor:pointer;font-weight:700;color:var(--muted)}
.lang-toggle button.active{background:var(--bg);color:#fff}
.hero{background:linear-gradient(135deg,var(--bg),var(--bg2));color:#fff;padding:56px 0 64px}
.hero h1{font-size:2.2rem;margin-bottom:8px}
.hero .sub{opacity:.85;margin-bottom:28px;font-size:1.05rem}
.booking-card{background:var(--card);color:var(--ink);border-radius:16px;padding:24px;box-shadow:0 18px 50px rgba(0,0,0,.25)}
.dates{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.dates label{display:flex;flex-direction:column;font-size:.85rem;font-weight:600;color:var(--muted);gap:6px}
.dates input[type=date]{padding:11px 12px;border:1px solid var(--line);border-radius:10px;font-size:1rem;min-width:170px}
.btn{border:0;border-radius:10px;padding:12px 22px;font-size:1rem;font-weight:700;cursor:pointer;background:#dfe7ee;color:var(--ink)}
.btn.primary{background:var(--accent);color:#3a2503}
.btn.primary:hover{background:var(--accent-d)}
.btn.big{width:100%;padding:15px;font-size:1.1rem;margin-top:6px}
.btn:disabled{opacity:.6;cursor:wait}
.avail-note{margin:14px 0 4px;font-size:.85rem;color:var(--muted)}
.results{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-top:10px}
.room-card{border:1px solid var(--line);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:8px}
.room-card h3{font-size:1.15rem}
.room-card .left{font-weight:800;color:var(--ok)}
.room-card .left.soldout{color:var(--bad)}
.room-card .price{font-size:.95rem;color:var(--muted)}
.room-card .total{font-size:1.25rem;font-weight:800}
.room-card .btn{margin-top:6px}
.book-form{margin-top:22px;border-top:1px dashed var(--line);padding-top:20px}
.book-form h3{margin-bottom:10px}
.book-form .summary{background:#f4f7fa;border-radius:10px;padding:12px 14px;margin-bottom:14px;font-size:.95rem}
.book-form label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;color:var(--muted);margin-bottom:12px}
.book-form input{padding:11px 12px;border:1px solid var(--line);border-radius:10px;font-size:1rem;color:var(--ink)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:640px){.grid2{grid-template-columns:1fr}.hero h1{font-size:1.7rem}}
.pay-note{font-size:.85rem;color:var(--muted);margin:4px 0 8px}
.error{color:var(--bad);font-weight:600;margin-top:10px;min-height:1.2em}
.hidden{display:none}
.info{padding:48px 20px}
.info h2{margin-bottom:16px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.card{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;text-decoration:none;color:var(--ink)}
.card:hover{border-color:var(--accent)}
.card-icon{font-size:1.8rem}
.card-label{font-size:.8rem;color:var(--muted);font-weight:600}
.card-val{font-size:1.15rem;font-weight:800}
footer{background:var(--bg);color:#cdd9e4;padding:22px 0;font-size:.9rem;text-align:center}
