/*==================================
* Author        : "ThemeSine"
* Template Name : Listrace  HTML Template
* Version       : 1.0
==================================== */

/*==================================
font-family: 'Roboto', sans-serif;
==================================== */


/*=========== TABLE OF CONTENTS ===========
1.  General css (Reset code)
2.  Header-top
3.  Top-area
4.  Welcome-hero
5.  List-topics
6.  Works  
7.  Explore
8.  Reviews
9.  Counter
10. Blog
11. Subscribe
12. Footer
==========================================*/

/*-------------------------------------
		0. Keyframes 
--------------------------------------*/

@keyframes openHistCnt {
    0%{
        height: 0;
        opacity: 0;
    }
    100%{
        height: 330px;
        opacity: 1;
    }
}

@keyframes openItinerary {
    0% {
        height: 0;
        opacity: 0;
    }
    100% {
        height: 75vh;
        opacity: 1;
    }
}

@keyframes openHotelCnt {
    0% {
        height: 0;
        opacity: 0;
    }
    100% {
        height: 98vh;
        opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}
 
@keyframes animateIn {
    0% {
      opacity: 0;
      transform: scale(0.6) translateY(-8px);
    }
    100% {
      opacity: 1;
    }
}

/*-------------------------------------
		1.General css (Reset code)
--------------------------------------*/

* {
    padding: 0;
    margin: 0;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
html {
    scroll-behavior: smooth;
}
body {
	font-family: 'Poppins', sans-serif;
	font-size:14px;
	color:#a09e9c;
    text-transform:initial;
    max-width:1920px;
    margin:0 auto;
	overflow-x:hidden;
}

a,a:hover,a:active,a:focus {
	display:inline-block;
	text-decoration:none;
	color: #343a3f;
    font-weight: 500;
}
h1,h2,h3,h4,h5,h6 {
	margin: 0;
	color:#343a3f;
	font-weight: 500;
	text-transform: capitalize;
	line-height: 1.8em;
}
p {
	margin: 0;
	color:#767f86;
	font-size:14px;
	line-height: 1.8;
	text-transform: initial;
}
img{
    border:none;
    max-width:100%;
    height: 100%;
}
ul{
	padding: 0;
    margin: 0 auto;
    list-style: none;
}
ul li {
	list-style: none;
	
}
select,input,textarea,button{box-shadow:none;outline:0!important;}
button {background: transparent;border: 0;font-size: 12px;}
label {color: #373939;}

html,body{height: 100%;}

[placeholder]:focus::-webkit-input-placeholder {
  -webkit-transition: opacity 0.3s 0.3s ease; 
  -moz-transition: opacity 0.3s 0.3s ease; 
  -ms-transition: opacity 0.3s 0.3s ease; 
  -o-transition: opacity 0.3s 0.3s ease; 
  transition: opacity 0.3s 0.3s ease; 
  opacity: 0;
}

.not-selectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* section-header */
.section-header{
    position: relative;
    text-align: center;
}
.section-header h2{
    color: #505866;
    font-size:24px;
    font-weight: 500;
    margin-bottom: 24px;
    text-transform: uppercase;
    letter-spacing: 1.3px;
}
.section-header h2 span{text-transform: lowercase;}
.section-header p{
    font-size:16px;
}
/* section-header */
.fix{position: relative;clear: both;}
/*=============Style css=========*/

/*-------------------------------------
        2. Header-top
--------------------------------------*/
.header-top{border-bottom:1px solid #f6f8fa;}

.header-top ul li {display: inline-block;}

.header-top-left li,.header-top-right li  {display: inline-block;}

/*.select-opt*/
.select-opt,.header-top-contact{
    padding: 10px 18px;
    border-right: 1px solid #f6f8fa;
}
.header-top-contact{
    border-right: 0;
    border-left: 1px solid #f6f8fa;
    font-size: 12px;
}
.select-opt select {
    border: none;
    cursor:pointer;
    color:#a7b0ba;
    font-size: 12px;
    font-weight: 300;
}
.select-opt option{
    color:#a7b0ba;
    text-transform: uppercase;
}
.select-opt a span.lnr-magnifier:before {
    font-size: 12px;
    color: #373939;
}
.select-opt a span.lnr-magnifier:before {
    font-size: 12px;
    color: #373939;
}
/*.select-opt*/

.header-top-right ul li a{
    color:#a7b0ba;
    font-size: 12px;
    font-weight: 300;
}

/*-------------------------------------
        3. Top-area
--------------------------------------*/
nav.navbar.bootsnav {
    background-color:#fff;
    border-bottom: transparent;
}
.wrap-sticky nav.navbar.bootsnav.sticked {background-color: #fff;box-shadow: 0 2px 5px rgba(0,0,0,.2);}

/* Custom logo img */
.custom-logo {
    height: 60px;
    padding: 10px 0;
    width: auto;
}

/*.navbar-brand*/
.navbar-header a.navbar-brand,.navbar-header a.navbar-brand:hover,.navbar-header a.navbar-brand:focus {
    display: inline-block;
    color: #1b1e20;
    font-size: 20px;
    font-weight: 700;
    padding: 34px 0px;
    text-transform:capitalize;
}
.navbar-header a.navbar-brand span{display: inline-block;color:#ff545a;text-transform:capitalize;}

.wrap-sticky nav.navbar.bootsnav.sticked .navbar-header a.navbar-brand,.wrap-sticky nav.navbar.bootsnav.sticked .navbar-header a.navbar-brand:hover,.wrap-sticky nav.navbar.bootsnav.sticked .navbar-header a.navbar-brand:focus {padding:30px 0px;}
/*.navbar-brand*/

.collapse .navbar-collapse .menu-ui-design {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
}
/*.nav li*/
nav.navbar.bootsnav ul.nav > li > a {
    color: #859098;
    font-size: 14px;
    font-weight: 500;
    text-transform:uppercase;
    -webkit-transition: 0.3s linear; 
    -moz-transition: 0.3s linear; 
    -ms-transition: 0.3s linear; 
    -o-transition: 0.3s linear; 
    transition: 0.3s linear;
}
nav.navbar.bootsnav ul.nav > li > a {padding:26px 22px;}
nav.navbar.bootsnav ul.nav > li > a:hover,nav.navbar.bootsnav ul.nav > li > a:focus{color: #ff545a;}
nav.navbar.bootsnav ul.nav > li.active>a {
    color: #ff545a;
    background-color: #c5401f1e;
    transform: perspective(2);
    transition: all 0.3s ease-in-out;
}

nav.navbar.bootsnav ul.nav > li.dropdown > a.dropdown-toggle:after {
    content: "";
}
nav.navbar.bootsnav ul.nav > li.dropdown span {
    font-size: 8px;
    margin-left: 15px;
}
.wrap-sticky nav.navbar.bootsnav.sticked ul.nav > li > a{padding:34px 21px;}
/*.nav li*/

/*.menu-ui-design*/
.menu-ui-design{
    overflow-y:hidden;
    height: 100vh;
}
.menu-ui-design::-webkit-scrollbar {
    width:5px;
}
.menu-ui-design::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 8px #000;
}
.menu-ui-design::-webkit-scrollbar-thumb {
  background-color: #ff545a;
}
/*.menu-ui-design*/

/*.navbar-toggle */
nav.navbar.bootsnav .navbar-toggle {
    position: relative;
    background-color: transparent;
    border: 1px solid #ff545a;
    padding: 10px;
    top: 0;
}
nav.navbar.bootsnav .navbar-toggle i{color: #ff545a;}
/*.navbar-toggle */

/*-------------------------------------
        4.  Welcome-hero
--------------------------------------*/
.welcome-hero {
    position: relative;
    background:url(../images/welcome-hero/banner2.jpg)no-repeat;
    background-position:center;
    background-size:cover;
    text-align: center;
    min-height: 900px;
    z-index: 1;
}
.welcome-hero:before{
    position: absolute;
    content: " ";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:rgba(65,73,89,.65);
    z-index: -1;
}
.welcome-hero-txt {
    padding-top: 155px;
    padding-bottom: 22px;
}
.welcome-hero-txt h2 {
    font-size: 48px;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2.4px;
    line-height: 1.4;
}
.welcome-hero-txt p {
    font-size: 18px;
    color: #fcfcfc;
    margin-top: 25px;
}
.header-tab-cnt {
    display: inline-flex;
    justify-content: flex-start;
    column-gap: 10px;

}
.header-tab-cnt::before{
    display: initial;
    content: unset;
}
.ricerca-voli-tab,
.ricerca-hotel-tab {
    display: block;
    background: #252d32;
    color: #e2e2e2;
    padding: 0.5em 1em;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border: 1px solid #a1a6aa;
    border-bottom: none;
    cursor: pointer;
}
.ricerca-voli-tab:hover,
.ricerca-hotel-tab:hover {
    color: #f2f2f2;
}
.ricerca-voli-tab.active,
.ricerca-hotel-tab.active {
    background: #267dff;
}
.container#ricerca-volo-cnt {
    background-color: #4444444b;
    border-radius: 8px;
    border: 1px solid #a1a6aa;
    padding: 2em 0;
}
.container#ricerca-hotel-cnt {
    background-color: #4444444b;
    border-radius: 8px;
    border: 1px solid #a1a6aa;
    padding: 2em 0;
}
.welcome-hero-serch{
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    padding-right: 12px;
    gap: 6px;
}
.welcome-hero-options-form {
    display: inline-flex;
    flex-direction: row;
    align-items: baseline;
}
.welcome-hero-options-form.top{
    position: sticky;
    width: 300px;
}
.welcome-hero-options-form.bottom{
    margin-top: 2.4em;
    width: 100%;
    justify-content: center;
    row-gap: 2em;
}
.ticket-op {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2em;
}
.single-option-label{
    position: relative;
    margin-right: 10px;
}
.single-option-label label{
    color: #fff;
    font-size: 15px;
    font-weight: 600;
}
.single-option-label select{
    background: #252d32;
    color: #fff;
    border: 1px solid #a1a6aa;
    border-radius: 3px;
    height: 33px;
}
.welcome-hero-form {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    align-items: center;
    min-height: 80px;
    row-gap: 1em;
}
.destination-cnt, .flight-data-cnt{
    display: inline-flex;
}
.single-welcome-hero-form {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    max-width: 250px;
    min-height: 55px;
    padding-right: 15px;
    padding-left: 0;
    margin-right: 10px;
    background: #fff;
    border-radius: 3px;
    border: 1px solid #a1a6aa;
    box-shadow: 0 3.5px 12px 3px rgb(71 71 71 / 44%);
}
.history-tb, .hotel-tb {
    position: relative;
}
/* map styles and leaflet custom css */
.map-cnt {
    position: sticky;
    top: 93px;
    width: 33vw;
    height: 600px;
    padding: 10px;
    background: #ddd;
    z-index: 100;
}
.map-cnt-detail {
    position: fixed;
    margin-inline: auto;
    top: 100px;
    left: 2.5vw;
    width: 95vw;
    height: 80%;
    z-index: 100;
}
.map-style {
    position: relative;
    width: 100%;
    height: 100%;
}
.map-extra-btn i {
    z-index: 1111;
    padding: 10px;
    cursor: pointer;
}
.leaflet-popup-content-wrapper {
    padding: 0 !important;
}
.leaflet-popup-content {
    margin: 0 !important;
    min-width: 200px !important;
    max-width: 250px;
}
.popup-cnt h5 {
    font-weight: 600;
}
.popup-cnt span.hotel-rating {
    font-size: 12px;
    margin-left: -2px;
}
.popup-cnt h4 {
    line-height: 1.4em;
    font-weight: 500;
    font-size: 13px;
}
.popup-cnt h4 span {
    font-weight: 700;
    color: #0068c1;
}
.popup-cnt img {
    width: 100%;
    max-height: 150px;
}
.popup-desc {
    padding: 10px 4px;
}
.popup-desc hr {
    margin: 4px 2px
}
.popup-desc .hotel-btn {
    margin-left: auto;
    margin-right: 4px;
}
.hotel-cnt {
    width: 100%;
    position: fixed;
    top: 1vh;
    left: 0;
    overflow-x: hidden;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;
    column-gap: 1em;
    background: #fdfdfd;
    border-radius: 4px;
    overflow-y: scroll;
    box-shadow: 5px 7px 20px 7px #2228;
    animation: openHotelCnt 600ms ease-out forwards;
    z-index: 10;
}
.history-cnt {
    position: fixed;
    top: 50%;
    left: 50%;
    min-width: 75vw;
    transform: translate(-50%, 10%);
    margin-inline: auto;
    border-radius: 4px;
    animation: openHistCnt 400ms forwards;
    overflow-y: scroll;
    z-index: 10;
}
.history-cnt table,
.hotel-cnt table{
    width: 100%;
    white-space: pre;
    text-align: initial;
    background: #f2f2f2;
}
.history-cnt table tr > td,
.hotel-cnt table tr > td {
    padding: 0.6em 0.8em;
    text-align: center;
}
.history-cnt thead tr > td,
.hotel-cnt thead tr > td {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    padding: 10px;
    text-transform: uppercase;
    background-color: #e2e2e2;
    color: #373939;
}
.history-cnt table tr > td {
    max-width: 20%;
}
.history-cnt table tr > td:last-child {
    text-align: end;
}
.history-cnt table tbody tr:hover {
    cursor: pointer;
    background: #ccc;
}
.hotel-ricerca {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 25px;
    padding: 3em 2em 1.2em 2em;
}
label.hotel-lab {
    position: absolute;
    top: -1.7em;
    left: 0;
    font-size: 14px;
    color: #fff;
}
.hotel-ricerca > div {
    position: relative;
    display: inline-flex;
    align-items: center;
    max-width: 140px;
    padding: 5px 15px;
    background: #fff;
    border-radius: 3px;
    border: 1px solid #a1a6aa;
    box-shadow: 0 3.5px 12px 3px rgb(71 71 71 / 44%);
}
.hotel-ricerca .hotel-dest {
    max-width: 250px;
    min-height: 55px;
}
.hotel-ricerca .hotel-dest i {
    padding-right: 5px;
    color: #252d32;
}
.hotel-ricerca > div > input {
    margin: 0;
    width: 100%;
    height: 30px;
    margin-inline: 5px;
    border: 0;
    background: transparent;
}
.hotel-guest {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    padding: 1em 2em;
}
.hotel-filtri {
    width: 100%;
    display: inline-flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 1em;
    padding-left: 2em;
}
.hotel-filtri div {
    padding: 2px 5px;
}
.hotel-filtri label{
    color: #f2f2f2;
}
.hotel-navbar{
    position: sticky;
    top: 10px;
    right: 10px;
    width: 100%;
    height: 30px;
    z-index: 10;
}
.hotel-mobile-map {
    position: sticky;
    display: none;
    bottom: 2.5vh;
    z-index: 5;
}
.hotel-header{
    position: sticky;
    top: 0;
    width: 100%;
    display: inline-flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 1.5rem 1.25rem;
    background: #fdfdfd;
    box-shadow: 0px 8px 10px 0px #00000020;
    border-bottom: 1px solid #ccc;
    z-index: 3;
}
.hotel-title{
    padding-left: 20px;
}
.hotel-title span{
    font-size: 20px;
    font-style: oblique;
    letter-spacing: 0.4px;
    margin-left: 10px;
    color: #424242;
}
.hotel-title span.hotel-rating {
    margin-left: 10px;
    padding: 2px 5px;
    color: #ffb703;
}
.hotel-title span.hotel-rating i {
    padding: 2px;
    filter: drop-shadow(0.8px 1.2px 0px #ec9f05);
}
.hotel-phone-cnt {
    display: inline-flex;
    padding: 10px 20px;
    gap: 10px;
}
.hotel-phone {
    height: 25px;
}
.hotel-phone i {
    color: green;
    font-size: 15px;
    margin-right: 5px;
}
.hotel-phone span {
    color: green;
}
.hotel-sort-sidebar{
    margin-right: 10px;
    padding: 10px 20px;
}
.hotel-sort-sidebar label{
    margin-right: 10px;
}
.hotel-sort-sidebar select{
    padding: 2px 7.5px;
    min-width: 180px;
    background: #fff;
    border-color: #ccc;
    color: #1d62c1;
    font-weight: 500;
}
.hotel-main{
    padding: 20px 10px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    column-gap: 1em;
}
.hotel-sidebar {
    width: 300px;
    height: fit-content;
    position: sticky;
    top: 100px;
    left: 0;
    padding: 15px 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background: #efefef;
    z-index: 111;
}
.sidebar-title {
    border-bottom: 1px solid #ccc;
    margin-bottom: 12px;
}
.sidebar-title h4{
    line-height: 1.6em;
    letter-spacing: 1.5px;
}
.filter-btn{
    width: 100%;
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    color: #1d62c1;
    padding: 4px 6px;
    margin: 5px 0 15px 0;
    background: #eee;
    border: 1px solid #ccc;
    text-transform: capitalize;
    border-radius: 3px;
    box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1);
    -webkit-transition: 0.3s linear;
    -moz-transition: 0.3s linear;
    -ms-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.filter-btn:hover{
    background: #e4e4e4;
    border-color: #ababab;
    font-weight: 600;
    transform: translateY(5px);
    box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.1);
}
.filter-btn i.fa {
    width: 20px;
    height: auto;
}
/* PRICE SLIDER CUSTOM START */
.wrapper-price{
    position: relative;
    width: 100%;
    background-color: #ffffff;
    padding: 10px;
    border-radius: 10px;
}
.container-price{
    position: relative;
    width: 100%;
    height: 40px;
}
input[type="range"]{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    outline: none;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    background-color: transparent;
    pointer-events: none;
}
.slider-track{
    width: 100%;
    height: 5px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    border-radius: 5px;
}
input[type="range"]::-webkit-slider-runnable-track{
    -webkit-appearance: none;
    height: 5px;
}
input[type="range"]::-moz-range-track{
    -moz-appearance: none;
    height: 5px;
}
input[type="range"]::-ms-track{
    appearance: none;
    height: 5px;
}
input[type="range"]::-webkit-slider-thumb{
    -webkit-appearance: none;
    height: 1em;
    width: 1em;
    background-color: #3264fe;
    cursor: pointer;
    margin-top: -5px;
    pointer-events: auto;
    border-radius: 50%;
}
input[type="range"]::-moz-range-thumb{
    -webkit-appearance: none;
    height: 1em;
    width: 1em;
    cursor: pointer;
    border-radius: 50%;
    background-color: #3264fe;
    pointer-events: auto;
}
input[type="range"]::-ms-thumb{
    appearance: none;
    height: 1em;
    width: 1em;
    cursor: pointer;
    border-radius: 50%;
    background-color: #3264fe;
    pointer-events: auto;
}
input[type="range"]:active::-webkit-slider-thumb{
    background-color: #ffffff;
    border: 3px solid #3264fe;
}
.values{
    background-color: #1d62c1;
    width: 70%;
    position: relative;
    margin: auto;
    padding: 5px 0;
    border-radius: 5px;
    text-align: center;
    font-weight: 400;
    font-size: 14px;
    color: #ffffff;
}
.values:before{
    content: "";
    position: absolute;
    height: 0;
    width: 0;
    border-top: 7px solid #3264fe;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    margin: auto;
    bottom: -7px;
    left: 0;
    right: 0;
}
/* PRICE SLIDER CUSTOM END */
.filter-label {
    display: inline-flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 5px;
    border-bottom: 1px solid #ccc;
}
.filter-label span {
    color: #1b6eb5;
    font-size: 14px;
    font-weight: 400;
}
.filter-label label{
    font-size: 12px;
}
.roomstay-cnt {
    width: 100%;
}
.roomstay {
    display: flex;
    justify-content: space-between;
    column-gap: 15px;
    align-items: center;
    width: 100%;
    float: right;
    background: #fefefe;
    border: 1px solid #ddd;
    border-bottom: 1px solid #ccc;
    border-radius: 4px;
    padding: 15px;
    margin-bottom: 30px;
    box-shadow: 0px 5px 12px 0px #00000020;
    animation: fadeIn 600ms ease-in;
}
.roomstay:hover{
    box-shadow: 0px 5px 12px 0px #00000050;
}
.thumb-cnt {
    flex: 0 0 auto;
    position: relative;
}
img.thumb-img {
    width: 265px;
    height: auto;
    aspect-ratio: 4/3;
    object-fit: fill;
    object-position: 50% 50%;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-image: url('../css/ajax-loader.gif');
    background-repeat: no-repeat;
    background-position: center;
    transition: 300ms img ease;
}
a.thumb-link {
    cursor: pointer;
}
.room-cnt {
    flex: 1 1 auto;
    display: flex;
    position: relative;
    min-height: 200px;
    flex-direction: column;
    justify-content: space-between;
}
.room-penalties {
    position: absolute;
    right: 0;
    top: 18%;
    border: 1px solid red;
    background: #F95558;
    color: #f2f2f2;
    padding: 2px 10px;
    cursor: pointer;
}
.room-discount {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45px;
    height: 45px;
    top: 3.5%;
    left: 2.5%;
    background: #28a745cc;
    border: 1px solid #28a745;
    color: #f2f2f2;
    border-radius: 50%;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -0.5px;
    cursor: pointer;
}
.room-head {
    display: inline-flex;
    justify-content: space-between;
    padding: 0;
}
.hotel-d-header{
    width: 100%;
    display: inline-flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 1.5rem 1.25rem;
}
.hotel-info{
    max-width: 70%;
}
.hotel-name{
    font-size: 18px;
}
.hotel-adress{
    color: #1d62c1;
    font-weight: 600;
    font-size: 14px;
}
.hotel-d-adress{
    padding: 0 20px;
    color: #1d62c1;
    font-weight: 600;
    font-size: 14px;
}
.hotel-d-adress i {
    margin-right: 5px;
    text-decoration: none;
}
.hotel-rel-pos{
    color: #733696;
    font-weight: 600;
    font-size: 14px;
    text-decoration-line: underline;
}
.hotel-rating {
    padding: 2px;
    color: #ffb703;
}
.hotel-rating span i{
    padding: 2px;
    filter: drop-shadow(0.8px 1.2px 0px #ec9f05);
}
.room-body {
    display: flex;
    height: 128px;
}
.room-info {
    width: 70%;
    border: 1px solid #ccc;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    border-right: 2px dashed #ccc;
    background: #f8f8f8;
    padding: 7.5px;
    overflow: hidden;
    text-overflow: ellipsis;
}
.room-info p {
    font-size: 12px;
    font-weight: 600;
    color: #1b6eb5;
    line-height: 1.6em;
}
.room-info p span {
    font-weight: 400;
    color: #424242;
}
.room-cost {
    width: 30%;
    border: 1px solid #ccc;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-left: none;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 7.5px;
    background: #f8f8f8;
}
.room-cost h3{
    font-size: 22px;
    font-weight: 400;
    letter-spacing: 1.2px;
    margin-bottom: 7px;
}
span.room-date {
    font-size: 12px;
    color: #424242;
    font-weight: 500;
    margin-bottom: 5px;
}
span.room-total-cost {
    font-weight: 600;
    font-size: 18px;
    color: #0068c1;
    margin-bottom: 4px;
}
.hotel-btn{
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    color: #fff;
    padding: 9px 12px;
    margin-right: -2px;
    margin-bottom: 4px;
    background: #F95558;
    text-transform: capitalize;
    border-radius: 4px;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.3);
    -webkit-transition: 0.3s linear;
    -moz-transition: 0.3s linear;
    -ms-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.hotel-btn:hover{
    background: #F83C3F;
    font-weight: 600;
}
.hotel-btn.to-right:hover{
    transform: translateX(12px);
    box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.3);
}
.hotel-btn.to-down:hover{
    transform: translateY(12px);
    box-shadow: 0px 10px 15px 0px rgba(0, 0, 0, 0.3);
}
.hotel-btn i.fa {
    width: 20px;
    height: auto;
}
.hotel-detail {
    position: fixed;
    top: 1vh;
    left: 5vw;
    width: 89vw;
    padding: 0;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    align-items: center;
    column-gap: 1em;
    background: #f2f2f2;
    border-radius: 4px;
    margin-inline: auto;
    overflow-y: scroll;
    box-shadow: 5px 7px 20px 7px #2228;
    animation: openHotelCnt 600ms ease-out forwards;
    z-index: 10;
}
.hotel-subhead{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.hotel-detail-main {
    padding: 1em 4em;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1em;
}
.hotel-detail-images {
    display: grid;
    width: 100%;
    height: fit-content;
    gap: 5px;
    z-index: 0;
    padding: 0px;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
}
.hotel-img-cnt:first-child {
    grid-row: 1/3;
    height: 405px;
}
.hotel-img-cnt {
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    height: 200px;
    background-color: #000;
    background-image: linear-gradient(90deg, #000 0%, #434343 100%);
}
.hotel-img-cnt img{
    width: 100%;
    height: 100%;
    object-fit: fill;
    object-position: 50% 50%;
    border-radius: 4px;
    opacity: 0.6;
    transition: all 400ms ease-in;
}
.hotel-img-cnt img:hover{
    transform: scale(1.5);
    opacity: 0.95;
}
.hotel-detail-first {
    display: inline-grid;
    margin: 1em 2em;
    grid-template-columns: repeat(2, 1fr) minmax(5%, 12%);
    column-gap: 3em;
}
.hotel-detail-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1em;
}
.hotel-detail-checkinfo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 90px;
    gap: 1em;
    padding: 1em 1.5em;
    background: #252d32;
    border-radius: 4px;
    text-align: center;
}
.hotel-detail-checkinfo div:first-child{
    border-right: 1px solid white;
}
.hotel-check {
    display: flex;
    flex-flow: column wrap;
    flex-basis: 50%;
}
.hotel-check span strong{
    color: white;
}
.hotel-detail-service {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1em;
}
.list-custom {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
}
.list-custom .list-item {
    padding: 10px 15px;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
}
.list-custom .list-item i {
    color: #252d32;
    padding-right: 5px;
}
.hotel-map-cnt {
    padding: .5rem 0;
}
.hotel-map {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 70px;
    background-image: linear-gradient(0deg, #00000044 0%, #dddddd55 100%), url(https://w3.iperv.it/wp-content/themes/blankslate/custom/img/map.png);
    border: 1px solid #ddd;
    border-radius: 10px;
    opacity: 0.9;
    transition: 400ms ease all;
}
.hotel-map:hover{
    background-image: linear-gradient(0deg, #00000033 0%, #ffffff11 100%), url(https://w3.iperv.it/wp-content/themes/blankslate/custom/img/map.png);
    opacity: 1;
}
.hotel-map i{
    transition: 400ms ease all;
}
.hotel-map:hover i{
    color: #252d32;
    transform: scale(1.2);
}
.rooms-detail-cnt {
    display: grid;
    justify-content: flex-start;
    width: 100%;
    margin-bottom: 2em;
    gap: 2em 1em;
}
.room-d-body {
    display: flex;
    position: relative;
    justify-content: space-between;
    align-items: center;
    height: fit-content;
    min-width: 750px;
    width: 70%;
    padding: 10px;
    background: #fdfdfd;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 5px 5px 0px #d2d2d2;
}
.room-d-info p{
    font-size: 15px;
    font-weight: 500;
    color: #1d62c1;
}
.room-d-info span {
    font-weight: 400;
    color: #343a3f;
}
.room-d-middle {
    display: grid;
    gap: 0.5em;
}
.room-d-discount {
    position: absolute;
    top: 2px;
    right: 2px;
    display: flex;
    min-width: 120px;
    justify-content: space-around;
    align-items: baseline;
}
.room-d-discount span {
    color: #28a745;
    font-size: 16px;
    font-weight: 600;
}
.room-d-cost {
    padding-top: 25px;
}
.call-to-action {
    display: inline-flex;
    justify-content: flex-end;
    gap: 1em;
    padding: 1em 2em;
}
.loading-pg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #000d;
    color: #f2f2f2;
}
.loading-pg i{
    font-size: 50px;
}
.loading-pg span{
    font-size: 22px;
}
.loading-on-div{
    position: sticky;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #f2f2f2;
    background: #222;
    width: 100%;
    height: 100%;
    z-index: 10;
}
.loading-on-div i {
    font-size: 50px;
}
.loading-on-div span {
    font-size: 22px;
}
#aereoport-list, #hotel-list {
    position: absolute;
    top: 60px;
    left: 0px;
    max-height: 150px;
    overflow-y: scroll;
    border: 1px solid transparent;
    border-radius: 3px;
    z-index: 2;
}
.new-li-airport, .new-li-hotel {
    position: relative;
    height: 25px;
    width: 230px;
    padding: 3px 4px;
    background: #fff;
    font-size: 14px;
    font-weight: 400;
    letter-spacing: -0.04em;
    text-align: start;
    text-transform: uppercase;
    overflow: hidden;
    cursor: pointer;
    border-bottom: 1px solid #8f949d;
    z-index: 20;
}
#aereoport-list li:hover,
#hotel-list li:hover {
    background-color: #00c437;
    color: #fff;
}
/* Custom scrollbar */
.history-cnt::-webkit-scrollbar,
.hotel-cnt::-webkit-scrollbar,
.hotel-detail::-webkit-scrollbar,
.air-list-itinerary-table::-webkit-scrollbar {
    width: 12px;
}
.history-cnt::-webkit-scrollbar-track,
.hotel-cnt::-webkit-scrollbar-track,
.hotel-detail::-webkit-scrollbar-track,
.air-list-itinerary-table::-webkit-scrollbar-track {
    background-color: #d2d2d2;
    border-radius: 0;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}
.history-cnt::-webkit-scrollbar-thumb,
.hotel-cnt::-webkit-scrollbar-thumb,
.hotel-detail::-webkit-scrollbar-thumb,
.air-list-itinerary-table::-webkit-scrollbar-thumb {
    min-height: 20px;
    background-color: #474649;
    border-radius: 8px;
    border: 3px solid transparent;
    background-clip: content-box;
}
.history-cnt::-webkit-scrollbar-thumn:hover,
.hotel-cnt::-webkit-scrollbar-thumb:hover,
.hotel-detail::-webkit-scrollbar-thumb:hover,
.air-list-itinerary-table::-webkit-scrollbar-thumb:hover {
    background-color: #333234;
}
/* Hide input type number arrows/spinners for Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Hide input type number arrows/spinners Firefox */
input[type=number] {
  -moz-appearance: textfield;
}
.single-welcome-hero-form.calendar{
    max-width: 200px;
    padding-right: 0;
}
.single-welcome-hero-form.calendar span{
    margin-left: 5px;
    color: #252d32;
    font-size: 14px;
    font-weight: 500;
}
.single-welcome-hero-form.calendar input{
    border: 0;
    height: 30px;
    width: 120px;
}
.calendar-container input[type="text"]{
    /* width: 90px; */
    font-size: 14px;
    color: #859098;
    font-weight: 400;
    text-align: center;
    background-color: transparent;
    margin-inline: 5px;
    outline: none;
}
::-webkit-calendar-picker-indicator{
    background-color: #fff;
    border-radius: 3px;
    padding: 3px;
    margin-left: 3px;
    margin-right: 0;
    color: #252d32;
}
.label-pass-title{
    position: absolute;
    top: -18px;
    left: 4px;
    color: white;
    z-index: 1;
    font-size: 14px;
}
.single-welcome-hero-form.tickets {
    position: relative;
    padding: 2px 6px;
    font-size: 15px;
    font-weight: 500;
    background: #252d32;
    border: 1px solid #a1a6aa;
    border-radius: 3px;
    color: #fff;
    flex-wrap: wrap;
    justify-content: space-evenly;
    max-width: 400px;
}
.single-welcome-hero-form.tickets input{
    border: 1px solid #d3d6d9;
    border-radius: 3px;
    width: 30px;
    text-align: center;
}
.passenger-quantity-container{
    margin-right: 5px;
    font-size: 14px;
    font-weight: 400;
}
.passenger-quantity-container span{
    margin-right: 10px;
}
.pass{
    display: inline-flex;
    justify-content: space-between;
    align-items: center;
    width: 380px;
    margin: 5px 0;
}
.pass-age{
    font-size: 12px;
    color: #859098;
}
.eta-label{
    width: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    margin-left: 5px;
}
.eta-label label{
    margin: 0;
    font-weight: 400;
    color: whitesmoke;
}
.eta-label select{
    margin-left: 2px;
    color: #252d32;
}
.single-welcome-hero-form.right-form{
    padding-right: 10px;
    padding-left: 5px;
}
.single-welcome-hero-form input {
    margin: 0;
    width: 180px;
    height: 30px;
    margin-inline: 5px;
    border: 0;
    background: transparent;
}
.single-welcome-hero-form input[type="text"]{
    font-size: 14px;
    color: #859098;
    font-weight: 400;
    text-align: center;
}
.single-welcome-hero-form-center{
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    margin: 7px -10px 7px -20px;
    border: 2px solid #eee;
    border-radius: 50%;
    background: #343a3f;
    box-shadow: 0 0 10px 4px rgb(71 71 71 / 44%);
    z-index: 3;
    -webkit-transition: 0.3s linear;
    -moz-transition: 0.3s linear;
    -ms-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.single-welcome-hero-form-center:hover{
    background: #ff545a;
}
.welcome-hero-form-icon {
    margin-left: 5px;
    color: #252d32;
    font-size: 16px;
    font-weight: 500;
    width: 40px;
    height: 55px;
}
.welcome-hero-form-icon i.fa.fa-plane.fa-rotate-180{margin-bottom: 10px;}
.welcome-hero-form-icon-center {
    color: #fff;
}
.welcome-hero-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    color: #fff;
    padding: 9px 12px;
    background: #F95558;
    text-transform: capitalize;
    border-radius: 3px;
    box-shadow: 0 5px 12px 8px rgb(71 71 71 / 44%);
    -webkit-transition: 0.3s linear;
    -moz-transition: 0.3s linear;
    -ms-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.welcome-hero-btn:hover{
    background: #F83C3F;
    box-shadow: 0px 0px 20px 16px rgb(99 99 99 / 33%);
}
.welcome-hero-btn i.fa.fa-search.fa-md {
    width: 20px;
    height: auto;
}
.history-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 14px;
    color: #fff;
    background: #0069AF;
    text-transform: capitalize;
    padding: 9px 12px;
    border-radius: 3px;
    box-shadow: 0 5px 12px 8px rgb(71 71 71 / 44%);
    -webkit-transition: 0.3s linear;
    -moz-transition: 0.3s linear;
    -ms-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.history-btn:hover {
    background: #0070BB;
    box-shadow: 0px 0px 20px 16px rgb(99 99 99 / 33%);
}
.history-btn i.fa.fa-history.fa-md{
    width: 20px;
    height: auto;
}
.eraser-btn {
    display: flex;
    justify-content: space-around;
    align-items: center;
    font-size: 14px;
    color: #fff;
    background: #0069AF;
    text-transform: capitalize;
    padding: 9px 12px;
    border-radius: 3px;
    box-shadow: 0 5px 12px 8px rgb(71 71 71 / 44%);
    -webkit-transition: 0.3s linear;
    -moz-transition: 0.3s linear;
    -ms-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
}
.eraser-btn:hover {
    background: #0070BB;
    box-shadow: 0px 0px 20px 16px rgb(99 99 99 / 33%);
}
.eraser-btn i.fa.fa-eraser.fa-md{
    width: 20px;
    height: auto;
}
#ui-datepicker-div{
    border: none;
    border-radius: 0;
    padding: 0;
    margin: 0;
    margin-top: 15px;
    margin-left: -5%;
}
.ui-datepicker table{
    background: #262d32;
    font-weight: 500;
    color: #fff;
}
.ui-datepicker td {
    padding: .1em .2em;
}
.ui-datepicker-calendar{
    margin: 0 !important;
}
.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: 0;
}
.ui-datepicker-header{
    border: none !important;
    border-radius: 0 !important;
    background: #ff545a !important;
    color: #252d32 !important;
    font-weight: 500 !important;
}
/* REMOVE THE DEFAULT PREV-NEXT BTN */
.ui-datepicker .ui-datepicker-prev .ui-icon, .ui-datepicker .ui-datepicker-next .ui-icon {background-image: url("https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/ui-lightness/images/ui-icons_ffffff_256x240.png")!important; }
.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {background: transparent !important;}
.ui-datepicker-prev-hover {left: 2px !important;}
.ui-datepicker-next-hover {right: 2px !important;}
.ui-state-default{
    color: #252d32 !important;
    text-align: center !important;
}
.ui-state-highlight{
    background: #f8f8f8 !important;
    border: 1px solid #ff545a !important;
}
.ui-state-hover{
    background: #fcfcfc !important;
    color: #ff545a !important;
    border: none !important;
}
.ui-state-active{
    color: #fff !important;
    background: #ff545a !important;
    border: none !important;
}
.loading-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100%;
    display: flex;
    justify-content: center;
    background: #000d;
    z-index: 999;
    overflow: hidden;
}
/*-------------------------------------
        5.a Air-list-itinerary
--------------------------------------*/
.search-tb {
    position: relative;
}
.air-list-navbar{
    position: sticky;
    top: 0;
    height: 20px;
    background-color: #f4f4f4;
    padding: 4px 3px;
    z-index: 5;
}
.air-list-itinerary-table {
    width: 90%;
    min-height: 90%;
    position: fixed;
    top: 5%;
    margin-inline: 5%;
    border-radius: 4px;
    box-shadow: 5px 7px 20px 7px #2228;
    overflow-y: scroll;
    animation: openItinerary 600ms ease-out forwards;
    z-index: 10;
}
.air-list-itinerary-table table{
    width: 100%;
    white-space: nowrap;
    background: #f5f5f5;
    color: #222;
    text-align: center;
}
.air-list-itinerary-table table tbody tr{
    background-color: #f6f8fa;
}
.air-list-itinerary-table table td{
    padding: 6px 4px;
    border: 1px solid #a1a6aa;
}
.air-list-itinerary-table table td:first-child{
    border-left: none;
}
.air-list-itinerary-table table td:last-child{
    border-right: none;
}
.air-list-itinerary-table thead{
    width: 100%;
}
.air-list-itinerary-table th {
    position: sticky;
    top: 20px;
    padding: 6px 4px;
    text-align: center;
    background: #252d32;
    color: #fff;
    z-index: 2;
}
.air-list-itinerary-table th i{
    padding: 4px 8px;
}
.air-list-itinerary-table table .vector {
    text-align: start;
}
.air-list-itinerary-table .market{
    width: 30px;
    height: 30px;
    background-color: #ffffff77;
    border: 1px solid #dedede;
    border-radius: 50%;
    padding: 2px;
    margin-right: 5px;
}
.air-list-itinerary-table table span.seats{
    font-family: 'FontAwesome';
    font-size: 14px;
    font-weight: 400;
    text-transform: capitalize;
}
.fa-suitcase {
    position: relative;
    margin-right: 5px;
    margin-left: 5px;
}
.opac {
    opacity: .7;
}
.suit-svg {
    position: absolute;
    left: 0;
    width: 14px;
    height: 14px;
}
.no-suitcase {
    display: block;
    width: 20px;
    height: 2px;
    fill: red;
    transform: rotate(45deg);
}
.fa-exclamation-circle:before {
    color: red;
    margin-right: 5px;
}
tbody.volo, tbody.voli {
    animation-name: animateIn;
    animation-duration: 350ms;
    animation-fill-mode: both;
    animation-timing-function: ease-in-out;
}
tbody.volo:nth-child(2),
tbody.voli:nth-child(2){
    animation-delay: 200ms;
}
tbody.volo:nth-child(3),
tbody.voli:nth-child(3){
    animation-delay: 300ms;
}
tbody.volo:nth-child(4),
tbody.voli:nth-child(4){
    animation-delay: 400ms;
}
tbody.volo:nth-child(5),
tbody.voli:nth-child(5){
    animation-delay: 500ms;
}
tbody.volo:nth-child(6),
tbody.voli:nth-child(6){
    animation-delay: 600ms;
}
tbody.volo:nth-child(7),
tbody.voli:nth-child(7){
    animation-delay: 700ms;
}
tbody.volo:nth-child(8),
tbody.voli:nth-child(8){
    animation-delay: 800ms;
}
tbody.volo:nth-child(9),
tbody.voli:nth-child(9){
    animation-delay: 900ms;
}
tbody.volo tr, tbody.voli tr:last-child{
    box-shadow: 0px 7px 5px #22222233;
}
tbody.voli::after {
    content: "";
    display: block;
    height: 1.4em;
    background-color: transparent !important;
    border: none;
}
tbody.volo::after {
    content: "";
    display: block;
    height: 1.4em;
    background-color: transparent !important;
    border: none;
}
.hide{
    animation: fadeOut 400ms linear forwards;
}
.fa-times-circle{
    position: sticky;
    top: 0;
    float: right;
}
.fa-times{
    position: absolute;
    padding: 5px;
    top: 15px;
    right: 15px;
    background: white;
    color: #252d32;
}
.error-msg{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-height: 200px;
    padding: 50px;
    font-size: 18px;
    font-weight: 600;
    color: #252d32;
    background: #edeff1;
    border-radius: 4px;
    border: 1px solid red;
}
.last-td{
    position: relative;
}
.dur-scalo{
    position: absolute;
    padding: 0px 5px;
    width: 70%;
    margin: 0px 15%;
    background: #262d32;
    color: #fff;
    border-radius: 24px;
    top: -25%;
    left: 0;
    font-size: 11px;
    font-style: normal;
    letter-spacing: 0.05em;
}
div.content_wrapper{
    position: relative;
    z-index: 10;
    overflow: visible;
}
div.content_wrapper table{
    position: fixed;
    transform: translate(-100%, -80%);
    font-size: 12px;
    min-width: 250px;
    max-width: 500px;
}

/*-------------------------------------
        5.b Flight-Details
--------------------------------------*/
.fare-tb {
    position: relative;
}
.fare-tb-navbar{
    position: sticky;
    top: 0;
    height: 20px;
    background-color: #f4f4f4;
    padding: 4px 3px;
    z-index: 5;
}
form#flight-list-details {
    color: black;
    background: #fff;
    text-align: start;
    width: 90%;
    min-height: 90%;
    position: fixed;
    top: 5%;
    margin-inline: 5%;
    padding-top: 0;
    padding-bottom: 50px;
    border-radius: 4px;
    box-shadow: 5px 7px 20px 7px #2228;
    overflow-y: scroll;
    overflow-x: hidden;
    animation: openItinerary 600ms ease-out forwards;
    z-index: 10;
}
.select-fare{
    padding: 12px;
    margin: 30px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.05);
    box-shadow: 0 1px 1px rgba(0,0,0,.05);
}
.air-fare{
    margin: 50px auto;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-column-gap: 50px;
}
.single-fare{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 24px;
}
.btn-fare{
    display: grid;
    width: 100%;
    margin-inline: auto;
}
.single-fare a.btn:active,
.single-fare a.btn.active{
    -webkit-box-shadow: none;
    box-shadow: none;
}
.segments {
    margin-inline: auto;
    margin-bottom: 30px;
    width: 90%;
    border-left: 8px solid #ddd;
}
.segments-details {
    display: grid;
    grid-template-columns: minmax(60px, 90px) minmax(240px, 280px) repeat(2, minmax(70px, 90px)) minmax(110px, 150px) 40px;
    justify-content: flex-start;
    gap: 1em;
    padding: 4px 12px;
}
.segments-details .airlogo{
    width: 60px;
    height: 55px;
    padding: 5px;
    border-radius: 50%;
    border: 1px solid #dedede;
}
.segments-details .destination{
    display: inline-flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: baseline;
    column-gap: 1rem;
}
.destination div > p{
    white-space: pre;
}
.destination .dest-label {
    width: 25px;
}
.destination .dest-localty {
    font-weight: 600;
}
.destination .dest-date {
    font-weight: 300;
    letter-spacing: 1px
}
.segments-details .dur p{
    font-weight: 500;
}
.segments-details .airnum p{
    font-weight: 700;
    letter-spacing: 0.5px;
}
.airnum > div p{
    display: inline-block;
    margin-left: 5px;
}
.dur-cnt{
    position: relative;
    width: 100%;
}
.dur-cnt i{
    position: absolute;
    padding: 0px 12px;
    margin: 0px 15%;
    background: #343a3f;
    color: #fff;
    border-radius: 24px;
    top: -0.7em;
    right: 25%;
    font-size: 14px;
    font-style: normal;
    letter-spacing: 0.05em;
}
.brand-container {
    display: inline-block;
    width: 100%;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    margin-inline: 10px;
    margin-top: 20px;
}
.brand-marketing-desc pre{
    background: #267dff;
    color: #f2f2f2;
    word-break: break-word;
    white-space: pre-wrap;
    font-weight: 300;
    line-height: 24px;
    border: none;
}
.brand-optional{
    padding: 0 15px;
    background-color: #f2f2f2;
    border: 1px solid #ddd;
    border-radius: 4px;
}
.brand-optional > .anc-container:not(:last-child) {
    border-bottom: 1px solid #ddd;
}
.anc-container {
    padding: 10px 0;
}
.anc-container i{
    margin-left: 5px;
}
.panel-default {
    display: block;
    width: 98%;
    padding: 12px;
    margin: 10px auto;
}
.pass-type {
    margin: 12px 22px;
    font-size: 22px;
    font-weight: 400;
    color: #555;
    letter-spacing: 0.12em;
}
#fare-rules ul.nav.tabs-vertical {
    position: relative;
    float: left;
}
#fare-rules ul.nav.tabs-vertical a{
    border-radius: 4px;
    border: 1px solid #ccc;
    margin-bottom: 10px;
}
#fare-rules .tab-content .tab-rules{
    position: relative;
    float: right;
    width: 85%;
    margin-right: 25px;
}
#fare-rules pre{
    white-space: pre-line;
}
.form-group {
    display: grid;
    grid-template-columns: repeat(3, minmax(150px, 1fr));
    gap: 20px 10px;
    align-items: center;
    margin-top: 30px;
}
.form-2-col > div{
    width: 48.75%;
    float: left;
}
.form-2-col div:last-child{
    margin-left: 2.5%;
}
.panel .panel-heading{
    margin-right: -12px;
    margin-left: -12px;
    background: #f8f8f8;
    border: 1px solid #ddd;
}
.form-group-docs {
    display: grid;
    grid-template-columns: repeat(5, minmax(110px, 200px));
    gap: 20px 10px;
    margin-bottom: 15px;
}
.panel-title.anc-head {
    background: #337ab7;
    padding: 12px 16px;
}
.anc-head a {
    color: #f2f2f2;
    font-weight: 500;
    letter-spacing: 0.22em;
}
.anc-cnt {
    display: flex;
    width: 100%;
    margin-bottom: 20px;
}
.left-anc {
    width: 10%;
    display: block;
    float: left;
}
.right-anc {
    width: 90%;
    display: block;
    float: right;
}
.tab-content>.active {
    animation: fadeIn 400ms linear;
}
.single-anc {
    display: inline-grid;
    width: 100%;
    grid-template-columns: minmax(70px, auto) 1fr minmax(90px, auto);
    grid-gap: 12px;
    justify-content: space-between;
    margin: 6px;
    border-bottom: 1px solid #ccc;
}
.col-right {
    float: right;
    color: #f2f2f2;
}
.col-right span:first-child {
    font-size: 14px;
    margin-right: 10px;
}
.col-right span:last-child {
    font-size: 22px;
    font-weight: 700;
}
/* Custom switch toogle */
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 32px;
}
.switch input{
    opacity: 0;
    width: 0;
    height: 0;
}
.slider{
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}
.slider:before{
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}
input:checked + .slider{
    background-color: #337ab7;
}
input:focus + .slider{
    box-shadow: 0 0 1px #337ab7;
}
input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}
/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}  
.slider.round:before {
    border-radius: 50%;
}
.reservation {
    padding: 12px;
    margin: 30px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    -webkit-box-shadow: 0 1px 1px rgba(0,0,0,.05);
    box-shadow: 0 1px 1px rgba(0,0,0,.05);
}
.res-detail{
    display: grid;
    grid-template-rows: repeat(3, minmax(30px, 50px));
    justify-content: flex-end;
    row-gap: 15px;
}
.res-detail > div {
    display: grid;
    text-align: end;
    font-size: 18px;
    grid-template-columns: repeat(2, minmax(120px, 250px));
    column-gap: 15px;
    padding-right: 15px;
}
.res-detail span {
    color: #343a3f;
    letter-spacing: 0.12em;
}
.res-detail span b {
    color: #00c437;
}
#total-amount {
    font-size: 26px;
}
#buy-btn {
    float: right;
    padding: 10px 32px;
    margin: 24px 0;
}
/*-------------------------------------
        5.c List-topuics
--------------------------------------*/
.list-topics-content {
    position: relative;
    top: -98px;
    z-index: 2;
}
.list-topics-content h2 { font-size: 18px; }
.list-topics-content ul li { display: inline-block; }

.single-list-topics-content{
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: 205px;
    height: 170px;
    background:#fff;
    border-radius: 3px;
    margin-right: 20px;
    margin-bottom: 20px;
    box-shadow: 0 0px 10px rgba(71,71,71,.2);
    -webkit-transition: .3s linear; 
    -moz-transition:.3s linear; 
    -ms-transition:.3s linear; 
    -o-transition:.3s linear;
    transition: .3s linear;
}
.single-list-topics-content h2>a { margin: 13px 0;}
/*.single-list-topics-content:last-child{margin-right: 0;}*/

.single-list-topics-icon [class^="flaticon-"]:before,.single-list-topics-icon [class*=" flaticon-"]:before,.single-list-topics-icon [class^="flaticon-"]:after,.single-list-topics-icon [class*=" flaticon-"]:after {font-size: 45px;color:#343a3f;}
.single-list-topics-content:hover .single-list-topics-icon [class^="flaticon-"]:before,.single-list-topics-content:hover .single-list-topics-icon [class*=" flaticon-"]:before,.single-list-topics-content:hover .single-list-topics-icon [class^="flaticon-"]:after,.single-list-topics-content:hover .single-list-topics-icon [class*=" flaticon-"]:after {color:#fff;}

.single-list-topics-content:hover h2>a,.single-list-topics-content:hover p{color: #fff!important;}
.single-list-topics-content:hover{
    color: #fff;
    background:#ff545a;
    box-shadow: 0 5px 10px rgba(71,71,71,.4);
}

/*-------------------------------------
        6. Works 
--------------------------------------*/
.works{padding: 0 0 90px;}
.works-content {margin-top: 73px;}

.single-how-works{
    text-align: center;
    padding:50px 42px;
    border-radius: 3px;
    box-shadow: 0 0px 5px rgba(71,71,71,.2);
    margin-bottom: 30px;
    -webkit-transition: .3s linear; 
    -moz-transition:.3s linear; 
    -ms-transition:.3s linear; 
    -o-transition:.3s linear;
    transition: .3s linear;
}

.single-how-works-icon {
    display: inline-block;
    color: #50616c;
    width: 80px;
    height: 80px;
    line-height: 80px;
    background: #eef2f6;
    border-radius: 50%;
}
.single-how-works h2 a {
    font-size:  18px;
    margin: 35px 0 20px;
}
.single-how-works h2 a span {text-transform:  lowercase;}
.single-how-works p {margin-bottom: 25px;text-transform: initial;}

.single-how-works-icon [class^="flaticon-"]:before,.single-how-works-icon [class*=" flaticon-"]:before,.single-how-works-icon [class^="flaticon-"]:after,.single-how-works-icon [class*=" flaticon-"]:after {font-size: 35px;}
.single-how-works:hover .single-how-works-icon [class^="flaticon-"]:before,.single-how-works:hover .single-how-works-icon [class*=" flaticon-"]:before,.single-how-works:hover .single-how-works-icon [class^="flaticon-"]:after,.single-how-works:hover .single-how-works-icon [class*=" flaticon-"]:after {color:#ff545a;}

.welcome-hero-btn.how-work-btn {
    display: inline-block;
    margin: 0;
    width: 100px;
    height: 35px;
    font-size: 12px;
    background: transparent;
    color: #767f86;
    border: 1px solid #d3d6d9;
    border-radius: 3px;
    box-shadow: none;
}

.single-how-works:hover h2 a,.single-how-works:hover p{color: #fff;}
.single-how-works:hover .single-how-works-icon{background: #fff;}
.single-how-works:hover .welcome-hero-btn.how-work-btn{background: #fff;color: #ff545a;}
.single-how-works:hover{box-shadow: 0 0px 10px rgba(71,71,71,.4);background: #ff545a;}

/*-------------------------------------
        7. Explore
--------------------------------------*/
.explore{
    padding:117px 0 95px;
    background: #f8fafb;
}
.explore-content{margin-top: 78px;}

.single-explore-item {
    background: #fff;
    border: 1px solid #edeff1;
    border-radius: 3px;
    margin-bottom: 25px;
    -webkit-transition: .3s linear; 
    -moz-transition:.3s linear; 
    -ms-transition:.3s linear; 
    -o-transition:.3s linear;
    transition: .3s linear;
}
.single-explore-item h2 {
    font-size: 18px;
}
.single-explore-img{position:relative;overflow: hidden;}
.single-explore-img:before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(162,172,177,.2);
}
.single-explore-img-info {
    position: absolute;
    bottom:-20px;
    left: 0;
    width: 100%;
    opacity:0;
    visibility:hidden;
    -webkit-transition: .3s linear;
    -moz-transition: .3s linear;
    -ms-transition: .3s linear;
    -o-transition: .3s linear;
    transition: .3s linear;
}
.single-explore-item:hover .single-explore-img-info{
    opacity:1;
    visibility:visible;
    bottom:0px
}
.single-explore-img-info button{
    position: absolute;
    bottom: 15px;
    left: 15px;
    width: 83px;
    height: 21px;
    line-height: 21px;
    background: #ff545a;
    border-radius: 3px;
    color: #fcfcfc;
    text-transform: capitalize;
    text-align: center;
    font-size: 12px;
}
.single-explore-image-icon-box {
    text-align: right;
    position: absolute;
    bottom: 10px;
    right:  10px;
}
.single-explore-image-icon-box ul li {
    display:  inline-block;
    width: 30px;
    height:  28px;
    line-height:  28px;
    background: #252d32;
    text-align:  center;
    margin-left:  5px;
    color:  #cbcccd;
}
.single-explore-image-icon-box ul li:hover i{color: #267dff;}

.single-explore-txt {
    padding: 26px 25px 24px 15px;
}
.single-explore-txt.bg-theme-1 .explore-rating{background: #70a9ff;}
.single-explore-txt.bg-theme-2 .explore-rating{background: #00c61c;}
.single-explore-txt.bg-theme-3 .explore-rating{background: #ffcc5d;}
.single-explore-txt.bg-theme-4 .explore-rating{background: #bd70ff;}
.single-explore-txt.bg-theme-5 .explore-rating{background: #ff7a40;}

.explore-rating-price,.explore-rating-price a {
    font-size: 12px;
    color: #777f85;
    text-transform: capitalize;
    font-weight: 400;
    margin: 15px 0 20px;
}
.explore-rating-price a {margin:0;}
.explore-rating {
    display: inline-block;
    width: 32px;
    height: 20px;
    line-height: 20px;
    color: #fff;
    text-align: center;
    border-radius: 3px;
    font-weight: 500;
    margin-right: 10px;
}
.explore-price {color: #f63138;}
.explore-price-box {
    display: inline-block;
    padding: 0 10px;
    margin: 0 8px;
    border-left: 1px solid #dde0e4;
    border-right: 1px solid #dde0e4;
}
.explore-person {
    padding-bottom: 28px;
    border-bottom: 1px solid #e1e5eb;
}
.explore-person-img{
    width: 40px;
    height: 40px;
    border-radius: 50%;
}
.explore-person p {font-size: 12px;}
.explore-open-close-part {
    margin-top: 20px;
}
.close-btn {
    color: #f63138;
    text-transform: capitalize;
}
.close-btn.open-btn {color: #00c437;}
.explore-map-icon{text-align: right;}
.explore-map-icon a svg {
    width: 12px;
    height: 14px;
    margin-left: 23px;
    color: #767f86;
}
.explore-map-icon a svg:hover{color: #f63138;}
.single-explore-txt.bg-theme-2 .explore-map-icon a svg:hover{color: #00c437;}
.single-explore-item:hover{box-shadow: 0 10px 20px rgba(21,19,19,.2);}

/*-------------------------------------
        8. Reviews
--------------------------------------*/
.reviews{padding:117px 0 75px;}
.reviews-content {margin-top:36px;}

/*single-testimonial-box */
.single-testimonial-box  {
    padding: 50px 30px;
    box-shadow: 0 0px 5px rgba(71,71,71,.2); 
    overflow-x:hidden;
    -webkit-transition: .3s; 
    -moz-transition:.3s; 
    -ms-transition:.3s; 
    -o-transition:.3s;
    transition: .3s;
}
.single-testimonial-box:hover{box-shadow:0 10px 20px rgba(21,19,19,.2);}
.slick-current .single-testimonial-box{box-shadow:0 10px 20px rgba(21,19,19,.2);}
/*testimonial-description*/
.single-testimonial-box{
    width: 404px;
    background:#fff;
}
/* testimonial-info */
.testimonial-info {
    display: flex;
    align-items: center;
    text-transform:capitalize;
}
.testimonial-img {
    position: relative;
    top: 11px;
    margin-right: 5px;
    border-radius:50%;
    -webkit-transition: .3s; 
    -moz-transition:.3s; 
    -ms-transition:.3s; 
    -o-transition:.3s;
    transition: .3s;
}
.testimonial-person {
    margin-left: 15px;
    margin-top: 11px;
}
.testimonial-person h2 {
    color: #505866;
    font-size: 18px;
}
.testimonial-person h4 {
    color: #a2a5ab;
    font-size: 14px;
    font-weight: 400;
    margin-top: 10px;
}
.testimonial-person-star i {
    color: #ffda2b;
    margin: 9px 4px 0 0;
}/* testimonial-info */


/* testimonial-comment */
.testimonial-comment {
    margin-top: 18px;
}
.testimonial-comment p{
    color: #8d939e;
    font-size: 14px;
    font-weight: 300;
}/* testimonial-comment */


/*.slick-slide*/
.slick-initialized .slick-slide {
    display: block;
    padding: 40px 0;
}
.slick-slide.slick-cloned {outline: 0!important;}
.slick-slide {
  margin: 0px 10px;
}
.slick-slide {
  transition: all ease-in-out .3s;
  opacity: .5;
}
.slick-active {
  opacity: .5;
}
.slick-current {
  opacity: 1;
}
/*.slick-slide*/

/*-------------------------------------       
        9.  Counter
--------------------------------------*/
.statistics{
    position:relative;
    display: flex;
    align-items: center;
    background:url(https://w3.iperv.it/wp-content/themes/blankslate/custom/images/counter/counter-banner.jpg)no-repeat fixed;
    background-position:center;
    background-size:cover;
    padding:127px 0 120px;
}
.statistics:before{
    position:absolute;
    content:'';
    background: rgba(75,75,75,.60);
    height:100%;
    width:100%;
    top:0;
    left:0;
}
/* single-ststistics-box */
.single-ststistics-box {
    text-align: center;
    margin-bottom:30px;

}
/* single-ststistics-box */
.statistics-content{
    display: flex;
    justify-content: center;
    color:#fff;
    font-size:60px;
}
.statistics-content span {
    margin-left: 5px;
}
.single-ststistics-box h3{
    color:#fff;
    font-size:24px;
    text-transform:capitalize;
    font-weight: 500;
}

/*-------------------------------------
        10. Blog
--------------------------------------*/
.blog{padding:120px 0 90px;}
.blog-content{margin-top: 80px;}

.single-blog-item{
    margin-bottom: 30px;
    box-shadow: 0 0px 5px rgba(71,71,71,.2);
    -webkit-transition: .3s; 
    -moz-transition:.3s; 
    -ms-transition:.3s; 
    -o-transition:.3s;
    transition: .3s;
}
.single-blog-item-txt {padding:  25px 28px 27px;}
.single-blog-item-txt h2 {font-size: 18px;}
.single-blog-item-txt h2 a {text-transform:  initial;line-height: 1.8;}
.single-blog-item-txt h4 {
    font-size:  14px;
    color:  #8f949d;
    font-weight:  400;
    margin: 12px 0 20px;
}
.single-blog-item-txt h4 a {
    font-size:  14px;
    padding-right:  14px;
    border-right: 1px solid #dde0e4;
    margin-right:  15px;
    text-transform: uppercase;
}

.single-blog-item:hover h2 a {color:#ff545a;}
.single-blog-item:hover{
    box-shadow: 0 10px 20px rgba(21,19,19,.4);
}


/*-------------------------------------
        11. Subscribe
--------------------------------------*/
.subscription{
    background: #f8fafb;
    padding:150px 0;
}
/*subscribe-title*/
 .subscribe-title {margin-bottom: 52px;}

.subscribe-title h2{
    font-size:24px;
    font-weight: 500;
    text-transform: uppercase;
}
.subscribe-title p{
    color:#7b8088;
    font-size:16px;
    font-weight: 500;
    margin-top: 28px;
}/*subscribe-title*/


/*custom-input-group*/
.subscription-input-group {
    position: relative;
    text-align: center;
    max-width: 630px;
    margin:0 auto;
}

.subscription-input-group .subscription-input-form{
    display: inline-block;
    width: 630px;
    height: 60px;
    padding-left:30px;
    font-size: 16px;
    color: #a5adb3;
    -webkit-border-radius:3px;
    -moz-border-radius:3px;
    border-radius:3px;
    border:1px solid #fff;
    box-shadow: 0 0px 10px rgba(21,19,19,.1);
     -webkit-transition:0.3s linear;
    -moz-transition:0.3s linear;
    -o-transition:0.3s linear;
    transition:0.3s linear;
}
.subscription-input-group:hover .subscription-input-form{
    box-shadow: 0 5px 20px rgba(21,19,19,.4);
}
/*custom-input-group*/

/*appsLand-btn*/
.appsLand-btn {
    position: absolute;
    top: 0;
    right: 0;
    background: #ff545a;
    display: inline-block;
    width: 180px;
    height: 60px;
    line-height: 60px;
    text-decoration: none;
    border-top-right-radius:3px;
    border-bottom-right-radius:3px;
    text-transform:capitalize;
    color: #fff;
    font-size: 16px;
    font-weight: 500;
    border: 0;
    overflow: hidden;
    cursor: pointer;
    -webkit-transition:0.3s ease-in-out;
    -moz-transition:0.3s ease-in-out;
    -o-transition:0.3s ease-in-out;
    transition:0.3s ease-in-out;
}
.appsLand-btn:hover, .appsLand-btn:focus, .appsLand-btn:active {
    text-decoration: none;
    outline: none;
}
.appsLand-btn:hover {
    box-shadow:0 5px 10px rgba(71,71,71,.4);
    background: #f43032;
}
/*appsLand-btn*/

/*-------------------------------------
        12. Footer
--------------------------------------*/
.footer-menu {padding: 45px 0;}
.footer-menu .navbar-header{padding:0;}
.footer-menu .navbar-header a.navbar-brand,.footer-menu.footer-menu .navbar-header a.navbar-brand:hover,.footer-menu .navbar-header a.navbar-brand:focus{
    padding:0;
    height: 0;
}
.footer-menu ul.footer-menu-item{text-align: right;}
.footer-menu ul.footer-menu-item li{display: inline-block;}
.footer-menu ul.footer-menu-item li a {
    color: #859098;
    font-size: 14px;
    text-transform: uppercase;
    padding-left: 40px;
    -webkit-transition:0.3s linear;
    -moz-transition:0.3s linear;
    -o-transition:0.3s linear;
    transition:0.3s linear;
}
.footer-menu ul.footer-menu-item li a:hover{color: #f43032;}
.hm-footer-copyright {
    padding: 40px 0;
    border-top: 1px solid #e1e5eb;
}
.hm-footer-copyright p,.hm-footer-copyright p a {
    color: #a5adb3;
    font-size: 14px;
    font-weight: 400;
    text-transform: capitalize;
}
.footer-social {text-align: right;}
.footer-social .fa-phone:before {
    position: relative;
    top: 2px;
}
.footer-social a ,.footer-social span {
    display: inline-block;
    color: #afb4bf;
    font-size: 14px;
    margin-left: 15px;
    -webkit-transition: .3s; 
    -moz-transition:.3s; 
    -ms-transition:.3s; 
    -o-transition:.3s;
    transition: .3s;
}
.footer-social a {
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: #eef2f6;
    text-align: center;
    border-radius: 50%;
}
.footer-social span {margin-right:15px;margin-left: 0;color: #a5adb3;}
.footer-social span:hover{color: #ff545a;}
.footer-social a:hover {background:#ff545a;color: #fff;}

/*===============================
    Scroll Top
===============================*/
#scroll-Top  .return-to-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    display: none;
    width: 40px;
    line-height: 40px;
    height: 40px;
    text-align: center;
    font-size: 20px;
    cursor: pointer;
    color: #fff;
    background:#ff545a;
	border:1px solid #ff545a;
	border-radius:50%;
	-webkit-transition: .5s; 
	-moz-transition:.5s; 
	-ms-transition:.5s; 
	-o-transition:.5s;
    transition: .5s;
	z-index: 2;
}
#scroll-Top  .return-to-top:hover {
    background:#f43032;
	border:1px solid #ff545a;
}
#scroll-Top  .return-to-top i{
    position:relative;
    bottom:0;

}
#scroll-Top  .return-to-top i{
    position: relative;
    animation-name: example;
    animation-direction: alternate;
    animation-iteration-count: infinite;
    animation-duration:1s;
}

/************************************** 
    MEDIA QUERIES 
**************************************/


@media screen and (min-width: 668px) and (max-width: 999px) {
    .welcome-hero-form {
        justify-content: space-between;
        padding: 1em;
    }
}

@media screen and (max-width: 1440px){
    .air-list-itinerary-table {
        width: 100%;
        min-height: 100%;
        top: 0;
        left: 0;
        overflow-x: hidden;
        margin-inline: 0;
    }
    .air-list-itinerary-table table{
        font-size: 13px;
    }
    form#flight-list-details {
        width: 100%;
        min-height: 100%;
        top: 0;
        left: 0;
        overflow-x: hidden;
        margin-inline: 0;
    }
    .hotel-cnt,
    .hotel-detail {
        width: 100%;
        min-height: 100%;
        top: 0;
        left: 0;
        overflow-x: hidden;
        margin-inline: 0;
    }
    .hotel-detail-images {
        grid-template-columns: 2fr 1fr 1fr;
        grid-template-rows: 1fr 1fr 2fr;
    }
    .hotel-img-cnt:nth-child(6),
    .hotel-img-cnt:nth-child(7){
        grid-row: 3/6;
        height: 405px;
    }
    .hotel-img-cnt:nth-child(7){
        grid-column: 2/4;
    }
    .hotel-detail-first {
        margin: 1em;
    }
}

@media screen and (max-width: 1024px){
    .notablet {
        display: none;
    }
    .air-list-itinerary-table table{
        font-size: 12px;
    }
    table#air-list-itinerary .vector {
        overflow: hidden;
        text-overflow: ellipsis;
    }
    table#air-list-itinerary .flight-equip {
        display: none;
    }
    table#air-list-itinerary .fare {
        display: none;
    }
    .hotel-sidebar {
        width: 200px;
        left: 10px;
    }
    img.thumb-img {
        width: 200px;
    }
    .roomstay {
        padding: 7.5px;
        border: none;
    }
    .hotel-rating {
        font-size: 12px;
    }
    .hotel-btn {
        padding: 4px 8px;
    }
    .hotel-title{
        padding-left: 0;
        font-size: 20px;
    }
    .hotel-title span {
        font-size: 16px;
    }
    .hotel-sort-sidebar{
        padding: 5px;
    }
    .hotel-sort-sidebar label{
        font-size: 12px;
    }
    .hotel-sort-sidebar select{
        font-size: 12px;
    }
    .hotel-info span {
        font-size: 12px;
    }
    .hotel-name{
        font-size: 15px;
    }
    .map-cnt {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .room-info p {
        font-size: 11px;
    }
    .room-info span {
        font-size: 10px;
    }
    span.room-date {
        font-size: 10px;
    }
    span.room-total-cost{
        font-size: 16px;
    }
    .hotel-btn {
        font-size: 12px;
    }
    .room-penalties {
        padding: 2px 4px;
        min-width: 100px;
    }
    .room-penalties span:first-child,
    .room-penalties span:last-child{
        display: inline-block;
    }
    .room-penalties span {
        font-size: 10px;
        display: none;
    }
    .hotel-detail-first {
        grid-template-columns: repeat(2, 1fr);
        gap: 1em 3em;
        margin: 1em;
    }
    .room-d-body{
        min-width: 95%;
    }
}

@media screen and (max-width: 768px){
    .container{
        padding-left: 25px;
    }
    .navbar-nav {
        position: relative;
        margin-top: 0;
        margin-left: -15px;
        background: #2e2e2e;
        z-index: 10;
    }
    .welcome-hero-serch-box {
        padding: 15px;
    }
    .welcome-hero-txt h2 {
        font-size: 32px;
        text-align: start;
    }
    .welcome-hero-txt p {
        font-size: 16px;
        text-align: start;
    }
    .single-welcome-hero-form{
        max-width: 100%;
    }
    .single-welcome-hero-form input {
        width: 100%;
    }
    .single-welcome-hero-form.calendar {
        padding-right: 0;
    }
    .flight-data-cnt {
        width: 50%;
        flex-direction: column;
        flex-wrap: wrap;
        row-gap: 1em;
    }    
    .calendar-container input[type="text"] {
        width: 110px;
        margin-inline: 10px;
    }
    .welcome-hero-serch {
        width: 50%;
        padding-left: 12px;
        justify-content: flex-end;
    }
    .welcome-hero-options-form.bottom {
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    .list-topics-content {
        position: relative;
        top: 30px;
        margin-bottom: 40px;
    }
    .list-topics-content ul li {
        width: 48%;
    }
    .single-list-topics-content {
        margin-right: auto;
        margin-left: auto;
    }
    .history-cnt {
        position: fixed;
        top: 40%;
        left: 0;
        transform: none;
    }
    .history-cnt tbody tr > td{
        max-width: 20vw;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .nophone {
        display: none;
    }
    .tablet {
        width: 100%;
    }
    table#air-list-itinerary {
        display: flex;
        flex-direction: column;
        row-gap: 15px;
    }
    tbody.volo tr, tbody.voli tr:last-child {
        box-shadow: none;
    }
    table#air-list-itinerary tbody {
        border: 1px solid #ccc;
        background-color: #f4f4f4;
        box-shadow: 0px 7px 5px #22222233;
        font-size: 12px;
    }
    table#air-list-itinerary tbody::after {
        display: none;
    }
    table#air-list-itinerary tr {
        display: grid;
        width: 70%;
    }
    table#air-list-itinerary tr td {
        display: none;
    }
    table#air-list-itinerary .vector span{
        display: none;
    }
    table#air-list-itinerary .price{
        display: block;
        position: absolute;
        width: 30%;
        top: 25%;
        left: 70%;
    }
    table#air-list-itinerary .price span{
        font-size: 12px;
        overflow-x: hidden;
        text-overflow: ellipsis;
    } 
    table#air-list-itinerary tbody.voli tr,
    table#air-list-itinerary tbody.volo tr {
        display: grid;
        height: fit-content;
        justify-content: center;
        align-items: center;
        grid-template-columns: repeat(8, 1fr);
        grid-template-rows: repeat(3, 25px);
        background-color: transparent;
        border: 1px solid #ccc;
    }

    tbody.volo tr:first-child, 
    tbody.voli tr:first-child {
        border-top-color: transparent !important;
    }
    tbody.volo tr:last-child, 
    tbody.voli tr:last-child {
        box-shadow: none;
        border-top-color: transparent !important;
    }

    table#air-list-itinerary tbody.volo tr td,
    table#air-list-itinerary tbody.voli tr td{
        border: none;
    }

    table#air-list-itinerary .vector {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        grid-area: 1 / 1 / 4 / 3;
        background: #ececec;
    }

    table#air-list-itinerary .from {
        display: grid;
        grid-area: 1 / 3 / 2 / 6;
    }

    table#air-list-itinerary .to {
        display: grid;
        grid-area: 1 / 6 / 2 / 9;
    }

    table#air-list-itinerary .dep {
        display: grid;
        grid-area: 2 / 3 / 3 / 6;
    }

    table#air-list-itinerary .arr {
        display: grid;
        grid-area: 2 / 6 / 3 / 9;
    }

    table#air-list-itinerary .fare {
        display: flex;
        justify-content: center;
        align-items: baseline;
        flex-wrap: nowrap;
        grid-area: 3 / 3 / 4 / 9;
    }
    .content_wrapper table {
        display: table !important;
        transform: translate(-71%, -70%) !important;
    }
    table.table-striped tr {
        display: table-row !important;
    }
    table.table-striped tr td {
        display: table-cell !important;
    }
    .segments {
        width: 100%;
    }
    .segments label{
        font-weight: 600;
        font-size: 12px;
    }
    .segments p {
        font-size: 13px;
        letter-spacing: normal;
    }
    .segments-details{
        grid-template-columns: minmax(60px, 90px) minmax(210px, 240px) minmax(70px, 90px) minmax(110px, 150px) 40px;
    }
    .segments-details .airplane {
        display: none;
    }
    .form-group {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }
    .form-group-docs {
        grid-template-columns: repeat(2, 1fr);
    }
    .call-to-action {
        justify-content: flex-start;
        padding: 1em 0;
    }
    .hotel-header{
        display: block;
    }
    .hotel-sidebar {
        position: fixed;
        display: none;
        top: 20vh;
        left: 10px;
    }
    .roomstay {
        flex-direction: column;
    }
    .room-body {
        height: fit-content;
        flex-direction: column;
    }
    .hotel-info {
        max-width: 70%;
        letter-spacing: 0;
    }
    .hotel-name {
        letter-spacing: initial;
    }
    .room-cnt {
        height: fit-content;
    }
    .room-info {
        width: 100%;
        border-right: 1px solid #ccc;
        border-top-right-radius: 4px;
        border-bottom-left-radius: 0px;
        border-bottom: 2px dashed #ccc;
    }
    .room-cost {
        border-top: none;
        border-top-right-radius: 0px;
        border-left: 1px solid #ccc;
        border-bottom-left-radius: 4px;
        width: 100%;
    }
    .hotel-d-header{
        display: block;
    }
    .hotel-detail-main{
        padding: 1em;
    }
    .hotel-detail-images {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
    }
    .hotel-img-cnt:nth-child(1){
        grid-row: unset;
        grid-column: unset;
        height: 200px;
    }
    .hotel-img-cnt:nth-child(5),
    .hotel-img-cnt:nth-child(6),
    .hotel-img-cnt:nth-child(7){
        display: none;
    }
    .hotel-detail-first {
        grid-template-columns: repeat(1, 1fr);
        gap: 1em 3em;
        margin: 1em;
    }
    .room-d-body {
        width: 100%;
    }
    .room-d-body span {
        font-size: 12px;
    }
    .room-d-info p {
        font-size: 12px;
    }
    .room-d-info span {
        font-size: 11px;
    }
    span.room-total-cost{
        font-size: 14px;
    }
}

@media screen and (max-width: 500px){
    .mobile{
        display: none;
    }
    .loading-pg span {
        font-size: 16px;
    }
    .destination-cnt {
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .single-welcome-hero-form-center {
        margin: -7px auto;
        z-index: 2;
    }
    .flight-data-cnt {
        width: 100%;
    }
    .welcome-hero-serch {
        width: 100%;
        padding: 0;
        justify-content: flex-start;
    }
    .pass {
        width: 100%;
    }
    .pass-age {
        display: none;
    }
    .list-topics-content {
        position: relative;
        top: 30px;
        margin-bottom: 40px;
    }
    .list-topics-content ul li {
        width: 100%;
    }
    .single-list-topics-content {
        margin-right: auto;
        margin-left: auto;
    }
    .hotel-ricerca .hotel-dest {
        max-width: 100%;
    }
    .hotel-ricerca > div  {
        max-width: 50%;
    }
    .hotel-ricerca > div > input {
        width: 100%;
    }
    .hotel-filtri div:first-child {
        width: 100%;
        text-align: start;
    }
    .hotel-navbar i{
        padding: 5px;
    }
    .hotel-title{
        font-size: 16px;    
    }
    .hotel-title span{
        letter-spacing: initial;
        font-size: 14px;
    }
    .hotel-sort-sidebar select {
        min-width: 100px;
    }
    .history-cnt thead tr > td, .hotel-cnt thead tr > td {
        padding: 8px 2px;
        font-size: 12px;
    }
    .history-cnt tbody tr > td, .hotel-cnt tbody tr > td {
        padding: 8px 2px 8px 10px;
        text-align: start;
        font-size: 12px;
    }
    table#air-list-itinerary tbody {
        font-size: 12px;
    }
    .content_wrapper table {
        display: none !important;
    }
    .segments-details {
        grid-template-columns: minmax(60px, 90px) minmax(210px, 240px) minmax(110px, 150px) 40px;
    }
    .segments-details .dur{
        display: none;
    }
    .segments-details p{
        font-size: 12px;
    }
    .form-group {
        grid-template-columns: minmax(150px, 1fr);
    }
    .pass-type {
        margin: 12px 8px;
        font-size: 19px;
    }
    .panel-title.anc-head {
        background: #337ab7;
        padding: 6px 8px 35px 8px;
        font-size: 14px;
    }
    .panel-title.anc-head label{
        width: 100%;
    }
    #panels-temp.panel-body{
        padding: 0;
    }
    .anc-cnt {
        position: relative;
    }
    .left-anc{
        position: absolute;
        min-width: 60px;
        top: 0;
        right: 10px;
        border: 1px solid #ccc;
        border-radius: 4px;
    }
    .left-anc h3{
        font-size: 16px;
        text-align: center;
    } 
    .right-anc{
        width: 100%;
    }
    .single-anc {
        grid-template-columns: 60px 1fr 70px;
        grid-gap: 8px;
        justify-content: space-between;
    }
    .single-anc p{
        font-size: 12px;
    }
    .single-anc span{
        font-size: 14px;
        color: #00c437;
    }
    .hotel-main {
        column-gap: 0;
    }
    .hotel-mobile-map {
        display: block;
    }
    .room-d-body {
        flex-direction: column;
        flex-wrap: wrap;
        align-items: self-start;
    }
    .room-d-cost {
        align-self: flex-end;
    }
    .room-d-discount {
        top: initial;
        right: initial;
        bottom: 2px;
        left: 2px;
    }
}