:root {
    --fuentePrincipal: 'Jura', cursive;
    --fuenteSecundaria: 'Poppins', cursive;
    --primario: #CEF6F5;
}

/* latin */
@font-face {
    font-family: 'Abril Fatface';
    font-style: normal;
    font-weight: 400;
    src: local('Abril Fatface'), local('AbrilFatface-Regular'), url(https://fonts.gstatic.com/s/abrilfatface/v9/zOL64pLDlL1D99S8g8PtiKchq-dmjQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    src: local('Poppins Regular'), local('Poppins-Regular'), url(https://fonts.gstatic.com/s/poppins/v5/pxiEyp8kv8JHgFVrJJfecg.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Play';
    font-style: normal;
    font-weight: 400;
     src: local('Play Regular'), local('Play-Regular'), url(https://fonts.gstatic.com/s/play/v9/6aez4K2oVqwIvtU2Hw.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
    font-family: 'Jura';
    font-style: normal;
    font-weight: 400;
    src: local('Jura Regular'), local('Jura-Regular'), url(https://fonts.gstatic.com/s/jura/v9/z7NbdRfiaC4VXcRJUQ.woff2) format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

.Abril{
    font-family: 'Abril Fatface', Georgia, Serif;
}
.Play{
    font-family: "Play", Arial;
}
.Jura{
    font-family: "Jura", Verdana;
}
.Poppins{
    font-family: "Poppins", Times;
}



html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}
.clearfix:before,
.clearfix:after{
  content: '';
  display: table;
}
.clearfix:after{
  clear: both;
}



body{
    display: flex;
    flex-direction: column;
    height: 100vh;
    margin: 0;
}

a {
    text-decoration: none;
}

.img {
    width: 25px;
    height: 25px;
}

.grancontenedor{
    width: 1000px;
    margin: 0 auto;
    background-color: gainsboro;
    /*height: 100%;*/
}


.grid-container {
	display: grid;
	grid-template-columns: auto auto auto;
	grid-column-gap: .5rem;
	justify-content: center;
	background-color: #2196F3;
	padding: 10px;
}
.grid-item {
  background-color: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(0, 0, 0, 0.8);
  padding: 20px;
  font-size: 30px;
  text-align: center;
}



.flex-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    justify-content: space-between;
}
.flex-container > div {
    width: 50%;
    margin: 50px;
    text-align: center;
    height: auto;
    border: 3px solid;
    padding: 5px;
}



.flex-container-col {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    justify-content: space-between;
}
.flex-container-col > div {
    text-align: center;
    height: auto;
    padding: 5px;
}


.hover-shadow-box-animation {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    margin: 10px;
    transition-duration: 0.3s;
    transition-property: box-shadow, transform;
}
  .hover-shadow-box-animation:hover,
  .hover-shadow-box-animation:focus,
  .hover-shadow-box-animation:active {
    box-shadow: 1px 10px 10px -10px rgba(0, 0, 24, 0.5);
    transform: scale(1.2);
}


.hover-underline-animation {
    display: inline-block;
    position: relative;
    color: rgb(12, 35, 99);
}
.hover-underline-animation::after {
    content: '';
    position: absolute;
    width: 100%;
    transform: scaleX(0);
    height: 5px;
    bottom: 0;
    left: 0;
    color: rgb(12, 35, 99);
    background-color: rgb(19, 32, 107);
    transform-origin: bottom right;
    transition: transform 0.25s ease-out;
}
.hover-underline-animation:hover::after {
    transform: scaleX(1);
    transform-origin: bottom left;
}


input[type=text], input[type=password], input[type=email], input[type=tel]{
	border: 0;
	border-bottom: 1px solid;
	background-color: transparent;
}

input[type=text]:focus, input[type=password]:focus,  input[type=email]:focus, input[type=tel]:focus{
    border: 0;
	border-bottom: 1px solid;
    background-color: transparent;
    outline:none !important;
    outline-width: 0 !important;
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
}


.centrado{
    text-align: center;
}

.tc1{
	font-size: 1em;
}
.tc2{
	font-size: 1.5em;
}
.tc3{
	font-size: 2em;
}

.stc1 {
    font-size: .5em;
}
.stc2 {
    font-size: .75em;
}
.stc3 {
    font-size: .9em;
}

.centrar{
    text-align: center;
}

.azul{
    color: blue;
}


.largo {
    width: 80%;
}
.medio{
    width: 50%
}
.corto{
    width: 25%;
}

.longitud {
    width: 80%
}

.boton {
    width: 150px;
    border: none;
    color: white;
    padding: 5px 10px;
    font-family: Poppins;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    margin: 4px 2px;
    cursor: pointer;
    -webkit-transition-duration: 0.4s; /* Safari */
    transition-duration: 0.4s;
}

.bsombra {
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
}

.botonsi {
    background-color: #4CAF50; /* Green */
}

.botonno {
    background-color: #F44336; /* Red */
}

.botongu {
    background-color: #0080FF; /* Blue */
}

.cinta {
	position: relative;
	/* Altura total del footer en px con valor negativo */
	margin-top: -50px;
	/* Altura del footer en px. Se han restado los 5px del margen
	   superior mas los 5px del margen inferior
	*/
	height: 25px;
	padding: 2px 0px;
	clear: both;
	background: #286af0;
	text-align: center;
	color: #fff;
}

.imglogo {
	width: 320px; height: 99px; margin: 7.5px 0 0 150px;
}

.buttonf {
	margin: .4em;
	padding: 1em;
	cursor: pointer;
	background: #1fcde4;
	text-decoration: none;
	color: #ffffff;
	border-radius: 10px;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

  /* Float Shadow */
.float-shadow {
	display: inline-block;
	position: relative;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
}
.float-shadow:before {
	pointer-events: none;
	position: absolute;
	z-index: -1;
	content: '';
	top: 100%;
	left: 5%;
	height: 10px;
	width: 90%;
	opacity: 0;
	background: radial-gradient(ellipse at center, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0) 80%);
	/* W3C */
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform, opacity;
	transition-property: transform, opacity;
}
.float-shadow:hover, .float-shadow:focus, .float-shadow:active {
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
	/* move the element up by 5px */
}
.float-shadow:hover:before, .float-shadow:focus:before, .float-shadow:active:before {
	opacity: 1;
	-webkit-transform: translateY(5px);
	transform: translateY(5px);
	/* move the element down by 5px (it will stay in place because it's attached to the element that also moves up 5px) */
}
/* End float shadow */


/*************************************/
/*****   SECCION MEDIA QUERIES   *****/
/*************************************/

/* Para 960px */  
@media only screen and (max-width: 980px) and (min-width: 821px) {
	.imglogo {
		width: 320px; height: 99px; margin: 7.5px 0 0 150px;
	}
}  
  
/* Para 800px */  
@media only screen and (max-width: 820px) and (min-width: 621px) {
    .grancontenedor{
        width: 100%;
        margin: 0;
    }
	.imglogo {
		width: 320px; height: 99px; margin: 7.5px 0 0 100px;
	}
}  
  
/* Para 600px */  
@media only screen and (max-width: 620px) and (min-width: 501px) {
    .grancontenedor{
        width: 100%;
        margin: 0;
    }
	.imglogo {
		width: 320px; height: 99px; margin: 7.5px 0 0 50px;
	}
}  
  
/* Para 480px */  
@media only screen and (max-width: 500px) and (min-width: 341px) {
    .grancontenedor{
        width: 100%;
        margin: 0;
    }
	.imglogo {
		width: 320px; height: 99px; margin: 7.5px 0 0 25px;
	}
    .longitud {
        width: 100%
    }    
}  
  
/* Para 320px */  
@media only screen and (max-width: 340px) and (min-width: 5px)  {
    .grancontenedor{
        width: 100%;
        margin: 0;
    }
	.imglogo {
		width: 320px; height: 99px; margin: 7.5px 0 0 10px;
	}
    .longitud {
        width: 100%
    }    
}
