.vue_app{
    line-height: 160%;
}

.gray_color_section{
    background-color: var(--main-gray7-color);
}
.white_color_section{
    background-color: white;
}
.transparent_color_section{
    background-color: transparent;
}

.section_container{
    margin: 0 auto;
    max-width: var(--wrapper_width);
    padding: 0 var(--wrapper_padding);
}

.title_container > h1{
    margin: 0;
    font-size: 24px;
    font-weight: 400;
}
.title_container{
    margin: 0;
    padding: 60px 0 15px ;
}

/* ----------------------------------------- */
.main_time{
    padding-bottom: 20px;
}
.main_time__holder{
    padding: 15px 20px;
    background-color: #fff;
    border-radius: 5px;
}
.main_time__grid{
    display: grid;
    grid-template-columns: auto auto auto;
    gap: 10px;
}
.main_time__label{
    color: var(--main-darknest-gray-color);
}
.main_time__value{
    font-size: 18px;
    font-weight: 500;
}
.main_time__direction{
    display: flex;
}
.main_time__price_link{
    font-size: 16px;
    font-weight: normal;
}
.main_time__flight_price{
    text-align: right;
}

.main_time__direction{
    display: flex;
    align-items: center;
    align-self: flex-start;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}
.main_time__direction__icao{
    font-size: 14px;
    font-weight: 500;
    color: var(--main-dark-gray-color);
}
/* ----------------------------------------- */
.map_container{
    margin-top: 20px;
    position: relative;
}
.map{
    padding: 20px 0 15px;
}
.map__checkbox{
    text-align: center;
}
.map__checkbox--icon{
    margin-left: 8px;
}

#map__checkbox + label{
    font-size: 16px;
    /* color: var(--main-gray-color); */
    line-height: 130%;
    display: inline-flex;
}
.map__checkbox__wrapper{
    text-align: center;
}
/* ----------------------------------------- */
.map__add_layer{
    position: absolute;
    left: 0;
    bottom: 0;
    max-height: 100%;
    max-width: 355px;
    width: 100%;
    display: flex; flex-direction: column;
}
.map__property__holder{
    margin-top: auto;
    border-radius: 5px;
    /* position: absolute; */
    /* position: relative; */
    /* left: 0; */
    /* bottom: 0; */
    padding: 13px 20px;
    background-color: #fff;
    margin: 5px 0 5px 5px;
    flex-shrink: 0;
}
.map__property__list{
    display: flex;
    flex-direction: column;
    row-gap: 10px;
}
.map__property{
    display: flex;
    align-items: center;
}
.map__property__legend{
    margin-left: auto;
    width: 20px;
    height: 20px;
    border: 0.3px solid rgba(61, 61, 61, 0.5);
}
.map__property--crossed_countries{
    background-color: #F4433666;
}
.map__property--crossed_firs{
    background-color: #4AFF3D66;
}
.map__property--avoided_countries{
    background-color: rgba(244, 212, 54, 0.4);
}
.map__property--avoided_firs{
    background-color: rgba(61, 158, 255, 0.4);
}

/* ----------------------------------------- */
.map__techstop__holder{
    height: 100%;
    width: 100%;
    padding: 15px 0;
    background-color: rgba(255, 255, 255, 0.89);
    min-height: 0;
    display: flex;
    flex-direction: column;
}
.map__techstop--mobile{
    display: none;
}
.map_techstop__title{
    padding: 20px 35px;
    font-size: 18px;
    color: var(--main-dark-gray-color);
}
.map__techstop__list{
    display: flex;
    flex-direction: column;
    row-gap: 10px;
    overflow-y: auto;
}
.map__techstop{
    line-height: 34px;
    display: flex;
    gap: 10px;
    padding: 0 15px;
    align-items: center;
    cursor: pointer;
}
.map__techstop__name{
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.map__techstop__link{
    margin-left: auto;
    color: var(--main-accent-color);
    display: none;

}
.map__techstop--selected {
    background-color: #fff;
    cursor: default;
}
.map__techstop--selected .map__techstop__link{
    display: inline;
    white-space: nowrap;
}
.map__techstop__calculate{
    height: 25px;
    width: 25px;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.14);
    display: flex;
    justify-content: center;
    align-items: center;
}
.map__techstop--selected .map__techstop__calculate{
     background-color: var(--main-accent-color);
}
.map__techstop--selected .map__techstop__calculate path{
    fill: #fff;
    stroke: #fff;
}
/* ----------------------------------------- */
.tech_stop_marker{
    display: flex;
}
.tech_stop_marker__icon{
    height: 25px;
    width: 25px;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.14);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}
.tech_stop_marker.highlight .tech_stop_marker__icon{
     background-color: var(--main-accent-color);
}
.tech_stop_marker.highlight .tech_stop_marker__icon path{
    fill: #fff;
    stroke: #fff;
}
.tech_stop_marker__details{
    display: none;
    background-color: #fff;
    padding-right: 10px;
    padding-left: 30px;
    align-content: center;
    border-top-left-radius: 25px;
    border-bottom-left-radius: 25px;
    transform: translateX(-24px);
}
.tech_stop_marker.highlight .tech_stop_marker__details{
    display: block;
}
.tech_stop_marker__link{
    font-size: 12px;
}


/* ----------------------------------------- */
.route{
    --route-container-padding: 20px;
    padding: var(--route-container-padding) 0 50px;
}
.leg:not(:first-child) .route{
    padding-top: 40px;
}

.route .section_container{
    position: relative;
}

.route__index{
    position: absolute;
    transform: translateY(-100%);
    font-size: 18px;
    line-height: 1.4;
    color: var(--main-accent-color);
    left: var(--route-container-padding);

}

/* ----------------------------------------- */
.airport__city{
    font-weight: 500;
}
.airport__name{
    font-size: 14px;
    font-weight: 500;
    color: var(--main-darknest-gray-color);
}
.airport__name--arrow{
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}
.airport__switch_legs,
.airport__switch_legs:active,
.airport__switch_legs:focus{
    cursor: pointer;
    background-color: transparent;
    border: none;
    /* margin-top: -50%; */
    position: absolute;
    top: -100%;
}

.route__aircraft_name{
    font-size: 18px;
    font-weight: 500;
    color: var(--main-darknest-gray-color);
}
.route__pax{
    font-size: 14px;
    color: var(--main-dark-gray-color);
    font-weight: 500;
}
.route__custom_param--holder{
    padding-top: 15px;
    display: flex;
    flex-direction: column;
    row-gap: 5px;
}
.route__custom_param{
    font-size: 14px;
    color: var(--main-darknest-gray-color);
}
.route__date{
    font-weight: 500;
}
.route__date_time{
    display: flex;
    flex-wrap: wrap;
    column-gap: 15px;

}
.route__utc_time{
    color: var(--main-darknest-gray-color);
}
/* ----------------------------------------- */
.calc__grid{
    --arrow-collumn: 50px;
    --column-gap: 15px;
    display: grid;
    grid-template-columns: 34.7%  34.7% auto;
    column-gap: var(--column-gap);
    row-gap: 10px;
    align-items: flex-start;
}
.calc__grid--dep_airport{
    position: relative;
}
.calc__grid__column:nth-child(3n+1) {
    padding-right: calc(var( --arrow-collumn) / 2);
}
.calc__grid__column:nth-child(3n+2) {
    padding-left: calc(var( --arrow-collumn) / 2);
}
.airport__name--arrow{
    width: var(--arrow-collumn);
    position: absolute;
    right: calc(-1 * var(--arrow-collumn) / 2 - var(--column-gap) / 2);
    top: 0;
}
.airport__name--arrow svg{
    margin-top: 3px;
}
.calc__grid--aircraft{
    text-align: right;
}

.calc__grid__column--airports:not(.calc__grid__column--airports_empty){
    padding-top: 15px;
}

.airport_company__list{
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.airport_company__item{
    display: flex;
    align-items: center;
    /* gap: 10px; */
}
.airport_company__logo__wrapper{
    height: 35px;
    width: 50px;
    min-width: 50px;
    display: inline-block;
    background-color: #fff;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.14);
    border-radius: 5px;
    padding: 2px 3px;
    margin-right: 10px;
}
.airport_company__miniature_logo__wrapper{
    height: 35px;
    width: 50px;
    min-width: 50px;
    display: inline-block;
    /* box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.14); */
    padding: 2px 3px;
    margin-right: 10px;

}
.airport_company__logo{
    height: 100%;
    width: 100%;
    object-fit: contain;
}
.airport_company__name{
    line-height: 100%;
}
.airport_company__pro_badge{
    vertical-align: middle;
}

/*--------------------time-------------------*/
.time_distance{
    padding: 50px 0;
}
.time__title{
    font-size: 18px;
    color: var(--main-darknest-gray-color);
}
.time__value{
    font-size: 18px;
    height: 100%;
}
.time__value .warn_error_icon.error {
    float: right;
}
.time__value .warn_error_icon.warning{
    vertical-align: baseline;
}
.time__value:first-child{
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
.time__column{
    padding-right: 0!important;
}
.time__row,
.time_difference__row{

}
.time__column .time__value .skeleton{
    height: 18px!important;
    margin-bottom: calc((24px * 1.4) - 24px ) !important;
}
.time__column .time__value:first-child .skeleton{
    height: 24px!important;
    margin-bottom: calc((24px * 1.6) - 24px) !important;
}
.time_difference__title{
    color: var(--main-darknest-gray-color);
    font-size: 18px;
    line-height: calc( 24px * 1.5);
    text-align: right;
    /* height: 32px; */
}
.time_difference__value{
    font-size: 18px;
    text-align: right;
}
/*--------------------distance-------------------*/

.distance__title{
    font-size: 18px;
    color: var(--main-darknest-gray-color);
    /* align-self: flex-start; */
}
.distance_column .distance__title:first-child{
    line-height: calc( 24px * 1.5);
}
.distance__value{
}
.distance__value--main{
    font-size: 18px;
}
.distance__value--second{
    font-size: 16px;
    color: var(--main-darknest-gray-color);
    margin-top: -6px;
    margin-bottom: 7px;
}
.distance__value:first-child .distance__value--main{
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}

.time_distance .calc__grid__column,
.time_distance .distance_column,
.time_distance .time_difference__column{
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 15px;
    row-gap: 4px;
    align-items: baseline;
}
.time_distance .distance_column{
}
.time_distance .calc__grid__column .merged_cell{
    grid-column: 1 / 3;
}

.time_distance .time_difference__column{
    /* grid-template-columns: 1fr auto; */
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: end;



}
.time_difference__row{
    display: flex;
    justify-content: right;
    column-gap: 20px;
    align-items: center;
}


/*-------------tech stop section----------*/

.techstops{
    padding-top: 35px;
    text-align: center;
}
.techstops__title{
    font-size: 18px;
    color: var(--main-dark-gray-color);
    margin-bottom: 15px;

}
.techstops__wrapper{
    display: inline-block;
}
.tech_stop_airport{
    font-size: 24px;
    text-align: center;
}
.tech_stop_airport img{
    margin-left: 15px;
}
a.show_om_map_button{
    display: inline-block;
    margin-top: 20px;
    color: var(--main-accent-color);
}

/* ----------------------------------------- */
.warn_error_icon{
    display: inline-block;
    font-weight: 700;
    text-align: center;
    vertical-align: middle;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    position: relative;
    text-decoration: none;
    box-sizing: border-box;
    border-width: 2px;
    border-style: solid;
    line-height: 110%;
}
.warn_error_icon.warning{
    color: var(--main-warning-color);
    border-color: var(--main-warning-color);
}
.warn_error_icon.error{
    color: var(--main-error-color);
    border-color: var(--main-error-color);
}

.message__error{
    font-size: 14px;
    color: var(--main-error-color);
}

.message__warning{
    font-size: 14px;
    color: var(--main-warning-color);
    /* margin-left: 10px; */
}
/* ----------------------------------------- */

/*----------------buttons section-----------------*/

.buttons_section{
    padding: 80px 0 60px;
    text-align: center;

    /*position: sticky;*/
    /*bottom: 0px;*/
    /*background-color: var(--main-background-color);*/
}
.buttons_section__container{
    display: flex;
    gap: 5px;
    justify-content: center;
}
.buttons_section__column{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.modify_calculation,
.new_calculation{
    padding: 0 42px;
    font-weight: 500;
    box-sizing: border-box;
    height: 53px;
    line-height: 53px;
}
a.report_error{
    color: var(--main-error-color);
    display: inline-block;
    transition: color 0.3s ease-in-out, transform 0.3s ease-in-out;
}
a.report_error:hover{
    transform: translateY(-2px);
    color: var(--main-accent-color);
     text-decoration: none;
}
.flight_calculator_api{
    color:var(--main-light-blue-color)!important;
     text-decoration: none;
     transition: color 0.3s ease-in-out, transform 0.3s ease-in-out;
}
.flight_calculator_api:hover{
    transform: translateY(-2px);
    color: var(--main-lighter-blue-color);
    text-decoration: none!important;

}
.charter_request{
    transition: color 0.3s ease-in-out, transform 0.3s ease-in-out;
    color:var(--main-lighter-blue-color)!important;
}
.charter_request:hover{
    transform: translateY(-2px);
    color: var(--main-light-blue-color);
    text-decoration: none!important;
}
.sticky_menu {
    /* display: none; */
    position: fixed;
    bottom: 0;
    background-color: #fff;
    padding: 23px 10px;
    filter: drop-shadow(-1px 0px 4px rgba(0, 0, 0, 0.17));
    width: 100%;
    z-index: 2;
}
.sticky_menu__container {
    display: flex;
    gap: 5px;
    justify-content: center;
    margin: 0 auto;
    max-width: var(--wrapper_width);

}
.sticky_menu a{
    flex-grow: 1;
    height: 38px;
    line-height: 38px;
    padding: 0;
    text-align: center;
    font-size: 12px;
}
.sticky_menu .report_error{
    border-color: var(--main-error-color);
}
/* ----------------------------------------- */

.skeleton {
    background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
    background-size: 200% 100%;
    animation: shimmer 1.5s infinite linear;
    border-radius: 4px;
}

@keyframes shimmer {
  from { background-position: -200% 0; }
  to { background-position: 200% 0; }
}
/* ---------------------------------------------- */
.accordion_section{
   /* padding: 10px 0; */
    --accordeon_header-color: var(--main-darknest-gray-color);

}
.accordion_section__header{
    padding: 20px 0;
    text-align: center;
    font-size: 18px;
    color: var(--accordeon_header-color);
    cursor: pointer;
    display: flex;
    justify-content: center;
    transition: color 0.3s ease-in-out;
}
.accordion_section__header:hover{
    --accordeon_header-color: var(--main-black-color);
    /* color: var(--main-black-color); */
}
.accordion_section--open .accordion_section__header{
    --accordeon_header-color: var(--main-dark-gray-color);
    /* color: var(--main-dark-gray-color); */
}
.accordion_section__content{
    padding-bottom: 30px;
}
.accordion_section__arrow{
    display: inline-block;
    margin-left: 10px;
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 5px solid var(--accordeon_header-color);
    transform: translateY(11px);
    /* vertical-align: middle; */
    transition: border-color 0.3s ease-in-out, transform 0.3s ease-in-out;
}
.accordion_section__arrow.open{
    transform: rotate(180deg) translateY(-11px);
}
.accordion_section hr{
    border-color:  rgba(170, 170, 170 , 0.15);
}


/* ----------------route------------------------- */
.airway_route{
    padding: 10px 0;

}
.airway_route__wrapper{
    text-align: center;
    /* padding-bottom: 10px; */
}
.airway_route--sequence{
    display: inline-block;
}
.airway_route--point,
.airway_route--airway{
    float: left;
    font-weight: 500;
    white-space: nowrap;
}
.airway_route--airway {
    color: var(--main-blue-color);
}
.airway_route__checkbox__wrapper{
    text-align: center;
}

/* ------------------------------------------ */
.airway_route__crossed_countries{
    padding-top: 35px;
    text-align: center;
}
.airway_route__crossed_countries--title{
    font-size: 18px;
    /* color: var(--main-darknest-gray-color); */
    margin-bottom: 10px;
}
.airway_route__crossed_countries--list{
    font-weight: 500;

}
/* ------------------------------------------ */
.airway_route__crossed_firs{
    padding-top: 35px;
    text-align: center;
}
.airway_route__crossed_firs--title{
    font-size: 18px;
    /* color: var(--main-darknest-gray-color); */
    margin-bottom: 10px;
}
.airway_route__crossed_firs--list{
    font-weight: 500;
}

/* -------------------------------------------- */
.charts__title__holder{
    display: inline-block;
}
.charts__title{
    font-size: 18px;
    /* color: var(--main-darknest-gray-color); */
}
.charts__subtitle{
    font-size: 14px;
    color: var(--main-gray-color);
}

.charts__switcher__holder{

}

.graph_table_switcher{
    text-align: center;
    margin-bottom: 25px;
}

.vue_component_switcher label .lever{
    height: 16px;
    width: 30px;
}
.vue_component_switcher label .lever:before,
.vue_component_switcher label .lever:after {
    width: 14px;
    height: 14px;
    top: 1px;
    left: 2px;
}
.vue_component_switcher label input[type=checkbox]:checked ~ .lever:before,
.vue_component_switcher label input[type=checkbox]:checked ~ .lever:after {
    left: 15px;
}

/* ----------------------------------------- */
/*----------------fuel table---------------*/

.fuel_consumption_table__wrapper{

}
.fuel_consumption_table{
    margin: 0 auto;
    max-width: 580px;
}
.fuel_consumption_table thead{
    border-bottom: 1px solid var(--main-gray-color);
}
.fuel_consumption_table td,
.fuel_consumption_table th{
    padding: 5px 5px;
    text-align: center;
    font-size: 14px;
}
.fuel_consumption_table th{
    font-size: 18px;
    padding-bottom: 15px;
}
.fuel_consumption_table tr:first-child td{
    padding-top: 15px;
}
.fuel_consumption_table td:not(:first-child){
    color: var(--main-darknest-gray-color);
}
.fuel_consumption_table td:first-child{
    text-align: left;
    font-size: 18px;
    font-weight: 500;
}
.fuel_consumption_table tr td.right-align,
.fuel_consumption_table tr:first-child th:last-child{
    text-align: right;
}
.fuel_consumption_table__units{
    color: var(--main-gray-color);
}
.fuel_consumption_table_fuel_type{
    font-size: 16px;
    color: var(--main-gray-color);
    font-weight: 400;
}
.fuel_consumption_table__block_row{
    padding-top: 0!important;
}
/*--------------------chart section---------------------*/

.chart_select_control{
    display: flex;
    justify-content: center;
    gap: 25px;
}
[type="radio"].blue_radio_button + label:before,
[type="radio"].blue_radio_button + label:after{
    margin: 2px;
    width: 20px;
    height: 20px
}
[type="radio"].blue_radio_button:not(:checked) + label:before,
[type="radio"].blue_radio_button.with-gap:checked + label:before,
[type="radio"].blue_radio_button:not(:checked) + label:after {
    border: 1px solid var(--main-black-color);
}
[type="radio"].blue_radio_button:checked + label:after,
[type="radio"].blue_radio_button.with-gap:checked + label:after {
    background-color: var(--main-blue-color);
    border:2px solid var(--main-blue-color);
}
[type="radio"].blue_radio_button.with-gap:checked + label:after {
    -webkit-transform: scale(0.7);
    transform: scale(0.7);
}
[type="radio"].blue_radio_button:not(:checked) + label,
[type="radio"].blue_radio_button:checked + label{
    font-size: 14px;
    color: var(--main-black-color);
    height: 24px;
    line-height: 24px;
}
[type="radio"].blue_radio_button:checked + label:after,
[type="radio"].blue_radio_button.with-gap:checked + label:after {
    background-color: var(--main-blue-color);
}

[id^='speed_chart'][type="radio"].blue_radio_button:checked + label:after,
[id^='speed_chart'][type="radio"].blue_radio_button.with-gap:checked + label:after {
    background-color: var(--main-light-blue-color);
    border: 2px solid var(--main-light-blue-color);
}
[id^="consumption_chart"].blue_radio_button:checked + label:after,
[id^="consumption_chart"].blue_radio_button.with-gap:checked + label:after {
    background-color: #279DFF;
    border: 2px solid #279DFF;
}
[id^="total_fuel_chart"].blue_radio_button:checked + label:after,
[id^="total_fuel_chart"].blue_radio_button.with-gap:checked + label:after {
    background-color: #4BC9FF;
    border: 2px solid #4BC9FF;
}
.charts__wrapper canvas{
    min-height: 240px;
}
/*-----------------airport description-------------*/
.airports{
    padding-bottom: 20px;
}
.airports__item{
    padding-top: 25px;
    padding-bottom: 30px;
}
.airports__item:not(:last-child){
    border-bottom: 1px solid rgba(170, 170, 170, 0.15);;
}

.airports__item__info{
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}
.airports__item__name{
    font-size: 18px;
    font-weight: 500;
    color: black;
    text-align: center;
}

.airports__item__links{
    display: flex;
    justify-content: flex-end;
    gap: 20px;
}
.airports__item__links .base_color_link{
    color: var(--main-light-blue-color) !important;

}
.airports__companies{
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.airports__companies__item{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 20px;
}
.airports__companies__item--pro{
    padding-top: 5px;
    padding-bottom: 10px;
}
.airports__companies__item__image__holder{
    width: 284px;
    height: 167px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.14);
    border-radius: 5px;
    padding: 10px;
    background-color: #fff;
}
.airports__companies__item__image__holder img{
    max-width: 100%;
    max-height: 100%;
    font-size: 24px;
    font-weight: 500;
    line-height: 140%;
}
.airports__companies__item__props{
    padding-top: 15px;
    align-self: flex-start;
    /* flex-grow: 1; */
    flex: 1;
    min-width: 0;
}
.airports__companies__item__no_image_text {
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
    color: var(--main-gray-color);
    text-align: center;
}
.airports__companies__item__name__pro_badge{
    vertical-align: middle;
}
.airports__companies__item__name{
    font-size: 18px;
}
.airports__companies__item--pro .airports__companies__item__name{
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 15px;
}
.airports__companies__item__info{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 13px;
    margin-bottom: 15px;
    row-gap: 10px;
}
.airports__companies__item__phone_website{
    display: flex;
    flex-direction: column;
    /* margin-bottom: 20px; */
}
.airports__companies__item__phone{

}
.airports__companies__item .airports__companies__item__tag_list{
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
.airports__companies__item--pro .airports__companies__item__tag_list{
    gap: 5px;
}
.airports__companies__item .airports__companies__item__tag_list span{
    font-size: 14px;
    color: var(--main-gray-color);
}
.airports__companies__item--pro .airports__companies__item__tag_list span{
    border:1px solid var(--main-gray-color);
    padding: 0 10px;
    border-radius: 5px;
}
.airports__companies__item__show_email_btn{
    padding: 4px 17px;
    font-size: 16px;
    line-height: 160%;
}
/* -------------------------------------------- */
.flight_price{
    padding: 60px 0;
    background-color: #fff;
}
.flight_price__title{
    font-size: 24px;
    margin: 0 0 20px;
    text-align: center;
}
.flight_price__table{
    --cell-border-radius: 5px;
    width: auto;
    table-layout: auto;
    text-align: left;
    margin: 0 auto;
    font-family: var(--second_font_family);
    border-collapse: separate;
    border-spacing: 0 5px;
}
.flight_price__holder{

}
.flight_price__table thead{
    border-bottom: 1px solid var(--main-light-gray-color);
}
.flight_price__table thead th{
    font-family: var(--second_font_family);
    color: var(--main-gray-color);
    font-weight: 400;
}
.flight_price__table tbody td{
    text-align: left;
    font-size: 18px;
}
.flight_price__table tbody tr:nth-child(2n+1){
    background-color: var(--main-light-gray-color);
}
.flight_price__table tbody tr:nth-child(2n+1) td:first-child{
    border-top-left-radius: var(--cell-border-radius);
    border-bottom-left-radius: var(--cell-border-radius);
}
.flight_price__table tbody tr:nth-child(2n+1) td:last-child{
    border-top-right-radius: var(--cell-border-radius);
    border-bottom-right-radius: var(--cell-border-radius);
}
.flight_price__table th,
.flight_price__table td{
    padding: 0;
}
.flight_price__table tr th:first-child,
.flight_price__table tr td:first-child{
    padding-left: 7px;
}
.flight_price__process{
    /* padding-right: 100px; */
}

.flight_price__amount{
    display: inline-block;
    /* width: 100%; */
    /* height: 100%; */
    border-radius: var(--cell-border-radius);
    border: 1px solid var(--main-gray-color);
    padding: 2px 6px;
    line-height: 22px;
    font-size: 18px;
    vertical-align: middle;
    background-color: #fff;
    width: 110px;
}

.flight_price__table tfoot td{
    padding-top: 20px;
    font-weight: 600;
    font-size: 18px;
    white-space: nowrap;
}
.flight_price__table  .flight_price__amount--cell{
    text-align: right;
}
.flight_price__table  .flight_price__reset--cell{
    background-color: #fff;
}
td.flight_price__process--cell{
    padding-right: 30px;
}
.flight_price__process--holder{
    min-width: 220px;
}
a.flight_price__amount--reset{
    font-size: 14px;
    margin-left: 5px;
    color: var(--main-gray-color)!important;
    display: block;
}

.flight_price__plan{
    /* padding: 20px 0 0 0; */
    margin-top: 20px;
    text-align: center;
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
}
.pricing_policy__title{
    font-family: var(--second_font_family);
    font-size: 18px;
}
.pricing_policy__name{
    font-size: 18px;
    font-weight: 500;
}
.pricing_policy__errors{
    margin-top: 30px;
}
.flight_price__message__error,
.flight_price__message__warning{
    text-align: center;
}

.flight_price__message__error .message__error{
    font-size: 14px;
    color: var(--main-error-color);
    margin-top: 10px;
}
.flight_price__message__error .message__warning{
    font-size: 14px;
    color: var(--main-warning-color);
    margin-top: 10px;
}

.flight_price__context{
    color: var(--main-gray-color);
    padding-left: 10px;
}

.airport-code {
  transition: all 0.2s ease;
  cursor: pointer;
  position: relative;
}

.highlighted-airport-code {
    color: var(--main-light-blue-color);
}

.airport-code-container {
  display: inline-block;
}

/* ------------------------------------------- */
/*---------------- price-----------------*/
.carbon_emission{
    padding: 20px 0;
}
.carbon_emission__title{
   margin-top: 0;
   margin-bottom: 6px;
    text-align: center;
}
.carbon_emission .carbon_emission_icon{
    vertical-align: middle;
}
.carbon_emission__holder{
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
}
.carbon_emission__units {
    color: var(--main-gray-color);
}
/* ------------------------------------------- */
.aircraft__section{
    padding: 60px 0 100px;
    background-color: #fff;
}
.aircraft__section__title{
    font-size: 24px;
    text-align: center;
}

/* a.aircraft__section__see_more_link{ */
/*     color: var(--main-darknest-gray-color); */
/* } */
/* ------------------map styles------------------ */
.airport_marker{
    display: block;
}
.last_airport_marker{
    transform: translateY(50%);
}
.circle_marker{
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background-color: #ffe381;
    box-sizing: border-box;
    transform: translateY(50%);
/* transform = "translate(-50%, -50%)" */
}
.info_box__route {
    text-align: center;
    font-size: 9px;
    font-weight: bold;
    min-width: 45px;
    border: 1px solid #fff;
    background-color: #444444;
    color: #ffffff;
    padding: 0 2px;
    border-radius: 3px;
    transform: translate(calc(50% + 5px), 50%);
}

.custom_info_window{
    position: absolute;
    display: block;
    background: #fff;
    border-radius: 5px;
    padding: 2px 3px;
}
/* ------------------------------------------- */
.errors_list{
    padding: 20px 0;
    text-align: center;
    background-color: #fff;
}
.errors_list__li{
    color: var(--main-error-color);
}

/* --------------------------------------------- */

footer {
    background-color: var(--main-light-gray-color);
    padding-top: 100px;
}


@media only screen and (max-width: 992px) {

    /*-----route section-----------*/

    footer {
        padding-top: 50px;
    }

    .buttons_section {
        padding: 50px 5px 40px;
    }


    /*--------------------------------------------*/
    .map__techstop--on_map{
        display: none;
    }

    .map__techstop--mobile{
        display: block;
        padding-bottom: 45px;
    }
    .map__techstop--mobile .map__techstop__list{
        max-height: 800px;
        overflow-y: auto;
    }
    .map__add_layer{
        height: auto!important;
    }
}
@media only screen and (max-width: 750px) {

    .calc__grid{
        grid-template-columns: 1fr 1fr;
    }

    .calc__grid__column:nth-child(2n+1) {
        padding-left: 0;
        padding-right: calc(var(--arrow-collumn) / 2);
    }
    .calc__grid__column:nth-child(2n) {
        padding-left: calc(var(--arrow-collumn) / 2);
        padding-right: 0;
    }
    .calc__grid--arr_airport{
        text-align: right;
    }
    .calc__grid__column:nth-child(2n) .route__date_time{
        justify-content: flex-end;
    }

    .calc__grid__column--airports:not(.calc__grid__column--airports_empty) {
        padding-top: 0;
    }
    .calc__grid__column--date_time + .calc__grid__column--airports:not(.calc__grid__column--airports_empty) {
        padding-top: 15px!important;
    }
    .calc__grid__column--airports_empty{
        display: none;
    }

    .calc__grid__column--airports{
        grid-column: 1 / -1;
        padding-right: 0!important;
        padding-left: 0!important;
    }

    .calc__grid--aircraft {
        grid-column: 1 / -1;
        padding-right: 0!important;
        padding-left: 0!important;
        text-align: center;
        padding-top: 25px;
    }

    /* ---------------------------------- */
    .time_distance .calc__grid{
        /* grid-template-columns: 1fr; */
        row-gap: 35px;
    }
    .time_distance .time_difference__column {
        /* grid-template-columns: auto 1fr; */
        /* grid-column: 1 / -1; */
        /* column-gap: 20px; */
        align-items: flex-start;
    }
    .time_difference__title,
    .time_difference__value{
        text-align: left;
    }
    /* -------------------------------- */

    .airports__item__info{
        flex-direction: column;
        align-items: center;
    }
    .airports__companies__item--pro{
        flex-direction: column;
        background-color: #fff;
        box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.14);
        align-items: center;
        border-radius: 5px;
        padding: 30px 10px;
    }
    .airports__companies__item--pro .airports__companies__item__image__holder{
        box-shadow: none;
        width: 100%;
        max-height: 90px;
    }
    .airports__companies__item--pro .airports__companies__item__props{
        align-self: center;
        text-align: center;
        width: 100%;
    }
    .airports__companies__item--pro .airports__companies__item__info{
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-bottom: 20px;
        row-gap: 15px;
    }
    .airports__companies__item--pro .airports__companies__item__tag_list{
        justify-content: center;
    }

     /* ------------------------ */
    .charts__container{
        text-align: center;
    }
    .chart_select_control {
        display: inline-grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }

    /*-----------------------------------------------*/
    .fuel_consumption_table th {
        font-size: 12px;
    }

    .fuel_consumption_table td:first-child {
        font-size: 14px;
    }

    .fuel_consumption_table td,
    .fuel_consumption_table th {
        padding: 5px 2px;
    }
    /* --------------------------- */
    .flight_price__process{
        padding-right: 15px;
    }
    /* .fuel_consumption_table tr:last-child td { */
    /*     font-size: 18px; */
    /* } */


}


@media only screen and (max-width: 601px) {
    .title_container{
      padding-top: 30px;
    }

    .flight_price__process--holder{
        min-width: 150px;
    }
    .route {
        padding-bottom: 45px;
    }
    .main_time__grid{
        grid-template-columns: 1fr;
        gap: 5px;
        justify-content: center;
    }
    .main_time__direction{
        justify-content: center;
    }
    .main_time__flight_time,
    .main_time__flight_price{
        text-align: center;
        display: flex;
        justify-content: center;
        gap: 10px;
        align-items: center;
    }
    /* ------------------------------ */
    .tech_stop_airport{
        font-size: 18px;
    }

    /* ------------------------------ */
    .time_distance{
        padding: 45px  0;
    }
    .time_distance .calc__grid {
        grid-template-columns: 1fr;
    }
    .time_distance .calc__grid .distance_column{
        padding-left: 0;
    }

    /* ---------------------------------- */
    .modify_calculation,
    .new_calculation {
        padding: 0 21px;
        font-weight: 500;
    }

    #map_canvas {
        height: 500px;
    }

    /* ------------------------------------ */
    .airports__companies__item--pro .airports__companies__item__tag_list{
        justify-content: flex-start;
        padding: 0 5px;
    }
    /* ------------------------------------ */

}
