
:root{--wine:#7b2633;--dark:#171312;--gold:#c7a564;--cream:#fbf7f0;--soft:#f3ece2;--text:#2b2624;--muted:#6e625d;--white:#fff;--shadow:0 18px 50px rgba(0,0,0,.14);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--cream);line-height:1.6}.topbar{background:var(--dark);color:#fff;font-size:.9rem;padding:.45rem 5vw;display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.navbar{position:sticky;top:0;z-index:50;background:rgba(251,247,240,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.08)}.nav-inner{max-width:1180px;margin:auto;padding:.8rem 5vw;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--dark);font-weight:800}.brand img{height:54px;max-width:190px;object-fit:contain;display:block}.brand span{white-space:nowrap}.nav-links{display:flex;gap:1rem;align-items:center}.nav-links a{color:var(--dark);text-decoration:none;font-weight:650}.nav-toggle{display:none;background:none;border:0;font-size:1.8rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:var(--wine);color:#fff!important;text-decoration:none;border:0;border-radius:999px;padding:.85rem 1.15rem;font-weight:800;cursor:pointer;box-shadow:0 10px 26px rgba(123,38,51,.24)}.btn.secondary{background:#fff;color:var(--wine)!important;border:1px solid rgba(123,38,51,.25);box-shadow:none}.lang a{padding:.45rem .55rem;border-radius:999px;background:#fff;color:var(--wine)!important}.hero{position:relative;min-height:74vh;display:grid;align-items:end;color:#fff;background:#111;overflow:hidden}.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.58}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.72))}.hero-content{position:relative;z-index:2;max-width:1180px;margin:0 auto;width:100%;padding:8rem 5vw 12rem}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:900;font-size:.78rem}.hero h1{font-size:clamp(2.4rem,6vw,5.5rem);line-height:.96;margin:.5rem 0 1rem;max-width:920px}.hero p{font-size:clamp(1.05rem,2vw,1.35rem);max-width:760px}.booking-wrap{max-width:1180px;margin:-5.8rem auto 2rem;padding:0 5vw;position:sticky;top:72px;z-index:45}.booking{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem;display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:.75rem;align-items:end}.field label{display:block;color:var(--muted);font-size:.82rem;font-weight:800;margin-bottom:.25rem}.field input,.field select{width:100%;border:1px solid #ddd;border-radius:16px;padding:.85rem;background:#fff;font:inherit}.mobile-book-toggle{display:none;width:100%;margin:.8rem 0}.section{max-width:1180px;margin:0 auto;padding:4.5rem 5vw}.section h2{font-size:clamp(2rem,3.6vw,3.35rem);line-height:1.05;margin:.25rem 0 1rem;color:var(--dark)}.lead{font-size:1.15rem;color:var(--muted);max-width:850px}.grid{display:grid;gap:1.2rem}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 34px rgba(0,0,0,.08)}.card img{width:100%;height:255px;object-fit:cover;display:block}.card .pad{padding:1.25rem}.card h3{margin:.2rem 0 .5rem;color:var(--wine)}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:center}.split img{width:100%;border-radius:var(--radius);box-shadow:var(--shadow)}.features{display:flex;gap:.7rem;flex-wrap:wrap;margin:1rem 0}.pill{background:var(--soft);border-radius:999px;padding:.5rem .85rem;font-weight:750;color:var(--wine)}.band{background:var(--dark);color:#fff}.band h2,.band h3{color:#fff}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem}.gallery img{width:100%;height:190px;object-fit:cover;border-radius:18px}.footer{background:#151111;color:#fff;padding:3rem 5vw}.footer-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.footer a{color:#fff}.map{border:0;width:100%;height:360px;border-radius:var(--radius);filter:saturate(.9)}.notice{font-size:.9rem;color:var(--muted)}@media(max-width:880px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:1rem 5vw;box-shadow:0 18px 30px rgba(0,0,0,.14);flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.hero-content{padding-bottom:7rem}.booking-wrap{position:fixed;left:0;right:0;bottom:0;top:auto;margin:0;padding:.6rem 4vw;background:rgba(251,247,240,.95);z-index:80}.mobile-book-toggle{display:flex}.booking{display:none;grid-template-columns:1fr;border-radius:20px}.booking.open{display:grid}.split,.grid-2,.grid-3,.grid-4,.footer-inner{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(2,1fr)}body{padding-bottom:80px}.brand img{height:42px}.topbar{display:none}}
.legal-links{font-size:.9rem}.legal-links a{text-decoration:underline}.section h1{font-size:clamp(2.3rem,4vw,4rem);line-height:1.05;color:var(--dark)}.section h3{color:var(--wine)}

.small-hero{min-height:54vh}.page-hero{padding-top:5.5rem}.room-card{min-height:100%;display:flex}.room-card .pad{display:flex;flex-direction:column}.room-card .btn{margin-top:auto}.checklist{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.55rem}.checklist li{position:relative;padding-left:1.65rem}.checklist li:before{content:"✓";position:absolute;left:0;top:0;color:var(--wine);font-weight:900}.checklist.columns{grid-template-columns:repeat(2,minmax(0,1fr))}.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.2rem}.room-detail{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;align-items:center}.room-viewer{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:.75rem}.viewer-main{width:100%;height:480px;object-fit:cover;border-radius:18px;display:block}.viewer-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:.45rem;margin-top:.55rem}.viewer-thumbs button{border:0;background:transparent;padding:0;cursor:pointer}.viewer-thumbs img{width:100%;height:72px;object-fit:cover;border-radius:10px;display:block}.brand{background:transparent}.navbar .brand img{background:transparent!important}.footer img{background:transparent!important;padding:0!important}
@media(max-width:880px){.room-detail{grid-template-columns:1fr}.viewer-main{height:310px}.viewer-thumbs{grid-template-columns:repeat(3,1fr)}.checklist.columns{grid-template-columns:1fr}.nav-links .btn.secondary{background:var(--wine);color:#fff!important}.brand img{height:46px;max-width:175px}.brand span{display:none}}

/* Ajustes definitivos */
.brand img{background:transparent!important;height:58px;max-width:230px;width:auto}.brand span{display:none}.footer-domus-logo{display:block;max-width:170px;background:#fff!important;border-radius:16px;padding:.75rem!important;box-shadow:0 12px 28px rgba(0,0,0,.22);filter:none!important}.room-list-card img{height:260px}.room-list-card .pad{min-height:310px}.room-gallery-mini{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem;margin-top:.85rem}.room-gallery-mini img{width:100%;height:115px;object-fit:cover;border-radius:14px}.cafeteria-box{background:var(--soft);border-radius:var(--radius);padding:1.5rem;margin-top:1.5rem}.cafeteria-box h3{margin-top:0}.nav-links .btn.secondary{border-color:rgba(123,38,51,.45)}@media(max-width:880px){.brand img{height:48px;max-width:200px}.room-gallery-mini{grid-template-columns:1fr 1fr}.footer-domus-logo{max-width:150px}}

/* Revisión final solicitada */
.footer-domus-logo{background:#fff!important;border-radius:14px!important;padding:14px 18px!important;max-width:190px!important;height:auto!important;box-shadow:none!important;object-fit:contain!important;}
.footer .legal-links{margin-top:1rem;line-height:1.9;}
.footer .legal-links a{color:#fff;text-decoration:underline;text-underline-offset:3px;}

/* Ajustes finales Hotel Virrey */
.footer-domus-logo{background:#fff!important;border-radius:16px!important;padding:16px 20px!important;max-width:200px!important;height:auto!important;filter:none!important;box-shadow:0 8px 18px rgba(0,0,0,.18)!important;}
.cafeteria-box .card img{display:none;}
.booking-wrap{z-index:46;}


/* Corrección caja de reservas en páginas interiores */
.booking-wrap{max-width:1180px;margin:1rem auto 2.4rem!important;padding:0 5vw;position:sticky;top:78px;z-index:46;overflow:visible;}
.home-booking{margin:-5.8rem auto 2rem!important;}
.booking{overflow:visible;}
@media(max-width:880px){.booking-wrap,.home-booking{position:fixed!important;left:0;right:0;bottom:0;top:auto!important;margin:0!important;padding:.6rem 4vw!important;background:rgba(251,247,240,.95);z-index:80}.booking{grid-template-columns:1fr!important}}
