 :root {
        --primary-color: #006064; 
        --secondary-color: #4DD0E1; 
        --background-color: #FFFFFF; 
        --text-color: #424242; 
        --accent-color: #E0E0E0; 
        --hover-color: #004D40; 
        --font-family: 'Roboto', sans-serif;
    }


    body {
        margin: 0;
        font-family: var(--font-family);
        background-color: var(--background-color);
        color: var(--text-color);
        line-height: 1.6;
    }

    .container {
        width: 90%;
        max-width: 1200px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }


    .top-bar {
        background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
        padding: 1rem 0;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
        height: 60px;
    }


    .logo {
        margin-left: auto;
        background-color: #FFFFFF;
        padding: 5px;
        border: 2px solid #FFFFFF;
        border-radius: 8px;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
        width: 70px;
        height: 55px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .logo img {
        height: 80px;
        width: auto;
        vertical-align: middle;
    }


    .main-nav .menu {
        display: flex;
        justify-content: center;
        gap: 2rem;
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .main-nav a {
        text-decoration: none;
        color: white;
        font-weight: bold;
        font-size: 1rem;
        transition: color 0.3s, border-bottom 0.3s;
    }

    .main-nav a:hover {
        color: var(--background-color);
    }


    .hero {
        position: relative;
        background-image: url('../imagenes/header.jpg');
        background-size: cover;
        background-position: center;
        height: 500px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        color: var(--background-color);
    }

    .hero::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 1;
    }

    @keyframes fadeInUp {
        0% {
            opacity: 0;
            transform: translateY(50px);
        }
        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .hero-content {
        position: relative;
        z-index: 2;
    }

    .hero-content h1 {
        font-size: 3.5rem;
        margin: 0;
        animation: fadeInUp 1s ease-out;
        text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
    }

    .hero-content p {
        font-size: 1.2rem;
        margin-top: 1rem;
        color: var(--background-color);
        animation: fadeInUp 1.5s ease-out 0.5s forwards;
        opacity: 0;
    }

    .hero-content .btn {
        display: inline-block;
        margin-top: 1.5rem;
        padding: 0.8rem 1.5rem;
        background-color: var(--primary-color);
        color: var(--background-color);
        text-decoration: none;
        font-weight: bold;
        border-radius: 5px;
        transition: background-color 0.3s ease, transform 0.3s ease;
        animation: fadeInUp 2s ease-out 1s forwards;
        opacity: 0;
    }

    .hero-content .btn:hover {
        background-color: var(--hover-color);
        transform: scale(1.05);
    }


    .products h2 {
        text-align: center;
        color: var(--primary-color);
        font-size: 2.5rem;
        margin: 2rem 0;
    }

    .product-grid {
        display: flex;
        gap: 2rem;
        justify-content: center;
        flex-wrap: wrap;
    }

    .products {
        margin-bottom: 2rem;
    }

    .product {
        background-color: var(--accent-color);
        border-radius: 8px;
        text-align: center;
        padding: 1.5rem;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        transition: transform 0.3s;
        width: 100%;
        max-width: 300px;
        margin: 0 auto;
    }

    .product img {
        width: 80%;
        height: auto;
        margin-bottom: 1rem;
    }

    .product:hover {
        transform: scale(1.05);
    }

    .product h3 {
        color: var(--primary-color);
        margin-bottom: 0.5rem;
    }

    .product p {
        margin-bottom: 1rem;
    }

    .product .btn {
        background-color: var(--secondary-color);
        color: white;
        text-decoration: none;
        padding: 0.5rem 1rem;
        border-radius: 5px;
    }

    .product .btn:hover {
        background-color: var(--hover-color);
    }


    .registro-usuario {
        background: linear-gradient(135deg, var(--secondary-color), var(--primary-color));
        color: var(--background-color);
        padding: 4rem 1rem;
        margin: 6rem 0;
        border-radius: 8px;
        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    }

    .registro-usuario .registro-contenido {
        display: flex;
        flex-direction: column;
        align-items: center;   
        justify-content: center; 
        text-align: center;    
        width: 100%;
        max-width: 800px;
        margin: 0 auto;
        gap: 1.5rem; 
    }

    .registro-usuario .section-title {
        font-size: 2.5rem;
        font-weight: bold;
        color: var(--background-color);
        margin-bottom: 0;
    }

    .registro-usuario .section-subtitle {
        font-size: 1.2rem;
        opacity: 0.9;
        color: var(--background-color);
        margin-bottom: 0;
    }

    .registro-usuario .btn {
        background-color: var(--background-color);
        color: var(--primary-color);
        text-decoration: none;
        padding: 0.8rem 2rem;
        font-weight: bold;
        border-radius: 5px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
        transition: background-color 0.3s ease, transform 0.3s ease;
        margin-top: 0;
    }

    .registro-usuario .btn:hover {
        background-color: var(--hover-color);
        color: var(--background-color);
        transform: scale(1.05);
    }


    .footer {
        background-color: var(--primary-color);
        color: white;
        text-align: center;
        padding: 1rem;
    }


    .footer .container {
        
        display: block; 
        text-align: center; 
        justify-content: center; 
        align-items: center; 
        margin: 0 auto; 
        width: 100%; 
    }

    .footer p {
        text-align: center; /
        margin: 0; 
    }


    .footer img {
        width: 20px;
        margin: 0 10px;
        filter: brightness(0) invert(1);
    }