.elementor-9674 .elementor-element.elementor-element-669cf30{--display:flex;--background-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-669cf30:not(.elementor-motion-effects-element-type-background), .elementor-9674 .elementor-element.elementor-element-669cf30 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#007CBA;}.elementor-9674 .elementor-element.elementor-element-669cf30, .elementor-9674 .elementor-element.elementor-element-669cf30::before{--border-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-491b417{--display:flex;--background-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-491b417:not(.elementor-motion-effects-element-type-background), .elementor-9674 .elementor-element.elementor-element-491b417 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#007CBA;}.elementor-9674 .elementor-element.elementor-element-491b417, .elementor-9674 .elementor-element.elementor-element-491b417::before{--border-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-4b9ea00{--display:flex;--background-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-477dd57{--display:flex;--background-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-1198ceb > .elementor-widget-container{margin:-20px 0px 0px 0px;}.elementor-9674 .elementor-element.elementor-element-1fc1e68{--display:flex;--background-transition:0.3s;}.elementor-9674 .elementor-element.elementor-element-1fc1e68:not(.elementor-motion-effects-element-type-background), .elementor-9674 .elementor-element.elementor-element-1fc1e68 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#007CBA;}.elementor-9674 .elementor-element.elementor-element-1fc1e68, .elementor-9674 .elementor-element.elementor-element-1fc1e68::before{--border-transition:0.3s;}/* Start custom CSS for html, class: .elementor-element-68b8f1f *//* Estilo general para el encabezado */
.custom-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    background-color: #007CBA; /* Color de fondo del encabezado */
    position: relative;
    height: 100px;
}

/* Estilo del logo */
.header-logo img {
    width: 250px; /* Ancho del logo */
}

/* Estilo del menú de navegación */
.header-menu {
    display: flex;
    align-items: center;
}

/* Menú en versión de escritorio */
.desktop-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
}

.desktop-menu li {
    margin: 0 15px;
}

.desktop-menu a {
    text-decoration: none;
    color: #fff; /* Color del texto de los enlaces */
    position: relative;
    font-size: 16px; /* Tamaño de fuente */
    padding-bottom: 5px;
}

/* Efecto de subrayado blanco en hover */
.desktop-menu a::after {
    content: '';
    display: block;
    width: 0;
    height: 2px;
    background: #fff; /* Color del subrayado */
    transition: width .3s ease;
    position: absolute;
    bottom: 0;
    left: 0;
}

.desktop-menu a:hover::after {
    width: 100%;
}

/* Menú en versión móvil */
.mobile-menu {
    display: none; /* Ocultar por defecto */
    list-style: none;
    padding: 0;
    margin: 0;
    position: absolute;
    top: 100%;
    right: 0;
    background-color: white;
    width: 100%;
    z-index: 10;
}

.mobile-menu li {
    margin: 0;
    padding: 10px;
    border-bottom: 1px solid #444;
}

.mobile-menu a {
    color: #0A395C;
    text-decoration: none;
    display: block;
}

/* Estilo del botón hamburguesa */
.menu-toggle {
    display: none; /* Ocultar por defecto */
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-left: -10px;
}

.menu-toggle .hamburger {
    width: 25px;
    height: 2px;
    background-color: #fff;
    position: relative;
}

.menu-toggle .hamburger::before,
.menu-toggle .hamburger::after {
    content: '';
    width: 25px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    left: 0;
}

.menu-toggle .hamburger::before {
    top: -7px;
}

.menu-toggle .hamburger::after {
    top: 7px;
}

/* Mostrar el menú móvil cuando el botón hamburguesa es activado */
.menu-toggle.active + .mobile-menu {
    display: block;
}

/* Media query para dispositivos móviles */
@media (max-width: 768px) {
    .desktop-menu {
        display: none; /* Ocultar menú de escritorio en móviles */
    }

    .menu-toggle {
        display: block; /* Mostrar botón hamburguesa en móviles */
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4b9ea00 */.twg-calendario {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
      gap: 20px;
      padding: 20px;
      max-width: 1200px;
      margin: auto;
      box-sizing: border-box;
    }

    .twg-mes {
      display: block;
    }

    .twg-calendario-tabla {
      width: 100%;
      border-collapse: collapse;
      font-family: sans-serif;
    }

    .twg-calendario-tabla th,
    .twg-calendario-tabla td {
      border: 1px solid #ccc;
      text-align: center;
      padding: 8px;
    }

    .twg-calendario-tabla th {
      background-color: #f0f0f0;
    }

    .twg-festivo {
      background-color: #ffdddd;
      color: #c00;
      font-weight: bold;
    }

    .twg-mes h3 {
      text-align: center;
      margin-bottom: 10px;
      font-size: 1.2em;
      background-color: #007CBA;
      color: white;
      padding: 10px;
      border-radius: 8px;
    }

    /* Botones navegación móvil */
    .twg-nav-movil {
      display: none;
    }

    @media (max-width: 768px) {
      .twg-calendario {
        grid-template-columns: 1fr;
      }

      .twg-mes {
        display: none;
      }

      .twg-mes.twg-activo {
        display: block;
      }

      .twg-nav-movil {
        display: flex;
        justify-content: center;
        margin-bottom: 10px;
        gap: 10px;
      }

      .twg-nav-movil button {
        background-color: #007CBA;
        color: white;
        border: none;
        padding: 10px 20px;
        border-radius: 6px;
        cursor: pointer;
        font-size: 14px;
      }
    }/* End custom CSS */