@font-face {
    font-family: 'Barlow';
    src: url('../fonts/Barlow-Regular.woff2') format('woff2'),
         url('../fonts/Barlow-Regular.woff') format('woff');
}

@font-face {
    font-family: 'Barlow_Bold';
    src: url('../fonts/Barlow-Medium.woff2') format('woff2'),
         url('../fonts/Barlow-Medium.woff') format('woff');
}

*,
*:after,
*::before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {
	overflow-x: hidden;
	font-family: 'Barlow';
}

.img-responsive {
	width: 100%;
	height: auto;
}

nav a {
	position: relative;
	display: inline-block;
	margin: 15px 25px;
	outline: none;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 400;
	text-shadow: 0 0 1px rgba(255,255,255,0.3);
	font-size: 1vw;
}

nav a:visited,
nav a:active,
nav a:hover,
nav a:focus {
	outline: none;
	text-decoration: none!important;
}

.container > section {
	margin: 0 auto;
	padding: 0em 3em;
	text-align: center;
}

.background_header {
	background: transparent;
}

.logotipo img {
	max-height: 55px;
	width: auto;
	display: initial;
    margin-top: 0.2vw;
    margin-bottom: 0.2vw;
}

.menu-oculto {
	display: none;
}

button.navbar-toggler,
button.navbar-toggler:hover,
button.navbar-toggler:focus,
button.navbar-toggler:visited {
	background: transparent;
	border-color: transparent;
    outline: none!important;
}

.navbar-right {
	/**float: right!important;
	margin-right: 5vw;
    margin-top: 10px;
    margin-bottom: 10px;*/
    position: absolute;
    top: 1px;
    right: 5%;
}

.menu_responsivo {
	padding: 10px;
}

.menu_responsivo a,
.menu_responsivo a:hover,
.menu_responsivo a:active,
.menu_responsivo a:focus {
	color: #777;
	text-decoration: none;
}

/* Effect: border switch */
.menu-effect {
	text-align: center;
	background-color: #b32525;
}

.menu-effect a.menu_option {
	color: rgba(0,0,0,0.2);
	font-weight: 700;
	text-shadow: none;
}

.menu-effect a.menu_option::before {
	color: #fff;
	content: attr(data-hover);
	position: absolute;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
	-moz-transition: -moz-transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s;
}

.menu-effect a.menu_option:hover::before,
.menu-effect a.menu_option:focus::before {
	-webkit-transform: scale(0.9);
	-moz-transform: scale(0.9);
	transform: scale(0.9);
	opacity: 0;
}

/*******   banner sliders  ****************/
.slides {
	position: relative;
	width: 100%;
}

.slides div {
	position: absolute;
	left: -100vw;
	top: 0;
	height: 100%;
	width: 100%;
	background-color: #333;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .9s;
	transition-timing-function: cubic-bezier(.455, .03, .515, .955)
}

.slides div.active {
	left: 0
}

.slide-controller li {
	cursor: pointer;
	margin: 0 .5rem;
	width: 8px;
	height: 8px;
	border: 1px solid #fff;
	background-color: transparent;
	border-radius: 50px;
	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	-ms-transition: all .4s;
	-o-transition: all .4s;
	transition: all .4s
}

.slide-controller li.active {
	width: 8px;
	height: 8px;
	background-color: #fff;
	border-radius: 50px
}

ul.slide-controller {
	display: flex;
	align-items: center;
	list-style: none;
	position: absolute;
	top: 55vh;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	margin: 0;
	padding: 0;
	color: #fff
}

.arrow-button-right,
.arrow-button-left {
	border: none;
	background-color: transparent;
	padding: 0;
	cursor: pointer
}

.arrow-button-right {
	position: absolute;
	top: calc(35% - 25px);
	right: 15px
}

.arrow-button-left {
	position: absolute;
	top: calc(35% - 25px);
	left: 15px
}

.arrow-button-right img,
.arrow-button-left img {
	height: 50px;
	width: auto
}

.arrow-button-right:focus,
.arrow-button-left:focus {
	outline: none
}

main {
	/*height: 50vh;*/
	height: auto;
	width: 100%;
	display: flex;
	justify-content: center;
}

#slide-1,
#slide-2,
#slide-3,
#slide-4 {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

#slide-1 {
	background-image: url(../img/banner_1.png);
}

#slide-2 {
	background-image: url(../img/banner_2.png);
}

#slide-3 {
	background-image: url(../img/banner_3.png);
}
/*
#slide-4 {
	background-image: url(https://source.unsplash.com/1600x900/?diving);
}*/

.espacio {
	height: 30px;
}

.contenedor_txt {
	padding: 5%;
}

section#quienes,
section#pruebas,
section#kit {
	margin: 5vw 4vw;
}
.main img {
	width: 100%;
}
section .function_hr {
    width: 100%;
    border-bottom: 1px solid #b32525;
    text-align: left;
    padding-bottom: 2%;
}

section .function_hr.chico {
    width: 30%;
    border-bottom: 1px solid #b32525;
    text-align: left;
    padding-bottom: 1%;
}

section .function_hr .text_hr {
    font-size: 35px;
    background-color: white;
    /*padding: 0 35px;*/
    color: #b32525;
	font-family: 'Barlow_Bold';
}

section .function_hr .text_hr img {
	max-width: 35px;
}

section p,
section ul {
	font-size: 16px;
}

section ul li {
	margin-bottom: 2vw;
	text-align: justify;
}

section ul {
	list-style: none;
}

section ul li::before {
	content: "\2022";
	color: #b32525;
	font-weight: bold;
	display: inline-block; 
	width: 1em;
	margin-left: -1em;
	font-size: 25px;
}

p.quienes_somos {
	margin-top: 2vw;
	margin-bottom: 2vw;
}

.numeros img {
	display: initial;
	width: auto;
}

#pruebas .numeros img {
	display: initial;
	width: 100%;
}

.footer {
	padding-top: 2vw;
	padding-bottom: 2vw;
	background: #b32525;
	font-size: 17px;
	color: #fff;
}

.footer p {
	margin: 0px;
}

.footer p a,
.footer p a:hover,
.footer p a:active,
.footer p a:visited {
	color: #fff;
	text-decoration: none;
	font-size: initial;
}

section#pruebas img,
section#kit .small_images img {
	max-width: 600px;
	display: initial;
}

div a.boton {
	width: 50%;
	max-width: 240px;
	height: 54px;
	padding: 8px;
	font-size: 0.8rem;
	font-weight: 900;
	color: #fff;
	text-align: center;
	text-decoration: none;
	position: absolute;
	margin: 10px 0;

    z-index: 10;
    bottom: 20%;
    right: 20%;
}

div a.boton p {
	margin: 0;
	height: 54px;
	line-height: 54px;
	box-sizing: border-box;
	z-index: 1;
	left: 0;
	width: 100%;
	position: relative;
	overflow: hidden;
}

div a.boton p span.base {
	box-sizing: border-box;
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
	left: 0;
	border: 1px solid #fff;
}

div a.boton p span.bg {
	left: -5%;
	position: absolute;
	background: #b32525;
	width: 0;
	height: 100%;
	z-index: 3;
	-webkit-transition: 0.3s ease-out all;
	transition: 0.3s ease-out all;
	-webkit-transform: skewX(-10deg);
	      transform: skewX(-10deg);
}

div a.boton p span.text {
	z-index: 4;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

div a.boton:hover {
	color: #fff;
}

div a.boton:hover span.bg {
	width: 110%;
}

div a.boton:hover span.text:after {
	background: #ece8e1;
}

.descriptivos {
	padding-left: 1.5vw;
	padding-right: 1.5vw;
}

.descriptivos h2 {
	color: #b32525;
}

#menu_responsive.collapse.in .margen-top {
	padding-top: 5px;
}

@media screen and (max-width: 1050px) {
	.menu-oculto {
		display: block;
	}

	.menu_option {
		display: none;
	}
}