﻿:root {
    --color1: #000000;
    --color2: #F67A97;
    --fontName: "AvenirLTStd-Light";
    /*swiper*/
    --swiper-pagination-color: var(--color1);
    --swiper-theme-color: white !important;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

html {
    height: 100%;
    font-size: 14px;
}

body {
    position: relative;
    height: 100%;
    /*font-family: 'Segoe UI', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;*/
    /*font-family: Circular,"Helvetica Neue",Helvetica,Arial,sans-serif;*/
    font-family: var(--fontName);
    font-weight: 400;
    overflow: hidden;
}

h2, h3 {
    color: var(--color1);
}

a, .link {
    color: var(--color1);
}

input[type=submit], .button {
    color: var(--fore-color1) !important;
    background-color: var(--color1) !important;
}

    input[type=submit]:hover, .button:hover {
        color: lightgray;
    }

.btnMapSelected {
    color: var(--fore-color1) !important;
    background-color: var(--color1) !important;
}

.btnMap {
    color: var(--fore-color2);
    background-color: var(--color2);
}

.fullScreenFilterPopup i.f-filter, .fullScreenFilterPopup span.f-filter {
    color: var(--color1) !important;
}

.irs--round .irs-from, .irs--round .irs-to, .irs--round .irs-single {
    color: var(--fore-color1) !important;
    background-color: var(--color1) !important;
}

.irs--round .irs-bar {
    color: var(--fore-color1) !important;
    background-color: var(--color1) !important;
}

.irs--round .irs-from:before, .irs--round .irs-to:before, .irs--round .irs-single:before {
    border-top-color: var(--color1) !important;
}

.irs--round .irs-handle {
    border-color: var(--color1) !important;
}

.b-footer {
    position: relative;
    margin: auto;
    text-align: center;
    bottom: 0;
    overflow: hidden;
    background-color: transparent var(--color1);
    color: var(--fore-color1);
    width: fit-content;
}

/* Prevents text selection on double click on a clickable element */
.no_selection {
    user-select: none; /* standard syntax */
    -webkit-user-select: none; /* webkit (safari, chrome) browsers */
    -moz-user-select: none; /* mozilla browsers */
    -khtml-user-select: none; /* webkit (konqueror) browsers */
    -ms-user-select: none; /* IE10+ */
}

.Color1 {
    color: var(--color1);
}

.BorderColor1 {
    border: 1px solid var(--color1);
}

.BackColor1 {
    background-color: var(--color1);
}

.Color2 {
    color: var(--color2);
}

.BackColor2 {
    background-color: var(--color2) !important;
}

.ForeColor1 {
    color: var(--fore-color1) !important;
}

.ForeColor2 {
    color: var(--fore-color2) !important;
}

.Color-White, .text-white {
    color: white !important
}

.Color-Black {
    color: black !important
}

.Color-Transparent {
    color: transparent;
}

.text-primary {
    color: var(--color2) !important;
}

.text-success, .text-green {
    color: #218242
}

.symbolHome {
    color: #aaa;
    position: relative;
    top: 2.8em;
    left: 0.5em;
    z-index: 1;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    font-family: var(--fontName);
    font-weight: 300;
    font-size: 1.5em;
    height: 28px;
    line-height: 10px;
    width: 45px;
    text-align: center;
}

.symbolPopupHome {
    color: #aaa;
    position: relative;
    left: -0.4em;
    z-index: 1;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    font-family: var(--fontName);
    font-weight: 300;
    font-size: 1.5em;
    width: 45px;
    text-align: center;
}

.symbolPopupSearch {
    font-size: 18px !important;
    left: -6px;
    position: relative;
    text-align: center;
}

.ecoInformation {padding:0px 20px!important; text-align: justify;}
.ecoTab {padding-left: 30px;padding-bottom: 20px;}

.nowrap {
    white-space: nowrap;
}

.textCenter, .text-center {
    text-align: center !important;
}
/*
.d-block {
    display: block !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-table-cell {
    display: table-cell !important;
}
    */

table {
    width: auto;
    border-collapse: separate;
    /*margin: 0 0 20px;*/
}

.tableRecapFinanceResaProcess {
    margin: auto;
}

.pnlGuestDetails table {
    margin: auto;
}

table tbody tr td {
    padding: 3px 10px;
}

.clear {
    float: none;
    clear: both;
}

.text-dotted {
    text-decoration: dotted;
}

.b-home-foot {
    position: relative;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 20px;
}

#tileCustomSlider {
    position: fixed;
    bottom: 0px;
}

    #tileCustomSlider * {
        font-family: var(--fontName);
    }

.b-home-foot, #tileCustomSlider {
    position: relative;
    bottom: 0;
    max-height: none;
    /*min-width: 90%; Rémi : MAJ du 20/06/2023 : j'enlève le min-width car il prend trop de place et il passe sur le chat*/ /*Nasser inutile ça crop le texte sinon - MAJ 10/2022 j'ai remis en % voir si c'est mieux*/
    overflow: hidden;
    height: auto;
    width: fit-content;
    padding-bottom: 0;
    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    margin: 0;
}

    .b-home-foot *, #tileCustomSlider * {
        font-family: var(--fontName);
        font-size: 11pt !important;
        /*font-weight: normal !important;*/
        background-color: var(--color1);
        color: var(--fore-color1);
    }

.SortHotelsSelected i {
    color: black;
    font-weight: bold;
}

.spanAvailableHotels {
    font-size: 16px;
    padding-top: 12px;
    padding-left: 15px;
    height: fit-content;
    font-weight: normal;
    line-height:unset;
}

.toLower {
    text-transform: lowercase;
}

.SearchMeetingRooms label {
    padding: 7px;
    margin: 0px;
    cursor: pointer;
    width: 100%;
    position: relative;
}

.SearchMeetingRooms input {
    display: none;
}

.SearchMeetingRooms span {
    outline: none;
}

.SearchMeetingRooms input:checked + label {
    background-color: var(--color2);
    color: var(--fore-color2);
    /*color: #130A04;*/
    border-radius: 2px;
}

#divSortHotels {
    right: 0px;
    text-align: right;
    position: absolute;
    font-size: 16px;
    padding-top: 12px;
    padding-right: 15px;
    height: 40px;
    font-weight: normal;
    z-index: 10003;
}


/*
* === BOOTSTRAP Position (Avail. in v4) ===
*/

/* Stretch link to full parent size */
/*.stretched-link::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}*/


/* to make list bullets respect the bootstrap alert padding */
.alert ul {
    list-style-position: inside;
}

.vCenter {
    display: inline-block;
    vertical-align: middle;
}

span.green-checkbox input[type=checkbox], .green-checkbox input[type=radio] {
    position: absolute;
    z-index: -1000;
    left: -10000px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

    span.green-checkbox input[type=checkbox] + label, .green-checkbox input[type=radio] + label {
        padding-left: 22px;
        height: 15px;
        display: inline-block;
        line-height: 18px;
        background-repeat: no-repeat;
        background-position: 0 -2px;
        vertical-align: middle;
        cursor: pointer;
        background-image: url("../Images/csscheckbox.png?v=0711");
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
    }

    span.green-checkbox input[type=checkbox]:checked + label, .green-checkbox input[type=radio]:checked + label {
        background-position: 0px -21px;
    }

/*.green-checkbox label {
    display: inline !important;
}*/

.bkgFS {
    background-attachment: fixed !important;
    background-size: cover !important;
}

.backgroundColorHotels {
    background-color: white;
}


/***********************************************************************************
    FLEXBOX 
************************************************************************************/

.row.is-flex {
    display: flex;
    flex-wrap: wrap;
}

    .row.is-flex > [class*='col-'] {
        display: flex;
        flex-direction: column;
    }

/*
* And with max cross-browser enabled.
* Nobody should ever write this by hand. 
* Use a preprocesser with autoprefixing.
*/
.row.is-flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

    .row.is-flex > [class*='col-'] {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }

.flex-vCenter {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.flex-end {
    justify-content: flex-end
}

.flex-grow-1 {
    flex-grow: 1;
}

.flex-grow-2 {
    flex-grow: 2;
}

.align-self-center {
    align-self: center;
}

.box {
    display: flex;
    flex-flow: column;
    height: 100%;
}

    .box .section.header {
        flex: 0 1 auto;
    }


    .box .section.content {
        display: flex;
        flex-flow: row nowrap;
        flex: 1 1 auto;
        overflow-y: auto;
        position: relative;
    }

        .box .section.content > div {
            overflow-x: hidden;
            overflow-y: auto;
        }

            .box .section.content > div.left {
                flex: 1 1 55%;
                flex-shrink: 0; /* defines the ability for a flex item to shrink if necessary*/
                flex-basis: 55%;
                position: relative;
                -webkit-overflow-scrolling: touch;
            }

            .box .section.content > div.right {
                flex: 2 2 45%;
                height: 100%;
                position: relative;
            }


    .box .section.footer {
        flex: 0 1 auto;
        z-index: 1;
    }


/***********************************************************************************
    HEADER
 ************************************************************************************/

.header {
    background-color: white;
    width: 100%;
}

.navbarmenu {
    background-color: white;
}

.header .banner {
    text-align: center;
    line-height: 0px;
}

.banner {
    display: flex;
}

    .banner > div {
        flex: 1 100%; /*grow*/
        max-height: 200px;
    }

.BannerImg {
    display: inline-block;
    flex: none !important;
}

.header .banner a {
    display: inline-block;
}

.imgBanner {
    display: block;
    margin: auto;
    max-width: 100vw;
    max-height: 200px;
    /*height: 15vh;*/
}

.imgLogo {
    position: absolute;
    top: 5px;
    left: 5px;
}

.filters {
    background-color: white;
    border-bottom: 1px solid #8AA8BD;
}

.imgHotels {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/***********************************************************************************
    HEADER HOTEL NAME
 ************************************************************************************/
.inlineBlock {
    display: inline-block;
}

.inlineBlockDivLeft {
    float: left;
}

.floatRight {
    float: right;
}

.inlineBlockDivRelative {
    display: inline-block;
    position: relative;
}

.inlineBlockCategoryTitle {
    display: inline-block;
    white-space: nowrap;
}

.button.addToBasket {
    margin-top: 20px;
    margin-left: -15px;
}

.addToBasket-main {
    margin-right: 0 !important;
}

/***********************************************************************************
    CONTENT
 ************************************************************************************/

.content {
    width: 100%;
    /*max-height:calc(100vh - (30vh + 7vh)); expends to fit the remaining space (only works if footer height is known)*/
    height: 60vh;
    overflow: hidden;
}

    /** test, can be removed after */
    .content > div.left {
        background-color: White;
        color: black;
    }


div.left {
    padding-left: 20px;
}

.inline {
    display: inline;
}

.SelectedRoomType {
    padding: 5px 6px 7px 6px;
    border-radius: 3px;
    font-weight: bold;
}
/***********************************************************************************
    EVENTWEBSITES
 ************************************************************************************/

.eventWebsites {
    border-spacing: 5px 0px;
    border-collapse: separate !important;
    table-layout: fixed;
}

.eventWebsite {
    height: 45px;
    cursor: pointer;
    line-height: 11px !important;
    text-align: center;
    padding: 6px 8px 0 8px;
    vertical-align: top;
    border-spacing: 10px;
    border-radius: 2px;
}

    .eventWebsite a {
        color: #666;
        font-size: 13px !important;
    }


/***********************************************************************************
    FOOTER
************************************************************************************/

.footer {
    width: 100%;
    position: sticky;
    bottom: 0;
    z-index: 1049 !important;
}

.FooterOnMap {
    position: absolute;
    float: right;
    bottom: 0px;
    left: 60%;
    z-index: 1999;
}


/***********************************************************************************
    MAP
************************************************************************************/

#panelMap, #separatorRowPanelMap {
    height: 33px;
    background-color: White;
}

#panelMap {
    position: relative;
    /*left: -15px;
    width:1023px;*/
    width: 100%;
    z-index: 5;
    padding: 2px 5px 2px 5px;
    border: 1px solid #999;
    font-size: 12px;
    /*font-family: Arial;*/
    font-family: var(--fontName);
    overflow: hidden;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}

    #panelMap .panelMapChoice {
        white-space: nowrap;
        display:flex;
        align-items:baseline;
        justify-content:start;
        flex:none;
    }

        #panelMap .panelMapChoice > label {
            font-weight: bold;
        }

    #panelMap .select2-container {
        margin-right: 10px !important;
    }

        #panelMap .select2-container .select2-choice {
            width: auto;
        }

/*  Textual directions frame */
#directionsPanelMap {
    background-color: White;
    /*max-width: 25%;*/
    overflow-y: auto;
    /*width: 323px;*/
    margin-left: 5px; /* -15px = pb with safari*/
    width: 40%;
    height: calc(100% - 65px);
    font-size: 12px;
    /*font-family: Arial;*/
    font-family: var(--fontName);
    overflow-x: visible;
    /*
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1001;
*/
}


@media screen and (max-width: 768px) {

    #directionsPanelMap {
        width: 100%;
        height: 100%;
        max-height: calc(100% - 60px);
        margin-left: 0;
        padding-right: 12px;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 1001;
        overflow-y: auto;
    }

    #panelMap .panelMapChoice > label {
        min-width: 75px;
        text-align: right;
    }
}

.mapContainer {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}


    .mapContainer a {
        color: var(--color2);
    }

        .mapContainer a:focus {
            outline: none !important;
        }

.cadreMapBig {
    width: 100%;
    height: 100%;
    color: black;
    z-index: 0;
}

.cadreMap {
    width: 100%;
    height: calc(100% - 66px) !important; /* remove panelmap + separatorRowPanelMap */
    color: black;
    /*z-index: 1000;*/
}

.cadreMapPOI {
    float: left;
    width: 60% !important;
    height: calc(100% - 66px) !important; /* remove panelmap + separatorRowPanelMap */
    color: black;
    /*z-index: 1000 !important;*/
}

.cadreMapBigLoading {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    background-color: #000;
    z-index: 2000 !important;
}

.bingMapCanvas {
    position: relative;
    width: 100%;
    height: 100%;
}

.bingMapCanvasFullScreen {
    position: fixed !important;
    top: 55px;
    left: 0px;
    width: 100%;
    height: calc(100% - 55px);
    z-index: 10001;
}

.bingMapCanvasButton {
    position: absolute;
    top: 0;
    right: 0;
    width: 148px;
    height: 29px;
    line-height: 21px;
    text-align: center;
    z-index: 2000;
    color: #5077bb;
    background-color: #faf7f5;
    font-size: 11pt;
    font-weight: 400;
    cursor: pointer;
    padding: 4px 10px;
}

.infobox-info {
    max-height: initial !important;
}

.infobox-body {
    max-width: initial !important;
    max-height: initial !important;
    width: auto !important;
}

.fullscreenButton {
    position: absolute;
    height: 24px;
    width: 24px;
    top: 0;
    right: 0;
    background-color: rgba(255,255,255,.85);
    z-index: 10001;
    cursor: pointer;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAGFBMV…DD0lhgWmnrA2ZF4wZif0nHfqWnlCr9ezqYV5AUFwZYOAEOfVucBfQU6WhLAAAAAElFTkSuQmCC);
    background-position: center;
}


    .fullscreenButton i {
        vertical-align: middle;
        text-align: center;
        line-height: 24px;
        width: 100%;
    }

        .fullscreenButton i:hover {
            font-size: larger;
            transition: font 0.1s ease;
            font-weight: bold;
            color: Gray;
        }

.mapContainer #mapSimple, .mapContainer #mapPOI, .mapContainer #mapSimilar, .mapContainer #mapNearby {
    height: 100%;
}

.mapToggles {
    position: absolute;
    top: 5px;
    left: 10px;
    z-index: 1;
}

.btnMapFloating {
    background-color: White;
    color: black;
    border: 1px solid black;
    border-radius: 2px;
    padding: 2px 5px;
    margin-right: 10px;
}

@media (max-width:767px) {
    .mapToggles {
        left: 5px;
    }

    .btnMapFloating {
        font-size: 66%;
    }
}

.btnMapFloating:focus {
    outline: none;
}

.btnMapFloatingSelected:before {
    /*content: '<i class="fa fa-check-circle" aria-hidden="true"></i>';*/
    font-family: "Font Awesome 5 Pro";
    content: "\f058  ";
}

.btnMapFloatingSelected {
    color: white;
    background-color: black;
}
/* Google map type toggle button */
.gm-style-mtc {
    display: none;
}
/* Google map streetview button */
.gm-svpc {
    display: none;
}

.toggleMapMobile {
    display: none
}

.markerYouth-circle {
    fill: var(--color1) !important;
}

/***********************************************************************************
    POPUP
************************************************************************************/
/*
.popupLoading {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    background-color: #000;
    z-index: 1000000001 !important;
}

.popupLoadingHotels {
    position: absolute;
    top: -20px;
    left: -20px;
    width: 110%;
    height: 154%;
    opacity: 0.5;
    background-color: #000;
    z-index: 1000001 !important;
    overflow: hidden;
}
*/
/* add loader class to div */
/*
.loader {
    margin: 60px auto;
    font-size: 10px;
    position: relative;
    text-indent: -9999em;
    border-top: 1.1em solid rgba(255, 255, 255, 0.2);
    border-right: 1.1em solid rgba(255, 255, 255, 0.2);
    border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
    border-left: 1.1em solid #ffffff;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: load8 1.1s infinite linear;
    animation: load8 1.1s infinite linear;

    --modif 
    margin: auto;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
}

    .loader,
    .loader:after {
        border-radius: 50%;
        width: 10em;
        height: 10em;
    }

@-webkit-keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}
*/
.modalBackground {
    background-color: Black;
    filter: alpha(opacity=70);
    opacity: 0.7;
    z-index: 20001 !important;
}

.modalPopup {
    background-color: White;
    padding: 3px;
    width: 250px;
}


/* Bootstrap Modals Styling */
.modal-header {
    border-bottom: none;
}

.modal-success .modal-header {
    border-top: solid 7px #28a745;
}

.modal-warning .modal-header {
    border-top: solid 7px #ffc107;
}

.modal-info .modal-header {
    border-top: solid 7px var(--color2) /*#17a2b8*/;
}

.modal-danger .modal-header {
    border-top: solid 7px #dc3545;
}

.modal-body {
    max-height: 80vh;
    overflow: auto;
}

.modal-footer {
    border-top: none;
}

/***********************************************************************************
    BUTTONS
************************************************************************************/

.button {
    /*font-family: 'Segoe UI', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;*/
    font-family: var(--fontName);
    font-weight: 400;
    font-size: 9pt;
    min-width: 80px;
    min-height: 20px;
    height: 25px;
    border: 1px transparent solid;
    color: white;
    margin-right: 10px;
    margin-bottom: 10px;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    padding: 4px 10px;
    position: relative;
}

    .button i {
        position: relative;
        top: 1px;
        left: -2px;
    }

    .button.standart {
        font-size: 14px;
        color: #FFFFFF;
        padding: 0px 10px 0px 30px;
        border-radius: 2px;
        min-height: 32px;
    }

    .button.standartShort {
        min-width: 63px !important;
    }

    .button.standart:hover {
        color: #e3e3e3;
    }

    /*to keep compatibility with existing ico buttons*/
    .button.standart i.fa, .button.standart i.fas, .button.standart i.far, .button.standart i.fal, .button.standart i.fab {
        width: 30px;
        margin-left: -30px;
    }

    .button.standart.unselected, .button.unselected {
        background-color: white !important;
        color: #333333 !important;
        border: 1px solid #c8c8c8 !important;
        border-radius: 2px;
    }

        .button.standart.unselected:hover {
            background-color: white;
            color: black;
            border: 1px solid #a8a8a8 !important;
            border-radius: 2px;
        }

    .button.standart[disabled], .button.standart[disabled]:active {
        background-color: #dcdcdc !important;
        color: #333333;
        border: 1px solid #c8c8c8 !important;
        border-radius: 2px;
        cursor: default;
        top: 0px;
        left: 0px;
    }

a.button.standart {
    text-decoration: none;
    line-height: 29px;
}

.button.lbRoomResa .i-roomtypepeople {
    color: inherit;
    font-size: inherit;
}

.button:active, .button:active, button.default:active, .button.default:active {
    top: 1px;
    left: 1px;
}


.ico {
    background-repeat: no-repeat;
    background-position: 4px center;
    white-space: nowrap;
}

.ico-invert {
    background-repeat: no-repeat;
    background-position: right 4px center;
    padding: 0px 30px 0px 10px !important;
}

.btn .ico-bankTransfer {
    background-image: url("../Images/Icons/ico_moneyTransfer_w.png");
}

.btn .ico-creditCard {
    background-image: url("../Images/Icons/ico_creditCard_w.png");
}

.ico-addAnotherReservation {
    background-image: url("../Images/add.png");
    background-size: 16px 16px;
}

.ico-wishlist {
    background-image: url("../Images/bookmark.png");
    background-size: auto 16px;
}

.bookmark-overlay {
    opacity: 0.8;
}

.ico-home {
    background-image: url("../Images/home.png");
    background-size: 16px 16px;
}

.ico-addToBasketValidation, .ico-addToBasket, .ico-finalizebasket, .ico-rate {
    background-color: var(--color2) !important;
    color: var(--fore-color2) !important;
}

.ico-finalizebasket {
    line-height: 32px;
}

.ico-rate {
    padding-left: 10px !important;
}

.ico-addToBasket:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    left: 4px;
    top: 6px;
    background-size: 16px 16px;
    background-image: url("../Images/basketOn.png");
}

.ico-rate:before {
    font-family: "Font Awesome 5 Pro";
    content: "\f02b  ";
    margin-right: 5px;
}

.ico-addToBasketValidation:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    left: 4px;
    top: 4px;
    background-size: 20px 20px;
    background-image: url("../Images/Icons/ico_addToBasket.png");
}

.ico-finalizebasket:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    left: 4px;
    top: 4px;
    background-size: 20px 20px;
    background-image: url("../Images/Icons/ico_basketCheck_w.png");
}

.button.standartSmall.ico-addToBasket:before {
    top: 4px !important;
}

.button.standart.large {
    width: auto;
    min-width: 30% !important;
    max-width: 500px;
    height: 40px;
    font-size: 15px;
    padding-left: 40px;
    line-height: 2.5;
}

.ico-back {
    background-image: url("../Images/Icons/ico_back.png");
}

.ico-backB {
    background-image: url("../Images/Icons/ico_backB.png");
}

.ico-bankTransfer {
    background-image: url("../Images/Icons/ico_moneyTransfer_b.png");
}

.ico-cancellation {
    background-image: url("../Images/Icons/ico_cancellation.png");
}

.ico-checked {
    background-image: url("../Images/checked.png");
}

.ico-checkOff {
    background-image: url("../Images/Icons/ico_checkOff.png");
}

.ico-checkOn {
    background-image: url("../Images/Icons/ico_checkOn.png");
}

.ico-close {
    background-image: url("../Images/Icons/ico_close.png");
}

.ico-continue {
    background-image: url("../Images/Icons/ico_continue.png");
}

.ico-createAccount {
    background-image: url("../Images/Icons/ico_createAccount2.png");
}

.ico-creditCard {
    background-image: url("../Images/Icons/ico_creditCard_b.png");
}

.ico-edit {
    background-image: url("../Images/Icons/ico_edit.png");
}

.ico-flight {
    background-image: url("../Images/Icons/ico_flight.png");
}

.ico-laterOff {
    background-image: url("../Images/Icons/ico_laterOff.png");
}

.ico-laterOn {
    background-image: url("../Images/Icons/ico_laterOn.png");
}

.ico-next {
    background-image: url("../Images/Icons/ico_next.png");
}

.ico-password {
    background-image: url("../Images/lock.png");
    background-size: 16px 16px;
}

.ico-left {
    background-image: url("../Images/Icons/ico_left.png");
}

.ico-right {
    background-image: url("../Images/Icons/ico_right.png");
}

.ico-paymentMethod5Off {
    background: url("../Images/Icons/ico_checkOff.png") no-repeat 4px center, url("../Images/Icons/ico_creditCardOff.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod5On {
    background: url("../Images/Icons/ico_checkOn.png") no-repeat 4px center, url("../Images/Icons/ico_creditCardOn.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod7Off {
    background: url("../Images/Icons/ico_checkOff.png") no-repeat 4px center, url("../Images/Icons/ico_moneyTransferOff.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod7On {
    background: url("../Images/Icons/ico_checkOn.png") no-repeat 4px center, url("../Images/Icons/ico_moneyTransferOn.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod8Off {
    background: url("../Images/Icons/ico_checkOff.png") no-repeat 4px center, url("../Images/Icons/ico_chequeOff.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod8On {
    background: url("../Images/Icons/ico_checkOn.png") no-repeat 4px center, url("../Images/Icons/ico_chequeOn.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod11Off {
    background: url("../Images/Icons/ico_checkOff.png") no-repeat 4px center, url("../Images/Icons/ico_multipleCreditCardOff.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod11On {
    background: url("../Images/Icons/ico_checkOn.png") no-repeat 4px center, url("../Images/Icons/ico_multipleCreditCardOn.png") no-repeat right 4px center;
    padding-right: 30px !important;
}

.ico-paymentMethod12Off {
    background: url("../Images/Icons/ico_checkOff.png") no-repeat 4px center;
    /*padding-right: 30px !important;*/
}

.ico-paymentMethod12On {
    background: url("../Images/Icons/ico_checkOn.png") no-repeat 4px center;
    /*padding-right: 30px !important;*/
}

.ico-print {
    background-image: url("../Images/Icons/ico_print.png");
}

.ico-roomTypeRank1Off {
    background-image: url("../Images/Icons/ico_roomTypeRank1Off.png");
}

.ico-roomTypeRank1On {
    background-image: url("../Images/Icons/ico_roomTypeRank1On.png");
}

.ico-roomTypeRank2Off {
    background-image: url("../Images/Icons/ico_roomTypeRank2Off.png");
}

.ico-roomTypeRank2On {
    background-image: url("../Images/Icons/ico_roomTypeRank2On.png");
}

.ico-roomTypeRank3Off {
    background-image: url("../Images/Icons/ico_roomTypeRank3Off.png");
}

.ico-roomTypeRank3On {
    background-image: url("../Images/Icons/ico_roomTypeRank3On.png");
}

.ico-roomTypeRankOff {
    background-image: url("../Images/Icons/ico_roomTypeRankOff.png");
}

.ico-roomTypeRankOn {
    background-image: url("../Images/Icons/ico_roomTypeRankOn.png");
}

.ico-samePersonOff {
    background-image: url("../Images/Icons/ico_sameOff.png");
}

.ico-samePersonOn {
    background-image: url("../Images/Icons/ico_sameOn.png");
}

.ico-search {
    background-image: url("../Images/Icons/ico_search.png");
}

.ico-sendMail {
    background-image: url("../Images/Icons/ico_sendMail.png");
}

.ico-signin {
    background-image: url("../Images/Icons/ico_sign-in.png");
}

.ico-terms {
    background-image: url("../Images/Icons/ico_terms.png");
}

.ico-validate {
    background-image: url("../Images/Icons/ico_validate.png");
}

.ico-add {
    background-image: url("../Images/Icons/ico_add.png");
}

.bookingCom {
    margin-left: 0px;
    padding: 10px !important;
    line-height: 5px !important;
    text-align: center;
}

    .bookingCom > img {
        margin: 2px;
        vertical-align: middle;
    }

.bookingComColor {
    background-color: #003580 !important;
}

.ico-Expedia {
    margin-left: 10px;
    background-color: #ffcb00 !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
    text-align: left;
    float: right;
    min-height: 40px !important;
    line-height: 40px !important;
}

    .ico-Expedia > img {
        margin-left: 2px;
        vertical-align: middle;
    }

[data-toggle="collapse"] .collapse-icon:before {
    content: "\f078";
    font-family: "Font Awesome 5 Pro";
    font-style: normal;
}

[data-toggle="collapse"].collapsed .collapse-icon:before {
    content: "\f077";
}

.btnSearchPopup {
    color: var(--fore-color1);
    background-color: var(--color1);
    border-color: var(--color1);
}

/***********************************************************************************
    HOTEL DETAILS
************************************************************************************/
.mainDivText {
    padding: 10px;
}

#Products {
    clear: both;
    text-align: justify;
    /*padding-left: 10px;
    padding-right: 20px;*/
    padding-top: 3px;
}

.hotelReminder {
    position: fixed;
    top: 0;
    min-height: 65px;
    display: none;
    z-index: 150;
    background: rgb(210, 210, 210); /* Fall-back for browsers that don't support rgba */
    background: rgba(210, 210, 210, .85);
    width: 100%;
}

    .hotelReminder .ico-addToBasket:last-child {
        margin-right: 0px;
    }

#previousNextHotelsContainer {
    min-height: 45px;
}

.scrollToTop {
    width: 51px;
    height: 51px;
    padding: 0px;
    text-align: center;
    background: rgba(19, 10, 4, 0.75);
    font-weight: bold;
    color: #444;
    text-decoration: none;
    position: fixed;
    bottom: 26px;
    left: 42px;
    display: none;
    z-index: 1;
    cursor: pointer;
}

    .scrollToTop:after {
        font-family: "Font Awesome 5 Pro";
        content: "\f0d8"; /*carret up icon*/
        color: white;
        font-size: 37px;
    }

    .scrollToTop:hover {
        text-decoration: none;
    }

a.policy {
    text-decoration: underline;
}

.jconfirm-content .close-policy {
    display: none;
}

.equipments {
    width: 100%;
}

.EquipmentHotelItem {
    display: inline-block;
    padding: 2px;
    width: 250px;
    float: left;
    position: relative;
    margin: 1px 15px 0 1px;
}

.clearFloat {
    clear: both;
}

.flexbox {
    display: flex !important;
    justify-content: space-around;
    flex-wrap: wrap;
}

    .flexbox > div {
        flex-grow: 1;
        align-self: center;
    }

.hotelReminder div.flexbox {
    padding: 3px 10px;
    min-height: 65px;
}

    .hotelReminder div.flexbox > div:nth-child(2) {
        text-align: right;
    }

.previousNextHotels {
    display: inline-block;
    float: right;
}

    .previousNextHotels a:last-child {
        margin: 0;
    }

.hotelPhotos {
    /*height: 215px;*/
    width: 100%;
    margin-top: 20px;
    clear: both;
}

    .hotelPhotos .carousel {
        width: auto;
    }

.carousel, .thumbnailImages {
    /*float: left;*/
    height: 100% !important;
}

.carousel {
    width: 100%;
    /*padding-right: 5px;*/
    /*overflow: hidden;*/
}

    .carousel:not(#carouselCustomSlider) img {
        height: 215px
    }

.slickCarousel {
    opacity: 0;
    visibility: hidden;
    transition: opacity 1s ease;
    -webkit-transition: opacity 1s ease;
}

    .slickCarousel.slick-initialized {
        visibility: visible;
        opacity: 1;
    }

/*
.thumbnailImage {padding: 0px 5px 5px 0px;}

table tr:first-child td.thumbnailImage {padding-bottom: 5px;}
*/
.thumbnailImage {
    padding: 5px 0px 0px 0px;
    height: 105px;
    width: 164px;
}

    .thumbnailImage > span {
        display: block;
        height: 105px;
        overflow: hidden;
    }

    .thumbnailImage img {
        height: 100%;
        width: 100%;
    }

    .thumbnailImage + .thumbnailImage {
        padding-left: 5px;
    }

table tr:first-child td.thumbnailImage {
    padding-top: 0px;
}

.tableCalendar {
    width: 100%;
    padding: 0px;
    margin: 0px;
}

    .tableCalendar TD {
        padding: 0px;
    }

.tableProductsBookingCom {
    /*width: 125% !important;
    table-layout: fixed;*/
}

.rooms {
    background-color: #39383F;
}

    .rooms table.generated_for_mobile {
        width: 100%;
    }

.roomsSeparator {
    background-color: #696773;
    line-height: 5px;
    padding: 0;
}

.headerPriceRoom {
    text-align: center;
    color: white;
    font-weight: normal;
    padding: 3px;
    font-size: 1.1em;
}

.roomType, .roomTypeBookingCom, .roomTypeBookingComRoomName {
    background-color: #DCE5E8;
    line-height: 30px;
    white-space: nowrap;
    padding: 3px 5px 3px 5px;
}

.i-roomtypepeople {
    font-size: 18px;
    color: #39383f;
}

.largericon {
    transform: scale(1.5,1);
    /*width: 20px;*/
}

.i-roomtypehelp {
    vertical-align: top;
    color: #39383f
}

.infoPrice {
    background-color: #DCE5E8;
    padding: 5px;
}

.roomTypeBookingCom {
    /*width: 20%;*/
}

.roomTypeBookingComRoomName {
    /*display: inline-block;
    width: 300px;*/
}

    .roomTypeBookingComRoomName > div {
        /*white-space: nowrap;
    width: 96%;
    overflow: hidden;
    text-overflow: ellipsis;*/
    }

.roomTypeCalendar {
    padding: 0px;
    padding-left: 3px;
    line-height: 20px;
}

.sepCalendar {
    height: 10px;
}

.greenCalendar {
    text-align: center;
    font-size: 12px;
}

.redCalendar {
    text-align: center;
    font-size: 12px;
    color: White;
}

.buttonMoreRooms {
    position: absolute;
    bottom: 10px;
    left: 0;
}

.smallDescription {
    overflow: hidden;
    transition: max-height 0.7s ease-in-out;
    -moz-transition: max-height 0.7s ease-in-out;
    -webkit-transition: max-height 0.7s ease-in-out;
    -o-transition: max-height 0.7s ease-in-out;
    -ms-transition: max-height 0.7s ease-in-out;
}

.fadedEdge:after {
    content: "";
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;
    pointer-events: none;
    background-image: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255, 1) 90%);
    width: 100%;
    height: 2em;
}

.labelExpand {
    text-decoration: underline;
    cursor: pointer;
}

    .labelExpand:hover {
        text-decoration: none;
    }

.printableCancellationPolicy {
    padding: 20px;
}

.rooms .apartmentAvailabilityToBeConfirmed, .rooms .indicativeProductTable {
    color: white !important;
}

.apartmentAvailabilityToBeConfirmed th, .indicativeProductTable th {
    text-align: center;
}

#ConditionsInfo {
    text-align: justify;
    margin-bottom: 80px; /* to be aboce scroll to top floating button */
}

/* Rooms FullStay Display*/

#searchRoomsRates .fullScreenFilterButton {
    margin-left: 0px;
}

@media screen and (max-width: 768px) {
    #searchRoomsRates #roomsFilterDates, #searchRoomsRates .fullScreenFilter {
        margin: 0 0 15px 0;
    }

    #searchRoomsRates #roomsFilterDates, #searchRoomsRates .fullScreenFilter, #searchRoomsRates .fullScreenFilterButton {
        width: 100%;
    }
}

.calendarRoomsRatesContainer {
    width: 100%;
    padding-top: 10px;
    cursor: pointer;
    position: relative;
}

#searchRoomsRates .btn {
    padding: 10px;
}

#roomsFilterDates {
    min-width: 160px;
    float: left;
    margin-right: 10px;
    position: relative;
    padding: 10px;
    border: 1px solid rgba(0,0,0,0.15);
    cursor: pointer;
    outline: none;
    overflow: visible !important;
    color: var(--color1);
}

.roomsFullStay, .roomsFullStay .infoPrice {
    background-color: unset;
}

.roomsFullStay {
    padding-top: 1rem;
}

    .hideFilters .roomsFullStay .fullScreenFilter, .roomsFullStay .fullScreenFilter {
        clear: none !important;
        display: inline-block !important;
    }

.rooms-wrapper .room {
    background-color: #fff;
    border: 1px solid #dadadd;
    border-radius: 6px;
    padding: 24px;
    margin-bottom: 24px;
}

    .rooms-wrapper .room a.btn[aria-expanded="false"] {
        background-color: var(--color2) !important;
        color: var(--fore-color2) !important;
    }

    .rooms-wrapper .room ul li {
        list-style: none;
        padding: 24px 0px 14px 0px;
        border-bottom: 1px solid #dadadd;
    }

        .rooms-wrapper .room ul li:last-child {
            border-bottom: none;
        }

    .rooms-wrapper .room .room-info {
        text-align: left;
    }

        .rooms-wrapper .room .room-info .i-roomtypepeople {
            font-size: inherit;
        }

        .rooms-wrapper .room .room-info h3 {
            margin-top: 0;
        }

.room-occupancy {
    color: var(--color1);
}

.roomRateExtras {
    font-size: 80%;
}

.room-rate-info {
    text-align: right;
}

    .room-rate-info > .row {
        margin-top: 0;
    }

    .room-rate-info .button {
        margin-right: 0;
    }

.room-rate {
    color: var(--color1);
    font-size: 1.5rem;
    line-height: 1.5rem;
    display: block;
    font-weight: bold;
}

.room-rate-minstay:not(.text-muted) {
    color: var(--color2);
}

.room-cancellation-policy {
    color: green;
    font-size: 0.8rem;
    display: block;
}



.table-rates-details td:nth-child(1) {
    text-align: left;
    padding-right: 10px;
}

.table-rates-details td:nth-child(2) {
    text-align: right;
}

.table-rates-details small {
    font-size: 70%;
}

.roomsFullStay-dropdownOccupancies {
    height: 3em;
    line-height: 3;
    padding: 0 .5em;
    font-size: 18px;
}

.room-remaining {
    min-height: 3em;
}

.room-rate-explanation {
    color: var(--color1);
}

/* Scroll vertical en mode desktop, bs lg breakpoint */
@media (min-width: 1200px) {
    .roomsrates-wrapper {
        overflow: hidden auto;
        max-height: 55vh;
    }
}

@media screen and (max-width: 767px) {
    .room-rate-info .button {
        margin-bottom: 0;
    }

    .room-remaining, .room-rate-minstay .room-rate-average {
        font-size: 0.8em;
    }

    .room-rate-info, .room-rate-explanation {
        text-align: left;
    }

    .roomRateExtras {
        margin-top: 0.5em;
    }
}
/***********************************************************************************
    HOTELS
************************************************************************************/
.tileCustomSlider, .customText, .ribbonText {
    text-align: justify;
    background: #fff !important;
}

.ribbonText {
    margin-bottom: 10px;
}

.carousel .title {
    position: relative;
    top: 0;
    left: 0;
    bottom: 0;
    width: 30%;
}

.carousel .text {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 70%;
}

.carousel .textFull {
    position: relative;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
}

.myReservationSeparatorItem {
    padding: 0;
}

.myReservationSeparator {
    border-bottom: 1px solid #b4b4b4;
    width: calc(100% + 40px);
    margin-left: -30px;
}

.noHotelsContact {
    float: left;
    vertical-align: top;
    padding: 23px;
    width: 32%;
}

    .noHotelsContact textarea {
        width: 300px;
    }

.noHotelsRequest {
    padding: 20px;
}


/* Overlay & Shadows */
.dark-overlay {
    position: relative;
    overflow: hidden;
}

    .dark-overlay::after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: ' ';
        opacity: .3;
        background: #000;
    }

.text-shadow {
    text-shadow: 2px 2px 6px rgb(0 0 0 / 100%);
}

/* Cards */
/*.card-img {
    min-height: 220px;
}*/

.card-img-overlay-top {
    position: absolute;
    top: .75rem;
    right: 1.25rem;
    left: 1.25rem;
}

.card-img-overlay-bottom {
    position: absolute;
    right: 1.25rem;
    bottom: .75rem;
    left: 1.25rem;
}

.card-body .description {
    height: 4.5em;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: justify;
}

.card-horizontal {
    display: flex;
    flex: 1 1 auto;
}

    .card-horizontal .card-body {
        line-height: 1;
        position: relative;
    }

        .card-horizontal .card-body .provider-icon {
            position: absolute;
            right: 0.25rem;
            bottom: 0.25rem;
        }

    .card-horizontal .img-wrapper {
        flex: 0 0 auto;
        width: 30%;
        max-height: 100px;
    }

.card:hover .card-horizontal .img-wrapper img {
    transform: scale(1.1);
}

.card-horizontal .img-wrapper img:not(.svg-filter) {
    object-fit: cover;
    height: 100%;
    width: 100%;
}

.card:hover .card-horizontal {
    opacity: 1;
}

.card-horizontal .card-body h5 {
    color: #495057;
    min-height: 3rem; /* 2 lines of text: line height = 1.25rem + 0.5rem of margin */
}

.tile-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 30;
}

.img-hover-zoom {
    overflow: hidden;
}

    .img-hover-zoom img {
        transition: transform 1s ease;
    }

    .img-hover-zoom:hover img {
        transform: scale(1.05);
    }

/* Animations*/
.hover-animate {
    transition: all 0.2s ease-in-out;
}

    .hover-animate:hover, .hover-animate:focus {
        -webkit-transform: translate3d(0, -2px, 5px);
        transform: translate3d(0, -2px, 5px);
    }

/* Z-Index */
.z-index-20 {
    z-index: 20;
}

.z-index-40 {
    z-index: 40;
}

.HotelsContainer {
    width: calc(100% - 20px);
    text-align: justify;
    padding-top: 10px;
}

    .HotelsContainer:after {
        content: '';
        width: 100%;
        display: inline-block;
    }

.HotelContainer a[disabled="disabled"] {
    cursor: not-allowed;
}

.HotelImage {
    /*width: 445px;*/
    position: absolute;
    top: -100%;
    left: 0;
    right: 0;
    bottom: -100%;
    margin: auto;
}
/*@media (min-width: 2200px) {
    .HotelImage {
        width: 100%;
    }*/
.HotelContainer a[disabled="disabled"] .HotelImage, .grayscale {
    filter: grayscale(1);
    -webkit-filter: grayscale(1);
    -moz-filter: grayscale(1);
    -o-filter: grayscale(1);
    -ms-filter: grayscale(1);
}


.HotelContainerDetails {
    background-color: white;
    border: 1px solid gray;
    border-radius: 3px;
    padding: 15px 15px 5px 15px;
}

.pnlHotelContainerDetailsIMW {
    background-color: white;
    padding: 15px 15px 5px 15px;
}

.HotelMask {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    min-height: 100%;
    border-radius: 4px;
    border-width: 23px 10px 32px 10px;
    border-style: solid;
    border-color: White;
}

.HotelName {
    font-size: 14px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.HotelNameWidthFull {
    width: 270px;
}

.HotelNameWidthApartment {
    width: 70%;
}

.HotelNameWidthBooking {
    width: 100%;
}

.HotelNameWidthExpedia {
    width: 100%;
}

.homeAwayLogoInHotels {
    margin-right: 0px;
    /*margin-left: 40px;*/
}

.homeAwayEquipments {
    display: inline-block;
}

.HotelStar {
    width: 12px;
    height: 12px;
    display: inline-block;
    /*position: absolute;
    left: 25px;*/
}

.HotelNameBestDeal {
    max-width: 78%;
}

.HotelWalkingDistance {
    position: absolute;
    /*top: 25px;*/
    top: 32px;
    /*left: 10px;*/
    left: 0;
    background-color: rgba(255, 255, 255, 0.85);
    padding: 4px 12px;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.HotelValidationStatus {
    position: absolute;
    /*top: 55px;*/
    top: 62px;
    /*left: 10px;*/
    left: 0;
    background-color: rgba(255, 255, 255, 0.85);
    padding: 4px 12px;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
}

.RoomPaymentTerms {
    white-space: normal;
    line-height: 15px;
    margin-bottom: 10px;
}

.labelExpandReadMore {
    text-decoration: underline;
    cursor: pointer;
}

.WalkingDistanceFromEvent {
    font-size: 13px;
}

.HotelRank {
    background-color: var(--color2);
}

.HotelRank1 {
    background-color: rgba(255, 47, 71, 0.7);
}

.HotelRank2 {
    background-color: rgba(95, 39, 241, 0.7);
}

.HotelRank3 {
    background-color: rgba(154, 195, 195, 0.7);
}

.HotelRank4 {
    background-color: rgba(32, 160, 32, 0.7);
}

.HotelRank5 {
    background-color: rgba(240, 235, 32, 0.7);
}

.HotelRank6 {
    background-color: rgba(255, 134, 32, 0.7);
}

.HotelRank7 {
    background-color: rgba(247, 32, 255, 0.7);
}

.HotelRank8 {
    background-color: rgba(78, 78, 78, 0.7);
}

.HotelRank9 {
    background-color: rgba(255, 32, 32, 0.7);
}

.HotelRank10 {
    background-color: rgba(32, 152, 154, 0.7);
}

.HotelRank11 {
    background-color: rgba(255, 113, 32, 0.7);
}

.HotelRank12 {
    background-color: rgba(255, 32, 241, 0.7);
}

.HotelRank13 {
    background-color: rgba(121, 121, 121, 0.7);
}

.HotelRank14 {
    background-color: rgba(51, 129, 33, 0.7);
}

.HotelRank15 {
    background-color: rgba(255, 121, 32, 0.7);
}

.HotelRank16 {
    background-color: rgba(32, 152, 154, 0.7);
}

.HotelRank17 {
    background-color: rgba(255, 47, 71, 0.7);
}

.HotelRank18 {
    background-color: rgba(32, 160, 32, 0.7);
}

.HotelRank19 {
    background-color: rgba(255, 134, 32, 0.7);
}

.crcCertificationSmall {
    position: absolute;
    bottom: 24px;
    right: 13px;
}

.crcCertification {
    float: right;
}

.cursor-pointer {
    cursor: pointer;
}

.ApartmentType {
    position: absolute;
    right: 15px;
}

.ApartmentPriceInfo {
    position: relative;
    text-align: right;
    right: 2px;
    padding-right: 10px;
    line-height: 20px;
    font-size: 13px;
    color: #5e5e5e;
    margin-top: -8px;
}

.HotelPriceSpan {
    font-size: 14px;
    display: inline-block;
}

.HotelBestDeal {
    position: absolute;
    top: 8px;
    right: 23px;
}

.HotelDealTag {
    display: block;
    height: 50px;
    width: 50px;
    line-height: 45px;
    border-radius: 50%;
    font-size: 16px;
    color: var(--color1);
    background-color: var(--fore-color1);
    border: 3px solid var(--color1);
    font-weight: bold;
}

.HotelFeature {
    position: absolute;
    bottom: 0;
    left: 0;
    margin: 3px;
    max-height: 60px;
    max-width: 60px;
    background: rgba(255,255,255,0.65);
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
}


.OffersWithHotelDetails {
    bottom: inherit !important;
}

.Offers {
    /*position: relative;
    bottom: 0;*/
    position: absolute;
    bottom: 0;
    right: 0;
    height: 25px;
}
    .Offers img:not(.rateBooking) img {
        margin-right: 10px;
    }

    .OffersOverlay {
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        background-color: rgba(255, 255, 255, 0.75);
        padding: 5px 12px;
        border-top-right-radius: 10px;
        width: auto;
        height: 30px;
        border-top-left-radius: 10px;
        white-space: nowrap;
        z-index: 2;
    }

.HotelFeatureInfo {
    margin: 15px 0;
    padding: 15px;
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6;
    border: 1px solid transparent;
    border-radius: 4px;
    position: relative;
    height: 60px;
}

.HotelFeatureInfoContent {
    padding-left: 60px;
    line-height: 30px;
    font-weight: bold;
}

    .HotelFeatureInfoContent > i {
        padding-right: 15px;
    }

.HotelFeatureInfo > img {
    position: absolute;
    left: 0px;
    top: 0px;
}


.divHotelImage > img.EcoFriendly {
    width: 65px;
    height: 65px;
    position: absolute;
    bottom: 0;
    right: 0;
}

#hotelMainContainer img.EcoFriendly {
    height: 28px;
    position: relative;
    top: 4px;
}

.divHotelImage.slick-dotted.slick-slider {
    margin-bottom: 0px !important;
}

.divHotelImage .slick-prev {
    left: 0px;
    width: 35px;
    z-index: 1;
}

.divHotelImage .slick-next {
    right: 0;
    width: 35px;
    z-index: 1;
}

.divHotelImage .slick-dots {
    z-index: 1;
}



.divHotelImage .slick-next:before, .divHotelImage .slick-prev:before {
    display: none;
}

.divHotelImage:hover .slick-next:before, .divHotelImage:hover .slick-prev:before {
    display: inline-block;
    opacity: 0.75;
}

.divHotelImage .slick-prev:hover:before, .divHotelImage .slick-next:hover:before {
    opacity: 1;
}

.divHotelImage .slick-prev::before {
    font-family: "Font Awesome 5 Pro";
    content: "\f137";
    font-weight: 900;
}

.divHotelImage .slick-next::before {
    font-family: "Font Awesome 5 Pro";
    content: "\f138";
    font-weight: 900;
}

.divHotelImage, .divHotelSlide {
    overflow: hidden;
    height: 220px;
    margin-bottom: 5px;
    text-align: center;
    position: relative;
    background-color: #f3eded;
    position: relative;
}
/*.imgExpedia img{
    position:relative;
    width:470px;
    height:220px
}*/
.imgExpedia .slick-slide {
    position: relative;
    right: 10px
}

.map-on .imgExpedia img {
    position: relative;
    width: 489.5px;
    height: 220px
}

.map-off .imgExpedia img {
    position: relative;
    width: 470px;
    height: 220px
}

.logoExpedia {
    /*width: 115px;*/
    vertical-align: top;
}

.divHotelSlide .slick-slide {
    padding: 0; /* to fix repositionning issues when show/hide map s*/
}

.imgMap img {
    padding-left: 15px;
}

.divHotelSlide > div {
    height: 100%;
    width: 100%;
}

.divHotelSlide .slick-list .slick-track {
    height: 100%
}

.divHotelImage .slick-dotted > .slick-dots {
    bottom: 0px;
}
/*.HotelStarNumber { position: absolute;}*/
.rate {
    position: relative;
    bottom: 0;
    /*right: 44px;*/
    height: auto;
    float: right;
    z-index: 2; /* to be over stretched link*/
}

    /*.rateBooking {
    background: url('../images/rateBooking.png') no-repeat;
    background-position-y: center;
    width: 44px;*/ /* taille de l'image */
    /*height: 21px;
    line-height: 21px;
    color: white;
    font-size: 12px;
    font-weight: bold;
    padding-left: 3px;
    padding-top: 1px;
    text-align: left;
}*/

    .rate .rateBooking {
        --booking-logo-sizing: 21px;
    }

.rateBooking {
    --booking-logo-sizing: 32px;
    --booking-bg: #003580;
    font-size: calc(var(--booking-logo-sizing)/2);
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--booking-bg);
    color: white;
    border-radius: calc(var(--booking-logo-sizing)/5.5) calc(var(--booking-logo-sizing)/5.5) calc(var(--booking-logo-sizing)/5.5) 0;
    height: var(--booking-logo-sizing);
    min-width: var(--booking-logo-sizing);
    width: var(--booking-logo-sizing);
    vertical-align: baseline;
}

    .rateBooking img {
        height: calc(var(--booking-logo-sizing)/2);
    }

.rate-details {
    display: flex;
    --booking-logo-sizing: 32px;
}

    .rate-details .rateBooking:first-child {
        --booking-bg: #006CE4;
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

    .rate-details .rateBooking:nth-child(n+2) {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

.owleyesHotel {
    left: 10px !important;
}

.rateExpediaHotel {
    left: 40px !important;
}

.owleyes {
    position: absolute;
    top: 3px;
    left: -36px;
    width: 28px;
    height: 17px;
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -119px -1px;
}

.rateExpedia {
    position: absolute;
    top: 7px;
    left: -6px;
    width: 51px;
    height: 11px;
}

.rateExpedia05 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -99px;
}

.rateExpedia10 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -88px;
}

.rateExpedia15 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -77px;
}

.rateExpedia20 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -66px;
}

.rateExpedia25 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -55px;
}

.rateExpedia30 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -44px;
}

.rateExpedia35 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -33px;
}

.rateExpedia40 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -22px;
}

.rateExpedia45 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -11px;
}

.rateExpedia50 {
    background: white url('https://static.tacdn.com/img2/sprites/ratings-v6.png') -358px -1px;
}

#TripAdvisorLogo {
    width: 197px;
    height: 45px;
    display: inline-block;
    background: url('https://s3-us-west-2.amazonaws.com/aoeanpss3.prod.aws.ean/ean-rapid-site/tripnewlogo1.png') no-repeat center;
    background-size: 197px 45px;
}

.trustyouscore {
    position: relative;
    font-size: 14px;
    /*font-family: Roboto,Arial,Helvetica sans-serif;*/
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

    .trustyouscore * {
        line-height: 1em;
    }

    .trustyouscore .value {
        position: relative;
        float: left;
        color: #fff;
        text-align: center;
        float: none;
        display: inline-block;
        vertical-align: top;
        margin: 0 3px 0 0;
        padding: 5px 0 0;
        font-weight: 500;
        font-size: 10px;
        width: 19px;
        height: 19px;
    }

        .trustyouscore .value:after {
            border-width: 2px;
            position: absolute;
            top: 100%;
            left: 0;
            border-style: solid;
            content: '';
        }

        .trustyouscore .value.good {
            background: #7cb342;
        }

            .trustyouscore .value.good:after {
                border-color: #7cb342 transparent transparent #7cb342;
            }

        .trustyouscore .value.medium {
            background-color: #ffa726;
        }

            .trustyouscore .value.medium:after {
                border-color: #ffa726 transparent transparent #ffa726;
            }

        .trustyouscore .value.bad {
            background-color: #f06748;
        }

            .trustyouscore .value.bad:after {
                border-color: #f06748 transparent transparent #f06748;
            }

.ratingTrustYou10 {
    background: url('../Images/TrustYouRating/TrustYou-10.png');
}

.ratingTrustYou20 {
    background: url('../Images/TrustYouRating/TrustYou-20.png');
}

.ratingTrustYou30 {
    background: url('../Images/TrustYouRating/TrustYou-30.png');
}

.ratingTrustYou40 {
    background: url('../Images/TrustYouRating/TrustYou-40.png');
}

.ratingTrustYou50 {
    background: url('../Images/TrustYouRating/TrustYou-50.png');
}

.ratingTrustYou60 {
    background: url('../Images/TrustYouRating/TrustYou-60.png');
}

.ratingTrustYou70 {
    background: url('../Images/TrustYouRating/TrustYou-70.png');
}

.ratingTrustYou80 {
    background: url('../Images/TrustYouRating/TrustYou-80.png');
}

.ratingTrustYou90 {
    background: url('../Images/TrustYouRating/TrustYou-90.png');
}

.ratingTrustYou100 {
    background: url('../Images/TrustYouRating/TrustYou-100.png');
}

.ratingTrustYouGood {
    background: url('../Images/TrustYouRating/TrustYou-Good.png');
}

.ratingTrustYouMedium {
    background: url('../Images/TrustYouRating/TrustYou-Medium.png');
}

.ratingTrustYouBad {
    background: url('../Images/TrustYouRating/TrustYou-Bad.png');
}
/*.ratingTrustYou {
    background-repeat: no-repeat;
    position: absolute;
    width: 75px;
    right: -40px;    
}*/
.TrustYouBadge a {
    display: inline-block;
}

    .TrustYouBadge a iframe {
        pointer-events: none;
    }

.footerExternalCompany {
    padding-left: 27vw;
    padding-bottom: 10px;
}

.footerExternalCompanyWithChat {
    padding-bottom: 10px;
}

.imgBnetworkHotels, .imgBnetworkHome {
    height: auto !important;
    max-height: 18px;
}

.logoBooking {
    vertical-align: middle;
}

.imgBnetworkHotel {
    height: auto !important;
    max-height: 55px;
    margin-left: 5px;
}

[data-tippy-content].HotelBestDeal {
    z-index: 9;
}
/***********************************************************************************
RESERVATIONS
************************************************************************************/
#createVisitor p {
    padding: 15px 15px 0 15px
}

.eventhotelRoomItem, .transportationItem {
    width: 100%;
    text-align: left;
    background-color: #F3F3F3;
    display: inline-block;
}

.eventhotelRoomItem {
    min-height: 100px;
}

    .eventhotelRoomItem[aria-expanded='true'] .caret {
        transform: rotate(-180deg);
    }


    .eventhotelRoomItem .i-roomtypepeople {
        font-size: small;
        /*margin-right: 0.3em;*/
    }

.transportationItem {
    padding: 10px;
}
/* Calendar Slim */
#calendarSlim {
    overflow: hidden;
    width: calc(100% - 2px);
}

.scrollToLeftTD {
    padding: 2px 2px 0px 0px;
    width: 70px;
}

.scrollToLeft {
    width: 68px;
    height: 85px;
    background: url('../images/left.png') no-repeat;
    display: block;
}

    .scrollToLeft:hover {
        background: url('../images/leftOn.png') no-repeat;
    }

.scrollToRightTD {
    padding: 2px 0px 0px 2px;
    width: 70px;
}

.scrollToRight {
    width: 68px;
    height: 85px;
    background: url('../images/right.png') no-repeat;
    display: block;
}

    .scrollToRight:hover {
        background: url('../images/rightOn.png') no-repeat;
    }
/* Calendar */
.calendar {
    width: 522px;
}

    .calendar .scrollableContent {
        overflow-y: scroll;
        max-height: 453px;
    }

.calendarValidators {
    margin-top: 10px;
    text-align: center;
}

.calendarDateTile {
    padding: 2px;
    text-align: center;
    height: 85px;
    width: 68px;
}

.calendarDateTileSeparator {
    height: 85px;
    width: 8px;
}

.calendarDateTile hr {
    margin: 0px;
    color: white;
    border-color: white;
}

.calendarDateTile .tileContent, .calendarDateTile .tileSelectedContent {
    height: 85px;
    width: 68px;
}

.calendarDateTile .tileContentWithCurrency, .calendarDateTile .tileSelectedContentWithCurrency {
    height: 105px;
    width: 68px;
}

    .calendarDateTile .tileContent:hover, .calendarDateTile .tileContentWithCurrency:hover {
        opacity: 0.7;
    }

    .calendarDateTile .tileContent p, .calendarDateTile .tileSelectedContent p, .calendarDateTile .tileSelectedContentWithCurrency p, .calendarDateTile .tileContentWithCurrency p {
        margin: 2px auto;
        color: White;
    }

.calendarDateDay {
    font-size: 8pt;
}

.tileContent p.calendarDateDayNumber, .tileContentWithCurrency p.calendarDateDayNumber {
    font-size: 24pt;
    font-weight: bold;
}

.calendarDateMonth {
    font-size: 8pt;
    letter-spacing: 1px;
}

.calendarDateTile .tileContent > p, .calendarDateTile .tileContentWithCurrency > p {
    padding: 0;
}

    .calendarDateTile .tileContent > p:first-child, .calendarDateTile .tileContentWithCurrency > p:first-child {
        padding-top: 5px;
    }

    .calendarDateTile .tileContent > p:last-child, .calendarDateTile .tileContentWithCurrency > p:last-child {
        padding-bottom: 5px;
    }

.tileSelectedContent .calendarDateDay, .tileSelectedContentWithCurrency .calendarDateDay {
    font-size: 7pt;
    line-height: 13pt;
    height: 13pt;
}

.tileSelectedContent p.calendarDateDayNumber, .tileSelectedContentWithCurrency p.calendarDateDayNumber {
    font-size: 11pt;
    line-height: 16pt;
    font-weight: bold;
}

.calendarDailyPrice {
    font-size: 7pt;
    line-height: 14pt;
}

.unavailableDateTile {
    background-color: lightgray !important;
    color: darkgray;
    cursor: not-allowed;
}

.closeIcon {
    float: right;
    vertical-align: top;
}

    .closeIcon img {
        width: 10px;
        padding: 2px;
    }

.financialInfo {
    margin: 20px 0;
    /*width: 504px;*/ /* same as calendar */
    min-width: 504px;
}

    .financialInfo .tile {
        width: 164px !important;
        height: 100px;
        cursor: default;
    }

        .financialInfo .tile:hover {
            outline: none;
        }

        .financialInfo .tile * {
            font-size: 10pt;
            text-align: center;
            font-weight: 500 !important;
        }

.recapFinanceResaProcessValue {
    white-space: nowrap;
}

.updateProgress {
    text-align: center;
    margin: auto;
}

.pnlReservationDone {
    width: 800px;
}

    .pnlReservationDone .button {
        margin-bottom: 15px !important;
    }

.ConfirmFinish {
    background-color: #e8e8e8;
    width: 800px;
    white-space: normal;
    text-align: center;
    vertical-align: middle;
    padding: 50px;
    color: Black;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    overflow-y: auto;
    z-index: 1000011 !important;
}

    .ConfirmFinish > .popupContent {
        margin: -49px;
        padding: 50px;
        max-height: 720px;
        overflow-y: auto;
    }

        .ConfirmFinish > .popupContent ~ * {
            margin-top: 99px;
        }

.selectContactForm {
    width: 330px;
    height: 30px;
}

.mandatoryFields {
    margin-top: 20px;
    width: 330px;
}

DIV.helpBookingRef {
    display: none;
    position: absolute;
    background-color: #A6A6A6;
    min-height: 30px;
    left: 190px;
    width: 360px;
    padding: 5px;
    margin: auto;
    z-index: 1;
}

SPAN.helpBookingRef {
    font-size: 11pt;
    color: White;
}

    SPAN.helpBookingRef a {
        color: White;
    }

.divSignInFirstTime {
    min-height: 312px;
}

.bottom-right {
    position: absolute;
    bottom: 0;
    right: 0;
}

.bottom-left {
    position: absolute;
    bottom: 0;
}

.reservationContactForm {
    /*padding: 5px;*/
    margin-bottom: 20px;
}

    .reservationContactForm td {
        padding-left: 0;
        padding-right: 0;
    }

    .reservationContactForm input[type="text"], .reservationContactForm input[type="email"], .reservationContactForm input[type="password"], .reservationAuthentication input[type="text"], .reservationAuthentication input[type="email"], .reservationAuthentication input[type="password"], .reservationGuests input[type="text"] {
        width: 330px;
        height: 30px;
        padding: 5px;
    }


    .reservationContactForm input.pureTextBox:focus ~ span, .reservationContactForm textarea.pureTextBox:focus ~ span {
        width: 330px;
    }

.styled-input.wide.reservation {
    min-width: 140px;
    margin-top: 1.50rem;
}

.styled-input.wide label {
    font-weight: normal;
}

.reservationAuthentication #strengthPassword, .reservationAuthentication #checkPasswords {
    display: none;
}

.reservationContactForm .password-container {
    width: 330px;
}

.reservationContactForm .password-container {
    padding-top: 1rem;
}

.provider-wrapper {
    padding: 4rem 2rem;
    background: rgb(255 255 255 / 70%);
    margin: auto;
    /*width: 70vw;*/
}

.password-container .progress-bar {
    line-height: initial;
    justify-content: end;
    transition-property: width, background-color;
    background-color: transparent;
}

.password-container .pwd-floating-error {
    float: right;
    font-size: 80%;
    margin-bottom: -0.1rem;
}

.password-container .pwd-validation-rules {
    font-size: 80%;
    list-style: none;
    margin-bottom: 0.25rem;
}

.myAccount td {
    padding: 0px;
}

.myAccount input[type="text"], .myAccount input[type="email"], .myAccount input[type="password"], .myAccount select {
    width: 300px;
    height: 30px;
    padding: 5px;
}

.minusPlus {
    position: inherit !important;
    cursor: pointer;
    vertical-align: sub;
}

.childrenNo {
    margin: 0 10px 0 10px;
    border: none;
    width: 10px;
    background-color: transparent;
}

    .childrenNo:focus {
        border: none;
        outline: none;
    }

.selectedHotel {
    margin-top: 40px;
}

    .selectedHotel, .selectedHotel p {
        text-align: right;
        font-weight: bold;
        /*font-family: 'Segoe UI', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;*/
        font-family: var(--fontName);
        clear: both;
        padding-right: 10px;
    }

        .selectedHotel p {
            margin-bottom: 5px;
        }

        .selectedHotel .hotelName {
            font-size: 16pt;
            margin-bottom: 10px;
        }

        .selectedHotel .rateFrom {
            font-size: 16pt;
        }
/* Cannes Lions Person dropdown */
/* Custom Dropdown list */
.customDropDownList {
    width: 650px;
    margin: 10px auto 0 auto;
    height: 100px;
    -moz-box-shadow: 2px 2px 10px #888;
    -webkit-box-shadow: 2px 2px 10px #888;
    box-shadow: 2px 2px 4px #888;
    border-top: 1px solid #9A9A9A;
    border-bottom: 1px solid #9A9A9A;
}

    .customDropDownList a {
        display: block;
    }

    .customDropDownList .customDropDownListItem {
        width: 650px;
        height: 100px;
        background-color: #F3F3F3;
        text-align: center;
        display: inline-block;
        line-height: 100px;
    }

.listContent {
    background-color: #F3F3F3;
}

.customDropDownListItem .selectedItem, .customDropDownListItem:hover {
    background-color: #E2E1E1
}

.customDropDownListItem div {
    float: left;
    padding: 5px;
    height: 100%;
    vertical-align: middle;
    font-size: 1.5em !important;
}

.customDropDownListItem span {
    line-height: 1.2;
}

.customDropDownListItem .leftContent, .customDropDownListItem .rightContent {
    width: 25%;
}

    .customDropDownListItem .leftContent a:hover {
        text-decoration: underline;
        cursor: pointer;
    }

    .customDropDownListItem .leftContent img {
        max-width: 100%;
        max-height: 100%;
        display: inline-block;
    }

.customDropDownListItem .middleContent {
    width: 50%;
}

    .customDropDownListItem .middleContent .rateFrom {
        color: #7E7E7E;
        font-weight: bold;
        display: block;
        font-size: 10pt;
    }

.customDropDownListItem .rightContent .availability, .customDropDownListItem .rightContent .stars {
    font-size: 9pt;
    display: inline-block;
    width: 65%;
}

    .customDropDownListItem .rightContent .availability:empty:before, .customDropDownListItem .rightContent .stars:empty:before {
        content: "\00a0"; /* this is a &nbsp; character => permet de préserver le line-height et donc l'alignement vertical */
    }

.customDropDownListItem .rightContent .arrowCustomDdl {
    margin: 10px;
    float: right;
}

.customListItemSeparator {
    padding: 0px;
    color: #F3F3F3
}

    .customListItemSeparator hr {
        margin: 0px;
    }

.customDropDownList .list {
    position: absolute;
    max-height: 306px;
    z-index: 1000;
}

.customDropDownList .listContent {
    max-height: 306px;
    overflow-y: auto;
    overflow-x: hidden;
    -moz-box-shadow: 2px 2px 10px #888;
    -webkit-box-shadow: 2px 2px 10px #888;
    box-shadow: 2px 2px 4px #888;
}
/* Cannes Lions */
.CannesLionsItems {
    width: 250px !important;
    height: 50px !important;
    line-height: 50px !important;
}

DIV.help {
    display: none;
    position: relative;
    background-color: White;
    height: 50px;
    margin-left: 15px;
}

SPAN.help {
    font-size: 11pt;
}

DIV.helpBookingRef {
    display: none;
    position: absolute;
    background-color: #A6A6A6;
    min-height: 30px;
    left: 190px;
    width: 360px;
    padding: 5px;
    margin: auto;
}

SPAN.helpBookingRef {
    font-size: 11pt;
    color: White;
}

    SPAN.helpBookingRef a {
        color: White;
    }

.pureTextBox[disabled], .pureTextBoxDisabled, .black[disabled] {
    background: transparent !important;
    border: none !important;
    outline: none !important;
    -webkit-appearance: none;
    -moz-appearance: none;
}

    .pureTextBoxDisabled::-ms-expand, .black[disabled]::-ms-expand {
        display: none;
    }
/***********************************************************************************
    BASKET
************************************************************************************/
#myBasket .basketReservationsList {
    width: 100%;
    border-top: 1px solid #e3e3e3;
}

#myBasket .basketReservationsList {
    margin-bottom: 35px;
}

    #myBasket .basketReservationsList tr {
        border-bottom: 1px solid #e3e3e3;
    }

        #myBasket .basketReservationsList tr td {
            min-height: 115px;
        }

    #myBasket .basketReservationsList div {
        float: left;
        height: 100%;
        text-align: center;
        margin: 10px auto;
        height: 100%;
    }

    #myBasket .basketReservationsList .picture {
        width: 20%;
    }

    #myBasket .basketReservationsList .hotelRoom {
        width: 26%;
    }

        #myBasket .basketReservationsList .hotelRoom p {
            margin-bottom: 5px;
        }

    #myBasket .basketReservationsList .hotelName {
        font-size: 13pt;
        font-weight: bold;
    }

    #myBasket .basketReservationsList .guestsDates {
        width: 23%;
    }

        #myBasket .basketReservationsList .guestsDates tr {
            border: none;
        }

        #myBasket .basketReservationsList .guestsDates p {
            font-weight: bold;
            font-size: 10pt;
        }

        #myBasket .basketReservationsList .guestsDates img {
            vertical-align: middle;
        }

    #myBasket .basketReservationsList .deposit {
        width: 18%;
        vertical-align: middle;
        font-weight: bold;
        font-size: 10pt;
        line-height: 85px;
        text-align: right;
    }
    /*#myBasket .basketReservationsList .depositText {width: 45%;}*/
    #myBasket .basketReservationsList .depositAmount { /*width: 45%;*/
        text-align: right;
    }

    #myBasket .basketReservationsList .taxi {
        font-size: smaller;
        font-style: initial;
        margin-top: 0;
    }

    #myBasket .basketReservationsList .actions {
        width: 13%;
        text-align: right;
    }

        #myBasket .basketReservationsList .actions input {
            margin-right: 10px;
        }

#myBasket .basketSpecificFields {
    padding-top: 10px;
    margin-bottom: 35px;
    width: 100%;
    border-top: 1px solid #e3e3e3;
    border-bottom: 1px solid #e3e3e3;
    padding-bottom: 20px;
}

.basketTicketList {
    width: 100%;
    border-top: 1px solid #e3e3e3;
}

    .basketTicketList tr {
        border-bottom: 1px solid #e3e3e3;
    }

        .basketTicketList tr td {
            min-height: 50px;
        }

    .basketTicketList div {
        float: left;
        text-align: center;
        margin: auto;
        height: 50px;
        margin-top: 5px;
    }

        .basketTicketList div p {
            margin-top: 5px;
        }

    .basketTicketList .picture {
        width: 20%;
    }

    .basketTicketList .ticketName {
        font-size: 13pt;
        font-weight: bold;
        margin-top: 3px;
    }

    .basketTicketList .deposit {
        width: 18%;
        vertical-align: middle;
        font-weight: bold;
        font-size: 10pt;
        line-height: 85px;
        text-align: right;
    }

    .basketTicketList .depositAmount { /*width: 45%;*/
        text-align: right;
    }

    .basketTicketList .actions {
        width: 13%;
        text-align: right;
    }

        .basketTicketList .actions input {
            margin-right: 10px;
        }

#myBasket #payment {
    float: left;
    clear: left;
    width: 50%;
    margin-top: 35px;
}

#myBasket #financialDetails {
    float: right;
    clear: right;
    width: 50%;
    margin-top: 50px;
}

#myBasket .confirmOrder {
    clear: both;
    text-align: center;
}

#myBasket .finalizeRequest {
    text-align: right;
    margin-bottom: 10px;
    margin-right: -10px;
}

    #myBasket .finalizeRequest .button.standart:nth-child(3) {
        padding-bottom: 35px;
        padding-top: 5px;
        padding-left: 40px;
        padding-right: 15px;
    }

#tableFinancialDetails {
    width: 100%;
    background-color: #f2f2f2;
    font-size: 12px;
}

    #tableFinancialDetails th, #tableFinancialDetails td {
        text-align: left;
    }

        #tableFinancialDetails th:nth-child(2), #tableFinancialDetails td:nth-child(2) {
            text-align: right;
        }

    #tableFinancialDetails th {
        font-size: 14px;
    }

        #tableFinancialDetails th > span {
            display: inline-block;
            background-color: Black;
            vertical-align: middle;
            text-align: center;
            padding: 10px;
            margin-right: 35px;
        }

    #tableFinancialDetails tr:nth-child(2) td {
        padding-top: 35px;
    }

    #tableFinancialDetails tr td {
        padding-bottom: 14px;
    }

    #tableFinancialDetails td:first-child {
        padding-left: 25px;
    }

    #tableFinancialDetails td:last-child {
        padding-right: 25px;
        white-space: nowrap;
    }

    #tableFinancialDetails .depositToBePaid, #tableFinancialDetails .ticketToBePaid, #tableFinancialDetails .taxiToBePaid {
        font-size: 17px;
    }

    #tableFinancialDetails .depositToBePaid {
        font-weight: 900;
    }

        #tableFinancialDetails .depositToBePaid td {
            padding-top: 40px;
        }

    #tableFinancialDetails .fullStay {
        font-size: 14px;
    }

.btBack, .btNext {
    /*background-image:url(../Images/arrowLeft.png);
    background-repeat:no-repeat;*/
    height: 35px;
    margin-left: 10px;
    margin-right: 10px;
    color: #1d1d1d;
    padding-left: 35px;
    padding-top: 5px;
    padding-bottom: 35px;
    white-space: nowrap;
}

.btNext {
    background-image: none;
    margin-left: auto;
    margin-right: auto;
    height: 60px;
}

    .btNext.btFinish {
        padding-left: 0;
        margin: auto;
        text-align: center;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background-color: #fff;
    }

.editPopupResa {
    background-color: #e8e8e8;
    border: 1px solid #000000;
    padding: 5px;
    max-height: 800px;
    width: auto;
    overflow-y: auto;
}

.backPopupResa {
    height: 100vh;
    width: 100vw;
    top: 0;
    left: 0;
    z-index: 1147483647 !important; /*Nasser 07/04/2021 ne pas mettre plus grand pour afficher le loader*/
    background-color: #616161 !important;
    position: fixed;
}

    .backPopupResa > div.editPopupResa {
        width: 90% !important;
        top: 0 !important;
        height: 90% !important;
        display: block;
        margin: 50px auto 0 auto;
        position: relative;
    }

.valConfirmOrder {
    margin-top: 12px;
    display: block;
    margin-bottom: 10px;
    font-size: 16px;
}

@media screen and (max-width: 1270px) {
    .backPopupResa > div.editPopupResa {
        width: 97vw !important;
    }
}

.multiplePayments {
    width: 120% !important;
}

.booking {
    width: 70px;
    height: 13px;
    line-height: 13px;
    text-align: center;
    border-radius: 3px;
    color: White;
    font-size: 9px;
    font-weight: bold;
    position: absolute;
    bottom: 8px;
    right: 11px;
}

.bookingAccount {
    background-color: rgba(75, 191, 105, 0.6);
}

.bookingBasket { /*background-color: rgba(255, 126, 0, 0.6);*/
    background-image: url("../images/BasketBookingBackground.png");
}

.multiplePayments {
    margin-top: 50px;
    background-color: #f4f4f4;
    width: auto;
    height: 480px;
}

    .multiplePayments hidden {
        display: none;
    }

.mailParticipant, .mailParticipant2, .reservationID {
    font-style: italic;
    display: none;
}

.divHeadMultiplePayments {
    width: 100%;
    background-color: slateGray;
    text-align: center;
    padding: 5px;
    font-weight: 900;
    color: white;
}

.IsPrebookingMultiplePayments {
    background: #999;
    opacity: .3;
    cursor: not-allowed;
    height: 60px;
}

.grabbable {
    cursor: move;
    cursor: grab;
    cursor: -moz-grab;
    cursor: -webkit-grab;
}

    .grabbable:active {
        cursor: grabbing;
        cursor: -moz-grabbing;
        cursor: -webkit-grabbing;
    }

.cardMultiplePayments {
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 6px;
    width: 40%;
    height: 83%;
    margin: 10px;
    overflow: auto;
}

    .cardMultiplePayments .cardMultiplePayments-body {
        display: table;
        width: 100%;
        padding: 12px;
    }

    .cardMultiplePayments .cardMultiplePayments-header {
        border-radius: 6px 6px 0 0;
        padding: 8px;
        width: 100%;
        text-align: center;
        font-weight: 900;
        color: white;
    }

    .cardMultiplePayments .cardMultiplePayments-footer {
        border-radius: 0 0 6px 6px;
        padding: 8px;
    }
/* -- default theme ------ */
.cardMultiplePayments-default {
    border-color: #ddd;
    background-color: #fff;
    margin-bottom: 24px;
}

    .cardMultiplePayments-default > .cardMultiplePayments-header {
        border-bottom: 1px solid #ddd;
        padding: 8px;
        color: #333;
        background-color: #ddd;
    }

.moveAllMultiplePayments {
    margin-left: 25px;
    margin-top: 90px;
    display: inline-block;
}

.labelHotelMultiplePayment {
    font-weight: 900;
    font-style: italic;
}

.pnlAliasOgone {
    width: 95%;
    background-color: #f2f2f2;
    padding: 5px;
    margin-top: 15px;
    font-size: 1.1rem;
}
/***********************************************************************************
    DMC Page
************************************************************************************/
.dmc-services {
    padding: 15px;
}

    .dmc-services .slide.image, .dmc-services .slide.image > img {
        width: 100% !important;
    }

    .dmc-services .carousel > .description {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 10px;
        background: rgba(0, 0, 0, 0.7);
        text-align: center;
        font-weight: unset;
        color: white;
        cursor: default;
        text-transform: lowercase;
        font-size: 120%;
    }

.dmcIntro {
    margin: 20px 10px 50px 0;
    text-align: center;
    text-transform: lowercase;
}

.dmcPresentation {
    /*background-color: #eee;*/
    color: black;
    padding: 15px;
    margin-right: 13px;
    display: inline-block;
}

.dmcSection {
    display: table;
}

    .dmcSection > .tile:first-child {
        margin-left: 0 !important;
    }

    .dmcSection > .tile:last-child {
        margin-right: 0 !important;
    }

    .dmcSection.column2 > .tile {
        margin-right: 24px;
    }

    .dmcSection.column3 > .tile {
        margin-right: 28px;
    }

    .dmcSection.column4 > .tile {
        margin-right: 9px;
    }

    .dmcSection .carousel {
        margin-bottom: 0px;
    }

        .dmcSection .carousel .description {
            cursor: default;
        }

    .dmcSection.toursActivities {
        margin-left: auto;
        margin-right: auto;
    }

.carouselThumbnails {
    height: 300px;
}

    .carouselThumbnails > .carousel {
        float: left;
        height: 333px;
        width: 500px;
    }

    .carouselThumbnails .thumbnailImages {
        height: 333px;
        float: right;
        margin-left: 10px;
    }

        .carouselThumbnails .thumbnailImages td {
            padding: 0px 0px 8px 7px;
        }

        .carouselThumbnails .thumbnailImages tr:last-child td {
            padding: 0px 0px 0px 5px;
        }

.dmcSection.contact {
    text-align: center;
    text-transform: lowercase;
    margin-top: 50px;
    -moz-box-shadow: 4px 4px 10px black;
    -webkit-box-shadow: 4px 4px 10px black;
    box-shadow: 4px 4px 10px black;
}

    .dmcSection.contact > img {
        margin: 10px auto;
    }

    .dmcSection.contact .tile {
        height: 130px;
        margin: 0;
    }

    .dmcSection.contact .tile {
        outline: none;
        cursor: default;
    }

    .dmcSection.contact a > .tile {
        cursor: pointer;
    }

.dmcIntro > hr {
    width: 90%;
}

.carousel .control {
    position: absolute;
    top: 50%;
    left: 15px;
    width: 40px;
    height: 45px;
    margin-top: -20px;
    font-size: 48pt;
    font-weight: 100;
    line-height: 30px;
    color: #fff;
    text-align: center;
    cursor: pointer;
    opacity: .75;
}

    .carousel .control.right {
        left: auto;
        right: 15px;
    }

    .carousel .control:hover {
        opacity: 1;
    }

.tile.icon > .tile-content > img, .tile.icon > .tile-content > a:link img {
    position: absolute;
    width: 58px;
    height: 58px;
    top: 50%;
    left: 50%;
    margin-left: -32px;
    margin-top: -32px;
}

.tile-content {
    text-align: center;
    padding-top: 30px;
}

.tile .brand, .tile .tile-status {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    min-height: 30px;
    background-color: transparent;
    *zoom: 1;
}

    .tile .brand:before, .tile .tile-status:before, .tile .brand:after, .tile .tile-status:after {
        display: table;
        content: "";
    }

    .tile .brand:after, .tile .tile-status:after {
        clear: both;
    }

    .tile .brand > .name, .tile .tile-status > .name {
        /*position: absolute;*/
        bottom: 0;
        left: 0;
        display: block;
        width: 100%;
        text-align: center;
        margin-bottom: 4px;
        margin-top: 7px;
        /*margin-left: 15px;*/
        /*font-family: 'Segoe UI', 'Open Sans', Verdana, Arial, Helvetica, sans-serif;*/
        font-family: var(--fontName);
        font-weight: 400;
        font-size: 9pt;
        color: #ffffff;
    }

        .tile .brand > .name:hover, .tile .tile-status > .name:hover {
            color: #ffffff;
        }

.dmc-services .row.photos, .dmc-services .row.multi-photo {
    justify-content: space-around;
    display: flex;
}

.map-on .dmc-services .row.photos .slides, .map-on .dmc-services .row.photos .slides .photo {
    height: 180px !important;
}

.map-on .dmc-services .row.multi-photo .slides, .map-on .dmc-services .row.multi-photo .slides .photo {
    height: 122px !important;
}

.dmc-services .row.photos > div {
    width: 500px;
    min-width: 500px;
}

.dmc-services .row.multi-photo > div {
    width: 1012px;
    min-width: 1012px;
}

.map-on .dmc-services .row.photos > div {
    width: 292px;
    min-width: 292px;
}

.map-on .dmc-services .row.multi-photo > div {
    width: 611px;
    min-width: 611px;
}

@media (min-width:768px) and (max-width:1023px) {
    .map-on .dmc-services .row.multi-photo .slides, .map-on .dmc-services .row.multi-photo .slides .photo {
        height: 87px !important;
    }

    .map-on .dmc-services .row.photos .slides, .map-on .dmc-services .row.photos .slides .photo {
        height: 148px !important;
    }

    .map-off .dmc-services .row.multi-photo > div {
        width: 630px;
        min-width: 630px;
    }

    .map-on .dmc-services .row.multi-photo > div {
        width: 293px;
        min-width: 293px;
    }

    .map-off .dmc-services .row.multi-photo .slides, .map-off .dmc-services .row.multi-photo .slides .photo {
        height: 140px !important;
    }

    .map-on .dmc-services .row.multi-photo .slides, .map-on .dmc-services .row.multi-photo .slides .photo {
        height: 60px !important;
    }

    .dmc-services .row.photos {
        display: table !important;
        margin: auto
    }
}

@media (max-width:767px) {
    .dmc-services .row.photos .slides, .dmc-services .row.photos .slides .photo {
        height: 187px !important;
    }

    .dmc-services .row.multi-photo .slides, .dmc-services .row.multi-photo .slides .photo {
        height: 74px !important;
    }

    .dmc-services .row.photos > div, .dmc-services .row.multi-photo > div {
        width: 310px !important;
        min-width: 310px !important;
    }

    .dmc-services .row.photos {
        display: table !important;
        margin: auto;
    }

    .dmcSection.contact > img {
        width: 100%;
        max-width: 300px;
        min-width: 210px;
    }
}
/***********************************************************************************
    MAINTENANCE
************************************************************************************/
.maintenance {
    text-align: center;
    background-color: #f5a952;
    /*height: 68px;*/
}

    .maintenance > .maintenanceInformation {
        margin: 0 auto;
        width: 1028px;
        height: 68px;
        vertical-align: middle;
        font-size: 22px;
        color: #b30707;
    }

.maintenanceAlert {
    width: 64px;
    height: 68px;
    background: url(../Images/Alert.png) no-repeat;
    background-size: 64px 64px;
    background-color: #f5a952;
    position: absolute;
}
/***********************************************************************************
    POPUP PAYMENT RETROCOMPATIBILITY 
************************************************************************************/
.tile {
    display: block;
    float: left;
    /*background-color: #525252;*/
    width: 150px;
    height: 150px;
    /*cursor: pointer;*/
    box-shadow: inset 0px 0px 1px #FFFFCC;
    text-decoration: none;
    /*color: #ffffff;*/
    position: relative;
    /*font-family: Helvetica, Verdana, Arial, sans-serif;*/
    /*font-family: "AvenirLTStd-Light";
    font-weight: 300;
    font-size: 10pt;*/
    letter-spacing: 0.02em;
    line-height: 20px;
    margin: 0px 4px 4px 0px;
    overflow: hidden;
}

    .tile .brand > .name {
        font-size: 9pt;
    }

    .tile.middle {
        width: 494px;
    }
    /*.tile.double {width: 328px;}*/
    .tile.full {
        width: 992px;
    }

    .tile.half-vertical {
        height: 103px;
    }

    .tile.mini {
        height: 32px;
    }

        .tile.mini .tile-content {
            float: left;
            vertical-align: inherit;
            line-height: 32px;
            padding: 0 10px 0 8px;
        }
/* MY RESERVATION */
.modificationHeader, .modificationFooter {
    text-align: center;
    margin: 5px !important;
}

.introtext-modifications {
    width: 100%;
    height: auto;
    display: block;
    position: relative;
    padding: 10px;
    background-color: #39383f;
    opacity: 0.8;
}

    .introtext-modifications > span {
        color: white;
        display: block;
    }

        .introtext-modifications > span > span {
            width: calc(100% - 60px);
            display: inline-block;
            vertical-align: middle;
        }

        .introtext-modifications > span a {
            color: white;
        }

        .introtext-modifications > span > i {
            font-size: 2.1em;
            padding-right: 5px;
            vertical-align: middle;
        }

.hotelInfo {
    white-space: nowrap;
}

.myReservations .hotelName {
    font-size: 16pt;
    font-weight: bold;
}

.myReservations .hotelName {
    font-size: 16pt;
    font-weight: bold;
}

.myReservations .collapseToggle {
    text-align: right;
    padding-right: 18pt;
}

    .myReservations .collapseToggle a {
        font-size: 14pt;
    }

.myReservations .reservation {
    padding: 20px 10px;
}

    .myReservations .reservation a.button {
        width: 100%;
    }

    .myReservations .reservation div.reservations-date {
        display: inline-block;
        padding-right: 10px;
    }

        .myReservations .reservation div.reservations-date > i {
            font-size: 25px;
            vertical-align: middle;
        }

        .myReservations .reservation div.reservations-date:first-child > i {
            padding-right: 3px;
        }

        .myReservations .reservation div.reservations-date:last-child > i {
            padding-left: 3px;
        }

    .myReservations .reservation a.ico-flight {
        white-space: normal;
        width: 100%;
        height: auto;
        line-height: 18px;
    }

a.bsCollapsible:after {
    content: "\f078"; /* fa-chevron-down */
    font-family: 'Font Awesome 5 Pro';
    position: relative;
    padding-left: 5px;
    font-size: 10pt;
}

a.bsCollapsible[aria-expanded="true"]:after {
    content: "\f077"; /* fa-chevron-up */
}

.myReservations .row > [class*='col-'] {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.thankYouDiv {
    position: relative;
    padding-bottom: 120px;
    padding-top: 50px;
    width: 100%;
}

.thankYouText {
    text-align: center;
}

.thankYouTitle {
    font-size: 27pt;
    font-weight: bold;
    padding-bottom: 25px;
    font-family: "AvenirLTStd-Black";
}

.thankYouImg {
    text-align: center;
}

.thankYouSelectionText {
    font-size: 12pt;
    font-weight: bold;
    text-align: center;
    padding-top: 45px;
    padding-bottom: 10px;
    font-family: "AvenirLTStd-Black";
}

.divResaSubmittedResume {
    overflow: hidden;
    height: 111px;
}

.cls-32, .cls-33 {
    fill: var(--color2) !important;
}

.cls-034 {
    fill: var(--fore-color2) !important;
}

.thankYouSVG {
    width: 500px;
}

@media (min-width: 1200px) {
    #left:not(.map-on) > .thankYouDiv {
        padding-left: 10vw;
        text-align: left;
    }


    #left.map-on > .thankYouDiv {
        padding-left: 5px;
        text-align: left;
    }

    .thankYouText {
        text-align: left;
    }

    .thankYouSelection {
        width: 680px;
        margin: auto;
    }

    .thankYouSelectionText {
        text-align: left;
    }
}

.strike {
    text-decoration: line-through;
    color: red;
}

.price-discount {
    text-decoration: line-through;
    font-weight: bold;
    color: var(--color2);
}

.hidden {
    display: none;
}

.fakeDivIMW {
    display: none;
}

.panelBootstrap {
    margin-bottom: 20px;
    background-color: #fff;
    border: 1px solid transparent;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgb(0 0 0 / 5%);
    box-shadow: 0 1px 1px rgb(0 0 0 / 5%);
}

.panel-default {
    border-color: #ddd;
}

/* SMARTPHONES PORTRAIT */
@media screen and (max-width: 767px) {
    .hotelPhotos {
        max-height: 310px;
    }

    /** MAP **/
    .banner {
        display: block;
        padding-top: 50px;
    }

    /*.cadreMapBig {
        z-index: 20000 !important;
    }*/

    .box .section.content > div.left, .box .section.content > div.right {
        /*flex-shrink: 1 !important;*/
    }

    .box .section.content > div.right {
        margin-right: -20px; /*sans ça la map perd 20 pixel en mode mobile */
        top: 0 !important;
    }

    .box .section.content > div.expanded {
        /*flex: 1 0 100% !important;*/
    }

    /* Icon */
    .toggleMapMobile {
        padding: 5px;
        text-align: center;
        width: 42px;
        background-color: white;
        border: 2px solid #999;
        border-radius: 5px;
        display: inline-block;
        position: fixed;
        top: 9px;
        left: 158px;
    }

        .toggleMapMobile .fa-stack {
            height: 1em;
            width: 1em;
            line-height: 1em;
        }

    /* fullscreen button */
    .fullScreen {
        display: none;
    }


    /** POPUP **/
    .btnSelectHotelApartment {
        width: 40% !important;
    }

    .FooterOnMap {
        display: none;
    }

    .noHotelsContact {
        float: left;
        width: auto !important;
    }

    .noHotelsRequest {
        padding: 0 !important;
    }
}
/* HOTEL CAROUSEL */
@media screen and (max-width: 1917px) {
    .thumbnailImages table tr td:nth-child(3n+3) {
        display: inline-block;
    }
}

@media screen and (max-width: 1940px) {
    .multiplePayments {
        width: 120% !important;
    }
}

@media screen and (max-width: 1599px) {
    .carousel, .thumbnailImages {
        float: left;
        height: 100% !important;
        margin-top: 0px;
    }

        .thumbnailImages table tr td:nth-child(2n+2) {
            display: inline-block;
        }
}

@media screen and (max-width: 1305px) {
    .carousel, .thumbnailImages {
        float: left;
        height: 100% !important;
        margin-top: 0px;
    }

        .thumbnailImages table tr td:nth-child(1n+1) {
            display: inline-block;
        }
}
/* IPAD PRO */
@media only screen and (min-device-width : 1024px) and (max-device-width : 1366px) {
    .hotelPhotos .carousel {
        width: 515px;
    }
}
/* IPAD */
@media only screen and (max-device-width : 1024px) and (orientation : landscape) {
    #liWelcome {
        display: none !important;
    }

    .liMenuItemFirstElem a {
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 270px;
    }
}

@media only screen and (device-width : 768px) and (orientation : portrait) {
    #liWelcome {
        display: none !important;
    }

    .contactResponsive li, .menuFlags li {
        font-size: 0px !important;
    }

        .contactResponsive li a, .menuFlags li a {
            padding: 0 6px !important;
        }

    .flagsResponsive li {
        font-size: 13px !important;
    }

        .flagsResponsive li a {
            padding: 12px 15px !important;
        }

    .liMenuItemFirstElem a {
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 200px;
    }
}

@media (max-width:768px) {
    .ConfirmFinish {
        padding: 15px;
    }

    .categoryTitle:before {
        content: ' ';
        clear: right;
        display: block;
    }

    /*.Offers {
        left: 56%;
    }*/
}
/* popup */
@media all and (max-height : 799px) {
    .ConfirmFinish {
        max-height: 80vh;
    }

    .apartmentAvailabilityToBeConfirmed {
        padding: 20px 0px;
    }
}

.changeDates {
    vertical-align: bottom;
}

.specificFields input[type="radio"] {
    margin-left: 10px;
    margin-right: 1px;
}

/* Credit Card Payment */
.ccp-container {
    display: flex;
    margin: 15px;
    border: 1px solid gray;
    border-radius: 3px;
    color: #666;
}

.ccp-child {
    flex: 1;
    margin: 16px 10px 10px 10px;
}

    .ccp-child:last-child {
        text-align: right;
        margin: 10px 0px 0px 0px;
    }
/* Figures */
.fig-container {
    display: flex;
    margin: 15px;
    border: 1px solid gray;
    border-radius: 3px;
    color: #666;
}

.fig-child {
    flex: 1;
    margin: 0px;
    text-align: center;
}

    .fig-child span {
        font-weight: bold;
        font-size: 16px;
    }
/* Modification reservations */
.r-parentContent {
    float: left;
    margin-right: 15px;
    margin-bottom: 15px;
    max-width: 482px;
}

.r-container {
    margin: 0px 10px;
    display: flex;
}

    .r-container .slick-prev, .r-container .slick-next {
        position: fixed !important;
    }

        .r-container .slick-prev:before, .r-container .slick-next:before {
            color: var(--color2) !important;
            font-size: 45px !important;
        }

.r-grayscale {
    filter: grayscale(75%);
    background-color: #f3f3f3;
}

.modificationFlightEdition {
    top: 1vh !important;
    max-height: 98vh !important;
}

.myReservationStatusResa {
    color: black !important;
    filter: none !important;
    -webkit-filter: none !important;
    font-weight: bold;
    display: table;
    margin: 0 auto;
}


/* SMARTPHONES PORTRAIT */

@media screen and (max-width: 767px) {
    .ccp-container {
        display: inline-block;
    }

    .r-parentContent {
        width: calc(100vw - 28px);
    }

    #myNavbar > ul:first-child > li.dropdown-user.open {
        display: block !important;
    }

    .nmi-container {
        left: 50% !important;
    }

    .fakeDivIMW {
        margin: 15px;
        display: inline-block !important;
    }

    .mlXm15 {
        margin-left: 15px;
    }
}


input[type='text']:not(.rad-none):not(.input-radius-right):not(.input-radius-left), input[type='search']:not(.rad-none):not(.input-radius-right):not(.input-radius-left) {
    border-radius: var(--inputs-radius) !important;
}

input[type='submit']:not(.rad-none):not(.input-radius-left):not(.input-radius-rights) {
    border-radius: var(--buttons-radius) !important;
}

/* POPUP Select accommodation type  */
.selectAccommodationTypeLink {
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid transparent;
}

    .selectAccommodationTypeLink .accommodationTypeName {
        padding: 10px;
    }

    .selectAccommodationTypeLink:hover {
        border: 1px solid;
        border-color: var(--color1);
        background-color: var(--color1);
        border-radius: 4px;
    }

        .selectAccommodationTypeLink:hover .accommodationTypeName {
            color: white;
        }

        .selectAccommodationTypeLink:hover img {
            background-color: white;
            border-radius: inherit;
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;
        }


/*********************/
/*** Mantis 0012962***/

/* set transparent background for internal content */
.fullScreenResetFilters > span, .fullScreenResetFilters > span > i,
.fullScreenMoreFilters > span, .fullScreenMoreFilters > span > i,
.fullScreenFilterSearch::placeholder, .fullScreenFilterSearch::placeholder, i.fullScreenFilterSearchAction,
.fullScreenFilter > span, .fullScreenFilter > span > span, .fullScreenFilter > span > i {
    background-color: transparent !important;
}

/* hover */
.form-control:not(.search):not(:active):not(:focus):not(:focus-visible):hover {
    box-shadow: 0 0 3px 2px var(--color1-darken) inset;
    background-color: ghostwhite !important;
}

.roomsFilter:not(.focus-visible):hover,
.fullScreenFilter:hover,
.fullScreenFilterSearch:hover,
.fullScreenMoreFilters:hover, .fullScreenResetFilters:hover {
    box-shadow: 0 0 3px 1px var(--color1-darken) inset;
    background-color: ghostwhite !important;
    color: var(--color1);
}

    .fullScreenFilter:hover > span, .roomsFilter:not(.focus-visible):hover > span, .roomsFilter:not(.focus-visible):hover > i {
        color: var(--color1);
    }

/* active / focus / drop open ... */
.focus-visible::placeholder,
.form-control:active::placeholder, .form-control:focus::placeholder,
.fullScreenFilterSearch:active::placeholder, .fullScreenFilterSearch:focus::placeholder, .fullScreenFilterSearch:active + i, .fullScreenFilterSearch:focus + i,
.fullScreenMoreFilters:active > span, .fullScreenMoreFilters:active > span > i,
.fullScreenResetFilters:active > span, .fullScreenResetFilters:active > span > i,
.fullScreenFilter.focus-visible > span, .fullScreenFilter.focus-visible > span > span, .fullScreenFilter.focus-visible > span > i {
    color: white !important;
    -webkit-transition: color 200ms linear;
    transition: color 200ms linear;
}

div.focus-visible,
.fullScreenFilter.focus-visible,
.fullScreenFilterSearch:active, .fullScreenFilterSearch:focus,
.form-control.focus-visible,
.form-control:active, .form-control:focus, .form-control.active,
.fullScreenMoreFilters:active,
.fullScreenResetFilters:active {
    background-color: var(--color1) !important;
    color: var(--fore-color1) !important;
    -webkit-transition: background-color 200ms linear;
    transition: background-color 200ms linear;
}


.pointer-event-none {
    pointer-events: none;
}


.popover-box-shadow {
    box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}


[data-toggle="collapse"].caret-before > *:before {
    display: inline-block;
    font: normal normal normal 14px/1;
    font-family: 'Font Awesome 5 Pro';
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f0da";
    transform: rotate(90deg);
    transition: all linear 0.25s;
}

[data-toggle="collapse"].caret-before.collapsed > *:before {
    transform: rotate(0deg);
}

img[src$='?grayscale=100'], img[src$='&grayscale=100'] {
    filter: grayscale(1);
}

img[src$='?grayscale=75'], img[src$='&grayscale=75'] {
    filter: grayscale(0.75);
}

img[src$='?grayscale=50'], img[src$='&grayscale=50'] {
    filter: grayscale(0.5);
}

img[src$='?grayscale=25'], img[src$='&grayscale=25'] {
    filter: grayscale(0.25);
}

img[src$='?grayscale=0'], img[src$='&grayscale=0'] {
    filter: grayscale(0);
}

.hotel-fully-booked {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.fully-booked {
    position: absolute;
    border-radius: 5px 5px 5px 5px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

    .fully-booked > span {
        border-radius: 5px 5px 5px 5px;
        font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
        border: 8px solid rgba(76, 76, 76, 1);
        color: rgba(76, 76, 76, 0.8);
        z-index: 1;
        font-size: 30px;
        font-weight: 900;
        bottom: 0;
        padding: 2px 10px 2px 10px;
        transform: rotate(-25deg);
        background: rgba(255, 255, 255, 0.4);
        text-transform: uppercase;
        text-shadow: rgba(76, 76, 76, 1) 0 -2px;
        letter-spacing: 5px;
        pointer-events: none;
    }

        /* Variante selon la langue ... */

        .fully-booked > span:lang(en):after {
            content: 'Fully booked';
        }

        .fully-booked > span:lang(fr):after {
            content: 'Complet';
        }

        .fully-booked > span:lang(es):after {
            content: 'Completo';
        }

@keyframes GrayScaleFilter {
    0% {
        filter: grayscale(1);
    }

    100% {
        filter: grayscale(0);
    }
}

.divHotelImage {
    transition: 0.5s all;
}

.pl0 {
    padding-left: 0px !important;
}


