
#banner {
    height: 550px;
    width: 100%;

    object-fit: cover;
    object-position: center;
}

main {
    background-color: #ffffff;
    overflow: hidden;
}

.btn-position {
    display: flex;
	justify-content: flex-end;
	position: relative;
}

.btn-position .btn-fs {
	position: absolute;
	right: 1.5rem;
	bottom: 1.5rem;
}

main img {
    object-fit: cover;
    object-position: center;
}

@media (min-width: 1024px) {
    .position-relative {
        bottom: 300px;
        margin-bottom: -250px;
        margin-bottom: calc(-300px + 3rem);
    }

    h1, .h1 {
        font-size: 2.5rem;
    }

    main img {
        aspect-ratio: 16 / 6;
    }
}

@media (max-width: 1023px) {
    main img {
        aspect-ratio: 8 / 7;
    }
}

.tour-list {
    display: flex;
    flex-direction: column;
    gap: 10px;

    margin-top: 10px;

    max-height: 190px;
    overflow-y: scroll;
    scroll-snap-type: y mandatory;
}

/* width */
.tour-list::-webkit-scrollbar {
  width: 10px;
}

/* Track */
.tour-list::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
.tour-list::-webkit-scrollbar-thumb {
  background: #c7b344;
  border-radius: 10px;
}

/* Handle on hover */
.tour-list::-webkit-scrollbar-thumb:hover {
  background: #ac9b36;
}

.tour-list .tour {
    height: 30px;
    scroll-snap-align: start;
    padding-right: 10px;
    
    cursor: pointer;
    color: rgb(74, 74, 74);
}

.tour-list .tour.active {
    color: rgb(0, 0, 0);
}

.active-tour p {
    text-transform: capitalize;
}

.active-tour small, .tour-list .tour small {
	font-size: 0.75em;
	text-decoration: line-through;
}

.active-tour span, .tour-list .tour span {
    font-size: 0.65em;
}

.tour-list .tour.active {
   font-weight: bold;
}

@media (max-width: 1023px) {
    h4 i {
        transform: rotate(0deg);
        transition: transform 0.5s ease;
    }
}

@media (max-width: 1023px) {
    .container-lg {
        padding: 0;
    }
    
    #banner {
        height: 300px;
    }
    
    .btn-position-mob {
        display: flex;
        justify-content: flex-end;
        position: relative;
    }
    
    .btn-position-mob .btn-fs {
        position: absolute;
        right: 1.5rem;
        bottom: 1.5rem;
    }
    
}


@media (max-width: 1279px) {
    h4 {
        cursor: pointer;
    }

    h4 i {
        transform: rotate(180deg);
        transition: transform 0.5s ease;
    }

    h4 i.rotate {
        transform: rotate(0deg);
    }
    
    .col-12.bg-primary-light {
        position: fixed;
        bottom: 0;
        left: 0;
        
        max-height: 100vh;
        overflow-y: auto;
    }
}

@media (max-width: 767px) {
    main * {
        text-align: center;
    }
}
