
	  .room_grid_item {
		border-radius: 16px;
		overflow: hidden;
		box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
		background: #fff;
		transition: all 0.3s ease;
		font-family: 'Raleway', sans-serif;
	  }
	  
	  .room_grid_item.con-descuento {
		position: relative;
		overflow: hidden;
	  }
	  
	  .room_grid_item.con-descuento::before {
		content: "Tarifa Rebajada";
		position: absolute;
		top: 40px;
		right: -52px;
		background: linear-gradient(135deg, #ff4b4b, #c10000);
		color: white;
		font-size: 12px;
		font-weight: 600;
		padding: 6px 50px;
		transform: rotate(45deg);
		z-index: 20;
		text-transform: uppercase;
		letter-spacing: 0.5px;
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
		font-family: 'Segoe UI', sans-serif;
	  }

	
	  .image_wrapper {
		position: relative;
		height: 180px;
		overflow: hidden;
		border-radius: 16px 16px 0 0;
	  }
	
	  .image_wrapper img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform 0.5s ease;
		border-radius: 16px 16px 0 0;
	  }
	
	  .overlay {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align: center;
		color: white;
		padding: 16px;
		transition: background 0.5s ease;
		text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
		border-radius: 16px 16px 0 0;
	  }
	
	  .overlay_title {
		font-size: 1.1em;
		font-weight: 700;
		margin-bottom: 4px;
	  }
	
	  .overlay_subtitle {
		font-size: 0.9em;
	  }
	
	  .room_info {
		padding: 16px;
	  }
	
	  .room_info h6 {
		  font-size: 18px;
		  font-weight: 700;
		  margin-bottom: 8px;
		  color: #2c3e50;
		  line-height: 1.3;
		  letter-spacing: -0.2px;
	  }
	
	  /* Iconos Font Awesome visibles */
	  .room_info ul li {
		  display: flex;
		  align-items: center;
		  font-size: 11px;
		  color: #34495e;
		  margin-bottom: 5px;
		  font-weight: 200;
	  }
	  
	  .room_info ul li i {
		  color: #0055a1;
		  margin-right: 12px;
		  font-size: 14px;
		  width: 20px;
		  text-align: center;
	  }
	  
	  /* Asegurar que Font Awesome cargue */
	  .room_info ul li i.fas {
		  font-family: "Font Awesome 5 Free";
		  font-weight: 900;
	  }
	
	  .room_info a {
		display: block;
		width: 100%;
		color: white;
		text-decoration: none;
		padding: 12px 0;
		border-radius: 25px;
		font-weight: 600;
		font-size: 0.85em;
		text-transform: uppercase;
		text-align: center;
		transition: background-color 0.3s ease;
	  }
	
	  /* Hover */
	  .room_grid_item:hover img {
		transform: scale(1.05);
	  }
	
	  /* === COLORES POR LOCALIDAD === */
	
	  /* OLME */
	  .room_grid_item.olmue .overlay {
		background: rgba(32, 32, 32, 0.4);
	  }
	  .room_grid_item.olmue:hover .overlay {
		background: rgba(99, 92, 85, 0.6);
	  }
	  .room_grid_item.olmue a {
		background-color: #4d4744;
	  }
	
	  /* GUANAQUEROS */
	  .room_grid_item.guanaqueros .overlay {
		  background: rgba(44, 46, 47, 0.4);
	  }
	  .room_grid_item.guanaqueros:hover .overlay {
			background: rgba(62, 67, 69, 0.4);
	  }
	  .room_grid_item.guanaqueros a {
		background-color: #0055a1;
	  }
	
	  /* CONFERENCE (ejemplo futuro si necesitas otro color) */
	  .room_grid_item.conference .overlay {
		background: rgba(12, 94, 75, 0.4);
	  }
	  .room_grid_item.conference:hover .overlay {
		background: rgba(12, 94, 75, 0.6);
	  }
	  .room_grid_item.conference a {
		background-color: #0c5e4b;
	  }
	  
	  .popup-bg-ra {
		  position: fixed;
		  z-index: 9999;
		  background: rgba(0, 0, 0, 0.5);
		  top: 0;
		  left: 0;
		  width: 100%;
		  height: 100%;
		  display: none;
		  justify-content: center;
		  align-items: center;
		  padding: 20px;
		}
	  
		.popup-container-ra {
		  background: white;
		  border-radius: 24px;
		  max-width: 460px;
		  width: 100%;
		  padding: 30px 25px;
		  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
		  font-family: 'Segoe UI', sans-serif;
		  position: relative;
		  max-height: 90vh; /* no más del 90% del alto del navegador */
			overflow-y: auto; /* agrega scroll interno si el contenido se pasa */
		}
	  
		.popup-header-ra {
		  text-align: center;
		  margin-bottom: 20px;
		}
	  
		.popup-title-ra {
		  font-size: 24px;
		  line-height: 25px;
		  font-weight: bold;
		  color: #003f7a;
		  margin: 0 0 0px;
		}
	  
		.popup-subtitle-ra {
		  font-size: 20px;
		  color: #666;
		  margin: 0!important;
		}
	  
		.popup-intro-ra {
		  font-size: 14px;
		  color: #444;
		  margin-top: 12px;
		}
	  
		.form-group-ra {
		  margin-bottom: 18px;
		}
	  
		.form-group-ra label {
		  display: block;
		  margin-bottom: 6px;
		  font-size: 14px;
		  font-weight: 600;
		  letter-spacing: 0px!important;
		  color: #000!important;
		}
	  
		.form-group-ra select {
		  width: 100%;
		  padding: 10px;
		  border-radius: 12px;
		  border: 1px solid #ccc;
		  font-size: 15px;
		}
	  
		.btn-enviar-ra {
		  width: 100%;
		  background: #03d9d6;
		  color: white;
		  padding: 14px;
		  font-size: 16px;
		  font-weight: bold;
		  border: none;
		  border-radius: 12px;
		  cursor: pointer;
		  margin-top: 15px;
		  transition: background 0.3s;
		}
	  
		.btn-enviar-ra:hover {
		  background: #00bfbf;
		}
	  
		.popup-actividades-header-ra {
		  text-align: center;
		  margin-bottom: 16px;
		}
	  
		.btn-actividades-ra {
		  background-color: #ffaa00;
		  color: white;
		  border: none;
		  padding: 12px 20px;
		  font-size: 16px;
		  font-weight: bold;
		  border-radius: 12px;
		  cursor: pointer;
		  transition: background 0.3s;
		}
	  
		.btn-actividades-ra:hover {
		  background-color: #e69500;
		}
	  
		.slide-actividades-ra {
		  position: fixed;
		  right: -100%;
		  top: 0;
		  height: 100%;
		  width: 340px;
		  background: #fefefe;
		  box-shadow: -5px 0 15px rgba(0, 0, 0, 0.15);
		  transition: right 0.3s ease;
		  z-index: 99999;
		  overflow-y: auto;
		  border-left: 4px solid #03d9d6;
		}
	  
		.slide-content-ra {
			padding: 24px 20px; /* antes solo 24px */
		}
	  
		.slide-content-ra h2 {
		  font-size: 20px;
		  margin-bottom: 20px;
		  color: #003f7a;
		}
	  
		#actividadesListado > div {
		  margin-bottom: 28px;
		  padding-left: 4px;
		}
	  .slide-content-ra > h4 {
		margin: 0 0 14px;
		font-size: 18px;
		color: #0053a3;
		border-bottom: 1px solid #e0e0e0;
		padding-bottom: 6px;
	  }
	  
		#actividadesListado h4 {
		  margin: 0 0 10px;
		  color: #0055a1;
		  font-size: 16px;
		}
	  
		#actividadesListado ul {
		  list-style: none;
		  padding: 0;
		  margin: 0;
		}
	  
		#actividadesListado li {
		  font-size: 14px;
		  padding: 6px 0;
		  color: #333;
		}
	  
		.btn-cerrar-slide-ra {
		  background-color: #03d9d6;
		  color: white;
		  border: none;
		  padding: 12px;
		  width: 100%;
		  font-size: 16px;
		  font-weight: bold;
		  border-radius: 10px;
		  cursor: pointer;
		  margin-top: 20px;
		}
	  
		.btn-cerrar-slide-ra:hover {
		  background-color: #00bfbf;
		}
		
		.popup-panorama-block {
		  margin-top: 30px;
		  padding: 20px;
		  background: #f9f9f9;
		  border-radius: 14px;
		  text-align: center;
		  border: 1px solid #eee;
		}
		
		.popup-panorama-block h3 {
		  font-size: 18px;
		  margin-bottom: 8px;
		  color: #003f7a;
		}
		
		.popup-panorama-block p {
		  font-size: 14px;
		  color: #444;
		  margin-bottom: 14px;
		}
		
		#popup-retencion {
		  display: none;
		  position: fixed;
		  top: 50%;
		  left: 50%;
		  transform: translate(-50%, -50%);
		  width: 90%;
		  max-width: 400px;
		  background: white;
		  padding: 30px 25px;
		  box-shadow: 0 15px 30px rgba(0,0,0,0.3);
		  border-radius: 25px;
		  z-index: 9999;
		  font-family: 'Segoe UI', sans-serif;
		  animation: fadeIn 0.5s ease-in-out;
		}
		
		#popup-retencion h3 {
		  margin-top: 0;
		  font-size: 22px;
		  color: #0053A3;
		}
		
		#popup-retencion p {
		  font-size: 16px;
		  color: #333;
		  margin-bottom: 20px;
		}
		
		#popup-retencion input {
		  width: 100%;
		  margin-bottom: 15px;
		  padding: 12px;
		  border: 1px solid #ccc;
		  border-radius: 12px;
		  font-size: 16px;
		  box-sizing: border-box;
		}
		
		#popup-retencion button {
		  background: #03d9d6;
		  color: white;
		  border: none;
		  padding: 14px;
		  width: 100%;
		  font-size: 17px;
		  font-weight: bold;
		  border-radius: 14px;
		  cursor: pointer;
		  transition: background 0.3s ease;
		  margin: 10px 0;
		}
		
		#popup-retencion button:hover {
		  background: #02c2c0;
		}
		
		#popup-overlay {
		  display: none;
		  position: fixed;
		  top: 0; left: 0;
		  width: 100%; height: 100%;
		  background: rgba(0,0,0,0.4);
		  z-index: 9998;
		}
		
		
		@keyframes fadeIn {
		  from { opacity: 0; transform: translate(-50%, -40%); }
		  to { opacity: 1; transform: translate(-50%, -50%); }
		}
		
		
		.iti {
		  width: 100%;
		}
		
		#telefono {
		  padding-left: 48px !important; /* deja espacio para la bandera */
		}
		
		#btn-cerrar-popup {
		  position: absolute!important;
		  top: 12px!important;
		  right: 16px!important;
		  background: none!important;
		  border: none!important;
		  font-size: 20px!important;
		  color: #fff!important;
		  background: #03d9d6 !important;
		  cursor: pointer!important;
		  width: 32px!important;
		  height: 32px!important;
		  line-height: 32px!important;
		  text-align: center!important;
		  padding: 0!important;
		  border-radius: 50%!important;
		  transition: background 0.3s, color 0.3s!important;
		}
		
		#btn-cerrar-popup:hover {
		  background: rgba(0, 0, 0, 0.05);
		  color: #000;
		}
		
		/* Botón WhatsApp en popup */
		#btnCompartirWhatsapp {
		  width: 100%;
		  background-color: #25D366;
		  color: white;
		  border: none;
		  padding: 14px;
		  font-size: 16px;
		  font-weight: bold;
		  border-radius: 12px;
		  cursor: pointer;
		  margin-top: 12px;
		  transition: background 0.3s;
		}
		
		#btnCompartirWhatsapp:hover {
		  background-color: #1ebe5d;
		}
		.actividad-card-ra {
		  display: flex;
		  border: 1px solid #eee;
		  border-radius: 14px;
		  overflow: hidden;
		  margin-bottom: 20px;
		  background: #fff;
		  box-shadow: 0 3px 12px rgba(0,0,0,0.06);
		}
		
		.actividad-img-ra {
		  flex: 0 0 100px;
		  height: 100px;
		  overflow: hidden;
		  display: flex;
		  justify-content: center;
		  align-items: center;
		  border-radius: 50%;
		  margin: 12px;
		}
		
		.actividad-img-ra img {
		  width: 100%;
		  height: 100%;
		  object-fit: cover;
		  border-radius: 50%;
		}

		.actividad-info-ra {
		  padding: 12px;
		  flex: 1;
		}
		
		.actividad-info-ra h4 {
		  margin: 0 0 6px;
		  font-size: 15px;
		  font-weight: bold;
		  color: #003f7a;
		}
		
		.actividad-hora-ra {
		  font-size: 13px;
		  color: #777;
		  margin-bottom: 4px;
		}
		
		.actividad-descripcion-ra {
		  font-size: 13px;
		  color: #444;
		  margin: 0;
		}
		.actividad-img-wrapper {
		  width: 100px;
		  height: 100px;
		  border-radius: 50%;
		  overflow: hidden;
		  display: flex;
		  justify-content: center;
		  align-items: center;
		  margin:10 auto;
		}
		
		.actividad-img-wrapper img {
		  width: 100%;
		  height: 100%;
		  object-fit: cover;
		  border-radius: 50%;
		}
		
		.actividad-card-ra.kids-zone {
		  position: relative;
		}
		
		.actividad-card-ra.kids-zone::before {
		  content: "KIDS ZONE";
		  position: absolute;
		  top: 18px;
		  left: -40px;
		  background: linear-gradient(135deg, #ff9ddf, #fdd95a);
		  color: white;
		  font-size: 11px;
		  font-weight: bold;
		  padding: 4px 40px;
		  transform: rotate(-45deg);
		  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
		  pointer-events: none;
		}
		
		.mensaje-minnoches-ra {
		  background: linear-gradient(135deg, #fbd601, #ff9800);
		  color: #333;
		  font-weight: bold;
		  padding: 12px;
		  border-radius: 8px;
		  text-align: center;
		  margin-bottom: 15px;
		  font-size: 14px;
		  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
		}
		.info-tarifa-ra {
		  background-color: #fef4e5;
		  color: #d35400;
		  font-weight: bold;
		  padding: 10px 12px;
		  margin: 10px 0;
		  border-left: 4px solid #e67e22;
		  border-radius: 6px;
		  font-size: 14px;
		}
.alert-min-noches {
			display: flex;
			align-items: center;
			gap: 8px;
			background-color: #fff3e0;
			border: 1px solid #ffc107;
			color: #b35400;
			padding: 10px 15px;
			border-radius: 6px;
			font-size: 15px;
			font-weight: 500;
			margin-top: 12px;
			box-shadow: 0 1px 3px rgba(0,0,0,0.05);
		  }
		
		  .alert-min-noches .icono {
			font-size: 20px;
			flex-shrink: 0;
		  }
		  .preventa-banner {
			position: absolute;
			top: 14px;
			left: 50%;
			transform: translateX(-50%);
			background: linear-gradient(90deg, #ff5c33, #ff2d2d);
			color: white;
			font-size: 14px;
			font-weight: bold;
			padding: 8px 16px;
			border-radius: 24px;
			box-shadow: 0 4px 8px rgba(0,0,0,0.15);
			z-index: 10;
			max-width: calc(100% - 32px);
			width: max-content;
			text-align: center;
			text-wrap: balance;
			display: inline-block;
			line-height: 1.2;
			word-break: break-word;
			white-space: normal;
		  }
		  
		  @media screen and (max-width: 480px) {
			.preventa-banner {
			  font-size: 13px;
			  padding: 6px 12px;
			  max-width: calc(100% - 24px);
			}
		  }
		  
		  @media screen and (max-width: 480px) {
			.preventa-banner {
			  font-size: 13px;
			  padding: 6px 12px;
			  white-space: normal;
			  line-height: 1.2;
			}
		  }
		  
			.room_grid_item {
			  position: relative;
			}
			
			
			.room_grid_item {
				border-radius: 16px;
				overflow: hidden;
				box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
				background: #fff;
				transition: all 0.3s ease;
				font-family: 'Raleway', sans-serif;
				position: relative;
			}
			
			.room_grid_item.con-descuento {
				position: relative;
				overflow: hidden;
			}
			
			.room_grid_item.con-descuento::before {
				content: "Tarifa Rebajada";
				position: absolute;
				top: 40px;
				right: -52px;
				background: linear-gradient(135deg, #ff4b4b, #c10000);
				color: white;
				font-size: 12px;
				font-weight: 600;
				padding: 6px 50px;
				transform: rotate(45deg);
				z-index: 20;
				text-transform: uppercase;
				letter-spacing: 0.5px;
				box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
				font-family: 'Segoe UI', sans-serif;
			}
			
			.image_wrapper {
				position: relative;
				height: 180px;
				overflow: hidden;
				border-radius: 16px 16px 0 0;
			}
			
			.image_wrapper img {
				width: 100%;
				height: 100%;
				object-fit: cover;
				transition: transform 0.5s ease;
				border-radius: 16px 16px 0 0;
			}
			
			.overlay {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				text-align: center;
				color: white;
				padding: 16px;
				transition: background 0.5s ease;
				text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
				border-radius: 16px 16px 0 0;
			}
			
			.overlay_title {
				font-size: 1.1em;
				font-weight: 700;
				margin-bottom: 4px;
			}
			
			.overlay_subtitle {
				font-size: 0.9em;
			}
			
			.room_info {
				padding: 16px;
			}
			
			.room_info h6 {
				font-size: 0.95em;
				font-weight: 700;
				margin-bottom: 12px;
			}
			
			.room_info ul {
				list-style: none;
				padding: 0;
				margin: 0 0 16px 0;
				font-size: 0.85em;
				color: #444;
			}
			
			.room_info a {
				display: block;
				width: 100%;
				color: white;
				text-decoration: none;
				padding: 12px 0;
				border-radius: 25px;
				font-weight: 600;
				font-size: 0.85em;
				text-transform: uppercase;
				text-align: center;
				transition: background-color 0.3s ease;
			}
			
			/* Hover */
			.room_grid_item:hover img {
				transform: scale(1.05);
			}
			
			/* === COLORES POR LOCALIDAD === */
			/* OLMUE */
			.room_grid_item.olmue .overlay {
				background: rgba(32, 32, 32, 0.4);
			}
			.room_grid_item.olmue:hover .overlay {
				background: rgba(99, 92, 85, 0.6);
			}
			.room_grid_item.olmue a {
				background-color: #4d4744;
			}
			
			/* GUANAQUEROS */
			.room_grid_item.guanaqueros .overlay {
				background: rgba(44, 46, 47, 0.4);
			}
			.room_grid_item.guanaqueros:hover .overlay {
				background: rgba(62, 67, 69, 0.4);
			}
			.room_grid_item.guanaqueros a {
				background-color: #0055a1;
			}
			
			/* CONFERENCE */
			.room_grid_item.conference .overlay {
				background: rgba(12, 94, 75, 0.4);
			}
			.room_grid_item.conference:hover .overlay {
				background: rgba(12, 94, 75, 0.6);
			}
			.room_grid_item.conference a {
				background-color: #0c5e4b;
			}
			
			.preventa-banner {
				position: absolute;
				top: 14px;
				left: 50%;
				transform: translateX(-50%);
				background: linear-gradient(90deg, #ff5c33, #ff2d2d);
				color: white;
				font-size: 14px;
				font-weight: bold;
				padding: 8px 16px;
				border-radius: 24px;
				box-shadow: 0 4px 8px rgba(0,0,0,0.15);
				z-index: 10;
				max-width: calc(100% - 32px);
				width: max-content;
				text-align: center;
				text-wrap: balance;
				display: inline-block;
				line-height: 1.2;
				word-break: break-word;
				white-space: normal;
			}
			
			/* ================================= */
			/* SLIDER HORIZONTAL CORREGIDO */
			/* ================================= */
			
			.slider-container {
				position: relative;
				width: 100%;
				overflow: hidden;
				padding: 30px 0;
				height: 530px!important;
			}
			
			.slider-wrapper {
				position: relative;
				width: 100%;
				height: 420px;
			}
			
			.slider-track {
				display: flex;
				transition: transform 0.4s ease;
				height: 100%;
				gap: 25px;
				padding: 0 60px;
			}
			
			.slider-item {
				flex: 0 0 300px;
				height: 380px;
			}
			
			/* Navegación - BOTONES BLANCOS TRANSPARENTES */
			.slider-nav {
				position: absolute;
				top: 50%;
				transform: translateY(-50%);
				width: 60px;
				height: 60px;
				background: #e74c3c;
				border: 2px solid #e74c3c;
				border-radius: 50%;
				display: flex;
				align-items: center;
				justify-content: center;
				cursor: pointer;
				font-size: 18px;
				color: #fff;
				box-shadow: 0 4px 15px rgba(0,0,0,0.2);
				transition: all 0.3s ease;
				z-index: 10;
				backdrop-filter: blur(5px);
			}
			
			.slider-nav:hover {
				background: rgba(255,255,255,0.95);
				transform: translateY(-50%) scale(1.1);
				box-shadow: 0 6px 20px rgba(0,0,0,0.25);
				color: #e74c3c;
			}
			
			.slider-nav.prev {
				left: 15px;
			}
			
			.slider-nav.next {
				right: 15px;
			}
			
			.slider-nav:disabled {
				opacity: 0.4;
				cursor: not-allowed;
				transform: translateY(-50%) scale(0.9);
			}
			
			/* Indicadores */
			.slider-indicators {
				display: flex;
				justify-content: center;
				align-items: center;
				margin-top: 25px;
				gap: 10px;
			}
			
			.indicator {
				width: 10px;
				height: 10px;
				border-radius: 50%;
				background: rgba(0,0,0,0.2);
				cursor: pointer;
				transition: all 0.3s ease;
			}
			
			.indicator.active {
				background: #0055a1;
				transform: scale(1.2);
			}
			
			.indicator:hover {
				background: #0055a1;
				opacity: 0.7;
			}
			
			/* Responsive - MÓVIL CORREGIDO */
			@media (max-width: 768px) {
				.slider-nav {
					width: 50px;
					height: 50px;
					font-size: 20px;
					background: rgba(255,255,255,0.85);
					border: 2px solid rgba(255,255,255,0.95);
					color: #333;
					backdrop-filter: blur(8px);
				}
				
				.slider-nav:hover {
					background: rgba(255,255,255,0.95);
					transform: translateY(-50%) scale(1.05);
				}
				
				.slider-nav.prev {
					left: 15px;
				}
				
				.slider-nav.next {
					right: 15px;
				}
				
				.slider-item {
					flex-shrink: 0;
					width: calc(100vw - 60px); /* CORREGIDO: ancho fijo menos padding */
					max-width: 350px; /* límite máximo */
					height: 360px;
				}
				
				.slider-track {
					gap: 20px;
					padding: 0 30px;
				}
				
				.slider-wrapper {
					height: 380px;
				}
			}
			
			@media (max-width: 480px) {
				.slider-nav {
					width: 45px;
					height: 45px;
					font-size: 18px;
				}
				
				.slider-nav.prev {
					left: 10px;
				}
				
				.slider-nav.next {
					right: 10px;
				}
				
				.slider-item {
					width: calc(100vw - 40px); /* CORREGIDO: más espacio en móviles pequeños */
					max-width: 320px;
					height: 340px;
				}
				
				.slider-track {
					padding: 0 20px;
					gap: 15px;
				}
			}
			
			/* Badges estilo Booking */
			.badge-animated {
				position: absolute;
				top: 12px;
				left: 12px;
				z-index: 15;
			}
			
			.badge-preventa {
				background: #ff6b35;
				color: white;
				padding: 6px 12px;
				margin-bottom: 5px;
				border-radius: 6px;
				font-size: 11px;
				font-weight: 700;
				text-transform: uppercase;
				letter-spacing: 0.3px;
				box-shadow: 0 2px 8px rgba(255,107,53,0.4);
				white-space: nowrap;
				display: inline-block;
				line-height: 1.2;
			}
			
			.badge-rebajada {
				background: #e74c3c;
				color: white;
				padding: 6px 12px;
				margin-bottom: 5px;
				border-radius: 6px;
				font-size: 11px;
				font-weight: 700;
				text-transform: uppercase;
				letter-spacing: 0.3px;
				box-shadow: 0 2px 8px rgba(231,76,60,0.4);
				white-space: nowrap;
				display: inline-block;
				line-height: 1.2;
			}
			
			.badge-regalos {
				background: #d1ae00;
				color: white;
				padding: 6px 12px;
				margin-bottom: 5px;
				border-radius: 6px;
				font-size: 11px;
				font-weight: 700;
				text-transform: uppercase;
				letter-spacing: 0.3px;
				box-shadow: 0 2px 8px rgba(231,76,60,0.4);
				white-space: nowrap;
				display: inline-block;
				line-height: 1.2;
			}
			
			.badge-preventa.long-text {
				white-space: normal;
				max-width: 200px;
				text-align: center;
				padding: 8px 12px;
			}
			
			/* Diseño estilo Royal Caribbean */
			.room_grid_item {
				border-radius: 20px;
				overflow: hidden;
				box-shadow: 0 8px 30px rgba(0,0,0,0.12);
				background: #fff;
				transition: all 0.4s ease;
				font-family: 'Raleway', sans-serif;
				position: relative;
				border: 1px solid rgba(0,0,0,0.05);
			}
			
			.room_grid_item:hover {
				transform: translateY(-8px);
				box-shadow: 0 20px 40px rgba(0,0,0,0.18);
			}
			
			.room_grid_item.con-descuento::before {
				display: none;
			}
			
			.image_wrapper {
				position: relative;
				height: 200px;
				overflow: hidden;
				border-radius: 20px 20px 0 0;
			}
			
			.overlay {
				display: none;
			}
			
			.room_info {
				padding: 20px;
				background: #fff;
				border-radius: 0 0 20px 20px;
			}
			
			.room_info h5 {
				font-size: 20px;
				font-weight: 700;
				margin-bottom: 4px;
				color: #2c3e50;
				line-height: 1.3;
				letter-spacing: -0.3px;
			}
			
			.room_info h6 {
				font-size: 14px;
				font-weight: 500;
				margin-bottom: 15px;
				color: #7f8c8d;
				line-height: 1.3;
			}
			
			.resort-name {
				font-size: 15px;
				color: #7f8c8d;
				margin: 0 0 20px 0;
				font-weight: 500;
				display: flex;
				align-items: center;
				gap: 6px;
			}
			
			.resort-name::before {
				content: "\f3c5";
				font-family: "Font Awesome 5 Free";
				font-weight: 900;
				color: #0055a1;
				font-size: 14px;
			}
		