@charset "UTF-8";

/*scroll*/
body *:not(.popup)::-webkit-scrollbar {
    width: 8px;
    height: 8px
}

body *:not(.popup)::-webkit-scrollbar-track {
    background: #eee;
    border-radius: 10px
}

body *:not(.popup)::-webkit-scrollbar-thumb {
    background-color: #0069b4;
    border: 2px solid #eee;
    border-radius: 10px
}

/*fuente*/
/*fuente icomoon*/
@media(min-width:992px) {
    .icon-flecha0.abajo:after {
        content: '\e90a'
    }

    .icon-flecha0.arriba:after {
        content: '\e90b'
    }

    .icon-flecha0.derecha:after {
        content: '\e90c'
    }

    .icon-flecha0.izquierda:after {
        content: '\e90d'
    }

    .icon-flecha1.abajo:after {
        content: '\e90e'
    }

    .icon-flecha1.arriba:after {
        content: '\e90f'
    }

    .icon-flecha1.derecha:after {
        content: '\e910'
    }

    .icon-flecha1.izquierda:after {
        content: '\e911'
    }

    .icon-flecha2.abajo:after {
        content: '\e912'
    }

    .icon-flecha2.arriba:after {
        content: '\e913'
    }

    .icon-flecha2.derecha:after {
        content: '\e914'
    }

    .icon-flecha2.izquierda:after {
        content: '\e915'
    }
}

/*cabecera*/
#cabecera.capa-debajo:before {
    background: rgba(32, 54, 109, 0.95);
    opacity: 0;
    transition: opacity 0.4s;
    will-change: opacity
}

#cabecera_inner.capa-debajo:before {
    background: rgba(32, 54, 109, 0.95);
}

body.soporte #cabecera.capa-debajo:before {
    opacity: 1
}

@media(max-width:991.98px) {

    #control-sanguche:checked~#cabecera.capa-debajo:before,
    #control-sanguche_inner:checked~#cabecera_inner.capa-debajo:before {
        opacity: 1
    }
}

/*cabecera menu*/
@media(min-width:992px) {
    .cabecera_menu-link:before {
        content: '';
        background: #fff;
        display: block;
        width: 100%;
        height: 100%;
        opacity: 0;
        position: absolute;
        left: 0;
        top: 0;
        transition: opacity 0.4s;
        will-change: opacity
    }

    .cabecera_menu-link:hover {
        color: #0069b4
    }

    .cabecera_menu-link:hover:before {
        opacity: 1
    }

    .cabecera_menu-link.activo {
        color: #0069b4
    }

    .cabecera_menu-link.activo:before {
        opacity: 1
    }
}

/*cabecera sanguche*/
@media(max-width:991.98px) {

    #cabecera_sang-icon u,
    #cabecera_inner_sang-icon u {
        background: #fff;
        transform-origin: left center;
        transition: transform 0.4s;
        will-change: transform
    }

    #cabecera_sang-icon u:first-child,
    #cabecera_inner_sang-icon u:first-child {
        transform: translateY(-0.3em)
    }

    #cabecera_sang-icon u:last-child,
    #cabecera_inner_sang-icon u:last-child {
        transform: translateY(0.3em)
    }

    #control-sanguche:checked~#cabecera #cabecera_sang-icon u,
    #control-sanguche_inner:checked~#cabecera_inner #cabecera_inner_sang-icon u {
        transform-origin: center center
    }

    #control-sanguche:checked~#cabecera #cabecera_sang-icon u:nth-child(1),
    #control-sanguche_inner:checked~#cabecera_inner #cabecera_inner_sang-icon u:nth-child(1) {
        transform: rotate(45deg)
    }

    #control-sanguche:checked~#cabecera #cabecera_sang-icon u:nth-child(2),
    #control-sanguche_inner:checked~#cabecera_inner #cabecera_inner_sang-icon u:nth-child(2) {
        transform: scaleX(0)
    }

    #control-sanguche:checked~#cabecera #cabecera_sang-icon u:nth-child(3),
    #control-sanguche_inner:checked~#cabecera_inner #cabecera_inner_sang-icon u:nth-child(3) {
        transform: rotate(-45deg)
    }
}

/*sanguche*/
#sanguche,
#sanguche_inner {
    background: #fff;
    transition-duration: 0.4s
}

/*sanguche contenedor*/
@media(max-width:991.98px) {

    #sanguche_con0,
    #sanguche_inner_con0 {
        border-top-color: transparent
    }
}

/*sanguche menu*/
.sanguche_menu-item:not(:last-child) {
    border-bottom-color: rgba(0, 105, 180, 0.3)
}

.sanguche_menu-titu {
    color: #20366d
}

@media(max-width:991.98px) {
    .sanguche_menu-item.panel.activo .sanguche_menu-titu--text {
        font-weight: 600
    }
}

@media(min-width:992px) {
    .sanguche_menu-titu {
        color: #fff;
        opacity: 0.5;
        transition: opacity 0.4s;
        will-change: opacity
    }

    .sanguche_menu-titu--text {
        transition: transform 0.4s;
        will-change: transform
    }

    .sanguche_menu-item:hover {
        z-index: 1
    }

    .sanguche_menu-item:hover .sanguche_menu-titu {
        font-weight: 700;
        opacity: 1;
        z-index: 1
    }

    .sanguche_menu-item:hover .sanguche_menu-titu--text {
        transform: translateX(3rem)
    }
}

/*mayor*/
.mayor {
    background: #fff
}

/*pie*/
#pie {
    background: #fff;
    border-top-color: rgba(32, 54, 109, 0.1);
    z-index: 1
}

/*pie fila*/
#pie_fila {
    color: #20366d
}

/*pie redes*/
#pie_rede a.capa-encima:after {
    border: 1px solid #20366d;
    border-radius: 50%
}

@media(min-width:992px) {
    #pie_rede a:hover {
        color: #fff
    }

    #pie_rede a.capa-lg-debajo:before {
        background: #20366d;
        border-radius: 50%;
        transform: scale(0);
        transition: transform 0.4s;
        will-change: transform
    }

    #pie_rede a.capa-lg-debajo:hover:before {
        transform: scale(1)
    }
}

/*pie menu*/
@media(min-width:992px) {
    .pie_menu-con1 a:hover {
        color: #e6332a
    }
}

/*pie creditos*/
.pie_cred-item address {
    color: rgba(26, 32, 46, 0.4)
}

@media(min-width:992px) {
    .pie_cred-item a:hover {
        color: #20366d
    }
}

/*calltoaction*/
@media(min-width:992px) {
    .calltoaction_link:before {
        content: '';
        border-radius: 50%;
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        animation: _onda 2s infinite
    }

    .calltoaction_link .figura {
        transition: transform 0.4s;
        will-change: transform
    }

    .calltoaction_link:hover .figura {
        transform: scale(1.1)
    }

    .calltoaction.telefono .calltoaction_link:before {
        background: #0069b4
    }

    .calltoaction.whatsapp .calltoaction_link:before {
        background: #23c02e
    }
}

/*popup*/
.popup {
    background: rgba(0, 0, 0, 0.8)
}

.popup-btn.popup-cer {
    background: #fff;
    border-radius: 50%;
    color: #0069b4
}

@media(min-width:992px) {
    .popup-btn.popup-cer:before {
        content: '';
        background: #00a8dc;
        border-radius: 50%;
        display: block;
        width: 100%;
        height: 100%;
        opacity: 0;
        position: absolute;
        left: 0;
        top: 0;
        transition: opacity 0.4s;
        will-change: opacity
    }

    .popup-btn.popup-cer:hover {
        color: #fff
    }

    .popup-btn.popup-cer:hover:before {
        opacity: 1
    }
}

/*boton*/
.boton {
    color: #fff
}

.boton:before,
.boton:after {
    content: '';
    border-radius: 100px;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    transition: opacity 0.4s;
    will-change: opacity
}

.boton:before {
    background: #e6332a;
}

.boton:after {
    background: #fff;
    border: 2px solid #e6332a;
    opacity: 0
}

.boton.activo {
    color: #e6332a
}

.boton.activo:before {
    opacity: 0
}

.boton.activo:after {
    opacity: 1
}

@media(min-width:992px) {
    .boton:hover {
        color: #e6332a
    }

    .boton:hover:before {
        opacity: 0
    }

    .boton:hover:after {
        opacity: 1
    }
}

/*carrusel*/
@keyframes _vineta {
    from {
        transform: translateX(-200%)
    }

    to {
        transform: translateX(-100%)
    }
}

.carrusel-pun span {
    border-radius: 10px;
    overflow: hidden
}

.carrusel-pun span:before {
    border-radius: 10px;
    transition: transform 11s linear;
    will-change: transform
}

.carrusel-pun li.activo span:before {
    transform: translateX(-100%);
    animation: _vineta 10s linear
}

@media(min-width:992px) {
    .carrusel-pun button:hover span {
        outline: 1px solid
    }
}

/*carrusel banner*/
#carrusel-banner {
    color: #fff
}

#carrusel-banner .texto.titulo {
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5)
}

#carrusel-banner .carrusel-pun span {
    background: rgba(251, 249, 237, 0.5)
}

#carrusel-banner .carrusel-pun span:before {
    background: #fbf9ed
}

@media(min-width:992px) {
    #carrusel-banner .carrusel-ite {
        transition-duration: 1s
    }

    #carrusel-banner .carrusel-ite .texto {
        transition-duration: 0.8s
    }

    #carrusel-banner .carrusel-ite .texto.subtitulo {
        transition-delay: 0.4s
    }

    #carrusel-banner .carrusel-ite.activo .texto {
        transform: translateX(100%)
    }

    #carrusel-banner .carrusel-pun button:hover span {
        outline-color: #fbf9ed
    }
}

/*carrusel base*/
.carrusel-base .carrusel-fle {
    border-color: #20366d;
    border-radius: 50%;
    color: #20366d;
    opacity: 0.3
}

.carrusel-base .carrusel-pun span {
    background: rgba(228, 228, 228, 0.5)
}

.carrusel-base .carrusel-pun span:before {
    background: #7fb4d9
}

.carrusel-base .carrusel-fra {
    color: #20366d
}

@media(min-width:992px) {
    .carrusel-base .carrusel-fle {
        transition: opacity 0.4s;
        will-change: opacity
    }

    .carrusel-base .carrusel-fle:hover {
        opacity: 1
    }

    .carrusel-base .carrusel-pun button:hover span {
        outline-color: #7fb4d9
    }
}

/*contactos*/
.contactos-ite .icon.icon-contacto1,
.contactos-tit .texto.titulo {
    color: #0069b4
}

.contactos-dat .texto {
    color: #000
}

@media(min-width:992px) {

    .contactos-dat a:not([href*='tel:']):hover,
    .contactos-lin:not([href*='tel:']):hover .texto.dato {
        color: #0069b4
    }
}

/*encabezado*/
.encabezado hr {
    background: #0069b4
}

.encabezado .texto.subtitulo,
.encabezado .texto.enriquecido {
    color: #000
}

/*fondo*/
/*fondo bolas*/
.fondo-bol {
    background: url(../img/fondo-bolas.webp) no-repeat center center;
    background-size: cover;
    opacity: 0.1
}

/*formulario*/
.formulario-cam.has-feedback.has-success .formulario-con:before {
    background-image: url(../img/form-success.webp);
    border-color: #20366d
}

.formulario-cam.escrito {
    background: #fff;
    border-color: transparent;
    border-radius: 3px;
    color: #20366d
}

.formulario-cam.escrito .formulario-con:before {
    top: calc(5px + 0.7rem)
}

.formulario-cam.escrito .formulario-ctr:disabled~.formulario-mar {
    background: #eee;
    color: #ccc
}

.formulario-cam.escrito .formulario-ctr:-webkit-autofill~.formulario-mar span {
    color: #0069b4;
    transform: scale(0.7) translateY(-100%)
}

.formulario-cam.escrito .formulario-ctr:focus~.formulario-mar span,
.formulario-cam.escrito .formulario-ctr:active~.formulario-mar span,
.formulario-cam.escrito.activo .formulario-mar span {
    color: #0069b4;
    transform: scale(0.7) translateY(-100%)
}

.formulario-cam.escrito.has-feedback .formulario-con {
    border-right-width: 30px !important
}

.formulario-cam.visto:before {
    margin-top: -0.5em;
    top: 50%
}

.formulario-cam.visto .formulario-cas:before {
    border: 1px solid #fff;
    border-radius: 5px
}

.formulario-cam.visto .formulario-cas:after {
    border: solid #fff;
    border-width: 0 2px 2px 0
}

.formulario-cam.visto .formulario-mar {
    color: #fff
}

.formulario-cam.visto.has-feedback .control~.formulario-con {
    border-right-width: 30px !important
}

@media(min-width:992px) {
    .formulario-cam.visto .formulario-mar a:hover {
        color: #e6332a
    }
}

/*formulario inicio*/
.formulario-inicio {
    background: #20366d
}

.formulario-inicio .texto {
    color: #fff
}

@media(min-width:992px) {
    .formulario-inicio {
        border-radius: 5px
    }
}

/*postal*/
/*postal1*/
.postal1-fon {
    background: #20366d;
    border-radius: 5px
}

.postal1-fon .fondo-img {
    opacity: 0.2
}

.postal1-bol:before {
    content: '';
    border: 1px dashed #fff;
    border-radius: 50%;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0
}

.postal1-tit .texto.titulo {
    color: #fff
}

.postal1-btn {
    display: none
}

@media(min-width:992px) {
    .postal1-fon {
        transition: font-size 0.2s
    }

    .postal1-fon:before {
        content: '';
        background: #04060a;
        display: block;
        width: 100%;
        height: 100%;
        opacity: 0;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 1;
        transition: opacity 0.4s;
        will-change: opacity
    }

    .postal1-fon .fondo-img {
        transition: opacity 0.6s;
        will-change: opacity
    }

    .postal1-bol,
    .postal1-bol:before {
        transition: transform 0.4s;
        will-change: transform
    }

    .postal1-bol {
        transform-origin: center bottom
    }

    .postal1-tit {
        transition: transform 0.4s;
        will-change: transform
    }

    .postal1-btn {
        display: block;
        opacity: 0;
        transition: opacity 0.4s;
        will-change: opacity
    }

    .postal1-lin:hover .postal1-fon:before {
        opacity: 0.5
    }

    .postal1-lin:hover .postal1-fon .fondo-img {
        opacity: 0.7
    }

    .postal1-lin:hover .postal1-bol {
        transform: scale(1.5);
        transition-delay: 0.2s
    }

    .postal1-lin:hover .postal1-bol:before {
        transform: rotate(90deg);
        transition-duration: 0.8s;
        transition-delay: 0.4s
    }

    .postal1-lin:hover .postal1-tit {
        transform: translateY(10px);
        transition-delay: 0.4s
    }

    .postal1-lin:hover .postal1-btn {
        opacity: 1;
        transition-delay: 0.6s
    }
}

/*reproductor*/
.reproductor {
    border-radius: 1.5rem;
    overflow: hidden
}

.reproductor .fondo {
    background: #20366d
}

.reproductor .fondo-img {
    opacity: 0.8
}

.reproductor .icon.icon-play {
    color: #fff;
    opacity: 0.7
}

@media(min-width:992px) {
    .reproductor .fondo-img {
        transition: opacity 0.4s;
        will-change: opacity
    }

    .reproductor .icon.icon-play {
        transition: opacity 0.4s;
        will-change: opacity
    }

    .reproductor:hover .fondo-img {
        opacity: 0.4
    }

    .reproductor:hover .icon.icon-play {
        opacity: 1
    }
}

/*texto*/
/*texto enriquecido*/
.texto.enriquecido a {
    color: #0069b4
}

.texto.enriquecido button {
    background: #0069b4;
    border-color: #fff;
    border-radius: 100px;
    color: #fff
}

.texto.enriquecido hr {
    background: #eee
}

.texto.enriquecido li::marker {
    color: #20366d
}

.texto.enriquecido td {
    border-color: #0069b4
}

@media(min-width:992px) {
    .texto.enriquecido a:hover {
        color: #e6332a;
        text-decoration: underline
    }

    .texto.enriquecido button:hover {
        background: #fff;
        border-color: #0069b4;
        color: #0069b4
    }
}

/*texto titular*/
.texto.titulo.titular {
    color: #20366d
}
/*INICIO ICONO WHATSAPP*/
.whatsapp-icon {
    position: fixed;
    bottom: 85px;
    right: 20px;
    width: 90px;
    height: 90px;
    z-index: 1000;
    animation: pulse 1.5s ease-in-out infinite;
}

.whatsapp-icon img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.2);
}

/* Animación de pulsación */
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}
/* Estilos Responsive */
@media (max-width: 768px) {
    .whatsapp-icon {
        width: 70px;
        height: 70px;
        bottom: 15px;
        right: 15px;
    }
}

@media (max-width: 480px) {
    .whatsapp-icon {
        width: 70px;
        height: 70px;
        bottom: 10px;
        right: 10px;
    }
}
/*FIN ICONO WHATSAPP*/