:root {
    --blanco: #ffffff;
    --negro: #212121;
    --primario: #ffda07;
    --secundario: #0097a7;
    --gris: #757575;
}

html {
    font-size: 62.5%;
    box-sizing: border-box;
}
*, *:before, *:after {
    box-sizing: inherit;
}
body {
    font-size: 16px; /* 1rem = 10px */
    font-family: 'Krub', sans-serif;
    /* background-image: linear-gradient(to bottom, var(--primario) -115%, var(--blanco) 110%); */
    /* background-color: var(--primario); */
    /* background-color: #fff5bc   ; */
    background-color: #dbdbdb   ;
}
.logo {
    display: flex;
    align-items: center;
    justify-content:center;
    max-height: 15rem;
    margin: 2rem auto;
}
.logo img {
    width: 10rem;
    margin-bottom: -1.5rem;
    padding: 0;
}
@media (min-width: 800px) {
    .logo img {
        width: 15rem;
    }
}
@media (min-width: 1000px) {
    .logo img {
        width: 25rem;
    }
}
@font-face {
    font-family: "Bradley Hand ITC";
    src: url(../font/bradley-hand-itc.ttf);
}
h1 {
    text-align: center;
    font-size: 3rem;
    font-weight: 900;
    font-family: "Bradley Hand ITC";
    text-shadow: 4px 4px 8px var(--secundario);
    margin: 0;
}
@media (min-width: 500px) {
    h1 {
        font-size: 5rem;
    }
}
@media (min-width: 800px) {
    h1 {
        font-size: 7.5rem;
    }
}
@media (min-width: 1000px) {
    h1 {
        font-size: 10rem;
    }
}

.contenedor {
    max-width: 120rem;
    margin: 0 auto;
}
.nav-bg {
    background-color: var(--secundario);
}
.navegacion {
    display: flex;
    flex-direction: column;
    text-align: center;
}
@media (min-width: 768px) {
    .navegacion {
        flex-direction: row;
        justify-content: space-evenly;
    }
}
.sombra {
    -webkit-box-shadow: 10px 10px 20px -4px rgba(0,0,0,0.75);
    -moz-box-shadow: 10px 10px 20px -4px rgba(0,0,0,0.75);
    box-shadow: 10px 10px 20px -4px rgba(0,0,0,0.75);
    background-color: var(--blanco);
    padding: 2rem;
    border-radius: 2rem;
}

.navegacion a {
    color: var(--blanco);
    text-decoration: none;
    font-size: 2rem;
    font-weight: 700;
    padding: 1rem;
    border-radius: .5rem;
}
.navegacion a:hover {
    background-color: var(--primario);
    color: var(--negro);

}
.hero {
    width: 100%;
    align-items: center;
}
.contenido-hero h2,
.contenido-hero p{
    color: var(--negro);
    font-size: 5rem;
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
}
.ubicacion {
    display: flex;
    align-items: center;
    justify-content: center;
}
.boton {
    background-color: var(--secundario);
    color: var(--blanco);
    padding: 1rem 3rem;
    margin-top: 1rem;
    font-size: 2rem;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: bold;
    border-radius: .5rem;
    margin-bottom: 2rem;
    
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30%;
}
.boton:hover {
    background-color: var(--primario);
    color: var(--negro);
}
/* Servicios */

@media (min-width: 768px) {
    .servicios {
        display: grid;
        grid-template-columns: 50% 50%;
        column-gap: 1rem;
    }
}
.servicio {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.servicio h2 {
    color: var(--negro);
    font-weight: 700; 
}
.servicio p {
    line-height: 2;
    text-align: justify;
    margin: 2rem;
}
.servicio .iconos {
    height: 15rem;
    width: 15rem;
    background-color: var(--secundario);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.footer {
    text-align: center;
}
/* Contacto */
/**Grid2**/
.grid2 {
    display: grid;
    grid-template-rows: repeat(1, 1fr);
}
@media (min-width: 1100px) {
    .grid2 {
        grid-template-columns: repeat(2, 70% 30%);
        column-gap: 2rem;
        align-items: center;
    }
}
.responsive {
    width: 100%;
    height: 0;
    padding-bottom: 75.25%;
    position: relative;
}
.responsive iframe{
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 2rem;
}
.contacto {
    display: flex;
    flex-direction: column;
    text-align: center;
    background-color: var(--primario);
    font-size: 2rem;
    grid-row: 1 / 2;
}
@media (min-width: 1100px) {
    .contacto {
        grid-column: 2 / 2;
    }
}
.contacto a {
    text-decoration: none;
    color: var(--negro);
}
.contacto a:hover{
    color: var(--secundario);
    font-weight: bold;
}
.contenido {
    max-width: 120rem;
    margin: auto; 
}

/**Grid**/
.grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
}
@media (min-width: 768px) {
    .grid {
        grid-template-columns: repeat(4, 1fr);
    }  
}

/**Maquinas**/
.herramienta {
    /* background-color: var(--secundario); */
    padding: 1rem;
    display: flex;
    align-items: flex-end;
    justify-content: space-evenly;
}
.herramienta a{
    text-decoration: none;
    color: black;
    font-weight: bold;
}
.herramienta__imagen {
    width: 100%;
}
.herramienta__nombre {
    font-size: 2rem;
    font-family: 'Krub';
    margin: 2rem 0;
    text-align: center;
}

/**Graficos**/
.grafico {
    min-height: 30rem;
}
.grafico__m27 {
    grid-row: 2 / 3;
    grid-column: 1 / 3;
    background-image: url(../img/M27a.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; 
}
.grafico__m50 {
    grid-row: 8 / 9;
    grid-column: 1 / 3;
    background-image: url(../img/M50.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; 
}
@media (min-width: 768px) {
    .grafico__m50 {
        grid-row: 4 / 5;
        grid-column: 2 / 4;
        background-image: url(../img/M50.jpg);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center; 
    }
}
.grafico__m100 {
    grid-row: 6 / 7;
    grid-column: 1 / 3;
    background-image: url(../img/M100c.jpg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; 
}

/**Nosotros**/
.nosotros {
    display: grid;
    grid-template-rows: repeat(2, auto);
    padding: 3rem;
}
@media (min-width: 768px) {
    .nosotros {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 2rem;
    }
}
.nosotros__imagen {
    grid-row: 1 / 2;
    width: 100%;
    border-radius: 2rem;
    -webkit-box-shadow: 10px 10px 20px -4px rgba(0,0,0,0.75);
    -moz-box-shadow: 10px 10px 20px -4px rgba(0,0,0,0.75);
    box-shadow: 10px 10px 20px -4px rgba(0,0,0,0.75);
}
@media (min-width: 768px) {
    .nosotros__imagen {
        grid-column: 2 / 3;
    }
}
.nosotros p{
    text-align: justify;
    line-height: 2;
}
h2 {
    margin: 3rem;
}