@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

/* Base styles */
* {
    font-family: "Robot", 'Courier New', Courier, monospace;
}

#body {
    height: auto;
    display: grid;
    grid-template-columns: 1fr 30%; /* Desktop layout: content and sidebar */
    color: rgb(114, 92, 92);
}

/* Intro section */
#intro {
    margin-top: 5px; /* Add top margin to avoid overlap */
    margin-bottom: 5px;
    height: 15em;
}

.info {
    width: auto;
    padding: 2em 2em;
}

.info h3 {
    display: flex;
    justify-content: center;
    font-size: 2.5rem;
}

.description {
    padding: 0 3em;
}

.description p {
    text-align: justify;
    font-size: 1.5rem;
    font-family: "Roboto", Arial, Helvetica, sans-serif;
}

.citi_img {
    width: auto;
    padding: 1em;
}

.citi_img .citi {
    height: auto;
    width: 100%; /* Ensure the image takes up the full width of the container */
}


/* Responsive for tablet screens (768px and below) */
@media (max-width: 768px) {
    #body {
        display: block; /* Switch to block layout */
        padding: 1em;
    }

    .info {
        padding: 1.5em;
    }

    .info h3 {
        font-size: 2rem; /* Adjust font size for tablets */
    }

    .description {
        padding: 0 1.5em; /* Reduce padding */
    }

    .description p {
        font-size: 0.9rem; /* Adjust font size */
    }

    /* Ensure the intro does not overlap with mobile menu */
    #intro {
        margin-top: 0; /* Adjust margin for mobile view */
        height: auto;
        width: auto;
    }

    #intro img {
        width: auto;
    }

    /* Adjust city image for tablet view */
    .citi_img {
        width: 100%; /* Full width on tablet */
        padding: 1em;
    }

    .citi_img .citi {
        width: 100%; /* Full width on tablet screens */
        height: auto;
    }
}

/* Responsive for mobile screens (480px and below) */
@media (max-width: 480px) {
    #body {
        display: block; /* Mobile layout: stack content vertically */
        padding: 1em;
        margin-top: 100px;
    }

    .info {
        padding: 1em;
    }

    .info h3 {
        font-size: 1.8rem; /* Smaller font for mobile */
    }

    .description {
        padding: 0 1em; /* Further reduce padding for mobile */
    }

    .description p {
        font-size: 0.8rem; /* Adjust font size for readability */
    }

    /* Ensure the intro does not overlap with mobile menu */
    #intro {
        margin-top: 0; /* More margin for smaller screens */
    }

    /* Adjust city image for mobile view */
    .citi_img {
        width: 100%; /* Full width on mobile */
        padding: 0.5em; /* Reduce padding for mobile */
    }

    .citi_img .citi {
        width: 100%; /* Full width on mobile screens */
        height: auto;  /* Maintain aspect ratio */
    }
}
