*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,sans-serif;background:#f7f9fc;color:#24374b}header{background:#fff;border-bottom:1px solid #e1e8ef;padding:16px max(20px,calc((100% - 1160px)/2));display:flex;justify-content:space-between;gap:16px;align-items:center}header>a{font-size:26px;font-weight:800;text-decoration:none;color:#1267b0}nav{display:flex;flex-wrap:wrap;gap:16px}nav a{color:#1267b0;text-decoration:none;font-weight:650}main{max-width:1160px;margin:32px auto;padding:0 20px}h1{font-size:clamp(30px,4vw,46px);line-height:1.15}.intro{color:#637386}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin:25px 0}.card{background:white;border:1px solid #e0e8f0;border-radius:14px;overflow:hidden}.card img{width:100%;height:170px;object-fit:cover}.body{padding:18px}.body h2{font-size:22px;margin:0 0 10px}.hotel{border-top:1px solid #e4eaf0;padding:12px 0;display:flex;justify-content:space-between;gap:12px}.hotel a{color:#145c96}.price{font-weight:800;color:#1166a9;white-space:nowrap}.btn{display:inline-block;background:#1267b0;color:#fff;text-decoration:none;border-radius:9px;padding:10px 16px;margin-top:12px}.note{font-size:13px;color:#6a7889}input{font:inherit;padding:13px;border:1px solid #cdd7e3;border-radius:9px;width:100%;max-width:540px}footer{text-align:center;padding:35px;color:#69798a}[hidden]{display:none!important}

/* Tarjetas de hoteles inspiradas en la referencia de destinos */
body{background:#fff;color:#30343a;font-family:Arial,Helvetica,sans-serif}
main{max-width:1400px;margin:34px auto;padding:0 36px}
main>h1{margin:0 0 5px;text-align:center;font-size:30px;line-height:1.2;color:#303030}
main>.intro{margin:0;text-align:center;color:#444;font-size:15px}
.hotel-tools{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 10px}
.hotel-tools label{display:flex;align-items:center;gap:10px;color:#566578;font-size:13px;font-weight:700}
.hotel-tools input{width:min(340px,58vw);max-width:none;height:38px;padding:7px 12px;font-size:14px}
.hotel-tools #count{margin:0;color:#647488;font-size:13px}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin:10px 0 32px}
.card{position:relative;overflow:hidden;background:#fff;border:1px solid #d5dadd;border-radius:5px;box-shadow:0 1px 3px #0003}
.card img{display:block;width:100%;height:121px;object-fit:cover}
.card .body{position:relative;padding:0 9px}
.card .body h2{position:absolute;top:-113px;left:5%;width:90%;height:56px;display:flex;align-items:center;justify-content:center;margin:0;color:#fff;text-align:center;font-size:26px;line-height:1.04;text-shadow:0 2px 5px #182635;z-index:1}
.hotel-count{position:absolute;top:-53px;left:50%;transform:translateX(-50%);z-index:2;margin:0;padding:3px 9px;white-space:nowrap;background:#263a54e8;color:#fff;border-radius:2px;font-size:14px}
.card .body:before{content:'precio medio por noche';position:absolute;left:0;right:0;top:-25px;height:25px;display:flex;align-items:center;justify-content:flex-end;padding:0 9px;background:#f4f6f7;color:#30343a;font-size:10px;font-weight:700}
.hotel{height:48px;display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 0;border-top:1px solid #dce1e4}
.hotel a{display:block;max-width:74%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#65a5e8;font-size:13px;text-decoration:none}
.hotel a:hover{text-decoration:underline}
.price{flex:0 0 auto;color:#2e3032;font-size:21px;font-weight:800;line-height:1.05;text-align:right;white-space:nowrap}
.price:before{content:'desde';display:block;font-size:9px;font-weight:400;line-height:1.1}
.card .body>.btn{display:block;margin:0 -9px;padding:8px 5px;border-radius:0;background:#f0f3f4;color:#243b56;text-align:center;font-size:12px;font-weight:700}
@media(max-width:1000px){main{padding:0 24px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}
@media(max-width:600px){main{margin:26px auto;padding:0 14px}main>h1{font-size:25px}.hotel-tools{align-items:stretch;flex-direction:column;gap:8px}.hotel-tools label{align-items:stretch;flex-direction:column}.hotel-tools input{width:100%}.hotel-tools #count{text-align:right}.grid{grid-template-columns:1fr;gap:14px}.card img{height:150px}.card .body h2{top:-141px;height:72px;font-size:25px}.hotel-count{top:-68px}.card .body:before{top:-25px}}

.hotel .price small{display:block;font-size:11px;font-weight:500;color:#6a7889;white-space:nowrap}
