/* Core container for boxed width */
.container {
    width: 100%;
    max-width: 1200px; /* adjust for your design */
    margin: 0 auto;
    padding: 0 20px; /* gutter space */
}

/* Header */
.site-header {
    background: #fff;
    border-bottom: 1px solid #ddd;
}

/* Hero / slider is always edge-to-edge */
.hero {
    width: 100%;
}
.hero img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* Footer full background, boxed content */
.site-footer {
    background: #3a3f4a;
    color: #fff;
    padding: 40px 0;
}

#top-slider {
    width: 100%;
    margin: 0;
    padding: 0;
}

#image-scroll-container {
    width: 100%;
    min-height: 200px; /* or whatever your slider height is */
    background-size: cover; /* stretch or cover horizontally */
    background-position: center;
}

/* footer */
.footer {
    padding-top: 1.5em;
    margin-top: 40px;
    border-top: #222;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    background: var(--bs-footer, #585f69); /* fallback color if var not set */
    color: #dadada;
    padding: 20px 0 30px;
}

.footer p {
    color: #dadada;
}

.footer p,
.footer a {
    font-size: 0.9em;
}

.headline {
    border-bottom: 2px solid var(--bs-primary-dark);
    margin-bottom: 2em;
}

.headline h2 {
    color: #dadada;
    font-size: 1.3em;
}



@media (max-width: 768px) {
    .footer .row {
        display: flex;
        flex-direction: column;
    }
    .footer .map-container {
        order: 3; /* Move map to the bottom */
    }
}

@media (max-width: 1399px) {
    .container {
        width: 95%;
    }
}

@media (max-width: 480px) {
    .container {
        /* width: 95%; */
        width: 100%;
        padding: 0.5rem
    }
}

