/**
 * Hoja de estilos específica para carpetania.icespace.es
 */

/* ===== VARIABLES DE COLOR ===== */

:root {
    --primary-color: #1a365d;       /* Azul oscuro */
    --secondary-color: #2d3748;     /* Gris azulado */
    --accent-color: #c53030;        /* Rojo */
    --light-color: #f7fafc;         /* Gris muy claro */
    --text-color: #2d3748;          /* Texto principal */
    --dark-bg: #0f172a;            /* Fondo oscuro */
}

 /**********************************
 *           MENÚ SUPERIOR
 **********************************/

    /* Botones del menú superior*/
    .menu-superior {
        position: relative;
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 5px !important;  
        z-index: 110 !important;  
    }

    .menu-superior li {
        color: #000000 !important;
        background: rgb(255, 255, 255) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        padding: 10px 20px !important;
        font-weight: 500 !important;
        transition: all 0.3s ease !important;
        border-radius: 10px !important;
        text-decoration: none !important;
    }

    .menu-superior li:link {
        color: white !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        padding: 10px 20px !important;
        font-weight: 500 !important;
        transition: all 0.3s ease !important;
        border-radius: 10px !important;
        text-decoration: none !important;
    }

    .menu-superior li:hover {
        background: #f777b8 !important;
        color: white !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    }    

/* Estilo para pantallas superiores a 1069px */
/*
@media (min-width: 1070px) {

    /* Cabecera fija con fondo transparente */
    #cabecera {
        position: absolute !important;
        width: 100%;
        background: none; /* Fondo transparente */
        z-index: 100 !important; /* Asegura que la cabecera esté por encima de otros elementos */
    }

    /* capa-transparente */
    #capa-transparente {
        position: fixed;
        width: 100%;
        background: rgba(255, 255, 255, 0.3) !important; /* Fondo blanco con opacidad */
        backdrop-filter: blur(10px) !important; /* Efecto de desenfoque */
    }

    /* Logo en la cabecera */
    #Logo_cabecera {
        height: auto !important;
        width: auto !important;
    }
/*
} /* FIN Estilo para pantallas superiores a 1069px */    

/* Estilo para pantallas menores o iguales a 1069px */
@media screen and (max-width: 1069px) {

  /* Ocultar el menú principal 
  .menu-superior {
    display: none !important;
    flex-direction: column;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: rgb(138, 98, 98);
    z-index: 100;
    padding: 20px;
    box-shadow: 0 5px 10px rgba(0,0,0,0.1);
    margin-top: 0;
    }

  
  /* Crear el botón hamburguesa usando pseudo-elementos 
   #cabecera::before {
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    background-image: url('https://spillpatch.s3-tastewp.com/wp-content/uploads/2026/01/ico_menu_movil.svg');
    background-repeat: no-repeat;
    background-size: contain;
    cursor: pointer;
    position: absolute;
    right: 20px;
    top: 20px;
    z-index: 101;
  }

 /* Ocultar el checkbox 
  #menu-toggle {
    display: block;
  }
  
 /* Cuando el checkbox está marcado, mostrar el menú 
  #menu-toggle:checked ~ .menu-superior,
  #menu-toggle:checked + .menu-toggle-btn + .menu-superior {
    display: flex;
  }
  
  /* Opcional: cambiar el icono cuando el menú está abierto 
  #menu-toggle:checked + .menu-toggle-btn {
    /* background-image: url('ico_menu_cerrar.svg'); Icono de cerrar 
  }  

 /* Estilo para los items 
  .menu-superior li {
    padding: 10px 0;
    border-bottom: 1px solid #eee;
  }
  
  .menu-superior li:last-child {
    border-bottom: none;
  }
  
  .menu-superior a {
    display: block;
    padding: 10px;
    text-decoration: none;
    color: #333;
  }
*/
} /* FIN Estilo para pantallas menores o iguales a 1069px */


/***************************************************************
/* Cambiar el punto de ruptura (breakpoint) del menú a 1069px */
/***************************************************************/
/* 1. Ocultar el botón de menú (hamburguesa) en pantallas grandes */
@media (min-width: 1069px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: none !important;
    }
    /* Asegurar que el menú normal sea visible */
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: block !important;
    }
}

/* 2. Forzar la aparición del botón hamburguesa por debajo de 1069px */
@media (max-width: 1068px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: flex !important;
    }
    /* Ocultar el menú de lista normal */
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none !important;
    }
}



/**********************************
*        CARRUSEL PRINCIPAL
**********************************/
#logo-carrusel {
  animation: flaxup 1s ease 0s 1 normal forwards;
}

/* Genera un efecto de aparición y movimiento de abajo a arriba */
@keyframes flaxup {
  0% {
    opacity: 0;
    transform: translateY(30px);}
  25% {
    opacity: 0.25;    }
  75% {
    opacity: 0.75;} 
  100% {
    opacity: 1;
    transform: translateY(0);}  
}

/**********************************
*        SECCIÓN BIENVENIDOS
**********************************/    

/* ===== TÍTULOS PRINCIPALES ===== */

#Bienvenidos {
    color: var(--primary-color) !important;
    /* color:#1a365d !important; */
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    margin: 40px 0 20px !important;
    text-align: center !important;
    position: relative !important;
    padding-bottom: 15px !important;
}

/* Gradiente del violeta al rosa en IES Carpetania */
#Bienvenidos mark {
    background: linear-gradient(90deg, #823cea, #f074ed) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/* Párrafo bajo el título principal */
#Bienvenidos-text-1 {
    font-size: 1.2rem !important;
    color:#2d3748 !important;
    max-width: 800px !important;
    margin: 0 auto 40px !important;
    text-align: center !important;
    line-height: 1.8 !important;
}

/* ===== COLUMNAS DE SERVICIOS ===== */
#Bienvenidos-tarjetas {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 30px !important;
    margin: 40px 0 !important;
    cursor: pointer;
    text-align: center !important;
}

#Bienvenidos-tarjetas .wp-block-column {
    background: white !important;
    border-radius: 12px !important;
    padding: 30px !important;
    box-shadow: 10px 5px 20px rgba(0, 0, 0, 0.8) !important;
    /* border: 1px solid #e2e8f0 !important; */
    transition: all 1s ease !important;
    animation: flaxup 1s ease 0s 1 normal forwards;
}

#Bienvenidos-tarjetas .wp-block-column:hover {
    transform: translateY(-5px) !important;
    box-shadow: 20px 15px 35px rgba(0, 0, 0, 0.5) !important;
    border-color:#abbfda !important;
}

#Bienvenidos-tarjetas .wp-block-heading {
    color:#1a365d !important;
    font-size: 1.5rem !important;
    margin-bottom: 15px !important;
    border-left: 4px solid var(--accent-color) !important;
    padding-left: 15px !important;
}

#Bienvenidos-tarjetas p {
    color:#2d3748 !important;
    font-size: 1rem !important;
    margin-bottom: 0 !important;
}


/*****************************************
* GRID DE NOTICIAS EN LA PÁGINA PRINCIPAL
******************************************/
/* Creamos el grid en este caso de 3 imágenes,
podrías crear el grid que quisieras dependiendo de del numero de elementos
que le estas pidiendo con el WP_Query */

.blocks-notices {
    display: grid;
    grid-template-areas:
        'Area Area2'
        'Area Area3';
    grid-gap: 1rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
    box-shadow: 10px 5px 20px rgba(0, 0, 0, 0.8) !important;
}

.block-notice {
    width: 100%;
    min-height: 300px;
    overflow: hidden;
    position: relative;
}
.alignwide {
    max-width: unset;
    width: unset;
}

/* Es importante nombrar cada uno de nuestros elementos para luego posicionarlos con el grid */
/* Esta es una sección que deberas aumentar siempre que tu diseño tenga mas de 3 elementos */

.block-notice-0 {
    grid-area: Area;
}
.block-notice-1 {
    grid-area: Area2;
}
.block-notice-2 {
    grid-area: Area3;
}

/* Capa superpuesta para resaltar el texto */

.overlay:before {
    content: "";
    background: rgba(0,0,0,0.3);
    width: 100%;
    height: 100%;
    position: absolute;
}
.block-notice p {
    position: absolute;
    bottom: 0;
    padding: .5rem 1rem;
    color: #ffffff;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: visibility 0s, opacity 0.5s linear;
    transition: visibility 0s, opacity 0.5s linear;
}

/* La clase overlay me sirve para animar los textos cuando se hace hover en ella */

.overlay:hover > .block-notice-text {
    top: 0;
    -webkit-transition: all 800ms ease-in-out;
    transition: all 800ms ease-in-out;
}
.overlay:hover > .block-notice-text h2 {
    bottom: 50px;
    -webkit-transition: all 800ms ease-in-out;
    transition: all 800ms ease-in-out;
}
.overlay:hover > .block-notice-text p {
    visibility: visible;
    opacity: 1;
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
    -webkit-transition-delay: 0.4s;
    transition-delay: 0.4s;
}
.overlay:hover:before {
    content: "";
    background: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    position: absolute;
}

/* En este caso he querido añadir una tipografía responsive que va de:
30px la mas grande a 20px la mas pequeña para moviles */

.block-notice-text h2 {
    font-size: calc(20px + (30 - 20) * ((100vw - 300px) / (1600 - 300)));
}
.block-notice h2 {
    position: absolute;
    bottom: 0;
    padding: 1rem;
    color: #ffffff;
}
@media (max-width: 921px){
    .blocks-notices {
        grid-template-areas:
            'Area'
            'Area2'
            'Area3';
    }
}