:root {
    --longtermrental-form-gap: 20px;
    --longtermrental-form-bold-fw: 500;
    --longtermrental-form-title-fw: 400;
    --longtermrental-form-title-second-fw: 300;
    --longtermrental-form-title-second-sale-fw: 400;
    --longtermrental-form-title-fs: 28px;
    --longtermrental-form-label-fs: 24px;
    --longtermrental-form-value-fs: 24px;
    --longtermrental-form-limits-fs: 20px;
    --longtermrental-form-btn-fs: 20px;
    --longtermrental-form-btn-border-radius: 8px;
    --longtermrental-form-btn-padding: 5px 20px;
    --longtermrental-form-text-color: #000000;

    --longtermrental-form-calendar-padding-bottom: 30px;
    --longtermrental-form-calendar-title-margin-bottom: 5px;
    --longtermrental-form-calendar-gap: 2px;
    --longtermrental-form-calendar-grid-template-columns: repeat(7, 1fr);
    --longtermrental-form-calendar-day-height: 54px;
    --longtermrental-form-month-range-padding-top: 10px;
    --longtermrental-form-month-range-left: calc(100%/11*5 - 3px);
    --longtermrental-form-month-range-top: -25px;
    --longtermrental-form-month-range-height: 20px;
    --longtermrental-form-month-range-thumb-margin-top: -5px;
    --longtermrental-form-sale-fs: 18px;
    --longtermrental-form-sale-color: #4CAF50;
}

.longtermrental__rental_form_container {
    gap: var(--longtermrental-form-gap);
    justify-content: center;
    flex-direction: column;
    align-items: start;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__rental_form_title {
    font-weight: var(--longtermrental-form-title-fw);
    font-size: var(--longtermrental-form-title-fs);
    text-align: start;
    width: 100%;
    margin: 0;
}

.longtermrental__rental_form_container > .longtermrental__calendar {
    width: 100%;
    height: auto;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide {
    padding-bottom: var(--longtermrental-form-calendar-padding-bottom);
    justify-content: center;
    flex-direction: column;
    align-items: center;
    text-align: center;
    display: flex;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > p {
    margin: 0 0 var(--longtermrental-form-calendar-title-margin-bottom);
    font-weight: var(--longtermrental-form-title-second-fw);
    font-size: var(--longtermrental-form-label-fs);
    color: var(--longtermrental-form-text-color);
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > .longtermrental__calendar_weekdays {
    justify-content: start;
    flex-direction: row;
    align-items: center;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > .longtermrental__calendar_weekdays > .longtermrental__calendar_weekday {
    padding: var(--longtermrental-form-calendar-title-margin-bottom);
    font-weight: var(--longtermrental-form-title-second-fw);
    background-color: var(--background-gray-color-dark);
    font-size: var(--longtermrental-form-label-fs);
    border-width: 0 1px 1px 0 !important;
    border-color: white !important;
    border-style: solid !important;
    color: var(--invisible);
    text-align: center;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > .longtermrental__calendar_days {
    grid-template-columns:var(--longtermrental-form-calendar-grid-template-columns);
    gap: var(--longtermrental-form-calendar-gap);
    cursor: default;
    display: grid;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > .longtermrental__calendar_days > .longtermrental__calendar_day {
    padding: var(--longtermrental-form-calendar-title-margin-bottom);
    height: var(--longtermrental-form-calendar-day-height);
    font-weight: var(--longtermrental-form-title-second);
    font-size: var(--longtermrental-form-limits-fs);
    justify-content: center;
    box-sizing: border-box;
    flex-direction: row;
    align-items: center;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > .longtermrental__calendar_days > .longtermrental__calendar_day.disabled {
    color: var(--default-border-color);
    cursor: default;
}

.longtermrental__rental_form_container > .longtermrental__calendar > .longtermrental__calendar_slide > .longtermrental__calendar_days > .longtermrental__calendar_day.selected {
    font-weight: var(--longtermrental-form-bold-fw);
    background-color: var(--main-color);
    color: var(--white);
}

.longtermrental__rental_form_container > .longtermrental__months_range_block {
    flex-direction: column;
    justify-content: start;
    align-items: center;
    position: relative;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .month_amount {
    left: var(--longtermrental-form-month-range-left);
    font-size: var(--longtermrental-form-limits-fs);
    font-weight: var(--longtermrental-form-bold-fw);
    top: var(--longtermrental-form-month-range-top);
    box-sizing: border-box;
    position: absolute;
    text-align: start;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .longtermrental__months__range {
    padding-top: var(--longtermrental-form-month-range-padding-top);
    flex-direction: row;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .longtermrental__months__range > .longtermrental__months_range {
    -webkit-appearance: none;
    background: inherit;
    appearance: none;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .longtermrental__months__range > .longtermrental__months_range::-webkit-slider-runnable-track {
    border-radius: var(--longtermrental-form-calendar-title-margin-bottom);
    height: var(--longtermrental-form-month-range-height);
    background: var(--main-color);
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .longtermrental__months__range > .longtermrental__months_range::-webkit-slider-thumb {
    margin-top: var(--longtermrental-form-month-range-thumb-margin-top);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    transition: var(--transition);
    background: var(--invisible);
    -webkit-appearance: none;
    border-radius: 50%;
    appearance: none;
    cursor: pointer;
    height: 30px;
    width: 30px;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .longtermrental__months_range_limits {
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container > .longtermrental__months_range_block > .longtermrental__months_range_limits > span {
    font-size: var(--longtermrental-form-limits-fs);
    font-weight: var(--longtermrental-form-bold-fw);
    text-align: center;
}

#longtermrental__price_block {
    justify-content: center;
    flex-direction: column;
    align-items: center;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container .longtermrental__week_price__block {
    flex-direction: column;
    justify-content: start;
    align-items: center;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__week_price {
    gap: var(--longtermrental-form-gap);
    justify-content: space-between;
    align-items: baseline;
    flex-direction: row;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__week_price.sale {
    margin-bottom: var(--longtermrental-form-gap);
    flex-direction: column;
    align-items: end;
    gap: 0;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__week_price > .longtermrental__week_price_name {
    font-weight: var(--longtermrental-form-title-second-fw);
    font-size: var(--longtermrental-form-label-fs);
    text-align: start;
    margin: 0;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__week_price > .longtermrental__week_price_value {
    font-weight: var(--longtermrental-form-bold-fw);
    font-size: var(--longtermrental-form-value-fs);
    text-align: end;
    margin: 0;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits {
    gap: var(--longtermrental-form-gap);
    justify-content: space-evenly;
    flex-direction: column;
    align-items: end;
    flex-wrap: wrap;
    display: flex;
    width: 100%;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits  > .longtermrental__week_confirm_btn,
.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits  > .longtermrental__week_additional_btn {
    border-radius: var(--longtermrental-form-btn-border-radius);
    font-weight: var(--longtermrental-form-title-fw);
    padding: var(--longtermrental-form-btn-padding);
    font-size: var(--longtermrental-form-btn-fs);
    transition: var(--transition);
    justify-content: center;
    text-decoration: none;
    white-space: nowrap;
    align-items: center;
    flex-direction: row;
    color: var(--white);
    text-align: center;
    cursor: pointer;
    display: flex;
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits  > .longtermrental__week_confirm_btn {
    background: var(--main-color);
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits  > .longtermrental__week_confirm_btn:hover {
    background: var(--main-color-hover);
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits  > .longtermrental__week_additional_btn {
    background: var(--gray);
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits  > .longtermrental__week_additional_btn:hover {
    background: var(--background-gray-color-dark);
}

.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__week_price > .longtermrental__week_price_name.sale,
.longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__week_price > .longtermrental__week_price_value.sale {
    font-weight: var(--longtermrental-form-title-second-sale-fw);
    font-size: var(--longtermrental-form-sale-fs);
    color: var(--longtermrental-form-sale-color);
}

@media only screen and (max-width: 860px) {
    :root {
        --longtermrental-form-gap: 10px;
        --longtermrental-form-calendar-day-height: 13vw;
        --longtermrental-form-month-range-padding-top: 20px;
        --longtermrental-form-month-range-top: -15px;
    }

    .longtermrental__rental_form_container {
        margin-bottom: calc(2 * var(--longtermrental-form-gap));
    }

    .longtermrental__rental_form_container .longtermrental__week_price__block {
        align-items: end;
    }

    .longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits {
        justify-content: end;
    }
}

@media only screen and (max-width: 480px) {
    .longtermrental__rental_form_container .longtermrental__week_price__block > .longtermrental__submits {
        justify-content: end;
    }
}
