/* === Icon Font === */
@font-face {
  font-family: "jf-dashboard";
  src: url("/fonts/dashboard/jf-dashboard.12052017.woff") format("woff"),
  url("/fonts/dashboard/jf-dashboard.12052017.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

.jf-icon {
  line-height: 1;
}

.jf-icon:before {
  font-family: "jf-dashboard" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.jf-cashback:before {
  content: "\61";
}
.jf-dashboard:before {
  content: "\62";
}
.jf-savings:before {
  content: "\63";
}
.jf-takeoff:before {
  content: "\64";
}
.jf-user:before {
  content: "\65";
}
.jf-bpg:before {
  content: "\66";
}
.jf-price-tag:before {
  content: "\67";
}
.jf-plane:before {
  content: "\68";
}
.jf-gear:before {
  content: "\69";
}
.jf-shopping-bag:before {
  content: "\6a";
}
.jf-gift:before {
  content: "\6b";
}
.jf-phone:before {
  content: "\6c";
}
.jf-seat:before {
  content: "\6d";
}
.jf-calendar:before {
  content: "\6e";
}
.jf-document:before {
  content: "\6f";
}
.jf-landing:before {
  content: "\70";
}
.jf-shield:before {
  content: "\71";
}
.jf-car:before {
  content: "\72";
}
.jf-building:before {
  content: "\73";
}
.jf-gender-male:before {
  content: "\74";
}
.jf-multiply:before {
  content: "\75";
}
.jf-gender-female:before {
  content: "\76";
}
.jf-add-user:before {
  content: "\77";
}
.jf-add-cc:before {
  content: "\78";
}
.jf-currency-us:before {
  content: "\79";
}
.jf-custom-check:before {
  content: "\7a";
}
.jf-custom-arrow-down:before {
  content: "\41";
}
.jf-custom-arrow-right:before {
  content: "\42";
}
.jf-google-plus:before {
  content: "\43";
}
.jf-google:before {
  content: "\44";
}
.jf-instagram:before {
  content: "\45";
}
.jf-multi-airline:before {
  content: "\46";
}
.jf-custom-arrow-left:before {
  content: "\47";
}
.jf-custom-arrow-up:before {
  content: "\48";
}
.jf-preset:before {
  content: "\4a";
}
.jf-sort:before {
  content: "\49";
}
.jf-notification-active:before {
  content: "\4b";
}
.jf-notification:before {
  content: "\4c";
}
.jf-logo-short:before {
  content: "\4d";
}
.jf-logo:before {
  content: "\4e";
}

.x-icon {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  font-weight: normal;
  font-size: inherit;
}

.x-icon:after {
  content: "\00D7";
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  line-height: 18px;
  font-family: 'Source Sans Pro', sans-serif;
  font-size: 14px;
  color: #333;
  margin-bottom: 84px; /* === has to match footer height (sticky footer) === */

  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

html {
  position: relative;
  min-height: 100%;
  min-width: 300px;
  scroll-behavior: smooth;
}

input,
textarea,
button {
  font-family: inherit;
}

a {
  text-decoration: none;
  color: #0C6AA0;
}

b {
  font-weight: 600;
}

a:hover {
  color: #333;
  text-decoration: none;
}

/* .container{
  margin:0 auto;
  padding:20px 15px;
  min-width:950px;
  max-width:1170px;
} */

.container-myaccount,
.general-container {
  width: 95%;
  max-width: 1170px;
  margin: auto;
}

.container-modal,
.container-modal-box {
  background: #fff;
  text-align: center;
  border-radius: 12px;
  box-shadow: 0 2px  10px rgba(0,0,0,0.2);
}

.container-modal {
  padding: 15px;
  z-index: 999999 !important;
}

.container-modal-box {
  z-index: 25;
  position: relative;
  width: 95%;
  max-width: 500px;
  margin: auto;
  top: 35%;
}

/* MISC */
.mobile-only{
  display:none;
}

.display-table {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.display-table.inverted {
  direction: rtl;
}

.display-table.inverted > .column {
  direction: ltr;
}

.display-table .column {
  display: table-cell;
}

.select-wrapper {
  display: block;
  position: relative;
  text-decoration: none;
  outline: 0;
  overflow: hidden;
  width: 100%;
}

.styled-select {
  opacity: 0;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  min-width: 100%;
  line-height: 100%;
  cursor: pointer;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  filter: alpha(opacity = 0);
}

.select-wrapper .fa,
.select-down-arrow,
.select-first-text {
  display: inline-block;
  vertical-align: middle;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
}

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

.social-login-loading-overlay,
.regular-login-loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255,255,255,0.7);
  z-index: 2;
}

.is-login-form,
.social-login-wrap {
  position: relative;
}

.js-custom-dropdown .selected-item {
  position: relative;
}

.absolute-v-center,
.js-custom-dropdown .fa {
  position: absolute;
  top: 50%;

  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.js-custom-dropdown-list {
  display: none;
}

.is-round-icon {
  border: 1px solid;
  text-align: center;

  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.is-main-button {
  display: block;
  width: 100%;
  padding: 0 25px;
  text-transform: uppercase;
  cursor: pointer;

  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.is-main-button.regular {
  height: 48px;
  font-size: 16px;
  font-weight: 900;
}

.is-main-button.small {
  font-size: 12px;
  height: 40px;
  font-weight: 700;
}

button.is-main-button {
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

a.is-main-button {
  text-align: center;
  line-height: 48px;
}




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

  #modal_box:not(.modal-fare-increase):not(.modal-alternative-flights) .container-modal {
      width: 90%;
      max-width: 550px;
      margin: auto;
  }

  .modal_box {
      margin: 0 auto;
      width: 100% !important;
  }

  .mobile-hide {
      display:none;
  }

  #modal_box:not(.modal-fare-increase):not(.modal-alternative-flights) {
      width:100% !important;
      left:auto !important;
      margin-left:0 !important;
  }

  input {
      -webkit-appearance: none;
      border-radius: 0;
  }

  input[type=radio] {
      -webkit-appearance: radio;
      border: initial;
      background-color: initial;
  }

  input[type=checkbox] {
      -webkit-appearance: checkbox;
  }

}

@media only screen
and (min-device-width : 768px) and (max-device-width : 1024px)  {

  input[type=radio] {
      -webkit-appearance: radio;
      border: initial;
      background-color: initial;
      border-top-left-radius: 6px;
      border-top-right-radius: 6px;
      border-bottom-right-radius: 6px;
      border-bottom-left-radius: 6px;
      width: 13px;
      height: 13px;
      border: 1px #666 solid;
  }

}
/*
* jQuery UI CSS Framework 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Theming/API
*/

/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { border: 0 none; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:before, .ui-helper-clearfix:after { content: ""; display: table; }
.ui-helper-clearfix:after { clear: both; }
.ui-helper-clearfix { zoom: 1; }
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }


/* Interaction Cues
----------------------------------*/
.ui-state-disabled { cursor: default !important; }


/* Icons
----------------------------------*/

/* states and images */
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }


/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }


/*
* jQuery UI CSS Framework 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Theming/API
*
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Trebuchet%20MS,%20Tahoma,%20Verdana,%20Arial,%20sans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=12_gloss_wave.png&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=03_highlight_soft.png&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=02_glass.png&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=03_highlight_soft.png&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=08_diagonals_thick.png&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=08_diagonals_thick.png&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=01_flat.png&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px
*/


/* Component containers
----------------------------------*/
.ui-widget 					{font-size:14px;}

ul.ui-widget > li {
  font-size:14px;
}

.ui-widget .ui-widget 		{font-size:1em;}
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {font-size:1em;}
.ui-widget-content 			{border:0px solid #dddddd;background:#f5f5f5;color:#333333;}
.ui-widget-content a {color:#fff;}

/* Interaction states
----------------------------------*/

.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited {color:#1c94c4;text-decoration:none;}
.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { /* background:#0F0;font-weight:bold;color:#fff;box-shadow:inset 0px 0px 2px 1px rgba(0,0,0,0.2); */}
.ui-state-hover a, .ui-state-hover a:hover {color:#333;text-decoration:none;cursor:pointer;}
.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {color:#eb8f00;text-decoration:none;}
.ui-widget :active {outline:none;}

/* Interaction Cues
----------------------------------*/

.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #b81900 url(https://www.flighthub.com/images/jquery_ui/ui-bg_diagonals-thick_18_b81900_40x40.png) 50% 50% repeat; color: #ffffff; }
.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #ffffff; }
.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #ffffff; }
.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
.ui-priority-secondary, .ui-widget-content .ui-priority-secondary,  .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }

/* Misc visuals
----------------------------------*/

ul.ui-corner-all {-webkit-border-radius: 4px;-moz-border-radius: 4px;border-radius: 4px;}

/* Overlays */
.ui-widget-overlay { background: #666666; opacity: .30;filter:Alpha(Opacity=50); }
.ui-widget-shadow { margin: -5px 0 0 -5px; padding: 5px; background: #000000 url(https://www.flighthub.com/images/jquery_ui/ui-bg_flat_10_000000_40x100.png) 50% 50% repeat-x; opacity: .20;filter:Alpha(Opacity=20); -moz-border-radius: 5px; -khtml-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }/*
* jQuery UI Resizable 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Resizable#theming
*/
.ui-resizable { position: relative;}
.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block; }
.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/*
* jQuery UI Selectable 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Selectable#theming
*/
.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; }
/*
* jQuery UI Accordion 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Accordion#theming
*/
/* IE/Win - Fix animation bug - #4615 */
.ui-accordion { width: 100%; }
.ui-accordion .ui-accordion-header { cursor: pointer; position: relative; margin-top: 1px; zoom: 1; }
.ui-accordion .ui-accordion-li-fix { display: inline; }
.ui-accordion .ui-accordion-header-active { border-bottom: 0 !important; }
.ui-accordion .ui-accordion-header a { display: block; font-size: 1em; padding: .5em .5em .5em .7em; }
.ui-accordion-icons .ui-accordion-header a { padding-left: 2.2em; }
.ui-accordion .ui-accordion-header .ui-icon { position: absolute; left: .5em; top: 50%; margin-top: -8px; }
.ui-accordion .ui-accordion-content { padding: 1em 2.2em; border-top: 0; margin-top: -2px; position: relative; top: 1px; margin-bottom: 2px; overflow: auto; display: none; zoom: 1; }
.ui-accordion .ui-accordion-content-active { display: block; }
/*
* jQuery UI Button 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Button#theming
*/
.ui-button { display: inline-block; position: relative; padding: 0; margin-right: .1em; text-decoration: none !important; cursor: pointer; text-align: center; zoom: 1; overflow: visible; } /* the overflow property removes extra width in IE */
.ui-button-icon-only { width: 2.2em; } /* to make room for the icon, a width needs to be set here */
button.ui-button-icon-only { width: 2.4em; } /* button elements seem to need a little more width */
.ui-button-icons-only { width: 3.4em; }
button.ui-button-icons-only { width: 3.7em; }

/*button text element */
.ui-button .ui-button-text { display: block; line-height: 1.4;  }
.ui-button-text-only .ui-button-text { padding: .4em 1em; }
.ui-button-icon-only .ui-button-text, .ui-button-icons-only .ui-button-text { padding: .4em; text-indent: -9999999px; }
.ui-button-text-icon-primary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 1em .4em 2.1em; }
.ui-button-text-icon-secondary .ui-button-text, .ui-button-text-icons .ui-button-text { padding: .4em 2.1em .4em 1em; }
.ui-button-text-icons .ui-button-text { padding-left: 2.1em; padding-right: 2.1em; }
/* no icon support for input elements, provide padding by default */
input.ui-button { padding: .4em 1em; }

/*button icon element(s) */
.ui-button-icon-only .ui-icon, .ui-button-text-icon-primary .ui-icon, .ui-button-text-icon-secondary .ui-icon, .ui-button-text-icons .ui-icon, .ui-button-icons-only .ui-icon { position: absolute; top: 50%; margin-top: -8px; }
.ui-button-icon-only .ui-icon { left: 50%; margin-left: -8px; }
.ui-button-text-icon-primary .ui-button-icon-primary, .ui-button-text-icons .ui-button-icon-primary, .ui-button-icons-only .ui-button-icon-primary { left: .5em; }
.ui-button-text-icon-secondary .ui-button-icon-secondary, .ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }
.ui-button-text-icons .ui-button-icon-secondary, .ui-button-icons-only .ui-button-icon-secondary { right: .5em; }

/*button sets*/
.ui-buttonset { margin-right: 7px; }
.ui-buttonset .ui-button { margin-left: 0; margin-right: -.3em; }

/* workarounds */
button.ui-button::-moz-focus-inner { border: 0; padding: 0; } /* reset extra padding in Firefox */
/*
* jQuery UI Dialog 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Dialog#theming
*/
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; border:1px solid #555;background:#fff !important;}
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative;  }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }
/*
* jQuery UI Slider 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Slider#theming
*/

.ui-slider 								{position: relative;text-align:left;cursor:pointer;width:195px;}
.ui-slider .ui-slider-handle 			{position:absolute;z-index:2;cursor:default;background:transparent url("https://www.flighthub.com/images/slider-handlex2.png") no-repeat;cursor:pointer;width:24px;height:16px;-webkit-background-size:24px 16px;background-size:24px 16px;}
.ui-slider .ui-slider-range 			{position:absolute;z-index:1;background:#ccc;border-top:1px solid #ccc;border-bottom:1px solid #ccc;height:7px;font-size:.7em;display:block;border:0;background-position:0 0;}

.ui-slider-horizontal 					{margin:10px;padding:3px;background:#737373;box-shadow:inset 1px 1px 2px #000;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;position:relative;}
.ui-slider-horizontal .ui-slider-handle {top:-.45em;margin-left:-.6em;}
.ui-slider-horizontal .ui-slider-range 	{top:0;height:100%;}
.ui-slider-horizontal .ui-slider-range-min {left:0;}
.ui-slider-horizontal .ui-slider-range-max {right:0;}

.ui-slider-vertical 					{width:.8em;height:100px;}
.ui-slider-vertical .ui-slider-handle 	{left:-.3em;margin-left:0;margin-bottom:-.6em;}
.ui-slider-vertical .ui-slider-range 	{left:0;width:100%;}
.ui-slider-vertical .ui-slider-range-min {bottom:0;}
.ui-slider-vertical .ui-slider-range-max {top:0;}

/*
* jQuery UI Tabs 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Tabs#theming
*/
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
.ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
.ui-tabs .ui-tabs-hide { display: none !important; }
/*
* jQuery UI Datepicker 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Datepicker#theming
*/
.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; }

.ui-datepicker select.ui-datepicker-month-year {width: 100%;}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year { width: 49%;}


.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; }
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; }

.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; }
.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; }
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; }
.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; }
.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; }

/* RTL support */
.ui-datepicker-rtl { direction: rtl; }
.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; }
.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; }
.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; }
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; }
.ui-datepicker-rtl .ui-datepicker-group { float:right; }
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; }
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; }

/*
* jQuery UI Progressbar 1.8.17
*
* Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT or GPL Version 2 licenses.
* http://jquery.org/license
*
* http://docs.jquery.com/UI/Progressbar#theming
*/
.ui-progressbar {
  height: 2em;
  text-align: left;
  overflow: hidden;
}

.ui-progressbar .ui-progressbar-value {
  margin: -1px;
  height: 100%;
}

/* === AUTOCOMPLETE === */
.ui-widget-content.ui-autocomplete a {
  color: inherit;
}

.ui-widget-header {
  background: #455D88;
  color: #FFFFFF;
  font-weight: bold;
  width: auto;
  font-size: 15px;
}

.ui-autocomplete {
  position: absolute;
  cursor: default;
  background: #fff;
  z-index: 999999;
  overflow: hidden;

  -webkit-border-radius: 0 0 3px 3px;
  -moz-border-radius: 0 0 3px 3px;
  border-radius: 0 0 3px 3px;

  -webkit-box-shadow: 0 2px 3px rgba(0,0,0,0.1);
  -moz-box-shadow: 0 2px 3px rgba(0,0,0,0.1);
  box-shadow: 0 2px 3px rgba(0,0,0,0.1);
}

.ui-menu {
  list-style:none;
  padding: 0px;
  margin: 0;
  display:block;
  float: left;
}

.ui-menu .ui-menu {
  margin-top: -3px;
}

.ui-menu .ui-menu-item {
  cursor: pointer;
  display: block;
  padding: 14px 18px;
  line-height: 1.2;
}

.ui-menu .ui-menu-item a {
  display: block;
}

.ui-menu .ui-menu-item:hover,
.ui-menu-item.ui-state-focus {
  background: #dde3ef;
  color: #2f4265;
}

.ui-menu .ui-menu-item a.ui-state-hover,
.ui-menu .ui-menu-item a.ui-state-active {
  font-weight: normal;
  margin: 0;
  background-color:#fff;
  color:#444;

  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}

/* === DATEPICKER === */
.ui-datepicker {
  display: none;
  width: 300px;
  z-index: 1500 !important;
  border: 0;
  overflow: hidden;
  padding: 0 0 10px 0;
  background: #ffffff;

  box-shadow: 0 2px 10px rgba(0,0,0,0.2);
  border-radius: 2px;
}

.ui-datepicker.ui-datepicker-multi {
  width: 600px !important;
}

.ui-datepicker .ui-datepicker-header {
  position: relative;
  background: #fff;
  color: #444;
  border-bottom: 1px dashed #e5e5e5;
  margin-bottom: 10px;
  padding: 5px 35px;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 50%;
  width: 30px;
  height: 30px;
  cursor: pointer;
  margin-top: -15px;
  line-height: 30px;
  text-align: center;
  color: #444 !important;
}

.ui-datepicker .ui-datepicker-prev:not(.ui-state-disabled):hover,
.ui-datepicker .ui-datepicker-next:not(.ui-state-disabled):hover {
  background: #f0f0f0;
}

.ui-datepicker .ui-datepicker-prev {
  left: 0;
}

.ui-datepicker .ui-datepicker-next {
  right: 0;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  font-family: FontAwesome;
  text-indent: 0;
  display: block;
  height: 100%;
  width: 100%;
  margin: auto;
  font-size: 0;
  background: none!important;
  text-align: center;
  vertical-align: middle;
}

.ui-datepicker .ui-datepicker-prev span:after,
.ui-datepicker .ui-datepicker-next span:after {
  font-size: 14px;
}

.ui-datepicker .ui-icon.ui-icon-circle-triangle-w:after {
  content: '\f104';
}

.ui-datepicker .ui-icon.ui-icon-circle-triangle-e:after {
  content: '\f105';
}

.ui-datepicker .ui-datepicker-title {
  line-height: 1.8em;
  text-align: center;
}

.ui-datepicker table {
  width: 100%;
  margin: 0;
  table-layout: fixed;
}

.ui-datepicker th {
  padding: 7px 0;
  text-align: center;
  font-weight: 600;
  border: 0;
  color: #333;
}

.ui-datepicker td {
  line-height: 1;
  text-align: center;
  background: #fff;
}

/* calendar grid */
.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  color: #444;
  line-height: 34px;
  font-weight: 400;
  font-size: 15px;
  padding-bottom: 6px;
}

/* with multiple calendars */
.ui-datepicker-multi .ui-datepicker-group {
  float: left;
  padding: 5px 10px;
}

.ui-datepicker-group {
  padding: 4px;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

/* Date-picker styling additions */
.ui-datepicker td a {
  position: relative;
}

.ui-datepicker .money-val {
  position: absolute;
  bottom: 3px;
  left: 0;
  right: 0;
  line-height: 1;
  font-size: 11px;
  font-weight: 600;
}

.money-val {
  color: #999;
}

.money-val.best-price {
  color: #64A04D;
}

.money-val.worst-price {
  color: #cc5b47;
}

.ui-state-highlight,
.ui-datepicker .ui-state-highlight {
  font-weight: 700;
  color: #333;
}

.ui-datepicker .ui-state-active,
.ui-datepicker .ui-state-active .money-val {
  color: #ffffff !important;
}

.ui-datepicker .ui-datepicker-today .money-val {
  color: #333;
}

.ui-datepicker a:hover .money-val {
  color: #455D88;
}

.ui-datepicker-calendar td:not(.ui-datepicker-unselectable) a:hover,
.ui-datepicker-calendar td:not(.ui-state-disabled) a:hover {
  color: #455D88;
  background: #f5f5f5;
  font-weight: 700 !important;
}

.ui-datepicker .ui-state-active {
  background: #64A04D !important;
}

.ui-datepicker .ui-state-active-other {
  background: #b2e0a1 !important;
  font-weight: 700 !important;
}

.ui-datepicker .ui-state-active {
  font-weight: 700 !important;
}

.ui-datepicker-current-day .money-val {
  color: #333;
}

.ui-datepicker td.ui-state-empty a {
  visibility: hidden;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled {
  opacity: .7;
  filter: Alpha(Opacity=70);
}

.ui-widget-header .ui-state-disabled {
  opacity: .35;
  filter: Alpha(Opacity=35);
}





/* xp overrides */

.ui-datepicker.instant_search .ui-state-active {
  background: #455D88 !important;
}

.ui-datepicker.instant_search .ui-datepicker-prev,
.ui-datepicker.instant_search .ui-datepicker-next {
  top: 40%;
  width: 25px;
  height: 25px;
  margin-top: -12px;
  line-height: 25px;
  border-radius: 50%;
}

.ui-datepicker.instant_search .ui-datepicker-prev:not(.ui-state-disabled):hover,
.ui-datepicker.instant_search .ui-datepicker-next:not(.ui-state-disabled):hover {
  background: #000;
  color: white !important;
}

.ui-datepicker.instant_search .ui-icon.ui-icon-circle-triangle-w:after {
  content: '\f060';
}

.ui-datepicker.instant_search  .ui-icon.ui-icon-circle-triangle-e:after {
  content: '\f061';
}

.ui-datepicker.instant_search th {
  padding: 7px 0;
  text-align: center;
  font-weight: 400;
  border: 0;
  color: #777;
}

/* calendar grid */
.ui-datepicker.instant_search td span,
.ui-datepicker.instant_search td a {
  margin: 1px;
  padding-bottom: 0;
  display: block;
  color: #444;
  line-height: 34px;
  font-weight: 400;
  font-size: 15px;
  border-radius: 3px;
  transition: all 0.3s;
}

.ui-datepicker.instant_search .ui-widget-header {
  font-weight: 400;
  font-size: 14px;
}

.ui-datepicker.instant_search .ui-datepicker-calendar td:not(.ui-datepicker-unselectable) a:hover,
.ui-datepicker.instant_search .ui-datepicker-calendar td:not(.ui-state-disabled) a:hover {
  color: #222;
  font-weight: 700 !important;
}

/* priced calendar */
.ui-datepicker.priced_calendar td span,
.ui-datepicker.priced_calendar td a {
  margin: 1px;
  padding-bottom: 0;
  display: block;
  color: #444;
  line-height: 34px;
  font-weight: 400;
  font-size: 15px;
  border-radius: 3px;
  transition: all 0.3s, border 0s;
}

.ui-datepicker .ui-state-default.ui-state-selection {
  background-color: #d0dbe3 !important;
  margin-inline: 0 !important;
  border-radius: 0 !important;
  border-inline: 1px solid #d0dbe3 !important;
  color: #455D88 !important;
}
.fhub .ui-datepicker .ui-state-default.ui-state-selection {
  background-color: #c0e5f5 !important;
  border-inline: 1px solid #c0e5f5 !important;
  color: #444 !important;
}

.ui-datepicker.priced_calendar tr td.ui-datepicker-selection:first-of-type a {
  border-radius: 3px 0 0 3px !important;
}

.ui-datepicker.priced_calendar tr td.ui-datepicker-selection:last-of-type a {
  border-radius: 0 3px 3px 0 !important;
}

.ui-datepicker.priced_calendar tr td.ui-datepicker-selection-start a {
  border-right-color: #d0dbe3 !important;
}

.ui-datepicker.priced_calendar tr td.ui-datepicker-selection-end a {
  border-left-color: #d0dbe3 !important;
}

.ui-datepicker.priced_calendar .date-priced.date-priced-cheap,
.ui-datepicker.priced_calendar .date-priced.date-priced-cheap:hover{
  background-color: #9ECE7B;
  color: white;
}

.ui-datepicker.priced_calendar .date-priced.date-priced-average,
.ui-datepicker.priced_calendar .date-priced.date-priced-average:hover{
  background-color: #EEC53E;
  color: white;
}

.ui-datepicker.priced_calendar .date-priced.date-priced-expensive,
.ui-datepicker.priced_calendar .date-priced.date-priced-expensive:hover{
  background-color: #D55B53;
  color: white;
}

.alternate-datepicker .ui-datepicker.priced_calendar .date-priced.date-priced-cheap,
.alternate-datepicker .ui-datepicker.priced_calendar .date-priced.date-priced-cheap:hover{
  background-color: rgb(168, 243, 204);
  color: #333333;
}

.alternate-datepicker .ui-datepicker.priced_calendar .date-priced.date-priced-average,
.alternate-datepicker .ui-datepicker.priced_calendar .date-priced.date-priced-average:hover{
  background-color: rgb(255, 230, 196);
  color: #333333;
}

.alternate-datepicker .ui-datepicker.priced_calendar .date-priced.date-priced-expensive,
.alternate-datepicker .ui-datepicker.priced_calendar .date-priced.date-priced-expensive:hover{
  background-color: rgb(255, 206, 205);
  color: #333333;
}

.ui-datepicker.priced_calendar .date-priced.date-priced-unknown,
.ui-datepicker.priced_calendar .date-priced.date-priced-unknown:hover{
  background-color: #DFDFDF;
}

.ui-datepicker.priced_calendar .ui-state-disabled.percentile-low,
.ui-datepicker.priced_calendar .ui-state-disabled.percentile-medium,
.ui-datepicker.priced_calendar .ui-state-disabled.percentile-high {
  opacity: 1;
}

.ui-datepicker.priced_calendar .ui-state-disabled .date-priced {
  opacity: 0.8;
  filter: alpha(opacity=8);
}

.ui-datepicker.priced_calendar .ui-datepicker-calendar .date-priced,
.ui-datepicker.priced_calendar .ui-datepicker-calendar .ui-state-default.ui-state-active {
  margin: 0;
  border: 2px solid white;
  box-sizing: border-box;
  border-radius: 4px;
}

.ui-datepicker.priced_calendar .ui-datepicker-calendar td:not(.ui-datepicker-unselectable) .date-priced:hover,
.ui-datepicker.priced_calendar .ui-datepicker-calendar td:not(.ui-state-disabled) .date-priced:hover {
  font-weight: 700 !important;
}

.ui-datepicker.priced_calendar .ui-state-default.ui-state-active,
.ui-datepicker.priced_calendar .ui-state-default.ui-state-active-other {
  margin: 0;
  border: 2px solid white;
  background-color: #455D88 !important;
  color: #fff !important;
}

.fhub .ui-datepicker.priced_calendar .ui-state-default.ui-state-active,
.fhub .ui-datepicker.priced_calendar .ui-state-default.ui-state-active-other {
  background-color: #00adec !important;
}

.ui-datepicker.priced_calendar legend .item {
  padding: .25em 1em;
  color: white;
  font-weight: bold;
  border-radius: 3px;
  text-transform: uppercase;
}

.ui-datepicker.priced_calendar legend .disclaimer {
  padding-inline: 1em;
}

.ui-datepicker.priced_calendar legend .disclaimer::before {
  content: '\f05a';
  font-family: 'FontAwesome', sans-serif;
  padding-inline: 5px;
}

.ui-datepicker.priced_calendar legend .item.deal {
  background-color: #9ECE7B;
  color: white;
}

.ui-datepicker.priced_calendar legend .item.avg {
  background-color: #EEC53E;
  color: white;
}

.ui-datepicker.priced_calendar legend .item.pricey {
  background-color: #D55B53;
  color: white;
}

.alternate-datepicker .ui-datepicker.priced_calendar legend .item.deal {
  background-color: rgb(168, 243, 204);
  color: #333333;
}

.alternate-datepicker .ui-datepicker.priced_calendar legend .item.avg {
  background-color: rgb(255, 230, 196);
  color: #333333;
}

.alternate-datepicker .ui-datepicker.priced_calendar legend .item.pricey {
  background-color: rgb(255, 206, 205);
  color: #333333;
}

legend ~ .datepicker__menu {
  margin-top: 10px;
  border-top: 1px solid #dedede;
  padding-top: 10px !important;
}
.ui-datepicker .datepicker__menu {
  display: flex;
  padding: 15px;
  align-items: center;
  margin-bottom: -10px;
  background: #f9f9f9;
}

.ui-datepicker .datepicker__menu .datepicker__button-clear {
  border: none;
  padding: .25em .5em;
  font-size: 15px;
  background: #455D88;
  font-weight: 700;
  color: #fff;
  border-radius: 2px;
}
.ui-datepicker .datepicker__menu .datepicker__button-clear:hover {
  cursor: pointer;
  background: #3c4d6c;
}

.fhub .ui-datepicker .datepicker__menu .datepicker__button-clear {
  background: #00adec;
}
.fhub .ui-datepicker .datepicker__menu .datepicker__button-clear:hover {
  background: #12a2e2;
}
.site-header {
  padding: 10px 0;
  background: #fff;
  position: relative;
  z-index: 22;

  -webkit-box-shadow: 0 1px 5px rgba(0,0,0,0.1);
  -moz-box-shadow: 0 1px 5px rgba(0,0,0,0.1);
  box-shadow: 0 1px 5px rgba(0,0,0,0.1);
}

.header-inner-right {
  float: right;
  margin-top: 3px;
}

.nav-main-menu .item {
  font-size: 12px;
  margin: 0 5px;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}

.nav-main-menu .item > a {
  font-weight: 600;
  text-transform: uppercase;
  color: #333;
  padding: 0 5px;
}

.nav-main-menu a {
  display: block;
}

.nav-main-menu .item > a:hover {
  color: #0C6AA0;
}

.nav-main-menu .item .fa {
  font-size: 14px;
  vertical-align: middle;
  color: #666;
}

.nav-main-menu .item.active .fa-angle-down:before {
  content: "\f106";
}

.nav-main-menu .item span {
  vertical-align: middle;
}

.site-header .menu-phone > a {
  color: #0C6AA0;
  font-size: 14px;
  display: inline-block;
}

.site-header .menu-phone > a:hover {
  color: #2887BD;
}

.country-flag {
  line-height: 1;
}

.country-flag .flag-icon {
  display: inline-block;
  vertical-align: middle;
  background-image: url("/images/sprites/lang-flag.png");
  width: 17px;
  height: 11px;
  margin-right: 5px;
}

.country-flag .flag-icon.us {
  background-position: center bottom;
}

.country-flag .flag-icon.ca {
  background-position: center top;
}

.header-v1 .country-flag .flag-icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
}

.app-back-button {
  width: 40px;
  height: 45px;
  position: absolute;
  top: 0;
  left: 0;
  text-align: center;
  line-height: 44px;
  font-size: 21px;
  color: #5F5F5F;
}

.menu-toggle:not(.v2) {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  height: 44px;
  width: 50px;
}

.menu-toggle:not(.v2) span {
  display: block;
  width: 18px;
  height: 1px;
  margin: 3px auto;
  background: #555555;
}

.menu-toggle:not(.v2) span:first-child {
  margin-top: 18px;
}

.site-logo {
  width: 123px;
  height: 28px;
  display: block;
  background-image: url("/images/logo/logo-v3.png");
  background-image: -webkit-linear-gradient(transparent, transparent), url("/images/logo/logo-v3.svg");
  background-image: linear-gradient(transparent, transparent), url("/images/logo/logo-v3.svg");
  background-position: 0 center;
  background-repeat: no-repeat;
}

.site-logo.white {
  background-image: url("/images/logo/jf-logo-white.png");
  background-image: -webkit-linear-gradient(transparent, transparent), url("/images/logo/jf-logo-white.svg");
  background-image: linear-gradient(transparent, transparent), url("/images/logo/jf-logo-white.svg");
}

.site-header .site-logo {
  float: left;
}

.menu-phone.mobile {
  display: none;
  float: right;
  font-size: 14px;
  font-weight: bold;
  margin: 10px 15px 0 0;
  color: #00AEEF;
}

.submenu-element:not(.v2) {
  display: none;
  margin-top: 10px;
  position: absolute;
  background: #ffffff;
  border: 1px solid #dcdcdc;
  width: 150px;
  left: 50%;
  margin-left: -60px;

  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;

  -webkit-box-shadow: 0px 5px 5px rgba(0,0,0,0.1);
  -moz-box-shadow: 0px 5px 5px rgba(0,0,0,0.1);
  box-shadow: 0px 5px 5px rgba(0,0,0,0.1);
}

.submenu-element:not(.v2):after,
.submenu-element:not(.v2):before {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.submenu-element:not(.v2):after {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: #ffffff;
  border-width: 6px;
  margin-left: -5px;
}

.submenu-element:not(.v2):before {
  border-color: rgba(51, 51, 51, 0);
  border-bottom-color: #C1C1C1;
  border-width: 7px;
  margin-left: -6px;
}

.sub-menu .sub-item {
  border-bottom: 1px solid #dcdcdc;
}

.sub-menu .sub-item:last-child{
  border-bottom: 0;
}

.sub-menu .sub-item a {
  padding: 10px 15px;
  display: block;
  color: #333;
}

.not-touch .sub-menu .sub-item a:hover {
  background: #0C6AA0;
  color: #fff;
}

.sub-menu .sub-item.sub-menu-title a {
  padding: 5px;
  text-align: center;
  font-size: 12px;
  color: #999;
  pointer-events: none;
}

.print-logo {
  display: none;
  float: left;
}

.site-warning {
  padding: 12px 0;
  background: #EFF5FF;
  font-size: 14px;
  font-weight: 600;
  line-height: 14px;
  color: #455D88;
  text-align: center;
}

.site-warning a {
  color: #455D88;
  font-weight: 900;
  text-decoration: underline;
}

.site-warning .fa {
  color: #455D88;
  margin-right: 2px;
}

.site-warning span {
  vertical-align: middle;
}

.nav-main-menu .item.show-responsive {
  display: none;
}

.app-support-phone .phone-title {
  font-size: 12px;
  text-transform: none;
}

.app-support-phone .phone-number {
  font-size: 16px;
}

.app-support-phone .phone-number .fa {
  font-size: 18px;
  margin: 1px 3px 0 0px;
  color: #444;
}

.app-support-phone .phone-number .fa,
.app-support-phone .phone-number span {
  display: inline-block;
  vertical-align: middle;
}

/* === */




@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {

  .country-flag .flag-icon{
      background-image: url("/images/sprites/lang-flag-2x.png");
      background-size: 17px 22px;
  }

}




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

  .site-header {
      height: 44px;
  }

  .site-header .site-logo  {
      background-size: contain;
      margin: -1px auto 0 auto;
      float: none;
  }

  .menu-toggle:not(.v2) {
      display: block;
  }

  .header-inner-right {
      position: fixed;
      top: 0;
      height: 100%;
      width: 250px;
      right: -250px;
      background: #F7F7F7;
      padding: 0;
      margin: 0;
      overflow-y: auto;
      z-index: 22;
  }

  .is-not-android .header-inner-right {
      -webkit-transition: transform 0.4s;
      -moz-transition: transform 0.4s;
      transition: transform 0.4s;
  }

  .header-inner-right.open {
      -webkit-box-shadow:  -5px 0px 10px rgba(0,0,0,0.1);
      -moz-box-shadow:  -5px 0px 10px rgba(0,0,0,0.1);
      box-shadow:  -5px 0px 10px rgba(0,0,0,0.1);
  }

  .is-not-android .header-inner-right.open {
      -webkit-transform: translate3d(-100%,0,0);
      -moz-transform: translate3d(-100%,0,0);
      transform: translate3d(-100%,0,0);
      -ms-transform: translateX(-100%);
  }

  .is-android .header-inner-right.open {
      right: 0;
  }

  .nav-main-menu .item {
      font-size: 14px;
      display: block;
      padding: 0;
      margin: 0;
  }

  .nav-main-menu .item.currency-select {
      padding: 0;
  }

  .nav-main-menu .item.menu-phone {
      display: none;
  }

  .header-inner-right .currency-select > .country-flag {
      display: none;
  }

  .site-header .submenu-element:not(.v2) {
      position: relative;
      background: none;
      border: 0;
      width: auto;
      left: 0;
      margin: 0;

      -webkit-box-shadow: none;
      -moz-box-shadow: none;
      box-shadow: none;
  }

  .site-header  .currency-select .submenu-element:not(.v2) {
      display: block!important;
  }

  .currency-select .submenu-element:not(.v2):after,
  .currency-select .submenu-element:not(.v2):before,
  .submenu-element:not(.v2):after,
  .submenu-element:not(.v2):before {
      display: none !important;
  }

  .currency-select .sub-menu .sub-item,
  .sub-menu .sub-item {
      border: 0;
  }

  .sub-menu .sub-item.sub-menu-title {
      text-align: left;
      font-size: 14px;
      color: #666;
  }

  .sub-menu .sub-item.sub-menu-title a,
  .sub-menu .sub-item a {
      font-size: 14px;
      color: #666;
  }

  .sub-menu .sub-item a {
      color: #444444;
  }

  .sub-menu .sub-item.sub-menu-title a,
  .sub-menu .sub-item a,
  .nav-main-menu .item a {
      padding: 10px 15px;
  }

  .nav-main-menu .item > a {
      color: #444;
      border-bottom: 1px dashed #e6e6e6;
  }

  .sub-menu .sub-item a.active {
      font-weight: 600;
      color: #333;
  }

  .sub-menu .sub-item a.active:hover {
      color: #fff;
  }

  .sub-menu .sub-item.sub-menu-title a {
      text-align: left;
  }

  .sub-menu.my-account-nav {
      background: #E6E6E6;
      padding: 8px 5px 12px 5px;
  }

  .nav-main-menu .item.hide-responsive {
      display: none !important;
  }

  .nav-main-menu .item.show-responsive {
      display: block!important;
  }

  .menu-phone.mobile {
      display: none;
  }

  .menu-toggle:not(.v2) {
      display: block;
  }

  .is-mobile-app.checkout.billing .app-back-button,
  .is-mobile-app.flight.search .app-back-button {
      display: block;
  }

}




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

  .menu-toggle:not(.v2) {
      margin-top: 0px;
  }

}




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

  .site-header {
      padding: 5px 0;
  }

  .site-header .site-logo {
      width: 100px;
      height: 25px;
      margin: 5px auto 0 auto;
  }

}
/* ==== Header ==== */
.jfly-header {
  line-height: 1.2;
  position: relative;
}

/* Mobile menu overlay */
.mobile-menu-overlay {
  cursor: pointer;
  display: none;
  z-index: 19;
}

.mobile-menu-overlay {
  background: rgba(255, 255, 255, 0.85);
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.mobile-menu-overlay:before {
  content: '\00D7';
  font-size: 35px;
  display: inline-block;
  line-height: 18px;
  vertical-align: top;
  position: absolute;
  top: 15px;
  left: 15px;
  color: #999;
}

/* Logo */
.site-logo.white {
  /* images/logo/jf-logo-white.svg */
  background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMTIzcHgiIGhlaWdodD0iMjhweCIgdmlld0JveD0iMCAwIDEyMyAyOCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTIzIDI4OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj4uc3Qwe2ZpbGw6I0ZGRkZGRjt9PC9zdHlsZT48Zz48cmVjdCB4PSIyLjkiIHk9IjEuMiIgY2xhc3M9InN0MCIgd2lkdGg9IjQuNSIgaGVpZ2h0PSI0LjIiLz48Zz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMi45LDIxLjZjMC0wLjYsMC0xNC4yLDAtMTQuMmg0LjV2MTQuMmMwLDEuNy0wLjEsMy45LTEuNCw1LjFDNC41LDI4LDIuNCwyOCwxLjksMjhDMC42LDI4LDAsMjcuOCwwLDI3Ljh2LTRjMCwwLDEuOSwwLjYsMi42LTAuNUMyLjksMjIuOSwyLjksMjIuMiwyLjksMjEuNnoiLz48L2c+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTkuMiw3LjRoNC4zYzAsMCwwLDYuNiwwLDcuNGMwLDEuNiwwLjMsMy4zLDIuNiwzLjNjMi4yLDAsMi40LTIuNCwyLjQtMi43czAtOCwwLThIMjN2MTQuMmgtNC4ydi0xLjhjMCwwLTEuMywyLjEtNC4zLDIuMWMtNS41LDAtNS4zLTQuOC01LjMtNC44QzkuMiwxNC41LDkuMiw3LjQsOS4yLDcuNHoiLz48L2c+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTQ1LjgsMTAuN2gyLjF2MTEuMmg0LjNWMTAuN2gzLjRWNy40aC0zLjRjMCwwLDAtMC4zLDAtMS4zczAuMi0yLjQsMi4yLTIuNEM1NS41LDMuNyw1Niw0LDU2LDRWMC4zYzAsMC0xLjQtMC4zLTIuNi0wLjNjLTEuNSwwLTIuOCwwLjQtMy43LDFjLTEuNSwxLTEuOSwyLjctMS45LDQuOGMwLDAsMCwxLjMsMCwxLjZoLTIuMXYzLjNINDUuOHoiLz48L2c+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTYyLjgsNy40aDQuN2wzLjcsOS40aDAuMmwzLjItOS40SDc5bC01LjksMTQuOWMtMC44LDIuMS0xLjUsMy44LTIuNiw0LjdjLTEuMSwxLTMuNSwxLjQtNy4yLDAuNWwwLjYtMy41YzAsMCwyLjQsMC43LDMuNSwwYzEuMS0wLjYsMS41LTIuMywxLjUtMi4zTDYyLjgsNy40eiIvPjwvZz48Zz48cmVjdCB4PSI1Ny40IiBjbGFzcz0ic3QwIiB3aWR0aD0iNC41IiBoZWlnaHQ9IjIxLjkiLz48L2c+PGc+PGVsbGlwc2UgY2xhc3M9InN0MCIgY3g9Ijc5IiBjeT0iMTkuOCIgcng9IjIuMSIgcnk9IjIuMSIvPjwvZz48Zz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzMuOCwxMS42Yy0wLjctMC43LTEuOC0xLjMtMi45LTEuM2MtMC45LDAtMS43LDAuMy0xLjcsMS4xczAuOCwxLDIuNSwxLjRjMi4xLDAuNSw0LjQsMS41LDQuNCw0LjNjMCwzLjUtMy4xLDQuOC02LDQuOGMtMi4zLDAtNC42LTAuOC02LjEtMi4ybDIuNi0yLjdjMC44LDAuOSwyLjEsMS42LDMuNCwxLjZjMC44LDAsMS42LTAuMywxLjYtMS4yYzAtMC45LTAuOS0xLjEtMi44LTEuNmMtMS45LTAuNC00LjEtMS40LTQuMS00LjFDMjQuOSw4LjMsMjgsNywzMC43LDdjMi4xLDAsMy45LDAuNCw1LjMsMS43TDMzLjgsMTEuNnoiLz48L2c+PGc+PHBhdGggY2xhc3M9InN0MCIgZD0iTTQxLjksMTAuN3Y1LjFjMCwxLjQsMC43LDIuMywyLjEsMi4zYzAuNSwwLDEuMS0wLjEsMS40LTAuMnYzLjVjLTAuNywwLjItMS43LDAuNS0yLjcsMC41Yy0zLjksMC01LjItMi4xLTUuMi01LjJWMy4xSDQydjQuM2gydjMuNEw0MS45LDEwLjdMNDEuOSwxMC43eiIvPjwvZz48Zz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNMTE5LjUsMjEuOVYxNmMwLTEuMi0wLjMtMi4zLTEuNS0yLjNzLTEuOCwxLjEtMS44LDIuM3Y1LjhoLTMuNXYtNi4yYzAtMS4yLTAuNS0yLTEuNS0yYy0xLjEsMC0xLjcsMS0xLjcsMi4zdjUuOUgxMDZWMTFoMy40djEuNWwwLDBjMC41LTAuOSwxLjYtMS44LDMuMi0xLjhjMS41LDAsMi42LDAuNywzLjIsMS44YzAuNy0xLjEsMS44LTEuOCwzLjQtMS44YzIuOSwwLDMuOCwyLjQsMy44LDQuNHY2LjdMMTE5LjUsMjEuOUwxMTkuNSwyMS45eiIvPjwvZz48Zz48cGF0aCBjbGFzcz0ic3QwIiBkPSJNOTAuNywxNC41Yy0wLjQtMC41LTEuMS0wLjgtMS44LTAuOGMtMS41LDAtMi40LDEuMi0yLjQsMi43czEsMi43LDIuNSwyLjdjMC43LDAsMS41LTAuMywxLjktMC44bDEuOSwyLjNjLTAuOSwwLjgtMi40LDEuNC0zLjksMS40Yy0zLjMsMC01LjktMi4xLTUuOS01LjZjMC0zLjQsMi42LTUuNiw1LjktNS42YzEuNSwwLDMuMSwwLjYsMy45LDEuNEw5MC43LDE0LjV6Ii8+PC9nPjxnPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik05OSwyMS45Yy0zLjIsMC02LTIuMi02LTUuNnMyLjctNS42LDYtNS42czYsMi4xLDYsNS42QzEwNSwxOS43LDEwMi4yLDIxLjksOTksMjEuOXogTTk5LDEzLjZjLTEuNywwLTIuNSwxLjMtMi41LDIuN1M5Ny40LDE5LDk5LDE5YzEuNywwLDIuNS0xLjQsMi41LTIuN0MxMDEuNiwxNC45LDEwMC42LDEzLjYsOTksMTMuNnoiLz48L2c+PC9nPjwvc3ZnPg==');
  width: 123px;
  height: 28px;
  display: block;
  background-position: 0 center;
  background-repeat: no-repeat;
}

/* Currencies */
.jfly-country-flag {
  line-height: 1;
}

.jfly-country-flag .flag-icon {
  /* /images/sprites/lang-flag.png */
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAXCAYAAADtNKTnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDVCOEVBMkY4OTM1MTFFNTg5NjhFRDNFRUZBMURCQTIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDVCOEVBMzA4OTM1MTFFNTg5NjhFRDNFRUZBMURCQTIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowNUI4RUEyRDg5MzUxMUU1ODk2OEVEM0VFRkExREJBMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowNUI4RUEyRTg5MzUxMUU1ODk2OEVEM0VFRkExREJBMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pv+EFxYAAAFUSURBVHjarFIxa8JAGH3RDLpIlu5xLUiXCkWkDm4BlUodHfoDShdH/QW2P8AsZusgbgaF0sEu9gdIZ8FBEA3WzaWv6g010VwU+8jl3T3u3n3f8RQC628H3C5/cBih7V9RXKIq3Xwk5JvHY6DXC3ahaOBv7KJYFJptu3XPmf12VivAtoHZDJjPhdbvA6MRYBiArh9RyWJBGoaYaxoZiZDRqFh3OgcrOdxOu02Gw249lSKXyxNMNrAsMh4Xh9NpcjLxfRP5w25u3ph4cZKJ45DDYaCJ4pNYOTyJPSmZvp6mOWCr9YlS6QZ+XHp9lptUKi1mMpfrPH3Bj+v1e6mJmkjosKwP5PPXe9xs9lEoJPF99yDvJ5t9YaMxoIyDoOZySZjmO8rlW192rrLySjTtibValzIOAqrVLmOxR8p4GtWlQxEBPA/q2un8sP1LJW+hi7Mr+RVgAFrX/q2kWYpLAAAAAElFTkSuQmCC');
  width: 17px;
  height: 11px;
}

.jfly-country-flag .flag-icon.us {
  background-position: center bottom;
}

.jfly-country-flag .flag-icon.ca {
  background-position: center top;
}

.jfly-submenu-wrapper.jfly-country-flag span {
  display: inline-block;
  vertical-align: middle;
}

.jfly-flag-icon-wrap {
  display: inline-block;
  vertical-align: middle;
  border: 1px solid #ccc;
  padding: 5px;
  margin-right: 5px;
  background: #fff;
}

.jfly-flag-icon-wrap img {
  display: block;
}

.jfly-mobile-menu-toggle {
  height: 45px;
  width: 45px;
  display: table-cell;
  vertical-align: middle;
}

.jfly-mobile-menu-toggle span {
  display: block;
  width: 18px;
  height: 1px;
  margin: 3px auto;
  background: #fff;
}

.jfly-site-header-mobile {
  background: #44587B;
}

.jfly-site-header-mobile .column {
  vertical-align: middle;
}

.jfly-site-header-mobile .menu-toggle-btn {
  width: 25px;
}

.jfly-site-header-mobile .back-btn {
  width: 25px;
}

.jfly-site-header-mobile .mobile-phone-number {
  width: 92px;
}

.jfly-site-header-mobile .mobile-phone-number a {
  color: white;
}

.jfly-site-header-mobile .site-logo {
  width: 100px;
  height: 23px;
  background-size: contain;
  margin: auto;
}

@media only screen and (max-width: 768px) {
  .mobile-menu-container {
      position: fixed;
      width: 260px;
      right: -260px;
      top: 0;
      height: 100%;
      background: #fff;
      overflow-y: auto;
      overflow-x: hidden;
      z-index: 20;
      transition: transform .3s;
  }

  .mobile-menu-container.open {
      box-shadow: -3px 0 10px rgba(0, 0, 0, 0.1);
      -webkit-transform: translateX(-260px);
      -moz-transform: translateX(-260px);
      -ms-transform: translateX(-260px);
      transform: translateX(-260px);
  }
}

.site-header-desktop .site-header-logo {
  display: none;
}

.site-header-phone-number,
.header-recent-search,
.jfly-header-user-profile,
.header-nav-link {
  padding: 10px 20px 10px 20px;
}

.jfly-shared-elem .header-nav-link {
  display: block;
  color: #444;
  font-weight: 600;
  font-size: 12px;
}

.header-dropdown-btn {
  padding-right: 25px !important;
}

.header-relative-wrap {
  position: relative;
}




/* currencies dropdown  JC - Nov 17 2021 */

.currency-selection-trigger img {
  display: inline-block;
  vertical-align: bottom;
  width: 16px;
}

.currency-selection-container {
  padding: 10px;
  width: 510px;
  background-color: #f5f5f5 !important;
  text-align: left;
}

.currency-selection-list {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}

.currency-selection-list-item {
  flex: 0 0 25%;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.0s;
}

.currency-selection-list-item:hover {
  background-color: #44587B;
  color: #fff;
}

.currency-selection-list-item:hover .currency-symbol {
  background-color: #fff;
  color: #444;
}

.currency-selection-list-item:hover a {
  color: #fff;
}

.currency-selection-list-item a {
  padding: 5px 10px;
  color: #444;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  transition: all 0.0s;
}

.currency-selection-list-item a span {
  flex: 0 0 30px;
}

.currency-selection-list-item img {
  width: 18px;
  display: block;
}

.currency-symbol {
  margin-left: 5px;
  padding: 4px 5px;
  display: inline-block;
  font-size: 12px;
  height: 20px;
  min-width: 20px;
  background-color: #f1f1f1;
  border-radius: 10px;
  text-align: center;
}

.desktop-currency-hide {
  display: none;
}

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

  .currency-selection-container {
      padding: 10px 20px;
      font-size: 14px;
      background-color: #fff !important;
      width: 100%;
      display: flex;
      display: -webkit-flex;
      flex-direction: row;
      -webkit-flex-direction: row;
      justify-content: space-between;
      -webkit-justify-content: space-between;
      align-items: center;
      -webkit-align-items: center;
  }

  .currency-selection-list {
      display: none;
  }

  .currency-selection-item {
      flex: 0 0 auto;
      -webkit-flex: 0 0 auto;
  }

  .currency-selection-item img {
      width: 16px;
      display: inline-block;
      vertical-align: middle;
  }

  .currency-selection-item select {
      padding: 3px 5px;
      max-width: 100px;
      background-color: #fff;
      border-radius: 6px;
      border: 1px solid #dcdcdc;
  }
}

/* end currencies dropdown  JC - Nov 17 2021 */


.active .header-recent-search,
.active .header-nav-link,
.active .header-dropdown-btn {
  border-color: #455D88;
}

.header-dropdown-btn:after {
  font-family: Fontawesome;
  position: absolute;
  right: 10px;
  margin-top: -6px;
  font-size: 9px;
  font-weight: normal;
  top: 50%;
}

.header-dropdown-btn:after {
  content: '\f078';
}

.active .header-dropdown-btn:after {
  content: '\f077';
}

.jfly-header-user-profile {
  background: #f5f5f5;
  color: #666;
}

.jfly-header-user-profile .column {
  vertical-align: middle;
}

.jfly-header-user-profile .icon {
  width: 22px;
}

.jfly-header-user-profile .icon-item {
  text-align: center;
  width: 22px;
  height: 22px;
  border: 1px solid #999;
  line-height: 20px;
  font-size: 9px;
  border-radius: 50%;
  color: #EABC51;
  background: #263756;
}

/* Top menu user icon */
.user-icon {
  /* Part of the "jf-dashboard" icon font. "jf-user" */
  background-image: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiB2aWV3Qm94PSIwIDAgMzIgMzIiPjx0aXRsZT51c2VyPC90aXRsZT48cGF0aCBkPSJNMTYgMTkuMTg4YzUuMzEzIDAgMTYgMi44MTMgMTYgOC41djQuMzEzaC0zMnYtNC4zMTNjMC01LjY4OCAxMC42ODgtOC41IDE2LTguNXpNMTYgMTcuMTI1Yy00LjM3NSAwLTcuOTM4LTMuODEzLTcuOTM4LTguNSAwLTQuNzUgMy41NjMtOC42MjUgNy45MzgtOC42MjVzNy45MzggMy44NzUgNy45MzggOC42MjVjMCA0LjY4OC0zLjU2MyA4LjUtNy45MzggOC41eiIgZmlsbD0iI0VBQkM1MSI+PC9wYXRoPjwvc3ZnPg==);
  width: 9px;
  height: 9px;
  -webkit-background-size: cover;
  background-size: cover;
  display: inline-block;
  margin-top: 6px;
}

.jfly-header-user-profile .user {
  padding-left: 10px;
  color: #455D88;
  font-weight: 700;
}

.header-dropdown-wrap {
  display: block;
}

.header-recent-search {
  display: block;
  color: #444;
  font-size: 13px;
  padding: 0;
  position: relative;
}

.header-recent-search .column {
  border-bottom: 1px dashed #e5e5e5;
  vertical-align: middle;
  padding: 10px 0 10px 20px;
}

.header-dropdown-wrap .header-recent-search:last-child .display-table .column {
  border-bottom: 0 dashed #e5e5e5;
}

.header-recent-search .column.price {
  padding: 10px 20px 10px 0;
}

.header-recent-search .destinations span {
  display: inline-block;
}

.header-recent-search:before {
  content: '\25CF';
  position: absolute;
  left: 10px;
  top: 14px;
  font-size: 8px;
}

.header-recent-searches .see-all-searches {
  display: block;
  padding: 12px 15px;
  text-align: center;
  font-weight: 600;
  font-size: 12px;
}

.header-recent-search .destinations {
  font-weight: 600;
}

.header-recent-search .dates {
  margin: 2px 0;
  color: #666;
}

.header-recent-search .price {
  font-family: Lato, sans-serif;
  color: #E07915;
  font-size: 12px;
  text-align: right;
  width: 85px;
  vertical-align: middle;
}

.header-recent-search .trip-type {
  font-size: 10px;
  margin-bottom: 2px;
}

.header-recent-search .amount {
  font-weight: 700;
}

.jfly-country-flag.header-nav-link.active {
  color: #4e6ca0;
}

.site-header-phone-number {
  display: block;
  font-weight: 600;
  color: #455D88 !important;
}

.site-header-phone-number-title {
  font-size: 12px;
  margin-bottom: 3px;
  color: #555;
  font-weight: 700;
}

.site-header-phone-number .icon {
  margin: 0 5px 0 0;
}

.site-header-phone-number .icon.fa {
  font-size: 20px;
}

.site-header-phone-number .number {
  font-weight: 700;
  font-size: 16px;
  line-height: 15px;
}

.header-bank-btn span,
.site-header-phone-number .icon,
.site-header-phone-number .number {
  display: inline-block;
  vertical-align: middle;
}

.header-nav-link.header-bank-btn {
  background: #455d88;
  color: #fff;
  font-weight: 900;
}

.header-bank-btn .amount {
  padding: 5px 10px;
  border-bottom: 2px solid #697da5;
  font-size: 15px;
  margin-left: 3px;
  color: #ffef99;
  background: #32466b;
}

.jfly-submenu-wrapper {
  cursor: pointer;
  position: relative;
}

.print-logo {
  display: none;
}

/* ==== Footer ==== */
.site-footer {
  position: absolute;
  left: 0;
  bottom: 0;
  font-size: 12px;
  height: 84px; /* === has to match body margin-bottom (sticky footer) === */
  width: 100%;
  background:#fff;
}

.footer-top {
  padding: 10px 0;
  border-top: 1px solid #efefef;
}

.site-footer .column {
  vertical-align: middle;
}

.site-footer .copyrights {
  padding: 8px 0;
  background: #f5f5f5;
  color: #777;
  border-top: 1px solid #e5e5e5;
}

.footer-menu a {
  color: #777;
  display: inline-block;
  padding: 5px 10px;
}

.footer-menu li {
  display: inline-block;
  vertical-align: middle;
}

.footer-social {
  text-align: right;
  width: 140px;
}

.footer-partners li,
.footer-social li{
  display: inline-block;
  vertical-align: middle;
}

.footer-menu ul {
  margin: 0 -10px;
}

.footer-social li {
  padding: 0 3px;
}

.footer-social a {
  display: table-cell;
  vertical-align: middle;
  width: 25px;
  height: 25px;
  font-size: 18px;
  color: #999;
  text-align: center;
}

.footer-social a.fb {
  font-size: 17px;
}

.footer-social a:hover,
.footer-menu a:hover {
  color: #455d88;
}

.desktop-dd-wrap {
  border-top: 1px solid #e5e5e5;
}

.desktop-header-nav-item.recent-search-item,
.desktop-header-nav-item.recent-covid-item,
.header-nav-link.header-dropdown-btn,
.jfly-header-user-profile.header-dropdown-btn,
.desktop-header-nav-item.bookings,
.header-main-nav {
  display: none;
}

.desktop-header-nav-item.recent-search-item {
  margin-right: 12px;
}

.header-nav-link.app-download .fa {
  font-size: 16px;
  margin-left: 8px;
}

.header-nav-link.app-download .fa,
.header-nav-link.app-download span {
  vertical-align: middle;
}

/* === COMPACT HEADER === */
.jfly-header.compact .column {
  vertical-align: middle;
}

.jfly-header.compact {
  background: #455D88;
  padding: 12px 0;
  color: #fff;
  font-weight: 700;
  font-size: 13px;
}

.jfly-header.compact .top-nav span,
.jfly-header.compact .top-nav li {
  display: inline-block;
  vertical-align: middle;
}

.jfly-header.compact .top-nav li + li {
  margin-left: 25px;
}

.jfly-header.compact .jfly-flag-icon-wrap {
  border: 0;
  padding: 0;
}

.jfly-header.compact .profile-nav {
  text-align: right;
}

.jfly-header.compact .top-nav a {
  color: #fff;
}

.jfly-header.compact .top-nav a:hover {
  text-decoration: underline;
}

.compact .site-header-logo {
  width: 123px;
}
/* ====== */

.profile-nav .desktop-header-nav-item.support-item {
  display: none;
  position: relative;
}

.profile-nav .desktop-header-nav-item.covid-item {
  display: none;
}

.desktop-header-column.plus {
  text-align: center;
  font-size: 22px;
  font-weight: 600;
  color: white;
  width: 40px;
}


/* ==== Black Friday ==== */
.black-friday-banner {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000000;
  /* background-image: url('/images/summer-banner-desktop-JF.jpg'); */
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 45px;
  padding: 0px;
  text-align: center;
  font-family: 'Lato', sans-serif;
  font-size: 16px;
  line-height: 1.2;
  color: #FFF;
  margin: 0 auto;
  margin-top: -42px;
}
.black-friday-banner span span{
  color: #c19a63;
  font-weight: 900;
}
.banner-green {
  color: #27CC41;
}
.banner-white {
  color: #ffffff;
}
.black-friday-img-head {
  width: 250px;
}
.black-friday-banner .jf-plane {
  color: #03d2ec;
  margin-right: 8px;
}
.black-friday-banner #countdown {
  /*margin-left: 10px;*/
  /*color: #03d2ec;*/
  /*text-transform: lowercase;*/
  color: #FFF;
  width: 205px;
  padding: 5px 10px !important;
  text-transform: lowercase;
  margin: 0 14px;
  background: #F08E31;
  border-radius: 100px;
  font-size: 16px !important;
  font-weight: bolder;
}
.black-friday-banner .separate-white-line {
  width: 1px;
  height: 30px;
  margin: 0 15px;
  background-color: #FFF;
}

@media only screen and (max-width: 768px) {
  .black-friday-banner {
      font-size: 11px;
  }
}

@media only screen and (max-width: 640px) {
  .black-friday-banner {
      flex-wrap: wrap;
  }
  .black-friday-banner .separate-white-line {
      display: none;
  }
  .black-friday-banner #countdown {
      margin: 0 8px;
  }
}

@media only screen and (max-width: 380px) {
  .black-friday-banner .jf-plane {
      display: none;
  }
}
/* ==== End Black Friday ==== */


@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min--moz-device-pixel-ratio: 2),
only screen and (-o-min-device-pixel-ratio: 2/1),
only screen and (min-device-pixel-ratio: 2),
only screen and (min-resolution: 192dpi),
only screen and (min-resolution: 2dppx) {

  .jfly-country-flag .flag-icon {
      /* /images/sprites/lang-flag-2x.png */
      background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACIAAAAuCAYAAABNhcu5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RkFBQUZCMjg4OTMzMTFFNTg5NjhFRDNFRUZBMURCQTIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RkFBQUZCMjk4OTMzMTFFNTg5NjhFRDNFRUZBMURCQTIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGQUFBRkIyNjg5MzMxMUU1ODk2OEVEM0VFRkExREJBMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGQUFBRkIyNzg5MzMxMUU1ODk2OEVEM0VFRkExREJBMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pl7D0bIAAAWNSURBVHja3FddbFNlGH7OT/+7FkYdAQYBurJ1dN0cDMZkBZmOnwRUUBLjhRfq1S70Ai69IyaEGLiEGzWRmKBTmEERGcMxIONnNcDMBtsCTsH9dl3b0/b0tP18T4tZlrBl25nQ8CWn3+k538973vd5n/f5OAYE8fTGob/fguXLBbpPY+6Nx8BACkuWRKdZxy6qP1MuYTBMLKal6fXqx+RNb22OtBfEkFQK6OoCJOk5GZJ+grnubqChAWhpmfx8Dk2c06xQCGhtBRobgUuXAIGwGA4DtbWgLJubJZS+bMprcJBN2bZvnzzW42FsZOTpY0dH2bT70MXPGAuRSPar793LesTnmzymqgrQ6YDOTmKmYHZ8MjnPGEkkgNOngT17gPp64MABYOlSwGb7jyeA4mLgyBFgxw5g927g+PHsvHkNTSrFWFMTY4Iw8c7pZCwvL3tvMDBWVMSYXj/x/ujR7LwZhkaccZYEApOzoq9v4l6Wgd7eyXPU8Kgh5fl5CA3HTfSFhUBJyczcXFAAuFwzNmL2WdPZyVhd3fRuLi1l7PLlWWfN7NP30SPGvN6nj7fbGbtxY07pO3tCU7Nl3z5g5UqgogIYG8tmT08PkJ8PeDzPiNAUJUtckpT939HBWDzOmCwzNjyc7f83QptUFMiJixYBZnOWtNSiNzSU5RKHI9s/8+qrpq3KnorynGWAyQS43aTx7JoNETXNVsOzYcOLpdBUj4xPqeJl2UK9dhWfSBDXY1oVz217/1PW8vP1ce8rXthtRrRd9MNTsQY2qxnXLtzA+tfWQeAFXG+7jXUb3bQqh5uX/Fi3cxN0BNKPfjoFV0JCVNAWZa5818dM5njw6SRicQV5Ngsikgw9z4HpRfAKQ1xJwJpnQiQchZE0BxPpXZJlPvTY4hQ8FhFSWmNoxgMSir2r0dfVj+FAGKXuVei40weZvtZbWYyu270IxhJwF69Ae0c3Gaeg1OuCv/0PxGkB18nPsXqpQzNGuDcbDrMzJy+gelcNHIvMOPttK6q3lBNrW/HrqWZs3b8FIq9D849X4atfT6Di0PLDZdS+Wwc93TfEB/FyvkmzRzhnzQfMVeZE370/MTQaJv3rhZ88IqTS8BJWuu70IhSLorrag3b/fdgoXO61Tty98wAhYtZj99uwMhYgJOq0GVL51kH291AQDruV/jFibRkGo0hYEDE4JqFgoYXIk0GKyzCadDCQxhgKSsi3mzI66cuD76GmbBWkmKwNIxY636p4MKjApE1Gx8KwWo0wGvSIyWN0/F1A5SWNAAHVZjPDSBkky0GY9HaoOUkFjxIzRn1CmyE99/vxuq8cN29246/BAPa+sRktVzshkPDdvm09rrT+jpAUw84dG3Ge0tZmMKJ+awUu/nYb0VAUvW/vhxwb1hwacUN1CRq/OoeNtFFpuRONXzejyreWOMWMxhNN8O31QRAFfP/Nr6glwyir8d2JM6h5Zxss6RTsfCGcBTZEU9rQypXWNbAFixdifGg84/41awrx4NEwDCQSCpY5MPLPCHk+gVVFy9D3cAB5hB3Hknw8fvgYMuNw7tRnKFv2knaKj8hUwsMSQnIS0YSCcTImTvFWWBr6kIQIgVRSkgiGIkR4CXCEUDEUy6SrTON7PvwEOrI6yjhthlR6nTjzSzs2byqjcKxAc4sflRVFsFrMuNB8C6/WVRLF82i7chebqtwgEqbjrh9bd9YQjhRI5xsxloohppXibw2HGUcbMTUXOfXkwGXOL4y+UDWATklUqTh6TrWPZfKEcMIjSQJPoOdFggK1Mqa0hsZ5/eqTUpvRr7MXaTQzNg8ygGua2/7zr0dKDh3JCWHEpVT+zgWPXPPW5oZUTIHLjdDEQ5HcCM3AFydzwyNnYc0Nj7gOH8I0R4pn1v4VYAC3tr+VZMBO3AAAAABJRU5ErkJggg==');
      background-size: 17px 22px;
  }

}

@media only screen and (max-width: 1023px) and (min-width: 768px) {
  .flight.search .desktop-general-container {
      width: 98% !important;
      max-width: 850px !important;
  }
}


@media only screen and (min-width: 768px) {

  .mobile-menu-overlay,
  .jfly-site-header-mobile {
      display: none !important;
  }

  .desktop-general-container {
      width: 93%;
      max-width: 1170px;
      margin: auto;
  }

  .flight.search .desktop-general-container {
      max-width: 1390px;
      width: 98%;
  }

  .desktop-header-table-wrap {
      display: table;
      width: 100%;
      table-layout: fixed;
  }

  .desktop-header-column {
      display: table-cell;
      vertical-align: middle;
  }






  /* phone number in subheader */

  .header-phone-container {
      display: flex;
      flex-direction: row;
      justify-content: flex-start;
      align-items: center;
  }

  .header-phone-left {
      flex: 0 1 30px;
  }

  .header-phone-left img {
      width: 100%;
      display: block;
  }

  .header-phone-right {
      padding-left: 5px;
      flex: 1;
      font-size: 15px;
      line-height: 20px;
      font-weight: 900;
      text-align: left;
      display: flex;
      flex-direction: row;
      justify-content: flex-start;
      align-items: center;
      position: relative;
  }

  .header-phone-right .fa.header-phone {
      margin: 0 0 -1px 7px;
      color: #bbb;
  }

  .header-phone-tooltip {
      display: none;
  }

  .header-phone-right .fa:hover + .header-phone-tooltip {
      padding: 10px;
      display: block;
      position: absolute;
      bottom: 20px;
      left: 0;
      font-size: 14px;
      font-weight: 400;
      color: #444;
      background-color: #ffffff;
      border-radius: 4px;
      box-shadow: 2px 2px 5px #666;
      white-space: nowrap;
  }

  .header-phone-tooltip img {
      margin: 0 5px -3px 0;
      display: inline-block;
  }








  .mobile-menu-container {
      position: relative;
      width: auto;
      right: auto;
      height: auto;
      overflow: visible;
      transition: none;
  }

  .mobile-menu-container.open {
      box-shadow: none;
      -webkit-transform: none;
      -moz-transform: none;
      -ms-transform: none;
      transform: none;
  }

  .site-header-desktop .site-header-logo {
      display: block;
  }

  .site-header-top {
      background: #44587B;
  }

  .fhub.flight .site-header-top {
      background: #fff;
  }

  .fhub.flight .jfly-header-user-profile {
      background: #2cb8e2;
      transition: all 0.3s;
  }

  .fhub.flight .jfly-header-user-profile .icon-item {
      border: 1px solid #ffffff;
      color: #2cb8e2;
      background: #ffffff;
  }

  .fhub.flight .jfly-header-user-profile:hover {
      background: #1095bd;
  }

  .header-main-nav .item {
      margin-right: 10px;
  }

  .site-header-phone-number,
  .header-nav-link {
      padding: 0;
  }

  .site-header-phone-number,
  .header-recent-search,
  .jfly-header-user-profile,
  .header-nav-link,
  .active .header-recent-search,
  .active .header-nav-link,
  .active .header-dropdown-btn {
      border: 0;
  }

  .site-header-phone-number .icon,
  .site-header-phone-number-title {
      display: none;
  }

  .jfly-header-user-profile .display-table {
      width: auto;
  }

  .user-profile-items {
      direction: rtl;
  }

  .site-header-bottom .contact,
  .user-profile-items {
      text-align: right;
  }

  .desktop-header-nav-item,
  .header-main-nav .item {
      display: inline-block;
      vertical-align: middle;
      direction: ltr;
  }

  .header-main-nav .header-nav-link {
      padding-left: 5px;
      padding-right: 5px;
  }

  .jfly-country-flag .header-dropdown-wrap .header-nav-link,
  .header-dropdown-wrap .header-nav-link {
      display: block;
      height: auto;
      padding: 12px 15px;
      text-align: left;
  }

  .header-nav-link.header-dropdown-btn:hover,
  .header-main-nav .header-nav-link:hover {
      color: #4e6ca0;
  }

  .header-dropdown-wrap .header-nav-link:hover {
      background: #f5f5f5;
      color: #4e6ca0;
  }

  .jfly-header-user-profile.header-dropdown-btn:after {
      color: #FFF;
      display: none;
  }

  .user-logged .jfly-header-user-profile.header-dropdown-btn:after {
      color: #FFF;
      display: block;
  }

  .site-header-phone-number,
  .site-header-bottom .header-nav-link {
      display: table-cell;
      height: 38px;
      vertical-align: middle;
  }

  .jfly-shared-elem .site-header-bottom .header-nav-link {
      color: #444 !important;
  }

  .jfly-shared-elem .site-header-bottom .header-nav-link:hover {
      color: #4e6ca0 !important;
  }

  .site-header-bottom .contact {
      width: 40%;
  }

  .header-main-nav {
      display: block;
      margin-left: -5px !important;
  }

  .header-bank-btn .amount {
      padding: 0;
      border: 0;
      font-size: 14px;
      margin: -1px 0 0 5px;
      color: #F5D079;
      background: none;
      line-height: 11px;
  }

  .recent-search-item .header-nav-link,
  .jfly-header-user-profile {
      display: table-cell;
      height: 52px;
      vertical-align: middle;
  }

  .jfly-header-user-profile {
      background: #293853;
      color: #9daac1;
      padding: 0 15px;
      width: 190px;
  }

  .jfly-header-user-profile:hover {
      background: #2f3e5a;
  }

  .header-relative-wrap > .header-nav-link,
  .site-header-top .desktop-header-nav-item > .header-nav-link {
      color: #fff;
  }

  .site-header-top .desktop-header-nav-item > .header-nav-link {
      line-height: 52px;
  }

  .profile-nav .desktop-header-nav-item.support-item {
      display: inline-block;
  }

  .profile-nav .desktop-header-nav-item.covid-item {
      display: inline-block;
  }

  .header-relative-wrap > .header-nav-link:hover,
  .site-header-top .desktop-header-nav-item > .header-nav-link:hover {
      color: #c8d2e2;
  }

  .jfly-header-user-profile .user {
      color: #fff;
      font-size: 13px;
  }

  .jfly-header-user-profile .icon-item {
      border-color: #7183A2;
  }

  .site-header-phone-number {
      background: none;
  }

  .site-header-phone-number .number {
      font-size: 14px;
  }

  .header-nav-link.header-bank-btn {
      background: none;
  }

  .header-nav-link.header-bank-btn:hover {
      color: #ffe7c0;
  }

  .header-nav-link.header-bank-btn:hover .amount {
      color: #ffcd56;
  }

  .profile-nav .desktop-header-nav-item + .desktop-header-nav-item {
      margin-right: 15px;
  }

  .profile-nav .desktop-header-nav-item.support-item {
      margin-right: 20px;
      position: relative;
  }

  .site-header-top .logo {
      width: 123px;
  }

  .co-branding-kayak .site-header-top .logo {
      width: 115px;
  }

  .jfly-flag-icon-wrap {
      border: 0;
      padding: 0;
  }

  .header-dropdown-wrap {
      display: none;
      position: absolute;
      top: 100%;
      right: 0;
      z-index: 3;
      background: #fff;
      min-width: 110px;
      box-shadow: 0 3px 5px rgba(0,0,0,.2);
  }

  .site-header-bottom .contact .desktop-header-nav-item {
      margin-left: 15px;
  }

  .header-dropdown-wrap.my-account {
      width: 100%;
  }

  .header-dropdown-wrap.header-recent-searches {
      width: 265px;
      text-align: left;
  }

  .header-recent-search:hover {
      background: #f5f5f5;
      color: #455D88;
  }

  .flight.search .site-header-phone-number,
  .flight.search .site-header-bottom .header-nav-link:not(.jfly-country-flag),
  .checkout.billing .site-header-phone-number,
  .checkout.billing .site-header-bottom .header-nav-link:not(.jfly-country-flag) {
      height: 30px;
  }

  .desktop-header-column.contact .button-wrap,
  .site-header-bottom .main-nav .title,
  .flight.search .desktop-header-column.main-nav,
  .checkout.billing .desktop-header-column.main-nav {
      display: none;
  }

  .desktop-dd-wrap .button-wrap {
      display: block;
  }

  .header-nav-link.header-dropdown-btn,
  .jfly-header-user-profile.header-dropdown-btn {
      display: table-cell;
  }

  .desktop-header-nav-item.recent-search-item {
      display: inline-block;
  }

  .recent-search-item .header-nav-link,
  .jfly-submenu-wrapper.jfly-country-flag .header-dropdown-btn span,
  .header-main-nav .header-nav-link {
      font-size: 12px;
      font-weight: 600;
  }

  .support-bubble {
      padding: 15px;
      position: absolute;
      top: 65px;
      left: 25px;
      width: 275px;
      font-size: 12px;
      color: white;
      background-color: #44587b;
      z-index: 10;
      border-radius: 12px;
      text-align: left;
      animation: bounce 2s infinite;
      -webkit-animation: bounce 3s infinite;
      -moz-animation: bounce 3s infinite;
      -o-animation: bounce 3s infinite;
  }

  /* infinite bounce */

  @-webkit-keyframes bounce {
      0%, 100% {-webkit-transform: translateY(0);}
      40% {-webkit-transform: translateY(-5px);}
      60% {-webkit-transform: translateY(-5px);}
  }

  @-moz-keyframes bounce {
      0%, 100% {-moz-transform: translateY(0);}
      40% {-moz-transform: translateY(-5px);}
      60% {-moz-transform: translateY(-5px);}
  }

  @-o-keyframes bounce {
      0%, 100% {-o-transform: translateY(0);}
      40% {-o-transform: translateY(-5px);}
      60% {-o-transform: translateY(-5px);}
  }
  @keyframes bounce {
      0%, 100% {transform: translateY(0);}
      40% {transform: translateY(-5px);}
      60% {transform: translateY(-5px);}
  }

  .support-bubble-title {
      margin-bottom: 5px;
      font-size: 18px;
      font-weight: 900;
  }

  .support-bubble p {
      margin-bottom: 15px;
  }

  .support-bubble:before {
      content: '';
      position: absolute;
      width: 0;
      height: 0;
      bottom: 100%;
      left: 1.5em;
      border: .75rem solid transparent;
      border-top: none;
      border-bottom-color: #44587b;
  }

  .support-bubble-btns {
      display: flex;
      display: -webkit-flex;
      flex-direction: row;
      -webkit-flex-direction: row;
      justify-content: space-between;
      -webkit-justify-content: space-between;
      align-items: center;
      -webkit-align-items: center;
  }

  .support-bubble-item {
      flex: 0 1 auto;
      -webkit-flex: 0 1 auto;
  }

  a.support-btn-gotit {
      padding: 5px 15px;
      display: inline-block;
      background-color: transparent;
      color: #9cb6e8;
      border: 1px solid #9cb6e8;
      transition: all 0.3s;
  }

  a.support-btn-gotit:hover {
      color: #f1f1f1;
      border: 1px solid #f1f1f1;
  }

  a.support-btn-see {
      padding: 5px 15px;
      display: inline-block;
      background-color: #67A838;
      color: #fff;
      font-weight: 600;
      border: 1px solid #67A838;
      transition: all 0.3s;
  }

  a.support-btn-see:hover {
      color: #fff;
      background-color: #78c442;
      border: 1px solid #78c442;
  }

}




@media only screen and (min-width: 1024px) {

  .jfly-header-user-profile {
      width: auto;
  }

  .user-logged .jfly-header-user-profile {
      width: 215px;
  }

  .profile-nav .desktop-header-nav-item + .desktop-header-nav-item {
      margin-right: 20px;
  }

  .profile-nav .desktop-header-nav-item.support-item {
      margin-right: 25px;
  }

}






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

  .header-dropdown-wrap {
      display: block !important;
  }

  .header-dropdown-wrap ul {
      margin: 10px 0;
  }

  body {
      margin: auto;
  }

  .site-footer {
      position: relative;
      bottom: auto;
      height: auto;
  }

  .footer-menu ul {
      margin: 0 -5px;
  }

  .footer-menu li {
      display: block;
  }

  .footer-menu a {
      font-size: 13px;
      padding-top: 3px;
      padding-bottom: 3px;
  }

  .site-footer .copyrights {
      padding-left: 10px;
  }

}




@media only print {

  .print-logo {
      display: block;
      float: none;
  }

}
.form-wrap-roundtrip .form-fields-wrap-multi,
.form-wrap-oneway .form-fields-wrap-multi{
  display: none;
}

.form-wrap-multi .form-fields-wrap-multi-container {
  margin-bottom: 5px;
}

.inline-search-form {
  background: none !important;
  margin-bottom: 10px;
}

.hp-form-wrap {
  position: relative;
  z-index: 2;
}

.highlight {
  background: #fff;
}

.form-wrap-multi .form-field-to-date{
  display: none;
}

.form-wrap-multi .form-field-to-date{
  width:15%;
}

.form-wrap-oneway .form-field-to-date{
  display: none;
}

.form-wrap-multi .form-field-from-date,
.form-fields-wrap-multi-container .form-field-from-date,
.form-wrap-oneway .form-field-from-date {
  width: 20%;
}

.form-wrap-multi .form-field-to,
.form-wrap-multi .form-field-from,
.form-fields-wrap-multi-container .form-field-to,
.form-fields-wrap-multi-container .form-field-from,
.form-wrap-oneway .form-field-to,
.form-wrap-oneway .form-field-from {
  width: 40%;
}

.form-fields-wrap,
.form-fields-wrap-multi {
  position: relative;
}

.form-fields-wrap-multi,
.form-fields-wrap-multi + .form-fields-wrap-multi,
.form-filters-wrap.flight-class {
  margin-top: 10px;
}

.form-field-segment {
  position: absolute;
  width: 265px;
  right: -265px;
  top: 50%;
  margin-top: -13px;
  text-align: left;
}

.form-field-segment .multicity-btn {
  color: #fff;
  display: block;
  margin-left: 15px;
  padding: 0 5px;
  font-size: 13px;
  font-weight: 700;
  line-height: 25px;
  text-align: center;
  cursor: pointer;
}

.form-field-segment .multicity-btn:hover {
  color: #ffe1a0;
}

.form-field-segment .multicity-btn span {
  display: inline-block;
  vertical-align: middle;
}

.form-field-segment .multicity-btn .icon {
  margin-right: 8px;
  font-size: 18px;
  line-height: 10px;
}

.form-field-to,
.form-field-from {
  margin: 0;
  float: left;
  width: 30%;
  position: relative;
}

.form-field-to-date,
.form-field-from-date{
  margin: 0;
  float: left;
  width: 20%;
  position: relative;
}

.main-search-form  input:not([type=checkbox]),
.form-field-from input:not([type=checkbox]),
.form-field-from-date input:not([type=checkbox]),
.form-field-to input:not([type=checkbox]),
.form-field-to-date input:not([type=checkbox]) {
  border: 1px solid #dcdcdc;
  border-right: 1px solid #fff;
  width: 100%;
  display: block;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-field-passengers {
  text-align: center;
  position: relative;
}

.inline-search-form .table-wrap > .column {
  vertical-align: top;
}

.inline-search-form .column.search {
  font-size: 0;
  width: 320px;
}

.form-field-passengers,
.form-field-button {
  font-size: 14px;
  width: 50%;
  display: inline-block;
  vertical-align: top;
}

.cruises-text,
.mobile-calendar-toggle,
.main-search-form .passenger-toggle,
.main-search-form input:not([type=checkbox]) {
  display: block;
  background: #fff;
  height: 52px;
  padding-left: 15px;
  padding-right: 15px;
  border: 1px solid #e5e5e5;
  border-right: 1px solid #fff;
  color: #000;
  font-size: 14px;
  text-overflow: ellipsis;
  outline: 0;
}

.cruises-text,
.mobile-calendar-toggle {
  cursor: pointer;
}

.form-fields-wrap-multi-container .mobile-calendar-toggle,
.main-search-form .form-fields-wrap-multi-container .form-field-from-date input:not([type=checkbox]) {
  border-right-color: #e5e5e5;
}

.has-icons .mobile-calendar-toggle,
.has-icons.main-search-form .passenger-toggle,
.has-icons.main-search-form input:not([type=checkbox]) {
  padding-left: 35px;
}

.mobile-calendar-toggle {
  position: relative;
  line-height: 50px;
  white-space: nowrap;
  overflow: hidden;
  font-weight: normal;
  text-align: left;
}

.main-search-form .passenger-toggle {
  line-height: 46px;
  text-align: left;
  font-weight: normal;
}

.main-search-form input:focus {
  color: #1b325a;
  background: #fafcff;
}

.main-search-form .passenger-toggle:focus,
.form-field-passengers .passenger-toggle:focus {
  color: #30456A;
}

.main-search-form input::-webkit-input-placeholder {
  color: #777;
}

.main-search-form input::-moz-placeholder {
  color: #777;
}

.main-search-form input:-ms-input-placeholder {
  color: #777;
}

.main-search-form input:-moz-placeholder {
  color: #777;
}

.form-field-wrap.destination input,
.form-field-from input {
  border-radius: 2px 0 0 2px;
}

.form-field-wrap.cars input,
.form-field-from input {
  border-radius: 2px 0 0 2px;
}

.checkin input,
.checkout input,
.form-field-to-date input,
.form-field-from-date input {
  cursor: pointer;
}

.travel-assist .radio-options-footer input,
.cancel-protect-wrap .guarantee-list input {
  margin: -2px 3px 0 0;
  vertical-align: middle;
}

.main-search-form .passenger-toggle span,
.form-field-passengers .passenger-toggle span {
  vertical-align: middle;
}

.form-field-button a.form-field-submit-button,
.main-search-form button,
.form-field-button button {
  padding: 0 10px;
  height: 52px;
  line-height: 52px;
  width: 100%;
  display: block;
  border: none;
  outline: none;
  background: #69b524;
  color: #fff;
  font-size: 16px;
  font-weight: 900;
  text-align: center;
  cursor: pointer;
  text-transform: uppercase;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  -webkit-border-radius: 0 2px 2px 0;
  -moz-border-radius: 0 2px 2px 0;
  border-radius: 0 2px 2px 0;
}

.form-field-button a.form-field-submit-button:focus,
.form-field-button a.form-field-submit-button:hover,
.main-search-form button:focus,
.main-search-form button:hover,
.form-field-button button:focus,
.form-field-button button:hover {
  background: #72c525;
}

.has-icons .mobile-calendar-toggle:before,
.has-icons .passenger-toggle:before,
.has-icons .form-field-wrap:before,
.has-icons .form-field-wrap > a:before {
  position: absolute;
  line-height: 1;
  top: 20px;
  left: 12px;
  pointer-events: none;
  color: #b9b9b9;
}

.has-icons .search-field-wrap.departure-month a:before,
.has-icons .mobile-calendar-toggle:before,
.has-icons .search-field-wrap.checkout:before,
.has-icons .search-field-wrap.checkin:before,
.has-icons .form-field-wrap:before,
.has-icons .passenger-toggle:before {
  font-family: "jf-dashboard";
  font-size: 13px;
  font-style: normal !important;
  text-transform: none !important;
  font-weight: normal !important;
}

.has-icons .search-field-wrap.port a:before,
.has-icons .search-field-wrap.cruise-destination a:before,
.has-icons .search-field-wrap.cruise-line a:before,
.has-icons .form-field-wrap.cars:before,
.has-icons .form-field-wrap.destination:before {
  font-family: Fontawesome;
  content: '\f041';
  top: 18px;
  font-size: 15px;
  font-weight: normal;
}

.has-icons.main-search-form .focus.search-field-wrap.destination:before,
.has-icons .focus.form-field-wrap:before {
  color: #4d5d79;
}

.has-icons .form-field-from:before {
  content: "\64";
  font-size: 14px;
}

.has-icons .form-field-to:before {
  content: "\70";
}

.has-icons .search-field-wrap.departure-month a:before,
.has-icons .mobile-calendar-toggle:before,
.has-icons .search-field-wrap.checkout:before,
.has-icons .search-field-wrap.checkin:before,
.has-icons .form-field-from-date:before,
.has-icons .form-field-to-date:before {
  content: "\6e";
}

.has-icons .passenger-toggle:before {
  content: "\65";
  font-size: 11px;
}

.has-icons .form-field-wrap.cruise-destination a:before {
  content: '\f21a';
  font-size: 14px;
}

.has-icons .form-field-wrap.cruise-line a:before {
  content: '\f13d';
  font-size: 14px;
}

.has-icons .form-field-wrap.port a:before {
  content: '\f1cd';
  font-size: 14px;
}

.search-dropdown {
  display: none;
  padding: 2px 10px 5px 10px;
  position: absolute;
  top: 10px;
  left: 10px;
  width: 220px;
  z-index: 1000;
  text-align: left;
  background: #FFF;
  cursor: default;
  overflow: hidden;
  outline: 0;

  -webkit-box-shadow: 0 2px 3px rgba(0,0,0,0.2);
  -moz-box-shadow: 0 2px 3px rgba(0,0,0,0.2);
  box-shadow: 0 2px 3px rgba(0,0,0,0.2);

  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.passenger-picker {
  text-align: center;
}

.passenger-type .column {
  vertical-align: middle;
}

.search-dropdown-toggle .passenger-type,
.form-field-passengers .passenger-type {
  border-bottom: 1px dashed #dcdcdc;
  padding: 8px 0;
  line-height: 1;
}

.passenger-type .label {
  font-size: 13px;
  font-weight: 700;
  vertical-align: middle;
  text-align: center;
  color: #455D88;
  padding: 0 10px 0 0;
}

.passenger-type .age {
  font-size: 11px;
  line-height: 1;
  color: #888;
}

.passenger-picker .picker-button {
  background: #fff;
  color: #444;
  font-size: 10px;
  width: 27px;
  border: 1px solid #dcdcdc;
  cursor: pointer;
}

.picker-wrapper .column {
  vertical-align: baseline;
}

.passenger-picker .picker-button.remove {
  -webkit-border-radius: 2px 0 0 2px;
  -moz-border-radius: 2px 0 0 2px;
  border-radius: 2px 0 0 2px;
}

.passenger-picker .picker-button.add {
  -webkit-border-radius: 0 2px 2px 0;
  -moz-border-radius: 0 2px 2px 0;
  border-radius: 0 2px 2px 0;
}

.passenger-picker .picker-button:not(.disabled):hover {
  background: #455D88;
  border-color: #455D88;
  color: #fff;
}

.passenger-picker .picker-button.disabled {
  color: #b5b5b5;
  background: #fafafa;
  border-color: #dcdcdc;
}

.passenger-picker .qty {
  line-height: 33px;
  background: #fff;
  border-top: 1px solid #dcdcdc;
  font-weight: 700;
  color: #777;
  border-bottom: 1px solid #dcdcdc;
}

.passenger-type .picker {
  width: 90px;
}

.close-passenger-picker {
  margin: -1px -10px -5px -10px;
  padding: 15px;
  background: #f1f1f1;
  text-align: center;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 12px;
  color: #777;
  cursor: pointer;
}

.form-filters-left{
  position:relative;
}

.flight-type ul {
  margin: 0 0 10px -5px;
  padding: 0;
  font-size: 0;
}

.flight-class ul {
  margin-left: -5px;
}

.flight-type .item,
.flight-class .item {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  margin: 0 15px 0 0;
  padding: 0;
}

.flight-class .item:not(.item-hotels-search) {
  display: inline-block;
}

.results-sidebar .item-hotels-search label {
  color: #444 !important;
}

.item-hotels-search input[type=checkbox] + label,
.flight-class .item a,
.flight-type .item a {
  display: block;
  padding: 5px;
  color: #fff;
  line-height: 1;
  font-size: 14px;
}

.flight-type .item a {
  font-weight: 900;
  text-transform: uppercase;
}

.item-hotels-search input[type=checkbox] + label,
.flight-class .item a {
  font-weight: 600;
}

.flight-type .item a.active,
.flight-type .item a:hover {
  color: #ffe1a0;
}

.campaign .select-first-text {
  max-width: 180px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.form-field-mobile-date {
  float: left;
  width: 100%;
}

.inline-search-form-remove-segment-container,
.inline-search-form-add-segment-container{
  display: inline-block;
}

.form-field-segment .inline-search-form-remove-segment {
  display: none;
}

/* validation errors */
.error{
  border: 1px solid #ff0000 !important;
}

/* DEFAULTS */
input:focus,
button:focus,
select:focus,
textarea:focus {
  outline: 0;
}

.newsletter-box form {
  position: relative;
}

.newsletter-box form .response {
  left: 0;
  width: 100%;
  top: 110%;
  padding: 8px;

  -webkit-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
  -moz-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
  box-shadow: 0 4px 4px rgba(0,0,0,0.2);
}

.flight-class .select-wrapper .fa,
.search-dropdown-toggle > .fa,
.form-field-passengers .passenger-toggle > .fa {
  position: absolute;
  top: 50%;
  font-size: 9px;
}

.search-dropdown-toggle > .fa,
.form-field-passengers .passenger-toggle > .fa {
  right: 10px;
  margin-top: -5px;
  color: #666;
}

.flight-class .select-wrapper .fa {
  right: 0;
  margin-top: -4px;
}

.flight-class .select-wrapper {
  padding-right: 20px !important;
  position: relative;
}

.clear-input {
  position: absolute;
  top: 1px;
  right: 0;
  bottom: 1px;
  line-height: 48px;
  width: 30px;
  font-size: 20px;
  color: #aaa;
  text-align: center;
  z-index: 2;
  cursor: pointer;
}

.clear-input:after {
  content: '\00D7';
}

.clear-input:hover {
  color: #333;
}

.main-search-form input.has-clear {
  padding-right: 30px;
}

::-ms-clear {
 display: none;
}

.search-selection-wrap .main-search-form {
  display: none;
}

.search-selection-wrap .flights.main-search-form {
  display: block;
}

.search-selection-tabs {
  font-size: 0;
  margin-bottom: 20px;
  border-bottom: 2px solid rgba(255,255,255,0.2);
}

.search-selection-tab {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 -2px 0;
  padding: 12px;
  cursor: pointer;
  text-transform: uppercase;
  font-size: 14px;
  text-align: center;
  color: #ffffff;
  font-weight: 900;
  border-bottom: 2px solid;
  border-color: transparent;
}

.search-selection-tab + .search-selection-tab {
  margin-left: 5px;
}

.search-selection-tab:hover,
.search-selection-tab.active {
  color: #FFFACF;
  border-color: #ffffff;
}

.search-selection-tab .jf-icon,
.search-selection-tab span {
  display: inline-block;
  vertical-align: middle;
}

.search-selection-tab.cruises .fa,
.search-selection-tab .jf-icon {
  margin-right: 8px;
  font-size: 13px;
}

.main-search-form .search-field-wrap {
  vertical-align: top;
  position: relative;
}

.search-dropdown-toggle {
  position: relative;
}

.main-search-form .search-field-wrap.rooms {
  width: 150px;
}

.main-search-form .search-field-wrap.guests {
  width: 165px;
}

.main-search-form .search-field-wrap.checkin,
.main-search-form .search-field-wrap.checkout {
  width: 140px;
}

.main-search-form .search-field-wrap.checkin-smaller,
.main-search-form .search-field-wrap.checkout-smaller {
  width: 120px;
}

.main-search-form .search-field-wrap.submit {
  width: 200px;
}

.main-search-form .advanced-search {
  display: block;
  color: #fff;
  font-weight: 600;
  padding: 5px;
  margin: 5px 0 -10px 0;
  font-size: 14px;
  vertical-align: middle;
  line-height: 1;
}

.main-search-form .advanced-search:hover,
.main-search-form .advanced-search:focus,
.main-search-form .advanced-search:active {
  color: #FFFFFF;
}

.main-search-form-validation {
  display: none;
  position: absolute;
  z-index: 5;
  left: 5px;
  top: 100%;
  margin-top: -5px;
  padding: 10px 12px;
  background: #CA5845;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
  white-space: nowrap;
  border-radius: 2px;
}

.main-search-form-validation:after {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 20px;
  width: 0;
  height: 0;
  pointer-events: none;
  border-style: solid;
  border-width: 0 6px 6px 6px;
  border-color: transparent transparent #CA5845 transparent;
}

.home.index .home-page-recent-items-title,
.home.index .form-field-segment .multicity-btn,
.home.index .item-hotels-search input[type=checkbox] + label,
.home.index .flight-class .item a,
.home.index .flight-type .item a,
.home.index .search-selection-tab {
  text-shadow: 0 1px 1px rgba(0,0,0,.2);
}

.main-search-form .invalid input,
.invalid .cruises-text {
  color: #711505;
  border-color: #f3c1b8;
}

.has-icons .form-field-wrap.invalid:before,
.has-icons .form-field-wrap.invalid > a:before {
  color: #d8b4ae;
}




@media only screen and (min-width: 1161px) {

  .home .inline-search-form .column.search {
      width: 360px;
  }

  .form-wrap-oneway .form-field-to,
  .form-wrap-oneway .form-field-from,
  .form-wrap-multi .form-field-to,
  .form-wrap-multi .form-field-from {
      width: 40%;
  }

  .form-wrap-multi .form-field-from-date,
  .form-wrap-oneway .form-field-from-date {
      width: 20%;
  }

}




@media only screen and (min-width: 1051px) {

  .has-date-picker .form-wrap-multi .form-field-from-date,
  .has-date-picker .form-field-mobile-date,
  .has-date-picker .form-field-to,
  .has-date-picker .form-field-from {
      width: 33.3333%;
  }

}




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

  .form-wrap-oneway .form-field-to,
  .form-wrap-oneway .form-field-from,
  .form-wrap-multi .form-field-to,
  .form-wrap-multi .form-field-from,
  .form-field-to,
  .form-field-from,
  .form-field-to-date,
  .form-field-from-date {
      width: 50%;
  }

  .form-wrap-multi .form-field-from-date,
  .form-wrap-oneway .form-field-from-date {
      width: 100%;
  }

  .inline-search-form .table-wrap > .column {
      display: block;
  }

  .inline-search-form .column.search {
      width: auto;
  }

  .mobile-calendar-toggle,
  .main-search-form input:not([type=checkbox]) {
      border-bottom: 0;
  }

  .form-wrap-multi .mobile-calendar-toggle,
  .main-search-form .form-wrap-multi .form-field-from-date input {
      border-bottom: 1px solid #e5e5e5;
  }

  .mobile-calendar-toggle,
  .rooms .search-dropdown-toggle.passenger-toggle,
  .form-field-wrap.checkout input,
  .form-field-wrap.destination input,
  .main-search-form .form-field-to input,
  .main-search-form .form-field-to-date input,
  .main-search-form .form-wrap-oneway .form-field-from-date input,
  .main-search-form .form-wrap-multi .form-field-from-date input {
      border-right-color: #e5e5e5;
  }

  .rooms .search-dropdown-toggle.passenger-toggle {
      border-radius: 0;
  }

  .form-field-button a.form-field-submit-button,
  .main-search-form button,
  .form-field-button button {
      border-radius: 0 0 2px 2px;
  }

  .search-selection-tabs {
      margin-bottom: 15px;
      text-align: center;
  }

  .search-selection-tab {
      padding: 12px 10px;
  }

  .flight-class ul,
  .flight-type ul {
      text-align: center;
  }

  .flight-class ul {
      margin: 0;
  }

  .flight-type ul {
      margin: 0 0 10px 0;
  }

  .form-wrap-multi .form-fields-wrap-multi-container {
      margin-bottom: 10px;
  }

  .form-field-segment {
      position: static;
      width: auto;
      right: auto;
      top: auto;
      margin: 0;
      overflow: hidden;
  }

  .inline-search-form-remove-segment-container,
  .inline-search-form-add-segment-container {
      float: left;
      padding-right: 10px;
  }

  .form-field-segment .multicity-btn {
      margin: 5px 0 10px 0;
      display: inline;
      line-height: 45px;
  }

  .main-search-form-field-wrap {
      display: block;
      font-size: 0;
  }

  .main-search-form-field-wrap > .column {
      display: inline-block;
      font-size: 14px;
      width: 100%;
  }

  .form-field-wrap.destination {
      width: 100%;
  }

  .main-search-form .search-field-wrap.checkin,
  .main-search-form .search-field-wrap.checkout {
      width: 50%;
  }

  .main-search-form .search-field-wrap.submit,
  .main-search-form .search-field-wrap.rooms {
      width: 100%;
  }

  .main-search-form .passenger-toggle {
      border-radius: 0 0 0 2px;
  }

  .main-search-form .form-wrap-multi .passenger-toggle {
      border-radius: 2px 0 0 2px;
  }

  .form-field-wrap.destination input {
      border-radius: 2px 2px 0 0;
  }

  .form-field-wrap.cars input {
      border-radius: 2px 2px 0 0;
  }

  .form-field-from input {
      border-radius: 2px 0 0 0;
  }

  .form-field-to input {
      border-radius: 0 2px 0 0;
  }

  .form-wrap-multi .mobile-calendar-toggle,
  .form-wrap-multi .form-field-from-date input {
      border-radius: 0 0 2px 2px;
  }

  .form-wrap-multi .form-field-button a.form-field-submit-button,
  .main-search-form .form-wrap-multi button,
  .form-field-button .form-wrap-multi button {
      border-radius: 0 2px 2px 0;
  }

  .cruises.main-search-form,
  .hotels.main-search-form {
      margin-bottom: 20px;
  }

  .flight-class .item.item-hotels-search {
      width: 100%;
      margin: 10px 0 5px 0;
      border-top: 1px dashed rgba(255,255,255,0.4);
      padding-top: 10px;
  }

  .flight-class .item {
      margin: 8px;
  }

}




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

  .search-selection-wrap.home-page {
      -webkit-border-radius: 0 0 5px 5px;
      -moz-border-radius: 0 0 5px 5px;
      border-radius: 0 0 5px 5px;
  }

  .main-search-form-validation {
      margin: 0;
  }

  .main-search-form .search-field-wrap.guests {
      width: 100%;
  }

}




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

  .hp-form-wrap .campaign {
      max-width: none;
  }

  .campaign select {
      border: 2px solid #333333;
      background: #222;
  }

  .search-dropdown {
      top: 10px;
      left: 10%;
      width: 225px;
  }

}




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

  .form-field-segment .multicity-btn,
  .search-selection-tab,
  .item-hotels-search input[type=checkbox] + label,
  .flight-class .item a,
  .flight-type .item a {
      color: #444 !important;
  }

  .home.index .home-page-recent-items-title,
  .home.index .form-field-segment .multicity-btn,
  .home.index .item-hotels-search input[type=checkbox] + label,
  .home.index .flight-class .item a,
  .home.index .flight-type .item a,
  .home.index .search-selection-tab {
      text-shadow: none !important;
  }

  .search-selection-tabs {
      border-bottom: 1px dashed #e5e5e5;
      background: #f5f5f5;
      margin: 0;
  }

  .search-selection-tab.active {
      color: #455d88 !important;
  }

  .form-field-segment .multicity-btn,
  .item-hotels-search input[type=checkbox] + label,
  .search-selection-tab,
  .flight-type .item a {
      font-size: 12px;
  }

  .search-selection-tab {
      border: 0;
      margin: 0;
  }

  .search-selection-tab + .search-selection-tab {
      margin: 0;
  }

  .form-filters-wrap.flight-type {
      border-bottom: 1px dashed #e5e5e5;
      margin: 0 0 10px 0;
      padding-bottom: 5px;
  }

  .flight-type .item {
      margin: 0 5px;
  }

  .flight-type .item a.active {
      color: #455D88 !important;
  }

  .flight-type .item a {
      color: #999;
  }

  .flight-type ul {
      margin: 10px 0;
  }

  .flight-class .item.item-hotels-search {
      border-color: #e5e5e5;
  }

  .has-icons .mobile-calendar-toggle:before,
  .has-icons .search-field-wrap.checkout:before,
  .has-icons .search-field-wrap.checkin:before,
  .has-icons .form-field-wrap:before,
  .has-icons .passenger-toggle:before {
      left: 0;
  }

  .form-wrap-multi .form-field-to,
  .form-wrap-multi .form-field-from,
  .form-fields-wrap-multi-container .form-field-to,
  .form-fields-wrap-multi-container .form-field-from,
  .form-wrap-oneway .form-field-to,
  .form-wrap-oneway .form-field-from,
  .main-search-form .search-field-wrap.submit,
  .main-search-form .search-field-wrap.rooms,
  .main-search-form .search-field-wrap.checkin,
  .main-search-form .search-field-wrap.checkout,
  .form-field-passengers,
  .form-field-button,
  .form-field-to,
  .form-field-from,
  .form-field-to-date,
  .form-field-from-date {
      width: 100%;
  }

  .search-selection-wrap.home-page {
      padding: 0 20px;
  }

  .mobile-calendar-toggle,
  .main-search-form .passenger-toggle,
  .main-search-form input:not([type=checkbox]) {
      border: 0;
      border-bottom: 1px solid #e5e5e5;
  }

  .has-icons .mobile-calendar-toggle,
  .has-icons.main-search-form .passenger-toggle,
  .has-icons.main-search-form input:not([type=checkbox]) {
      padding-left: 30px;
  }

  .main-search-form .search-field-wrap.submit,
  .form-field-button {
      margin-top: 20px;
  }

  .flight-type .item {
      margin: 0 7px;
  }

  .form-field-button a.form-field-submit-button,
  .main-search-form button,
  .form-field-button button {
      border-radius: 2px;
  }

  .form-fields-wrap-multi,
  .form-fields-wrap-multi + .form-fields-wrap-multi,
  .form-fields-wrap-multi .form-filters-wrap.flight-class {
      margin-top: 20px;
  }

  .main-search-form.cruises,
  .main-search-form.hotels {
      padding-top: 10px;
  }

}




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

  .search-selection-tab.cruises .fa,
  .search-selection-tab .jf-icon {
      margin-right: 5px;
      font-size: 10px;
  }

  .search-selection-tab {
      padding-left: 8px;
      padding-right: 8px;
  }

}
.cruises-text {
  position: relative;
  line-height: 50px;
  padding-right: 25px;
  padding-left: 35px;
}

.cruises-text .ellipsis-wrap {
  display: block;
}

.cruise-destination .cruises-text {
  border-radius: 2px 0 0 2px;
}

.cruises-text .fa-chevron-down {
  right: 10px;
  margin-top: -5px;
  color: #666;
  position: absolute;
  top: 50%;
  font-size: 9px;
}




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

  .cruises-text {
      border-bottom: 0;
      border-right-color: #e5e5e5;
  }

  .cruise-destination .cruises-text {
      border-radius: 2px 2px 0 0;
  }

}




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

  .cruises-text {
      border: 0;
      border-bottom: 1px solid #e5e5e5;
      padding-left: 30px;
  }

  .has-icons .form-field-wrap > .cruises-text:before {
      left: 0;
  }

}
.hp-form-wrap.general-container {
  width: 90%;
}

.hp-photo-wrap {
  background-color: #5c6d7e;
  padding: 35px 15px;
  background-size: cover;
  position: relative;
}

.hp-slogan {
  font-family: "Lato", sans-serif;
  line-height: 1;
  color: #fff;
  margin: 0 0 10px 0;
  font-size: 26px;
  text-shadow: 0 2px 1px rgba(0,0,0,0.1);
  font-weight: 900;
  text-align: left;
  display: none;
}

.hp-slogan.flights {
  display: block;
}
.hp-slogan.flights.event-sale {
  color: #c19a63;
}

.hp-slogan strong,
.slogan-subtitle strong {
  font-weight: inherit;
}

.hp-slogan .main {
  text-transform: uppercase;
}

.slogan-subtitle {
  margin: 5px 0 0 0;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 400;
  color: #ffffff;
}
.hp-slogan.flights.event-sale .slogan-subtitle{
  color: #c19a63;
}

.slogan-subtitle strong {
  display: inline-block;
  font-weight: inherit;
}

.avg-wrapper .inner-wrapper {
  margin: auto;
  width: 95%;
  max-width: 1170px;
}

.section-benefits {
  padding: 25px 0;
}

.threeboxes-wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.threeboxes-wrap strong {
  font-size: 1.25em;
  display: block;
  margin-bottom: 1px;
  font-weight: 600;
}

.threeboxes-item {
  padding-right: 25px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex: 1;
}

.threeboxes-container {
  padding-right: 25px;
  font-size: 14px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  flex: 0 1 auto;
}

.threeboxes-wrap .icon {
  flex: 0 1 auto;
}

.threeboxes-wrap .icon-wrap {
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 28px;
  border: 1px solid #64A04D;
  color: #64A04D;
  font-size: 12px;
  border-radius: 50%;
}

.threeboxes-wrap .text {
  padding-left: 10px;
  flex: 1;
}

.threeboxes-wrap .text span {
  display: inline-block;
  position: relative;
  padding-right: 10px;
}

.threeboxes-wrap .text .fa {
  position: absolute;
  top: 2px;
  right: -4px;
  font-size: 11px;
  color: #999;
}

.home-deals-wrap {
  position: relative;
  font-family: "Lato",sans-serif;
  color: #444;
}

.home-deals-title {
  font-size: 18px;
  line-height: 1.1;
  margin: 0 0 15px 0;
  text-align: center;
  padding-top: 20px;
  border-top: 1px dashed #e5e5e5;
}

.home-deals-title .main {
  font-size: 24px;
  font-weight: 700;
  margin: 15px 0 5px;
  color: #E07915;
}

.home-deals-title .subtitle {
  font-size: 18px;
}

.home-deals-list {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.home-deals-list .item {
  padding: 8px;
  cursor: pointer;
  flex: 0 1 25%;
}

.home-deals-list .img-wrap {
  overflow: hidden;
  padding: 10px 10px 0 10px;
  border: 1px solid #e5e5e5;
  border-bottom: 0;
  max-height: 205px;
}

.home-deals-list .item img {
  width: 100%;
  height: auto;
  display: block;
  transition: opacity .3s;
  transform: translate3d(0,0,0);
}

.home-deals-tag {
  margin-bottom: -1px;
  border: 1px solid #e5e5e5;
  border-top: 0;
  padding: 0 10px;
  line-height: 1.2;
}

.home-deals-list .item:hover .img-wrap,
.home-deals-list .item:hover .home-deals-tag {
  background: #f5f5f5;
  border-color: #455D88;
}

.home-deals-list .item:hover img {
  opacity: 0.8;
}

.home-deals-tag .column {
  vertical-align: middle;
  padding-top: 10px;
  padding-bottom: 10px;
}

.home-deals-tag .icon {
  width: 8px;
  font-size: 12px;
  vertical-align: top;
}

.home-deals-tag .icon .fa {
  margin-top: 2px;
}

.home-deals-tag .destinations {
  padding-left: 6px;
  padding-right: 10px;
}

.home-deals-tag .destinations .city {
  font-weight: 700;
}

.home-deals-tag .destinations .country {
  font-size: 12px;
  margin-top: 1px;
  color: #666;
}

.home-deals-tag .price {
  width: 90px;
  font-weight: 700;
  font-size: 17px;
  color: #E07915;
  text-align: right;
}

.home-deals-list .per-person-disclaimer {
  font-size: 10px;
  font-weight: normal;
  color: #999;
  margin-top: -3px;
}

.home-deals-list li ._date {
  font-size: 10px;
  font-weight: bold;
  display: block;
  position: absolute;
  z-index: 950;
  background: #44587b;
  color: #FFF;
  padding: 3px 8px;
  margin: 11px;
  background: rgba(0, 0, 0, .3);
  border-bottom-right-radius: 4px;
}
.home-deals-title .hp-deals-subtitle {
  padding: 15px 0 0 0;
  color: rgb(153, 153, 153);
  font-size: 11px;
  text-align: center;
}


.home-deals-tag sup {
  font-weight: 600;
  margin-left: 1px;
  font-size: 12px;
  vertical-align: top;
}

/* sherpa iframe */
.sherpa-container {
  margin: 60px auto 25px;
  padding: 0 15px;
  max-width: 1200px;
  border-bottom: 1px solid #dcdcdc;
  font-family: "Lato",sans-serif;
  color: #444;
}

.sherpa-title {
  font-size: 24px;
  font-weight: 700;
  line-height: 40px;
  text-align: center;
  color: #E07915;
}

.sherpa-subtitle {
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
}

.avg-wrapper {
  margin: 5px 0 15px 0;
}

.avg-wrapper .inner-wrapper {
  padding: 0 0 10px 0;
  font-size: 12px;
  color: #999;
  border-bottom: 1px dashed #e5e5e5;
}

.feefo-container {
  text-align: center;
  background: #f1f1f1;
  font-weight: 600;
  color: #666;
}

.feefo-container ul {
  padding: 5px;
  font-size: 0;
}

.feefo-container li {
  padding: 0 10px;
  display: inline-block;
  vertical-align: middle;
}

.feefo-container .img-wrap {
  text-align: left;
}

.feefo-container .tpilot-stars img {
  display: block;
}

.feefo-container .powered {
  font-size: 11px;
  line-height: 14px;
  text-align: left;
}

.feefo-container .powered img {
  vertical-align: text-bottom;
}

.feefo-container .social {
  padding-left: 25px;
}

.feefo-container .social span {
  height: 20px !important;
}

.feefo-container .social iframe {
  width: 100px !important;
  height: 20px !important;
}

.landing-disclaimer {
  font-size: 11px;
  line-height: 1.2;
  margin: 5px 0 120px 0;
  color: #999;
}

.home-page-recent-items .inner {
  font-size: 0;
  margin: 0 -5px;
}

.home-page-recent-items .home-page-recent-item {
  font-size: 14px;
  width: 50%;
  display: inline-block;
  vertical-align: top;
  padding: 20px 5px 0 5px;
}

.home-page-recent-items-title {
  margin-bottom: 10px;
  color: #fff;
  font-weight: 700;
  font-size: 16px;
  text-transform: uppercase;
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}

.home-page-recent-items-title span {
  font-weight: normal;
  font-size: 14px;
  text-transform: none;
  display: inline-block;
}

.home-page-recent-items-title a {
  font-size: 13px;
  color: inherit;
  text-transform:  none;
  font-weight: normal;
  display: inline-block;
}

.home-page-recent-items-title a:hover {
  text-decoration: underline;
}

.home-page-recent-searches .recent-search-list {
  font-size: 0;
  margin: 0 -3px;
}

.recent-search-list .column {
  vertical-align: middle;
  height: 85px;
}

.home-page-recent-searches .item {
  display: inline-block;
  font-size: 14px;
  width: 33.333333%;
  padding: 0 3px;
  position: relative;
}

.homepage-recent-search {
  padding: 0 5px 0 15px;
  color: #fff;
  font-weight: 600;
  line-height: 1.1;
}

.home-page-recent-searches .inner-wrap {
  background: rgba(0,0,0,0.4);
}

.home-page-recent-searches .homepage-price-alert-trigger {
  width: 40px;
  text-align: center;
  position: relative;
  color: #ffffff;
}

.homepage-recent-search .price {
  font-weight: 900;
  font-size: 16px;
  color: #FFF8C3;
}

.homepage-recent-search .destinations {
  font-weight: 900;
  font-size: 14px;
}

.homepage-recent-search .destinations span {
  display: inline-block;
}

.homepage-recent-search .destinations .jf-icon {
  font-size: 9px;
  margin: 0 5px;
}

.homepage-recent-search .dates {
  margin: 3px 0;
  font-weight: 700;
  font-size: 13px;
}

/* Airfare alert triggers - recent searches */
.home-page-recent-searches .price-alert-wrap a {
  color: inherit;
}

.home-page-recent-searches .pa-trigger {
  display: block;
  line-height: 85px;
  font-size: 17px;
}

.home-page-recent-searches .homepage-price-alert-trigger .fa-check {
  color: #85de29;
}

.pa-tt {
  position: absolute;
  background: #fff;
  padding: 8px 12px;
  font-size: 12px;
  color: #455D88;
  font-weight: 600;
  line-height: 1.2;
  border-radius: 2px;
  z-index: 2;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.pa-tt:before {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 5px 5px 5px;
  border-color: transparent transparent #ffffff transparent;
  bottom: 100%;
  left: 15px;
}

.pa-tt-success {
  background: #64A700;
  color: #fff;
}

.pa-tt.pa-tt-success:before {
  border-color: transparent transparent #64A700 transparent;
}

.pa-tt-error {
  background: #CA5845;
  color: #fff;
}

.pa-tt.pa-tt-error:before {
  border-color: transparent transparent #CA5845 transparent;
}

.pa-tt.pa-tt-loading {
  padding-left: 32px;
}

.pa-tt .bars-loader {
  position: absolute;
  left: 12px;
  top: 50%;
  height: 10px;
  margin-top: -5px;
  line-height: 17px;
}

.pa-tt span {
  color: inherit;
}

.homepage-upcoming-trip-wrap {
  background: #fff;
  border-radius: 2px;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  line-height: 1;
}

.homepage-upcoming-trip-wrap .column {
  vertical-align: middle;
}

.homepage-upcoming-trip-wrap .column,
.home-upcoming-flight-upsell .item a {
  height: 83px;
}

.homepage-upcoming-trip-outer .home-upcoming-flight-upsell {
  width: 240px;
}

.homepage-upcoming-trip-wrap .column.icon {
  width: 51px;
  border-right: 1px solid #e5e5e5;
  background: #f5f5f5;
}

.homepage-upcoming-trip-wrap .trip-information {
  padding: 0 15px;
  font-weight: 700;
}

.home-upcoming-flight-upsell .item {
  display: inline-block;
}

.home-upcoming-flight-upsell ul {
  font-size: 0;
  text-align: right;
}

.home-upcoming-flight-upsell .item a {
  display: table-cell;
  vertical-align: middle;
  width: 80px;
  border-left: 1px solid #e5e5e5;
  background: #f5f5f5;
  color: #455D88;
  font-size: 12px;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
}

.home-upcoming-flight-upsell .item a:hover {
  background: #eaeaea;
}

.home-upcoming-flight-upsell .icon {
  font-size: 14px;
}

.home-upcoming-flight-upsell .label {
  margin-top: 4px;
}

.homepage-upcoming-trip-wrap .icon-wrap {
  width: 34px;
  height: 34px;
  line-height: 37px;
  border: 1px solid #455D88;
  border-radius: 50%;
  text-align: center;
  font-size: 14px;
  color: #455d88;
  background: #fff;
  margin: auto;
}

.homepage-upcoming-trip-wrap .cities {
  font-size: 18px;
  font-weight: 900;
  color: #455d88;
}

.homepage-upcoming-trip-wrap .cities:hover {
  color: #3865b5;
}

.homepage-upcoming-trip-wrap .cities span {
  vertical-align: middle;
}

.homepage-upcoming-trip-wrap .cities .jf-icon {
  margin: 0 5px;
  font-size: 11px;
  display: inline-block;
  height: 11px;
}

.homepage-upcoming-trip-wrap .travel-time {
  margin: 5px 0;
  color: #444;
}

.homepage-upcoming-trip-wrap .reference-number {
  color: #999;
}

.homepage-upcoming-trip-wrap .reference-number a {
  color: #599401;
  display: inline-block;
}

.homepage-upcoming-trip-wrap .reference-number a:hover {
  color: #6eab13;
}

.homepage-user-welcome-msg {
  background: #f9f9f9;
  color: #455D88;
  padding: 10px 0;
  border-bottom: 1px solid #e5e5e5;
  border-top: 1px solid #e5e5e5;
  text-align: center;
  font-size: 14px;
  line-height: 1.2;
}

.homepage-user-welcome-msg .general-container {
  position: relative;
}

.homepage-user-welcome-msg .close-msg {
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -12px;
  font-size: 24px;
}

.homepage-user-welcome-msg strong {
  display: inline-block;
}

/* MOBILE-APP PROMOTION BUTTON */

.mobile-app-promotion {
  position: absolute;
  right: 0;
}

.mobile-app-promotion a {
  display: block;
  border: 1px solid #fff;
  border-radius: 2px;
  padding: 12px 20px;
  color: #fff;
  line-height: 1.1;
}

.mobile-app-promotion a:hover {
  background: #455D88;
  border-color: #455D88;
}

.mobile-app-promotion p {
  margin-bottom: 0;
  font-size: 13px;
}

.mobile-app-promotion .app-button-text,
.mobile-app-promotion .jf-logo-white {
  display: inline-block;
  vertical-align: middle;
}

.mobile-app-promotion .jf-logo-white {
  width: 20px;
}

.mobile-app-promotion img {
  display: block;
}

.mobile-app-promotion .app-button-text {
  padding: 0 10px;
}

.mobile-app-promotion .app-button-text p {
  font-family: 'Lato', sans-serif;
  font-weight: 900;
}

.mobile-app-promotion  .app-button-text span {
  font-size: 12px;
}




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

  .homepage-upcoming-trip-wrap .icon-wrap {
      width: 28px;
      height: 28px;
      line-height: 29px;
      font-size: 12px;
  }

  .homepage-upcoming-trip-wrap .column.icon {
      width: 40px;
  }

  .homepage-upcoming-trip-outer .home-upcoming-flight-upsell {
      width: 225px;
  }

  .home-upcoming-flight-upsell .item a {
      width: 75px;
  }

}




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

  .hp-form-wrap.general-container {
      max-width: 530px;
  }

  .hp-slogan {
      text-align: center;
  }

  .slogan-subtitle {
      font-size: 16px;
  }

  .home-page-recent-items {
      margin-top: 0;
      padding-top: 5px;
  }

  .home-page-recent-items .home-page-recent-item {
      width: 100%;
      padding: 0;
      margin-top: 10px;
  }

  .home-page-recent-items .home-page-recent-item + .home-page-recent-item {
      margin-top: 20px;
  }

  .home-page-recent-items .inner {
      margin: 0;
  }

  .homepage-recent-search .dates {
      font-size: 12px;
  }

  .home-deals-list .item {
      padding: 7px;
  }

  .mobile-app-promotion {
      position: relative;
      max-width: 200px;
      margin: auto;
      margin-bottom: 35px;
      text-align: center;
  }

  .mobile-app-promotion a {
      padding: 10px 20px;
  }

  .mobile-app-promotion p {
      font-size: 12px;
  }

  .mobile-app-promotion .jf-logo-white,
  .mobile-app-promotion .app-button-text span {
      display: none;
  }

}




@media only screen and (min-width: 1024px) {

  .hp-photo-wrap {
      background: url('/images/jf-homepage-bg.jpg') no-repeat center;
      background-size: cover;
      background-color: #f5f5f5;
      padding: 30px 0 40px 0;
      position: relative;
  }
  .hp-photo-wrap.event-sale {
      background-image: url('/images/black_friday_2023_jf.png');
  }

  .hp-photo-wrap:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      background: rgba(0,0,0,0.3);
  }

  .home-page-recent-searches .pa-trigger:hover,
  .homepage-recent-search:hover .price,
  .homepage-recent-search:hover {
      color: #6cbbff;
  }

  .home-page-recent-searches .pa-trigger:hover .jf-notification:before {
      content: "\4b";
  }

}




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

  .hp-photo-wrap.event-sale {
      background-image: url('/images/black_friday_2023_jf.png');
  }

  .hp-photo-wrap {
      padding: 25px 15px;
  }

  .hp-slogan {
      font-size: 26px;
  }

  .home-deals-list .item {
      flex: 0 1 33%;
  }

}




@media only screen
and (max-width: 1023px)
and (min-width: 768px) {

  .section-benefits {
      text-align: center;
      padding: 15px 0;
  }

  .threeboxes-container {
      padding-right: 0;
      flex-direction: column;
      justify-content: center;
  }

  .threeboxes-container .icon {
      margin-bottom: 10px;
  }

  .threeboxes-wrap .text {
      padding: 0;
  }
}




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

  .hp-slogan{
      text-align: center;
      font-size: 22px;
      margin: 0 0 20px 0;
  }

}




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

  .newsletter-toggle .disclaimer {
      display: block;
      margin-top: 10px;
      border-top: 2px solid #5E78A5;
      padding-top: 5px;
  }

  .newsletter-toggle .text {
      margin: 10px 5px;
  }

}




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

  .home-top{
      margin:0 auto;
      width:90%;
  }

  .home-top img{
      width:100%;
  }

  .section-benefits {
      padding: 20px 0;
  }

  .threeboxes-wrap {
      flex-direction: column;
      align-items: center;
  }

  .threeboxes-item {
      padding-right: 0;
      width: 100%;
      max-width: 375px;
      justify-content: flex-start;
  }

  .threeboxes-item:not(:last-child) {
      margin-bottom: 25px;
  }

  .threeboxes-container {
      max-width: 375px;
  }

  .home-deals-wrap {
      margin: 0 auto 35px auto;
  }

  .home-deals-wrap {
      max-width: 500px;
      margin: auto;
  }

  .home-deals-title .main {
      font-size: 16px;
  }

  .home-deals-title .subtitle {
      font-size: 14px;
  }

  .home-deals-list .item {
      flex: 0 1 50%;
  }

  .landing-disclaimer {
      margin: 10px 0 20px 0;
  }

  .home-page-recent-searches .homepage-price-alert-trigger {
      width: 30px;
  }

}




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

  .homepage-upcoming-trip-outer > .column {
      display: block;
  }

  .homepage-upcoming-trip-outer .home-upcoming-flight-upsell {
      width: auto;
  }

  .home-upcoming-flight-upsell .item {
      display: table-cell;
  }

  .homepage-upcoming-trip-wrap .column {
      height: auto;
  }

  .home-upcoming-flight-upsell .item:first-child a {
      border-left: 0;
  }

  .home-upcoming-flight-upsell .item a {
      width: auto;
      height: auto;
      padding: 10px;
      text-align: center;
      display: block;
  }

  .homepage-upcoming-trip-wrap .trip-information {
      padding: 15px;
      background: #fffcf5;
  }

  .home-upcoming-flight-upsell ul {
      width: 100%;
      border-top: 1px solid #e5e5e5;
      background: #f5f5f5;
      display: table;
      table-layout: fixed;
  }

}




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

  .hp-photo-wrap {
      padding: 15px;
  }

  .hp-slogan{
      margin-bottom: 10px;
  }

  .feefo-container .stars {
      font-size: 12px;
  }

  .feefo-container {
      padding: 5px 0;
  }

  .feefo-container li {
      padding: 3px;
      font-size: 12px;
  }

  .feefo-container .number {
      font-size: 20px;
  }

  .feefo-container img {
      width: 60px;
      height: auto;
  }

}




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

  .slogan-subtitle {
      display: none;
  }

  .hp-slogan {
      display: none !important;
      position: absolute;
      visibility: hidden;
  }

  .hp-photo-wrap {
      padding: 0;
      background: none;
  }

  .hp-form-wrap.general-container {
      width: 100%;
  }

  .home-page-recent-items {
      margin: 10px 0 15px 0;
      padding-top: 10px;
      border-top: 1px dashed #e5e5e5;
  }

  .home-page-recent-items-title {
      color: #444;
      font-size: 14px;
      text-align: center;
  }

  .homepage-recent-search {
      display: block;
      height: auto;
      padding: 10px 12px;
      color: #455d88;
      overflow: hidden;
  }

  .home-page-recent-searches .inner-wrap {
      border: 1px dashed #d5e3ea;
      background: #f6fcff;
  }

  .home-page-recent-searches .homepage-price-alert-trigger {
      color: #455d88;
      width: 50px;
  }

  .recent-search-list .column {
      height: auto;
  }

  .home-page-recent-searches .pa-trigger {
      line-height: 75px;
  }

  .homepage-recent-search .dates {
      margin: 2px 0 4px 0;
      color: #7f90ad;
  }

  .home-page-recent-searches .homepage-price-alert-trigger .fa-check,
  .homepage-recent-search .price {
      color: #64a700;
  }

  .home-page-recent-searches .recent-search-list {
      margin: auto;
  }

  .home-page-recent-searches .item {
      width: 100%;
      padding: 0;
      display: block;
  }

  .home-page-recent-searches .item + .item {
      margin-top: 5px;
  }

  .homepage-user-welcome-msg {
      display: none;
  }

  .pa-tt.pa-tt-loading {
      background: #455D88;
      color: #fff;
  }

  .pa-tt.pa-tt-loading:before {
      border-color: transparent transparent #455D88 transparent;
  }

  .pa-tt-loading .bars-loader .loading-bar {
      background: #fff;
  }

  .mobile-app-promotion {
      display: none;
  }

  .home-deals-list .item {
      flex: 0 1 100%;
  }

}




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

  .threeboxes-wrap {
      max-width: 300px;
  }

  .threeboxes-left,
  .threeboxes-middle,
  .threeboxes-right {
      font-size: 13px;
  }

  .threeboxes-wrap .text {
      padding-left: 10px;
  }

  .home-deals-list .item {
      width: 100%;
      padding: 5px 10px;
  }

  .section-benefits,
  .feefo-container,
  .home-deals-list .item .img-wrap {
      display: none;
  }

  .home-deals-tag {
      border: 1px solid #e5e5e5;
  }

}





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

  .feefo-container .stars {
      width: 100%;
      margin: auto;
  }

}
.clearfix:after {
content: "";
display: table;
clear: both;
}

.clear{
clear:both;
}

p{
margin-bottom:15px;
}

p:last-child{
  margin-bottom:0px;
}

.uppercase{
  text-transform:uppercase;
}

.underline{
  text-decoration:underline;
}

.underline-pointer{
  text-decoration:underline;
  cursor:pointer;
}

.pointer{
cursor:pointer;
}

.help-pointer{
  cursor: help;
}

.default-pointer {
  cursor: default;
}

.toggle{
cursor:pointer;
}

.left{
float:left;
}

.right{
float:right;
}

.center{
text-align:center !important;
}

/* sizing */

.small{
font-size:11px;
font-weight:normal;
}

.xsmall{
font-size:10px;
}

.regular{
font-size:13px;
}

.big{
font-size:15px;
}

.bigger{
font-size:18px;
}

.biggest{
font-size:24px;
}

.massive{
font-size:30px;
}

.huge{
  font-size:45px;
  line-height:55px;
}

.stupid-big{
  font-size:60px;
  line-height:70px;
}

.lheight11{
  line-height:11px;
}

.lheight12{
  line-height:12px;
}

.lheight13{
  line-height:13px;
}

.lheight14{
  line-height:14px;
}

.lheight15{
  line-height:15px;
}

.lheight16{
  line-height:16px;
}

/* colors */

.grey{
color:#999;
}

.grey-mid{
  color:#666;
}

.black{
  color:#333;
}

.blue{
color: #0C6AA0;
}

.blue-light{
  color:#87dafa;
}

.green{
color:#419900;
}

.green-bright{
color:#80e83a;
}

.green-superbright{
color:#9eff56;
}

.green-muted{
  color:#87b65d;
}

.red,
.pink {
color: #DA4717;
}

.white{
color:#fff;
}

.yellow{
  color:#ffff00;
}

.beige{
  color:#cec9bf;
}

/* vertical align */

.middle,.middle10px,.middle9px,.middle8px,.middle7px,.middle6px,.middle5px,.middle4px,.middle3px,.middle2px,.middle1px {
vertical-align:middle;
}
.middle10px{
margin-top:-10px;
}
.middle9px{
margin-top:-9px;
}
.middle8px{
margin-top:-8px;
}
.middle7px{
margin-top:-7px;
}
.middle6px{
margin-top:-6px;
}
.middle5px{
margin-top:-5px;
}
.middle4px{
margin-top:-4px;
}
.middle3px{
margin-top:-3px;
}
.middle2px{
margin-top:-2px;
}
.middle1px{
margin-top:-1px;
}

.lineheight12{
  line-height:12px;
}

.lineheight14{
  line-height:14px;
}

.lineheight16{
  line-height:16px;
}

/* feedback */
.feedback-error{
margin:0 0 15px;
padding:10px;
color:#fff;
background:#da3838;
}

.feedback-warning{
margin:0 0 15px;
padding:10px;
color:#AD7900;
background:#F9F9CA;
}

.feedback-success{
margin:0 0 15px;
padding:10px;
color:#fff;
background:#7cb536;
}

ul.hp-error {
  margin: 10px 0 10px 0;
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  display: inline-block;
}

ul.hp-error li {
  padding: 10px 15px;
  color: #666;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
}

.error-modal-title {
  padding: 10px;
  color: #D45858;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}

.callback-modal-box .error-modal-title {
  padding-top: 30px;
}

.callback-modal-box .hp-error {
  margin-bottom: 30px;
}

.error-modal-title .fa {
  margin: -2px 10px 0 0;
  font-size: 24px;
  vertical-align: top;
}

.error-flow {
  display: none;
  margin: 15px 0 0;
  padding: 10px;
  background: #d06453;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
}

.lato-light{
  font-family:lato;
  font-weight:300;
}

img.responsive{
  width:100%;
}

.notification-reply-success {
  margin: 45px auto 0;
  padding: 25px;
  font-size: 16px;
  color: #52862C;
  max-width: 700px;
  background-color: #F3FFEA;
  border: 1px solid #D5ECC4;
  border-radius: 8px;
}

.notification-reply-success p {
  margin-top: 15px;
}

.notification-reply-success-title {
  font-weight: 900;
}

.notification-reply-warning{

  margin: 45px auto 0;
  padding: 25px;
  font-size: 16px;
  color:#AD7900;
  max-width: 700px;
  background:#F9F9CA;
  border-radius: 8px;
}

.notification-reply-warning p {
  margin-top: 15px;
}

/* Reviews page */
.review-form-container {
  margin: 25px auto;
  width: 93%;
  max-width: 1170px;
  border: 1px solid #dcdcdc;
  border-radius: 12px;
}

.review-form-container-title {
  padding: 15px;
  font-size: 24px;
  line-height: 30px;
  font-weight: 600;
  background-color: #f9f9f9;
  border-bottom: 1px solid #dcdcdc;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.review-form-container-title span {
  display: block;
  font-size: 15px;
  line-height: 21px;
  font-weight: 400;
}

.review-stats-wrap {
  padding: 15px;
  font-size: 15px;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  border-bottom: 1px dashed #ccc;
}

.review-stats-item {
  flex: 1;
  -webkit-flex: 1;
}

.review-stats-item ul li {
  margin-bottom: 5px;
}

.review-stats-item ul li:last-child {
  margin-bottom: 0;
}

.review-fields-wrap {
  padding: 15px;
}

.review-fields-wrap.msg {
  padding: 35px;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
}

.review-fields-wrap ul li label {
  padding: 0 0 5px;
  display: block;
}

.review-fields-wrap ul li>label {
  font-weight: 600;
}

.review-fields-wrap ul li input {
  padding: 10px 15px;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  position: relative;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  width: 343px;
}

.review-fields-wrap ul li {
  margin-bottom: 25px;
}

.review-fields-wrap ul > li:last-child {
  margin-bottom: 0;
}

.review-fields-wrap ul li select {
  padding: 10px 15px;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  position: relative;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Edown-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M10.293%2C3.293%2C6%2C7.586%2C1.707%2C3.293A1%2C1%2C0%2C0%2C0%2C.293%2C4.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%20fill%3D%22%23000000%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: .6em;
  background-position: calc(100% - 1.3em) center;
  background-repeat: no-repeat;
}

select::-ms-expand {
  display: none;
}

.review-fields-wrap ul li textarea {
  width: 50%;
  min-height: 200px;
  border: 1px solid #dcdcdc;
  border-radius: 3px;
}

.review-fields-wrap ul li textarea:focus {
  border: 1px solid #999;
}

.review-fields-wrap ul li ul li {
  margin-bottom: 5px;
}

.review-fields-wrap ul li ul li label {
  font-weight: 400;
}

.review-fields-wrap ul li ul li label input {
  margin: 3px;
}

button.review-form-btn {
  padding: 15px 35px;
  display: inline-block;
  color: white;
  font-size: 18px;
  font-weight: 600;
  background-color: #455D88;
  border: 0;
  outline: none;
  border-radius: 4px;
  transition: all 0.3s;
  cursor: pointer;
}

button.review-form-btn:hover {
  background-color: #576C93;
}

.review-form-container .alert {
  margin: 15px;
}

.review-back-btn {
  margin: 15px auto;
  padding: 15px 35px;
  display: block;
  width: fit-content;
  width: -moz-fit-content;
  color: white;
  font-size: 18px;
  font-weight: 600;
  background-color: #455D88;
  border-radius: 4px;
  transition: all 0.3s;
  cursor: pointer;
}

.review-back-btn:hover {
  background-color: #576C93;
  color: white;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

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

  .review-form-container {
      margin: 15px auto;
  }

}

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

  .review-form-container {
      width: 96%;
  }

  .review-stats-wrap {
      flex-direction: column;
      -webkit-flex-direction: column;
  }

  .review-fields-wrap ul li textarea {
      width: 100%;
      min-height: 150px;
  }

  .review-stats-item ul li:last-child {
      margin-bottom: 5px;
  }

  .review-stats-item:last-child ul li:last-child {
      margin-bottom: 0;
  }

}

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


  .review-form-container-title {
      font-size: 18px;
      line-height: 24px;
  }

  .review-form-container-title span {
      font-size: 13px;
      line-height: 18px;
  }

  .review-stats-wrap {
      font-size: 13px;
  }

  .review-fields-wrap ul li select {
      width: 90%;
  }

}

/*agent login*/

.agent-logged-in {
  padding: 5px;
  background-color: #ffffcc;
  text-align: center;
  border-bottom: 1px solid #d0d0aa;
}

.agent-logged-in a {
  color: #ff0000;
}

.mobile-only{
  display:none !important;
}




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

  .mobile-hide{
      display:none !important;
  }

  .mobile-only{
      display:block !important;
  }

}


@media only screen and (min-width: 1024px) {
  .cookie-warning__text {
      font-size: 14px;
  }
}
/* packages */
.package-route-detailview{
  padding:5px 10px 0;
  float:left;
  width:100%;
}

.package-arrow-details{
padding:5px 5px 0;
float:left;
width:16%;
color:#f72144;
text-align:center;
}

.package-departure-chosen{
  float:left;
  width:42%;
  text-align:center;
}

.package-arrow-chosen{
  padding:10px 5px 0;
  float:left;
  width:16%;
  color:#f72144;
  text-align:center;
}

.package-arrival-chosen{
  float:left;
  width:42%;
  text-align:center;
  position:relative;
}

table.faredetails {
  border-collapse: collapse;
  width:100%;
}

table.faredetails th{
  padding:1px 10px;
  font-size:11px;
  background:#00aeef;
  color:#fff;
  text-align:center;
  vertical-align:middle;
  border-right:1px solid #fff;
  border-bottom:1px solid #fff;
}

table.faredetails th:last-child{
  border-right:0 solid #dfdcd8;
}

table.faredetails td{
  padding:10px;
  text-align:center;
  vertical-align:middle;
  border-bottom:1px solid #dfdcd8;
}

table.faredetails td:last-child{
  border-right:0 solid #dfdcd8;
}

table.faredetails td.layover{
  padding:5px 10px;
  background:#d8f4ff;
  display: table-cell;
}

/* transition page */

.transition-wrap{
margin:100px auto 0;
width:700px;
text-align:center;
}

/* transition loading */
#fare-loading-modal{
visibility:visible;
left:0;
top:0;
position:fixed;
width:100%;
height:100%;
z-index:1000;
background:rgba(0, 0, 0, 0.8);
}

#fare-loading-modal .dimmed{
background:rgba(0, 0, 0, 0.8);
}

.container-transition{
margin:166px 0 0 -241px;
padding:30px 15px 15px;
border:0 solid #e1e1e1;
text-align:center;
font-size:18px;
line-height:normal;
width:482px;
left:50%;
background-color:#fff;
position:relative;
border-radius:16px;
}

.modal-close-btn{
position:absolute;
top:-13px;
right:-13px;
}

.transition-loading-msg {
padding:15px;
border:1px solid #e1e1e1;
background:#f7f7f7;
}

.sb-field-wrap{
margin:0;
padding:0;
overflow:hidden;
width:100%;
}

.sb-field-left{
float:left;
background:transparent;
width:50%;
text-align:left;
}

.sb-field-right{
float:left;
background:transparent;
width:50%;
text-align:right;
}

.sb-field-left input{
margin:0;
padding:0;
text-align:left;
width:55px;
}

.sb-field-right input{
margin:0;
padding:0;
text-align:right;
width:55px;
}

input.sb-field{
font-size:11px;
font-weight:700;
border:0 solid #bbb;
}

input.sb-field[disabled='disabled']{
background:transparent;
}


/* step 2 chosen package */

.chosen-package-wrap{
margin-bottom:20px;
padding:5px 15px;
background:#fff;
border:1px solid #dfdcd8;
}

.chosen-package-destination{
padding-top:8px;
float:left;
width:23%;
font-size:18px;
}

.chosen-package-airline{
padding-top:15px;
float:left;
width:12%;
text-align:center;
}

.chosen-package-route{
padding-top:7px;
float:left;
width:19%;
text-align:center;
}

.chosen-package-times{
padding-top:16px;
float:left;
width:21%;
text-align:center;
}

.chosen-package-button{
padding-top:12px;
float:left;
width:25%;
text-align:right;
}

a.button-outbound-back{
padding:4px 10px;
display:inline-block;
font-weight:400;
color:#00acf7;
background:transparent;
cursor:pointer;
text-align:center;
transition: all 0.2s ease;
}

a.button-outbound-back:hover{
color:#222;
}

.container-modal-content{
padding:0;
background:#fff;
text-align:center;
}

.container-modal-content h1{
  padding-bottom:5px;
  margin-bottom:5px;
  font-size:18px;
  border-bottom:1px solid #d1d1d1;
  text-transform:uppercase;
}


/* loading */

.loading-more-wrap{
  margin:25px 0;
  display:none;
}

a.loading-more{
  padding:10px;
  display:block;
  text-decoration:none;
  color: #00aeef;
  background:#fff;
  border:solid 1px #999;
  text-align:center;
}

.loading-wrap{
  padding:15px 25px;
}



/* alert modal */
.alert-modal-wrap{
  padding:15px;
}

.alert-modal-title{
  margin-bottom:15px;
  color:#00aeef;
}

.alert-modal-form{
  padding:10px;
  background:#f5f5f5;
  border:1px solid #d1d1d1;
  border-bottom-left-radius:16px;
  border-bottom-right-radius:16px;
}

input.email-alert-modal{
  padding:6px;
  border:1px solid #00aeef;
  border-radius:4px;
}

a.button-alert-modal{
  padding:5px 15px;
  color:#fff;
  background:#00aeef;
  font-size:14px;
  font-weight:200;
  display:inline-block;
  border-radius: 4px;
  transition: all 0.2s ease;
  cursor:pointer;
}

a.button-alert-modal:hover{
  background:#222;
}



/* alert transition */

.alert-tran-container{
  padding:15px;
  background:#00aeef;
  border-radius:14px;
}

.alert-tran-title{
  margin-bottom:15px;
  color:#fff;
}

.alert-tran-form{
  overflow:hidden;
}

input.email-alert-tran{
  padding:6px;
  border:1px solid #00aeef;
  border-radius:4px;
}

a.button-alert-tran{
  padding:5px 15px;
  color:#fff;
  background:#222;
  font-size:14px;
  font-weight:200;
  display:inline-block;
  border-radius: 4px;
  transition: all 0.2s ease;
  cursor:pointer;
}

a.button-alert-tran:hover{
  color:#00aeef;
}
.feature-not-available {
  margin: 30px auto 0 auto;
  text-align: center;
  max-width: 550px;
}

.section-404 {
  line-height: 1.1;
  font-weight: 600;
  color: #888;
  font-size: 16px;
}

.feature-not-available .icon-wrap {
  margin:0 auto 20px auto;
  display: block;
  font-size: 24px;
  color: #EFB256;
  border: 3px solid #EFB256;
  height: 50px;
  width: 50px;
  line-height: 46px;

  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.feature-not-available .title {
  font-size: 1.625em;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 15px;
  color: #555;
}

.feature-not-available .error-content {
  font-size: 1.125em;
  font-weight: 700;
  line-height: 1.2;
  color: #999;
  padding: 15px 1.5em;
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
}

.feature-not-available .call-us {
  font-size: 1em;
  margin: 15px 0 20px 0;
}

.feature-not-available .call-us-link {
  font-size: 1.375em;
  font-weight: 700;
  display: inline-block;
  padding: 10px;
}

.feature-not-available .call-us-link .fa {
  margin-right: 10px;
  font-size: 1.25em;
  vertical-align: top;
}

.not-available-nav {
  margin-bottom: 40px;
}

.not-available-nav li {
  display: inline-block;
  margin: 0 5px;
}

.not-available-nav li a {
  font-size: 14px;
  color: #777;
  display: inline-block;
  padding: 10px 15px;
  border: 1px solid #dcdcdc;
  font-weight: 600;
  cursor: pointer;
}

.not-available-nav .fa {
  font-size: 1em;
  margin-right: 6px;
}

.package-not-available .feature-not-available .error-content,
.fare-change .feature-not-available .error-content {
  border-bottom: 0;
}

.error-content  .previous {
  color: #555;
}

.error-content .current {
  color: #0C6AA0;
}

.feature-not-available .continue {
  background: #0C6AA0;
  color: #FFFFFF;
  font-weight: 700;
  display: inline-block;
  padding: 12px 25px;
  margin: 15px 0 35px 0;

  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

.transition-error-wrap .not-available-nav li {
  margin: 5px;
}

.feature-not-available .continue.icon-left {
  padding: 12px 23px 12px 20px;
}

.feature-not-available .continue.icon-right {
  padding: 12px 20px 12px 23px;
}

.feature-not-available .continue .fa {
  margin-top: 1px;
  vertical-align: top;
}

.feature-not-available .continue.icon-right .fa {
  margin-left: 8px;
}

.feature-not-available .continue.icon-left .fa {
  margin-right: 8px;
}

.feature-not-available .continue:hover {
  background: #197BB3;
}

.not-available-nav li a:hover {
  background: #f1f1f1;
  color: #0C6AA0;
  border-color: #dcdcdc;
}




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

  .feature-not-available {
      margin: 20px auto 0 auto;
  }

  .section-404 {
      font-size: 14px;
  }

  .feature-not-available .title {
      font-size: 1.5em;
  }

  .feature-not-available .icon-wrap {
      height: 40px;
      width: 40px;
      line-height: 36px;
      font-size: 22px;
      margin: 0 auto 10px auto;
  }

}




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

  .not-available-nav li {
      margin: 2px;
  }

  .not-available-nav li a {
      padding: 10px;
  }

}
.search-information-title {
  font-size: 28px;
  color: #444;
  font-weight: 700;
  margin-bottom: 20px;
}

.search-information-title .city {
  color: #82BBD0;
}

.search-information-title .date {
  font-size: 20px;
  font-weight: 600;
  color: #929292;
  margin-left: 10px;
}

.results-found-wrapper {
  font-size: 20px;
  font-weight: 900;
  text-transform: uppercase;
  color: #B7B7B7;
}

/* Breadcrumbs */
.results-filtering-list {
  margin: 0 0 -6px 0;
  border-top: 1px dashed #e5e5e5;
  border-bottom: 1px dashed #e5e5e5;
  line-height: 1.1;
}

.breadcrumbs.results-filtering-list {
  padding: 8px 0;
}

.results-filtering-list .elem {
  display: inline-block;
  position: relative;
}

.breadcrumb {
  color: #000;
  background: #f5f5f5;
  padding: 5px 12px 5px 27px;
  margin: 4px 2px;
  font-size: 13px;
}

.breadcrumb .remove {
  position: absolute;
  left: 2px;
  top: 50%;
  margin-top: -12px;
  width: 25px;
  line-height: 24px;
  color: #888;
  font-size: 13px;
  text-align: center;
}

.breadcrumb .remove:hover {
  color: #bf4836;
}

.results-filtering-list .label {
  width: 120px;
}

.results-filtering-list .column {
  vertical-align: middle;
}

.filtering-label-inner .icon {
  width: 15px;
  color: #999;
}

.filtering-label-inner .jf-icon {
  display: inline-block;
  font-size: 13px;
}

.sorting .filtering-label-inner .jf-icon {
  font-size: 17px;
}

.filtering-label-inner .text {
  padding-left: 20px;
}

.filtering-label-inner label {
  font-size: 11px;
  font-weight: 700;
  color: #333;
  text-transform: uppercase;
  font-family: Lato, sans-serif;
}

.filtering-label-inner .reset {
  font-size: 12px;
  color: #0C6AA0;
  cursor: pointer;
}

.filtering-label-inner .reset:hover {
  text-decoration: underline;
}

.sorting-item-list {
  font-size: 0;
  white-space: nowrap;
  margin-bottom: -1px;
}

.sorting-item-list li {
  display: inline-block;
  vertical-align: middle;
}

.sorting-item-list .sorting-item {
  display: table-cell;
  height: 42px;
  vertical-align: middle;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700;
  color: #666;
  white-space: normal;
  border-top: 2px solid;
  border-bottom: 2px solid;
  border-color: transparent;
  cursor: pointer;
}


.sorting-item-list .sorting-item.active,
.sorting-item-list .sorting-item:hover {
  color: #455D88;
}

.sorting-item-list .sorting-item.active {
  border-bottom-color: #455D88;
}

.sorting-item-list li + li {
  margin-left: 20px;
}

.results-amount {
  color: #455D88;
}

.results-list-information {
  line-height: 1.2;
  font-size: 13px;
}

.results-list-information .results-amount,
.results-list-information .showing-results-for,
.results-list-information span {
  display: inline-block;
  vertical-align: middle;
}

.results-list-information .showing-results-for span,
.results-list-information .results-amount {
  padding-bottom: 10px;
}

.showing-results-for a {
  color: #455D88;
  font-size: 12px;
}

.showing-results-for a:hover {
  text-decoration: underline;
}

.results-list-information .showing-results-for {
  font-weight: 600;
  color: #555;
}

.results-list-information .showing-results-for strong {
  color: #64A700;
}

.search-information-options {
  margin: 5px 0 30px 0;
}





/* New style tabs - JC Aug 5 2021 */
.sorting-tabs-wrap {
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: stretch;
  -webkit-align-items: stretch;
}

.sorting-tab {
  margin-right: 5px;
  padding: 12px 15px;
  flex: 1;
  -webkit-flex: 1;
  color: #555;
  display: flex;
  display: -webkit-flex;
  align-items: center;
  -webkit-align-items: center;
  background-color: #f5f5f5;
  border-radius: 4px;
}

.sorting-tab:hover {
  background-color: #f9f9f9;
  cursor: pointer;
}

.sorting-tab.active {
  color: white;
  background-color: #455D88;
}

.fhub .sorting-tab.active {
  background-color: #2cb8e2;
}

.sorting-icon {
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.sorting-icon .fa {
  font-size: 20px;
  color: #555;
}

.sorting-tab.active .sorting-icon .fa {
  color: white;
}

.sorting-text {
  padding-left: 15px;
  flex: 1;
  -webkit-flex: 1;
  position: relative;
}

.sorting-title {
  font-size: 16px;
  font-weight: 600;
}

.sorting-price {
  color: #52862D;
  font-weight: 600;
}

.tabInfoAvg {
  font-size: 14px;
  font-weight: normal;
}

.sorting-dot {
  margin: 0 3px;
  display: inline-block;
  width: 5px;
  height: 5px;
  background-color: #ccc;
  border-radius: 50%;
  vertical-align: middle;
}

.sorting-tab.active .sorting-dot {
  background-color: #fff;
}

.sorting-tab.active .sorting-price {
  color: #fff;
}





.sorting-tab:last-child {
  margin-right: 0;
}

.results-sorting-tabs .tab-btn-wrap,
.results-matrix-tabs .tab-btn-wrap,
.search-information-options .tab-btn-wrap {
  display: table;
  table-layout: fixed;
}

.results-sorting-tabs .tab-btn-wrap,
.search-information-options .tab-btn-wrap {
  width: 100%;
}

.results-sorting-tabs .tab-btn,
.results-matrix-tabs .tab-btn,
.search-information-options .tab-btn {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  line-height: 1;
}

.results-sorting-tabs .tab-btn:not(.loading),
.results-matrix-tabs .tab-btn:not(.loading),
.search-information-options .tab-btn {
  cursor: pointer;
}

.search-information-options .tab-btn {
  padding: 10px 17px;
  color: #666;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  border: 1px solid #e5e5e5;
  background: #f5f5f5;
  transition: all 0.3s;
}

.results-sorting-tabs,
.results-matrix-tabs {
  position: relative;
  z-index: 2;
  margin-bottom: -1px;
}

.results-matrix-tabs .tab-btn {
  padding: 0 25px;
  color: #333;
  font-size: 13px;
  border: 1px solid #e5e5e5;
  background: #fff;
  height: 45px;
}

.results-sorting-tabs .tab-btn {
  padding: 0 10px 0 18px;
  color: #333;
  font-size: 14px;
  border: 1px solid #e5e5e5;
  background: #f5f5f5;
  height: 55px;
}

.results-sorting-tabs .price,
.results-matrix-tabs .price {
  font-weight: 700;
  margin-top: 3px;
}

.results-sorting-tabs .price label,
.results-matrix-tabs .price label {
  font-weight: normal;
  font-size: 11px;
}

.results-sorting-tabs .tab-btn + .tab-btn,
.results-matrix-tabs .tab-btn + .tab-btn,
.search-information-options .tab-btn + .tab-btn {
  border-left: 0;
}

.results-matrix-tabs .tab-btn.active {
  border-color: #d7e2f5;
  border-bottom-color: #eff5ff;
  border-top: 2px solid #455D88;
}

.results-sorting-tabs .tab-btn.active,
.search-information-options .tab-btn.active {
  border-bottom-color: #fff;
  border-top: 2px solid #455D88;
}

.search-information-options .tab-btn.active {
  padding-top: 9px;
}

.results-matrix-tabs .tab-btn.active,
.results-matrix-tabs .tab-btn:not(.loading):hover {
  background: #fff;
  color: #455D88;
}

.results-sorting-tabs .tab-btn.active,
.results-sorting-tabs .tab-btn:hover,
.search-information-options .tab-btn.active,
.search-information-options .tab-btn:hover {
  background: #fff;
  color: #455D88;
}

.search-information-options .tab-btn .price {
  display: block;
  font-size: 16px;
  color: #455D88;
  margin-top: 2px;
}

.results-sorting-tabs .tab-btn .price sup,
.results-matrix-tabs .tab-btn .price sup,
.search-information-options .tab-btn .price sup {
  vertical-align: top;
  font-size: 0.75em;
  position: relative;
  right: -1px;
  top: 1px;
}

.results-tabs-with-sorting {
  border-bottom: 1px solid #e5e5e5;
}

.results-tabs-with-sorting .column {
  vertical-align: middle;
}

.results-tabs-with-sorting .sorting-tabs-col {
  width: 400px;
}

.results-tabs-with-sorting .selected-item {
  position: relative;
  padding: 0 30px 0 10px;
  font-size: 13px;
  border: 1px solid #999;
  line-height: 30px;
  width: 150px;
  font-weight: 600;
  color: #333;
  border-radius: 2px;
  cursor: pointer;
}

.results-tabs-with-sorting .selected-item .fa {
  font-size: 9px;
  right: 10px;
}

.results-tabs-with-sorting .dropdown-col {
  text-align: right;
}

.results-tabs-with-sorting .dropdown-col .sort-by-text,
.results-list-sort-dropdown {
  display: inline-block;
  vertical-align: middle;
}

.results-tabs-with-sorting .dropdown-col .sort-by-text {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  color: #888;
  padding-right: 5px;
}

.results-list-sort-dropdown .dropdown-list {
  position: absolute;
  top: 10px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(0,0,0,.1);
  right: 10px;
  z-index: 2;
  min-width: 150px;
  border-radius: 2px;
  font-size: 14px;
}

.results-list-sort-dropdown {
  position: relative;
  text-align: left;
}

.results-list-sort-dropdown .dropdown-list .sort-btn {
  display: block;
  padding: 12px 15px;
  cursor: pointer;
  color: #333;
}

.results-list-sort-dropdown .dropdown-list .sort-btn.active {
  background: #eff5ff;
  color: #455D88;
  font-weight: 600;
}

.results-list-sort-dropdown .dropdown-list .sort-btn:hover {
  background: #eff5ff;
}

/* === SIDEBAR FILTERS === */
.filters-title {
  font-size: 16px;
  font-weight: 700;
  color: #444;
  margin-bottom: 10px;
  text-align: center;
  text-transform: uppercase;
  line-height: 1.2;
}

.filters-title.hide-experiment {
  display: none;
}

.fa-btn-filters {
  margin-bottom: 15px;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
  background-color: #ffffff;
  border: 1px solid #dcdcdc;
  border-radius: 3px;
  transition: all 0.3s;
}

.fa-btn-filters:hover {
  background-color: #f4f4f4;
  border: 1px solid #bcbcbc;
  cursor: pointer;
}

.fa-btn-filters-item {
  padding: 8px 5px;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
  font-weight: 600;
  font-size: 15px;
  color: #455D88;
  position: relative;
}

.fhub .fa-btn-filters-item {
  color: #2cb8e2;
}

.fa-btn-number {
  position: absolute;
  top: 0;
  right: -4px;
  width: 14px;
  height: 14px;
  color: white;
  font-size: 11px;
  font-weight: 600;
  border-radius: 50%;
  background-color: #E64C34;
  text-align: center;
}

.fa-btn-filters-item img {
  display: block;
}

.button-show-filters {
display: none;
}

.filter-heading,
.filter-title {
  font-size: 16px;
  color: #000;
  font-weight: 600;
  margin-bottom: 10px;
}

.filter-heading .right a,
.filter-title .right a {
  font-size: 14px;
  font-weight: 400;
}

.filter-subtitle {
  margin-bottom: 8px;
  font-size: 14px;
  color: #455D88;
  font-weight: 600;
}

.filters-section + .filters-section {
  margin-top: 15px;
}

.filters-section.connection-time-section {
  padding-top: 15px;
  border-top: 1px dashed #e5e5e5;
}

.flight-times-hours {
  margin: 0 -10px 15px -10px;
  color: #888;
}

.flight-times-hours strong {
  color: #455D88;
}

.flight-times-destination {
  font-size: 14px;
  color: #444;
}

.flight-times-hours span,
.flight-times-destination span {
  display: inline-block;
  vertical-align: middle;
}

.flight-times-hours .fa,
.flight-times-destination .jf-icon {
  margin-right: 5px;
  width: 14px;
  height: 14px;
}

.slider-arrivals {
  margin-top: -5px;
}

.flight-times-inner-section + .flight-times-inner-section {
  margin-top: 25px;
}

.filterlist.layover {
  display: none;
  margin-top: 5px;
}

.suggestion-list .airport-suggestion,
.filterlist li {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.suggestion-list .airport-suggestion,
.filterlist li {
  padding: 1px 0;
}

.suggestion-list .airport-suggestion + .airport-suggestion,
.filterlist li + li {
  margin-top: 8px;
}

.airport-suggestion label,
.filterlist label {
  position: relative;
  padding-left: 22px;
  cursor: pointer;
  color: #444;
}

.filter-results-form {
  margin: 0 10px 10px;
  padding: 5px 10px;
  background-color: #e1e1e1;
  border: 1px solid #b7b7b7;
}

.filter-results-form select {
  margin-right: 5px;
  padding: 5px 10px;
  border: 1px solid #b7b7b7;
  border-radius: 2px;
}

.airport-suggestion label {
  color: #444;
  display: block;
}

.connection.select-wrapper {
  font-weight: 600;
  color: #455D88;
  position: relative;
  border: 1px solid #e5e5e5;
  padding: 10px 25px 10px 10px;
  background: #f9f9f9;
}

.connection.select-wrapper:hover {
  background: #f1f1f1;
  color: #444444;
}

.connection.select-wrapper .fa {
  position: absolute;
  right: 7px;
  top: 50%;
  margin-top: -5px;
  font-size: 10px;
}

.label-2col .column {
  vertical-align: middle;
}

.label-2col .label-wrap {
  width: 105px;
  padding-right: 15px;
  line-height: 1.1;
}

.connection.select-first-text {
  display: block;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.filterlist .relative {
  position: relative;
}

.filterlist label.layovers-label {
  padding-right: 5px;
  display: inline-block !important;
  color: #333;
  padding-left: 0;
}

.filter-stops label:not(.long-label),
.filter-airlines label:not(.long-label),
.filter-airports label:not(.long-label),
.filter-layover-airports label:not(.long-label),
.flight-duration label:not(.long-label) {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.airport-suggestion input[type="radio"],
.filterlist li input[type="checkbox"] {
  display: none;
}

.airport-suggestion input[type="radio"]:checked + label {
  color: #000;
}
.airport-suggestion label:hover,
.filterlist label:hover {
  color: #000;
}

.airport-suggestion input[type="radio"] + label:after,
.airport-suggestion input[type="radio"] + label:before,
.filterlist li input[type="checkbox"] + label:after,
.filterlist li input[type="checkbox"] + label:before {
  content:'';
  position: absolute;
}

.airport-suggestion input[type="radio"] + label:before,
.filterlist li input[type="checkbox"] + label:before {
  border: 1px solid #455D88;
  left: 0;
  top: 3px;
  width: 11px;
  height: 11px;
  border-radius: 2px;
}

.airport-suggestion input[type="radio"] + label:after,
.filterlist li input[type="checkbox"] + label:after {
  display: none;
  font-family: Fontawesome;
  content: '\f00c';
  top: 6px;
  left: 2px;
  font-size: 10px;
  color: #455d88;
  line-height: 7px;
}

.airport-suggestion input[type="radio"] + label:after {
  width: 7px;
  height: 7px;
}

.airport-suggestion input[type="radio"]:checked + label:after,
.filterlist li input[type="checkbox"]:checked + label:after {
  display: block;
}

.filterlist li input[type="checkbox"]:disabled + label {
  cursor: default;
  color: #999;
}

.filterlist li input[type="checkbox"]:disabled + label:before {
  border-color: #aaa;
}

.filterlist li input[type="checkbox"]:disabled + label:after {
  color: #aaa;
}

.filter-type .show-more-btn {
  cursor: pointer;
}

.filter-type .show-more-btn .fa {
  margin-left: 2px;
  font-size: 14px;
}

.show-more-btn.open .fa-angle-down:before {
  content: "\f106";
}

.site-search-results .filter-type {
  position: relative;
  margin-bottom: 15px;
  padding: 12px 15px;
  border: 1px solid #e5e5e5;
  background: #FFFFFF;
}

.site-search-results .filter-type.filters-wrap {
  margin-bottom: 0;
  padding: 0;
  border: none;
  background: none;
}

.site-search-results .filter-price {
  font-weight: 600;
  color: #444;
  text-align: right;
  line-height: 1.1;
  width: 55px;
}

.site-search-results .filter-price > div {
  display: inline-block;
  position: relative;
  vertical-align: middle;
}

.filter-label,
.filter-price {
  display: table-cell;
  vertical-align: middle;
}

.filter-price sup {
  font-size: 10px;
  color: inherit;
  vertical-align: top;
  position: relative;
  right: -1px;
}

.filter-price [class^="only-"] {
  display: none;
  position: absolute;
  top: 50%;
  right: 100%;
  margin: -10px 0 0 0;
  cursor: pointer;
  z-index: 2;
}

.is-touch .filterlist li [class^="only-"] {
  display: none !important;
}

.filterlist li:hover [class^="only-"] {
  display: block !important;
}

.filters-disabled {
  opacity: 0.5;
}

.filterlist li [class^="only-"] a {
  position: relative;
  display: block;
  color: #1392ff;
  font-size: 13px;
  padding: 0 10px 0 20px;
  background: #fff;
  font-weight: 400;
  line-height: 18px;
}

.filterlist li [class^="only-"] a:hover {
  text-decoration: underline;
}

.flight-price-number .decimals,
.price-fraction {
  position: relative;
}

a.package-select:not(.pinned-select):after {
  content: "\f054";
  position: absolute;
  font-family: FontAwesome;
  font-size: 11px;
  top: 50%;
  margin-top: -5px;
  right: 8px;
}

.carrier .flight-icon{
  width: 60px;
}

.carrier img {
  width: 100%;
  display: block;
  margin: auto;
}

.site-search-results {
  line-height: 1.3;
}

html.search.new-package-layout {
  background-color: #f5f5f5;
}

html.search .site-search-results {
  border-top: 1px solid #dcdcdc;
}

html.search.fhub .site-search-results {
  border-top: 0 solid #dcdcdc;
}

.booking-bonus-wrap {
  border: 1px solid #dcdcdc;
  padding: 10px;
}

.booking-bonus-wrap .column {
  vertical-align: middle;
}

.booking-bonus-wrap .icon {
  width: 35px;
}

.booking-bonus-wrap .content {
  padding-left: 10px;
  font-family: 'Lato',sans-serif;
  font-size: 15px;
  color: #777;
  line-height: 1.1;
}

.booking-bonus-wrap .content .title {
  color: #555;
  font-weight: 700;
  text-transform: uppercase;
}

.booking-bonus-wrap .content .subtitle {
  font-size: 14px;
  margin-top: 2px;
}

.booking-bonus-wrap strong {
  text-transform: uppercase;
}

.booking-bonus-wrap .subtitle strong {
  color: #455D88;
}

.booking-bonus-wrap .icon-wrap {
  width: 35px;
  height: 35px;
  text-align: center;
  line-height: 37px;
  border: 1px solid;
  color: #637CA8;
  font-size: 18px;
  text-indent: -1px;

  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.booking-bonus-wrap .icon-wrap i {
  display: inline-block;
  width: 15px;
  height: 19px;
}

.package .result-airlines img {
  width: 40px;
  height: auto;
  display: inline-block;
  padding: 2px 0;
}

.package .package-table {
  border: 1px solid #e5e5e5;
  background: #fff;
}

.flex-date {
  margin-top: -15px;
}

.package-table > .column {
  vertical-align: middle;
  padding: 10px;
  line-height: 1.2;
}

.package-table .result-airlines,
.package-table .result-route,
.package-table .result-duration {
  border-right: 1px solid #DCDCDC;
}

.package-table .result-airlines {
  width: 145px;
}

.result-airlines .column {
  vertical-align: middle;
}

.package-arrival,
.package-departure,
.package-arrow {
  display: inline-block;
  vertical-align: top;
  padding: 0 10px;
}

.package-departure {
  text-align: right;
}

.package-arrow {
  padding-top: 7px;
  font-size: 16px;
  color: #00AEEF;
}

.package-arrival {
  text-align: left;
}

.trip-search-details {
  font-size: 16px;
  font-weight: 600;
  color: #999;
  margin-bottom: 10px;
  line-height: 1.15;
}

.trip-search-details .destinations,
.trip-search-details .dates {
  display: inline-block;
}

.trip-search-details .date {
  color: #455D88;
}

.trip-search-details span {
  display: inline-block;
}

.trip-search-details .city {
  color: #555;
  font-weight: 700;
}

.package {
margin: 0 0 25px 0;
color: #444;
position: relative;
  border-bottom: 3px solid #e5e5e5;
  font-size: 14px;
}

/* meta package */

.package.pkg-meta {
border: 3px solid #455D88;
}

.pkg-meta-head {
  padding: 12px;
  background-color: #455D88;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  position: relative;
  z-index: 1;
}

.package.pkg-meta > .pkg-meta-head {
display: block !important;
}

.pkg-meta-head-inner {
  color: white;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.pkg-meta-head-inner-left {
  flex: 1;
  -webkit-flex: 1;
}

.pkg-meta-head-inner-right {
  flex: 0 1 75px;
  -webkit-flex: 0 1 75px;
  text-align: right;
}

.pkg-meta-head-inner-right a {
  color: white;
  cursor: pointer;
  transition: all 0.3s;
}

.pkg-meta-head-inner-right a .fa {
  margin-right: 3px;
  transition: all 0.3s;
}

.pkg-meta-head-inner-right a:hover {
  color: #ffee82;
}

.pkg-meta-head-inner-right a:hover .fa {
  color: #ffee82;
}

/* FH overrides */

.fhub .package.pkg-meta {
  border: 3px solid #2CB8E2;
}

.fhub .pkg-meta-head {
  background-color: #2CB8E2;
}

.percentile-30 a {
  background: #edf7e7 !important;
}

.percentile-80 a {
  background: #f9f3c7 !important;
}

.percentile-100 a {
  background: #ffeded !important;
}

.ui-datepicker legend .item span {
  display: inline-block;
  width: 13px;
  height: 13px;
  border: solid 1px #CCC;
  vertical-align: middle;
  border-radius: 3px;
  margin-right: 3px;
}

.ui-datepicker legend .item.deal span {
  background: #edf7e7 !important;
}

.ui-datepicker legend .item.avg span {
  background: #f9f3c7 !important;
}

.ui-datepicker legend .item.pricey span {
  background: #fdeded !important;
}

.ui-datepicker legend .item {
  display: inline-block;
  margin: 0 6px 0 3px;
  font-size: 0.89em;
  font-weight: 400;
}
.ui-datepicker legend .item:first-child {
  margin-left: 10px;
}
.ui-datepicker legend {
  width: 100%;
  clear: both;
  background: #f9f9f9;
  margin-bottom: -10px;
  padding: 15px 5px;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.ui-datepicker legend > div {
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.ui-datepicker legend > div:last-child {
  text-align: right;
  color: #999;
  font-size: 11px;
}

.ui-datepicker .spinner:after {
  width: 6em;
  height: 6em;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
.ui-datepicker .spinner{
  font-size: 3px !important;
  margin-right: 5px;
  border: 1.1em solid #DEDEDE;
  border-color: #C7C7C7;
  border-left-color: #d3def3;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: spin 0.5s infinite linear;
  animation: spin 0.5s infinite linear;
  position: absolute;
  bottom: 2px;
  right: 3px;
}

.column .price-select-container {
  display: flex;
  flex-direction: column;
}

.flight-price > .column {
  padding: 10px;
  vertical-align: middle;
}

.flight-price .flight-select-wrap {
  width: 220px;
}

.package_tag_container {
  margin-top: -15px;
  position: absolute;
  right: 0;
  margin-right: 10px;

}
.flight-price .package_tag i{
  margin-right: 3px;
}
.flight-price .package_tag {
  display: inline-block;
  right: 0;
  margin-right: 5px;
  background: #333;
  padding: 5px 7px;
  border-radius: 2px;
  color: #FFF;
  font-size: 11px;
  font-weight: 500;
  animation-duration: 1s;
  animation-fill-mode: both;
  -webkit-animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  opacity: 0;
  animation-name: fadeInUpPackageTag;
  -webkit-animation-name: fadeInUpPackageTag;
}
.flight-price .package_tag.package_tag_best_score {
  background: rgb(68 88 123);
}
.flight-price .package_tag.package_tag_cheapest {
  background: rgb(82 134 44);
}
.flight-price .package_tag:nth-child(2) {
  animation-delay: 0.5s;
}
.flight-price .package_tag:nth-child(3) {
  animation-delay: 1s;
}
.flight-price .package_tag:last-child {
  margin-right: 0px;
}

.filtering .package_tag {
  display: none !important;
}

@-webkit-keyframes fadeInUpPackageTag {
  from {
      transform: translate3d(0,40px,0)
  }

  to {
      transform: translate3d(0,0,0);
      opacity: 1
  }
}

.bf-tag {
  margin: 10px 0 0 15px;
  padding: 4px 10px 4px 18px;
  display: inline-block;
  border-radius: 15px;
  position: relative;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  background-color: #c30f16;
}

.bf-tag:before {
  font-family: FontAwesome;
  content: '•';
  font-size: 22px;
  color: #f5f5f5;
  position: absolute;
  top: -2px;
  left: 5px;
}

.cheapest-tag {
  padding-inline: 16px;
  padding-block: 4px;
  margin-inline: 4px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  background-color: #52862C;
  position: relative;
}

.fhub .cheapest-tag {
  background-color: #00B500;
}

.package .flight-price {
  border: 1px solid #e5e5e5;
  background: #F5F5F5;
  line-height: 1.2;
}

.package .flight-price-number {
  font-size: 30px;
  color: #8095bb;
  font-weight: 600;
}

.package .flight-price-number>div {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.package .flight-price-number>div>span {
  margin-right: 5px;
}

.package-disclaimer {
  font-size: 12px;
  color: #555;
  display: inline-block;
  width: 100%;
}

.pay-monthly {
  font-size: 13px;
  color: #777;
  font-weight: 600;
  display: inline;
}

.pay-monthly .blue {
  color: #0c6aa0;
}

.pay-monthly .fa:hover,
.pay-monthly .active .fa {
  color: #1392ff;
}

.blended-fare-label {
  border: #E5E5E5 solid 1px;
  border-radius: 2px;
  font-size: 14px;
  line-height: 1.2;
  color: #52862C;
  font-weight: 700;
  width: fit-content;
  padding: 5px 15px;
  align-items: end;
  margin: 5px;
  margin-left: 20px;
  background: #F3FFEA;
}

.blended-fare-label .fa {
  font-size: 12px;
}

.notice-wrap .blended-fare-label .has-tooltip .fa {
  color: #52862C;
}

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

  .blended-fare-label {
      font-size: 12px;
      line-height: 1;
  }

}

.per-person {
position: absolute;
bottom: 1px;
right: 42px;
font-size: 11px;
color: #999;
}

.flight-price-number .partial-price {
  font-weight: 400;
  font-size: 0.8em;
}

.flight-price-number .partial-price .decimals {
  top: -8px;
  font-size: 0.5em;
}

.flight-price-number .text {
  font-size: 0.5em;
}

.flight-price-number .total-price {
  font-weight: 700;
}

html:not(.has-vue-filters) .is-nearby .flight-price-number .total-price,
html:not(.has-vue-filters) .is-nearby .flight-price-number .fa,
html:not(.has-vue-filters) .package.is-nearby .flight-price-number,
html:not(.has-vue-filters) .flex-package .flight-price-number .total-price,
html:not(.has-vue-filters) .flex-package .flight-price-number .fa,
html:not(.has-vue-filters) .package.flex-package .flight-price-number {
  color: #5a9a03;
}

.flight-price-number .decimals,
.flight-price-number .price-fraction {
  top: -9px;
  font-size: 0.5em;
}

.flight-price-number .price-decimal {
  display: none;
}

.flight-price-number .total-price {
  color: #455d88;
}

/* Flight price with discount */
.flight-price-number .before-discount-total-price {
  color: #7f8eab;
  font-weight: 400;
  font-size: 28px;
}

.before-discount-total-price .price-currency,
.before-discount-total-price .price-whole,
.before-discount-total-price .price-fraction {
  text-decoration: line-through;
}

.flight-price-number .before-discount-total-price,
.flight-price-number .after-discount-total-price,
.flight-price-number .jf-icon {
  display: inline-block;
  vertical-align: middle;
}

.flight-price-number .before-discount-total-price .partner-member-text {
  font-size: 12px;
  display: block;
  line-height: 1;
  margin-bottom: -4px;
}

.member-cashback{
  margin-left: 15px;
  font-size: 15px;
}

.blue{
  color: #2cb8e2;
}

.flight-price-number .after-discount-total-price {
  color: #82B77C;
  margin-left: 5px;
}

.flight-price-number .after-discount-total-price .student-member-text {
  color: #333333;
}

.flight-price-number .student-savings-badge {
  border: 1px solid #FF6432;
  border-radius: 6px;
  color: #FF6432;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  padding: 6px;
}

.flight-price-number .after-discount-total-price.meta-slashed-price {
  color: #2CB8E2;
}
.flight-price-number .meta-slash-price-tag {
  border-radius: 3px;
  background: #69B524;

  display: inline-flex;
  padding: 2px 6px;
  justify-content: center;
  align-items: center;
  gap: 10px;

  color: #FFF;
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
}


.flight-price .cashback {
  padding: 2px 10px 0 0;
  margin: 2px 0 4px 0;
  border-top: 1px solid #e5e5e5;
  line-height: 1.1;
  font-size: 13px;
  font-weight: 600;
  color: #5a942f;
}

.flight-price .cashback .amount {
  font-size: 16px;
  font-weight: 900;
}

.flight-price .jf-icon {
  display: inline-block;
  margin: 5px 0px 0 3px;
  vertical-align: top;
  font-size: 16px;
  line-height: 13px;
}

.flight-price-number .jf-icon.jf-price-tag {
  color: #82B77C;
  font-size: 20px;
  vertical-align: middle;
  margin: 0;
}

.flight-price .column-discount .cashback {
  color: #455d88;
}

.seats-left-wrap > .column {
  vertical-align: bottom;
}

.nearby-and-flex-title,
.nearby-title,
.flex-title,
.seats-left {
  padding: 5px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
}

.nearby-and-flex-title,
.nearby-title,
.flex-title {
  text-align: right;
  color: #5e8e11;
  padding-right: 0;
  font-weight: 700;
  width: 65%;
}

.seats-left {
  color: #444;
  font-weight: 700;
  padding-left: 0;
}

.seats-left span {
  color: #d0471e;
}

a.package-select:not(.pinned-select) {
  padding: 14px 35px 14px 25px;
  display: block;
  color: #fff;
  font-weight: 900;
  text-align: center;
  background-color: #E64C34;
  position: relative;
  line-height: 1;
  cursor: pointer;
  font-size: 20px;
  text-transform: uppercase;
  margin: 0 0 0 auto;

  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

a.package-select:not(.pinned-select):hover{
  background-color: #D4432D;
}

.flightDetails .carrier {
  width: 30%;
}

.flightDetails .flight-class {
  width: 200px;
  text-align: right;
  line-height: 1;
  font-size: 12px;
}

.flight-class .segment-travel-time {
  margin-top: 5px;
  font-weight: 600;
}

.phone-segment-section {
  font-size: 10px;
  font-weight: 400!important;
  line-height: 1;
}

.flight-breakdown ul {
  display: table;
  table-layout: fixed;
  width: 100%;
  color: #333;
}

.flight-breakdown ul + ul {
  margin-top: 5px;
}

.phone-segment-section + ul {
  margin-bottom: 5px;
}

.flight-breakdown li {
  display: table-cell;
  padding: 0 10px 0 0;
  vertical-align: top;
  line-height: 1.1;
  text-align: left;
}

.flight-breakdown .flight-time {
  width: 75px;
  font-weight: 700;
}

.flight-breakdown .flight-date {
  width: 110px;
}

.flight-breakdown .flight-date p {
  display: inline-block;
}

.flight-date .year {
  display: none;
}

.flight-breakdown .flight-airport.nearby,
.flight-breakdown .flight-date.flex {
  color: #67A838 !important;
  font-weight: 600;
}

.flight-breakdown .flight-airport {
  color: #333;
  padding: 0;
}

.package .carrier-text {
  font-size: 11px;
  color: #9C9C9C;
  margin-top: 5px;
}

.package .flightDetails {
  border-left: 1px solid;
  border-right: 1px solid;
  border-color: #e5e5e5;
}

.package .city-pair + .city-pair {
  border-top: 1px dashed #e5e5e5;
}

.flightDetails .city-pair.pinned {
  background: #fffced;
}

.phone-package .flight-class .flight-stops,
.flightDetails .flight-duration-column {
  margin-top: 5px;
}

.flightDetails .faredetails {
  line-height: 1.4;
}

.flightDetails .segment-bottom-information {
  padding: 10px 12px;
  color: #737373;
  font-size: 13px;
}

.layover-japan-warning {
  margin: 0 15px 10px;
  padding: 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  background-color: #FFF9F4;
  border: 1px solid #FBDDC0;
  border-radius: 4px;
}

.layover-japan-left {
  padding: 0 20px 0 10px;
  flex: 0 1 auto;
}

.layover-japan-left .fa {
  font-size: 32px;
  color: #F08E31;
}

.layover-japan-right {
  flex: 1;
}

.flightDetails .city-pair-pinned-flight {
  text-align: right;
  width: 150px;
}

.segment-bottom-information .column {
  vertical-align: middle;
}

.segment-bottom-information .column .affiliate-string-number {
  font-size:11px;
  color:#CCC;
  display:inline-flex;
  margin-left: 5px;
}

.segment-bottom-information.fare-rules.display-table {
  padding-top: 0;
}

.segment-bottom-information.fare-rules.display-table .column a img {
  position: relative;
  top: 3px;
  margin-right: 2px;
}

.segment-bottom-information.fare-rules.display-table .column {
  font-size: 12px;
  vertical-align: bottom;
}

.segment-bottom-information.fare-rules.display-table .column ul {
  margin-bottom: 8px;
}

.segment-bottom-information.fare-rules.display-table .column ul li {
  font-size: 11px;
}

.segment-bottom-information.fare-rules.display-table .column ul li.cha:before {
  font-family: FontAwesome;
  content: '•';
  font-size: 11px;
  color: #999;
  margin-left: 0;
  margin-right: 3px;
}

.segment-bottom-information.fare-rules.display-table .column ul li.nof:before {
  font-family: FontAwesome;
  content: '•';
  font-size: 11px;
  color: #999;
  margin-left: 0;
  margin-right: 3px;
}

.segment-bottom-information.fare-rules.display-table .column ul li.inc:before {
  font-family: FontAwesome;
  content: '•';
  font-size: 11px;
  color: #999;
  margin-left: 0;
  margin-right: 3px;
}

.segment-bottom-information.fare-rules.display-table .column.segment-duration {
  text-align: right;
  vertical-align: bottom;
}

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

  .segment-bottom-information.fare-rules.display-table {
      font-size: 12px;
      line-height: 1.2;
  }

}

.flightDetails .city-pair-pinned-flight .pinned-flight-button {
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  text-align: right;
  color: #777;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  text-decoration: underline;
}

.flightDetails .exclude-segment-btn {
  margin: 12px 0;
  line-height: 1;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
  text-decoration: underline;
}

.pinned-city-pair-to-top .flightDetails .city-pair-pinned-flight .pinned-flight-button {
  display: none;
}

.flightDetails .city-pair-pinned-flight .pinned-flight-button:hover,
.flightDetails .city-pair-pinned-flight .pinned-flight-button:active,
.flightDetails .city-pair-pinned-flight .pinned-flight-button:focus {
  color: #1392ff;
}

.flightDetails .faredetails > .column {
  vertical-align: top;
  padding: 10px;
}

.faredetails .carrier .column {
  vertical-align: top;
}

.carrier .flight-description {
  padding-left: 10px;
  line-height: 1.2;
}

.package-flight-number {
  display: inline-block;
  vertical-align: middle;
}

.flightDetails .ground-segment .flight-class {
  font-weight: 600;
  text-transform: capitalize;
}

.js-package-tooltip-trigger {
  position: relative;
  cursor: pointer;
}

.package-flight-number .fa:hover,
.package-flight-number .active .fa,
.carrier-inline-element.js-package-tooltip-trigger:hover > span,
.carrier-inline-element.js-package-tooltip-trigger.active > span {
  color: #1392ff;
}

.carrier-inline-element {
  display: inline-block;
}

.package-flight-number {
  font-size: 13px;
  color: #444;
}

.ground-segment .package-flight-number {
  text-transform: capitalize;
}

.package-flight-number .tooltip-inner-trigger {
  border-bottom: 1px solid #999;
}

.carrier-inline-element.js-package-tooltip-trigger > span {
  text-decoration: underline;
}

.package-flight-number .fa {
  margin-left: 3px;
  color: #888;
}

.super-saver .carrier-name .break-wrap {
  display: inline-block;
}

.seats-left-wrap {
  overflow: hidden;
}

.flex-savings {
  margin-bottom: -1px;
  padding: 8px 10px 8px 33px;
  background: #f5fde9;
  color: #599409;
  border: 1px solid #c6ea95;
  text-align: left;
  font-size: 14px;
  position: relative;
  line-height: 1.2;
}


/* flex ticket modal */

.flight-info-modal .container-modal {
  padding: 0;
}

.flight-info-modal .container-modal .container-modal-content {
  text-align: left;
}

.flex-modal-heading {
  padding: 20px 25px;
  background-color: #334158;
  background-image: url('https://www.flighthub.com/images/flex-modal-heading-bg.png');
  background-position: top left;
  background-size: 60%;
  background-repeat: no-repeat;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
}

.fhub .flex-modal-heading {
  background-color: #2cb8e2;
}

.flex-modal-heading-left {
  padding-right: 20px;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.flex-modal-heading-left img {
  display: block;
}

.flex-modal-heading-right {
  flex: 0 1 100%;
  -webkit-flex: 0 1 100%;
  font-size: 22px;
  font-weight: 700;
  color: white;
}

.flex-modal-heading-right span {
  padding-top: 5px;
  display: block;
  font-size: 14px;
  font-weight: 400;
}

.flex-modal-content {
  padding: 15px;
}

.flex-modal-content-title {
  padding-bottom: 15px;
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  text-align: center;
}

.flex-modal-content-title span {
  color: green;
}

.flex-modal-content-points {
  padding: 10px 15px 10px 45px;
  border-top: 1px dashed #dcdcdc;
  border-bottom: 1px dashed #dcdcdc;
}

.flex-modal-content-points ul li {
  padding: 5px 0 5px 15px;
  position: relative;
}

.flex-modal-content-points ul li:before {
  content: '\f00c';
  position: absolute;
  font-family: FontAwesome;
  left: 0;
  top: 5px;
  font-size: 12px;
  color: #66b153;
  font-weight: 400;
}

.flex-modal-content-tix {
  margin: 25px auto;
  max-width: 360px;
  position: relative;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.flex-modal-content-tix-arrow {
  margin: -20px 0 0 -20px;
  position: absolute;
  left: 50%;
  top: 50%;
}

.flex-modal-content-tix-item {
  margin: 0 10px;
  padding: 10px 25px;
  flex: 1;
  -webkit-flex: 1;
  background-color: #f9f9f9;
  border: 1px solid #dcdcdc;
  text-align: center;
}

.flex-modal-content-tix-item .fa {
  font-size: 10px;
  vertical-align: middle;
  margin-top: -4px;
}

.flex-modal-content-tix-item .tix-title {
  font-size: 16px;
  font-weight: 600;
}

.flex-modal-content-tix-item .tix-price {
  font-size: 16px;
  font-weight: 600;
  color: #52862D;
}

.flex-modal-content-btn {
  margin: 15px auto 0;
  max-width: 50%;
  text-align: center;
}

.flex-modal-btn {
  margin: 0 auto 15px;
  padding: 15px 35px;
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: white;
  background-color: #52862D;
  border-radius: 6px;
  position: relative;
  text-align: center;
  transition: all 0.3s;
}

.flex-modal-btn:hover {
  color: white;
  background-color: #3f6622;
}

.fhub .flex-modal-btn {
  background-color: #2cb8e2;
}

.fhub .flex-modal-btn:hover {
  color: white;
  background-color: #30c8f6;
}

.flex-modal-btn:after {
  content: "\f054";
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 15px;
  right: 12px;
}

.flex-modal-link {
  text-align: center;
  text-decoration: underline;
}

.flex-modal-link-btn {
  margin: 0 auto;
  padding: 15px 35px;
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: white;
  background-color: #959793;
  border-radius: 6px;
  position: relative;
  text-align: center;
  transition: all 0.3s;
}

.flex-modal-link-btn:hover {
  color: white;
  background-color: #b3b5b0;
}

.flex-modal-link-btn:after {
  content: "\f054";
  color: white;
  position: absolute;
  font-family: FontAwesome;
  font-size: 14px;
  top: 15px;
  right: 12px;
}

.flex-modal-content-fineprint {
  padding: 10px;
  background-color: #f4f4f4;
  font-size: 12px;
  line-height: 16px;
  color: #666;
}

.flex-modal-close {
  display: none;
}





/* Flex header */

.pkg-flex-header-wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
  background: #F5F5F5;
  border: 1px solid #dcdcdc;
}

.pkg-flex-header-left {
  padding: 10px;
  flex: 1;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  border-right: 1px solid #dcdcdc;
}

.pkg-flex-header-right {
  padding: 10px;
  flex: 1;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.pkg-flex-type-wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.pkg-flex-type {
  flex: 1;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}

/* change this stuff when there's no flex ticket */

.pkg-flex-header-wrap.noflex .pkg-flex-header-left .pkg-flex-type,
.pkg-flex-header-wrap.noflex .pkg-flex-header-right {
  display: none;
}

.pkg-flex-header-wrap.noflex .pkg-flex-header-left {
  border-right: 0;
}

.pkg-flex-header-wrap.noflex .pkg-flex-header-left .pkg-flex-button {
  flex: 0 1 127px;
}

.pkg-flex-header-wrap.noflex .pkg-flex-header-left .pkg-standard-btn {
  background-color: #E64C34;
  color: white;
  border: 1px solid #E64C34;
}

.pkg-flex-header-wrap.noflex .pkg-flex-header-left .pkg-standard-btn:hover {
  background-color: #D4432D;
  color: white;
  border: 1px solid #D4432D;
}

.pkg-flex-header-wrap.noflex .pkg-flex-header-left .pkg-standard-btn:after {
  color: white;
}

.pkg-flex-header-wrap.noflex .pkg-flex-header-left .pkg-standard-btn:hover:after {
  color: white;
}




.pkg-flex-type img {
  margin-right: 5px;
}

.pkg-flex-info-button {
  flex: 3;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.pkg-flex-info {
  padding-right: 15px;
  flex: 2;
  text-align: right;
}

.pkg-flex-price {
  display: block;
  font-size: 22px;
  line-height: 24px;
  font-weight: 900;
  color: #44587B;
}

.pkg-flex-total {
  display: block;
  font-size: 13px;
  line-height: 16px;
  font-weight 400;
  color: #999;
}

.pkg-flex-button {
  flex: 1;
}

.pkg-standard-btn {
  padding: 10px 30px 10px 20px;
  display: block;
  font-size: 20px;
  font-weight: 900;
  position: relative;
  background-color: white;
  color: #455D88;
  border: 1px solid #455D88;
  border-radius: 4px;
  transition: all 0.3s;
  text-align: center;
}

.pkg-standard-btn:hover {
  background-color: #455D88;
  color: white;
}

.pkg-standard-btn:after {
  content: "\f054";
  position: absolute;
  font-family: FontAwesome;
  font-size: 11px;
  color: #455D88;
  top: 50%;
  margin-top: -5px;
  right: 8px;
  transition: all 0.3s;
}

.pkg-standard-btn:hover:after {
  color: white;
}

.pkg-flex-btn {
  padding: 10px 30px 10px 20px;
  display: block;
  font-size: 20px;
  font-weight: 900;
  position: relative;
  background-color: #E64C34;
  color: white;
  border: 1px solid #E64C34;
  border-radius: 4px;
  transition: all 0.3s;
  text-align: center;
}

.pkg-flex-btn:hover {
  background-color: #D4432D;
  color: white;
  border: 1px solid #D4432D;
}

.pkg-flex-btn:after {
  content: "\f054";
  position: absolute;
  font-family: FontAwesome;
  font-size: 11px;
  top: 50%;
  margin-top: -5px;
  right: 8px;
  transition: all 0.3s;
}

.pkg-flex-btn:hover:after {
  color: white;
}

.pkg-flex-tooltip {
  position: relative;
  cursor: pointer;
}

.pkg-flex-tooltip .fa {
  margin-left: 5px;
  color: #999;
}

.pkg-flex-tooltip-content {
  padding: 10px;
  margin-left: -150px;
  display: none;
  font-size: 13px;
  background-color: white;
  position: absolute;
  box-shadow: 2px 2px 8px #aaa;
  border-radius: 4px;
  width: 300px;
  left: 50%;
  bottom: 25px;
}

.pkg-flex-tooltip:hover > .pkg-flex-tooltip-content {
  display: block;
}






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

  .flex-modal-heading-right {
      font-size: 18px;
  }

  .flex-modal-content-title {
      font-size: 15px;
  }

  .flex-modal-content-points {
      padding: 10px 15px;
  }

  .flex-modal-content-tix-item .tix-title {
      font-size: 14px;
  }

  .flex-modal-content-tix-item {
      padding: 10px 15px;
  }

  .flex-modal-content-btn {
      argin: 15px auto 5px;
      max-width: 80%;
  }

  .flex-modal-heading {
      padding: 15px 25px;
      background-image: none;
  }

  .fhub .flex-modal-heading {
      background-image: none;
      background-color: #2cb8e2;
  }

  .flex-modal-content-points ul li {
      padding: 3px 0 3px 15px;
  }

  .flex-modal-content-points ul li:before {
      top: 4px;
  }

  .flex-modal-content-tix {
      margin: 15px auto;
  }

  .flex-modal-link-btn:after {
      content: "";
  }

  .flex-modal-close {
      position: absolute;
      display: block;
      top: 10px;
      right: 10px;
      color: white;
      font-size: 18px;
      font-weight: 900;
      cursor: pointer;
  }
}

/* end flex ticket modal */



/* for new package design experiment */
.new-package-layout .flex-savings {
  margin-bottom: 15px;
}

.new-package-layout .seats-left-wrap {
  margin: 0 0 10px !important;
}
/* end */

.flex-savings.date-and-airport {
  padding-left: 60px;
}

.flex-savings .icon-wrap,
.package-header-disclaimer__icon-wrap {
  position: absolute;
  top: 50%;
  left: 10px;
  height: 16px;
  margin-top: -9px;
  font-size: 13px;
}

.flex-savings .jf-icon,
.flex-savings .fa,
.package-header-disclaimer__fa {
  display: inline-block;
  margin: 0 4px;
  vertical-align: middle;
}

.flex-savings .jf-icon {
  height: 14px;
}

.recommended-package {
  width: 195px;
  vertical-align: bottom;
}

.vertical-middle {
  vertical-align: middle;
}

.package-header-disclaimer_recommended {
  padding: 6px 10px 6px 30px;
  background: #455d88;
  color: #FFF;
  text-align: left;
  font-size: 13px;
  position: relative;
  line-height: 1.2;
  display: inline-block;
  -webkit-border-top-left-radius: 5px;
  -webkit-border-top-right-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  white-space: nowrap;
}

@media only screen and (max-width: 680px) {
  .package-header-disclaimer_recommended {
      font-size: 11px;
  }
  .recommended-package {
      width: 173px;
  }
}

.package-header-disclaimer_recommended .fa-star {
  color: #ffe1a0;
  position: relative;
  top: 1.5px;
}

.package-header-disclaimer_recommended .fa-info-circle {
  position: relative;
  top: 1px;
  margin-left: 5px;
  color: #e5e5e5;
}

.package-header-disclaimer_recommended .fa-info-circle:hover {
  color: #FFF;
}

.super-saver-risk-free {
  font-size: 13px;
  color: #67A838;
  font-weight: 700;
  border-top: 1px dashed #e5e5e5;
  padding: 6px 10px;
  border-left: 1px solid #e5e5e5;
  border-right: 1px solid #e5e5e5;
}

.super-saver-risk-free .fa-info-circle {
  color: #7abb61;
}

.super-saver-risk-free .fa-info-circle:hover {
  color: #64a04d;
}

.super-saver-risk-free .super-saver-package-info .cancellation-title {
  background-color: #F5F5F5;
  border: 1px #e5e5e5 solid;
  font-weight: 700;
  color: #455d88;
  padding: 4px 8px;
  margin-bottom: 5px;
}

/* Stops */
.segment-duration span,
.segment-duration .fa,
.segment-duration .flight-duration,
.segment-duration .flight-stops {
  display: inline;
  vertical-align: middle;
  padding-right: 2px;
}

.segment-duration p {
  display: inline-block;
  margin: 0;
}

.segment-bottom-information .segment-duration {
  line-height: 1.1;
}

.flightDetails .layover-alert {
  font-size: 13px;
  color: #666;
}

.flightDetails .layover-alert strong {
  font-weight: 600;
  display: inline-block;
}

.package .carrier-text,
.flightDetails .layover-alert {
   margin-top: 10px;
}

/* Blended Special Fares Kiwi */
.flightDetails .blended-fare {
  font-size: 12px;
  color: #444444;
  margin-top: 10px;
  margin-right: 10px;
  background: #FEF3EA;
  padding: 8px 20px;
  border-radius: 100px;
  font-weight: bold;
}

.super-saver-info-copy {
  font-size: 13px;
  font-weight: normal;
  width: 75%;
}

.checkout_agent_booking :is(
  .flight-airline .carrier-name,
  .flight-breakdown li.flight-time,
  .flight-breakdown li.flight-date,
  .flight-breakdown li span,
  .flight-breakdown li strong,
  .flight-breakdown .layover-alert,
  .segment-bottom-information .segment-duration
) {
  background-color: lightyellow;
  color: #000;
}

/*.flightDetails .blended-fare:hover {*/
/*    color: #BB382F;*/
/*}*/

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

  .flightDetails .blended-fare:nth-of-type(odd) {
      margin-top: 3px;
  }

  .blended-fare-label .info-tooltip i {
      display: none;
  }

}

.blended-fare-warning .blended-fare-warning-header {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 5px;
}

.blended-fare-warning .important-information-header {
  border-bottom: 1px #e5e5e5 dashed;
}

.blended-fare-warning .blended-fare-list  {
  margin-left: 15px;
}

.blended-fare-warning .blended-fare-list  li {
  list-style-type: disc;
}

.blended-fare-warning .special-fare-multi-tickets {
  font-size: 12px;
  font-weight: 400;
  text-transform: uppercase;
  margin-bottom: 8px;
  padding-bottom: 10px;
  border-bottom: 1px #e5e5e5 dashed;
}

.blended-fare-warning .special-fare-multi-tickets img {
  position: absolute;
}

.blended-fare-warning .special-fare-multi-tickets strong {
  font-size: 16px;
  font-weight: 700;
  padding-left: 35px;
}

.blended-fare-warning .bullet-arrow-list {
  margin-top: 10px;
}

.blended-fare-warning .bullet-arrow-list li {
  position: relative;
  padding: 0 0 0 15px;
  line-height: 1.2;
  margin-bottom: 8px;
  color: #455d88;
}

.blended-fare-warning .bullet-arrow-list li:last-child {
  margin-bottom: 5px;
}

.blended-fare-warning .bullet-arrow-list li::before {
  content: '\f0a9';
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
  font-family: FontAwesome;
  font-size: 12px;
  color: #455d88;
}

.layover-alert .fa {
  margin-right: 2px;
  color: #999;
}

.flightDetails .change-airport {
  color: #d4681a;
  display: inline-block;
  font-weight: 600;
  font-size: 12px;
  margin: 2px 0;
}

.results-loading-gif-box {
  text-align: center;
}

.fare-alerts-icon {
  display: block;
  width: 43px;
  height: 50px;
  background-image: url("/images/results_page/jf-fare-alerts-icon.png");
  background-image: -webkit-linear-gradient(transparent, transparent), url("/images/results_page/jf-fare-alerts-icon.svg");
  background-image: linear-gradient(transparent, transparent), url("/images/results_page/jf-fare-alerts-icon.svg");
  background-position: 0 0;
  background-repeat: no-repeat;
}

.fare-alerts-icon.color {
  width: 27px;
  height: 32px;
  background-position: 0px -50px;
}

.fare-alerts-results-trigger {
  margin: 20px auto 0 auto;
  width: 275px;
  background: #f1f1f1;
  color: #455d88;
  padding: 10px 12px;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  border-width: 1px 1px 2px 1px;
  border-style: solid;
  border-color: #e5e5e5;

  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

.fare-alerts-results-trigger .column {
  vertical-align: middle;
}

.default-layout .fare-alerts-results-trigger {
  display: none;
}

.airfare-alert-container .icon-wrap,
.fare-alerts-results-trigger .icon-wrap {
  width: 43px;
  vertical-align: middle;
}

.fare-alerts-results-trigger .heading {
  width: auto;
  margin: 0 auto 10px auto;
}

.fare-alerts-results-trigger input {
  display: block;
  width: 100%;
  height: 35px;
  padding: 5px 10px;
  border: 0;
  font-size: 14px;
  cursor: pointer;
  text-align: center;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.fare-alerts-results-trigger input[type="email"] {
  border: 1px solid #dcdcdc;
  background: #ffffff;

  -webkit-border-radius: 3px 3px 0 0;
  -moz-border-radius: 3px 3px 0 0;
  border-radius: 3px 3px 0 0;
}

.fare-alerts-results-trigger input[type="submit"] {
  font-weight: 700;
  text-transform: uppercase;
  background: #0C6AA0;
  color: #fff;

  -webkit-border-radius: 0 0 2px 2px;
  -moz-border-radius: 0 0 2px 2px;
  border-radius: 0 0 2px 2px;
}

.results-sidebar .inline-search-form .table-wrap,
.results-sidebar .inline-search-form .table-wrap > .column {
  display: block;
  width: auto;
}

.results-sidebar .form-field-to,
.results-sidebar .form-field-from {
  width: 100%;
}

.results-sidebar .form-field-mobile-date,
.results-sidebar .form-field-passengers,
.results-sidebar .form-field-to-date,
.results-sidebar .form-field-from-date,
.results-sidebar .form-field-to {
  margin: -1px 0 0 0;
}

.results-sidebar .form-field-to-date,
.results-sidebar .form-field-from-date {
  width: 50%;
}

.results-sidebar .inline-search-form-form .form-field-to-date input {
  border-left: 0;
}

.results-sidebar .inline-search-form .column.search {
  width: auto;
}

.results-sidebar .inline-search-form.form-wrap-multi .column.search {
  margin-top: 15px;
}

.results-sidebar .form-field-passengers,
.results-sidebar .form-field-button {
  width: 100%;
}

.results-sidebar .flight-type .item {
  width: 33.333333%;
  margin: 0;
  padding: 0 2px;
}

.results-sidebar .flight-type .item a,
.results-sidebar .flight-class .item a {
  color: #444;
  padding: 5px;
  text-transform: none;
}

.results-sidebar .flight-type .item a {
  font-weight: 700;
  font-size: 12px;
}

.results-sidebar .flight-class .item a.active,
.results-sidebar .flight-class .item a:hover,
.results-sidebar .flight-type .item a.active,
.results-sidebar .flight-type .item a:hover {
  color: #455D88;
}

.results-sidebar .form-field-passengers .passenger-toggle {
  border: 1px solid #DCDCDC;
}

.results-sidebar .form-field-button button {
  font-family: 'Source Sans Pro',sans-serif;
  background: #ECECEC;
  color: #444;
  cursor: pointer;
  font-weight: 700;

  -webkit-box-shadow: 0 2px 0 rgba(0,0,0,0.2);
  -moz-box-shadow: 0 2px 0 rgba(0,0,0,0.2);
  box-shadow: 0 2px 0 rgba(0,0,0,0.2);

  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.results-sidebar .form-field-button button {
  margin: 10px 0;
}

.results-sidebar .form-field-button button:focus,
.results-sidebar .form-field-button button:hover {
  background: #455D88;
  color: #fff;
}

.results-sidebar .mobile-calendar-toggle,
.results-sidebar .main-search-form .passenger-toggle,
.results-sidebar .main-search-form input:not([type=checkbox]) {
  padding: 0 13px;
  color: #222;
  font-size: 13px;
  border: 1px solid #dcdcdc;
  border-radius: 0;
}

.results-sidebar .main-search-form input.has-clear {
  padding-right: 30px;
}

.results-sidebar .main-search-form .form-field-to-date input {
  border-left: 0;
}

.results-sidebar .form-filters-wrap. {
  margin: 0;
  padding: 0;
  border: 0;
}

.results-sidebar .flight-class ul,
.results-sidebar .flight-type ul {
  margin-left: 0;
}

.results-sidebar .airfare-alert-container {
  display: none;
}

.results-sidebar .form-field-segment {
  position: static;
  width: 100%;
  float: left;
  margin: auto;
}

.results-sidebar .form-field-segment .multicity-btn {
  color: #444;
  line-height: 45px;
  margin: 0 10px 0 0;
}

.results-sidebar .form-field-segment .multicity-btn:hover {
  color: #455d88;
}

.has-date-picker .results-sidebar .form-field-mobile-date,
.results-sidebar .form-wrap-oneway .form-field-to-date,
.results-sidebar .form-wrap-oneway .form-field-from-date,
.results-sidebar .form-wrap-multi .form-field-to-date,
.results-sidebar .form-wrap-multi .form-field-from-date {
  width: 100% !important;
}

.results-sidebar .flight-type .fa {
  display: none;
}

.results-sidebar .campaign select {
  border-color: #DCDCDC;
  background: none;
}

.results-sidebar .flight-class .item {
  padding: 0;
}

.results-sidebar .inline-search-form-remove-segment-container,
.results-sidebar .inline-search-form-add-segment-container {
  float: left;
}

.results-sidebar .form-wrap-multi .form-fields-wrap-multi-container,
.results-sidebar .form-fields-wrap-multi,
.results-sidebar .form-fields-wrap-multi + .form-fields-wrap-multi,
.results-sidebar .form-filters-wrap.flight-class {
  margin-top: 10px;
}

/* === 3 column Layout === */
.general-container.results-page {
  width: 98%;
  max-width: 1390px;
}

.results-3-col.display-table {
  direction: rtl;
}

.results-3-col > .column {
  vertical-align: top;
  direction: ltr;
}

.results-2-col > .display-table > .column {
  vertical-align: top;
}

.results-2-col .results-list {
  position: relative;
  padding: 0 0 0 25px;
}

.top-heading-wrap {
  background: #f5f5f5;
  margin-bottom: 20px;
  border-bottom: 1px solid #e8e8e8;
  color: #555;
}

.result-page-title {
  text-align: center;
  padding: 15px;
  font-size: 20px;
  line-height: 1.1;
}

.result-page-title span {
  font-size: 0.8em;
  display: block;
  margin-top: 5px;
}

.flight.search .result-page-title > .fa {
  margin: 0 10px 0 0;
}

.best-price-disclaimer {
  position: absolute;
  cursor: pointer;
  top: 0;
  right: 0;
}

.best-price-disclaimer .fa {
  display: block;
  font-size: 14px;
}

.best-price-disclaimer .disclaimer-toggle {
  color: #aaa;
}

.best-price-disclaimer .disclaimer-text {
  display: none;
}

.bgp-tooltip .tooltipster-content {
  font-size: 13px;
  line-height: 1.4;
  background: #fff;
  padding: 10px;
  color: #444;
  text-align: left;
  z-index: 1;
  border: 1px solid #455D88;
  margin: 0 15px;
  border-radius: 2px;
  box-shadow: 0 3px 8px rgba(0,0,0,0.1);
}

.nudge-tooltip .tooltipster-content {
  padding: 5px 15px !important;
  font-size: 13px;
  line-height: 1.5;
  background: #f5f5f5;
  color: #666;
  text-align: center;
  border: 1px solid #999;
  border-radius: 6px;
  box-shadow: none;
  position: relative;
}

.nudge-tooltip::after {
  content: " ";
  position: absolute;
  bottom: 100%;  /* At the top of the tooltip */
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent #999 transparent;
}

.nudge-tooltip .tooltipster-content.tooltipTextClass1 {
  color: #D45148;
}

.nudge-tooltip .tooltipster-content.tooltipTextClass2 {
  color: #F19945;
}

.nudge-tooltip .tooltipster-content.tooltipTextClass3 {
  color: #555;
}

.nudge-tooltip .tooltipster-content.tooltipTextClass4 {
  color: #576C93;
}

body.ss-fhub .nudge-tooltip .tooltipster-content.tooltipTextClass4 {
  color: #2cb8e2;
}

.nudge-tooltip .tooltipster-content.tooltipTextClass5 {
  color: #75B04B;
}

.results-3-col .results-sidebar {
  width: 260px;
}

.results-3-col .right-sidebar {
  width: 210px;
  display: none;
}

.results-3-col .right-sidebar.hide-experiment {
  display: none;
}

.airfare-alert-container {
  text-align: center;
  margin: 0 -10px -11px -10px;
  padding: 10px 13px;
  background: #f1f1f1;
  border: 0;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

a.button-alert {
  font-family: 'Source Sans Pro',sans-serif;
  background: #455d88;
  color: #ffffff;
  cursor: pointer;
  font-weight: 700;
  margin-top: -5px;
  padding: 10px;
  font-size: 14px;
  display: block;

  -webkit-box-shadow: 0px 2px 0px rgba(0,0,0,0.2);
  -moz-box-shadow: 0px 2px 0px rgba(0,0,0,0.2);
  box-shadow: 0px 2px 0px rgba(0,0,0,0.2);

  -webkit-border-radius: 0 0 2px 2px;
  -moz-border-radius: 0 0 2px 2px;
  border-radius: 0 0 2px 2px;
}

a.button-alert:hover {
  background: #5172AF;
}

.alert-field {
  margin: 5px 0;
  text-align: center;
}

.alert-field input {
  display: block;
  padding: 8px 5px;
  width: 100%;
  border: 1px solid #dcdcdc;
  border-radius: 0;
  text-align: center;
  font-size: 13px;
  font-family: 'Source Sans Pro',sans-serif;
  color: #444;
}

.button-alert .fa {
  font-size: 12px;
  margin-right: 5px;
}

.airfare-alert-container .alert-title {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.1;
  text-transform: uppercase;
  color: #455D88;
  margin-bottom: 7px;
}

.fare-alert-graph {
  margin: 0 auto 10px auto;
  width: 160px;
  height: 70px;
  background-image: url("/images/fare-alert-graph.png");
  background-size: 160px 70px;
  background-position: top center;
  background-repeat: no-repeat;
}

.right-sidebar .features-box {
  padding: 12px;
  margin-bottom: 15px;
  border: 1px solid #e5e5e5;
  color: #555;
}

.right-sidebar .features-title {
  margin-bottom: 10px;
  padding-bottom: 10px;
  font-size: 16px;
  font-weight: 700;
  color: #455d88;
  text-transform: uppercase;
  border-bottom: 1px dashed #dcdcdc;
}

.right-sidebar .features-subtitle {
  font-style: italic;
  line-height: 1.2;
  color: #666;
  font-weight: 600;
  margin: 10px 0 20px 0;
}

.right-sidebar .features-title .fa {
  vertical-align: top;
  margin: 3px 5px 0 0;
  color: #455d88;
}

.error-wrap {
  position: relative;
}

.newsletter-error,
.airfare-alert-container .error-alert {
  display: block;
  position: absolute;
  top: -35px;
  z-index: 2;
  background: #E68B3D;
  padding: 7px 10px;
  text-align: center;
  line-height: 1.1;
  font-weight: 700;
  color: #FFFFFF;
  font-size: 12px;
  white-space: pre;
}

.newsletter-error:after,
.airfare-alert-container .error-alert:after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 50%;
  margin-left: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #E68B3D transparent transparent transparent;
}

.newsletter-error.success-alert,
.airfare-alert-container .error-alert.success-alert {
  background: #81B35B;
}

.newsletter-error.success-alert:after,
.airfare-alert-container .error-alert.success-alert:after {
  border-color: #81B35B transparent transparent transparent;
}

.bullet-arrow-list li {
  position: relative;
  padding: 0 0 0 15px;
  line-height: 1.2;
  margin-bottom: 12px;
}

.bullet-arrow-list li:before {
  content: '\f0a9';
  position: absolute;
  left: 0;
  top: 1px;
  font-weight: bold;
  font-family: FontAwesome;
  font-size: 12px;
  color: #0C6AA0;
}

.right-sidebar .logo-wrap {
  margin: 0 0 10px 0;
  padding-bottom: 10px;
  border-bottom: 1px solid #e5e5e5;
}

.features-box .site-logo {
  margin: auto;
  width: 115px;
  height: 28px;
}

/* === Progress bar === */
.container-progress-bar-modal {
width: 450px;
  margin: 5px auto;
}

.container-progress-bar {
  max-width: 650px;
  margin: auto;
}

.flight.search .container-progress-bar {
  border: 1px solid #dcdcdc;
  padding: 8px;

  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.packagesLoaded .progress-bar-inner-results {
  background: #ccc;
}

.container-package-loading .progress-bar-text {
  font-size: 16px;
  font-weight: 700;
  color: #666;
  text-align: center;
  margin-bottom: 10px;
}

.progress-bar-inner,
.progress-bar-inner-results {
  width: 100%;
  overflow: hidden;
}

.flights-results-wrap.filtering:after {
  content: '';
  z-index: 1;
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  background: rgba(255,255,255,0.6);
}

.flights-results-wrap {
  position: relative;
}

.sticky-loader .filters-loading-bar-wrap {
  padding-left: 275px;
  padding-right: 225px;
}

.sticky-loader .general-container-fixed {
  max-width: 1390px;
  margin: auto;
  width: 93%;
}

.filters-loading-bar {
  padding: 12px 35px 12px 25px;
  margin-bottom: 15px;
  background: #f9f9f9;
  color: #455D88;
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  border: 1px solid #e5e5e5;
}

.filters-loading-bar span,
.filters-loading-bar .spinner {
  display: inline-block;
  vertical-align: middle;
}

.filters-loading-bar .spinner {
  font-size: 3px;
  margin-right: 15px;
  border-color: #7088b5;
  border-left-color: #d3def3;
}

.progress-bar-inner-results {
  background: #dcdcdc;
}

.progress-bar {
  width: 0;
  height: 3px;
  background: #455D88;
}

.packages-loading-box .progress-bar {
  height: 3px;
}

.progress-bar-last-step .progress-bar {
  background: #fff url('https://www.flighthub.com/images/loading-diagonal-pink.gif')!important;
}

.exp-ac2u-select ul {
  border: 1px solid #e5e5e5;
  border-top: 0;
  display: table;
  width: 100%;
  table-layout: fixed;
  border-right: 0;
}

.exp-ac2u-select ul li {
  display: table-cell;
  border-right: 1px solid #dfdcd8;
  vertical-align: middle;
}

.exp-ac2u-select ul li a {
  padding: 5px;
  display: block;
  font-size: 12px;
  color: #444444;
  background: #FFFFFF;
  text-align: center;
  font-weight: 600;
}

.exp-ac2u-select ul li a.active,
.exp-ac2u-select ul li a:hover {
  color: #0C6AA0;
}

.container-paging {
  margin: 15px auto 20px;
  text-align: center;
}

.pager {
  display: inline-block;
  margin: 0 auto;
}

.pager ul {
  font-size:0;
  text-align: center;
}

.pager li {
  display: inline-block;
  margin: 0 -1px 0 0;
  padding: 0;
  border: 1px solid #e5e5e5;
}

.pager li:last-child {
  margin: 0;
}

.pager .pagination-item {
  background: #fff;
  color: #666;
  cursor: pointer;
  display: block;
  margin: 0;
  padding: 15px 20px 13px 20px;
  border-bottom: 2px solid;
  border-color: #fff;
  font-size: 18px;
  font-weight: 700;
}

.pager .no-previous .pagination-item {
  background: #f5f5f5 !important;
  color: #999 !important;
  border-color: #f5f5f5;
}

.pager .pagination-item:hover {
  color: #006699;
}

.pager .active .pagination-item {
  color: #006699;
  border-color: #0c6aa0;
}

.flight.search .no-scroll {
  overflow: hidden;
}

.mobile-filter-toolbar {
  min-width: 300px;
}

.mobile-filter-toolbar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 21;
  width: 100%;
  font-weight: 700;
  text-transform: uppercase;
  cursor: pointer;

  -webkit-backface-visibility: hidden;

  -webkit-box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0 -3px 5px rgba(0, 0, 0, 0.1);
}

.move-to-back.mobile-filter-toolbar {
  z-index: 18;
}

.close-btn .close-icon:after {
  content: "\00D7";
}

.close-btn span {
  vertical-align: middle;
  line-height: 1;
}

.close-btn .close-icon {
  font-size: 18px;
  font-weight: 400;
  margin-left: 5px;
}

.login-modal-overlay,
#modal_overlay,
.modal_overlay,
.mobile-menu-overlay,
.site-overlay,
.sidebar-overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.mobile-menu-overlay,
.site-overlay,
.sidebar-overlay {
  cursor: pointer;
  display: none;
  z-index: 19;
}

#modal_overlay,
.modal_overlay,
.site-overlay {
  z-index: 24;
}

.login-modal-overlay,
#modal_overlay,
.modal_overlay,
.site-overlay,
.sidebar-overlay {
  background: rgba(58, 58, 58, 0.6);
}

.mobile-menu-overlay,
.sidebar-overlay {
  background: rgba(255, 255, 255, 0.85);
}

.mobile-menu-overlay:before {
  content: '\00D7';
  font-size: 35px;
  display: inline-block;
  line-height: 18px;
  vertical-align: top;
  position: absolute;
  top: 15px;
  left: 15px;
  color: #999;
}

#modal_box .modal-close-btn {
  position: absolute;
  top: -20px;
  right: -35px;
}

#modal_box .modal-close-btn img {
  display: none;
}

#modal_box .modal-close-btn > a {
  width: 30px;
  height: 30px;
  line-height: 30px;
  color: #fff;
  font-size: 36px;
  text-align: center;
  cursor: pointer;
}

#modal_box .modal-close-btn > a:after {
  content: "\00D7";
}

.flight-class-mobile,
.flight-duration-mobile {
  display: none;
  margin-top: 3px;
  color: #777;
  font-size: 12px;
  font-weight: normal;
}

.flight-duration-mobile {
  font-size: 12px;
  margin-top: 3px;
  color: #777;
}

.view-more-fares {
  display: none;
  font-size: 12px;
  text-align: center;
  padding: 7px 5px;
  background: #F5F5F5;
  color: #444;
  font-weight: 600;
  border-left: 1px solid;
  border-right: 1px solid;
  border-color: #dcdcdc;
}

.view-more-fares .fa {
  margin-left: 5px;
}

.view-more-fares.open .fa-angle-down:before {
  content: "\f106";
}

.container-modal .modal-title {
  font-size: 16px;
  margin: 10px 0;
  color: #444;
  font-weight: 600;
}

a.button-refresh {
  padding: 10px 18px;
  color: #fff;
  background: #455D88;
  font-size: 16px;
  font-weight: 700;
  display: inline-block;
  border-radius: 3px;
  cursor: pointer;
  text-align: center;
  margin: 20px 0 10px 0;
}

a.button-refresh:hover {
  background: #577CBF;
}

.fares-terms {
  margin-top: 10px;
}
#fares-search-progress-bar .fares-terms {
  margin: 10px -12px -10px;
  padding: 3px 0 4px;
  color: #999;
  border-top: 1px dashed #b5b5b5;
  background: #fdfdfd;
}

.fares-terms a {
  font-size: 12px;
  color: #999;
  font-weight: normal;
  line-height: 1;
}

.fares-terms a:hover {
  text-decoration: underline;
}

.loading-title {
  display: none;
}

#fares-search-progress-bar {
  margin: 15px 0 25px 0;
}

.container-package-loading {
  margin-bottom: 20px;
}

/* no results */
.container-no-results {
  padding: 20px;
  background: #f1f1f1;
  border: 1px solid #e5e5e5;
}

.no-results-title {
  font-weight: 600;
  font-size: 22px;
  color: #0C6AA0;
}

.no-results-title .fa {
  font-size: 14px;
  margin-right: 10px;
}

.no-results-subtitle {
  font-size: 0.85em;
  color: #777;
  margin-top: 8px;
  font-style: italic;
  padding-top: 8px;
  border-top: 1px solid #e5e5e5;
}

.container-no-results .reset .fa {
  font-size: 9px;
  vertical-align: top;
  margin: 5px 3px 0 0;
}

.container-no-results .reset strong {
  margin-left: 10px;
}

ul.show-all {
margin-top: 20px;
}

ul.show-all li {
padding: 5px 0 0 0;
}

.airport-suggestion-warning {
  padding: 0 0 20px;
  color: #455D88;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
}

.fares-validate-wrap {
  max-width: 800px;
  font-size: 0;
  margin: auto;
}

.segment-wrap-validate {
  display: inline-block;
  width: 50%;
  font-size: 14px;
  vertical-align: top;
  padding: 15px;
}

.suggestion-list {
  margin-bottom: 30px;
}

.suggestion-subtitle {
  font-weight: 700;
  margin: 15px 0;
  text-transform: uppercase;
}

.segment-wrap-validate .suggestion-title {
  font-size: 18px;
  font-weight: 700;
  color: #455D88;
  padding: 5px 0;
  margin-bottom: 10px;
  border-bottom: 1px solid #e5e5e5;
  text-transform: uppercase;
}

a.button-continue{
  padding: 10px 20px;
  color: #fff;
  background: #455D88;
  font-size: 18px;
  display: inline-block;
  cursor: pointer;
  font-weight: 600;

  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}

a.button-continue:hover {
  background: #5D7BB3;
}

.airport-suggestions .go-back-btn {
  text-align: center;
  margin-bottom: 20px;
}

.airport-suggestions .container-booking-btn {
  text-align: center;
  margin: 30px 0 40px 0;
}

.airport-suggestions .container-booking-btn.top {
  margin: 10px 0 20px 0;
}

.show-on-mobile {
  display: none;
}

/* === SPI === */
.spi-table {
  width: 100%;
  text-align: left;
}

.spi-table th {
  text-transform: uppercase;
  color: #666;
  background: #e1e1e1;
  border: 1px solid #B7B7B7;
  padding: 5px;
  font-weight: 900;
}

.spi-table td {
  vertical-align: top;
  padding: 5px;
  border: 1px solid #CCC;
  width: 25%;
  line-height: 15px;
}

.spi-table .info_name {
  color: #666;
}

.spi-table .info_value {
  color: #455D88;
  font-weight: bold;
}

.spi-table .revenue,
.spi-table .passenger {
  padding: 5px;
  background: #F1F1F1;
  margin: 10px 0;
  border: 1px solid #CECECE;
}

.travelport div {
  width: 50%;
  display: inline-block;
  padding: 0 5px;
}
/* === === */

.side-bar-inner {
  margin-bottom: 15px;
  padding: 10px;
  border: 1px solid #dcdcdc;
}

.right-sidebar .side-bar-inner .features-title {
  line-height: 1.1;
  text-align: center;
}

.right-sidebar .side-bar-inner .features-title.bottom {
   border-top: 1px solid #e5e5e5;
   margin-top: 10px;
   padding-top: 10px;
}

.right-sidebar .feefo-box {
  padding-bottom: 10px;
  text-align: center;
  color: #999;
}

.right-sidebar .feefo-box img {
  margin: 0 auto;
  display: block;
}

.right-sidebar .feefo-box span {
  font-size: 11px;
}

.feefo-title {
  font-weight: 700;
  line-height: 1;
  margin-bottom: 13px;
  color: #777;
  padding: 5px 0;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

.results-sidebar .ad-wrap-sponsored {
  text-align: center;
  padding: 10px;
}

.results-sidebar.ad-wrap-sponsored .ad-top-right-bar {
  margin-bottom: 100px;
}

.results-sidebar .ad-wrap-sponsored .ad-bottom-right-bar {
  margin-bottom: 100px;
}

@media only screen and (max-width: 1220px) {
  .results-sidebar .ad-wrap-sponsored {
      display: none !important;
  }
}

/* === BOTTOM ALERT === */

.ad-wrap-footer {
  margin: auto;
  width: 632px;
}

@media only screen and (max-width: 1024px) {
  .ad-wrap-footer {
      display: none !important;
  }
}

.ad-wrap-footer .ad-wrap-footer-inner {
  padding: 10px;
  border: 1px #e5e5e5 solid;
  background: #FFF;
  overflow: hidden;
}

.ad-wrap-footer .ad-wrap-footer-inner .ad-title {
  font-size: 16px;
  font-weight: 700;
  margin: -10px -10px 10px -10px;
  padding: 8px 12px;
  background: #455d88;
  color: #FFF;
  text-align: left;
}

.ad-wrap-footer .ad-wrap-footer-inner .ad-left-footer {
  float: left;
  width: 300px;
  margin-right: 10px;
}

.bottom-alert-wrap {
  position: fixed;
  bottom: 3px;
  right: 0;
  z-index: 18;
}

.bottom-alert-wrap .list {
  position: relative;
}

.bottom-alert-wrap .item {
  position: relative;
  display: block;
  width: 325px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.1;
  color: #5688a5;
  background: #d9f0f9;
  padding: 10px 35px 10px 40px;
  margin: 0 10px -65px 0;
  border: 1px solid #b9dfef;
  opacity: 0;
  visibility: hidden;

  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;

  -moz-transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;

  -webkit-box-shadow: 0px 2px 4px rgba(0,0,0,0.1);
  -moz-box-shadow: 0px 2px 4px rgba(0,0,0,0.1);
  box-shadow: 0px 2px 4px rgba(0,0,0,0.1);
}

.bottom-alert-wrap .item.active {
  visibility: visible;
  opacity: 1;
  margin-bottom: 10px
}

.bottom-alert-wrap .item.active:hover,
.bottom-alert-wrap .item.active:active,
.bottom-alert-wrap .item.active:focus {
  opacity: 1;
}

.bottom-alert-wrap .icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 16px;
  height: 100%;
  text-align: center;
  width: 30px;
  border-right: 1px solid #b9dfef;
  color: #5688a5;
}

.bottom-alert-wrap .icon-wrap .fa {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -8px 0 0 -7px;
}

.bottom-alert-wrap .btn-close {
  position: absolute;
  top: 50%;
  right: 0;
  width: 30px;
  height: 30px;
  line-height: 30px;
  font-size: 18px;
  font-weight: 400;
  text-align: center;
  font-family: 'Arial', sans-serif;
  color: #81a6b5;
  cursor: pointer;
  margin-top: -15px;
}

.bottom-alert-wrap .btn-close:after {
  content: '\00D7';
}

.bottom-alert-wrap .btn-close:hover,
.bottom-alert-wrap .btn-close:focus,
.bottom-alert-wrap .btn-close:active {
  color: #666;
}

.bottom-alert-wrap .data-amount,
.bottom-alert-wrap .data-city,
.bottom-alert-wrap .data-date,
.bottom-alert-wrap strong {
  font-weight: 700;
  color: #0c6aa0;
}
/* === === */
.results-sidebar .search-selection-tab {
  background: #f1f1f1;
  border: 1px solid #e5e5e5;
  padding: 10px 15px;
  color: #999;
  width: 50%;
  text-align: center;
  position: relative;
  z-index: 1;
  margin-bottom: -1px;
}

.results-sidebar .search-selection-tab.active {
  font-weight: 700;
  color: #666;
  border-bottom: 1px solid #fff;
}

.results-sidebar .search-selection-tab:hover,
.results-sidebar .search-selection-tab.active {
  background: #FFFFFF;
}

.results-sidebar .search-selection-wrap {
  padding: 13px;
  border: 1px solid #e5e5e5;
  position: relative;
  margin-bottom: 25px;
  background: #fff;
}

/* Stops toggler */
.nonstop-text,
.stops-toggler {
  font-weight: 600;
  color: #555;
}

.stops-toggler {
  cursor: pointer;
}

.stops-toggler:hover {
  text-decoration: underline;
}

.flight-amenities-mobile,
.stops-mobile-wrap {
  display: none;
}

.stops-mobile-wrap {
  font-size: 12px;
}

.flight-amenity {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 12px;
  line-height: 16px;
  color: #c3c3c3;
  text-align: center;
  margin-left: 3px;
}

.flight-amenities .flight-amenity.available {
  color: #72a7c5;
}

.flight-amenities .flight-amenity.video {
  font-size: 13px;
}

.stops-disclaimer {
  margin-top: 10px;
  font-size: 11px;
  line-height: 1.1;
  font-weight: 400;
  color: #888;
}

.segment-tooltip-cabin-info-trigger {
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 4px;
  border: 1px solid #aaa;
  color: #999;
  font-size: 8px;
  text-align: center;
  line-height: 12px;
  cursor: pointer;

  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.carry-on-fee-text {
  max-width: 180px;
}

.booking-bonus-wrap .content .fa {
  font-size: 9px;
  margin: 1px 0 0 -1px;
  vertical-align: top;
}

.has-no-amenities .amenities-disclaimer,
.has-no-amenities .flight-amenities {
  display: none!important;
}

.flight-amenities {
  display: inline-block;
  margin: 7px 0 0 0;
  cursor: pointer;
}

.flight-price-disclaimer {
  position: relative;
  cursor: pointer;
  color: #3e3e3e;
}

.flight-price-disclaimer-tooltip {
  padding: 8px 10px;
  background-color: rgb(255, 255, 255);
  font-size: 12px;
  font-weight: 400;
  color: #444;
  width: 230px;
  box-shadow: rgb(204, 204, 204) 0px 0px 5px;
  border-radius: 2px;
  border: 1px solid rgb(202, 202, 202);
  z-index: 19;
  text-align: left;
  position: absolute;
  bottom:20px;
  left:0;
  display: none;
}

.flight-price-disclaimer:hover .flight-price-disclaimer-tooltip {
  display: block;
}

.flight-price-disclaimer .flight-info-tooltip .flight-info-inner {
  width: 260px;
  padding: 8px 12px;
}

.flight-price-disclaimer .flight-info-tooltip::before,
.flight-price-disclaimer .flight-info-tooltip::after {
  display: none;
}

.flight-price-disclaimer .flight-info-tooltip {
  left: auto;
  bottom: auto;
}

.flight-price-disclaimer .flight-info-tooltip-trigger {
  font-size: 13px;
  color: #333;
  margin-right: 3px;
}

.flight-price-disclaimer .flight-info-tooltip-trigger:hover {
  color: #1392ff;
}


/* phone-only package - JC - sept 2021 */

.pkg-phone-wrapper {
  margin: 25px auto;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
  background-image: url("https://www.flighthub.com/images/pkg-phone-bg.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  border: 1px solid #ececec;
  border-radius: 6px;
}

.pkg-phone-text {
  margin-left: 175px;
  padding: 15px 25px;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
  font-size: 22px;
  line-height: 28px;
  color: #455D88;
  text-transform: uppercase;
  background-color: rgba(255,255,255,0.7);
  border-radius: 6px;
}

.fhub .pkg-phone-text {
  color: #444;
}

.pkg-phone-text span {
  font-weight: 700;
  display: block;
}

.pkg-phone-text span.pkg-phone-highlight {
  font-weight: 700;
  color: #E64C34;
  display: inline-block;
}

.pkg-phone-number {
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.pkg-arrow-pointer {
  padding-left: 25px;
  width: 325px;
  height: 120px;
  display: flex;
  align-items: center;
  background: #455D88;
  clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 100%, 9% 50%);
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px;
}

.fhub .pkg-arrow-pointer {
  background: #2cb8e2;
}

.pkg-arrow-pointer-text {
  margin: auto;
  display: flex;
  flex-direction: column;
  color: white;
  font-size: 19px;
  text-transform: uppercase;
  text-align: right;
  line-height: 26px;
}

.fhub .pkg-arrow-pointer-text {
  font-size: 18px;
}

.pkg-arrow-pointer-text span {
  display: block;
  color: #B4CFFF;
  font-size: 32px;
  font-weight: 700;
}

.fhub .pkg-arrow-pointer-text span {
  color: #fff;
  font-size: 30px;
}

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

  .pkg-phone-text {
      margin-left: 135px;
  }

}

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

  .pkg-phone-text {
      font-size: 18px;
      line-height: 24px;
  }

  .pkg-arrow-pointer-text span {
      font-size: 28px;
  }

  .pkg-arrow-pointer {
      width: 275px;
  }

}

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

  .pkg-phone-text {
      margin-left: 115px;
      font-size: 16px;
      line-height: 20px;
  }

  .pkg-arrow-pointer {
      width: 255px;
      height: 100px;
  }

  .pkg-arrow-pointer-text {
      font-size: 16px;
      line-height: 22px;
  }

  .fhub .pkg-arrow-pointer-text {
      font-size: 16px;
  }

  .pkg-arrow-pointer-text span {
      font-size: 24px;
  }

  .fhub .pkg-arrow-pointer-text span {
      font-size: 24px;
  }

}

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

  .pkg-arrow-pointer {
      width: 205px;
  }

  .pkg-phone-text {
      margin-left: 95px;
  }

  .pkg-arrow-pointer-text span {
      font-size: 20px;
  }

  .pkg-arrow-pointer-text {
      font-size: 14px;
      line-height: 20px;
  }

  .fhub .pkg-arrow-pointer-text span {
      font-size: 20px;
  }

  .fhub .pkg-arrow-pointer-text {
      font-size: 14px;
      line-height: 20px;
  }

}

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

  .pkg-phone-text {
      margin-left: 135px;
  }

}

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

  .pkg-phone-text {
      margin-left: 105px;
  }

}

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

  .pkg-phone-text {
      padding: 15px;
      margin-left: 90px;
  }

  .pkg-arrow-pointer {
      width: 190px;
  }

}

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

  .pkg-phone-text {
      padding: 10px 15px;
      font-size: 15px;
  }

  .fhub .pkg-phone-text {
      font-size: 15px;
  }

  .pkg-arrow-pointer {
      height: 80px;
  }

}

/* end phone-only package */





.amenities-disclaimer {
  font-size: 12px;
  line-height: 1.1;
  text-align: center;
  color: #666;
  margin-bottom: 30px;
}

.amenities-disclaimer sup {
  font-size: 0.8em;
  vertical-align: top;
  margin-right: 2px;
}

.site-search-results ~ #modal_box .expired-search-refresh-link a {
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  padding: 7px 15px;
  margin: 10px;
  background: #0C6AA0;
  display: inline-block;

  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}

.criteo_header {
  z-index: -999999 !important;
  margin-bottom: -100px;
}

.filter-toggle-outer-wrap {
  background: #455d88;
  text-align: center;
}

.fhub .filter-toggle-outer-wrap {
  background: #2cb8e2;
}

.filter-toggle-wrap {
  position: relative;
  display: inline-block;
  vertical-align: top;
}

.filter-toggle-wrap .mobile-filter-item {
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding: 10px;
  color: #c2d1ec;
  text-align: center;
  font-size: 10px;
  line-height: 1;
  height: 46px;
  min-width: 55px;

  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -ms-user-select: none;
}

.fhub .filter-toggle-wrap .mobile-filter-item {
  color: #fff;

  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -ms-user-select: none;
}

.filter-toggle-wrap .mobile-filter-item.disabled,
.filter-toggle-wrap.loading .filter-results .mobile-filter-item {
  opacity: 0.5;
}

.filter-toggle-wrap .mobile-filter-item.active {
  background: #5c74a0;
}

.fhub .filter-toggle-wrap .mobile-filter-item.active {
  background: #0094c0;
}

.filter-toggle-wrap .mobile-filter-item:after {
  display: none;
  content: '';
  border-width: 0 7px 7px 7px;
  border-style: solid;
  border-color: transparent transparent #5c74a0 transparent;
  position: absolute;
  bottom: 100%;
  left: 50%;
  right: auto;
  margin-left: -7px;
}

.fhub .filter-toggle-wrap .mobile-filter-item:after {
  border-color: transparent transparent #0094c0 transparent;
}

.filter-toggle-wrap .mobile-filter-item.active:after {
  display: block;
}

.mobile-filter-item .icon,
.mobile-filter-item .jf-icon {
  width: 15px;
  height: 15px;
  display: block;
  margin: 0 auto 2px auto;
}

.mobile-filter-item .icon {
  background-image: url("/images/checkout/jf-filter-icons.png");
  background-image: -webkit-linear-gradient(transparent, transparent), url("/images/checkout/jf-filter-icons.svg");
  background-image: linear-gradient(transparent, transparent), url("/images/checkout/jf-filter-icons.svg");
  background-position: 0 center;
  background-repeat: no-repeat;
}

.mobile-filter-item .jf-icon {
  line-height: 10px;
  color: #fff;
  font-size: 15px;
}

.mobile-filter-item .icon.stops {
  background-position: -61px 0;
  width: 27px;
  height: 16px;
}

.mobile-filter-item .icon.times {
  background-position: -22px 0;
  width: 14px;
  height: 16px;
}

.mobile-filter-item .icon.airlines {
  background-position: -41px 0;
}

.filter-toggle-wrap .mobile-filter-item .fa {
  margin-bottom: 3px;
  height: 15px;
  font-size: 14px;
  color: #fff;
}

.filter-toggle-wrap .mobile-filter-item .fa.fa-search {
  font-size: 16px;
}

.filter-toggle-wrap .filter-results {
  font-size: 0;
  text-align: center;
}

.filter-toggle-wrap .column {
  vertical-align: middle;
}

.filter-toggle-wrap .search {
  width: 80px;
  background: #384969;
}

.filter-toggle-wrap .search .mobile-filter-item {
  width: 100%;
}

.inner-filter-spinner-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255,255,255,0.8);
  z-index: 10;
  padding: 90px 20px 20px 20px;
  text-align: center;
  font-weight: 700;
  color: #666;
}

.inner-filter-spinner-wrap .spinner {
  font-size: 4px;
  border-left-color: #455d88;
}

.inner-filter-spinner-wrap span {
  margin-bottom: 20px;
  display: block;
}

.filter-loading-mobile {
  position: relative;
  border-bottom: 1px dashed rgba(255,255,255,0.4);
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #bdcce6;
  padding: 14px 35px;
  text-align: center;
}

.filter-loading-mobile span {
  font-size: 12px;
  margin-right: 5px;
}

.filter-loading-mobile .spinner {
  font-size: 2px;
  border-color: #ffffff;
  border-left-color: #455d88;
  display: inline-block;
  vertical-align: middle;
}

.trip-search-details-mobile {
  display: none;
  margin-bottom: 15px;
  background: #fff;
  color: #455d88;
  line-height: 1;
  border-bottom: 1px solid #e5e5e5;
}

.fhub .trip-search-details-mobile {
  color: #2cb8e2;
}

.trip-search-details-mobile .destinations {
  cursor: pointer;
}

.trip-search-details-mobile .column {
  vertical-align: middle;
  line-height: 1;
  text-align: center;
}

.trip-search-details-mobile .destination {
  font-weight: 900;
  font-size: 16px;
}

.trip-search-details-mobile .date {
  font-size: 11px;
  font-weight: 600;
  color: #777;
}

.trip-search-details-mobile .arrow-icon {
  font-size: 10px;
  width: 25px;
  text-align: center;
}

.trip-search-details-mobile > .display-table > .column {
  padding: 5px 10px;
  vertical-align: middle;
}

.fare-alert-toggle-mobile {
  font-size: 12px;
  font-weight: 700;
  border-left: 1px solid #e5e5e5;
  cursor: pointer;
}

.has-regular-filters .fare-alert-toggle-mobile {
  width: 135px;
}

.fare-alert-toggle-mobile .label {
  display: inline-block;
  vertical-align: middle;
}

.fare-alert-toggle-mobile .fa {
  margin-right: 3px;
  vertical-align: middle;
}

.close-mobile-slide {
  display: none;
  cursor: pointer;
  position: relative;
  margin: -15px -15px 10px -15px;
  padding: 7px 15px;
  font-size: 10px;
  text-transform: uppercase;
  background: #f1f1f1;
  text-align: center;
  color: #444;
  line-height: 11px;
}

.close-mobile-slide.close-apply {
  margin: 10px -15px -15px -15px;
}

.close-mobile-slide:after {
  content: "\f107";
  font-family: "FontAwesome";
  font-size: 14px;
  margin: 1px 0 0 5px;
  display: inline-block;
  vertical-align: top;
  line-height: 9px;
  font-weight: normal;
}

.close-mobile-slide.close-apply {
  margin: 15px 0 0 0;
  font-size: 13px;
  line-height: 1;
  background: #455D88;
  color: #fff;
  font-weight: 900;
  padding-top: 12px;
  padding-bottom: 12px;
}

.fhub .close-mobile-slide.close-apply {
  background: #2cb8e2;
}

.close-mobile-slide.close-apply:after {
  display: none;
}

.results-search-form .close-mobile-slide {
  margin: -15px -20px 10px -20px;
}

.close-sidebar-fare-alert-reminder,
.close-fare-alert-reminder {
  position: absolute;
  top: 50%;
  width: 35px;
  height: 35px;
  right: 0;
  margin-top: -17px;
  text-align: center;
  font-size: 18px;
  font-weight: normal;
  line-height: 33px;
  color: #777;
  cursor: pointer;
}

.close-sidebar-fare-alert-reminder {
  color: #a2b5d8;
  width: 30px;
}

.close-sidebar-fare-alert-reminder:after,
.close-fare-alert-reminder:after {
  content: '\00D7';
}

.phone-package .faredetails .carrier .column {
  vertical-align: middle;
  font-weight: 600;
}

.phone-package .flight-breakdown .flight-time {
  width: 100px;
}

.phone-package .flight-class .flight-stops {
  font-weight: 600;
}

.phone-package .carrier-name {
  line-height: 1;
}

.package .has-seatmap {
  text-align: right;
  color: #455d88;
  padding: 5px 0px 5px 5px;
  font-weight: 600;
  width: 65%;
}

.package .has-seatmap span,
.package .has-seatmap .amenity-icon {
  display: inline-block;
  vertical-align: middle;
}

.package .has-seatmap .amenity-icon {
  margin-right: 3px;
}

.package .has-seatmap span {
  color: inherit;
  font-weight: inherit;
  margin-top: -1px;
}

.search-information-options .tab-btn.only-mobile {
  display: none;
}

.flight.search .results-page .recent-flights-wrap {
  display: none !important;
}

#mobileFareTracker.hide,
#mobileFareTracker .hide {
  display: none;
}

.booking-progress-modal {
  z-index: 25;
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.search .subheader,
.search .site-header-bottom {
  background-color: #fff !important;
}

.booking-progress-modal .container-modal {
  position: relative;
}

.site-search-results .packages-wrap {
  padding-top: 20px;
}

.main-airlines-section {
  padding-bottom: 5px;
}

.multi-airlines-section .filterlist {
  padding-top: 5px;
}

.multi-airlines-section hr {
  margin: 0;
  border: 1px solid #f1f1f1;
  border-top: 0;
}

/* === original top header variation === */
.header-v1 .top-heading-wrap {
  color: #E2EAF9;
  background: #455D88;
  border-bottom: 0;
}

.header-v1 .result-page-title {
  font-size: 24px;
}

.header-v1 .result-page-title strong {
  color: #fff;
}

.header-v1  .best-price-disclaimer .disclaimer-toggle {
  color: inherit;
}

.header-v1 .trip-search-details-mobile {
  background: #455d88;
  color: #fff;
}

.header-v1 .fare-alert-toggle-mobile {
  border-color: #7b91b9;
  color: #fff;
}

.header-v1 .trip-search-details-mobile .date {
  color: #c1d4f5;
}
/* ====== */

.package-set-price-alert {
  padding: 9px 15px;
  border-top: 1px dashed #e5e5e5;
  background: #ffffff;
  color: #444;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.2;
  font-family: 'Lato', sans-serif;
}

.package-set-price-alert span,
.package-set-price-alert a {
  display: inline-block;
  vertical-align: middle;
}

.package-set-price-alert a {
  color: inherit;
}

.package-set-price-alert.pa-processing a,
.package-set-price-alert.pa-error a {
  cursor: default;
}

.package-set-price-alert:not(.pa-processing):not(.pa-error) a:hover {
  color: #1392ff;
}

.package-set-price-alert .jf-icon {
  font-size: 15px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin-top: -1px;
  margin-right: 5px;
}

.package-set-price-alert .bars-loader {
  margin-right: 7px;
}

.package-set-price-alert.pa-success {
  -webkit-animation: fareAlertSuccess 1s linear;
  animation: fareAlertSuccess 1s linear;
  color: #aaa;
}

.package-set-price-alert.pa-error {
  color: #e0675e;
}

.package-set-price-alert.pa-processing {
  color: #455d88;
}

@-webkit-keyframes fareAlertSuccess {

  0% {
      color: #66bd21;
  }
  100% {
      color: #aaa;
  }

}

@keyframes fareAlertSuccess {

  0% {
      color: #629e32;
  }
  100% {
      color: #aaa;
  }

}

#flight-fare-alert-modal .modal-success {
  margin-bottom: 20px;
}

.nearby-airport-alert {
  display: inline-block;
  color: #5a942f;
  font-weight: 600;
  font-size: 12px;
  margin: 10px 0 0 0;
}

.nearby-airport-alert.interstitial-nearby-airport {
  color:#333;
}

.nearby-airport-alert.interstitial-nearby-airport i {
  color: #333;
}

.nearby-airport-alert .fa {
  margin-right: 3px;
  font-size: 14px;
  color: #7fbd52;
}

#top-filters.sticky-loader {
  padding-bottom: 48px;
}

#top-filters.sticky-loader .filtering-overlay {
  position: fixed;
  z-index: 10;
  top: 15px;
  width: 100%;
  left: 0;
}

.top-pinned-package-title {
  font-weight: 600;
  color: #666;
  font-size: 16px;
}

.top-pinned-package-title.departure {
  border-top: 1px dashed #e5e5e5;
  padding-top: 10px;
  margin-bottom: 13px;
}

.top-pinned-package-title.return {
  margin-top: 15px;
  margin-bottom: 15px;
}

.top-pinned-package-title .icon-wrap {
  width: 35px;
}

.top-pinned-package-title .icon {
  width: 35px;
  height: 35px;
  text-align: center;
  line-height: 37px;
  border: 1px solid #e5e5e5;
  color: #455D88;
  font-size: 16px;

  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.top-pinned-package-title .jf-icon {
  display: inline-block;
}

.top-pinned-package-title .text {
  padding-left: 10px;
}

.top-pinned-package-title .column {
  vertical-align: middle;
}

.top-pinned-package-title strong {
  color: #455D88;
}

.pinnedfade-enter {
  opacity: 0
}

.pinnedfade-enter-active {
  transition: opacity .5s
}

.pinnedfade-enter-to {
  opacity: 1;
}

.pinned-package-list .package {
  margin: 0;
  background-color: #fffdf4;
  max-width: none;
}

.pinned-package-list .package .city-pair,
.pinned-package-list .package,
.pinned-package-list .package .flight-price,
.pinned-package-list .package .flightDetails {
  border-color: #ece4da;
}

.pinned-package-list .package .flight-price,
.pinned-package-list .flightDetails .city-pair {
  background: inherit;
}

.pinned-package-list .city-pair:not(.pinned),
.pinned-package-list .seats-left-wrap,
.pinned-package-list .pinned-flight-button,
.pinned-package-list .package-set-price-alert {
  display: none;
}

.has-pinned-city-pair-alternatives .pinned-package-price-difference {
  display: block;
}

.hasPinned.package .flex-savings,
.pinned-package-price-difference,
.has-pinned-city-pair-alternatives .city-pair.pinned,
.has-pinned-city-pair-alternatives .flight-price-number > div:not(.pinned-package-price-difference){
  display: none;
}

.remove-pinned {
  display: inline-block;
  font-weight: 400;
  font-size: 12px;
  color: #455D88;
}

.remove-pinned span {
  text-decoration: underline;
  cursor: pointer;
}

.remove-pinned span:hover {
  color: #000;
}

.package-select.pinned-select {
  padding: 10px 22px 10px 10px;
  display: inline-block;
  color: #D1C5B5;
  font-weight: 900;
  text-align: center;
  position: relative;
  line-height: 1;
  cursor: pointer;
  font-size: 20px;
  text-transform: uppercase;
}

.package-select.pinned-select:after {
  content: '\f00c';
  font-family: Fontawesome;
  font-weight: normal;
  position: absolute;
  top: 50%;
  line-height: 14px;
  margin-top: -7px;
  right: 0;
  font-size: 16px;
}

.package-select.pinned-select:hover:after {
  content: '\f00d';
}

.pinned-package-list .flight-price .flight-select-wrap {
  text-align: right;
}

.pinned-package-list .carrier-name,
.pinned-package-list .flight-breakdown .flight-time,
.pinned-package-list .flight-breakdown .flight-date,
.pinned-package-list .flight-breakdown .flight-airport,
.pinned-package-list .flightDetails .layover-alert {
  color: #222;
}

/* === flex date Matrix === */
.flexible-title-table .spinner {
  font-size: 3px;
}

.flexible-date-table {
  margin-bottom: 10px;
  width: 100%;
  background: #fff;
  border-collapse: collapse;
  line-height: 1;
  table-layout: fixed;
}

.flexible-date-table th,
.flexible-date-table td {
  padding: 10px 3px;
  font-weight: 600;
  border: 1px solid #f1f1f1;
  text-align: center;
  vertical-align: middle;
}

.flexible-date-table td {
  font-size: 12px;
}

.flexible-date-table .date-cell,
.original-results-layout .flexible-date-table tr:first-child th,
.original-results-layout .flexible-date-table td:first-child {
  font-size: 12px;
  background: #f9f9f9;
  color: #444;
}

.flexible-date-table .date-cell,
.original-results-layout .flexible-date-table tr:first-child th,
.original-results-layout .flexible-date-table td:first-child {
  height: 40px;
}

.flexible-date-table a {
  font-family: Lato, sans-serif;
  color: #666
}

.flexible-date-table a:hover {
  color: #333;
}

.flexible-matrix-legend {
  text-align: center;
  margin: 10px 0 19px 0;
  font-size: 12px;
  line-height: 1;
  text-transform: capitalize;
  color: #555;
}

.flexible-matrix-legend span,
.flexible-matrix-legend li {
  display: inline-block;
  vertical-align: middle;
}

.flexible-matrix-legend li {
  margin: 0 5px;
}

.flexible-matrix-legend .legend-dot {
  width: 8px;
  height: 8px;
  background: #999;
  border-radius: 50%;
  margin-right: 3px;
}

.flexible-matrix-legend .legend-dot.blue {
  background: #0C6AA0;
}

.flexible-matrix-legend .legend-dot.green {
  background: #419900;
}

.flexible-matrix-legend .legend-dot.red {
  background: #ce7171;
}

.flexible-title-table {
  width:100%;
}

.flexible-title-table th {
  padding: 10px;
  text-align: left;
  font-weight: 400;
}

th.flexible-date-bg-dark-grey,
td.flexible-date-bg-dark-grey {
  background: #d9f0f9 !important;
}

.flexible-date-bg-blue {
  background: #d9f0f9;
}

th.flexible-date-bg-dark-grey,
td.flexible-date-bg-dark-grey,
.flexible-date-bg-blue,
.flexible-date-bg-blue a {
  color: #4586a0 !important;
}

.flexible-date-bg-blue a {
  color: #069;
}

.flexible-date-bg-red a {
  color: #ce7171;
}

.flexible-date-bg-green a {
  color: #449304;
}

.flexible-date-bg-blue a:hover{
  color: #069;
}

.flexible-date-bg-red a:hover{
  color: #ce4628;
}

.flexible-date-bg-green a:hover{
  color: #75c15c;
}
/* === // flex date Matrix === */

/* === vue slider === */
.duration-labels {
  display: block;
  white-space: nowrap;
  min-width: 20px;
  text-align: center;
  color: #333;
  font-size: 11px;
  font-weight: 700;
  background: #ffffff;
  margin: 5px 0 20px;
}

.vue-slider-wrap {
  position: relative;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 10px 0 20px 0;
}

.vue-slider-wrap.vue-slider-disabled {
  opacity: .5;
  cursor: not-allowed;
}

.vue-slider-wrap.vue-slider-has-label {
  margin-bottom: 15px;
}

.vue-slider-wrap.vue-slider-disabled .vue-slider-dot {
  cursor: not-allowed;
}

.vue-slider-wrap .vue-slider {
  position: relative;
  display: block;
}

.vue-slider-wrap .vue-slider,
.vue-slider-wrap .vue-slider::after,
.vue-slider-wrap .vue-slider::before {
  background: #f1f1f1;
}

.vue-slider-wrap .vue-slider::after,
.vue-slider-wrap .vue-slider::before {
  content: '';
  width: 10px;
  position: absolute;
  height: 100%;
}

.vue-slider-wrap .vue-slider::after {
  right: -10px;
}

.vue-slider-wrap .vue-slider::before {
  left: -10px;
}

.vue-slider-process {
  position: absolute;
  background:#C2D9A3;
  transition: all 0s;
  z-index: 1;
}

.vue-slider-horizontal .vue-slider-process {
  width: 0;
  height: 100%;
  top: 0;
  left: 0;
  will-change: width;
}

.vue-slider-vertical .vue-slider-process {
  width: 100%;
  height: 0;
  bottom: 0;
  left: 0;
  will-change: height;
}

.vue-slider-horizontal-reverse .vue-slider-process {
  width: 0;
  height: 100%;
  top: 0;
  right: 0;
}

.vue-slider-vertical-reverse .vue-slider-process {
  width: 100%;
  height: 0;
  top: 0;
  left: 0;
}

.vue-slider-dot {
  position: absolute;
  background: #fff;
  cursor: pointer;
  z-index: 3;
  border: 1px solid #444;
  box-shadow: 0 1px 1px rgba(0,0,0,0.1);
  will-change: transform;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.vue-slider-dot:hover {
  background: #f1f1f1;
}

.vue-slider-dot:active {
  background: #455D88;
  border-color: #455D88;
}

.vue-slider-horizontal .vue-slider-dot {
  left: 0;
}

.vue-slider-vertical .vue-slider-dot {
  bottom: 0;
}

.vue-slider-horizontal-reverse .vue-slider-dot {
  right: 0;
}

.vue-slider-vertical-reverse .vue-slider-dot {
  top: 0;
}

.vue-slider-tooltip-wrap {
  display: none;
  position: absolute;
  z-index: 9;
}

.vue-slider-tooltip {
  display: block;
  white-space: nowrap;
  padding: 2px 5px;
  min-width: 20px;
  text-align: center;
  color: #333;
  font-size: 11px;
  font-weight: 700;
  background: #ffffff;
}

.vue-slider-tooltip:after {
  content: 'h';
}

.vue-slider-tooltip-wrap.vue-slider-tooltip-top {
  top: -4px;
  left: 50%;
  transform: translate(-50%, -100%);
}

.vue-slider-tooltip-wrap.vue-slider-tooltip-bottom {
  bottom: -9px;
  left: 50%;
  transform: translate(-50%, 100%);
}

.vue-slider-tooltip-wrap.vue-slider-tooltip-left {
  top: 50%;
  left: -9px;
  transform: translate(-100%, -50%);
}

.vue-slider-tooltip-wrap.vue-slider-tooltip-right {
  top: 50%;
  right: -9px;
  transform: translate(100%, -50%);
}

.vue-slider-dot.vue-slider-hover:hover .vue-slider-tooltip-wrap {
  display: block;
}

.vue-slider-dot.vue-slider-always .vue-slider-tooltip-wrap {
  display: block!important;
}

.vue-slider-piecewise {
  position: absolute;
  width: 100%;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  height: 100%;
  list-style: none;
}

.vue-slider-piecewise li {
  position: absolute;
  width: 8px;
  height: 8px;
  visibility: hidden;
}

.vue-slider-piecewise .vue-slider-piecewise-dot {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  display: inline-block;
  background-color: rgba(0, 0, 0, 0.16);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  transition: all .3s;
}

.vue-slider-piecewise li:first-child .vue-slider-piecewise-dot,
.vue-slider-piecewise li:last-child .vue-slider-piecewise-dot {
  visibility: hidden;
}

.vue-slider-piecewise .vue-slider-piecewise-label {
  position: absolute;
  display: inline-block;
  top: 15px;
  left: 50%;
  white-space: nowrap;
  font-size: 12px;
  color: #333;
  transform: translateX(-50%);
  visibility: visible;
}

.link-toggle-arrivals {
  color: #666;
  cursor: pointer;
}

.link-toggle-arrivals:hover {
  text-decoration: underline;
}
/* === end vue slider === */

.not-matching-results-warning {
  padding: 8px 15px 8px 25px;
  border: 1px solid #f7e7d8;
  margin: 0 0 15px 0;
  background: #fff3e7;
  color: #a96f38;
  font-family: 'Lato', sans-serif;
  font-size: 12px;
  font-weight: 600;
  position: relative;
  line-height: 1.1;
}

.not-matching-results-warning .fa {
  left: 10px;
}




/* === sold-out packages === */

.sold-out .flight-select-wrap {
  width: 165px;
}

.sold-out .flight-select-wrap p {
  font-size: 16px;
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  padding: 10px;
  border: 1px solid #e5e5e5;
}

.sold-out .flight-select-wrap p,
.sold-out .flight-price-number,
.sold-out .total-price {
  color: #999;
}

/* === greyed-Out packages === */

.greyed-out-displayed {
  position: absolute;
  opacity: 100%;
  height: 100%;
  width: 100%;
  z-index: 1;
  background-color: rgba(255, 255, 255, 0.7);
}

.package-select-disabled {
  z-index: 2;
  padding: 14px 35px 14px 25px;
  display: block;
  color: #fff;
  font-weight: 900;
  text-align: center;
  background-color: #D03F35;
  position: relative;
  line-height: 1;
  cursor: not-allowed;
  font-size: 20px;
  text-transform: uppercase;
  margin: 0 0 0 auto;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;

}

.package-select-disabled:hover{
  color: white;
}
.sold-out-text {
  z-index: 7;
  color: #2cb8e2;
  font-size: x-large;
  margin-bottom: 15px;
}

/* === FareLock Search Results === */
.farelock-eligible-text {
  text-align: right;
  color: #888;
  /*padding-right: 15px;*/
}

.farelock-eligible-text img {
  margin: -2px 1px 0 2px;
}

.farelock-eligible-button {
  display: none !important;
  width: 110px;
  text-align: right;
}

a.farelock-search-results-button {
  position: relative;
  width: 100%;
  border: 1px solid #576C93;
  border-radius: 2px;
  padding: 8px 10px 8px 0;
  color: #576C93;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
  line-height: 1;
  margin: 0 0 0 auto;
}

a.farelock-search-results-button:not(.pinned-select):hover{
  background-color: #576C93;
  color: #FFF!important;
}

.farelock-search-results-button .fa {
  position: absolute;
  font-size: 10px;
  top: 50%;
  margin-top: -5px;
  right: 8px;
}

.package-fare-families {
  line-height: 1;
  border-top: 1px dashed;
  border-left: 1px solid;
  border-right: 1px solid;
  border-color: #e5e5e5;
  background: #f5f5f5;
}

.ff-ipad-btn {
  padding: 4px !important;
}

.tooltip-test {
  position: relative;
}

.tooltip-test:hover .tooltip-test-text {
  visibility: visible;
  -webkit-box-shadow: 0 2px 2px 0 #d3d3d3, 0 1px 12px 0 #d3d3d3;
  -mox-box-shadow: 0 2px 2px 0 #d3d3d3, 0 1px 12px 0 #d3d3d3;
  box-shadow: 0 2px 2px 0 #d3d3d3, 0 1px 12px 0 #d3d3d3;
}

.ff-available:before {
  content: '\2714';
  color: #008000;
}

.ff-fee:before {
  content: '\0024';
}

.ff-unavailable:before {
  content: '\2718';
  color: #FF0000;
}

.tooltip-test .tooltip-test-text {
  visibility: hidden;
  width: 240px;
  background-color: #fff;
  text-align: center;
  border: 1.1px solid #576C93;
  border-radius: 2.2px;
  padding: 10px;
  color: rgb(51, 51, 51);
  font-size: 10px;
  /* Position the tooltip */
  position: absolute;
  z-index: 1;
  bottom: 100%;
  left: 50%;
  margin-left: -60px;
}

.grid-testing {
  display: grid;
  text-align: left;
}

.grid-items {
  font-weight: 500;
  font-size: 12px;
  display: inline-flex;
  margin: 7.5px 0;
}

.grid-items-header {
  color: #576C93;
  font-weight: 700;
  font-size: 13px;
  border-bottom: 1px dashed lightgray;
  padding: 7px 0 10px 0;
}

.package-fare-families .fare-family-list {
  font-size: 0;
  padding: 3px;
}

.fare-family-item {
  display: inline-block;
  padding: 3px;
  margin: 0 2px;
}

.ipad-fare-family-tooltip {
  margin: 0 10px;
  display: none;
}

.fare-family-btn {
  display: block;
  color: #E07915;
  padding: 8px 25px 8px 10px;
  font-size: 14px;
  border-radius: 2px;
  background: #ffffff;
  border: 1px solid #e5e5e5;
  text-align: left;
  position: relative;
  transition: all 0.3s;
}

.fare-family-btn:hover {
  background: #f1f1f1;
  color: #e64c34;
}

.fare-family-btn:hover .fare-name {
  color: inherit;
}

.fare-family-item .fare-family-btn:after {
  content: "\f054";
  position: absolute;
  font-family: FontAwesome;
  font-size: 8px;
  top: 50%;
  margin-top: -3px;
  right: 5px;
  font-weight: normal;
}

.ff-ipad-btn:after {
  content: "\003F" !important;
  position: absolute !important;
  font-size: 18px !important;
  top: 50% !important;
  margin-top: -3px !important;
  right: -6px !important;
  font-weight: 700 !important;
  padding: 3px 8px;
  border-radius: 100%;
  background-color: #E44D3B;
  color: #fff;
  display: none;
}

@media only screen and (max-width: 1024px) {
  .ff-ipad-btn:after {
      display: block;
      cursor: pointer;
  }

  .ipad-fare-family-tooltip {
      display: inline-block;
  }

  .tooltip-test:hover .tooltip-test-text {
      visibility: hidden;
      -webkit-box-shadow: 0 2px 2px 0 #d3d3d3, 0 1px 12px 0 #d3d3d3;
      -mox-box-shadow: 0 2px 2px 0 #d3d3d3, 0 1px 12px 0 #d3d3d3;
      box-shadow: 0 2px 2px 0 #d3d3d3, 0 1px 12px 0 #d3d3d3;
  }

  .tooltip-test .tooltip-test-text {
      bottom: 150%;
  }
}

.fare-family-btn .fare-name {
  font-size: 12px;
  margin-top: 2px;
  color: #444;
}
.fare-family-btn .price {
  font-weight: 700;
}




/* promo code banner */

.promo-code-banner {
  margin: 0 auto 20px;
  padding: 15px 10px;
  max-width: 900px;
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
}

.promo-code-section-container {
  width: 100%;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.promo-code-container--top {
  justify-content: flex-start;
}

.promo-code-container--bottom {
  margin-top: 15px;
  justify-content: flex-start;
}

@media (max-width: 1275px) {

  .promo-code-banner {
      flex-direction: column;
  }

  .promo-code-right {
      margin: 15px 0 5px;
  }

}

.promo-code-left {
  padding-right: 30px;
  flex: 0 1 auto;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.promo-code-icon {
  padding: 0 15px 0 0;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
  display: flex;
  display: -webkit-flex;
}

.promo-code-text {
  font-size: 15px;
  line-height: 22px;
  flex: 1;
  -webkit-flex: 1;
  white-space: nowrap;
  display: flex;
}

.promo-code-text a {
  text-decoration: underline;
}

.promo-code-text a:focus {
  color: #333;
}

.promo-code-info-wrapper {
  position: relative;
  display: flex;
}

.promo-code-info {
  --triangle_size: 10px;

  font-size: 13px;
  line-height: 1.3em;
  display: none;
  position: absolute;
  background-color: white;
  white-space: normal;
  bottom: 125%;
  left: -150%;
  right: -150%;
  padding: .5em 1em;
  border-radius: .25rem;
  box-shadow: 0 .1em .5em 0 rgba(0,0,0,.2);
  z-index: 101;
}

.promo-code-text .promo-code-info-wrapper:hover .promo-code-info {
  display: block;
}

.promo-code-info::before {
  content: '';
  position: absolute;
  border-left: calc(var(--triangle_size) + 1px) solid transparent;
  border-right: calc(var(--triangle_size) + 1px) solid transparent;
  border-top: calc(var(--triangle_size) + 1px) solid rgba(0,0,0,.2);
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.promo-code-info::after {
  content: '';
  position: absolute;
  border-left: var(--triangle_size) solid transparent;
  border-right: var(--triangle_size) solid transparent;
  border-top: var(--triangle_size) solid white;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
}

.promo-code-right {
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
  display: flex;
  display: -webkit-flex;
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
  align-items: center;
  -webkit-align-items: center;
}

.promo-code-banner #spinner{
  margin-inline-start: .5em;
  animation: spin 800ms linear infinite;
}

.promo-code-field {
  padding: 0 5px 0 0;
  flex: 0 1 250px;
  -webkit-flex: 0 1 250px;
  position: relative;
}

.promo-code-field input {
  padding: 10px 15px;
  background-color: #fff;
  height: 38px;
  width: 100%;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
}

.promo-code-btn {
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.promo-code-btn a,
.promo-code-right a {
  padding: 10px 20px;
  color: #fff;
  font-weight: 600;
  display: inline-block;
  height: 38px;
  background-color: #455D88;
  border-radius: 4px;
  transition: all 0.3s;
  white-space: nowrap;
}

.promo-code-btn a:hover,
.promo-code-right a:hover {
  background-color: #576C93;
}

.promo-code-success {
  color: #67A838;
  font-size: 15px;
}

.promo-code-disclaimer {
  margin-top: 10px;
  text-align: left;
  width: 100%;
  font-size: 12px;
  color: #555;
}

.promo-code-success span.promo-code {
  margin: 0 5px;
  padding: 5px;
  font-weight: 600;
  background-color: #fff;
  vertical-align: middle;
  border: 1px dashed #67A838;
}

.promo-code-error {
  --triangle_size: 6px;

  position: absolute;
  top: 110%;
  z-index: 101;

  display: flex;
  align-items: center;

  color: #D50000;
  font-size: 12px;
  background-color: white;

  padding: .25rem .5rem;
  border: 1px solid #D50000;
  border-radius: .25rem;
}

.promo-code-error::before {
  content: '';
  position: absolute;
  border-left: calc(var(--triangle_size) + 1px) solid transparent;
  border-right: calc(var(--triangle_size) + 1px) solid transparent;
  border-bottom: calc(var(--triangle_size) + 1px) solid #D50000;
  bottom: 100%;
  left: 5%;
  transform: translateX(-5%)
}

.promo-code-error::after {
  content: '';
  position: absolute;
  border-left: var(--triangle_size) solid transparent;
  border-right: var(--triangle_size) solid transparent;
  border-bottom: var(--triangle_size) solid white;
  bottom: 100%;
  left: 5%;
}


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

  .carrier .flight-icon img {
      width: 100%;
  }

}




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

  .top-heading-wrap .title-wrap {
      text-align: left;
      padding-right: 8px;
  }

}




@media only screen and (max-width: 1300px) {
  .flight-breakdown .flight-date {
      width: 95px;
  }
}




@media only screen
and (max-width: 1300px)
and (min-width: 1221px) {

  .flightDetails .carrier {
      width: 180px;
  }

}




@media only screen
and (max-width: 1300px)
and (min-width: 1024px) {

  .packages-wrap {
      padding: 0 15px;
  }

  .general-container.results-page {
      width: auto;
  }

}



@media only screen and (min-width: 1221px) {

  .right-sidebar .newsletter-side-bar-alert {
      right: 0;
  }

}




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

  .top-heading-wrap {
      margin-bottom: 15px;
  }

  .top-heading-wrap .title-wrap {
      padding: 0;
  }

  .results-3-col.display-table,
  .results-3-col > .column {
      display: block;
  }

  .results-3-col .right-sidebar {
      width: auto;
  }

  .results-2-col .results-list {
      padding-right: 0;
  }

  .feature-list,
  .right-sidebar .sidebar-ads,
  .right-sidebar .features-box {
      display: none;
  }

  .side-bar-inner {
      padding: 0;
      margin: 0;
      border: 0;
  }

  .fare-alerts-results-trigger {
      display: none !important;
  }

  .pulse {
      animation: none;
  }

  .fare-alert-graph {
      display: none;
  }

  .airfare-alert-container .alert-title {
      text-transform: none;
  }

  .airfare-alert-container .alert-title br {
      display: none;
  }

  .airfare-alert-container {
      display: block !important;
  }

  .sticky-loader .filters-loading-bar-wrap {
      padding-left: 275px;
      padding-right: 0;
  }

  /* === FareLock Search Results === */

  .farelock-eligible-text {
      text-align: left!important;
  }

}




@media only screen
and (max-width: 1220px)
and (min-width: 1024px) {

  .airfare-alert-container {
      font-size: 0;
      padding: 10px;
      margin: 15px 0 20px 0;
      border: 1px dashed #e5e5e5;
  }

  .airfare-container-wrap {
      display: inline-block;
      width: 80%;
  }

  .airfare-alert-container .text {
      display: inline-block;
      vertical-align: middle;
      padding-right: 10px;
      width: 45%;
      text-align: center;
  }

  .airfare-alert-container .text .text {
      width: auto;
  }

  .airfare-alert-container .alert-title {
      color: #455D88;
      margin: 0;
      font-weight: 400;
  }

  .airfare-alert-container .alert-title span {
      font-weight: 700;
  }

  .right-sidebar .form {
      display: inline-block;
      vertical-align: middle;
      width: 55%;
      margin: auto;
      font-size: 0;
  }

  .right-sidebar .alert-field {
      display: inline-block;
      margin: 0;
      width: 50%;
  }

  .right-sidebar .alert-field input,
  .right-sidebar .button-alert {
      line-height: 35px;
      height: 35px;
      vertical-align: top;
  }

  .right-sidebar .alert-field input {
      padding: 0 8px;
      border-right: 0;

      -webkit-border-radius: 3px 0 0 3px;
      -moz-border-radius: 3px 0 0 3px;
      border-radius: 3px 0 0 3px;
  }

  .right-sidebar .button-alert {
      display: inline-block;
      padding: 0 10px;
      width: 50%;
      color: #fff;
      margin: 0;

      -webkit-border-radius: 0 3px 3px 0;
      -moz-border-radius: 0 3px 3px 0;
      border-radius: 0 3px 3px 0;

      -webkit-box-shadow: none;
      -moz-box-shadow: none;
      box-shadow: none;
  }

  .fares-terms {
      display: inline-block;
      vertical-align: middle;
      padding: 10px;
      width: 20%;
      margin: 0;
  }

}




@media only screen and (min-width: 1024px) {

  .results-search-form .ui-menu {
      max-width: none;
  }

  .site-search-results .results-search-form.open,
  .site-search-results .filter-type.filter-stops.open,
  .site-search-results .filter-type.departure-times.open,
  .site-search-results .filter-type.filter-airlines.open {
      -moz-transform: none!important;
      -webkit-transform: none!important;
      -ms-transform: none!important;
      transform: none!important;
  }

  .sidebar-overlay {
      display: none !important;
  }

  .mobile-menu-overlay {
      display: none !important;
  }

  .flight.search body.fixed {
      position: static;
      width: auto;
      height: auto;
      top: auto;
      left: auto;
  }

  .filters-loading-bar {
      border:0;
      background: #455D88;
      color: #ffffff;
      font-size: 14px;
      box-shadow: 0 3px 5px rgba(0,0,0,0.2);
  }

}




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

  body.affiliate-compare-responsive #fares-search-airline-matrix {
      display: none;
  }

  body.affiliate-compare-responsive .matrix-footer {
      display: none;
  }

  .inner-filter-spinner-wrap,
  .results-sidebar .close-btn {
      display: block;
  }

  .results-sidebar > .filters-title {
      display: none;
  }

  .filters-title {
      padding-left: 5px;
      font-size: 16px;
      text-align: left;
  }

  .results-sidebar .mobile-calendar-toggle,
  .results-sidebar .main-search-form .passenger-toggle,
  .results-sidebar .main-search-form input:not([type=checkbox]) {
      font-size: 14px;
      text-align: left;
  }

  .results-sidebar .form-field-passengers .passenger-toggle {
      border: 0;
  }

  .results-sidebar  .passenger-toggle-wrap {
      background: #fff;
      border: 1px solid #dcdcdc;
  }

  .results-sidebar .form-fields-wrap {
      padding: 0;
  }

  .sticky-loader .general-container-fixed,
  .general-container.results-page {
      max-width: 850px;
  }

  .results-2-col > .display-table > .column,
  .results-2-col > .display-table,
  .display-table.results-3-col {
      display: block;
      margin: auto;
  }

  .results-2-col .results-list {
      padding: 0;
  }

  .results-3-col .results-sidebar {
      position: fixed;
      z-index: 20;
      top: 0;
      left: -290px;
      background: #fff;
      bottom: 0;
      width: 290px;
  }

  .results-sidebar .flight-type .form-filters-left ul li {
      padding: 0;
  }

  .mobile-filter-toolbar {
      display: block;
  }

  .results-intro-savings-banner,
  .trip-search-details,
  .booking-bonus-wrap {
      display: none;
  }

  .carrier .flight-icon {
      width: 45px;
  }

  .flightDetails .carrier {
      width: 195px;
  }

  .header-v1 .result-page-title,
  .result-page-title {
      font-size: 18px;
  }

  .results-sidebar .search-selection-wrap {
      padding: 0;
      border: 0;
      margin-bottom: 0;
      background: none;
  }

  .results-sidebar .form-wrap-multi .form-fields-wrap-multi-container,
  .results-sidebar .form-fields-wrap-multi,
  .results-sidebar .form-fields-wrap-multi + .form-fields-wrap-multi,
  .results-sidebar .form-filters-wrap.flight-class {
      margin-top: 15px;
  }

  #modal_box .modal-close-btn {
      top: -40px;
      right: 30px;
  }

  .results-sidebar  .passenger-toggle-wrap {
      position: relative;
  }

  .search-dropdown-toggle.passenger-toggle {
      position: static;
  }

  .site-search-results .filter-type {
      display: none;
  }

  .flight.search body.is-not-android.fixed {
      position: fixed;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      overflow: auto;
  }

  .flight.search body.fixed .site-header {
      z-index: 19;
  }

  .flight.search .fixed .ui-menu {
      position: fixed;
      max-height: 45%;
      overflow: auto;

      -webkit-overflow-scrolling: touch;
  }

  .site-search-results .results-search-form,
  .airfare-alert-container,
  .site-search-results .filter-type.filter-stops,
  .site-search-results .filter-type.departure-times,
  .site-search-results .filter-type.filter-airports,
  .site-search-results .filter-type.filter-airlines,
  .vue-filters .filters-wrap {
      display: block;
      position: fixed;
      bottom: 65px;
      z-index: 20;
      margin: 0;
      width: 275px;
      max-height: 85%;
      padding: 15px;
      background: #fff;
      border: 1px solid #efefef;
      overflow: auto;

      -webkit-box-shadow: 0 5px 6px rgba(0,0,0,0.15);
      -moz-box-shadow: 0 5px 6px rgba(0,0,0,0.15);
      box-shadow: 0 5px 6px rgba(0,0,0,0.15);
  }

  .is-android .site-search-results .results-search-form,
  .is-android .airfare-alert-container,
  .is-android .site-search-results .filter-type.filter-stops,
  .is-android .site-search-results .filter-type.departure-times,
  .is-android .site-search-results .filter-type.filter-airports,
  .is-android .site-search-results .filter-type.filter-airlines {
      display: none!important;
  }

  .is-not-android .site-search-results .results-search-form,
  .is-not-android .airfare-alert-container,
  .is-not-android .site-search-results .filter-type.filter-stops,
  .is-not-android .site-search-results .filter-type.departure-times,
  .is-not-android .site-search-results .filter-type.filter-airports,
  .is-not-android .site-search-results .filter-type.filter-airlines {
      opacity: 0;
      visibility: hidden;

      -webkit-transform: translate3d(0,100%,0);
      -moz-transform: translate3d(0,100%,0);
      transform: translate3d(0,100%,0);
      -ms-transform: translateY(100%);

      -webkit-transition: all 0.4s;
      -moz-transition: all 0.4s;
      transition: all 0.4s;

      -webkit-overflow-scrolling: touch;
  }

  .is-not-android .site-search-results .results-search-form.open,
  .is-not-android .airfare-alert-container.open,
  .is-not-android .site-search-results .filter-type.filter-stops.open,
  .is-not-android .site-search-results .filter-type.departure-times.open,
  .is-not-android .site-search-results .filter-type.filter-airports.open,
  .is-not-android .site-search-results .filter-type.filter-airlines.open {
      opacity: 1;
      visibility: visible;

      -webkit-transform: translate3d(0,0,0);
      -moz-transform: translate3d(0,0,0);
      transform: translate3d(0,0,0);
      -ms-transform: translateY(0,0,0);
  }

  .is-android .site-search-results .results-search-form.open,
  .is-android .airfare-alert-container.open,
  .is-android .site-search-results .filter-type.filter-stops.open,
  .is-android .site-search-results .filter-type.departure-times.open,
  .is-android .site-search-results .filter-type.filter-airports.open,
  .is-android .site-search-results .filter-type.filter-airlines.open {
      display: block!important;
  }

  .airfare-alert-container,
  .site-search-results .filter-type.filter-stops,
  .site-search-results .filter-type.departure-times,
  .site-search-results .filter-type.filter-airports,
  .site-search-results .filter-type.filter-airlines {
      left: 50%;
      margin-left: -140px;
  }

  .site-search-results .results-search-form {
      top: 10px;
      left: 50%;
      margin-left: -200px;
      width: 400px;
      max-height: none;
      padding: 15px 20px;
  }

  .airfare-alert-container .airfare-container-wrap {
      width: 240px;
      margin: auto;
  }

  .filter-title {
      font-weight: 700;
  }

  .has-vue-filters .filter-title,
  .has-vue-filters .filter-heading {
      display: none;
  }

  .filterlist label {
      padding: 3px 0 3px 24px;
  }

  .filterlist li:hover [class^="only-"],
  .filterlist li [class^="only-"] {
      display: none !important;
  }

  .filterlist li input[type="checkbox"] + label:before {
      top: 4px;
  }

  .filterlist li input[type="checkbox"] + label:after {
      top: 7px;
  }

  .airfare-alert-container .alert-title {
      font-size: 14px;
  }

  .flight.search body.fixed .site-footer {
      bottom: -116px;
  }

  .small.alliance {
      display: none;
  }

  .bottom-alert-wrap {
      bottom: 50px;
      display: none!important;
  }

  .close-mobile-slide {
      display: block;
  }

  .trip-search-details {
      margin-top: 15px;
  }

  /* Mobile filters (Vue mode) */
  .vue-filters .filters-title {
      text-align: center;
      display: none;
  }

  .site-search-results .vue-filters .filters-wrap.filter-type {
      padding: 0;
      background-color: #ffffff;
      width: 285px;
      border: none;
      border-top: 1px solid #efefef;

      -webkit-box-shadow: 0 5px 6px rgba(0,0,0,0.15);
      -moz-box-shadow: 0 5px 6px rgba(0,0,0,0.15);
      box-shadow: 0 5px 6px rgba(0,0,0,0.15);
  }

  /* Vue filters - Connection Time alignment fix */
  .vue-filters .filterlist label.layovers-label {
      padding: 0 5px 0 0;
  }

  .has-vue-filters .trip-search-details-mobile {
      display: block;
  }

  .sticky-loader .filters-loading-bar-wrap {
      padding: 0;
  }

  .top-pinned-package-title.departure {
      border-top: 0;
      padding-top: 0;
  }

  .flight.search body {
      padding-bottom: 46px;
  }

}





@media only screen and (max-width: 1250px) {
  .tabInfoAvg {display: block;}
}

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

  .sorting-icon {
      display: none;
  }

  .sorting-text {
      padding-left: 0;
  }
}



@media only screen
and (max-width: 1023px)
and (min-width: 768px) {

  .trip-search-details-mobile-wrapper {
      width: 98%;
      max-width: 850px;
      margin: 15px auto -5px auto;
  }

  .trip-search-details-mobile {
      border: 1px solid #e5e5e5;
  }

  .site-search-results .packages-wrap {
      margin-bottom: 100px;
  }

  .flight.search .site-footer {
      bottom: 46px;
  }

  /* === FareLock Search Results === */

  .farelock-eligible-text {
      text-align: left!important;
  }

}




@media only screen and (min-width: 768px) {

  .expanded-sorting .results-list-information .results-amount {
      font-size: 16px;
      color: #444444;
  }

}




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

  .promo-code-section-container {
      flex-direction: column;
      align-items: center;
  }

  .promo-code-field {
      padding: 0 5px 0 0;
      flex: 0 1 auto;
      -webkit-flex: 0 1 auto;
  }

  .promo-code-container--bottom {
      margin-top: 0;
      flex-direction: row;
      justify-content: center;
      align-items: center;
  }

  .flight.search .site-header a.logo {
      margin-top: 2px;
  }

  .flight.search .flight-class-mobile,
  .flight-duration-mobile {
      display: block;
  }

  .segment-tooltip-cabin-info-trigger {
      display: none;
  }

  .is-basic-economy .flight-class-mobile {
      margin: 5px 0;
  }

  .flightDetails .flight-class {
      display: none!important;
  }

  body.transition-page {
      padding-top: 45px;
  }

  .phone-package .faredetails .carrier .column {
      vertical-align: top;
  }

  .package .has-seatmap .amenity-icon {
      display: none;
  }

  .flight-amenities {
      margin-top: 10px;
  }

  .flight-amenities-mobile,
  .stops-mobile-wrap {
      display: inline-block;
      vertical-align: middle;
  }

  .stops-mobile-wrap + .flight-amenities-mobile {
      margin-left: 5px;
  }

  .trip-search-details {
      margin-top: 10px;
  }

  .has-vue-filters .trip-search-details,
  .has-regular-filters .trip-search-details {
      display: none;
  }

  .results-filtering-list .label {
      width: 90px;
  }

  .sorting.results-filtering-list .label {
      display: none;
  }

  .sorting.results-filtering-list .column:not(.label) {
      display: block;
  }

  .filtering-label-inner .text {
      padding-left: 10px;
  }

  .breadcrumb {
      font-size: 12px;
  }

  .sorting-item-list .sorting-item {
      font-size: 11px;
      height: 32px;
  }

  .results-matrix-tabs .tab-btn-wrap {
      width: 100%;
  }

  .loader-wrap {
      position: static;
      border-bottom: 1px dashed #d7e2f5;
      margin: -5px 0 10px 0;
      text-align: center;
      padding-bottom: 10px;
  }

  .results-tabs-with-sorting .sorting-tabs-col {
      width: 325px;
  }

  .results-sorting-tabs .tab-btn {
      padding: 0 15px;
      font-size: 13px;
  }

  /* === FareLock Search Results === */

  .farelock-eligible-text {
      text-align: left!important;
  }

}




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

  .exp-ac2u-select .fare-name {
      display: block;
  }

  .right-sidebar .input-item.button {
      width: 125px;
  }

}




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

  .top-heading-wrap {
      margin-bottom: 10px
  }

  .package .flight-price-number {
      font-size: 24px;
  }

  .flight-breakdown li {
      padding: 0 8px 0 0px;
  }

  .result-page-title .fa-thumbs-o-up {
      display: none;
  }

  .flightDetails .carrier {
      width: 155px;
      font-size: 12px;
  }

  .carrier .flight-description {
      padding-left: 5px;
  }

  .flightDetails .faredetails > .column {
      padding: 10px 5px;
  }

  .exp-ac2u-select ul li a {
      padding: 5px;
  }

  .pager .pagination-item {
      padding: 10px 15px 8px 15px;
      font-size: 16px;
  }

  .segment-wrap-validate {
      display: block;
      margin: auto;
      width: auto;
      max-width: 400px;
  }

  .nearby-and-flex-title,
  .nearby-title,
  .flex-title,
  .seats-left {
      font-size: 11px;
  }

  .carrier-inline-element.flight-info-trigger-wrap {
      display: none;
  }

  .carrier .flight-icon {
      width: 40px;
  }

  .package-flight-number {
      font-size: 12px;
  }

}




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

  .results-2-col > .display-table > .column {
      padding: 0;
  }

  .header-v1 .result-page-title,
  .result-page-title {
      font-size: 16px;
  }

  .trip-search-details {
      font-size: 14px;
      text-align: center;
  }

  .flight-price > .column {
      padding: 8px;
  }

  .package .flight-price-number {
      font-size: 28px;
  }

  .package-disclaimer {
      display: block;
      font-size: 11px;
  }

  .pay-monthly {
      display: block;
      font-size: 12px;
      line-height: 14px;
  }

  .flight-price-number .text,
  .flight-price-number .partial-price {
      display: none;
  }

  .flightDetails .carrier {
      width: 185px;
  }

  .carrier .flight-description .flight-aircraft {
      display: none;
  }

  .flight-breakdown li {
      font-size: 14px;
  }

  .flight-breakdown .flight-time {
      width: 62px;
  }

  .flightDetails .segment-duration {
      font-size: 12px;
  }

  .flightDetails .segment-bottom-information {
      padding: 5px 8px;
  }

  .flightDetails .city-pair-pinned-flight .pinned-flight-button {
      font-size: 11px;
      display: block;
      width: 100%;
  }

  .flight-breakdown li {
      padding: 0 5px 0 0;
  }

  .flightDetails .faredetails > .column {
      padding: 10px 5px 5px 5px;
  }

  .flightDetails .layover-alert {
      font-size: 12px;
  }

  .flight.search .baggage-disclaimer {
      text-align: center;
  }

  .best-price-disclaimer .disclaimer-toggle {
      margin-top: 1px;
  }

  .best-price-disclaimer .fa {
      font-size: 12px;
  }

  .best-price-disclaimer {
      height: 15px;
  }

  .result-page-title {
      padding: 10px 15px;
  }

  .container-package-loading .progress-bar-text {
      font-size: 14px;
  }

  .phone-package .carrier .flight-icon {
      width: 35px;
  }

  .phone-package.flightDetails .carrier {
      width: 130px;
  }

  .phone-package .flight-breakdown .flight-time {
      width: 80px;
  }

  .results-tabs-with-sorting .column {
      display: block;
  }

  .results-tabs-with-sorting .selected-item,
  .results-tabs-with-sorting .sorting-tabs-col {
      width: auto;
  }

  .results-tabs-with-sorting .dropdown-col {
      text-align: left;
      padding-top: 15px;
      border-top: 1px solid #dcdcdc;
      font-size: 0;
  }

  .results-tabs-with-sorting {
      padding-bottom: 15px;
      border-style: dashed;
  }

  .results-tabs-with-sorting .dropdown-col .sort-by-text {
      width: 25%;
      text-align: center;
  }

  .results-list-sort-dropdown {
      width: 75%;
  }

  .results-list-sort-dropdown .dropdown-list {
      right: auto;
      left: 10px;
      width: 93%;
  }

  .flight-price .flight-select-wrap {
      width: 160px;
  }

  .package-select.pinned-select,
  a.package-select:not(.pinned-select) {
      font-size: 16px;
  }

  a.package-select:not(.pinned-select) {
      padding: 12px 25px 12px 15px;
  }

  /* === sold-out packages === */

  .sold-out .flight-select-wrap {
      width: 140px;
  }

  .sold-out .flight-select-wrap p {
      font-size: 13px;
  }

  .fare-family-item .fare-family-btn {
      font-size: 13px;
  }

  .fare-family-item .fare-name {
      font-size: 11px;
  }

  /* === FareLock Search Results === */

  .farelock-search-results-wrap {
      display: block;
  }

  .farelock-eligible-text {
      padding-top: 5px;
      padding-right: 50px;
  }

}




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

  .flightDetails .carrier {
      width: 155px;
  }

  .has-extended-matrix #flexibles-dates-container {
      overflow-x: auto;
      overflow-y: visible;
  }

  .has-extended-matrix .flexible-date-table {
      width: 550px;
      max-width: none;
  }

  .flexible-matrix-legend {
      font-size: 11px;
  }

}




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

  .package-disclaimer {
      font-size: 10px;
  }

  .flight-airport .show-on-mobile {
      display: block;
  }

  .flight-breakdown .flight-airport .hide-on-mobile {
      display: none;
  }

  .flight-breakdown .flight-airport {
      font-weight: 600;
  }

  .flexible-date-table,
  .has-regular-filters.search-information-options,
  .package {
      margin-left: auto;
      margin-right: auto;
      max-width: 400px;
  }

  .package {
      margin-bottom: 25px;
  }

  .exp-ac2u-select .fare-name {
      display: inline;
  }

  .view-more-fares {
      display: block;
  }

  .package .exp-ac2u-select {
      display: none;
  }

  .exp-ac2u-select ul,
  .exp-ac2u-select ul li {
      display: block;
  }

  .exp-ac2u-select ul li a {
      padding: 7px 10px;
      border-top: 1px dashed #e5e5e5;
      text-align: left;
  }

  .flightDetails .segment-duration {
      font-size: 11px;
      line-height: 1.2;
  }

  .flightDetails .city-pair-pinned-flight {
      width: 75px;
  }

  .flexible-date-table tr:first-child th,
  .flexible-date-table td:first-child {
      font-size: 10px;
      padding: 10px;
  }

  .flexible-date-table th {
      font-size: 12px;
  }

  .flexible-date-table td {
      font-size: 11px;
  }

  .has-extended-matrix .flexible-date-table td {
      padding: 10px;
  }

  .flight-price-number .before-discount-total-price {
      font-size: 18px;
  }

  #flexibles-dates-container {
      overflow-x: auto;
      overflow-y: visible;
  }

  .flight-price-number .before-discount-total-price .partner-member-text {
      font-size: 10px;
      margin: 0;
  }

  .package .column-discount .flight-price-number {
      font-size: 22px;
  }

  .flight-price-number .jf-icon.jf-price-tag {
      font-size: 14px;
  }

  .flight-price-number .after-discount-total-price {
      margin-left: 0;
  }

  .flight-price .cashback {
      padding-right: 0;
      font-size: 11px;
  }

  .flight-price .cashback .amount {
      font-size: 14px;
  }

  .flight-price .jf-icon.jf-cashback {
      display: none;
  }

  .flex-savings {
      font-size: 12px;
  }

  .top-pinned-package-title {
      font-size: 14px;
  }

  .top-pinned-package-title .icon-wrap {
      display: none;
  }

  .top-pinned-package-title .text {
      padding-left: 0;
  }

  .results-sorting-tabs .tab-btn,
  .results-matrix-tabs .tab-btn,
  .search-information-options .tab-btn {
      font-size: 12px;
      padding: 7px 12px;
  }

  .results-sorting-tabs .tab-btn .price,
  .results-matrix-tabs .tab-btn .price,
  .search-information-options .tab-btn .price {
      font-size: 12px;
  }

  .results-sorting-tabs .tab-btn.active,
  .results-matrix-tabs .tab-btn.active,
  .search-information-options .tab-btn.active {
      padding-bottom: 6px;
  }

  .package-set-price-alert {
      padding: 10px 15px;
      font-size: 11px;
  }

  .super-saver-risk-free {
      font-size: 11px;
  }

}




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

  .flight-breakdown .flight-date {
      width: 100px;
  }

  .pager li {
      display: none;
  }

  .pager li:first-child,
  .pager li:last-child {
      display: inline-block;
  }

  .pager .pagination-item {
      padding: 12px 20px 10px 20px;
      font-size: 20px;
  }

  .right-sidebar .inner-container .text,
  .right-sidebar .inner-container .form {
      width: 100%;
      padding: 0 0 5px 0;

  }

  .right-sidebar .inner-container .text {
      font-size: 16px;
      text-align: center;
  }

  .right-sidebar .fares-terms {
      text-align: center;
  }

  .flight-price-number .jf-icon.jf-price-tag {
      font-size: 12px;
      margin-left: -11px;
      margin-top: 11px;
  }

  .nearby-airport-alert {
      font-size: 11px;
  }

  .nearby-airport-alert .fa {
      margin-right: 5px;
      font-size: 11px;
  }

  .fare-family-item {
      display: inline-block;
      padding: 3px;
      width: 50%;
  }

}




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

  .site-search-results .results-search-form {
      left: 15px;
      margin-left: 0;
      width: auto;
      padding: 15px 20px;
      right: 15px;
      max-height: none;
  }

  .flight.search .ui-menu {
      max-width: 300px;
  }

  .flight.search .ui-menu .ui-menu-item {
      white-space: pre;
      overflow: hidden;
      text-overflow: ellipsis;
  }

  .trip-search-details,
  .flight.search .top-heading-wrap {
      display: none;
  }

  .trip-search-details-mobile {
      display: block;
  }

  .fare-alert-toggle-mobile {
      width: 135px;
  }

  .flight-breakdown li {
      font-size: 13px;
  }

  .container-package-loading .progress-bar-text {
      font-size: 12px;
      margin: 15px auto 5px auto;
  }

  .fare-alerts-icon.color {
      width: 20px;
  }

  .fare-alerts-icon.color {
      height: 22px;
      background-position: 0 -50px;
      background-size: 30px 87px;
  }

  .fare-alerts-form-wrap .fare-alerts-input-container,
  .fare-alerts-form-wrap .subscribe-button {
      display: block;
      width: 100%;
  }

  .sorting.results-filtering-list .column:not(.label) {
      overflow-y: visible;
      overflow-x: auto;
  }

}




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

   .flight-breakdown ul + ul {
       margin-top: 3px;
  }

  .phone-segment-section + ul {
      margin-bottom: 3px;
  }

  .header-v1 .result-page-title,
  .result-page-title {
      font-size: 14px;
  }

   .flightDetails .carrier {
      width: 115px;
  }

  .package-flight-number {
      font-size: 12px;
  }

  .flight-class-mobile,
  .flight-duration-mobile {
      font-size: 10px;
  }

  .flight-breakdown .flight-time {
      width: 60px;
  }

  .package .flight-price-number {
      font-size: 24px;
  }

  .flightDetails .faredetails > .column {
      font-size: 10px;
      line-height: 1.1;
  }

  .carrier .flight-description {
      line-height: 1.1;
  }

  .carrier .flight-icon {
      width: 30px;
  }

  .flexible-date-table,
  .has-regular-filters.search-information-options,
  .package {
      max-width: 340px;
  }

  .phone-package.flightDetails .carrier {
      width: 120px;
  }

  .phone-package .flight-breakdown .flight-date {
      width: 80px;
  }

  .flight-price-number .price-fraction {
      top: -8px;
      font-size: 0.6em;
      margin-left: 1px;
  }

  .flight-price-number .before-discount-total-price .partner-member-text {
      margin: 0 0 -2px 0;
  }

  .flight-price-number .before-discount-total-price {
      font-size: 12px;
  }

  .package .column-discount .flight-price-number {
      font-size: 22px;
  }

  .flight-price .cashback .amount {
      font-size: 1em;
  }

  .flight-price-number .jf-icon.jf-price-tag {
      display: none;
  }

  .flight-price .cashback {
      border-bottom: 0;
      padding: 4px 0 0 0;
      margin: 1px 0 0 0;
      line-height: 1;
  }

  .flight-price-number .before-discount-total-price {
      display: none;
  }

}




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

  .faredetails .carrier .column {
      display: block;
  }

  .phone-package.flightDetails .carrier,
  .flightDetails .carrier {
      width: 65px;
  }

  .carrier .flight-description {
      padding-left: 0;
  }

  .flexible-date-table,
  .has-regular-filters.search-information-options,
  .package {
      max-width: 290px;
  }

  /* === FareLock Search Results === */

  .farelock-eligible-button {
      display: block!important;
  }

  .farelock-eligible-text {
      padding-bottom: 8px;
  }

}


/* === Price Check Warning === */
.price-check-warning-container {
  position: sticky;
  top: 0;
  z-index: 20;
}
.price-check-warning-flex-wrap {
  display:flex;
  align-items: center;
  background: #f2e3d1;
  line-height: 1.2;
  color: #9e7446;
  border: 1px solid #e9cda9;
  padding: 8px 12px;
  margin-bottom: 10px;
}

.price-check-warning-flex-wrap .icon {
  flex: 0 0 45px;
  padding-right: 12px;
  text-align: center;
}

.price-check-warning-flex-wrap .text {
  flex: 1 1 auto;
}

.price-check-warning-flex-wrap .text a {
  color: #9e7446;
  text-decoration: underline;
}

.price-check-warning-flex-wrap .text a:hover {
  color: #555;
}

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

  .price-check-warning-flex-wrap .icon {
      flex: 0 0 25px;
  }

  .price-check-warning-flex-wrap .text {
      font-size: 12px;
  }

}


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

  .flight-price-disclaimer .flight-info-tooltip .flight-info-inner {
      width: 180px;
      padding: 4px 8px;
  }

}
.results-intro-savings-banner {
  border-top: 1px dashed #e5e5e5;
  border-bottom: 1px dashed #e5e5e5;
  font-family: 'Lato', sans-serif;
  font-weight: 600;
  padding: 5px 0;
  color: #666;
  margin-bottom: 15px;
}

.results-intro-savings-banner .column {
  vertical-align: middle;
}

.results-intro-savings-banner .icon {
  width: 22px;
}

.results-intro-savings-banner .icon-wrap {
  font-size: 20px;
}

.results-intro-savings-banner .icon-wrap,
.results-intro-savings-banner strong {
  color: #0C6AA0;
}

.results-intro-savings-banner .content {
  padding-left: 5px;
}

.results-intro-savings-banner .subtitle,
.results-intro-savings-banner .title {
  display: inline-block;
  padding: 0 4px;
}

.results-intro-savings-banner .title {
  text-transform: uppercase;
  font-size: 15px;
}

.results-intro-savings-banner .subtitle .has-tooltip {
  font-size: 10px;
  vertical-align: top;
}

.results-intro-savings-banner strong {
  text-transform: uppercase;
}



/* top banner for covid19 */

.covid-inpage-banner {
  margin-bottom: 15px;
  padding: 10px 15px;
  background-color: #52862C;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 2px;
}

.covid-inpage-banner .rfr-icon {
  flex: 0 0 28px;
}

.covid-inpage-banner .rfr-icon .fa {
  color: white;
  font-size: 18px;
}

.covid-inpage-banner .rfr-text {
  flex: 1 1 auto;
}

.covid-inpage-banner .rfr-text .title-offer {
  font-size: 15px;
  line-height: 16px;
  color: #FFF;
}

.covid-inpage-banner .rfr-text .title-offer a {
  color: #f9efb1;
  font-weight: 600;
}

.covid-inpage-banner .rfr-text .title-offer span {
  color: #f9efb1;
}

@media only screen and (max-width: 480px) {
  .covid-inpage-banner .rfr-text .title-offer {
      font-size: 13px;
      line-height: 16px;
  }
  .covid-inpage-banner .rfr-icon {
      display: none;
  }
}

/* end top banner for covid19 */

.alternate-results-layout .results-filter-btn-wrap {
  margin-top: 15px;
  margin-bottom: 20px;
}

.alternate-results-layout .results-filtering-list {
  margin-bottom: -1px;
}

.alternate-results-layout .airline-matrix {
  position: relative;
  margin-top: 0;
}

.alternate-results-layout .controls {
  padding: 0;
  position: absolute;
  right: 0;
  top: -37px;
  z-index: 4;
}

.alternate-results-layout .controls .controls-wrap {
  width: auto;
}

.alternate-results-layout .matrix-nav .matrix-btn {
  display: block;
  width: 30px;
  height: 30px;
  border: 1px solid #455D88;
  background: #fff;
  color: #455D88;
  font-size: 10px;
  text-align: center;
  line-height: 29px;
  border-radius: 0;
  cursor: pointer;
}

.alternate-results-layout .matrix-nav .matrix-btn:not(.disabled):hover {
  border-color: #455D88;
  background: #455D88;
  color: #fff;
}

.results-tab {
  display: none;
}

.v2.flexible-date-table {
  margin: 0;
}

.v2.flexible-date-table,
.flexible-date-table .date-cell.empty {
  background: #eaeaea;
}

.v2.flexible-date-table th,
.v2.flexible-date-table td {
  height: 53px;
  text-align: left;
  border-color: #eaeaea;
  padding: 0 12px;
  font-weight: normal;
  height: 53px;
}

.v2.flexible-date-table td:not(.date-cell) {
  background: #ffffff;
}

.v2.flexible-date-table .date-cell {
  font-size: 13px;
  color: #444;
}

.v2.flexible-date-table .date-cell.airport {
  font-weight: 600;
}

.date-cell.airport > .display-table {
  width: auto;
  line-height: 1.2;
}

.v2.flexible-date-table .date-cell.airport {
  vertical-align: middle;
}

.v2.flexible-date-table .date-cell:not(.airport) span {
  display: block;
}

.date-cell:not(.airport) span + span {
  margin-top: 1px;
  font-weight: 600;
}

.date-cell.airport span {
  vertical-align: middle;
}

.date-cell.airport .airport-name {
  font-size: 11px;
}

.v2.flexible-date-table .date-cell.airport .airport-distance {
  font-weight: normal;
  font-size: 11px;
  margin-top: 1px;
  color: #777;
}

.v2.flexible-date-table td {
  font-size: 14px;
  color: #444;
  font-weight: normal;
}

.v2.flexible-date-table td sup {
  vertical-align: top;
  font-size: 0.75em;
}

.v2.flexible-date-table td.usable {
  cursor: pointer;
}

.v2.flexible-date-table td.searched,
.v2.flexible-date-table td.active,
.v2.flexible-date-table td.minimum {
  font-weight: 700;
}

.v2.flexible-date-table td.minimum {
  background: #f9fff5;
}

.v2.flexible-date-table td.minimum,
.v2.flexible-date-table td.active.minimum {
  color: #429800;
}

.v2.flexible-date-table td.searched {
  color: #333;
}

.v2.flexible-date-table td.active {
  color: #3e6ec7;
}

.v2.flexible-date-table td.highlight,
.v2.flexible-date-table td.active,
.v2.flexible-date-table td.usable:hover {
  background: #fffbed;
}

.flex-matrix-legend {
  margin-top: 10px;
}

.flex-matrix-legend li {
  position: relative;
  padding-left: 20px;
  font-size: 12px;
  color: #3e5275;
  display: inline-block;
  line-height: 1.1;
  vertical-align: top;
}

.flex-matrix-legend .bullet {
  position: absolute;
  left: 0;
  top: 0px;
  width: 15px;
  height: 15px;
  border: 1px solid #abb7cc;
  border-radius: 50%;
  background: #ffffff;
}

.flex-matrix-legend li + li {
  margin-left: 20px;
}

.flex-matrix-legend .bullet:after {
  content: '';
  position: absolute;
  left: 3px;
  top: 3px;
  width: 7px;
  height: 7px;
  font-size: 18px;
  color: inherit;
  border-radius: 50%;
}

.flex-matrix-legend .bullet.cheapest:after {
  background: #429800;
}

.flex-matrix-legend .bullet.expensive:after {
  background: #cc5b47;
}

.flex-matrix-legend .bullet.original:after {
  background: #333;
}

.flex-matrix-legend .bullet.current:after {
  background: #3e6ec7;
}

.bars-loader {
  font-size: 0;
  display: inline-block;
}

.bars-loader .loading-bar {
  display: inline-block;
  width: 2px;
  height: 6px;
  animation: loading 0.8s infinite;
  background: #455D88;
  margin: 0 1px;
}

.bars-loader .loading-bar:nth-child(1) {
  animation-delay: 0s;
}

.bars-loader .loading-bar:nth-child(2) {
  animation-delay: 0.2s;
}

.bars-loader .loading-bar:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes loading {
  0% {
      transform: scaleY(1);
  }
  20% {
      transform: scaleY(2);
  }
  40% {
      transform: scaleY(1);
  }
}

@-webkit-keyframes loading {
  0% {
      transform: scaleY(1);
  }
  20% {
      transform: scaleY(2);
  }
  40% {
      transform: scaleY(1);
  }
}

.inner-tab-content {
  position: relative;
}

.inner-tab-content.has-labels {
  padding-right: 25px;
}

.departure-label,
.returning-label {
  font-family: Lato, sans-serif;
  text-transform: uppercase;
  font-weight: 900;
  font-size: 11px;
  color: #32415d;
  line-height: 15px;
}

.departure-label {
  margin-bottom: 10px;
}

.returning-label {
  position: absolute;
  right: -17px;
  top: 40px;
  transform: rotate(90deg);
}

.flex-matrix .returning-label {
  top: 85px;
}

.loader-wrap {
  position: absolute;
  top: -40px;
  right: -16px;
  font-size: 12px;
  color: #455D88;
  font-weight: 600;
}

.flex-matrix-trip-information {
  padding: 8px 10px;
  margin: 0 0 15px 0;
  line-height: 1;
  background: #fff;
  border: 1px solid #d7e2f5;
}

.flex-matrix-trip-information .column {
  vertical-align: middle;
  padding-right: 10px;
}

.flex-matrix-trip-information label {
  font-size: 12px;
  color: #6a81a9;
}

.flex-matrix-trip-information .content {
  font-size: 13px;
  font-weight: 600;
  color: #333;
  display: inline-block;
}

.flex-matrix-trip-information .item-wrap {
  position: relative;
  padding-left: 18px;
}

.flex-matrix-trip-information sup {
  font-size: 9px;
  vertical-align: top;
  margin-left: 1px;
}

.flex-matrix-trip-information i {
  position: absolute;
  left: 0;
  top: 1px;
  font-size: 14px;
  color: #9bacca;
}

.flex-matrix-trip-information i.jf-custom-arrow-right,
.flex-matrix-trip-information i.jf-custom-arrow-left {
  font-size: 11px;
  top: 1px;
}

.flex-matrix-trip-information i.jf-custom-arrow-right {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.flex-matrix-trip-information i.jf-custom-arrow-left {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.flex-matrix-trip-information .total-price {
  width: 120px;
  padding: 0;
}



.risk-free-search-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #455d88;
  padding: 10px 15px;
  border: 2px #d7e2f5 solid;
  margin-bottom: 15px;
}

.risk-free-search-banner .rfr-icon {
  flex: 0 0 36px;
  margin-right: 15px;
}

.risk-free-search-banner .rfr-text {
  flex: 1 1 auto;
}

.risk-free-search-banner .rfr-text .title-offer {
  font-size: 15px;
  line-height: 18px;
  font-weight: 700;
  color: #FFF;
}

.risk-free-search-banner .rfr-text .title-offer span {
  color: #f9efb1;
}

.risk-free-search-banner .rfr-text .excluded {
  font-size: 13px;
  line-height: 17px;
  color: #d7e2f5;
}

.risk-free-search-banner .tooltipstered .fa {
  color: #FFF;
  margin-left: 15px;
}

.risk-free-search-banner #rfr-tooltip-content {
  display: none;
}

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

  .risk-free-search-banner .rfr-text .title-offer {
      font-size: 13px;
      line-height: 16px;
  }

  .risk-free-search-banner .rfr-text .excluded {
      font-size: 12px;
      line-height: 16px;
  }

  .risk-free-search-banner .rfr-icon {
      display: none;
  }

}



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

  .alternate-results-layout .general-container.results-page {
      max-width: 1100px;
  }

}




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

  .flex-matrix-trip-information {
      padding: 5px;
  }

  .flex-matrix-trip-information .content {
      display: block;
      margin-top: 2px;
      font-size: 12px;
  }

  .flex-matrix-trip-information .total-price {
      width: 75px;
      padding: 0;
  }

}




@media only screen and (min-width:1024px) {

  .alternate-results-layout .results-sidebar .airfare-alert-container {
      display: block;
      margin: 15px 0 0 0;
      border: 1px solid #dcdcdc;
  }

  .alternate-results-layout .site-search-results .filter-type {
      margin-bottom: 20px;
  }

  .alternate-results-layout .results-layout .results-list {
      padding-left: 15px;
  }

  .alternate-results-layout .results-layout .results-sidebar {
      width: 260px;
  }

  .alternate-results-layout .trip-search-details {
      font-size: 14px;
  }

}




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

  .alternate-results-layout .fare-alert-graph {
      display: none;
  }

  .alternate-results-layout .airfare-alert-container .alert-title {
      text-transform: none;
  }

  .alternate-results-layout .airfare-alert-container .alert-title br {
      display: none;
  }

  .alternate-results-layout .general-container.results-page {
      max-width: 850px;
  }

  .flex-matrix-trip-information .length {
      width: 115px;
  }

}




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

  .flex-matrix-trip-information {
      padding: 5px;
  }

  .flex-matrix-trip-information .content {
      display: block;
      margin-top: 2px;
      font-size: 12px;
  }

  .flex-matrix-trip-information .total-price {
      width: 55px;
      padding: 0;
  }

  .flex-matrix-trip-information i {
      display: none;
  }

  .flex-matrix-trip-information .item-wrap {
      padding-left: 5px;
  }

  .flex-matrix-trip-information .length {
      width: 75px;
  }

}




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

  .flex-matrix-trip-information {
      display: none;
  }

  .flex-matrix .returning-label {
      top: 40px;
  }

}


/*Price alert styles on results page*/

.results-page-alert-wrapper {
  display: flex;
  background-color: #455D88;
  justify-content: center;
  align-items: center;
  margin: 25px 0;
  border-radius: 4px;
  padding: 10px;
}

.fhub .results-page-alert-wrapper {
  background-color: #2cb8e2;
}

.results-page-alert-copy {
  color: white;
  margin: 0;
  padding-right: 30px;
  font-size: 15px;
  font-weight: bold;
}

.results-page-alert-input-wrapper {
  display: flex;
  flex-direction: row;
}

.results-page-input {
  width: 325px;
  height: 36px;
  border-radius: 4px;
  border: none;
  padding: 5px 15px;
}

.results-page-alert-button-wrapper {
  margin-left: 15px;
}

.results-page-alert-button {
  color: white;
  font-weight: bold;
  background-color: #F08E31;
  height: 36px;
  border-radius: 4px;
  width: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.fhub .results-page-alert-button {
  background-color: #f8ca33;
  color: #3a3a3a;
}

.results-page-alert-button:hover {
  color: white;
  background-color: #F19945;
}

.fhub .results-page-alert-button:hover {
  background-color: #f8ca33;
  color: #3a3a3a;
}

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

  .results-page-alert-wrapper {
      flex-direction: column;
  }

  .results-page-input {
      width: 300px;
  }

  .results-page-alert-button {
      width: 125px;
  }

}
.package-tooltip-element,
.package-flight-number-detail,
.flight-info-tooltip,
.stops-tooltip,
.flight-amenities-tooltip-content {
  display: none;
  position: absolute;
  z-index: 3;
  padding: 14px;
  border: 1px solid #455D88;
  background: #fff;
  color: #444;
  line-height: 1.2;
  font-weight: normal;
  box-shadow: 0 3px 8px rgba(0,0,0,.1);
  border-radius: 2px;
}

.flight-info-tooltip-trigger {
  cursor: pointer;
}

.flight-info-tooltip {
  padding: 0;
}

.flight-info-tooltip,
.package-flight-number-detail {
  z-index: 6;
  bottom: 100%;
  cursor: default;
}

.flight-info-tooltip {
  left: -15px;
}

.package-flight-number-detail {
  left: 0;
}

.package-flight-number-detail {
  font-size: 13px;
  width: 145px;
  font-weight: 600;
}

.flight-info-tooltip .flight-info-inner {
  width: 320px;
}

.basic-economy-cabin-details-content {
  width: 500px;
}

.stops-tooltip,
.flight-amenities-tooltip-content {
  position: absolute;
  z-index: 99999;
  max-width: 235px;
  padding: 12px;
  font-size: 13px;
  font-weight: 600;
}

.flight-amenities-tooltip-content .column {
  vertical-align: middle;
}

.flight-amenities-tooltip-content li + li {
  margin-top: 10px;
}

.stops-tooltip .title,
.flight-amenities-tooltip-content .title {
  color: #567199;
  line-height: 1;
  font-weight: 700;
  border-bottom: 1px dashed #e5e5e5;
  padding: 0 0 10px 0;
  margin-bottom: 10px;
}

.flight-amenities-tooltip-content .flight-amenity {
  color: #567199;
}

.flight-amenities-tooltip-content .disabled,
.flight-amenities-tooltip-content .disabled .flight-amenity {
  color: #bbbbbb;
}

.flight-amenities-tooltip-content .icon {
  width: 20px;
  text-align: center;
}

.flight-amenities-tooltip-content .flight-amenity {
  font-size: 13px;
  margin: 0;
}

.flight-amenities-tooltip-content .text {
  line-height: 1.1;
  font-size: 12px;
  padding-left: 8px;
}

.package-tooltip-element:before,
.package-tooltip-element:after,
.flight-info-tooltip:before,
.flight-info-tooltip:after,
.package-flight-number-detail:before,
.package-flight-number-detail:after,
.stops-tooltip:before,
.stops-tooltip:after,
.flight-amenities-tooltip-content:before,
.flight-amenities-tooltip-content:after {
  top: 100%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.package-tooltip-element:before,
.flight-info-tooltip:before,
.package-flight-number-detail:before,
.stops-tooltip:before,
.flight-amenities-tooltip-content:before {
  border-color: transparent;
  border-top-color: #455D88;
  border-width: 8px;
}

.package-tooltip-element:after,
.flight-info-tooltip:after,
.package-flight-number-detail:after,
.stops-tooltip:after,
.flight-amenities-tooltip-content:after {
  border-color: rgba(255, 255, 255, 0);
  border-top-color: #ffffff;
  border-width: 6px;
}

.flight-info-tooltip:before,
.package-flight-number-detail:before {
  left: 14px;
}

.flight-info-tooltip:after,
.package-flight-number-detail:after {
  left: 16px;
}

.package-tooltip-element:before,
.stops-tooltip:before,
.flight-amenities-tooltip-content:before {
  right: 13px;
}

.package-tooltip-element:after,
.stops-tooltip:after,
.flight-amenities-tooltip-content:after {
  right: 15px;
}

.standard-economy-upgrade-upsell-tooltip li,
.basic-economy-cabin-details-content li,
.stops-tooltip-content li {
  position: relative;
}

.standard-economy-upgrade-upsell-tooltip li + li,
.basic-economy-cabin-details-content li + li,
.flight-info-tooltip li + li,
.stops-tooltip-content li + li {
  margin-top: 5px;
}

.stops-tooltip-content li sup {
  font-size: 0.85em;
  vertical-align: top;
}

.carry-on-fee-tooltip {
  font-size: 12px;
  font-weight: 600;
  margin-right: -15px;
}

.flight-info-tooltip .additional-info,
.package-info-section-list-wrap {
  font-size: 0;
  margin: 0 -8px;
}

.flight-info-tooltip .additional-info .item,
.package-info-section-column {
  display: inline-block;
  vertical-align: top;
  width: 50%;
  padding: 0 8px;
  font-size: 13px;
}

.flight-info-tooltip .city {
  font-weight: 700;
  color: #888;
}

.js-package-tooltip-flight-info .package-flight-info-section {
  border-bottom: 1px dashed #e5e5e5;
}

.js-package-tooltip-equipment-info .package-flight-info-section {
  margin-top: -1px;
  border-top: 1px dashed #e5e5e5;
}

.flight-info-error,
.js-package-tooltip-equipment-info .package-flight-info-section,
.js-package-tooltip-flight-info .package-flight-info-section,
.flight-info-loader-wrap,
.super-saver-package-info {
  padding: 14px;
}

.flight-info-inner .super-saver-package-info {
  line-height: 18px;
  text-align: left;
}

.flight-info-inner .super-saver-package-info ul {
  padding-left: 10px;
}

.flight-info-inner .super-saver-package-info ul li:before {
  content: '•';
  position: relative;
  margin-left: -10px;
  margin-right: 6px;
}

.flight-info-tooltip .additional-info {
  margin-top: 15px;
}

.flight-info-tooltip .additional-info .flight-info-legend {
  font-size: 11px;
  text-align: right;
  color: #888;
}

.package-info-section-title {
  margin-bottom: 7px;
  text-transform: uppercase;
}

.flight-info-loader-wrap {
  color: #455D88;
  font-weight: 600;
}

.flight-info-error {
  color: #cc2a2a;
  font-size: 12px;
  font-weight: 600;
}

.flight-info-loader-wrap span {
  margin-left: 10px;
}

.basic-economy-details-tooltip {
  z-index: 6;
  margin: 0 -15px 0px 0;
  padding: 0;
}

.standard-economy-upgrade-upsell-tooltip,
.basic-economy-cabin-details-content {
  line-height: 1.3;
  color: #444;
  font-size: 13px;
}

.standard-economy-upgrade-upsell-tooltip li,
.basic-economy-cabin-details-content li {
  padding-left: 10px;
}

.standard-economy-upgrade-upsell-tooltip li:before,
.basic-economy-cabin-details-content li:before {
  content: '\2022';
  position: absolute;
  top: 6px;
  left: 0;
  height: 4px;
  font-size: 15px;
  line-height: 2px;
}

.basic-economy-cabin-details-content .title {
  font-weight: 600;
  margin-bottom: 5px;
}

.basic-economy-cabin-details-section .column {
  vertical-align: top;
  padding: 13px;
}

.basic-economy-cabin-details-section .column + .column {
  border-left: 1px solid #e5e5e5;
}

.basic-economy-cabin-details-section .basic {
  background: #f5f5f5;
  color: #777;
}

.basic-economy-cabin-details-content .cabin-options {
  font-weight: 600;
  margin-bottom: 5px;
  color: #455D88;
}

.basic-economy-cabin-details-content .cabin-options.upgrade {
  color: #52862C;
}

.basic-economy-cabin-details-content .subtitle {
  font-size: 12px;
  margin-bottom: 10px;
}

.basic-economy-cabin-details-section .upgrade-section {
  padding: 10px 15px;
  text-align: center;
  border-top: 1px solid #e5e5e5;
}

.is-delta .carry_on {
  display: none;
}




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

  .package-tooltip-element.carry-on-fee-tooltip:after,
  .package-tooltip-element.carry-on-fee-tooltip:before,
  .stops-tooltip:before,
  .stops-tooltip:after,
  .flight-amenities-tooltip-content:before,
  .flight-amenities-tooltip-content:after {
      right: auto;
  }

  .flight-amenities-tooltip-content:after {
      left: 29px;
  }

  .flight-amenities-tooltip-content:before {
      left: 27px;
  }

  .stops-tooltip:after {
      left: 12px;
  }

  .stops-tooltip:before {
      left: 10px;
  }

  .carry-on-fee-tooltip {
      margin: auto auto auto -15px;
  }

  .package-tooltip-element.carry-on-fee-tooltip:before {
      left: 13px;
  }

  .package-tooltip-element.carry-on-fee-tooltip:after {
      left: 15px;
  }

}




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

  .flight-info-tooltip .flight-info-inner {
      width: 230px;
  }

  .flight-info-tooltip .additional-info,
  .package-info-section-list-wrap {
      margin-left: -5px;
      margin-right: -5px;
  }

  .flight-info-tooltip .additional-info .item,
  .package-info-section-column {
      padding: 0 5px;
  }

  .js-package-tooltip-equipment-info,
  .flight-info-tooltip .additional-info .item,
  .package-info-section-column,
  .flight-info-loader-wrap span {
      font-size: 12px;
  }

  .js-package-tooltip-equipment-info .package-flight-info-section,
  .js-package-tooltip-flight-info .package-flight-info-section,
  .flight-info-loader-wrap,
  .super-saver-package-info {
      padding: 12px;
  }

}




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


  .flight-amenities-tooltip-content {
      max-width: 195px;
  }

  .flight-amenities-tooltip-content .title {
      font-size: 13px;
  }

}
.results-tab-content-wrap:not(.airline-matrix-container),
.airline-matrix {
  background: #EFF5FF;
  padding: 15px;
  margin: 0 0 5px 0;
  border: 1px solid;
}

.airline-matrix {
  margin-top: 10px;
}

.airline-matrix .column {
  vertical-align: bottom;
}

.airline-matrix .num-stops {
  width: 90px;
}

.num-stops ul {
  padding: 0 2px 1px 0;
}

.matrix-item li,
.num-stops li {
  display: table;
  width: 100%;
}

.num-stops .label {
  font-size: 12px;
  line-height: 1.1;
  width: 100%;
  text-align: center;
  font-weight: 600;
}

.num-stops a.label {
  cursor: pointer;
  color: #455D88;
}

.num-stops a.label.active {
  background: #dbebf1;
}

.num-stops a.label:hover {
  color: #1b2538;
}

.num-stops a.label.disabled {
  color: inherit;
  pointer-events: none;
}

.num-stops .label,
.airline-matrix .matrix-price {
  display: table-cell;
  vertical-align: middle;
  border-top: 1px dashed;
  height: 43px;
}

.num-stops .label,
.airline-matrix .matrix-price,
.airline-matrix .carrier-name {
  padding-left: 10px;
  padding-right: 10px;
}

.num-stops li:first-child .label {
  border: 0;
}

.airline-matrix-list {
  display: table;
  font-size: 0;
}

.airline-matrix-list.vue-style {
  position: relative;
  -webkit-transition: margin-left .3s;
  -moz-transition: margin-left .3s;
  -ms-transition: margin-left .3s;
  -o-transition: margin-left .3s;
  transition: margin-left .3s;
}

.matrix-overflow {
  overflow: hidden;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.is-touch .original-results-layout .matrix-overflow,
.is-mobile-app .original-results-layout .matrix-overflow {
  overflow: auto;
  overflow-y: hidden;
}

.airline-matrix-list .matrix-item {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-left: 3px;
  width: 126px;
  font-size: 14px;
}

.airline-matrix-list .matrix-inner-loading {
  margin-top: -8px;
}

.matrix-item a {
  color: #333;
  cursor: pointer;
}

.matrix-item-inner {
  background: #fff;
  border: 1px solid;
}

.matrix-carrier-wrap {
  display: block;
  padding-top: 7px;
  padding-bottom: 5px;
}

.airline-matrix .carrier-icon {
  margin-bottom: 4px;
  position: relative;
}

.airline-matrix .carrier-icon img {
  display: block;
  margin: auto;
}

.airline-matrix .carrier-name {
  font-size: 12px;
}

.airline-matrix .ellipsis-wrap {
  display: block;
}

.has-multiple-airlines {
  position: absolute;
  top: 2px;
  right: 8px;
  font-size: 13px;
  color: #b1b1b1;
}

.jf-multi-airline {
  display: block;
}

.airline-matrix a.matrix-price {
  line-height: 1.1;
  font-weight: 600;
}

.airline-matrix .matrix-price {
  text-align: right;
}

.airline-matrix span.matrix-price {
  color: #bbb;
}

.airline-matrix .matrix-price i,
.airline-matrix .base {
  color: #888;
  font-weight: normal;
}

.airline-matrix .matrix-price i {
  margin-right: 1px;
  font-size: 12px;
}

.matrix-price sup {
  vertical-align: top;
  font-size: 0.8em;
  position: relative;
  right: 0;
}

.matrix-carrier {
  text-align: center;
}

.airline-matrix .matrix-price .base {
  font-size: 13px;
}

.matrix-item a:hover,
.active .matrix-carrier-wrap,
.airline-matrix .active .matrix-price {
  color: #1392ff;
}

.active .matrix-carrier-wrap:hover,
.airline-matrix .active .matrix-price:hover {
  color: #000;
}

.airline-matrix .active a.matrix-price {
  font-weight: 700;
}

.active .matrix-carrier-wrap {
  font-weight: 600
}

.airline-matrix .active .matrix-price,
.active .matrix-item-inner {
  background: #f5f5f5;
}

.controls .spinner-container {
  display: inline-block;
  vertical-align: middle;
  margin: -1px 0 0 15px;
}

.controls .spinner {
  font-size: 4px;
}

.controls {
  padding-bottom: 8px;
  overflow: hidden;
}

.controls .column {
  vertical-align: middle;
}

.controls h3 {
  display: inline-block;
  vertical-align: middle;
  font-weight: 700;
  font-size: 14px;
  color: #58778a;
  line-height: 1.1;
}

.controls .title {
  padding-right: 15px;
}

.controls .controls-wrap {
  width: 165px;
  text-align: right;
}

.matrix-nav li {
  display: inline-block;
}

.original-results-layout .matrix-nav .matrix-btn {
  display: block;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  background: #455D88;
  color: #FFFFFF;
  cursor: pointer;
  font-size: 9px;
  border-radius: 2px;
}

.original-results-layout .matrix-nav .matrix-btn:not(.disabled):hover {
  background: #455D88;
}

.matrix-nav .matrix-btn.disabled {
  cursor: default;
  opacity: 0.5;
}

.matrix-disclaimer {
  font-size: 11px;
  color: #447D94;
  line-height: 1.2;
  margin: 6px 0 0px 0;
  position: relative;
  text-align: center;
}

.matrix-legend .jf-multi-airline,
.legend .jf-multi-airline {
  display: inline-block;
  margin-right: 2px;
}

.airline-matrix .spinner-container {
  text-align: center;
}

.airline-matrix .spinner-wrap {
  margin: 0 5px 0 0;
  padding: 0;
  border: 0;
}

.airline-matrix .spinner-wrap,
.airline-matrix .spinner-label {
  display: inline-block;
  vertical-align: middle;
}

.airline-matrix .spinner {
  border-width: 3px;
  width: 18px;
  height: 18px;
  border-color: #d3ddef;
  border-left-color: #455d88;
}

.airline-matrix .spinner-label {
  text-align: center;
  font-weight: 600;
  color: #455D88;
}

.matrix-footer {
  font-size: 12px;
  color: #777;
  line-height: 1.2;
  margin-bottom: 10px;
}

.matrix-footer.display-table {
  direction: rtl;
}

.matrix-footer .column {
  direction: ltr;
  vertical-align: top;
}

.matrix-footer .legend {
  width: 125px;
  text-align: right;
  color: #444;
  font-size: 11px;
}

.results-price-disclaimer a {
  color: inherit;
  text-decoration: underline;
}

.results-price-disclaimer a:hover {
  color: #000;
}

.results-tab-content-wrap:not(.airline-matrix-container),
.airline-matrix,
.matrix-item-inner,
.num-stops .label,
.airline-matrix .matrix-price {
  border-color: #d7e2f5;
}




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

  .airline-matrix {
      padding: 10px;
  }

  .controls h3 {
      font-size: 12px;
  }

  .controls .title {
      padding-right: 10px;
  }

  .airline-matrix .carrier-icon img {
      height: 18px;
      width: auto;
  }

  .airline-matrix .carrier-name {
      font-size: 11px;
      margin-bottom: 3px;
  }

  .num-stops .label,
  .airline-matrix .matrix-price {
      height: 38px;
  }

  .airline-matrix .num-stops {
      width: 75px;
  }

  .airline-matrix-list .matrix-item {
      padding-left: 2px;
      width: 110px;
  }

  .airline-matrix-list .matrix-inner-loading {
      margin-top: 54px;
  }

  .matrix-disclaimer {
      text-align: left;
  }

  .has-multiple-airlines {
      top: 0;
      font-size: 12px;
  }

}




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

  .airline-matrix {
      margin-top: 10px;
  }

  .controls {
      padding-bottom: 10px;
  }

  .num-stops ul {
      padding: 0 0 1px 0;
  }

  .is-touch .original-results-layout .airline-matrix .controls {
      display: none;
  }

  .num-stops .label,
  .airline-matrix .matrix-price {
      height: 32px;
      font-size: 10px;
      line-height: 1;
  }

  .matrix-price .total span {
      font-size: 12px;
  }

  .airline-matrix .matrix-price {
      text-align: center;
  }

  .matrix-price .base {
      display: none;
  }

  .matrix-disclaimer {
      font-size: 10px;
  }

  .matrix-legend .jf-multi-airline {
      font-size: 12px;
  }

  .airline-matrix .spinner {
      font-size: 4px;
      margin: 0;
  }

  .airline-matrix .spinner-label {
      font-size: 12px;
  }

}




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

  .alternate-results-layout .controls {
      position: relative;
      top: auto;
      right: auto;
  }

  .alternate-results-layout .matrix-nav {
      margin: 0 0 10px 0;
  }

  .flex-table-overflow-wrap {
      overflow-y: visible;
      overflow-x: auto;
  }

  .v2.flexible-date-table .date-cell.airport {
      font-size: 12px;
  }

  .flex-matrix .v2.flexible-date-table {
      min-width: 620px;
  }

  .nearby-matrix .flexible-date-table.v2 {
      min-width: 480px;
  }

  .results-tab-content-wrap:not(.airline-matrix-container) {
      padding: 10px;
  }

  .v2.flexible-date-table th,
  .v2.flexible-date-table td {
      height: 45px;
  }

  .v2.flexible-date-table .date-cell {
      font-size: 11px;
  }

}




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

  .flex-matrix-legend li {
      margin: 0;
      font-size: 11px;
      display: block;
  }

  .flex-matrix-legend li + li {
      margin: 6px 0 0 0;
  }

  .flex-matrix-legend .bullet {
      top: -1px;
  }

}




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

  .original-results-layout .airline-matrix-wrap {
      border: 1px solid #dcdcdc;
      overflow: hidden;
  }

  .loading .airline-matrix-wrap {
      border: 0;
  }

  .original-results-layout .airline-matrix.loading {
      background: #D9F0F9;
      padding: 10px;
      border: 1px solid;
      border-bottom: 3px solid;
      border-color: #B9DFEF;
  }

  .original-results-layout .airline-matrix {
      margin: 0;
      padding: 0;
      border: 0;
      background: none;
  }

  .matrix-price .total i,
  .original-results-layout .airline-matrix .controls {
      display: none;
  }

  .original-results-layout .matrix-item-inner {
      border: 0;
      border-right: 1px solid #dcdcdc;
      background: #fff;
  }

  .original-results-layout .airline-matrix-list .matrix-item {
      padding-left: 0;
  }

  .original-results-layout .airline-matrix .num-stops {
      border-right: 1px solid #dcdcdc;
      background: #f9f9f9;
  }

  .original-results-layout .num-stops .label,
  .original-results-layout .airline-matrix .matrix-price {
      border-color: #dcdcdc;
      line-height: 1;
  }

  .airline-matrix .spinner {
      border-color: #e5e5e5;
      border-left-color: #455d88;
  }

  .matrix-disclaimer {
      font-size: 9px;
      color: #777;
      margin: 3px 0 0 0;
  }

  .results-price-disclaimer {
      padding-top: 5px;
      margin-top: 5px;
      border-top: 1px dashed #e5e5e5;
  }

  .matrix-footer {
      font-size: 11px;
      margin-top: 5px;
  }

  .matrix-footer .column {
      display: block;
  }

  .matrix-footer .legend {
      width: auto;
      text-align: left;
  }

}




@media only screen
and (max-width: 375px)
and (min-width: 355px) {

  .airline-matrix .num-stops {
      width: 95px;
  }

}
.top-dark-section {
  margin: auto;
}

.subpage-nav ul{
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.subpage-nav ul li {
  padding: 0 0 0 20px;
flex: 0 1 auto;
-webkit-flex: 0 1 auto;
}

.subpage-nav ul li a {
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  transition: all 0.2s;
}

.subpage-nav ul li a:hover,
.subpage-nav ul li a.active {
  color: #FBDDC0;
}

h1.subpage {
  padding: 10px 15px 10px 12px;
  color: #30456A;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 10px;
}

.container-subpage{
margin:0 auto;
padding:20px 15px 20px 12px;
background:#fff;
}

.container-subpage-upsells {
margin:0 auto;
padding:20px 15px 20px 12px;
}


/* FAQ */

.faq-content-wrap{
/*margin:0 auto;
padding:20px 15px;
min-width:950px;
max-width:1170px;*/
}

.airlines-title,
.my-account-title,
.faq-title {
  font-size: 20px;
  font-weight: 700;
  color: #444;
}

.airlines-title {
  margin-top: 25px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 18px;
  color: #455D88;
}

.faq-title .popular-question-title {
  float: left;
  margin-top: 10px;
}

.popular-question-phone {
  font-size: 13px;
  width: 100%;
  background: #fff;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #444;
}

.popular-question-phone .text {
  font-weight: 600;
  margin-bottom: 4px;
}

.popular-question-phone .phone-left,
.popular-question-phone .phone-right {
  display: inline-block;
}

.popular-question-phone .phone-left {
  width: 50px;
}

.popular-question-phone .phone-right {
  width: 100px;
  font-weight: 600;
  font-size: 15px;
}


.faq-content {
  margin-bottom: 20px;
  padding: 20px 0;
}

ul.faq-default-list{
margin:0;
}

ul.faq-default-list li a strong{
font-weight:400;
}

ul.faq-default-list li{
padding:11px 0 10px 0;
border-bottom:1px dotted #e1e1e1;
overflow:hidden;
}

.faq ul.faq-default-list > li:last-child{
  border-bottom: none;
  padding-top: 68px;
}

.faq-search-wrap {
  padding: 15px;
  background: #f1f1f1;
  border: 1px solid #dcdcdc;
  text-align: center;
  margin: 20px 12px;
}

.faq-search-wrap form {
  overflow: hidden;
}

.faq-search-wrap input {
  border: 1px solid #dcdcdc;
  width: 75%;
  float: left;
  padding: 0px 5px;
  line-height: 35px;
  height: 35px;
  border-right: 0;
}

a.button-search {
  display: block;
  float: left;
  padding: 0 10px;
  line-height: 34px;
  width: 25%;
  border: 1px solid #DEDEDE;
  background: #455D88;
  height: 35px;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  cursor: pointer;

  -webkit-border-top-right-radius: 3px;
  -webkit-border-bottom-right-radius: 3px;
  -moz-border-radius-topright: 3px;
  -moz-border-radius-bottomright: 3px;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}

a.button-search:hover{
background:#222;
}

.faq-pagination{
padding:10px;
}

.container-subpage ul{
  margin:15px;
  list-style-type:disc;
}
.container-subpage ul li{
  padding:5px 0;
}

.container-subpage-wrap {
  padding-top: 30px;
}

/* Help section */
.help-content-wrap,
.container-subpage-wrap {
  max-width: 1190px;
  margin: 0 auto;
  overflow: hidden;
}

.help-content-wrap.main {
  padding-bottom: 116px;
}

.help-content-wrap .general-container {
  width: 73%;
  float: left;
  padding: 12px;
}

.help-content-wrap .general-container.full {
  width: 100%;
  float: none;
  padding-left: 0;
  padding-right: 0;
}

.help-content-wrap .sidebar-container {
  width: 27%;
  float: left;
  padding: 12px;
}

.sidebar-container .faq-categories {
  padding: 12px 17px;
  margin-bottom: 16px;
  border: 1px solid #DCDCDC;
  color: #555;

}

.faq-categories .title {
  padding-bottom: 5px;
  margin-bottom: 10px;
  border-bottom: 1px solid #DCDCDC;
}

.faq-categories .title,
.faq-title {
  font-weight: 700;
  text-transform: uppercase;
  font-size: 18px;
  color: #455D88;
}

.faq-title {
  margin-top: 13px;
}

.search-results-heading {
  font-size: 12px;
}

.faq-category-wrap {
  padding: 3px 0;
}

.faq-category {
  color: #465d89;
  font-weight: 400;
  display: block;
  padding: 5px 5px 5px 10px;
}

.faq-category.active,
.faq-category.active:hover {
  background: #465d89;
  color: #fff;
}

.fa.back-to-faq {
  font-size: 11px;
  margin-right: 4px;
}





/* about us, terms, etc */

body.site {
  margin: 0 0 50px;
  background-color: #fff;
}

.subpage-heading-wrap {
  background-color: #44587B;
}

.subpage-heading {
  margin: 0 auto;
  padding: 35px 15px;
  max-width: 1200px;
  font-size: 2vw;
  font-weight: bold;
  color: white;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.terms-nav-wrap {
  margin-bottom: 15px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: stretch;
}

.terms-nav-wrap .terms-nav-item {
  padding: 15px;
  flex: 0 0 32.5%;
  background-color: #f9f9f9;
  border: 1px solid #eee;
}

.terms-nav-wrap .terms-nav-item ul {
  margin: 0;
  list-style-type: none;
}

.terms-nav-wrap .terms-nav-item ul li {
  padding: 3px 0;
}

.terms-nav-wrap .terms-nav-item ul li a {
  color: #44587B;
}

.terms-nav-wrap .terms-nav-item ul li a:hover {
  color: #555;
}

.terms-section {
  margin-bottom: 15px;
  padding: 15px;
  background-color: #f9f9f9;
  border: 1px solid #eee;
}

.terms-section p {
  margin-bottom: 10px;
}

.terms-section p:last-child {
  margin-bottom: 0;
}

.terms-section ul, .terms-section ol {
  margin: 15px 20px;
  list-style-type: disc;
}

.terms-section ul ul, .terms-section ol ol {
  margin: 5px 20px 0;
  list-style-type: disc;
}

.terms-section ul.nobullet {
  list-style-type: none;
}

.terms-section ul li, .terms-section ol li {
  padding: 5px 0;
}
#student-portal ol {
  list-style-type: decimal;
}
#student-portal ol li p,
#student-portal ol li::marker {
  font-weight: bold;
}
#student-portal li ul {
  margin: 5px 20px;
}
#student-portal ul li strong {
  font-style: italic;
}

.terms-section-title {
  padding-bottom: 15px;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
}

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

  .terms-nav-wrap {
      padding: 15px;
      flex-direction: column;
      background-color: #f9f9f9;
      border: 1px solid #eee;
  }

  .terms-nav-wrap .terms-nav-item {
      padding: 0;
      flex: 1;
      border: 0;
  }

}




/* fees table */


table.feesmodal {
  margin: 0 auto 25px;
  width: 600px;
  font-size: 11px;
  line-height: 15px;
  background-color: white;
  border-collapse: collapse;
  table-layout: fixed;
}

table.feesmodal td {
  padding: 10px;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #ddd;
}

table.feesmodal td.title {
  background-color: #e9e9e9;
  font-weight: bold;
}

table.feesmodal td.subtitle {
  background-color: #f9f9f9;
  font-weight: bold;
}

table.feesmodal td.txt-left {
  text-align: left;
}

table.feesmodal td ul {
  list-style-type: none;
}

table.feesmodal td ul li {
  padding: 0;
}

.back-to-top {
  display: none;
  position: fixed;
  bottom: 100px;
  right: 50px;
}

.back-to-top a:before {
  display: block;
  font-family: FontAwesome;
  content: '\f077';
  font-size: 26px;
  color: #ffffff;
  background: #455D88;
  height: 36px;
  width: 48px;
  border-radius: 4px;
  text-align: center;
  padding-top: 12px;
  box-shadow: 0px 4px 4px rgb(0 0 0 / 25%);
}




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

  table.feesmodal {
      width: 450px;
  }

  table.feesmodal td {
      padding: 5px;
  }

  .fees-table-wrap {
      margin: 0 auto;
      width: 310px;
      overflow-x: auto;
  }

  .back-to-top a:before {
      font-size: 24px;
  }

}






/* Airlines page */

.container-airlines-content{
  padding-top:15px;
}

.airline-box{
  margin: 0 0 10px 0;
  border: 1px solid #dcdcdc;
}

.airline-box ul {
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
}

.airline-box ul li {
  padding: 15px;
  flex: 1;
}

.airline-box ul li img {
  display: block;
}






.container-newcc{
  margin:0 auto;
  padding:0 15px;
  min-width:950px;
  max-width:1170px;
}

.newcc-title{
  color: #444;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 16px;
}

.container-newcc{
  margin:30px auto;
  padding:0 15px;
  min-width:950px;
  max-width:1170px;
}



/* ===== NEW CC PAGE ===== */
.page-new-credit-card .main-content .column {
  vertical-align: top;
}

.page-new-credit-card .side-bar-cc {
  width: 230px;
}

.page-new-credit-card .form-cc {
  padding-left: 25px;
}

.page-new-credit-card .main-content .general-container {
  max-width: 780px;
}

.page-new-credit-card .side-bar-cc .red {
  display: block;
  margin-top: 15px;
  padding: 7px 13px;
  border: 1px solid #ca8e32;
  background: #dea651;
  line-height: 1.1;
  font-size: 14px;
  color: #fff;
  font-weight: 700;
  text-align: left !important;
}

.page-new-credit-card .content-title-wrap {
  padding-bottom: 8px;
  margin-bottom: 10px;
  border-bottom: 1px dashed #dcdcdc;
}

.page-new-credit-card .content-title-wrap .column {
  vertical-align: middle;
}

.page-new-credit-card .cc-logos {
  text-align: right;
  width: 90px;
}

.page-new-credit-card .checkout-box .fields-box {
  line-height: 1.1;
}

.page-new-credit-card .fields-box.col-1 {
  width: 100%;
}

.page-new-credit-card .fields-box.col-2 {
  width: 50%;
}

.page-new-credit-card .fields-box.col-3 {
  width: 33.333333%;
}

.page-new-credit-card .checkout-box .fields-row {
  margin: 15px -4px;
}

.submit-button-wrap {
  width: 100%;
}

.page-new-credit-card .button-blue-sm {
  background: #0C6AA0;
  color: #fff;
  font-weight: 900;
  padding: 15px 25px;
  line-height: 1;
  border-radius: 2px;
  display: block;
  text-align: center;
  font-size: 16px;
  margin-top: 10px;
  cursor: pointer;
}

.page-new-credit-card .button-blue-sm:hover {
  background: #1881BD;
}

#server_error_box span {
  display: block;
  margin: 20px 0 15px 0;
  padding: 12px 15px;
  border: 1px solid #964637;
  background: #d86957;
  line-height: 1.1;
  font-size: 14px;
  color: #fff;
  font-weight: 700;
  text-align: center;
}

/* FOP Update page redo - JC - Oct 2021 */

.fop-update-container {
  margin: 25px auto;
  width: 95%;
  max-width: 1170px;
  font-size: 15px;
  line-height: 1.4em;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: stretch;
  -webkit-align-items: stretch;
}

.fop-update-sidebar {
  padding-right: 35px;
  flex: 1;
  -webkit-flex: 1;
  border-right: 1px dashed #dcdcdc;
}

.fop-update-form {
  padding-left: 35px;
  flex: 2;
  -webkit-flex: 2;
}

.fop-update-title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: 600;
}

.fop-update-sidebar .fop-update-title {
  padding-top: 10px;
}

.fop-update-warning {
  margin-bottom: 10px;
  padding: 10px;
  background-color: #FAEBEA;
  color: #D03F35;
  font-weight: 600;
  border-radius: 6px;
}

.fop-update-form-title {
  margin-bottom: 25px;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
  font-size: 18px;
  font-weight: 600;
  border-bottom: 1px dashed #dcdcdc;
}

.fop-update-form-title-left {
  padding-bottom: 10px;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.fop-update-form-title-right {
  padding-bottom: 10px;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
  align-items: center;
  -webkit-align-items: center;
}

.fop-update-form-title-right-img {
  margin-left: 10px;
}

.fop-update-form-wrap {

}

.fop-update-form-row {
  margin-bottom: 20px;
  width: 100%;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  align-items: flex-end;
  -webkit-align-items: flex-end;
}

.fop-update-form-item {
  margin-right: 15px;
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.fop-update-form-item:last-child {
  margin-right: 0;
}

.fop-update-form-item label {
  padding-bottom: 3px;
  display: block;
  font-size: 14px;
  font-weight: 600;
}

.fop-update-form-item input {
  padding: 10px;
  width: 100%;
  font-size: inherit;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  transition: all 0.3s;
}

.fop-update-form-item input:focus {
  border: 1px solid #999;
  outline: none;
}

.fop-update-form-item select {
  padding: 11px 30px 11px 10px;
  width: 100%;
  min-width: 100px;
  font-size: inherit;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  background: #fff url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0Ljk1IDEwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9LmNscy0ye2ZpbGw6IzQ0NDt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPmFycm93czwvdGl0bGU+PHJlY3QgY2xhc3M9ImNscy0xIiB3aWR0aD0iNC45NSIgaGVpZ2h0PSIxMCIvPjxwb2x5Z29uIGNsYXNzPSJjbHMtMiIgcG9pbnRzPSIxLjQxIDQuNjcgMi40OCAzLjE4IDMuNTQgNC42NyAxLjQxIDQuNjciLz48cG9seWdvbiBjbGFzcz0iY2xzLTIiIHBvaW50cz0iMy41NCA1LjMzIDIuNDggNi44MiAxLjQxIDUuMzMgMy41NCA1LjMzIi8+PC9zdmc+) no-repeat 98% 50%;
  -moz-appearance: none;
  -webkit-appearance: none;
  transition: all 0.3s;
}

.fop-update-form-item select:focus {
  outline: none;
}

.fop-update-btn {
  margin-top: 15px;
  padding: 15px 55px;
  display: block;
  font-size: 24px;
  font-weight: 700;
  background-color: #F08E31;
  color: white;
  border-radius: 6px;
  transition: all 0.3s;
  cursor: pointer;
}

.fop-update-btn:hover {
  background-color: #E07915;
  color: white;
}

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

  .fop-update-container {
      flex-direction: column;
      -webkit-flex-direction: column;
  }

  .fop-update-sidebar .fop-update-title {
      padding-top: 0;
  }

  .fop-update-sidebar {
      padding-right: 0;
      border-right: 0 dashed #dcdcdc;
  }

  .fop-update-form {
      margin-top: 35px;
      padding-left: 0;
  }

  #booking-form {
      max-width: none !important;
  }

}





/* Surveys page */
.survey-container {
  margin: 10px auto 25px;
  width: 95%;
  max-width: 1170px;
}

.survey-wrapper {
  padding-bottom: 45px;
  display: flex;
  flex-direction: column;
}

.survey-top {
  padding: 0 0 35px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}

.survey-thanks {
  margin-top: 45px;
  padding: 45px;
  background-color: #f1f1f1;
  text-align: center;
}

.survey-thanks a {
  padding: 15px 35px;
  display: inline-block;
  font-size: 16px;
  font-weight: 800;
  outline: 0;
  border: 0;
  color: white;
  background-color: #69b524;
  border-radius: 4px;
  transition: all 0.2s;
  cursor: pointer;
}

.survey-thanks a:hover {
  background-color: #72c525;
}

.survey-thanks strong {
  font-size: 24px;
  line-height: 32px;
}

.survey-left {
  padding-right: 35px;
  flex: 0 0 auto;
}

.survey-right {
  flex: 1;
  font-size: 24px;
  line-height: 28px;
}

.survey-right span {
  display: block;
  font-size: 48px;
  line-height: 56px;
  font-weight: 800;
}

.survey-thankyou {
  padding: 15px;
  font-size: 18px;
  line-height: 24px;
  background-color: #ffffcc;
  text-align: center;
}

.survey-question {
  margin-bottom: 15px;
  font-size: 18px;
}

.survey-question-wrap {
  margin-bottom: 65px;
}

.survey-question-wrap ul {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

.survey-question-wrap ul li {
  flex: 0 0 19%;
}

.survey-question-wrap ul.radio {
  justify-content: flex-start;
}

.survey-question-wrap ul.radio li {
  margin-right: 35px;
  flex: 0 0 auto;
}

.survey-question-wrap ul li a {
  padding: 15px;
  display: block;
  color: white;
  font-size: 18px;
  font-weight: 600;
  text-align: center;
  background-color: #f1f1f1;
  border-radius: 12px;
  transition: all 0.2s;
  cursor: pointer;
}

.survey-question-wrap ul li a img {
  margin: 0 auto 10px;
  display: block;
}

.survey-question-wrap ul li a.selected {
  border: 4px solid #2cb8e2 !important;
  background-color: #cdeef7 !important;
}

.survey-question-wrap ul li a.red-answer {
  border: 4px solid #ff555f;
  background-color: #ff555f;
  color: #821d1d;
}

.survey-question-wrap ul li a.orange-answer {
  border: 4px solid #ff8447;
  background-color: #ff8447;
  color: #b53d3c;
}


.survey-question-wrap ul li a.yellow-answer {
  border: 4px solid #ffce18;
  background-color: #ffce18;
  color: #c05a58;
}

.survey-question-wrap ul li a.green1-answer {
  border: 4px solid #9ed872;
  background-color: #9ed872;
  color: #3f8144;
}
.survey-question-wrap ul li a.green2-answer {
  border: 4px solid #64ca64;
  background-color: #64ca64;
  color: #3f8144;
}


.survey-question-wrap textarea {
  padding: 15px;
  font-size: 16px;
  width: 100%;
  height: 150px;
  resize: none;
  border: 1px solid #dcdcdc;
}

.survey-question-wrap textarea:focus {
  outline: 0;
  border: 1px solid #aaa;
}

.survey-btn-wrap {
  margin: 25px auto;
  text-align: center;
}

.survey-btn-wrap button {
  padding: 15px 35px;
  display: inline-block;
  font-size: 24px;
  font-weight: 800;
  outline: 0;
  border: 0;
  color: white;
  background-color: #69b524;
  border-radius: 4px;
  transition: all 0.2s;
  cursor: pointer;
}

.survey-btn-wrap button:hover {
  background-color: #72c525;
}

.survey-btn-wrap button.disabled {
  background-color: #e1e1e1;
}




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

  .survey-top {
      flex-direction: column;
  }

  .survey-question-wrap ul li a {
      padding: 10px;
      font-size: 14px;
  }

  .survey-right {
      text-align: center;
  }

  .survey-right span {
      font-size: 40px;
      line-height: 48px;
  }

  .survey-left {
      padding-right: 0;
  }

}




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

  .survey-question-wrap ul li a {
      height: 125px;
  }

  .survey-question-wrap ul.radio {
      flex-direction: column;
      align-items: flex-start;
  }

  .survey-question-wrap ul li a {
      padding: 5px;
      font-size: 15px;
      font-weight: 600;
  }

  .survey-question-wrap ul li a img {
      margin: 0 5px 0 0;
      width: 25px;
      display: inline-block;
      vertical-align: middle;
  }

  .survey-question-wrap {
      margin-bottom: 40px;
  }

  .survey-right {
      font-size: 16px;
      line-height: 22px;
  }

  .survey-right span {
      font-size: 24px;
      line-height: 32px;
  }

  .survey-left img {
      margin: auto;
      width: 150px;
  }

  .subpage-heading {
      padding: 25px 15px;
      color: #44587B;
      font-size: 3vw;
      background-color: #f5f5f5;
      justify-content: center;
      -webkit-justify-content: center;
      text-align: center;
  }

  .subpage-nav {
      display: none;
  }

  .container-subpage-wrap {
      padding-top: 0px;
  }

}




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

  .survey-question-wrap ul {
      flex-direction: column;
  }

  .survey-question-wrap ul li {
      padding: 3px 0;
      width: 100%;
  }

  .survey-question-wrap ul li a {
      height: auto;
  }

}




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

  .help-content-wrap,
  .container-subpage-wrap{
      max-width: 900px;
      margin: 0 auto;
      overflow: hidden;
      padding-left: 6px;
      padding-right: 6px;
  }

  .help-content-wrap .general-container {
      width: 69%;
  }

  .help-content-wrap .sidebar-container {
      width: 31%;
  }

}




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

  .page-new-credit-card .form-cc,
  .page-new-credit-card .side-bar-cc {
      display: block;
  }

  .page-new-credit-card .side-bar-cc {
      width: auto;
  }

  .page-new-credit-card .form-cc {
      padding: 30px 0 0 0;
  }

  .page-new-credit-card .main-content .general-container {
      max-width: 400px;
  }

}




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

  .help-content-wrap .general-container {
      width: 100%;
  }

  .help-content-wrap .sidebar-container {
      width: 100%;
  }

}




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

  .page-new-credit-card .location .fields-box.col-3 {
      width: 100%;
  }

}




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

  .page-new-credit-card .name .fields-box.col-2 {
      width: 100%;
  }

}

/* ===== // END NEW CC PAGE ===== */







/* ===== // ASSETS PAGE ===== */


.assets-title {
  margin: 0 auto 15px;
  padding: 20px 0;
  width: 93%;
  max-width: 1170px;
  font-size: 32px;
  font-weight: 200;
  border-bottom: 1px solid #e1e1e1;
}

.assets-top img {
  width: 300px;
}

.assets-top-item {
  font-size: 18px;
  flex: 0 0 auto;
  text-transform: uppercase;
}

.asset-container {
  margin: 0 auto 25px;
  width: 93%;
  max-width: 1170px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
}

.asset-content {
  margin-bottom: 30px;
  flex: 0 0 48%;
}

.asset-container-color {
  margin: 0 auto;
  padding-bottom: 45px;
  width: 93%;
  max-width: 1170px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}

.asset-color {
  margin-right: 15px;
  flex: 1;
}

.asset-content ul, .asset-color ul {
  margin: 15px 0 0;
  padding: 0;
  list-style: none;
}

.asset-content ul li, .asset-color ul li {
  padding: 5px 0;
  border-bottom: 1px dashed #e9e9e9;
}

.asset-subtitle {
  padding: 0 0 15px;
  font-weight: 600;
  flex: 0 0 auto;
  text-transform: uppercase;
  border-bottom: 1px dashed #e9e9e9;
}

.asset-body-row {
  padding: 10px 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px dashed #eee;
}

.asset-body-item {
  flex: 0 0 auto;
}

.asset-body-item span {
  font-size: 12px;
  color: #999;
}

.asset-dl-btn {
  padding: 5px 10px;
  display: inline-block;
  color: #2cb8e2;
  background-color: transparent;
  text-decoration: none;
  border-radius: 4px;
  transition: all 0.2s;
}

.asset-dl-btn:hover {
  color: #3a3a3a;
}

.asset-color-blue-darker {
  width: 100%;
  height: 65px;
  background-color: #30405F;
}

.asset-color-blue-main {
  width: 100%;
  height: 65px;
  background-color: #455D88;
}

.asset-color-blue-hover {
  width: 100%;
  height: 65px;
  background-color: #576C93;
}

.asset-color-blue-border {
  width: 100%;
  height: 65px;
  background-color: #D7E2F5;
}

.asset-color-blue-background {
  width: 100%;
  height: 65px;
  background-color: #EFF5FF;
}

.asset-color-green-darker {
  width: 100%;
  height: 65px;
  background-color: #52862C;
}

.asset-color-green-main {
  width: 100%;
  height: 65px;
  background-color: #67A838;
}

.asset-color-green-hover {
  width: 100%;
  height: 65px;
  background-color: #75B04B;
}

.asset-color-green-border {
  width: 100%;
  height: 65px;
  background-color: #D5ECC4;
}

.asset-color-green-background {
  width: 100%;
  height: 65px;
  background-color: #F3FFEA;
}

.asset-color-grey-darker {
  width: 100%;
  height: 65px;
  background-color: #333;
}

.asset-color-grey-main {
  width: 100%;
  height: 65px;
  background-color: #444;
}

.asset-color-grey-hover {
  width: 100%;
  height: 65px;
  background-color: #999;
}

.asset-color-grey-border {
  width: 100%;
  height: 65px;
  background-color: #E5E5E5;
}

.asset-color-grey-background {
  width: 100%;
  height: 65px;
  background-color: #F5F5F5;
}

.asset-color-red-darker {
  width: 100%;
  height: 65px;
  background-color: #BB382F;
}

.asset-color-red-main {
  width: 100%;
  height: 65px;
  background-color: #D03F35;
}

.asset-color-red-hover {
  width: 100%;
  height: 65px;
  background-color: #D45148;
}

.asset-color-red-border {
  width: 100%;
  height: 65px;
  background-color: #F6D8D6;
}

.asset-color-red-background {
  width: 100%;
  height: 65px;
  background-color: #FAEBEA;
}

.asset-color-orange-darker {
  width: 100%;
  height: 65px;
  background-color: #E07915;
}

.asset-color-orange-main {
  width: 100%;
  height: 65px;
  background-color: #F08E31;
}

.asset-color-orange-hover {
  width: 100%;
  height: 65px;
  background-color: #F19945;
}

.asset-color-orange-border {
  width: 100%;
  height: 65px;
  background-color: #FBDDC0;
}

.asset-color-orange-background {
  width: 100%;
  height: 65px;
  background-color: #FEF3EA;
}





@media (max-width : 950px) {

  .asset-container {
      width: 95%;
      flex-direction: column;
  }

  .assets-title {
      width: 95%;
      font-size: 24px;
  }

  .asset-container-color {
      width: 95%;
      flex-wrap: wrap;
      justify-content: space-between;
  }

  .asset-color {
      margin: 0 0 15px 0;
      flex: 0 0 48%;
  }

  .assets-top {
      padding: 20px;
  }

  .assets-top img {
      width: 275px;
  }

  .assets-top {
      width: 95%;
      flex-direction: column;
      text-align: center;
  }

}


/* ===== // END ASSETS PAGE ===== */








@media only screen
and (min-width : 320px)
and (max-width : 676px) {

  .faq-title {
      padding-top: 5px;
  }
  .faq-content-wrap{
      margin:10px 2% 0;
      padding:0;
      min-width:96%;
      max-width:96%;
  }

  .faq-title .popular-question-title,
  .faq-title .popular-question-phone {
      float: left;
      margin-top: 10px;
  }
  .faq-title .popular-question-title {
      margin-right: 20px;
      margin-top: 20px;
  }

  .faq-title .popular-question-phone span.toll-free-label,
  .faq-title .popular-question-phone span.direct-phone-label {
      margin-left: 0px;
  }

  .myaccount-signup-wrap{
      margin:10px 2% 0;
      width:96%;
  }

  .popular-question-phone .general-container.full {
      padding-left: 6px;
      padding-right: 6px;
  }

}





@media only screen
and (min-width : 768px)
and (max-width : 1024px) {

.faq-content-wrap{
  margin: 10px 2% 0;
  padding: 0;
  min-width: 96%;
  max-width: 96%;
}

.airlines-title{
  margin-right:0;
}

.container-airlines{
  margin: 10px 2% 0;
  padding: 0;
  min-width: 96%;
  max-width: 96%;
}

.airlines-quicklinks{
  display:none;
}

.myaccount-signup-wrap{
  margin: 10px 2% 0;
  width: 96%;
}

}



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

  .airline-box, .airline-box ul {
      flex-direction: column;
      -webkit-flex-direction: column;
  }

  .airline-box ul li {
      width: 100%;
      text-align: center;
  }

  .airline-box ul li img {
      margin: 0 auto;
  }

  .airline-box ul li:not(:last-child) {
      border-bottom: 1px dashed #dcdcdc;
  }

}



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

  .faq-search-wrap input {
      width: 65%;
  }

  a.button-search {
      width: 35%;
  }

}

.dispute-form-container {
  margin: 25px auto;
  width: 93%;
  max-width: 1170px;
  border: 1px solid #dcdcdc;
  border-radius: 12px;
}

.dispute-form-container-title {
  padding: 15px;
  font-size: 24px;
  line-height: 30px;
  font-weight: 600;
  background-color: #f9f9f9;
  border-bottom: 1px solid #dcdcdc;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}

.dispute-form-container-title span {
  display: block;
  font-size: 15px;
  line-height: 21px;
  font-weight: 400;
}

.dispute-stats-wrap {
  padding: 15px;
  font-size: 15px;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  border-bottom: 1px dashed #ccc;
}

.dispute-stats-item {
  flex: 1;
  -webkit-flex: 1;
}

.dispute-stats-item ul li {
  margin-bottom: 5px;
}

.dispute-stats-item ul li:last-child {
  margin-bottom: 0;
}

.dispute-fields-wrap {
  padding: 15px;
}

.dispute-fields-wrap.msg {
  padding: 35px;
  text-align: center;
  font-size: 18px;
  font-weight: 600;
}

.dispute-fields-wrap ul li label {
  padding: 0 0 5px;
  display: block;
}

.dispute-fields-wrap ul li>label {
  font-weight: 600;
}

.dispute-fields-wrap ul li {
  margin-bottom: 25px;
}

.dispute-fields-wrap ul > li:last-child {
  margin-bottom: 0;
}

.dispute-fields-wrap ul li select {
  padding: 10px 15px;
  border: 1px solid #dcdcdc;
  border-radius: 4px;
  position: relative;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Edown-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M10.293%2C3.293%2C6%2C7.586%2C1.707%2C3.293A1%2C1%2C0%2C0%2C0%2C.293%2C4.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%20fill%3D%22%23000000%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: .6em;
  background-position: calc(100% - 1.3em) center;
  background-repeat: no-repeat;
  text-wrap: balance;
}

select::-ms-expand {
  display: none;
}

.dispute-fields-wrap ul li textarea {
  width: 50%;
  min-height: 250px;
  border: 1px solid #dcdcdc;
  border-radius: 3px;
}

.dispute-fields-wrap ul li textarea:focus {
  border: 1px solid #999;
}

.dispute-fields-wrap ul li ul li {
  margin-bottom: 5px;
}

.dispute-fields-wrap ul li ul li label {
  font-weight: 400;
}

.dispute-fields-wrap ul li ul li label input {
  margin: 3px;
}

button.dispute-form-btn {
  padding: 15px 35px;
  display: inline-block;
  color: white;
  font-size: 18px;
  font-weight: 600;
  background-color: #455D88;
  border: 0;
  outline: none;
  border-radius: 4px;
  transition: all 0.3s;
  cursor: pointer;
}

button.dispute-form-btn:hover {
  background-color: #576C93;
}

.dispute-form-container .alert {
  margin: 15px;
}

.dispute-back-btn {
  margin: 15px auto;
  padding: 15px 35px;
  display: block;
  width: fit-content;
  width: -moz-fit-content;
  color: white;
  font-size: 18px;
  font-weight: 600;
  background-color: #455D88;
  border-radius: 4px;
  transition: all 0.3s;
  cursor: pointer;
}

.dispute-back-btn:hover {
  background-color: #576C93;
  color: white;
}





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

  .dispute-form-container {
      margin: 15px auto;
  }

}





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

  .dispute-form-container {
      width: 96%;
  }

  .dispute-stats-wrap {
      flex-direction: column;
      -webkit-flex-direction: column;
  }

  .dispute-fields-wrap ul li textarea {
      width: 100%;
      min-height: 150px;
  }

  .dispute-stats-item ul li:last-child {
      margin-bottom: 5px;
  }

  .dispute-stats-item:last-child ul li:last-child {
      margin-bottom: 0;
  }

}





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


  .dispute-form-container-title {
      font-size: 18px;
      line-height: 24px;
  }

  .dispute-form-container-title span {
      font-size: 13px;
      line-height: 18px;
  }

  .dispute-stats-wrap {
      font-size: 13px;
  }

  .dispute-fields-wrap ul li select {
      width: 90%;
  }

}
.upsell-container {
  margin-bottom: 35px;
  box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}

.upsell-heading {
  padding: 15px;
  background-color: #44587B;
  color: white;
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: center;
  -webkit-align-items: center;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
}

.upsell-heading-item {
  flex: 0 1 auto;
  -webkit-flex: 0 1 auto;
}

.upsell-heading-item.upsell-name {
  font-size: 16px;
  font-weight: 700;
}

.upsell-heading-item a {
  color: white;
}

.upsell-heading-item a:hover {
  text-decoration: underline;
}

.upsell-body {
  padding: 15px;
  background-color: white;
  border-bottom-left-radius: 6px;
  border-bottom-right-radius: 6px;
}

.upsell-content-wrap {
  display: flex;
  display: -webkit-flex;
  flex-direction: row;
  -webkit-flex-direction: row;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: stretch;
  -webkit-align-items: stretch;
}

.upsell-content-left {
  padding-right: 25px;
  flex: 1;
  -webkit-flex: 1;
}

.upsell-content-right {
  padding-left: 15px;
  flex: 0 1 240px;
  -webkit-flex: 0 1 240px;
  border-left: 1px dashed #dcdcdc;
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
}

.upsell-title {
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: 600;
  color: #455d88;
}

.upsell-points {
  margin-bottom: 15px;
  padding: 10px;
  font-size: 15px;
  background-color: #F7FAFF;
}

.upsell-points ul li {
  margin-bottom: 10px;
  padding-left: 17px;
  position: relative;
}

.upsell-points ul li:last-child {
  margin-bottom: 0;
}

.upsell-points ul li:before {
  content: '\f00c';
  font-family: FontAwesome;
  font-size: 12px;
  font-weight: 400;
  color: #67A838;
  position: absolute;
  left: 0;
  top: 3px;
}

.upsell-covid-important {
  color: #777777;
  line-height: 18px;
}

.upsell-covid-important span {
  font-weight: 600;
  color: #ED6C28;
}

.upsell-content-right .upsell-logo {
  margin: 0 auto 15px;
  width: 60%;
}

.upsell-price {
  margin: 0 auto 10px;
  font-size: 15px;
}

a.upsell-btn {
  margin: 0 auto 10px;
  padding: 12px 25px;
  font-weight: 700;
  color: white;
  display: inline-block;
  background-color: #455D88;
  border-radius: 4px;
  transition: all 0.3s;
  cursor: pointer;
  position: relative;
}

a.upsell-btn:hover {
  background-color: #30405F;
  color: white;
}

a.upsell-btn.added {
  padding: 12px 15px 12px 25px;
  background-color: #67A838;
}

a.upsell-btn.added:before {
  margin-top: -7px;
  content: '\f00c';
  font-family: FontAwesome;
  font-size: 12px;
  font-weight: 400;
  color: #fff;
  position: absolute;
  left: 9px;
  top: 50%;
}

.upsell-terms-info {
  margin: 0 auto 15px;
  font-size: 12px;
  text-align: center;
}

.upsell-right-highlight {
  margin: 0 auto 15px;
  font-size: 12px;
  text-align: center;
}

.upsell-right-highlight .fa {
  color: #05bf66;
}
.guest-new-btn{
  height: inherit;
  min-height: auto!important;
}
.flight-search-form label{
  padding-top: 0px;
  padding-bottom: 0px;
}