.bg {
    background-image: url('../img/Bg.jpg');
    background-color: rgba(255,255,255,0.5);
    background-blend-mode: lighten;
    background-position: center;
    background-size: contain;
    height: 162px;
}

.opaque-bg {
    background-image: url('../img/Bg.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 162px;
}

.root-container {
    max-width: 2713px;
    margin: 0 auto;
}

.slider {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    height: 486px;
    margin: 0 auto;
    position: relative;
    width: 100%;
}

#fees .col {
    overflow: hidden;
    text-overflow: clip;
    white-space: nowrap;
    vertical-align: middle;
}

#fees .col span {
    display: inline-block;
}

#fees .col span:nth-child(1) {
    width: 88px;
    text-align: right;
}
#fees .col span:nth-child(2) {
    text-align: center;
    width: 20px;
}
#fees .col span:nth-child(3) {
    width: 88px;
    text-align: right;
}
#fees .col span:nth-child(4) {
    text-align: center;
    width: 20px;
}
#fees .col span:nth-child(5) {
    width: 81px;
    text-align: right;
}

.ellipsis {
    padding-left: 1rem !important;
    white-space: normal !important;
}

@media (min-width: 768px) {
    .ellipsis {
        max-width: 350px;
        white-space: nowrap !important;
    }

    .ellipsis:after {
        content: "...........................................................................................";
        letter-spacing: 0.2rem;
    }
}

.scroll-offset {
    scroll-padding-top: 6rem;
}

#gallery .col {
    text-align: center;
    vertical-align: middle;
}

#gallery img {
    max-height: 147px !important;
    max-width: 100% !important;
}

#location iframe {
    height: 500px;
    width: 100%;
}

#contact span {
    display: inline-block;
    width: 65px;
}

#photo-modal .modal-dialog {
    width: calc(100vw - 3rem) !important;
    height: calc(100vh - 3rem) !important;
}

#photo-modal .modal-content {
    background-color: rgba(255, 255, 255, 0.5);
    width: calc(100vw - 3rem);
    height: calc(100vh - 3rem);
}

#photo-modal .photo {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: calc(100% - 11rem);
}

#photo-modal .thumbnails .card {
    aspect-ratio: 4 / 3;
    cursor: pointer;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    max-height: 9rem;
    max-width: 12rem;
    transition: transform 0.2s ease-in-out;
}

#photo-modal .thumbnails .card:hover {
    transform: scale(1.07);
}

@media (max-width: 767px) {
    #photo-modal .thumbnails .col:nth-child(1) {
        display: none;
    }
    #photo-modal .thumbnails .col:nth-child(5) {
        display: none;
    }
}