.margin_30{
    padding-top: 30px;
    padding-bottom: 30px;
}
.margin__40{
    padding-top: 40px;
    padding-bottom: 40px;
}
.margin_60{
    padding-top: 60px;
    padding-bottom: 60px;
}
@media (max-width: 767px){
    .margin__40 {
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .margin_60{
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

section.bg-grey {
    background-color: #f6f6f6;
}

/* --------------------------------------
    Inputs
----------------------------------------- */
.form-control {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    /* color: #2065ab; */
    background-color: #fff;
    background-clip: padding-box;
    /* border: 1px solid #2065ab; */
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.form-control:focus {
    background-color: #fff;
    border-color: var(--second-color);
    -webkit-box-shadow: 0 0 0 1px var(--second-color);
    box-shadow: 0 0 0 1px var(--second-color);
}
.form-control-new {
    border: 1px solid #6b7399;
    border-radius: 30px !important;
    background-image: url();
    background-size: 20px 20px;
    background-repeat: no-repeat;
    background-position: 15px 50%;
    transition: all .2s linear;
    width: 100%;
    margin-bottom: 0;
    display: block;
    height: 50px;
    padding: 0.375rem 0.75rem;
    font-size: 12px;
    line-height: 1.5;
    outline: none;
    color: #6b7399 !important;
    font-weight: 400;
    background-color: #fff;
}
.form-control-new.form-input-icon,
.form-group-icon  .form-control-new{
    padding-left: 35px;
}
.form-group-icon > i.fas:first-child,
.form-group-icon .input-icon {
    position: absolute;
    top: 19px;
    left: 16px;
    color: var(--second-color);
    z-index: 100;
    font-size: 12px;
}

/* --------------------------------------
    Buttons
----------------------------------------- */
a.btn_1, .btn_1, input[type="submit"].btn_1 {
    background-color: var(--second-color);
    color: #fff !important;
    border: 2px solid var(--second-color);
    border-radius: 30px !important;
    cursor: pointer;
    min-width: 90px;
    font-size: 1rem;
    padding: 0.375rem 0.75rem;
    display: inline-block;
}
a.btn_1:hover, .btn_1:hover {
    background-color: #fff;
    color: var(--second-color) !important;
    border: 2px solid var(--second-color);
}

/* --------------------------------------
    Search engine
----------------------------------------- */
#home-page #search-engine {
    /* margin-top: -390px; */
}
@media screen and (max-width: 400px) {
    .nav-tabs {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }
    .nav-tabs .nav-link.active {
        padding: 0px 8px;
        font-size: 12px;
    }
}

/* --------------------------------------
    Carousel
----------------------------------------- */
.box-city {
    height: auto;
}
.box-city .wrapper {
    width: 100%;
    padding-top: 20px;
    text-align: center;
}
.box-city img:hover{
    /* filter: brightness(0.6);
    transition: 1s; */
}
.carousel-inner {
    width: 160px;
    height: 160px;
    object-fit: cover;
    border-radius: 10px;
    background-size: cover;
    background-repeat: no-repeat;
}
.box-city .carousel-inner:hover h3.box-hotel-city{
    display: none;
}
.box-city img{
    width: 160px;
    height: 160px;
    object-fit: cover;
    border-radius: 10px;
}
h3.box-hotel-city{
    position: absolute;
    top: 50px;
    margin-top: 13px;
    margin-bottom: 0;
    line-height: 17px;
    z-index: 100;
}
h3.box-hotel-city p{
    font-size: 19px;
    color: white;
    font-weight: bold;
    margin-bottom: 0;    
}
.nbr-hotel-city{
    /* text-shadow: 2px 2px #443d3d; */
    font-size: 13px;
    color: white;
}
.box-city .button {
    display: inline-flex;
    font-weight: 500;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #000;
    margin: 20px 0 0;
    padding: 10px 20px;
    color: #000;
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 1px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    text-align: center;
}
.box-city .button a {
    color: #212529;
    text-decoration: none;
    letter-spacing: 1px;
    font-size: 14px;
}
.box-city .button:hover a {
    color: var(--second-color) !important;
}
.box-city__box-opaque {
    position: absolute;
    width: 100%;
    z-index: 200;
    left: 411px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
}
.box-city .bounce-to-right {
    display: inline-block;
    vertical-align: middle;
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0);
    position: relative;
    transition-property: color, border-color;
    transition-duration: 0.5s;
}

/* --------------------------------------
    Section
----------------------------------------- */
.section-bg-azureish-white {
    background-color: #dff0fa;
}

/* --------------------------------------
    Main Title
----------------------------------------- */
.main_title {
    text-align: center;
    font-size: 16px;
    margin-bottom: 30px;
}
.main_title .h2 {
    color: var(--second-color);
    font-family: 'Open Sans', sans-serif !important;
    text-transform: capitalize;
    font-size: 28px;
    line-height: 1.1;
    text-align: center;
    margin-bottom: 0;
}
.main_title .subtitle {
    font-family: var(--fontSecondary);
    font-size: 20px;
    text-align: center;
    color: var(--second-color);
    padding-top: 10px;
    margin-bottom: 0;
}


.section-title-center-lg {
    text-align: center;
    font-size: 16px;
    margin-bottom: 30px;
}
.section-title-center-lg h2 {
    color: var(--second-color);
    font-family: 'Open Sans', sans-serif !important;
    text-transform: capitalize;
    font-size: 28px;
    line-height: 1.1;
    text-align: center;
    margin-bottom: 0;

    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
    font-weight: 300;
    text-align: center;
    position: relative;
}
.section-title-center-lg h2 span {
    font-weight: 400;
    display: inline-block;
    padding: 0 20px;
    background-color: #fff;
    position: relative;
}
.section-bg-azureish-white .section-title-center-lg h2 span {
    background-color: #dff0fa !important;
}

.section-title-center-lg .subtitle {
    font-family: var(--fontSecondary);
    font-size: 20px;
    text-align: center;
    color: var(--second-color);
    padding-top: 10px;
    margin-bottom: 0;
}

/* --------------------------------------
    Discover Our Deals Section
----------------------------------------- */
.deal_section .card-line-1,
.deal_section .card-line-2 {
    position: relative;
}
.img-fluid-promo-hotel {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    height: 245px;
    object-fit: cover;
}
.deal-card-style-1 .infos .title {
    font-weight: 700;
    min-height: 59px;
    padding-top: 10px;
    padding-bottom: 10px;
    border-left: 6px solid var(--main-color);
    padding-left: 10px;
    margin-left: -15px;
    display: flex;
    align-items: center;
    font-size: 17px;
}
.deal-card-style-1 .infos {
    padding: 0px 15px 0px 15px;
    width: 100%;
}
.deal-card-style-1 .short_desc{
    margin-top: 0px;
    font-size: 14px;
    text-align: justify;
}
.deal_section .card-line-1 .title,
.deal_section .card-line-2 .title {
    font-size: 16px;
    line-height: 1;
    font-weight: bold;
    color: white;
    z-index: 300;
}
.deal_section .card-line-1 .title:hover,
.deal_section .card-line-2 .title:hover {
    text-decoration: underline;
    cursor: pointer;
}
.deal_section h6.time-counter{
    color: #878787;
}
.deal_section h6.time-counter span{
    color: var(--second-color);
    font-weight: 600;
}
.price{
    font-size: 20px;
}
@media screen and (min-width: 768px) {
    .deal-card-style-1 .short_desc{
        min-height: 42px;
    }
}
@media screen and (max-width: 360px) {
    .deal_section .card-line-1 .price,
    .deal_section .card-line-2 .price {
        text-align: left;
    }
}
.deal_section .card-line-1 .category,
.deal_section .card-line-2 .category {
    font-size: 11px;
    line-height: 13px;
    height: 13px;
    margin: 0;
    z-index: 350;
    padding-top: 6px;
}

/* --------------------------------------
    Hotel detail page
----------------------------------------- */
.form-check-label {
    color: #fff !important;
    border: 2px solid var(--second-color);
    border-radius: 10px !important;
    min-width: 90px;
    padding: 0.375rem 0.75rem;
    font-weight: normal;
    cursor: default;
}
.form-check-label-choose {
    background-color: var(--second-color);
    cursor: pointer;
}
.form-check-label-choose:hover {
    background-color: #fff;
    color: var(--second-color) !important;
    border: 2px solid var(--second-color);
}
.form-check-label-choosed {
    background: var(--main-color);
}

#descriptif.showFullDescription #collapse-shortdesc {
    height: auto !important;
}
#descriptif.hideFullDescription #collapse-shortdesc {
    display: block;
    height: 5.5rem;
    overflow: hidden;
}

#services div.service-item:nth-of-type(n+7) {
    height: 0;
    max-height: 0;
    opacity: 0;
    margin-bottom: 0;
    padding: 0 !important;
}
#services._active div.service-item:nth-of-type(n+7) {
    height: auto;
    max-height: 100%;
    opacity: 1;
    margin-bottom: 3px;
    padding: 0.5rem!important;
}

/* --------------------------------------
    See more link - Product detail page
----------------------------------------- */
.btnToggleDetail,
.more-link {
    border-radius: 3px;
    padding: 4px 10px;
    font-size: 14px;
    font-weight: 500;
    background: #e0e5eb;
    color: #333333;
    cursor: pointer;
}
.more-link {
    display: block;
    margin-top: 15px;
    max-width: 100%;
    width: 110px;
}
.more-hidden {
	display: none;
}

/* --------------------------------------
    See more link - Product detail page
----------------------------------------- */
.owl-slid-mobile .owl-item img {
    border-radius: 15px;
}

/* --------------------------------------
    Booking process page
----------------------------------------- */
.title-card {
    font-size: 20px;
    font-weight: bold;
    padding: 10px 0 0;
    color: var(--second-color);
}
.booking-passengers .passenger-box {
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 20px; 
    margin-bottom: 20px;
}
.booking-passengers .passenger-box .passenger-box-title {
    font-size: 18px;
    font-weight: bold;
}
.booking-process #price_total {
    font-size: 18px;
    color: #005999;
    font-weight: 800;
}