/* load font  */
@font-face {
    font-family: texgyreadventorRegular;
    src: url(fonts/texgyreadventor-regular.otf); 
}
@font-face {
    font-family: texgyreadventorItalic;
    src: url(fonts/texgyreadventor-italic.otf);
}
@font-face {
    font-family: texgyreadventorBold;
    src: url(fonts/texgyreadventor-bold.otf);
    font-weight: bold;
}
@font-face {
    font-family: texgyreadventorBoldItalic;
    src: url(fonts/texgyreadventor-bolditalic.otf);
    font-weight: bold;
}

/* color variable  */
:root {
    --lits-blue : #248DC1;
    --lits-skyblue : #E6EEF5;
    --lits-black : #000000;
    --lits-white : #ffffff;
    --lits-navy : #011c3a;
}



/* utilites  */
*{
    font-family: texgyreadventorRegular;
}
body { 
    max-height: 100%;
    height : 120vh;
    overflow-y: auto;
    overflow-x: hidden;
    /* background-image: url('img/bg_main.webp'); */
    background-repeat: no-repeat;
    background-size: cover;
}
@media(min-width : 1200px) { 
    body { 
        overflow-y: hidden;
        max-height: 100vh;
        height:100vh;
    }
}

/* Webkit browsers (Chrome, Safari, etc.) */
::-webkit-scrollbar {
    width: 8px; /* Width of the scrollbar */
}

::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.04); /* Color of the track */
    border-radius: 10px; /* Rounded corners of the track */
}

::-webkit-scrollbar-thumb {
    background: var(--lits-navy); /* Color of the thumb */
    border-radius: 10px; /* Rounded corners of the thumb */
}

::-webkit-scrollbar-thumb:hover {
    background: var(--lits-navy); /* Color of the thumb on hover */
}


h1,h2,h3,h4,h5,h6 {
    font-family: texgyreadventorBold;
    font-weight: bold;
    padding: 0px;
    margin: 0px;
}
h1::first-letter,h2::first-letter,h3::first-letter,h4::first-letter,h5::first-letter,h6::first-letter { 
    text-transform: uppercase;
}
.upper-first::first-letter  { 
    text-transform : uppercase;
}
a { 
    text-decoration: none;
}
/* .iti.iti--allow-dropdown.iti--show-flags {
    width: 100%;
}
.choices__list--dropdown {
    height: 0;
  }
  
  .choices__list--dropdown.is-active {
    height: auto;
  }
.choices__inner {
    background-color: transparent;
    border: 0px;
    border-bottom: 1px solid var(--lits-black);
}
.form-control { 
    border: 0px;
    border-bottom: 1px solid black;
    border-radius: 0px;
    background-color: transparent;
}
.form-control:focus { 
    background-color: transparent;
    box-shadow: none;
}
.form-floating label::after { 
    background-color: transparent !important;
} */
/* .form-switch .form-check-input { 
    background-color : var(--lits-navy) ;
    padding : 5px;
} */
.rounded-lits { 
    border-radius :20px 0px 20px 0px !important;
}

.bg-lits-blue { 
    background-color : var(--lits-blue);
}
.bg-lits-navy { 
    background-color: var(--lits-navy) !important;
}
.border-lits-blue { 
    border: 1px solid var(--lits-skyblue) !important;
}
.text-lits-blue { 
    color : var(--lits-navy)
}
.text-lits-skyblue {
    color : var(--lits-skyblue) !important;
}
.btn-lits {
    border-radius: 0px;
    border-top-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    background-color: var(--lits-navy);
    color: var(--lits-skyblue);
    border: 0px;
}
.btn-lits:hover {
    background-color: var(--lits-navy);
    color: var(--lits-skyblue);
}

.btn-outline-lits {
    border-radius: 0px;
    border-top-left-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    background-color: transparent;
    color: var(--lits-navy);
    border: 1px solid var(--lits-navy);
}
.btn-outline-lits:hover {
    background-color: var(--lits-navy);
    color: var(--lits-skyblue);

}

.card {
    border-radius: 20px 0px 20px 0px;
    background-color: white;
}
.card-header {
    border-radius :20px 0px 20px 0px !important;
    position: sticky;
}


/* layout  */
#parrentContainer { 
    /* height: 95vh; */
    /* border: 1px solid black; */
    /* margin: 3rem; */
}
@media(min-width : 1440px) {
    #parrentContainer { 
        /* height: 80vh; */
    }
}

#outerContainer { 
    border-radius: 20px 0px 20px 0px;
}
#parrentContainer > .row { 
    height: 97vh;
    margin: 0.5rem
}
.aside-container {
    background-image: url('img/lits_bg1.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-top-left-radius: 30px;
    /* display: none; */
    
}
.lits-logo { 
    width : 150px;
    margin : 2rem;
}
.aside-text { 
    padding : 2rem;
    text-align: justify;
}

.main-container { 
    height: 100%;
    /* padding : 1rem 1rem; */
    background-color : var(--lits-skyblue);
    border-bottom-right-radius: 30px;
    overflow-y : auto;
    overflow-x: hidden;
    scroll-behavior: smooth;
    padding :1rem;
}

@media (min-width : 1200px) {
    .main-container { 
        padding : 0rem 2rem;
        height: 100%;
        overflow-y: auto;
        display: flex;
        gap: 1rem;
        flex-direction: column;
        /* justify-content: space-between;
        align-items: space-between; */
    }
    .aside-container { 
        /* height: 100%; */
        display: flex;
    }
    .scroll-container { 
        height: 95%;
        overflow-x: hidden;
        overflow-y: auto;
        padding: 1rem;
        padding-left: 0px;
    }
} 

/* components  */

/* wizard track  */
#wizardTrack { 
    display: flex;
    justify-content: space-between;
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 5;
    /* border: 1px solid black; */
    color: var(--bs-gray-500);
    background-color: white;
    padding: 0.5rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    border-radius: 20px 0px 20px 0px;
}
.step-indicator-container {
    max-width : 120px;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    gap : 0.5rem;
    /* border : 1px solid black; */
}
.step-indicator-container.active , .step-indicator-container.clear {
    color: var(--lits-navy);
}
.step-indicator-container.active .step-indicator {
    border :1px solid var(--lits-navy);
    background-color: var(--lits-navy);
}
.step-indicator-container.clear .step-indicator {
    border :1px solid var(--lits-navy);
    background-color: var(--lits-navy);
}

.step-indicator-container h6 { 
    text-align: center;
    font-family: texgyreadventorRegular;
    font-size: 13px;
    
}
.step-indicator {
    width : 25px;
    height: 25px;
    border: 1px solid var(--bs-gray-500);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    text-align: center;
    align-items: center;
    position: relative;
    /* background-color: var(--lits-navy); */

}
.step-indicator-container:last-child .step-indicator::before,
.step-indicator-container:last-child .step-indicator::after { 
    display: none;
}

.step-indicator::before,
.step-indicator::after { 
    position: absolute;
    content : '';
    width : 70px;
    height : 3px;
    left : 40px;
    background-color: var(--bs-gray-500);
    /* display: none */
}
@media(min-width:768px) { 
    #wizardTracker { 
        padding: 1rem;
    }
    .step-indicator-container {
        max-width: 150px;
    }
    .step-indicator::before,
    .step-indicator::after { 
        width : 190px;
        display: block;
    }
}
@media(min-width:1440px) {
    .step-indicator::before,
    .step-indicator::after { 
        width : 258px;
        display: block;
    }
}

/* footer wizard  */
.footer-wizard { 
    width : 100%;
    display: flex;
    flex-direction: column-reverse;
    justify-content: space-between;
    position: sticky;
    z-index: 5;
    bottom: 0;
    background-color: white;
    padding : 1rem;
    margin-bottom: 1rem;
    border-radius: 20px 0px 20px 0px;

}

@media(min-width : 1200px) { 
    .footer-wizard { 
        flex-direction: row;
    }
}


/* calendar  */
.prev-btn  { 
    height:  fit-content;
}
.next-btn { 
    height: fit-content;
}
.calendar { 
    max-width:100%;
    margin: auto;
    border: 0px ;
}
.weekdays, .days {
    justify-content: space-between;
    width : 100%;
    margin : auto;
    margin-bottom : 10px
}
.weekdays { 
    border : 1px solid var(--lits-navy);
    border-radius : 10px 0px 10px 0px;
    background-color: white;
}
.weekdays .day {
    width :calc(100% / 7 - 10px);
    margin:5px;
    font-size: 13px;
    padding: 0px;
}

.days .day {
    width: calc(100% / 7 - 10px);
    height: auto;
    font-size: 13px;
    padding : 1rem 0.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 15px 0px 15px 0px;
    margin: 5px;
    background-color :white;
    border: 1px solid var(--lits-navy);
    color: var(--lits-black);
    transition-duration: 0.3s;
}
@media (min-width : 768px) {
    .weekdays .day { 
        width :calc(100% / 7 - 10px );
        margin:5px;
        font-size : 15px;
    }
    .days .day { 
        width : calc(100% / 7 - 10px);
        margin : 5px;
    }
}
@media (min-width : 1600px) {
    .days .day { 
        width : calc(100% / 7 - 15px);
        margin : 5px;
        margin-top : 10px;
    }
}
.days .day:hover { 
    cursor: no-drop;
}
.days .day:not(.prev):not(.next):not(.sold):hover {
    /* background-color: var(--lits-navy);
    color: var(--lits-skyblue); */
    cursor: pointer;
}

.days .day.prev {
    color : var(--bs-gray-500);
    border-color: var(--bs-gray-500);
}
.days .day.next {
    color : var(--bs-gray-500);
    border-color: var(--bs-gray-500);
}

.days .day.sold { 
    color : var(--bs-danger);
    border-color : var(--bs-gray-500);
}

.days .day.selected { 
    color : white;
    background-color: var(--lits-navy);
}

/* /calendar  */


/* session */
.session-btn:not(.sold) .card { 
    background-color: white;
    transition-duration: 0.3s;
}
.session-btn:not(.sold) .card:hover {
    background-color : var(--lits-navy);
    color : white;
}

.session-btn.selected .card { 
    background-color : var(--lits-navy);
    color: white;
}

.session-btn.sold  { 
    pointer-events: none;
    cursor:not-allowed;
}
.sesion-btn.sold .card { 
    background-color : black;
    pointer-events: none;
    cursor: not-allowed;
}

/* menu widget  */
.owl-nav { 
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.owl-nav button span { 
    padding : 0.5rem;
    font-size: 32px;
    border-radius: 10px 0px 10px 0px;
    border : 1px solid var(--lits-navy);
    background-color : white;

}
.owl-nav button span:hover { 
    color: var(--lits-navy);
}
.main-course-menu:not(.selected) { 
    transition-duration: 0.3s;
}
.main-course-menu:not(.selected):hover {
    background-color: var(--lits-navy);
    color: white; 
    cursor: pointer;
    transition-duration: 0.3s;
}
.main-course-menu.selected { 
    background-color: var(--lits-navy);
    color: white; 
    cursor: pointer;
    transition-duration: 0.3s;  
}
.payment-method:not(.selected) { 
    transition-duration: 0.3s;
}
.payment-method:not(.selected):hover {
    background-color: var(--lits-navy);
    color: white; 
    cursor: pointer;
    transition-duration: 0.3s;
}
.payment-method.selected { 
    background-color: var(--lits-navy);
    color: white; 
    cursor: pointer;
    transition-duration: 0.3s;  
}

.booking-source:not(.selected) { 
    transition-duration: 0.3s;
}
.booking-source:not(.selected):hover {
    background-color: var(--lits-navy);
    color: white; 
    cursor: pointer;
    transition-duration: 0.3s;
}
.booking-source.selected { 
    background-color: var(--lits-navy);
    color: white; 
    cursor: pointer;
    transition-duration: 0.3s;  
}


/* seating table  */
#seatMap {
    position : relative; 
    height: 500px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* border: 1px solid var(--bs-gray-500); */
    /* border-radius: 20px; */
    background-color: white;
    z-index: 4;
}
.seat-frame { 
    position: absolute;
    width : 62%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.seat-table-start, .seat-table-center, .seat-table-end  { 
    display: flex;
    z-index: 3;
    height: 45%;
}
.seat-table-center { 
    height: 56%;
}

.seat-table-container { 
    width : 100%;
    height: 100%;
    /* border: 1px solid black; */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    
}
.seat-table { 
    width: 70px;
    height: 70px;
    border: 1px solid var(--lits-black);
    border-radius: 100%;
    background-color: white;
    padding : 0rem;
    display: flex;
    flex-wrap: wrap;
    z-index: 2;
    position: relative;
}

.seat-table .table-id { 
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    font-size: 13px;
}
.seat-table .seat-container { 
    width:50%;
    /* border: 1px solid black; */
    display: flex;
    justify-content: center;
    align-items: center;
}
.seat-table .seat-container .seat { 
    width:15px;
    height: 15px;
    background-color: white;
    border: 1px solid var(--lits-navy);
    border-radius: 100%;
    font-size: 10px;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
}

.seat-table.selected {
    background-color: var(--lits-navy) !important;
    color: white;
    border: 0px;
}
.seat-table.selected .seat { 
    background-color: white;
    color: var(--lits-navy);    
}

.seat-table .seat-container .seat:not(.selected):not(.sold):hover { 
    border: 0px;
    background-color: var(--lits-navy);
    color: white;
    cursor: pointer;
}
.seat-table .seat-container .seat.selected { 
    background-color: var(--lits-navy);
    color: white;
    cursor: pointer;
}
.seat-table .seat-container .seat.sold { 
    background-color: var(--bs-gray-500);
    border: 1px solid var(--bs-gray-500);
    cursor:not-allowed;
}

@media(min-width : 768px) { 
    .seat-table { 
        width: 90px;
        height: 90px;
    }
    .seat-frame {
        width : 75%;
    }
    .seat-table-start, .seat-table-center, .seat-table-end  { 
        height: 60%;
    }
    .seat-table-center { 
        height: 75%;
    }
    .table-id { 
        font-size: 15px;
    }
}


/* summary  */
/* upgrade widget  */
.upgrade-widget { 
    background-color: white;
    padding : 0px 0.5rem;
    /* width : 100%; */
    gap:1.7rem;
    color: var(--lits-black);
}
@media(min-width : 768px) {
    .upgrade-widget { 
        gap : 3.7rem;
    }
}
@media(min-width : 1440px) {
    .upgrade-widget { 
        gap : 5.5rem;
    }
}


/* form wizard control  */
.step { 
    display: none;
}
#step-4 .card { 
    height : 60vh;
}
#sessionSelect { 
    display: none;
}
#paxSelect { 
    display: none;
}

