@charset "utf-8";
/* CSS Document */


.font-frag { font:Fragile; font-family: 'Fraf', sans-serif; font-weight:500; }




/* --- Bloques Principales (Home) --- */
.home-blocks-section {
	padding: 60px 0;
    background-color: #fff; /* O el color que elijas de fondo */
}

.medioBg {  background-color:#ec5212; background-image:url(../imagenes/backBtnPortada02.jpg); background-position:top center; background-repeat:repeat-x; }
.sepaFlorP { background-image:url(../imagenes/flor-cinta04.png); background-position:bottom center; background-repeat:repeat-x; padding-bottom:54px; }

.main-blocks-grid {
    display: grid;
    gap: 40px;
    /*margin-top: -100px; /* Hack para que floten un poco sobre la sección anterior si lo necesitas */

}




/* La configuración de 2 columnas para el inicio */
.main-blocks-grid.two-cols {
    grid-template-columns: 1fr 1fr;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;

}

/* Cuando añadas la tercera, cambia la clase a tres-cols y usa esto: */
.main-blocks-grid.three-cols {
    grid-template-columns: 1fr 1fr 1fr;
    max-width: 1200px;

}

.content-card {
    text-align: center;
	
}

.card-image {
    width: 90%;
    height: auto;
    border-radius: 40px 40px 0 0; /* Solo esquinas superiores redondeadas */
    object-fit: cover;
}

.card-info {
    /* Mantenemos tus valores */
    border-radius: 100px; 
    padding: 15px 10px;
    margin-top: -50px; 
    
    /* Agregamos esto para que el z-index funcione */
    position: relative; 
    z-index: 200;
    
    /* Sugerencia: Asegura que el contenido esté centrado */
    display: flex;
    justify-content: center;
    align-items: center;
    
    /* Un pequeño ancho máximo para que se vea como una cápsula 
       y no se pegue a los bordes si el texto es largo */
    width: 95%; 
    margin-left: auto;
    margin-right: auto;
    
    /* Sombra suave para darle profundidad (opcional) */
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

.card-teal {
    background-color: #1395a3; /* Tu nuevo color aqua/teal */
    color: #ffffff;
}

.card-info h2 {
    font-size: 1.8rem;
    margin: 0;
}

.card-text {
    font-family: 'Poppins', sans-serif;
    font-size: 1.1rem;
    line-height: 1.8;
    color:#FFF;
    margin: 20px 10px;
	background-color:#ec5212;
}

/* Botón de Bloque (Pequeño y Naranja) */
.btn-block {
    display: inline-block;
    color: #fff;
    padding: 10px 30px;
    border-radius: 50px;
    text-decoration: none;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
    transition: background-color 0.3s;
	margin-bottom:20px;
}

.btn-orange {
    background-color:#1395a3;
}

.btn-block:hover {
    background-color: var(--azul-profundo);
}

/* --- Quiénes Somos --- */
.home-about-section {
    padding: 80px 0;
}

.QuienesS { font-size: 3.2rem;  } 

.about-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 60px;
    align-items: center;
}

.about-text {
	font-family: 'Poppins', sans-serif;
    font-size: 1.6rem;
    line-height: 2.2; 
}



.title-with-icon {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 25px;
}

.about-image-rounded {
    width: 100%;
    border-radius: 40px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

.btn-read-more {
    display: inline-block;
    background-color: #050036; /* Azul profundo */
    color: #fff;
    padding: 8px 35px;
    border-radius: 70px; /* Esquinas menos redondeadas como en tu imagen */
    text-decoration: none;
    font-family: 'Fraf', sans-serif;
    font-weight: 500;
	margin:35px 0;
}

/* Divisor Dotted */
.dotted-divider {
	background-image:url(../imagenes/divS001.jpg); background-position:top center; background-repeat:repeat-x;
    margin: 50px auto 0 auto;
	padding:64px 0 0 0;
}

/* --- Galería --- */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 4px;
    margin-bottom: 50px;
}

.gallery-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0px; /* Borde muy sutil */
}

/* Botón Central de Reserva */
.central-reserve-btn {
    text-align: center;
    margin-bottom: 80px;
}

.btn-central-reserve {
    display: inline-block;
    background-color: var(--naranja-destaque);
    color: #fff;
    padding: 8px 60px; /* Más ancho */
    border-radius: 70px;
    text-decoration: none;
    font-family: 'Fraf', sans-serif;
	font-size:2.2;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1.4; 
}

/* --- Hospédate --- */
.home-hospedate-section {
    padding-bottom: 60px;
	margin-bottom:35px;
	background-image:url(../imagenes/florDeco02.jpg); background-repeat:no-repeat; background-position:bottom right;
}

.hospedate-grid {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    gap: 60px;
    align-items: center;
}

.img-full-rounded {
    width: 100%;
    border-radius: 40px;
}

.title-hospedate h1 {
    font-size: 2.5rem;
    line-height: 1.2;
}

/* --- Ajuste Responsivo General --- */
@media (max-width: 992px) {
   
    .main-blocks-grid.two-cols {
        grid-template-columns: 1fr;
        max-width: 500px;
    }
    .about-grid, .hospedate-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .title-with-icon {
        justify-content: center;
    }
    .gallery-grid {
        grid-template-columns: 1fr 1fr;
    }
}