:where([class^="ri-"])::before { content: "\f3c2"; }
body {
font-family: 'Montserrat', sans-serif;
scroll-behavior: smooth;
color: #333333;
background-color: #FFF8DC;
}
.hero-section {
background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('https://readdy.ai/api/search-image?query=stunning%20travel%20destination%20with%20crystal%20clear%20turquoise%20water%20beach%2C%20palm%20trees%2C%20and%20mountains%20in%20the%20background%2C%20golden%20sunset%20light%2C%20professional%20photography%2C%20cinematic%2C%20high%20resolution%2C%20vibrant%20colors%2C%20paradise%20vacation%20spot&width=1920&height=1080&seq=hero1&orientation=landscape');
background-size: cover;
background-position: center;
background-attachment: fixed;
}
.search-tab.active {
color: #00AAF8;
border-bottom: 2px solid #00AAF8;
}
.search-content {
display: none;
}
.search-content.active {
display: block;
}
.custom-checkbox {
appearance: none;
-webkit-appearance: none;
width: 20px;
height: 20px;
border: 2px solid #d1d5db;
border-radius: 4px;
outline: none;
cursor: pointer;
position: relative;
background-color: #FFF8DC;
}
.custom-checkbox:checked {
background-color: #00AAF8;
border-color: #00AAF8;
}
.custom-checkbox:checked::after {
content: '';
position: absolute;
left: 6px;
top: 2px;
width: 6px;
height: 10px;
border: solid white;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
.custom-switch {
position: relative;
display: inline-block;
width: 50px;
height: 24px;
}
.custom-switch input {
opacity: 0;
width: 0;
height: 0;
}
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
transition: .4s;
border-radius: 24px;
}
.slider:before {
position: absolute;
content: "";
height: 18px;
width: 18px;
left: 3px;
bottom: 3px;
background-color: white;
transition: .4s;
border-radius: 50%;
}
input:checked + .slider {
background-color: #00AAF8;
}
input:checked + .slider:before {
transform: translateX(26px);
}
.custom-range {
-webkit-appearance: none;
width: 100%;
height: 6px;
border-radius: 5px;
background: #d1d5db;
outline: none;
}
.custom-range::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
width: 18px;
height: 18px;
border-radius: 50%;
background: #00AAF8;
cursor: pointer;
}
.custom-range::-moz-range-thumb {
width: 18px;
height: 18px;
border-radius: 50%;
background: #00AAF8;
cursor: pointer;
border: none;
}
.destination-card, .service-card {
transition: all 0.3s ease;
background-color: #FFF8DC !important;
}
.destination-card:hover,
.service-card:hover {
transform: translateY(-5px);
}
.social-icon {
transition: transform 0.3s ease, color 0.3s ease;
}
.social-icon:hover {
transform: translateY(-3px);
color: #00AAF8;
}
.faq-item {
transition: all 0.3s ease;
}
.faq-answer {
max-height: 0;
overflow: hidden;
transition: max-height 0.3s ease;
}
.faq-item.active .faq-answer {
max-height: 500px;
}

/* Nuevos estilos para la paleta de colores */
.bg-secondary-custom {
background-color: #FF7F50;
}

.text-secondary-custom {
color: #FF7F50;
}

.bg-hueso {
background-color: #FFF8DC;
}

.text-gris-oscuro {
color: #333333;
}

.text-azul-marino {
color: #003366;
}

/* Hover states personalizados */
.hover-bg-primary:hover {
background-color: #00AAF8;
}

.hover-text-primary:hover {
color: #00AAF8;
}

.bg-primary-light {
background-color: rgba(0, 170, 248, 0.1);
}

@media (max-width: 768px) {
.hero-section {
background-attachment: scroll;
}
}