@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}

*{
    color:#fff;
    font-weight: 400;
    margin:0;
    padding:0;
    list-style-type: none;
    text-decoration: none;
    float:left;
}

html{
    overflow-x: hidden;
}
input{
    border: none;
    background: transparent;
    resize: none;
}
html, body {
    background-color:#EEF4FA;
    font-family: Poppins;
    font-size: 0.54vw;
    color: #FFFFFF;
    height: auto;
}

button[type="submit"]{
    border: none;
    box-sizing: content-box;
    margin: 0;
    font: inherit;
    cursor: pointer;
    outline: none;
    -webkit-appearance: none; /* Для Safari и Chrome */
    -moz-appearance: none;    /* Для Firefox */
}
a, :after, :before, button[type="submit"], input[type="submit"], svg{

    /**
     * Для эксплорера
     */
    -ms-user-select: none;

    /**
     * Для мозилы
     */
    -moz-user-select: none;

    /**
     * Для Сафари и Хрома
     */
    -webkit-user-select: none;
    user-select:none;
}
.clear{
    clear:both;
}
.border-rad{
    border-radius: 1.936rem;
}


input:focus{
    background: transparent;
    outline:none;
    border:none;
    box-shadow: none;
}

input::placeholder{
    color: var(--white);
    font-family: Montserrat, Roboto, serif;
    font-weight: normal;
    font-size: 1.258rem  /* 13.0003/10.333 */;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

input[type="number"] {
    -moz-appearance: textfield;
}

.mobile {
    display:none !important;
}
.mobile.flex {
    display:none !important;
}
.mobile-nv {
    display: block !important;
}
.mobile-nv.flex {
    display: flex !important;
}

.left {
    float:left;
}

.right {
    float:right;
}
.clear{
    clear:both;
}
.border-rad{
    border-radius: 0.968rem;
}

.flex{
    display: flex;
}


.flex-x-center{
    justify-content: center;
}
.flex-y-center{
    align-items: center;
}
.flex-column.flex-x-center{
    align-items: center;
}
.flex-column.flex-y-center{
    justify-content: center;
}

.flex-xy-center{
    align-items: center;
    justify-content: center;
}

.flex-column{
    flex-direction: column;
}
.wrapper{
    width: 100vw;
    height: auto;
}
header{
    width: 100%;
    height: 11.375rem;
    background-color: #FFFFFF;
}
header img{
    width: 24.527rem;
    height: 4.258rem;
    margin-left: 29.032rem;
    margin-top: 3.677rem;
}
.wrapper-content{
    width: calc(100% - 28.032rem - 28.032rem);
    height: auto;
    padding: 5.057rem 28.032rem 10.645rem 28.032rem;
}
.wrapper-background-svg{
    width: 63.968rem;
    height: 53.419rem;
    position: absolute;
    z-index: 1;
    top: 20.8rem;
    left: 70.694rem;
}

.wrapper-title{
    width: 100%;
    height: 9.29rem;
    font-size: 7.742rem;
    color: #2C3359;
    font-weight: 700;
    line-height: 120%;
    position: relative;
    z-index: 2;
}
.select-location-block{
    position: relative;
    z-index: 2;
    width: 100%;
    height: auto;
    margin-top: 12.311rem;
    justify-content: center;
    flex-wrap:wrap;
    gap:5rem 3rem;
}
.select-location-box{
    width: 62.697rem;
    position: relative;
}
.select-location-box-background{
    width: calc(100% - 5.213rem - 5.226rem);
    height: calc(46.065rem - 31.742rem - 6.194rem);
    background-color: #FFFFFF;
    border-radius: 3.871rem;
    margin-top: 9.774rem;
    padding: 31.742rem 5.213rem 6.194rem 5.226rem;
    font-size: 3.097rem;
    color: #281E3C;
    font-weight: 700;
    line-height: 130%;
    transition: background-color 0.3s ease;
}
.select-location-box:hover .select-location-box-background{
    background-color: #0095FC;
    color: #FFFFFF;
}
.select-location-box:hover .select-location-box-pet-img{
    transform: scale(1.1) rotate(-9deg);
}
.select-location-box:hover .select-location-box-pet-img-right{
    transform: scale(1.1) rotate(13deg);
}
.select-location-box:hover .select-location-box-img{
    transform: scale(1.03);
}

.select-location-box-img{
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 38.419rem;
    left: 0;
    top: 0;
    transition: transform 0.6s ease;
    border-radius: 3.6rem;
}
.btn-select{
    position: absolute;
    width: calc(24.484rem - 1.548rem - 5.419rem);
    height: 6.968rem;
    left: 19.065rem;
    bottom: -3.484rem;
    background: linear-gradient(to right, #FFB216 30%, #FFE03A 70%);
    background-size: 150%;
    border-radius: 9.677rem;
    padding: 0 1.548rem 0 5.419rem;
    justify-content: space-between;
    cursor: pointer;
    transition: background-position 0.9s ease;
}
.btn-select span{
    font-size: 2.71rem;
    color: #1C2031;
    font-weight: 500;
}
.btn-select-svg{
    width: 3.677rem;
    height: 3.677rem;
}
.select-location-box-pet-img{
    position: absolute;
    z-index: 1;
    width: 18.29rem;
    height: 34.258rem;
    left: 3.066rem;
    top: -17.032rem;
    transform: rotate(2.49deg);
    transition: transform 0.6s ease;
}
.select-location-box-pet-img-right{
    position: absolute;
    z-index: 1;
    width: 20.903rem;
    height: 28.355rem;
    right: 0.565rem;
    top: -14.226rem;
    transform: rotate(5.06deg);
    transition: transform 0.6s ease;
}
.select-ticket-block{
    position: relative;
    z-index: 2;
    width: 100%;
    height: auto;
    margin-top: 3.677rem;
    justify-content: space-between;
}
.select-ticket-box{
    width: 62.613rem;
    height: auto;
    position: relative;
}
.select-ticket-box-background{
    width: calc(100% - 4.839rem - 4.839rem);
    height: calc(36.581rem - 4.996rem - 8.604rem);
    background-color: #FFFFFF;
    border-radius: 3.871rem;
    padding: 4.839rem 4.742rem 8.604rem 4.839rem;
    transition: transform 0.6s ease, background-color 0.3s ease;
}
.select-ticket-box:hover .select-ticket-box-background{
    background-color: #0095FC;
    transform: scale(1.02);
}
.btn-select-block{
    position: absolute;
    width: 53.032rem;
    left: 4.839rem;
    bottom: -3.484rem;
    justify-content: space-between;
}
.btn-select-block.ones{
    justify-content: center;
}
.btn-select-block .btn-select{
    position: initial;
}
.select-ticket-box-title{
    width: 100%;
    font-size: 3.484rem;
    color: #0095FC;
    font-weight: 700;
    line-height: 130%;
}
.select-ticket-box:hover .select-ticket-box-title{
    color: #FFFFFF;
}
.ticket-box-option{
    width: 100%;
    height: 14.516rem;
    justify-content: space-between;
    margin-top: 3.915rem;
}
.ticket-box-option.ones{
    justify-content: center;
}
.ticket-price-box{
    width: 24.484rem;
    height: 100%;
    justify-content: space-between;
}
.ticket-duration{
    font-size: 2.903rem;
    color: #0095FC;
    font-weight: 500;
    line-height: 130%;
}
.ticket-duration.blue{
    color: #0095FC;
}
.select-ticket-box:hover .ticket-duration{
    color: #FFFFFF;
}
.ticket-price-box svg{
    width: 20.161rem;
    height: 0.29rem;
    stroke: #0095FC;
}
.ticket-price{
    font-size: 5.323rem;
    font-weight: 700;
    line-height: 130%;
}
.ticket-price{
    color: #0095FC;
}
.select-ticket-box:hover .ticket-price{
    color: #FFFFFF;
}
.select-ticket-box:hover .ticket-price-box svg{
    stroke: #FFFFFF;
}
.ticket-description-block{
    position: absolute;
    top: 11.968rem;
}
.ticket-description-title{
    font-size: 3.484rem;
    color: #0095FC;
    font-weight: 700;
    line-height: 130%;
}
.ticket-description-title.white{
    color: #0095FC;
}
.ticket-description-sub-title{
    font-size: 3.097rem;
    color: #281E3C;
    font-weight: 700;
    line-height: 130%;
    margin-top: 2.323rem;
}
.ticket-description-text{
    font-size: 1.548rem;
    color: #281E3C;
    font-weight: 400;
    line-height: 150%;
    margin-top: 2.323rem;
    text-align: center;
}
.select-ticket-arrow-sticker{
    position: absolute;
    width: 12.581rem;
    height: 12.581rem;
    top: -5.516rem;
    left: -6.116rem;
    transition: transform 0.8s ease;
}
.calendar-title{
    position: relative;
    width: 100%;
    height: 6rem;
    z-index: 2;
}
.calendar-title svg{
    width: 5.419rem;
    height: 5.419rem;
    transition: transform 0.8s ease;
    cursor: pointer;
}
.calendar-title-text{
    font-size: 5.032rem;
    color: #2C3359;
    font-weight: 700;
    line-height: 120%;
    margin-left: 1.742rem;
}
.calendar-and-select-number-block{
    position: relative;
    width: 100%;
    height: auto;
    margin-top: 6.98rem;
    z-index: 2;
    justify-content: space-between;
}
.calendar-block{
    width: calc(73.452rem - 3.206rem - 3.278rem);
    height: calc(53.194rem - 2.6rem - 3.521rem);
    background-color: #0095FC;
    border-radius: 3.871rem;
    padding: 2.6rem 3.206rem 3.521rem 3.278rem;
}
.select-number-children{
    width: 45.484rem;
    height: auto;
}
.calendar-block-title{
    width: 100%;
    height: 4.548rem;
    position: relative;
}

.calendar-block-title-text{
    font-size: 3.484rem;
    color: #FFFFFF;
    font-weight: 700;
    line-height: 130%;
    margin-left:2.6rem;
}
.calendar-block-title svg{
    width: 6.387rem;
    height: 6.484rem;
}
.select-date-block{
    width: 100%;
    height: 7.935rem;
    margin-top: 1.645rem;
    justify-content: space-between ;
}
.select-date-box-today{
    width: calc(18rem - 0.097rem * 2);
    height: calc(100% - 0.097rem * 2);
    border: 0.097rem solid #FFFFFF;
    border-radius: 0.968rem;
    font-size: 2.903rem;
    color: #0095FC;
    font-weight: 500;
    line-height: 130%;
    cursor: pointer;
    background-color: #FFFFFF;
}
.select-date-box-today:hover{
    background-color: #FFFFFF;
    color: #0095FC;
}
.select-date-box-today:active{
    background-color: #FFFFFF;
    color: #0095FC
}
.select-date-box{
    width: calc(15.033rem - 0.097rem * 2);
    height: calc(100% - 0.097rem * 2);
    border: 0.097rem solid #FFFFFF;
    border-radius: 0.968rem;
    cursor: pointer;
}
.select-date-box.active,
.select-date-box.active .select-date-box-name,
.select-date-box.active .select-date-box-number{
    background-color: #FFFFFF;
    color: #0095FC
}
.select-date-box:hover,
.select-date-box:hover .select-date-box-name,
.select-date-box:hover .select-date-box-number{
    background-color: #FFFFFF;
    color: #0095FC
}
.select-date-box-name{
    font-size: 2.032rem;
    color: #FFFFFF;
    font-weight: 500;
    line-height: 130%;
}
.select-date-box-number{
    font-size: 1.742rem;
    color: #FFFFFF;
    font-weight: 500;
    line-height: 130%;
}
.select-date-box-next{
    width: calc(6.677rem - 0.097rem * 2);
    height: calc(100% - 0.097rem * 2);
    border: 0.097rem solid #FFFFFF;
    border-radius: 0.968rem;
    transition: transform 0.6s ease;
    cursor: pointer;
}
.select-date-box-next svg{
    width: 1.645rem;
    height: 1.645rem;
    transition: transform 0.6s ease;
}
.select-date-box-next:hover{
    transform: scale(0.97);
}
.select-date-box-next:hover.select-date-box-next svg{
    transform: scale(1.05);
}
.select-month-block{
    width: 100%;
    height: 4.161rem;
    margin-top: 4.371rem;
    justify-content: space-between;
}
.select-month-block svg{
    width: 4.161rem;
    height: 4.258rem;
    cursor: pointer;
    transition: transform 0.6s ease;
}
.select-month-block svg:hover{
    transform: scale(0.97)
}
.month-block-title{
    font-size: 2.323rem;
    color: #FFFFFF;
    font-weight: 400;
    line-height: 130%;
}
.calendar-box{
    width: 100%;
    height: 32.903rem;
    background-color: #41B0FF;
    border-radius: 0.968rem;
    margin-top: 1.089rem;
}
.calendar-title-list{
    width: 100%;
    margin-top: 0.4rem;
}
.calendar-item::after{
    content: "";
    position: absolute;
    width: 4.194rem;
    height: 4.194rem;
    border-radius: 3.194rem;
    background: linear-gradient(to right, #FFB216 10%, #FFE03A 90%);
    z-index: 1;
    transition: opacity 0.15s ease, transform 0.3s ease;
    opacity:0;
    transform:scale(0.8);
}
.calendar-item.active::after{
    position: absolute;
    width: 4.194rem;
    height: 4.194rem;
    border-radius: 3.194rem;
    background: linear-gradient(to right, #FFB216 10%, #FFE03A 90%);
    z-index: 1;
    transform:scale(1);
    opacity:1;
}
.calendar-items{
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
}
.calendar-item.opacity span{
    color:#8CCFFF;
    cursor: initial;
}
.calendar-item{
    width: calc(100% / 7 - 4px);
    height: calc(4.40rem - 4px);
    font-size: 2rem;
    color: #FFFFFF;
    cursor: pointer;
    border-radius: 2rem;
    border: 2px solid transparent;
    transition: border 0.25s ease;
}
.calendar-item.month:hover{
    border: 2px solid transparent;
}
.calendar-item:hover{
    border: 2px solid #bce3ff;
}
.calendar-item span{
    position: relative;
    font-size: 2rem;
    color: #FFFFFF;
    z-index: 2;
    user-select: none;
}
.calendar-item.active span{
    color: #2C3359;
}
.select-number-children-title{
    font-size: 3.097rem;
    color: #281E3C;
    font-weight: 700;
    line-height: 130%;
}
.select-number-children-btn-bar{
    width: calc(36.968rem - 4.548rem - 4.548rem);
    height: 6.968rem;
    margin-top: 2.129rem;
    background-color: #FFFFFF;
    border-radius: 9.677rem;
    padding: 0 4.548rem 0 4.548rem;
    justify-content: space-between;
}
.select-number-children-btn-bar-title{
    font-size: 2.71rem;
    color: #1C2031;
    font-weight: 500;
}
.select-number-children-btn-block{
    width: auto;
    gap: 1.048rem;
}
.select-number-children-btn-block svg{
    width: 3.677rem;
    height: 3.677rem;
    cursor: pointer;
    transition: transform 0.6s ease;
}
.select-number-children-btn-block svg:hover{
    transform: scale(1.05);
}
.select-number-children-btn-counter{
    min-width: 3rem;
    text-align: center;
    font-size: 2.71rem;
    color: #1C2031;
    font-weight: 500;
}
.basket-checkout-block{
    width: calc(100% - 2.613rem - 3.29rem);
    height: 12.581rem;
    background-color: #BB93FE;
    border-radius: 3.871rem;
    margin-top: 2.504rem;
    padding: 0 2.613rem 0 3.29rem;
    justify-content: space-between;
}
.basket-checkout-block-list-block{
    width: auto;
    height: 5.226rem;
    justify-content: space-between;
    transition: transform 0.6s ease;
    cursor: pointer;
    gap:1rem;
}
.checkout-block-svg-basket{
    width: 5.129rem;
    height: 5.323rem;
}
.checkout-block-svg-arrow{
    width: 1.742rem;
    height: 1.065rem;
}
.basket-checkout-block-list{
    font-size: 2.71rem;
    color: #FFFFFF;
    font-weight: 500;
}
.basket-checkout-block .btn-select{
    position: initial;
    width: calc(29.226rem - 1.548rem - 5.419rem);
}
.info-form-block{
    width: 100%;
    height: auto;
    margin-top: 6.871rem;
    position: relative;
    z-index: 2;
}
.info-form-box{
    width: calc(62.71rem - 3.484rem * 2);
    padding: 3.484rem;
    background-color: #0095FC;
    border-radius: 3.871rem;
}
.info-form-bar-list{
    width: 100%;
    gap: 2.323rem;
}
.info-form-bar{
    width: 100%;
    height: 6.968rem;
    background-color: #FFFFFF;
    border-radius: 9.677rem;
}

.phone-input-container {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.country-code-select {
    background: transparent;
    border: none;
    font-family: 'Poppins';
    font-size: 1.8rem;
    color: #1C2031;
    font-weight: 500;
    padding: 0 1rem;
    cursor: pointer;
    min-width: 8rem;
    border-right: 1px solid #e0e0e0;
    margin-right: 0.5rem;
    margin-left:1rem;
}

.country-code-select:focus {
    outline: none;
    background: transparent;
}

.country-code-select option {
    background: #FFFFFF;
    color: #1C2031;
    font-family: 'Poppins';
    font-size: 1.6rem;
}

.phone-input-container input {
    flex: 1;
    border: none;
    background: transparent;
    font-family: 'Poppins';
    font-size: 2.032rem;
    color: #1C2031;
    font-weight: 500;
    margin-left: 0;
}

/* reCAPTCHA Styles */
.recaptcha-container {
    width: 100%;
    margin: 2rem 0 0 0;
    justify-content: center;
}

.g-recaptcha {
    transform: scale(0.9);
    transform-origin: center;
}

@media (max-width: 768px) {
    .g-recaptcha {
        transform: scale(0.8);
    }
}
input,
input::placeholder{
    font-family: 'Poppins';
    font-size: 2.032rem;
    color: #1C2031;
    font-weight: 500;
    margin-left: 2.323rem;
}
.info-form-bar-text{
    font-size: 2.032rem;
    color: #1C2031;
    font-weight: 500;
    margin-left: 2.323rem;
}
.info-form-accept-block{
    width: 100%;
    height: auto;
    margin-left: 2.323rem;
    margin-top: 2.323rem;
    gap: 0.687rem;
}
.accept-string{
    position: relative;
    height: 2.323rem;
    column-gap: 0.774rem;
}
.accept-string.active .accept-string-check-mark-svg{
    opacity: 1;
}
.accept-string-box-svg{
    width: 1.839rem;
    height: 1.935rem;
    position: relative;
    cursor: pointer;
}
.accept-string-check-mark-svg{
    position: absolute;
    left: 0.29rem;
    width: 1.258rem;
    height: 1.258rem;
    cursor: pointer;

    opacity:0;
    transition: opacity 0.25s ease;
}
.accept-string-text a{
    text-decoration: underline;
    float:initial;
}
.accept-string-text{
    font-size: 1.548rem;
    color: #FFFFFF;
    font-weight: 500;
    line-height: 1.6rem;
}
.info-form-captcha-block{
    width: 100%;
    height: 7.452rem;
    margin-top: 2.323rem;
}
.info-form-captcha-block img{
    width: 27.871rem;
    height: 7.449rem;
}
.info-form-box .btn-select{
    position: relative;
    width: calc(100% - 6.774rem - 10.645rem);
    left: 0;
    padding: 0 6.774rem 0 10.645rem;
    margin-bottom:3.6rem;
}
.plan-of-ticket-block{
    width: 100%;
    height: auto;
    position: relative;
    z-index: 2;
    margin-top: 8.323rem;
}
.plan-of-tickets-description{
    width: 53.419rem;
    height: 17.903rem;
    gap: 2.323rem;
}
.plan-of-tickets-title{
    font-size: 3.484rem;
    color: #0095FC;
    font-weight: 700;
    line-height: 130%;
}
.plan-of-tickets-sub-title{
    font-size: 3.097rem;
    color: #281E3C;
    font-weight: 700;
    line-height: 130%;
}
.plan-of-tickets-detail{
    font-size: 1.548rem;
    color: #281E3C;
    font-weight: 400;
    line-height: 150%;
}
.plan-of-ticket-block .ticket-price-box{
    width: calc(30.194rem - 2.323rem - 2.323rem);
    height: calc(22.452rem - 2.323rem - 5.613rem);
    padding: 2.323rem 2.323rem 5.613rem 2.323rem;
    background-color: #ffffff;
    border-radius: 3.871rem;
}
.plan-of-ticket-block .ticket-price-box:hover{
    background-color: #FFFFFF;
}
.plan-of-ticket-price-block .ticket-price-box svg{
    width: 25.548rem;
    height: 0.29rem;
}
.plan-of-ticket-price-block{
    width: auto;
    position: relative;
    gap: 2.323rem;
}
.plan-of-ticket-price-block .btn-select{
    left: 2.9rem;
    bottom: -2.9rem;
}
.plan-of-ticket-block-row{
    position: relative;
    justify-content: space-between;
}
.plan-of-ticket-block-main-line-svg{
    width: 127.742rem;
    height: 0.29rem;
    margin-top: 7.355rem;
    margin-bottom: 4.935rem;
}
.plan-of-ticket-price-box{
    position: relative;
    transition: transform 0.6s ease;
}
.select-ticket-arrow-sticker:hover{
    transform: scale(1.05);
    transition: transform 0.8s ease,
    transform 0.8s ease;
}
.btn-select:hover{
    background-position-x: -10rem;;
}
.basket-checkout-block-list-block:hover{
    transform: scale(1.02);
}
.calendar-title svg:hover{
    transform: scale(1.05);
}
.plan-of-ticket-price-box:hover .ticket-price-box svg{
    stroke: #FFFFFF;
}
.plan-of-ticket-price-box:hover .ticket-price-box{
    background-color: #0095FC;
}
.plan-of-ticket-price-box:hover .ticket-duration{
    color: #FFFFFF;
}
.plan-of-ticket-price-box:hover .ticket-price{
    color: #FFFFFF;
}
.plan-of-ticket-price-box:hover{
    transform: scale(1.02);
}


