﻿.b-booking-form .datepick-popup {
    z-index: 999 !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    top: 105% !important;
}



.b-booking-form .datepick-month-row {
    white-space: nowrap;
}

.b-booking-form .datepick-month {
    display: inline-block !important;
    float: none !important;
}


.b-booking-form .booking-form__form-element-container .datepick-popup .datepick {
    width: 16em !important;
}




.b-booking-form select.datepick-month-year {
    width: 50%;
    display: inline-block;
    padding: 0.2em;
}

.b-booking-form .datepick-nav {
    display: none;
}







.b-booking-form {
    text-align: left;
}

    .booking-form__screen {
        opacity: 0;
        height: 0;
        overflow: hidden;
        transition: opacity 0.2s 0s ease-in, height 0s 0.2s linear;
    }

        .booking-form__screen_shown {
            opacity: 1;
            height: 100%;
            overflow: inherit;
            transition: opacity 0.2s 0.2s ease-in, height 0s 0.2s linear;
        }

    .popup-booking-form:not(.active) .booking-form__screen {
        transition: all 0s 0s ease-in;
    }

    .booking-form__form {
        
    }

    .booking-form__form_tourist {
        margin-bottom: 2em;
    }

    .booking-form__row {
        padding-left: 1px;
    }

    .booking-form__hr {
        border: 1px solid #e5e5e5;
        border-top-color: #c2c2c2;
        margin: 1.5em 0 0;
    }

    .booking-form__header {
        line-height: normal;
        text-align: left;
        margin: 0.5em 0 !important; /*из-за стиля для .popup h3*/
        padding: 0;
    }
        .booking-form__header_2 {
            text-align: center;
            margin-top: 0 !important; /*из-за стиля для .popup h3*/
            
        }
        .booking-form__header_3 {
            
        }
        .booking-form__header_4 {
            
        }

    .booking-form__form-element-container {
        display: inline-block;
        position: relative;
        padding-right: 1px;
        width: 19.5%;
        margin: 0.5em 0;
    }

        .booking-form__form-element-wrapper {
            position: relative;
        }
            
            .booking-form__form-element-wrapper:after {
                content: '';
                border: 1px solid #c2c2c2;
                position: absolute;
                top: -1px;
                bottom: -1px;
                left: -1px;
                right: -1px;
                z-index: 1;
                transition:all 0.2s 0.01s ease-in;
            }

            .popup-booking-form:not(.active) .booking-form__form-element-wrapper:after {
                transition: all 0s 0s ease-in;
            }

            .booking-form__form-element-wrapper:hover:after {
                border-color: #464646;
                z-index: 2;
            }

            .booking-form__form-element-wrapper.booking-form__form-element-wrapper_active-form-element:after {
                border-color: #e77d12;
                z-index: 3;
            }
            
            .booking-form__form-element,
            .booking-form__select {
                border: 0 !important;
                background-clip: padding-box;
                position: relative;
                z-index: 4;
                height: 2.5em;
                padding: 0 0.5em !important; /*Из-за стилей для input[type="text"] и подобных*/
            }

            .booking-form__form-element {
            }

                .booking-form__form-element_invalid {
                    box-shadow: 0px 0px 3px 1px rgba(255, 0, 0, 0.7);
                    z-index: 5;
                }

                /*.booking-form__form-element_invalid:focus {
                    box-shadow: none;
                    z-index: 4;
                }*/

                .booking-form__checkbox.booking-form__form-element_invalid {
                    background: #fdd/*#da6e00*/ !important; /*Из-за стилей для input[type="text"] и подобных*/
                }

                    .booking-form__form-element_invalid-tip {
                        opacity: 0;
                        background: #da6e00;
                        color: #fff;
                        width: 100%;
                        position: absolute;
                        padding: 0.5em;
                        margin-top: 1em;
                        border-radius: 0.25em;
                        transition: opacity 0.3s, margin 0.3s;
                        z-index: 6;
                        pointer-events: none;
                    }
                    .popup-booking-form:not(.active) .booking-form__form-element_invalid-tip {
                        transition: all 0s 0s ease-in;
                    }

                    .booking-form__form-element_invalid-tip:before {
                        content: '';
                        border: 0.5em solid transparent;
                        border-bottom-color: #da6e00;
                        border-top: 0;
                        position: absolute;
                        top: -0.5em;
                        right: 1em
                    }
                    .booking-form__form-element_invalid-tip:after {
                        content: '';
                        position: absolute;
                        top: -0.5em;
                        height: 0.5em;
                        right: 0;
                        left: 0;
                    }

                    .booking-form__form-element_invalid:hover + .booking-form__form-element_invalid-tip {
                        opacity: 1;
                        margin-top: 0.5em;
                    }

        .booking-form__form-element-label {
            white-space: nowrap;
            color: #c2c2c2;
        }
        /*
        .booking-form__select_sex {
            padding: 0;
            font-size: 1.5em;
            height: 1.68em;
            font-family: fontAwesome
        }*/
        .booking-form__form-element-container_6 {
            width: 50%;
        }

    .booking-form__explanation {
        color: #c2c2c2;
    }

        .booking-form__explanation_important {
            color: #da6e00;
        }

    .booking-form__fill-first-tourist-link {
        font-size: 0.8em;
        display: inline-block;
    }

    .booking-form__checkbox {
        display: inline-block;
        vertical-align: middle;
        height: 1.25em;
        width: 1.25em;
        margin-right: 0.25em;
    }

    .booking-form__label {
        display: inline;
        cursor: pointer;
    }

    .booking-form__document-type-label {
        text-align: center;
        font-size: 0.8em;
        background: #fff;
        position: relative;
    }

        .booking-form__document-type-label-text {
            background: #fff;
            padding: 0 1em;
            position: relative;
            z-index: 1;
        }
    .booking-form__document-type-label:before {
        content: '';
        border: 1px solid #c2c2c2;
        border-top: 0;
        position: absolute;
        right: 0;
        left: 0;
        height: 0.75em;
    }

    .booking-form__text {
        display: inline;
    }
    .booking-form__text_middle {
        vertical-align: middle;
    }

    .booking-form__price-block {
        margin: 1em 0 0.5em;
    }
        .booking-form__price-text {
            font-size: 1.25em;
        }
        .booking-form__price {
            font-size: 2em;
            color: #da6e00;
            font-weight: 600;
        }
        .booking-form__price-currency {
            font-size: 1.5em;
            color: #da6e00;
            font-weight: 600;
        }
    .booking-form__offer-block {
        margin-bottom: 1em; 
    }
         .booking-form__offer-link {
             vertical-align: middle;
         }

    .booking-form__send-button {
        font-size: 1.5em;
    }
    
    .booking-form__price-information {
        font-size: 1em;
        padding-bottom: 1em;
    }