:root{--ink:#2a1233;--hib:#d6264a;--hib2:#ff6b8b;--mari:#f2b134;--mist:#f5f0fa;--card:#fff;--line:#e6dcf0;--good:#1f9d6b;--warn:#d6264a;--wait:#c98a0b;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--ink:#f4ecfa;--mist:#1b0e22;--card:#271233;--line:#3d2450}body{background:var(--mist)}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:16px/1.6 "Segoe UI",system-ui,-apple-system,Roboto,sans-serif;color:var(--ink);background:var(--mist)}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.15;margin:0 0 .5rem}
h1{font-size:clamp(2.2rem,5vw,3.8rem);letter-spacing:-.02em}h2{font-size:clamp(1.7rem,3vw,2.3rem)}h3{font-size:1.2rem;margin-top:1.2rem}
a{color:var(--hib)}img{max-width:100%;display:block}
:focus-visible{outline:3px solid var(--mari);outline-offset:2px}
.muted{opacity:.7}
.nav{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:.6rem 5vw;background:color-mix(in srgb,var(--mist) 85%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);font:700 1.05rem Georgia,serif}
.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover}.brand small{display:block;font:500 .75rem "Segoe UI",sans-serif;opacity:.6}
.nav nav{display:flex;gap:.3rem;align-items:center;flex-wrap:wrap}
.nav nav a:not(.btn){padding:.4rem .8rem;border-radius:99px;text-decoration:none;color:var(--ink)}
.nav nav a.on,.nav nav a:not(.btn):hover{background:var(--hib);color:#fff}
.btn{display:inline-block;border:0;cursor:pointer;background:linear-gradient(135deg,var(--hib),var(--hib2));color:#fff;padding:.8rem 1.5rem;border-radius:99px;font:600 1rem inherit;text-decoration:none;box-shadow:0 8px 22px -8px var(--hib);transition:transform .15s}
.btn:hover{transform:translateY(-2px)}.btn.sm{padding:.4rem 1rem;font-size:.9rem;box-shadow:none}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line);box-shadow:none}
.btn.wa{background:#25d366;box-shadow:none;color:#04210f}
.wrap{max-width:1180px;margin:auto;padding:3.5rem 5vw}
.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center;max-width:1280px;margin:auto;padding:3.5rem 5vw}
.chip{display:inline-block;background:var(--mari);color:#2a1233;font-weight:600;padding:.3rem .9rem;border-radius:99px;font-size:.85rem}
.lead{font-size:1.15rem;max-width:34em}.cta{display:flex;gap:.8rem;flex-wrap:wrap;margin:1.5rem 0}
.stats{display:flex;gap:2rem;flex-wrap:wrap}.stats div{opacity:.85}.stats b{font:700 1.8rem Georgia,serif;color:var(--hib);margin-right:.3rem}
.hero-img{position:relative}.hero-img img{border-radius:28px 28px 120px 28px;width:100%;aspect-ratio:4/4.4;object-fit:cover;box-shadow:0 30px 60px -30px #0007;animation:rise .9s ease both}
.hero-img .b{position:absolute;width:42%;aspect-ratio:1;left:-9%;bottom:-8%;border:6px solid var(--mist);border-radius:50%;animation:none}
@keyframes rise{from{opacity:0;transform:translateY(24px)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.9rem}.rooms.big{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.room{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:.9rem;display:flex;flex-direction:column;gap:.35rem}
.room small,.room em{font-size:.8rem;opacity:.7;font-style:normal}
.beds{display:flex;gap:.4rem}
.bed{flex:1;border:0;border-radius:10px;padding:.4rem;font:600 .8rem inherit;color:#fff}
.free{background:var(--good);cursor:pointer}.free:hover{filter:brightness(1.1)}.taken{background:#8a7a96}.held{background:var(--wait)}
.gal .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8rem}
.gal img{width:100%;height:230px;object-fit:cover;border-radius:18px}
.book{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:1.4rem;margin-bottom:1.2rem}
.card.good b{color:var(--good)}.card.warn b{color:var(--warn)}.card.big{text-align:center}
.form{display:flex;flex-direction:column;gap:.9rem}.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.9rem}
label{display:flex;flex-direction:column;gap:.25rem;font-weight:600;font-size:.9rem}label.chk{flex-direction:row;align-items:center;font-weight:500}
input,select{font:inherit;padding:.65rem .8rem;border:1.5px solid var(--line);border-radius:12px;background:var(--mist);color:var(--ink);width:100%}
input.mini{width:100px;padding:.3rem .5rem}input[type=checkbox]{width:auto}
.ok,.err{padding:.8rem 1rem;border-radius:12px;margin:.6rem 0}.ok{background:#d5f5e6;color:#0b4a30}.err{background:#fde0e6;color:#7a1230}
.payinfo{padding:.8rem;border-radius:12px;background:var(--mist);text-align:center}
.auth{display:grid;place-items:center;min-height:70vh;padding:2rem}.auth .card{width:min(420px,100%)}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.kpis.four{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.kpis .card{margin:0}.kpis small{opacity:.7;display:block}.kpis b{font:700 1.7rem Georgia,serif}
.dash{padding-top:2rem}.dash>*{margin-bottom:1.2rem}.two{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;align-items:start}.two .card{margin:0}
.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.55rem .6rem;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:.82rem;opacity:.7}
tr.hl{background:color-mix(in srgb,var(--mari) 30%,transparent)}.act,.inl{display:flex;gap:.4rem;align-items:center}
.tag{padding:.15rem .6rem;border-radius:99px;font-size:.8rem;font-weight:600;color:#fff}.tag.good{background:var(--good)}.tag.warn{background:var(--warn)}.tag.wait{background:var(--wait)}
.dueTxt{color:var(--warn)}
.bars{display:flex;gap:.8rem;align-items:flex-end;height:220px}.bar{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:.2rem;font-size:.75rem}
.bar i{display:block;width:100%;min-height:4px;background:linear-gradient(var(--hib2),var(--hib));border-radius:10px 10px 0 0}
.meter{height:12px;border-radius:9px;background:var(--mist);overflow:hidden}.meter i{display:block;height:100%;background:var(--hib)}
.foot{text-align:center;padding:2rem;opacity:.6;font-size:.9rem}
@media(max-width:820px){.hero,.book,.two,.kpis{grid-template-columns:1fr}.hero-img .b{left:0}.nav nav{width:100%}}

.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));background:var(--ink);color:var(--mist);text-align:center}
.strip div{padding:1rem;font-weight:600;border-right:1px solid #ffffff22}
@media(prefers-color-scheme:dark){.strip{background:var(--card);color:var(--ink)}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center;margin:2.5rem 0}.split img{width:100%;height:320px;object-fit:cover;border-radius:24px 24px 90px 24px}.split.rev img{order:2;border-radius:24px 24px 24px 90px}
.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.feat div{background:var(--card);border:1px solid var(--line);border-top:5px solid var(--mari);border-radius:16px;padding:1.2rem}.feat ul{margin:0;padding-left:1.1rem}
.price{background:linear-gradient(135deg,var(--hib),#8a1a5a);color:#fff;text-align:center}.price .wrap{padding:3rem 5vw}.price .big{font:1.6rem Georgia,serif;margin:.5rem 0}.price .big b{font-size:3rem}.price p{max-width:36em;margin:.5rem auto}.price .btn{background:#fff;color:var(--hib);box-shadow:none;margin-top:1rem}
.how ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;counter-reset:s}.how li{counter-increment:s;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.2rem}.how li::before{content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--hib);color:#fff;font-weight:700;margin-bottom:.5rem}.how li span{display:block;opacity:.75}
.visit{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.visit img{border-radius:24px;width:100%;max-height:340px;object-fit:cover}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:.9rem 1.2rem;margin-bottom:.6rem}.faq summary{font-weight:600;cursor:pointer}
.wafab{position:fixed;right:1rem;bottom:1rem;z-index:30;background:#25d366;color:#04210f;font-weight:700;padding:.8rem 1.2rem;border-radius:99px;text-decoration:none;box-shadow:0 10px 25px -8px #0006}
@media(max-width:820px){.split,.visit{grid-template-columns:1fr}.split.rev img{order:0}}

.car{position:relative}.track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:24px}.track::-webkit-scrollbar{display:none}
.track figure{margin:0;flex:0 0 min(78%,560px);scroll-snap-align:center;position:relative}.track img{width:100%;height:380px;object-fit:cover;border-radius:24px}
.track figcaption{position:absolute;left:1rem;bottom:1rem;background:#2a1233cc;color:#fff;padding:.3rem .9rem;border-radius:99px;font-size:.9rem}
.cb{position:absolute;top:50%;left:.5rem;transform:translateY(-50%);z-index:2;width:46px;height:46px;border-radius:50%;border:0;background:#fff;color:var(--hib);font-size:1.8rem;cursor:pointer;box-shadow:0 6px 18px #0004}.cb.r{left:auto;right:.5rem}
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.tst blockquote{margin:0;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--hib);border-radius:16px;padding:1.2rem}.tst footer{font-weight:600;opacity:.75}
@media(max-width:820px){.track img{height:260px}.track figure{flex-basis:88%}}
