* {
    box-sizing: border-box; /* Ensures padding and borders are included in element's total width and height */
}

html, body {
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    font-family: Arial, sans-serif;
}

header {
    text-align: center;
    padding: 20px;
    background-color: #71a770; /* Green background */
    color: white;
    height: 75px; /* Set header height */
    display: flex;
    justify-content: center;
    align-items: center;
}
header p {
    font-weight:500;
    margin-left: 10px;
    font-size: 28px;
    color: white;
    text-align: center;
    font-variant:small-caps;   
}


h2 {
    font-weight:500;
    margin-left: 10px;
    font-size: 28px;
    color: #333;
    text-align: center;
    font-variant:small-caps; 
    
}

main {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    /* background-color: #f4f4f4; */
    justify-content: flex-start;
    background-color: white;
    padding: 20px 10px;
    gap: 30px;
}



.button-container {
    display: flex;
    flex-direction: column;
    gap: 20px; /* Space between buttons */
}

.button {
    display: inline-block;
    padding: 20px 40px;
    font-size: 24px;
    color: white;
    background-color: #007BFF; /* Blue background */
    text-decoration: none;
    border-radius: 5px;
    text-align: center;
    transition: background-color 0.3s;
}

.button:hover {
    background-color: #0056b3; /* Darker blue on hover */
}

.banner {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 20px auto;
}

footer {
    display: flex; /* Use flexbox for footer layout */
    justify-content: center; /* Center items horizontally */
    align-items: center; /* Center items vertically */
    padding: 5px;
    background-color: #333; /* Dark background */
    color: white;
    height: 75px; /* Set footer height */
}

.footer-content {
    display: flex; /* Use flexbox for footer content */
    align-items: center; /* Center items vertically */
    justify-content: center; /* Center items horizontally */
}

.footer-logo {
    width: 100px; /* Adjust logo size */
    margin-right: 10px; /* Space between logo and text */
}

footer p {
    margin: 0; /* Remove margin to stack paragraphs */
    font-size: 14px; /* Font size for footer text */
}

/* Responsive Styles */

/* Banner para escritorio grande */
@media (min-width: 1600px) {
    .banner {
        width: 600px;
    }
}

@media (min-width: 769px) and (max-width: 1599px) {
    .button-container {
        flex-direction: column; /* Stack buttons vertically on smaller screens */
    }

    .button {
        font-size: 20px; /* Slightly smaller font size for buttons */
        padding: 15px 30px; /* Adjust padding for smaller screens */
    }

    .banner {
        width: 320px;
    }

    footer p {
        font-size: 12px; /* Smaller font size for footer text */
    }
}

@media (max-width: 480px) {
    header h1 {
        font-size: 24px; /* Smaller font size for header on very small screens */
    }

    .button {
        font-size: 18px; /* Even smaller font size for buttons */
        padding: 10px 20px; /* Adjust padding for very small screens */
    }

    .footer-logo {
        width: 80px; /* Smaller logo size for very small screens */
    }
}
/* Banner para móviles */
@media (max-width: 768px) {
    .banner {
        width: 90%;
    }
}