/*INIT MAIN*/

body{
    background: linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,1)), url('../images/contenido/bgfooter.jpg') 50% 250% / cover;
}

.sin-padding{
    padding: 0;
}

#main{
    background-color: #004080;
	margin-top: 60px;
}

.container-fluid{
	padding: 0;
}

.barra-superior{
	height: 50px;
}

.barra-superior > .container{
	height: 50px;
}

.bg-konectatic{
    background-color: #004080;
}

.bg-default{
  	transition: .5s all ease-out;
}

.bg-success{
  	transition: .5s all ease-out;
  	fill: #198754 !important;
}

.bg-info{
  	transition: .5s all ease-out;
  	fill: #0dcaf0 !important;
}

.center{
    text-align: center;
}

/*END MAIN*/


/*INIT SCROLL*/

.barraScroll::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 2px rgba(0,0,0,0.3);
    background-color: #F5F5F5;
}

.barraScroll::-webkit-scrollbar{
    width: 2px;
    height: 2px;
    background-color: #F5F5F5;
}

.barraScroll::-webkit-scrollbar-thumb{
    background-color: #000000;
}

/*
*   ScrollBar más amplia (6px)
*/
.barraScrollAmplia::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 10px rgba(0,0,0,0.3);
    background-color: #F5F5F5;
}

.barraScrollAmplia::-webkit-scrollbar{
    width: 10px;
    height: 10px;
    background-color: #F5F5F5;
}

.barraScrollAmplia::-webkit-scrollbar-thumb{
    background-color: #000000;
}


/*
*   ScrollBar más amplia (6px)
*/
.barraScrollAmpliaBlanco::-webkit-scrollbar-track{
    -webkit-box-shadow: inset 0 0 6px rgba(255,255,255,0.3);
    background-color: #000000;
    border-radius: 5px;
}

.barraScrollAmpliaBlanco::-webkit-scrollbar{
    width: 6px;
    height: 6px;
    background-color: #000000;
}

.barraScrollAmpliaBlanco::-webkit-scrollbar-thumb{
    border-radius: 5px;
    background-color: #808080;
}

/*INIT SCROLL*/


/*INIT MENÚ*/

.banner-carrusel{
	height: 60vh;
    /*background: url('../imagenes/identidad/fondo_01.png') 50% 70% / cover;*/
    background: url('../imagenes/identidad/banner-konectatic-01.jpg') 50% 70% / cover;
    background-color: #004080;
}

.sticky-top.barra-navegacion{
	top: 0px;
	z-index: 9000;
	height: 50px;
}

.barra-navegacion > .container > .navbar-brand{
    z-index: 100;
}

.barra-navegacion > .container > .navbar-brand > div{
	margin-top: 90px;
	width: 80px;
	height: 40px;
    border-bottom-left-radius: 40px;  /* 100px of height + 10px of border */
    border-bottom-right-radius: 40px; /* 100px of height + 10px of border */
	border: 4px solid #000000;
	border-top: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.barra-navegacion > .container > .navbar-brand > div > img{
	margin-top: -36px;
	width: 72px;
}

.barra-navegacion > .container > .navbar-nav{
	width: 100%;
}

.navbar-dark .navbar-nav .nav-link.active, .navbar-dark .navbar-nav .show>.nav-link {
	background-color: #394047;
    border-radius: 10px;
}

.navbar-toggler{
    position: absolute;
    top: 7px;
    left: 0.75em;
}

.navbar-toggler span{
    transform: rotate(-90deg);
}

.menu-xs{
    width: 100%;
    display: none;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    background-color: #212529;
    padding-top: 50px;
    padding-bottom: 20px;
    margin-top: -45px;
}

.menu-xs a{
    margin: 3px 5px;;
}

.menu-xs.active{
    display: flex;
    height: fit-content;
}

@media only screen and (max-width: 576px) {

    .barra-navegacion > .container{
        padding: 0;
	}

    .barra-navegacion > .container > .navbar-brand{
        margin: auto;
	}

    .barra-navegacion > .container > .navbar-brand > div{
        margin-top: 35px;
    }

    .barra-navegacion .navbar-nav{
        display: none;
    }

}

/*END MENÚ*/


/*INIT PORTADA*/

.portada{
    background-image: repeating-linear-gradient(36deg, rgba(255,255,255, 0.1), rgba(255,255,255, 0.1) 1px, transparent 0px, transparent 2px);
    background-color: #67686b;
    background-size: 4px 4px;
    padding-top: 20px;
    height: calc(100vh - 119px);
}

.portada .mascara{
    background-image: url('../images/identidad/f1.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 100%;
    width: 100%;
    position: absolute;
    /* background-color: #46b0be; */
    opacity: .5;
}

.portada .barra{
    background-image: url('../images/identidad/barra_superior.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 20px;
    width: 100%;
    position: absolute;
    top: 0;
}

.carrusel{
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
}

.carrusel .carousel-inner{
    height: 100%;
}

.carrusel .carousel-inner .container-fluid, .carrusel .carousel-inner .container{
    height: 100%;
}

.carrusel .carousel-item{
    height: 100%;
    width: 100%;
}

#carrusel-contenido .carousel-inner{
    overflow: hidden;
}

#carrusel-contenido .carousel-inner > .container-fluid{
    background: linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,1)), url('../images/contenido/bgfooter.jpg') 50% 70% / cover;
}

/*END PORTADA*/


/*INIT SLIDE KONECTATIC*/

.slide-konectatic{
    display: flex;
    flex-wrap: wrap;
    align-content: center;
}

.slide-konectatic .contenedor-logo.slide-lg{
    width: 50%;
}

.slide-konectatic .contenedor-logo.slide-lg .logo{
    width: fit-content;
    background-color: #ffffff;
    border-radius: 15px;
    padding: 20px;
    margin-top: 100px;
    margin-bottom: 50px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    margin-left: -100px;
}

.slide-konectatic .contenedor-logo.slide-lg .logo img{
    width: 30vw;
}

.slide-konectatic .contenedor-logo.slide-xs{
    width: 100%;
}

.slide-konectatic .contenedor-logo.slide-xs .logo{
    width: fit-content;
    background-color: #ffffff;
    border-radius: 15px;
    padding: 20px;
    margin-bottom: 20px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.slide-konectatic .contenedor-logo.slide-xs .logo img{
    width: 100%;
}

.slide-konectatic .contenedor-imagen.slide-lg{
    width: 50%;
    height: 80%;
    text-align: right;
}

.slide-konectatic .contenedor-imagen.slide-lg .imagen{
    margin-top: 30px;
}

.slide-konectatic .contenedor-imagen.slide-lg .imagen img{
    width: 85%;
    background-color: #ffffff;
    border-radius: 15px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.slide-konectatic .contenedor-titulo{
    width: 50%;
}

.slide-konectatic .contenedor-titulo h1{
    font-weight: 900;
}

.slide-konectatic .contenedor-titulo .titulo{

}

.slide-konectatic .contenedor-texto{
    width: 100%;
    background-color: #ffffff;
    border-radius: 15px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

/*END SLIDE KONECTATIC*/


/*INIT SLIDE TECNOLOGÍA*/

.slide-tecnologia{
    display: flex;
    flex-wrap: wrap;
    align-content: center;
}

.slide-tecnologia .df{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.slide-tecnologia .contenedor-contenido{
    width: 100%;
    font-size: 1.5em;
}

.slide-tecnologia .contenedor-contenido .contenido{
    width: 100%;
    background-color: #ffffff;
    border-radius: 80px;
    padding: 20px;
    margin-bottom: 50px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.slide-tecnologia .contenedor-contenido .contenido img{
    width: 80%;
    border-radius: 30%;
}

@media only screen and (max-width: 576px) {

	.slide-tecnologia .contenedor-contenido{
        font-size: 0.8em;
	}

    .slide-tecnologia .contenedor-contenido .contenido{
        margin-top: 20px;
    }

	.slide-tecnologia .contenedor-contenido .contenido .row{
        padding-top: 50px;
	}

    .slide-tecnologia .contenedor-contenido .contenido img{
        width: 100%;
    }

}

/*END SLIDE TECNOLOGÍA*/


/*INIT SLIDE OFRECE*/

.slide-ofrece{
    display: flex;
    flex-wrap: wrap;
    align-content: center;
}

.slide-ofrece .df{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}

.slide-ofrece .contenedor-contenido{
    width: 100%;
    font-size: 1.5em;
}

.slide-ofrece .contenedor-contenido .contenido{
    width: 100%;
    background-color: #ffffff;
    border-radius: 80px;
    padding: 20px;
    margin-bottom: 50px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.slide-ofrece .contenedor-contenido .contenido img{
    width: 80%;
    border-radius: 30%;
}

@media only screen and (max-width: 576px) {

	.slide-ofrece .contenedor-contenido{
        font-size: 0.8em;
	}

    .slide-ofrece .contenedor-contenido .contenido{
        margin-top: 20px;
    }

    .slide-ofrece .contenedor-contenido .contenido img{
        width: 100%;
    }

}

/*END SLIDE OFRECE*/


/*INIT SLIDE*/

.slide-xs{
    display: none;
}

@media only screen and (max-width: 576px) {

	.slide-lg{
		display: none;
	}

	.slide-xs{
		display: inline-block;
        font-size: 0.8em;
	}

    .slide-konectatic .contenedor-logo.slide-xs .logo{
        padding: 10px;
    }

}

/*END SLIDE*/


/*INIT SECCIÓN*/

.titulo-seccion{
	padding-top: 80px;
}

.titulo-seccion > h1{
	text-align: center;
}

.panel-konectatic{
	min-height: 50vh;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    background-color: #fff;
    border-radius: 20px;
	margin-top:30px;
	margin-bottom:10px;
}

.panel-konectatic.sm{
    min-height: fit-content;
    padding: 20px;
}


@media only screen and (max-width: 576px) {

	.seccion-konectatic{
        padding: 0px 10px;
        padding-bottom: 30px;
	}

    .card-nosotros .card-body{
        font-size: 0.8em;
        text-align: center;
    }

    #footer-seccion-nosotros svg{
        margin-top: -3px;
    }

    #footer-seccion-servicios svg{
        margin-top: -3px;
    }

    #footer-seccion-portafolio svg{
        margin-top: -3px;
    }

    #footer-seccion-contacto svg{
        margin-top: -3px;
    }

}

@media only screen and (max-width: 280px) {

    #footer-seccion-nosotros svg{
        margin-top: -10px;
    }

    #footer-seccion-servicios svg{
        margin-top: -10px;
    }

    #footer-seccion-portafolio svg{
        margin-top: -10px;
    }

    #footer-seccion-contacto svg{
        margin-top: -10px;
    }

}

/*END SECCIÓN*/


/*INIT SECCIÓN NOSOTROS*/

#seccion-nosotros{
	padding:0;
}

.seccion-nosotros{
	background-color: #f2f2f2;
}

.nosotros-texto{
	margin-top:100px;
    background-attachment: fixed;
}

.contenido-nosotros{
	padding: 15px;
}

.card-nosotros > .card-header{
	padding: 0;
}

.imagen-nosotros{
	padding: 15px;
    display: flex;
    align-items: center;
}

.boton-acordion {
  	color: #ecf0f1;
  	width: 50px;
  	height: 50px;
  	position: relative;
  	font-size: 50px;
  	cursor: pointer;
  	border: 0;
  	outline: 0;
  	padding: 0
}

.plus {
  	padding: 1px;
  	width: 50px;
  	height: 50px;
  	line-height: 50px;
  	display: block;
  	position: absolute;
  	top: 0;
  	left: 0;
  	right: 0;
  	bottom: 0;
  	text-align: center;
  	box-sizing: border-box;
  	transition: .5s all ease-out;
  	opacity: 1;
  	transform: rotate(0deg);
}

.minus {
  	padding: 0px;
  	width: 50px;
  	height: 50px;
  	line-height: 45px;
  	display: block;
  	position: absolute;
  	top: 0;
  	left: 0;
  	right: 0;
  	bottom: 0;
  	text-align: center;
  	box-sizing: border-box;
  	transition: .5s all ease-out;
  	opacity: 0;
  	transform: rotate(-90deg);
}

.boton-acordion.active .plus {
  	opacity: 0;
  	transform: rotate(90deg);
}

.boton-acordion.active .minus {
  	opacity: 1;
  	transform: rotate(0deg);
}

#footer-seccion-nosotros{
	position: relative;
	display: inline-block;
}

#footer-seccion-nosotros > svg{
	width: 100%;
	stroke: none;
	fill: #f2f2f2;
}

/*END SECCIÓN NOSOTROS*/


/*INIT SECCIÓN SERVICIOS*/

#seccion-servicios{
	padding:0;
}

.seccion-servicios{
	/* background: linear-gradient(-45deg, #77ee52, #3ce77e, #23a6d5, #23d5ab); */
	background-size: 400% 400%;
    background-color: #858585;
	/* animation: gradiante-servicios 15s ease infinite; */
	/* padding-bottom: 120px; */
}

.card-barra-inferior{
	width: 100%;
	height: 10px;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	background-color: #0dcaf0;
}

.col-card{
    margin: 20px 15px;
}

.card-servicios{
    cursor: pointer;
	margin-top: 20px;
}

.card-servicios:hover > .card-header{
    color: #fff;
}

.card-servicios > .card-mascara{
    position: absolute;
    opacity: 0.8;
    top: 41px;
    width: 100%;
	background-color: #ffffff;
}

.card-servicios > .card-mascara.out{
    animation: mascara-card-out 1s ease;
	height: 0;
}

.card-servicios > .card-mascara.in{
    animation: mascara-card-in 1s ease;
    height: calc(100% - 51px);
}

.card-servicios > .card-info{
    position: absolute;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    font-weight: 900;
    font-size: 120%;
	height: calc(100% - 51px);
    width: 100%;
    top: 41px;
    color: #198754;
    padding: 50px;
    text-align: center;
}

.card-servicios > .card-info.out{
    animation: info-card-out 1s ease;
    opacity: 0;
}

.card-servicios > .card-info.in{
    animation: info-card-in 1s ease;
    opacity: 1;
}

.card-servicios > .card-header{
	font-weight: 700;
	background-color: #ffffff;
	color: #198754;
	text-align: center;
}

.card-servicios > .card-body{
	color: #004080;
	height: 100px;
	text-align: justify;
	font-size: 80%;
	overflow-y: auto;
}

#footer-seccion-servicios{
	position: relative;
	display: inline-block;
}

#footer-seccion-servicios > svg{
	width: 100%;
	stroke: none;
	fill: #858585;
}

@media only screen and (max-width: 576px) {

	.barra-superior > .container > .navbar-brand > div{
		margin-top: 36px;
	}

    .card-servicios > .card-info{
        font-size: 0.8em;
    }

}

@media only screen and (max-width: 1380px) {

    .card-servicios > .card-info{
        font-size: 1em;
    }

}

@media only screen and (max-width: 1200px) {

    .card-servicios > .card-info{
        font-size: 0.8em;
        padding: 10px;
    }

}

@keyframes mascara-card-in {
	0% {
	    height: 0;
	}
	100% {
        height: calc(100% - 51px);
	}
}

@keyframes mascara-card-out {
	0% {
        height: calc(100% - 51px);
	}
	100% {
	    height: 0;
	}
}

@keyframes info-card-in {
	0% {
        opacity: 0;
	}
	80% {
        opacity: 0;
	}
	100% {
        opacity: 1;
	}
}

@keyframes info-card-out {
	0% {
        opacity: 1;
	}
	10% {
	    opacity: 0;
	}
}

@keyframes gradiante-servicios {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

/*END SECCIÓN SERVICIOS*/


/*INIT SECCIÓN PORTAFOLIO*/

#seccion-portafolio{
	padding:0;
}

.seccion-portafolio{
	background-color: #004080;
}

.filtro-portafolio{
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.filtro-portafolio button{
    margin: 3px;
}

.filtro-portafolio button:hover{
	background-color: #004080;
}

.filtro-portafolio button.active{
	background-color: #004080;
}

.contenedor-portafolio{
    display: flex;
    flex-wrap: wrap;
}

.c-card-portafolio{
    padding: 5px;
}

.c-card-portafolio:hover > .card-portafolio > .card-info{
    background-color: #198754;
    opacity: 1;
    color: #fff;
}

.card-portafolio{
    cursor: pointer;
}

.card-portafolio > .card-info{
    position: absolute;
    font-weight: 900;
	height: 40px;
    width: 100%;
    color: #004080;
    padding: 7px;
    text-align: center;
    opacity: 0.8;
}

.card-portafolio > img{
    width: 100%;
    height: 30vh;
}

#footer-seccion-portafolio{
	position: relative;
	display: inline-block;
}

#footer-seccion-portafolio > svg{
	width: 100%;
	stroke: none;
	fill: #004080;
}

/*END SECCIÓN PORTAFOLIO*/


/*INIT SECCIÓN CONTACTO*/

#seccion-contacto{
	padding:0;
}

.seccion-contacto{
	/* background: linear-gradient(-45deg, #77ee52, #3ce77e, #23a6d5, #23d5ab); */
	/* background-size: 400% 400%; */
	/* animation: gradiante-servicios 15s ease infinite; */
}

#form-contacto{
	color: #000000;
}

#form-contacto > button > p{
	margin: 0;
	display: inline-block;
}

#form-contacto > button > span{
	display: none;
}

#form-contacto > button.procesando > span{
	display: inline-block;
}

#form-contacto > .alert{
	margin-top: 10px;
	display: none;
	padding-left: 30px;
}

#form-contacto > .alert > b{
	position: absolute;
	margin-left: -25px;
}

.c-contacto{
    display: flex;
    align-items: center;
}

.contenido-enviado{
    display: none;
}

.contenido-no-enviado{
    display: none;
}

.icono-enviado{
    width: 100%;
    height: 80px;
    display: flex;
    justify-content: center;
}

.icono-enviado .icono{
    position: relative;
    width:60px;
    height:60px;
    border-radius:50%;
    color:#fff;
    padding: 10px;
}

.icono-enviado .icono span{
    font-size: 2.5em;
}

#footer-seccion-contacto{
	position: relative;
	display: inline-block;
}

#footer-seccion-contacto > svg{
	width: 100%;
	stroke: none;
}

/*END SECCIÓN CONTACTO*/


/*INIT SECCIÓN WEBCARD*/

#seccion-webcard{
	padding:0;
}

.seccion-webcard{
	background-color: #004080;
	padding-top: 80px;
}

.seccion-webcard .c-webcard{
    padding: 15px;
}

.seccion-webcard .c-webcard iframe{
    height: 1550px;
}

#footer-seccion-webcard{
	position: relative;
	display: inline-block;
}

#footer-seccion-webcard > svg{
	width: 100%;
	stroke: none;
	fill: #004080;
}

/*END SECCIÓN WEBCARD*/


/*INIT FOOTER*/

footer{
    padding-top: 80px;
    /* background: linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,1)), url('../images/contenido/bgfooter.jpg') 50% 70% / cover; */
	min-height: 50vh;
}

#enlaces-konecta{
	text-align: center;
	line-height: 50px;
}

#enlaces-konecta > a {
	font-size: 70%;
}

#enlaces-konecta > a > img{
	height: 30px;
}

#enlaces-konecta-derecha{
	text-align: right;
	line-height: 50px;
}

#enlaces-konecta-derecha > a {
	font-size: 70%;
}

#enlaces-konecta-derecha > a > img{
	height: 25px;
}


@media only screen and (max-width: 600px) {

    .c-footer{
        text-align: center;
    }

    #enlaces-konecta-derecha{
        text-align: center;
    }

}

/*END FOOTER*/
