
.booking_v2 {  background-color:#f3f3f3; }
.booking_v2 > .container { background-color:#fff;box-shadow:1px 2px 2px rgba(0,0,0,0.1) }

/* header */
.header { border-bottom:1px solid #eee;height:160px; }
.footer { font-size: 12px; color: #bbb; line-height: 30px;}
.footer .container{ margin-top:15px;height:40px;}
.footer .container .img_div{position: relative;float:left;}
.hotel_logo { padding-top:10px;max-height:120px; }
.hotel_name { font-size:16px;margin:0;text-align:center;line-height:40px; }

.call-center { display:block;height:80px;font-weight:bold;padding-top:10px;float:right }
.call-center img { width:48px;margin-right:14px }
.call-center span { display:block;font-size:14px; }
.call-center p { padding:0;margin:0;font-size:22px; }

.booking-steps { display:flex;justify-content:space-between;min-height:80px;list-style:none;margin:0;padding:0;margin-left:-15px;margin-right:-15px;background-color:#f1f1f1; }
.booking-steps li { width:20%;text-align:center;padding:10px 0;line-height:30px;cursor:default; }
.booking-steps li img { display:block;margin:0 auto;width:36px; }
.booking-steps li span { font-size:14px }
.booking-steps li.active { background-color:#e3e3e3; }
.booking-steps li.active span { color:var(--theme-color); }

/* left */
.form-search {  }

.selected-room { margin-bottom:20px; }
.selected-room-table { width:100%; }
.selected-room-table td { padding-top:4px;padding-bottom:4px; }

/* main */
.empty { text-align:center;margin:40px 0;line-height:40px; }
.rooms { list-style:none;margin:0;padding:0;margin-top:40px; }
.rooms li { padding:10px;border-bottom:1px solid #eee; }
.rooms li .room_name { font-weight:bold;margin:0; }
.rooms li .concept_name { font-size:14px; }
.rooms li .room_price del { display:block;font-size:12px;line-height:16px; }
.rooms li .room_price span { display:block;font-size:16px;line-height:24px;font-weight:bold; }

legend { padding-top:32px;font-size:20px }

.form-transport .form-check { display:inline-block; margin-right:80px; }

.pos-list .pos-list-nav { display:block;list-style:none;margin:0;padding:0; }
.pos-list .pos-list-nav li { border-top-left-radius:4px;border-top-right-radius:4px; background-color:#f3f3f3; display:inline-block;padding:4px 12px;font-size:12px;font-weight:bold;cursor:pointer;transition:all 0.3s;color:var(--theme-color); }
.pos-list .pos-list-nav li:hover { opacity:0.9; }
.pos-list .pos-list-nav li.active { background-color:var(--theme-color); }

.pos-list .pos-list-content .table { font-size:14px; }

/* transport */
.touchspin { text-align:center; }
.airports-arrow-right { position:absolute;top:10px;right:-8px;width:18px; }
.easy-autocomplete { width:100% !important; }

.easy-autocomplete-container { position:absolute;z-index:99999;background-color:#f3f3f3;font-size:13px;margin-right:12px; }
.easy-autocomplete-container ul { list-style:none;padding:0;margin:0; }
.easy-autocomplete-container ul li { padding:4px 8px;border-bottom:1px solid #ddd; }
.easy-autocomplete-container ul li .eac-item { cursor:pointer; }
.easy-autocomplete-container ul li.selected { background-color:#eee;color:var(--theme-color); }

.flights-list { display:none; }
.flights-list-ul { list-style:none;display:block;margin:0;padding:0;font-size:13px;margin-bottom:10px; }
.flights-list-item { display:block;margin:0;padding:8px 0;border-bottom:1px solid #eee;cursor:pointer;transition:background-color 0.3s; }
.flights-list-item-airline { text-align:center; }
.flights-list-item-airline img { width:20px; }
.flights-list-item-duration { text-align:center; }
.flights-list-item-duration span { margin:0 6px; }
.flights-list-item-price { text-align:center; }
.flights-list-item-price p { font-weight:700; }
.flights-list-item p { margin:0; }

.flights-list-item:hover { background-color:rgba(0,0,0,0.03); }
.flights-list-item.selected { border:2px solid #eee;border-radius:4px; }

.flights-list h5 { display:block;margin-bottom:10px; }
.flights-list h5 span { font-weight:400;font-size:16px; }
.flights-list .more-flights { display:block;margin:0 auto; }

/* contact */
.flight-info { border:2px solid #eee; border-radius:4px; font-size:13px; margin:10px 0; }
.flight-info-header { text-align:left;background-color:#eee;font-weight:700;line-height:26px; }
.flight-info p { margin:0 }
.flight-info .flight-info-airline { }
.flight-info .flight-info-airline img { width:32px;  }
.flight-info .flight-info-airline .airline { font-weight:bold  }
.flight-info .flight-info-airline .flight_no { font-size:12px }
.flight-info-place .city { font-size:16px;font-weight:bold }
.flight-info-place .airport { font-size:12px }
.flight-info-place .date { font-size:12px }
.flight-info-duration { font-size:16px }
.flight-info-price .class { font-size:12px }
.flight-info-price .amount { font-weight:bold; }
.flight-info-price .currency { font-size:11px }

/* payment */
.form-payment .select-payment-card { cursor:pointer;transition:all 0.3s; }
.form-payment .select-payment-card:hover { background-color:#f3f3f3; }

.scene { width:100%;perspective:400px; }
.card-area { position: relative; width: 271px; height: 171px; margin:20px auto; cursor: pointer; transform-style: preserve-3d; transform-origin: center right; transition: transform 1s; }
.card-area.is-flipped { transform: translateX(-100%) rotateY(-180deg); }
.card-face { position: absolute; width: 100%; height: 100%; backface-visibility: hidden; }
.card-face-back { transform:rotateY(180deg); }
.card-face-front > div, .card-face-back > div { position:absolute;font-family:monospace;font-size:16px;font-weight:bold;left:14px; }
.card-face-front .number { top:84px; }
.card-face-front .name { top:134px; }
.card-face-front .month { top:108px;left:98px;font-size:14px; }
.card-face-front .year { top:108px;left:120px;font-size:14px; }
.card-face-back .cvc { top:54px;left:140px;font-size:16px; }

.payment-3d-form { margin:40px 0; }

/* final */
.payment-result-icon { width:100px;margin-bottom:20px;display:none; }

/* checkbox & radio */
.pretty input:checked~.state.p-custom-o label:before, .pretty.p-toggle .state.p-custom-o label:before { border-color:var(--theme-color); }
.pretty.p-default:not(.p-fill) input:checked~.state.p-custom-o label:after { /*background-color:var(--theme-color) !important;*/ }

/* responsive */

@media only screen and (max-width: 576px) {
    /* header */
    .header { height:unset; }
    .hotel_logo { max-height:100px; }
    .hotel_name { font-size:16px;line-height:40px; }

    .call-center { height:80px;padding-top:10px;float:none !important;border-top:1px solid #eee }
    .call-center img { margin-right:14px }
    .call-center span { display:block;font-size:14px; }
    .call-center p { padding:0;margin:0;font-size:18px; }

    .booking-steps { height:80px; }
    .booking-steps li { line-height:16px; }
    .booking-steps li img { width:26px; }
    .booking-steps li span { font-size:12px;overflow-wrap:break-word; }
}


.cntr {
    margin: auto;
}

.btn-radio {
    cursor: pointer;
    display: inline-block;
    float: left;
    -webkit-user-select: none;
    user-select: none;
}
.btn-radio:not(:first-child) {
    margin-left: 20px;
}
@media screen and (max-width: 480px) {
    .btn-radio {
        display: block;
        float: none;
    }
    .btn-radio:not(:first-child) {
        margin-left: 0;
        margin-top: 15px;
    }
}
.btn-radio svg {
    fill: none;
    vertical-align: middle;
}
.btn-radio svg circle {
    stroke-width: 2;
    stroke: #C8CCD4;
}
.btn-radio svg path {
    stroke: #b21f2d;
}
.btn-radio svg path.inner {
    stroke-width: 6;
    stroke-dasharray: 19;
    stroke-dashoffset: 19;
}
.btn-radio svg path.outer {
    stroke-width: 2;
    stroke-dasharray: 57;
    stroke-dashoffset: 57;
}
.btn-radio input {
    display: none;
}
.btn-radio input:checked + svg path {
    transition: all 0.4s ease;
}
.btn-radio input:checked + svg path.inner {
    stroke-dashoffset: 38;
    transition-delay: 0.3s;
}
.btn-radio input:checked + svg path.outer {
    stroke-dashoffset: 0;
}
.btn-radio span {
    display: inline-block;
    vertical-align: middle;
}
.btn-danger{
    background-color: #ff7f00!important;
    border-color: #ff7f00!important;
}

.btn-danger:hover {
    background-color: #ec7600!important;
    border-color: #ec7600!important;
}
