/* LAYOUT */

.section {
    padding: 48px 24px;
    position: relative;
    border-top: 1px solid var(--bs-tertiary);
}

.section.intro-section {border-top: 0 none;}

.bg-tertiary {
    background: var(--bs-tertiary);
}

.header .navbar-brand {
    max-width: 50%;
}

.navbar-toggler:focus {
    box-shadow: none;
}

.footer .copyright {
    border-top: 1px solid var(--bs-tertiary-hover);
}

/* COMPONENTS */

.carousel-main img {
    width: 100%;
    max-width: 880px;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    cursor: pointer;
}

.carousel-thumbs > .col {
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.carousel-thumbs img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    cursor: pointer;
    opacity: 0.6;
}

.carousel-thumbs img.active {
    border: 2px solid var(--bs-primary);
    opacity: 1;
}

.amenities-table .material-symbols-outlined,
.contact-block .material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    color: var(--bs-primary);
}

.amenities-table td {
    padding: 0.25rem;
}

/* BOOTSTRAP OVERRIDES */

.table tr:last-child td {
    border: none;
}

.table td > strong {
    font-weight: 600;
}

.lead {
    font-size: 1.125rem;
    font-weight: 300;
}

.availability-row td {
    transition: all 0.25s ease-in-out;
}

.availability-row:hover td {
    background-color: #f8f9fa;
    border-bottom-color: var(--bs-primary);
    cursor: pointer;
}

.availability-row.active td {
    background-color: #f8f9fa;
    border-bottom-color: var(--bs-primary);
}
.chevron {
    transition: transform 0.3s ease;
}
.chevron.rotate {
    transform: rotate(90deg);
    color: var(--bs-primary);
}


.availabilities-table th {
    white-space: nowrap;
}

@media only screen and (min-width: 768px) {
    .section {padding: 48px 0;}
}

@media only screen and (min-width: 992px) {
    .section {padding: 72px 0;}
    .section.intro-section {padding-top: 32px;}
    .border-md-0 {border: 0 none !important;}
}

@media only screen and (min-width: 992px) and (max-width: 1399px) {
    .table.fast-facts-table>:not(caption)>*>* {
        padding: .25rem .5rem; /* same as .table-sm */
    }
}
@media only screen and (min-width: 1200px) {
    .header {background: none;}
    .footer .copyright {border-top: none;}

    .border-lg-0 {border: 0 none !important;}
}

@media only screen and (min-width: 1400px) {
    .border-xl-0 {
        border: 0 none !important;
    }
}


@media only screen and (min-width: 1440px) {
    .header .navbar-brand {max-width: 20%;}
}