/* Variables convertidas a valores directos */

*,
*::before,
*::after {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
	list-style: none;
	list-style-type: none;
	text-decoration: none;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body {
	font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
	font-size: 1rem;
	font-weight: normal;
	line-height: 1.5;
	color: #252a32;
	background: #ffffff;
}
main{
    padding: 120px 0;
    padding-bottom: 40px;
}

.container {
	max-width: 80rem;
	width: 100%;
	padding: 4rem 2rem;
	margin: 0 auto;
}

.main .container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1rem;
	justify-content: center;
	align-items: center;
}

.main .card {
	color: #252a32;
	border-radius: 2px;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 3px rgba(0, 0, 0, 0.24);
}

.main .card-image {
	position: relative;
	display: block;
	width: 100%;
	padding-top: 70%;
	background: #ffffff;
}

.main .card-image img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

@media only screen and (max-width: 600px) {
	.main .container {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap: 1rem;
	}
}




*{
    padding: 0;
    margin: 0;
}
button:focus,
button:active,
a:focus,
a:active,
input:focus,
input:active,
textarea:focus,
textarea:active {
    outline: none;
    box-shadow: none;
}

* {
    -webkit-tap-highlight-color: transparent; /* Eliminar el efecto de resaltado azul en dispositivos táctiles */
}

nav{
    width: 100%;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    z-index: 999;
    background-color: white;
    transition: background-color 0.3s ease;
}

nav h1{
    font-family: "Quicksand", sans-serif;
    font-weight: 300;
    font-size: 25px;
    text-align: center;
}

nav a{
    text-decoration: none;
    color: #56585e;
}

.nav-container {
    display: flex;
    height: 100%;
    width: 100%;
    justify-content: space-around;
    align-items: center;
}

.nav-container h1{
    width: 100%;
}

.nav-menu {
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}

.nav-item {
    color: #56585e;
    text-decoration: none;
    text-transform: uppercase;
    font-family: "Quicksand", sans-serif;
    font-weight: 400;
    cursor: pointer;
}

.hamburger-lines .line1, .hamburger-lines .line2, .hamburger-lines .line3 {
    transition: transform 0.4s ease-in-out;
}

.line1 {
    transform-origin: 0% 0%;
}

.line2 {
    transition: transform 0.2s ease-in-out;
}

.line3 {
    transform-origin: 0% 100%;
}

input[type="checkbox"]:checked ~ .menu-items {
    transform: translateX(0);
}

input[type="checkbox"]:checked ~ .hamburger-lines .line1 {
    transform: rotate(40deg);
}

input[type="checkbox"]:checked ~ .hamburger-lines .line2 {
    transform: scaleY(0);
}

input[type="checkbox"]:checked ~ .hamburger-lines .line3 {
    transform: rotate(-40deg);
}
 .nav-input{
    display: none;
}

   .nav-menu {
        position:absolute;
        top:80px;
        left:0;
        height:calc(100vh - 80px);
        background-color:white;
        transition:transform .3s,opacity .3s;
        z-index:998;
        overflow:hidden;
        transform:translateY(-120%);
        opacity:0;
        flex-direction:column;
        align-items:center;
        justify-content:center;
    }

    .nav-input:checked~.nav-menu {
        transform:translateY(0%);
        opacity:1
    }

    .nav-item {
        height:70%;
        display: flex;
        align-items:center;
        justify-content:center;
    }
    
    .hamburger-lines {
        width:50px;
        height:30px;
        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        gap:5px;
        cursor: pointer;
    }
    .hamburger-lines .line {
        width:30px;
        height:4px;
        border-radius:10px;
        background:#56585e
    }

