/*
 Theme Name:   Peluqueria Espana Child
 Theme URI:    http://peluqueria-espaa.local/ /* URL de tu sitio local */
 Description:  Tema hijo para Peluqueria Espana
 Author:       Tu Nombre
 Author URI:   http://peluqueria-espaa.local/ /* URL de tu sitio local */
 Template:     generatepress
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  peluqueria-espaa-child
*/

/* --- Aquí se importan las fuentes de Google Fonts --- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;700&family=Montserrat:wght@400;600;700&display=swap');

/* --- Aquí es donde irá el resto de tu CSS personalizado --- */
/* General Body & Typography */
body {
    font-family: 'Inter', 'Lato', 'Montserrat', sans-serif; /* Usaremos Inter como principal, puedes cambiar */
    color: #333333;
    line-height: 1.6;
    margin: 0;
    padding: 0;
    background-color: #f8f8f8; /* Un gris muy claro para el fondo general */
}

.container {
    max-width: 1080px; /* Ancho máximo del contenido */
    margin: 0 auto;
    padding: 0 20px;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif; /* Para títulos, un poco más distintivo */
    color: #333333;
    line-height: 1.2;
    margin-bottom: 1em;
}

h1 { font-size: 3.5em; text-transform: uppercase; letter-spacing: 5px; }
h2 { font-size: 2.5em; text-transform: uppercase; text-align: center; margin-bottom: 1.5em; }
h3 { font-size: 1.8em; }
p { margin-bottom: 1em; }

a {
    color: #555555;
    text-decoration: none;
    transition: color 0.3s ease;
}
a:hover {
    color: #333333;
}

/* Secciones Generales */
.section-padding {
    padding: 80px 0; /* Espaciado vertical para las secciones */
}

.full-height-section {
    min-height: 100vh; /* Para que la sección de portada ocupe toda la altura de la pantalla */
    display: flex;
    align-items: center; /* Centrar verticalmente el contenido */
    justify-content: center; /* Centrar horizontalmente */
    text-align: center;
    position: relative;
    overflow: hidden; /* Para manejar la imagen de fondo */
    background-color: #555555; /* Fondo de respaldo */
}

.background-grey {
    background-color: #f0f0f0; /* Un gris claro para seccionar */
}

/* Hero Section */
#hero-section {
    /* Aquí es donde integraremos tu imagen 4K de portada */
    background-image: url('http://peluqueria-espaa.local/wp-content/uploads/2025/10/fondo-chica-cartel-.png'); /* ¡IMPORTANTE! Reemplaza con la URL real de tu imagen */
    background-size: cover;
    background-position: center center;
    color: #ffffff; /* Texto blanco sobre la imagen oscura */
    position: relative;
    z-index: 1; /* Para que el contenido esté por encima del overlay */
}

#hero-section::before { /* Overlay degradado */
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.7) 100%); /* Nuevo degradado */
    z-index: -1;
}

.hero-content {
    position: relative;
    z-index: 2;
    padding: 20px;
}

.site-branding .site-title-pre {
    font-size: 1.2em;
    letter-spacing: 2px;
    margin-bottom: -10px; /* Acercar a España */
    font-weight: normal;
}

.site-branding .site-title {
    font-size: 6em; /* Más grande para "ESPAÑA" */
    margin: 0;
    letter-spacing: 10px;
    color: #ffffff;
    font-weight: 700;
}
.site-description-hero {
    font-size: 1.2em;
    font-style: italic;
    color: #e0e0e0;
    margin-top: 20px;
}

.hero-buttons {
    margin-top: 40px;
}

/* Buttons */
.button {
    display: inline-block;
    padding: 15px 35px; /* Más padding para que sean más grandes */
    margin: 10px;
    border-radius: 50px; /* Más redondeados, como píldoras */
    font-size: 1.1em;
    font-weight: 600; /* Un poco menos negrita, más moderno */
    text-transform: uppercase;
    transition: all 0.3s ease;
    border: none; /* Quitamos el borde para un look más limpio */
    cursor: pointer; /* Indicar que son clickeables */
    letter-spacing: 1px; /* Espaciado entre letras */
    text-decoration: none; /* Asegurar que no tienen subrayado */
}

/* Botón Principal (Ej: para "Prenota Online") */
.primary-button {
    background-color: #A0522D; /* Un color marrón/terroso más distintivo */
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); /* Sutil sombra */
}
.primary-button:hover {
    background-color: #8B4513; /* Un tono más oscuro al pasar el ratón */
    transform: translateY(-2px); /* Pequeño efecto de elevación */
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
}

/* Botón Secundario (Ej: para "WhatsApp") */
.secondary-button {
    background-color: rgba(255, 255, 255, 0.2); /* Fondo semitransparente para que se vea la imagen de fondo */
    color: #ffffff;
    border: 2px solid #ffffff; /* Borde blanco para destacarlo */
}
.secondary-button:hover {
    background-color: #ffffff; /* Fondo blanco sólido al pasar el ratón */
    color: #A0522D; /* Texto del color primario */
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
}

/* About Us Section */
#about-us-section .about-content {
    display: flex;
    flex-direction: column; /* Por defecto en columna para móviles */
    gap: 40px;
    /* align-items: center;  <-- LO QUITAMOS para que el texto no esté centrado */
}

#about-us-section .about-text {
    max-width: 100%; /* Ocupa todo el ancho disponible en el contenedor */
    text-align: left; /* Alineado a la izquierda */
    padding: 0 20px; /* Un poco de padding para que no se pegue a los bordes */
}

/* Price List Section */
#price-list-section .section-subtitle {
    text-align: center;
    margin-bottom: 30px;
    color: #555555;
}

#price-list-section .price-category {
    margin-bottom: 40px;
    background-color: #ffffff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05);
}

#price-list-section .price-category h3 {
    text-align: center;
    color: #333333;
    font-weight: 600;
    margin-bottom: 25px;
    position: relative;
}

#price-list-section .price-category h3::after {
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    background-color: #A0522D; /* Línea decorativa del color primario */
    margin: 10px auto 0;
}

#price-list-section .price-category ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#price-list-section .price-category li {
    display: flex;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px dotted #e0e0e0;
    font-size: 1.1em;
}

#price-list-section .price-category li:last-child {
    border-bottom: none;
}

#price-list-section .price-category li span:first-child {
    font-weight: 500;
    color: #333333;
}
#price-list-section .price-category li span:last-child {
    font-weight: bold;
    color: #A0522D; /* Precio del color primario */
}
.note-prices {
    text-align: center;
    font-size: 0.9em;
    color: #777777;
    margin-top: 30px;
}


/* Footer */
#main-footer {
    background-color: #333333;
    color: #ffffff;
    text-align: center;
    font-size: 0.9em;
}

#main-footer .container {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

#main-footer .contact-info p {
    margin: 5px 0;
}

#main-footer a {
    color: #cccccc;
}
#main-footer a:hover {
    color: #ffffff;
}

/* Responsive Adjustments */
@media (min-width: 768px) {
    h1 { font-size: 4.5em; }
    h2 { font-size: 3em; }

    #about-us-section .about-content {
        flex-direction: row; /* En fila para pantallas más grandes */
        justify-content: flex-start; /* Alinea al inicio */
        align-items: flex-start; /* Alinea al inicio (arriba) */
    }
    #about-us-section .about-text {
        max-width: 100%; /* Ocupa más espacio en escritorio */
        text-align: left;
    }
}

@media (min-width: 1024px) {
    h1 { font-size: 7em; }
    .site-title-pre { font-size: 1.5em; }
}