:root {
    --color1: #2c3e50; /* Midnight Blue */
    --color2: #09622e; /* Dark Green */
    --color3: #eaecee; /* Light Steel Gray */
    --roboto: "Open Sans", "Roboto", Arial, sans-serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    max-width: 100%;
}

/************** MAIN ****************/
h1, h2 {
    font-family: var(--roboto);
}

h2 {
    font-size: 2rem;
    color: var(--color1);
}

p, button, nav {
    font-family: var(--roboto);
}

/************** HERO BANNER *************/
.hero {
    display: grid;
    position: relative;
    overflow: hidden;
}

.hero-picture,
.hero-overlay {
    grid-area: 1 / 1 / 2 / 2; /* Place both in the same grid cell to overlap */
}

.hero-picture img {
    width: 100%;
    height: 100%; /* Ensure image covers the full hero height */
    object-fit: cover; /* Cover the area without distortion */
    display: block;
    filter: brightness(0.6);
}

.hero-overlay {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 1.5rem;
    z-index: 2; /* Ensure it's on top of the image */
}

.hero-overlay h1 {
    color: white;
    font-size: 1.6rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
    margin: 0 0 1.5rem 0; /* Add space below the heading */
    max-width: 95%;
}

.appt-button {
    display: inline-block;
    text-decoration: none; 
    background-color: var(--color2);
    color: white;
    padding: 12px 24px;
    font-size: 1.2rem;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.appt-button:hover {
    background-color: #219653;
}

/* -************* SECTIONS **************- */

#current-events, #weather, #forecast {
    margin: 2rem 1rem;
    background-color: var(--color3);
    padding: 2rem;
    min-height: 200px;
}

.spotlight-container {
    flex: 1 1 300px;
} 

section {
    margin: 2rem 1rem;
    background-color: var(--light);
}

section h2 {
    text-align: center;
}

/************* CURRENT EVENTS **************/

section#current-events h2 {
    background-color: var(--dark-2);
    padding: 1rem;
}
section#current-events p {
    padding: 1rem;
    font-size: 1.1rem;
    text-align: center;
}
/************* CURRENT WEATHER ************/

.weather-card {
    display: flex;
    gap: 15px;
    justify-content: center;
    margin: 2rem;
    padding-bottom: 1rem;
}

section#weather h2 {
    background-color: var(--dark-2);
    padding: 1rem;
}

p#temperature {
    margin-bottom: 10px;
}

p#description {
    margin-bottom: 7px;
    text-transform: capitalize;
}

p#high, p#low, p#humidity {
    margin-bottom: 4px;
}

p#city {
    font-size: 1.5rem;
    margin-bottom: 10px;
}
/**************** 3-DAY FORECAST *****************/

div#forecast-3day {
    text-align: center;
    margin: 1rem;
    padding-bottom: 1rem;
}

.forecast-day {
    margin: .5rem;
}

div.forecast-card h2 {
    background-color: var(--dark-2);
    padding: 1rem;
}

div.forecast-card p{
    text-transform: capitalize;
}

section#spotlights h2 {
    background-color: var(--dark-1);
    padding: 1rem;
}

/*************** SPOTLIGHTS ***************/

div.spotlight-container {
    background-color: #fff;
    padding: 1rem;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.6);
}

div.spotlight-container h3 {
    margin: 10px 0;
}

div.spotlight-container a {
    color: var(--dark-1);
    font-weight: bold;
    font-family: var(--paragraph-font);
}

div.spotlight-card img {
    width: 100px;
    height: 100px;
}

#spotlight-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0 2rem 2rem;
    text-align: center;
}

#spotlights{
    background-color: var(--color3);
    margin: 0 1rem 2rem;
}

/* Media Query for Mobile View */
@media (max-width: 480px) {
    .hero h1 {
        font-size: 1rem; /* Reduce font size for small screens */
    }

    .appt-button {
        padding: 8px 16px; /* Make the button slightly smaller */
        font-size: 1rem;
    }

    section h2{
        font-size: 1rem; 
    }

    h3{
        font-size: 1rem;
    }
    
    .spotlight-card p, .spotlight-card a {
        font-size: 0.9rem;
    }

    section#current-events p {
        font-size: 1rem;
    }

}