/*!
 * Copyright (c) 2014 Tamble, Inc.
 * Licensed under MIT (https://github.com/tamble/jquery-ui-daterangepicker/raw/master/LICENSE.txt)
 */

.comiseo-daterangepicker-triggerbutton.ui-button {
    text-align: left;
}

.comiseo-daterangepicker {
    position: absolute;
    padding: 5px;
}

.comiseo-daterangepicker-mask {
    margin: 0;
    padding: 0;
    position: fixed;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    /* required for IE */
    background-color: #fff;
    opacity: 0;
    filter: alpha(opacity = 0);
}

.comiseo-daterangepicker-presets,
.comiseo-daterangepicker-calendar {
    display: table-cell;
    vertical-align: top;
    height: 230px;
}

.comiseo-daterangepicker-right .comiseo-daterangepicker-presets {
    padding: 2px 7px 7px 2px;
}

.comiseo-daterangepicker-left .comiseo-daterangepicker-presets {
    padding: 2px 2px 7px 7px;
}

.ui-menu {
    white-space: nowrap;
}

.comiseo-daterangepicker > .comiseo-daterangepicker-main.ui-widget-content {
    border-bottom-width: 1px;
}

.comiseo-daterangepicker .ui-datepicker .ui-datepicker-today .ui-state-highlight {
    border-width: 1px;
}

.comiseo-daterangepicker-right .comiseo-daterangepicker-calendar {
    border-left-width: 0;
    padding-left: 5px;
}

.comiseo-daterangepicker-left .comiseo-daterangepicker-calendar {
    border-right-width: 0;
    padding-right: 5px;
}

.comiseo-daterangepicker-right .comiseo-daterangepicker-buttonpanel {
    float: left;
}

.comiseo-daterangepicker-left .comiseo-daterangepicker-buttonpanel {
    float: right;
}

.comiseo-daterangepicker-buttonpanel > button  {
    margin-top: 6px;
}


/* themeable styles */
.comiseo-daterangepicker-calendar .ui-state-highlight a.ui-state-default {
    background: #b0c4de;
    color: #fff;
}


/* custom */

.ui-widget {
    font-size: 14px;
}
.comiseo-daterangepicker {
    float: left;
    width: auto;
    min-width: 285px;
    z-index: 900;
}
.comiseo-daterangepicker-presets {
    display: none;
}

.comiseo-daterangepicker-calendar {
    float: left;
    width: 100%;
}
.comiseo-daterangepicker-buttonpanel {
    margin: 0 2%;
    text-align: center;
    width: 96%;
}

/*.oneway .date-range-container,*/
.multi .date-range-container {
    position:absolute;
    visibility: hidden;
    display: none;
}

/*.oneway .seg0_date_wrap,*/
.multi .seg0_date_wrap,
.multi .seg1_date_wrap {
    display: block;
}

.date-rangepicker-label {
    position: relative;
    padding: 10px;
    margin-top: -25px;
    background: #0171A1;
    color: #fff;
    font-size: 14px;
}

.ui-datepicker-days-cell-over .ui-state-active {
    background: #fff;
    box-shadow: none;
    font-weight: normal;
}

.ui-datepicker-current-day .ui-state-active {
    box-shadow: none;
}

.comiseo-daterangepicker-buttonpanel .ui-priority-primary {
    float: none;
    margin-right: 1%;
    display:inline-block;
    background: #63A632;
    color: #fff;
    text-transform: uppercase;
    padding: 0;
    border: 0;
    font-weight: normal;
    font-size: 16px;
    box-sizing:border-box;
}

.comiseo-daterangepicker-buttonpanel .ui-priority-secondary {
    display: none;
}

.comiseo-daterangepicker .ui-helper-clearfix{
    padding-bottom: 10px;
}

.date-range-container {
    display: none;
}




.ui-widget {
    font-size: 14px;
}
input.raw {
    width: 100%;
    padding: 12px 2%;
}
.comiseo-daterangepicker {
    float: left;
    width: auto;
    min-width: 285px;
    z-index: 900;
}
.comiseo-daterangepicker-presets {
    display: none;
}

.ui-datepicker-today .ui-state-highlight {
    background: #fff;
    color: #000;
}

.comiseo-daterangepicker-calendar {
    float: left;
    width: 100%;
}


/*.oneway .date-range-container,*/
.multi .date-range-container {
    position:absolute;
    visibility: hidden;
    display: none;
}

/*.oneway .seg0_date_wrap,*/
.multi .seg0_date_wrap,
.multi .seg1_date_wrap {
    display: block;
}

.date-rangepicker-label {
    position: relative;
    padding: 10px;
    margin-top: -25px;
    background: #0171A1;
    color: #fff;
    font-size: 14px;
}

.ui-datepicker-days-cell-over .ui-state-active {
    background: #fff;
    box-shadow: none;
    font-weight: normal;
}

.ui-datepicker-current-day .ui-state-active {
    box-shadow: none;
}

.comiseo-daterangepicker {
    left: 10px;
    top: 30px;
    min-width: 95%;
    max-width: 100%;
    padding: 0;
}

.comiseo-daterangepicker-calendar {
    height: 100%;
    min-height: 310px;
    padding: 0;
}

.comiseo-daterangepicker-calendar .ui-datepicker {
    min-width: 100%;
}



.comiseo-daterangepicker-buttonpanel .ui-priority-primary,
.comiseo-daterangepicker-buttonpanel .ui-priority-secondary {
    float: left;
    margin: 0 auto;
    background: #63A632;
    color: #fff;
    text-transform: uppercase;
    padding: 15px 20px;
    border: 0;
    margin-left: 0;
    font-weight: normal;
    font-size: 16px;
    width: 45%;
}

.comiseo-daterangepicker button.ui-priority-secondary.button-cancel {
    float: right;
}

.comiseo-daterangepicker-buttonpanel .ui-priority-secondary.button-cancel .ui-button-text {
    background-color: #d1d1d1;
}


.ui-datepicker table{
    width: 100% !important;
}

.comiseo-daterangepicker-buttonpanel .ui-priority-secondary {
    display: none;
}

.comiseo-daterangepicker-buttonpanel .ui-priority-secondary.button-cancel {
    float: right;
    display: inline-block;
    background: #d1d1d1;
    border-radius: 2px;
}

.comiseo-daterangepicker .ui-helper-clearfix{
    padding-bottom: 10px;
}

.date-range-container {
    display: none;
}





@media screen and (min-width: 768px) {
    .comiseo-daterangepicker {
        display: none !important;
    }
}




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

    .comiseo-daterangepicker .ui-datepicker .ui-datepicker-header {
        border-bottom: 2px solid #EB5300;
    }

    .comiseo-daterangepicker .ui-datepicker .ui-state-default {
        padding: 8px 0;
    }

    .comiseo-daterangepicker .ui-datepicker-calendar {
        padding: 0;
    }

    .button-apply {
        background-color: #006699 !important;
        color: #fff !important;
    }

    .comiseo-daterangepicker .ui-datepicker-calendar tbody > tr > td a:hover {
        background: #DCF4FF;
        box-shadow: none;
        color: #000;
    }

    .comiseo-daterangepicker-presets, .comiseo-daterangepicker-calendar{
        height: auto !important;
    }

    .comiseo-daterangepicker {
        margin: 0 2%;
        left: auto !important;
        box-shadow: 0 0 10px #444;
        box-sizing: border-box !important;
    }

    .comiseo-daterangepicker .ui-datepicker-header {
        width: 100%;
        overflow: hidden;
        border-top:4px solid #fff;
    }

    .comiseo-daterangepicker .ui-datepicker-header .ui-datepicker-title {
        width: 100%;
        margin: 0 auto;
        font-size: 18px;
    }

    .comiseo-daterangepicker .ui-datepicker-header .ui-icon {
        width: auto;
        height: auto;
        margin-top: -26px;
        text-indent: 0;
        background-image: none;
    }

    .comiseo-daterangepicker .ui-datepicker-header .ui-icon .fa {
        font-size: 48px;
        color: #0171A1;
    }

    .comiseo-daterangepicker-calendar .ui-state-highlight a.ui-state-default {
        background: #DCF4FF;
        box-shadow: none;
        color: #333;
        border: 0;
    }

    .comiseo-daterangepicker .ui-datepicker-calendar tbody {
        border-left: 0;
    }

    .comiseo-daterangepicker-calendar {
        padding: 0 1%;

    }

    .comiseo-daterangepicker-calendar .ui-datepicker {
        min-width: 100%;
        max-width: 100%;
        box-shadow: none;
    }

    .comiseo-daterangepicker-calendar .ui-datepicker-calendar td a,
    .comiseo-daterangepicker-calendar .ui-datepicker-calendar td .ui-state-default {
        width: 100%;

    }

    .comiseo-daterangepicker-calendar .ui-datepicker-today a {
        border: 0;
        background: #fff;
        box-shadow: none;
        color: #333;
    }

    .comiseo-daterangepicker-triggerbutton {
        padding: 0;
    }

    .comiseo-daterangepicker-triggerbutton .ui-button-text {
        font-size: 12px;
    }
}
/* This is the default Tooltipster theme (feel free to modify or duplicate and create multiple themes!): */
.tooltipster-default {
	border-radius: 5px;
	border: 0px solid #f72144;
	background: #111;
	color: #fff;
}

/* Use this next selector to style things like font-size and line-height: */
.tooltipster-default .tooltipster-content {
	font-family: Arial, sans-serif;
	font-size: 12px;
	line-height: 14px;
	padding: 8px 10px;
	overflow: hidden;
}

/* This next selector defines the color of the border on the outside of the arrow. This will automatically match the color and size of the border set on the main tooltip styles. Set display: none; if you would like a border around the tooltip but no border around the arrow */
.tooltipster-default .tooltipster-arrow .tooltipster-arrow-border {
	/* border-color: ... !important; */
}


/* If you're using the icon option, use this next selector to style them */
.tooltipster-icon {
	cursor: help;
	margin-left: 4px;
}






/* This is the base styling required to make all Tooltipsters work */
.tooltipster-base {
	padding: 0;
	font-size: 0;
	line-height: 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 9999999;
	pointer-events: none;
	width: auto;
	overflow: visible;
}
.tooltipster-base .tooltipster-content {
	overflow: hidden;
}


/* These next classes handle the styles for the little arrow attached to the tooltip. By default, the arrow will inherit the same colors and border as what is set on the main tooltip itself. */
.tooltipster-arrow {
	display: block;
	text-align: center;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.tooltipster-arrow span, .tooltipster-arrow-border {
	display: block;
	width: 0;
	height: 0;
	position: absolute;
}
.tooltipster-arrow-top span, .tooltipster-arrow-top-right span, .tooltipster-arrow-top-left span {
	border-left: 8px solid transparent !important;
	border-right: 8px solid transparent !important;
	border-top: 8px solid;
	bottom: -7px;
}
.tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-top-left .tooltipster-arrow-border {
	border-left: 9px solid transparent !important;
	border-right: 9px solid transparent !important;
	border-top: 9px solid;
	bottom: -7px;
}

.tooltipster-arrow-bottom span, .tooltipster-arrow-bottom-right span, .tooltipster-arrow-bottom-left span {
	border-left: 8px solid transparent !important;
	border-right: 8px solid transparent !important;
	border-bottom: 8px solid;
	top: -7px;
}
.tooltipster-arrow-bottom .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border, .tooltipster-arrow-bottom-left .tooltipster-arrow-border {
	border-left: 9px solid transparent !important;
	border-right: 9px solid transparent !important;
	border-bottom: 9px solid;
	top: -7px;
}
.tooltipster-arrow-top span, .tooltipster-arrow-top .tooltipster-arrow-border, .tooltipster-arrow-bottom span, .tooltipster-arrow-bottom .tooltipster-arrow-border {
	left: 0;
	right: 0;
	margin: 0 auto;
}
.tooltipster-arrow-top-left span, .tooltipster-arrow-bottom-left span {
	left: 6px;
}
.tooltipster-arrow-top-left .tooltipster-arrow-border, .tooltipster-arrow-bottom-left .tooltipster-arrow-border {
	left: 5px;
}
.tooltipster-arrow-top-right span,  .tooltipster-arrow-bottom-right span {
	right: 6px;
}
.tooltipster-arrow-top-right .tooltipster-arrow-border, .tooltipster-arrow-bottom-right .tooltipster-arrow-border {
	right: 5px;
}
.tooltipster-arrow-left span, .tooltipster-arrow-left .tooltipster-arrow-border {
	border-top: 8px solid transparent !important;
	border-bottom: 8px solid transparent !important;
	border-left: 8px solid;
	top: 50%;
	margin-top: -7px;
	right: -7px;
}
.tooltipster-arrow-left .tooltipster-arrow-border {
	border-top: 9px solid transparent !important;
	border-bottom: 9px solid transparent !important;
	border-left: 9px solid;
	margin-top: -8px;
}
.tooltipster-arrow-right span, .tooltipster-arrow-right .tooltipster-arrow-border {
	border-top: 8px solid transparent !important;
	border-bottom: 8px solid transparent !important;
	border-right: 8px solid;
	top: 50%;
	margin-top: -7px;
	left: -7px;
}
.tooltipster-arrow-right .tooltipster-arrow-border {
	border-top: 9px solid transparent !important;
	border-bottom: 9px solid transparent !important;
	border-right: 9px solid;
	margin-top: -8px;
}


/* Some CSS magic for the awesome animations - feel free to make your own custom animations and reference it in your Tooltipster settings! */

.tooltipster-fade {
	opacity: 0;
	-webkit-transition-property: opacity;
	-moz-transition-property: opacity;
	-o-transition-property: opacity;
	-ms-transition-property: opacity;
	transition-property: opacity;
}
.tooltipster-fade-show {
	opacity: 1;
}

.tooltipster-grow {
	-webkit-transform: scale(0,0);
	-moz-transform: scale(0,0);
	-o-transform: scale(0,0);
	-ms-transform: scale(0,0);
	transform: scale(0,0);
	-webkit-transition-property: -webkit-transform;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
	-webkit-backface-visibility: hidden;
}
.tooltipster-grow-show {
	-webkit-transform: scale(1,1);
	-moz-transform: scale(1,1);
	-o-transform: scale(1,1);
	-ms-transform: scale(1,1);
	transform: scale(1,1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}

.tooltipster-swing {
	opacity: 0;
	-webkit-transform: rotateZ(4deg);
	-moz-transform: rotateZ(4deg);
	-o-transform: rotateZ(4deg);
	-ms-transform: rotateZ(4deg);
	transform: rotateZ(4deg);
	-webkit-transition-property: -webkit-transform, opacity;
	-moz-transition-property: -moz-transform;
	-o-transition-property: -o-transform;
	-ms-transition-property: -ms-transform;
	transition-property: transform;
}
.tooltipster-swing-show {
	opacity: 1;
	-webkit-transform: rotateZ(0deg);
	-moz-transform: rotateZ(0deg);
	-o-transform: rotateZ(0deg);
	-ms-transform: rotateZ(0deg);
	transform: rotateZ(0deg);
	-webkit-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 1);
	-webkit-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	-moz-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	-ms-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	-o-transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
	transition-timing-function: cubic-bezier(0.230, 0.635, 0.495, 2.4);
}

.tooltipster-fall {
	top: 0;
	-webkit-transition-property: top;
	-moz-transition-property: top;
	-o-transition-property: top;
	-ms-transition-property: top;
	transition-property: top;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}
.tooltipster-fall-show {
}
.tooltipster-fall.tooltipster-dying {
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	-ms-transition-property: all;
	transition-property: all;
	top: 0px !important;
	opacity: 0;
}

.tooltipster-slide {
	left: -40px;
	-webkit-transition-property: left;
	-moz-transition-property: left;
	-o-transition-property: left;
	-ms-transition-property: left;
	transition-property: left;
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
	-webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-moz-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-ms-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	-o-transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
	transition-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1.15);
}
.tooltipster-slide.tooltipster-slide-show {
}
.tooltipster-slide.tooltipster-dying {
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	-ms-transition-property: all;
	transition-property: all;
	left: 0px !important;
	opacity: 0;
}


/* CSS transition for when contenting is changing in a tooltip that is still open. The only properties that will NOT transition are: width, height, top, and left */
.tooltipster-content-changing {
	opacity: 0.5;
	-webkit-transform: scale(1.1, 1.1);
	-moz-transform: scale(1.1, 1.1);
	-o-transform: scale(1.1, 1.1);
	-ms-transform: scale(1.1, 1.1);
	transform: scale(1.1, 1.1);
}

.tooltip-inner {
    white-space:pre-wrap;
}

/* The tooltipster arrow is appearing too far from left and
pushing content on Tablets */

@media (min-width: 768px) and (max-width: 1024px) {
    .tooltipster-arrow {
        display: none!important;
    }
}

@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .tooltipster-arrow {
        display: none!important;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .tooltipster-arrow {
        display: none!important;
    }
}
/* css reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, menu, nav, section {
    display: block;
}

input, button {
    outline: 0; /* kills stupid blue border around inputs when focused */
}

ol, ul {
    list-style: none;
}

a {
    text-decoration: none;
    color: #2cb8e2;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: all 0.2s;
}

a:hover {
    color: #12a2e2;
}

/* box sizing to combat box model padding */
*, *:after, *:before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* modern sticky footer - http://mystrd.at/modern-clean-css-sticky-footer/ */
html {
    position: relative;
    min-height: 100%;
    scroll-behavior: smooth;
}

body {
    margin: 0 0 50px; /* bottom = footer height */
    padding: 0;
    font: 400 13px/20px 'arial', sans-serif;
    color: #333;
    background-color: #fff;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
}

html.is-mobile-app .site-header {
    position: fixed;
    top: 0;
    width: 100%;
}

/* LIST */
ol, ul {
    list-style: none;
}

/* TABLE */
table {
    border-spacing: 0;
    border-collapse: collapse;
}
.sprite-item{
    background-image: url("https://www.flighthub.com/images/sprites/fh-sprite.png");
    background-repeat: no-repeat;
    display: inline-block;
    vertical-align: middle;
}

.sprite-item.flag{
    height: 11px;
    width: 16px;
    margin: -4px 7px 0 0;
}

.sprite-item.flag.ca,
.sprite-item.flag.ca-fr{background-position: 0px 0px;}

.sprite-item.flag.us{background-position: 0px -16px;}


@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) {

   .sprite-item{
        background-image: url("https://www.flighthub.com/images/sprites/fh-sprite-2x.png");
        background-size: 215px 324px;
    }

}

/*@media screen and (-webkit-device-pixel-ratio: 2){

}*/
.site-logo {
    display: inline-block;
    width: 200px;
    height: 45px;
    background-image: -webkit-linear-gradient(transparent, transparent), url("https://www.flighthub.com/cf-assets/images/logo-flighthub.svg");
    background-image: linear-gradient(transparent, transparent), url("https://www.flighthub.com/cf-assets/images/logo-flighthub.svg");
    background-position: 0 center;
    background-repeat: no-repeat;
    -webkit-transition: width .2s linear;
    -moz-transition: width .2s linear;
    -ms-transition: width .2s linear;
    transition: width .2s linear;
}

.modal-fare-alerts-logo {
    width: 200px;
    height: 45px;
}

.printable-logo {
    display: none;
}
header {
    margin: 0;
    padding: 0;
    width: 100%;
    background-color: #fff;
    border-bottom: 1px solid #dcdcdc;
}

.header-container {
    margin: 0 auto;
    padding: 0 15px;
    max-width: 1230px;
    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;
    position: relative;
}

body.flight .header-container {
    padding: 0 15px;
    max-width: 1370px;
}

.cobrand-wrap {
    display: flex;
    display: -webkit-flex;
    align-items: center;
    -webkit-align-items: center;
}

/* Language spinner */
.lang-spinner {
    margin: 0 auto;
    padding: 35px;
    display: inline-block;
    color: #fff;
    background: rgba(255,255,255,0.9);
    text-align: center;
    border-radius: 20px;
    position: absolute;
    top: 35px;
    left: 45%;
    z-index: 100000;
    box-shadow: 0 0 10px #999;
}

.currency-flag {
    vertical-align: middle;
    margin-top: -3px;
}

.logo {
    width: 165px;
    height: 37px;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    background-image: url('https://www.flighthub.com/cf-assets/images/logo-flighthub.svg');
    background-position: 0 center;
    background-repeat: no-repeat;
    background-size: 165px 379px;
}

.logo-plus {
    width: 30px;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    vertical-align: text-bottom;
    color: #999;
    font-size: 22px;
    text-align: center;
}

.logo-cobranding {
    width: 140px;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    vertical-align: super;
}

.phone-warning-banner {
    padding: 10px;
    background-color: #ffffcc;
    font-weight: 700;
    text-align: center;
    border-bottom: 1px solid #d0d0aa;
}

nav.nav-container {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
}

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;
}

nav ul li.mobile-main-nav {
    display: none;
}

nav>ul>li {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    position: relative;
}

nav>ul>li>a {
    padding: 15px 15px;
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #666;
    transition: all 0.2s;
}

nav>ul>li>a:hover {
    color: #444;
}

nav>ul>li>a.header-signin {
    padding: 15px 25px 15px 40px;
    color: white;
    background-color: #2cb8e2;
    position: relative;
}

nav>ul>li>a.header-signin.tall {
    padding: 25px 25px 25px 40px;
}

.user-logged-in nav>ul>li>a.header-signin {
    width: 215px;
}

nav>ul>li>a.header-signin:before {
    content: '\f007';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    color: white;
    position: absolute;
    top: 15px;
    left: 20px;
    font-size: 16px;
}

nav>ul>li>a.header-signin.tall:before {
    top: 25px;
}

.user-logged-in nav>ul>li>a.header-signin:after {
    content: '\f107';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    position: absolute;
    top: 17px;
    right: 10px;
    font-size: 16px;
}

nav>ul>li>a.header-signin:hover {
    background-color: #12a2e2;
}

.mobile-nav-button {
    display: none;
}

.mobile-header-phone {
    displaY: none;
}

#header_myaccount {
    padding: 15px;
    border-top: 3px solid #00b4ff;
    width: 300px;
    position: absolute;
    left: -90px;
    top: 25px;
    background-color: #fff;
    z-index: 10;
}

#header_myaccount input {
    margin-bottom: 5px;
}

ul#header_myaccount li {
    border-bottom: 1px solid #dadada;
}

ul#header_myaccount li:last-child {
    border-bottom: 0;
}

ul#header_myaccount li a {
    padding: 8px 20px;
    display: block;
}

ul#header_myaccount li a:hover {
    color: #ec5300;
}

.hp-login-title {
    padding-bottom: 5px;
    font-weight: 700;
}

.login-links-wrap {
    margin-top: 15px;
}

.btn-login {
    padding: 7px 15px;
    color: #fff;
    background-color: #2cb8e2;
    border: 0;
    display: inline-block;
    text-align: center;
    cursor: pointer;
}
.btn-login:hover {
    background-color: #018dde;
}



/* subheader */

.subheader {
    width: 100%;
    background-color: #f5f5f5;
    border-bottom: 1px solid #dcdcdc;
}

.subheader-container {
    margin: 0 auto;
    padding: 0 15px;
    max-width: 1230px;
    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;
}

body.flight .subheader-container {
    max-width: 1370px;
}

.submenu {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
}

.submenu>ul {
    display: flex;
    display: -webkit-flex;
}

.submenu>ul li {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
}

.submenu>ul li a {
    padding: 7px 28px 7px 0;
    display: block;
    color: #555;
    font-size: 12px;
    font-weight: 600;
}

.submenu-right {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
}

.subheader-currency {
    padding: 5px 0;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    position: relative;
}

.subheader-currency a {
    color: #555;
    font-size: 12px;
}






/* 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: 14px;
    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-info {
    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;
}



/* currencies dropdown  JC - Nov 17 2021 */

.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: #2cb8e2;
    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: 0 5px;
    display: inline-block;
    font-size: 12px;
    height: 20px;
    min-width: 20px;
    background-color: #f1f1f1;
    border-radius: 10px;
    text-align: center;
}

#header_lang.currency-selection-container {
    border-top: 0 solid #00b4ff;
    position: absolute;
    left: -520px;
    top: 32px;
    width: 510px;
    background-color: #f5f5f5;
    z-index: 1000;
    box-shadow: 1px 1px 3px #888;
}

.lang-slide-trigger img {
    margin-right: 5px;
    width: 16px;
    display: inline-block;
    vertical-align: middle;
}

.lang-slide-trigger .fa {
    margin-left: 5px;
}


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

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

    .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 {
        margin-top: 10px;
        padding: 3px 5px;
        max-width: 160px;
        background-color: #fff;
        border-radius: 6px;
        border: 1px solid #dcdcdc;
    }

}

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



#header_lang {
    border-top: 3px solid #00b4ff;
    position: absolute;
    left: -10px;
    top: 25px;
    width: 150px;
    background-color: #fff;
    z-index: 1000;
    box-shadow: 1px 1px 3px #888;
}

#header_lang ul li {
    border-bottom: 1px solid #dadada;
}

#header_lang ul li:last-child {
    border-bottom: 0;
}

#header_lang ul li a {
    padding: 7px 15px;
    display: block;
    color: #444;
}

#header_lang ul li a:hover {
    color: #fff;
    background-color: #2cb8e2;
}

#header_logout {
    position: absolute;
    left: 0;
    top: 50px;
    width: 215px;
    background-color: #fff;
    z-index: 10;
    box-shadow: 0 3px 5px rgba(0,0,0,.2);
}

#header_logout ul li a {
    padding: 10px;
    display: block;
    color: #666;
    transition: all 0.3s;
}

#header_logout ul li a:hover {
    color: #444;
    background-color: #f9f9f9;
}

#toggle-currency-box {
    border-top: 3px solid #00b4ff;
    position: absolute;
    left: -20px;
    top: 25px;
    width: 100px;
    background-color: #fff;
    z-index: 10;
    box-shadow: 1px 1px 3px #888;
}

#toggle-currency-box ul li {
    border-bottom: 1px solid #dadada;
}

#toggle-currency-box ul li:last-child {
    border-bottom: 0;
}

#toggle-currency-box ul li a {
    padding: 7px 15px;
    display: block;
    color: #444;
}

#toggle-currency-box ul li a:hover {
    color: #fff;
    background-color: #2cb8e2;
}

.header-service-btn {
    margin-top: 12px;
    padding: 10px 25px;
    display: inline-block;
    background-color: #ff6433;
    font-size: 16px;
    font-weight: 700;
    color: white;
    text-align: center;
    border-radius: 3px;
    transition: all 0.2s;
}

.header-service-btn:hover {
    background-color: #b63b00;
    color: white;
}

.header-phone {
    margin-left: 15px;
    padding: 10px 15px 11px;
    line-height: 20px;
    background-color: #ec5300;
    color: #fff;
    display: table-cell;
    height: 100%;
    float: right;
    text-align: center;
}

.header-phone a {
    display: none;
}

.header-phone span {
    font-size: 24px;
    color: #fff;
}

.header-phone a:hover {
    color: #fff;
}

nav span.menu-new-tag {
    position: absolute;
    left: 70px;
    top: -15px;
    display: block;
    background: #ec5300;
    font-weight: bolder;
    border-radius: 5px;
    color: white;
    padding: 3px 4px 2px;
    font-size: 8px;
}
span.plus-symb {
    font-weight: bolder;
    font-family: Arial, sans-serif;
}

.covid19-alert {
    background-color: #f1f1f1;
    border-bottom: 1px solid #dcdcdc;
}

.covid19-alert-inner {
    margin: 0 auto;
    padding: 12px 0;
    width: 100%;
    max-width: 1230px;
    font-size: 13px;
    line-height: 15px;
    text-align: center;
    display: flex;
    justify-content: center;
}

.covid19-alert-inner .fa {
    margin-right: 3px;
    color: #555;
}

.covid19-alert-inner a {
    font-weight: 600;
    color: #1197bf;
    text-decoration: underline;
}

.covid19-alert-inner a:hover {
    color: #0d7391;
}



/* Hide */
.sidenav {
    display: none;
}




/* ukraine aid banner */

.ukraine-aid-banner {
    display: none;
}

body.home .ukraine-aid-banner {
    padding: 10px 15px;
    background-color: #005BBB;
    color: white;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.ukraine-aid-banner-icon {
    padding-right: 7px;
    flex: 0 0 auto;
}

.ukraine-aid-banner-icon img {
    display: block;
}

.ukraine-aid-banner-text {
    flex: 0 1 auto;
}

.ukraine-aid-banner-text a {
    color: #FFE877;
}

@media  (max-width: 650px) {

    .ukraine-aid-banner {
        margin-bottom: 20px;
    }

    .ukraine-aid-banner-text {
        font-size: 13px;
        line-height: 18px;
        display: flex;
        flex-direction: column;
    }

}






/* Flighthub anniversary banner */

.anniversary-banner {
    padding: 10px 15px;
    /*background-color: #272727;*/
    color: white;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    background: linear-gradient(-45deg, #000, #000, #2d3f46, #000);
    background-size: 200% 200%;
}

.anniversary-title {
    padding: 0 15px;
    flex: 0 1 auto;
    font-size: 24px;
    font-weight: 600;
    color: #FEBE1D;
    text-transform: uppercase;
}

.anniversary-text {
    padding: 0 15px;
    flex: 0 1 auto;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
}

.anniversary-code {
    padding: 10px 5px 10px 15px;
    flex: 0 1 auto;
    color: #2DB9E3;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 0.3em;
    border: 2px dashed #2DB9E3;
    text-transform: uppercase;
}

.anniversary-off {
    color: #FEBE1D;
}


@media  (max-width: 1075px) {

    .anniversary-title {
        padding: 0 10px;
        font-size: 18px;
    }

    .anniversary-text {
        padding: 0 10px;
        font-size: 14px;
    }

    .anniversary-code {
        padding: 5px 5px 5px 15px;
        font-size: 16px;
    }

}


@media  (max-width: 890px) {

    .anniversary-title {
        padding: 0 5px;
        font-size: 15px;
    }

    .anniversary-text {
        padding: 0 5px;
        font-size: 12px;
    }

    .anniversary-code {
        padding: 5px 5px 5px 15px;
        font-size: 12px;
    }

}









/* ==== Black Friday ==== */
.black-friday-banner {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000000;
    /* background-image: url('https://www.flighthub.com/images/summer-sale-desktop-FH.jpg'); */
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 45px;
    /*padding: 5px 10px;*/
    text-align: center;
    font-family: 'Raleway', sans-serif;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    color: #FFF;
    margin: 0 auto;
    margin-top: -32px;
    -moz-font-feature-settings:"lnum" 1;
    -moz-font-feature-settings:"lnum=1";
    -ms-font-feature-settings:"lnum" 1;
    -o-font-feature-settings:"lnum" 1;
    -webkit-font-feature-settings:"lnum" 1;
    font-feature-settings:"lnum" 1;
}
.black-friday-banner span span{
    color: #febe1d;
    font-weight: 900;
}
.banner-green {
    color: #27CC41;
}
.banner-white {
    color: #ffffff;
}
.black-friday-img-head {
    width: 250px;
}
.black-friday-banner .fa-tags {
    color: #ffc932;
    font-size: 16px;
    margin-right: 5px;
}
.black-friday-banner #countdown {
    color: #FFF;
    width: 205px;
    padding: 5px 10px !important;
    text-transform: lowercase;
    margin: 0 14px;
    background: #2CB8E2;
    border-radius: 100px;
    font-size: 16px !important;
    font-weight: bolder;
}
.black-friday-banner .arrow-black-left {
    width: 0;
    height: 0;
    border-top: 19px solid transparent;
    border-left: 19px solid #000;
    border-bottom: 19px solid transparent;
    margin-right: -33px;
    z-index: 999;
    margin-left: 12px;
}
.black-friday-banner .arrow-yellow-right {
    width: 0;
    height: 0;
    border-top: 19px solid transparent;
    border-left: 19px solid #03d2ec;
    border-bottom: 19px solid transparent;
    margin-left: -14px;
    margin-right: 12px;
}

@media only screen and (max-width: 780px) {
    .black-friday-banner {
        font-size: 13px;
        flex-wrap: wrap;
        padding: 8px;
    }
    .black-friday-banner #countdown {
        margin: 0 8px;
        background: transparent;
        color: #ffc932;
        width: auto;
        padding: 0;
    }
    .black-friday-banner .arrow-black-left,
    .black-friday-banner .arrow-yellow-right{
        display: none;
    }
}

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


@-webkit-keyframes highlightHeaderUser {

    0% {
        background: #30C8F6;
    }
    100% {
        background: #2cb8e2;
    }

}

@keyframes highlightHeaderUser {

    0% {
        background: #30C8F6;
    }
    100% {
        background: #2cb8e2;
    }

}

.jfly-header-user-profile.header-dropdown-updated {
    -webkit-animation: highlightHeaderUser 1s linear;
    animation: highlightHeaderUser 0.6s linear;
}

@media (max-width: 1250px) {

    .menu-responsive-hide {
        display: none;
    }

}

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

    nav.nav-container {
        display: block !important;
    }
}

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

    .logo {
        margin: 5px 0;
    }

    .subheader {
        display: none;
    }

    nav>ul>li.mobile-main-nav {
        display: block;
    }

    nav.nav-container {
        display: none;
        position: absolute;
        top: 55px;
        right: 0;
        background: white;
        width: 50%;
        z-index: 19;
        max-width: 220px;
        transition: 0.3s; /* 0.5 second transition effect to slide in the sidenav */
        box-shadow: 0 3px 5px rgba(0,0,0,.2);
    }

    nav ul {
        flex-direction: column;
        -webkit-flex-direction: column;
        align-items: flex-start;
        -webkit-align-items: flex-start;
    }

    nav ul li {
        width: 100%;
    }

    nav ul li.top-separator {
        border-top: 1px solid #ddd;
    }

    nav ul li.bottom-separator {
        border-bottom: 1px solid #ddd;
    }

    nav ul li a {
        padding: 10px 15px;
        color: #666;
        font-size: 12px;
        font-weight: 600;
        text-transform: capitalize;
    }

    nav ul li a:hover {
        color: #444;
        background-color: #f9f9f9;
    }

    nav>ul>li>a.active {
        color: #fff !important;
        background-color: #00b4ff;
    }

    #header_logout {
        display: block !important;
        position: static;
        left: auto;
        top: auto;
        width: 100%;
        background-color: transparent;
        z-index: 10;
        box-shadow: none;
    }

    #header_logout ul li a {
        padding: 10px 15px;
        color: #666;
        font-size: 14px;
        font-weight: 800;
    }

    .mobile-nav-button {
        display: flex;
        display: -webkit-flex;
        flex: 0 1 auto;
        -webkit-flex: 0 1 auto;
    }

    .mobile-nav-button a {
        padding: 2px 5px 0;
        display: block;
        color: #999;
        font-size: 22px;
    }

    nav.slide-trigger ul {
        flex-direction: column;
        -webkit-flex-direction: column;
        align-items: flex-start;
        -webkit-align-items: flex-start;
    }

    nav.slide-trigger ul li {
        width: 100%;
    }

    nav.slide-trigger ul li a {
        color: #666;
    }

    nav>ul>li>a.header-signin {
        padding: 10px 15px;
        color: #666;
        background-color: white;
    }

    nav>ul>li>a.header-signin:before {
        content: '';
    }

    nav>ul>li>a.header-signin:hover {
        background-color: white;
    }

}







@media (max-width: 1024px) {

    .menu-responsive-hide {
        display: block;
    }

    #mobile_menu .fa {
        display: inline-block;
        margin-right: 7px;
    }

    #header_logout {
        border-top: 0 solid #00b4ff;
        position: relative;
        width: 100%;
        left: 0;
        top: 0;
    }


    #header_lang {
        border-top: 0 solid #00b4ff;
        position: relative;
        width: 100%;
        left: 0;
        top: 0;
    }

    #toggle-currency-box {
        border-top: 0 solid #00b4ff;
        position: relative;
        left: 0;
        top: 0;
        width: 100%;
    }

    #mobile_menu .fa {
        display: inline-block;
        margin-right: 7px;
    }

    .mobile-hide {
        display: none;
    }
}

.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;
}

.baggage-modal-link.disabled {
    cursor: default;
    opacity: 0.3;
}

.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 5px;
}

.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;
}

.fare-family-btn:hover {
    background: #e64c34;
    border-color: #e64c34;
    color: #ffffff;
}

.fare-family-btn:hover .fare-name {
    color: inherit;
}

.fare-family-item .fare-family-btn:after {
    content: "\f054";
    position: absolute;
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    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: 120% !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;
    }

    .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;
}

.sup-tags {
    font-size: xx-small;
    vertical-align: super;
}

.loader {
    border: 6px solid #ffffff; /* Light grey */
    border-top: 6px solid #EA531D; /* Blue */
    border-radius: 50%;
    animation: spin 2s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* 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: 12px 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;
}

.filtering-label-inner .reset {
    font-size: 12px;
    color: #0C6AA0;
    cursor: pointer;
}

.filtering-label-inner .reset:hover {
    text-decoration: underline;
}

.filtering-label-inner label {
    font-size: 11px;
    font-weight: 700;
    color: #333;
    text-transform: uppercase;
    font-family: Lato, sans-serif;
}

.layover-ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.fhub-matrix-btn {
    margin: 0 8px;
    padding: 5px 14px;
    border-radius: 3px;
    background-color: lightblue;
}

.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;
}

.original-results-layout .airline-matrix.loading {
    background: #f9b76b;
    padding: 10px;
    border: 1px solid;
    border-bottom: 3px solid;
    border-color: #f9b76b;
}

.results-tab-content-wrap:not(.airline-matrix-container),
.airline-matrix {
    background: #EFF5FF;
    padding: 15px;
    margin: 0 0 5px 0;
    border: 1px solid;
}

.filters-inline-checkbox {
    text-align: left !important;
}

.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%;
}

.matrix-btn {
    color: black;
}

.matrix-btn:hover {
    color: #006699;
}

.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: black;
}

.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: #ff5200;
}

.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 .loader {
    font-size: 4px;
}

.controls {
    padding-bottom: 8px;
    overflow: hidden;
    padding-top: 3px;
}

.controls .column {
    vertical-align: middle;
}

.controls h3 {
    display: inline-block;
    vertical-align: middle;
    font-weight: 700;
    font-size: 14px;
    color: #ff5200;
    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;
    color: #FFFFFF;
    cursor: pointer;
    font-size: 9px;
    border-radius: 2px;
}

.original-results-layout .matrix-nav .matrix-btn:not(.disabled):hover {
    background: #ff5200;
}

.matrix-nav .matrix-btn.disabled {
    cursor: default;
    opacity: 0.5;
}

.matrix-disclaimer {
    font-size: 11px;
    color: #ff5200;
    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
.loader {
    border: 4px solid #ffffff; /* Light grey */
    border-top: 4px solid #EA531D; /* Blue */
    border-radius: 50%;
    width: 18px;
    height: 18px;
    animation: spin 2s linear infinite;
}


.airline-matrix .spinner-label {
    text-align: center;
    font-weight: 600;
    color: #f9b76b;
}

.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: 1025px) {

    .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 .loader {
        font-size: 4px;
        margin: 0;
    }

    .airline-matrix .spinner-label {
        font-size: 12px;
    }

    .filter-your-results {
        display: none;
    }

    #left-filters {
        display: none;
    }

    .filters-title {
        margin-bottom: 4px !important;
    }

    .filters-inline-checkbox {
        margin-left: 0px !important;
        text-align: left;
    }

}




@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: #f9b76b;
        padding: 10px;
        border: 1px solid;
        border-bottom: 3px solid;
        border-color: #f9b76b;
    }

    .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;
    }
}
    /*END OF TESTING AIRLINE MATRIX CSS*/

.inner-filter-spinner-wrap {
    background: #F6F6F6;
    z-index: 10;
    padding: 90px 20px 90px 20px;
    text-align: center;
    font-weight: 700;
    color: #666;
}

.inner-filter-spinner-wrap .loader {
    font-size: 4px;
}

.inner-filter-spinner-wrap span {
    margin-bottom: 20px;
    display: block;
}

.filters-title {
    font-size: 16px;
    font-weight: 700;
    color: #444;
    margin-top: 15px;
    margin-bottom: -19px;
    text-align: center;
    text-transform: uppercase;
    line-height: 1.2;
}

.flight-times-destination {
    text-align: center;
}

.filters-section {
    text-align: center;
}

.flight-times-hours {
    margin-bottom: 5px;
    text-align: center;
}

.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: 1px;
}

.vue-slider-process {
    position: absolute;
    background: #ff5200;
    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;
}
/* search - compact */

.top-search-bar {
    margin: 0 auto;
    width: 100%;
    display: table;
    position: relative;
}

.top-search-bar input{
    margin: 0;
    padding: 9px 7px;
    font-size: 12px;
    color: #555;
    width: 100%;
    border: 1px solid #cdcdcd;
    border-radius: 2px;
}

.compact-form-left{
    float: left;
    display: table;
    width: 75%;
}

.compact-form-right{
    float: left;
    display: table;
    width: 25%;
}

.search-compact-from{
    display: table-cell;
    width: 34%;
}

.search-compact-to{
    padding-right: 15px;
    display: table-cell;
    width: 34%;
}

.search-compact-date-from{
    display: table-cell;
    width: 12%;
}

.search-compact-date-to{
    display: table-cell;
    width: 12%;
}

.form-arrow {
    display: table-cell;
    color: #555;
    width: 4%;
    text-align: center;
    vertical-align: middle;
}

.more-options{
    display: table-cell;
    width: 45%;
    vertical-align: middle;
    text-align: center;
}

.compact-search-btn{
    display: table-cell;
    width: 55%;
}

.compact-search-btn a {
    padding: 9px 10px;
    display: block;
    font: 700 11px arial, sans-serif;
    color: #fff;
    background: #0074a4;
    border: 1px solid #0074a4;
    cursor: pointer;
    border-radius: 2px;
    text-align: center;
}

.compact-search-btn a:hover {
    background: #004765;
}

.calendar-icon{
    background: url("https://www.flighthub.com/images/icon-calendar.png") no-repeat right #fff !important;
}

.line-height-input {
    line-height: 0 !important;
}


/* search compact hotels */

.compact-form-hotel-left{
    float: left;
    width: 85%;
}

.compact-form-hotel-right{
    float: left;
    width: 15%;
    text-align: right;
}

html[lang="fr"] .compact-form-hotel-left {
    width: 80%;
}

html[lang="fr"] .compact-form-hotel-right {
    width: 20%;
}

.compact-form-hotel-right a{
    padding: 5px 0;
    display: block;
    font: 700 12px arial, sans-serif;
    color: #fff;
    background: #ff712d;
    background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
    background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff712d', endColorstr='#ff5200',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #ff5200;
    cursor: pointer;
}
.search-number-rooms, .add-edit-rooms{
    float: left;
    padding: 5px 2% 0;
}




/* search form results modal */

.search-modal-trips{
    margin-bottom: 10px;
    width: 100%;
}

.search-modal-segment-wrap{
    margin-bottom: 10px;
    text-align: left;
}

.search-modal-segment-wrap input{
    margin: 0;
    padding: 12px 2%;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
    width: 100%;
    -webkit-appearance: none;
}

.search-modal-segment-wrap input:focus{
    border: 1px solid #999;
}

.search-modal-segment-left{
    margin-right: 2%;
    float: left;
    width: 68%;
    position: relative;
}

.search-modal-segment-right{
    float: left;
    width: 30%;
}

.search-modal-selects{
    text-align: left;
}

.search-modal-selects-left{
    margin-right: 2%;
    float: left;
    width: 49%;
}

.search-modal-selects-right{
    float: left;
    width: 49%;
    text-align: center;
}

.search-modal-options{
    margin: 10px auto 0;
    width: 70%;
}

.search-modal-options-left{
    float: left;
    width: 50%;
    text-align: center;
}

.search-modal-options-right{
    float: left;
    width: 50%;
    text-align: center;
}

.checkout-wrap {
    margin: 0 auto;
    background: #e1e1e1;
    width: 980px;
    overflow: hidden;
    height: 1px;
}

.input-text-box {
    padding: 9px 2%;
    margin: 0;
    font-size: 12px;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
    width: 100%;
}

.input-text-box:focus {
    border: 1px solid #999;
}

.input-text-box-destination {
    padding: 8px;
    margin: 0;
    font-size: 12px;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
    width: 100%;
    -webkit-appearance: none;
}

.input-text-box-destination:focus {
    border: 1px solid #999;
}

.input-text-box-faq {
    padding: 8px;
    margin: 0;
    font-size: 12px;
    border: 1px solid #cfcfcf;
    width: 540px;
}

.input-text-box-home {
    padding: 8px;
    margin: 0;
    font-size: 12px;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
}

.input-text-box-home:focus {
    border: 1px solid #999;
}

.input-calendar-box-home {
    margin: 0;
    padding: 8px;
    font-size: 12px;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
    background: url("https://www.flighthub.com/images/icon-calendar.png") no-repeat right #fff !important;
}

.input-calendar-box-home:focus {
    border: 1px solid #999;
}

.input-calendar-box {
    background: url("https://www.flighthub.com/images/icon-calendar.png") no-repeat right #fff !important;
}

a.form-drop-down {
    font-size: 12px;
    padding: 7px 8px 6px 8px;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
    background: #fff;
}

.container-content {
    margin: 20px auto 40px;
    padding: 0 0 50px;
    width: 980px;
}

.container-results-hotels {
    margin: 20px auto 40px;
    padding: 0 0 5px;
    width: 980px;
    position: relative;
}

.input-select {
    font-size: 12px;
    padding: 4px;
    border: 1px solid #fff;
    border-radius: 3px;
}

.field-wrap {
    margin-bottom: 15px;
}

.field-wrap-short .select-wrapper .select-first-text {
    padding: 2px 23px 2px 7px !important;
    font-size: 11px;
}

.field-wrap-nomargin {
    margin: 0;
}

.field-wrap-sorting {
    margin: 0;
}

.field-wrap-sorting .select-wrapper {
    border: 1px solid #d0d0d0;
    color: #006699;
    text-align: left;
    border-radius: 0;
    box-shadow: inset 1px -1px 0 #fff;
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f2f2f2));
    background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
    background: -ms-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
    background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 );
}

.field-wrap-float {
    margin-right: 10px;
    float: left;
}

.select-first-text {
    padding: 6px 23px 6px 13px;
    font-size: 12px;
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    -ms-text-overflow: ellipsis;
    overflow: hidden;
}

.search-hotels-wrap .select-first-text{
    padding: 3px 23px 3px 13px;
}

.search-cruises-wrap .select-first-text{
    padding: 3px 23px 3px 13px;
}

.select-wrapper {
    color: #333;
    border: 1px solid #d1d1d1;
    display: inline-block;
    position: relative;
    text-decoration: none;
    outline: 0;
    overflow: hidden;
    width: 100%;
    border-radius: 2px;
    background: #f6f6f6;
}

.select-wrapper:hover > span {
    text-decoration: none;
}

.select-down-arrow {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -8px;
    width: 16px;
    height: 16px;
    background-image: url("https://www.flighthub.com/images/select-arrow-down.png");
    background-repeat: no-repeat;
    background-position: 0 center;
}

.styled-select {
    opacity: 0;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    position: absolute;
    height: 100%;
    min-width: 100%;
    line-height: 100%;
    cursor: pointer;
    filter: alpha(opacity = 0);
    -webkit-appearance: none;
}

.more-flight-options {
    padding: 0 10px;
}

label.hotel-search {
    margin-right: 5px;
    padding: 5px 0;
    float: left;
    width: 110px;
    text-align: right;
    display: block;
}



/* toggle box for rooms in compact search */

.rooms-search-wrap {
    padding: 0 15px 15px;
    display: none;
    z-index: 2;
    position: absolute;
    top: 37px;
    width: 450px;
    background: #fff;
    right: -15px;
    box-shadow:0 4px 5px #888;
}
.hotel-room-guest-list-title {
    padding: 3px 0;
    border-bottom: 1px dotted #e1e1e1;
    border-top: 1px solid #e1e1e1;
}
.adult-children-section-wrap{
    padding: 8px 0 0;
}
.adult-child-rooms-wrap{
    padding: 8px 0;
}
.adult-child-rooms-left{
    float: left;
    width: 33%;
}
.adult-child-rooms-right{
    float: left;
    width: 33%;
}
.children-rooms-wrap{
    padding: 0;
}
.child_age_element{
    float: left;
    width: 33%;
}
.hotel-field-wrap {
    margin-bottom: 3px;
}

.hotel-field-left {
    padding: 4px 5px 0 0;
    float: left;
    font-size: 11px;
    width: 80px;
    text-align: right;
}

.hotel-field-right {
    float: left;
    width: 50px;
}

.hotel-children-wrap {
    overflow: hidden;
}

.hotel-adult-wrap-left,
.hotel-children-wrap-left {
    float: left;
    display: table;
    text-align: center;
}

.hotel-adult-wrap-left {
    width: 49%;
    margin-right: 1%;
}

.hotel-children-wrap-left {
    width: 50%;
}

.hotel-children-left,
.hotel-adult-left,
.hotel-children-right,
.hotel-adult-right {
    display: inline-block;
    vertical-align: middle;
}

.hotel-adult-right .select-wrapper,
.hotel-field-wrap .select-wrapper,
.room_element .select-wrapper {
    display: block;
}

.hotel-adult-left,
.hotel-children-left {
    padding-right: 10px;
}


.hotel-adult-right .field-wrap,
.hotel-children-right .field-wrap,
.hotel-adult-left .field-wrap {
    margin: 0;
}

.room-number {
    margin-bottom: 10px;
    padding-bottom: 2px;
    border-bottom: 1px solid #e1e1e1;
}

.search-input-text-wrap {
    position: relative
}

select#seat-class-dropdown {
    width: 100%;
    padding: 9px 8px 8px;
    background-color: #f9f9f9;
    border: 1px solid #dadada;
    border-radius: 2px;
    color: #555;
    height: 34px;
    -webkit-appearance: none;
}

.erase-input-text {
    position: absolute;
    right: 2px;
    top: 0;
    z-index: 18;
    cursor: pointer;
    font-size: 0;
    line-height: 1;
}

.erase-input-text:after {
    margin: 5px 5px 0 0;
    padding: 4px 9px;
    content: '\f00d';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 16px;
    line-height: 21px;
    color: #fff;
    display: block;
    background: #999;
    text-align: center;
    border-radius: 50%;
}

.erase-input-text {
    display:none;
}

.seat-class-dropdown-wrap .icon {
    float: right;
    margin-top: -20px;
    margin-right: 5px;
}

.container-modal-content .site-logo,
#progress_modal .site-logo {
    margin: 10px 0;
}

.campaign-loading-modal-msg {
    font-size: 14px;
}

li.ui-menu-item {
    text-decoration: none;
    display: block;
    padding: 1em .7em !important;
    line-height: 1.5;
    zoom: 1;
    cursor: pointer;
    color: #fff;
}

li.ui-state-focus,
li.ui-menu-item:hover {
    background: #00597e !important;
    border-radius: 0 !important;
    color: #fff !important;
}

/* new recent list above to search form */

.nowrap {
    white-space: nowrap;
}

.hp-recent-link {
    margin: 12px 2% 0;
    width: 96%;
}

.hp-recent-link a {
    padding: 6px 15px;
    display: block;
    text-align: center;
    color: #fff;
    background-color: #0171a1;
    border: 1px solid #0171a1;
    border-bottom: 3px solid #00354b;
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

#hp-recent-container {
    margin: 0 2% 5px;
    padding: 0;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

#hp-recent-container .hp-recent-container {
    display: block !important;
}

.recent-city-list {
    padding: 8px 10px;
    display: table-cell;
    width: 100%;
    font-size: 12px;
    line-height: 17px;
    vertical-align: middle;
}

.recent-dates-list {
    color: #777;
    font-size: 12px;
}

.recent-price-list {
    padding: 10px;
    font-size: 30px;
    color: #a2a2a2;
    display: table-cell;
    min-width: 50px;
    background-color: #f1f1f1;
    border-left: 1px solid #dadada;
    vertical-align: middle;
    text-align: center;
}

ul.hp-recent-list-side li a {
    display: table;
    font-size: 12px;
    color: #666;
    background-color: #fff;
    position: relative;
    vertical-align: middle;
    transition: background-color 0.2s, border 0.2s, color 0.2s;
}



ul.hp-recent-list-side li a:hover {
    background-color: #f1f1f1;
}

ul.hp-recent-list-side li a:hover > .recent-price-list {
    padding: 0 9px 0 11px;
    color: #35beef;
}

ul.hp-recent-list-side li {
    border-bottom: 1px solid #dadada;
}

ul.hp-recent-list-side li:last-child {
    margin: 0;
    border-bottom: 0 solid #dadada;
}


/* end new recent list above to search form */



/* home */
.clear-cookies {
    position: absolute;
    left: 10px;
    bottom: 50px;
    z-index: 10;
}
.container-hp {
    margin: 0 auto 0;
    width: 980px;
}
.home-inner-left {
    width: 480px;
    float: left;
    overflow: hidden;
}
.container-home-search {
    margin: 15px 38px 20px 0;
    padding: 15px;
    width: 425px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 2px #999;
}
.container-home-search-btn {
    margin:0 -5px 15px -5px;
}

.home-button-select-wrap {
    width: 50%;
    padding: 5px;
    float: left;
}

a.home-search-btn {
    display: table;
    font-size: 14px;
    color: #444;
    background: #ffffff;
    border: 1px solid #dcdcdc;
    width: 100%;
    height: 35px;
}

a.home-search-btn:hover {
    color: #0071a0;
    background: #fafafa;
}

.search-radio-bg {
    background: #f1f1f1;
    text-align: center;
}

.search-radio-bg,
.search-radio-right {
    display: table-cell;
    vertical-align: middle;
}

.search-radio-bg {
    width: 35px;
}

.search-radio-right {
    background: #fff;
    border-left: 1px solid #dcdcdc;
    cursor: pointer;
    padding: 0 10px;
}

.search-radio-icon,
.search-radio-text {
    display: inline-block;
    vertical-align: middle;
}

.container-home-search-recent-search {
    margin-bottom: 15px;
    overflow: hidden;
}
.recent-search-drop-down {
    padding: 5px 8px;
    color: #444;
    border: 1px solid #cfcfcf;
    border-radius: 2px;
    background: #f6f6f6;
    text-align: left;
}
.select-arrow {
    padding-top: 3px;
}

/* target ie 7 */
*+html .select-arrow {
    margin-top: -25px;
    margin-right: 5px;
}
/* end ie 7 */

.passenger-ages{
    padding-left:7px;
    color:#777;
    width:25px;
    font-size:9px;
    float:right;
}

.container-home-trip-btn {
    margin: 0 auto 10px;
    display: table;
    width: 80%;
    table-layout: fixed;
}
a.home-trip-btn-left {
    display: table-cell;
    text-align: center;
    color: #444;
}
a.home-trip-btn-middle {
    display: table-cell;
    text-align: center;
    color: #444;
}
a.home-trip-btn-right {
    display: table-cell;
    text-align: center;
    color: #444;
}
a.home-trip-btn-left.active, a.home-trip-btn-middle.active, a.home-trip-btn-right.active {
    background: #fff;
    font-weight: 700;
    color: #006699;
}
.container-home-search-from {
    padding-bottom: 15px;
    overflow: hidden;
    text-align: left;
}
.home-search-from-left {
    margin-right:2%;
    width:70%;
    float: left;
}
.home-search-from-hotel {
    float: left;
    width:100%;
}
.home-search-from-right {
    width:28%;
    float: left;
}
.hotel-search-calendar-left {
    margin-right:2%;
    float: left;
    width:49%
}
.hotel-search-calendar-right {
    float: left;
    width:49%;
}
.hotel-search-calendar-left input, .hotel-search-calendar-right input {
    width:100%;
}
.container-home-search-to {
    overflow: hidden;
    text-align: left;
}
.home-search-to-left {
    margin-right: 2%;
    width:70%;
    float: left;
}
.home-search-to-right {
    width:28%;
    float: left;
}
.container-home-search-cabin {
    margin-bottom: 10px;
    overflow: hidden;
}
.home-search-cabin-left {
    margin-right:2%;
    width: 49%;
    float: left;
}
.home-search-cabin-right {
    width: 49%;
    float: left;
}

.container-home-search-hotels {
    padding: 10px 0 5px;
    font-size: 13px;
    line-height: 12px;
    text-align: center;
}

.container-home-search-hotels span {
    color: #e85e12;
}

.container-home-search-options {
    padding: 10px 0 5px;
    overflow: hidden;
    text-align: center;
}
.container-options-expand {
    margin: 0;
    padding: 0;
    overflow: hidden;
    text-align: left;
}
.options-expand-left {
    margin-right:2%;
    width: 49%;
    float: left;
}
.options-expand-right {
    width: 49%;
    float: left;
}
.container-search-flights-btn {
    padding: 10px 0 5px;
    text-align: center;
    overflow: hidden;
}

a.orange-big-btn {
    padding: 12px 25px;
    font: 300 22px helvetica, arial, sans-serif;
    color: #fff;
    background: #ff5200;
    display:inline-block;
    cursor: pointer;
    border-radius: 2px;
}

a.orange-big-btn:hover {
    background: #d14402;
}

.orange-big-btn .fa, .button-select-fare .fa, .packages-os-select .fa, .hp-search-button .fa {
    display: none;
}

.hp-box {
    margin-bottom: 10px;
    padding: 15px;
    background: #fff;
}

.hp-box-title {
    padding: 12px 15px 10px;
    font: bold 16px arial, sans-serif;
    background: #fff;
    border-bottom: 2px solid #f0f0f0;
    overflow: hidden;
}
.hp-box-title-left {
    float: left;
    color: #444;
    font: bold 16px arial, sans-serif;
}
.hp-box-title-right {
    float: right;
}
.hp-box ul {
}
.hp-box ul li {
    padding-bottom: 10px;
}
.hp-box ul li:last-child {
    padding-bottom: 0;
}
.hotel-promo-text {
    padding: 2px 10px 2px 0;
    clear: left;
    border-top: 1px solid #e1e1e1;
    background: #fff;
    color: #619c15;
    text-align: right;
    box-shadow: inset 0 1px 7px #eee;
}
.hotel-promo-old-price {
    padding: 5px 5px 0 0;
    text-align: right;
    font-size: 11px;
    width: 63px;
    height: 39px;
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    background: transparent url("https://www.flighthub.com/images/old-hotel-price.png") top right no-repeat;
}
.container-deal-alerts {
    margin: 0 auto;
    padding: 15px;
    background: #fff;
    overflow: hidden;
    font-size: 22px;
    line-height: 22px;
}
.deal-alerts-text {
    line-height: 26px;
}
.deal-alerts-form {
    margin-top: 5px;
    padding: 10px;
    background: #f1f1f1;
    border: 1px solid #d1d1d1;
}
.home-inner-right {
    float: left;
    width: 500px;
    position: relative;
    padding: 50px 0 0 50px;
}
.container-promotions {
    padding: 15px 15px 0;
    position: relative;
    background: #fff;
}
.hp-fblike {
    margin-top:10px;
    padding: 15px 0 10px;
    border-top:1px solid #dcdcdc;
    z-index: 10000;
}
.fb_iframe_widget span, .fb_iframe_widget span iframe{
    width:420px !important;
}
.airport-suggestion-title {
    padding: 15px;
    border-bottom: 1px solid #e1e1e1;
    background: #fff;
    overflow: hidden;
    font-size: 18px;
}
.why-us-wrap {
    margin: 0;
    padding: 0;
}
ul.why-us {
}
ul.why-us li {
    padding: 3px 0;
}
.icon-luggage {
    position: absolute;
    top: -15px;
    right: 0;
}
.promotions-title {
    font: 27px arial, sans-serif;
    line-height: 26px;
}
.promotions-content {
    margin-bottom: 7px;
    padding-top: 11px;
    font-size: 12px;
    line-height: normal;
}
ul.promotions-list li {
    padding: 9px 0 8px 0;
    border-bottom: 1px solid #dcdcdc;
    overflow: hidden;
}
ul.promotions-list li:last-child {
    border-bottom: 0;
}
.promotions-price {
    font-size: 18px;
    font-weight: 400;
    float: right;
}
.promotions-link {
    float: left;
}
.promotions-valid-content {
    padding-top: 4px;
    font-size: 11px;
    color: #878787;
    text-align: right;
}
.container-recent-search {
    margin: 30px auto 20px;
    padding: 15px;
    width: 980px;
    background: #fff;
    position: relative;
}
.icon-search {
    position: absolute;
    top: -10px;
    left: -30px;
}
ul.recent-search-list {
    overflow: hidden;
}
ul.recent-search-list li {
    margin-right: 1%;
    padding: 8px 0;
    float: left;
    width: 32.5%;
    overflow: hidden;
    border: 1px solid #ddd;
}
ul.recent-search-list li:last-child {
    margin-right: 0;
    width: 33%;
}
ul.recent-search-list li:hover {
    border: 1px solid #006699;
    background: #dff4fe;
}
.recent-search-box {
    padding: 0 10px;
    float: left;
}
.recent-search-cities-box {
    float: left;
    width: 85%;
    line-height: 15px;
}
.recent-search-icon-box {
    padding: 15px 0 0;
    float: left;
    text-align: center;
    width: 15%;
}
.popular-destination-view-all {
    float: right;
}
.select-box {
    padding: 10px;
    background: #fff;
    width: 100%;
    text-align: left;
    border: 1px solid #e1e1e1;
    border-radius: 2px;
    z-index: 20;
}
.home .select-box,
.xtox-home-search .select-box {
    width: 180px;
}
ul.passenger_list {
    margin: 4px 0 5px 5px;
}
ul.passenger_list li:first-child {
    padding-top: 0;
}
ul.passenger_list li {
    padding: 5px 0;
    border-bottom: 1px dotted #e1e1e1;
    overflow: hidden;
}
ul.passenger_list li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}
.buttons-add-remove {
    margin: 15px auto 10px;
    padding-top: 0;
    overflow: hidden;
    text-align: center;
    font-size: 11px;
}
.child-age-select {
    margin-bottom: 2px;
    width: 170px;
}
.child-age-right {
    margin-left: 110px
}
.child-age-left {
    padding-left: 28px;
    padding-top: 5px;
    float: left;
}
.details-mobile-only {
    display: none;
}

/* airport suggestion */
.airport-suggestion-content {
    margin: 11px 15px 0 15px;
    overflow: hidden;
}

.airport-suggestion-warning {
    padding: 10px;
    background: #399AC1;
    color: #fff;
    text-align: Center;
    font-size: 14px;
    line-height: 1.2;
}

.airport-suggestion-warning .fa {
    margin-right: 5px;
    color: #FFCE58;
}

.airport-suggestion-page .container-booking-btn.top {
    margin: 20px 0;
}

.airport-suggestion-page h2 {
    margin: 0 0 15px 0;
    font-size: 16px;
    padding-bottom: 5px;
    border-bottom: 2px solid #e1e1e1;
    display: inline-block;
    color: #666;
}

.fares-validate-wrap {
    font-size: 0;
    max-width: 750px;
    margin: auto;
}
.segment-wrap-validate {
    display: inline-block;
    padding: 10px;
    font-size: 12px;
    width: 50%;
    vertical-align: top;
}

.segment-wrap-validate ul {
    margin-bottom: 25px;
}

.segment-wrap-validate li {
    margin: 5px 0;
    padding-left: 25px;
    position: relative;
    color: #555;
}

.segment-wrap-validate input[type="radio"] {
    position: absolute;
    left: 0;
    top: -1px;
}

.segment-wrap-validate .segment-left {
    color: #0074A4;
    font-size: 14px;
    margin-bottom: 10px;
}

.multi-seg {
    margin-top: 15px;
}

.airport-suggestion-page .container-booking-btn {
    padding: 0 15px;
}

.airport-suggestion-page a.orange-big-btn {
    font-size: 16px;
    padding: 8px 25px;
}

.airport-suggestion-page a.orange-big-btn:hover {
    color: #fff;
}

/* Home page search improvements */

.select-wrapper {
    width: 100%;
}
.input-calendar-box-home {
    width: 100%;
}
.hotel-field-wrap .select-wrapper,
.room_element .select-wrapper {
    width: 100%;
}

.alert-privacy {
    font-size: 11px;
    color: #999;
}

.wrapper-newsletter .alert-privacy-container {
    padding-top: 5px;
    margin-bottom: -15px;
}

.hp-newsletter-wrap {
    padding-top: 8px;
}

.hp-newsletter-left {
    padding-right: 1%;
    float: left;
    width: 75%;
}

.hp-newsletter-right {
    float: left;
    width: 25%;
}

.hp-newsletter-left input {
    width: 100%;
    border-radius: 0;
}

.hp-newsletter-error {
    padding: 5px 10px;
    text-align: center;
    color: #fff;
    background-color: #ce2222;
}

.transition-alert-form .hp-newsletter-error {
    margin: 0 auto 3px;
    width: 90%;
}

.hp-newsletter-success {
    padding: 5px 10px;
    text-align: center;
    color: #fff;
    background-color: #56ad16;
}

#newsletter-subscribe-spinner {
    margin-top: 8px;
}

.modal-alert-success {
    margin: 0 auto 3px;
    padding: 10px;
    width: 90%;
    text-align: center;
    background: #84b134;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
}

.modal-alert-error {
    margin: 0 auto 3px;
    padding: 10px;
    width: 90%;
    text-align: center;
    background: #cf1a1a;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
}


/* TODO move to a separate ie file */
/* IE 8 and below background transparency */
.container-home-search,
.container-promotions,
.hp-fblike {
    background: #fff;
}
.fb_iframe_widget span,
.fb_iframe_widget span iframe {
    width: 330px !important;
    height: 28px !important;
    color: #000;
}
/* target ie 7 */
*+html .container-promotions {
    position:static;
}
*+html .container-promotions .icon-luggage {
    top: 15px;
    right: 61px;
}
*+html .buttons-add-remove .icon {
    display:inline;
}
*+html .deal-alerts-form .input-text-box {
    float: left;
    margin-right: 10px;
}
/* end IE 8 and below */



/* unsubscribe */

.unsubscribe-wrap{
    margin:50px auto 0;
    padding:25px;
    width:650px;
    background:#fff;
    border:3px solid #333;
    text-align:center;
}

.hp-disclaimer {
    margin: 0 auto;
    padding: 25px;
    font-size: 11px;
    color: #999;
    max-width: 1024px;
}

/* Language spinner */
.lang-spinner {
    margin: 0 auto;
    padding: 35px;
    display: inline-block;
    color: #fff;
    background: rgba(255,255,255,0.9);
    text-align: center;
    border-radius: 20px;
    position: absolute;
    top: 35px;
    left: 45%;
    z-index: 100000;
    box-shadow: 0 0 10px #999;
}












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

    .segment-wrap-validate {
        display: block;
        padding: 10px 0;
        width: auto;
        max-width: 360px;
        margin: auto;
    }

    .segment-wrap-validate ul {
        margin-bottom: 15px;
    }

    .airport-suggestion-page a.orange-big-btn {
        display: block;
        max-width: 360px;
        margin: auto;
        padding: 10px;
    }
    .container-home-search-from {
        padding-bottom: 0;
    }

    .recent-fa-wrap {
        display: none;
    }

}




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

    .airport-suggestion-title span {
        float: none;
        display: inline-block;
    }

}






@media(max-width: 480px) {
    .home .ui-autocomplete {
        width: 90%;
    }

    .home .ui-autocomplete .ui-menu-item a {
        overflow: hidden;
        text-overflow: ellipsis;
    }
}
/* RESULTS */
body.flight {
    margin: 0 0 50px;
}

/* price change topbar */

.topbar-banner {
    padding: 15px;
    background-color: #05537a;
    text-align: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 20;
}

a.top-close {
    position: absolute;
    top: 4px;
    right: 8px;
    font-size: 16px;
    color: #fff;
}

a.top-close:hover {
    color: #19ace0;
}

.topbar-inner {
    margin: 0 auto;
    display: table;
    width: 820px;
}

.topbar-text {
    font-size: 18px;
    color: #fff;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.topbar-text strong sup {
    font-size: 11px;
}

.topbar-text strong {
    color: #fbae17;
    font-weight: 400;
}

.topbar-text span.fa {
    font-size: 12px;
    color: #fff;
}

.nowrap-text {
    white-space: nowrap;
}

.topbar-button {
    padding-left: 20px;
    display: table-cell;
    min-width: 135px;
    vertical-align: middle;
}

.topbar-button a {
    padding: 3px 10px;
    display: block;
    color: #222;
    background-color: #fbae17;
    border-radius: 2px;
    box-shadow: 0 2px 0 #222;
    transition: background-color 0.2s;
}

.topbar-button a:hover {
    background-color: #f9c153;
}



/* price change topbar yellow V2 */

.topbar-banner-yellow {
    padding: 20px;
    background-color: #ffda94;
    text-align: center;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 20;
}

.topbar-banner-yellow a.top-close {
    position: absolute;
    top: 4px;
    right: 8px;
    color: #333;
}

.topbar-banner-yellow a.top-close .fa {
    color: #ff5200;
    font-size: 13px;
}

.topbar-banner-yellow .topbar-inner {
    margin: 0 auto;
    display: table;
    width: 950px;
}

.topbar-banner-yellow .topbar-text {
    font-size: 22px;
    color: #333;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.topbar-banner-yellow .topbar-text strong sup {
    font-size: 11px;
}

.topbar-banner-yellow .topbar-text strong {
    color: #ff5200;
    font-weight: 700;
}

.topbar-banner-yellow .topbar-text span.fa {
    font-size: 12px;
    color: #e59600;
}

.topbar-banner-yellow .nowrap-text {
    white-space: nowrap;
}

.topbar-banner-yellow .topbar-button {
    padding-left: 20px;
    display: table-cell;
    min-width: 145px;
    vertical-align: middle;
}

.topbar-banner-yellow .topbar-button a {
    padding: 6px 12px;
    display: block;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    background-color: #ff5200;
    border-radius: 2px;
    box-shadow: 0 2px 0 #922f00;
}

.topbar-banner-yellow .topbar-button a:hover {
    background-color: #c53f00;
    color: #fff;
}

.topbar-banner-yellow sup {
    vertical-align: text-top;
}


/* discover styles */
#discover_airports {
    position: relative;
    opacity: 0;
}

@keyframes discoverSlider {
    0% {opacity: 0; bottom: -45px}
    100% {opacity: 1; bottom: 0px}
}

#discover_airports.slide-up {
    animation-name: discoverSlider;
    animation-duration: .45s;
    animation-timing-function: ease;
    animation-fill-mode: forwards;
}

div#bottomAlert > .list .item {
    margin-left: auto;
    right: 10px;
}

#discover_airports .item {
    color: #00711b;
    background: #d5f3df;
    border: 1px solid #61BF84;
    margin-bottom: 10px;
    opacity: 1;
    visibility: visible;
    width: 420px;
    right: 10px;

}

#discover_airports .icon-wrap {
    border-right: 1px solid #60bf84;
}

#discover_airports .icon-wrap .fa {
    color: #00711b;
}

#discover_airports .discover-option-wrap {
    display: flex;
}

#discover_airports .discover-option {
    display: inline-block;
    border: solid 1px;
    border-radius: 2px;
    margin-top: 10px;
    width: 50%;
    color: #00711b;
    position: relative;
}

#discover_airports .discover-option:first-of-type {
    margin-right: 5px;
}

#discover_airports .discover-option h5 {
    font-weight: bold;
    margin-bottom: 3px;
}

#discover_airports .discover-option h5,
#discover_airports .discover-option p {
    color: #00711b;
    font-size: 12px;
    display: inline-block;
    transition: .2s;

}

#discover_airports .discover-option a {
    display: block;
    height: 100%;
    position: relative;
}

#discover_airports .btn-close {
    color: #327a0c;
}

#discover_airports .discover-option .discover-icon-wrapper {
    display: inline-block;
    margin-left: 3px;
}

#discover_airports .dollar-circle {
    background: #00711b;
    height: 22px;
    width: 22px;
    top: 28px;
    position: relative;
    border-radius: 50%;
    left: 4px;
}

#discover_airports .icon-wrap .fa {
    color: #d5f3df;
    position: absolute;
    left: 13px;
    top: 10px;
}

#discover_airports .discover-option i.fa {
    font-size: 14px;
    color: #00711b;
}

#discover_airports .discover-option .discover-option-content {
    display: inline-block;
    vertical-align: middle;
    margin-right: 0px;
    border-right: solid 1px;
    padding: 5px 0px 5px 3px;
    width: 86%;
    border-right-color: #327a0c;
    height: 100%;
    position: relative;
    left: 0;
}

#discover_airports .discover-option:hover {
    background: #9DE0B6;
    transition: .15s;
}

#discover_airports .discover-option:hover h5 {
    margin-left: 10px;
}

#discover_airports li {
    margin: 0 10px -65px 0;
    padding: 10px 35px;
    position: relative;
    display: block;
    width: 325px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
    color: #0074a4;
    background: #bdecff;
    border: 1px solid #92cfe8;
    /* opacity: 0; */
    /* visibility: hidden; */
    border-radius: 2px;
    -moz-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    transition: all 0.2s ease;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

#discover_airports .lowest-price,
#discover_airports .region {
    font-weight: bold;
}

/* price change banner */

.price-change-banner-wrap {
    margin: 0 0 10px;
    text-align: center;
    background-color: #fff;
    position: relative;
}

.price-change-top {
    padding: 12px 15px;
    background-color: #42a400;
    color: #fff;
    font-size: 20px;
    line-height: 26px;
    text-align: center;
    border-bottom: 2px solid #2a6900;
}

.price-change-top span {
    font-size: 24px;
    font-weight: 700;
}

.price-change-bottom {
    padding: 12px 15px;
    color: #646464;
    font-size: 15px;
    line-height: 25px;
    background-color: #f9f9f9;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.price-change-bottom .strike {
    text-decoration: line-through;
    color: #696969;
    font-size: 20px;
}
.price-change-bottom .no-strike {
    color: #696969;
    font-size: 20px;
}

.price-change-bottom .newprice {
    font-size: 20px;
    color: #42a400;
    font-weight: 700;
}

.price-change-bottom .fa-long-arrow-right {
    font-size: 20px;
}

.email-campaign-banner img {

    max-width: 100%;
    height: auto;

}





/* results filter side-bar left */

.container-airfare-mobile, .container-airfare-mobile-b, .mobile-alert-filter-wrap {
    display: none;
}

.filter-sidebar {
    color: #777;
    float: left;
}

.container-filter {
    margin-bottom: 25px;
    font-family: Arial, Helvetica, sans-serif;
}

.filter-title-wrap {
    overflow: hidden;
}

.filter-title {
    padding-top: 8px;
    font: bold 16px arial, sans-serif;
    color: #43606c;
}

.filter-title-left {
    padding-bottom: 2px;
    font: bold 14px arial, sans-serif;
    color: #43606c;
    float: left;
}

.filter-title-right {
    padding-top: 4px;
    font: normal 11px arial, sans-serif;
    color: #43606c;
    float: right;
}

.filter-content {
    padding: 5px 0;
}

.filter-content ul li {
    overflow: hidden;
}

input[type="checkbox"] {
    margin: 0 3px 1px 0;
    padding: 0;
}

.filter-title-right a:hover {
    color: #006699;
}

.filters-inline-checkbox {
    width: 65%;
    float: left;
}

.filters-inline-checkbox-airports {
    width: 100%;
    float: left;
}

.filters-inline-only {
    width: 20%;
    float: left;
    text-align: center;
}

.filters-inline-price {
    width: 15%;
    float: left;
    text-align: right;
}

.filters-inline-airline {
    width: 20%;
    float: left;
}

.flights-fine-print-desktop {
    padding-top: 5px;
    display: table;
    width: 100%;
    color: #999;
}

.flights-fine-print-desktop a {
    margin-right: 10px;
    text-decoration: underline;
    color: #999;
}

.flights-fine-print-mobile {
    display: none;
}

.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: 10px 0 !important;
    text-align: left;
    width: 75px;
}

.sb-field-right input {
    margin: 0;
    padding: 10px 0 !important;
    text-align: right;
    width: 75px;
}

input.sb-field {
    font-size: 11px;
    font-weight: 700;
    border: 0 solid #bbb;
}

input.sb-field[disabled='disabled'] {
    background: transparent;
}

.filter-info-icon {
    padding-top: 3px;
    float: right;
}

.airlines-filter li .filters-inline-only {
    visibility: hidden
}

.airlines-filter li:hover .filters-inline-only,
.airlines-filter li:hover .only-carrier {
    visibility: visible
}

.stops-filter li .only-stops {
    visibility: hidden
}

.stops-filter li:hover .only-stops {
    visibility: visible
}

.layover_airports li .only-layover-airport {
    visibility: hidden
}

.layover_airports li:hover .only-layover-airport {
    visibility: visible
}

.origin_airports li .only-origin-airport {
    visibility: hidden
}

.origin_airports li:hover .only-origin-airport {
    visibility: visible
}

.destination_airports li .only-destination-airport {
    visibility: hidden
}

.destination_airports li:hover .only-destination-airport {
    visibility: visible
}

ul.sidebar-filter-list li {
    margin-bottom: 3px;
}

/* airline pages */
.airline-wrap {
    margin: -398px auto;
    width: 980px;
    overflow: hidden;
}

.airline-right {
    padding: 20px 2.04081632653061%;
    background: #fff;
    margin-top: 271px;
    width: 95.91836734693878%;
}

.airline-master-title {
    text-align: center;
    color: #fff;
    font-size: 48px;
    padding: 10px 0 14px;
    width: 100%;
}

.airline-push {
    height: 398px;
}


/* variation b */
#sidebar-fare-sub {
    margin-bottom: 15px;
    padding: 15px;
    text-align: center;
    background: #f9f9f9;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}

a#airfare-alert-btn-modal {
    display: inline-block;
    width: auto;
    margin: 5px auto;
    font-weight: normal;
}

.fare-alert-desc {
    margin: 5px 0 10px;
    padding: 5px 0;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    line-height: 15px;
}

#sidebar-alert-msg {
    padding: 15px 10px 0;
    height: 65px;
    text-align: center;
    background: #84b134;
    color: #fff;
}

a.button-alert-green {
    padding: 7px 14px;
    font: normal 12px arial, sans-serif;
    color: #fff;
    cursor: pointer;
    font-size: 13px;
    display: block;
    background: #4faa2b;
    text-align: center;
    margin: 5px 0;
    position: relative;
}
a.button-alert-green:hover {
    background: #328e0d;
}


/* results main container */

.packages-container {
    padding: 10px 25px 20px;
    background: #fff;
}

.codeshares {
    margin-left: 170px;
    font-size: 11px;
    color: #999;
}

.ad-wrap {
    text-align: center;
}

.ad-wrap-sponsored {
    text-align: center;
    border: 1px solid #0072a3;
    background: #fff;
}

.ad-wrap-footer {
    margin: 0 auto;
    text-align: center;
    width: 629px;
}

.ad-wrap-footer-inner {
    margin: 0 0 25px;
    padding: 10px;
    border: 1px solid #0072a3;
    background: #fff;
    overflow: hidden;
}

.ad-left-footer {
    float: left;
    width: 300px;
}

.ad-right-footer {
    margin-left: 5px;
    float: left;
    width: 300px;
}

.ad-title {
    margin-bottom: 5px;
    padding: 6px;
    background: #0072a3;
    color: #fff;
    text-align: left;
}

.container-results-nav {
    height: 50px;
}

a.results-filter-nav, a.results-filter-nav-right {
    margin-right: 1%;
    padding: 4px 0;
    width: 24%;
    text-align: center;
    float: left;
    border: 1px solid #d0d0d0;
    box-shadow: inset 1px -1px 0 #fff;
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f2f2f2));
    background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
    background: -ms-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
    background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 );
    cursor: pointer;
}

a.results-filter-nav-right {
    margin-right: 0;
    width: 25%;
}

a.results-filter-nav:hover, a.results-filter-nav-right:hover {
    border: 1px solid #9cc770;
    box-shadow: 0 0 4px #97f03c;
}

a.results-filter-nav.active, a.results-filter-nav-right:hover {
    border: 1px solid #9cc770;
    box-shadow: 0 0 4px #97f03c;
}

.sorting-price {
    font-size: 16px;
    color: #5da606;
}

.matrix-titles-left {
    width: 72px;
    overflow: hidden;
    float: left;
    border: 1px solid #e1e1e1;
    border-right: 0;
    border-bottom: 0;
    box-shadow: 1px 0 5px #ccc;
    background: none repeat scroll 0 0 #f9f9f9;
}

.matrix-results-right {
    border-top: 1px solid #e1e1e1;
    float: left;
    width: 504px;
    height: 136px;
    overflow: hidden;
}

.matrix-column {
    margin: 0;
    padding: 0;
    float: left;
}

.matrix-top-blank {
    width: 71px;
    height: 71px;
    border-bottom: 1px solid #e1e1e1;
    border-right: 1px solid #e1e1e1;
}

.matrix-airline-logo {
    margin-bottom: 3px;
}

.matrix-lower {
    padding: 1px 6px;
    font-size: 11px;
    width: 59px;
    border-bottom: 1px solid #e1e1e1;
    border-right: 1px solid #e1e1e1;
    text-align: center;
}

.matrix-top-airlines {
    padding: 10px;
    width: 51px;
    height: 51px;
    border-bottom: 1px solid #e1e1e1;
    border-right: 1px solid #e1e1e1;
    font-size: 11px;
    text-align: center;
    line-height: 12px;
}

.container-matrix {
    margin-bottom: 15px;
    width: 765px;
    overflow-x: scroll;
    background: #fff;
    position: relative;
}

#fares-search-flexible {
    width: 100%;
}

table.flexible-title-table {
    margin: 0;
    padding: 0;
    display: table;
    width: 100%;
    height: 30px;
}

table.flexible-title-table th {
    padding: 5px 0;
    background: #fff;
    display: table-cell;
    text-align: left;
    font-weight: 400;
}

table.flexible-date-table {
    margin: 0 0 10px;
    padding: 0;
    display: table;
    width: 100%;
    background: #f4f4f4;
}

table.flexible-date-table td {
    padding: 7px 5px;
    border-bottom: 1px solid #fff;
    display: table-cell;
    text-align: left;
}

table.flexible-date-table td:first-child {
    padding: 7px 5px;
    background: #f9f9f9;
}

table.flexible-date-table th {
    padding: 7px 5px;
    font-weight: 400;
    border-bottom: 1px solid #fff;
    background: #f9f9f9;
}

th.flexible-date-bg-dark-grey, td.flexible-date-bg-dark-grey {
    background: #c9eeff !important;
}

.flexible-date-bg-blue:hover {
    font-weight: 700;
}

.flexible-date-bg-red {
    background: #fff1f2;
}

.flexible-date-bg-red:hover {
    font-weight: 700;
}

.flexible-date-bg-green {
    background: #f6feef;
}

.flexible-date-bg-green:hover {
    font-weight: 700;
}

.flexible-date-bg-blue a {
    color: #069;
}

.flexible-date-bg-red a {
    color: #d82626;
}

.flexible-date-bg-green a {
    color: #449304;
}

.flexible-date-bg-blue a:hover {
    color: #069;
}

.flexible-date-bg-red a:hover {
    color: #d82626;
}

.flexible-date-bg-green a:hover {
    color: #449304;
}

.flex-package-title{
    margin-bottom:1px;
    padding:5px 10px;
    display:inline-block;
    background-color: #fefcea;
}


.packages-os-price .price-alert {
    display: inline-block;
}

.price-alert-wrap {
    display: table;
    height: 18px;
}

.price-alert-icon {
    padding: 1px 3px;
    display: table-cell;
    min-width: 25px;
    color: #fff;
    font-size: 12px;
    background-color: #3a7500;
    border-top-left-radius: 2px;
    border-bottom-left-radius: 2px;
    vertical-align: middle;
    text-align: center;
}

.price-alert-text {
    padding: 1px 6px;
    display: table-cell;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    width: 100%;
    background-color: #52a600;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    vertical-align: middle;
}

.price-alert .tooltip {
    background-color: #222 !important;
    box-shadow: 0 0 #000 !important;
    border: 0 !important;
    color: #fff !important;
    opacity: 0.9 !important;
}

.price-alert .trigger {
    cursor: default;
}

.tooltip-inner-wrap {
    display: table;
    width: 100%;
}

.tooltip-inner-left {
    display: table-cell;
    min-width: 50px;
    text-align: center;
    vertical-align: middle;
}

.tooltip-inner-left .fa {
    font-size: 22px !important;
    color: #a6dc71;
}

.tooltip-inner-right {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}




.flex-tag-collapsed-right {
    padding-right: 5px;
    min-width: 160px;
    display: table-cell;
    vertical-align: middle;
}

.flex-tag-collapsed-right a {
    display: table;
    width: 100%;
    padding: 5px;
    background-color: #31bcf6;
    color: #fff;
    text-align: center;
    border-radius: 2px;
}

.flex-tag-collapsed-right a:hover {
    background-color: #0da2e0;
}

.flex-btn-left {
    padding: 5px;
    display: table-cell;
    width: 75%;
    font-size: 18px;
    vertical-align: middle;
}

.flex-btn-right {
    padding: 5px;
    display: table-cell;
    width: 55%;
    font-size: 22px;
    border-left: 1px solid #aae4fc;
    vertical-align: middle;
}

.flex-tag-collapsed-left-c {
    padding: 8px 10px 8px 0;
    font-size: 15px;
    color: #fff;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.flex-tag-collapsed-right-c {
    padding-right: 5px;
    min-width: 160px;
    display: table-cell;
    vertical-align: middle;
}

.flex-tag-collapsed-inner-c {
    width: 100%;
    display: table;
}

.flex-tag-icon-c {
    font-size: 34px;
    min-width: 50px;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

.flex-tag-icon-c span {
    color: #fff;
}

.flex-tag-text-c {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.flex-tag-text-c span {
    font-weight: 700;
    color: #ffd259;
}

.flex-tag-collapsed-right-c a {
    display: table;
    width: 100%;
    padding: 5px;
    background-color: #31bcf6;
    color: #fff;
    text-align: center;
    border-radius: 2px;
}

.flex-tag-collapsed-right-c a:hover {
    background-color: #0da2e0;
}

.flex-btn-left-c {
    padding: 9px 5px 5px;
    display: table-cell;
    width: 75%;
    font-size: 28px;
    vertical-align: middle;
}

.flex-btn-right-c {
    padding: 5px;
    display: table-cell;
    width: 55%;
    font-size: 22px;
    border-left: 1px solid #aae4fc;
    vertical-align: middle;
}

.flex-package .exp-airlines-wrap{
    padding-bottom:15px;
}

.container-sort {
    margin-bottom: 12px;
    overflow: hidden;
}

.container-sort-left {
    padding: 10px 0 0;
    float: left;
}

.container-sort-middle {
    margin-left: 20px;
    padding: 18px 0 0;
    float: left;
    border-bottom: 1px solid #d0d0d0;
    width: 50%;
}

.container-sort-right {
    padding: 5px 0 0;
    float: right;
}

.container-flight-results {
    width: 609px;
}

.container-package:last-child {
    border-bottom: 0;
}

.container-package .flightDetails {
    visibility: hidden;
}

.container-package .flight-info-checkbox {
    visibility: hidden;
}

.price-flight {
    font: 700 26px/26px arial, sans-serif;
    color: #4e7720;
}

.crest-special-offer {
    width: 112px;
    float: left;
}

.today-bonus {
    padding-top: 4px;
    text-align: right;
    float: right;
}

.select-btn {
    padding: 13px 10px 8px;
}

.airline-icon {
    width: 32px;
}

.airline-name {
    padding: 0 3px 0 3px;
    width: 68px;
    line-height: 10px;
    height: 25px;
    display: table-cell;
    vertical-align: middle;
}

.flight-package-row1 {
    margin-bottom: 5px;
    overflow: hidden;
}

.container-package-row2 {
    margin: 7px 0 0;
    float: right;
    overflow: hidden;
    width: 82%;
}

.flight-package-row2-left {
    float: left;
    width: 90px;
    overflow: hidden;
}

.flight-package-row3 {
    padding-top: 5px;
    overflow: hidden;
}

.flight-info-checkbox > input {
    margin-left: 0 !important;
}

.seats-left {
    padding-top: 3px;
    font-size: 12px;
    color: #ff0000;
    clear: both;
    text-align: center;
}

.container-flight-details {
    float: left;
}

.bottom-icons-wrap {
    padding: 0 0 3px;
    position: absolute;
    top: 4px;
    right: 0;
    text-align: center;
    overflow: hidden;
    color: #999;
}

.bottom-icon {
    padding: 3px 0 2px 7px;
    float: left;
}

a.grey-reg-btn {
    padding: 3px 8px 2px 10px;
    background: #fff;
    border-radius: 6px;
    border: 1px solid #e1e1e1;
}

.container-many-flights {
    margin-top: 15px;
    padding: 11px;
    border: 1px solid #e1e1e1;
    background: #f7f7f7;
}

.small-hotel-promo-info {
    margin-bottom: 5px;
    width: 138px;
    overflow: hidden;
}

.small-hotel-promo-photo-wrap-checkout {
    margin-top: 3px;
    position: relative;
    width: 138px;
}

.small-hotel-promo-photo-discount {
    padding: 2px 5px;
    background: rgba(255, 255, 255, 0.8);
    border-bottom-left-radius: 4px;
    font-weight: 700;
    position: absolute;
    right: 4px;
    top: 4px;
}

.small-photo-padded {
    padding: 3px;
    background: none repeat scroll 0 0 #fff;
    border: 1px solid #e1e1e1;
}

.container-package-loading {
    margin: 0 0 15px;
}

.container-progress-bar {
    margin: 0 auto;
}

.progress-bar-inner {
    padding: 3px;
    background: #f9f9f9;
    border: 1px solid #dcdcdc;
    overflow: hidden;
}

.progress-bar {
    margin: 1px;
    width: 0;
    height: 4px;
    background: #ec5300;
    border-radius: 2px;
}

.loading-searching-text {
    padding-left: 15px;
    line-height: 13px;
}

.price-flight-total {
    margin-top: 5px;
    padding: 0;
    font-size: 11px !important;
    color: #444;
    height: 11px;
}

.fees-taxes {
    margin-top: 5px;
    padding: 0;
    font-size: 10px !important;
    height: 11px;
    color: #888;
    line-height: 9px !important;
}

.compact-flight-search-options {
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px dotted #e1e1e1;
}

.session-wrap {
    overflow: hidden;
}

.session-left {
    padding-top: 5px;
    float: left;
}

.session-right {
    margin-left: 150px;
}

.container-no-results, .searching-container {
    text-align: center;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    overflow: hidden;
    margin-top: 10px;
    padding-bottom: 15px;
}

.container-no-results p, .searching-container p {
    font-size: 20px;
    line-height: 1.2;
    color: #999;
    margin: 10px 0;
}

.container-no-results .alert {
    font-size: 35px;
    margin-bottom: 15px;
    color: #fbae17;
}

.searching-container .search {
    font-size: 35px;
    margin-bottom: 15px;
    color: #0074a5;
}

.container-no-results .reset {
    margin-top: 25px;
}

.no-results-box {
    position: relative;
    font-size: 22px;
    padding: 20px;
    background: #fff;
    margin-top: 15px;
}

ul.container-flight-package {
    margin-top: 8px;
}

.container-flight-package li {
    margin-bottom: 8px;
    padding: 9px 15px 2px;
    background-color: #fff;
    position: relative;
    box-shadow: 1px 1px 2px #666;
}

.container-flight-package li:hover {
    background: #f6f6f6;
}

.package-row-top {
    text-align: right;
    height: 25px;
}

.bottom-row-class {
    margin-top: 8px;
    float: right;
}

a.container-package-select-btn {
    margin: 0 auto 5px;
    padding: 5px 0;
    color: #fff;
    font-weight: normal;
    font-size: 18px;
    display: block;
    background: #ff712d;
    background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
    background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: -o-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff712d', endColorstr='#ff5200',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #ff5200;
    text-align: center;
}

a.container-package-select-btn:hover {
    background: #ff5200;
}

div.container-package-select-btn-loader{
    display:none;
    margin: 0 auto;
    height: 16px;
    width: 16px;
}

.fare-marker {
    margin-left: -13px;
    z-index: 2;
    position: relative;
}

.package-bonus-text {
    padding: 3px 0 0 140px;
    font-size: 11px;
}

.package-row-middle {
    overflow: hidden;
    position: relative;
}

.package-price-box {
    margin-top: 5px;
    width: 110px;
    float: left;
    text-align: center;
}

.package-row-bottom {
    height: 25px;
    position: relative;
}

.package-location-wrap {
    display: block;
}

.details-modal-warning {
    margin: 5px 0 10px;
    padding: 5px 10px;
    color: #c38b05;
    background: #fff;
    border: 1px solid #f2ae0c;
}

.details-modal-warning-receipt {
    margin: 5px 0 100px;
    padding: 10px;
    color: #ffffff;
    background: #cd3333;
}

.button-show-filters {
    display: none;
}

.mobile-details {
    display: none;
}

.price-txt {
    font-size: 24px;
    line-height: 20px;
    color: #4e7720;
    font-weight: bold;
}

.sub-price-txt {
    padding: 0 0 7px;
    font-size: 11px;
    color: #999;
}

.mobile-seats {
    display: none;
}

.bottom-sharing {
    padding-top: 3px;
    float: left;
}

a.package-alerts {
    color: #599bbc;
}

a.package-alerts:hover {
    color: #006699;
    text-decoration: underline;
}

html.is-mobile-app .package-alerts {
    display: none;
}

.package-row2-left {
    width: 25%;
}

.package-row2-right {
    padding: 5px 0 0;
    width: 75%;
}

.airlines-wrap1 {
    overflow: hidden;
    border-top: 15px solid transparent;
}

.airlines-wrap2 {
    overflow: hidden;
}

.airlines-left {
    float: left;
    min-height: 46px;
    position: relative;
}

.airlines-right {
    margin-left: 45px;
    padding-top: 8px;
}

table.package-routes td {
    padding: 3px 0 8px;
}

.departure-hour {
    width: 13%;
    font-size: 12px;
    font-weight: bold;
}

.arrival-hour {
    width: 15%;
    font-size: 12px;
    font-weight: bold;
}

.package-airport-code {
    width: 8%;
}

.package-arrow {
    width: 8%;
    text-align: center;
}

.package-stops {
    width: 20%;
    text-align: center;
    font-size: 11px;
    color: #999;
}

.package-duration {
    width: 15%;
    font-size: 12px;
    color: #999;
    text-align: right;
}

.package-checkbox {
    width: 5%;
}

.ac2u-select {
    background: #fff;
    padding: 1px 0;
    font-size: 11px;
    position: relative;
    visibility: hidden;
    border: 1px solid #b0cfdf;
    z-index: 1000;
}

.price-box-bottom .ac2u-select {
    margin-top: -20px;
}

.ac2u-select ul {
    overflow: hidden;
}

.ac2u-select ul li {
    padding: 0;
    float: left;
    border-bottom: 0;
    border-top: 0;
}

.ac2u-select ul li:hover {
    background: #fff;
}

.ac2u-select ul li:last-child {
    border-bottom: 0;
    border-top: 0;
}

.ac2u-select ul li a {
    padding: 8px 5px;
    color: #777;
}

.ac2u-select ul li a:hover {
    color: #ec5300;
}

.ac2u-select ul li a.active {
    padding: 0 5px;
    color: #ec5300;
}

.ac2u-arrow-top {
    position: absolute;
    bottom: -10px;
    left: 280px;
}

.ac2u-arrow-bottom {
    position: absolute;
    top: -10px;
    left: 280px;
}

.icon-package-arrow{
    padding-top:14px;
}

/* results promo side-bar right */
.container-promo-box {
    margin-bottom: 15px;
    width: 158px;
    border: 1px solid #e1e1e1;
}

.guarantee-banner {
    background: #f5f5f5;
    border-right: 1px solid #e5e5e5;
}

.guarantee-banner ul {
    margin: 0 10px 0 13px;
    padding: 0 0 5px;
}

.guarantee-banner ul li {
    padding: 10px 0;
    border-bottom: 1px solid #ccc;
    text-align: left;
    font-size: 11px;
    line-height: 16px;
}

.guarantee-banner ul li:last-child {
    padding-bottom: 0;
    border-bottom: 0 solid #ccc;
}

.promo-hotels-title {
    padding: 7px 10px 6px 10px;
    text-align: center;
    border-bottom: 1px solid #e1e1e1;
    font-size: 14px;
    background: #f9f9f9;
}

.promo-hotels-content {
    padding: 0 10px 10px 10px;
    overflow: hidden;
}

ul.promo-hotels-list {
    margin-bottom: 7px;
}

ul.promo-hotels-list li {
    padding: 7px 0 14px 0;
    border-bottom: 1px dotted #e1e1e1;
    overflow: hidden;
    text-align: center;
    font-size: 11px;
    line-height: normal;
}

ul.promo-hotels-list li:last-child {
    margin-bottom: 3px;
}

.promo-hotels-image {
    margin: 7px 0 8px 0;
}

a.orange-reg-btn {
    padding: 10px 15px;
    display: inline-block;
    font: 400 14px arial, sans-serif;
    color: #fff;
    background: #f05623;
    border: 1px solid #ff5200;
    border-radius: 2px;
    cursor: pointer;
}

a.orange-reg-btn:hover {
    background: #cb3d0e;
    color: #fff;
    border: 1px solid #ff5200;
}

.guarantees-banner {
    margin-bottom: 15px;
    padding: 0;
    text-align: center;
}

.hotel_search_fields_bar {
    width: 948px;
}

.flights-results-wrap .spi-table {
    width: 100%;
    text-align: left;
}

.spi-table th {
    text-transform: uppercase;
    color: #666;
    background: #e1e1e1;
    border: 1px solid #B7B7B7;
    padding: 5px;
}

.spi-table td {
    vertical-align: top;
    padding: 5px;
    border: 1px solid #CCC;
    width: 25%;
    line-height: 14px;
}

.spi-table .info_name {
    color: #888;
}

.spi-table .info_value {
    color: #0072a3;
    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;
}

/* === PHONE BANNER (results page) === */
.exp-container-flight-package li.phone-deal {
    border: 3px solid #40A6D6;
    background: #0C79AA !important;
    color: #fff;
    padding: 0;
    margin: 25px 0 30px 0;

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

.phone-deal-heading {
    background: #FFFFFF;
    padding: 5px 10px;
    font-size: 16px;
    font-weight: bold;
    color: #6D6D6D;
    line-height: 1.3;
    text-align: right;
    font-style: italic;
}

.phone-deal-heading span,
.phone-deal-heading a {
    vertical-align: middle;
    display: inline-block;
}

.phone-deal-heading a {
    font-size: 20px;
    color: #FF6921;
}

.phone-deal .column {
    vertical-align: middle;
    padding: 10px;
}

.phone-deal .icon {
    width: 80px;
}

.phone-deal .icon-wrap {
    width: 45px;
    height: 45px;
    margin: auto;
    line-height: 43px;
    font-size: 26px;
    border-radius: 50%;
    border: 3px solid;
    text-align: center;
    text-indent: 1px;
}

.phone-deal .destination-wrap {
    font-size: 16px;
    font-weight: bold;
}

.exp-container-flight-package .destination-wrap li {
    background: none !important;
    margin: 5px 0;
    padding: 0;
    line-height: 1.3;
}

.exp-container-flight-package li.phone-deals ,
.exp-container-flight-package li.phone-deal {
    cursor: default;
}

.destination-wrap .label,
.destination-wrap .fa {
    color: #FFF0B5;
}

.destination-wrap .label {
    margin-right: 5px;
}

.destination-wrap .fa {
    margin: 0 7px 0 0;
}

.phone-deals .label.from .fa,
.destination-wrap .from .fa {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.phone-deals .label.to .fa,
.destination-wrap .to .fa {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.phone-deal .price {
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
    width: 170px;
}

.phone-deal .price .price-info,
.phone-deal .price-title {
    font-size: 13px;
    color: #A7DEFB;
}

.phone-deal .price .price-savings {
    font-size: 24px;
    color: #FFE57A;
}

/* === PHONE DEALS (v2)=== */
.phone-deals .exp-container-flight-package-left,
.phone-deals .exp-container-flight-package-right {
    vertical-align: middle;
}

.phone-deals .phone-deal-heading {
    background: #0C79AA;
    text-align: left;
    color: #FFEBAD;
    padding: 7px 10px;
}

.phone-deals .phone-deal-heading .fa,
.phone-deals .phone-deal-heading span,
.phone-deals .label .fa,
.phone-deals .label span {
    vertical-align: middle;
}

.phone-deals .phone-deal-heading .fa {
    font-size: 22px;
    margin-right: 10px;
}

.phone-deals .label {
    font-size: 14px;
    margin-bottom: 8px;
    color: #999;
}

.phone-deals .label .fa {
    margin-right: 6px;
    font-size: 16px;
}

.phone-deal .price-toggle-btn {
    display: inline-block;
    padding: 9px 18px;
    background: #FF722F;
    color: #fff;
    font-size: 14px;
    text-transform: uppercase;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
}

.phone-deal.show-price .price-toggle-btn {
    margin: 10px 0 5px 0;
}

.phone-deal .savings-wrap {
    display: none;
}

.phone-deal.show-price .savings-wrap {
    display: block;
}

.phone-deals .dates {
    font-size: 14px;
    color: #999;
}

.exp-container-flight-package .destination-wrap ul {
    margin: 0 -10px;
}

.exp-container-flight-package .destination-wrap li {
    margin: 0;
    padding: 5px 10px;
    display: inline-block;
    text-align: left;
    vertical-align: top;
}

/* phone deals modal */

.phone-deals-text {
    font-size: 16px;
    line-height: 32px;
    color: #444;
}

.phone-deals-text span {
    display: block;
    font-size: 18px;
    font-weight: 600;
}

.phone-offer-number {
    padding: 10px;
    margin: 15px;
    background: #f6f6f6;
    border: 1px dashed #dcdcdc;
    border-radius: 6px;
}

.phone-offer-number .phone-number {
    font-size: 22px;
    font-weight: 700;
}

.phone-offer-number .phone-number span,
.phone-offer-number .phone-number img {
    display: inline-block;
    vertical-align: middle;
}

.phone-offer-number .phone-number span,
.phone-offer-number .phone-number img {
    display: inline-block;
    vertical-align: middle;
}

.debug-wrap {
    max-width: 900px;
    margin: auto;
}

.transition-spi,
.transition-raw-output {
    margin-bottom: 30px;
}

.transition-raw-output {
    padding: 15px;
    border: 1px solid #dcdcdc;
    background: #f1f1f1;
    margin-bottom: 30px;
    line-height: 1.1;
}

.transition-raw-output .output-title {
    font-size: 18px;
    font-weight: 700;
    margin: 10px 0;
}

.transition-raw-output pre {
    font-size: 12px;
    font-family: monospace;
}

.modify-search-wrap {
    display: none;
}

/* email fare alerts modal */
.email-landing-title {
    padding: 8px 0 13px;
    font-size: 24px;
    font-weight: 700;
    color: #222;
    letter-spacing: -0.03em;
}

.email-landing-info {
    padding-bottom: 25px;
    color: #ff5200;
    font-size: 18px;
}

.email-landing-info p {
    margin: 0;
}

.modal-alert-success {
    margin: 0 auto 3px;
    padding: 10px;
    width: 90%;
    text-align: center;
    background: #84b134;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
}

.modal-alert-error, .hp-newsletter-error {
    margin: 0 auto 3px;
    padding: 10px;
    width: 90%;
    text-align: center;
    background: #cf1a1a;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
}

.main-alert-form-row {
    display: table-row;
}

/* fare alert modal */

.container-transition-alert-results {
    padding: 15px;
    border: 1px solid #dcdcdc;
    background: #f9f9f9;
    overflow: hidden;
}

.container-transition-fas-direct {
    padding: 5px 10px 5px;
    border: 1px solid green;
    background: #5fb84e;
    margin: 10px;
    color: white !important;
    overflow: hidden;
}

.modal-fineprint-wrap {
    padding: 5px 10px;
    display: table;
    width: 100%;
    font-size: 12px;
    color: #999;
    background: #fdfdfd;
    border-top: 1px dashed #dcdcdc;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}
.modal-fineprint-interfere {
    padding-top: 3px;
    font-size: 11px;
    color: #999;
    font-style: italic;
    text-align: center;
}

.fare-alert-title {
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #666;
}

.fare-alert-title2 {
    margin-bottom: 10px;
    font-size: 12px;
    font-weight: 400;
    color: #666;
}

.fare-alert-title3 {
    padding-bottom: 10px;
    font-size: 12px;
    font-weight: 400;
    color: #ef5827;
}

.main_alert_form {
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    -webkit-flex-direction: row;
}

.create-fare-alert-input {
    padding-right: 3px;
    flex: 1;
    -webkit-flex: 1;
}

.create-fare-alert-input input {
    padding: 15px;
    width: 100%;
    border-radius: 3px;
    border: 1px solid #dcdcdc;
}

.create-fare-alert-input input:focus {
    border: 1px solid #aaa;
}

.create-fare-alert-button {
    flex: 0 0 auto;
    -webkit-flex: 0 0 auto;
}

.create-fare-alert-button-mobile {
    float: left;
    width: 100%;
}

button.fare-alert-btn {
    padding: 9px 10px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    display: block;
    background: #f26639;
    border: 1px solid #f26639;
    cursor: pointer;
    border-radius: 2px;
    text-align: center;
    transition: all 0.2s;
}

button.fare-alert-btn:hover {
    background: #c0512e;
    color: #fff;
    border: 1px solid #c0512e;
}

button.fare-alert-btn:disabled {
    background: darkgrey !important;
}

.alert-privacy {
    font-size: 11px;
    margin: 5px 0 0;
}

.alert-privacy a {
    color: #999;
}

.search-modal-searching-text {
    padding: 15px 0;
    font-size: 16px;
    font-weight: 700;
    color: #666;
}

.search-modal-searching-text-l {
    padding: 15px 0;
    font-size: 16px;
    font-weight: bold;
    color: #363636;
}

.modal-route-text {
    padding: 15px 0;
    font-size: 12px;
    line-height: 20px;
    color: #ec5300;
}

#flights-ss-spinner {
    margin: -50px 0 0 -62px;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 11;
}

#sidebar-content-loading {
    position: absolute;
    z-index: 10;
    display: block;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.6);
}

.mobile-slider-wrap {
    margin-top: 5px;
}

/* alert modal form */
.alert-modal-form-wrap {
    margin: 0 2%;
    width: 96%;
}

.alert-modal-field {
    padding-right: 5px;
    float: left;
    width: 63%;
}

.alert-modal-field input {
    padding: 8px 15px;
    width: 100%;
    border-radius: 2px;
    border: 1px solid #dcdcdc;
}

.alert-modal-button {
    float: left;
    width: 37%;
    text-align: center; /* to center the loading spinner */
}

.transition-alert-title {
    font-size: 16px;
    font-weight: 700;
    color: #666;
}

.transition-alert-subtitle {
    margin-bottom: 15px;
    font-size: 12px;
    line-height: 18px;
    color: #666;
}

/* fare alert modal - new */
.fare-alert-modal-title {
    font-size: 16px;
    font-weight: 700;
    color: #666;
    text-align: center;
}

.fare-alert-modal-subtitle {
    font-size: 12px;
    line-height: 18px;
    font-weight: 400;
    color: #666;
    text-align: center;
}

.fare-alert-modal-wrap {
    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;
}

.fare-alert-modal-field {
    padding-right: 3px;
    flex: 1;
    -webkit-flex: 1;
}

.fare-alert-modal-field input {
    padding: 15px;
    font-size: 12px;
    display: block;
    width: 100%;
    border: 1px solid #dcdcdc;
    border-radius: 3px;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.fare-alert-modal-button {
    flex: 0 1 140px;
    -webkit-flex: 0 1 140px;
}

button::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner {
    padding: 0 !important;
    border: 0 none !important;
}

.mobile-fa-output {
    margin: 0 15px 10px;
    padding: 10px 15px;
    font-size: 12px;
    font-weight: 700;
    background-color: #5fb84e;
    color: #fff;
    text-align: center;
}





/* phone package */
.packages-os-phone-icon {
    width: 30%;
    float: left;
    text-align: center;
    display: table;
}

.packages-os-phone-icon-left {
    padding: 5px 0 0 15px;
    display: table-cell;
    text-align: center;
}

.packages-os-phone-icon-right {
    padding: 0 5px;
    display: table-cell;
    font-weight: bold;
    vertical-align: middle;
    text-align: left;
}





/* airline buttons matrix */
.amatrix-wrap {
    margin: 0 0 20px;
    padding: 15px 0 15px 15px;
    background-color: #f9f9f9;
    border: 1px solid #dcdcdc;
}

.amatrix-top-wrap {
    margin-bottom: 10px;
    padding: 0 15px 0 0;
    display: table;
    width: 100%;
}

.amatrix-top-left {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.amatrix-top-right {
    display: table-cell;
    min-width: 175px;
    vertical-align: middle;
}

.amatrix-top-right a {
    padding: 2px 5px;
    color: #999;
}

.amatrix-top-right a:hover {
    color: #4d96b3;
}

.amatrix-top-left span {
    font-size: 18px;
    font-weight: 700;
    display: block;
    color: #ff5200;
}

.amatrix-buttons-wrap {
    width: 100%;
}

.amatrix-buttons-middle {
    margin-right: -4px;
    display: inline-block;
    width: 90%;
    vertical-align: middle;
    overflow-x: hidden;
}

.amatrix-buttons-right {
    margin-right: -4px;
    display: inline-block;
    width: 10%;
    vertical-align: middle;
    text-align: center;
}

.amatrix-buttons-right button {
    margin: 2px auto;
    padding: 5px;
    color: #fff;
    font-size: 16px;
    display: block;
    width: 30px;
    height: 30px;
    line-height: 13px;
    background-color: #2cb8e2;
    outline: none;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.2s;
}

.amatrix-buttons-right button:hover {
    background-color: #27a1c6;
}

.amatrix-buttons-middle ul {
    display: table;
}

.amatrix-buttons-middle ul li {
    display: table-cell;
    width: 150px;
}

.amatrix-buttons-middle ul li span {
    display: block;
    white-space: nowrap;
}

.amatrix-buttons-middle ul li a {
    margin: 0 2px;
    padding: 20px 10px;
    display: block;
    background-color: #fff;
    line-height: 15px;
    border: 1px solid #dcdcdc;
    text-align: center;
}

.amatrix-buttons-middle ul li a:hover {
    background-color: #dff3fb;
}

.amatrix-buttons-middle ul li a:focus {
    border-color: #68a8c2;
}

.amatrix-buttons-middle ul li a.active {
    background-color: #dff3fb;
    border: 1px solid #add1e0;
    border-bottom: 3px solid #add1e0;
}

.amatrix-carrier-name {
    color: #999;
    font-size: 11px;
}

.amatrix-swipe-arrow {
    display: none;
}






/* new flex table */

table.flex-table-results {
    margin-bottom: 10px;
    display: table;
    table-layout: fixed;
    width: 100%;
    border-bottom: 2px solid #00405a;
    border-right: 2px solid #00405a;
    border-left: 2px solid #00405a;
}

.flex-table-title {
    font-size: 14px;
    color: #fff;
    background-color: #00405a;
    text-align: center;
}

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

.flex-table-title ul li {
    padding: 10px 15px;
    display: table-cell;
    text-align: left;
    vertical-align: middle;
}

.flex-table-title ul li:nth-child(1) {
    background-color: #00405a;
    border-right: 1px solid #546e79;
}

.flex-table-title ul li:nth-child(2) {
    background-color: #064a65;
    border-right: 1px solid #546e79;
}

.flex-table-title ul li:nth-child(3) {
    background-color: #00405a;
    border-right: 1px solid #546e79;
}

.flex-table-title ul li:nth-child(4) {
    background-color: #064a65;
}

.flex-cheapest-title {
    padding: 0 5px;
    font-size: 11px;
    display: block;
    background-color: #f9f9f9;
    color: #5d941d;
    border: 1px solid #dcdcdc;
    border-radius: 2px;
}

th.flex-selected-date {
    font-weight: 700 !important;
}

.flex-expensive-title {
    padding: 0 5px;
    font-size: 11px;
    display: block;
    background-color: #f9f9f9;
    color: #c82a2a;
    border: 1px solid #dcdcdc;
    border-radius: 2px;
}

table.flex-table-results tbody th {
    background-color: #f1f1f1;
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #f1f1f1;
}

table.flex-table-results tbody th.flex-row, table.flex-table-results tbody th.flexible-date-active-end {
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}

table.flex-table-results th {
    padding: 10px;
    display: table-cell;
    background-color: #f9f9f9;
    font-weight: 400;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #f9f9f9;
    text-align: center;
    vertical-align: middle;
}

table.flex-table-results th.flex-col {
    border-right: 1px solid #dcdcdc !important;
    border-left: 1px solid #dcdcdc !important;
}

table.flex-table-results th:first-child {
    padding: 0;
    width: 150px;
    border-bottom: 0 solid #dcdcdc;
}

table.flex-table-results td {
    margin: 0;
    padding: 0;
    display: table-cell;
    background-color: #fff;
    line-height: 18px;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    text-align: center;
    height: 50px;
    vertical-align: middle;
}

table.flex-table-results td a {
    padding: 7px;
    display: block;
}

td.flex-current {
    background: #e3f7ff !important;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc !important;
}

table.flex-table-results td:hover {
    background-color: #f9f9f9;
    font-weight: 400;
}

td.flexible-date-bg-green a:hover {
    background-color: #eeffe3;
}

td.flexible-date-bg-red a:hover {
    background-color: #ffefef;
}

table.flex-table-results td:first-child {
    background-color: #f1f1f1;
    border-bottom: 0 solid #dcdcdc;
}

.flex-table-returning {
    padding: 4px 0;
    font-size: 10px;
    background-color: #f9f9f9;
    border-bottom: 1px solid #dcdcdc;
    text-transform: uppercase;
}

.flex-table-departing {
    margin-right: -1px;
    padding: 0;
    font-size: 10px;
    background-color: #f1f1f1;
    position: relative;
    border-right: 1px solid #dcdcdc;
    z-index: 9;
    text-transform: uppercase;
}

span.flex-table-title {
    color: #bad9e9;
}

/* Table full Row */
#showFlexible td.flex-row, #showFlexible th.flex-row, #showFlexible .flex-col, td.flexible-date-bg-blue {
     background: #e3f7ff !important;
}

td.flexible-date-bg-blue, td.flexible-date-bg-blue:hover {
    font-weight: 700 !important;
}

/* price graph */
.price-graph-wrap {
    margin: 0 0 20px;
    padding: 10px 15px;
    color: #666;
    line-height: 17px;
    border: 1px solid #dcdcdc;
    text-align: center;
}

.price-graph-title {
    padding: 3px 0 13px;
    margin-bottom: 10px;
    font-size: 24px;
    font-style: italic;
    color: #333;
    border-bottom: 1px solid #dcdcdc;
}

.price-graph-title .fa {
    vertical-align: top;
    font-size: 13px;
    color: #ccc;
}

.average-price-graph {
    padding: 0 0 8px;
}

.price-graph-wrap ul {
    margin: 8px 0 10px;
}

.price-graph-wrap ul li {
    padding: 2px 0;
}

.price-graph-wrap ul .fa {
    color: #AAA;
    font-size: 12px;
    vertical-align: top;
}

.price-graph-total {
    margin-top: 10px;
    padding: 10px 0 0;
    font-size: 15px;
    border-top: 1px dashed #dcdcdc;
}

.price-graph-total_b {
    margin-bottom: 10px;
    padding: 5px 0 10px;
    font-size: 15px;
    border-bottom: 1px dashed #dcdcdc;
}

.price-graph-total span.price-graph-buy {
    font-family: arial black, sans-serif;
    color: #43a314;
}

.price-graph-total span.price-graph-wait {
    font-family: arial black, sans-serif;
    color: #f39e00;
}

.price-graph-total span.price-graph-buy,
.price-graph-total_b span.price-graph-buy{
    font-family: arial black, sans-serif;
    color: #43a314;
}

.price-graph-total span.price-graph-wait,
.price-graph-total_b span.price-graph-wait {
    font-family: arial black, sans-serif;
    color: #f39e00;
}

.nearby {
    color: #4c8e2d !important;
}









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

    /* price change topbar yellow V2 */

    .topbar-banner-yellow {
        padding: 10px;
    }

    .topbar-banner-yellow .topbar-inner {
        margin: 0 2%;
        width: 96%;
    }

    .topbar-banner-yellow .topbar-text {
        padding-top: 15px;
        font-size: 18px;
        display: block;
        text-align: center;
    }

    .topbar-banner-yellow .topbar-button {
        padding-left: 0;
        padding-top: 10px;
        display: block;
    }

    .topbar-banner-yellow .topbar-button a {
        margin: 0 auto;
        display: inline-block;
    }

}









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

    .price-graph-wrap {
        display: none;
    }

    .results-top-link {
        position: fixed;
        right: 10px;
        bottom: 35px;
    }

    .results-top-link a {
        padding: 3px;
        background-color: #006699;
        color: #fff;
        font-size: 32px;
        display: block;
        width: 38px;
        height: 37px;
        text-align: center;
        border-radius: 50%;
        transition: background-color 0.2s;
    }

    .results-top-link a:hover {
        background-color: #003550;
        color: #fff;
    }

    .results-top-link a span {
        display: block;
    }

    .container-package-loading-left {
        display: none;
    }

    .container-package-loading-right {
        width: 100%;
    }

    body.affiliate-compare-responsive #airline-matrix-only-container {
        display: none;
    }

}




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

    .topbar-banner-yellow .topbar-text {
        padding-bottom: 0;
    }

}

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

    .flex-table-departing {
        margin-bottom: -12px;
    }

}

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

    .exp-container-flight-package .destination-wrap li {
        display: block;
    }

    .exp-container-flight-package .destination-wrap ul,
    .exp-container-flight-package .destination-wrap li {
        text-align: center;
    }

    #fares-search-flexible {
        margin: 0 !important;
        width: 100% !important;
    }

    .phone-deal .dates {
        border: 0;
        margin: 0;
        padding-top: 0;
    }

    .phone-deal .icon {
        width: 65px;
    }

    .phone-deal .price {
        width: 150px;
    }

    .flex-table-wrap, #fares-search-flexible {

    }

    .flights-fine-print-mobile {
        margin-bottom: 15px;
        padding: 5px;
        display: block;
        color: #999;
        font-size: 11px;
        line-height: 15px;
        text-align: center;
        border-top: 1px solid #dcdcdc;
        border-bottom: 1px solid #dcdcdc;
    }

    .flights-fine-print-desktop {
        display: none;
    }

}

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

    .flex-table-wrap, #fares-search-flexible {
        display: none;
    }
    .search-result-flex-cheapest-price {
        display: none !important;
    }

}

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

    .flex-tag-icon {
        display: none;
    }

    .flex-tag-text {
        padding-left: 10px;
    }

    .flex-tag-icon-c {
        display: none;
    }

    .flex-tag-text-c {
        padding-left: 10px;
    }

    .container-airfare-mobile-b {
        display: none !important;
    }

}









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

    .phone-deal-heading {
        text-align: center;
    }

    .phone-deal .icon {
        display: none!important;
    }

}










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

    .flex-tag-collapsed-left {
        padding: 8px 10px;
        font-size: 12px;
        display: block;
        text-align: center;
    }

    .flex-tag-collapsed-right {
        padding-right: 0;
        min-width: 0;
        display: block;
        text-align: center;
    }

    .flex-tag-collapsed-right a {
        padding: 5px 10px;
        border-radius: 0;
    }

    .flex-tag-collapsed-left-c {
        padding: 8px 10px;
        font-size: 12px;
        display: block;
        text-align: center;
    }

    .flex-tag-collapsed-right-c {
        padding-right: 0;
        min-width: 0;
        display: block;
        text-align: center;
    }

    .flex-tag-collapsed-right-c a {
        padding: 5px 10px;
        border-radius: 0;
    }

    .mobile-big {
        font-size: 15px;
    }

}









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

    .topbar-banner-yellow .topbar-text {
        font-size: 13px;
    }

    .phone-deal-heading,
    .phone-deal .destination-wrap {
        font-size: 14px;
    }

    .phone-deal .column {
        display: block;
        width: auto !important;
    }

    .phone-deal.show-price .price-toggle-btn {
        display: block;
        max-width: 200px;
        margin: 10px auto 5px auto;
    }

    .amatrix-buttons-middle {
        width: 100%;
        overflow-x: auto;
    }

    .amatrix-buttons-right {
        display: none;
    }

    .amatrix-top-right {
        display: none;
    }

    .amatrix-wrap {
        padding: 15px;
    }

    .amatrix-buttons-middle ul li a:hover {
        background-color: #fff;
    }

    .amatrix-swipe-arrow {
        display: block;
        text-align: right;
        font-size: 11px;
        color: #999;
    }

}

/* page structure */
.container-results {
    margin: 20px auto 40px;
    padding: 0 15px;
    max-width: 1370px;
    display: table;
    position: relative;
}

.container-results-left {
    width: 100%;
    display: table-cell;
    position: relative;
}

.container-results-right {
    padding-left: 20px;
    min-width: 200px;
    display: none;
    position: relative;
    vertical-align: top;
}

.container-results-inner-wrap {
    display: table;
    width: 100%;
}

#fares-search-left-sidebar {
    min-width: 280px;
    display: table-cell;
    vertical-align: top;
}

.flights-results-wrap {
    padding-left: 20px;
    width: 100%;
    display: table-cell;
    max-width: 0;
}





#fares-search-flexible-results {
    margin-bottom: 15px;
}

#titlebar-internal-buttons {
    display: none;
}

.filter-title {
    display: none;
}




/* packages */
ul.packages-os-container {
    margin-top: 8px;
}

ul.packages-os-container>li {
    margin-bottom: 15px;
    background-color: #fff;
    border: 1px solid #dcdcdc;
}

.packages-os-top {
    padding: 10px;
    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-color: #f9f9f9;
    border-bottom: 1px solid #dcdcdc;
}

.packages-os-top-left {
    flex: 1;
    -webkit-flex: 1;
    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;
}

.packages-os-top-right {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
}

.packages-os-top-left-inner {
    display: table;
    width: 100%;
}

.packages-os-price-wrap {
    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;
}

.packages-os-price {
    padding-top: 3px;
    font-size: 30px;
    color: #006699;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    white-space: nowrap;
}

.packages-os-seats {
    padding-right: 15px;
    flex: 0 1 205px;
    -webkit-flex: 0 1 205px;
}

.packages-os-seats:lang(fr) {
    min-width: 255px;
}

.packages-os-seats-wrap {
    padding: 5px 10px;
    background: #fff;
    border-radius: 3px;
    text-align: center;
    border: 1px solid #eaeaea;
}

.packages-os-seats-wrap span {
    color: red;
}

.packages-os-seats span.at-this-price {
    color: #666;
}

.price-decimal {
    font-size: 14px;
    position: relative;
    top: -11px;
}

.price-fraction {
    font-size: 14px;
    position: relative;
    top: -11px;
}

.partial-price .price-decimal {
    font-size: 16px;
    position: relative;
    top: 0;
}

.partial-price .price-fraction {
    font-size: 16px;
    position: relative;
    top: 0;
}

.packages-os-taxes {
    padding-right: 10px;
    color: #333;
    font-size: 12px;
    font-weight: 400;
}

.pay-monthly {
    font-size: 12px;
    color: #0072a3;
    font-weight: 600;
    display: inline;
}

.pay-monthly .blue {
    color: #0072a3;
}

.pay-monthly .fa:hover,
.pay-monthly .active .fa {
    color: #064a6c;
}


.pay-monthly a.affirm-modal-trigger:hover,
.pay-monthly .blue:hover {
    color: #064a6c;
}

.price-alert-tab {
    padding: 3px 10px;
    display: inline-block;
    background-color: #459b00;
    color: #FFF;
    font-weight: bold;
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
}

.price-alert-tab.exclusive {
    background-color: #9b008f;
}

.price-alert-tab.top-seller {
    background-color: #006699;
}

.show-top-seller-tag .price-alert-tab.top-seller {
    display: inline-block;
}

.packages-os-container .pinned-tag {
    background: #008000;
}

#fares-search-package-list > ul li.pinned-container, #fares-search-pinned-package > ul li.pinned-container {
    border: 2px solid #008000;
    box-shadow: 0 9px 6px -6px #777;
}

.city-pairs-list {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
}

.city-pair {
    border-bottom: 1px solid #dcdcdc;
}

.city-pair:last-child {
    border-bottom: 0 solid #dcdcdc;
}

.city-pair .layover {
    padding: 0;
    color: #999;
    text-align: center;
}

.city-pair.pinned {
    background: #effbff;
}

.segments-list {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
}

.city-pair .segment {
    padding: 10px;
    width: 100%;
    color: #555;
    line-height: 18px;
    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;
}

.packages-os-airlines {
    flex: 0 1 30%;
    -webkit-flex: 0 1 30%;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    -webkit-flex-direction: row;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    align-items: center;
    -webkit-align-items: center;
}

.packages-os-airline-logo {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    -webkit-flex-direction: row;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    align-items: center;
    -webkit-align-items: center;
}

.packages-os-airline-info {
    padding-left: 10px;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
}

.packages-os-airline-info ul li {
    display: inline-block;
}

.packages-os-services {
    color: #777;
}

.packages-os-segment {
    flex: 0 1 70%;
    -webkit-flex: 0 1 70%;
    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;
}

.packages-os-departure {
    flex: 1;
    -webkit-flex: 1;
}

.packages-os-arrival {
    flex: 1;
    -webkit-flex: 1;
}

.packages-os-duration {
    flex: 0 1 140px;
    -webkit-flex: 0 1 140px;
    text-align: right;
    color: #999;
}

.packages-os-alert {
    padding: 5px 10px;
    color: #999;
    background-color: #f9f9f9;
    border-top: 1px solid #dcdcdc;
    text-align: center;
}

.packages-os-alert a {
    color: #006699;
    cursor: pointer;
}

.packages-os-alert a:hover {
    color: #6792a7;
}

.packages-os-bottom {
    clear: both;
}

.operating-carrier {
    color: #999;
    font-size: 11px;
}


.flight-amenities-tooltip {
    padding: 10px;
    background-color: rgb(255, 255, 255);
    font-size: 12px;
    font-family: Arial, sans-serif;
    font-weight: 400;
    color: #0074a4;
    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;
    right:0;
    display: none;
    white-space: normal;
}

.flight-amenities-tooltip.flight-amenities-content {
    display: block;
}

.flight-amenities:hover .flight-amenities-tooltip {
    display: block;
}

.flight-amenities-tooltip h3 {
    font-size: 13px;
    color: #444;
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px dashed #dcdcdc;
}

.flight-amenities-tooltip i, .flight-amenities-tooltip span {
    margin: 3px 0;
}

.flight-amenities {
    margin-top: 3px;
    position: relative;
    cursor: pointer;
}

.flight-amenity,
.flight-amenity + span {
    color: #999;
}

.flight-amenity.available,
.flight-amenities .available {
    color: #0074a4;
}

.flight-amenities-tooltip .flight-amenity.available + span {
    color: #0074a4;
}

.flight-price-disclaimer {
    position: relative;
    cursor: pointer;
    float: left;
}

.flight-price-tooltip {
    padding: 8px 10px;
    background-color: rgb(255, 255, 255);
    font-size: 12px;
    line-height: 1.2;
    font-family: Arial, sans-serif;
    font-weight: 400;
    color: #444;
    width: 230px;
    box-shadow: rgb(204, 204, 204) 0 0 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 .flight-info-tooltip-trigger {
    color: #444;
}

.flight-price-disclaimer:hover .flight-price-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-trigger-wrap:hover {
    color: #0072a3;
}

.select-segment {
    padding: 5px 10px;
    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: 1px dashed #dcdcdc;
}

.select-segment-left {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    color: #999;
    vertical-align: middle;
}

.select-segment-right {
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    text-align: right;
}

.select-segment-right button {
    padding: 0;
    color: #2cb8e2;
    width: 100%;
    font-size: 12px;
    border: none;
    outline: none;
    box-shadow: none;
    cursor: pointer;
    background: transparent;
    text-align: right;
}

.select-segment-right button:hover {
    color: #12a2e2;
}

.select-segment-right button:disabled {
    color: #bbb !important;
    cursor: default !important;
}


/* aa basic economy tooltip */
.trigger {
    cursor: pointer;
}

ul.aa-basic-tip {
    margin: 0 0 8px 15px;
    list-style-type: disc;
}

ul.aa-basic-tip li {
    color: #006699;
}

ul.aa-basic-tip li span {
    color: #555;
}

.aa-basic-info {
    padding: 5px 0 0;
    color: #999;
    border-top: 1px dashed #dcdcdc;
}




/* fare alert */
.container-airfare {
    margin-bottom: 0;
    background: #f9f9f9;
    border: 1px solid #ddd;
}

.airfare-mail {
    display: none;
}

.container-airfare-inner {
    padding: 10px 10px 15px;
    text-align: center;
    position: relative;
}

.container-airfare-inner a {
    z-index: 2;
    position: relative;
}

.airfare-plane {
    position: absolute;
    top: 33px;
    left: -43px;
    z-index: 1;
}

.alert-title {
    font: 700 16px/20px arial, sans-serif;
    color: #666;
}

.alert-text {
    margin: 5px 0 15px;
    font-size: 12px;
    line-height: 15px;
}

.container-filter-wrap {
    margin-top: 20px;
}

/* top banner for covid19 */

.covid-inpage-banner {
    margin-bottom: 20px;
    padding: 10px 15px;
    background-color: #2cb8e2;
    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 */




/* filter buttons */
.filter-buttons-wrap {
    margin-bottom: 20px;
    padding-top: 2px;
    display: flex;
    display: -webkit-flex;
    flex-direction: row;
    -webkit-flex-direction: row;
    align-items: center;
    -webkit-align-items: center;
    border-bottom: 1px solid #dcdcdc;
}

.filter-item {
    flex: 1;
    -webkit-flex: 1;
}

.filter-item a {
    padding: 15px;
    color: #999;
    display: block;
    border-top: 2px solid #fff;
    text-align: center;
}

.filter-item a:hover {
    color: #2cb8e2;
}

.filter-item a.active {
    margin-bottom: -1px;
    color: #2cb8e2;
    border-top: 2px solid #2cb8e2;
    border-right: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    position: relative;
    border-bottom: 1px solid #fff;
}

.filter-item a.processing {
    opacity: 0.5;
}

.filter-item a.processing:hover {
    color: #999;
    cursor: progress;
}


/* flex package style overrides */

.exp-container-flex-override.exp-container-flight-package > li {
    padding: 0;
    border-color: #006699;
}

.exp-container-flex-override.exp-container-flight-package .select-segment {
    border-bottom: 1px solid #dcdcdc;
}

.exp-container-flex-override.exp-container-flight-package .packages-os-alert {
    border-top: 0 solid #dcdcdc;
}


/* flex date package */
.package-select-wrapper {
    position: relative;
}

.flex-tag {
    padding: 10px;
    font-size: 14px;
    color: #fff;
    background-color: #006699;
    text-align: center;
}


/* sidebar promo boxes */

.sp-title {
    padding: 7px 10px;
    font-weight: 700;
    color: #666;
    background-color: #f4f4f4;
    text-align: center;
    border-top: 1px solid #dcdcdc;
    border-right: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.sp-box {
    margin-bottom: 20px;
    padding: 7px 10px;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    text-align: center;
}

.sp-award {
    margin-bottom: 20px;
    padding: 20px 10px 10px;
    border: 1px solid #dcdcdc;
    text-align: center;
}

.sp-rating {
    padding: 5px 0;
    font-family: 'arial narrow', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #444;
}

.sp-rating sup {
    font-size: 13px;
    vertical-align: top;
    margin-top: -3px;
}

.sp-box ul li {
    padding: 5px 0 5px 15px;
    position: relative;
    font-size: 12px;
    line-height: 17px;
    color: #888;
    text-align: left;
}

.sp-box ul li .fa {
    color: #93cfe6;
}

.sp-box ul li:before {
    content: '\f058';
    position: absolute;
    left: 0;
    top: 5px; /* same as li vertical padding */
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 12px;
    color: #777;
}

.sp-fineprint {
    margin-top: -4px;
    color: #999;
}

.sb-stars {
    padding: 4px 0;
}

.sb-stars .fa {
    font-size: 20px;
    color: #faae1a;
}

.sp-secure {
    margin-top: 5px;
    padding-top: 10px;
    border-top: 1px dashed #dcdcdc;
}




.package-os-totaltriptime {
    margin-top: 12px;
    padding: 4px 10px;
    color: #999;
    border-top: 1px dashed #dcdcdc;
}

.packages-os-matrix-time {
    width: 15%;
    float: left;
    color: #555;
}

.packages-os-matrix-day {
    float: left;
    width: 20%;
    color: #658ea2;
}

.packages-os-matrix-city {
    width: 30%;
    float: left;
    color: #555;
}

.packages-os-matrix-duration {
    width: 35%;
    float: left;
    color: #999;
    line-height: 15px;
    text-align: right;
}

.packages-os-matrix-seats-wrap {
    padding: 3px 12px;
    display: inline-block !important;
    border-top: 1px solid #dcdcdc;
    border-right: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    font-weight: 700;
    background-color: #effcff;
}

.packages-os-matrix-seats-wrap span {
    color: #ff5200;
}

.packages-os-matrix-price {
    padding-top: 3px;
    font-size: 30px;
    line-height: 20px;
    color: #0072a3;
    float: left;
    width: 80%;
}

.packages-os-matrix-button {
    padding: 5px 5px 0 0;
    float: left;
    width: 20%;
    position: relative;
}

.elite-price-tag {
    position: absolute;
    top: 17px;
    left: -56px;
}

.packages-os-breakdown {
    font-size: 16px;
    line-height: 30px;
    color: #658ea2;
    display: inline-block;
}

.packages-os-matrix-taxes {
    padding-top: 3px;
    border-top: 1px dashed #dcdcdc;
    width: 50%;
    color: #999;
}

.airport-change {
    padding-left: 10px;
    display: inline-block;
}

/* === fare families === */

.package-fare-families {
    line-height: 1;
    background-color: #f9f9f9;
    border-top: 1px dashed #dcdcdc;
}

.package-fare-families {
    line-height: 1;
    background: #f9f9f9;
}

.package-fare-families .fare-family-list {
    font-size: 0;
    padding: 5px;
}

.fare-family-item {
    display: inline-block;
    padding: 5px !important;
    border: 0 !important;
    background: none !important;
}

.fare-family-item .fare-family-btn {
    display: block;
    position: relative;
    padding: 8px 25px 8px 10px;
    border: 1px solid #eaeaea;
    background: #ffffff;
    color: #0073a4;
    font-size: 14px;
    text-align: left;
    border-radius: 3px;
}

.fare-family-item .fare-family-btn:after {
    content: "\f054";
    position: absolute;
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 8px;
    top: 50%;
    margin-top: -3px;
    right: 5px;
}

.fare-family-item .fare-name,
.fare-family-item .price {
    display: inline-block;
    vertical-align: middle;
}

.fare-family-item .fare-name {
    font-size: 12px;
    margin-right: 2px;
    color: #444;
}

.fare-family-item .price {
    font-weight: 700;
}
/* === / End fare families === */

/* === Blended Fares Kiwi === */
.blended-fare-wrap {
    padding-left: 30%;
    margin-top: 8px;
}

.blended-fare-warning {
    display: inline-block;
    margin-right: 10px;
}

.blended-fare-warning .blended-fare-warning-header {
    text-decoration: underline;
    color: #ff5200;
    cursor: pointer;
}

#fares-search-package-list div > div.blended-fare-warning-header {
    font-size: 12px;
    color: #444444;
    /*margin-top: 10px;*/
    /*margin-right: 10px;*/
    /*background: #FEF3EA;*/
    /*padding: 8px 20px;*/
    /*border-radius: 2px;*/
    font-weight: bold;
}

.blended-fare-warning .blended-fare-warning-header:hover {
    color: #b63b00;
}

.blended-fare-warning .flight-amenities-tooltip,
.packages-os-price .blended-fare-label .flight-amenities-tooltip {
    right: auto;
    width: 320px;
}

.blended-fare-warning .flight-amenities-tooltip h3 {
    font-size: 14px;
    line-height: 18px;
    font-weight: 700;
}

.blended-fare-warning .flight-amenities-tooltip.transit-visa-right a {
    color: #ff5200;
    text-decoration: underline;
}

.blended-fare-warning .flight-amenities-tooltip.transit-visa-right a:hover {
    color: #b63b00;
}

.packages-os-price .blended-fare-warning {
    margin-right: 0;
}

.packages-os-price .flight-amenities.blended-fare-label {
    display: inline-block;
    vertical-align: top;
    margin-top: -2px;
}

.packages-os-price .blended-fare-label .special-fare-label {
    font-size: 13px;
    line-height: 15px;
    color: #ff5200;
    font-weight: 700;
}

#fares-search-package-list div.blended-fare-label.flight-amenities > div {
    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;
    margin: 5px;
    background: #F3FFEA;
}

.packages-os-price .blended-fare-label .special-fare-label img {
    position: absolute;
}

.packages-os-price .flight-amenities-tooltip h3 {
    font-size: 14px;
    line-height: 26px;
    font-weight: 700;
    padding-left: 34px;
}

.packages-os-price .flight-amenities-tooltip .blended-fare-warning-text,
.tooltipster-base .blended-fare-warning-text {
    line-height: 18px;
}

.packages-os-price .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list,
.tooltipster-base .blended-fare-warning-text ul.bullet-arrow-list {
    margin-top: 6px;
}

.packages-os-price .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list li,
.tooltipster-base .blended-fare-warning-text ul.bullet-arrow-list li {
    color: #0074a4;
    margin: 2px 0;
    padding-left: 15px;
}

.packages-os-price .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list li:last-child,
.tooltipster-base .blended-fare-warning-text ul.bullet-arrow-list li:last-child {
    margin: 0;
}

.packages-os-price .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list li::before,
.tooltipster-base .blended-fare-warning-text ul.bullet-arrow-list li::before {
    content: '\f058';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 12px;
    color: #0074a4;
    margin-left: -15px;
    margin-right: 5px;
}

.packages-os-price {
    float: left;
    margin-right: 10px;
}

.packages-os-price .price-old {
    font-size: 18px;
    color: #999;
}

.packages-os-price .price-special {
    color: #0074a4;
    position: relative;
}

.packages-os-price .price-special span.special {
    font-size: 16px;
    color: #0074a4;
}

.packages-os-price .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;
    width: fit-content;
}

.packages-os-price .price-old.price-old-students {
    display: inline-block;
}

.packages-os-price .price-old-label-students {
    font-size: 12px;
    display: block;
}

.packages-os-price .price-old-number-students {
    font-size: 28px;
    text-decoration: line-through;
}

.price-special.price-special-students {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 4px;
}

@media (max-width: 555px) {

    .blended-fare-wrap {
        padding-left: 0;
        text-align: center;
        margin: 3px 0;
    }

    .packages-os-price .blended-fare-label .special-fare-label {
        font-size: 12px;
        line-height: 14px;
    }

    .blended-fare-warning .flight-amenities-tooltip,
    .packages-os-price .blended-fare-label .flight-amenities-tooltip {
        width: 260px;
        margin: 0 auto;
    }

    .blended-fare-warning .flight-amenities-tooltip.transit-visa-right {
        right: 0;
    }

    .blended-fare-warning .flight-amenities-tooltip h3 {
        font-size: 12px;
        line-height: 16px;
    }

    .packages-os-price .flight-amenities-tooltip h3 {
        font-size: 12px;
        line-height: 24px;
        font-weight: 700;
        padding-left: 34px;
    }

    .packages-os-price .flight-amenities.blended-fare-label {
        display: block;
        vertical-align: auto;
    }

}
/* === / End Blended Fares Kiwi === */


@media (max-width: 1560px) {

    .airfare-plane {
        display: none;
    }

}



@media (max-width: 1230px) {

    .container-results-right {
        display: none;
    }

}







@media (max-width : 1100px) {

    .search-wrap {
        margin: 15px 2%;
        width: 96%;
    }

}





@media (max-width : 1024px) {

    .container-results {
        margin: 5px auto 40px;
        padding: 0 2%;
        width: 100%;
        display: block;
    }

    .container-results-inner-wrap {
        display: block;
    }

    .container-results-left {
        display: block;
    }

    #fares-search-left-sidebar {
        min-width: 0;
        width: 100%;
        display: block;
    }

    .flights-results-wrap {
        padding-left: 0;
        max-width: 100%;
        display: block;
    }

    .filter-buttons-wrap {
        margin-bottom: 10px;
    }

    .mobile-alert-filter-wrap {
        width: 100%;
    }

    ul.exp-container-flight-package {
        min-height: 0;
        margin: 10px 0 0;
    }

    .container-airfare-mobile-b {
        margin: 5px 0;
        padding: 10px;
        background: #f1f1f1;
        text-align: center;
        border: 1px solid #cacaca;
        display: block;
    }

    .mobile-alert-filter-wrap{
        margin: 0 0 5px;
        width: 100%;
        display: block;
    }

    .container-filter-wrap {
        margin-top: 10px;
        border-right: 1px solid #dcdcdc;
        border-bottom: 1px solid #dcdcdc;
        border-left: 1px solid #dcdcdc;
    }
}



@media (max-width : 767px) {

    .packages-os-select {
        font-size: 15px;
    }

    .container-airfare-mobile-b {
        margin: 0 0 5px;
        clear: both;
    }

}




@media (max-width: 740px) {

    .packages-os-select {
        font-size: 16px;
    }

}





@media (max-width : 690px) {

    .packages-os-matrix-day {
        display: none;
    }

    .packages-os-matrix-taxes {
        width: 70%;
    }

    .packages-os-matrix-time {
        width: 20%;
        float: left;
        color: #555;
    }

    .packages-os-matrix-city {
        width: 30%;
        float: left;
        color: #555;
    }

    .packages-os-matrix-duration {
        width: 50%;
        float: left;
        text-align: right;
        color: #555;
    }

    .packages-os-seats {
        display: none;
    }

    .fare-family-item .fare-family-btn {
        font-size: 13px;
    }

}




@media (max-width : 600px) {

    .flight-amenity.available,
    .flight-amenities .available {
        font-size: 10px;
    }

}




@media (max-width : 570px) {

    .phone-hide {
        display: none;
    }

    .packages-os-airlines {
        padding-right: 2%;
        padding-left: 2%;
        width: 35%;
    }

    .packages-os-phone-icon {
        padding-right: 2%;
        width: 35%;
    }

    .packages-os-segment {
        width: 65%;
    }

    .packages-os-airline-logo {
        padding-top: 2px;
        width: 36%;
    }

    .packages-os-airline-info {
        padding-top: 0;
        width: 64%;
        text-align: left;
    }

    .packages-os-airline-info ul {
        margin-left: 5px;
        float: left;
    }

    .packages-os-departure {
        width: 50%;
    }

    .packages-os-arrow {
        padding-top: 5px;
        width: 16%;
        text-align: center;
    }

    .packages-os-arrival {
        width: 50%;
    }

    .packages-os-wrap .city-pair .layover {
        padding: 3px 0 3px 35%;
    }

    .packages-os-duration {
        display: none;
    }

    .airport-change {
        padding-left: 0;
        display: block;
    }

    .packages-os-alert {
        text-align: center;
    }

    .select-segment {
        margin-top: 5px;
        padding: 3px 5px;
    }

    .select-segment .fa {
        display: none;
    }

    .fare-family-item {
        display: inline-block;
        padding: 3px;
        width: 50%;
    }

    .fare-family-item .price {
        display: block;
    }

}




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

    .flight-price-disclaimer .flight-info-tooltip .flight-info-inner {
        width: 180px;
        padding: 4px 8px;
    }

}




@media (max-width : 450px) {

    .packages-os-wrap .city-pair .segment {
        padding: 5px 0 0;
    }

    .packages-os-matrix-city {
        width: 41%;
    }

    .packages-os-matrix-time {
        width: 28%;
    }

    .packages-os-matrix-duration {
        width: 31%;
    }

    .packages-os-breakdown {
        display: none;
    }

    .packages-os-matrix-taxes {
        width: 95%;
    }

    .packages-os-matrix-price {
        width: 70%;
    }

    .packages-os-matrix-button {
        padding: 0 0 0 0;
        width: 30%;
    }

    .packages-os-matrix-cityhide {
        display: none;
    }

    .elite-price-tag {
        position: absolute;
        top: 0;
        left: -56px;
    }

}

/*Price alert styles on results page*/

.results-page-alert-wrapper {
    display: flex;
    background-color: #2cb8e2;
    justify-content: center;
    align-items: center;
    margin: 25px 0;
    border-radius: 4px;
    padding: 10px;
}

.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 {
    font-weight: bold;
    height: 36px;
    border-radius: 4px;
    width: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    background-color: #f8ca33;
    color: #3a3a3a;
}

.fhub .results-page-alert-button {
    background-color: #f8ca33;
    color: #3a3a3a;
}

.results-page-alert-button:hover {
    background-color: #f8ca33;
    color: #3a3a3a;
}

.fare-alerts-success-and-error-wrapper {
    position: relative;
}

.fare-alert-error-french {
    display: block;
    position: absolute;
    top: -35px;
    z-index: 2;
    background: #ff6432;
    padding: 7px 10px;
    text-align: center;
    line-height: 1.1;
    font-weight: 700;
    color: #FFFFFF;
    font-size: 12px;
    border-radius: 4px;
}

.fare-alert-success-french {
    display: block;
    position: absolute;
    top: -35px;
    z-index: 2;
    background: #81B35B;
    padding: 7px 10px;
    text-align: center;
    line-height: 1.1;
    font-weight: 700;
    color: #FFFFFF;
    font-size: 12px;
    border-radius: 4px;
}

@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;
    }

}
.bottom-alert-wrap {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 18;
}

.bottom-alert-wrap .list {
    position: relative;
}

.bottom-alert-wrap .item {
    margin: 0 10px -65px 0;
    padding: 10px 35px;
    position: relative;
    display: block;
    width: 325px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.2;
    color: #0074a4;
    background: #bdecff;
    border: 1px solid #92cfe8;
    opacity: 0;
    visibility: hidden;
    border-radius: 2px;
    -moz-transition: all 0.2s ease;
    -webkit-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
    transition: all 0.2s ease;
    box-shadow: 0 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 #92cfe8;
    color: #0074a4;
}

.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: #0074a4;
    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: #0074a4;
}
.fare-alert-reminder-sidebar-wrap {
    position: fixed;
    z-index: 19;
    bottom: -35px;
    right: 30px;
    width: 193px;
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    transition: transform 0.3s;
    -ms-transition: transform 0.3s;
}

.fare-alert-reminder-sidebar-wrap.active {
    -webkit-transform: translate3d(0,-100%,0);
    -moz-transform: translate3d(0,-100%,0);
    transform: translate3d(0,-100%,0);
    -ms-transform: translateY(-100%);
}

.fare-alert-reminder-sidebar {
    display: block;
    padding: 10px 20px 10px 15px;
    background: #0074a4;
    font-weight: 700;
    font-size: 12px;
    color: #ffffff;
    line-height: 1.1;
    text-transform: uppercase;
    cursor: pointer;
    border-radius: 3px 3px 0 0;
}

.fare-alert-reminder-sidebar:hover {
    background: #003b54;
    color: #ffffff;
}

.fare-alert-reminder-sidebar .msg-notification {
    padding-top: 1px;
    position: absolute;
    top: -6px;
    left: -7px;
    z-index: 2;
    display: block;
    width: 14px;
    height: 14px;
    font-size: 9px;
    color: #fff;
    text-align: center;
    font-weight: 900;
    line-height: 12px;
    border-radius: 50%;
    background-color: #f05623;
}

.fare-alert-reminder-sidebar .column {

    display: table-cell;
    vertical-align: middle;
}

.fare-alert-reminder-sidebar .icon-wrap {
    width: 14px;
    position: relative;
    font-size: 13px;
}

.fare-alert-reminder-sidebar .icon-wrap i {
    color: #fff;
}

.fare-alert-reminder-sidebar .text {
    padding-left: 5px;
    text-align: center;
}

.close-sidebar-fare-alert-reminder {
    position: absolute;
    top: 50%;
    width: 30px;
    height: 35px;
    right: 0;
    margin-top: -17px;
    text-align: center;
    font-size: 18px;
    font-weight: normal;
    line-height: 33px;
    color: #a2b5d8;
    cursor: pointer;
}

.close-sidebar-fare-alert-reminder:after {
    content: '\00D7';
}
body.checkout {
    margin: 0 0 50px;
    background-color: #f0f0f0;
}

.aa-basic-economy-wrap {
    display: table;
    width: 100%;
    color: #777;
    font-size: 11px;
    background-color: #fffff6;
    border-top: 1px dotted #dadada;
}

.print-hide {
    display: block;
}


body.checkout-b .aa-basic-economy-wrap {
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.checkout-b .aa-basic-economy-wrap {
    margin-top: 0;
    border-top: 0 solid #dadada;
}


.base-economy-disclaimer-aa {
    margin-top: -1px;
    padding: 10px 15px;
    border: 1px solid #e5e5e5;
    line-height: 1.2;
    background: #F4F3F4;
    display: grid;
    grid-template-columns: 12% 88%;
}

.separator-aa {
    font-size: 16px;
}

.aa-header {
    margin-top: 3px;
}

.aa-body {
    font-size: 12px;
    margin: 2.5px 0 10px 0;
}

.aa-citation {
    color: gray;
    font-size: 12.5px;
    margin-bottom: 4px;
}

.aa-logo {
    height: 28px;
    margin: 25px;
}


.aa-basic-economy-left {
    padding: 10px 0 10px 10px;
    display: table-cell;
    min-width: 290px;
    font-weight: bold;
}

.aa-basic-economy-right {
    padding: 10px;
    display: table-cell;
    line-height: 15px;
    width: 100%;
}

.aa-dagger {
    margin-top: 5px;
    padding-top: 5px;
    border-top: 1px dashed #dadada;
}

.details-modal-warning {
    margin: 0 0 15px;
    padding: 5px 10px;
    color: #c38b05;
    background: #fff;
    border: 1px solid #f2ae0c;
}

.container-secure-booking {
    border: 0 solid #e1e1e1;
    overflow: hidden;
    background: #fff;
}

.secure-booking-left, .secure-booking-middle, .secure-booking-right {
    padding: 9px 15px;
    width: 33.3333%;
    border-right: 1px solid #e0e0e0;
    float: left;
    color: #666;
}

.secure-booking-right {
    border-right: 0 solid #e0e0e0;
}

.container-content-checkout {
    margin: 20px auto 40px;
    padding: 0 15px 50px;
    max-width: 1024px;
}

.checkout-inner-left {
    width: 73%;
    float: left;
    overflow: hidden;
}

.checkout-inner-right {
    padding-left: 20px;
    width: 27%;
    float: left;
}

.checkout-destination-title {
    margin: 20px 0;
    line-height: 23px;
}

.modal-inner-left .checkout-destination-title {
    margin: 0 0 15px;
}

ul.guarantee-list {
    margin: 10px 0 0 0 !important;
    list-style-type: none !important;
}

ul.guarantee-list li {
    padding: 6px 0;
    border-top: 1px solid #e1e1e1;
}

ul.guarantee-list li .trigger {
    padding-left: 5px;
}

ul.guarantee-list li:last-child {
    border-top: 1px dotted #e1e1e1;
}

.box-checkout {
    margin: 0 0 20px;
    background: #fff;
}

.box-checkout-title {
    padding: 10px 15px 8px 15px;
    font-size: 15px;
    font-weight: 600;
    overflow: hidden;
    color: #fff;
    background: #0072a3;
    position: relative;
}

.box-checkout-title-csa {
    padding: 15px;
    font-size: 15px;
    font-weight: 600;
    overflow: hidden;
    color: #fff;
    background: #effaff;
    position: relative;
    border-top: 1px solid #b1d7e6;
    border-bottom: 1px solid #b1d7e6;
}

.box-checkout-content {
    padding: 15px;
    background: #fff;
}


/* aa seat upsell */
.box-checkout-content-aa {
    background: #fff;
}

.subtitle-aa-upsell {
    float: right;
    font-size: 12px;
    font-weight: 400;
    color: #cbe2ec;
}

.box-content-inner-blue {
    padding: 30px 15px;
    background-color: #f8fdff;
    background-position: center;
    background-repeat: no-repeat;
}

.aa-upsell-list-wrap {
    margin-left: 15px;
    width: 100%;
}

.aa-upsell-list-left {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
}

.aa-upsell-list-right {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
}

.aa-upsell-list-left ul li {
    padding: 0 0 10px;
    color: #444;
}

.aa-upsell-list-left ul li:last-child {
    padding: 0;
}

.aa-upsell-list-right ul li {
    margin-left: 17px;
    padding: 0 0 1px;
    color: #444;
    list-style-type: disc;
}

.aa-upsell-list-right ul li:last-child {
    padding: 0;
}

.aa-upsell-choice {
    background-color: #fff;
}

.aa-upsell-choice ul {
    border-top: 1px dotted #dadada;
}

.aa-upsell-choice ul input {
    position: relative;
    top: 2px;
}

.aa-upsell-choice ul li {
    padding: 12px 15px;
    border-bottom: 1px dotted #dadada;

}
/* aa seat upsell end */


/* premium economy experiment css */
.premium-economy-experiment.box-checkout .tooltip-content {
    display: none;
}

.premium-economy-experiment.box-checkout .aa-upsell-list-wrap {
    padding: 20px 0;
}

.premium-economy-experiment.box-checkout .aa-upsell-list-wrap .premium-feature img {
    max-width: 26px;
    display: inline-block;
    width: 10%;
    vertical-align: middle;
}

.premium-economy-experiment.box-checkout .aa-upsell-list-wrap .premium-feature span {
    display: inline-block;
    width: 85%;
    vertical-align: middle;
    margin-left: 2%;
    line-height: 18px;
}

.premium-economy-experiment.box-checkout .aa-upsell-list-wrap ul {
    display: flex;
    flex-wrap: wrap;
}

.premium-economy-experiment.box-checkout .aa-upsell-list-wrap li {
    position: relative;
    width: 30%;
    margin: 15px 1%;
}

.premium-economy-experiment.box-checkout .aa-upsell-list-wrap li .info-tooltip {
    display: inline;
}

.premium-economy-experiment.box-checkout .upsell-button-row {
    position: relative;
    background: white;
    padding: 10px;
    text-align: center;
    background: #FAFAFA;
}

.premium-economy-experiment.box-checkout .upsell-button-shell.checkout-book-button {
    padding: 10px 15px;
    font-size: 16px;
    font-weight: 600;
    font-family: arial;
}

.premium-economy-experiment.box-checkout #upgrade-button {
    border-top: 0;
    border-right: 0;
    border-left: 0;
}

.premium-economy-experiment.box-checkout #upgrade-button.upgrade-enabled,
.premium-economy-experiment.box-checkout #upgrade-button.upgrade-button-clicked{
    background: #358E09;
    border-color: #163A05;
}

.premium-economy-experiment.box-checkout #upgrade-button.upgrade-enabled:hover {
    cursor: default;
}

.premium-economy-experiment.box-checkout #upgrade-button.downgrade-button-clicked {
    background: #E20000;
    border-color: #820000;
}

.premium-economy-experiment .upgrade-button-message {
    margin-top: 5px;
    text-decoration: underline;
    text-align: center;
    position: relative;
    margin-right: 5px;

}

.premium-economy-experiment p.upgrade-button-message {
    font-style: italic;
    text-decoration: none;
    color: #999;
}

.premium-economy-experiment #downgrade-button:hover {
    cursor: pointer;
}

/* premium economy experiment end */

.box-checkout-content .error {
    border-color: #d03636;
    box-shadow: 0 0 3px rgba(208, 54, 54, 0.34);
}

.title-links-right {
    float: right;
    font-size: 12px;
    font-weight: normal;
}

.box-checkout-title a {
    color: #b1e5ff;
}

.box-checkout-title a:hover {
    color: #e8f7fe;
}

.box-checkout-title-cards {
    position: absolute;
    top: 3px;
    right: 3px;
}

ul.passenger-info-list {
    margin: 0 !important;
    padding: 0 0 15px;
    font-size: 12px;
}

ul.passenger-info-list li {
    padding: 15px 0 5px;
    border-bottom: 1px solid #e1e1e1;
    overflow: hidden;
}

ul.passenger-info-list li:last-child {
    border-bottom: 0;
    overflow: hidden;
}

.passenger-info-list-indent-row {
    margin-left: 91px;
    overflow: hidden;
}

.drop-down {
    padding: 5px 3px;
    border: 1px solid #bbb;
    border-radius: 4px;
}

.container-passenger-info-expand {
    margin-left: 40px;
    padding-bottom: 5px;
    overflow: hidden;
}

.container-booking-btn {
    margin-bottom: 0;
    padding: 15px 0 10px 5px;
    text-align: center;
}

.container-airfare-details {
    margin-bottom: 20px;
    background: #fff;
    overflow: hidden;
}

.airfare-details-title {
    padding: 13px 15px 11px 15px;
    border-bottom: 2px solid #f0f0f0;
    background: #fff;
    font-size: 16px;
}

.container-airfare-details-content {
    margin: 11px 15px 15px 15px;
    overflow: hidden;
}

.airfare-details-price-breakdown {
    padding: 7px 0;
    line-height: 15px;
    border-top: 1px solid #e1e1e1;
    display: table;
    width: 100%;
}

.airfare-details-price-breakdown-left {
    display: table-cell;
    vertical-align: middle;
}

.airfare-details-price-breakdown-right {
    display: table-cell;
    vertical-align: middle;
    text-align: right;
}

.airfare-details-price-expand, #airfare-details-price-expand {
    margin-left: 10px;
    padding-bottom: 7px;
}

.airfare-details-price-total {
    text-align: right;
}

ul.airfare-details-breakdown {
    margin: 0;
    overflow: hidden;
    list-style: none;
}

ul.airfare-details-breakdown li {
    margin: 0;
    overflow: hidden;
    list-style: none;
    font-size: 11px;
    color: #666;
}

ul.airfare-details-price-total {
    padding-top: 10px;
    border-top: 1px solid #e1e1e1;
}

ul.airfare-details-price-total li {
    padding: 2px 0;
    text-align: right;
}

ul.airfare-details-price-total li:last-child {
    font-size: 11px;
    line-height: 12px;
    color: #999;
}

.affiliate-string-price-wrap {
     display: flex;
     justify-content: space-between;
     align-items: flex-end;
}

.affiliate-string-price-wrap .affiliate-string-number {
    color: #DADADA;
    font-size: 9px;
    line-height: 13px;
}

.airfare-details-top {
    padding-bottom: 10px;
}

a.grey-big-btn {
    padding: 9px 50px 10px 50px;
    border: 1px solid #e1e1e1;
    border-radius: 6px;
    font: 700 13px arial, sans-serif;
    color: #0072a3;
    background: #f7f7f7;
}

a.grey-big-btn:hover {
    color: #444;
    background: #f1f1f1;
}

.container-toll-free-content {
    padding: 15px;
    background: url("https://www.flighthub.com/images/customer-support-small.jpg") no-repeat;
    background-position: right;
}

.hotel-upsale-title {
    padding: 12px 15px 5px 15px;
    border-bottom: 1px solid #e1e1e1;
    background: #f7f7f7;
    line-height: 18px;
}

.container-hotel-upsale-content {
    padding: 0 15px 11px 15px;
    overflow: hidden;
}

.container-hotel-upsale {
    margin: 38px 0 20px;
    padding-bottom: 10px;
    border: 1px solid #e1e1e1;
    position: relative;
}

.crest-hotel-promo {
    position: absolute;
    top: -27px;
    left: -15px;
}

.hotel-promo-info {
    margin-bottom: 14px;
    width: 168px;
}

.hotel-promo-photo-wrap-checkout {
    margin: 0;
    position: relative;
    width: 168px;
}

.hotel-promo-photo-discount {
    padding: 2px 5px;
    background: rgba(255, 255, 255, 0.8);
    border-bottom-left-radius: 4px;
    font-weight: 700;
    position: absolute;
    right: 4px;
    top: 4px;
}

ul.hotel-upsale-list li {
    padding: 11px 25px 19px 26px;
    border-bottom: 1px solid #e1e1e1;
    text-align: center;
    overflow: hidden;
}

.insurance-table {
    margin-bottom: 5px;
    border: 1px solid #e1e1e1;
}

ul.insurance-table-list {
    margin: 0 !important;
}

ul.insurance-table-list li {
    padding-bottom: 4px;
    border-bottom: 1px solid #e1e1e1;
    overflow: hidden;
    list-style-type: none;
}

ul.insurance-table-list li:last-child {
    border-bottom: 0;
}

.insurance-table-block-title {
    margin-bottom: -1000px;
    padding: 6px 10px 1000px 10px;
    font-size: 11px;
    width: 111px;
    float: left;
}

.insurance-table-block-content {
    margin-bottom: -1000px;
    width: 160px;
    padding: 6px 10px 1000px 10px;
    float: left;
    border-left: 1px solid #e1e1e1;
    text-align: center;
}

.container-insurance-btn {
    margin-bottom: 5px;
    width: 676px;
    overflow: hidden;
}

.insurance-btn-block-left {
    padding-top: 40px;
    width: 133px;
    float: left;
}

.insurance-btn-block-right {
    margin: 0 3px 0 2px;
    padding: 12px 15px 10px 15px;
    border: 1px solid #e1e1e1;
    background: #f7f7f7;
    float: left;
    width: 144px;
    text-align: center;
    min-height: 80px;
}

.insurance-btn-block-right:hover {
    background: #f0fed6;
}

.container-insurance-decline {
    padding: 13px 15px 10px 10px;
    border: 1px solid #e1e1e1;
    background: #f7f7f7;
    width: 648px;
    overflow: hidden;
}

.insurance-decline-left {
    float: left;
}

.insurance-decline-middle {
    padding-left: 4px;
    float: left;
}

.insurance-decline-right {
    float: right;
    text-align: center;
}

.container-create-account {
    margin: 15px 0 0;
    padding: 15px;
    border: 1px solid #e1e1e1;
    background: #f7f7f7;
}

.create-account-title {
    padding: 0 0 10px;
    border-bottom: 1px solid #e1e1e1;
}

table.insurance-table {
    display: table;
    width: 100%;
    border-bottom: 2px solid #fff;
}

table.insurance-table td {
    padding: 10px 5px;
}

.insurance-header-wrap {
    overflow: hidden;
}

.insurance-header-left {
    float: left;
    width: 190px;
}

.insurance-header-right {
    margin-left: 210px;
}

.container-flight-details {
    overflow: hidden;
}

ul.flight-details-list-compact {
    margin: 0;
}

ul.flight-details-list-compact li {
    overflow: hidden;
}

ul.flight-details-list {
    border: 0 solid #e1e1e1;
    list-style: none;
}

ul.flight-details-list li {
    padding: 0;
    overflow: hidden;
    list-style: none;
}

.segment-airline {
    padding: 8px 10px 0 0;
    width: 25%;
    float: left;
    text-align: center;
}

.segment-airline-icon {
    text-align: center;
}

.segment-airline-name {
    color: #999;
    line-height: 13px;
    text-align: center;
}

.segment-info {
    padding: 1px 0;
    width: 75%;
    float: left;
}

.segment-time {
    width: 20%;
    float: left;
}

.segment-city {
    width: 65%;
    float: left;
}

.segment-duration {
    padding-right: 10px;
    width: 15%;
    float: left;
    text-align: right;
}

.segment-title {
    background: #f3faff;
    border: 1px solid #e1e1e1;
    font-weight: 700;
}

.segment-title-direction {
    padding: 3px 10px;
    float: left;
}

.segment-title-time {
    padding: 3px 10px;
    float: right;
}

.segment-carrier {
    margin-left: 25%;
    font-size: 11px;
    color: #999;
}

.segment-stopover {

}

.segment-stopover-left {
    padding: 3px 10px;
    float: left;
}

.segment-stopover-middle {
    padding: 3px 10px;
    float: left;
}

.segment-stopover-right {
    padding: 3px 10px;
    float: left;
}

.inbound-outbound-date {
    width: 300px;
    float: left;
}

.inbound-outbound-duration {
    width: 200px;
    float: left;
    text-align: right;
}

.container-flight-details-block {
    margin: 0 16px;
    overflow: hidden;
}

ul.flight-details-info {
    margin-left: 15px;
    width: 475px;
    float: left;
}

ul.flight-details-info li {
    padding: 6px 0 3px 0;
    overflow: hidden;
}

ul.flight-details-info li:last-child {
    padding: 3px 0 9px 0;
}

.takeoff-landing-title {
    width: 70px;
    float: left;
}

.flight-date {
    width: 90px;
    float: left;
}

.airport-code {
    width: 90px;
    float: left;
}

.airport-location {
    width: 180px;
    float: left;
}

.cabin {
    font-size: 11px;
}

.flight-details-sub-duration {
    margin-left: 15px;
    padding-top: 26px;
    float: left;
    width: 51px;
    text-align: right;
}

ul.review-details-list {
    margin: 0 0 15px;
    overflow: hidden;
}

ul.review-details-list > li:first-child {
    padding: 2px 0 10px;
    border-bottom: 1px solid #e1e1e1;
}

ul.review-details-list > li {
    padding: 11px 0 10px 0;
    overflow: hidden;
    border-bottom: 1px dotted #e1e1e1;
}

ul.review-details-list > li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

ul.review-details-sub-list {
    margin-top: 10px;
}

ul.review-details-sub-list > li {
    padding: 5px 0 0 17px;
}

ul.review-details-term-list {
    border: 0 solid #e1e1e1;
}

ul.review-details-term-list > li {
    padding: 11px 15px 5px 15px;
}

ul.review-details-term-list > li:last-child {
    margin: 0;
    padding: 0 15px 10px;
}

ul.review-details-term-sub-list {
    margin-left: 43px;
    list-style: disc !important;
}

ul.review-details-term-sub-list > li {
    padding-top: 6px;
}

.review-details-footer {
    padding: 15px;
    border: 1px solid #e1e1e1;
    background: #f7f7f7;
    overflow: hidden;
    text-align: center;
}

.passenger-details-footer {
    padding: 2%;
    border: 1px solid #e1e1e1;
    background: #f7f7f7;
    overflow: hidden;
}

table.data-table {
    margin: 0;
    padding: 0;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
    display: table;
    width: 100%;
}

table.data-table td, table.data-table th {
    padding: 5px 15px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    text-align: left;
}

table.alerts {
    margin: 0 0 10px;
    padding: 0;
    display: table;
    width: 100%;
    border-right: 1px solid #d1d1d1;
}

table.alerts th {
    padding: 10px;
    display: table-cell;
    text-align: left;
    border-bottom: 1px solid #d1d1d1;
    border-left: 1px solid #d1d1d1;
}

table.alerts tr:nth-child(odd) {
    background: #f9f9f9;
}

table.alerts tr:nth-child(even) {
    background: #f5f5f5;
}

table.alerts td {
    padding: 10px;
    display: table-cell;
    text-align: left;
    border-bottom: 1px solid #d1d1d1;
    border-left: 1px solid #d1d1d1;
}

.baggage-fees {
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
}

.baggage-fees-cell {
    padding: 5px 15px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    float: left;
    width: 50%;
    text-align: center;
}

table.travellers-receipt {
    margin: 20px 0 0;
    padding: 0;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
    display: table;
    width: 100%;
}

table.travellers-receipt td {
    padding: 5px 15px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    text-align: left;
}

table.travellers-receipt th {
    padding: 5px 15px;
    background: #f1f1f1;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    text-align: left;
}

.ins-top-wrap {
    overflow: hidden;
}

.ins-top-left {
    float: left;
}

.ins-top-right {
    border-left: 1px solid #dedede;
    margin-left: 20px;
    padding-left: 15px;
    float: left;
    line-height: 24px;
}

.fixed-summary {
    position: absolute;
    margin-left: 745px;
    width: 248px;
}

.optional-services-wrap {
    padding: 5px 0;
    overflow: hidden;
}

.optional-services-left {
    float: left;
}

.optional-services-right {
    float: right;
}

.ach-services-wrap {
    overflow: hidden;
}

.ach-services-left {
    float: left;
}

.ach-services-right {
    margin-left: 285px;
    text-align: left;
}

.ach-services-right ul {
    margin: 5px 0 0 0;
    list-style-type: disc;
}

.sb-button-wrap {
    padding: 10px 0;
    overflow: hidden;
}

.sb-button-left {
    padding-left: 25px;
    float: left;
}

.sb-button-right {
    padding-right: 25px;
    float: right;
}

.billing-title {
    padding-top: 7px;
}

table.baggage-fees-modal {
    margin: 0;
    padding: 0;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
    display: table;
    width: 100%;
    background: #fff;
    text-align: left;
    table-layout: fixed;
}

table.baggage-fees-modal td {
    padding: 10px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    word-wrap: break-word;
    font-size: 11px;
    line-height: 15px;
}

table.baggage-fees-modal th {
    padding: 10px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 2px solid #ccc;
    display: table-cell;
}

.important-info-checkout {
    padding: 10px;
    border: 1px solid #f9b206;
    background: #fff;
    border-radius: 5px;
}

.important-info-checkout ul {
    margin-left: 15px;
    list-style: disc;
}

.important-info-checkout ul li {
    padding: 12px 0 0;
}

/* modal start */

#modal_box {
    border-radius: 5px;
    box-shadow: 0 0 7px 0 #111;
}

.container-modal {
    padding: 15px;
    background: #fff;
    border-radius: 5px;
}

.modal-close-btn {
    position: absolute;
    top: -20px;
    right: -18px;
    z-index: 1;
}

.modal-close-btn .fa {
    color: #fff;
    font-size: 20px;
}

.modal-close-btn .fa:hover {
    color: #f05623;
}

.idle-modal-close-btn {
    position: absolute;
    top: -20px;
    right: -18px;
    z-index: 1;
}

.idle-modal-close-btn .fa {
    color: #fff;
    font-size: 20px;
}

.idle-modal-close-btn .fa:hover {
    color: #f05623;
}

.modal-inner-left {
    width: 676px;
    float: left;
    overflow: hidden;
    margin-right: 15px;
    text-align: left;
}

.modal-inner-right {
    width: 267px;
    float: left;
    overflow: hidden;
    text-align: left;
}

.container-important-info {
    margin: 15px 15px 0 0;
    width: 674px;
    overflow: hidden;
    border: 1px solid #e1e1e1;
    float: left;
}

.container-important-info2 {
    margin-top: 15px;
    border: 1px solid #e1e1e1;
    overflow: hidden;
    text-align: left;
}

.important-info-title {
    margin: 0;
    padding: 8px 0 4px 8px;
    border-bottom: 1px solid #e1e1e1;
    font-size: 16px;
    overflow: hidden;
    background: #f7f7f7;
}

.important-info-title2 {
    margin: 0;
    padding: 11px 15px;
    border-bottom: 1px solid #e1e1e1;
    background: #f7f7f7;
    font-size: 16px;
}

.container-important-info-content {
    margin: 0;
    overflow: hidden;
    line-height: 15px;
    padding: 0 15px 11px 15px;
}

.container-important-info-content2 {
    margin: 14px 15px 11px 15px;
    overflow: hidden;
    line-height: 15px;
}

ul.modal-important-info-list {
    list-style: disc;
    width: 317px;
    float: left;
}

ul.modal-important-info-list li {
    margin-left: 13px;
    padding-top: 13px;
    float: left;
    width: 304px;
}

ul.modal-important-info-list2 {
    margin: 12px 0 13px;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    list-style: disc;
}

ul.modal-important-info-list2 li {
    margin-left: 13px;
    padding-top: 13px;
}

ul.modal-important-info-list2 li:last-child {
    padding-bottom: 12px;
}

.container-modal-content {
    overflow: hidden;
    background: #fff;
    text-align: center;
}

.container-modal-content .privacy-policy {
    padding: 8px 0 0;
    font-size: 11px;
    text-align: center;
}

.container-modal-content .privacy-policy a {
    color: #999;
}

.modal-inner-top {
    margin-bottom: 15px;
    overflow: hidden;
}

.modal-inner-top-left {
    line-height: 24px;
    text-align: left;
}

.modal-inner-top-right {
    padding-top: 15px;
    float: right;
    width: 267px;
    text-align: center;
}

.modal-inner-bottom {
    float: left;
    width: 676px;
    text-align: left;
}

.container-contact-info {
    margin: 15px 0 0 691px;
    width: 265px;
    border: 1px solid #e1e1e1;
}

.container-airfare-details-modal {
    margin-bottom: 15px;
    border: 1px solid #e1e1e1;
}

.airfare-details-title-modal {
    padding: 13px 15px 11px 15px;
    background: #f5f5f5;
    font-size: 16px;
    border-bottom: 1px solid #e1e1e1;
}

.spinner {
    margin: 3px auto;
    font-size: 5px;
    position: relative;
    text-indent: -9999em;
    border-right: 1.1em solid;
    border-bottom: 1.1em solid;
    border-top: 1.1em solid;
    border-color: #DEDEDE;

    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);

    -webkit-animation: modalspinner 0.5s infinite linear;
    animation: modalspinner 0.5s infinite linear;
    border-left: 1.1em solid #455D88;
}

.spinner,
.spinner:after {
    width: 6em;
    height: 6em;
    border-radius: 50%;
}

@-webkit-keyframes modalspinner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes modalspinner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

/* modal end */

/* tipsy tooltip */
.tipsy {
    padding: 5px;
    font-size: 11px;
    line-height: 15px;
    position: absolute;
    z-index: 100000;
}

.tipsy-inner {
    padding: 8px;
    background: #fff;
    color: #333;
    max-width: 300px;
    text-align: left;
    border: 1px solid #666;
    border-radius: 3px;
}

.tipsy-arrow {
    position: absolute;
    background: url("https://www.flighthub.com/images/tipsy.gif") no-repeat top left;
    width: 9px;
    height: 5px;
}

.tipsy-n .tipsy-arrow {
    margin-left: -4px;
    top: 0;
    left: 50%;
}

.tipsy-nw .tipsy-arrow {
    top: 0;
    left: 10px;
}

.tipsy-ne .tipsy-arrow {
    top: 0;
    right: 10px;
}

.tipsy-s .tipsy-arrow {
    margin-left: -4px;
    bottom: 0;
    left: 50%;
    background-position: bottom left;
}

.tipsy-sw .tipsy-arrow {
    bottom: 0;
    left: 10px;
    background-position: bottom left;
}

.tipsy-se .tipsy-arrow {
    bottom: 0;
    right: 10px;
    background-position: bottom left;
}

.tipsy-e .tipsy-arrow {
    margin-top: -4px;
    top: 50%;
    right: 0;
    width: 5px;
    height: 9px;
    background-position: top right;
}

.tipsy-w .tipsy-arrow {
    margin-top: -4px;
    top: 50%;
    left: 0;
    width: 5px;
    height: 9px;
}

.airport-suggestion-warning {
    padding: 15px;
    margin-bottom: 25px;
    border: 1px solid #f3ce95;
    border-radius: 6px;
    background-color: #fff8ee;
}

.airport-suggestion-warning .fa {
    margin-right: 10px;
}

.airport-suggestion-title {
    margin-bottom: 25px;
    padding-bottom: 5px;
    font-size: 24px;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px solid #ddd;
}

.fares-validate-wrap {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

.segment-wrap-validate h2 {
    margin-bottom: 15px;
    padding-bottom: 5px;
    font-size: 18px;
    font-weight: 600;
    border-bottom: 1px dashed #dcdcdc;
}

.container-booking-btn {
    margin-top: 25px;
}

.airport-suggestion-btn {
    padding: 15px 25px;
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    background-color: #ff5200;
    display: inline-block;
    border-radius: 6px;
    transition: all 0.3s;
    cursor: pointer;
}

.airport-suggestion-btn:hover {
    color: #fff;
    background-color: #d14300;
}

/* account */
.container-account {
    overflow: hidden;
    background: #fff;
}

.container-suggestions {
    padding-bottom: 25px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.faq-content {
    margin-left: 272px;
    background: #f9f9f9;
    border: 1px solid #e1e1e1;
}

.receipt-title-blue {
    padding: 10px 15px;
    background: #0072a3;
    color: #fff;
    overflow: hidden;
}

.receipt-title-yellow {
    padding: 10px 15px;
    background: #f9b206;
    color: #333;
    overflow: hidden;
}

.receipt-title-orange {
    padding: 10px 15px;
    background: #ec5300;
    color: #fff;
    overflow: hidden;
}

.receipt-title-red {
    padding: 10px 15px;
    background: #900;
    color: #fff;
    overflow: hidden;
}

.receipt-title-warning {
    padding: 10px 15px;
    background: #f0e422;
    color: #333;
    overflow: hidden;
}

.receipt-title-blue a, .receipt-title-yellow a, .receipt-title-orange a, .receipt-title-red a {
    color: #fff;
}

.account-title {
    margin: 0;
    padding: 0 0 15px;
    border-bottom: 1px solid #e1e1e1;
    overflow: hidden;
}

.traveller-title {
    margin: 0;
    padding: 10px 0 15px;
    border-bottom: 1px solid #e1e1e1;
    overflow: hidden;
}

.receipt-travellers {
    overflow: hidden;
}

.receipt-travellers-content {
    margin-bottom: 15px;
    padding: 15px;
    background: #fff;
}

.receipt-content,
.receipt-itinerary,
.receipt-payment {
    margin-bottom: 15px;
    padding: 15px;
    background: #fff;
    position: relative;
}

ul.insurance-info-list li {
    margin-bottom: 5px;
    padding: 0 0 5px;
}

.login-info-content {
    margin: 0;
    padding: 0 0 9px 0;
    border-bottom: 1px solid #e1e1e1;
    overflow: hidden;
}

.account-wrap {
    padding: 15px 15px 25px;
}

.login-info-list-indent-row {
    padding: 5px 0;
    overflow: hidden;
    text-align: left;
}

.container-account-receipt-hotel-info {
    margin: 10px 0 0;
    padding: 10px 0;
    border-top: 1px solid #e1e1e1;
    overflow: hidden;
}

.account-receipt-hotel-img {
    float: left;
    width: 200px;
}

.account-receipt-hotel-info {
    margin-left: 210px;
}

ul.hotel-info-list li {
    padding: 2px 0;
    overflow: hidden;
}

ul.hotel-info-list li:first-child {
    border-bottom: 0;
}

ul.hotel-info-list li:last-child {
    border-bottom: 0;
}

.account-receipt-hotel-checkin {
    margin: 11px 15px 10px 15px;
}

ul.hotel-services-fee-list li {
    padding: 6px 0 5px 0;
    border-bottom: 1px dotted #e1e1e1;
    overflow: hidden;
}

ul.hotel-services-fee-list li:last-child {
    border-bottom: 0;
}

/* receipt stuff */
.details-top-wrap {
    overflow: hidden;
}

.details-top-left {
    height: 125px;
    margin-right: 1%;
    padding: 15px;
    float: left;
    width: 49%;
    border: 1px solid #d1d1d1;
}

.details-top-right {
    margin-left: 1%;
    padding: 15px;
    float: left;
    width: 49%;
    border: 1px solid #d1d1d1;
    line-height: 22px;
}

.details-top-left-wrap {
    overflow: hidden;
    font-weight: 800;
}

.details-top-left-left {
    float: left;
    width: 70%;
}

.details-top-left-right {
    float: left;
    width: 30%;
    text-align: right;
}

.baggage-checkin {
    margin-top: 13px;
    overflow: hidden;
}

.baggage-checkin-left {
    margin-right: 1%;
    float: left;
    width: 49%;
}

.baggage-checkin-right {
    margin-left: 1%;
    float: left;
    width: 49%;
}

a.booking-details {
    margin-bottom: 5px;
    padding: 4px 8px;
    display: block;
    border: 1px solid #d1d1d1;
    box-shadow: inset 0 0 3px #fff;
    border-radius: 5px;
    background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0, #FFFFFF),color-stop(1, #e1e1e1));
    background-image: -o-linear-gradient(bottom, #FFFFFF 0%, #e1e1e1 100%);
    background-image: -moz-linear-gradient(bottom, #FFFFFF 0%, #e1e1e1 100%);
    background-image: -webkit-linear-gradient(bottom, #FFFFFF 0%, #e1e1e1 100%);
    background-image: -ms-linear-gradient(bottom, #FFFFFF 0%, #e1e1e1 100%);
    background-image: linear-gradient(to bottom, #FFFFFF 0%, #e1e1e1 100%);
}

a.booking-details:hover {
    background: #e1e1e1;
}

.details-policy-wrap {
    margin-top: 13px;
    padding: 10px;
    border: 1px solid #d1d1d1;
    background: #f1f1f1;
}

a.details-policy-button {
    display: block;
}

#details-policy {
    margin-top: 5px;
    padding: 10px;
    background: #fff;
    border: 1px solid #d1d1d1;
}

.column-left-receipt {
    float: left;
    width: 252px;
    background: #f5f5f5;
    border: 1px solid #e1e1e1;
}

.column-left-myaccount {
    float: left;
    width: 252px;
    background: #f9f9f9;
    border: 1px solid #e1e1e1;
}

ul.receipt-tabs{
    margin-bottom: 10px;
    border-bottom: 5px solid #0072a3;
    overflow: hidden;
    box-shadow: 0 10px 0 #fff;
}

ul.receipt-tabs li:first-child{
    margin-right: 0;
    padding-top: 6px;
    font-size: 12px;
    float: left;
    width: 50%;
    text-align: center;
}

ul.receipt-tabs li{
    margin-right: 1%;
    float: left;
    width: 24%;
}

ul.receipt-tabs li:last-child{
    margin-right: 0;
    float: left;
    width: 25%;
}

ul.receipt-tabs li a{
    padding: 5px 0;
    display: block;
    text-align: center;
    background: #e1e1e1;
    color: #444;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-top: 1px solid #d1d1d1;
    border-right: 1px solid #d1d1d1;
    border-left: 1px solid #d1d1d1;
}

ul.receipt-tabs li a:hover{
    padding: 5px 0;
    display: block;
    text-align: center;
    background: #0072a3;
    color: #fff;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-top: 1px solid #0072a3;
    border-right: 1px solid #0072a3;
    border-left: 1px solid #0072a3;
}

ul.receipt-tabs li a.active{
    padding: 5px 0;
    display: block;
    text-align: center;
    background: #0072a3;
    color: #fff;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-top: 1px solid #0072a3;
    border-right: 1px solid #0072a3;
    border-left: 1px solid #0072a3;
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

.column-sidebar-wrap {
    padding: 15px;
    overflow: hidden;
}

.column-sidebar-title {
    margin: 0 0 8px;
    padding: 0 0 3px;
    border-bottom: 1px solid #e1e1e1;
    font-weight: 700;
}

.column-sidebar-list li {
    padding: 5px 0;
}

.column-right-title {
    margin: 0 15px;
    padding: 0 0 6px;
    border-bottom: 1px solid #e1e1e1;
    font-size: 18px;
    overflow: hidden;
}

table.booking-info {
    margin: 0;
    padding: 0;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
    display: table;
    width: 100%;
}

table.booking-info td, table.booking-info th {
    padding: 5px 15px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    text-align: left;
}

.column-right-content {
    margin: 0 15px 15px;
    overflow: hidden;
}

/* pagination */
.container-paging {
    margin-top: 20px;
    text-align: center;
}

.pager ul {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.pager ul li {
    flex: 1;
    font-size: 18px;
    font-weight: bold;
    border-top: 1px solid #dcdcdc;
    border-right: 1px solid #dcdcdc;
}

.pager ul li.active {
    padding: 10px 0;
    background: #2cb8e2;
    color: #fff;
    cursor: default;
}

.pager ul li a {
    margin: 0;
    padding: 10px 0;
    display: block;
    cursor: pointer;
    background: #fff;
    color: #2cb8e2;
    transition: all 0.2s;
}

.pager ul li a:hover,
.pager ul li span.item:hover {
    color: #fff;
    background: #2cb8e2;
}

.pager ul li.no-previous {
    padding: 10px 0;
    color: #dcdcdc;
}

.processing-box {
    margin: 100px 0 0 200px;
    padding: 15px 20px;
    position: fixed;
    display: none;
    text-align: center;
    background: #fff;
    float: left;
}

ul.childbox li {
    padding: 8px 0;
    overflow: hidden;
}

ul.childbox li:not(:last-child) {
    border-bottom: 1px solid #ccc;
}

ul.childbox li:last-child {
    padding-bottom: 0;
}

ul.childbox li:first-child {
    padding-top: 0;
}

ul.childbox li ul li {
    margin: 0 50px;
    padding: 0 !important;
    border: 0 !important;
    list-style: disc;
    overflow: visible;
}

ul.childbox li ol li {
    margin: 0 50px;
    list-style: decimal !important;
    border: 0 !important;
    overflow: visible;
}

/* === Transition Logo === */

.site-logo.transition {
    display: inline-block;
}

/* transition loading */
.container-transition {
    margin: 166px 0 0 -241px;
    padding: 15px;
    border: 0 solid #e1e1e1;
    text-align: center;
    font-size: 18px;
    line-height: normal;
    width: 482px;
    left: 50%;
    background-color: #fff;
    position: relative;
}

#fare-loading-modal {
    visibility: visible;
    left: 0;
    top: 0;
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 1000;
    background: rgba(0, 0, 0, 0.6);
}

#fare-loading-modal .dimmed {
    background: rgba(0, 0, 0, 0.8);
}

.container-transition-alert {
    padding: 15px;
    background: #f9f9f9;
    overflow: hidden;
    border-radius: 5px;
    border: 1px solid #dadada;
}

.transition-alert-warning {
    margin: 14px 15px 0 15px;
    width: 450px;
}

.alert-modal-title {
    font-size: 16px;
    font-weight: 600;
    line-height: 26px;
    color: #666;
}

.alert-modal-subtitle {
    margin-bottom: 10px;
    font-size: 12px;
    line-height: 14px;
    font-weight: normal;
}

.expire-alert-wrap {
    margin: 0 auto;
    display: table;
    width: 96%;
}

.expire-alert-left {
    padding-right: 3px;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.expire-alert-left input {
    width: 100%;
}

.expire-alert-right {
    display: table-cell;
    min-width: 125px;
    vertical-align: middle;
}

.expire-alert-right a {
    padding: 10px 15px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    display: block;
    background: #ec5300;
    cursor: pointer;
    border-radius: 2px;
    text-align: center;
}

.expire-alert-right a:hover {
    color: #fff;
}

.transition-alert-form {
    padding-top: 8px;
    text-align: left;
}

/* validation page */

.container-validate {
    margin: 95px auto 15px;
    width: 275px;
    text-align: center;
}

.container-validate-loading {
    margin: 5% auto 0 auto;
    width: 95%;
    background: #fff;
    text-align: center;
    max-width: 450px;
}

.container-validate-loading.generic {
    max-width: 350px;
}

.container-validate-loading.multi-city {
    max-width: 600px;
}

.container-validate-loading .site-logo {
    margin: 0 auto 15px auto;
}

.container-validate-loading .validate-title {
    font-weight: 700;
    font-size: 20px;
    line-height: 1.1;
    color: #999;
    margin-bottom: 15px;
    padding: 10px 0;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}

.container-validate-loading .validate-segment {
    color: #666;
    margin: 5px 0;
    font-weight: 700;
    font-size: 16px;
}

.fare-change-btns {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
}

.fare-change-btns-item a.see-more {
    padding: 10px 25px;
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #006699;
    background-color: #ececec;
    text-align: center;
    border-radius: 2px;
    border-bottom: 3px solid #cccccc;
    transition: all 0.2s;
    cursor: pointer;
    font-family: 'Source Sans Pro', sans-serif;
}

.validation-title {
    padding: 10px 0;
    font-size: 16px;
    border-top: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
}

#validating_package {
    margin-top: 20px;
}

#validating_package .loader {
    margin: 25px auto;
}

.transition-error-wrap {
    margin: 0 auto;
    padding: 15px 0;
}

table.cost td {
    padding: 5px;
}

ul.lined li {
    padding: 3px 0;
    border-bottom: 1px dotted #d1d1d1;
}

/* Tooltip */
#cvv-pop-tooltip-content {
    display:none;
}

.container-booking-btn{
    padding:10px 0 20px;
    text-align:center;
}

a.orange-big-btn {
    padding: 12px 25px;
    font: 300 22px helvetica, arial, sans-serif;
    color: #fff;
    background-color: #ff5200;
    display:inline-block;
    cursor: pointer;
    border-radius: 2px;
    transition: background-color 0.2s;
}

a.orange-big-btn:hover {
    background-color: #c64102;
    color: #fff;
}

a.button-orange-sm {
    padding: 7px 10px;
    font: bold 12px arial, sans-serif;
    color: #fff;
    background: #ff5200;
    border: 1px solid #ff5200;
    cursor: pointer;
    border-radius: 2px;
}

a.button-orange-sm:hover {
    background: #c13e00;
}

.checkout-ff-program {
    margin: 10px 1% 5px 0;
    width: 66%;
    float: left;
}

.checkout-ff-number {
    margin: 10px 0 5px 0;
    width: 33%;
    float: left;
}

.checkout-meal-request {
    clear: left;
    margin: 0 0 5px 0;
    width: 100%;
    float: none;
}

.checkout-hotel-fname {
    margin: 10px 1% 5px 0;
    width: 49%;
    float: left;
}

.checkout-hotel-lname {
    margin: 10px 0 5px;
    width: 50%;
    float: left;
}

.checkout-hotel-request {
    margin: 0 0 10px;
}

.checkout-hotel-request textarea {
    width: 100%;
}

.chekout-hotel-select-traveller {
    margin-top: 15px;
    width: 49%;
}

.ff-and-meals {
    padding-top: 7px;
    margin-left: 91px;
}

.ff-and-meals ul li {
    padding: 7px 0;
}

.ff-and-meals .fields-ff {
    padding-top: 10px;
}

.ff-and-meals .fields-ff .fields-box {
    float: left;
    width: 50%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding: 0 4px 10px;
}

#plan-trip-cancellation, #plan-all-inclusive, #plan-medical {

    display: block;
    overflow: hidden;
    width: 100%;

}

#plan-trip-cancellation ul span.green-bright,
#plan-all-inclusive ul span.green-bright,
#plan-medical ul span.green-bright {
    color: #0f547f !important;
}


@media only screen and (max-width: 670px) {
    .ff-and-meals .fields-ff .fields-box {
        text-overflow: initial;
        white-space: normal;
    }
}

.ff-and-meals .fields-ff .fields-box:nth-child(odd) {
    padding-left: 0;
}

.ff-and-meals .fields-ff .fields-box:nth-child(even) {
    padding-right: 0;
}

.ff-and-meals .form-error {
    padding-top: 10px;
}

.checkout-account-email {
    margin: 10px 1% 10px 0;
    float: left;
    width: 49%;
}

.checkout-account-emailconfirm {
    margin: 10px 0 10px 0;
    float: left;
    width: 50%;
}

.checkout-create-account-email {
    margin: 10px 1% 1px 0;
    float: left;
    width: 49%;
}

.checkout-create-account-emailconfirm {
    margin: 10px 0 1px 0;
    float: left;
    width: 50%;
}

/* usd display */

.usd-office-warning {
    margin: 7px 0;
    padding: 8px 10px;
    font-size: 11px;
    font-weight: 400;
    line-height: 14px;
    color: #777;
    background-color: #ffffe2;
    border: 1px solid #dadada;
}

.usd-office-msg {
    margin: 7px 0 0;
    padding: 8px 10px;
    font-size: 11px;
    line-height: 14px;
    color: #777;
    font-weight: 400;
    background-color: #ffffe2;
    border: 1px solid #dadada;
}

.total-usd {
    display: table;
    width: 100%;
}

.total-usd-left {
    display: table-cell;
    vertical-align: middle;
}

.total-usd-right {
    display: table-cell;
    text-align: right;
    vertical-align: middle;
}

/* end usd display */

/* insurance page */
.insurance-header-left2 {
    float: left;
    width: 20%;
    background: #f1f1f1;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
}

.insurance-header-right2 {
    padding: 25px;
    float: left;
    width: 80%;
    border: 1px solid #E1E1E1;
    background: #fff;
    box-shadow: -2px 2px 4px #EEEEEE;
    position: relative;
    color: #666;
}

.insurance-header-wrap2 {
    width: 980px;
}

.why-answer-container {
    margin-top: 10px;
    padding: 10px;
    background: #f1f1f1;
    border: 1px solid #dcdcdc;
}

.insurance-package-text-btn {
    overflow: hidden;
    height: 60px;
}

.insurance-package-text-left {
    width: 577px;
    float: left;
}

.insurance-package-btn-right {
    width: 170px;
    float: right;
    text-align: right;
    margin-top: 15px;
}

.insurance-package-table-left-padding {
    padding: 15px;
    border-bottom: 1px solid #e1e1e1;
    width: 157px;
    box-shadow: inset 1px 1px 0 #fff;
}

.insurance-package-table-right-padding {
    padding: 15px;
    border-left: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    width: 527px;
    box-shadow: inset 1px 1px 0 #fff;
}

ul.insurance-package-table-list {
    list-style: disc;
    margin-left: 15px;
}

table.manulife-plans {
    margin-top: 20px;
    border-top: 1px solid #d1d1d1;
    border-right: 1px solid #d1d1d1;
}

table.manulife-plans th {
    padding: 10px;
    background: #00693f;
    color: #fff;
    font-size: 24px;
    text-align: center;
    font-weight: normal;
    line-height: 24px;
}

table.manulife-plans td {
    padding: 10px;
    border-bottom: 1px solid #d1d1d1;
    border-left: 1px solid #d1d1d1;
}

table.manulife-plans td.greybg {
    background: #f5f5f5;
}

table.manulife-plans td.greenbg {
    background: #effff7;
}

table.manulife-plans td.yellowbg {
    background: #fdfde3;
}

.container-insurance {
    margin: 0 auto 30px;
    width: 980px;
    overflow: hidden;
}

.insurance-title-email {
    margin-top: 55px;
    padding: 10px 0;
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    position: relative;
}

.insurance-left {
    padding-top: 30px;
    float: left;
    width: 585px;
}

.insurance-right {
    margin-left: 585px;
}

.insurance-title-big {
    font: 700 34px/40px arial, sans-serif;
    color: #222;
    text-transform: uppercase;
}

.insurance-title-small {
    font: 700 34px/40px arial, sans-serif;
    color: #222;
    text-transform: uppercase;
}

.ins-injured-guy {
    position: absolute;
    top: -45px;
    right: 15px;
}

.ins-plan-blue, .ins-plan-yellow, .ins-plan-orange {
    margin-bottom: 1px;
    padding: 15px;
    color: #fff;
    width: 510px;
    line-height: 30px;
    position: relative;
}

.ins-plan-blue {
    background: #006590;
}

.ins-plan-yellow {
    background: #eb4c00;
}

.ins-plan-orange {
    background: #eb4c00;
}

.active-plan {
    position: absolute;
    top: 0;
    right: -28px;
}

.plan-name {
    overflow: hidden;
}

.plan-name-left {
    float: left;
}

.plan-name-right {
    float: right;
}

.ins-right-title {
    padding: 15px 0 5px;
    border-bottom: 1px solid #999;
    overflow: hidden;
}

.ins-right-title-left {
    padding-top: 12px;
    float: left;
}

.ins-right-title-right {
    float: right;
}

.ins-plan-text {
    padding: 10px 0;
}

.ins-plan-text ul {
    margin: 0;
    padding: 0;
}

.ins-plan-text ul li.yes {
    padding: 5px 0 5px 25px;
    background: transparent url("https://www.flighthub.com/images/icon-yes.png") 0 8px no-repeat;
}

.ins-plan-text ul li.no {
    padding: 5px 0 5px 25px;
    background: transparent url("https://www.flighthub.com/images/icon-no.png") 0 8px no-repeat;
    color: #bbb;
}

.details-bar {
    padding: 0 0 4px;
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    text-align: right;
}

.plan-desc-blue, .plan-desc-yellow, .plan-desc-orange {
    margin-top: 10px;
    padding: 12px 0 0 29px;
    line-height: 22px;
}

.plan-desc-blue {
    border-top: 1px solid #4d7e93;
    line-height: 18px;
}

.plan-desc-yellow {
    border-top: 1px solid #eb4c00;
    line-height: 18px;
}

.plan-desc-orange {
    border-top: 1px solid #eb8e62;
    line-height: 18px;
}

.action-bar {
    padding-bottom: 20px;
    overflow: hidden;
}

.action-bar-left {
    padding-top: 20px;
    float: left;
}

.action-bar-right {
    padding-top: 17px;
    float: right;
}

a.button-insurance {
    margin: 0;
    padding: 12px 12px 12px 40px;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    display: inline-block;
    background: #222 url("https://www.flighthub.com/images/icon-yes-big.png") 10px 8px no-repeat;
    border-radius: 8px;
    box-shadow: inset 0 0 4px #333;
    text-align: center;
    -webkit-transition: background 0.5s, box-shadow 0.5s;
    -moz-transition: background 0.5s, box-shadow 0.5s;
    cursor: pointer;
}

a.button-insurance:hover {
    background: #ec5300 url("https://www.flighthub.com/images/icon-yes-big.png") 10px 8px no-repeat;
    color: #fff;
}

a.button-white {
    margin: 0;
    padding: 0 10px;
    font-size: 12px;
    font-weight: 700;
    color: #222;
    display: inline-block;
    background: #fff;
    border-radius: 3px;
    text-align: center;
    cursor: pointer;
}

a.button-white:hover {
    background: #e1e1e1;
}

.plan-expire {
    padding: 15px;
    width: 510px;
    text-align: center;
    line-height: 30px;
    color: #333;
    background: #fff;
}

.ins-badge {
    position: absolute;
    top: -20px;
    left: 270px;
}

/* insurance success page */

.container-insurance-confirm {
    margin: 0 auto;
    padding: 0 15px;
    max-width: 780px;
    text-align: center;
}

.ins-success-logo {
    margin: 40px auto 0;
    background-image: url("https://www.flighthub.com/images/logo-manulife2x.png");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 312px 58px;
    display: block;
    width: 312px;
    height: 58px;
}

.container-insurance-confirm h1 {
    margin: 40px 0 0;
    font: 400 24px/30px arial, sans-serif;
}

.container-insurance-confirm h2 {
    margin: 40px 0;
    font: 400 16px/20px arial, sans-serif;
}

/* facebook share */
.share-wrap {
    width: 252px;
    height: 35px;
    background-color: #3b5998;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    color: #ffffff;
    font-weight: bold;
}

.share-image {
    height: 71px;
}

.share-favi {
    width: 16px;
    padding: 10px 2px 8px 14px;
}

.share-txt {
    width: 208px;
    float: right;
    padding: 11px 6px 6px 2px;
}

.shareholder {
    text-align: center;
    width: 250px;
    border-bottom: 1px solid #e1e1e1;
}

.sharerer-btn {
    width: 228px;
    height: 45px;
    margin: 0 auto 0 auto;
    content: "";
    background-image: url("https://www.flighthub.com/images/share-fb-btn.png");
    background-position: top;
    background-repeat: no-repeat;
}

.sharerer-btn:hover {
    width: 228px;
    height: 45px;
    margin: 0 auto 0 auto;
    content: "";
    background-image: url("https://www.flighthub.com/images/share-fb-btn-hov.png");
    background-position: top;
    background-repeat: no-repeat;
}

.sharerer-btn-fr {
    width: 228px;
    height: 45px;
    margin: 0 auto 0 auto;
    content: "";
    background-image: url("https://www.flighthub.com/images/share-fb-btn-fr.png");
    background-position: top;
    background-repeat: no-repeat;
}

.sharerer-btn-fr:hover {
    width: 228px;
    height: 45px;
    margin: 0 auto 0 auto;
    content: "";
    background-image: url("https://www.flighthub.com/images/share-fb-btn-hov-fr.png");
    background-position: top;
    background-repeat: no-repeat;
}

.bubble-brdr {
    position: relative;
    margin: 13px 15px 0px 14px;
    padding: 7px 10px 7px 11px;
    border: 2px solid #ef4f03;
    color: #444444;
    background: #fff;
    border-radius: 6px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    text-align: left;
}

.bubble-brdr:before {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 30px;
    border-width: 20px 20px 0;
    border-style: solid;
    border-color: #ef4f03 transparent;
    display: block;
    width: 0;
}

.bubble-brdr:after {
    content: "";
    position: absolute;
    bottom: -13px;
    left: 37px;
    border-width: 13px 13px 0;
    border-style: solid;
    border-color: #fff transparent;
    display: block;
    width: 0;
}

.bubble-brdr.top:before {
    top: -9px;
    bottom: auto;
    right: auto;
    left: 7px;
    border-width: 0 14px 8px 5px;
}

.bubble-brdr.top:after {
    top: -6px;
    bottom: auto;
    right: auto;
    left: 9px;
    border-width: 0 11px 6px 4px;
}

/* new cc page */
.newcc-card-number {
    margin: 0 1% 10px 0;
    float: left;
    width: 49%;
}

.newcc-card-type {
    margin: 0 1% 10px 0;
    float: left;
    width: 19%;
}

.newcc-card-month {
    margin: 0 1% 10px 0;
    float: left;
    width: 9%;
}

.newcc-card-year {
    margin: 0 1% 10px 0;
    padding-top: 18px;
    float: left;
    width: 9%;
}

.newcc-card-cvv {
    margin: 0 0 10px 0;
    float: left;
    width: 9%;
}

.newcc-card-fname {
    margin: 0 1% 10px 0;
    float: left;
    width: 49%;
}

.newcc-card-lname {
    margin: 0 0 10px 0;
    float: left;
    width: 50%;
}

.newcc-address1 {
    margin: 0 1% 10px 0;
    float: left;
    width: 69%;
}

.newcc-address2 {
    margin: 0 0 10px 0;
    float: left;
    width: 30%;
}

.newcc-city {
    margin: 0 1% 10px 0;
    float: left;
    width: 29%;
}

.newcc-country {
    margin: 0 1% 10px 0;
    float: left;
    width: 29%;
}

.newcc-region {
    margin: 0 1% 10px 0;
    float: left;
    width: 29%;
}

.newcc-postal {
    margin: 0 0 10px 0;
    float: left;
    width: 10%;
}

/* box checkout */

.box-checkout-row {
    padding: 15px;
    border-top: 1px solid #e1e1e1;
    background: #fff;
}

/* flighthub elite header */
.box-checkout-header {
    padding: 0 15px 15px 15px;
    border-top: 0px;
    text-align: center;
}

.box-checkout-header h5 {
    display: inline-block;
    margin: 0 auto;
    text-align: center;
    text-transform: none;
    font-size: 22px;
    font-weight: normal;
    color: #5f5f5f;
}

.box-checkout-header span {
    float: left;
    margin-top: 18px;
    font-style: italic;
    margin-left:20px;
}

.box-checkout-header img {
    float: left;
    width: 228px;
}

.box-checkout-header p {
    color: #000;
}

/* toggel membership perks */
.toggle-membership-perks-container {
    text-align: center;
}

.toggle-membership-perks {
    position: relative;
    top: -25px;
    display: inline-block;
    padding: 0 20px;
    background: #fff;
    font-size: 12px;
}

.toggle-membership-perks i,
.toggle-membership-perks-text {
    float:left;
    color: #5f5f5f;
    font-style: italic;
    font-weight: bold;
    font-size: 14px;
}

/* box checkout col */
.box-checkout-col {
    float: left;
}

.box-checkout-col-6 {
    width: 50%;
}

.box-checkout-col-12 {
    width: 100%;
}

/* box checkout container */
.priority-wrap .box-checkout-inner-container {
    padding: 3px 10px 3px 80px;
}

.box-checkout-inner-container {
    padding: 10px 10px 10px 80px;
}

.elite-label-wrap label span {
    color: #F55A2B;
    font-weight: bold;
}

.box-checkout-inner-container p {
    margin: 5px 0;
}

.box-checkout-checkbox-container {
    background: #F3FAFF;
}

.box-checkout-checkbox-container label {
    font-weight: 700;
}

.box-checkout-col .icon {
    float: left;
    margin: 2px 10px 0 0;
    color: #ee562e;
}

.priority-wrap {
    padding-bottom: 25px;
}

.save-big-wrap {
    text-align: center;
}

.save-big {
    position: relative;
    top: -25px;
    display: inline-block;
    margin: 0 auto;
    padding:0 20px;
    background: #fff;
    font-size: 14px;
    font-weight: bold;
    font-style: italic;
}

.box-checkout-icon-wrap {
    display:inline-block;
    margin: auto;
}

.box-checkout-icon-wrap strong {
    float: left;
    color: #ee562e;
    margin: 0 10px;
}

.box-checkout-icon-wrap .icon,
.box-checkout-icon-wrap span {
    float: left;
}

.flightelite-wrap {
    float: left;
    border-right: 1px solid #ccc;
    padding-right: 20px;
}

.partner-logo img {
    width: 120px;
}

.partner-logo {
    float: left;
    margin-right: 20px;
}

/* insurance experiment */
.ins-exp-title{
    margin: 0 auto 20px;
    line-height: 12px;
    display: block;
    text-align: center;
}

.ins-exp-plan-left{
    margin-right: 1%;
    padding: 2.5% 2%;
    float: left;
    width: 49%;
    border: 1px solid #cdcdcd;
    border-radius: 4px;
}

.ins-exp-plan-right{
    margin-left: 1%;
    padding: 2.5% 2%;
    float: left;
    width: 49%;
    border: 1px solid #cdcdcd;
    border-radius: 4px;
}

.ins-exp-plan-left ul, .ins-exp-plan-right ul{
    margin: 15px 0 0 5px;
    list-style: none;
}

.ins-exp-plan-left ul li, .ins-exp-plan-right ul li{
    padding: 2px 0 2px 20px;
}

.ins-exp-plan-left ul li.ins-check{
    background: transparent url("https://www.flighthub.com/images/ins-check-green.png") 0 5px no-repeat;
}

.ins-exp-plan-right ul li.ins-check{
    background: transparent url("https://www.flighthub.com/images/ins-check-green.png") 0 5px no-repeat;
}

.ins-exp-plan-right ul li.ins-x{
    background: transparent url("https://www.flighthub.com/images/ins-x-red.png") 0 5px no-repeat;
}

.all-inclusive-select-box{
    margin-left: 20px;
    padding: 10px 15px 0 55px;
    font-size: 15px;
    color: #ffffff;
    position: relative;
    background: #0071a0;
    height: 38px;
    text-align: center;
}

.logo-mark-ins{
    position: absolute;
    top: -11px;
    left: -15px;
}

.trip-cancellation-select-box{
    margin-left: 5px;
    padding: 10px 15px 0 15px;
    font-size: 15px;
    color: #444;
    background: #ddd;
    height: 38px;
    text-align: center;
}

.ins-best-value{
    margin-top: -1px;
    float: right;
    display: block;
    font-size: 14px;
}

.ins-decline-wrap{
    padding: 2% 0;
    border-bottom: 1px solid #cdcdcd;
}

.ins-decline-wrap input{
    margin: 0 5px 0 0;
}

/* handholding sections */

/* top green bar */
.top-success-green{
    margin: 5px 0 0;
    background: #b2da79;
}

.top-success-left{
    padding: 18px;
    float: left;
    width: 5%;
    background: #83a84d;
    text-align: center;
}

.top-success-right{
    padding: 18px;
    float: left;
    width: 95%;
    font-size: 14px;
    color: #456518;
}

/* three points sidebar */
.side-points-box{
    color: #7c7c7c;
}

.side-points-box-left{
    padding: 18px 0;
    float: left;
    width: 13%;
}

.side-points-box-right{
    padding: 18px 15px 18px 0;
    float: left;
    width: 87%;
}

.side-points-box-right ul{
    padding: 5px 0;
}

.side-points-box-right ul li{
    padding: 5px 0;
}

.side-points-divider{
    height: 1px;
    background: #c5c5c5;
    border-bottom: 1px solid #fff;
}

.pale-orange{
    color: #f98647;
}

.pale-yellow{
    color: #f5a100;
}

.pale-blue{
    color: #61b4d8;
}

/* first time booking box */
.first-time-booking{
    padding: 15px 0 0;
    color: #7c7c7c;
}

.first-time-booking .biggest{
    line-height: 36px;
}

/* new 'important info' box */
.important-info-box{
    padding: 15px;
    border: 1px solid #f9b206;
    background: #fff;
}

.important-info-box ul {
    list-style: none;
}

.important-info-box ul li {
    padding: 12px 0 0;
}

.hp-field-label:hover {
    cursor: pointer;
}
.hp-field-label {
    padding: 10px 10px 10px 12px;
    display: table-cell;
    position: relative;
    min-width: 90px;
    height: 47px;
    vertical-align: middle;
    background-color: #f1f1f1;
    color: #777;
    text-align: right;
    border-top: 1px solid #dadada;
    border-right: 0 solid #ccc;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

/* modal flight exception */
.modal-exception-btn,
.modal-search-btn-wrapper span {
    display: inline-block;
}
.modal-search-btn-wrapper span {
    margin: 0 10px;
}

#new-search-buttons {
    display: inline;
}

.modal-search-btn-wrapper {
    display: inline;
}

/* traveller details */
.checkout-select-traveller {
    margin: 5px 0;
    width: 49%;
}

.checkout-gender {
    margin: 0 1% 5px 0;
    float: left;
    width: 24%;
}

.checkout-first-name, .checkout-middle-name {
    margin: 0 1% 5px 0;
    float: left;
    width: 24%;
}

.checkout-last-name {
    margin: 0 0 5px 0;
    float: left;
    width: 25%;
}

.checkout-month, .checkout-day, .checkout-year {
    margin:0 1% 5px 0;
    float: left;
    width: 19%;
}

.checkout-passport-month, .checkout-passport-day, .checkout-passport-year {
    margin: 0 1% 5px 0;
    float: left;
    width: 10%;
}

.checkout-passport-country {
    margin: -18px 0 5px;
    float: left;
    width: 40%;
}

.checkout-passport-country-small {
    margin-right: 10px;
    float: left;
    width: 20%;
}

.checkout-phone-country {
    margin: 0 1% 5px 0;
    width: 39%;
    float: left;
}

.checkout-phone-country-field {
    margin: 0 0 5px 0;
    padding-top: 20px;
    width: 60%;
    float: left;
}

.checkout-mobile-sms-plan {
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #dcdcdc;
    font-weight: 600;
}

.checkout-mobile-sms-plan label input {
    margin-right: 3px;
}
/* end traveller details */

/* billing info */
.checkout-card-number {
    margin: 0 1% 5px 0;
    width: 24%;
    float: left;
}

.checkout-card-type {
    margin: 0 1% 5px 0;
    width: 24%;
    float: left;
}

.checkout-expiry-month {
    margin: 0 1% 5px 0;
    float: left;
    width: 19%;
}

.checkout-expiry-year {
     margin: 0 1% 5px 0;
     padding-top: 20px;
     float: left;
     width: 19%;
 }

.checkout-billing-cvv {
    margin: 0 0 5px;
    width: 10%;
    float: left;
}

#booking-form .required-mark {
    color: #DA4717;
}

.checkout-billing-fname {
    margin: 0 1% 15px 0;
    width: 49%;
    float: left;
}

.checkout-billing-lname {
    margin: 0 0 15px;
    width: 50%;
    float: left;
}

.checkout-billing-address1 {
    margin: 0 1% 5px 0;
    float: left;
    width: 54%;
}

.checkout-billing-address2 {
    margin: 0 1% 5px 0;
    float: left;
    width: 14%;
}

.checkout-billing-city {
    margin: 0 0 5px;
    float: left;
    width: 30%;
}

.checkout-billing-country {
    margin: 0 1% 5px 0;
    float: left;
    width: 41%;
}

.checkout-billing-region {
    margin: 0 1% 5px 0;
    float: left;
    width: 41%;
}

.checkout-billing-postal {
    margin: 0 0 5px;
    float: left;
    width: 16%;
}

.checkout-extra-phone {
    margin: 0 1% 10px 0;
    width: 39%;
    float: left;
    clear: both;
}

.checkout-extra-phone-field {
    margin: 0 1% 10px 0;
    padding-top: 20px;
    width: 33%;
    float: left;
}

.checkout-extra-phone-ext {
    margin: 0 0 10px 0;
    width: 26%;
    float: left;
}
/* end billing info */

ul.review-details-list > li.review-flex-date-wrap {
    background: #fff;
    margin-top: -1px;
}

.checkout .flex-date-notice {
    padding: 8px 10px;
    margin: 0 0 15px 0;
    font-weight: 600;
    border: 1px solid #FFC297;
    line-height: 1.2;
    text-align: center;
    background-color: #FFF3EB;
    color: #E68540;
    font-size: 12px;
}

.flex-date-notice-left {
    padding: 3px 6px 3px 0;
    display: table-cell;
    min-width: 40px;
    vertical-align: middle;
    text-align: center;
    border-right: 1px solid #c7e0a4;
}

.flex-date-notice-right {
    padding: 3px 12px;
    font-size: 15px;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.flex-date-notice-left .fa {
    font-size: 22px;
}

.review-flex-date-wrap .flex-date-notice {
    text-align: left;
}










.flex-date-notice-b {
    padding: 6px;
    margin: 0 0 15px;
    color: #285a07;
    display: table;
    width: 100%;
    background-color: #ecf9da;
    border: 1px solid #c7e0a4;
    vertical-align: middle;
}

.flex-date-notice-left-b {
    padding: 3px 6px 3px 0;
    display: table-cell;
    min-width: 40px;
    vertical-align: middle;
    text-align: center;
    border-right: 1px solid #c7e0a4;
}

.flex-date-notice-right-b {
    padding: 3px 12px;
    font-size: 15px;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.flex-date-notice-left-b .fa {
    font-size: 22px;
}

.review-flex-date-wrap-b .flex-date-notice-b {
    text-align: left;
}











.bgp-tooltip .tooltipster-content {
    font-size: 13px;
    line-height: 1.4;
    background: #fff;
    padding: 10px;
    color: rgb(85, 85, 85);
    text-align: left;
    z-index: 1;
    border: 1px solid #DADADA;
    margin: 0 15px;
    border-radius: 3px;
    box-shadow: 0px 5px 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;
}

.bgp-tooltip .tooltipster-content h3 {
    font-size: 14px;
    line-height: 18px;
    font-weight: 700;
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px dashed #dadada;
}

.bgp-tooltip .tooltipster-content a {
    color: #ff5200;
    text-decoration: underline;
}

.bgp-tooltip .tooltipster-content a:hover {
    color: #b63b00;
}

@media (max-width: 555px) {
    .bgp-tooltip .tooltipster-content {
        font-size: 11px;
        line-height: 14px;
    }
    .bgp-tooltip .tooltipster-content h3 {
        font-size: 12px;
    }
}

.receipt-seatmap .selected-seat {
    font-weight: 600;
}

.receipt-seatmap .seatmap-segment {
    color: #666;
}

.receipt-seatmap .seatmaps-warning {
    line-height: 1.3;
    text-align: left;
    font-size: 12px;
    margin-top: 10px;
}

/* price breakdown in seat tooltip */

.tt-seat-price-wrap {
    padding-top: 0;
}

.tt-seat-price {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.tt-seat-price.border {
    border-bottom: 1px solid #dcdcdc;
}

.tt-seat-item {
    flex: 0 1 auto;
    font-size: 11px;
    line-height: 18px;
    font-weight: normal;
    color: #444;
}

/* === Mobile pre arranged seating section */
.pre-arranged-seating .checkout-subtitle {
    line-height: 1.4;
    font-size: 12px;
}

.select-seat-button {
    border: 1px solid #8abad0;
    background: #eaf9ff;
    margin: 12px 0;
    cursor: pointer;
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    border-radius: 3px;
}

.select-seat-button .column {
    vertical-align: middle;
}

.select-seat-button .check {
    width: 30px;
    border-right: 1px solid #8abad0;
    background: #a1d3e9;
    text-align: center;
}

.select-seat-button.selected .check {
    background: #76bf45;
}

.select-seat-button .input-placeholder {
    width: 15px;
    height: 15px;
    background: #fff;
    border: 1px solid #436B7D;
    margin: 1px auto 0 auto;
    position: relative;
    border-radius: 50%;
}

.select-seat-button.selected  .input-placeholder {
    border-color: #5f943a;
}

.select-seat-button .input-placeholder:after {
    content: '';
    position: absolute;
    top: 3px;
    left: 3px;
    width: 7px;
    height: 7px;
    display: none;
    background: #5f943a;
    z-index: 1;
    border-radius: 50%;
}

.select-seat-button.selected .input-placeholder:after {
    display: block;
}

.select-seat-button .label {
    padding: 6px 0 5px 10px;
    font-weight: 700;
    font-size: 12px;
    line-height: 1.1;
}

.select-seat-button .fee {
    width: 62px;
    line-height: 1.1;
    font-size: 12px;
    text-align: right;
    font-weight: bold;
    padding: 7px 9px 7px 5px;
}

.select-seat-button .label,
.select-seat-button .fee {
    color: #4E95B1;
}

.select-seat-button.selected .label,
.select-seat-button.selected .fee {
    color: #276882;
}

.select-seat-button .fee span {
    display: block;
    font-style: italic;
    font-weight: normal;
    font-size: 11px;
}

.pre-arranged-seating .seatmap-disclaimer {
    line-height: 1.2;
    font-size: 11px;
    padding: 5px;
    border: 0;
    margin: 0;
}

.autofill {
    display: none;
}

/* idle modal */
.idle-modal-title {
    padding-top: 15px;
    font-size: 16px;
    font-weight: 700;
    color: #666;
}

.idle-modal-title span {
    font-weight: 700;
    color: #0074a4;
}

.idle-modal-subtitle {
    padding: 4px 25px 20px;
    color: #666;
}

.idle-modal-subtitle span {
    font-weight: 700;
}

.idle-form-wrap {
    padding: 10px;
    background-color: #f9f9f9;
    border: 1px solid #dadada;
    border-radius: 2px;
}

.idle-form-wrap ul li {
    float: left;
}

.idle-form-wrap ul li:first-child {
    width: 70%;
}

.idle-form-wrap ul li:last-child {
    padding-left: 5px;
    width: 30%;
}

.idle-form-wrap ul li input {
    padding: 10px 15px;
    width: 100%;
    background: #fff;
    border: 1px solid #dadada;
    border-radius: 2px;
}

.idle-form-wrap button {
    padding: 10px 15px;
    width: 100%;
    font-weight: 700;
    display: block;
    color: #fff;
    background-color: #f05623;
    border-radius: 2px;
    border: 1px solid #f05623;
    outline: none;
    cursor: pointer;
}

.idle-form-wrap button:hover {
    background-color: #ce3908;
}

.idle-modal-help {
    padding: 15px 0 8px;
    color: #666;
}

.idle-modal-help-title {
    font-size: 16px;
    font-weight: 700;
}

.idle-modal-help-text {
    padding: 4px 0;
}

.idle-modal-help-text span {
    font-weight: 700;
}

.idle-modal-phone {
    padding-bottom: 3px;
    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    color: #0074a4;
}

.idle-modal-phone-mobile {
    display: none;
}

.idle-modal-footer {
    padding-top: 10px;
    border-top: 1px solid #dadada;
    text-align: center;
}

.idle-modal-footer a {
    font-size: 11px;
    color: #999;
}


/* CSA Insurance */
.ins-csadirect .insurance-heading-left {
    width: 272px;
    padding-right: 20px;
    text-align: center;
}

.ins-csadirect .insurance-heading-right-csa, .insurance-heading-right {
    padding-left: 22px;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    vertical-align: middle;
}

.ins-csadirect .checkout-b-box {
    padding: 0;
}

.ins-csadirect .ins-options-wrap {
    padding: 15px 15px 0;
}

.ins-csadirect .ins-options-title {
    padding-bottom: 10px;
    font-size: 15px;
    font-weight: 600;
}

.ins-csadirect .ins-options-title a {
    font-size: 14px;
    font-weight: 400;
}

.ins-csadirect .ins-options-title span {
    font-size: 12px;
}

.ins-csadirect .ins-options-list li {
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 1.2;
    color: #555;
    padding-right: 0;
    position: relative;
}

.ins-csadirect .ins-options-list li:before {
    content: '';
}

#travelProtection.error .chk-form-item-content.upsell {
    border-color: #ff5200;
}

#travelProtection + .validate-error {
    display: none;
    color: #ff5200;
    margin-top: -20px;
    margin-bottom: 20px;
}

#travelProtection.error + .validate-error {
    display: block;
}

.ins-options-list .fa {
    color: #c7c7c7;
    cursor: pointer;
}

.insurance-info {
    padding: 15px;
    text-align: center;
    color: #f15623;
}

.insurance-lower-text {
    padding: 0 15px 15px;
    line-height: 22px;
}

.insurance-lower-text .covid-19-important-message {
    color: #006699;
}

.insurance-lower-text .covid-19-important-message:hover {
    color: #333;
}

#covid-19-tooltip-content {
    display: none;
}

.ins-csadirect .insurance-plan-footer {
    position: relative;
    margin: 0 15px;
}

.ins-csadirect .radio-options-footer .item {
    padding: 15px;
    border-top: 1px solid #dcdcdc;
    font-weight: 700;
    color: #444;
    line-height: 1.2;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.ins-csadirect .radio-options-footer .item input {
    float: left;
    margin: 1px 10px 0 0;
}

.ins-csadirect .radio-options-footer .item label {
    display: table-cell;
}

.ins-csadirect .radio-options-footer .item.accept {
    font-weight: 700;
    background-color: #fff;
    color: #444;
}

.ins-csadirect .radio-options-footer .item.accept.add-insurance {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.ins-csadirect .radio-options-footer .item .price {
    font-size: 24px;
    font-weight: 600;
    line-height: 24px;
    color: #444;
}

.ins-csadirect .radio-options-footer .item .price span {
    display: block;
    font-size: 11px;
    font-weight: 400;
    line-height: 12px;
    color: #777;
}

.ins-csadirect .loading-wheel {
    padding: 15px;
    display: block;
    text-align: center;
    margin: auto;
}

.ins-covid-warning {
    margin-bottom: 15px;
    padding: 10px;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
}

.checkout-warning-box {
    margin: 5px 0 15px 0;
    padding: 6px 8px;
    color: #b57522;
    background: #fff;
    line-height: 1.2;
    font-size: 12px;
    border: 1px solid #eccfa7;
}

.insurance-heading-wrap {
    font-size: 16px;
    font-weight: 600;
}

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

.ins-info-left {
    flex: 1;
}

.ins-info-right {
    padding-right: 25px;
    flex: 0 1 125px;
}

.ins-cert-number {
    font-size: 11px;
    color: #888;
    text-align: right;
}




/* cuba reason dropdown */
.cuba-reason-wrap {
    display: table;
    width: 100%;
    background-color: #fff;
    border: 1px solid #dadada;
}

.cuba-reason-left {
    padding: 12px 12px 12px 2px;
    display: table-cell;
    width: 55%;
    vertical-align: middle;
}

.cuba-reason-right {
    padding: 12px;
    display: table-cell;
    width: 45%;
    vertical-align: middle;
}

.cuba-reason-right select {
    padding: 6px;
    border-radius: 2px;
    border: 1px solid #dadada;
    width: 100%;
}

.cuba-alert-wrap {
    display: table;
    width: 100%;
}

.cuba-alert-left {
    display: table-cell;
    min-width: 55px;
    font-size: 22px;
    color: #fbae17;
    vertical-align: middle;
    border-right: 1px solid #dadada;
    text-align: center;
}

.cuba-alert-right {
    padding-left: 12px;
    display: table-cell;
    width: 100%;
    color: #666;
    line-height: 16px;
    vertical-align: middle;
}

.cuba-more-info {
    margin: 3px 0 25px;
    font-size: 11px;
    color: #999;
}

.cuba-more-info a {
    color: #666;
}

.show-info-wrap {
    margin-bottom: 25px;
    padding: 15px;
    background-color: #f1f1f1;
    border: 1px solid #dadada;
}

.spi-table {
    width: 100%;
    text-align: left;
}

.spi-table th {
    text-transform: uppercase;
    color: #666;
    background: #e1e1e1;
    border: 1px solid #B7B7B7;
    padding: 5px;
}

.spi-table td {
    vertical-align: top;
    padding: 5px;
    background-color: #f1f1f1;
    border: 1px solid #CCC;
    width: 25%;
    line-height: 14px;
}

.spi-table .info_name {
    color: #888;
}

.spi-table .info_value {
    color: #0072a3;
    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;
}

.checkout-b-box-itinerary li {
    list-style: none;
}

.spi-table-overflow {
    padding: 15px;
    background-color: #f9f9f9;
}
/* insurance experiment - natural */

.ins-exp-natural-wrapper {
    position:relative;
    top:-18px;
    margin-top:0;
    margin-bottom:0;
}
.ins-exp-natural{
    padding-bottom: 0;
    margin:10px auto 0;
    width:94%;
}
.ins-exp-natural-wrapper .ins-exp-natural {
    padding-bottom:0;
    margin-bottom:0;
}
.ins-exp-natural-wrapper .box-checkout-title {
    padding:20px 0 17px;
    background:#006a41;
    font-size:16px;
}
.ins-exp-natural .select-title{
    margin:0 0 4px;
    padding: 20px 0 0;
    font-size: 14px;
}
.ins-exp-natural .select-wrap{
    margin:4px 0 30px;
}
.ins-exp-natural .select-wrap select{
    padding:8px;
    width:100%;
}
.ins-exp-natural .select-wrapper {
    padding: 7px 11px 7px 0;
    border-radius:2px;
    background:#fff;
}
.ins-exp-natural .select-wrapper .select-first-text{
    font-size: 14px;
}
.ins-exp-natural .specs{
    margin:0;
    padding:8px 0 0;
}
.ins-exp-natural ul{
    margin:0 0 20px;
    padding:0;
    list-style-type:none;
    margin-top: 5px;
}
.ins-exp-natural ul:last-of-type{
    padding: 8px 0 5px;
}
.ins-exp-natural ul li{
    padding:8px 0;
    overflow:hidden;
    font-size: 13px;
}
.ins-exp-natural ul li:first-child {
    padding: 5px 0 8px;
}
.ins-exp-natural ul li:last-child {
    padding: 8px 0 0;
}
.ins-exp-natural .specs-title{
    padding: 10px 0;
    margin-bottom:20px;
    font-weight:700;
    font-size:16px;
    color: #0f547f;
}
.ins-exp-natural .specs-title span {
    color: #0f547f !important;
}
.ins-exp-natural .specs-price{
    padding:15px 0;
    font-weight:bold;
    font-size:16px;
    text-align:center;
    border:1px solid #dcdcdc;
    background:#f6f6f6;
}
.ins-exp-natural-checkbox .specs-price,
.ins-exp-natural-radio .specs-price {
    padding-bottom: 14px;
}
.ins-exp-natural-radio .ins-exp-natural-declined {
    padding: 15px 0 14px;
    font-weight: normal;
    font-size: 12px;
    text-align: center;
    border-bottom: 1px solid #dcdcdc;
}
.ins-exp-natural .specs-price input,
.ins-exp-natural .specs-price label,
.ins-exp-natural-radio .ins-exp-natural-declined input,
.ins-exp-natural-radio .ins-exp-natural-declined label {
    position: relative;
    vertical-align: middle;
}
.ins-exp-natural .specs-price label,
.ins-exp-natural-radio .ins-exp-natural-declined label {
    top: 1px;
}
.ins-exp-natural .specs-price span {
    color: #0f547f !important;
}
.ins-exp-natural-radio .ins-exp-natural-declined-text {
    margin-left: 2px;
    color: #888;
}
.ins-exp-natural .list-left{
    padding:3px 5px 0 0;
    float:left;
}
.ins-exp-natural .list-right{
    float:left;
    width: 97%;
    line-height: 20px;
}
.ins-exp-natural .disclaimer{
    margin:0;
    padding:18px 0 0;
    font-size:11px;
    color:#999;
    line-height:12px;
    text-align:center;
}
.ins-exp-natural .divider{
    margin:0 auto 10px;
    padding:0;
    height:3px;
    background:#0f547f;
    width:20%;
}

.ins-exp-natural .cursor {
    cursor: pointer;
}

.ins-exp-natural-tipsy-bg-green .tipsy-arrow {
    background-image: url(/images/tipsy-green.gif);
}
.ins-exp-natural-tipsy-bg-green .tipsy-inner {
    border-radius: 0;
    border: 0 none;
    background: #006A41;
    color: #fff;
    padding-left: 12px;
}
.ins-exp-natural-list {
    list-style: disc;
    padding-left:15px;
    margin-top:0;
}
.ins-exp-natural-list li {
    padding: 3px 0;
    font-size: 12px;
}
.ins-exp-natural-declined {
    padding-top:0;
}
.ins-exp-natural-declined ul,
.ins-exp-natural-declined ul:last-of-type {
    padding-top:0;
    margin-top:0;
}
.ins-exp-natural-declined-text {
    color: #C52121;
}

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

    /* insurance experiment - natural */

    .ins-exp-natural{
        margin:10px 2% 0;
        width:96%;
    }
    .ins-exp-natural .select-title{
        margin:0 0 4px;
    }
    .ins-exp-natural .select-wrap{
        margin:4px 0 15px;
    }
    .ins-exp-natural .specs{
        margin:0;
        padding:15px 0 0;
    }
    .ins-exp-natural .specs-title{
        margin-bottom:15px;
    }
    .ins-exp-natural .specs-price{
        margin-top:-8px;
        padding:10px 0;
        font-size:12px;
    }
    .ins-exp-natural .list-left{
        width:8%;
    }
    .ins-exp-natural .list-right{
        float:left;
        width:92%;
    }
    .ins-exp-natural .divider{
        margin:0 auto;
    }
}
/*HOTEL PAGE*/
.hotel-name-contains {
    padding: 10px;
    background: #edf9fd;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
input.hotel-name-contains {
    padding: 4px 5px 3px;
    border: 1px solid #ccc;
    background: #fff;
    width: 130px;
    vertical-align: bottom;
}
input.hotel-name-contains:focus {
    border: 1px solid #999;
}
.hotel-top {
    margin-bottom: 10px;
    padding: 5px 10px;
    overflow: hidden;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.hotel-name {
    padding: 5px 0;
    font: normal 22px/22px arial, sans-serif;
    display: inline-block;
}
.hotel-photos-container {
    width: 980px;
    overflow: hidden;
}
.hotel-img-container {
    float: left;
    width: 360px;
    height: 250px;
    text-align: center;
    overflow: hidden;
    border: 1px solid #ccc;
    background: #fff;
}
.hotel-img-container img {
    padding: 5px;
    max-height: 240px;
    max-width: 360px;
}
.thumbs-container {
    margin-left: 15px;
    float: left;
    width: 355px;
}
.thumbs-container ul {
    overflow: hidden;
}
.thumbs-container ul li {
    margin: 0 7px 2px 0;
    padding: 0;
    float: left;
}
.thumbs-container ul li:nth-child(6n) {
    margin: 0 0 2px 0;
    padding: 0;
    float: left;
}
.reviews-container {
    float: right;
    position: relative;
}
.reviews-noimages {
    margin-bottom: -50px;
    overflow: hidden;
}
.reviews-container-horizontal {
    overflow: hidden;
    float: right;
}
.fhub-hotel-rating-wrap-hori {
    margin: 0 25px 0 0;
    padding-top: 10px;
    float: left;
    overflow: hidden;
    max-width: 200px;
}
.tripadvisor-rating-hori {
    margin: 0;
    padding: 15px 0 0 0;
    float: left;
    width: 130px;
    text-align: center;
}
.room-select-wrap {
    margin-top: 10px;
    border: 1px solid #ddd;
    overflow: hidden;
    background: #fff;
}
.room-select-left {
    padding: 10px 15px;
    float: left;
    width: 705px;
}
.room-select-right {
    margin-left: 735px;
    padding: 10px;
    text-align: center;
    max-height: 400px;
}
.room-name {
    padding: 0 0 5px;
    font: bold 14px/14px arial, sans-serif;
    overflow: hidden;
}
.room-name-right {
    float: right;
    font-size: 12px;
    color: #ec5300;
}
.room-info-wrap {
    margin: 5px 0;
}
.room-info-left {
    margin-right: 2%;
    float: left;
    width: 28%;
}
.room-info-left img {
    padding: 5px;
    border: 1px solid #ddd;
    max-width: 100%;
}
.room-info-right {
    float: left;
    width: 70%;
    font-weight: normal;
}
.map-info-wrap {
    margin-bottom: 5px;
    overflow: hidden;
}
.map-info-left {
    float: left;
    width: 422px;
}
.map-info-right {
    margin-left: 440px;
}
.hotel-spec-title {
    font-weight: bold;
    font-size: 14px;
}
.hotel-back-search {
    padding: 5px 0;
    border-top: 1px solid #ddd;
}
.hotel-alert-wrap {
    overflow: hidden;
}
.hotel-alert-container {
    margin-right: 2px;
    padding: 3px 10px 2px;
    background: #fff;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    color: #ec5300;
    display: inline-block;
    float: right;
}
.photos-modal-top {
    padding: 5px 0;
}
.photos-modal-wrap {
    width: 770px;
    overflow: hidden;
    position: relative;
}
.photos-modal-left {
    float: left;
    width: 360px;
    height: 250px;
    text-align: center;
    overflow: hidden;
    border: 1px solid #ccc;
}
.photos-modal-left img {
    padding: 5px;
    max-height: 240px;
    max-width: 360px;
}
.photos-modal-right {
    margin-left: 25px;
    float: left;
    width: 375px;
    height: 350px;
    overflow: auto;
}
.photos-modal-right ul {
    overflow: hidden;
}
.photos-modal-right ul li {
    margin: 0 14px 4px 0;
    padding: 0;
    float: left;
}
.photos-modal-right ul li img {
    border: 2px solid #fff;
}
.photos-modal-right ul li img:hover {
    border: 2px solid #f9b206;
}
.photos-modal-arrows {
    position: absolute;
    top: 280px;
    left: 150px;
    overflow: hidden;
}
.photos-modal-arrows-left {
    float: left;
    width: 50px;
    font-size: 32px;
    font-weight: bold;
}
.photos-modal-arrows-right {
    margin-left: 50px;
}
.photos-modal-arrows-left a, .photos-modal-arrows-right a {
    font-size: 32px;
    font-weight: bold;
    color: #006699 !important;
}
.photos-modal-arrows-left a:hover, .photos-modal-arrows-right a:hover {
    color: #333 !important;
}
.sidebar-secure-info-wrap {
    margin-bottom: 25px;
    overflow: hidden;
}
.sidebar-secure-info-left {
    float: left;
    width: 140px;
}
.sidebar-secure-info-right {
    margin-left: 150px;
    padding-top: 20px;
}
.amenities-prices-wrap {
    overflow: hidden;
}
.amenities-prices-left {
    width: 190px;
    float: left;
    font-size: 11px;
    font-weight: normal;
}
.amenities-prices-right {
    margin-left: 200px;
}
.hotel-page-search-wrap {
    margin-top: -15px;
}
a.button-hotel-search-sm {
    padding: 3px 10px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    display: inline-block;
    background: #ec5300;
    border-radius: 3px;
    box-shadow: inset 0 0 4px #333;
    text-align: center;
    -webkit-transition: background 0.5s, box-shadow 0.5s;
    -moz-transition: background 0.5s, box-shadow 0.5s;
}
a.button-hotel-search-sm:hover {
    background: #333;
    color: #fff;
}
.room-select-widget {
    padding: 0;
}
.room-select-add {
    padding: 5px 0 0;
}
.top-price-book {
    overflow: hidden;
}
.top-price {
    padding: 4px 0 0;
    font: normal 24px arial, sans-serif;
    float: right;
    text-align: right;
}
.top-price-book-room {
    margin-top: 5px;
    overflow: hidden;
    width: 200px;
}
.top-price-room {
    padding: 2px 4px 0 0;
    width: 90px;
    font: normal 18px/18px arial, sans-serif;
    float: left;
    text-align: right;
}
a.button-select-hotel-sq-left {
    margin-right: 10px;
    padding: 6px 10px;
    font: bold 13px/18px arial, sans-serif;
    color: #fff;
    display: inline-block;
    background: #006699;
    border-radius: 3px;
    box-shadow: inset 0 0 4px #555;
    text-align: center;
    -webkit-transition: background 0.5s, box-shadow 0.5s;
    -moz-transition: background 0.5s, box-shadow 0.5s;
    border: 1px solid #333;
}
a.button-select-hotel-sq-left:hover {
    background: #333;
    box-shadow: inset 0 0 4px #000;
}
.rating-wrap {
    margin-bottom: 10px;
    padding: 10px 0 5px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.tripadvisor-rating {
    margin: 5px 0;
    padding: 0;
    width: 130px;
    text-align: center;
}
.tripadvisor-rating a {
    font: normal 11px/22px arial, sans-serif;
}
.tripadvisor-reviews {
    border: 1px solid #ccc;
}
.fhub-hotel-rating-wrap {
    margin: 15px 0 0 15px;
    overflow: hidden;
    max-width: 200px;
}
.fhub-hotel-rating-left {
    padding-top: 5px;
    float: left;
    font-size: 42px;
    line-height: 30px;
}
.fhub-hotel-rating-right {
    margin-left: 70px;
    padding-top: 5px;
    font-size: 16px;
}
.crest-hotel {
    padding: 6px 15px 0 45px;
    height: 26px;
    font: bold 11px/11px arial, sans-serif;
    color: #EC5300;
    background: transparent url("https://www.flighthub.com/images/crest-hotel-bg.png") no-repeat 0 0;
}
table.hotel-room-specs {
    margin: 5px 0;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
    font-size: 11px;
    text-align: center;
}
table.hotel-room-specs th {
    padding: 1px 5px;
    background: #f9f9f9;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    font-weight: normal;
    width: 70px;
}
table.hotel-room-specs td {
    padding: 1px 5px;
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    width: 70px;
}
ul.amenities {
    padding-left: 15px;
    margin-bottom: 15px;
    overflow: hidden;
    list-style-type: disc;
}
ul.amenities li {
    padding-right: 15px;
    width: 215px;
    line-height: 18px;
    float: left;
}
.rooms-left {
    margin: 5px -10px 0 -10px;
    padding: 1px 0;
    background: #d53535;
    color: #fff;
    font-size: 11px;
    position: relative;
    text-align: center;
    clear: right;
}
.rooms-left-selectroom {
    margin: 10px 0 0 0;
    padding: 1px 0;
    background: #d53535;
    color: #fff;
    font-size: 11px;
    position: relative;
    text-align: center;
    clear: right;
}
.rooms-left-arrow {
    border-style: solid;
    position: absolute;
    top: 4px;
    left: -6px;
    width: 0;
    height: 0;
    border-width: 6px 6px 6px 0;
    border-color: transparent #d53535 transparent transparent;
}
.hotel-total {
    margin: 10px 0 0;
    padding: 3px 0;
    background: #f6f6f6;
    font-size: 11px;
    border-radius: 2px;
}
.room-price {
    margin-top: -5px;
    padding: 0 0 5px;
    font: normal 30px/30px arial, sans-serif;
    text-align: right;
    float: right;
}
.room-price a {
    color: #4e7720;
}
.original-price {
    padding: 15px 5px 0 0;
    font: normal 16px/16px arial, sans-serif;
    color: #999;
    text-decoration: line-through;
    float: right;
}
.original-price-room {
    padding: 0 5px 0 25px;
    font: normal 20px/20px arial, sans-serif;
    color: #999;
    text-decoration: line-through;
    float: left;
}
.room-price sup, .original-price sup, .original-price-room sup {
    font-size: 14px;
}
a.map-hotel-book {
    padding: 5px 15px;
    font: bold 20px/20px 'Open Sans Condensed', sans-serif;
    float: right;
    color: #fff;
    display: block;
    background: #006699;
    border-radius: 6px;
    box-shadow: inset 0 0 4px #333;
    text-align: center;
    -webkit-transition: background 0.5s, box-shadow 0.5s;
    -moz-transition: background 0.5s, box-shadow 0.5s;
    border: 1px solid #fff;
}
a.map-hotel-book:hover {
    background: #333;
    box-shadow: inset 0 0 4px #000;
}
ul.hotel-icon {
    padding-top: 15px;
}
ul.hotel-icon li {
    padding: 5px 0;
}
#modal-box {
    overflow: hidden;
}
.map-wrap {
    overflow: hidden;
}
.map-left {
    float: left;
    width: 600px;
    height: 550px;
    border: 1px solid #333;
    line-height: 12px;
}
.map-right {
    margin-left: 620px;
}
.map-full {
    width: 770px;
    height: 550px;
    border: black;
    border-style: solid;
    border-width: thin;
}
.hotel-map {
    border: 1px solid #999;
}
ul.hotel-filter-list {
    margin: 0;
    padding: 10px;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
ul.hotel-filter-list li {
    padding: 3px 0;
    overflow: hidden;
    border-bottom: 1px dotted #ddd;
    font-size: 11px;
}
ul.hotel-filter-list li:last-child {
    border-bottom: 0;
}
textarea.hotel-request {
    margin-top: 10px;
    padding: 5px;
    border: 1px solid #ccc;
    border-radius: 3px;
    width: 500px;
    height: 80px;
}
.hotel-desc-wrap {
    margin-top: 20px;
    overflow: hidden;
}
.hotel-desc-left {
    padding: 0 10px 0 0;
    width: 978px;
}
.hotel-amenities-wrap {
    margin-bottom: 15px;
    padding: 15px 15px 5px;
    background: #fff;
    border: 1px solid #ddd;
}
.hotel-tabs ul {
    margin-bottom: -1px;
    overflow: hidden;
}
.hotel-tabs ul li {
    margin-right: 1px;
    float: left;
}
.hotel-tabs ul li a {
    padding: 10px 15px;
    display: block;
    background: #f5f5f5;
    font: bold 14px/18px arial, sans-serif;
    border: 1px solid #ddd;
    -webkit-border-top-left-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-topright: 3px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
.hotel-tabs ul li a:hover {
    background: #f1f1f1;
}
.hotel-tabs ul li a.active {
    padding: 10px 15px;
    display: block;
    background: #fff;
    font: bold 14px/18px arial, sans-serif;
    color: #555;
    border-bottom: 1px solid #fff;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
    -webkit-border-top-left-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    -moz-border-radius-topleft: 3px;
    -moz-border-radius-topright: 3px;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
.hotel-result-wrap {
    margin: 0 2px 10px 0;
    overflow: hidden;
    border: 1px solid #ccc;
}
.hotel-result-wrap a:hover {
    color: #006699;
    text-decoration: underline;
}

.hotel-result-left {
    padding: 5px;
    float: left;
    width: 445px;
}
.hotel-result-right {
    margin-left: 456px;
    padding: 5px 10px;
    position: relative;
    text-align: right;
    min-height: 92px;
}
.hotel-result-name {
    font-weight: bold;
}
.hotel-result-rating-wrap {
    padding: 3px 0;
    overflow: hidden;
}
.hotel-result-photo-wrap {
    overflow: hidden;
}
.hotel-result-photo-left {
    float: left;
}
.hotel-result-photo-left img {
    border: 1px solid #555;
}
.hotel-result-photo-right {
    margin-left: 175px;
}
.hotel-result-info-wrap {
    padding: 0;
    overflow: hidden;
}
.hotel-result-info-left {
    padding-top: 7px;
    float: left;
}
.hotel-result-info-right {
    margin-left: 30px;
    font-size: 11px;
}
.info-container {
    margin: 10px 0 15px;
    padding: 0 0 5px;
}
.hotels-found-number {
    padding: 3px 0;
    font-size: 18px;
    font-weight: 400;
}
a.button-hotel-map {
    margin: 20px 0;
    padding: 12px 15px 12px 45px;
    font: bold 17px/17px 'Open Sans Condensed', sans-serif;
    display: block;
    background: #f1f1f1 url("https://www.flighthub.com/images/icon-hotel-map.png") no-repeat 8px 7px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: inset 1px 1px 0 #fff;
}
a.button-select-hotel {
    margin: 0 auto;
    padding: 5px 15px;
    font: bold 18px/18px 'Open Sans Condensed', sans-serif;
    color: #fff;
    display: block;
    background: #006699;
    border-radius: 6px;
    box-shadow: inset 0 0 4px #333;
    text-align: center;
    -webkit-transition: background 0.5s, box-shadow 0.5s;
    -moz-transition: background 0.5s, box-shadow 0.5s;
    border: 1px solid #fff;
}
a.button-select-hotel:hover {
    background: #333;
    box-shadow: inset 0 0 4px #000;
}
a.button-name-contains {
    margin: 0;
    padding: 2px 15px;
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    background: #ff712d;
    background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
    background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff712d', endColorstr='#ff5200',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #ff5200;
    cursor: pointer;
}
a.button-name-contains:hover {
    background: #333;
    color: #fff;
}
.widget-headersingle {
    background-color: #333232;
    border-bottom: 3px solid #6eb1cd;
}
.strike {
    text-decoration: line-through;
}
ul.sort-container {
    margin-bottom: 10px;
    border: 1px solid #d0d0d0;
    display: table;
    width: 100%;
    table-layout: fixed;
    height: 28px;
}

ul.sort-container li{
    border-right: 1px solid #d0d0d0;
    display: table-cell;
    height: 100%;
    vertical-align: middle;
}

ul.sort-container li:last-child {
    border-right: 0 solid #d0d0d0;
}

ul.sort-container li .btn-container {
    display: table;
    width: 100%;
    height: 100%;
}

ul.sort-container li a {
    padding: 8px 5px;
    color: #0072a3;
    display: table-cell;
    text-align: center;
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f2f2f2));
    background: -webkit-linear-gradient(top,  #ffffff 0%,#f2f2f2 100%);
    background: -ms-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
    background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 );
    box-shadow: inset 1px -1px 0 #fff;
    cursor: pointer;
    height: 100%;
    width: 100%;
    vertical-align: middle;
    line-height: 16px;
}
ul.sort-container li a:hover {
    background: #ffffff;
    background: -moz-linear-gradient(top, #f2f2f2 0%, #ffffff 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f2f2f2), color-stop(100%,#ffffff));
    background: -webkit-linear-gradient(top,  #f2f2f2 0%,#ffffff 100%);
    background: -ms-linear-gradient(top, #f2f2f2 0%,#ffffff 100%);
    background: linear-gradient(to bottom, #f2f2f2 0%,#ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f2f2', endColorstr='#ffffff',GradientType=0 );
}
ul.sort-container li a.active {
    font-weight: bold;
    background: #ffffff;
    background: -moz-linear-gradient(top, #f2f2f2 0%, #ffffff 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f2f2f2), color-stop(100%,#ffffff));
    background: -webkit-linear-gradient(top,  #f2f2f2 0%,#ffffff 100%);
    background: -ms-linear-gradient(top, #f2f2f2 0%,#ffffff 100%);
    background: linear-gradient(to bottom, #f2f2f2 0%,#ffffff 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f2f2', endColorstr='#ffffff',GradientType=0 );
    box-shadow: inset 1px 1px 0 #fff;
}
.airline-logo {
    background-color: #FFF;
    width: 78px;
    height: 44px;
}
.flight-details {
    padding-top: 13px;
    width: 44px;
    height: 31px;
    text-decoration: underline;
}
.amenities-container {
    width: 730px;
}
.ratings-wrap {
    padding: 8px 0;
    overflow: hidden;
}
.stars-wrap {
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.stars-wrap-padded {
    padding: 5px 0;
    overflow: hidden;
}
.rating-number {
    margin: 0;
    padding: 0;
}
.hotel-inner-left {
    width: 200px;
    float: left;
    overflow: hidden;
}
.hotel-inner-right {
    margin-left: 215px;
    overflow: hidden;
}
.hotel-packages {
    padding: 10px 25px 20px;
    background: #fff;
}
.sidebar-widget-wrap {
    margin-bottom: 5px;
    padding: 10px;
    background: #f9f9f9;
    border: 1px solid #ddd;
}
ul.hotel-room-guest-sub-list {
    margin: 0;
}
ul.hotel-room-guest-sub-list > li {
    padding-top: 10px;
    padding-bottom: 1px;
    overflow: hidden;
}
ul.hotel-room-guest-list {
    width: 342px;
}
ul.hotel-room-guest-list li {
    border-bottom: 1px solid #5e5e5e;
    overflow: hidden;
}
ul.hotel-room-guest-list li:last-child {
    border-bottom: 0px;
}
ul.hotel-room-child-age-list > li {
    border-bottom: 1px dotted #5e5e5e;
    overflow: hidden;
    padding-bottom: 4px;
}
/* misc */
h1 {
    margin: 0 0 10px 0;
    font: 400 27px/26px arial, sans-serif;
}

sup {
    font-size: 8px;
}

input[type=text] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* float */
.left {
    float: left;
}
.right {
    float: right;
}

/* border */
.border-top {
    border-top: 1px solid #e1e1e1;
}
.dotted-border-bottom {
    border-bottom: 1px dotted #c1c1c1;
}
.border-grey {
    border: 1px solid #e1e1e1;
}

/* typo: align */
.center {
    text-align: center !important;
}
/* typo: style */
.underline {
    text-decoration: underline;
}
/* typo: weight */
.normal,
.nobold {
    font-weight: 400;
}
/* typo: size */
.xsmall {
    font-size: 9px;
    font-family: tahoma, sans-serif;
}
.smaller {
    font-size: 10px !important;
}
.small {
    font-size: 11px !important;
    line-height: 13px;
}
.regular {
    font-size: 12px !important;
}
.medium {
    font-size: 14px !important;
}
.big {
    font-size: 16px !important;
}
.bigger {
    font-size: 18px !important;
}
.biggest {
    font-size: 24px !important;
}
.massive {
    font-size: 28px !important;
    line-height: initial;
}
.huge {
    font-size: 30px !important;
}
/* typo: colors */
.dark-grey {
    color: #444;
}
.med-grey {
    color: #666;
}
.grey {
    color: #999 !important;
}
.light-grey {
    color: #d1d1d1;
}
.green {
    color: #629900;
}
.green-bright {
    color: #5da606;
}
.green-neon {
    color: #90f41a !important;
}
.blue-dark {
    color: #165772;
}
.orange {
    color: #ff5200 !important;
}
.yellow {
    color: #ffd259 !important;
}
.brightyellow {
    color: #ffff00;
}
.blue-reg {
    color: #0071a5 !important;
}
.blue {
    color: #1a5277;
}
.blue-bright {
    color: #2cb8e2;
}
.blue-fhub {
    color: #0072a3;
}
.yellow-fhub {
    color: #eea800;
}
.white {
    color: #fff !important;
}
.bg-green {
    background: #f0fed6;
}
.bg-grey {
    background: #f7f7f7;
}
.red {
    color: #d03636 !important;
}

/* buttons */
a.blue-reg-btn {
    padding: 7px 14px 8px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    display: inline-block;
    background-color: #0072a3;
    border: 1px solid #0072a3;
    cursor: pointer;
    border-radius: 2px;
    transition: background-color 0.2s;
}
a.blue-reg-btn:hover {
    background: #004a6a;
    color: #ffffff;
}
a.green-reg-btn {
    padding: 7px 14px 8px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    display: inline-block;
    background-color: #7dbe36;
    border: 1px solid #7dbe36;
    cursor: pointer;
    border-radius: 2px;
    transition: background-color 0.2s;
}

a.green-reg-btn:hover {
    background: #438100;
    color: #ffffff;
}

a.button-filter {
    margin: 0 0 25px;
    padding: 5px 14px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    cursor: pointer;
    font-size: 14px;
    font-weight: bold;
    display: block;
    background: #0072a3;
    border: 1px solid #0072a3;
    text-align: center;
    position: relative;
    z-index: 2;
}

#new-search-buttons {
    display: inline;
}

.modal-search-btn-wrapper {
    display: inline;
}


a.btn-orange {
    padding: 9px 15px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    display: inline-block;
    background-color: #f26639;
    cursor: pointer;
    border-radius: 2px;
    transition: background-color 0.2s;
}

a.btn-orange:hover {
    background-color: #c0512e;
    color: #fff;
}

/* photo */
.photo-right {
    margin: 0 20px 0 40px;
    float: right;
}
.photo-padded {
    padding: 3px;
    border: 1px solid #cdcdcd;
    background: #fff;
}

/* padding */
.padtop6 {
    padding-top: 6px;
}

.pad-both {
    padding: 5px;
}
/* margin */
.margin-right-18 {
    margin-right: 18px;
}

.middle, .middle10px, .middle9px, .middle8px, .middle7px, .middle6px, .middle5px, .middle4px, .middle3px, .middle2px, .middle1px {
    vertical-align: middle;
}
.middle12px {
    margin-top: -12px;
}
.middle11px {
    margin-top: -11px;
}
.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;
}
.pointer {
    cursor: pointer
}
.textshadow {
    text-shadow: -1px 1px 0 #333;
}
.regular-font {
    font: 12px Arial, Helvetica, sans-serif;
}

.mobile-only {
    display: none !important;
}

.clear {
    clear: both;
}

/* modern clearfix - http://cssmojo.com/the-very-latest-clearfix-reloaded/ */
.clearfix:after {
    content:"";
    display:block;
    clear:both;
}

/* error message */
.form-error {
    margin: 0 0 10px;
    display: none;
    clear: both;
    overflow: hidden;
    color: #ff0000;
}
.error-flow {
    margin-top: 11px;
    color: #ff0000;
}

/* feedback */
.feedback-error {
    margin: 0 0 5px;
    padding: 5px 10px;
    font-weight: 700;
    color: #fff;
    background-color: #b63434;
    border-radius: 2px;
    text-align: center;
}
.feedback-warning {
    margin: 0 0 5px;
    padding: 5px 10px;
    font-weight: 700;
    color: #AD7900;
    background: #F9F9CA;
    border-radius: 2px;
    text-align: center;
}
.feedback-success {
    margin: 0 0 5px;
    padding: 5px 10px;
    font-weight: 700;
    color: #fff;
    background-color: #7cb536;
    border-radius: 2px;
    text-align: center;
}

.fa-output-container {
    padding: 5px 15px;
    border-radius: 2px;
    margin-bottom: 5px;
    color: #FFFFFF;
}

/* head office only stats link */
a.searchStatsLink {
    color: white;
    text-decoration: underline;
}

/* recaptcha */

div #recaptcha_table .recaptcha_image_cell {
    padding: 0px !important;
    border: 1px solid #DFDFDF !important;
}

.recaptchatable,
.recaptchatable #recaptcha_image {
    border: 0px solid #DFDFDF !important;
}

.recaptchatable #recaptcha_image img {
    width: 230px !important;
}

/* css-only loading spinner */

.loader-container {
    margin: 0 auto;
    display: block;
}

.seatmap-upsell-error .loader-container {
    margin: 0 auto;
}

.final-step-modal .loader-container-upsell {
    display: block;
    margin: 5px auto;
    width: 6em;
}

.final-step-modal .loading-alert {
    color: #666;
    font-style: normal;
}

.loader, .loader-upsell {
    margin: 0;
    font-size: 10px;
    position: relative;
    text-indent: -9999em;
    border-top: 1.1em solid rgba(236,83,0, 0.2);
    border-right: 1.1em solid rgba(236,83,0, 0.2);
    border-bottom: 1.1em solid rgba(236,83,0, 0.2);
    border-left: 1.1em solid #ec5300;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: load8 1.1s infinite linear;
    animation: load8 1.1s infinite linear;
    overflow: hidden;
}

.loader,
.loader:after, .loader-upsell, .loader-upsell:after {
    border-radius: 50%;
    width: 6em;
    height: 6em;
}

@-webkit-keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}



@media (max-width : 1024px) {

    .mobile-only {
        display: block !important;
    }

}

.seatmap-upsell-container {
    padding: 15px 0 30px;
    box-sizing: border-box;
    margin: 0 auto;
    max-width: 980px;
}

/* seatmap error */
.seatmap-upsell-error {
    padding: 0;
    background-color: #fff;
    max-width: 980px;
    text-align: center;
}

.error-content-1,
.error-content-2,
.error-content-3 {
    padding: 10px;
    box-sizing: border-box;
    display: inline-block;
    margin: 0 auto;
}

.error-content-img {
    width: 120px;
    height: auto;
    margin: 0 auto 20px;
}

.error-content-img img {
    width: 100%;
}

.seatmap-error {
    padding: 10px 50px 10px 10px;
    /* display: none; */
    font-weight: 600;
    line-height: 1.2;
    color: #d62727;
    position: relative;
    background: #fff0f0;
    border: 1px solid #d62727;
}

.seatmap-error .fa {
    position: absolute;
    right: 10px;
    top: 50%;
    font-size: 20px;
    margin-top: -10px;
}

.error-content-2 .seatmap-error-bigtext {
    color: #3FB151;
}
.seatmap-error-bigtext {
    padding: 0 0 10px 0;
    font-size: 32px;
    line-height: 35px;
    font-weight: 400;
    color: #444;
}

.seatmap-error-text {
    padding: 10px 0 0 0;
    font-size: 16px;
    line-height: 22px;
    color: #777;
}

.seatmap-error-infotext {
    margin: 20px auto 0;
    padding: 30px 0 0;
    border-top: 1px solid #cacaca;
    font-size: 16px;
    line-height: 22px;
    color: #666;
    width: 50%;
}

.seatmap-error-buttons {
    margin: 30px auto 0;
    width: 40%;
    text-align:center;
}

.seatmap-error-button {
    padding: 0 10px;
    display:inline-block;
    width: 49%;
}

.seatmap-error-button a {
    padding: 12px;
    display: block;
    background-color: #fff;
    color: #777;
    border: 1px solid #cacaca;
    border-radius: 2px;
    text-align: center;
}

.seatmap-error-button a:hover {
    color: #333;
    border: 1px solid #999;
}

.seatmap-not-available-wrap .seatmap-disabled {
    text-align: center;
}

.insurance-banner {
    width: 980px;
    height: 200px;
    padding: 130px 0 0 0;
    margin-bottom: 20px;
    text-align: center;
}

ul.insurance-nav {
    margin: 0;
    background: #f5f5f5;
}

ul.insurance-nav li {
    position: relative;
}

ul.insurance-nav li a {
    padding: 13px 12px;
    font: 400 12px arial, sans-serif;
    color: #777;
    display: block;
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #e1e1e1;
}

ul.insurance-nav li a img {
    padding: 0 7px 0 0;
}

ul.insurance-nav li a.active:first-child {
    border-top: 0 solid #e1e1e1;
}

ul.insurance-nav li a:hover {
    margin: 0 -1px 0 0;
    box-shadow: -5px 0 0 #0071a0;
    border-bottom: 1px solid #e1e1e1;
    color: #444;
    background: #fff;
}

ul.insurance-nav li a.active {
    margin: 0 -1px 0 0;
    box-shadow: -5px 0 0 #0071a0;
    border-bottom: 1px solid #e1e1e1;
    color: #444;
    cursor: default;
    background: #fff;
    position: relative;
}

ul.insurance-faq-list {
}

ul.insurance-faq-list > li:first-child {
    border-top: 0;
    padding: 0 0 5px;
    margin-bottom: 7px;
    font-weight: bold;
}

ul.insurance-faq-list > li {
    border-top: 1px dotted #e1e1e1;
    padding: 10px 0 11px;
}

ul.insurance-faq-list > li:last-child {
    border-bottom: 1px dotted #e1e1e1;
}

.insurance-video-container {
    margin-left: 15px;
    margin-bottom: 10px;
}
.columns-wrap-airlines {
    margin: 0 auto;
    padding: 25px 15px;
    max-width: 1230px;
    overflow: hidden;
}

.airlines-title {
    margin-bottom: 15px;
    padding: 0 0 5px;
    font-size: 18px;
    border-bottom: 1px solid #dcdcdc;
}

.airline-box {
    margin-bottom: 10px;
    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: 0 1 24%;
    -webkit-flex: 0 1 24%;
}

.airline-box ul li img {
    display: block;
}








@media (max-width : 767px) {

    .container-airlines {
        margin: 0;
        padding: 0;
        max-width: 95%;
        width: 100%;
    }

    .airline-box ul {
        flex-direction: column;
        -webkit-flex-direction: column;
    }

    .airline-box ul li:first-child {
        border-top: 0;
    }

    .airline-box ul li {
        width: 100%;
        border-top: 1px dashed #dcdcdc;
        text-align: center;
    }

}

body {
    margin: 0;
    min-height: 100vh;
}

.partner-wrap {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    min-height: 100vh;
}

.partner-left {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.partner-right {
    flex: 1;
    display: flex;
    background-image: url('https://www.flighthub.com/images/partner/body-bg.jpg');
    background-size: cover;
    background-repeat: no-repeat;
}

.partner-right-box {
    margin: auto;
    width: 90%;
    height: 93%;
    border: 2px solid white;
}

.partner-login-container {
    margin: auto;
    width: 400px;
}

.partner-logo-container{
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-items: center;
}

.partner-logo-container h1{
    text-align: center;
    margin: 25px 0 0 0;
}

.partner-title {
    margin: 35px 0 25px;
    padding-bottom: 15px;
    font-size: 24px;
    border-bottom: 1px dashed #dcdcdc;
}

.partner-all-fields {
    margin: -15px 0 20px;
}

.partner-login-container form {
    display: flex;
    flex-direction: column;
}

.partner-login-container form label {
    padding-bottom: 5px;
    font-size: 16px;
}

.partner-login-container form input {
    margin-bottom: 15px;
    padding: 12px 15px;
    font-size: 16px;
    border: 1px solid #bbb;
    border-radius: 4px;
    transition: all 0.3s;
}

.password-modal-input {
    position: relative;
}

.password-modal-input input{
    width: 100%;
}

.password-modal-input .toggle-password {
    top: 30%;
}

.partner-login-container form input.nomargin {
    margin-bottom: 5px;
}

.partner-login-container form input:focus {
    border: 1px solid #444;
}

.dropdown-container {
    position: relative;
    width: 100%;
}

.dropdown-container .fa-arrow-down {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

.partner-login-container form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin-bottom: 20px;
    padding: 12px 15px;
    font-size: 16px;
    width: 100%;
    border: 1px solid #bbb;
    border-radius: 4px;
    transition: all 0.3s;
}

.partner-form-row {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.partner-form-item {
    margin-right: 15px;
    flex: 1;
}

.partner-form-item .fa-arrow-down {
    top: 40%;
}

.partner-form-item:last-child {
    margin-right: 0;
}

.partner-login-container button {
    padding: 15px 35px;
    display: inline-block;
    background-color: #F26539;
    color: white;
    width: 260px;
    font-size: 20px;
    font-weight: 600;
    border-radius: 6px;
    transition: all 0.3s;
    cursor: pointer;
    border: 0;
    outline: 0;
    text-align: center;
}

.partner-login-container button:hover {
    background-color: #ff683a;
}

.partner-login-container button img {
    margin: auto;
    display: block;
}

.partner-login-container .subtitle {
    color: #555;
    margin-bottom: 20px;
}

.forgot-pass {
    margin-top: 25px;
    color: #2DB9E3;
    width: fit-content;
    width: -moz-fit-content;
}

.forgot-pass:hover {
    color: #19667d;
}

.partner-signup {
    margin-top: 25px;
    color: #888;
}

.partner-signup a {
    margin-left: 5px;
    font-weight: 600;
}

.partner-footer {
    padding: 45px;
    color: #999;
}

.partner-footer a {
    margin-left: 25px;
}

.partner-validation {
    margin: -15px 0 20px;
    font-weight: 600;
    color: red;
}

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

a.toggle-login-forms.close-modal-btn {
    position: absolute;
    top: 16px;
    right: 19px;
    color: #00346c;
    font-size: 18px;
    text-align: center;
    cursor: pointer;
    outline: 0;
    z-index: 5;
}

a.toggle-login-forms.close-modal-btn:focus,
a.toggle-login-forms.close-modal-btn:hover{
    color: #999;
    cursor: pointer;
}

#forgot-form-container {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    background: rgba(255,255,255,0.9);
    z-index: 10;
    left: 0;
    padding: 5% 0 0 0;
}

#forgot-form-container .inner-wrap {
    position: relative;
    max-width: 500px;
    margin: auto;
    background: #fff;
    padding: 20px;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    width: 90%;
}

#login_feedback_forgot_message {
    margin-top: 25px;
}

.spinner {
    margin: 3px auto;
    font-size: 5px;
    position: relative;
    text-indent: -9999em;
    border-right: 1.1em solid;
    border-bottom: 1.1em solid;
    border-top: 1.1em solid;
    border-color: #DEDEDE;

    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);

    -webkit-animation: spin 0.5s infinite linear;
    animation: spin 0.5s infinite linear;
    border-left: 1.1em solid #455D88;
}

.spinner,
.spinner:after {
    width: 6em;
    height: 6em;

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

#forgot-form .spinner-wrap {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: rgba(255,255,255,0.7);
    z-index: 2;
    width: 100%;
    height: 100%;
}

#forgot-form .spinner {
    font-size: 4px;
    top: 50%;
    margin: -25px auto 0 auto;
}

#partner-signup {
    padding-top: 30px;
}

.login-button-wrap {
    display: flex;
    align-items: center;
}

.login-button-wrap > a {
    flex: 1;
    text-align: center;
}


@media (max-width: 950px) {

    body {
        margin: 0 !important;
    }

    .partner-right {
        display: none;
    }

    .partner-logos-wrap {
        margin-top: 25px;
    }

}

/*  New Checkbox styles */

.partner-form-checkbox-item-wrapper {
    display: flex;
    margin-bottom: 15px;
}

.partner-form-checkbox-item-wrapper input[type="checkbox"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 8px;
    margin: 0;
    width: 24px;
    height: 24px;
    border: 2px solid #bbb;
    border-radius: 4px;
    background-color: white;
    cursor: pointer;
    position: relative;
    display: inline-block;
}

.partner-form-checkbox-item-wrapper input[type="checkbox"]:checked {
    background-color: #007bff;
}

.partner-form-checkbox-item-wrapper input[type="checkbox"]:checked::after {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 16px;
    color: white;
}

.partner-form-checkbox-item-wrapper span {
    display: flex;
    margin: 2px 10px;
}

.modal-partner-checkbox .partner-form-row .partner-form-item {
    margin: 10px 0;
    display: flex;
    align-items: flex-start;
}

.modal-partner-checkbox .partner-form-row .partner-form-item div {
    margin-left: 10px;
    line-height: 1.3;
}

.modal-partner-checkbox .partner-form-row .partner-form-item div span {
    display: block;
    margin-top: 15px;
    margin-bottom: 10px;
}

.modal-partner-checkbox .partner-form-row .partner-form-item input {
    margin: 0;
}

/*  Bell partner pop up modal */

.partner-modal-logo-header-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 30px 0 25px 0;
    background-color: #ffffff;
    border-radius: 4px 4px 0 0;
}

.partner-modal-logo-header-line {
    border-right: 1px dashed #393939;
    height: 50px;
}

.partner-modal-logo-header-container .logo {
    margin-right: 15px;
}

.partner-logo-bell {
    margin-left: 15px;
}

.partner-logo-bell img {
    width: 60%;
}

.partner-contest-rules-container {
    padding:0 30px;
    height: 450px;
}

.partner-contest-rules-top-copy {
    text-align: center;
    font-size: 14px;
    font-weight: bold;
    padding: 20px 15px;
}

.partner-contest-rules-bottom-copy {
    text-align: center;
    font-size: 14px;
    font-weight: normal;
    padding: 20px 15px;
}

.partner-contest-rules-bottom-copy span {
    font-size: 14px;
    display: block;
    padding-top: 10px;
}

.partner-contest-rules-top-copy span {
    font-size: 14px;
    font-weight: normal;
    padding-top: 20px;
    display: block;
}

.partner-contest-rules-list-wrapper ol li {
    list-style: inside;
    list-style-type: auto;
    margin: 10px 0;
    padding: 15px;
    background-color: #ffffff;
    border-radius: 4px;
}

.partner-contest-rules-list-wrapper ol li::marker {
    font-weight: bold;
}

.partner-contest-rules-list-wrapper ol li span {
    font-weight: bold;
}


/*  Bell partner separate terms page styles */


.bell-contest-terms-page-container {
    color: #333333;
    background-color: #ffffff;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 30px;
}

.bell-contest-terms-page-top-copy {
    text-align: center;
    font-weight: bold;
    font-size: 18px;
    padding: 15px 0;
    line-height: 1.5;
}

.bell-contest-terms-page-top-copy span {
    font-weight: normal;
    font-size: 15px;
    padding-top: 15px;
    display: block;
}

.bell-contest-terms-page-list-container {
    padding-bottom: 50px;
}

.bell-contest-terms-page-list-container ol li {
    margin: 15px 0;
    padding: 15px;
    list-style: inside;
    list-style-type: auto;
    background-color: #f5f5f5;
    border-radius: 4px;
    border: 1px solid #EEEEEE;
    line-height: 1.5;
    font-size: 15px;
}

.bell-contest-terms-page-list-container ol li::marker {
    font-weight: bold;
}

.bell-contest-terms-page-list-container ol li span {
    font-weight: bold;
}


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

    .bell-contest-terms-page-top-copy {
        font-size: 16px;
    }

    .bell-contest-terms-page-top-copy span {
        font-size: 12px;
    }

    .bell-contest-terms-page-list-container ol li {
        font-size: 12px;
    }

}


/*  FIXED MODAL */

.fixed-modal-overlay {
    display: none;
    position: fixed;
    z-index: 999;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(58, 58, 58, 0.6);
    align-items: center;
    justify-content: center;
    color: #000;
    overflow: scroll;
}
.fixed-modal-overlay.show {
    display: flex;
}

.fixed-modal-wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    max-height: 100%;
    width: 100%;
}

.fixed-modal-container {
    margin: 50px 0;
    max-width: 630px;
    background-color: #F5F5F5;
    position: relative;
    /*border-radius: 12px;*/
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}
.fixed-modal-container-1 {
    position: relative;
    max-width: 630px;
    padding: 15px;
    margin: 50px 0;
    background-color: #F5F5F5;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px;
    -webkit-box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    -moz-box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

.fixed-modal-close-btn {
    display: block;
    position: absolute;
    top: -30px;
    right: -30px;
    font-size: 36px;
    line-height: 30px;
    height: 30px;
    color: #FFF;
    cursor: pointer;
}
.fixed-modal-close-btn:after {
    content: "\00D7";
}

.fixed-modal-content {
    display: none;
}

.fixed-modal-overlay .fixed-modal-content {
    display: block;
    height: 100%;
    overflow: auto;
}


/* covid article for 'learn more' link in checkout */

.fixed-modal-content .terms-section-title {
    display: none;
}

.fixed-modal-content .modal-checkout-title {
    margin-bottom: 15px;
    text-align: center;
    font-size: 17px;
    font-weight: 600;
}

html.fhub .fixed-modal-content .modal-checkout-title {
    font-size: 15px;
}

.fixed-modal-content .terms-section {
    padding: 0 15px;
    background-color: transparent;
    border: 0 solid #eee;
}

.fixed-modal-content .subtitle {
    margin-top: 0 !important;
    font-weight: 600 !important;
    color: #555 !important;
    text-transform: none !important;
}

.fixed-modal-close-btn:after {
    content: "\00D7";
}

.fixed-modal-content-1 {
    display: none;
}

.fixed-modal-overlay .fixed-modal-content-1 {
    display: block;
    height: 100%;
    overflow: auto;
}


/* covid article for 'learn more' link in checkout */

.fixed-modal-content-1 .terms-section-title {
    display: none;
}

.fixed-modal-content-1 .modal-checkout-title {
    margin-bottom: 15px;
    text-align: center;
    font-size: 17px;
    font-weight: 600;
}

html.fhub .fixed-modal-content-1 .modal-checkout-title {
    font-size: 15px;
}

.fixed-modal-content-1 .terms-section {
    padding: 0 15px;
    background-color: transparent;
    border: 0 solid #eee;
}

.fixed-modal-content-1 .subtitle {
    margin-top: 0 !important;
    font-weight: 600 !important;
    color: #555 !important;
    text-transform: none !important;
}

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

    .fixed-modal-container {
        width: 90%;
    }

    .fixed-modal-container-1 {
        width: 90%;
    }

    .fixed-modal-close-btn {
        top: -40px;
        right: 0px;
    }
}


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

    /* hook this onto a new id appended to parent container */

    .fixed-modal-container {
        margin: 0;
        width: 100%;
        height: 100%;
        border-radius: 2px;
    }
    .fixed-modal-container-1 {
        margin: 0;
        border-radius: 2px;
    }

    .fixed-modal-close-btn {
        top: 5px;
        right: 10px;
        color: #999;
    }

    .fixed-modal-wrapper {
        height: 100%;
    }

    .column .fixed-modal-content  ul {
        margin: auto;
        width: fit-content;
    }

    .column .fixed-modal-content-1  ul {
        margin: auto;
        width: fit-content;
    }

    .baggage-info-airline {
        padding: 10px;
        flex: auto;
        display: flex;
        align-items: center;
        border-right: 0;
        width: 100%;
        justify-content: center;
        background-color: #eef1f4;
    }

    .baggage-info-airline img {
        margin: 0 3px 0 10px;
        width: 22px;
    }

    .baggage-info-wrap > ul li:before {
        top: 6px;
    }

    .baggage-info-title {
        font-weight: 600 !important;
    }

    ul.baggage-info-fineprint {
        padding: 15px;
        background-color: #f0f0f0;
        border: 1px dashed #aaa;
        border-radius: 8px;
    }

}


@media (max-width: 500px) {

    .partner-login-container {
        width: 93%;
    }

    .partner-footer {
        padding: 15px;
    }

    .partner-title {
        padding-bottom: 10px;
        font-size: 20px;
    }

}
/* 2 STEP SEARCH RESULT EXPERIMENT */
.exp-wrapper {
    margin: 0 auto;
    width: 980px;
    position: relative;
}

.exp-packages {
    margin-left: 215px;
    min-height: 1400px;
}

.exp-container-results {
    margin: 20px auto 40px;
    padding: 0 0 5px;
    width: 980px;
}

.exp-sidebar-ads {
    position: absolute;
    right: -182px;
    top: 0;
}

.package-action-links a{
    margin-right: 10px;
}
.package-action-links a span{
    margin-right: 4px;
}

ul.exp-container-flight-package {
    margin-top: 8px;
}

.flights-results-wrap .flight-package-wrap {
    display: table;
    width: 100%;
    table-layout: fixed;
    direction: rtl;
}

.flight-package-wrap .exp-price {
    color: #0072a3;
}

.exp-container-flight-package-left,
.exp-container-flight-package-right {
    display: table-cell;
    vertical-align: top;
    direction: ltr;
}

.exp-container-flight-package-left {
    position: relative;
    padding-right: 10px;
}

.exp-container-flight-package-right {
    padding-top: 10px;
    text-align: center;
    position: relative;
    width: 160px;
}

.exp-container-price-right {
    padding-top: 15px;
}

.flight-package-wrap .result-price {
    display: inline-block;
    font-weight: bold;
    font-size: 25px;
}

.flight-package-wrap .per-person {
    display: block;
    padding: 0 5px 0 0;
    clear: both;
}

.flight-package-wrap .elite-price-tag {
    display: inline-block;
    padding: 5px 5px 0 5px;
    line-height: 1;
}

.exp-container-flight-package li {
    background: #fff;
    border: 2px solid #fff;
}

.exp-container-flight-package>li:hover a.exp-price {
    text-decoration: underline;
}

table.exp-package {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

table.exp-package td {
    padding: 7px 10px;
    border: 0;
    line-height: 1.3em
}

table.exp-package td .bigtext {
    font-size: 18px;
    margin-bottom: 5px;
    display: inline-block;
    line-height: 1.2;
}

.flex-package table.exp-package td .bigtext {
    font-size: 16px;
}

.flex-package table.exp-package .segment-departure .bigtext {
    color: #0074A4;
}

table.exp-package .arrow-wrap {
    width: 50px;
}

table.exp-package .stops-cell,
table.exp-package .flight-duration {
    width: 120px;
}

.exp-package .icon-package-arrow {
    padding-top: 0;
}

table.exp-package td:first-child {
    padding-left: 5px;
}

table.exp-package td sup {
    font-size: 14px;
}

a.phone-deal-btn,
a.button-select-fare {
    padding: 5px 0 4px;
    display: block;
    font: bold 16px arial, sans-serif;
    color: #fff;
    background: #ff712d;
    background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
    background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff712d', endColorstr='#ff5200',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #ff5200;
    cursor: pointer;
    border-radius: 2px;
    text-align: center;
}

a.phone-deal-btn:hover,
a.button-select-fare:hover {
    background: #ff5200;
}

a.button-outbound-back {
    padding: 4px 10px;
    display: inline-block;
    font-weight: bold;
    color: #fff;
    background: #33abdf;
    background: -moz-linear-gradient(top, #33abdf 0%, #0498d8 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#33abdf), color-stop(100%,#0498d8));
    background: -webkit-linear-gradient(top, #33abdf 0%,#0498d8 100%);
    background: -ms-linear-gradient(top, #33abdf 0%,#0498d8 100%);
    background: linear-gradient(to bottom, #33abdf 0%,#0498d8 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33abdf', endColorstr='#0498d8',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #0498d8;
    cursor: pointer;
    border-radius: 5px;
    text-align: center;
}
a.button-outbound-back:hover {
    background: #0498d8;
}
.container-sort-left-exp {
    padding: 10px 0 0;
    text-align: center;
}
.exp-codeshares {
    margin-left: 0;
    font-size: 11px;
    color: #999;
    line-height: 14px;
}
.exp-airlines-wrap {
    overflow: hidden;
}
.exp-airlines-left {
    float: left;
}
.exp-airlines-right {
    margin-left: 5px;
    padding-top: 4px;
    float: left;
    line-height: 16px;
    color: #999;
}
.exp-logo {
    float: left;
}
.chosen-package-wrap {
    margin-bottom: 10px;
    padding: 5px 15px;
    background: #fff;
    border-top: 2px solid #2cb8e2;
    border-bottom: 1px solid #76b5d0;
    overflow: hidden;
}
.chosen-package-left {
    padding-top: 12px;
    float: left;
    width: 25%;
    overflow: hidden;
}
.chosen-package-middle {
    float: left;
    width: 60%;
}
.chosen-package-right {
    padding-top: 17px;
    float: left;
    text-align: right;
    width: 15%;
}
.select-flight-text {
    font-size: 28px;
}
.chosen-package-left-left {
    font-size: 18px;
}
.chosen-package-left-right {
}
.exp-details {
    margin-top: -10px;
    margin-bottom: 10px;
    padding: 15px;
    background: #fff;
}
.exp-leg-wrap {
    overflow: hidden;
}
.exp-leg-left {
    padding: 7px 2% 0 0;
    float: left;
    width: 19%;
}
.exp-leg-right {
    float: left;
    width: 79%;
    line-height: 24px;
}
.exp-layover {
    margin: 10px 0 10px 20%;
    padding: 5px;
    background: #f0f0f0;
    color: #468100;
    font-weight: bold;
}
.bigtext {
    font-size: 18px;
}

.select-flight-wrap {
    padding: 5px 0 15px;
}

.select-flight-left {
    float: left;
    width: 80%;
}

.select-flight-right {
    padding-top: 10px;
    float: left;
    width: 20%;
    text-align: right;
}

.select-flight-right a {
    padding: 0 10px;
}

.exp-ac2u-select .price-decimal, .exp-ac2u-select .price-fraction {
    display: none;
}

.exp-ac2u-select {
    border-top: 1px solid #dadada;
}

.exp-ac2u-select ul {
    width: 100%;
}

.exp-ac2u-select ul li {
    float: left;
}

.exp-ac2u-select ul li a {
    padding: 5px 10px;
    display: block;
    font-size: 11px;
    line-height: 16px;
    color: #6792a7;
}

.exp-ac2u-select ul li a:hover {
    color: #ec5300;
}

.exp-ac2u-select ul li a.active {
    color: #ec5300;
}

.exp-chosen-airline {
    padding-top: 20px !important;
}

.result-promo-wrap {
    margin-top: 15px;
    background: #fff;
}
.result-promo-top {
    padding-top: 5px;
    border-bottom: 2px solid #f0f0f0;
    width: 100%;
    overflow: hidden;
}
.result-promo-bottom {
    padding: 3px 6px;
    text-align: right;
}
.result-promo-top-left {
    float: left;
    width: 17%;
}
.result-promo-top-middle {
    padding-top: 15px;
    float: left;
    width: 58%;
}
.result-promo-top-right {
    padding: 15px 10px 15px 30px;
    float: left;
    width: 25%;
    text-align: center;
}
.result-promo-textbox {
    padding: 15px;
    background: #f0f0f0;
    border-radius: 16px;
    width: 100%;
    border: 1px solid #dadada;
    position: relative;
}
.result-promo-pointer {
    position: absolute;
    left: -29px;
    top: 20px;
}
.promo-textbox-top {
    padding-bottom: 10px;
    font-size: 19px;
    color: #fe5301;
    border-bottom: 1px solid #dadada;
    text-align: center;
}
.promo-textbox-bottom {
    padding: 10px 0 5px;
    border-bottom: 1px solid #dadada;
    overflow: hidden;
}
.promo-textbox-bottom-left {
    float: left;
    font-size: 42px;
    color: #3d9d00;
    line-height: 34px;
}
.promo-textbox-bottom-right {
    float: right;
}
.result-promo-phone {
    font-size: 23px;
    line-height: 18px;
    color: #4d4d4d;
}
.result-promo-5mins {
    font-size: 14px;
    color: #4d4d4d;
}
.result-promo-price {
    margin-top: 7px;
    color: #0072a3;
    font-size: 28px;
    line-height: 26px;
    font-weight: bold;
}
.button-select-fare-promo {
    padding: 5px 0 4px;
    display: block;
    font: bold 16px arial, sans-serif;
    color: #fff;
    background: #ff5200;
    border-radius: 5px;
    text-align: center;
}
.button-select-fare-promo:hover {
    background: #ff5200;
}

/* CHECKOUT INSURANCE EXPERIMENT */
.ins-top-wrap-exp {
    overflow: hidden;
}
.ins-top-left-exp {
    padding: 10px 30px 0 20px;
    float: left;
}
.ins-top-right-exp {
    padding: 20px 10px 15px 25px;
    border-left: 1px solid #dedede;
    float: left;
    line-height: 32px;
}
.ins-package-wrap-exp {
    margin: 0 0 10px;
    padding: 0;
    background: #f8f8f8;
    border: 1px solid #c9c9c9;
    overflow: hidden;
}
.ins-package-radio-blue-exp {
    padding: 55px 0 0;
    float: left;
    text-align: center;
    width: 5%;
    height: 130px;
    background: #eaf7fc;
}
.ins-package-radio-yellow-exp {
    padding: 55px 0 0;
    float: left;
    text-align: center;
    width: 5%;
    height: 130px;
    background: #eaf7fc;
}
.ins-package-radio-orange-exp {
    padding: 55px 0 0;
    float: left;
    text-align: center;
    width: 5%;
    height: 130px;
    background: #eaf7fc;
}
.ins-package-radio-white-exp {
    padding: 35px 0 0;
    float: left;
    text-align: center;
    width: 5%;
    height: 90px;
    background: #fff;
}
.ins-package-middle-exp {
    padding: 15px 0 0 10px;
    float: left;
    width: 25%;
    height: 130px;
    background: #fff;
    border-right: 1px solid #c9c9c9;
}
.ins-package-middle-exp-decline {
    padding: 15px 0 0 10px;
    float: left;
    width: 25%;
    height: 90px;
    background: #fff;
    border-right: 1px solid #c9c9c9;
}
.ins-package-right-exp {
    padding: 20px 10px;
    float: left;
    width: 70%;
}
.ins-package-right-exp-decline {
    padding: 10px 10px;
    float: left;
    width: 70%;
}
.ins-package-price-wrap {
    margin-top: 3px;
    margin-bottom: 5px;
    overflow: hidden;
}
.ins-package-price-left, .ins-package-price-left-decline {
    padding: 4px 8px 0 0;
    float: left;
    font-size: 20px;
}
.ins-package-price-right {
    float: left;
    font-size: 11px;
    line-height: 14px;
    color: #999;
}
.ins-package-points-wrap {
    overflow: hidden;
}
.ins-package-points-left {
    float: left;
    width: 45%;
}
.ins-package-points-right {
    float: left;
    width: 55%;
}
.ins-package-points-full {
    padding-top: 10px;
    float: left;
    width: 100%;
}
.ins-package-points-full-2lines {
    padding-top: 18px;
    float: left;
    width: 100%;
}
ul.plan-points {
    margin: 0;
    padding: 0;
    list-style: none;
}
ul.plan-points li {
    padding-left: 0;
}
ul.plan-points li + li {
    padding-left: 17px;
}

/* new footer section has been moved to core/_layout */
/* include/Mv/Ota/Flighthub/App/Css/View/_jquery_ui.css */

.filter-sidebar-redesign {
    position: relative;
    width: 100%;
}

.filter-sidebar-redesign .ui-slider {
    position: relative;
    text-align: left;
    cursor: pointer;
    width: 90%;
}

.filter-sidebar-redesign .ui-slider .ui-slider-handle {
    position: absolute;
    z-index: 2;
    background: transparent url("https://www.flighthub.com/images/slider-handlex2.png") no-repeat;
    cursor: pointer;
    width: 24px;
    height: 16px;
    -webkit-background-size: 24px 15px;
    background-size: 24px 15px;
}

/* include/Mv/Ota/Flighthub/App/Css/View/core/_util.css */
.filter-sidebar-redesign input[type="checkbox"] {
    margin: 0 3px 1px 0;
    padding: 0;
}
/* include/Mv/Ota/Flighthub/App/Css/View/module/_media.css */

@media (max-width : 1024px) {
    /* filtering overrides */
    .filter-sidebar-redesign .more-filter {
        display: none;
        border: 0;
     }

    .filter-sidebar-redesign #more_filters {
        display: block;
        border: 0;
    }

    .filter-col {
        border: 0;
    }
}

/* include/Mv/Ota/Flighthub/App/Css/View/module/_one_step_results.css */
body.one-step.filter-sidebar-redesign .search-wrap {
    border: 1px solid #dcdcdc;
}

.filter-sidebar-redesign .packages-os-taxes {
    color: #999;
}

.filter-sidebar-redesign .stops-filter .filter-title-right,
.filter-sidebar-redesign .airlines-filter .filter-title-right {
    display: none;
}

.ellipsis {
    max-width: 60%;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

#fares-search-results {
    position: relative;
}

#filtering-overlay {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(255, 255, 255, 0.7);
    z-index: 2;
    text-align: center;
}

#filtering-overlay .filtering-gif {
    padding-top: 150px;
}

.flights-results-wrap.filtering #filtering-overlay {
    display: block;
}

.filter-sidebar-redesign .orange {
    font-size: 13px !important;
}

.filter-sidebar-redesign .container-filter-wrap {
     margin-top: 25px;
     background-color: #fff;
     border: 1px solid #dcdcdc;
}

.filter-sidebar-redesign .container-filter {
    padding: 10px;
    margin-bottom: 0;
}

.filter-sidebar-redesign .filter-button-wrap {
    padding-top: 5px;
    display: table;
    width: 100%;
}

.filter-sidebar-redesign .filter-title-left {
    color: #555;
}

.stops-code {
    font-size: 10px;
    font-weight: 400;
    line-height: 13px;
    color: #aaa;
}

.filter-sidebar-redesign .filter-content ul li {
    padding: 2px 0;
    font-size: 13px;
}

.filter-sidebar-redesign .slide-toggle-button.collapsed > .show-when-collapsed {
    display: block;
}

.filter-sidebar-redesign .slide-toggle-button.expanded > .show-when-collapsed {
    display: none;
}

.filter-sidebar-redesign .slide-toggle-button.collapsed > .show-when-expanded {
    display: none;
}

.filter-sidebar-redesign .slide-toggle-button.expanded > .show-when-expanded {
    display: block;
}

.sidebar-city-list {
    padding: 5px 0;
}

.same_depart_return_airports .container-filter:first-child {
    padding-bottom: 0;
}

.same_depart_return_airports .container-filter:nth-child(2) {
    padding-top: 0;
}

.origin_airports .filter-title-wrap {
    padding-bottom: 10px;
}

.filter-sidebar-redesign .filter-button-left {
    display: table-cell;
    width: 55%;
}

.filter-sidebar-redesign .filter-button-right {
    display: table-cell;
    width: 45%;
    vertical-align: middle;
}

.filter-sidebar-redesign .filter-button-line {
    border-top: 1px solid #dcdcdc;
    height: 1px;
    width: 100%;
}

.filter-sidebar-redesign button.filter-button {
    padding: 2px 6px;
    font-size: 10px;
    color: #bbb;
    background-color: #fff;
    text-transform: uppercase;
    border: 1px solid #bbb;
    border-radius: 2px;
}

.filter-sidebar-redesign button.filter-button.active {
    color: #589cb8;
    border: 1px solid #84b8cd;
    cursor: pointer;
}

.filter-sidebar-redesign button.filter-button.active:hover {
    color: #1a789f;
    border: 1px solid #1a789f;
}

.filter-sidebar-redesign a.clear-selections {
    padding: 5px;
    display: block;
    text-align: center;
    background-color: #f9f9f9;
    color: #2cb8e2;
    border-top: 1px solid #dcdcdc;
}

.filter-sidebar-redesign a.clear-selections:hover {
    color: #12a2e2;
}

.filter-sidebar-redesign .more-filter {
    padding: 10px 15px;
    display: block;
    background-color: #f9f9f9;
    text-align: center;
    border-top: 1px solid #dcdcdc;
}

.filter-sidebar-redesign #more_filters {
    border-top: 1px solid #dcdcdc;
    display: none;
}

.filter-sidebar-redesign .filters-inline-checkbox {
    width: 60%;
}

.filter-sidebar-redesign .filters-inline-price {
    width: 20%;
}

.filter-sidebar-redesign .alliance {
    padding: 10px 0;
}

.filter-sidebar-redesign .alliance a {
    margin-right: 3px;
    padding: 1px 5px;
    display: inline-block;
    font-size: 11px;
    background-color: #fff;
    color: #777;
    border: 1px solid #dcdcdc;
    border-radius: 2px;
}

.filter-sidebar-redesign .alliance a:hover {
    color: #6792a7;
    border: 1px solid #6792a7;
}

.filter-sidebar-redesign .airlines-filter {
    position: relative;
}

.filter-sidebar-redesign .onboarding-box {
    position: absolute;
    top: -90px;
    right: -375px;
    display: none;
    width: 360px;
    background: rgba(189, 236, 255, 0.9);
    z-index: 1;
    border: 1px solid #006699;
}

.filter-sidebar-redesign .onboarding-box::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 100%;
    margin-top: -15px;
    border-width: 13px;
    border-style: solid;
    border-color: transparent rgba(0, 116, 164, 0.9) transparent transparent;
}

.filter-sidebar-redesign .onboarding-box .onboarding-box-text-wrapper {
    padding: 10px 17px 35px 25px;
    position: relative;
    display: block;
    font-size: 16px;
    line-height: 30px;
}

.filter-sidebar-redesign .onboarding-box .onboarding-box-buttons-wrapper {
    display: block;
    text-align: right;
}

.filter-sidebar-redesign .onboarding-box p {
    color: #006699;
    padding: 0;
    margin: 0;
}

.filter-sidebar-redesign .onboarding-box button {
    padding: 7px 7px 0 0;
    border: none;
    outline: none;
    color: #006699;
    font-size: 15px;
    background: none;
}

.filter-sidebar-redesign .onboarding-box button:hover {
    color: #222;
}

/* custom checkboxes */
.filter-sidebar-redesign .checkbox span.checkbox::before {
    width: 27px;
    height: 27px;
    background-color: #fff;
    left: -35px;
    box-sizing: border-box;
    border: 3px solid transparent;
    transition: border-color .2s;
}
.filter-sidebar-redesign .checkbox span.checkbox:hover::before {
    border: 3px solid #F0FF76;
}
.filter-sidebar-redesign .checkbox span.checkbox::after {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    left: -31px;
    top: 2px;
    color: transparent;
    transition: color .2s;
}
.filter-sidebar-redesign .checkbox input[type="checkbox"]:checked + label span.checkbox::after {
    color: #62AFFF;
}







@media (max-width:1024px) {

    .filter-sidebar-redesign .flights-results-wrap {
        margin-left: 0;
        width: 100% !important;
        float: none;
    }

    .filter-sidebar-redesign .more-filter {
        display: none;
    }

    .filter-sidebar-redesign #more_filters {
        border-top: 0 solid #dcdcdc;
        display: block;
    }

    .filter-sidebar-redesign .container-filter-wrap {
        margin: 0 auto 15px;
        max-width: 370px;
    }

    .filter-sidebar-redesign .ui-slider {
        width: 93%;
    }

}









@media (max-width:800px) {

    .filter-sidebar-redesign .onboarding-box {
        display: none !important;
    }

}
/*
 ----------------------------------MEMBERSHIP UPSELL PAGE------------------------------------------------------------------------------------------------
 */

.container-membership {
    margin: 0 auto;
    padding: 25px 0 45px;
    width: 980px;
    font-family: 'lato', arial, sans-serif;
    background: url("https://www.flighthub.com/images/mem-upsell-card.jpg") top center no-repeat;
}

.container-membership-short {
    margin: 0 auto 15px;
    padding: 10px 20px 45px;
    width: 940px;
    font-family: 'lato', arial, sans-serif;
    background: #fff;
}

.container-membership div {
    box-sizing: border-box;
}

.membership-top {
    text-align: center;
}

.membership-top-short {
}

.membership-title {
    font-weight: 300;
    font-size: 67px;
    line-height: 77px;
    color: #2f2f2f;
    letter-spacing: -0.03em;
}

.membership-title-short {
    padding: 0 0 2%;
    font-weight: 300;
    font-size: 33px;
    line-height: 57px;
    color: #2f2f2f;
    text-align: center;
}

.mem-subheading-wrap {
    margin: 20px auto 0;
    width: 780px;
    overflow: hidden;
}

.mem-subheading-left {
    padding-top: 5px;
    padding-right: 2%;
    float: left;
    width: 55%;
    text-align: right;
    font-size: 21px;
    line-height: 30px;
}

.mem-subheading-right {
    padding-left: 2%;
    float: left;
    width: 45%;
}

.mem-subheading-wrap-short {
    margin: 20px auto 0;
    width: 100%;
    overflow: hidden;
}

.mem-subheading-left-short {
    padding: 0 0 0 2%;
    float: left;
    width: 30%;
    box-sizing: border-box;
}

.mem-subheading-middle-short {
    padding: 10px 25px 15px 10px;
    float: left;
    width: 39%;
    font-size: 15px;
    line-height: 26px;
    box-sizing: border-box;
    border-right: 1px solid #cdcdcd;
}

.mem-subheading-right-short {
    padding: 30px 0 0 1%;
    float: left;
    width: 31%;
    text-align: center;
    box-sizing: border-box;
}

a.button-memstart {
    margin-bottom: 4px;
    padding: 6px 10px;
    color: #fff;
    font-size: 18px;
    line-height: 30px;
    display: inline-block;
    text-align: center;
    background: #ffffff;
    background: -moz-linear-gradient(top, #f07532 0%, #ec5401 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f07532), color-stop(100%,#ec5401));
    background: -webkit-linear-gradient(top,  #f07532 0%,#ec5401 100%);
    background: -ms-linear-gradient(top, #f07532 0%,#ec5401 100%);
    background: linear-gradient(to bottom, #f07532 0%,#ec5401 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f07532', endColorstr='#ec5401',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #ec5300;
}

a.button-memstart:hover {
    background: #ec5401;
}

.mem-item-title {
    font-size: 22px;
}

.mem-points-wrap {
    margin-top: 350px;
}

.mem-points-wrap-short {
    margin: 35px 0;
    font-size: 16px;
    line-height: 26px;
    border-bottom: 1px solid #dcdcdc;
}

.mem-points-left {
    padding-right: 2%;
    width: 48%;
    float: left;
    box-sizing: border-box;
}

.mem-points-right {
    padding-left: 2%;
    width: 48%;
    float: left;
    box-sizing: border-box;
}

.mem-item {
    margin-bottom: 55px;
}

.mem-description {
    margin-left: 35px;
}

.mem-points-title-wrap {
    overflow: hidden;
    background: url("https://www.flighthub.com/images/mem-divider.png") 120px 15px no-repeat;
}

.mem-points-title-left {
    padding: 0 15px 0 0;
    background: #f0f0f0;
    display: inline-block;
    font-size: 30px;
    line-height: 30px;
}

.mem-points-title-right {
    display: inline-block;
}

.mem-divider {
    background: #b4b4b4;
    border-bottom: 1px solid #fff;
    height: 1px;
    width: 100%;
}

.mem-feature-wrap {
    margin-bottom: 45px;
    overflow: hidden;
}

.mem-feature-left {
    padding: 30px 0 0 36px;
    float: left;
    width: 50%;
    font-size: 16px;
    line-height: 24px;
    color: #282828;
}

.mem-feature-right {
    padding-top: 8px;
    float: left;
    width: 50%;
    text-align: center;
}

.mem-feature-full {
    margin-bottom: 20px;
    padding: 30px 0 0 36px;
    width: 100%;
    font-size: 16px;
    line-height: 24px;
    color: #282828;
}

.mem-elite-wrap {
    margin-top: 40px;
    overflow: hidden;
}

.mem-elite-wrap-short {
    margin-top: 40px;
}

.mem-elite-box {
    margin-bottom: 25px;
    padding-left: 35px;
    line-height: 20px;
}

.mem-elite-box img {
    padding-bottom: 7px;
}

.mem-elite-box .big.dark-grey {
    display: inline-block;
    padding: 5px 0;
    text-transform: uppercase;
}

.mem-elite-left {
    float: left;
    width: 50%;
}

.mem-elite-right {
    float: left;
    width: 50%;
}

.mem-partner-wrap {
    margin-bottom: 25px;
    overflow: hidden;
}

.mem-partner-left {
    padding-top: 6px;
    float: left;
    width: 165px;
    text-align: right;
}

.mem-partner-right {
    padding-left: 15px;
    float: left;
    width: 300px;
    font-size: 14px;
    line-height: 20px;
    color: #919191;
}

.mem-buttons-wrap {
    overflow: hidden;
    padding: 0;
    background: #fff;
}

.mem-buttons-left {
    padding-top: 24px;
    float: left;
    width: 50%;
    text-align: center;
}

.mem-buttons-right {
    float: left;
    width: 50%;
    text-align: center;
}

a.mem-button-continue {
    margin-bottom: 4px;
    padding: 6px 20px;
    color: #fff;
    font-size: 22px;
    line-height: 30px;
    display: inline-block;
    text-align: center;
    background: #ffffff;
    background: -moz-linear-gradient(top, #f07532 0%, #ec5401 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f07532), color-stop(100%,#ec5401));
    background: -webkit-linear-gradient(top,  #f07532 0%,#ec5401 100%);
    background: -ms-linear-gradient(top, #f07532 0%,#ec5401 100%);
    background: linear-gradient(to bottom, #f07532 0%,#ec5401 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f07532', endColorstr='#ec5401',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #ec5300;
}

a.mem-button-continue:hover {
    background: #ec5401;
}

a.mem-button-no {
    margin-bottom: 4px;
    padding: 6px 60px;
    color: #fff;
    font-size: 22px;
    line-height: 30px;
    display: inline-block;
    text-align: center;
    background: #bababa;
    background: -moz-linear-gradient(top, #bababa 0%, #a9a9a9 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#bababa), color-stop(100%,#a9a9a9));
    background: -webkit-linear-gradient(top,  #bababa 0%,#a9a9a9 100%);
    background: -ms-linear-gradient(top, #bababa 0%,#a9a9a9 100%);
    background: linear-gradient(to bottom, #bababa 0%,#a9a9a9 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#bababa', endColorstr='#a9a9a9',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #a9a9a9;
}

a.mem-button-no:hover {
    background: #a9a9a9;
}

.mem-buttons-bottom {
    margin: 0 auto;
    padding-top: 20px;
    width: 85%;
    clear: both;
    color: #777;
    text-align: center;
}

.mem-card-mobile {
    display: none;
}

fieldset.mem-points-title {
    margin-top: 45px;
    border-top: 1px solid #cdcdcd;
}

fieldset.mem-points-title legend {
    padding: 2% 4%;
    font-size: 28px;
    font-weight: 300;
    text-align: center;
    border: 0;
}

fieldset.overall-title {
    margin-top: 15px;
    border-top: 1px solid #cdcdcd;
}

fieldset.overall-title legend {
    padding: 2% 2%;
    font-size: 28px;
    font-weight: 900;
    width: 260px;
    text-align: center;
    border: 0;
    color: #ec5300;
    text-transform: uppercase;
}

/* membership - my account */
ul.perks-box {
    overflow: hidden;
}

ul.perks-box li {
    padding: 10px 0;
    overflow: hidden;
}

ul.perks-box li:last-child {
    border-bottom: 0 solid #cdcdcd;
}

.perks-box-left {
    padding-top: 10px;
    float: left;
    width: 15%;
    text-align: center;
}

.perks-box-right {
    padding: 0 0 15px;
    float: left;
    width: 85%;
    border-bottom: 1px solid #cdcdcd;
}

.perks-box-right-last {
    padding: 0 0 15px;
    float: left;
    width: 85%;
    border-bottom: 0 solid #cdcdcd;
}

.perks-title {
    font-size: 18px;
    font-weight: 400;
    color: #ff5200;
}

.perks-box-right-inner {
    padding-left: 0px;
}

.mem-elite-wrap-myaccount {
    margin: 2% 0;
    padding: 25px 15px 0;
    background: #f5f5f5;
    border: 1px solid #cdcdcd;
    overflow: hidden;
    clear: left;
}

.mem-partner-wrap-myaccount {
    margin-bottom: 25px;
    overflow: hidden;
}

.mem-partner-left-myaccount {
    padding-top: 6px;
    float: left;
    width: 23%;
    text-align: right;
    box-sizing: border-box;
}

.mem-partner-right-myaccount {
    padding-left: 25px;
    float: left;
    width: 77%;
    color: #888;
    box-sizing: border-box;
}

table.billing-history {
    margin: 0;
    padding: 0;
    border-top: 1px solid #e1e1e1;
    border-left: 1px solid #e1e1e1;
    display: table;
    width: 100%;
}

table.billing-history th {
    padding: 5px 10px;
    background: #f9f9f9;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    text-align: left;
}

table.billing-history td {
    padding: 5px 10px;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    display: table-cell;
    text-align: left;
}

.mem-partner-container {
    margin: 0 0 25px -10px;
    display: table;
    width: 102%;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 10px;
}

.mem-partner-row {
    display: table-row;
}

.mem-partner-box {
    padding: 8px 15px 0;
    display: table-cell;
    border: 1px solid #dadada;
}

.mem-partner-logo {
    padding: 5px 0;
    text-align: center;
    border-bottom: 1px dashed #dadada;
}

.mem-partner-description {
    padding: 10px 0;
}

.promo-wrap {
    display: table;
    width: 100%;
    border-top: 1px dashed #dadada;
    border-spacing: 0;
}

.promo-wrap-url {
    padding: 8px 0;
    display: table-cell;
    width: 40%;
}

.promo-wrap-code {
    padding: 8px 0;
    display: table-cell;
    width: 60%;
    text-align: right;
    color: #ff5200;
}

.mem-partner-wrap-myaccounthome .promo-wrap-code .right {
    float: none;
}

/* membership - form */
.membership-box-hide, .membership-price, .membership-process-loading, .membership-box-hide .msg-success, .membership-box-hide .msg-error {
    display: none;
}
.membership-cc-type, .membership-card-type, .membership-cc-exp-m, .membership-cc-exp-y {
    width: 80px;
}
.membership-cc-cvv {
    width: 60px;
}
.membership-billing-date {
    margin-top: 15px;
}
.membership-price-box {
    padding-top: 32px;
    margin-right: 40px;
    width: 60px;
    height: 30px;
}
.cc-name-oncard input {
    width: 95%;
}
.membership-cc-number-wrap {
    width: 230px;
}
.membership-cc-number {
    width: 212px;
}
.membership-cc-cvv {
    width: 135px;
}
.membership-cc-cvv input {
    width: 116px;
}
.cc-name-oncard .account-info-box-fields {
    width: 324px;
}
.membership-address-wrap, .membership-b-address-wrap {
    width: 100%;
}
.membership-b-address-wrap input {
    width: 648px;
}
.membership-address-wrap input {
    width: 95%;
}
.membership-confirmation-number {
    margin: 0 auto;
    padding: 2px 0 30px;
    text-align: center;
    font-size: 15px;
    font-weight: 400;
    background: #f0f0f0;
}
.membership-phone-ext, .membership-address-wrap .account-info-box-fields, .membership-country-wrap .membership-select-box, .membership-phone-wrap .membership-select-box {
    width: 325px;
}
.membership-billing-phone input {
    width: 169px;
}
.membership-phone-ext {
    width: 125px;
    margin-top: -18px;
}
.membership-phone-ext input {
    width: 105px;
}
.membership-btn-wrap {
    width: 100%;
    margin: 20px auto;
    text-align: center;
}
.membership-btn-wrap a {
    padding-bottom: 4px;
}

.ui-dialog.member_type_dialog {
    border: 0;
}
.ui-dialog.member_type_dialog .ui-dialog-titlebar {
    width: 274px;
    border-top: 0;
    border-bottom: 1px solid #ccc;
}
.ui-dialog.member_type_dialog .ui-dialog-titlebar .ui-button.ui-dialog-titlebar-close {
    border: 0;
    margin-top: -6px;
}
.ui-dialog.member_type_dialog .ui-dialog-titlebar .ui-button.ui-dialog-titlebar-close:active {
    background-color: #fff;
}
.ui-dialog.member_type_dialog .ui-dialog-titlebar .ui-icon-closethick {
    top: -3px;
    left: 0;
}
.ui-dialog.member_type_dialog .ui-dialog-content {
    padding: 20px 14px;
}
.ui-dialog.member_type_dialog .ui-dialog-buttonset .update_btn {
    padding: 1px 10px;
    font: 700 12px arial, sans-serif;
    color: #fff;
    background: #0072a3;
    background: -moz-linear-gradient(top, #1c83b2 0%, #0072a3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1c83b2), color-stop(100%,#0072a3));
    background: -webkit-linear-gradient(top, #1c83b2 0%,#0072a3 100%);
    background: -ms-linear-gradient(top, #1c83b2 0%,#0072a3 100%);
    background: linear-gradient(to bottom, #1c83b2 0%,#0072a3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1c83b2', endColorstr='#0072a3',GradientType=0 );
    box-shadow: inset 0 0 2px #fff;
    border: 1px solid #0072a3;
    cursor: pointer;
}
.ui-dialog.member_type_dialog .ui-dialog-buttonset .update_btn:hover {
    background: #0072a3;
}

/* membership */
.membership-select-type, .membership-card-type {
    width: 140px;
}
.membership-cc-number-wrap {
    width: 171px;
}
.membership-cc-number-wrap input {
    width: 152px;
}
.membership-cc-exp-m, .membership-cc-exp-y {
    width: 100px;
}
.membership-cc-cvv {
    width: 90px;
}
.membership-cc-cvv input {
    width: 75px;
}
.membership-b-address-wrap .membership-address-line-1 {
    margin-bottom: 10px;
}
.membership-billing-phone {
    width: 217px;
}
.membership-billing-phone input {
    width: 198px;
}
.membership-phone-ext {
    width: 90px;
}
.membership-phone-ext input {
    width: 75px;
}

/* upsell */
.upsell-feedback-message .feedback-success {
    margin: 20px auto 0;
    background-image: none;
    background-color: #f0f0f0;
    border-radius: 0;
    box-shadow: none;
    color: #50913f;
    overflow: hidden;
    width: 950px;
    padding: 10px 15px 5px;
    text-align: center;
    font-size: 23px;
    border: none;
    font-weight: 400;
}
.container-membership {
    background-position: 0px 50px;
}
.loading-wrap {
    display: inline-block;
    width: 16px;
}

/* membership form - msg handler */
.hide-elem {
    display: none;
}
.show-inline-elem {
    display: inline;
}
.show-block-elem {
    display: block;
}
.show-inline-block-elem {
    display: inline-block;
}
.show-table-elem {
    display: table;
}

/* flex date package */
.package-select-wrapper {
    position: relative;
}
.flex-title {
    margin-bottom: 1px;
    padding: 5px 10px;
    color: #333;
    display: inline-block;
    background: #fefcea;
}

/* new homepage section */
.section-features {
    width: 90%;
    max-width: 980px;
    margin: auto;
    background: #fff;
    padding: 20px;
    text-align: center;
    line-height: 1.6;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
div.section.section-features .container {
    width: auto;
}
.section-features .features-wrap {
    margin-bottom: 25px;
}
.section-features .features-wrap ul {
    overflow: hidden;
}
.section-features .features-wrap li {
    padding: 0 20px;
    width: 33.333333%;
    float: left;
    position: relative;
}
.section-features .features-wrap li:after {
}
.section-features .features-wrap .icon-title {
}
.section-features .features-wrap .icon {
    width: 35px;
    height: 35px;
    margin: auto;
    border: 1px solid #ff5200;
    line-height: 35px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    color: #ff5200;
}
.section-features .features-wrap .title {
    font-size: 16px;
    margin: 10px 0;
    text-transform: uppercase;
    line-height: 1.3;
}
.lower-title {
    font-size: 16px;
    text-transform: uppercase;
    line-height: 1.3;
}
.lower-para {
    margin-top: 10px;
}
.section-features .know-more-description, .section-features .features-wrap .description {
    color: #333;
}
.section-features .features-wrap .description:after {
    position: absolute;
    content: '';
    height: 150px;
    width: 1px;
    top: 50px;
    right: 0;
    background: #e8e8e8;
}
.section-features .features-wrap li:last-child  .description:after {
    display: none;
}
.section-features .know-more {
    position: relative;
}
.section-features .know-more a {
    color: #0071a0;
    font-weight: bold;
    text-transform: uppercase;
}
.section-features .know-more a:after {
    position: absolute;
    content: '';
    width: 100%;
    height: 1px;
    background: #e6e6e6;
    left: 0;
    top: 15px;
}
.section-features .know-more a span {
    display: inline-block;
    padding: 6px 19px;
    background: #fff;
    position: relative;
    z-index: 2;
}
.section-features .know-more-description {
    display: none;
    max-width: 650px;
    margin: 10px auto;
}
.modal-more-info,
.modal-gallery,
.container-upsell{
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
}

.container-upsell *{
margin: 0;
padding: 0;
border: 0;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.modal-gallery *,
.modal-gallery,
.modal-more-info *,
.modal-more-info{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

.container-upsell{
width: 980px;
margin: auto;
font-family:'Lato',sans-serif;
}

.upsell-intro{
text-align: center;
line-height:1.3;
}

.upsell-intro .intro-wrap{padding: 35px;}

.upsell-intro .title{
color:#50913f;
font-size:25px;
font-weight:400;
text-transform: uppercase;
}

.upsell-intro p{
font-size: 15px;
color: #484848;
}

.upsell-main{}

.upsell-main .inner-wrap{
padding:20px;
background:#fff;
}

.upsell-main .button-wrap{text-align: center;}

.button-wrap .table-col{height:40px;}

.button-wrap .congrats{
line-height:1.2;
vertical-align:middle;
background:#3d9900;
color:#fff;
}

.button-wrap .congrats{font-size:14px;}

.button-wrap .congrats .text{padding:12px;}

.button-wrap .main-dates{
font-size:13px;
line-height: 1.4;
}

.main-dates .you-save{
font-size:26px;
line-height:1.3;
}

.main-dates .itinerary{margin: 7px 0 11px 0;}

.main-dates .itinerary  span{
display: inline-block;
vertical-align: middle;
}

.itinerary-section{
display: inline-block;
vertical-align: middle;
padding: 5px 8px;
}

.main-dates .itinerary .fa{
font-size: 16px;
vertical-align: middle;
color: #999;
}

.main-dates .itinerary .fa.arrow{
font-size: 12px;
padding: 0 5px
}

.hotels-wrap .hotel-item{
padding: 15px 15px 0px 15px;
border: 1px solid #e4e4e4;
margin-bottom:20px;
line-height: 1.4;
position: relative;
}

.hotels-wrap .hotel-item:last-child{margin-bottom:0;}

.hotels-wrap .hotel-item.no-items{margin-bottom:25px;}

div.section .top-section .table-wrap{table-layout:fixed;}

.hotel-item .image{width:215px;}

.hotel-item .image-mask{
background:#e4e4e4;
padding: 5px;
}

.hotel-item .image-wrap{
height: 0;
overflow: hidden;
cursor: pointer;
padding-bottom: 56%;
position: relative;
}

.hotel-item .image-wrap:hover img{opacity:0.85;}

.hotel-item .image img{
display: block;
width:100%;
-webkit-transition:opacity .3s linear;
-o-transition:opacity .3s linear;
-moz-transition:opacity .3s linear;
transition:opacity .3s linear;
}

.hotel-item .details{padding:0 15px;}

.hotel-item .details .name{
font-size: 16px;
color: #006699;
font-weight: 600;
padding-bottom: 5px;
margin-top: -3px;
}

.hotel-item .details .name .fa{
font-size: 12px;
padding-left: 8px;
vertical-align: top;
margin-top: 6px;
}

.hotel-item .room-list{padding-top:20px;}

.hotel-item .details .upsell-rating-wrap{}

.hotel-item .details .rating{
color: #ff9b00;
padding: 0px 5px 5px 0px;
font-size: 12px;
display: inline-block;
}

.hotel-item .details .reviews{
color: #5d5d5d;
padding-bottom: 5px;
display: inline-block;
}

.details .more a,
.details .map a{color: #006699;}

.details .map i{padding-right:3px}

.hotel-item .book-area .type{
font-size: 11px;
margin-bottom: 5px;
}

.hotel-item .book-area .price-box{position: relative;}

.book-area .price-box .price-col{
display: inline-block;
vertical-align: middle;
}

.book-area .extra-info{
font-size: 11px;
color: #777777;
padding-bottom: 10px;
position: relative;
}

.book-area .extra-info > span{
display:block;
font-weight:400;
}

.book-area .pp-night{
display: inline-block;
vertical-align:middle;
font-size: 10px;
color: #666;
line-height: 12px;
font-weight: 400;
}


.room-item .book-area .pp-night{
font-size:9px;
line-height:10px;
}

.price-col .small-text{}

.book-area .price-box .original{
text-decoration:line-through;
color:#b51d1d;
font-size:15px;
}

.book-area .price-box .sale{
color:#464646;
font-size:30px;
line-height:1;
font-weight:600;
display:inline-block;
vertical-align:middle;
margin-right:5px;
}

.hotel-item .book-area{
text-align: center;
width:205px;
}

.hotel-item .room-item .book-area{width:175px;}

.book-area .hotel-savings{
color: #3d9900;
font-weight: bold;
font-size: 16px;
padding:6px 0;
}

.hotel-item .book-area .book-now{
padding: 8px 10px;
display: block;
text-transform:uppercase;
font-weight:700;
font-size:18px;
font-family:'Arial',sans-serif;
color: #fff;
background: #ff712d;
background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff712d', endColorstr='#ff5200',GradientType=0 );
box-shadow: inset 0 0 2px #fff;
border: 1px solid #ff5200;
text-align: center;
}

.lang-fr .hotel-item .book-area .book-now{font-size:14px;}

.hotel-item .book-area .book-now:hover{background: #ff712d;}

.room-item{
padding:15px 0;
border-top: 1px solid #e4e4e4;
}

.radio-wrap input[type="radio"]{}

.room-item label{
text-transform: uppercase;
font-weight: 600;
padding-bottom: 5px;
font-size: 12px;
color: #000;
display:inline-block;
cursor: pointer;
}

.room-item label:hover{color:#444;}

.room-item .room-item-inner{}

.hotel-item .input-wrap{
width:35px;
text-align:center;
border-right:1px solid #e4e4e4;
}

.input-wrap .radio-wrap{padding:2px 10px;}

.room-item-inner .table-wrap{table-layout: fixed;}

/* === hotel icons === */
.amenities-icons{
font-size:0;
padding: 4px 0 8px 0;
}

.amenities-icons .icon{
background:url('https://www.flighthub.com/images/hotel-upsell/hotel-icons-v2.png')no-repeat 0 0;
width: 25px;
height: 20px;
margin: 3px;
font-size: 12px;
display: inline-block;
vertical-align: middle;
position: relative;
}

.amenities-icons .icon:first-child{margin-left:0;}

/* === INTERNET  === */
.icon.amenity-1024,
.icon.amenity-2048,
.icon.amenity-2390,
.icon.amenity-2392,
.icon.amenity-1073742907,
.icon.amenity-2391,
.icon.amenity-2393{background-position: 3px -5px;}

/* === PARKING === */
.icon.amenity-128,
.icon.amenity-16384,
.icon.amenity-3761,
.icon.amenity-3861,
.icon.amenity-3863,
.icon.amenity-4450,
.icon.amenity-4454,
.icon.amenity-1073742906,
.icon.amenity-3862,
.icon.amenity-3864,
.icon.amenity-4451,
.icon.amenity-4455,
.icon.amenity-4456{background-position: -42px -5px;}

/* === AIRPORT PARKING === */
.icon.amenity-256{background-position: -85px -5px;}

/* === SHUTTLE === */
.icon.amenity-32768,
.icon.amenity-10,
.icon.amenity-2353,
.icon.amenity-2416,
.icon.amenity-2528,
.icon.amenity-2942,
.icon.amenity-2944,
.icon.amenity-2946,
.icon.amenity-2948,
.icon.amenity-2950,
.icon.amenity-4004,
.icon.amenity-4005,
.icon.amenity-4421,
.icon.amenity-4428,
.icon.amenity-56,
.icon.amenity-2136,
.icon.amenity-2529,
.icon.amenity-2943,
.icon.amenity-2945,
.icon.amenity-2947,
.icon.amenity-2949,
.icon.amenity-2951,
.icon.amenity-4006,
.icon.amenity-4007,
.icon.amenity-2416,
.icon.amenity-4422,
.icon.amenity-4429{background-position:-127px -5px;}

/* === BREAKFAST === */
.icon.amenity-2,
.icon.amenity-4,
.icon.amenity-8,
.icon.amenity-4096,
.icon.amenity-8192,
.icon.amenity-16777216,
.icon.amenity-2001,
.icon.amenity-3547,
.icon.amenity-361{background-position: -171px -5px;}

/* === POOL === */
.icon.amenity-14,
.icon.amenity-24,
.icon.amenity-2014,
.icon.amenity-2138,
.icon.amenity-1073742768,
.icon.amenity-1073742769{background-position:-211px -4px;}

/* === ELEVATOR === */
.icon.amenity-8{
background-position:-252px -2px;
height: 25px;
width: 22px;
}

/* === BUSINESS FACILITIES === */
.icon.amenity-81,
.icon.amenity-200,
.icon.amenity-2065,
.icon.amenity-2131,
.icon.amenity-2538,
.icon.amenity-3372,
.icon.amenity-3637{background-position:-286px -5px;}

/* === CHILDREN SERVICES === */
.icon.amenity-6,
.icon.amenity-38,
.icon.amenity-2186,
.icon.amenity-4695,
.icon.amenity-4697,
.icon.amenity-4699,
.icon.amenity-4696,
.icon.amenity-4698,
.icon.amenity-4700{background-position:-325px -4px;}

/* === BAR === */
.icon.amenity-2097152,
.icon.amenity-3,
.icon.amenity-400,
.icon.amenity-2000,
.icon.amenity-2010,
.icon.amenity-3777{background-position:-360px -4px;}

/* === CASINO === */
.icon.amenity-536870912,
.icon.amenity-2112{background-position:-391px -4px;}

/* === GOLF === */
.icon.amenity-1048576,
.icon.amenity-2617{background-position: -427px -4px;}

/* === TENNIS === */
.icon.amenity-2618,
.icon.amenity-3373,
.icon.amenity-3375{
background-position: -537px -4px;
height: 22px;
}

/* === SPA === */
.icon.amenity-524288,
.icon.amenity-371,
.icon.amenity-2008,
.icon.amenity-2017,
.icon.amenity-2048,
.icon.amenity-2123,
.icon.amenity-2129,
.icon.amenity-2134,
.icon.amenity-2135,
.icon.amenity-3601,
.icon.amenity-5054,
.icon.amenity-1073742766,
.icon.amenity-1073742767{
background-position: -497px -4px;
height: 22px;
}

/* === FITNESS === */
.icon.amenity-9,
.icon.amenity-2178,
.icon.amenity-4468,
.icon.amenity-1073742765{background-position: -458px -4px;}

/* === SKI === */
.icon.amenity-8388608,
.icon.amenity-354,
.icon.amenity-2082,
.icon.amenity-4423{background-position: -572px -5px;}

/* === FOOD === */
.icon.amenity-1,
.icon.amenity-16,
.icon.amenity-32,
.icon.amenity-64,
.icon.amenity-4194304,
.icon.amenity-19,
.icon.amenity-324,
.icon.amenity-2004,
.icon.amenity-3500{background-position: -608px -6px;}

/* === WELCOME GIFT === */
.icon.amenity-262144{
background-position: -643px -6px;
width: 21px;
}

/* === ROOM UPGRADE === */
.icon.amenity-65536{background-position: -681px -5px;}

/* === ALL INCLUSIVE === */
.icon.amenity-512{
background-position: -720px -5px;
width: 70px;
}

/* === No-SMOKING === */
.icon.amenity-2137{
background-position: -801px -3px;
height: 24px;
}

/* === icons tooltip === */
.amenity-tooltip{
font-family: 'Lato',sans-serif;
font-weight: 600;
font-size: 10px;
text-transform: uppercase;
white-space: nowrap;
color: #fff;
background: #57A5F0;
position: absolute;
padding: 5px 10px;
z-index: 2;
left: 0;
top: -30px;
}

.amenity-tooltip:before{
content: '';
position: absolute;
bottom: -6px;
left: 8px;
width: 0;
height: 0;
border-style: solid;
border-width: 6px 4px 0 4px;
border-color: #57A5F0 transparent transparent transparent;
}

.selected-room .name-wrap{
width: 50%;
display: inline-block;
vertical-align: middle;
color: #333;
font-weight: bold;
text-transform: uppercase;
background: #f0f0f0;
padding: 7px 10px;
border: 1px solid #D7D7D7;
font-size: 11px;
margin-right: 6px;
margin-top: 5px;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}

.selected-room .change-room{
display:inline-block;
vertical-align: middle;
margin-top:5px;
}

.selected-room .more-btn{
color: #069;
margin-top:7px;
font-weight:bold;
}

.room-item .description-col{padding:0 25px 0 15px;}

.room-item .room-description{position:relative;}

.room-item .room-description .partial{
max-width: 100%;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
padding-right:30px;
position: relative;
}

.room-item .room-description .full{
display: none;
padding-bottom: 15px;
}

.room-description .full .content{padding-bottom:10px;}

.room-item .room-description .collapse,
.room-item .room-description .expand{
font-weight: 600;
color: #069;
cursor: pointer;
font-size:11px;
display:inline-block;
}

.room-item .room-description .expand{
position: absolute;
top: 0;
right: 0;
}

.room-item .cancellation-col{
width: 215px;
padding-left: 25px;
text-align: center;
}

.hotel-item .book-area{
vertical-align:middle;
position: relative;
}

.room-item .price-columns{
padding:5px;
}

.room-item .book-area .price-box .original{
font-size:14px;
color:#e89274;
}

.room-item .book-area .price-box .sale{
color:#666;
font-size:20px;
line-height:1;
}

.cancellation-wrap{
position:relative;
padding-top: 10px;
margin-top: -10px;
}

.cancellation-wrap .cancellation-price{
color: #5E5E5E;
font-weight: 600;
font-size: 12px;
}

.cancellation-price .price{color: #FF7031;}

.cancellation-button{
font-weight: 600;
color: #67aa47;
font-size: 11px;
cursor: help;
display: inline-block;
text-transform: uppercase;
}

.cancellation-button i{padding-right:3px}

.tooltip-item .tooltip-child{display:none;}

.cancellation-disclaimer{
position: absolute;
padding: 10px;
bottom: 24px;
right: 0;
font-size: 12px;
width: 335px;
-webkit-box-shadow: -2px 4px 15px 0px rgba(0,0,0,0.1);
-moz-box-shadow: -2px 4px 15px 0px rgba(0,0,0,0.1);
box-shadow: -2px 4px 15px 0px rgba(0,0,0,0.1);
text-align: left;
z-index: 10;
color: #fff;
background: #4995DD;
font-weight: 600;
line-height: 1.4;
}

.cancellation-disclaimer:after{
content: '';
position: absolute;
bottom: -6px;
right: 85px;
width: 0;
height: 0;
border-style: solid;
border-width: 6px 7px 0 7px;
border-color: #4995DD transparent transparent transparent;
z-index: 1;
}

.cancellation-area .cancellation-wrap{margin-top:0;}

.room-item .savings-price{
color: #67aa47;
line-height: 1;
padding-top: 3px;
font-weight: bold;
font-size: 13px;
display:none;
}

.selected-room .more-btn:hover,
.hotel-item .details .name a:hover,
.details .more a:hover,
.details .map a:hover,
.cancellation-wrap.active .cancellation-button,
.cancellation-wrap:hover .cancellation-button,
.room-item .room-description .collapse:hover,
.room-item .room-description .expand:hover{color:#2EA2DB;}

.cancellation-wrap .pp-night{
position: relative;
top: -4px;
font-size: 10px;
line-height: 1;
font-weight: 400;
text-align: left;
display: inline-block;
padding: 0px 0 0 4px;
vertical-align: middle;
color:#999;
}

.hotel-item .more-rooms{
position: absolute;
width: 100%;
text-align: center;
bottom: -30px;
left: 0;
}

.hotel-item .more-rooms .more-btn{
background:#069;
color:#fff;
line-height:30px;
display:inline-block;
padding:0 15px;
font-size:11px;
font-family:'Arial',sans-serif;
font-weight:bold;
}

.hotel-item .more-rooms .more-btn:hover{background:#2EA2DB;}

.room-list .room-item-toggle{display:none;}

/* === Modals ===*/
.overlay-hotel{
position: fixed;
background: #000;
opacity: 0.6;
width: 100%;
height: 100%;
left: 0;
top: 0;
z-index: 99;
display:none;
}

#confirm-booking li {
    background: #ff712d;
    background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
    background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
    background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
    margin-right: 30px;
}
.cancel-booking {
    background: #0072a3;
    background: -moz-linear-gradient(top, #1c83b2 0%, #0072a3 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1c83b2), color-stop(100%,#0072a3));
    background: -webkit-linear-gradient(top, #1c83b2 0%,#0072a3 100%);
    background: -ms-linear-gradient(top, #1c83b2 0%,#0072a3 100%);
    background: linear-gradient(to bottom, #1c83b2 0%,#0072a3 100%);
}

.modal-double-confirmation{
    font-size: 16px;
    display: none;
    position: fixed;
    width: 376px;
    z-index: 100;
    top: 30%;
    margin: auto;
    margin-left: -188px;
    left: 50%;
    height: 200px;
    text-align: center;
    font-weight: bolder;
}

.modal-double-confirmation .modal-wrap {
    margin: 10px 10px 26px 10px
}

.modal-double-confirmation .modal-wrap p{
    margin: 0px 10px 25px 10px
}
.modal-double-confirmation a{
    color: #ffffff;
}
.modal-double-confirmation li {
    float: left;
    width: 45%;
    padding: 20px 0px;
}

.modal-gallery,
.modal-more-info{
display: none;
font-family:'Lato',sans-serif;
position: fixed;
top: 10%;
z-index: 100;
width: 750px;
left: 50%;
margin-left: -375px;
height: 75%;
}

.modal-gallery .close,
.modal-more-info .close{
position: absolute;
font-size: 12px;
font-weight: 400;
line-height: 25px;
cursor: pointer;
color: #2A2A2A;
left:20px;
top: 0;
padding: 0 10px;
background: #DBDBDB;
height: 25px;
text-align: center;
z-index: 99;
}


.modal-gallery .close:hover,
.modal-more-info .close:hover{
    background: #006699;
    color: #ffffff;
}


.modal-gallery .modal-section,
.modal-more-info .modal-section{margin-bottom:10px;}

.modal-wrap{
font-family: 'Lato',sans-serif;
line-height: 1.4;
position: absolute;
top: 10%;
background: #fff;
width: 100%;
left: 0;
top: 0;
padding:25px 20px 20px 20px;
height: 100%;
overflow-y: auto;
}

.modal-gallery .title,
.modal-more-info .title{
color: #069;
text-transform: uppercase;
font-weight: 600;
font-size: 14px;
padding: 10px 0 0 0;
}

.modal-more-info .sub-title{
font-weight: 600;
text-transform: uppercase;
padding: 10px 0 5px 0;
border-top: 1px solid #e5e5e5;
}

.modal-more-info .room-amenities ul,
.modal-more-info .property-amenities ul{font-size: 0;}

.modal-more-info .room-amenities li,
.modal-more-info .property-amenities li{
display: inline-block;
width: 33.333333%;
font-size: 12px;
position: relative;
padding: 0 10px 2px 8px;
vertical-align: top;
}

.modal-more-info .room-amenities li:before,
.modal-more-info .property-amenities li:before {
content: '•';
font-size: 8px;
color: #999;
position: absolute;
left: 0;
top: 1px;
}

.hotel-item .more-info-content{display:none;}

/* ===  gallery ===  */
.modal-gallery ul{
font-size:0;
margin: 0 -3px;
}

.modal-gallery .thumbnail{
display:inline-block;
width:20%;
vertical-align:top;
border:3px solid #fff;
cursor:pointer;
}

.modal-gallery .thumbnail.active,
.modal-gallery .thumbnail:hover{border-color:#E7763A;}

.modal-gallery .active-image-col{width:345px;}

.modal-gallery .active-image{
padding:5px;
border:1px solid #D3D3D3;
background: #E5E5E5;
}

.modal-gallery .thumbs-col{padding-left:15px;}

.active-image img,
.modal-gallery .thumbnail img{
display: block;
width: 100%;
}

.modal-gallery .gallery-title{
background: #507ABB;
padding: 5px;
text-align: center;
font-weight: 600;
margin-bottom: 10px;
text-transform: uppercase;
color: #fff;
}

/* === price grid === */
.price-grid-wrap{margin-bottom: 15px;}
.price-grid{
width: 100%;
text-align: center;
max-width:500px;
}

.price-grid th,
.price-grid td{
padding: 3px;
border: 1px solid #E5E5E5;
}

.price-grid th{
text-transform:uppercase;
font-size:11px;
background:#39aada;
border-color:#2F8AB2;
color:#fff;
font-weight:700;
}

.price-grid td{color: #333;}

.grid-disclaimer{
font-size: 11px;
color: #8B8B8B;
padding-top: 10px;
line-height: 1.3;
}

.load-overlay{
position: absolute;
top: 0;
left: 0;
z-index: 10;
width: 100%;
height: 100%;
background-color: rgba(255,255,255,0.9);
}

.load-overlay .text,
.load-overlay .fa{display: none;}

.load-overlay .fa{
font-size: 18px;
color: #069;
}

.loading .load-overlay .text,
.loading .load-overlay .fa{display: block;}

.load-overlay .text-wrap{
font-size: 12px;
font-weight: 600;
position: absolute;
top: 30%;
width: 100%;
}

.load-overlay .text-wrap .text{
text-transform: uppercase;
margin-top: 5px;
}

.general-disclaimer{
font-size:12px;
line-height:1.3;
color:#444;
padding:25px;
text-align:center;
}

/* === responsive === */
.general-disclaimer,
.section.upsell-main,
.upsell-intro{background: #f0f0f0!important;}

@media screen and (max-width:1000px){
	.container-upsell{
	width:95%;
	max-width: 980px;
	}
}

@media screen and (max-width:960px){
	.main-dates .you-save {font-size: 22px;}

	.hotel-item .book-area{vertical-align:top;}

	.selected-room .name-wrap {
	max-width: none;
	margin: 5px 0 10px 0;
	display: block;
	width: 92%;
	}

	.selected-room .change-room{
	display:block;
	padding: 0px 10px;
	}

	.hotels-wrap .hotel-item {
	padding: 12px 12px 0px 12px;
	background: #fff;
	}

	.hotel-item .image {width: 180px;}
	.hotel-item .details {padding: 0 20px 0 12px;}
	.hotel-item .book-area{width:180px;}
	.hotel-item .room-item .book-area {width: 135px;}

}

@media screen and (max-width:850px){
	.hotels-wrap .hotel-item,
	.button-wrap .main-dates{
	margin:0 auto 15px auto;
	}

	.button-wrap .main-dates{
	background: #fff;
	padding: 15px;
    border: 1px solid #e4e4e4;
	}

	.upsell-main .inner-wrap{
	padding:0;
	background:none;
	}

    .main-dates .you-save {font-size:18px;}

    .price-grid td{
    font-size: 11px;
    padding: 3px 2px;
    }
}

@media screen and (max-width:830px){
    .upsell-intro .intro-wrap{padding: 25px;}

	.upsell-intro .title{
	font-size:20px;
	margin-bottom: 10px;
	}

    .modal-wrap{
        padding: 25px 15px 15px 15px;
    }
    .modal-gallery .close,
    .modal-more-info .close{
        left: 15px;
    }
    .modal-gallery,
    .modal-more-info{
        top: 3%;
        width: auto;
        left: 3%;
        margin-left: 0;
        height: auto;
        bottom: 3%;
        right: 3%;
    }

}

@media screen and (max-width:750px){
    /* === gallery === */
    .modal-gallery .thumbnail{width: 25%;}
    .modal-gallery .active-image-col{width: 300px;}
    .hotel-item .details {padding: 0 12px;}
    .selected-room .name-wrap{width:auto;}
    .hotel-item .input-wrap{border:0;}
    .room-item .description-col{padding: 0 10px 0 5px;}

}


@media screen and (max-width:680px){
	.selected-room .more-btn {
	margin-top: 2px;
	font-size: 14px;
	display: inline-block;
	padding:5px;
	}

	.hotels-wrap .hotel-item,
	.button-wrap .main-dates{
	max-width:350px;
	}

	.hotels-wrap .hotel-item{padding:15px 15px 0px 15px;}

	div.section .room-item .table-wrap,
	div.section .top-section .table-wrap{display:block;}

	.hotel-item .details{padding:0;}

	.selected-room .name-wrap{
  	font-size: 13px;
	background: none;
	}

	.top-section .table-wrap .table-col{
	display: block;
	margin: 0 auto 10px auto;
	width: auto;
	text-align: center;
	}

	.hotel-item .image{
	max-width: 200px;
	margin-bottom: 20px!important;
	}

	.hotel-item .image-wrap{
	padding-bottom: 0;
	height: auto;
	}

	.amenities-icons{
	max-width: 200px;
	margin: auto;
	}

	.cancellation-wrap{width:auto;}
	.price-grid-wrap{display:none;}

	.room-item .table-wrap .table-col{display:block;}

	.room-item .table-wrap{position:relative;}

	.hotel-item .input-wrap{
	position: absolute;
	z-index: 10;
	left: 0;
	top: 1px;
	}

	.input-wrap .radio-wrap {padding: 5px;}
	.room-item .room-description .full{padding:0;}
	.room-item .description-col{padding: 5px 10px 15px 32px;}

	.room-item label{font-size: 13px;}

	.hotel-item .room-item .book-area{width:auto;}

	.cancellation-wrap {
	display: block;
	position: relative;
	padding-left: 0;
	width: auto;
	}

	.room-description .full .content{font-size:13px;}

	.top-section .cancellation-disclaimer:after{
	right: auto;
	left:50%;
	margin-left:-7px;
	}

	.cancellation-disclaimer{
	right: 0;
	width: 100%;
	}

	.room-item .room-description .partial{padding-right:35px;}

	.room-item .room-description .collapse,
	.room-item .room-description .expand{
	top: -2px;
	font-size: 13px;
	}

	.amenity-tooltip{white-space: normal;}

	.amenity-tooltip:before{
	left: 50%;
	margin-left:-4px;
	}

	.amenity-tooltip{
	top: auto;
	width: 90px;
	left: 50%;
	margin-left: -45px;
	bottom: 30px;
	}

}

@media screen and (max-width:650px){
	.cancellation-disclaimer:after{
	right:50%;
	margin-left:-6px;
	}

    /* === gallery === */
    .modal-gallery .thumbnail{width:33.333333%;}
}

@media screen and (max-width:570px){
    .modal-more-info .room-amenities li,
    .modal-more-info .property-amenities li{
        width: 50%;
    }

    .modal-gallery .active-image-col,
    .modal-gallery .thumbs-col{
        display: block;
        margin: auto;
        width: 100%;
    }

    .modal-gallery .thumbs-col{padding:10px 0 0 0;}

    .modal-gallery .thumbnail{width:16.5%;}

}

@media screen and (max-width:480px){
	.modal-gallery .thumbnail{width:20%;}

}


@media screen and (max-width:400px){
	.itinerary-section{
	display:block;
	padding: 5px 0px;
	}

	.main-dates .itinerary .fa{font-size:14px;}

	.main-dates .itinerary .fa.arrow{
	font-size: 8px;
	padding: 0 2px;
	}
}


@media screen and (max-width:350px) {
    .modal-gallery .thumbnail {width:25%;}
}
.promo_discount_wrapper {
    padding-top: 10px;
    border-top: 1px dotted #ccc;
    margin-top: 10px;
}
.promo_label_wrap {
    margin: 0;
    font-weight: 600;
}
.promo_discount_wrapper input {
    width: 100%;
}
.container-modal .promo_discount_wrapper input {
    padding: 8px;
    margin: 0;
    border-radius: 2px;
}
body.checkout-b {
    margin: 0 0 35px;
    background-color: #fff !important;
}

body.checkout-b .site-header .header-container {
    max-width: 1200px;
}

body.checkout-b .footer {
    height: 35px;
}

body.checkout-b input[type=text] {
    -webkit-appearance: none;
}

.checkout-b-top-bar {
    padding: 20px 20px 15px;
    font-size: 30px;
    line-height: 22px;
    background-color: #f9f9f9;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    text-align: center;
}

body.checkout-b .checkout-destination-title {
    margin: 0 0 15px;
    line-height: 23px;
}

.exp-checkout-spinner {
    float: right;
}

.checkout-b-top-bar span {
    color: #888;
}

.container-checkout-b {
    margin: 25px auto 0;
    padding: 0 15px 60px;
    max-width: 1230px;
}

.checkout-b-left {
    vertical-align: top;
}

.checkout-b-right {
    padding-left: 20px;
    width: 280px;
    position: relative;
    vertical-align: top;
}

/* sidebar price summary xp ('sidebar_price_summary' feature flag ) */
.sidebar-price-summary-xp #checkout-sidebar-container {
    width: 400px; /* 380px + 20px padding */
    position: relative;
    display: table-cell;
}
.sidebar-price-summary-xp #breakdown-price-dynamic-container {
    display: none;
}
.sidebar-price-summary-xp #sidebarContainerReact {
    position: sticky;
    top: 15px;
    z-index: 1; /* to make sure promo code tooltip is on top of the .flight-information.column */
    margin-top: 105px;
}
.sidebar-price-summary-xp #fareRulesBanner {
    margin: 0 -1px -1px; /* to collapse the border with the container */
}
@media (max-width: 1120px) {
    .sidebar-price-summary-xp #breakdown-price-dynamic-container {
        display: block;
    }
    .sidebar-price-summary-xp #checkout-sidebar-container {
        display: none;
    }
}
@media (min-width: 1120px) {
    .header-container.wide {
        max-width: 1320px;
    }
    .container-checkout-b.sidebar-price-summary-xp {
        max-width: 1320px;
    }
}
/* end of sidebar price summary xp */

.checkout-b-right #checkout-sidebar {
    -webkit-transition: top 0.5s;
    -moz-transition: top 0.5s;
    transition: top 0.5s;
}

.checkout-b-right .sticky {
    position: absolute;
}

.container-checkout-b h1 {
    margin: 0;
}

.checkout-b-title {
    padding: 6px 0;
    font-size: 14px;
    font-weight: 700;
    color: #0f547f;
    text-transform: uppercase;
    position: relative;
    border-bottom: 3px solid #0074a3;
}

a.select-wrapper:has(select.styled-select.error) {
    border: 1px solid #ff0000 !important;
    background-color: #fff0f0;
}

/* action-stating upsells headings experiment */
.checkout-details-wrapper.action-stating-heading .checkout-b-title {
    font-size: 16px;
}
.checkout-b-title.action-stating-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.checkout-b-title.action-stating-heading div {
    margin-bottom: -5px;
}



.premium-economy-experiment.box-checkout .checkout-b-title.premium-upgrade {
    color: #358E09;
    border-bottom: 3px solid #358E09;
}

.checkout-b-title .right a {
    color: #f05623;
    font-weight: 400;
    font-size: 12px;
}

.checkout-b-subtitle {
    padding: 6px 0 2px;
    font-size: 13px;
    font-weight: 700;
    color: #0f547f;
    text-transform: uppercase;
    position: relative;
    border-bottom: 1px solid #dcdcdc;
}

.checkout-b-title-insurance {
    padding: 20px 15px 17px;
    font-size: 16px;
    font-weight: 700;
    color: #0f547f;
    background-color: #f5fcff;
    text-align: center;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    border-top: 3px solid #0074a3;
}

.checkout-b-nice {
    display: table-cell;
    color: #444444;
    font-size: 13px;
    font-weight: normal;
    vertical-align: middle;
    width: 75%;
}

.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;
}

.new-package-layout .flex-savings {
    margin-bottom: 15px;
}
.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 .fh-icon,
.flex-savings .fa,
.package-header-disclaimer__fa {
    display: inline-block;
    margin: 0 4px;
    vertical-align: middle;
}

.flex-savings .fh-icon {
    height: 14px;
}

.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;
}

.flex-savings {
    font-size: 12px;
}

.checkout-b-free-cancellations {
    display: table-cell;
    color: #0f547f;
    font-weight: 700;
    font-size: 14px;
    text-align: right;
    vertical-align: middle;
}

.checkout-b-subtitle-blue .special-fare-label {
    /*font-size: 14px;*/
    /*color: #ff5200;*/
    /*font-weight: 700;*/
    /*display: inline-block;*/
    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;
}

.checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip {
    width: 320px;
    top: 22px;
    bottom: auto;
    left: 0;
    right: auto;
    line-height: 18px;
}

.checkout-b-subtitle-blue .special-fare-label img {
    position: absolute;
}

.checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip h3 {
    font-size: 14px;
    line-height: 26px;
    font-weight: 700;
    padding-left: 34px;
}

.checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list {
    margin-top: 6px;
    list-style-type: disc;
    margin-left: 15px;
}

.checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list li::before {
    font-weight: bold;
    color: black;
    font-size: 12px;
    line-height: 15px;
    margin-right: 15px;
}

.checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list li {
    margin: 2px 0;
    padding-left: 5px;
}

@media (max-width: 555px) {

    .checkout-b-subtitle-blue .special-fare-label {
        font-size: 12px;
        line-height: 14px;
    }

    .checkout-b-subtitle-blue .flight-amenities-tooltip,
    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip {
        width: 260px;
        margin: 0 auto;
    }

    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip.transit-visa-right {
        right: 0;
    }

    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip h3 {
        font-size: 12px;
        line-height: 16px;
    }

    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip {
        font-size: 11px;
        line-height: 14px;
    }

    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip h3 {
        font-size: 12px;
        line-height: 24px;
        font-weight: 700;
        padding-left: 34px;
    }
    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip .blended-fare-warning-text {
        font-size: 11px;
        line-height: 14px;
    }

    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip .blended-fare-warning-text ul.bullet-arrow-list li::before {
        font-size: 11px;
    }

    .checkout-b-subtitle-blue .special-fare-label .flight-amenities-tooltip .blended-fare-warning {
        margin-right: 0;
    }

}

.checkout_agent_booking :is(
    .packages-os-departure span,
    .packages-os-departure strong,
    .packages-os-arrival span,
    .packages-os-arrival strong,
    .packages-os-airline-info,
    .layover .layover-city,
    .layover .layover-box-total-time,
    .package-os-total-trip-time
) {
    background-color: lightyellow;
    color: #000;
}

.city-pair {
    border-bottom: 1px solid #dcdcdc;
}

.city-pair:last-child {
    border-bottom: 0 solid #dcdcdc;
}
.city-pair .layover {
    padding: 10px 0;
    color: #999;
    text-align: center;
    border-bottom:1px dashed #DCDCDC;
}

.layover-container {
    /*border: solid thin orangered;*/
    padding-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.layover-container .layover-box-bag-link {
    padding: 0 15px;
    flex: 0 1 30%;
    text-align: left;
}

.layover-container .layover-box-layover {
    display: flex;
    flex: 1;
    text-align: left;
    flex-direction: column;
}

.layover-container .layover-city-time {
    display: flex;
    justify-content: space-between;
}

.layover-container .layover-box-total-time {
    padding-right: 10px;
    flex: 0 1 auto;
    text-align: right;
}

.layover-box .total-trip-time {
}

.layover-bag-visa-info{
    display: flex;
    flex-direction: row;
}

.city-pair .segment {
    padding: 10px;
    width: 100%;
    color: #555;
    line-height: 18px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.segments-list {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.city-pairs-list {
    list-style: none;
}

.layover-japan-warning {
    margin: 10px 15px 0;
    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;
    color: #555;
    text-align: left;
}

.packages-os-airlines {
    flex: 0 1 30%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.packages-os-airline-logo {
    flex: 0 1 auto;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

.packages-os-airline-info {
    padding-left: 10px;
    flex: 0 1 auto;
}

.packages-os-airline-info ul li {
    display: inline-block;
}

.packages-os-services {
    color: #777;
}

.packages-os-segment {
    flex: 0 1 70%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.operating-carrier {
    color: #999;
}

.packages-os-departure {
    flex: 1;
}

.packages-os-arrival {
    flex: 1;
}

.packages-os-duration {
    flex: 0 1 200px;
    text-align: right;
    color: #444;
}

/* Stops toggler */
.nonstop-text,
.stops-toggler {
    font-weight: 600;
    color: #555;
}

.stops-toggler {
    cursor: pointer;
}

.stops-toggler:hover {
    text-decoration: underline;
}

.stops-disclaimer {
    margin-top: 10px;
    font-size: 11px;
    line-height: 1.1;
    font-weight: 400;
    color: #888;
}

body.checkout-b .packages-os-matrix-seats-wrap {
    padding: 5px 15px;
    background-color: #fff;
    color: #f05623;
    border-top: none;
    border-left: none;
    border-bottom: 1px solid #dcdcdc;
}

.checkout-b-baggage {
    margin-bottom: 35px;
    font-size: 11px;
    background-color: #f9f9f9;
    display: table;
    width: 100%;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.checkout-b-baggage-left {
    padding: 3px 15px;
    color: #999;
    display: table-cell;
    width: 50%;
}

.checkout-b-baggage-left .trigger {
    text-decoration: underline;
}

.checkout-b-baggage-right {
    padding: 3px 15px;
    display: table-cell;
    width: 50%;
    text-align: right;
}

.checkout-b-baggage a {
    color: #999;
}

.checkout-b-baggage a:hover {
    color: #444;
}

.details-modal-warning-b {
    margin: 0 0 10px;
    padding: 5px 10px;
    color: #c38b05;
    background: #fff;
    border: 1px solid #f2ae0c;
}

.checkout-b-safe-right-inner {
    display: flex;
    justify-content: center;
    align-items: center;
}

.checkout-b-safe-right {
    flex: 0 0 auto;
}

.checkout-title-norton {
    padding-right: 10px;
    border-right: 1px solid #aaa;
}

.checkout-title-cards {
    padding: 6px 0 0 10px;
}

.checkout-b-backtoresults {
    float: right;
}

.checkout-b-backtoresults a {
    color: #f05623;
    font-weight: 400;
    font-size: 12px;
}

.checkout-manulife-logo {
    position: absolute;
    top: 4px;
    right: 0;
}

.checkout-elite-logo {
    position: absolute;
    top: 5px;
    right: 0;
}

.checkout-b-elite-disclaimer {
    margin: 0 -15px;
    padding: 8px 15px;
    color: #999;
    background-color: #f9f9f9;
    border-top: 1px solid #dcdcdc;
    text-align: center;
}

.checkout-b-box {
    margin-bottom: 35px;
    padding: 15px;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

#interstitial-modal .checkout-b-box {
    margin-bottom: 0;
    padding: 15px;
    border-right: 0 solid #dcdcdc;
    border-bottom: 0 solid #dcdcdc;
    border-left: 0 solid #dcdcdc;
}

#interstitial-modal .ins-interstitial-csa .checkout-b-box {
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.checkout-billing-box {
    margin-bottom: 35px;
    padding: 15px;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.checkout-error-box {
    margin: 5px 0 15px 0;
    padding: 6px 8px;
    line-height: 1.2;
    font-size: 13px;
    border: 1px solid rgba(217, 33, 33, 0.3);
    border-radius: 5px;
    color: rgba(217, 33, 33, 1);
    background-color: rgba(217, 33, 33, 0.12);
}
input.error {
    border: 1px solid #D92121;
    background: #fff0f0;
}

/* stored cc area */
.stored-payment-box .stored-cc-subtitle {
    color: #868687;
    font-style: italic;
    margin-bottom: 10px;
}

#use-new-cc {
    margin: 10px -15px 0px -15px;
    background: #f6fcff;
    padding: 15px;
    border-top: dashed 1px #dcdcdc;
}

.has-stored-cc .manual-payment-box-wrap {
    display: none;
}

#billing_info_wrapper.manual-payment-shown .manual-payment-box-wrap  {
    display: block;
}

#billing_info_wrapper.manual-payment-shown #use-new-cc {
    margin-bottom: 10px;
}

#billing_info_wrapper ul#stored-cc-payment-box {
    padding: 15px;
    margin: -15px !important;
    background: #f6fcff;
}

#billing_info_wrapper .has-stored-cc ul#stored-cc-payment-box {
    padding: 0 15px;
}

.checkout-billing-box input[type="checkbox"] {
    position: relative;
    top: 2px;
}

.stored-payment-box table {
    width: 100%;
    border-spacing: 10px;
}

.stored-payment-box tbody {
    font-size: 12px;
    padding: 5px;
}

.stored-payment-box tbody tr {
    border: 1px solid #cfcfcf;
    padding: 5px;
    font-size: 13px;
}

.stored-payment-box tbody tr:hover {
    background: #f5fcff;
}

.stored-payment-box tbody .stored-payment-row:hover {
    cursor: pointer;
}

.stored-payment-box tbody tr.gap {
    border: none;
    background: transparent;
    height:13px;
}

.stored-payment-box tbody tr.stored-payment-row .card-select input[type="checkbox"] {
    margin: 0;
    display: none;
}

.stored-payment-box tbody tr.stored-payment-row .card-select .fa {
    color: #333;
    font-size: 19px;
    vertical-align: middle;
}

.stored-payment-box tbody tr.stored-payment-row.saved-payment-info-selected {
    border: 1px solid #0174a3;
    background: #f5fcff;
}

.stored-payment-box th {
    text-align: left;
}

.stored-payment-box td,
.stored-payment-box td img {
    vertical-align: middle;
    text-align: center;
}

.stored-payment-box td.cc-security-code {
    text-align: right;
}

.stored-payment-box td.cc-security-code .fields-box {
    position: relative;
}

.stored-payment-box td:first-of-type {
    padding: 0 10px;
}

.stored-payment-box td img {
    height: 50%;
}

.stored-payment-box td .input-text-box {
    width: 70px;
    margin: 5px;
}

.stored-payment-box td input::placeholder {
    visibility: hidden;
}

.stored-payment-box td input[type='number'] {
    -moz-appearance:textfield;
}

.stored-payment-box td input[type=number]::-webkit-inner-spin-button,
.stored-payment-box td input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.stored-payment-box td.stored-cc-name,
.stored-payment-box td.stored-cc-card {
    font-weight: bold;
    text-align: left;
}

.stored-payment-box .feedback-label {
    position: absolute;
    right: 0px;
    top: 80%;
    z-index: 4;
    padding: 10px ;
    background: #000;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    font-weight: 700;
    box-shadow: 0 2px 5px
    rgba(0,0,0,0.1);
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: all 0.1s linear 0.1s;     transition: all 0.1s linear 0.1s;
}

.feedback-label.attention {
    background: #0174a3;
}

.feedback-label.invalid {
    background: #c34a4a;
}

.feedback-label.active {
    opacity: 1;
    visibility: visible;
    top: 100%;
}

.stored-payment-box .gap .saved-cc-processing-error-label {
    display: none;
}

.stored-payment-box .stored-cc-subtitle p:hover {
    cursor: pointer;
}

#payment_box.show-manual-payment {
    display: list-item;
}

#billing_info_wrapper .add-cc-wrapper {
    margin: -15px;
    background: #f6fcff;
    padding: 15px;
    margin-top: 15px;
    border-top: dotted 1px #cfcecf;
}


.checkout-b-box-itinerary {
    margin-bottom: 35px;
    padding: 0;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.checkout-b-box-itinerary .flex-date-notice {
    margin: 10px 2% 5px;
    display: inline-block;
    width: 96%;
}

.warning-wrap {
    padding: 15px 15px 0;
}

body.checkout-b .details-modal-warning {
    padding: 10px 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    color: #c38b05;
    background: #fff;
    border: 1px solid #c38b05;
}

.details-modal-warning-left {
    padding: 0 10px;
    font-size: 20px;
    flex: 0 1 60px;
    border-right: 1px solid #eed69d;
    vertical-align: middle;
    text-align: center;
}

.details-modal-warning-right {
    padding: 0 20px;
    line-height: 16px;
    flex: 1;
}

.review-flex-date-wrap .flex-date-notice {
    text-align: center;
}

.review-flex-date-wrap .flex-date-notice {
    padding: 8px 10px;
    margin: 0 0 5px 0;
    font-weight: 600;
    border: 1px solid #FFC297;
    line-height: 1.2;
    text-align: center;
    background-color: #FFF3EB;
    color: #E68540;
    font-size: 12px;
}

.checkout-ff-meals {
    padding-top: 7px;
}

body.checkout-b .segment-flights {
    padding: 0;
    background: #fff;
    border: 1px solid #dcdcdc;
}

.fa-suitcase:before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: "\f0f2";
    margin-right: 5px;
}

body.checkout-b .fuselage-overflow {
    overflow-x: auto;
    overflow-y: hidden;
}

body.checkout-b .fuselage-overflow-wrap {
    display: block;
}

.checkout-b-insurance-divider {
    margin: 0 auto 20px;
    padding: 0;
    height: 5px;
    background: #006a41;
    width: 20%;
}

ul.checkout-b-radio-list li input[type=radio] {
   margin: 3px 5px 0 0;
   float: left;
}

.checkout-b-payment-title {
    margin-bottom: 20px;
    padding-bottom: 3px;
    font-size: 14px;
    font-weight: 700;
    color: #f05623;
    border-bottom: 1px solid #dcdcdc;
}

.package-os-totaltriptime {
    padding: 4px 10px;
    color: #999;
}

.segment-bottom-information.fare-rules {
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #999;
    border-top: 1px dashed #dcdcdc;
}

.segment-bottom-information.fare-rules .package-os-fare-rules {
    line-height: 1.2;
    padding-right: 2px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules .affiliate-string-number {
    font-size: 11px;
    color: #CCC;
    display: inline-flex;
    margin-left: 2px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules img {
    vertical-align: bottom;
    margin-bottom: 1px;
    margin-right: 2px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules ul {
    margin-bottom: 8px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules ul li {
    font-size: 11px;
    line-height: 14px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules ul li.cha::before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '•';
    font-size: 11px;
    color: #999;
    margin-left: 0;
    margin-right: 3px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules ul li.inc::before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '•';
    font-size: 11px;
    color: #999;
    margin-left: 0;
    margin-right: 3px;
}

.segment-bottom-information.fare-rules .package-os-fare-rules ul li.nof::before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '•';
    font-size: 11px;
    color: #999;
    margin-left: 0;
    margin-right: 3px;
}

.flight-amenities-tooltip i, .flight-amenities-tooltip span {
    margin: 3px 0;
}

.flight-amenity,
.flight-amenity + span {
    color: #999;
}

.flight-amenity.available,
.flight-amenities .available,
.flight-amenities-tooltip .flight-amenity.available + span{
    color: #0074a4;
}


body.checkout-b ul.passenger-info-list li {
    border-bottom: 0 solid #e1e1e1;
}

body.checkout-b ul.review-details-sub-list > li {
    padding: 5px 0 0 0;
}

body.checkout-b .airfare-details-price-expand {
    margin: 0;
}

body.checkout-b .ins-exp-natural .specs {
    margin: 0 auto;
    padding: 8px 0 0;
    width: 74%;
}

.checkout-b-subtitle-green {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #eeffd9;
    border: 1px solid #dcdcdc;
    margin-bottom: 15px;
    padding: 15px;
}

#premium-economy-container .checkout-b-subtitle-green {
    margin-bottom: 0;
    padding-bottom: 15px;
    border-top: none;
}

#premium-economy-container .checkout-b-subtitle-green .subtitle-aa-upsell {
    color: #333;
}

.checkout-b-subtitle-blue {
    padding: 15px;
    font-size: 14px;
    color: #0f547f;
    display: table;
    width: 100%;
    background-color: #f5fcff;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    position: relative;
}

#checkout-details-wrapper > div.checkout-b-subtitle-blue {
    background-color: #F9F9F9;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.breakdown-loader {
    position: absolute;
    top: 15px;
    right: 15px;
    display: none;
}

.checkout-b-box.box-checkout {
    padding: 15px;
}

#seatmap-original .loader {
    margin: 0 auto;
}

.seatmap-not-available-wrap .seatmap-disabled {
    font-size: 13px;
    color: #da9360;
    text-transform: none;
    margin-bottom: 5px;
    text-align: center;
    font-weight:bold;
}

.seatmap-not-available-wrap .seatmap-disabled .select-next-seat {
    margin: 15px auto;
    display: block;
    position: relative;
    width: 240px;
    border: solid 1px;
    font-weight: 600;
    border-radius: 2px;
    -webkit-transition-duration: .25s;
    -moz-transition-duration: .25s;
    -ms-transition-duration: .25s;
    -o-transition-duration: .25s;
    transition-duration: .25s;
}

.seatmap-not-available-wrap .seatmap-disabled .select-next-seat:hover {
    background: #da9360;
    color: white;
    cursor: pointer;
}

.seatmap-not-available-wrap .seatmap-disabled .select-next-seat > * {
    white-space: nowrap;
    padding: 10px 0;
}

.seatmap-not-available-wrap .seatmap-disabled .select-next-seat span {

}

.seatmap-not-available-wrap .seatmap-disabled .select-next-seat span.fa-arrow-right {
    margin-left: 10px;
}

body.checkout-b .seatmap-table .text li {
    color: #0f547f;
}

body.checkout-b .ins-exp-natural .select-title {
    padding: 0;
}

.checkout-b-autofill {
    cursor: pointer;
}

.checkout-login-desktop {

}

.checkout-login-mobile {
    display: none;
}

.checkout-b-specs-title {
    padding: 10px 0;
    margin-bottom: 20px;
    font-weight: 700;
    font-size: 16px;
    color: #444;
    text-align: center;
}

.checkout-b-specs-wrap {
    margin: 0 auto;
    width: 90%;
}

.checkout-b-ins-top-wrap {
    margin: -15px -15px 0;
    padding: 25px 45px 0;
}

body.checkout-b .ins-exp-natural {
    margin: 0;
    width: 100%;
}

body.checkout-b .ins-exp-natural .select-wrap {
    margin: 4px 0 20px;
}

.ins-exp-natural ul {
    margin: 0 0 20px 20px;
}

.ins-exp-natural ul li {
    overflow: visible;
}

ul.checkout-ins-list li:before {
    margin-left: -1.6em;
    margin-right: .400em;
    font-family: "Font Awesome 5 Free", Fontawesome;
    content: '\f00c';
    color: #5da606;
}

.checkout-b-subtitle-left {
    display: table-cell;
    min-width: 80px;
    font-size: 41px;
    color: #006699;
    text-align: center;
    vertical-align: middle;
}

.checkout-b-subtitle-right {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

ul.checkout-b-radio-list {
    margin: 0;
    list-style-type: none;
    font-size: 14px;
}

ul.checkout-b-radio-list label {
    cursor: pointer;
}

ul.checkout-b-radio-list li {
    padding: 20px 15px;
    border-bottom: 1px solid #e1e1e1;
}

ul.checkout-b-radio-list li:last-child {
    border-bottom: 0 solid #e1e1e1;
}

ul.checkout-b-radio-list li label {
    display: table-cell;
}

ul.checkout-b-radio-list li label:hover {
    cursor: pointer;
}

ul.checkout-b-radio-list li .trigger {
    display: table-cell;
    padding-left: 10px;
}

/* sidebar */

/*self-transfer specific*/
.checkout-sb-box.self-transfer-box {
    margin-bottom: 15px;
}

.self-transfer-box .title-self-transfer {
    font-size: 16px;
    line-height: 18px;
    color: #0074a3;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 10px;
    padding-bottom: 8px;
    border-bottom: 1px solid #dadada;
}

.self-transfer-box .info-text {
    margin-bottom: 8px;
    font-size: 13px;
    line-height: 18px;
}

.checkout-sb-box .info-list {
    list-style: disc;
    font-size: 13px;
    line-height: 18px;
}

.checkout-sb-box {
    padding: 10px 15px 15px;
    font-size: 14px;
    line-height: 22px;
    border: 1px solid #dcdcdc;
}

.checkout-sb-title {
    margin-bottom: 10px;
    padding-bottom: 5px;
    font-size: 16px;
    line-height: 18px;
    font-weight: 700;
    border-bottom: 1px solid #dcdcdc;
}

.checkout-sb-bottom {
    margin-bottom: 20px;
    padding: 10px 15px;
    line-height: 18px;
    font-weight: 700;
    background-color: #f9f9f9;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    text-align: center;
}

.checkout-sb-bottom.secure {
    padding: 10px 15px;
}

.checkout-sb-bottom-left, .checkout-sb-bottom-right {
    float: left;
    width: 50%;
    text-align: center;
}

.checkout-sb-bottom-text {
    font-size: 14px;
    font-weight: 700;
}

.checkout-sb-number {
    margin-top: 10px;
    font-size: 26px;
    font-weight: 700;
    color: #f05623;
}

.checkout-sb-box ul {
    margin-left: 1.4em;
}

.checkout-sb-box ul li {
    padding-bottom: 10px;
    line-height: 18px;
}

.checkout-sb-box ul li:last-child {
    padding-bottom: 0;
}

ul.elite-perks-list {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #abd1e2;
}

ul.elite-perks-list li {
    float: left;
    width: 16.6%;
    text-align: center;
}

/* Countdown Timer */
.countdown-timer-box {
    background-color: #f9f9f9;
    margin-bottom: 20px;
    text-align: center;
    padding: 15px;
}

.countdown-timer-box::after {
    content: "";
    height: 146px;
    background-image: url('https://www.flighthub.com/images/checkout/countdown-timer-icon.svg');
    background-repeat: no-repeat;
    background-position: top right -25px;
    opacity: 0.05;
    top: 36px;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
    z-index: 25;
}

.countdown-timer-title {
    font-size: 20px;
    line-height: 23px;
    color: #0f547f;
    text-align: left;
    padding-right: 20px;
    margin-bottom: 5px;
}

.countdown-timer-box .timer {
    font-size: 50px;
    line-height: 52px;
    color: #35beef;
    text-align: left;
}

.countdown-timer-box .min-sec {
    font-size: 11px;
    line-height: 11px;
    color: #6792a7;
    text-align: left;
    padding-left: 22px;
}

.countdown-timer-box-ipad {
    display: none;
}


.coupon-area {
    padding: 10px 15px;
    border-top: 1px dashed #dcdcdc;
}

#promoCodeMsg {
    padding: 10px 0;
}
.coupon-error,
.coupon-success {
    font-weight: 700;
}

.coupon-success { color: #64a309; }
.coupon-error { color: #c44242; }

.coupon-area .fa-info-circle {
    color: #999;
}

.coupon-code-form  {
    margin-top: 5px;
}

.coupon-code-form .label {
    padding-right: 10px;
    text-align: right;
}

.coupon-code-form label {
    font-weight: 700;
    color: #666;
    display: inline-block;
}

.coupon-code-form ul li {
    display: flex;
    vertical-align: middle;
    font-size: 14px;
}

.coupon-code-form ul li:last-child {
    margin-left: 5px;
}

.coupon-code-form ul {
    font-size: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
}

.coupon-code-form input,
.coupon-code-form button {
    height: 40px;
    padding: 0 15px;
    width: 100%;
}

.coupon-code-form input {
    border: 1px solid #dadada;
    border-radius: 2px;
    height: 40px;
    font-size: 14px;
    min-width: 250px;

}

.coupon-code-form button {
    color: #fff;
    border: 0;
    outline: 0;
    background: #2cb8e2;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 900;
    border-radius: 2px;
    -webkit-appearance: none;
    transition: all 0.3s;
}

.coupon-code-form button:hover {
    background: #30cdfb;
}

.coupon-code-form button.disabled {
    color: #bbb;
    background: #eee;
    border: 1px solid #dedede;
    border-left: 0;
    cursor: default;
}




@media (max-width: 1024px) {

    .countdown-timer-box-ipad {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #f9f9f9;
        text-align: center;
        padding: 6px;
        border-bottom: 1px #dcdcdc solid;
    }

    .countdown-timer-box-ipad img {
        filter: invert(69%) sepia(9%) saturate(4830%) hue-rotate(162deg) brightness(98%) contrast(91%);
    }

    .countdown-timer-box-ipad .timer {
        font-size: 22px;
        line-height: 1;
        color: #006699;
        font-weight: 400;
        display: inline-block;
        position: relative;
        top: 1px;
        margin-right: 7px;
        margin-left: 6px;
    }

    .countdown-timer-box-ipad .countdown-timer-title {
        font-size: 15px;
        line-height: 1.2;
        color: #35beef;
        margin: 0;
        font-weight: 700;
    }

}

@media (max-width: 470px) {

    .countdown-timer-box-ipad .timer {
        font-size: 20px;
    }

    .countdown-timer-box-ipad .countdown-timer-title {
        font-size: 13px;
    }

}

.package-booking-views {
    background-color: #f8fff1;
    border: 1px #cedcc1 solid;
    border-radius: 2px;
    padding: 3px;
    color: #358e09;
    text-align: center;
    margin-bottom: 7px;
    position: relative;
}

.package-booking-views::after{
    content: '';
    position: absolute;
    left: 50%;
    top: 100%;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #cedcc1;
    clear: both;
}

/* Countdown Timer Expired Session Modal */
.container-transition.countdown-expired-modal {
    border: 3px #1476a7 solid;
    border-radius: 3px;
}

.countdown-expired-modal img {
    width: 50px;
    margin-bottom: 10px;
}

.countdown-expired-modal .session-expired {
    font-size: 18px;
    color: #006699;
    font-weight: 700;
    margin-bottom: 5px;
}

.countdown-expired-modal .check-available {
    font-size: 13px;
}

.countdown-expired-modal .relaunch-search-btn {
    background-color: #ec5300;
    border-radius: 2px;
    border-bottom: 3px #943400 solid;
    font-size: 16px;
    font-weight: 700;
    padding: 10px 15px;
    display: inline-block;
    margin: 15px 0 18px 0;
    transition: background-color 0.2s, border 0.2s;
}

.countdown-expired-modal .relaunch-search-btn:hover {
    background-color: #dd3703;
    border-bottom: 3px #dd3703 solid;
}

.countdown-expired-modal .relaunch-search-btn a {
    color: #FFF;
}

.countdown-expired-modal .new-search a {
    font-size: 13px;
    color: #006699;
    text-decoration: underline;
    cursor: pointer;
}

.countdown-expired-modal .new-search a:hover {
    color: #333;
}

.animated {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0);
    }

    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.fadeInUp {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
}

    /* form field adjustments for this experiment */
body.checkout-b .checkout-card-number,
body.checkout-b .checkout-card-type,
body.checkout-b .checkout-expiry-month,
body.checkout-b .checkout-expiry-year,
body.checkout-b .checkout-billing-cvv,
body.checkout-b .checkout-billing-address1,
body.checkout-b .checkout-billing-address2,
body.checkout-b .checkout-billing-city,
body.checkout-b .checkout-billing-country,
body.checkout-b .checkout-billing-region,
body.checkout-b .checkout-billing-postal,
body.checkout-b .checkout-gender,
body.checkout-b .checkout-first-name,
body.checkout-b .checkout-middle-name,
body.checkout-b .checkout-last-name,
body.checkout-b .checkout-month,
body.checkout-b .checkout-day,
body.checkout-b .checkout-year,
body.checkout-b .checkout-phone-country,
body.checkout-b .checkout-account-email {
    margin-bottom: 15px;
}

#billing_info_wrapper ul.passenger-info-list {
    padding: 0;
}

#billing_info_wrapper ul.passenger-info-list #payment_box {
    padding: 0 0 5px;
}

#billing_info_wrapper ul.passenger-info-list #billing_box {
    padding: 0;
}

#billing_info_wrapper ul li.manual-payment-shown {
    display: none;
}

body.checkout-b .review-details-list {
    margin: 0;
}

body.checkout-b ul.review-details-sub-list {
    margin-top: 0;
}

.review-details-bottom {
    color: #888;
}

.review-seat-pref-msg {
    border-top: 1px #dcdcdc solid;
    line-height: 17px;
    padding: 6px 15px;
    text-align: center;
    background-color: #f5fcff;
    color: #0f547f;
    font-weight: 700;
    margin: 15px -15px -15px -15px;
}

.review-seat-pref-msg i.jf-seat {
    position: relative;
    top: 1px;
    margin-right: 3px;
}

.review-choose-seats-msg {
    background-color: #bdecff;
    border: 1px #92cfe8 solid;
    padding: 8px 15px;
    text-align: center;
    font-size: 14px;
    line-height: 17px;
    font-weight: 700;
    color: #0074a4;
    margin-bottom: 35px;
}

.review-choose-seats-msg-flex-wrap .seat-circle {
    flex: 0 0 35px;
    border-radius: 50%;
    background-color: #0074a4;
    width: 35px;
    height: 35px;
    margin-right: 10px;
    padding: 7px;
}

@media (max-width: 600px) {
    .review-choose-seats-msg {
        font-size: 12px;
        line-height: 15px;
    }
}

.review-choose-seats-msg-flex-wrap .seat-circle i.jf-seat {
    font-size: 21px;
    color: #FFF;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}

.review-choose-seats-msg-flex-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}

.review-choose-seats-msg i.jf-seat {
    position: relative;
    top: 1px;
    margin-right: 3px;
}

.checkout-pass-title {
    margin-bottom: 15px;
    padding-bottom: 3px;
    font-size: 15px;
    font-weight: 700;
    border-bottom: 1px solid #dcdcdc;
}

body.checkout-b ul.passenger-info-list li {
    padding: 0 0 40px;
    border-bottom: 0 solid #e1e1e1;
}

body.checkout-b ul.passenger-info-list li:last-child {
    padding: 0;
}

.checkout-b-select-traveller {
    margin: 0;
    width: auto;
    float: right;
    position: relative;
}

.checkout-b-select-traveller .select-wrapper {
    color: #333;
    border: 0 solid #d1d1d1;
    display: inline-block;
    font-weight: 400;
    position: relative;
    text-decoration: none;
    outline: 0;
    overflow: hidden;
    width: auto;
    border-radius: 0;
    background: transparent;
}

.checkout-b-select-traveller .select-wrapper .select-first-text {
    padding: 0 23px 0 13px;
}

.checkout-b-select-traveller .select-wrapper select option {
    padding: 5px;
}

body.checkout-b .checkout-ff-meals {
    padding-top: 0;
}

body.checkout-b .checkout-ff-meals a {
    outline: none;
}

body.checkout-b .airfare-details-price-breakdown {
    padding: 7px 0;
}

body.checkout-b ul.airfare-details-breakdown li {
    margin: 0;
    padding: 4px 0;
    list-style: none;
    font-size: 12px;
    color: #666;
    border-top: 1px dashed #e9e9e9;
}

body.checkout-b ul.airfare-details-breakdown {
    margin-top: 5px;
    overflow: hidden;
    list-style: none;
}

body.checkout-b .airfare-details-price-total {
    padding: 12px 0 0;
    border-top: 1px solid #e1e1e1;
    text-align: right;
}

body.checkout-b .checkout-create-account-email {
    margin: 0 1% 1px 0;
    float: left;
    width: 49%;
}

body.checkout-b .checkout-create-account-emailconfirm {
    margin: 0 0 1px 0;
    float: left;
    width: 50%;
}

body.checkout-b .checkout-b-email-box input[type="checkbox"] {
    margin-top: 0;
    margin-right: 2px;
}

.checkout-b-cc-disclaimer {
    padding: 10px;
    font-size: 15px;
    line-height: 20px;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
    background-color: lightyellow;
    margin-bottom: 20px;
}

.checkout-b-email-box {
    padding: 15px;
    background-color: #f5fcff;
    border: 1px solid #dcdcdc;
}

.checkout-b-email-box.top-collection {
    margin-bottom: 15px;
    border-radius: 8px;
}

.checkout-b-email-box.top-collection .checkout-account-emailconfirm {
    margin: 35px 0 10px 10px;
    float: left;
    width: fit-content;
}

.checkout-b-email-box.top-collection .checkout-account-email {
    margin: 10px 1% 0 0 !important;
}

.checkout-b-email-box-title {
    font-size: 12px;
    font-weight: 700;
}

body.checkout-b .form-error {
    margin: 0;
    top: -4px;
    position: relative;
}

.ss-fhub .top-collection .form-error {
    top: 0;
}

.ss-fhub .top-collection .special-offers {
    margin-top: 10px;
}

/* login modal */

form.login-modal-form .login-info-title {
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 700;
}

form.login-modal-form li {
    margin-bottom: 15px;
    text-align: left;
}

form.login-modal-form li:last-child {
    margin-bottom: 0;
}

form.login-modal-form li input {
    padding: 10px 15px;
    width: 100%;
    border: 1px solid #dcdcdc;
    border-radius: 3px;
}

form.login-modal-form .login-msg {
    margin-bottom: 15px;
    padding: 15px;
    background-color: #f9f9f9;
    border: 1px solid #dcdcdc;
    text-align: left;
    border-radius: 6px;
}

form.login-modal-form .loading {
    position: absolute;
    top: 20px;
    left: 20px;
}

/* styling for Add Traveller on Checkout  */

.checkout-b-select-traveller.add-traveller {
    width: 100%;
    float: none;
    border-top: 1px solid #dcdcdc;
    padding-top: 15px;
    margin-top: 5px;
}

.checkout-b-select-traveller.add-traveller .select-wrapper {
    overflow: visible;
}

.checkout-b-select-traveller.add-traveller > span {
    vertical-align: top;
    padding: 5px 0;
    display: inline-block;
    font-style: italic;
    font-weight: normal;
    margin: 0 10px 0 0;
}

.checkout-b-select-traveller.add-traveller span {
    font-size: 12px;
    font-style: initial;
    width: 110px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
    vertical-align: middle;
}

body.checkout-b .add-traveller ul.select-wrapper li,
body.checkout-b .add-traveller ul.select-wrapper li:last-of-type {
    position: relative;
    padding: 2px 4px;
    display: inline-block;
    vertical-align: top;
    background: #F6F6F6;
    border-radius: 2px;
    border: solid 2px #dcdcdc;
    min-width: 150px;
    max-width: 150px;
    overflow: visible;
    margin: 0 5px 5px 0;
}

body.checkout-b .add-traveller ul.select-wrapper li:hover {
    cursor: pointer;
    border-color: #26a5d8;
}

body.checkout-b .add-traveller ul.select-wrapper li.traveller-selector.selected-traveller {
    background: #f8fdff;
    border: solid 2px #0074a3;
    transition: .25s;
}

.checkout-b-select-traveller.add-traveller .traveller-selector .fa {
    vertical-align: middle;
    margin: 5px 5px;
}

.checkout-b-select-traveller.add-traveller .traveller-selector .fa.fa-birthday-cake {
    margin-left: 3px;
}

.checkout-pass-title.add-traveller-traveller-pass-title {
    padding-bottom: 15px;
    border-bottom: 1px dashed #dcdcdc;
}

.checkout-pass-title.add-traveller-traveller-pass-title p {
    font-size: 12px;
    font-weight: normal;
}

/* end styling for Add Traveller on Checkout */

.fields-ff {
    width: 250px;
}

.checkout-b-ff-fields {
    width: 250px;
    margin: 10px 0 0 0;
}

.checkout-b-ff-fields input {
    margin-bottom: 10px;
}

/* login modal */
.modal-login-form {
    text-align: left;
}

.modal-login-form h1 {
    margin: 0 0 15px;
    padding: 0;
    font-size: 18px;
    border-bottom: 1px solid #aaa;
}

.modal-login-form input {
    padding: 10px;
    border: 1px solid #dcdcdc;
    border-radius: 2px;
    width: 100%;
}

.login-form-row {
    padding-bottom: 10px;
}


body.checkout-b .ins-csadirect .loading-wheel {
    padding-top: 0;
}

body.checkout-b .ins-csadirect .insurance-heading-right-csa, .insurance-heading-right {
    padding-left: 22px;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.1;
    text-align: center;
    vertical-align: middle;
}

body.checkout-b .ins-csadirect .insurance-plan-footer {
    background: #fff;
    margin: 0;
    font-size: 14px;
}

body.checkout-b .container-booking-btn {
    padding: 15px 0 10px;
    text-align: center;
}

body.checkout-b .form-submit-secure-container {
    margin-top: 30px;
}

/* Kiwi Special Fare Warning Message */
.checkout-warning-box-special-fare {
    padding: 10px;
    line-height: 14px;
}


/* aa seat upsell */
.aa-basic-economy-wrap {
    display: table;
    width: 100%;
    color: #777;
    font-size: 11px;
    background-color: #fffff6;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.aa-basic-economy-left {
    padding: 10px 0 10px 10px;
    display: table-cell;
    min-width: 290px;
    font-weight: bold;
}

.aa-basic-economy-right {
    padding: 10px;
    display: table-cell;
    line-height: 15px;
    width: 100%;
}

.aa-dagger {
    margin-top: 5px;
    padding-top: 5px;
    border-top: 1px dashed #dcdcdc;
}

.box-checkout-content-aa {
    background: #fff;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
}

.subtitle-aa-upsell {
    float: right;
    font-size: 12px;
    font-weight: 400;
    color: white;
    text-transform: capitalize;
}

.box-content-inner-blue {
    padding: 30px 15px;
    background-color: #f8fdff;
    background-position: center;
    background-repeat: no-repeat;
}

.aa-upsell-list-wrap {
    margin-left: 15px;
    width: 100%;
}

.aa-upsell-list-left {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
}

.aa-upsell-list-right {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
}

.aa-upsell-list-left ul li {
    padding: 0 0 10px;
    color: #444;
}

.aa-upsell-list-left ul li:last-child {
    padding: 0;
}

.aa-upsell-list-right ul li {
    margin-left: 17px;
    padding: 0 0 1px;
    color: #444;
    list-style-type: disc;
}

.aa-upsell-list-right ul li:last-child {
    padding: 0;
}

.aa-upsell-choice {
    background-color: #fff;
}

.aa-upsell-choice ul input {
    position: relative;
    top: 2px;
}

/* aa seat upsell end */

body.checkout-b .ins-exp-natural-wrapper .box-checkout-title {
    display: none !important;
}

/* price change alert modal */

.price-change-title {
    padding-top: 15px;
    width: 100%;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
}

.price-change-increase {
    font-size: 12px;
    color: #999;
}

.price-change-new-total {
    margin: 20px auto 15px;
    padding: 10px 10px 15px;
    display: inline-block;
    font-size: 24px;
    line-height: 27px;
    border-top: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}

.price-change-fineprint {
    padding-top: 5px;
    font-size: 11px;
    line-height: 14px;
    color: #bbb;
}

.price-change-like {
    padding-bottom: 10px;
    font-weight: 700;
}

a.price-change-btn {
    margin: 0 auto 15px;
    padding: 10px 15px;
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    background-color: #f15623;
    text-transform: uppercase;
    color: #fff;
    border-radius: 2px;
    border-bottom: 3px solid #962905;
    transition: background-color 0.2s, border 0.2s;
}

a.price-change-btn:hover {
    background-color: #a72900;
    color: #fff;
    border-bottom: 3px solid #a72900;
}

.price-change-textlink {
    color: black;
    text-decoration: underline;
}

body.checkout-b .checkout-passport-number-wrap {
    margin: 0 1% 5px 0;
    width: 24%;
    float: left;
}


/* to fix missing styles for french 24hr cp */
.ss-fhub .checkout-title-fhub {
    display: block;
    padding: 6px 0;
    font-size: 14px;
    font-weight: 700;
    color: #0f547f;
    text-transform: uppercase;
    position: relative;
    border-bottom: 3px solid #0074a3;
}



/* Risk-Free Rebooking _form_risk_free_rebooking.php */
.checkout-b .risk-free-subtitle-flex-wrap {
    display: flex;
    align-items: center;
    padding: 0 25px;
}

.checkout-b .checkout-b-box.risk-free-box {
    padding: 0;
}

.checkout-b .checkout-b-box .risk-free-title {
    line-height: 1.2;
    font-size: 15px;
    font-weight: 700;
    color: #455D88;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.checkout-b .risk-free-subtitle-flex-wrap img {
    margin-right: 10px;
    width: 90px;
}
.checkout-b .checkout-b-box li.risk-free-yes {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    padding: 0;
}
.checkout-b .checkout-b-box li.risk-free-yes .input-radio {
    flex: 0 0 30px;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-flex-wrap {
    display: flex;
    align-items: center;
    flex-grow: 1;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-content-price-wrap {
    border-right: 1px #dcdcdc solid;
    padding-right: 20px;
    flex-grow: 1;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-flexibility {
    font-size: 14px;
    font-weight: 700;
    color: #333;
}
.checkout-b .checkout-b-box ul.risk-free-bullet-points {
    margin-left: 16px;
}
.checkout-b .checkout-b-box ul.risk-free-bullet-points li::before {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 10px;
    margin-left: -16px;
    margin-right: 5px;
    color: #0f547f;
}
.checkout-b .checkout-b-box ul.risk-free-bullet-points li {
    font-size: 14px;
    line-height: 20px;
    color: #0f547f;
    padding: 0;
    border-bottom: 0;
    margin-bottom: 8px;
}
.checkout-b .checkout-b-box ul.risk-free-bullet-points li:last-child {
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-legend {
    font-size: 11px;
    line-height: 14px;
    color: #999;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-price-wrap {
    text-align: center;
    white-space: nowrap;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-price-wrap .rebooking-price {
    font-size: 24px;
    color: #444;
    font-weight: 600;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-price-wrap .rebooking-price > span {
    font-size: 12px;
    font-weight: 400;
    line-height: 12px;
    color: #777;
    display: block;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-price-wrap .rebooking-passenger {
    font-size: 11px;
    color: #999;
    line-height: 14px;
}
.checkout-b .checkout-b-box li.risk-free-yes .risk-free-flex-space {
    display: flex;
    flex-grow: 1;
    justify-content: space-between;
    align-items: center;
}
.checkout-b .checkout-b-box li.risk-free-no {
    padding: 20px;
    display: flex;
    color: #333;
    font-size: 14px;
    font-weight: 700;
    background-color: #f9f9f9;
}
.checkout-b .checkout-b-box li.risk-free-no input {
    margin-right: 16px;
}
.checkout-b .checkout-b-box li.risk-free-yes {
    border-top: 1px solid #DCDCDC;
    border-bottom: 1px solid #DCDCDC;
}
.checkout-b .checkout-b-box .risk-free-wrapper {
    display: flex;
    padding: 15px;
}
.checkout-b .checkout-b-box .risk-free-options li {
    padding: 12px 15px;
    color: #444;
    background: #fff;
    margin: 0;
    cursor: pointer;
}
.checkout-b .checkout-b-box .risk-free-options li > * {
    cursor: pointer;
}

@media (max-width: 600px) {

    .checkout-b .risk-free-subtitle-flex-wrap img {
        display: none;
    }
    .checkout-b .risk-free-subtitle-flex-wrap {
        padding: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.risk-free-yes .risk-free-flex-wrap {
        display: block;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.risk-free-yes .risk-free-content-price-wrap {
        border-right: 0;
        padding-right: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.risk-free-yes .risk-free-price-wrap {
        text-align: left;
        padding: 0;
        margin-top: 15px;
    }

}
/* END Risk-Free Rebooking _form_risk_free_rebooking.php */




/* ECP 'add' button */

.btn-ecp-add {
    margin-top: 10px;
    padding: 10px;
    display: inline-block;
    background-color: #0072a2;
    color: white;
    font-size: 14px;
    font-weight: bold;
    border-radius: 3px;
    text-align: center;
    transition: 0.2s all;
}

.btn-ecp-add:hover,
.btn-ecp-add--added {
    background-color: #ff6432;
    color: white;
}

.checkout-b .checkout-b-box ul.checkout-b-radio-list li.highlighted {
    border-color: #ff6432;
}

.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes.highlighted {
    border-color: #ff6432;
}



/* Baggage Service _form_baggage_service.php */
.checkout-b .baggage-service-subtitle-flex-wrap {
    display: flex;
    align-items: center;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px #0074a3 solid;
    padding: 20px;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .input-radio {
    flex: 0 0 30px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list .baggage-service-flex-wrap li.baggage-service-yes {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .baggage-service-content-price-wrap {
    flex: 1 1 auto;
    padding-right: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .baggage-service-tagline {
    font-size: 15px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes ul.baggage-service-bullet-points {
    margin-left: 16px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes ul.baggage-service-bullet-points li::before {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 10px;
    margin-left: -16px;
    margin-right: 5px;
    color: #0f547f;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes ul.baggage-service-bullet-points li {
    font-size: 13px;
    line-height: 15px;
    color: #0f547f;
    padding: 0;
    border-bottom: 0;
    margin-bottom: 8px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes ul.baggage-service-bullet-points li:last-child {
    margin-bottom: 0;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .baggage-service-price-wrap {
    text-align: center;
    white-space: nowrap;
    padding: 35px 20px 35px 40px;
    flex: 0 0 auto;
    border-left: 1px #dcdcdc solid;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .baggage-service-price-wrap .baggage-service-price {
    font-size: 20px;
    color: #0f547f;
    font-weight: 700;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .baggage-service-price-wrap .baggage-service-passenger {
    font-size: 11px;
    color: #999;
    line-height: 14px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-no {
    display: flex;
    border: 1px #dcdcdc solid;
    padding: 20px;
    background-color: #f9f9f9;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-no input {
    margin-right: 16px;
}

.checkout-b .checkout-b-box .more_baggage_service {
    margin-top: 15px;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap {
    display: flex;
    justify-content: space-between;
    padding-top: 10px;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question {
    flex: 1 1 33%;
    font-size: 12px;
    line-height: 16px;
    margin: 0 10px;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question:first-child {
    margin-left: 0;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question:last-child {
    margin-right: 0;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question ul {
    margin-top: 10px;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question ul li {
    font-size: 12px;
    line-height: 16px;
    color: #999;
    margin-bottom: 10px;
    margin-left: 16px;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question ul li:last-child {
    margin-bottom: 0;
}

.checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question ul li:before {
    content: '\f058';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 12px;
    margin-left: -16px;
    margin-right: 5px;
    color: #777777;
}

@media (max-width: 600px) {

    .checkout-b .baggage-service-subtitle-flex-wrap img {
        display: none;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list .baggage-service-flex-wrap li.baggage-service-yes {
        display: block;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .risk-free-content-price-wrap {
        border-right: 0;
        padding-right: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.baggage-service-yes .baggage-service-price-wrap {
        text-align: left;
        padding: 0;
        margin-top: 15px;
        border-left: 0;
    }
    .checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap {
        flex-wrap: wrap;
    }
    .checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question {
        flex: 1 1 100%;
        margin: 0;
    }
    .checkout-b .checkout-b-box .more_baggage_service .more_baggage_flex_wrap .question ul li:last-child {
        margin-bottom: 10px;
    }

}

/* END Baggage Service _form_baggage_service.php */




/* Support Package _form_support_package.php */
.checkout-b .checkout-b-box .support-package-flex-wrap {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.checkout-b .support-package-properties #cancellation-fee-tooltip-content,
.checkout-b .support-package-properties #response-time-tooltip-content,
.checkout-b .support-package-properties #dedicated-assist-tooltip-content {
    display: none;
}

.checkout-b .support-package-flex-wrap .support-package-properties {
    flex: 1 1 auto;
    border: 1px #dcdcdc solid;
    border-right: 0;
    padding: 56px 0 20px 0;
}

.checkout-b .support-package-flex-wrap .support-package-properties .cancellation-fee {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .support-package-properties .response-time {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .support-package-properties .dedicated-assistance {
    background-color: #f9f9f9;
    padding: 10px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .support-package-properties .price-per-person {
    font-size: 13px;
    line-height: 14px;
    padding: 20px 10px;
}

.checkout-b .support-package-flex-wrap .basic-support-package {
    flex: 1 1 150px;
    text-align: center;
    border: 1px #dcdcdc solid;
    border-right: 0;
    padding: 20px 0;
    min-width: 100px;
    cursor: pointer;
}

.checkout-b .support-package-flex-wrap .basic-support-package .basic-title {
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 15px;
}

.checkout-b .support-package-flex-wrap .basic-support-package .basic-cancellation {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .basic-support-package .basic-response {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .basic-support-package .basic-assistance {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .basic-support-package .basic-price {
    font-size: 20px;
    font-weight: bold;
    color: #FFF;
    margin-top: 15px;
    margin-bottom: 10px;
}

.checkout-b .support-package-flex-wrap .basic-support-package .basic-button {
    background-color: #CCC;
    line-height: 16px;
    border-radius: 2px;
    color: #FFF;
    font-weight: 700;
    padding: 8px 12px;
    display: inline-block;
}

.checkout-b .support-package-flex-wrap .premium-support-package {
    flex: 1 1 150px;
    text-align: center;
    border: 1px #f05623 solid;
    padding: 20px 0;
    min-width: 100px;
    cursor: pointer;
}

.checkout-b .support-package-flex-wrap .premium-support-package .most-popular-tag {
    position: relative;
    font-size: 13px;
    line-height: 14px;
    color: #f05623;
    font-weight: 700;
    background-color: #FFF;
    padding: 6px 12px;
    border-radius: 2px;
    border: 1px #f05623 solid;
    display: inline-block;
    box-shadow: 0px 0px 5px 2px rgba(153,153,153,0.35);
    top: -36px;
}

.checkout-b .support-package-flex-wrap .premium-support-package .premium-title {
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 15px;
    margin-top: -28px;
}

.checkout-b .support-package-flex-wrap .premium-support-package .premium-cancellation {
    background-color: #f5fcff;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .premium-support-package .premium-response {
    background-color: #f5fcff;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .premium-support-package .premium-assistance {
    background-color: #f5fcff;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .premium-support-package .premium-price {
    font-size: 20px;
    font-weight: bold;
    color: #f05623;
    margin-top: 15px;
    margin-bottom: 10px;
}

.checkout-b .support-package-flex-wrap .premium-support-package .premium-button,
.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-button {
     font-size: 13px;
     line-height: 16px;
     color: #FFF;
     background-color: #0072a2;
     padding: 8px 12px;
     border-radius: 2px;
     font-weight: 700;
     border: none;
     cursor: pointer;
 }

.checkout-b .support-package-flex-wrap .premium-support-package .premium-button:hover,
.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-button:hover {
    background-color: #f05623;
}

.checkout-b .support-package-flex-wrap button.support-package-button-selected {
    background-color: #f05623!important;
    box-shadow: 0px 0px 5px 2px rgba(153,153,153,0.35);
}

.checkout-b .support-package-flex-wrap .platinum-support-package {
    flex: 1 1 150px;
    text-align: center;
    border: 1px #dcdcdc solid;
    border-left: 0;
    padding: 20px 0;
    min-width: 100px;
    cursor: pointer;
}

.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-title {
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 15px;
}

.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-cancellation {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-response {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-assistance {
    background-color: #f9f9f9;
    padding: 10px;
    margin-bottom: 5px;
    font-size: 13px;
    line-height: 14px;
}

.checkout-b .support-package-flex-wrap .platinum-support-package .platinum-price {
    font-size: 20px;
    font-weight: bold;
    color: #006699;
    margin-top: 15px;
    margin-bottom: 10px;
}

.checkout-b .customer-support-top-pick {
    font-size: 13px;
    line-height: 14px;
    color: #999;
    font-style: italic;
    margin-top: 15px;
}
/* END Support Package _form_support_package.php */




/* Flexible Ticket _form_flexible_ticket.php */
.checkout-b .flex-ticket-subtitle-flex-wrap {
    display: flex;
    align-items: center;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes {
    display: flex;
    align-items: center;
    border: 1px #0074a3 solid;
    padding: 20px;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-tagline {
    font-size: 15px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .input-radio {
    flex: 0 0 30px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-flex-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1 1 auto;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-content-price-wrap {
    border-right: 1px #dcdcdc solid;
    padding-right: 20px;
    flex: 1 1 auto;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-flexibility {
    font-size: 15px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes ul.flex-ticket-bullet-points {
    margin-left: 16px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes ul.flex-ticket-bullet-points li::before {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 10px;
    margin-left: -16px;
    margin-right: 5px;
    color: #0f547f;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes ul.flex-ticket-bullet-points li {
    font-size: 13px;
    line-height: 15px;
    color: #0f547f;
    padding: 0;
    border-bottom: 0;
    margin-bottom: 8px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes ul.flex-ticket-bullet-points li:last-child::before {
    /*content: '\f071';*/
    /*font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;*/
    /*font-size: 10px;*/
    /*margin-left: -16px;*/
    /*margin-right: 5px;*/
    /*color: #f05623;*/
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes ul.flex-ticket-bullet-points li:last-child {
    margin-bottom: 15px;
    /*color: #f05623;*/
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-legend {
    font-size: 11px;
    line-height: 14px;
    color: #999;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap {
    padding-left: 40px;
    padding-right: 20px;
    flex: 0 0 122px;
    white-space: nowrap;
    text-align: center;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .price {
    font-size: 20px;
    color: #0f547f;
    font-weight: 700;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .price .per-passenger {
    font-size: 11px;
    color: #999;
    line-height: 14px;
    font-weight: 400;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .select-passengers {
    font-size: 14px;
    line-height: 18px;
    color: #555;
    margin-bottom: 8px;
    font-weight: 700;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .passenger-name label span {
    font-size: 13px;
    line-height: 24px;
    color: #777777;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .passenger-name label span b {
    font-weight: 700;
    color: #0f547f;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-no {
    display: flex;
    border: 1px #dcdcdc solid;
    padding: 20px;
    background-color: #f9f9f9;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-no input {
    margin-right: 16px;
}

@media (max-width: 600px) {
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-flex-wrap {
        display: block;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-content-price-wrap {
        border-right: 0;
        padding-right: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap {
        text-align: left;
        padding: 0;
        margin-top: 15px;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .price,
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.flex-ticket-yes .flex-ticket-price-wrap .price .per-passenger {
        display: inline;
    }
}
/* END Flexible Ticket _form_flexible_ticket.php */


/* Travel Assist _form_travel_assist.php */
.checkout-b .travel-assist-subtitle-flex-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    line-height: 18px;
}
.checkout-b .travel-assist-subtitle-flex-wrap img {
    flex: 0 0 172px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes {
    display: flex;
    align-items: center;
    border: 1px #0074a3 solid;
    margin-bottom: 15px;
    padding: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .ta-bell {
    flex: 0 0 130px;
    padding-right: 20px;
    text-align: center;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .ta-bell img {
    width: 90px;
    height: 90px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes input {
    margin-right: 12px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-flex-wrap {
    display: flex;
    align-items: center;
    padding: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-content-price-wrap {
    border-right: 1px #dcdcdc solid;
    padding-right: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-tagline {
    font-size: 15px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-bullet-points-flex-wrap {
    display: flex;
    justify-content: space-between;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes ul.travel-assist-bullet-points {
    flex: 1 1 50%;
    margin-left: 16px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes ul.travel-assist-bullet-points li::before {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 10px;
    margin-left: -16px;
    margin-right: 5px;
    color: #0f547f;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes ul.travel-assist-bullet-points li {
    font-size: 13px;
    line-height: 15px;
    color: #0f547f;
    padding: 0;
    border-bottom: 0;
    margin-bottom: 8px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes ul.travel-assist-bullet-points li:last-child {
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes ul.travel-assist-bullet-points li a {
    color: #0f547f;
    text-decoration: underline;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes ul.travel-assist-bullet-points li a:hover {
    color: #0072a2;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-disclaimer {
    font-size: 11px;
    line-height: 14px;
    color: #777;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-disclaimer a {
    text-decoration: underline;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap {
    flex: 0 0 132px;
    text-align: center;
    white-space: nowrap;
    padding-left: 30px;
    padding-right: 10px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap .price {
    font-size: 20px;
    color: #0f547f;
    font-weight: 700;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap .passenger {
    font-size: 11px;
    color: #999;
    line-height: 14px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap .btn-add {
    margin-top: 10px;
    padding: 10px 15px;
    display: block;
    background-color: #0072a2;
    color: #FFF;
    font-size: 14px;
    line-height: 16px;
    font-weight: 700;
    border-radius: 2px;
    text-align: center;
    transition: 0.2s all;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .btn-add:hover,
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .btn-added {
    background-color: #f05623!important;
    color: #FFF;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes.highlighted {
    border-color: #ff6432;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-no {
    display: flex;
    border: 1px #dcdcdc solid;
    background-color: #f9f9f9;
    color: #333;
    font-weight: 700;
    padding: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-no input {
    margin-right: 16px;
}

@media (max-width: 600px) {
    .checkout-b .checkout-b-subtitle-blue.travel-assist-subtitle-flex-wrap {
        font-size: 13px;
        line-height: 17px;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .ta-bell {
        display: none;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes {
        display: block;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-content-price-wrap {
        border-right: 0;
        padding-right: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap {
        text-align: left;
        padding: 0;
        margin-top: 15px;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap .price,
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.travel-assist-yes .travel-assist-price-wrap .passenger {
        display: inline;
    }

}
/* END Travel Assist _form_travel_assist.php */



/* Manulife Upsell Bomb _form_manulife_insurance_upsell_exp.php */
.checkout-b-manulife-title-insurance {
    padding: 12px 15px;
    color: #0f547f;
    background-color: #f5fcff;
    text-align: left;
    border-right: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    display: flex;
    justify-content: space-between;
    align-items: center;
    line-height: 17px;
}
.checkout-b-manulife-title-insurance .manulife-logo {
    flex: 0 0 150px;
    margin-left: 10px;
    height: 29px;
}
.checkout-b .manulife-ins-subtitle-flex-wrap {
    display: flex;
    align-items: center;
}
.checkout-b .manulife-ins-subtitle-flex-wrap img {
    margin-right: 10px;
    width: 44px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes {
    margin-bottom: 15px;
    padding: 20px 0 20px 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-top: 1px #dcdcdc solid;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes.recommended {
    background-color: #f5fcff;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .input-radio {
    flex: 0 0 30px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .risk-free-flex-wrap {
    display: flex;
    align-items: center;
    padding: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-content-price-wrap {
    border-right: 1px #dcdcdc solid;
    padding-right: 20px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-want-protection {
    font-size: 15px;
    font-weight: 700;
    color: #333;
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-want-protection span {
    color: #0071a5;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-bullet-points-wrap {
    display: flex;
    justify-content: space-between;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-bullet-points-wrap .left {
    margin-right: 16px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-bullet-points-wrap .right {
    margin-left: 16px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes ul.manulife-ins-bullet-points {
    flex: 1 1 45%;
    margin-left: 16px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes ul.manulife-ins-bullet-points li::before {
    content: '\f00c';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 10px;
    margin-left: -16px;
    margin-right: 5px;
    color: #0f547f;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes ul.manulife-ins-bullet-points li {
    font-size: 13px;
    line-height: 15px;
    color: #0f547f;
    padding: 0;
    border-bottom: 0;
    margin-bottom: 8px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes ul.manulife-ins-bullet-points li:last-child {
    margin-bottom: 15px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-details {
    font-size: 11px;
    line-height: 14px;
    color: #999;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-details a {
    color: #0f547f;
    text-decoration: underline;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-details a:hover {
    color: #333;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap {
    text-align: center;
    white-space: nowrap;
    flex: 0 0 140px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .manulife-ins-price {
    font-size: 20px;
    color: #0f547f;
    font-weight: 700;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .manulife-ins-passenger,
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .manulife-ins-day {
    font-size: 11px;
    color: #999;
    line-height: 14px;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-no {
    display: flex;
    border: 1px #dcdcdc solid;
    background-color: #f9f9f9;
    padding: 20px;
    font-weight: 700;
}
.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-no input {
    margin-right: 16px;
}
.checkout-b .checkout-b-box .price-quote-base {
    font-size: 11px;
    line-height: 14px;
    color: #999;
    text-align: center;
    margin-top: 15px;
}




/* manulife redesign */

.ins-manulife-loading,
.ins-ea-loading {
    padding: 15px 20px 10px;
    text-align: center;
}

.ins-manulife-wrap,
.ins-ea-wrap {
    margin-bottom: 35px;
    border-right: 1px solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    border-bottom: 1px solid #dcdcdc;
}

.ins-top-warning {
    margin: 0 15px 15px;
    padding: 10px;
    border: 1px solid #dcdcdc;
    border-radius: 4px;
}

.ins-top-warning a {
    text-decoration: underline;
    color: #2d79ca;
}

.manulife-ins-title {
    padding-top: 15px;
    margin: 0 15px 10px;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
}

.ea-ins-title {
    padding-top: 15px;
    line-height: 1.4;
}

.manulife-ins-link {
    margin: 0 15px 20px;
    line-height: 1.2;
}

.ea-ins-link {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
}

.manulife-ins-points-wrap,
.ea-ins-points-wrap {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.ea-ins-points-wrap {
    align-items: normal;
}

.ea-ins-points-wrap .ea-disclaimer {
    background-color: #FFFAEB;
    border-radius: 8px;
    color: #DC6803;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 8px 12px;
    margin-bottom: 14px;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 18px;
}

.ea-ins-points-wrap .ea-summary {
    margin-bottom: 8px;
}

.ea-ins-points-wrap .ea-restriction {
    color: #344054;
    font-size: 12px;
    font-style: italic;
    font-weight: 400;
    line-height: normal;
    margin: 16px 0;
}

.manulife-ins-points,
.ea-ins-points {
    margin: 0 15px 5px;
    flex: 1;
}

.manulife-ins-points ul li,
.ea-ins-points ul li {
    margin-bottom: 10px;
    padding-left: 20px;
    font-size: 14px;
    line-height: 1.2;
    position: relative;
}

.manulife-ins-points ul li:before,
.ea-ins-points ul li:before {
    content: '\f00c';
    position: absolute;
    font-family: "Font Awesome 5 Free", Fontawesome;
    left: 4px;
    top: 2px;
    font-size: 10px;
    font-weight: 900;
}

.manulife-ins-logo {
    flex: 0 1 175px;
}

.ea-ins-logo {
    margin-right: 15px;
}

.manulife-ins-select,
.ea-ins-select {
    margin: 0 0 10px 15px;
    font-weight: 600;
    color: #777;
}

ul.manulife-yes-no,
ul.ea-yes-no {
    border-top: 1px solid #dcdcdc;
}

ul.manulife-yes-no li,
ul.ea-yes-no li {
    padding: 12px 15px;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

ul.manulife-yes-no li .input-radio,
ul.ea-yes-no li .input-radio {
    padding-right: 8px;
    flex: 0 1 auto;
}

ul.manulife-yes-no li.manulife-ins-yes,
ul.ea-yes-no li.ea-ins-yes {
    border-bottom: 1px solid #dcdcdc;
}

ul.manulife-yes-no li.manulife-ins-no,
ul.ea-yes-no li.ea-ins-no {
    justify-content: flex-start;
    line-height: 16px;
}

ul.manulife-yes-no li .ins-manulife-input,
ul.ea-yes-no li .ins-ea-input {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}

ul.manulife-yes-no li input,
ul.ea-yes-no li input {
    margin: 0 5px 0 0;
    vertical-align: middle;
}

.ins-manulife-price,
.ins-ea-price {
    font-size: 24px;
    font-weight: 600;
    line-height: 24px;
    color: #444;
}

.ins-manulife-price span,
.ins-ea-price span {
    font-size: 12px;
    font-weight: 400;
    line-height: 12px;
    color: #777;
    display: block;
}

.brita-styles .ins-ea-price {
    color: #1570ef;
    font-size: 22px;
    font-weight: 700;
}

.brita-styles .ins-ea-price span {
    text-align: right;
}

@media (max-width: 600px) {

    .checkout-b .manulife-ins-subtitle-flex-wrap img {
        display: none;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes {
        display: block;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-bullet-points-wrap {
        display: block;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-bullet-points-wrap .left {
        display: block;
        float: none;
        margin-right: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-bullet-points-wrap .right {
        display: block;
        float: none;
        margin-left: 16px;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes ul.manulife-ins-bullet-points li:last-child {
        margin-bottom: 8px;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-content-price-wrap {
        border-right: 0;
        padding-right: 0;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap {
        text-align: left;
        padding: 0;
        margin-top: 15px;
    }
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .manulife-ins-price,
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .manulife-ins-day,
    .checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .manulife-ins-passenger {
        display: inline-block;
    }

}
/* END Manulife Upsell Bomb _form_manulife_insurance_upsell_exp.php */




/* Manulife Interstitial _form_progress_insurance_upsell_modal.php */

.checkout-b .ins-interstitial {
    max-width: 1080px;
    margin: 25px auto 0;
    border: 1px solid #dcdcdc;
}

.checkout-b .ins-interstitial.ins-interstitial-csa {
    border: 0 solid #dcdcdc;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes {
    display: flex;
    align-items: center;
    border: 1px #0074a3 solid;
    margin-bottom: 15px;
    padding: 20px;
    cursor: default;
}

.checkout-b .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-content-price-wrap {
    flex: 1 1 auto;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap {
    margin-top: 20px;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .modal_upsell_opt_in_btn {
    padding: 10px 15px;
    font-size: 14px;
    font-weight: 700;
    color: #FFF;
    background-color: #0074a4;
    border: 0;
    border-radius: 2px;
    min-width: 85px;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .modal_upsell_opt_in_btn:hover {
    background-color: #00567a;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .disabled.modal_upsell_opt_in_btn {
    background-color: #CCC;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-no {
    display:block;
    border: 1px #dcdcdc solid;
    background-color: #f9f9f9;
    padding: 12px;
    text-align: center;
    margin-left: -16px;
    margin-right: -16px;
    margin-bottom: -16px;
}

.checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-no a {
    color: #999;
}

@media (max-width: 600px) {
    .checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes {
        display: block;
    }
    .checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap .modal_upsell_opt_in_btn {
        float: right;
        margin-top: -14px;
    }
    .checkout-b .ins-interstitial .checkout-b-box ul.checkout-b-radio-list li.manulife-ins-yes .manulife-ins-price-wrap {
        margin-top: 15px;
    }
}

/* END Manulife Interstitial _form_progress_insurance_upsell_modal.php */

/* START CSA Interstitial */

.ins-interstitial-csa .checkout-b-manulife-title-insurance {
    font-size: 22px;
}

.ins-interstitial-csa .checkout-b-manulife-title-insurance .manulife-logo {
    height: 100px;
}

/* END CSA Interstitial */



/* Review & Book with Fares Rules & Restrictions in a scrollbar */
.checkout-b .checkout-b-title.fare-rules {
    border-bottom: 1px #dcdcdc solid;
}
.checkout-b .checkout-b-subtitle-blue.fare-rules {
    padding: 15px;
    color: #333;
    background-color: transparent;
    border-bottom: 0;
    padding-bottom: 0;
}

.checkout-b .booking-terms-review {
    border-bottom: 1px #dcdcdc solid;
    padding: 10px;
    margin-top: -10px;
    font-size: 12px;
}

.checkout-b .booking-terms-review .flight-terms-title {
    color: #0f547f;
    text-transform: uppercase;
    font-weight: 700;
}

.checkout-b .booking-terms-review p {
    margin-bottom: 10px;
}

.checkout-b .booking-terms-review b {
    font-weight: 700;
}

.checkout-b .booking-terms-review ul.flight-terms-list-rules {
    margin: 2px 0 5px 0;
}

.checkout-b .booking-terms-review ul.flight-terms-list-rules li:before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '\f111';
    font-size: 4px;
    margin-right: 6px;
    top: -3px;
    position: relative;
}

.checkout-b .booking-full-terms {
    padding-top: 10px;
}

.checkout-b .booking-terms-accept {
    text-align: center;
    margin-top: -20px;
}
/* END Review & Book with Fares Rules & Restrictions in a scrollbar */

.highlight-terms li,
.highlight-terms span,
.highlight-terms p {
    background: yellow;
    margin-bottom: 5px;
    line-height: 17px;
}

/* Grouped Passengers Price Details Table Chart */
.price-summary-grouped-pax .checkout-b-box.box-checkout {
    padding: 0;
    margin-bottom: 35px;
}

.price-summary-grouped-pax .airfare-details-price-total .affiliate-string-number {
    display: none;
}
.price-summary-grouped-pax .checkout-b-title {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #e1e1e1;
}

.price-summary-grouped-pax .checkout-b-title .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: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;

    margin-right: 10px;
}

.price-summary-grouped-pax table {
    width: 100%;
}

.price-summary-grouped-pax table tr td {
    padding: 2px 8px;
    text-align: left;
}

.price-summary-grouped-pax table tr.base-price {
    font-weight: 700;
    background-color: #F6F6F6;
}

.price-summary-grouped-pax .airfare-details-price-total.grouped-pax-price-totals {
    padding-top: 0;
}

.price-summary-grouped-pax .final-price,
.price-summary-grouped-pax .total-before-discount,
.price-summary-grouped-pax .avg-price-person,
body.checkout-b .price-summary-grouped-pax .airfare-details-price-breakdown,
.upsell-cashback,
.ticket-cashback,
.final-cashback {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 2px 10px;
    line-height: inherit;
}

.price-summary-grouped-pax .airfare-details-price-breakdown .airfare-details-price-breakdown-left {
    display: block;
}

.price-summary-grouped-pax .review-instant-savings {
    padding: 2px 8px;
    color: #ff6432;
}

.highlight-note li,
.highlight-note span {
    background: yellow;
    margin-bottom: 5px;
    line-height: 17px;
}

.price-summary-grouped-pax .avg-price-person {
    background-color: lightyellow;
    border-top: 1px solid #e1e1e1;
}

.price-summary-grouped-pax .final-price {
    font-weight: 700;
    background-color: #f5fcff;
    padding: 6px 10px;
}

.final-cashback{
    font-weight: 700;
    background-color: #f7fff5;
    padding: 6px 10px;
}

.price-summary-grouped-pax .final-price .total-price,
.final-cashback {
    font-size: 15px;
}

.price-summary-grouped-pax .final-price .total-price .travel-pkg-discount-slash-amount {
    color: #067647;
    font-size: 13px;
    font-weight: 400;
    line-height: 20px;
}

.price-summary-grouped-pax #show_taxes-adt {
    margin: 3px 0;
    font-size: 11px;
    line-height: 14px;
    color: #777;
}

.price-summary-grouped-pax .price-details-disclaimer {
    font-size: 12px;
    line-height: 1.2;
    margin-bottom: 35px;
}

.price-summary-grouped-pax .airfare-details-top {
    padding-bottom: 0;
}

.price-summary-grouped-pax .exp-checkout-spinner {
    float: none;
    margin: 10px 0 0 0;
    text-align: center;
}

.tax-breakdown.dib {
    display: inline-block;
}

.tax-breakdown.no-underline > span {
    text-decoration: none;
}

.tax-breakdown > span {
    text-decoration: underline;
    color: #444;
    cursor: pointer;
}

.tax-breakdown > span:hover {
    color: #222;
}

.tax-breakdown .taxes-tooltip-content {
    display: none;
}

.tax-breakdown.airfare-taxes {
    position: relative;
    display: inline-block;
}

.taxes-tooltip-content {
    font-size: 10px;
    color: #555;
}

.taxes-tooltip-content .column {
    vertical-align: top;
}

.taxes-tooltip-content .code {
    width: 20px;
    font-weight: 700;
    color: #455D88;
}

.taxes-tooltip-content .fee {
    width: 80px;
    text-align: right;
    font-weight: 700;
    color: #444;
}
/* END Grouped Passengers Price Details Table Chart */






/* upsell styles */

.upsell-container {
    margin-bottom: 35px;
}

.upsell-heading {
    padding: 6px 0;
    font-size: 14px;
    font-weight: 700;
    color: #0f547f;
    text-transform: uppercase;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    border-bottom: 3px solid #0074a3;
}

.upsell-heading-item {
    flex: 0 1 auto;
}

.upsell-heading-item.upsell-name {
    font-size: 15px;
    font-weight: 700;
}

.upsell-heading-item a {
    color: #0f547f;
}

.upsell-heading-item a:hover {
    text-decoration: underline;
}

.upsell-body {
    padding: 0 15px 15px 15px;
    background-color: white;
}

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

.upsell-content-left {
    padding-right: 25px;
    flex: 1;
}

.upsell-content-right {
    padding-left: 15px;
    flex: 0 1 240px;
    border-left: 1px dashed #dcdcdc;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.upsell-title {
    margin-bottom: 15px;
    font-size: 15px;
    font-weight: 600;
    color: #444;
}

.upsell-points {
    margin-bottom: 15px;
    padding: 10px;
    font-size: 14px;
    background-color: #f7fdff;
}

.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: "Font Awesome 5 Free", Fontawesome;
    font-size: 12px;
    font-weight: 900;
    color: #67A838;
    position: absolute;
    left: 0;
    top: 0;
}

.upsell-covid-important {
    color: #777777;
    line-height: 16px;
}

.upsell-covid-important span {
    font-weight: 600;
    line-height: 18px;
    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: 15px;
    font-weight: 700;
    color: white;
    display: inline-block;
    background-color: #0072a2;
    border-radius: 4px;
    transition: all 0.3s;
    cursor: pointer;
    position: relative;
    text-align: center;
}

a.upsell-btn:hover {
    background-color: #2cb8e2;
    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: "Font Awesome 5 Free", Fontawesome;
    font-size: 12px;
    font-weight: 900;
    color: #fff;
    position: absolute;
    left: 9px;
    top: 50%;
}

.upsell-terms-info {
    margin: 0 auto 15px;
    font-size: 12px;
    line-height: 17px;
    text-align: center;
}















@media (max-width: 1225px) {

    body.checkout-b .site-header .header-container {
        margin: 0 2%;
        width: 96%;
    }

}








@media (max-width: 1200px) {

    body.checkout-b .ins-exp-natural .specs {
        width: 85%;
    }

}








@media (max-width: 1024px) {

    .checkout-b-left {
        width: 100%;
        float: none;
    }

    .checkout-b-right {
        display: none !important;
    }

}








@media (max-width: 855px) {

    .checkout-b-subtitle-yellow .left,
    .checkout-b-subtitle-yellow .right {
        float: none;
        text-align: center;
    }

    .checkout-b-subtitle-yellow .right {
        padding-top: 15px;
    }

    .checkout-b-top-bar {
        display: none;
    }

    body.one-step .site-header .header-container {
        width: 100%;
    }

    .checkout-b-left {
        display: block;
    }

}








@media (max-width: 830px) {

    ul.checkout-b-radio-list li {
        padding: 15px 0;
        border-bottom: 1px solid #e1e1e1;
    }

    .checkout-b-subtitle-left {
        display: none;
    }

    .checkout-b-subtitle-right {
        display: block;
        width: 100%;
    }

}










@media (max-width: 767px) {

    body.checkout-b .select-first-text {
        padding: 5px 23px 5px 13px;
        white-space: normal;
    }

    body.checkout-b .fields-box-notitle {
        padding-top: 20px;
    }

    .checkout-b-subtitle-green {
        display: block;
        text-align: center;
    }

}










@media (max-width: 750px) {

    ul.elite-perks-list li {
        width: 33.333%;
    }

    ul.elite-perks-list li:nth-child(4) {
        clear: left;
    }

    ul.elite-perks-list li:nth-child(1),
    ul.elite-perks-list li:nth-child(2),
    ul.elite-perks-list li:nth-child(3) {
        margin-bottom: 15px;
    }

    body.checkout-b .checkout-passport-number-wrap {
        margin: 0 0 21px 0;
        width: 100%;
        float: none;
    }

}





@media (max-width: 600px) {

    .checkout-b-select-traveller {
        padding-top: 5px;
        float: none;
    }

    .checkout-b-select-traveller .select-wrapper {
        border: 1px solid #d1d1d1;
        border-radius: 2px;
    }

    .checkout-b-select-traveller.add-traveller .select-wrapper {
        border: none;
    }

    .checkout-b-select-traveller .select-wrapper .select-first-text {
        padding: 5px 23px 5px 5px;
    }

    .checkout-b-ins-top-wrap {
        padding: 25px 15px 0;
    }

    .checkout-b-nice {
        display: block;
        width: 100%;
        font-size: 12px;
        text-align: center;
    }

    .checkout-b-free-cancellations {
        display: block;
        width: 100%;
        font-size: 12px;
        text-align: center;
    }

    .checkout-b-subtitle-blue .special-fare-label {
        display: block;
        width: 100%;
        font-size: 12px;
        text-align: center;
    }

    body.checkout-b .packages-os-matrix-seats-wrap {
        text-align: center;
    }

    body.checkout-b .ins-csadirect .insurance-heading-right-csa, .insurance-heading-right {
        font-size: 14px;
        padding-right: 7px;
    }

    body.checkout-b  .ins-csadirect .insurance-heading-left {
        width: 205px;
    }

    body.checkout-b  .ins-csadirect .insurance-heading-left img {
        height: 50px;
    }

}

@media (max-width : 570px) {

    .phone-hide {
        display: none;
    }

    .packages-os-wrap .city-pair .segment {
        font-size: 11px;
        line-height: 14px;
    }

    .packages-os-airlines {
        padding-right: 2%;
        width: 35%;
    }

    .packages-os-phone-icon {
        padding-right: 2%;
        width: 35%;
    }

    .packages-os-segment {
        width: 65%;
    }

    .packages-os-airline-logo {
        padding-top: 2px;
        width: 32%;
    }

    .packages-os-airline-info {
        padding-top: 0;
        width: 68%;
        text-align: left;
    }

    .packages-os-airline-info ul {
        margin-left: 5px;
        float: left;
    }

    .packages-os-departure {
        width: 42%;
    }

    .packages-os-arrival {
        width: 42%;
    }

    .packages-os-wrap .city-pair .layover {
        padding: 3px 0 3px 0;
        font-size: 11px;
    }

    .packages-os-duration {
        display: none;
    }

    .airport-change {
        padding-left: 0;
        display: block;
    }

    .packages-os-alert {
        text-align: center;
    }

    .select-segment {
        margin-top: 5px;
        padding: 3px 5px;
    }

    .select-segment .fa {
        display: none;
    }

}

/* $inAddTravellerVariation experiment */
@media (max-width: 509px) {

    .add-traveller .traveller-selector br {
        display: none;
    }

    body.checkout-b .add-traveller ul.select-wrapper li,
    body.checkout-b .add-traveller ul.select-wrapper li:last-of-type {
        width: 100%;
        margin: 0 15px 15px 0;
        padding: 10px;
        max-width: none;
    }

    .checkout-b-select-traveller.add-traveller span {
        width: 35%;
        display: inline-block;
    }

    .checkout-b-select-traveller.add-traveller .traveller-selector .fa {
        width: 5%;
        display: inline-block;
    }
}





@media (max-width: 509px) {

    .checkout-b-title-insurance {
        padding: 13px 15px 11px;
    }

    .checkout-b-title-insurance img {
        margin-top: 7px;
    }

    .my-tooltip {
        width: 100% !important;
        left: 0 !important;
    }

}








@media (max-width: 500px) {

    .checkout-manulife-logo,
    .checkout-elite-logo {
        display: none;
    }

    .checkout-login-btn a {
        display: none;
    }

    .checkout-login-desktop {
        display: none;
    }

    .checkout-login-mobile {
        display: block;
    }

    .modal-login-form {
        padding: 10px;
    }

    .checkout-b-specs-wrap {
        width: 85%;
    }

    .checkout-b-backtoresults {
        display: none;
    }
}








@media (max-width: 440px) {

    ul.elite-perks-list li {
        width: 50%;
    }

    ul.elite-perks-list li:nth-child(4) {
        clear: none;
    }

    ul.elite-perks-list li:nth-child(3),
    ul.elite-perks-list li:nth-child(5) {
        clear: left;
    }

    ul.elite-perks-list li:nth-child(1),
    ul.elite-perks-list li:nth-child(2),
    ul.elite-perks-list li:nth-child(3),
    ul.elite-perks-list li:nth-child(4) {
        margin-bottom: 15px;
    }

    .checkout-b .support-package-flex-wrap .support-package-properties .cancellation-fee,
    .checkout-b .support-package-flex-wrap .support-package-properties .response-time,
    .checkout-b .support-package-flex-wrap .support-package-properties .dedicated-assistance,
    .checkout-b .support-package-flex-wrap .support-package-properties .price-per-person,
    .checkout-b .support-package-flex-wrap .basic-support-package .basic-cancellation,
    .checkout-b .support-package-flex-wrap .basic-support-package .basic-response,
    .checkout-b .support-package-flex-wrap .basic-support-package .basic-assistance,
    .checkout-b .support-package-flex-wrap .premium-support-package .premium-cancellation,
    .checkout-b .support-package-flex-wrap .premium-support-package .premium-response,
    .checkout-b .support-package-flex-wrap .premium-support-package .premium-assistance,
    .checkout-b .support-package-flex-wrap .basic-support-package .basic-button,
    .checkout-b .support-package-flex-wrap .premium-support-package .premium-button,
    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-button,
    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-cancellation,
    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-response,
    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-assistance,
    .checkout-b .customer-support-top-pick {
        font-size: 11px;
    }

    .checkout-b .support-package-flex-wrap .premium-support-package,
    .checkout-b .support-package-flex-wrap .basic-support-package,
    .checkout-b .support-package-flex-wrap .platinum-support-package {
        min-width: 70px;
    }

    .checkout-b .support-package-flex-wrap .basic-support-package .basic-title,
    .checkout-b .support-package-flex-wrap .basic-support-package .basic-price,
    .checkout-b .support-package-flex-wrap .premium-support-package .most-popular-tag,
    .checkout-b .support-package-flex-wrap .premium-support-package .premium-title,
    .checkout-b .support-package-flex-wrap .premium-support-package .premium-price,
    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-title,
    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-price {
        font-size: 13px;
    }

    .checkout-b .support-package-flex-wrap .platinum-support-package .platinum-button {
        margin-top:14px;
    }

    #support_package .checkout-b-box {
        padding:0;
    }

    body.checkout-b  .ins-csadirect .insurance-heading-left {
        width: 165px;
    }

    body.checkout-b  .ins-csadirect .insurance-heading-left img {
        height: 40px;
    }
}

.price-summary-grouped-pax .price-details-disclaimer .travel-pkg-disclaimer-note {
    color: #444;
    font-size: 12px;
    font-weight: 600;
}
body.receipt-b .site-header .header-container {
    max-width: 1200px;
}

.container-receipt-b {
    padding-bottom: 35px;
    margin: 25px auto 0;
    max-width: 1200px;
}

.receipt-b-left {
    width: 75%;
    float: left;
}

.receipt-b-right {
    padding: 6px 0 0 20px;
    width: 25%;
    float: left;
    position: relative;
}

.receipt-b-sidebar {
    width: 280px;
}

.b-aff__title {
    display: none;
}

.receipt-b-title {
    padding: 6px 0;
    font-size: 14px;
    font-weight: 700;
    color: #0f547f;
    text-transform: uppercase;
    position: relative;
    border-bottom: 3px solid #0074a3;
}

.receipt-b-title-hotel {
    padding: 15px;
    font-size: 22px;
    font-weight: 700;
    color: #003580;
    background-color: #ffdb8d;
    position: relative;
    border-top: 1px solid #daa300;
    border-right: 1px solid #daa300;
    border-left: 1px solid #daa300;
}

.receipt-b-title-car {
    margin-bottom: 5px;
    padding: 15px;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    background-color: #0074a4;
    position: relative;
    border: 1px solid #0074a4;
}

.receipt-b-title-insurance {
    padding: 12px 15px;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    background-color: #00bf66;
    text-transform: uppercase;
    position: relative;
}

.receipt-b-title-insurance-csa {
    padding: 12px 15px;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    background-color: #c5281c;
    text-transform: uppercase;
    position: relative;
}

.receipt-b-manulife-logo {
    position: absolute;
    top: 10px;
    right: 15px;
}

.receipt-b-csa-logo {
    position: absolute;
    top: 6px;
    right: 10px;
}

.receipt-b-box {
    margin-bottom: 35px;
    padding: 15px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-b-box-itinerary {
    margin-bottom: 35px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-b-box-nomargin {
    padding: 15px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-b-box-top {
    margin-bottom: 15px;
    padding: 15px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-b-box-sidebar {
    padding: 10px 15px;
    color: #666;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-sidebar-box-grey {
    padding: 5px;
    background-color: #f9f9f9;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
    text-align: center;
}

ul.receipt-sidebar-list li {
    padding: 3px 0;
    color: #888;
    overflow: hidden;
}

ul.receipt-sidebar-list li .right {
    text-transform: capitalize;
}

ul.receipt-sidebar-list li.title {
    margin: 0 0 5px;
    padding: 15px 0 2px;
    color: #555;
    border-bottom: 1px solid #dadada;
}

ul.receipt-sidebar-list li.total {
    margin-top: 2px;
    padding-top: 4px;
    border-top: 1px dashed #dadada;
}

.receipt-box-bottom-grey-sidebar {
    margin: 0 0 35px;
    padding: 10px 15px;
    font-size: 14px;
    font-weight: 700;
    background-color: #f9f9f9;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.bottom-grey-sidebar-wrap {
    display: table;
    width: 100%;
}

.bottom-grey-sidebar-left {
    display: table-cell;
}

.bottom-grey-sidebar-right {
    display: table-cell;
    text-align: right;
    color: #5f7b2d;
}

.receipt-box-bottom-grey {
    margin: 0 0 35px;
    padding: 10px 15px;
    font-size: 11px;
    color: #888;
    background-color: #f9f9f9;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.booking-title {
    font-size: 22px;
    font-weight: 400;
    color: #389400;
    text-transform: capitalize;
}

.receipt-top-title {
    padding: 6px 0;
    font-size: 24px;
    font-weight: 400;
    color: #389400;
    text-transform: capitalize;
    position: relative;
    border-bottom: 3px solid #389400;
}

.receipt-top-title-yellow {
    padding: 6px 0;
    font-size: 20px;
    font-weight: 400;
    color: #e49700;
    text-transform: capitalize;
    position: relative;
    border-bottom: 3px solid #e49700;
}

.receipt-top-title-red {
    padding: 6px 0;
    font-size: 20px;
    font-weight: 400;
    color: #cc2222;
    text-transform: capitalize;
    position: relative;
    border-bottom: 3px solid #cc2222;
}

table.table-receipt {
    width: 100%;
}

table.table-receipt th {
    padding: 7px 15px;
    font-weight: 400;
    color: #899da6;
    background-color: #f5fcff;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    text-align: left;
}

table.table-receipt th:last-child {
    border-right: 0 solid #dadada;
}

table.table-receipt td {
    padding: 7px 15px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
}

table.table-receipt td:last-child {
    border-right: 0 solid #dadada;
}

.receipt-b-box-table-nomargin {
    padding: 0;
    border-right: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-b-box-table {
    margin-bottom: 35px;
    padding: 0;
    border-right: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-top-left {
    padding: 10px 25px;
    width: 35%;
    font-size: 16px;
    float: left;
    border-right: 1px solid #dadada;
}

.receipt-top-right {
    padding: 2px 25px 0;
    width: 65%;
    float: left;
}

.receipt-upsell-box {
    margin-bottom: 30px;
    padding: 15px;
    background-color: #fffeef;
    border: 1px solid #dadada;
}

.receipt-upsell-left {
    padding-top: 10px;
    float: left;
    font-size: 16px;
    color: #555555;
}

.receipt-upsell-right {
    float: right;
}

a.receipt-upsell-button {
    padding: 9px 15px;
    display: inline-block;
    font-weight: 400;
    font-size: 16px;
    color: #fff;
    background-color: #f05623;
    border-radius: 2px;
    transition: background-color 0.2s;
}

a.receipt-upsell-button:hover {
    background-color: #c93707;
}

a.receipt-insurance-button {
    padding: 15px 20px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    background-color: #01673f;
    border-radius: 2px;
    transition: background-color 0.2s;
}

a.receipt-insurance-button:hover {
    background-color: #003a23;
}

a.receipt-insurance-button-csa {
    padding: 15px 20px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    background-color: #df510b;
    border-radius: 2px;
}

a.receipt-insurance-button-csa:hover {
    background-color: #d13600;
}

.receipt-subtitle-grey {
    padding: 15px;
    background-color: #f9f9f9;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-insurance-box {
    margin-bottom: 35px;
    padding: 15px;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.receipt-insurance-box ul {
    margin-left: 1.4em;
}

.receipt-insurance-box ul li:before {
    margin-left: -1.4em;
    margin-right: .400em;
    font-family: "Font Awesome 5 Free", Fontawesome;
    content: '\f00c';
    color: #555;
}

.receipt-insurance-box ul li {
    padding-bottom: 6px;
    line-height: 18px;
}

.receipt-insurance-box ul li:last-child {
    padding-bottom: 0;
}

.receipt-insurance-left {
    float: left;
    width: 75%;
}

.receipt-insurance-right {
    padding-top: 8px;
    float: left;
    width: 25%;
    text-align: right;
}

.receipt-fare-rules {
    padding: 0 15px;
    font-size: 11px;
    line-height: 17px;
    color: #777;
}

body.receipt-b .seatmap-matrix {
    margin: 0;
    background: #fff;
    padding: 0;
    border-top: 0 solid #dcdcdc;
    border-right: 0 solid #dcdcdc;
    border-bottom: 0 solid #dcdcdc;
    border-left: 1px solid #dcdcdc;
    line-height: 1.4;
    color: #444;
    width: 100%;
}

body.receipt-b .seatmap-matrix .column {
    padding: 7px 15px;
    text-align: left;
    border-bottom: 1px solid #dadada;
    border-right: 1px solid #dadada;
}

body.receipt-b .display-table.segment-heading {
    background-color: #f5fcff;
}

body.receipt-b .receipt-seatmap .seatmap-segment {
    color: #62757d;
}

body.receipt-b .seatmap-matrix .passenger-number {
    width: 185px;
}

body.receipt-b .feedback-success {
    margin: 0 0 15px;
}

body.receipt-b .receipt-seatmap .selected-seat {
    font-weight: 400;
}

body.receipt-b .segment {
    margin: 12px 0;
    font-size: 12px;
}

body.receipt-b .layover {
    padding: 0 12px 0 30%;
    font-size: 12px;
    border-top: 0 dashed #e0e0e0;
    border-bottom: 0 dashed #e0e0e0;
}

body.receipt-b ul.flight-details-list-compact li {
    padding: 0;
    border-bottom: 1px solid #dadada;
}

body.receipt-b ul.flight-details-list-compact li:last-child {
    border-bottom: 0 solid #dadada;
}

.itinerary-seat-button-section {
    padding: 8px 15px;
    text-align: right;
    background: #f9f9f9;
    border-top: 1px solid #dadada;
}

.itinerary-seat-button {
    padding: 8px 15px;
    display: inline-block;
    font-weight: 700;
    color: #fff;
    background-color: #f05623;
    border-radius: 2px;
    transition: background-color 0.2s;
}

a.itinerary-seat-button:hover {
    background-color: #c93707;
    color: #fff;
}

body.receipt-b .segment-title {
    background: #f5fcff;
    border-top: 0 solid #e1e1e1;
    border-right: 0 solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    border-left: 0 solid #e1e1e1;
    font-weight: 400;
}

body.receipt-b .segment-title-direction {
    padding: 10px 15px;
    float: left;
}

body.receipt-b .segment-title-time {
    padding: 10px 15px;
    float: right;
}

.packages-os-pnr {
    padding-right: 15px;
    width: 15%;
    float: left;
    text-align: right;
    color: #999;
}

.packages-os-pnr span {
    font-size: 16px;
    font-weight: 700;
    color: #0f547f;
}

.packages-os-airlines {
    margin-right: -4px;
    width: 30%;
    display: inline-block;
    vertical-align: top;
}

.packages-os-airline-logo {
    padding-top: 6px;
    float: left;
    width: 20%;
    text-align: center;
}

.packages-os-airline-info {
    float: left;
    width: 80%;
    color: #555;
    text-align: left;
}

.packages-os-airline-info ul li {
    display: inline-block;
}

.packages-os-services {
    color: #777;
}

.packages-os-segment {
    margin-right: -4px;
    padding: 0 10px 0 0;
    width: 70%;
    display: inline-block;
    vertical-align: top;
}

.packages-os-departure {
    width: 39%;
    float: left;
}

.packages-os-arrow {
    padding-top: 5px;
    float: left;
    width: 7%;
    color: #ccc;
    font-size: 18px;
}

.packages-os-arrival {
    width: 39%;
    float: left;
}

.packages-os-departure strong, .packages-os-arrival strong {
    color: #333;
}

.packages-os-duration {
    width: 15%;
    float: left;
    text-align: right;
    color: #999;
}




@media (max-width: 1225px) {

    body.receipt-b .site-header .header-container {
        margin: 0 2%;
        width: 96%;
    }

    .container-receipt-b {
        margin: 25px 2% 0;
        width: 96%;
    }

}




@media (max-width: 1130px) {

    .receipt-b-left {
        width: 72%;
    }

    .receipt-b-right {
        width: 28%;
    }

    .receipt-upsell-left {
        padding-top: 0;
        float: none;
        text-align: center;
    }

    .receipt-upsell-right {
        padding-top: 10px;
        float: none;
        text-align: center;
    }

}




@media (max-width: 1024px) {

    .receipt-b-left {
        width: 100%;
        float: none;
    }

    .receipt-b-right {
        padding: 0;
        width: 100%;
        float: none;
    }

    .receipt-box-bottom-grey {
        line-height: 15px;
    }

}




@media (max-width: 800px) {

    .packages-os-pnr {
        padding: 3px 0 0 0;
        width: 100%;
        float: none;
        clear: left;
        text-align: left;
        border-top: 1px dashed #dadada;
    }

    .packages-os-departure {
        padding-bottom: 3px;
    }

    .packages-os-arrival {
        padding-bottom: 3px;
    }

    .packages-os-pnr span {
        font-size: 13px;
    }

}



@media (max-width: 750px) {

    .receipt-insurance-left {
        padding-top: 0;
        float: none;
        width: 100%;
    }

    .receipt-insurance-middle {
        margin: 0 auto;
        padding: 15px 0;
        float: none;
        width: 80%;
    }

    .receipt-insurance-right {
        padding-top: 15px;
        float: none;
        width: 100%;
        text-align: center;
    }

}




@media (max-width: 670px) {

    body.receipt-b .seatmap-matrix .column {
        padding: 5px 10px;
        text-align: center;
        border-bottom: 0 solid #dadada;
        border-right: 0 solid #dadada;
    }

    body.receipt-b .seatmap-matrix .passenger-number {
        width: 140px;
        border-bottom: 1px solid #dcdcdc;
        padding-bottom: 5px;
        margin-bottom: 0;
    }

    body.receipt-b .seatmap-matrix {
        border-right: 1px solid #dcdcdc;
        border-bottom: 1px solid #dcdcdc;
    }

    body.receipt-b .receipt-seatmap .seatmap-matrix .selected-seats {
        border: 1px solid #dadada;
        margin: 2%;
    }

}




@media (max-width: 650px) {

    .receipt-top-title {
        font-size: 14px;
    }

    .receipt-b-box-top {
        font-size: 12px;
    }

    .receipt-top-left {
        padding: 2px 10px;
        width: 100%;
        float: none;
        font-size: 12px;
        border-right: 0 solid #dadada;
        text-align: center;
    }

    .receipt-top-right {
        padding: 2px 10px;
        width: 100%;
        float: none;
        font-size: 12px;
        text-align: center;
    }

    .receipt-insurance-middle {
        width: 90%;
    }


}




@media (max-width: 570px) {

    body.receipt-b .layover {
        padding: 0 12px 0 35%;
    }

    .receipt-b-title-hotel {
        font-size: 16px;
    }

    .receipt-b-title-car {
        font-size: 16px;
    }

    .packages-os-airline-logo {
        padding-top: 2px;
        width: 32%;
    }

    .packages-os-airline-info {
        padding: 0 8px 0 0;
        width: 68%;
        text-align: left;
    }

    .packages-os-airline-info ul {
        margin-left: 5px;
        float: left;
    }

    .packages-os-departure {
        width: 42%;
    }

    .packages-os-arrow {
        padding-top: 5px;
        width: 16%;
        text-align: center;
    }

    .packages-os-arrival {
        width: 42%;
    }

    .operating-carrier {
        margin-left: 35%;
    }

    .packages-os-wrap .city-pair .layover {
        padding: 3px 0 3px 35%;
        font-size: 11px;
    }

    .packages-os-duration {
        display: none;
    }

    .airport-change {
        padding-left: 0;
        display: block;
    }

    .packages-os-alert {
        text-align: center;
    }

    .select-segment {
        margin-top: 5px;
        padding: 3px 5px;
    }

    .select-segment .fa {
        display: none;
    }

}




@media (max-width: 465px) {

    .receipt-b-manulife-logo {
        display: none;
    }

}




@media (max-width: 450px) {

    .receipt-insurance-middle {
        width: 100%;
    }

    body.receipt-b .seatmap-matrix .passenger-number {
        width: 100%;
    }

    body.receipt-b .receipt-seatmap .seatmap-matrix .selected-seats {
        width: 96%;
    }

    a.receipt-upsell-button {
        padding: 9px 15px;
        font-size: 12px;
    }

}
.donations-photo {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 346px;
    background-image: url("/images/donations-photo.jpg");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.donations-photo:lang(fr) {
    background-image: url("/images/donations-photo-fr.jpg");
}

.container-donations {
    margin: 0 auto;
    padding: 40px 0;
    max-width: 980px;
    font-size: 14px;
    line-height: 22px;
}

.container-donations-left {
    padding: 0 30px 30px 0;
    float: left;
    width: 75%;
}

.container-donations-left ul {
    margin-top: 15px;
}

.container-donations-left ul li {
    padding: 4px 0;
    list-style: none;
}

.container-donations-right {
    padding: 0 0 30px 30px;
    float: left;
    width: 25%;
    text-align: center;
    border-left: 1px solid #ccc;
}

.donations-bbbs {
    margin: 0 auto 40px;
    display: block;
    width: 155px;
    height: 82px;
    background-image: url("/images/donations-Big-Brothers-Big-Sisters.png");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.donations-cancer {
    margin: 0 auto 40px;
    display: block;
    width: 150px;
    height: 39px;
    background-image: url("/images/donations-cancer.png");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.donations-makeawish {
    margin: 0 auto 40px;
    display: block;
    width: 152px;
    height: 42px;
    background-image: url("/images/donations-makeawish.png");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.donations-unicef {
    margin: 0 auto 40px;
    display: block;
    width: 97px;
    height: 99px;
    background-image: url("/images/donations-unicef.png");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.donations-hospital {
    margin: 0 auto 40px;
    display: block;
    width: 168px;
    height: 34px;
    background-image: url("/images/donations-hospital.png");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}

.donations-overture {
    margin: 0 auto;
    display: block;
    width: 140px;
    height: 56px;
    background-image: url("/images/donations-overture.png");
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
}




@media (max-width : 1024px) {

    .donations-photo {
        padding: 9% 0;
        height: 0;
        background-size: 100%;
    }

    .container-donations {
        padding: 10px 0 40px;
    }

    .container-donations-left {
        padding: 0 2% 30px;
        float: none;
        width: 100%;
        text-align: center;
    }

    .container-donations-right {
        display: none;
    }

    .donations-cancer,
    .donations-makeawish,
    .donations-hospital,
    .donations-overture {
        margin: 0 30px 30px;
        float: left;
    }

    .donations-unicef {
        display: none;
    }

}

#porter-ad-click-area {
    position: relative;
}

.porter-ad-wrap {
    padding: 10px;
    width: 180px;
    height: 600px;
    background-color: #5b9bc9;
    position: relative;
    cursor: pointer;
    text-align: center;
}

.show-text {
    margin-bottom: 2px;
    color: #003e65;
    font-weight: 700;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    font-smoothing: antialiased;
    margin-top: 50px;
}

.refresh-text {
    color: #fff;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    -moz-font-smoothing: antialiased;
    -o-font-smoothing: antialiased;
    font-smoothing: antialiased;
}

.porter-racoon {
    /*position: absolute;
    left: 0;
    bottom: 0; - hiding this for 180px width instead of 160px */
}

/* ========================================================================
  toggle css from: http://callmenick.com/post/css-toggle-switch-examples
=========================================================================== */
.switch {
    margin: 0 auto;
    position: absolute;
    top: 55px;
    left: 60px;
    z-index: 1;
}

.cmn-toggle {
    position: absolute;
    margin-left: -9999px;
    visibility: hidden;
}

.cmn-toggle + label {
    display: block;
    position: relative;
    cursor: pointer;
    outline: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

input.cmn-toggle-round-flat + label {
    margin: 10px auto 10px;
    padding: 2px;
    width: 60px;
    height: 30px;
    background-color: #003e65;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
    border-radius: 30px;
    -webkit-transition: background 0.4s;
    -moz-transition: background 0.4s;
    -o-transition: background 0.4s;
    transition: background 0.4s;
}

input.cmn-toggle-round-flat + label:before, input.cmn-toggle-round-flat + label:after {
    display: block;
    position: absolute;
    content: "";
}

input.cmn-toggle-round-flat + label:before {
    top: 2px;
    left: 2px;
    bottom: 2px;
    right: 2px;
    background-color: #fff;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    -ms-border-radius: 30px;
    -o-border-radius: 30px;
    border-radius: 30px;
    -webkit-transition: background 0.4s;
    -moz-transition: background 0.4s;
    -o-transition: background 0.4s;
    transition: background 0.4s;
}

input.cmn-toggle-round-flat + label:after {
    top: 4px;
    left: 4px;
    bottom: 4px;
    width: 22px;
    background-color: #003e65;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -ms-border-radius: 22px;
    -o-border-radius: 22px;
    border-radius: 22px;
    -webkit-transition: margin 0.4s, background 0.4s;
    -moz-transition: margin 0.4s, background 0.4s;
    -o-transition: margin 0.4s, background 0.4s;
    transition: margin 0.4s, background 0.4s;
}

input.cmn-toggle-round-flat:checked + label {
    background-color: #f05623;
}

input.cmn-toggle-round-flat:checked + label:after {
    margin-left: 30px;
    background-color: #f05623;
}
.top-bar-dark {
    padding: 30px 0;
    background-color: #333232;
    font-size: 30px;
    color: #fff;
    font-weight: 300;
    text-align: center;
}

.top-bar-white {
    padding: 12px 0;
    background-color: #fff;
    text-align: center;
    text-decoration: underline;
}

.promotions-container {
    margin: 30px auto 40px;
    padding: 0 1%;
    max-width: 1200px;
}

.promotions-container .upsell-container {
    width: 100%;
    min-height: 300px;
}

.hotel-deals-left {
    padding-right: 30px;
    float: left;
    width: 33%;
}

.promotions-right {
    float: left;
    width: 67%;
}

.promotions-feedback-title {
    padding: 15px;
    color: #fff;
    font-size: 17px;
    background-color: #0074a4;
    border-bottom: 4px solid #00354b;
    text-align: center;
}

.promotions-feedback-content {
    margin-bottom: 30px;
    padding: 15px;
    background-color: #fff;
    border-bottom: 2px solid #ccc;
}

.promotions-feedback-message {
    text-align: center;
    padding-bottom: 15px;
}

.promotions-feedback-link {
    text-align: center;
}

.btn-promotions-feedback {
    padding: 10px 15px;
    display: inline-block;
    color: #fff;
    font-weight: 700;
    background-color: #f05623;
    border-radius: 2px;
    transition: background-color 0.2s;
}

/* Cars/hotel iframe wrapper - overrides */
.promotions-right iframe {
    display: block;
    width: 100%;
    margin: 0 auto 20px auto;
    background: #FFF;
    border-bottom: 1px solid #d2d2d2;

}

.hotel-deals-success {
    padding: 15px;
    color: #fff;
    font-size: 14px;
    background-color: #61932B;
    border-bottom: 4px solid #488300;
}

.hotel-deals-receipt {
    margin-bottom: 30px;
    padding: 15px;
    background-color: #fff;
    border-bottom: 2px solid #ccc;
}

.hotel-deals-pnr {
    padding-bottom: 10px;
    border-bottom: 1px solid #e1e1e1;
}

.hotel-deals-pnr-left {
    float: left;
    font-size: 16px;
    line-height: 24px;
    width: 13%;
    text-align: center;
}

.hotel-deals-pnr-right {
    float: left;
    line-height: 24px;
    width: 87%;
}

.hotel-deals-paymentinfo {
    padding-top: 10px;
}

.hotel-deals-paymentinfo-left {
    float: left;
    font-size: 16px;
    line-height: 24px;
    width: 13%;
    text-align: center;
}

.hotel-deals-paymentinfo-right {
    float: left;
    line-height: 24px;
    width: 87%;
}

.hotel-deals-paymentinfo-right ul {

}

.hotel-deals-paymentinfo-right ul li {
    padding: 5px 0;
    border-top: 1px dashed #e1e1e1;
}

.hotel-deals-itinerary-title {
    padding: 15px;
    color: #fff;
    font-size: 14px;
    background-color: #0074a4;
    border-bottom: 4px solid #00354b;
}

.hotel-deals-itinerary {
    margin-bottom: 30px;
    padding: 15px;
    background-color: #fff;
    border-bottom: 2px solid #ccc;
}

.hotel-deals-segment-title {
    font-weight: 700;
    border-bottom: 1px solid #e1e1e1;
}

.hotel-deals-segment-wrap {
    padding: 6px 0;
}

.hotel-deals-segment-left {
    float: left;
    width: 40%;
}

.hotel-deals-segment-mid {
    padding-top: 8px;
    float: left;
    font-size: 18px;
    color: #9c9c9c;
    width: 20%;
    text-align: center;
}

.hotel-deals-segment-right {
    float: left;
    width: 40%;
}

.upsell-hotel-title, .upsell-car-title {
    padding-left: 0;
    padding-bottom: 8px;
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
}

.hotel-deals-segment-info {
    margin-bottom: 10px;
    padding: 2px;
    font-size: 11px;
    color: #999;
    text-align: center;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
}

.hotel-deals-view-details {
    padding: 5px 0;
    text-align: center;
    text-decoration: underline;
}

/* Insurance upsell */
.upsell-insurance-wrap {
    margin-bottom: 45px;
}

.upsell-insurance-title {
    padding-bottom: 3px;
    font-size: 16px;
    font-weight: bold;
}

.upsell-insurance-text {
    color: #777;
}

.upsell-insurance-list {
    margin: 10px 0;
    padding: 15px 0;
    display: table;
    width: 100%;
    border: 1px solid #cacaca;
    background-color: #f9f9f9;
}

.upsell-insurance-left {
    display: table-cell;
    width: 25%;
    text-align: center;
    vertical-align: middle;
}

.upsell-insurance-middle {
    display: table-cell;
    width: 55%;
    vertical-align: middle;
}

.upsell-insurance-middle ul {
    margin-left: 15px;
}

.upsell-insurance-middle ul li {
    padding: 2px 0;
    color: #666;
}

.upsell-insurance-middle ul li::before {
    margin-left: -1.4em;
    margin-right: .400em;
    color: #00bf66;
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: "\f058";
}

.upsell-insurance-right {
    display: table-cell;
    width: 20%;
    text-align: center;
    vertical-align: middle;
    padding-right: 20px;
}

.btn-ins-upsell {
    padding: 10px 15px;
    display: inline-block;
    color: #fff;
    font-weight: 700;
    background-color: #f05623;
    border-radius: 2px;
    transition: background-color 0.2s;
}

.btn-ins-upsell:hover {
    background-color: #d13d0c;
    color: #fff;
}

/* seatmap upsell */
.upsell-seatmap-wrap {
    margin-bottom: 45px;
}

.upsell-seatmap-title {
    padding-bottom: 3px;
    font-size: 16px;
    font-weight: bold;
}

.upsell-seatmap-text {
    color: #777;
}

.upsell-seatmap-list {
    margin: 10px 0;
    padding: 15px 0;
    display: table;
    width: 100%;
    border: 1px solid #cacaca;
    background-color: #f9f9f9;
}

.upsell-seatmap-left {
    display: table-cell;
    width: 25%;
    text-align: center;
    vertical-align: middle;
}

.upsell-seatmap-middle {
    display: table-cell;
    width: 55%;
    vertical-align: middle;
}

.upsell-seatmap-middle ul {
    margin-left: 15px;
}

.upsell-seatmap-middle ul li {
    padding: 2px 0;
    color: #666;
}

.upsell-seatmap-middle ul li::before {
    margin-left: -1.4em;
    margin-right: .400em;
    color: #006699;
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: "\f058";
}

.upsell-seatmap-right {
    display: table-cell;
    width: 20%;
    text-align: center;
    vertical-align: middle;
    padding-right: 20px;
}

.btn-seatmap-upsell {
    padding: 10px 15px;
    display: inline-block;
    color: #fff;
    font-weight: 700;
    background-color: #f05623;
    border-radius: 2px;
    transition: background-color 0.2s;
}

.btn-seatmap-upsell:hover {
    background-color: #d13d0c;
    color: #fff;
}

/* car upsell */
.car-upsell {
    padding-bottom: 60px;
}

.ctwdg-bookcontainer {
    padding-bottom: 0 !important;
}

.car-upsell-widget {
    overflow: hidden;
}

/* == CARTRAWLER overrides == */
.ctwdg-book {
    margin: 0 auto;
    width: 90%;
    border-radius: 4px;
    background-color: #ff5200 !important;
}

.ctwdg-book:hover {
    background: #ce3000 !important;
}

.ctwdg-footertable, .ctwdg-mainfooter {
    background-color: #0074a4 !important;
}

.car-upsell-widget .ctwdg-bodytable,
.car-upsell-widget .ctwdg-footertable {
    width: 100%;
    margin-bottom: 3px;
    height: auto;
    border-bottom: 1px solid #C3C3C3;
}
.car-upsell-widget .ctwdg-bookcontent a {
    display: block;
    text-transform: uppercase;
    background: transparent !important;
    margin: 5px 10px;
}

.car-upsell-widget .ctwdg-vendors .ctwdg-moreoptions,
.car-upsell-widget .ctwdg-vendors .ctwdg-vendor {
    vertical-align: middle;
}

.car-upsell-widget .ctwdg-vendors .ctwdg-vendor {
    width: auto;
}

.car-upsell-widget .ctwdg-vendors .ctwdg-moreoptions {
    width: 105px;
}

.car-upsell-widget .ctwdg-car-equipment {
    width: 100%;
}

.car-upsell-widget .ctwdg-car-columns {
    width: auto;
    padding: 0 5px;
    background: #ffffff !important;
}

.car-upsell-widget .ctwdg-carimage img {
    width: 100%;
    max-width: 130px;
}

.car-upsell-widget .ctwdg-vendors .ctwdg-vendor img {
    width: 100%;
    max-width: 85px;
}

.car-upsell-widget .ctwdg-bodycell {
    border: 1px solid #dcdcdc;
    border-bottom: 0;
    padding: 15px;
    background: #ffffff;
}

.car-upsell-widget .ctwdg-bottomcolumn {
    border: 0;
}

.car-upsell-widget .ctwdg-carpricecontainer .ctwdg-pricecontainer {
    text-align: center;
    padding: 10px;
}

.car-upsell-widget table.ctwdg-bodytable > tbody > tr > td > table {
    background: #ffffff !important;
}

.headline-dark {
    font-weight: 700;
}

.spinner-wrap {
    padding-top: 0;
    padding-bottom: 0;
    border: 0;
}



/* == Post-Booking Promotions Sorry Error Page == */

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

.bookingPromotions .feature-not-available {
    margin: 30px auto 0 auto;
    text-align: center;
    max-width: 550px;
}

.bookingPromotions .feature-not-available .icon-wrap {
    margin: 0 auto 20px auto;
    display: block;
    font-size: 24px;
    color: #f9b206;
    border: 3px solid #f9b206;
    height: 50px;
    width: 50px;
    line-height: 46px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}

.bookingPromotions .feature-not-available .title {
    font-size: 1.625em;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 15px;
    color: #555;
}

.bookingPromotions .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 #dadada;
    border-bottom: 1px solid #dadada;
}

.bookingPromotions .feature-not-available .call-us {
    font-size: 1em;
    margin: 15px 0 20px 0;
    color: #555;
}

.bookingPromotions .feature-not-available .call-us-link {
    font-size: 1.5em;
    font-weight: 700;
    display: inline-block;
    padding: 5px;
    color: #0072a3;
}

.bookingPromotions .feature-not-available .call-us-link a {
    text-decoration: none;
    color: #0072a3;
}

.bookingPromotions .feature-not-available .call-us-link .fa {
    margin-right: 4px;
    margin-top: -1px;
    font-size: 1.25em;
    vertical-align: top;
}

.bookingPromotions .not-available-nav {
    margin-bottom: 40px;
}

.bookingPromotions .not-available-nav li {
    display: inline-block;
    margin: 0 5px;
}

.bookingPromotions .not-available-nav li a {
    font-size: 14px;
    color: #777;
    display: inline-block;
    padding: 10px 15px;
    border: 1px solid #dadada;
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
}

.bookingPromotions .not-available-nav li a:hover {
    background: #f5f5f5;
    color: #0072a3;
    border-color: #dadada;
}

/* == END Post-Booking Promotions Sorry Error Page == */


@media (max-width: 980px) {

    .promotions-container {
        margin: 20px 0 0;
    }

    .hotel-deals-left {
        padding-right: 0;
        float: none;
        width: 100%;
    }

    .promotions-right {
        float: none;
        width: 100%;
    }

    .promotions-right iframe {
        width: 100%;
    }

    .hotel-deals-pnr-left {
        width: 6%;
    }

    .hotel-deals-pnr-right {
        width: 94%;
    }

    .hotel-deals-paymentinfo-left {
        width: 6%;
    }

    .hotel-deals-paymentinfo-right {
        width: 94%;
    }

}





@media (max-width: 800px) {

    /* insurance upsell */
    .upsell-insurance-title {
        padding-top: 20px;
        text-align: center;
    }

    .upsell-insurance-text {
        text-align: center;
    }

    .upsell-insurance-left {
        padding: 0;
        display: block;
        width: 100%;
        text-align: center;
    }

    .upsell-insurance-middle {
        padding: 15px;
        display: block;
        width: 100%;
        text-align: center;
    }

    .upsell-insurance-middle ul {
        margin: 0 20px;
    }

    .upsell-insurance-right {
        padding-top: 0;
        display: block;
        width: 100%;
    }

    /* seatmap upsell */
    .upsell-seatmap-title {
        padding-top: 20px;
        text-align: center;
    }

    .upsell-seatmap-text {
        text-align: center;
    }

    .upsell-seatmap-left {
        padding: 0;
        display: block;
        width: 100%;
        text-align: center;
    }

    .upsell-seatmap-middle {
        padding: 15px;
        display: block;
        width: 100%;
        text-align: center;
    }

    .upsell-seatmap-middle ul {
        margin: 0 20px;
    }

    .upsell-seatmap-right {
        display: block;
        width: 100%;
    }

    .upsell-hotel-title {
        text-align: center;
    }

}





@media (max-width: 600px) {

    .ctwdg-maincolumns {
        background-color: #fff !important;
    }

    .top-bar-dark {
        padding: 15px 0;
        font-size: 20px;
    }

    .promotions-container {
        margin: 15px 1% 0;
    }

    .hotel-deals-success {
        padding: 10px;
        font-size: 13px;
    }

    .hotel-deals-itinerary-title, .hotel-deals-itinerary {
        display: none;
    }

    .hotel-deals-receipt {
        margin-bottom: 10px;
        padding: 10px;
    }

    /* Cars/hotel iframe wrapper - overrides */
    .promotions-right iframe {
        display: block;
        width: 100%;
        background: #FFF;
        border-bottom: 1px solid #d2d2d2;
    }

    .car-upsell-widget .ctwdg-mainheader-container {
        display: block;
        margin-bottom: 5px;
        height: auto !important;
    }

    .car-upsell-widget .ctwdg-car-columns {
        display: block;
        max-width: 330px;
        margin: 0 auto 10px auto;
        background: #ffffff !important;
        padding: 0;
    }

    .car-upsell-widget .ctwdg-usp td {
        display: block;
        width: auto;
    }

    .car-upsell-widget .ctwdg-vendors .ctwdg-vendor {
        display: none;
    }

    .car-upsell-widget .ctwdg-vendors .ctwdg-moreoptions {
        width: auto;
        text-align: center;
    }

    .car-upsell-widget .ctwdg-headercontent .ctwdg-header-pkrt,
    .car-upsell-widget .ctwdg-headercontent.ctwdg-date-loc {
        font-size: 14px;
    }



}

@media (max-width: 400px) {

    .top-bar-dark {
        font-size: 15px;
    }

    .hotel-deals-pnr {
        padding-bottom: 5px;
    }

    .hotel-deals-receipt {
        padding: 5px;
    }

    .hotel-deals-pnr-left {
        width: 10%;
    }

    .hotel-deals-pnr-right {
        width: 90%;
    }

    .hotel-deals-paymentinfo-left {
        width: 10%;
    }

    .hotel-deals-paymentinfo-right {
        width: 90%;
    }

}
.exit-intent-wrap {
    width: 100%;
    background-image: url("https://www.flighthub.com/images/exit-intent-bg.jpg");
    background-size: 100%;
    background-repeat: no-repeat;
}

.exit-intent-left {
    padding: 10px 20px 30px;
    float: left;
    width: 35%;
    background: rgba(255,255,255,0.8);
    text-align: center;
}

.exit-intent-right {
    padding: 33px;
    float: left;
    width: 65%;
}

.exit-intent-title {
    margin: 15px 0 15px;
    font-size: 32px;
    line-height: 32px;
    font-weight: bold;
    color: #014664;
}

.exit-intent-text {
    font-size: 16px;
    line-height: 20px;
    color: #444;
}

ul.airport-letters {
    margin-top: 40px;
    font-size: 0;
    text-align: center;
}

ul.airport-letters li {
    margin-right: 1px;
    padding: 2px 5px;
    display: inline-block;
    color: #fff;
    font-family: arial narrow, arial, sans-serif;
    font-size: 25px;
    font-weight: 400;
    line-height: 25px;
    background-color: #111;
    border-radius: 2px;
    text-align: center;
}

ul.airport-letters li.dash {
    margin-right: 0;
    padding: 3px 5px 0;
    color: #111;
    font-size: 16px;
    background-color: transparent;
    vertical-align: top;
}

.airport-letters-wrap {
    margin: 0 auto 21px;
    width: 84%;
    font-size: 11px;
    line-height: 13px;
}

.airport-letters-left {
    float: left;
    width: 44%;
    text-align: right;
}

.airport-letters-middle {
    float: left;
    width: 12%;
}

.airport-letters-right {
    float: left;
    width: 44%;
    text-align: left;
}

.exit-intent-form {
    margin-top: 205px;
    padding: 25px 15px 10px;
    background: rgba(255,255,255,0.8);
    position: relative;
}

#exit-intent-message {
    position: absolute;
    top: -38px;
    left: 0;
    width: 100%;
}

.exit-intent-green {
    padding: 10px;
    display: block;
    color: #fff;
    background: #4f9e09;
    text-align: center;
}

.exit-intent-red {
    padding: 10px;
    display: block;
    color: #fff;
    background: #d71313;
    text-align: center;
}

.exit-intent-form-left {
    padding-right: 5px;
    float: left;
    width: 70%;
}

.exit-intent-form-right {
    float: left;
    width: 30%;
}

.exit-intent-button {
    padding: 11px 20px 9px;
    font-size: 18px;
    font-weight: 700;
    display: block;
    color: #fff;
    height: 40px;
    background-color: #1db8fa;
    outline: 0;
    border: 0;
}

.exit-intent-button:hover {
    background-color: #0072a3;
    color: #fff;
}

.exit-intent-form-left input {
    padding: 10px;
    width: 100%;
    height: 40px;
    border: 1px solid #cfcfcf;
}

.exit-intent-logo {
    margin: 0 0 10px -10px;
}

a.exit-intent-terms {
    color: #888;
    font-size: 11px;
}






/*
-------------------------------------------------------------------------------------
------------------------------Variation C--------------------------------------------
-------------------------------------------------------------------------------------
*/

.exit-intent-form_c {
    padding: 20px 20px 10px;
    background: #e0e0e0;
    position: relative;
}

.exit-intent-title_c {
    margin: 5px 0;
    font-size: 40px;
    line-height: 43px;
    color: #272727;
}

.exit-intent-text_c {
    font-size: 14px;
    line-height: 17px;
    color: #444;
}

.airport-letters-container {
    margin: 22px auto;
    padding: 20px 0;
    width: 70%;
    text-align: center;
    border-top: 1px solid #b7b7b7;
    border-bottom: 1px solid #b7b7b7;
}

ul.airport-letters_c {
    font-size: 0;
    text-align: center;
}

ul.airport-letters_c li {
    margin-right: 1px;
    padding: 2px 5px;
    display: inline-block;
    color: #fff;
    font-family: arial narrow, arial, sans-serif;
    font-size: 35px;
    font-weight: 400;
    line-height: 35px;
    background-color: #111;
    border-radius: 2px;
    text-align: center;
}

ul.airport-letters_c li.dash {
    margin-right: 0;
    padding: 3px 10px 0;
    color: #111;
    font-size: 20px;
    background-color: transparent;
    vertical-align: top;
}

.airport-letters-wrap_c {
    margin: 0 auto;
    width: 84%;
    font-size: 12px;
    line-height: 16px;
}

.airport-letters-left_c {
    float: left;
    width: 44%;
    text-align: right;
}

.airport-letters-middle_c {
    float: left;
    width: 12%;
}

.airport-letters-right_c {
    float: left;
    width: 44%;
    text-align: left;
}

.exit-intent-form-left_c {
    padding-right: 5px;
    float: left;
    width: 70%;
}

.exit-intent-form-left_c input {
    padding: 10px;
    width: 100%;
    height: 40px;
    border: 1px solid #cfcfcf;
}

.exit-intent-form-right_c {
    float: left;
    width: 30%;
}

.exit-intent-button_c {
    padding: 11px 20px 9px;
    font-size: 18px;
    font-weight: 700;
    display: block;
    color: #fff;
    height: 40px;
    background-color: #0072a3;
    outline: 0;
    border: 0;
}

.exit-intent-button_c:hover {
    background-color: #1db8fa;
    color: #fff;
}
.insurance-upsell .top-heading-wrap {
    margin: 0;
}

.insurance-upsell .result-page-title {
    padding: 30px 25px;
    font-size: 24px;
    line-height: 24px;
    font-weight: 700;
    color: #fff;
    margin: auto;
    background-color: #000;
    text-align: center;
}

.insurance-upsell .result-page-title strong {
    font-weight: 900;
}

.insurance-upsell .result-page-title .subtitle {
    font-weight: normal;
    color: #dadada;
    font-size: 16px;
    line-height: 18px;
}

.insurance-upsell .section-expiration-date {
    padding: 10px;
    background: #f1f1f1;
    text-align: center;
    font-weight: 600;
    color: #666;
}

.section-expiration-date .date {
    display: inline-block;
    font-weight: 900;
}

.insurance-upsell-content {
    margin-top: 40px;
}

.insurance-plans-wrap {
    font-size: 0;
    text-align: center;
}

.insurance-plans-wrap .insurance-plan {
    position: relative;
    display: inline-block;
    vertical-align: top;
    padding: 1.5%;
    font-size: 16px;
    text-align: left;
    max-width: 750px;
}

.insurance-plans-wrap .insurance-plan.recommended {
    background: #fff;
    border: 1px solid #dadada;
    -webkit-box-shadow: 0px 5px 10px rgba(0,0,0,0.1);
    -moz-box-shadow: 0px 5px 10px rgba(0,0,0,0.1);
    box-shadow: 0px 5px 10px rgba(0,0,0,0.1);
}

.plan-heading {
    padding-bottom: 5px;
    margin-bottom: 15px;
    border-bottom: 1px solid #dadada;
}

.insurance-plan .total-price {
    font-size: 14px;
    margin: 0px 15px 0 15px;
    color: #555;
    text-align: right;
}

.insurance-plan.recommended .total-price {
    color: #507886;
}

.plan-heading .column {
    vertical-align: middle;
}

.plan-heading .mobile-arrow {
    display: none !important;
    width: 18px;
    vertical-align: top;
}

.plan-heading .mobile-show-details {
    display: none;
    font-size: 14px;
    color: #666;
    font-weight: 400;
    margin: 2px 0;
}

.mobile-show-details .icon {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 14px;
    display: inline-block;
    vertical-align: top;
    margin: 1px 0 0 3px;
}

.mobile-show-details .icon:after {
    content: '\f107';
}

.opened .mobile-show-details .icon:after {
    content: '\f106';
}

.insurance-plan .plan-name {
    font-size: 1.375em;
    font-weight: 700;
    color: #444;
}

.recommended .recommended-icon {
    color: #81BED0;
    font-size: 0.625em;
    margin-left: 3px;
}

.plan-features {
    font-size: 0.875em;
    line-height: 1.3;
    color: #555;
}

.plan-features li {
    margin-bottom: 6px;
    position: relative;
    padding: 0 15px 0 18px;
}

.plan-features li:before {
    content: '\f058';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 13px;
    position: absolute;
    top: 1px;
    left: 0;
    color: #00467f;
}

.csa-direct .plan-features .ins-options-title {
    margin: 0px 0 10px 0;
    padding-left: 0;
}

.csa-direct .plan-features .ins-options-title:before {
    display: none;
}

.plan-features strong {
    font-weight: 700;
    color: #444;
}

.plan-features .amount {
    font-weight: 700;
    color: #00467f;
}

.plan-features .amount {
    display: inline-block;
}

.insurance-plan .btn-wrap {
    line-height: 1;
    margin-top: 15px;
}

.insurance-plan .btn-wrap .column {
    vertical-align: middle;
}

.insurance-plan .btn-wrap .price-per-person {
    width: 35%;
    padding: 5px 10px;
    border: 1px solid #dcdcdc;
    background: #f1f1f1;
    text-align: center;
}

.insurance-plan.recommended .btn-wrap .price-per-person {
    background: #fff;
    border-color: #dadada;
}

.insurance-plan .price-per-person .label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: #666;
    margin-top: 1px;
}

.insurance-plan .price-per-person .amount {
    font-size: 22px;
    color: #777;
}

.button-purchase-plan {
    display: block;
    background: #ef5827;
    color: #fff;
    font-weight: 700;
    font-size: 1.125em;
    line-height: 45px;
    padding: 0 40px 0 20px;
    position: relative;
    cursor: pointer;

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

.button-purchase-plan:after {
    content: '\f105';
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 18px;
    line-height: 1;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -9px;
}

.button-purchase-plan:hover {
    background: #2189C5;
    color: #fff;
}

.section-legend {
    margin: 0 auto;
    padding: 60px 2%;
    font-size: 14px;
    background: #f1f1f1;
    max-width: 1200px;
}

.section-legend .title {
    width: 200px;
}

.section-legend .legend-content li {
    margin-bottom: 10px;
}

.section-legend .legend-wrap .column {
    vertical-align: top;
}

.section-legend .text {
    padding-left: 40px;
}

.section-legend .insurance-logo-wrap {
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 1px solid #dadada;
}

.section-legend .legend-wrap .legend-title {
    padding-left: 40px;
    font-size: 20px;
    font-weight: 700;
    color: #444;
    line-height: 1;
    text-align: left;
    vertical-align: middle;
}

.upsell-error {
    text-align: center;
}

.upsell-error .feedback-error {
    font-weight: 700;
    font-size: 16px;
    text-align: center;
    color: #FFFFFF;
    background: #E25E5E;
    padding: 10px;
    margin: 0;
}

.travel-insurance.index .spinner-wrap {
    margin: 10px 0;
    border-top: 0;
    padding-top: 0;
}

.csa-direct.insurance-upsell-content {
    margin-top: 7px;
}

.plan-policy-link {
    font-size: 12px;
    line-height: 1;
    color: #0C6AA0;
    text-align: left;
    margin: 10px 0 0;
    border-top: 1px solid #dadada;
    padding-top: 10px;
}

.plan-policy-link a {
    color: inherit;
}




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

    .insurance-plans-wrap .insurance-plan {
        padding: 1.5%;
    }

    .insurance-plan .plan-name {
        font-size: 1.125em;
        padding: 0 0 0 8px;
    }

    .insurance-upsell .result-page-title .subtitle {
        font-size: 14px;
    }

}




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

    .plan-features {
        font-size: 0.875em;
    }

    .insurance-plan .btn-wrap .price-per-person {
        width: 40%;
    }

    .insurance-plan .price-per-person .amount {
        font-size: 18px;
    }

    .csa-direct .plan-features .ins-options-title {
        margin: 10px 0;
        font-size: 14px;
    }

    .button-purchase-plan {
        font-size: 1em;
        padding: 0 25px 0 15px;
    }

    .button-purchase-plan:after {
        font-size: 14px;
        right: 12px;
    }
}




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

    .plan-features {
        display: block !important;
    }

}




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

    .csa-direct.insurance-upsell-content,
    .insurance-upsell-content {
        margin: 0;
    }

    .insurance-plans-wrap {
        margin: 0;
    }

    .insurance-plans-wrap .insurance-plan {
        margin: 15px 2%;
        padding: 15px;
        display: block;
        width: 96%;
    }

    .plan-heading {
        padding-bottom: 0;
        margin-bottom: 5px;
        border-bottom: 0;
        cursor: pointer;
    }

    .plan-heading .price-per-person {
        margin: 0;
    }

    .plan-features {
        border-top: 1px solid #dadada;
        margin: 0 0 10px 0;
    }

}




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

    .section-legend {
        font-size: 14px;
        margin: 45px 2%;
        padding: 15px 0 40px 0;
    }

    .section-legend .title {
        width: 100px;
    }

    .insurance-logo-wrap img {
        height: 39px;
        width: auto;
    }

    .section-legend .legend-wrap .legend-title,
    .section-legend .text {
        padding-left: 15px;
    }

    .section-legend .legend-wrap .legend-title {
        font-size: 16px;
    }

}




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

    .insurance-upsell .result-page-title {
        padding: 20px 5px;
        font-size: 20px;
    }

}




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

    .plan-features-wrap .column {
        display: block;
        padding: 0;
    }

}




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

    .insurance-plan .plan-name {
        font-size: 1em;
    }

    .insurance-plan .btn-wrap .price-per-person {
        padding: 0px 10px;
    }

    .button-purchase-plan {
        font-size: 1em;
        line-height: 40px;
    }

    .button-purchase-plan:after {
        margin-top: -7px;
    }

    .insurance-plan .btn-wrap {
        padding: 0 0 5px 0;
    }

    .insurance-plan .total-price,
    .plan-policy-link {
        margin-left: 0;
        margin-right: 0;
    }

}
.ss-wrap {
    padding: 10px;
    background-color: #f9f9f9;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.ss-wrap input {
    margin-bottom: 3px;
    padding: 8px 10px;
    font-size: 12px;
    color: #555;
    width: 100%;
    border: 1px solid #dadada;
    border-radius: 2px;
}

.ss-wrap .container-home-search-from, .ss-wrap .container-home-search-to {
    margin-bottom: 0;
}

.trips-wrap-sidebar {
    margin: 30px 0 0;
}

.trips-wrap-sidebar ul {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.trips-wrap-sidebar ul li {
    display: table-cell;
    width: 100%;
    text-align: center;
}

.trips-wrap-sidebar ul li a {
    padding: 5px 0;
    color: #999;
    display: block;
    text-align: center;
    white-space: nowrap;
    border-bottom: 1px solid #dadada;
    transition: all 0.2s;
}

.trips-wrap-sidebar ul li a.active {
    color: #333;
    background-color: #f9f9f9;
    border-top: 1px solid #dadada;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #f9f9f9;
    border-left: 1px solid #dadada;

}

.trips-wrap-sidebar ul li a:hover {
    color: #333;
    font-weight: bold;
}

.ss-wrap .field-close-x {
    position: absolute;
    top: 28px;
    right: 4px;
    font-size: 18px;
    color: #999;
    cursor: pointer;
    display: none;
    background-color: #fff;
    border-radius: 50%;
}

.ss-wrap label, .ss-wrap br {
    display: none;
}

.ss-wrap .select-wrapper {
    width: 214px;
}

.ss-wrap .field-wrap {
    margin-bottom: 5px;
}

.ss-wrap .home-passenger-select {
    margin-right: 1%;
    flex: 1;
    position: relative;
}

.ss-wrap .hp-select-class {
    flex: 1;
}

.ss-wrap #current-seat-class {
    width: 65px;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ss-wrap .flights-home-pass-total {
    width: 10px;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ss-wrap .flights-home-pass-name {
    width: 55px;
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ss-wrap .mock-select {
    margin-bottom: 3px;
    padding: 5px 10px 0;
    color: #555;
    background-color: #fff;
    border: 1px solid #dadada;
    border-radius: 2px;
}

.ss-wrap .hp-additional-options {
    display: none;
}

.ss-wrap .container-home-search-cabin {
    margin-bottom: 5px;
    display: flex;
}

.ss-wrap .search-button-wrap {
    padding-top: 2px;
}

.ss-wrap .search-button-wrap a {
    padding: 10px;
    display: block;
    font-size: 15px;
    font-weight: 700;
    background-color: #ECECEC;
    color: #7d7d7d;
    text-align: center;
    border-radius: 2px;
    border-bottom: 2px solid #ccc;
    transition: all 0.2s;
}

.ss-wrap .search-button-wrap a:hover {
    background-color: #2cb8e2;
    color: #fff;
    border-bottom: 2px solid #2cb8e2;
}

.ss-wrap .buttons-add-remove {
    margin-top: 8px;
    margin-bottom: 3px;
}

.ss-wrap .buttons-add-remove ul {
    display: table;
    width: 100%;
    border: 1px solid #dadada;
    border-radius: 2px;
}

.ss-wrap .buttons-add-remove ul li {
    display: table-cell;
    width: 50%;
    border-right: 1px solid #dadada;
}

.ss-wrap .buttons-add-remove ul li:last-child {
    border-right: 0 solid #dadada;
}

.ss-wrap .buttons-add-remove ul li a {
    padding: 5px 0;
    display: block;
    background-color: #fff;
    color: #006699;
    text-align: center;
}

.ss-wrap .buttons-add-remove ul li a:hover {
    background-color: #f1f1f1;
}

ul.feedback-list {
    list-style-type: none;
}

ul.feedback-list li {
    padding: 1px 0;
}



.ss-wrap .hp-search-city-left {
    margin: 0 0 2% 0;
    width: 100%;
    position: relative;
}

.ss-wrap .hp-search-city-right {
    margin: 0 0 2% 0;
    width: 100%;
    position: relative;
}

.ss-wrap .hp-search-date-left {
    margin: 0 1% 0 0;
    float: left;
    width: 49.5%;
    position: relative;
}

.ss-wrap .hp-search-date-right {
    margin: 0;
    float: left;
    width: 49.5%;
    position: relative;
}





.ss-wrap .home-pass-select-dropdown {
    padding: 10px;
    border: 1px solid #e1e1e1;
    background: #fff;
    position: absolute;
    top: 31px;
    left: 0;
    width: 215px;
    text-align: left;
    z-index: 1000;
    border-radius: 0 !important;
    box-shadow: 0 0 0 #fff !important;
}

.ss-wrap .hp-select-box-class {
    padding: 10px;
    border: 1px solid #e1e1e1;
    background: #fff;
    position: absolute;
    top: 31px;
    left: 0;
    width: 150px;
    text-align: left;
    z-index: 1000;
    border-radius: 0 !important;
    box-shadow: 0 0 0 #fff !important;
}

.ss-wrap .hp-select-pax-wrap {
  margin-bottom: 10px;
  border: 1px solid #dadada;
  text-align: center;
}

.ss-wrap .hp-select-pax-left {
    float: left;
    width: 20%;
    border-right: 1px solid #dadada;
}

.ss-wrap .hp-select-pax-left a, .hp-select-pax-right a {
    padding: 10px 6px;
    display: block;
    font-size: 13px;
    font-weight: bold;
    color: #444;
    background-color: #f1f1f1;
    transition: background-color ease 0.2s;
}

.ss-wrap .hp-select-pax-left:hover a, .hp-select-pax-right a:hover {
    color: #fff;
    background-color: #2cb8e2;
}

.ss-wrap .hp-select-pax-middle {
    padding: 10px 6px;
    float: left;
    width: 60%;
}

.ss-wrap .hp-select-pax-right {
    float: right;
    width: 20%;
    border-left: 1px solid #dadada;
}

.ss-wrap a.pax-select-done {
    padding: 8px 15px;
    display: block;
    font-size: 16px;
    text-align: center;
    border-radius: 3px;
    background-color: #0074a4;
    color: #fff;
}

.ss-wrap a.pax-select-done:hover {
    background-color: #00425e;
}

.ss-wrap .hp-select-class {
    margin: 0 0 1% 0;
    float: left;
    width: 49.5%;
    position: relative;
}

.ss-wrap #pax_num, #class_type {
    padding: 10px 20px;
    width: 100%;
    background-color: #fff;
    border-right: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
    position: absolute;
    top: 40px;
    left: 0;
}

.ss-wrap ul.passenger_list {
    margin: 4px 0 5px 5px;
}

.ss-wrap ul.passenger_list select {
    padding: 2px;
}

.ss-wrap ul.passenger_list li:first-child {
    padding-top: 0;
}

.ss-wrap ul.passenger_list li {
    padding: 5px 0;
    border-bottom: 1px dotted #e1e1e1;
}

.ss-wrap ul.passenger_list li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.ss-wrap #seat-class-dropdown {
    display: none;
}







/* calendar overrides */

body.one-step #datepicker {
    width: 277px;
}

body.one-step li.ui-datepicker-btn-close {
    right: -28px;
}


@media (max-width: 450px) {

    body.one-step li.ui-datepicker-btn-close {
        top: -35px;
        right: 0;
    }

}
.sidebar-section {
    margin: 20px auto 0;
    padding: 12px;
    background: #fff;
    border: 1px solid #fff;
    max-width: 472px;
}

@keyframes placeHolderShimmer{
    0%{
        background-position: -468px 0
    }
    100%{
        background-position: 468px 0
    }
}

.animated-background {
    animation-duration: 1s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-name: placeHolderShimmer;
    animation-timing-function: linear;
    background: #f6f7f8;
    background: linear-gradient(to right, #f5f5f5 8%, #eeeeee 18%, #f5f5f5 33%);
    background-size: 800px 104px;
    height: 145px;
    position: relative;
}

.background-masker {
    background: #fff;
    position: absolute;
}

/* Every thing below this is just positioning */

.background-masker.field-row-divider1 {
    top: 25px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.field-row-divider2 {
    top: 55px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.field-cell-divider1 {
    top: 60px;
    left: 100px;
    right: 0;
    height: 25px;
    width: 10px;
}

.background-masker.field-row-divider3 {
    top: 85px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.field-cell-divider2 {
    top: 90px;
    left: 100px;
    right: 0;
    height: 25px;
    width: 10px;
}

.background-masker.field-row-divider4 {
    top: 115px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-title {
    top: 0;
    left: 100px;
    right: 0;
    height: 10px;
    width: 110px;
}

.background-masker.list-item1 {
    top: 10px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item2 {
    top: 25px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item3 {
    top: 40px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item4 {
    top: 55px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item5 {
    top: 70px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item6 {
    top: 85px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item7 {
    top: 100px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item8 {
    top: 115px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}

.background-masker.list-item9 {
    top: 130px;
    left: 0;
    right: 0;
    height: 5px;
    width: 100%;
}
/* universal layout classes */

.columns-wrap {
    margin: 0 auto;
    padding: 0 15px;
    max-width: 1200px;
}

.contest-rules-wrap {
    margin: 0 auto;
    padding: 45px 0;
    max-width: 1190px;
    overflow: hidden;
}

.contest-rules-wrap h1 {
    margin: 0 0 20px;
    padding: 0 !important;
    font-size: 24px;
    font-weight: 600;
}

.contest-rules-wrap p {
    margin: 0 0 20px;
}

.columns-container {
    margin: 20px auto 0;
    padding-bottom: 50px;
    display: table;
    width: 100%;
}

.columns-left {
    display: table-cell;
    min-width: 250px;
    background: #f9f9f9;
    border: 1px solid #e1e1e1;
}

.columns-right {
    padding-left: 20px;
    display: table-cell;
    width: 100%;
    min-height: 600px;
    vertical-align: top;
}

.section-title {
    padding: 0 0 5px;
    font-size: 18px;
    overflow: hidden;
    border-bottom: 1px solid #dadada;
}

.sidebar-title {
    margin-bottom: 5px;
    font-size: 12px;
    font-weight: 700;
    border-bottom: 1px solid #dadada;
}

@media only screen and (max-width: 1200px) {
    .contest-rules-wrap{
        max-width: 900px;
        margin: 0 auto;
        overflow: hidden;
        padding-left: 6px;
        padding-right: 6px;
    }
}




/* about us, terms, etc */

body.site {
    margin: 0 0 50px;
    background-color: #fff;
}

body.site.newsletter {
    margin: 0;
}

.subpage-heading-wrap {
    background-color: #393939;
}

.subpage-heading {
    margin: 0 auto;
    padding: 35px 15px;
    max-width: 1200px;
    font-size: 2vw;
    font-weight: bold;
    color: white;
}

.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: #2cb8e2;
}

.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 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 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;
}

@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;
    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: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '\f077';
    font-size: 26px;
    color: #ffffff;
    background: #2cb8e2;
    height: 48px;
    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;
    }

}






/* testimonials page */
.testimonials-top {
    margin: 0 0 25px;
    padding: 0;
    width: 100%;
    height: 385px;
    background: transparent url("https://www.flighthub.com/images/testimonials-top-bg.png") top center no-repeat;
    position: relative;
    z-index: 2;
}
.container-testimonials {
    margin: -100px auto 25px;
    padding: 25px;
    width: 980px;
    background: #fff;
    box-sizing: border-box;
    position: relative;
    z-index: 1;
}
.title-testimonial {
    padding: 0 0 8px;
    margin: 0 0 20px;
    border-bottom: 1px solid #dcdcdc;
    overflow: hidden;
    font-size: 28px;
    line-height: 27px;
    font-weight: 300;
}
.title-testimonial h1 {
    padding: 0 0 3px;
    margin: 0;
}
ul.testimonials-reviews {
    overflow: hidden;
}
ul.testimonials-reviews li {
    margin-right: 3%;
    float: left;
    width: 30%;
}
ul.testimonials-reviews li:nth-child(3n) {
    margin-right: 0;
    width: 33%;
}
.testimonial-big-review {
    margin: 0 auto;
    padding: 20px 0 40px;
    width: 80%;
    text-align: center;
    font-family: 'lato', arial, sans-serif;
    font-size: 42px;
    font-weight: 100;
    font-style: italic;
    line-height: 42px;
}

ul.testimonials-topreviews {
    font-size: 0;
    background: #f8fdff;
    padding: 10px;
}

ul.testimonials-topreviews li {
    font-size: 12px;
    display: inline-block;
    vertical-align: top;
    padding: 10px;
    width: 33.333333%;
}







/* support */

.column-wrap-help {
    margin: 20px auto 0;
    padding-bottom: 50px;
    display: table;
    width: 980px;
}

.column-left-help {
    display: table-cell;
    min-width: 250px;
    background: #f9f9f9;
    border: 1px solid #e1e1e1;
}

.column-right-help {
    display: table-cell;
    width: 100%;
    min-height: 600px;
    vertical-align: top;
}

.column-right-receipt {
    margin-left: 265px;
    min-height: 600px;
}

.faq-search-wrap {
    padding: 15px 0;
}

.faq-search-left {
    margin-right: 1%;
    float: left;
    width: 79%;
}

.faq-search-left input {
    padding: 8px;
    width: 100%;
    border: 1px solid #cdcdcd;
}

.faq-search-right {
    float: left;
    width: 20%;
}

a.button-faq-search {
    padding: 6px;
    display: block;
    font: 300 16px arial, sans-serif;
    color: #fff;
    background: #0071a0;
    border: 1px solid #0071a0;
    border-radius: 2px;
    cursor: pointer;
    text-align: center;
}

a.button-faq-search:hover {
    background: #00405b;
}

.faq-title {
    padding: 10px 15px;
    font-size: 18px;
    overflow: hidden;
    background: #fff;
    border-bottom: 1px solid #e1e1e1;
}

.faq-title a {
    color: #006699;
}

ul.faq-default-list > li > div > ol {
    margin: 0 52px 0 70px;
    list-style: decimal;
}

ul.faq-default-list > li > div > ol > li:first-child {
    padding-top: 21px;
}

ul.faq-default-list > li > div > ol > li {
    padding: 11px 0 10px 0;
    border-bottom: 1px dotted #e1e1e1;
}

ul.faq-default-list > li > div > ol > li:last-child {
    padding-bottom: 21px;
    border-bottom: 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;
}

ul.faq-default-list > li:last-child {
    border-bottom: 0;
}

.faq-bottom-title {
    padding: 13px 15px 11px 15px;
    border-top: 1px solid #d1d1d1;
    font-size: 16px;
    overflow: hidden;
}

.container-yes-no-btn {
    margin: 14px 0 10px 0;
}

ul.faq-sub-list {
    margin: 0 0 0 16px;
    list-style: disc;
}

ul.faq-sub-list > li:first-child {
    padding-top: 11px;
}

ul.faq-sub-list > li {
    padding: 11px 0 10px 0;
    border-bottom: 1px dotted #e1e1e1;
}

ul.faq-sub-list > li:last-child {
    padding-bottom: 11px;
    border-bottom: 0;
}



/* my account */
.my-account-wrap {
    margin: 0 auto;
    max-width: 1200px;
}

.column-wrap-myaccount {
    margin: 0 auto;
    padding: 0 0 50px;
    display: table;
    width: 100%;
}

.column-wrap-myaccount {
    margin: 20px auto 0;
    padding-bottom: 50px;
    display: table;
    width: 980px;
}

.column-left-myaccount {
    display: table-cell;
    min-width: 250px;
    background: #f9f9f9;
    border: 1px solid #e1e1e1;
}

.column-right-myaccount {
    padding-left: 20px;
    display: table-cell;
    width: 100%;
    vertical-align: top;
}

.login-content {
    margin: 0;
    overflow: hidden;
}

.social-login-buttons-wrap {
    display: table;
    table-layout: fixed;
}

.login-social-left .social-login-buttons-wrap {
    margin-top: 30px;
}

.social-login-buttons-left {
    display: table-cell;
    width: 40%;
}

.social-login-buttons-middle {
    display: table-cell;
    width: 20%;
    color: #666;
    vertical-align: middle;
    text-align: center;
}

.social-login-buttons-right {
    display: table-cell;
    width: 40%;
}

.social-login-buttons-left button {
    padding: 5px 15px 5px 8px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    color: #fff;
    background-color: #4267b2;
    border-radius: 2px;
    border: 0;
    outline: 0;
    transition: all 0.2s;
    cursor: pointer;
}

.social-login-buttons-left button:hover {
    background-color: #2c467b;
}

.social-login-buttons-left button .fa {
    margin-right: 10px;
    float: left;
    color: #fff;
    font-size: 24px;
}

.social-login-buttons-right button {
    padding: 5px 15px 5px 8px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;
    color: #fff;
    background-color: #4285f4;
    border-radius: 2px;
    border: 0;
    outline: 0;
    transition: all 0.2s;
    cursor: pointer;
}

.social-login-buttons-right button:hover {
    background-color: #3263b5;
}

.social-login-buttons-right button .fa {
    margin-right: 10px;
    float: left;
    color: #fff;
    font-size: 24px;
}

.social-sign-in .instructions {
    padding: 20px 0;
}

.account-content-signup .instructions {
    padding: 20px 0;
}

.login-social-wrap {
    display: table;
    width: 100%;
}

.login-social-left {
    padding-right: 15px;
    display: table-cell;
    width: 30%;
    border-right: 1px solid #dadada;
}

.login-social-right {
    padding: 25px 0 0 35px;
    display: table-cell;
    width: 70%;
    vertical-align: top;
}

.login-social-left .social-login-buttons-wrap {
    width: 100%;
}

.login-social-left .social-login-buttons-wrap .social-login-buttons-left,
.login-social-left .social-login-buttons-wrap .social-login-buttons-right,
.login-social-left .social-login-buttons-wrap .social-login-buttons-middle {
    padding: 10px 0;
    display: block;
    width: 100%;
    text-align: center;
}

.modal-error-login {
    margin-top: 5px;
    padding: 5px 10px;
    display: inline-block;
    color: #c32f2f;
    background-color: #fff7f7;
    border: 1px solid #c32f2f;
    border-radius: 2px;
}

.my-account-title {
    padding: 0 0 8px;
    font-size: 18px;
    overflow: hidden;
    background: #fff;
    border-bottom: 1px solid #e1e1e1;
}

.account-content-signup {
    margin: 35px 0 0;
    border-top: 1px solid #dadada;
}

.account-content {
    padding-top: 15px;
}

.account-content p {
    margin: 0;
    padding: 0 0 1em;
}

.account-content-nm {
    padding: 5px 0 15px;
    background: #fff;
    overflow: hidden;
}

.column-right-btn-wrap {
    padding-top: 10px;
}

.my-account-title a {
    color: #006699;
}

.login-fields-row {
    width: 50%;
}

#myaccount_nav {
    display: block;
}

.myaccount_nav_toggle {
    display: none;
}

ul.account-nav {
    margin: 0;
}

ul.account-nav li {
    position: relative;
}

ul.account-nav li a {
    padding: 13px 12px;
    font: 400 12px arial, sans-serif;
    color: #777;
    display: block;
    border-bottom: 1px solid #e1e1e1;
}

ul.account-nav li a img {
    padding: 0 7px 0 0;
}

ul.account-nav li a.active2:first-child, ul.account-nav li a.active:first-child {
    border-top: 0 solid #e1e1e1;
}

ul.account-nav li a:hover {
    margin: 0 0 0 0;
    border-bottom: 1px solid #e1e1e1;
    color: #006699;
    background: #fff;
}

ul.account-nav li a.active, ul.account-nav li a.active2 {
    margin: 0 0 0 0;
    border-bottom: 1px solid #e1e1e1;
    color: #006699;
    cursor: default;
    background: #fff;
    box-shadow: -5px 0 0 #0071a0;
}

.account-info-box-fields {
    margin-right: 15px;
    padding-top: 10px;
    float: left;
}

.account-info-gender {
    margin: 0 1% 10px 0;
    float: left;
    width: 19%;
}

.account-info-fname {
    margin: 0 1% 10px 0;
    float: left;
    width: 39%;
}

.account-info-lname {
    margin-bottom: 10px;
    float: left;
    width: 40%;
}

.account-info-password {
    margin-bottom: 10px;
    width: 100%;
}

.account-old-password, .account-new-password, .account-confirm-password {
    margin-bottom: 10px;
    width: 50%;
}

.account-info-month {
    margin-right: 1%;
    width: 19%;
    float: left;
}

.account-info-day {
    margin-right: 1%;
    width: 19%;
    float: left;
}

.account-info-year {
    width: 19%;
    float: left;
}

.account-info-email, .account-info-password {
    margin-bottom: 10px;
    width: 50%;
}






/* 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: #ec5300;
    border-radius: 4px;
    transition: all 0.2s;
    cursor: pointer;
}

.survey-thanks a:hover {
    background-color: #b94100;
}

.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: 40px;
    line-height: 48px;
    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: #ec5300;
    border-radius: 4px;
    transition: all 0.2s;
    cursor: pointer;
}

.survey-btn-wrap button:hover {
    background-color: #b94100;
}

.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: 32px;
        line-height: 40px;
    }

    .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;
    }

}




@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;
    }

    .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%;
    }

}





/* Download Assets Page */

.assets-title {
    margin: 0 auto 15px;
    padding: 20px 0;
    width: 70%;
    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: 70%;
    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: 70%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
}

.asset-color {
    margin-right: 15px;
    flex: 0 0 250px;
}

.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 {
    width: 100%;
    height: 65px;
    background-color: #2cb8e2;
}

.asset-color-yellow {
    width: 100%;
    height: 65px;
    background-color: #f8ca33;
}

.asset-color-orange {
    width: 100%;
    height: 65px;
    background-color: #ff6432;
}

.asset-color-grey {
    width: 100%;
    height: 65px;
    background-color: #3a3a3a;
}

.asset-color-ocean {
    width: 100%;
    height: 65px;
    background-color: #033c49;
}

.asset-color-morning {
    width: 100%;
    height: 65px;
    background-color: #ecf7fb;
}

.asset-color-silver {
    width: 100%;
    height: 65px;
    background-color: #f4f4f4;
}

.asset-color-dawn {
    width: 100%;
    height: 65px;
    background-color: #fcf2e3;
}

.asset-color-palm {
    width: 100%;
    height: 65px;
    background-color: #2bd78f;
}

.asset-color-berry {
    width: 100%;
    height: 65px;
    background-color: #d1463b;
}





@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;
    }

}




/* Reviews page */
.review-form-container {
    margin: 25px auto;
    width: 93%;
    max-width: 1200px;
    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: 10px;
}

.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: 0 4px 0 0;
}

button.review-form-btn {
    padding: 15px 35px;
    display: inline-block;
    color: white;
    font-size: 18px;
    font-weight: 600;
    background-color: #2cb8e2;
    border: 0;
    outline: none;
    border-radius: 4px;
    transition: all 0.3s;
    cursor: pointer;
}

button.review-form-btn:hover {
    background-color: #31ccfb;
}

.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: #2cb8e2;
    border-radius: 4px;
    transition: all 0.3s;
    cursor: pointer;
}

.review-back-btn:hover {
    background-color: #31ccfb;
    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%;
    }

}

/* disclaimer */
.hp-disclaimer {
    margin: 0 auto;
    padding: 0 0 25px;
    font-size: 11px;
    color: #999;
    max-width: 1024px;
}

/* linklist */
.hp-linklist-wrap {
    padding: 30px 0;
    width: 100%;
    background-color: #f6f6f6;
}

.hp-linklist-container {
    margin: 0 auto;
    padding: 0 15px;
    width: 75%;
    max-width: 1200px;
}

.hp-linklist-container>ul {
    display: flex;
    display: -webkit-flex;
}

.hp-linklist-container>ul>li {
    padding-bottom: 3px;
    flex: 1;
    text-align: left;
    vertical-align: top;
}

*:lang(fr) .hp-linklist-container>ul {
    flex-direction: column;
    -webkit-flex-direction: column;
}

*:lang(fr) .hp-linklist-container>ul>li {
    padding-bottom: 0;
    display: flex;
    display: -webkit-flex;
    justify-content: center;
    -webkit-justify-content: center;
}

.hp-linklist-container ul li ul li.footer-title {
    padding-bottom: 5px;
}

.hp-linklist-container ul li ul li.notitle-column {
    padding-top: 28px;
}

.hp-linklist-container ul li ul li {
    width: 100%;
}

*:lang(fr) .hp-linklist-container ul li ul {
    display: flex;
    display: -webkit-flex;
}

*:lang(fr) .hp-linklist-container ul li:first-child ul {
    margin-bottom: 10px;
}

*:lang(fr) .hp-linklist-container ul li ul li {
    margin-right: 15px;
    padding-bottom: 0;
    width: auto;
    flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
}

.hp-linklist-container ul li ul li a {
    color: #999;
    transition: all 0.2s;
}

.hp-linklist-container ul li ul li a:hover {
    color: #555;
}

/* social */
.hp-social-wrap {
    background-color: #2cb8e2;
}

.hp-social-container {
    margin: 0 auto;
    width: 65%;
}

.hp-social-container ul {
    padding: 25px 0;
    text-align: center;
}

.hp-social-container ul li {
    margin-right: -4px;
    display: inline-block;
    width: 10%;
}

.hp-social-container ul li a {
    font-size: 40px;
    color: #fff;
    transition: all 0.2s;
}

.hp-social-container ul li a:hover {
    color: #003348;
}


/* footer-logos */
.hp-footer-logos-wrap {
    background-color: #fff;
    overflow: hidden;
}

.hp-footer-logos-container {
    margin: 0 auto;
    padding: 20px 0;
    width: 33%;
    max-width: 1400px;
    display: table;
    color: #999;
}

.hp-footer-logos-cell {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

/* footer */

footer {
    padding: 15px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: #111;
    color: #999;
    border-top: 0 solid #dadada;
}

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

.footer-left {
    flex: 0 1 auto;
}

.footer-right {
    flex: 0 1 auto;
    text-align: right;
}

footer ul {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
}

footer ul li {
    padding: 0 10px;
    flex: 0 1 auto;
    color: #999;
}

footer ul li a {
    color: #999;
}

footer ul li a:hover {
    color: #FFF;
}




@media (max-width: 1200px) {

    .hp-linklist-container {
        width: 95%;
    }

}





@media (max-width: 1024px) {

    .hp-social-container ul li a {
        font-size: 28px;
    }

}
.not-found-container {
    margin: 0 auto;
    padding: 100px 0 150px;
    max-width: 400px;
    text-align: center;
}

.not-found-container .call-us-text {
    font-size: 1.125em;
    font-weight: 600;
    line-height: 1.2;
    color: #999;
}

.not-found-container .call-us {
    font-size: 1em;
    margin: 15px 0 20px 0;
}

.not-found-container .call-us-link {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
    padding: 10px;
    font-size: 1.875em;
    font-weight: 700;
}

.flip-board-wrap {
    margin: 0 0 25px;
    display: table;
    width: 100%;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 3px;
}

.flip-board-number {
    padding: 25px;
    display: table-cell;
    color: #f9f9f9;
    font-size: 150px;
    line-height: 100px;
    font-weight: 400;
    border-radius: 6px;
    vertical-align: middle;
    background: rgba(0,0,0,1);
    background: -moz-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(51,51,51,1) 51%, rgba(0,0,0,1) 51%, rgba(34,34,34,1) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(51,51,51,1) 51%, rgba(0,0,0,1) 51%, rgba(34,34,34,1) 100%);
    background: -o-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(51,51,51,1) 51%, rgba(0,0,0,1) 51%, rgba(34,34,34,1) 100%);
    background: -ms-linear-gradient(top, rgba(0,0,0,1) 0%, rgba(51,51,51,1) 51%, rgba(0,0,0,1) 51%, rgba(34,34,34,1) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(51,51,51,1) 51%, rgba(0,0,0,1) 51%, rgba(34,34,34,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#222222', GradientType=0 );
}









@media (max-width : 600px) {

    .not-found-container {
        margin: 0 auto;
        padding: 50px 2% 0;
    }

    .flip-board-number {
        font-size: 100px;
        line-height: 80px;
    }

}

@media (min-width : 1025px) {

    #myContent {
        display: block !important;
    }

}





@media (max-width : 1024px) {

    .idle-modal-phone {
        display: none;
    }

    .idle-modal-phone-mobile {
        padding-bottom: 3px;
        font-size: 24px;
        line-height: 30px;
        font-weight: 700;
        color: #0074a4;
        display: block;
    }

    html {
        -webkit-text-size-adjust: none;
        position: relative;
        min-height: 100%;
    }

    body {
        min-height: inherit;
    }

    html, body {
        height: auto !important;
    }

    .container-recent-search, .container-deal-alerts, .package-select-btn, .package-select-img, .package-bonus-text, .airline-name, .container-important-info2, .checkout-destination-title, .container-contact-info, .modal-inner-bottom, .container-secure-booking, .checkout-inner-right, .insurance-btn-block-left, .column-left-receipt, .flight-details-sub-duration, .takeoff-landing-title {
        display: none;
    }

    .modal-close-btn {
        top: -24px;
        right: -2px;
    }

    .img-responsive {
        margin: 0 0 20px;
        padding: 0 0 20px;
        background-image: url("https://www.flighthub.com/images/full-screen-banner.jpg");
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .orange-big-btn .fa, .button-select-fare .fa, .packages-os-select .fa {
        display: inline-block;
    }

    .container-content-checkout {
        margin: 5px auto 40px;
        padding: 0 0 20px;
    }

    .orange-big-btn.mobile-active, .button-select-fare.mobile-active, .packages-os-select.mobile-active {
        background: #a84f31 !important;
        box-shadow: inset 0 0 0 #fff !important;
        border: 0 solid #ff5200 !important;
    }

    .fare-alert-modal-title strong {
        display: block;
        font-weight: 400;
        font-size: 15px;
        color: #555;
    }

    /* new handholding msg (checkout) */
    .top-success-green{
        margin: 0 0 10px;
    }

    .top-success-left{
        padding: 10px 2px;
        width: 7%;
    }

    .top-success-right{
        padding: 10px;
        width: 93%;
        font-size: 12px;
    }

    .package-select-wrapper {
        position: relative;
    }

    .select-wrapper {
        width: 100%;
    }

    #fares-search-flexible {
        margin: 0 2%;
        width: 96%;
    }

    .calendar-icon{
        background: #fff !important;
    }

    .flex-title {
        margin-bottom: 0;
        padding: 5px 10px;
        color: #333;
        display: block;
        background: #fefcea;
        border-bottom: 0 solid #ddd;
    }

    .exp-container-price-right {
        padding-top: 10px;

    }

    /* MEMBERSHIP UPSELL PAGE */
    .container-membership-short {
        padding: 3% 2% 2%;
        width: 96%;
        background: none;
    }

    .membership-title-short {
        font-size: 37px;
        line-height: 47px;
    }

    .mem-subheading-wrap-short {
        margin: 20px 2% 0;
        width: 96%;
    }

    .mem-subheading-left-short {
        float: left;
        width: 40%;
        text-align: center;
    }

    .mem-subheading-middle-short {
        margin: 0 auto;
        padding: 10px 2%;
        float: left;
        width: 56%;
        border-right: 0 solid #cdcdcd;
        text-align: left;
    }

    .mem-subheading-right-short {
        clear: both;
        padding: 30px 0 0 0;
        float: none;
        width: 100%;
    }

    fieldset.mem-points-title {
        margin-top: 25px;
        border-top: 0 solid #cdcdcd;
    }

    fieldset.mem-points-title legend {
        padding: 2% 2%;
        font-size: 28px;
        line-height: 38px;
    }

    .membership-confirmation-number {
        padding: 2px 0 10px;
    }

    .upsell-feedback-message .feedback-success {
        margin: 20px auto 0;
        padding: 10px 15px 5px;
        background-image: none;
        background-color: #f0f0f0;
        border-radius: 0;
        box-shadow: none;
        color: #50913f;
        overflow: hidden;
        width: 100%;
        text-align: center;
        font-size: 23px;
        border: none;
        font-weight: 400;
    }

    .mem-points-wrap-short {
        margin: 35px 0;
        border-bottom: 1px solid #dcdcdc;
    }

    .mem-points-left {
        margin: 0 auto;
        padding: 0 2%;
        width: 96%;
        float: none;
    }

    .mem-points-right {
        margin: 0 auto;
        padding: 0 2%;
        width: 96%;
        float: none;
    }

    .mem-item {
        margin-bottom: 55px;
    }

    .mem-description {
        margin-left: 35px;
    }

    .mem-points-wrap {
        padding: 0 2%;
        margin-top: 350px;
    }

    .mem-points-title-wrap {
        overflow: hidden;
        background: url("https://www.flighthub.com/images/mem-divider.png") 120px 15px no-repeat;
    }

    .mem-points-title-left {
        padding: 0 15px 0 0;
        background: #f0f0f0;
        display: inline-block;
        font-size: 30px;
        line-height: 30px;
    }

    .mem-points-title-right {
        display: inline-block;
    }

    .mem-divider {
        background: #b4b4b4;
        border-bottom: 1px solid #fff;
        height: 1px;
        width: 100%;
    }

    .mem-feature-wrap {
        margin-bottom: 45px;
        overflow: hidden;
    }

    .mem-feature-left {
        padding: 15px 0 0 36px;
        float: none;
        width: 100%;
    }

    .mem-feature-right {
        display: none
    }

    .mem-feature-full {
        padding: 15px 0 0 36px;
        float: none;
        width: 100%;
    }

    .mem-elite-wrap {
        margin-top: 40px;
        overflow: hidden;
    }

    .mem-elite-left {
        padding-left: 36px;
        float: none;
        width: 100%;
    }

    .mem-elite-right {
        padding-left: 36px;
        float: none;
        width: 100%;
    }

    .mem-partner-wrap {
        margin-bottom: 25px;
        overflow: hidden;
    }

    .mem-partner-left {
        padding-top: 0;
        padding-left: 0 !important;
        float: none;
        width: 100%;
        text-align: center !important;
    }

    .mem-partner-right {
        padding-left: 0;
        padding-top: 8px;
        float: none;
        width: 100%;
        text-align: center;
    }

    .mem-buttons-wrap {
        margin: 0 2%;
    }

    .mem-buttons-left {
        padding-top: 25px;
    }

    a.mem-button-continue {
        padding: 6px 13px;
        font-size: 20px;
    }

    .mem-card-mobile {
        display: none;
    }

    .membership-phone-ext {
        margin-top: -20px;
    }

    /* Airlines */
    .section-footer, .section-partners {
        display: none;
    }

    #fares-search-top-flights-buttons{
        margin: 10px 0 0;
    }

    .mobile-alert-filter-left,
    .mobile-alert-filter-right{
        padding: 0 5px 5px;
        float: left;
        width: 50%;
    }

    .mobile-alert-filter-left {
        padding-left: 0;
    }

    .mobile-alert-filter-right {
        padding-right: 0;
    }

    .mobile-alert-filter-left-b {
        margin-right: 1%;
        padding: 0;
        float: left;
        width: 49.5%;
    }

    .mobile-alert-filter-left-b .flights-search-sidebar-wrap {
        margin: 0 auto;
        display: none;
    }

    .mobile-alert-filter-right-b {
        padding: 0;
        float: left;
        width: 49.5%;
    }

    #mobilealert {
        display: none;
    }

    a.mobile-fare-alert-btn{
        padding: 2% 0;
        color: #0072a3;
        display: block;
        text-align: center;
        background: #ffffff;
        background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f2f2f2));
        background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
        background: -ms-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
        background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 );
        border: 1px solid #d0d0d0;
        box-shadow: inset 0 0 2px #fff;
    }

    .alert-form-left-mobile{
        width: 83%;
        float: left;
    }

    .alert-form-left-mobile input{
        padding: 2%;
        width: 100%;
        height: 40px;
        border: 1px solid #cdcdcd;
        border-right: 1px solid #006699;
        -webkit-appearance: none;
        -moz-appearance: none;
        border-radius: 0;
    }

    .top-search-bar input{
        border-radius: 0;
        -webkit-appearance: none;
    }

    .select-flight-left {
        text-align: left;
        width: 65%;
    }

    .select-flight-right {
        width: 35%;
    }

    .alert-form-right-mobile{
        width: 17%;
        float: left;
    }

    a.alert-mobile-btn{
        padding: 9px 0;
        display: block;
        height: 40px;
        background: #006699;
        text-align: center;
        color: #fff;
        font-size: 12px;
        border: 1px solid #006699;
        text-transform: uppercase;
    }

    .alert-form-right-mobile .blue-reg-btn {
        padding: 9px 0 10px;
        display: block;
        background: #006699;
        text-align: center;
        font: normal 12px arial, sans-serif;
        color: #fff;
        border: 1px solid #006699;
        cursor: pointer;
        box-shadow: none;
    }

    .container-airfare-mobile {
        margin: 0 2% 2px;
        padding: 2%;
        background: #f9f9f9;
        display: none;
        text-align: center;
    }

    .transition-alert-form-mobile {
        margin: 0 2% 10px;
        padding: 0 2% 1%;
    }

    a.mobile-fare-alert-btn,
    .button-show-filters {
        margin: 0;
        padding: 8px 0;
        color: #0072a3;
        display: block;
        text-align: center;
        background: #ffffff;
        background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f2f2f2));
        background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
        background: -ms-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
        background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 );
        border: 1px solid #d0d0d0;
        box-shadow: inset 0 0 2px #fff;
    }

    a.button-show-filters-b {
        margin: 0;
        padding: 3px 0;
        color: #0072a3;
        display: block;
        text-align: center;
        background: #ffffff;
        background: -moz-linear-gradient(top, #ffffff 0%, #f2f2f2 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#f2f2f2));
        background: -webkit-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
        background: -ms-linear-gradient(top, #ffffff 0%,#f2f2f2 100%);
        background: linear-gradient(to bottom, #ffffff 0%,#f2f2f2 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f2f2f2',GradientType=0 );
        border: 1px solid #d0d0d0;
        box-shadow: inset 0 0 2px #fff;
    }

    #sidebar-content-loading {
        display: none;
    }

    .exp-wrapper {
        margin: 0 1%;
        width: 98%;
    }

    .bigtext {
        font-size: 18px;
    }

    .exp-container-flight-package li:hover a.exp-price {
        text-decoration: none;
    }

    .exp-container-flight-package li {
        padding: 0;
    }

    .exp-details {
        margin-top: -10px;
        margin-bottom: 10px;
        padding: 15px;
        background: #fff;
    }

    .select-flight-wrap {
        padding: 0 2% 8px;
        text-align: center;
    }

    .select-flight-text {
        text-transform: uppercase;
        font-size: 21px;
    }

    .chosen-package-wrap {
        margin: 15px 2% 10px;
        padding: 0 1% 10px;
        background: #f2f9fd;
        border: 1px solid #76b5d0;
    }

    .chosen-package-wrap .exp-package {
        margin-top: 10px;
    }

    .exp-chosen-airline {
        padding-top: 10px !important;
    }

    .codeshares {
        display: none;
    }

    .exp-codeshares {
        display: none;
    }

    a.phone-deal-btn,
    a.button-select-fare {
        margin-top: 5px;
        padding: 5px 5px 4px;
        font: bold 15px arial, sans-serif;
        color: #fff;
    }

    .underline-mobile {
        text-decoration: underline;
    }

    .ad-wrap {
        display: none;
    }

    .ad-wrap-footer {
        display: none;
    }

    .ad-wrap-sponsored {
        display: none;
    }

    /* homepage */
    .container-hp {
        margin: 0 auto 0;
        width: 100%;
    }

    .mobile-hide {
        display: none !important;
    }

    .home-inner-left {
        padding: 0;
        width: 100%;
        float: none;
        position: relative;
        overflow:visible;
    }

    .home-inner-right {
        display: none;
    }

    .container-home-search {
        margin: 20px auto 0;
        padding: 20px;
        width: 60%;
        border: 1px solid #e1e1e1;
        overflow: hidden;
        background: #fff;
        box-shadow: none;
    }

    .hp-boxes-wrap {
        display: none;
    }

    .home-search-from-left {
        float: left;
        width: 65%;
        border: 0;
    }

    .home-search-from-right {
        float: left;
        width: 33%;
    }

    .home-search-to-left {
        float: left;
        width: 65%;
    }

    .home-search-to-right {
        float: left;
        width: 33%;
    }

    a.home-search-btn {
        font: 400 16px helvetica, arial, sans-serif;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px;
    }

    .container-options-expand {
        background: #fff;
    }

    .input-text-box-home {
        margin: 0;
        padding: 8px 2%;
        width: 95%;
        font-size: 12px;
        border: 1px solid #dadada;
        border-radius: 2px;
        box-shadow: inset 0 0 0 #666;
        -webkit-appearance: none;
    }

    .input-text-box-home:focus {
        border: 1px solid #bbb;
        box-shadow: inset 0 0 0 #555;
    }

    .search-input-text-wrap {
        margin-bottom: 5px;
    }

    .search-input-text-wrap input {
        width: 100%;
    }

    .home-search-from-right input,
    .home-search-to-right input {
        width: 100%;
    }

    .input-calendar-box, .input-calendar-box-hotel {
        padding: 8px 4%;
        width: 100%;
        border: 1px solid #dadada;
        background-image: none !important;
        box-shadow: inset 0 0 0 #666;
        -webkit-appearance: none;
    }

    .input-calendar-box-home {
        padding: 8px 4%;
        width: 89%;
        border: 1px solid #dadada;
        background-image: none !important;
        box-shadow: inset 0 0 0 #666;
        -webkit-appearance: none;
    }

    /* passenger select */
    .mobile-pass-select{
        border: 1px solid #dadada;
        font-size: 12px;
        text-align: center;
        border-radius: 2px;
    }

    .passenger-select {
        width: 100%;
    }

    .mobile-pass-select-wrap{
        margin-right: 2%;
        padding-bottom: 5px;
        float: left;
        width: 48%;
    }

    .mobile-pass-select-wrap-last{
        margin-left: 2%;
        padding-bottom: 5px;
        float: left;
        width: 48%;
    }

    .mobile-pass-select-left{
        float: left;
        font-size: 16px;
        font-weight: bold;
        width: 20%;
        border-right: 1px solid #dadada;
        background: #f9f9f9;
        border-top-left-radius: 2px;
        border-bottom-left-radius: 2px;
    }

    .mobile-pass-select-middle{
        padding: 6px;
        float: left;
        width: 60%;
        font-size: 11px;
    }

    .mobile-pass-select-right{
        float: right;
        font-size: 16px;
        font-weight: bold;
        width: 20%;
        border-left: 1px solid #dadada;
        background: #f9f9f9;
        border-top-right-radius: 2px;
        border-bottom-right-radius: 2px;
    }

    .mobile-pass-select-left a,.mobile-pass-select-right a{
        padding: 6px;
        color: #444;
        display: block;
    }

    .container-transition {
        margin: 20px auto;
        padding: 10px 2%;
        border: 0;
        text-align: center;
        font-size: 16px;
        line-height: normal;
        width: 90%;
        top: 50px;
        left: 0;
        background-color: #fff;
        position: relative;
    }

    .room_element {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
    }

    .child-age-right .field-wrap {
        margin-bottom: 8px;
    }

    .popular-destinations-content {
        padding-top: 8px;
        padding-left: 2%;
        width: 78%;
    }

    .popular-destinations-paging {
        margin: 0 auto;
        overflow: hidden;
        width: 200px;
        padding-left: 0;
    }

    .ac2u-select {
        display: none;
    }

    /* results page */

    .package-date-wrap {
        display: block;
    }

    ul.exp-container-flight-package {
        min-height: 0;
        margin: 15px 0 0;
    }

    .icon-package-arrow .fa-lg {
        font-size: 1em;
        vertical-align: 0;
    }

    /* progress bars */
    .container-progress-bar {
        width: 96%;
        border: 0;
        float: none;
    }

    .progress-bar-inner {
        padding: 1px;
        background: transparent;
        width: 100%;
    }

    .progress-bar {
        margin: 0;
    }

    .container-package-loading {
        background: transparent;
        border: 0;
    }
    /* end progress bars */

    .container-sort {
        margin: 0 auto;
        width: 96%;
        padding: 10px 1% 15px;
    }

    .filter-title {
        padding: 8px 2%;
    }

    .stops-filter li .only-stops,
    .airlines-filter li .filters-inline-only,
    .origin_airports li .only-origin-airport,
    .layover_airports li .only-layover-airport,
    .destination_airports li .only-destination-airport {
        visibility: visible;
    }

    .container-airfare {
        display: none;
    }

    /* package */
    ul.container-flight-package {
        margin-bottom: 7px;
        padding: 10px 2%;
        position: relative;
        border: 0 solid #ddd;
        background: #fff;
        width: 96%;
    }

    ul.container-flight-package li:hover {
        background: #fff;
    }

    .container-flight-results {
        padding-right: 1%;
        padding-left: 1%;
        width: 97%;
    }

    .mobile-details {
        margin: 10px 8px 0 0;
        padding: 5px 5px 4px;
        text-align: center;
        width: 100%;
        height: auto;
        color: #fff;
        font-size: 15px;
        display: block;
        font-weight: bold;
        background: #ff712d;
        background: -moz-linear-gradient(top, #ff712d 0%, #ff5200 100%);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff712d), color-stop(100%,#ff5200));
        background: -webkit-linear-gradient(top, #ff712d 0%,#ff5200 100%);
        background: -ms-linear-gradient(top, #ff712d 0%,#ff5200 100%);
        background: linear-gradient(to bottom, #ff712d 0%,#ff5200 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff712d', endColorstr='#ff5200',GradientType=0 );
        box-shadow: inset 0 0 2px #fff;
        border: 1px solid #ff5200;
        cursor: pointer;
        border-radius: 5px;
    }

    .mobile-details:hover {
        color: #fff;
    }

    .inbound-outbound-title-mobile {
        padding: 3px 5px;
        background: #f3faff;
        border: 1px solid #e1e1e1;
    }

    table.details-mobile-airline {
        border-bottom:1px dotted #e1e1e1;
    }

    table.details-mobile-airline td {
        padding: 10px 0;
    }

    .package-row-top {
        margin-left: 0;
        width: 100%;
        height: auto;
        overflow: hidden;
        position: relative;
    }

    .package-row-middle {
        padding: 0;
        border: 0 solid #e1e1e1;
        overflow: hidden;
        position: relative;
        min-height: 52px;
    }

    .package-price-box {
        padding-top: 30px;
        height: auto;
        border-top: 0 solid #e1e1e1;
        width: 20%;
        font-size: 28px;
        color: #4e7720;
        float: left;
        background: transparent;
    }

    .price-box-bottom {
        border-bottom: 0 solid #e1e1e1;
        background: #fff;
        float: none;
        height: auto;
        top: 32px;
        text-align: center;
        width: 22%;
    }

    .mobile-seats {
        position: absolute;
        top: 13px;
        right: 0;
        font-size: 11px;
        color: #ff0000;
    }

    .sub-price-txt {
        margin: 0;
        padding: 0;
    }

    .package-row2-left {
        width: 15%;
    }

    .package-row2-right {
        padding: 5px 0 0;
        width: 85%;
    }

    /* search - compact */
    .search-wrap {
        margin: 15px 2%;
        padding: 10px;
        width: 96%;
    }

    .hotel_search_fields_bar {
        width: 100%;
    }

    .compact-form-hotel-left {
        width: 75%;
    }

    .compact-form-hotel-right {
        width: 25%;
    }

    html[lang="fr"] .compact-form-hotel-left {
        width: 75%;
    }

    html[lang="fr"] .compact-form-hotel-right {
        width: 25%;
    }


    .add-edit-rooms {
        display: none;
        width: 0;
    }

    .compact-form-left{
        margin-right: 1%;
        width: 81%;
    }

    .compact-form-right{
        width: 18%;
    }

    .search-compact-from{
        width: 29%;
    }

    .search-compact-to{
        width: 29%;
    }

    .search-compact-date-from{
        width: 16%;
    }

    .search-compact-date-to{
        width: 16%;
    }

    .more-options{
        display: none;
    }

    .compact-search-btn{
        width: 100%;
    }

    .compact-search-btn a{
        width: 100%;
        text-align: center;
    }

    .container-flight-package li {
        border-top: 0;
    }

    .container-flight-package li:last-child {
        border-bottom: 0;
    }

    .cabin-mobile {
        margin: 0 0 0;
        background: transparent;
        border-top: 1px dotted #e1e1e1;
        border-bottom: 0 dotted #e1e1e1;
        text-align: left;
        font-size: 11px;
        color: #999;
    }

    /* insurance page */
    .insurance-banner {
        display: none;
    }

    .insurance-header-wrap2 {
        margin: 0 2%;
        padding-bottom: 2%;
        width: 96%;
    }

    .insurance-header-left2 {
        margin: 10px 0 0;
        float: none;
        width: 100%;
        background: #fff;
        border: 0;
    }

    .insurance-header-right2 {
        margin: 5px 0 0 0;
        padding: 2%;
        color: #444;
        width: 100%;
        border: 0;
        box-shadow: none;
    }

    ul.insurance-nav li a {
        padding: 8px 0;
        text-align: center;
    }

    ul.insurance-nav li a.active:first-child {
        border-top: 0 solid #e1e1e1;
    }

    ul.insurance-nav li a:hover {
        margin: 0 0 0 0;
        box-shadow: 0 0 0 #0071a0;
        border-bottom: 1px solid #e1e1e1;
    }

    ul.insurance-nav li a.active {
        margin: 0 0 0 0;
        box-shadow: 0 0 0 #0071a0;
        border-bottom: 1px solid #e1e1e1;
        background: #0095d4;
        color: #fff;
    }

    .mobile-table-container {
        width: 100%;
        overflow-x: auto;
    }

    .insurance-package-text-btn {
        height: auto;
    }

    .insurance-package-text-left {
        width: 100%;
        float: none;
    }

    .insurance-package-btn-right {
        margin-top: 25px;
        width: 100%;
        float: none;
        text-align: left;
        height: 40px;
    }

    table.manulife-plans th {
        text-align:left;
    }

    /* flight details modal */
    .seat-count {
        display: none;
    }

    #myContentForm {
        margin-bottom: 10px;
        padding: 15px;
        background-color: #f9f9f9;
        border: 1px solid #dadada;
    }

    #myContent, #myContentForm {
        display: none;
    }

    .mobile-sidebar-search-form-wrap {
        margin: 0 auto;
    }

    .flights-search-sidebar-wrap, .trips-wrap-sidebar {
        margin: 0 auto !important;
        max-width: 500px;
    }

    .fare-alert-modal-wrap {
        margin: 0 auto;
        max-width: 550px;
    }

    .flights-search-sidebar-wrap .seg0_date_wrap,
    .flights-search-sidebar-wrap .seg1_date_wrap {
        height: auto;
        overflow: visible;
    }

    .hp-search-city-full {
        margin: 0 0 5px 0;
    }

    .ss-wrap .hp-search-date-left {
        margin: 0 1% 10px 0;
    }

    .ss-wrap .search-button-wrap a {
        padding: 10px;
        display: block;
        font-size: 15px;
        font-weight: 700;
        background-color: #ECECEC;
        color: #7d7d7d;
        text-align: center;
        border-radius: 2px;
        border-bottom: 2px solid #ccc;
    }

    .ss-wrap input {
        margin-bottom: 0;
    }

    .ss-wrap .seg0 input.search-calendar {
        margin-top: 0;
    }

    .ss-wrap .seg1 input.search-calendar,
    .ss-wrap .seg2 input.search-calendar,
    .ss-wrap .seg3 input.search-calendar,
    .ss-wrap .seg4 input.search-calendar {
        margin-top: 5px;
    }

    .mobile-sidebar-search-form-wrap .trips-wrap-sidebar ul li a.active {
        background-color: #fff;
    }

    .mobile-sidebar-search-form-wrap .ss-wrap {
        background-color: #fff;
    }

    /* checkout */
    .container-content {
        margin: 10px auto 0;
        padding: 0 0 10px;
        width: 100%;
        overflow: hidden;
    }

    .passenger-info-list-indent-row {
        margin-left: 0;
    }

    .box-checkout-title {
        padding: 2%;
    }

    .box-checkout-title-cards {
        margin-top: -1%;
        position: relative;
        top: auto;
        right: auto;
        float: right;
    }

    .airfare-details-price-total {
        padding: 13px 0 2%;
    }

    .checkout-mobile-topmargin {
        margin-top: 15px;
    }

    .ff-and-meals {
        margin-left: 0;
    }

    .insurance-btn-block-right {
        margin: 5px 1% 0 0;
        padding: 10px 1% 10px 9%;
        float: left;
        width: 22%;
        text-align: left;
        min-height: 120px;
        position: relative;
    }

    .container-insurance-decline {
        margin: 8px 0 0 0;
        padding: 10px 1% 10px 9%;
        float: none;
        width: 88%;
        text-align: left;
        min-height: 0;
        position: relative;
    }

    .insurance-decline-middle {
        width: 100%;
        padding: 0;
        float: left;
    }

    .container-insurance-decline input {
        position: absolute;
        top: 33px;
        left: 20px;
    }

    .insurance-decline-right {
        margin: 0;
        float: left;
        text-align: left;
        width: 100%;
    }

    ul.guarantee-list {
        padding: 0;
        margin-left: 2.5%;
        margin-right: 2.5%;
        width: 95%;
    }

    .container-airfare-details-content {
        margin-left: 2.5%;
        margin-right: 2.5%;
        width: 95%;
        margin-bottom: 0;
    }

    .insurance-btn-block-right input {
        position: absolute;
        top: 60px;
        left: 20px;
    }

    .checkout-responsive {
        width: 14%;
        margin-right: 1%;
        float: left;
    }

    .select-first-text {
        padding: 6px 23px 6px 13px;
    }

    .checout-responsive-ext-title {
        width: 2%;
        text-align: right;
        padding-right: 1%;
    }

    .checkout-responsive-full-width {
        width: 100%;
    }

    .checkout-responsive-safe-info {
        padding-top: 0;
        width: 100%;
    }

    ul.flight-details-info-mobile li {
        padding: 0 0 3px;
    }

    .flight-date {
        width: 25%;
        float: left;
    }

    .airport-code {
        width: 15%;
    }

    .airport-location {
        width: 60%;
        float: left;
    }

    .responsive-billing-country {
        width: 100%;
    }

    ul.review-details-list {
        margin: 0 0 15px;
        width: 100%;
    }

    .responsive-special-request {
        padding-right: 1%;
        padding-left: 1%;
        width: 97%;
    }

    select.seatmap-select {
        padding: 1px;
        width: 80px;
        border: 1px solid #aaa;
        border-radius: 2px;
    }

    table.seatmap-table {
        margin: 0 0 0 0;
        border-collapse: collapse;
        width: 100%;
    }

    .container-seatmap-info {
        display: none;
    }

    .container-create-account {
        margin: 15px 0 0 0;
        padding: 2%;
        width: 100%;
        border: 1px solid #e1e1e1;
        background: #f7f7f7;
    }

    .ins-top-wrap {
        overflow: hidden;
    }

    .ins-top-left {
        float: left;
    }

    .ins-top-right {
        border-left: 1px solid #dedede;
        margin-left: 20px;
        padding-left: 15px;
        float: left;
        line-height: 24px;
    }

    ul.review-details-sub-list {
        margin-left: 0;
    }

    .fixed-summary {
        position: relative;
        margin-left: 0;
        width: 100%;
    }

    .passenger-info-title {
        padding: 8px 2.5%;
        width: 95%;
        border: 0 solid #e1e1e1;
        background: #0074a4;
        color: #fff;
        border-bottom: 3px solid #74d6ff;
        border-top: 3px solid #74d6ff;
    }

    .container-airfare-details {
        border: 0 solid #e1e1e1;
    }

    .airfare-details-title {
        padding: 8px 2.5%;
        width: 95%;
        background: #0074a4;
        color: #fff;
        border-bottom: 3px solid #74d6ff;
        border-top: 3px solid #74d6ff;
    }

    .passenger-details-footer {
        padding: 10px 3% 10px 3%;
        border-top: 1px solid #e1e1e1;
        border-bottom: 1px solid #e1e1e1;
        background: #f7f7f7;
        overflow: hidden;
    }

    .billing-title {
        padding-top: 0;
    }

    /* receipt page */
    .column-right-receipt {
        margin: 0 2%;
        padding: 10px 0;
        border: 0;
        min-height: 0;
        width: 96%;
        box-shadow: none;
    }

    .details-top-left {
        height: auto;
    }

    .details-top-right {
        margin-left: 0;
    }

    table.data-table td, table.data-table th {
        padding: 5px 5px;
    }

    .receipt-travellers-content, .receipt-itinerary {
        padding: 10px 1%;
        width: 100%;
    }

    .receipt-payment, .receipt-title-blue, .receipt-title-yellow, .receipt-title-warning, .receipt-title-orange, .receipt-title-red {
        padding: 8px 1%;
        width: 100%;
    }

    ul.flight-details-info {
        margin-left: 0;
        margin-bottom: 10px;
        float: left;
        background: #f9f9f9;
        font-size: 12px;
        padding: 10px 1% 0 1%;
        width: 71%;
    }

    .container-flight-details-block {
        margin: 0 0 0 0;
        overflow: hidden;
        background: #fff;
        border-right: 0 solid #e1e1e1;
        border-left: 0 solid #e1e1e1;
    }

    .container-flight-details-block {
        margin-top: 5px;
        font-size: 11px;
    }

    .cabin {
        margin: 5px 0;
        text-align: center;
        background: #fff;
        border: 1px solid #e1e1e1;
    }

    table.travellers-receipt th, table.travellers-receipt td {
        padding-left: 1%;
        padding-right: 1%;
    }

    /* faq */

    .faq-title {
        padding: 2%;
        font-size: 15px;
    }

    ul.faq-default-list {
        margin: 0 0 0 0;
        width: 100%;
    }

    /* my account */

    .columns-left {
        margin-bottom: 25px;
        display: block;
        min-width: 0;
    }

    .columns-right {
        padding-left: 0;
        display: block;
        min-height: 0;
    }

    .my-account-title {
        padding: 2%;
        font-size: 15px;
    }

    #myaccount_nav {
        display: none;
    }

    .myaccount_nav_toggle {
        display: block;
    }

    .nav-toggle-wrap {
        display: table;
        width: 100%;
        background-color: #f9f9f9;
        font-size: 14px;
        color: #999;
        border-bottom: 2px solid #ddd;
    }

    .nav-toggle-left {
        padding: 8px;
        color: #666;
        display: table-cell;
        width: 80%;
        vertical-align: middle;
    }

    .nav-toggle-right {
        padding: 8px;
        display: table-cell;
        width: 20%;
        vertical-align: middle;
        text-align: right;
    }

    .nav-toggle-left .fa {
        margin-right: 5px;
    }

    ul.account-nav li a.active, ul.account-nav li a.active2 {
        box-shadow: 0 0 0 #0071a0;
    }

    ul.account-nav li a.active, ul.account-nav li:last-child a.active2 {
        border-bottom: 1px solid #dadada;
    }

    ul.account-nav {
        border-top: 1px solid #dadada;
    }

    .account-wrap {
        padding: 15px 0 25px;
    }

    .account-content {
        padding: 15px 0;
    }

    .responsive-home-popular-destinations {
        width: 100% !important;
    }

    .container-search-flights-btn, .container-home-search-options {
        padding: 0;
        width: 100%;
    }

    .container-home-search-options {
        padding-top: 10px;
    }

    .home-search-from-hotel {
        float: none;
        width: 100%;
    }

    .home-search-btn img {
        display: none;
    }

    .container-home-search-btn {
        margin: 0 auto 15px;
        width: 100%;
        overflow: hidden;
    }

    .container-home-search-cabin {
        margin-bottom: 10px;
        width: 100%;
        /*overflow: hidden;*/
    }

    .hotel-search-calendar-left {
        margin-right:1%;
        width: 49%;
    }

    .home .select-box,
    .xtox-home-search .select-box {
        width: auto;
    }

    .hotel-search-calendar-right {
        margin-left: 0;
        width: 50%;
        float: left;
    }

    .child-age-select {
        margin-bottom: 2px;
        width: 50%;
    }

    .child-age-left {
        padding-left: 0;
        padding-top: 5px;
    }

    .buttons-add-remove {
        margin: 0 auto 10px;
        width: auto;
        text-align: left;
    }

    .recent-dropdown {
        width: 100%;
    }

    .container-results-hotels {
        margin: 10px 2% 0;
        padding: 0;
        width: 96%;
    }

    .container-results-nav {
        padding: 0 0 0 2%;
        width: 96%;
        overflow: hidden;
    }

    .sb-field-wrap {
        margin: 0;
        padding: 0;
        overflow: hidden;
    }

    .sb-field-right {
        float: right;
    }

    .mobile-slider-wrap {
        width: 100%;
    }

    .container-many-flights {
        margin-top: 5px;
        margin-bottom: 15px;
        padding: 5px 0;
        border-top: 1px solid #e1e1e1;
        border-bottom: 1px solid #e1e1e1;
        border-right: 0;
        border-left: 0;
        background: #f7f7f7;
    }

    .modal-inner-left {
        width: 676px;
        float: none;
        overflow: hidden;
        margin-right: 0;
    }

    .checkout-inner-left {
        margin:0 2%;
        width: 96%;
        float: none;
        overflow: hidden;
    }

    .container-insurance-btn {
        margin-bottom: 5px;
        width: 100%;
        overflow: hidden;
    }

    .insurance-table {
        margin-bottom: 0;
        display: none;
    }

    .insurance-decline-left {
        float: none;
    }

    ul.flight-details-info li, ul.flight-details-info li:first-child, ul.flight-details-info li:last-child {
        padding: 0 0 0 0;
    }

    .airport-location {
        width: auto;
        float: left;
    }

    .inbound-outbound-date {
        width: 100%;
        float: none;
    }

    .inbound-outbound-duration {
        width: 100%;
        float: none;
        text-align: center;
    }

    .container-modal {
        padding: 2%;
    }

    .container-modal .search-modal-segment-right {
        width: 30%;
        height: auto;
    }

    .passenger-info-box-fields-nopadding {
        margin-left: 0;
        float: none;
        font-size: 12px;
    }
    .account-receipt-hotel-img {
        float: none;
        width: 100%;
    }

    .account-receipt-hotel-info {
        margin-left: 0;
    }

    .column-right-title {
        margin: 20px 0 0 0;
    }

    .faq-search-wrap {
        padding: 10px 0 20px 0;
    }

    .input-text-box-faq {
        width: 63%;
    }

    .airline-wrap {
        margin: -398px auto;
        width: 100%;
        overflow: hidden;
    }

    .airline-right {
        padding: 20px 2%;
        background: #fff;
        margin-top: 271px;
        width: 95%;
    }

    .airline-master-title {
        text-align: center;
        color: #fff;
        font-size: 48px;
        padding: 10px 0 14px;
        width: 100%;
    }

    .airline-push {
        height: 398px;
    }

    .insurance-banner {
        display: none;
    }

    .insurance-package-text-btn {
        height: auto;
    }

    .insurance-package-text-left {
        width: 100%;
        float: none;
    }

    .insurance-package-btn-right {
        margin-top: 25px;
        width: 100%;
        float: none;
        text-align: left;
        height: 40px;
    }

    .column-right-content {
        margin: 0 0 15px;
        overflow: hidden;
    }

    .container-insurance {
        padding: 0 2%;
        width: 96%;
    }

    .insurance-title-big {
        font: 700 24px/24px helvetica, arial, sans-serif;
        color: #222;
    }

    .insurance-title-small {
        font: 700 18px/18px helvetica, arial, sans-serif;
        color: #222;
    }

    .insurance-left {
        float: none;
        width: 100%;
    }

    .insurance-right {
        margin-left: 0;
    }

    .insurance-title-email {
        margin-top: 45px;
        padding: 10px 0;
    }

    .plan-expire {
        padding: 15px 0;
        width: 100%;
    }

    .ins-badge {
        display: none;
    }

    .plan-name-left {
        float: none;
    }

    .plan-name-right {
        padding-top: 0;
        float: none;
    }

    a.button-white {
        margin-top: 10px;
        box-shadow: 0 0 0 #333;
    }

    .plan-desc-yellow {
        padding-top: 0;
        border-top: 0 solid #ffbd68;
    }

    .plan-desc-orange {
        padding-top: 0;
        border-top: 0 solid #eb8e62;
    }

    .ins-plan-blue {
        background: #006590;
        height: auto;
    }

    .ins-plan-yellow {
        background: #ff9000;
        height: auto;
    }

    .ins-plan-blue, .ins-plan-yellow, .ins-plan-orange {
        padding: 15px 2%;
        width: 96%;
        line-height: 26px;
    }

    .ins-plan-orange {
        background: #eb4c00;
        height: auto;
    }

    .action-bar-left {
        padding-top: 20px;
        float: none;
        text-align: center;
    }

    .action-bar-right {
        padding-top: 17px;
        float: none;
        text-align: center;
    }

    .ins-right-title-left {
        padding-top: 0;
        float: left;
        max-width: 180px;
    }

    .hotel-inner-left {
        margin: 10px auto;
        padding: 2%;
        width: auto;
        float: none;
        background: #fff;
        border: 1px solid #cdcdcd;
        max-width: 300px;
    }

    .hotel-inner-right {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
        padding: 10px 0;
    }

    .hotel-packages {
        padding: 10px 0 20px;
        background: transparent;
    }

    #hotelfilters {
        display:none;
    }

    .info-container {
        margin: 0 0 10px;
        padding: 3px 0;
    }

    .sort-container {
        padding: 0;
        display: inline-block;
        background: transparent;
        width: 100%;
    }

    .sort-container > a.sorting {
        margin-left: 0 !important;
    }

    a.sorting {
        margin-left: 0;
        padding: 7px 0;
        border-right: 0 solid #fff;
        text-align: center;
        width: 25%
    }

    .sort-left {
        display: none;
    }

    .hotel-alert-container {
        margin: 0;
        padding: 3px 0 2px;
        background: #fff2eb;
        border-top: 1px solid #f7d5c5;
        border-right: 1px solid #f7d5c5;
        border-left: 1px solid #f7d5c5;
        color: #ec5300;
        display: block;
        float: none;
        font-size: 11px;
        text-align: center;
    }

    .hotel-result-wrap {
        margin: 0 0 10px 0;
        overflow: hidden;
        border: 1px solid #ccc;
        background: #f9f9f9;
        cursor: pointer;
        box-shadow: 0 0 0 #aaa;
        position: relative;
    }

    .hotel-result-wrap:hover {
        background: #fff;
        box-shadow: 0 0 0 #aaa;
    }

    .hotel-result-photo-left {
        float: left;
        width: 160px;
        margin-right: 1.6%;
    }

    .hotel-result-photo-right {
        margin-left: 0;
        margin-top: 0;
        width: 76.7%;
    }

    .hotel-result-left {
        padding: 10px 1.6% 5px 1.6%;
        float: none;
        width: 96.2%;
        border-right: 0 solid #ccc;
    }

    .hotel-result-right {
        margin-left: 0;
        padding: 0 0 0 0;
        position: static;
        text-align: left;
        border-bottom: 0 solid #ccc;
        background: #fff;
        min-height: 0;
    }

    .room-price {
        margin-top: 0;
        text-align: right;
        float: none;
        font: normal 40px/30px arial, sans-serif;
        position: absolute;
        top: 7px;
        right: 10px;
    }

    .original-price {
        padding: 0 0 0 0;
        color: #999;
        text-decoration: line-through;
        float: none;
        position: absolute;
        top: 46px;
        right: 66px;
    }

    .free-cancellation {
        position: absolute;
        top: 80px;
        right: 10px;
        font-size: 11px;
    }

    input.hotel-name-contains {
        padding: 5px;
        border: 1px solid #ccc;
        background: #fff;
        border-radius: 3px;
        width: 200px;
        vertical-align: middle;
    }

    input.search-calendar {
        background-image: none !important;
    }

    .rooms-left-selectroom {
        margin: 5px 15px 0 0;
        padding: 0 0;
        background: #fff;
        color: #d53535;
        font-size: 12px;
        text-align: right;
    }

    .rooms-left-arrow {
        display: none;
    }

    /* selectroom.php */
    .hotel-back-search {
        display: none;
    }

    .hotel-name {
        display: block;
    }

    .top-price {
        display: none;
    }

    .hotel-top {
        padding: 0 2%;
        border-top: 0 solid #ddd;
        border-bottom: 0 solid #ddd;
    }

    .hotel-photos-container {
        padding:0 2%;
        width: 100%;
        height: auto;
    }

    .hotel-photos-container img {
        max-width: 95%;
        max-height: 205px;
    }

    .hotel-img-container {
        float: none;
        width: 100%;
        height: auto;
        min-height: 215px;
        border: 0 solid #ccc;
        background: transparent;
    }

    .thumbs-container {
        margin-left: 10px;
        margin-top: 5px;
        float: none;
        width: 96%;
    }

    .thumbs-container ul li:nth-child(6n) {
        margin: 0 7px 2px 0;
        padding: 0;
        float: left;
    }

    .hotel-amenities-wrap {
        margin-bottom: 0;
        padding: 10px 2% 0;
        background: #fff;
        border: 1px solid #ddd;
    }

    .map-info-left {
        float: none;
        width: 100%;
    }

    .map-info-left img {
        max-width: 100%;
    }

    .map-info-right {
        margin-left: 0;
    }

    .room-select-wrap {
        margin-top: 10px;
        padding-bottom: 10px;
    }

    .hotel-desc-left {
        padding: 0 2% 15px;
        width: 100%;
    }

    .room-select-left {
        padding: 10px;
        float: left;
        width: 70%;
    }

    .room-select-right {
        margin-left: 0;
        padding: 0;
        max-height: 400px;
        width: 30%;
        float: right;
        text-align: right;
        overflow: hidden;
    }

    .top-price-book-room {
        margin-top: 10px;
        overflow: hidden;
        width: 200px;
        float: right;
    }

    .amenities-prices-wrap {
        width: 100%;
    }

    .amenities-prices-left {
        width: auto;
        float: none;
    }

    .amenities-prices-right {
        margin-left: 0;
    }

    .room-name-right {
        margin-top: 5px;
        float: none;
    }

    .hotel-map {
        border: 0 solid #999;
    }

    .hotel-tabs ul li a {
        padding: 10px 5px;
        display: block;
        background: #f1f1f1;
        font: bold 12px/16px arial, sans-serif;
    }

    .hotel-tabs ul li a.active {
        padding: 10px 5px;
        display: block;
        background: #fff;
        font: bold 12px/18px arial, sans-serif;
    }

    textarea.hotel-request {
        margin-top: 10px;
        padding: 5px;
        border: 1px solid #ccc;
        border-radius: 3px;
        width: 259px;
        height: 80px;
    }

    a.orange-reg-btn {
        display: inline-block;
    }

    .mobile-float {
        display: inline-block !important;
    }

    /* search result */
    .exp-container-flight-package-left table.exp-package {
        margin-top: 0;
    }

    table.exp-package .stops-cell,
    table.exp-package .flight-duration {
        width: 135px;
    }

    .date-range-container {
        display: none;
    }

    .tablet-show {
        display: inline-block !important;
    }

    .tablet-show.block {
        display: block !important;
    }

    .orange-big-btn{
        display: inline-block;
    }

    /* share modal */
    .share-form input, .share-form textarea{
        padding: 1%;
    }

    a.share-button {
        padding: 10px 25px;
        display: inline-block;
    }

    .flex-package .button-select-fare {
        display: none;
    }

    body.one-step-alt .flex-package .button-select-fare {
        display: block;
    }

    .filter-content li {
        position: relative;
    }

    .modify-search-wrap {
        display: inline-block;
    }

    a.button-show-filters-b {
        padding: 3px 0;
        font-size: 12px;
    }

    .modal-close-btn {
        position: absolute;
        top: -23px;
        right: -1px;
        z-index: 1;
    }

    .flex-tag {
        margin: 0;
    }

    .column-sidebar-wrap {
        border-top: 1px solid #dadada;
    }

    .hp-linklist-wrap {
         padding: 25px 0;
     }

    .hp-linklist-container>ul>li {
        margin-right: 0;
        margin-bottom: 15px;
        display: block;
        width: 100%;
    }

    .hp-linklist-container ul li ul li {
        padding-right: 30px;
        width: auto;
        float: left;
    }

    .hp-linklist-container>ul>li:nth-child(2) {
        margin-right: 0;
        width: 100%;
    }

    .hp-linklist-container>ul>li:nth-child(3) {
        margin-right: 0;
        width: 100%;
    }

    .hp-linklist-container>ul>li:last-child {
        margin-right: 0;
        width: 100%;
    }

    .hp-linklist-container ul li ul.hp-linklist-wide li {
        width: 25%;
    }

    .hp-footer-logos-container {
        margin: 0 auto;
        width: 55%;
    }

}









@media (max-width : 980px) {

    footer {
        padding: 10px;
        background-color: #f9f9f9;
        border-top: 1px solid #dadada;
    }

    .footer-wrap {
        flex-direction: column;
        align-items: flex-start;
        font-size: 11px;
        line-height: 16px;
    }

    .footer-left {
        text-align: left;
    }

    .footer-right {
        text-align: center;
    }

    .footer-link-mobile-hide {
        display: none;
    }

    footer ul {
        flex-direction: row;
    }

    footer ul li {
        padding: 3px 0 0;
        text-align: left;
    }

    footer ul li a:hover {
        color: #000;
    }

    .topbar-inner {
        padding: 0 15px;
        width: 100%;
    }

    .topbar-text img {
        display: none;
    }

    .topbar-text {
        padding-bottom: 10px;
        font-size: 18px;
        line-height: 22px;
        display: block;
    }

    .topbar-button {
        display: block;
        min-width: 0;
        text-align: center;
    }

    .topbar-button a {
        padding: 6px 12px;
        display: inline-block;
        min-width: 0;
        font-size: 16px;
        font-weight: 700;
    }

}









@media (max-width : 767px) {

    body {
        margin: 0 0 62px;
    }

    .head-wrap {
        box-shadow: 0 0 0 #666;
        background: #fff;
        height: auto;
    }

    .container-deal-alerts, .search-wrap, .package-select-btn, .package-select-img, .package-bonus-text, .airline-name, .container-important-info2, .checkout-destination-title, .container-contact-info, .modal-inner-bottom, .container-secure-booking, .checkout-inner-right, .insurance-btn-block-left, .flight-details-sub-duration, .takeoff-landing-title {
        display: none;
    }

    .section-features{
        display: none;
    }

    .mobile-alert-filter-wrap{
        margin: 0 0 5px;
        width: 100%;
    }

    #fares-search-flexible {
        margin: 0;
        width: 100%;
    }

    .tag:before {
        display: none;
    }

    .topbar-text {
        font-size: 15px;
        line-height: 20px;
    }

    .topbar-button a {
        padding: 4px 10px;
        font-size: 14px;
    }

    /* MEMBERSHIP UPSELL PAGE */
    .mem-subheading-left-short {
        float: none;
        width: 100%;
        text-align: center;
    }

    .mem-subheading-middle-short {
        margin: 0 auto;
        padding: 10px 2%;
        float: none;
        width: 96%;
        border-right: 0 solid #cdcdcd;
        text-align: center;
    }

    .mem-subheading-right-short {
        padding: 30px 0 0 0;
        float: none;
        width: 100%;
    }

    fieldset.mem-points-title {
        margin-top: 45px;
        border-top: 0 solid #cdcdcd;
    }

    .membership-confirmation-number {
        margin: 0 auto;
        padding: 2px 0 10px;
        text-align: center;
        font-size: 15px;
        font-weight: 400;
        background: #f0f0f0;
    }

    .mem-item {
        margin-bottom: 55px;
    }

    .mem-points-wrap {
        margin-top: 25px;
        padding: 0 2%;
    }

    .mem-points-title-left {
        background: #fff;
        font-size: 18px;
        line-height: 28px;
    }

    .mem-feature-wrap {
        margin-bottom: 35px;
    }

    .mem-feature-left {
        padding: 10px 0 0 30px;
        float: none;
        width: 100%;
    }

    .mem-feature-right {
        padding-top: 8px;
        float: none;
        width: 100%;
        text-align: center;
    }

    .mem-feature-full {
        padding: 10px 0 0 30px;
        width: 100%;
    }

    .mem-elite-wrap {
        margin-top: 30px;
    }

    .mem-elite-left {
        float: none;
        width: 100%;
    }

    .mem-elite-right {
        float: none;
        width: 100%;
    }

    .mem-partner-left {
        padding-top: 6px;
        padding-left: 0 !important;
        float: none;
        width: 100%;
        text-align: center !important;
    }

    .mem-partner-right {
        padding-left: 0;
        padding-top: 8px;
        float: none;
        width: 100%;
        text-align: center;
    }

    .mem-buttons-wrap {
        margin: 0 2%;
        position: relative;
    }

    .mem-buttons-left {
        padding-top: 0;
        float: none;
        width: 100%;
        position: absolute;
        left: 0;
        top: 160px;
    }

    .mem-buttons-right {
        padding-top: 30px;
        float: none;
        width: 100%;
        position: absolute;
        left: 0;
        top: 0;
    }

    .mem-buttons-bottom {
        margin-top: 210px;
    }

    .mem-item-title {
        font-size: 18px;
    }

    .mem-card-mobile {
        width: 100%;
        display: block;
    }

    ul.perks-box {
        margin-top: 20px;
    }

    ul.perks-box li {
        margin-right: 0;
        margin-bottom: 2%;
        float: none;
        width: 100%;
        height: auto;
    }

    .perks-title {
        padding: 2%;
        background: #f5f5f5;
        font-size: 14px;
        font-weight: 700;
        color: #ff5200;
    }

    .perks-box-right-inner {
        padding-left: 15px;
    }

    .mem-partner-left-myaccount {
        padding-bottom: 15px;
        float: none;
        width: 100%;
        text-align: center;
    }

    .mem-partner-right-myaccount {
        padding-left: 0;
        float: none;
        width: 100%;
        text-align: center;
    }

    table.billing-history {
        margin-top: 15px;
    }

    .mem-partner-left-myaccounthome {
        padding-bottom: 10px;
        float: none;
        width: 100%;
        text-align: center;
    }

    .mem-partner-right-myaccounthome {
        float: none;
    }

    /* membership-form responsive */
    .membership-billing-date {
        float: left;
    }

    .membership-form .account-info-box-fields, .membership-address-wrap {
        width: 100%;
    }

    .membership-type .membership-select-box {
        width: 60%;
    }

    .membership-type .membership-price-box {
        width: 35%;
        margin-right: 0;
    }

    .membership-form .account-info-box-fields input {
        width: 95.5%;
    }

    .cc-name-oncard input, .membership-form .membership-cc-exp-m, .membership-form .membership-cc-exp-y, .membership-form .membership-cc-cvv {
        width: 30%;
    }

    .membership-form .membership-cc-cvv {
        margin-right: 0;
    }

    .membership-b-address-wrap input, .membership-address-wrap input, .membership-phone-wrap input, .membership-phone-ext input {
        width: 95%;
    }

    .membership-phone-ext {
        margin-top: 0;
    }

    .result-promo-wrap {
        margin-top: 0;
        background: #fff;
        position: relative;
    }

    .result-promo-top {
        padding-top: 0;
        border-bottom: 0 solid #f0f0f0;
    }

    .result-promo-bottom {
        display: none;
    }

    .result-promo-top-left {
        display: none;
    }

    .result-promo-top-middle {
        float: none;
        width: 100%;
    }

    .result-promo-top-right {
        padding: 0 10px 15px 15px;
        float: none;
        width: 100%;
        text-align: left;
        position: absolute;
        top: 0;
        left: 0;
    }

    .result-promo-textbox {
        margin: 55px 2% 0;
        padding: 10px;
        width: 96%;
    }

    .result-promo-pointer {
        display: none;
    }

    .promo-textbox-top {
        padding-bottom: 10px;
        font-size: 16px;
        color: #fe5301;
        border-bottom: 1px solid #dadada;
        text-align: center;
    }

    .promo-textbox-bottom {
        padding: 10px 0 5px;
        border-bottom: 1px solid #dadada;
        overflow: hidden;
    }

    .promo-textbox-bottom-left {
        float: left;
        font-size: 35px;
        color: #3d9d00;
        line-height: 34px;
    }

    .promo-textbox-bottom-right {
        float: right;
    }

    .result-promo-phone {
        font-size: 23px;
        line-height: 18px;
        color: #4d4d4d;
    }

    .result-promo-5mins {
        font-size: 14px;
        color: #4d4d4d;
    }

    .result-promo-price {
        margin-top: 0;
    }

    .button-select-fare-promo {
        padding: 10px 25px;
        position: absolute;
        top: 10px;
        right: 8px;
    }

    .exp-wrapper {
        margin: 0 0;
        width: 100%;
    }

    .exp-price img {
        margin-bottom: -6px;
    }

    .bigtext {
        font-size: 12px;
    }

    #fares-search-top-flights-buttons {
        margin: 0;
    }


    #mobilealert {
        display: none;
    }

    .alert-form-left-mobile {
        width: 62%;
        float: left;

    }

    .alert-form-left-mobile input {
        padding: 7px 7px 8px;
        width: 100%;
    }

    .alert-form-right-mobile {
        width: 37%;
        float: left;
    }

    .container-airfare-mobile {
        margin: 0 0 2px;
        padding: 4%;
        background: #f9f9f9;
        display: none;
        text-align: center;
    }

    .transition-alert-form-mobile {
        margin: 0 2% 10px;
        padding: 0 2% 1%;
    }

    .exp-airlines-wrap {
        margin: 5px 0;
    }

    .exp-container-flight-package-left,
    .exp-container-flight-package-right {
        padding: 0;
        display: block;
        overflow: hidden;
        width: auto;
    }

    .exp-container-flight-package-right {
        padding: 0 0 15px;
    }

    .flight-package-wrap .per-person,
    .flight-package-wrap .result-price {
        vertical-align: middle;
    }

    .flight-package-wrap .per-person {
        padding: 5px 0 0 0;
        clear: both;
    }

    .exp-container-price-left {
        padding: 3px 0 0;
        float: left;
        width: 40%;
        text-align: left;
    }

    .exp-container-price-right {
        padding: 0;
        float: left;
        width: 60%;
        text-align: right;
    }

    .exp-airlines-left {
        margin-left: -5px;
    }

    .exp-details {
        margin-top: -10px;
        margin-bottom: 10px;
        padding: 1%;
        background: #fff;
        border: 0;
        font-size: 11px;
    }

    .exp-leg-wrap {
        overflow: hidden;
    }

    .exp-leg-left {
        padding: 2% 0;
        float: none;
        width: 100%;
        overflow: hidden;
        border-top: 1px solid #dedede;
        border-bottom: 0 solid #dedede;
    }

    .exp-leg-right {
        padding: 5px 1% 10px 3%;
        float: none;
        width: 96%;
        line-height: 18px;
        border-top: 0 solid #dedede;
    }

    .exp-layover {
        margin: 0 0 0 0;
        padding: 5px 2%;
        background: #fff;
        color: #8dbe6e;
        font-weight: normal;
        border-top: 1px solid #dedede;
        font-size: 11px;
    }

    .exp-leg-left-logo {
        padding: 2% 3% 3%;
        float: left;
        width: 15%;
        text-align: center;
    }

    .exp-leg-left-airline {
        padding-top: 3%;
        padding-right: 8px;
        float: left;
        text-transform: lowercase;
        width: 60%;
        text-align: left;
        line-height: 16px;
    }

    .exp-leg-left-airline:first-letter{
        text-transform: capitalize
    }

    .exp-leg-left-flight {
        padding-top: 3%;
        float: left;
        width: 25%;
        text-align: center;
        line-height: 16px;
    }

    a.button-outbound-back {
        margin-top: 13px;
        padding: 0;
        font-weight: normal;
        color: #006699;
        background: transparent;
        box-shadow: none;
        border: 0;
    }

    a.button-outbound-back:hover {
        background: transparent;
        color: #006699;
    }

    .chosen-package-wrap {
        margin: 10px 0;
        padding: 0 1% 10px;
        border-top: 1px solid #2cb8e2;
        background: #f2f9fd;
    }

    .chosen-package-left {
        float: none;
        width: 100%;
        text-align: center;
    }

    .chosen-package-middle {
        width: 75%;
    }

    .chosen-package-middle table.exp-package tr td{
        padding: 0 2px;
        line-height: 17px;
    }

    .chosen-package-right {
        padding-top: 0;
        float: right;
        text-align: center;
        width: 25%;
    }

    .select-flight-wrap {
        margin-bottom: 5px;
        padding: 10px 4%;
        text-align: center;
        line-height: 19px;
        color: #fff;
        background: #0072a3;
    }

    .select-flight-left {
        width: 100%;
        text-align: center;
    }

    .select-flight-right {
        display: none;
    }

    .select-flight-wrap .blue-bright{
        color: #fff;
    }

    .select-flight-text {
        font-size: 13px;
    }

    .select-flight-text2 {
        font-size: 13px;
    }

    .chosen-package-left-left {
        margin-left: 10px;
        padding-right: 10px;
        float: left;
        font-weight: bold;
        font-size: 13px;
    }

    .chosen-package-left-right {
        float: left;
        font-size: 13px;
    }

    .exp-chosen-airline {
        padding-top: 0 !important;
    }

    .img-responsive {
        margin: 0 0 0;
        padding: 0;
        background-image: none;
    }

    .home-inner-left {
        padding: 0 0 15px;
        width: 100%;
        float: none;
        overflow: hidden;
    }

    .container-home-search {
        margin: 0;
        padding: 10px 2% 0;
        width: 100%;
        border: 0 solid #e1e1e1;
        overflow: hidden;
        background: #fff;
        font-size: 12px;
    }

    .home-search-from-left {
        float: none;
        width: 100%;
        border: 0;
    }

    .multi .home-search-from-right {
        margin-left: 2%;
        float: left;
        width: 32%;
        display: block;
    }

    .home-search-to-left {
        float: left;
        width: 64%;
    }

    .multi .home-search-to-right {
        margin-left: 2%;
        float: left;
        width: 32%;
        display: block;
    }

    .recent-search-drop-down {
        padding: 5px 8px;
    }

    .responsive-home-search-margin-right {
        margin-right: 2% !important
    }

    .container-home-search-btn{
        display: none;
    }

    .container-search-flights-btn{
        overflow: visible;
    }

    .container-search-flights-btn a.orange-big-btn {
        margin: 0 auto;
        padding: 12px 25px;
        font: 300 23px helvetica, arial, sans-serif;
        color: #fff;
        background: #ff5200;
        width: 100%;
        cursor: pointer;
        display: block;
        border-radius: 2px;
    }

    .container-search-flights-btn a.orange-big-btn:hover {
        background: #ff5200;
    }

    .input-text-box {
        border: 1px solid #dadada;
        box-shadow: inset 0 0 0 #777;
        -webkit-appearance: none;
    }

    .input-text-box-home {
        margin: 0;
        padding: 12px 2%;
        width: 100%;
        font-size: 12px;
        border: 1px solid #dadada;
        border-radius: 3px;
        box-shadow: inset 0 0 0 #666;
        -webkit-appearance: none;
    }

    .input-text-box-home:focus {
        border: 1px solid #bbb;
        box-shadow: inset 0 0 0 #555;
    }

    .input-calendar-box, .input-calendar-box-hotel, .input-calendar-box-home {
        padding: 12px 4%;
        width: 96%;
        border: 1px solid #dadada;
        background-image: none !important;
        box-shadow: inset 0 0 0 #666;
        -webkit-appearance: none;
    }

    .select-date-range-wrap .comiseo-daterangepicker-triggerbutton{
        margin-left: 0;
        margin-right: 0;
        padding: 10px 8px;
        width: 100%;
        font-size: 12px;
        display: block;
        color: #555;
        background-color: #fff;
        border: 1px solid #dadada;
        border-radius: 2px;
    }

    .options-expand-left {
        margin-right: 2%;
        width: 49%;
        float: left;
        text-align: center;
    }

    .options-expand-right {
        width: 49%;
        float: left;
        text-align:center;
    }

    .top-price-book-room {
        width: auto;
    }

    .top-price-room {
        padding:0 10px 0 0;
        width: auto;
        float: none;
    }

    a.button-select-hotel-sq-left {
        margin-top: 10px;
    }

    /* flight and hotel tabs */
    .container-home-search-btn.form-type-tab-wrap {
        margin: 0;
    }

    .form-type-tab {
        display: none;
    }

    .hp-box-title {
        display: none;
    }

    .hp-box {
        display: none;
    }

    /* results page */
    ul.exp-container-flight-package {
        margin: 15px 0 0;
        min-height: 0;
    }

    .mobile-small {
        font-size: 11px;
    }

    .container-sort {
        margin: 0 auto;
        padding: 0 2% 15px;
        width: 96%;
    }

    a.filter-button {
        font-size: 11px;
        line-height: 13px;
    }

    .filter-content ul li {
        padding: 0 1% 2%;
    }

    .container-airfare {
        display: none;
    }

    /* package */
    ul.container-flight-package {
        margin-bottom: 7px;
        padding: 0 2%;
        position: relative;
        border: 0 solid #ddd;
        background: #fff;
    }

    ul.container-flight-package li {
        border-top: 0 solid #d0d0d0;
    }

    ul.container-flight-package li:last-child {
        border-bottom: 0 solid #d0d0d0;
    }

    .container-flight-results {
        margin: 0 auto;
        width: 98%;
    }

    a.phone-deal-btn,
    a.button-select-fare {
        width: 100%;
        max-width: 200px;
        float: right;
    }

    .mobile-details {
        margin: 0;
        padding: 5px;
        font-size: 14px;
        font-weight: bold;
        width: 100%;
        max-width: 200px;
        text-align: center;
        display: block;
        float: right;
    }

    .seats-left {
        width: 100%;
        max-width: 200px;
        float: right;
    }

    .package-row-middle {
        padding: 10px 0 0 0;
        border: 0 solid #e1e1e1;
        overflow: hidden;
        position: relative;
    }

    .package-price-box {
        height: auto;
        border-top: 0 solid #e1e1e1;
        width: 225px;
        position: absolute;
        top: 0;
        left: 0;
        font-size: 28px;
        color: #4e7720;
        text-align: left;
        background: transparent;
    }

    .price-box-bottom {
        border-bottom: 0 solid #e1e1e1;
        width: 100%;
        background: #fff;
        float: none;
        height: auto;
        margin-left: 0;
        margin-top: 0;
        position: absolute;
        top: 30px;
        right: 0;
    }

    .fd-layover {
        margin-left: 1%;
    }

    .fd-airline-logo, .fd-bottom-blank {
        display: none;
    }

    .underline-mobile {
        text-decoration: underline;
    }

    .package-row2-left {
        width: 14%;
    }

    .package-row2-right {
        padding: 5px 0 0;
        width: 86%;
    }

    .airlines-wrap-single {
        padding-top: 12px;
        position: relative;
        height: 100%;
    }

    .airlines-multi {
        padding-top: 6px;
        overflow: hidden;
        width: 32px;
    }

    .airlines-right {
        display: none;
    }

    .departure-hour {
        width: 12%;
        font-size: 14px;
        font-weight: bold;
    }

    .arrival-hour {
        width: 12%;
        font-size: 14px;
        font-weight: bold;
    }

    .package-airport-code {
        width: 8%;
    }

    .package-arrow {
        width: 6%;
        text-align: center;
    }

    .package-stops {
        width: 20%;
        text-align: center;
        font-size: 11px;
        color: #999;
    }

    .mobile-seats {
        font-size: 11px;
        color: #ff0000;
        width: 100%;
        text-align: center;
    }

    .details-modal-warning {
        margin: 0 0 2%;
        padding: 2%;
    }

    .cabin-mobile {
        margin: 0 0 0;
        background: transparent;
        border-top: 0 dotted #e1e1e1;
        border-bottom: 0 dotted #e1e1e1;
    }

    .airline-logo-details-mobile {
        float: left;
    }

    .insurance-btn-block-right {
        margin: 5px 0 0 0;
        padding: 10px 2%;
        float: none;
        width: 95%;
        text-align: center;
        min-height: 0;
        position: relative;
    }

    .container-insurance-decline {
        padding: 7px 2% 10px 20%;
        width: 78%;
        overflow: hidden;
        text-align: left;
        position: relative;
        line-height: 26px;
    }

    .container-insurance-decline input {
        position: absolute;
        top: 47px;
        left: 20px;
    }

    .insurance-decline-right {
        margin: 0 0 0 3px;
        float: none;
        text-align: left;
    }

    .field-subtext, .container-passenger-info-expand {
        margin-top: 0;
        margin-left: 0;
    }

    ul.passenger-info-list {
        padding: 0;
    }

    ul.passenger-info-list li {
        margin: 0 0 5px;
        padding: 0 0 5px;
    }

    .container-create-account {
        display:none;
    }

    .ins-top-left {
        float: none;
    }

    .ins-top-right {
        border-left: 0 solid #dedede;
        margin-left: 0;
        padding-left: 0;
        float: none;
        text-align: center;
    }

    .passenger-info-title {
        padding: 8px 4%;
        border: 0 solid #e1e1e1;
        background: #0074a4;
        color: #fff;
        border-bottom: 3px solid #74d6ff;
        border-top: 3px solid #74d6ff;
    }

    .container-airfare-details-content {
        margin: 11px 4% 15px;
    }

    ul.guarantee-list {
        padding: 2% 0;
    }

    .airfare-details-title {
        padding: 8px 4%;
        border-bottom: 0 solid #e1e1e1;
        background: #0074a4;
        color: #fff;
        border-bottom: 3px solid #74d6ff;
        border-top: 3px solid #74d6ff;
    }

    .passenger-details-footer {
        padding: 10px 15px;
        border-top: 1px solid #e1e1e1;
        border-bottom: 1px solid #e1e1e1;
        background: #f7f7f7;
        overflow: hidden;
    }

    .responsive-traveller-box2 {
        width: 100%;
    }

    .checkout-account-email {
        margin: 10px 0 10px 0;
        float: none;
        width: 100%;
    }

    .checkout-account-emailconfirm {
        margin: 0 0 10px 0;
        float: none;
        width: 100%;
    }

    .checkout-responsive-full-width {
        width: 100%;
    }

    .responsive-payment-date-left {
        margin-right: 2%;
        width: 31%;
    }

    .responsive-payment-date-right {
        margin-right: 2%;
        width: 31%;
    }

    .checkout-billing-card-number{
        width:100%;
    }

    .responsive-payment-exp-date {
        width: 45%;
        margin-right: 4%;
        float: left;
        clear: none;
    }

    .responsive-billing-country {
        width: 100%;
    }

    .checkout-responsive-email {
        width: 100%;
    }

    .box-checkout-content {
        margin: 0;
        padding: 2% 2% 0;
        background: #fff;
    }

    .box-checkout-content-aa {
        margin: 0;
    }

    .box-checkout-title-cards {
        display: none;
    }

    .box-checkout {
        padding: 0 0 2%;
    }

    .checkout-responsive-safe-info {
        padding-top: 0 !important;
        width: 100%;
    }

    .checkout-hotel-fname {
        width: 100%;
    }

    .checkout-hotel-lname {
        width: 100%;
    }

    .billing-title {
        padding-top: 0;
    }

    /* flighthub elite section */
    .box-checkout-col,
    .box-checkout-col-6 {
        width: 100%;
    }

    .box-checkout-header span {
        display: none;
    }

    .flightelite-wrap {
        border-right: 0;
    }

    .priority-wrap .box-checkout-inner-container,
    .box-checkout-inner-container {
        padding-left: 10px;
    }

    .receipt-payment, .receipt-travellers-content, .receipt-title-blue, .receipt-title-blue, .receipt-title-yellow, .receipt-title-warning, .receipt-title-orange, .receipt-title-red {
        padding: 8px;
    }

    .receipt-itinerary {
        padding: 8px 0;
    }

    .details-top-left {
        height: auto;
        margin-right: 0;
        margin-bottom: 10px;
        padding: 2%;
        float: none;
        width: 100%;
        border: 1px solid #dadada;
    }

    .details-top-right {
        height: auto;
        margin-right: 0;
        padding: 2%;
        float: none;
        width: 100%;
        border: 1px solid #dadada;
    }

    .baggage-checkin-left, .baggage-checkin-right {
        margin-right: 0;
        margin-left: 0;
        float: none;
        width: 100%;
    }

    ul.flight-details-info {
        margin-left: 0;
        margin-bottom: 10px;
        padding: 0 5px;
        width: auto;
        float: none;
        background: #f9f9f9;
        border-right: 1px solid #e1e1e1;
        border-bottom: 1px solid #e1e1e1;
        border-left: 1px solid #e1e1e1;
        font-size: 11px;
    }

    /* my account */
    .column-right-myaccount-nobg {
        margin-left: 0;
        padding: 0 2% 15px;
        border: 0 solid #e1e1e1;
        min-height: 0;
        background: transparent;
    }

    .account-info-email, .account-info-password {
        width: 100%;
    }

    .column-right {
        margin-left: 0;
        padding: 2% 2% 5%;
        border: 0 solid #e1e1e1;
        min-height: 0;
    }

    /* pagination */
    .pager ul li,.pager ul li.active {
        display: none;
    }

    .pager ul li:first-child {
        display: block;
    }

    .pager ul li:last-child {
        display: block;
    }

    .pager ul li a span {
        font-size: 42px;
    }

    .pager ul li.no-previous {
        font-size: 42px;
    }

    .pager ul li a {
        background: #e1e1e1;
    }

    .container-sort-left {
        padding: 0 0 5px;
        width: 100%;
        float: none;
        text-align: center;
    }

    .container-sort-right {
        margin: 0 auto;
        padding: 0;
        width: 220px;
        float: none;
        text-align: center;
    }

    .account-old-password, .account-new-password, .account-confirm-password {
        width: 100%;
    }

    .account-info-gender {
        float: none;
        width: 40%;
    }

    .account-info-fname {
        margin: 0 0 10px 0;
        float: none;
        width: 100%;
    }

    .account-info-lname {
        margin-bottom: 10px;
        float: none;
        width: 100%;
    }

    .account-info-month {
        width: 32%;
    }

    .account-info-day {
        width: 32%;
    }

    .account-info-year {
        width: 34%;
    }

    .fields-box-notitle {
        padding-top: 18px;
    }

    ul.review-details-sub-list > li {
        padding: 5px 0 0 0;
    }

    /* traveller details */
    .checkout-select-traveller {
        width: 100%;
    }

    .checkout-gender {
        margin: 0 0 5px;
        width: 100%;
    }

    .checkout-first-name, .checkout-middle-name, .checkout-last-name {
        margin: 0 0 5px;
        width: 100%;
    }

    .checkout-month, .checkout-day {
        margin:0 1% 5px 0;
        float: left;
        width: 33%;
    }

    .checkout-year {
        margin: 0 0 5px;
        float: left;
        width: 32%;
    }

    .checkout-passport-country {
        margin: 0 0 5px;
        clear: left;
        width: 100%;
    }
    /* end traveller details */

    /* billing info */
    .checkout-card-number {
        margin: 0 1% 5px 0;
        width: 65%;
        float: left;
    }

    .checkout-card-type {
        margin: 0 0 5px;
        width: 34%;
        float: left;
    }

    .checkout-expiry-month, .checkout-expiry-year{
        margin: 0 1% 5px 0;
        float: left;
        width: 32%;
    }

    .checkout-expiry-month {
        clear: left;
    }

    .checkout-billing-cvv{
        margin: 0 0 5px;
        width: 34%;
        float: left;
    }

    .checkout-billing-fname {
        margin: 0 0 15px;
        width: 100%;
    }

    .checkout-billing-lname {
        margin: 0 0 5px;
        margin-bottom: 15px;
        width: 100%;
    }

    body.checkout-b .checkout-create-account-email {
        margin: 0 0 15px 0;
        float: none;
        width: 100%;
    }

    body.checkout-b .checkout-create-account-emailconfirm {
        margin: 0 0 15px 0;
        float: none;
        width: 100%;
    }

    .checkout-billing-address1 {
        margin: 0 1% 5px 0;
        float: none;
        width: 100%;
    }

    .checkout-billing-address2 {
        margin: 0 0 5px;
        float: none;
        width: 46%;
    }

    .checkout-billing-city {
        margin: 0 0 5px;
        width: 100%;
    }

    .checkout-billing-country {
        margin: 0 1% 5px 0;
        float: left;
        width: 37%;
    }

    .checkout-billing-region {
        margin: 0 1% 5px 0;
        float: left;
        width: 33%;
    }

    .checkout-billing-postal {
        margin: 0 0 5px;
        float: left;
        width: 28%;
    }

    .checkout-extra-phone {
        margin: 0 1% 15px 0;
        width: 47%;
        float: left;
    }

    .checkout-extra-phone-field {
        margin: 0 0 15px 0;
        width: 52%;
        float: left;
    }

    .checkout-extra-phone-ext {
        margin: 0 0 15px 0;
        width: 40%;
        float: none;
    }
    /* end billing info */

    /* new cc page */
    .newcc-card-number {
        width: 69%;
    }

    .newcc-card-type {
        margin: 0 0 10px 0;
        width: 29%;
    }

    .newcc-card-month {
        clear: both;
        width: 32%;
    }

    .newcc-card-year {
        padding-top: 20px;
        width: 32%;
    }

    .newcc-card-cvv {
        width: 34%;
    }

    .newcc-city {
        margin: 0 0 10px 0;
        float: none;
        width: 100%;
    }

    .newcc-country {
        margin: 0 0 10px 0;
        float: none;
        width: 100%;
    }

    .newcc-region {
        width: 69%;
    }

    .newcc-postal {
        width: 30%;
    }
    /* end new cc page */

    .faq-search-wrap {
        padding: 15px 0;
        width: 100%;
    }

    a.button-faq-search {
        padding: 8px 6px;
        font: 300 12px arial, sans-serif;
    }

    .plan-desc-blue {
        display: none;
    }

    .plan-desc-blue, .plan-desc-yellow, .plan-desc-orange {
        margin-top: 0;
        padding-top: 0;
    }

    /* misc */
    .mobile-scroll {
        overflow-y: scroll !important;
    }

    .tipsy {
        display: none;
    }

    .tipsy-inner {
        max-width: 150px;
    }

    /* CHECKOUT INSURANCE EXPERIMENT */
    .ins-top-wrap-exp {
        display: none;
    }

    .ins-package-radio-blue-exp {
        padding: 21px 0;
        text-align: center;
        width: 10%;
        height: 60px;
        border-bottom: 1px solid #c9c9c9;
    }

    .ins-package-radio-yellow-exp {
        padding: 21px 0;
        text-align: center;
        width: 10%;
        height: 60px;
        border-bottom: 1px solid #c9c9c9;
    }

    .ins-package-radio-orange-exp {
        padding: 21px 0;
        text-align: center;
        width: 10%;
        height: 60px;
        border-bottom: 1px solid #c9c9c9;
    }

    .ins-package-radio-white-exp {
        padding: 21px 0;
        text-align: center;
        width: 10%;
        height: 60px;
        border-bottom: 1px solid #c9c9c9;
    }

    .ins-package-middle-exp {
        padding: 0 5px;
        width: 90%;
        height: 60px;
        border-right: 0 solid #c9c9c9;
        border-bottom: 1px solid #c9c9c9;
    }

    .ins-package-middle-exp-decline {
        padding: 0 5px;
        width: 90%;
        height: 60px;
        border-right: 0 solid #c9c9c9;
        border-bottom: 1px solid #c9c9c9;
    }

    .ins-package-right-exp {
        padding: 10px;
        clear: both;
        float: none;
        width: 100%;
    }

    .ins-package-right-exp-decline {
        padding: 10px;
        clear: both;
        float: none;
        width: 100%;
    }

    .ins-package-points-wrap {
        overflow: hidden;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .ins-package-points-left {
        margin-bottom:10px;
        margin-right: 0;
        width: 100%;
        float: none;
    }

    .ins-package-points-right {
        margin-right: 0;
        width: 100%;
        float: none;
    }

    .ins-package-points-full {
        padding-top: 0;
    }

    .ins-package-points-full-2lines {
        padding-top: 0;
    }

    ul.plan-points {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    ul.plan-points li {
        padding-left: 0;
        font-size: 11px;
    }

    .ins-package-price-wrap {
        margin-top: 5px;
        margin-bottom: 0;
        float: right;
        width: auto;
    }

    .plan-name-exp {
        padding-top: 16px;
        float: left;
        width: 40%;
        font-size: 13px;
        line-height: 14px;
    }

    .ins-package-price-left {
        padding: 0 8px 0 0;
        float: none;
        font-size: 16px;
    }

    .ins-package-price-left-decline {
        padding: 15px 8px 0 0;
        float: none;
        font-size: 16px;
    }

    .ins-package-price-right {
        float: none;
    }

    ul.plan-points li {
        line-height: 15px;
    }

    ul.plan-points li + li {
        padding-left: 14px;
    }

    /* mobile calendar */
    .date-rangepicker-label {
        text-align: center;
    }

    .date-rangepicker-label .date-rangepicker-label-text {
        font-size: 12px;
    }

    .home-search-from-left,
    .home-search-to-left {
        width: 100%;
    }

    .multi .home-search-from-left,
    .multi .home-search-to-left {
        width: 64%;
    }

    .fields-row-dates {
        flex-direction: column;
        -webkit-flex-direction: column;
    }

    .hp-search-date-left,
    .hp-search-date-right {
        margin-bottom: 5px;
        flex: 1;
        -webkit-flex: 1;
        width: 100%;
    }

    /* show multiple city for mobile */

    .home .multi .home-search-from-left,
    .home .multi .home-search-to-left {
        width: 64%;
        float: left;
    }

    .home .multi .home-search-from-right {
        float: right;
    }

    .home .multi-seg .home-search-from-left br,
    .home .multi-seg .home-search-to-left br,
    .home .multi-seg .home-search-from-right br {
        display: none;
    }

    .home .multi-seg .home-search-to-right {
        float: right;
    }

    .multi .seg0_date_wrap,
    .multi .seg1_date_wrap {
        width: 32%;
        height: auto;
    }

    /* calendar */
    .ui-datepicker table{
        width: 96% !important;
        margin: 0 2% !important;
    }

    .date-range-container {
        display: none;
    }

    .select-date-range-wrap .ui-button-icon-secondary {
        display: none;
    }

    .trip-cancellation-select-box {
        margin-left: 0;
    }
    a.share-button {
        padding: 10px 25px;
        display: inline-block;
    }

    /* no-results */
    .no-results-box {
        margin: 15px 2% 0 2%;
    }

    .ins-decline-wrap {
        margin: 15px 0;
        padding: 3%;
        border: 1px solid #cdcdcd;
        border-radius: 4px;
    }

    /* insurance experiments */
    .ins-exp-plan-left{
        margin-right: 0;
        margin-bottom: 10px;
        float: none;
        width: 100%;
    }

    .ins-exp-plan-right{
        margin-left: 0;
        float: none;
        width: 100%;
    }

    .ins-best-value {
        font-size: 11px;
    }

    .ins-exp-title {
         margin: 0 auto 15px;
         line-height: 25px;
     }

    .all-inclusive-select-box {
        font-size: 12px;
    }

    .ins-exp-natural {
        width: 100%;
    }

    .ins-exp-natural .list-right {
        width: 90%;
        line-height: 17px;
    }

    .select-title, .specs-title {
        text-align: center;
    }

    .modify-search-wrap {
        display: inline !important;
    }

    .modify-search {
        margin: 0;
        padding: 0;
        color: #fff;
        display: inline-block;
        font-size: 13px;
        font-weight: normal;
        text-decoration: underline;
        text-align: center;
        background-color: transparent;
        background: transparent;
        border: 0 solid #d0d0d0;
        box-shadow: inset 0 0 0 #fff;
    }

    .checkout .modal-inner-left {
        width: 100%;
    }

    .mem-partner-row {
        display: block;
    }

    .mem-partner-box {
        margin-bottom: 15px;
        display: block;
    }

    .login-social-left {
        padding-right: 0;
        padding-bottom: 25px;
        display: block;
        width: 100%;
        border-right: 0 solid #dadada;
    }

    .login-social-right {
        padding: 15px 0 0 0;
        display: block;
        width: 100%;
        border-top: 1px solid #dadada;
    }

}








@media (max-width : 750px) {

    .hp-footer-logos-container {
        margin: 0 auto;
        width: 80%;
    }

    .aa-upsell-list-left,
    .aa-basic-economy-left {
        display: block;
        width: 100%;
        text-align: center;
    }

    .aa-upsell-list-right,
    .aa-basic-economy-right {
        padding-top: 20px;
        display: block;
        width: 100%;
        text-align: center;
    }

    .aa-basic-economy-right {
        padding-top: 5px;
    }

    .aa-upsell-list-right ul li {
        list-style: none;
    }

    .subtitle-aa-upsell {
        display: none;
    }

}







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

    .is-mobile-app .autofill {
        display: block;
    }

    .receipt-seatmap .seatmap-matrix {
        display: inline-block;
    }

    .receipt-seatmap .seatmap-matrix .column {
        padding: 3px 0;
        text-align: left;
    }

    .receipt-seatmap .seatmap-matrix .mobile-segment {
        margin: 0;
    }

    .receipt-seatmap .seatmap-matrix .selected-seats {
        font-size: 12px;
        padding: 5px 10px;
        line-height: 1.1;
    }

    .receipt-seatmap .selected-seat,
    .receipt-seatmap .seatmap-matrix .mobile-segment {
        display: inline-block;
    }

    .is-mobile-app .autofill {
        display: block;
    }

    .ins-csadirect .insurance-heading-right-csa, .insurance-heading-right {
        font-size: 16px;
    }

    .ins-csadirect .radio-options-footer .item {
        font-size: 14px;
    }

    .ins-csadirect .ins-options-wrap .column.ins-options-left {
        display: none;
    }
}



@media (max-width : 650px) {

    .cuba-reason-left {
        display: block;
        width: 100%;
    }

    .cuba-reason-right {
        display: block;
        width: 100%;
        border-top: 1px dotted #dadada;
    }

    table.exp-package td:first-child {
        padding-left: 0;
    }

    table.exp-package td {
        padding: 0 5px 3px 5px;
        font-size: 12px;
    }

    table.exp-package td .bigtext {
        margin: 0;
    }

    .phone-deals table.exp-package .arrow-wrap,
    table.exp-package .arrow-wrap {
        width: 30px;
        vertical-align: top;
    }

    .exp-package .icon-package-arrow {
        font-size: 14px;
    }

    table.exp-package .stops-cell,
    table.exp-package .flight-duration {
        width: auto;
    }

    .flex-package table.exp-package td .bigtext,
    table.exp-package td .bigtext {
        font-size: 14px;
    }

    table.exp-package td .details {
        display: none;
    }

    .flex-tag {
        font-size: 12px;
    }

    .room-info-left {
        width: 50%;
    }

    .room-info-right {
        width: 48%;
    }

    .ui-menu .ui-menu-item a {
        padding: .4em .6em;
    }

    .modal-fare-alerts-logo {
        width: 225px;
        height: 48px;
    }

    .ins-csadirect .ins-options-left {
        padding-right: 0;
        float: none;
        width: 100%;
    }

    .ins-csadirect .ins-options-right {
        float: none;
        width: 100%;
    }

    .ins-options-right {
        padding-top: 0;
    }
}




@media (max-width : 580px) {

    .tooltip {
        left: 2% !important;
        width: 96% !important;
        margin: 0 auto !important;
    }


    /*  experiment */
    .premium-economy-experiment.box-checkout .aa-upsell-list-wrap ul {
        display: block;
        flex-wrap: nowrap;
    }

    .premium-economy-experiment.box-checkout .aa-upsell-list-wrap li {
        width: 90%;
    }

    .premium-economy-experiment.box-checkout .upsell-button-row {
        text-align: center;
    }

}




@media (max-width : 550px) {

    .social-login-buttons-wrap {
        width: 100%;
    }

    .social-login-buttons-left {
        display: block;
        width: 100%;
        text-align: center;
    }

    .social-login-buttons-middle {
        padding: 20px 0;
        display: block;
        width: 100%;
        text-align: center;
    }

    .social-login-buttons-right {
        display: block;
        width: 100%;
        text-align: center;
    }

    .social-sign-in .instructions,
    .account-content-signup .instructions {
        text-align: center;
    }

    /* stored payment */
    .stored-payment-box td {
        display: inline-block;
    }

    .stored-payment-box tbody tr.gap {
        display: block;
    }

    .stored-payment-box td:first-of-type {
        display: none;
    }


    .stored-payment-box td.stored-cc-name {
        width: 100%;
        text-align: center;
        background: #eeeeee;
        color: #404040;
        display: block;
        margin-bottom: 5px;
        padding: 5px;
    }

    .saved-payment-info-selected td.stored-cc-name {
        background: #0174a3;
        color: white;
    }

    .stored-payment-box td .input-text-box {
        width: 70px;
        margin: 5px;
    }

    .stored-payment-box td input::placeholder {
        visibility: visible;
        text-align: center;
    }

    .stored-payment-box td.stored-cc-image {
        width: 12.5%;
        margin-left: 2.5%;
    }

    .stored-payment-box td.stored-cc-image img {
        height: 22px;
    }

    .stored-payment-box td.stored-cc-card {
        width: 40%;
        text-align: center;
        font-size: 11px;
    }

    .stored-payment-box td.stored-cc-expiration {
        width: 15%;
        text-align: left;
        font-size: 10px;
    }

    .stored-payment-box td.stored-cc-expiration span {
        display: none;
    }

    .stored-payment-box td.cc-security-code {
        width: 20%;
        margin-left: 0;
        text-align: center;
        font-size: 10px;
    }

    .stored-payment-box td.cc-security-code .fields-box label,
    .stored-payment-box td.cc-security-code .fields-box i.fa {
        display: none;
    }

}





@media (max-width : 530px) {

    .hotel-result-photo-left {
        float: none;
    }

    #modal_box {
        margin-left: -200px !important;
        left: 50% !important;
        width: auto !important;
    }

    .partner-logo {
        float: none;
    }

    .price-change-top {
        font-size: 15px;
        line-height: 20px;
    }

    .price-change-top span {
        font-size: 15px;
    }

    .price-change-bottom {
        padding: 10px;
        line-height: 20px;
    }

    .price-change-bottom .strike {
        font-size: 15px;
    }

    .price-change-bottom .newprice {
        font-size: 15px;
    }
}




@media (max-width : 500px) {

    .share-buttons-wrap a.share-modal-btn {
        padding: 10px;
        font-size: 12px;
    }

}





@media (max-width : 480px) {

    .phone-hide {
        display: none !important;
    }

    .flex-package table.exp-package td .bigtext,
    .phone-deals .dates,
    table.exp-package td .bigtext {
        font-size: 12px;
    }

    .exp-package .icon-package-arrow .fa-lg {
        font-size: 10px;
    }

    .room-select-left {
        width: 100%;
        padding: 8px;
    }

    .room-info-left,
    .room-info-right {
        width: 100%;
    }

    .room-info-right {
        margin-bottom: 10px;
    }

    .room-select-right {
        margin-left: 0;
        padding: 0;
        max-height: none;
        width: 100%;
        float: left;
    }

    .room-name {
        line-height: 19px;
    }

    .top-price-book-room {
        width: 100%;
    }

    .top-price-room {
        padding: 0;
        width: auto;
        float: none;
        text-align: center;
    }

    .top-price-book-room span {
        float: none;
    }

    a.button-select-hotel-sq-left {
        margin: 5px 10px;
        display: block;
    }

    .rooms-left-selectroom {
        text-align: center;
        margin: 0;
    }

    .checkout .modal-inner-left table.segment-title,
    .checkout .modal-inner-left table.segment {
        font-size: 11px;
    }

}




@media (max-width : 450px) {

    .hp-footer-logos-wrap {
        display: none;
    }

    #modal_box {
        margin-left: -175px !important;
        width: 350px !important;
    }

    .segment-airline {
        margin-bottom: 5px;
        padding: 0 0 5px 0;
        width: 100%;
        float: none;
        text-align: center;
        border-bottom: 1px dotted #dadada;
    }

    .segment-airline-icon {
        float: left;
        width: 15%;
        text-align: left;
    }

    .segment-airline-name {
        padding-top: 5px;
        float: left;
        width: 85%;
        text-align: left;
    }

    .segment-city {
        width: 60%;
    }

    .segment-duration {
        width: 20%;
    }

    .segment-info {
        width: 100%;
        float: none;
    }

    .segment-carrier {
        margin: 5px 0;
        padding: 5px 0 0 0;
        border-top: 1px dotted #dadada;
    }

    .segment {
        margin: 7px 0 0;
    }

    .segment-title-time {
        display: none;
    }

    .layover-middle {
        display: none;
    }

    .layover-left {
        width: 80%;
    }

    .layover-title-bar-mobile .layover-title {
        padding: 3px;
    }

    .layover-title-bar-mobile {
        padding: 0;
    }

    .layover-title-bar-mobile .layover-airport-code {
        padding: 3px;
        width: 50%;
    }

    .layover-title-bar-mobile .layover-airport-location {
        padding: 3px;
        width: 50%;
    }

    .layover-title-bar-mobile .layover-duration {
        padding: 3px;
    }

    .layover-title-bar-mobile .layover-airport-location {
        display: none;
    }

    .receipt-itinerary .segment-duration, .modal-inner-left .segment-duration {
        display: none;
    }

    .receipt-itinerary .segment-city, .modal-inner-left .segment-city {
        width: 70%;
    }

    .receipt-itinerary .segment-time, .modal-inner-left .segment-time {
        padding-left: 10px;
        width: 30%;
    }

}




@media (max-width : 400px) {

    .hotel-adult-wrap-left,
    .hotel-children-wrap-left {
        width: 100%;
        margin: 5px 0;
    }

    .hotel-children-left,
    .hotel-adult-left,
    .hotel-children-right,
    .hotel-adult-right {
        width: 50%;
    }

    .container-options-expand {
        padding: 5px 10px;
    }

    .hotel-children-left,
    .hotel-adult-left {
        text-align: right;
    }
}




@media (max-width : 380px) {

    #modal_box {
        margin-left: -150px !important;
        width: 300px !important;
    }

}




@media (max-width : 350px) {

    .share-buttons-wrap a.share-modal-btn {
        width: 100%;
    }

}
body.fare-alert-plus {
    margin: 0 0 70px;
    background-color: #f0f0f0;
}

body.fare-alert-plus header {
    display: none;
}





/* parallax styles */

.parallax-text {
    padding-top: 75px;
    display: block;
    text-align: center;
}

.parallax-logo {
    margin-bottom: 50px;
}

.parallax-text-wrap {
    min-height: 700px;
}

.parallax-text-big {
    font-family: 'Lato', sans-serif;
    font-size: 48px;
    line-height: 56px;
    font-weight: 900;
    color: #fff;
    text-shadow: 0 0 15px #333;
}

.parallax-text-sm {
    margin: 0 auto;
    font-family: 'Lato', sans-serif;
    display: block;
    width: 700px;
    font-size: 24px;
    line-height: 32px;
    font-weight: 300;
    color: #fff;
}

.parallax-carousel {
    width: 350px;
    overflow: hidden;
    height: 180px;
    margin: 0 auto;
    padding: 60px 0 20px;
    position: relative;
}

.parallax-carousel-text:first-child {
    left: 0;
    background: red;
}

.parallax-carousel-text {
    position: absolute;
    bottom: 0;
    left: 450px;
    text-align: center;
    width: 100%;
    font-size: 18px;
    font-weight: 400;
    color: #fff;
    display: block !important;
}
.carousel-text-1 {
    left: 0;
}

.parallax-button {
    padding: 50px 0 35px;
}

.parallax-button a {
    margin: 0 auto;
    padding: 20px;
    display: inline-block;
    background: #0c96c7;
    color: #fff;
    font-family: 'Lato', sans-serif;
    font-size: 18px;
    font-weight: 900;
    font-style: normal;
    border: 0;
    outline: 0;
    text-align: center;
    text-shadow: 0 0 0 #333;
    transition: all 0.2s;
}

.parallax-button a:hover {
    background: #fbad1b;
    color: #fff;
}

.parallax-carousel-container {
    /* container for carousel */
    position: absolute;
    left: 420px;
}

.parallax-carousel-container:first-child {
    left: 50%;
    margin-left: -50px;
}

.parallax-controls {
    margin: 0 auto;
    width: 110px;
    display: table;
    table-layout: fixed;
}

.parallax-controls-dot {
    padding: 20px 0 0;
    display: table-cell;
    text-align: center;
}

.parallax-controls-dot .fa {
    color: #999;
    font-size: 15px;
    transition: all 0.2s;
}




/* main container */
.container-fare-alerts-plus {
    margin: 50px auto 100px;
    padding: 25px 25px 45px;
    max-width: 960px;
    font-family: 'Lato', sans-serif;
    color: #999;
    background-color: #fff;
    border-top: 5px solid #f26622;
    box-shadow: 0 25px 60px #ddd;
}

.container-logo {
    margin: 0 auto;
    padding: 10px 0 15px;
    width: 350px;
    text-align: center;
}

/* 3 boxes with numbers */
.fap-step-boxes-wrap {
    margin: 15px auto 25px;
    display: table;
    width: 80%;
}

.fap-step-number-wrap {
    padding: 0;
    display: table-cell;
    width: 150px;
    text-align: center;
}

.fap-step-number {
    margin: 0 auto 5px;
    padding: 9px;
    width: 40px;
    height: 40px;
    font-size: 18px;
    border-radius: 50%;
    border: 1px solid #dadada;
}

.fap-step-number.active {
    color: #fff;
    background-color: #f26622;
    border: 1px solid #f26622;
}

.fap-step-number.complete {
    color: #fff;
    background-color: #478510;
    border: 1px solid #478510;
}

.fap-step-number .fa {
    display: none;
}

.fap-step-number.complete .fa {
    display: inline-block;
}

.fap-step-number.complete .check-number {
    display: none;
}

.fap-step-text {
    color: #ddd;
}

.fap-step-number.active + .fap-step-text {
    color: #555;
    font-weight: 700;
}

.fap-step-line-wrap {
    padding: 0;
    display: table-cell;
    line-height: 16px;
    vertical-align: top;
    text-align: center;
}

.fap-step-line {
    margin-top: 20px;
    height: 1px;
    background-color: #ddd;
    text-align: center;
}

.fap-price-overlay {
    padding-top: 155px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    font-size: 18px;
    background-color: rgba(0, 0, 0, 0.85);
    z-index: 11;
    text-align: center;
}

.fap-overlay-buttons ul {
    padding: 15px 0 0;
}

.fap-overlay-buttons ul li {
    padding: 0 10px;
    display: inline-block;
}

a.overlay-btn-yes {
    padding: 10px 25px;
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    background-color: #4e9019;
    border-radius: 2px;
    transition: all 0.2s;
}

a.overlay-btn-no {
    padding: 10px 25px;
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    background-color: #777;
    border-radius: 2px;
    transition: all 0.2s;
}

a.overlay-btn-yes:hover {
    background-color: #366c0a;
    color: #fff;
}

a.overlay-btn-no:hover {
    background-color: #9f0f0f;
    color: #fff;
}



/* 3 boxes with text */
.fap-boxes-wrap {
    margin: 0 auto 20px;
    display: table;
    width: 97%;
    table-layout: fixed;
}

.fap-box {
    padding: 10px;
    display: table-cell;
    line-height: 16px;
    vertical-align: top;
    text-align: center;
}

.fap-box strong {
    margin-bottom: 5px;
    font-family: arial narrow, sans-serif;
    font-size: 16px;
    color: #555;
    display: block;
}

.fap-modal-transition {
    width: 100%;
    height: 100%;
    background: white;
    position: absolute;
    z-index: 100;
    opacity: 0.8;
    left: 0;
    top: 0;
}

.fa-loading {

    display: block;
    width: 300px;
    height: 300px;
    position: absolute;
    left: 40%;
    top: 30%;
    overflow: hidden;
}
.fa-loading p {

    font-family: "Helvetica Neue", "Lucida Grande", "Segoe UI", Arial, Helvetica, Verdana, sans-serif;
    font-size: 18px;
    font-weight: bold;
    background: white;
    display: block;

}


.fap-form-wrap {
    margin: 0 auto 25px;
    padding: 20px 60px 40px;
    width: 700px;
    height: 425px;
    background-color: #f9f9f9;
    border: 1px solid #dadada;
    position: relative;
    overflow: hidden;
}

.fap-form-slider {
    position: relative;
}

.fap-section-title {
    padding-bottom: 20px;
    font-family: 'Lato', sans-serif;
    font-size: 18px;
    font-weight: 700;
    color: #555;
    text-align: center;
}

.fap-section-divider {
    margin: 0 auto;
    padding-bottom: 25px;
    width: 125px;
    height: 1px;
    border-top: 1px solid #bbb;
}

.fap-form-back {
    padding-top: 15px;
    text-align: center;
}

.fap-form-back a {
    color: #ddd;
    transition: all 0.2s;
    cursor: default;
}

.fap-form-back a:hover {
    color: #ccc;
}

.fap-form-back a.active {
    color: #444;
    cursor: pointer;
}

.fap-form-back a.active:hover {
    color: #1275a6;
}

.fap-email-phone-or {
    padding: 15px 0 25px;
    font-size: 16px;
    line-height: 20px;
    color: #444;
    text-align: center;
}

.fap-email-phone-or .fa {
    color: #f26622;
}

.icon-dt {
    float: left;
    font-size: 19px !important;
}

.container-fare-alerts-plus .error {
    margin: 0 auto 10px;
    padding: 15px;
    max-width: 700px;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    color: #fff;
    background-color: #cf3434;
    text-align: center;
    border-radius: 3px;
}

.container-fare-alerts-plus .success {
    margin: 0 auto 25px;
    padding: 15px;
    width: 700px;
    font-size: 30px;
    line-height: 30px;
    font-weight: 900;
    color: #478510;
    background-color: #f4fbed;
    text-align: center;
    border: 2px solid #9cc177;
    border-radius: 3px;
}

.container-fare-alerts-plus .success .fa {
    font-size: 27px;
}

.container-fare-alerts-plus .success strong {
    font-size: 14px;
    font-weight: 400;
    display: block;
}

.fap-form-fields-wrap {
    margin-bottom: 15px;
    display: table;
    width: 100%;
}

.fap-form-fields-inner {
    display: table;
    width: 100%;
}

.fap-form-fields-inner-left {
    padding-right: 5px;
    display: table-cell;
    width: 50%;
}

.fap-form-fields-inner-right {
    padding-left: 5px;
    display: table-cell;
    width: 50%;
}

.fap-form-label {
    padding: 0 10px;
    display: table-cell;
    min-width: 110px;
    height: 50px;
    background-color: #f1f1f1;
    border-top: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
    text-align: right;
    vertical-align: middle;
}

.fap-form-label-mobile {
    display: none;
}

.fap-form-field {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.fap-form-field-phone {
    display: table-cell;
    width: 100%;
    vertical-align: middle;
}

.fap-form-field-select {
    padding: 0 0 0 10px;
    display: table-cell;
    min-width: 150px;
    vertical-align: middle;
    background-color: #fff;
    border-top: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-left: 1px solid #dadada;
}

.fap-form-field-select select {
    padding: 5px 10px;
    width: 100%;
    color: #777;
    font-size: 11px;
    background-color: #f9f9f9;
    border: 1px solid #dadada;
}

.error_field {
    border: 1px solid #cf3434 !important;
}

.fap-form-field input {
    padding: 10px 15px;
    background-color: #fff;
    width: 100%;
    height: 50px;
    -webkit-appearance: none;
    border: 1px solid #dadada;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.fap-form-field-phone input {
    padding: 10px 0 10px 10px;
    background-color: #fff;
    width: 100%;
    height: 50px;
    -webkit-appearance: none;
    border: 1px solid #dadada;
    border-left: 0;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.fap-form-button {
    margin: 0 auto;
    padding: 15px 35px;
    display: block;
    width: 250px;
    color: #fff;
    border: 0;
    font-size: 24px;
    font-weight: 700;
    background-color: #f26622;
    border-bottom: 3px solid #8b3308;
    -webkit-appearance: none;
    text-align: center;
    border-radius: 2px;
    transition: background-color .5s, transform .5s;
}

.fap-form-button:hover {
    background-color: #b43b00;
}

.fap-route-btn {
    margin: 0 auto;
    padding: 10px 25px;
    display: block;
    width: 200px;
    color: #fff;
    border: 0;
    font-size: 20px;
    font-weight: 700;
    background-color: #f26622;
    border-bottom: 3px solid #8b3308;
    -webkit-appearance: none;
    text-align: center;
    border-radius: 2px;
    cursor: pointer;
    transition: background-color .5s, transform .5s;
}

.fap-route-btn:hover {
    background-color: #b43b00;
}

.fap-trips-wrap {
    padding: 0 0 20px;
    text-align: center;
}

.fap-trips-wrap ul {
    margin: 0 auto;
    display: inline-block;
}

.fap-trips-wrap ul li {
    display: inline-block;
}

button.btn-trip-type {
    padding: 6px 15px;
    display: block;
    color: #bbb;
    background-color: #FFF;
    border: 1px solid #dadada;
    transition: all 0.2s;
    cursor: pointer;
}

.fap-trips-wrap ul li button.active {
    background-color: #F1F1F1;
    border: 1px solid #dadada;
    color: #555;
}

.fap-form-fields-price-wrap {
    margin: 0 auto 30px;
    display: table;
    width: 200px;
}

.fap-form-price-left {
    display: table-cell;
    width: 15%;
    text-align: center;
    vertical-align: middle;
}

.fap-form-price-field {
    display: table-cell;
    width: 70%;
}

.fap-form-price-field input {
    padding: 15px;
    font-size: 24px;
    font-weight: 700;
    background-color: #fff;
    width: 100%;
    height: 50px;
    vertical-align: middle;
    border: 0;
    text-align: center;
    -webkit-appearance: none;
    border-top: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
    border-radius: 0;
}

.fap-form-price-right {
    display: table-cell;
    width: 15%;
    text-align: center;
    vertical-align: middle;
}

.fap-form-price-left a, .fap-form-price-right a {
    padding: 10px;
    display: block;
    font-size: 24px;
    height: 50px;
    color: #333;
    background-color: #f1f1f1;
    border: 1px solid #dadada;
    transition: all 0.2s;
}

.fap-form-price-left a:hover, .fap-form-price-right a:hover {
    color: #fff;
    background-color: #006699;
    border: 1px solid #006699;
}

.fap-price-fineprint {
    font-size: 11px;
    color: #999;
    font-weight: 400;
    text-align: center;
}

.fap-price-para {
    margin: 0 auto 25px;
    padding: 10px 15px;
    width: 320px;
    line-height: 18px;
    color: #444;
    background-color: #f1f1f1;
    border: 1px solid #dadada;
    border-bottom: 3px solid #dadada;
    border-radius: 3px;
}

.fap-contact-wrap {
    padding: 0 0 20px;
    text-align: center;
}

.fap-contact-wrap>span {
    padding-bottom: 5px;
    display: block;
}

.fap-contact-wrap ul {
    margin: 0 auto;
    display: inline-block;
}

.fap-contact-wrap ul li {
    display: inline-block;
}

button.btn-contact-type {
    padding: 6px 15px;
    display: block;
    color: #bbb;
    background-color: #FFF;
    border: 1px solid #dadada;
    transition: all 0.2s;
    cursor: pointer;
}

.fap-contact-wrap ul li button:hover, .fap-contact-wrap ul li button.active {
    background-color: #F1F1F1;
    border: 1px solid #dadada;
    color: #555;
}



/* congrats */

.fap-form-congrats {
    margin: 0 auto 25px;
    padding: 0;
    font-size: 16px;
    line-height: 22px;
    width: 700px;
    text-align: center;
}

.fap-congrats-title {
    font-size: 36px;
    font-weight: 700;
    line-height: 42px;
    text-transform: uppercase;
    color: #618f38;
}

.fap-congrats-list-title {
    padding-bottom: 5px;
    font-size: 18px;
    line-height: 22px;
    font-weight: 700;
    color: #555;
    text-transform: uppercase;
}

.fap-congrats-subtitle {
    color: #999;
}

.fap-congrats-price-wrap {
    margin: 35px auto;
    padding: 20px 0;
    display: table;
    width: 400px;
    border-top: 1px solid #dadada;
    border-bottom: 1px solid #dadada;
}

.fap-congrats-price-left {
    display: table-cell;
    width: 45%;
    vertical-align: middle;
    text-align: center;
}

.fap-congrats-price-right {
    display: table-cell;
    width: 55%;
    vertical-align: middle;
    text-align: left;
}

.fap-fa-wrapper {
    padding: 20px;
    color: #618f38;
    display: inline-block;
    width: 130px;
    height: 130px;
    font-size: 90px;
    background-color: #dae5d1;
    border-radius: 50%;
}

.fap-price-sm {
    font-size: 20px;
    color: #999;
}

.fap-price-big {
    font-size: 60px;
    line-height: 60px;
    font-weight: 900;
    color: #4f504f;
}

.fap-price-big sup {
    font-size: 20px;
    vertical-align: top;
    line-height: 32px;
}

.fap-congrats-list ul li {
    padding: 3px 0;
}

.fap-congrats-button {
    margin-top: 35px;
    text-align: center;
}

.fap-congrats-button a {
    padding: 15px 30px;
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    background-color: #1275a6;
    border-radius: 2px;
    transition: 0.2s all;
}

.fap-congrats-button a:hover {
    background-color: #044b6e;
    color: #fff;
}







@media (max-width : 1000px) {

    .container-fare-alerts-plus {
        margin: 50px 2% 100px;
        max-width: 96%;
        box-shadow: 0 0 0 #ccc;
    }

    .fap-form-fields-inner-left {
        margin-bottom: 10px;
        padding-right: 0;
        display: block;
        width: 100%;
    }

    .fap-form-fields-inner-right {
        padding-left: 0;
        display: block;
        width: 100%;
    }

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

}








@media (max-width : 800px) {

    .parallax-logo {
        margin: 0 auto 25px;
        width: 80% !important;
    }

    .parallax-carousel {
        padding: 40px 0 10px;
    }

    .parallax-text {
        padding: 50px 2% 0;
        font-size: 24px;
        line-height: 24px;
    }

    .parallax-text-sm {
        padding: 0 2%;
        width: 100%;
        font-size: 17px;
        line-height: 25px;
    }

    .fap-form-wrap {
        padding: 15px 10px;
        width: 100%;
        height: auto;
    }

    .fap-boxes-wrap {
        width: 100%;
    }

    .error {
        margin: 0 auto 25px;
        padding: 10px;
        width: 100%;
        font-size: 14px;
        line-height: 20px;
    }

    .success {
        margin: 0 auto 25px;
        padding: 10px;
        width: 100%;
        font-size: 14px;
        line-height: 20px;
    }

    .container-fare-alerts-plus {
        padding: 25px 25px 30px;
    }

    .fap-form-wrap {
        margin: 0 auto;
    }

    .fap-form-congrats {
        margin: 0;
        width: 100%;
    }

    .fap-step-boxes-wrap {
        margin: 15px auto 15px;
        width: 100%;
    }

}








@media (max-width : 650px) {

    .fap-boxes-wrap {
        margin-bottom: 0;
    }

    .success {
        font-size: 18px;
        line-height: 22px;
    }

    .success .fa {
        font-size: 14px;
    }

    .success strong {
        padding-top: 5px;
        font-size: 12px;
        line-height: 14px;
    }

}








@media (max-width : 600px) {

    .parallax-text-big {
        font-size: 26px;
        line-height: 30px;
    }

    .container-fare-alerts-plus {
        margin: 15px 2% 100px;
        padding: 25px 10px 10px;
    }

    .fap-congrats-button {
        margin-bottom: 25px;
    }

    .fap-form-label {
        padding: 0 10px;
        min-width: 40px;
        height: 42px;
        background-color: #f1f1f1;
        border-top: 1px solid #dadada;
        border-bottom: 1px solid #dadada;
        border-left: 1px solid #dadada;
        text-align: center;
        vertical-align: middle;
    }

    .fap-form-label span {
        display: none;
    }

    .fap-form-label .fap-form-label-mobile span {
        display: block;
        font-size: 18px;
    }

    .fap-form-label-mobile {
        display: block;
    }

    .fap-form-field input {
        padding: 6px 10px;
        background-color: #fff;
        width: 100%;
        height: 42px;
    }

    .fap-form-field-phone input {
        padding: 6px 0 6px 10px;
        background-color: #fff;
        width: 100%;
        height: 42px;
    }

    .fap-route-btn {
        width: 100%;
    }

    .fap-congrats-title {
        font-size: 24px;
        line-height: 32px;
    }

    .fap-form-field-select {
        min-width: 100px;
    }

    .fap-form-field-select select {
        padding: 5px;
    }

    .fap-email-phone-or {
        padding-bottom: 15px;
        font-size: 12px;
        line-height: 16px;
    }

    .icon-dt {
        display: none;
    }

    .fap-price-overlay {
        padding: 100px 15px 0;
    }

    .fap-overlay-buttons ul li {
        display: block;
    }

    a.overlay-btn-yes {
        margin: 0 auto 10px;
        display: block;
        font-size: 15px;
        width: 90%;
    }

    a.overlay-btn-no {
        margin: 0 auto;
        display: block;
        font-size: 15px;
        width: 90%;
    }

}









@media (max-width: 500px) {

    .fap-congrats-price-right {
        padding-left: 15px;
    }

    .fap-congrats-price-wrap {
        margin: 25px auto;
        padding: 10px 0;
        width: 100%;
    }

    .fap-fa-wrapper {
        padding: 10px;
        width: 100px;
        height: 100px;
        font-size: 80px;
    }

    .fap-price-big {
        font-size: 45px;
        line-height: 52px;
    }

    .fap-price-sm {
        font-size: 16px;
    }

    .fap-step-number {
        padding: 4px;
        width: 30px;
        height: 30px;
        font-size: 15px;
    }

    .fap-step-text {
        font-size: 11px;
        line-height: 14px;
    }

    .parallax-controls-dot {
        padding: 5px 0 0;
    }

    .parallax-carousel {
        height: 155px;
    }

    .parallax-button {
        padding: 50px 0 35px;
    }

}









@media (max-width : 450px) {

    .container-logo {
        width: auto;
    }

    .container-logo img {
        padding: 0;
        width: 80%;
    }

    .fap-trips-wrap ul li {
        padding: 0;
    }

    .fap-box {
        padding: 10px;
    }

    .fap-box strong {
        margin-bottom: 5px;
        font-size: 12px;
        line-height: 15px;
    }

    .fap-trips-wrap {
        padding: 0 0 15px;
    }

    .container-fare-alerts-plus {
        padding: 25px 10px 10px;
    }

    .parallax-carousel {
        width: 100%;
    }

    .parallax-carousel-text {
        font-size: 14px;
    }

    .fap-section-title {
        font-size: 13px;
    }

    .fap-price-para {
        width: 100%;
    }

    .parallax-carousel-container {
        left: 450px;
    }

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

    .fap-form-fields-inner-left {
        margin-bottom: 5px;
    }

    .fap-step-boxes-wrap {
        margin: 0 auto 15px;
    }

}



@media (max-width : 320px) {

    .ui-datepicker {
        padding: 0 !important;
        border: 1px solid #172838;
    }

    .ui-datepicker .ui-datepicker-header {
        border-radius: 0 !important;
    }

    body.fare-alert-plus #datepicker {
        width: 85% !important;
        left: 4% !important;
    }

}
body.newsletter {
    background-image: url('https://www.flighthub.com/images/newsletter-bg.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
}

body.newsletter header {
    border-bottom: 0 solid #dadada;
    box-shadow: 0 0 0 #ddd;
}

.wrapper-newsletter {
    margin: 0;
    padding: 70px 20px 0;
}

.wrapper-newsletter h1 {
    margin: 0 0 25px 0;
    font-size: 40px;
    line-height: 50px;
    color: #f9f9f9;
    font-weight: 700;
    text-align: center;
}

.wrapper-newsletter h1 span {
    font-size: 30px;
    line-height: 40px;
    font-weight: 400;
    display: block;
}

.container-newsletter {
    margin: 0 auto;
    padding: 20px;
    max-width: 700px;
    font-size: 15px;
    line-height: 22px;
    color: #555;
    background: #fff;
    border-radius: 12px;
}

.newsletter-title {
    margin: 0 0 15px;
    padding: 0 0 5px;
    font-size: 38px;
    line-height: 48px;
    border-bottom: 1px solid #cdcdcd;
}

.newsletter-page-form-wrap {
    margin-top: 20px;
    padding: 15px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: relative;
    background: #f9f9f9;
    border: 1px solid #dcdcdc;
    border-radius: 3px;
}

.newsletter-page-form-left {
    padding-right: 5px;
    flex: 1;
}

.newsletter-page-form-right {
    flex: 0 1 auto;
}

.newsletter-page-form-left input {
    padding: 15px;
    width: 100%;
    height: 50px;
    font-size: 15px;
    border: 1px solid #dcdcdc;
    border-radius: 3px;
    white-space: nowrap;
}

.newsletter-page-button {
    padding: 15px;
    color: #fff;
    width: 100%;
    background-color: #ec5300;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    display: block;
    text-align: center;
    outline: none;
    height: 50px;
    border: 0;
    border-radius: 3px;
    transition: all 0.2s;
}

.newsletter-page-button:hover {
    background-color: #fa6818;
    color: #fff;
}

.newsletter-loading {
    padding-top: 5px;
    text-align: center;
    position: absolute;
    top: 20px;
    right: -19px;
}
/* checkout baggage info modal */
.iframe.site.baggage-information {
    background-color: #fff;
}
.ss-fhub.site.baggage-information .baggage-info-wrap {
    padding-top: 15px;
}

body.checkout .baggage-information-modal-box .container-modal-content {
    padding: 5px;
}

.baggage-info-wrap {
    display: flex;
    flex-direction: column;
    background-color: #fff;
    max-width: 630px;
    margin: 0 auto;
}

.baggage-info-wrap > ul {
    padding: 0 5px;
}

.baggage-info-wrap > ul li {
    padding: 5px 0 5px 17px;
    position: relative;
    text-align: left;
}

.baggage-info-wrap > ul li:before {
    content: '\f00c';
    position: absolute;
    left: 0;
    top: 5px;
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    font-size: 12px;
    color: #0f547f;
}

.baggage-info-wrap .baggage-info-title {
    font-size: 16px;
    line-height: 18px;
    font-weight: 700;
    color: #333;
    text-align: center;
    margin-bottom: 10px;
    padding-bottom: 8px;
}

.baggage-info-wrap .baggage-info-annotation {
    margin-left: auto;
    margin-right: 0;
    display: flex;
    gap: 10px;
    margin-bottom: 2px;
}

.baggage-info-wrap .baggage-info-table {
    margin: 0 0 10px;
    display: flex;
    background-color: #FFF;
    align-items: center;
    border: 1px #dcdcdc solid;
}

.baggage-info-airline {
    flex: 0 0 150px;
    padding: 10px 15px;
    text-align: center;
    border-right: 1px #dcdcdc solid;
}

.baggage-info-airline img {
    margin: 0 auto !important;
    display: block;
}

.baggage-info-list {
    padding: 10px 20px;
    flex: 1 1 auto;
    text-align: left;
}

.fixed-modal-content,
.fixed-modal-content ul li {
    color: #333;
    font-size: 13px !important;
    line-height: 20px !important;
}

.column .fixed-modal-content  ul {
    margin-bottom: 0 !important;
}

.baggage-info-list ul li {
    display: flex;
}

.baggage-info-list ul li span:first-child {
    padding-right: 10px;
    flex: 0 0 auto;
    min-width: 180px;
}

.baggage-info-list ul li span {
    /*flex: 1 1 auto;*/
}

.baggage-info-list-item ul li span.nof::before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '\f05e';
    font-size: 12px;
    color: #D45148;
    margin-left: 0;
    margin-right: 4px;
}

.baggage-info-list-item ul li span.inc::before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '\f00c';
    font-size: 11px;
    color: #67A838;
    margin-left: 0;
    margin-right: 3px;
}

.baggage-info-list-item ul li span.cha::before {
    font-family: "Font Awesome 5 Free", Fontawesome;
    font-weight: 900;
    content: '\f155';
    font-size: 13px;
    color: #67A838;
    margin-left: 1px;
    margin-right: 6px;
}

.package-tooltip-element,
.package-flight-number-detail,
.flight-info-tooltip,
.stops-tooltip,
.flight-amenities-tooltip-content {
    display: none;
    position: absolute;
    z-index: 3;
    background: #fff;
    color: #444;
    line-height: 1.2;
    font-weight: normal;
    border: 1px solid #cacaca;
    border-radius: 2px;
    box-shadow: rgb(204, 204, 204) 0 0 5px;
}

.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: #cacaca;
    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;
}

.baggage-info-list-item ul li span.cha a {
    text-transform: lowercase;
}

.baggage-info-list-item .flight-info-trigger-wrap.has-hidden-content .fa-info-circle {
    padding-right: 0;
    flex: 0 0 10px;
    min-width: 10px;
    color: #999;
    font-size: 10px;
    position: relative;
    top: -3px;
}

.baggage-info-list-item .flight-info-trigger-wrap.has-hidden-content .fa-info-circle:hover {
    color: #0074A4;
}

.baggage-info-list-item .flight-info-trigger-wrap.has-hidden-content .personal-item-tooltip {
    padding: 8px 10px;
    width: 320px;
}

.flight-info-trigger-wrap {
    position: relative;
    display: inline-block;
    color: #999;
}

.flight-info-tooltip-trigger {
    font-size: 13px;
    cursor: pointer;
}

.baggage-info-list-item .flight-info-trigger-wrap.has-hidden-content .flight-info-tooltip {
    left: auto;
    bottom: auto;
    margin-left: -5px;
    top: -100px;
}

[data-baggage-info-content] {
    display: none;
}

.checkout-b-baggage-right {
    padding: 0;
    display: block;
    color: #999;
    width: auto;
}

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

    .baggage-info-wrap .baggage-info-table {
        flex-flow: column;
    }

    .baggage-info-airline {
        flex: auto;
        border-right: 0;
        padding: 10px 10px 0 10px;
    }

    .baggage-info-list {
        padding: 10px 15px;
    }

    .baggage-info-list ul li span:first-child {
        flex: 0 0 auto;
        min-width: 150px;
    }

}

.fhub.booking.detail .baggage-information-modal-box .container-modal-content .baggage-info-wrap {
    padding: 15px;
}

.fhub.booking.detail .container-modal .container-modal-content .fare-rules-policy-text {
    padding: 15px;
    width: 100%!important;
}
.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;
    }

}
