* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body{
    height: 100%;
    overflow-x: hidden;
}

.background-container::before {
    content: "";  /* Required for pseudo-elements to show */
    position: absolute;  /* Positions it relative to the container */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;  /* Covers the entire container */
    background-image: url('images/background2.jpg');  /* image path */
    background-size: cover;  /* Scales the image to cover the entire area without distortion */
    background-position: center;  /* Centers the image */
    background-repeat: no-repeat;  /* Prevents tiling */
    filter: brightness(0.5);  /* Dims the image—adjust between 0.5 (darker) and 0.8 (lighter) */
    opacity: 0.6;  /* Additional subtle transparency—adjust as needed (0.5-0.9 works well) */
    z-index: -1;  /* Pushes it behind the content */
}

.background-container {
    position: relative;
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: justify;
    
    align-items: center;
}

.content-wrapper {
    display: flex;
    flex-direction: column;
    padding: 20px;
    justify-content: space-between;
    height: 100%;
    text-align: center;
    position: relative;
    z-index: 1;
    flex: 1;
}

.footer {
    gap: 40px;
}

.email {
    cursor: pointer;
    color: blue;
    text-decoration: underline;
}

.email:hover {
    color: darkblue;
    text-decoration: none;
}

.background-container2::before {
    content: "";  /* Required for pseudo-elements to show */
    position: absolute;  /* Positions it relative to the container */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;  /* Covers the entire container */
    background-image: url('images/background6.jpg');  /* image path */
    background-size: cover;  /* Scales the image to cover the entire area without distortion */
    background-position: center;  /* Centers the image */
    background-repeat: no-repeat;  /* Prevents tiling */
    filter: brightness(0.5);  /* Dims the image—adjust between 0.5 (darker) and 0.8 (lighter) */
    opacity: 0.6;  /* Additional subtle transparency—adjust as needed (0.5-0.9 works well) */
    z-index: -1;  /* Pushes it behind the content */
}
.background-container2 {
    position: relative;
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: justify;
    
    align-items: center;
}

.background-container3::before {
content: "";  /* Required for pseudo-elements to show */
    position: absolute;  /* Positions it relative to the container */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;  /* Covers the entire container */
    background-image: url('images/background13.jpg');  /* image path */
    background-size: cover;  /* Scales the image to cover the entire area without distortion */
    background-position: center;  /* Centers the image */
    background-repeat: no-repeat;  /* Prevents tiling */
    filter: brightness(0.5);  /* Dims the image—adjust between 0.5 (darker) and 0.8 (lighter) */
    opacity: 0.6;  /* Additional subtle transparency—adjust as needed (0.5-0.9 works well) */
    z-index: -1;  /* Pushes it behind the content */
}

.background-container3 {
position: relative;
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: justify;
    align-items: center;
}

.map-container {
    width: 400px;
    height: 400px;
    margin: 0 auto;
    background-color: #ccc; /* Placeholder color */
}

#calendar {
    max-width: 900px;
    margin: 0 auto;
}
.background-container4::before {
content: "";  /* Required for pseudo-elements to show */
    position: absolute;  /* Positions it relative to the container */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;  /* Covers the entire container */
    background-image: url('images/background5.jpg');  /* image path */
    background-size: cover;  /* Scales the image to cover the entire area without distortion */
    background-position: center;  /* Centers the image */
    background-repeat: no-repeat;  /* Prevents tiling */
    filter: brightness(0.5);  /* Dims the image—adjust between 0.5 (darker) and 0.8 (lighter) */
    opacity: 0.6;  /* Additional subtle transparency—adjust as needed (0.5-0.9 works well) */
    z-index: -1;  /* Pushes it behind the content */
}

.background-container4 {
position: relative;
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: justify;
    align-items: center;
}