/* LUMAR Hotel — sistema limpio Hoteluxe: blanco, negro, naranja, azul motor */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-padding-top:96px}
body{font-family:'Inter',system-ui,'Segoe UI',Arial,sans-serif;background:#fff;color:#111;line-height:1.55}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.muted{color:#6b7280}.small{font-size:.85rem}.green{color:#2e9e5b}.red{color:#c0392b}
.old{text-decoration:line-through;color:#c0392b;font-weight:600}
.price{font-weight:800;font-size:1.25rem}

/* Encabezado blanco alto y limpio */
header.site{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e5e7eb}
.head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0}
.logo{display:flex;align-items:center;gap:10px;font-weight:900;font-size:1.5rem;letter-spacing:.02em}
.logo .bed{width:40px;height:40px;background:#f59e4b;border-radius:4px;display:grid;place-items:center;font-size:1.3rem}
.logo small{display:block;font-size:.6rem;font-weight:600;letter-spacing:.22em;color:#6b7280}
nav.main{display:flex;gap:26px}
nav.main a{font-size:.92rem;color:#333;font-weight:500}
nav.main a.activo{color:#111;border-bottom:2px solid #f59e4b;padding-bottom:2px}
.btn{display:inline-block;border:0;cursor:pointer;font-weight:700;font-size:.95rem;padding:13px 26px;border-radius:2px}
.btn-negro{background:#111;color:#fff}
.btn-azul{background:#1f7aa6;color:#fff}
.btn-borde{background:#fff;color:#111;border:1.5px solid #111}
.btn-verde{background:#2e9e5b;color:#fff}
.btn-ancho{width:100%;text-align:center}
.hamb{display:none;background:#fff;border:1.5px solid #111;padding:8px 12px;font-size:1.2rem;cursor:pointer}

/* Hero de búsqueda: blanco y despejado, sin foto lujosa */
.busqueda-hero{padding:56px 0 40px}
.busqueda-hero h1{font-size:2.4rem;font-weight:900;line-height:1.15;max-width:640px}
.busqueda-hero p{color:#6b7280;margin:12px 0 28px;max-width:640px}
form.busqueda{display:grid;grid-template-columns:1.2fr 1.2fr .8fr .8fr .8fr auto;gap:0;border:1px solid #d1d5db;background:#fff}
form.busqueda .campo{padding:12px 14px;border-right:1px solid #e5e7eb}
form.busqueda label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}
form.busqueda input,form.busqueda select{width:100%;border:0;outline:0;font-size:1rem;padding:4px 0;background:#fff}
form.busqueda .accion{padding:10px}
form.busqueda .accion .btn{height:100%;padding:13px 22px}

/* Barra de resumen */
.resumen{display:flex;flex-wrap:wrap;gap:12px;align-items:center;background:#f5f5f7;border:1px solid #e5e7eb;padding:14px 18px;margin:24px 0}
.resumen b{font-size:1rem}
.resumen span{color:#6b7280;font-size:.9rem}

/* Tarjetas horizontales */
.lista{display:grid;gap:20px;margin:24px 0 48px}
.card-h{display:grid;grid-template-columns:32% 1fr 220px;border:1px solid #e5e7eb;background:#fff;overflow:hidden}
.card-h .foto{position:relative;min-height:210px;background:#eee}
.card-h .foto img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.card-h .mas{position:absolute;top:10px;right:10px;width:30px;height:30px;background:#fff;border:0;font-size:1.2rem;cursor:pointer;font-weight:700}
.card-h .puntos{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px}
.card-h .puntos button{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.7);cursor:pointer}
.card-h .puntos button.on{background:#fff}
.card-h .cuerpo{padding:20px 22px}
.card-h .cuerpo h3{font-size:1.3rem;font-weight:900}
.card-h .serv{color:#6b7280;font-size:.9rem;margin-top:8px}
.card-h .lado{border-left:1px solid #e5e7eb;padding:20px;display:flex;flex-direction:column;justify-content:center;gap:6px}
.card-h .lado .cap{color:#6b7280;font-size:.88rem}
.oferta-banda{display:flex;align-items:center;gap:8px;background:#fff8e7;border:1px solid #f5d67a;padding:10px 14px;font-size:.9rem;font-weight:600}
.oferta-banda .reloj{font-size:1.1rem}

/* Secciones */
.seccion{padding:40px 0}
.seccion.gris{background:#f5f5f7}
.seccion h2{font-size:1.8rem;font-weight:900;margin-bottom:6px}
.seccion .sub{color:#6b7280;margin-bottom:24px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.mini{border:1px solid #e5e7eb;padding:22px;background:#fff}
.mini h3{font-weight:800;margin:8px 0 4px}
.mini p{color:#6b7280;font-size:.92rem}
.descuento{border:1.5px solid #bfe3cb;background:#f0faf3;padding:16px 18px;font-weight:600}

/* Detalle habitación */
.galeria{position:relative;margin:24px 0}
.galeria img.principal{width:100%;height:440px;object-fit:cover}
.galeria .flecha{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;background:#fff;border:0;font-size:1.4rem;cursor:pointer}
.galeria .flecha.izq{left:12px}.galeria .flecha.der{right:12px}
.galeria .cerrar{position:absolute;top:12px;right:12px;width:36px;height:36px;background:#fff;border:0;font-size:1.2rem;cursor:pointer}
.miniaturas{display:flex;gap:10px;margin-top:10px}
.miniaturas img{width:110px;height:74px;object-fit:cover;cursor:pointer;border:2px solid transparent}
.miniaturas img.on{border-color:#f59e4b}
.caract{columns:2;gap:32px;margin:16px 0 28px}
.caract li{margin:0 0 8px 18px}
.tarifas{display:grid;gap:12px;margin:16px 0 28px}
.tarifa{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1.5px solid #e5e7eb;background:#fff;padding:16px 18px;cursor:pointer}
.tarifa.sel{border-color:#1f7aa6;box-shadow:0 0 0 1px #1f7aa6}
.tarifa b{font-size:1.05rem}
.tarifa p{color:#6b7280;font-size:.9rem}
.tarifa .precio{font-weight:800;font-size:1.2rem;white-space:nowrap}
.acciones{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0 48px}

/* Pago dos columnas */
.pago{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;margin:24px 0 48px;align-items:start}
.caja{border:1px solid #e5e7eb;padding:22px;background:#fff}
.caja h3{font-weight:900;margin-bottom:14px}
.fila{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #f0f0f0;font-size:.95rem}
.fila.total{font-weight:900;font-size:1.15rem;border-bottom:0}
form.pago-form label{display:block;font-size:.8rem;font-weight:700;margin:12px 0 4px}
form.pago-form input,form.pago-form select,form.pago-form textarea{width:100%;border:1px solid #d1d5db;padding:11px 12px;font-size:.95rem;border-radius:2px}
.metodos{display:flex;gap:10px}
.metodos span{border:1.5px solid #d1d5db;padding:8px 16px;font-weight:800;font-size:.85rem;cursor:pointer}
.metodos span.sel{border-color:#1f7aa6;background:#eef6fa}
.confirm{background:#f0faf3;border:1.5px solid #bfe3cb;padding:18px;margin:16px 0;display:none}
.confirm.mostrar{display:block}

/* Panel CMS */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:24px 0}
.stat{border:1px solid #e5e7eb;padding:18px;background:#fff}
.stat b{font-size:1.7rem;display:block}
.stat span{color:#6b7280;font-size:.88rem}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{border:1px solid #e5e7eb;padding:10px 12px;text-align:left;font-size:.92rem}
th{background:#f5f5f7}
table input{width:90px;border:1px solid #d1d5db;padding:6px 8px}
.pill{display:inline-block;padding:3px 10px;font-size:.8rem;font-weight:700;background:#eef6fa;color:#1f7aa6}
.pill.ok{background:#f0faf3;color:#2e9e5b}
.pill.canc{background:#fdf0ef;color:#c0392b}

/* Formularios y pie */
.form2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form2 label{display:block;font-size:.8rem;font-weight:700;margin-bottom:4px}
.form2 input,.form2 textarea,.form2 select{width:100%;border:1px solid #d1d5db;padding:11px 12px;font-size:.95rem;border-radius:2px}
.form2 .full{grid-column:1/-1}
footer.site{border-top:1px solid #e5e7eb;margin-top:32px;padding:28px 0;color:#6b7280;font-size:.9rem}
footer.site .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;margin-bottom:20px}
footer.site h4{color:#111;margin-bottom:8px}

@media(max-width:860px){
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:16px 20px;border-bottom:1px solid #e5e7eb;gap:14px}
  nav.main.abierto{display:flex}
  header.site{position:sticky}
  .head{position:relative}
  .hamb{display:block}
  form.busqueda{grid-template-columns:1fr 1fr}
  form.busqueda .accion{grid-column:1/-1}
  .card-h{grid-template-columns:1fr}
  .card-h .lado{border-left:0;border-top:1px solid #e5e7eb}
  .grid3,.stats{grid-template-columns:1fr}
  .pago,.form2{grid-template-columns:1fr}
  .galeria img.principal{height:260px}
  .caract{columns:1}
  footer.site .cols{grid-template-columns:1fr}
  .busqueda-hero h1{font-size:1.9rem}
}

.old{margin-right:8px}
