@charset "UTF-8";
/*
    Some links:
    Shades of grey: http://www.december.com/html/spec/color0.html
*/
/* http://stackoverflow.com/questions/9285564/how-to-obtain-a-grid-of-equal-height-list-items */
/**
    This wraps the loooooooonnnnnngggggg non-whitespace containing words
 */
/*
  Optionally "group" class is clearfix hack class to solve floating problem. Use "group" class
  with "section" class to force clear the children of "section".
  Example:
    <div class="section group">
        <div class="col span_4"> 4 of 12 </div>
        <div class="col span_8"> 8 of 12 </div>
    </div>
*/
/*  SECTIONS  */
.section {
    clear: both;
    padding: 0px;
    margin: 0px;
}

/*  COLUMN SETUP  */
.col {
    display: block;
    float: left;
    margin-left: 1%;
    margin-right: 0;
}

.col:first-child {
    margin-left: 0;
}

/*  GROUPING  */
.group:before,
.group:after {
    content: "";
    display: table;
}

.group:after {
    clear: both;
}

.group {
    zoom: 1;
    /* For IE 6/7 */
}

/*  GRID OF TWELVE  */
.span_12 {
    width: 100% !important;
}

.span_11 {
    width: 91.58% !important;
}

.span_10 {
    width: 83.16% !important;
}

.span_9 {
    width: 74.75% !important;
}

.span_8 {
    width: 66.33% !important;
}

.span_7 {
    width: 57.91% !important;
}

.span_6 {
    width: 49.5% !important;
}

.span_5 {
    width: 41.08% !important;
}

.span_4 {
    width: 32.66% !important;
}

.span_3 {
    width: 24.25% !important;
}

.span_2 {
    width: 15.83% !important;
}

.span_1 {
    width: 7.416% !important;
}

.span_offset_1 {
    margin-left: 7.416% !important;
}

/*  GO FULL WIDTH BELOW 480 PIXELS */
@media only screen and (max-width: 480px) {
    .col {
        margin-left: 0;
        margin-right: 0;
    }
    .span_1, .span_2, .span_3, .span_4, .span_5, .span_6, .span_7, .span_8, .span_9, .span_10, .span_11, .span_12 {
        width: 100% !important;
    }
}

@media only screen and (max-width: 480px) {
    .custom_col {
        display: block;
        float: left;
        margin-left: 1%;
        margin-right: 0;
    }
    .book-widget-padding {
        padding-left: 0px;
        padding-right: 0px;
    }
    .custom_col:first-child {
        margin-left: 0;
    }
    .custom_span_6 {
        width: 49.5% !important;
    }
    .custom_span_5 {
        width: 41.08% !important;
    }
    .custom_span_7 {
        width: 57.91% !important;
    }
    .custom_span_4 {
        width: 32.66% !important;
    }
}

/**
 * This file contains css resets for style coded inline on HTML stored in our backend.
 * Old site designers chose to store inline style css in HTML stored in backend. When we migrated to new design,
 * this inline css is breaking the designs. This file contains resets for such found tags.
 *
 * As more HTML is found with inline css, update this file with their css-reset style. When new site design is
 * considered in future, if we keep same HTML in our backend, this file could be copied as such to reset styles in
 * that HTML.
 *
 * Guidelines:
 *  - add a comment which page(s) the bad inline style containing HTML can be found on.
 *  - use !important flag to override the inline css.
 *  - use [style] attribute css selector to make sure the reset is only applied to nodes which contain "style" attribute
**/
/* found on /airport-identification page */
p.MsoListParagraphCxSpMiddle[style],
p.MsoListParagraphCxSpLast[style] {
    text-indent: 0 !important;
}

/*********************************************************************************
				Browser Specific Overrides
*********************************************************************************/
menu, dir {
    -webkit-padding-start: 0;
}

/*********************************************************************************
				Site Content CSS Overrides
*********************************************************************************/
/*
ul {
    list-style: none;
}
*/
/*********************************************************************************
				Bootstrap CSS Overrides
*********************************************************************************/
.pager li > a,
.pager li > span {
    border-radius: 0;
    border: 0;
    color: #3B5A74;
    border-bottom: 1px solid #3B5A74;
}

.pager li > a.selected,
.pager li > span.selected {
    color: #F2676B;
    border-bottom: 1px solid #F2676B;
}

.pager li > a:hover,
.pager li > span:hover {
    color: #ffffff;
    border-color: #3B5A74;
    background: #F2676B;
}

.pagination {
    margin: 1em 0;
}

.pagination > li > a,
.pagination > li > span {
    color: #07253F;
}

.pagination > .active > a,
.pagination > .active > a:focus,
.pagination > .active > a:hover,
.pagination > .active > span,
.pagination > .active > span:focus,
.pagination > .active > span:hover {
    background: #07253F;
    border: 1px solid transparent;
}

.pagination > li:first-child > a,
.pagination > li:first-child > span,
.pagination > li:last-child > a,
.pagination > li:last-child > span {
    border-radius: 0;
    font-family: FontAwesome;
    /* to show font awesome icons */
}

.pagination > li.disabled a,
.pagination > li.disabled a:hover {
    background: #e6e6e6;
}

/* Equal height columns. Needed for main site column layouts */
/* src:https://stackoverflow.com/questions/19695784/how-can-i-make-bootstrap-columns-all-the-same-height/19695851#19695851 */
/* BTW, another trick: http://www.minimit.com/articles/solutions-tutorials/bootstrap-3-responsive-columns-of-same-height */
.row.row-eq-height {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    /* fix for broken 'flex' support in Safari. We can selectively apply this CSS to safari only
       by targeting .ifly-env--desktop.ifly-env--safari selector
       reference: http://stackoverflow.com/a/36476586 */
}

.row.row-eq-height:before, .row.row-eq-height:after {
    content: normal;
    /* fallback. IE doesn't support `initial` */
    content: initial;
}

.row.row-eq-height > [class*='col-'] {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
}

.panel-group .panel {
    border-radius: 0;
}

/*********************************************************************************
				Plugins CSS Overrides
*********************************************************************************/
#ui-datepicker-div {
    background: #07253F;
    z-index: 9999 !important;
    display: none;
}

#ui-datepicker-div table {
    margin: 10px;
}

.ui-datepicker-calendar a {
    padding: 5px;
    color: #ffffff;
}

.ui-datepicker-calendar a:hover {
    color: #00ADEF;
}

.ui-datepicker-calendar td {
    padding: 10px 5px;
}

.ui-datepicker-calendar .ui-state-disabled {
    color: #565656;
}

.ui-datepicker-calendar .ui-datepicker-today {
    /*  todays date */
    border: 1px solid #fff;
}

.ui-datepicker-calendar .ui-datepicker-current-day {
    /* selected date */
    background: #fff;
}

.ui-datepicker-calendar .ui-datepicker-current-day a {
    color: #000;
}

.ui-datepicker-calendar th {
    color: #ffffff;
    padding: 7px;
}

.ui-datepicker-header {
    margin: 10px;
}

.ui-datepicker-header .ui-datepicker-title {
    color: #ffffff;
    text-align: center;
}

.ui-datepicker-header a {
    color: #ffffff;
    cursor: pointer;
}

.ui-datepicker-header a:hover {
    color: #00ADEF;
}

.ui-spinner-up i {
    color: #BEC4C8;
    float: right;
    margin-top: -27px;
    margin-right: 10px;
    z-index: 99999;
}

.ui-spinner-down i {
    color: #BEC4C8;
    float: left;
    margin-top: -27px;
    margin-left: 10px;
    z-index: 99999;
}

.quantity-padding {
    padding-left: 40px !important;
}

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

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

.custom-select-button {
    background: transparent none repeat scroll 0 0;
    border: 1px solid #BEC4C8;
    border-radius: 0;
    height: 40px;
    width: 100%;
    line-height: 34px;
}

.bootstrap-select.btn-group .dropdown-menu {
    background: #07253F;
    border-radius: 0;
}

.bootstrap-select.btn-group .dropdown-menu li a {
    color: #ffffff;
    background: #07253F !important;
}

.bootstrap-select.btn-group .dropdown-menu li a:hover {
    color: #00ADEF;
}

.bootstrap-select:not([class*="col-"]):not([class*="form-control"]):not(.input-group-btn) {
    width: 100%;
}

/*********************************************************************************
				primis player override
*********************************************************************************/
#primisPlayerContainerDiv #primis_container_div {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index: 999999;
    display: block;
    z-index: initial;
    position: relative;
    text-align: initial;
    margin: 0px;
    padding: 0px;
    border-width: 0px;
    width: 700px;
    height: 466px;
}

@media (max-width: 991px) {
    #primisPlayerContainerDiv {
        display: none;
    }
}

/*********************************************************************************
				Section Module
*********************************************************************************/
.section-module {
    margin-top: 10px;
}

.section-module .section-module-header {
    background: #3B5A74;
    color: #ffffff;
    text-transform: uppercase;
    padding: 0.75em;
}

.section-module .section-module-header > h1, .section-module .section-module-header > h2, .section-module .section-module-header > h3 {
    margin: 0;
    font-weight: bold;
    font-size: 1.25em;
}

.section-module .section-module-body {
    padding: 0.5em 0.5em;
}

.section-module .section-module-body.highlight {
    background: #F3F3F3;
}

.h4-no-margin {
    margin-top: 2px !important;
}

.sec-module-0-margin {
    margin-top: 0px !important;
}

.no-padding {
    padding: 0 0 0 0 !important;
}

.big-title {
    margin-top: 0px !important;
}

.icon-info {
    margin-top: 0px !important;
}

.module-links,
.module-nav {
    width: 100%;
    border-bottom: 2px solid #3B5A74;
    padding: 0.625em;
}

.module-links ul,
.module-nav ul {
    list-style: none;
    display: inline-block;
    font-weight: bold;
    margin: 0;
}

.module-links ul li,
.module-nav ul li {
    display: inline-block;
    padding: 0.125em 1.25em;
}

.module-links ul li.selected,
.module-nav ul li.selected {
    color: #F2676B;
    border-bottom: 2px solid #F2676B;
    background: #F2676B;
}

.module-links ul li.selected a,
.module-nav ul li.selected a {
    color: #ffffff;
}

.module-links {
    padding: 0.5em 1em;
}

.module-links ul {
    font-size: 0.8125em;
    padding-left: 1em;
}

.module-links ul li {
    padding: 0.1875em 0.625em;
    font-weight: normal;
}

@media (max-width: 767px) {
    .module-links span, .module-links ul li {
        display: block;
    }
}

.module-content section {
    margin: 1.75em auto;
}

/*********************************************************************************
				Simple Module
*********************************************************************************/
.simple-module {
    box-shadow: 0px 0px 5px #9da8af;
    overflow: hidden;
    background: #fff;
    /** Header Themes **/
    /* Theme to make header look exactly like section-module */
    /* Theme to make header have lighter background */
}

.simple-module .simple-module-header {
    background: #07253F;
    margin: 0px;
    padding: 15px;
    color: #fff;
    text-transform: uppercase;
    font-size: 18px;
}

.simple-module .simple-module-header.style-thin {
    padding: 8px 15px;
}

.simple-module .simple-module-header.alt-style {
    background: #3B5A74;
}

.simple-module .simple-module-header.alt-theme-style {
    background: #F2676B;
}

.simple-module .simple-module-header.light-style {
    background: #d5dadd;
    color: #07253F;
}

.simple-module .simple-module-header.alt-body + .simple-module-body {
    background: #F3F3F3;
}

.simple-module .simple-module-body {
    padding: 10px 10px 0px;
    overflow: hidden;
}

.simple-module.theme-section-module .simple-module-header {
    background: #3B5A74;
    font-weight: bold;
}

.simple-module.theme-light-header .simple-module-header {
    background: #e1e1e1;
    font-weight: bold;
    color: initial;
}

/* apply stretch-child-simple-module class to parent of simple-module to make simple-module stretch to fill parent */
.stretch-child-simple-module > .simple-module {
    height: 100%;
}

.stretch-child-simple-module > .simple-module > .simple-module-body {
    height: 100%;
}

/*********************************************************************************
				Panel Module
*********************************************************************************/
@media screen and (min-width: 1001px) {
    .panel.panel-module {
        border: none;
        background: none;
    }
    .panel.panel-module .panel-body {
        border-radius: 0 0 4px 4px;
        box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
        border: 1px solid transparent;
        border-top-width: 0;
        background: #fff;
        overflow: hidden;
        position: relative;
    }
    .panel-module.panel-main .panel-heading {
        color: #fff;
        position: relative;
        background-color: #0A3152;
    }
    .panel-module.panel-main .panel-heading .panel-title--addon {
        display: inline-block;
        height: 50%;
        position: absolute;
        right: 15px;
        top: 0;
        /* setting top=bottom=0 and margin=auto will vertically center absolute positioned item */
        bottom: 0;
        margin: auto;
    }
    .panel-module.panel-main .panel-heading a {
        color: #fff;
    }
    .panel-module.panel-main .panel-body {
        border-color: #3B5A74;
    }
}

@media screen and (max-width: 1000px) {
    .panel.panel-module {
        border: none;
        background: none;
    }
    .panel.panel-module .panel-body {
        border-radius: 0 0 4px 4px;
        box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
        border: 1px solid transparent;
        border-top-width: 0;
        background: #fff;
        overflow: hidden;
        position: relative;
    }
    .panel-module.panel-main .panel-heading {
        color: #fff;
        position: relative;
        background-color: #0A3152;
    }
    .panel-module.panel-main .panel-heading .panel-title--addon {
        display: inline-block;
        height: 50%;
        right: 15px;
        top: 0;
        /* setting top=bottom=0 and margin=auto will vertically center absolute positioned item */
        bottom: 0;
        margin: auto;
    }
    .panel-module.panel-main .panel-heading a {
        color: #fff;
    }
    .panel-module.panel-main .panel-body {
        border-color: #3B5A74;
    }
}

/*********************************************************************************
                Tabs Widget
*********************************************************************************/
.tabs-widget {
    background: #0A3152;
    padding: 0.15em;
}

.tabs-widget .tab-widget-title {
    display: inline-block;
    font-weight: bold;
    margin: 0;
    padding-left: 0.5em;
    padding-right: 9px;
    color: #fff;
}

.tabs-widget ul.tabs {
    margin: 0;
    padding: 0;
    display: inline-block;
    margin: 1px auto -1px;
}

.tabs-widget .tab {
    display: inline-block;
    zoom: 1;
    *display: inline;
    background: #E5E6E6;
    border: solid 1px #999;
    border-bottom: none;
    border-radius: 0px 0px 0 0;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
}

.tabs-widget .tab a {
    font-size: 14px;
    line-height: 2;
    display: block;
    padding: 0 10px;
    outline: none;
}

.tabs-widget .tab.active {
    background: #fff;
    padding-top: 6px;
    position: relative;
    top: 0px;
    border-color: #666;
}

.tabs-widget .tab.active a {
    font-weight: bold;
}

.tabs-widget .tab-content {
    background: #fff;
    border: solid #666 1px;
    padding: 10px;
    border-radius: 0px;
}

.tabs-widget .tab-pane {
    height: 100%;
    overflow: auto;
    /* makes the content scroll on the tab-pane if more than height of tab-pane. */
}

.tabs-widget.type-wide {
    background: none;
}

.tabs-widget.type-wide ul {
    width: 100%;
    text-align: justify;
}

.tabs-widget.type-wide .tab {
    text-align: center;
    margin-right: -4px;
}

.tabs-widget.type-wide .tab.active {
    background: #F2676B;
}

.tabs-widget.type-wide .tab.active a {
    color: #fff;
}

/*********************************************************************************
				Widget Module
*********************************************************************************/
.widget-module-header {
    display: block;
    background: #3B5A74 !important;
    color: #ffffff;
    border: 1px solid transparent;
    padding: 15px;
    letter-spacing: 1px;
    font-weight: bold;
    border-radius: 2px 2px 0 0;
    text-transform: uppercase;
    font-size: 1em;
}

.widget-module-body {
    height: auto;
    padding: 1em 4em;
    background: #ffffff;
}

/*********************************************************************************
				Bootstrap Accordian
*********************************************************************************/
/* chevron icon at end of accordian panel-heading */
.panel-heading .accordion-toggle:after {
    /* symbol for "opening" panels */
    font-family: 'Glyphicons Halflings';
    /* essential for enabling glyphicon */
    content: "\e114";
    /* adjust as needed, taken from bootstrap.css */
    float: right;
    /* adjust as needed */
    color: grey;
    /* adjust as needed */
}

.panel-heading .accordion-toggle.collapsed:after {
    /* symbol for "collapsed" panels */
    content: "\e080";
    /* adjust as needed, taken from bootstrap.css */
}

/*********************************************************************************
                            Lightbox
*********************************************************************************/
.mfp-close-btn-in .mfp-close {
    color: black;
}

.video-overlay {
    position: absolute;
    top: 0;
    left: 5px;
    z-index: 1;
}

.videoad-text-color {
    color: black;
}

@media (min-width: 800px) and (max-width: 2500px) {
    .custom-button-align {
        right: 52% !important;
    }
}

@media screen and (min-width: 2501px) {
    .custom-button-align {
        right: 57% !important;
    }
}

@media screen and (max-width: 600px) {
    .videoad-text-color {
        color: white;
        font-size: 73%;
    }
    .video-overlay {
        position: absolute;
        top: 5px;
        left: 5px;
        z-index: 1;
    }
}

.lightbox--close-in {
    /* offset close button to right-top moving it outside */
}

.lightbox--close-in .lightbox-content {
    position: relative;
    display: inline-block;
    top: 80px;
    max-width: 100%;
    max-height: 95%;
}

.lightbox--close-in .lightbox-content .mfp-close {
    font-size: 1.8em;
    opacity: 1;
}

.lightbox--close-in .custom-lightbox-content {
    top: 10px !important;
    bottom: 10px !important;
    width: 100% !important;
}

@media (max-width: 2000px) and (min-width: 1600px) {
    .lightbox--close-in .custom-lightbox-content {
        top: 10px !important;
        bottom: 10px !important;
        width: 68% !important;
    }
}

@media screen and (min-width: 2001px) {
    .lightbox--close-in .custom-lightbox-content {
        top: 10px !important;
        bottom: 10px !important;
        width: 53% !important;
    }
}

.lightbox--close-in.offset-close-btn .mfp-close {
    right: -15px;
    top: -15px;
    border-radius: 20px;
    border: 2px solid #fff;
    width: 30px;
    height: 30px;
    line-height: 29px;
    background-color: #00ADEF;
}

/* mobile app download interstitial popup */
.lightbox--mobile-interstitial .mfp-content {
    text-align: center;
    height: 100%;
}

[data-role="interstitial"] img {
    max-width: 100%;
    max-height: 100%;
}

/* book travel ad popup */
.book_travel_ad_popup .mfp-content {
    height: 100%;
}

.book_travel_ad_popup .lightbox-content {
    text-align: initial;
    position: absolute;
    top: auto;
    right: 30%;
    bottom: 15%;
}

/* select-airport prompt popup */
.pickup_airport_popup .lightbox-content {
    display: block;
    margin: auto;
    min-width: 300px;
    max-width: 700px;
}

.pickup_airport_popup .lightbox-content .widget-module-body {
    padding: 1em;
}

/* reserve parking popup */
.reserve_parking_popup .mfp-content {
    text-align: center;
}

.reserve_parking_popup .lightbox-content {
    text-align: initial;
}

.reserve_parking_popup .widget-module-body {
    padding: 1em;
}

.reserve_parking_popup .popup--title-message {
    font-weight: bold;
    margin-bottom: 25px;
}

.reserve_parking_popup .popup--title-message-p {
    font-size: 14.5px;
    font-weight: bold;
}

.reserve_parking_popup .parking-reservation-suggestion {
    min-height: 90px;
}

.reserve_parking_popup .parking-reservation-suggestion a[data-role="button"] {
    position: absolute;
    right: 85px;
    top: 30px;
}

.mfp-align-top .mfp-container:before {
    display: inline-block;
    height: 50%;
}

/*********************************************************************************
                            Articles
*********************************************************************************/
.block-title {
    display: block;
    font-weight: bold;
    margin-bottom: 1em;
}

/*********************************************************************************
                            Forms
*********************************************************************************/
.form-group .form-control,
.form-group button {
    height: 2.5em;
}

.form-control {
    background-color: #ffffff;
    color: #07253F;
    border: 1px solid #BEC4C8;
    border-radius: 0;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    display: block;
    line-height: 1.42857;
    transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
    width: 100%;
}

.form-row {
    width: 100%;
    display: block;
    margin-bottom: 1em;
}

.form-row:before, .form-row:after {
    content: "";
    display: table;
}

.form-row:after {
    clear: both;
}

/*********************************************************************************
                            Lists
*********************************************************************************/
.column-list {
    list-style: none;
    font-size: 0.875em;
    margin-top: 0.5em;
}

.column-list li {
    padding: 0.5em 0;
    break-inside: avoid-column;
}

.wrap-to-cols {
    column-gap: 8.5em;
}

@media (max-width: 767px) {
    .wrap-to-cols {
        column-count: 1;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .wrap-to-cols {
        column-count: 2;
    }
}

@media (min-width: 1200px) {
    .wrap-to-cols {
        column-count: 3;
    }
}

.wrap-to-cols.two-col-max {
    column-gap: 11.5em;
}

@media (max-width: 991px) {
    .wrap-to-cols.two-col-max {
        column-count: 1;
    }
}

@media (min-width: 992px) {
    .wrap-to-cols.two-col-max {
        column-count: 2;
    }
}

.wrap-to-cols.tight-cols {
    column-gap: 2.5em;
}

/*********************************************************************************
             Autocomplete (https://github.com/devbridge/jQuery-Autocomplete)
*********************************************************************************/
.autocomplete-suggestions {
    border: 1px solid #999;
    background: #07253F;
    cursor: default;
    overflow: auto;
    box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
    color: #fff;
}

.autocomplete-suggestion {
    padding: 5px 5px;
    overflow: hidden;
}

.autocomplete-suggestion:not(:last-of-type) {
    border-bottom: 1px dotted #ccc;
}

.autocomplete-no-suggestion {
    padding: 2px 5px;
}

.autocomplete-selected {
    color: #00ADEF;
}

.autocomplete-suggestions strong {
    font-weight: bold;
}

.autocomplete-group {
    padding: 2px 5px;
}

.autocomplete-group strong {
    font-weight: bold;
    font-size: 16px;
    color: #000;
    display: block;
    border-bottom: 1px solid #000;
}

/*********************************************************************************
             Tables
*********************************************************************************/
.two-col-data-table {
    width: 100%;
    font-size: 90%;
}

.two-col-data-table td {
    width: 50%;
}

.two-col-data-table td + td {
    text-align: right;
}

/*********************************************************************************
             Text Styles
*********************************************************************************/
.text-block {
    margin-bottom: 20px;
    /* use .descr-paragraph for json format content coming from server, and .content-block for html format content */
    /* following classes are found applied to elements in HTML stored in DB in old site. */
}

.text-block > .text-block-header {
    margin-bottom: 10px;
    /* NOTE: the HTML where this css will be applied is generated by migration script and is stored on S3. */
}

.text-block > .text-block-header h2, .text-block > .text-block-header h3 {
    font-weight: bold;
    border-bottom: 1px solid #E3E6E8;
    padding-bottom: 0.5em;
}

.text-block > .text-block-header h2.stronger, .text-block > .text-block-header h3.stronger {
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.text-block > .text-block-header h3 {
    font-size: 22px;
}

.text-block > .text-block-header h4 {
    font-weight: bold;
    position: relative;
}

.text-block > .text-block-header .text-block-heading {
    margin-top: 2px;
    font-size: 18px;
    /* equivalent of h4 weight */
}

.text-block > strong {
    margin-bottom: 5px;
}

.text-block > .descr-paragraph,
.text-block > .content-block {
    line-height: 1.8;
    margin: 0 0 10px;
}

@media only screen and (max-width: 1600px) {
    .text-block > .descr-paragraph p a img,
    .text-block > .content-block p a img {
        max-width: 1600px !important;
    }
}

@media only screen and (max-width: 1200px) {
    .text-block > .descr-paragraph p a img,
    .text-block > .content-block p a img {
        max-width: 1200px !important;
    }
}

@media only screen and (max-width: 992px) {
    .text-block > .descr-paragraph p a img,
    .text-block > .content-block p a img {
        max-width: 992px !important;
    }
}

@media only screen and (max-width: 480px) {
    .text-block > .descr-paragraph p a img,
    .text-block > .content-block p a img {
        max-width: 480px !important;
    }
}

.text-block > .descr-paragraph p + strong {
    display: inline-block;
    padding-bottom: 0.4em;
}

.text-block .left-block {
    float: left;
    padding-right: 5px;
}

.text-block .right-block {
    float: right;
    padding-left: 5px;
}

.text-block .hanging-indent {
    padding-left: 20px;
    margin-bottom: 0;
}

.text-block .hanging-indent:before {
    content: "\f0da";
    font-family: FontAwesome;
    margin-left: -1em;
    float: left;
}

/* this css class comes from older site data. The tags in that data are inlined with class names so in order
   to target those elements we need css rules with those classes */
.mod-bd, .mod-hd {
    /* make h2, h3 similar in appearance to our 'text-block-heading' class */
}

.mod-bd h2, .mod-bd h3, .mod-hd h2, .mod-hd h3 {
    font-size: 18px;
    /* equivalent of h4 weight */
    font-weight: bold;
    border-bottom: 1px solid #E3E6E8;
    padding-bottom: 0.5em;
}

/****************book-travel-widget************/
.custom-align {
    text-align: center;
}

@media only screen and (max-width: 480px) {
    .custom_flight-direction-radio {
        padding-top: 35px !important;
    }
}

/*********************************************************************************
             Spinners
*********************************************************************************/
.circle-spinner {
    box-sizing: border-box;
    width: 35px;
    height: 35px;
    border-radius: 100%;
    border: 4px solid rgba(59, 90, 116, 0.2);
    border-top-color: #3B5A74;
    animation: spin 1s infinite linear;
}

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

.bounce-loader-wrapper {
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
}

.bounce-loader {
    margin: 0 auto;
    width: 70px;
    text-align: center;
}

.bounce-loader > div {
    width: 12px;
    height: 12px;
    background-color: #F2676B;
    border-radius: 100%;
    display: inline-block;
    animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.bounce-loader .dot1 {
    animation-delay: -0.32s;
}

.bounce-loader .dot2 {
    animation-delay: -0.16s;
}

@keyframes sk-bouncedelay {
    0%, 80%, 100% {
        transform: scale(0);
    }
    40% {
        transform: scale(1);
    }
}

/*********************************************************************************
				Ads
*********************************************************************************/
.ad {
    background-color: transparent;
    color: #000;
    display: inline-block;
    font-size: 100%;
    font-weight: bold;
    text-align: center;
    vertical-align: middle;
}

.ad.ad--align-right {
    float: right !important;
    clear: right;
    margin-left: 0.5em;
}

.ad.ad--align-left {
    float: left !important;
    clear: left;
    margin-right: 0.5em;
}

.responsive {
    width: 100%;
    max-width: 100%;
}

#page-pre-footer-ad {
    margin: 10px 0;
}

/*********************************************************************************
				Design
*********************************************************************************/
/* credit: http://stackoverflow.com/a/29410821 */
.slant-edge {
    position: relative;
    display: inline-block;
    padding: 1em 1em 1em 5em;
    overflow: hidden;
    color: #07253F;
    z-index: 1;
}

.slant-edge:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    border-radius: 5px 0 0 0;
    background: #F3F3F3;
    transform-origin: 0 100%;
    transform: skew(-45deg);
    z-index: -1;
}

/*********************************************************************************
				Images
*********************************************************************************/
/* setting width: 100% on img makes it resize with screen width*/
img.responsive-img {
    width: 100%;
}

/*********************************************************************************
                            Buttons
*********************************************************************************/
.btn-ifly {
    background: #F2676B;
    border-color: #F2676B;
    padding-left: 1em;
    padding-right: 1em;
    border-radius: 0;
    letter-spacing: 1px;
    font-weight: bold;
    font-size: 15px;
    color: #fff;
    transition: all 0.3s ease;
}

.btn-ifly > a {
    color: #fff;
}

.btn-ifly:hover {
    background: #00adef;
    color: #fff;
}

.btn-ifly + .btn-ifly {
    margin-left: 2em;
}

.btn-blu {
    background-color: #3875d7;
    background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
    color: #fff;
}

.btn-nobg {
    background: none;
    border: none;
}

.btn-nobg .caret {
    margin-left: 4px;
}

.form-control + button {
    margin-top: 1em;
}

.cbtn {
    background: #f9676b none repeat scroll 0 0;
    border: medium none;
    border-radius: 0;
    color: #fff;
    font-weight: bold;
    transition: all 0.3s ease;
}

.cbtn > a {
    color: #fff;
}

.cbtn:hover {
    background: #00adef;
}

.lg-btn {
    font-size: 20px;
    padding: 10px 30px;
}

.md-btn {
    font-size: 18px;
    padding: 8px 30px;
}

.sm-btn {
    font-size: 16px;
    padding: 6px 20px;
}

.xs-btn {
    font-size: 14px;
    padding: 4px 14px;
}

.xxs-btn {
    font-size: 11px;
    padding: 2px 6px;
}

.gbtn {
    background: transparent;
    border: 2px solid #f9676b;
    border-radius: 0;
    color: #f9676b;
    font-weight: bold;
    transition: all 0.3s ease;
}

.gbtn:hover {
    background: #f9676b;
    color: #fff;
}

.btn-empty {
    border: 2px solid transparent;
}

.btn-empty:hover {
    background: transparent;
    color: #f9676b;
    border: 2px solid #f9676b;
}

/*********************************************************************************
				Blog/Forums Page Sidebar
*********************************************************************************/
#sidebar-column .sidebar-item {
    border: 1px solid #e6e6e6;
    box-shadow: 0px 0px 5px #e6e6e6;
}

#sidebar-column .sidebar-item h4 {
    background: #e6e6e6 none repeat scroll 0 0;
    padding: 20px 15px;
    font-weight: bold;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin: 0px;
}

#sidebar-column .sidebar-item h4 i {
    color: #F2676B;
    margin-right: 10px;
}

#sidebar-column .sidebar-body {
    padding: 20px;
}

#sidebar-column .sidebar-body ul {
    list-style: disc inside;
}

#sidebar-column .sidebar-body ul li a {
    position: relative;
    /* for chrome, reset move text to left to bring it closed to bullet */
}

.ifly-env--chrome.ifly-env--desktop #sidebar-column .sidebar-body ul li a {
    left: -8px;
}

#sidebar-column .sidebar-body a {
    margin-right: -8px;
}

#sidebar-column .sidebar-body a:hover {
    text-decoration: underline;
}

#sidebar-column .sidebar-body .table {
    margin-bottom: 0px;
}

#sidebar-column .sidebar-body table tr {
    border-bottom: 1px solid #e6e6e6;
}

#sidebar-column .sidebar-body table tr:last-child {
    border-bottom: none;
}

#sidebar-column .sidebar-body table td {
    border-top: none;
}

#sidebar-column .sidebar-body .total {
    font-size: 20px;
    font-weight: bold;
}

.recent-post {
    margin-top: 20px;
    margin-bottom: 20px;
}

.recent-post img {
    max-width: 100%;
}

.recent-post a {
    color: #07253F;
}

.recent-post a:hover {
    color: #00adef;
}

.recent-post .wrapper {
    margin-bottom: 15px;
    overflow: hidden;
}

.recent-post .wrapper:last-child {
    margin-bottom: 0px;
}

.sidebar-subscribe {
    margin: 20px 0px;
}

.sidebar-subscribe .form-control {
    height: 40px;
    border-radius: 0px;
}

.sidebar-subscribe button {
    border: 0px;
    color: #ffffff;
    background: #F2676B;
    margin-top: 20px;
    padding: 10px 20px;
    font-weight: bold;
}

.sidebar-subscribe button:hover {
    background: #00adef;
}

.sidebar-subscribe label {
    display: block;
    text-align: left;
}

.post-cat {
    margin: 20px 0px;
}

.post-cat a {
    color: #07253F;
}

.post-cat a:hover {
    color: #00adef;
}

.post-cat .list-group {
    margin-bottom: 0px;
}

.transparent-menu-top {
    background-color: #07253F !important;
}

/*-------------------------------- OTHER PAGES -----------------------------*/
body.blog-site {
    background: #fff;
    font: 15px/1.231 arial, helvetica, clean, sans-serif;
    font-family: "Avenir","Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;
}

.sidebar-share .sidebar-body {
    text-align: center;
}

.sidebar-share .social-media-share {
    padding: 0px;
    list-style-type: none;
    display: inline-block;
}

.sidebar-share .social-media-share li {
    display: inline-block;
    margin: 0px 10px;
    background-color: #F2676B;
    height: 40px;
    width: 40px;
    text-align: center;
}

.sidebar-share .social-media-share li:hover {
    background-color: #00ADEF;
}

.sidebar-share .social-media-share li a {
    padding: 5px;
    color: #fff;
    line-height: 40px;
    font-size: 1.4em;
    left: -3px !important;
}

/*********************************************************************************
				Blog List Page
*********************************************************************************/
.blog-page-title {
    background-color: rgba(10, 49, 82, 0.8);
    color: #fff;
    padding: 60px 0px;
    background-attachment: fixed;
    background-size: contain;
    text-align: center;
}

.blog-page-title h1 {
    font-weight: 800;
    letter-spacing: 2px;
    margin-top: 0;
    color: #fff !important;
}

.blog-page-title h5 i {
    color: #F19C4F;
}

.blog-page-title p {
    color: #fff;
}

.blog-page-title p i {
    margin-right: 5px;
}

.post-wrapper {
    border: 1px solid #e6e6e6;
    box-shadow: 0px 0px 5px #e6e6e6;
    margin-top: 20px;
    margin-bottom: 20px;
}

.post-wrapper img {
    max-width: 100%;
}

.post-wrapper h1, .post-wrapper h2, .post-wrapper h3 {
    font-weight: normal;
    line-height: 1.3;
    font-size: 15px;
    margin-top: 7px;
    margin-bottom: 7px;
}

.post-wrapper strong {
    font-weight: normal;
}

.post-wrapper p {
    line-height: 1.8;
    margin-bottom: 10px;
}

.post-wrapper .blog-list-title {
    font-size: 160%;
    font-weight: bold;
}

.post-wrapper .blog-list-tags {
    font-size: 85%;
    border-bottom: 1px solid #d5d5d5;
}

.post-wrapper .truncate-link {
    font-weight: bold;
    padding-left: 4px;
    color: #00adef;
}

.post-wrapper .truncate-link:hover {
    text-decoration: underline;
}

.post-wrapper .youtube-video {
    width: 100%;
    height: 425px;
    border: none;
}

.post-body {
    padding: 0px 20px;
    overflow: hidden;
}

.post-body p i {
    color: #f2676b;
    margin: 0px 5px;
}

.post-body p a {
    color: #172755;
}

.post-body p a:hover {
    color: #00adef;
}

.post-footer {
    overflow: hidden;
    background: #e6e6e6;
}

.post-footer h5 {
    margin-top: 14px;
    font-size: 12px;
    color: #777;
}

.post-footer h5 a {
    color: #00adef;
}

.post-footer .read-more a {
    background: #f2676b none repeat scroll 0 0;
    color: #fff;
    display: inline-block;
    font-weight: bold;
    padding: 10px 20px;
}

.post-footer .read-more a:hover {
    background: #00adef;
}

.blog-load-more {
    display: inline-block;
    color: #ffffff;
    background: #f2676b;
    padding: 10px 40px;
    font-weight: bold;
    margin-bottom: 40px;
}

.blog-load-more:hover {
    background: #00adef;
    color: #ffffff;
}

.blog-paginator {
    margin: 1em 0 1.5em;
    font-size: 150%;
    padding: 8px;
    background-color: rgba(10, 49, 82, 0.8);
}

.blog-paginator div a {
    color: #fff !important;
}

.blog-paginator div:first-child {
    text-align: left;
}

.blog-paginator div:last-child {
    text-align: right;
}

.blog-nav-links {
    padding: 30px 6px;
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    margin-bottom: 1.2em;
    overflow: hidden;
}

.blog-nav-links a {
    color: #F2676B;
}

.blog-nav-links a:hover {
    color: #00adef;
}

/*********************************************************************************
				Blog Post Page
*********************************************************************************/
.single-post-wrapper {
    margin-top: 40px;
}

.single-post-wrapper .blog-title h3 {
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 1.3;
    text-transform: uppercase;
}

.single-post-wrapper .blog-title p i {
    color: #f2676b;
    margin: 0px 5px;
}

.single-post-wrapper .blog-title p a {
    color: #172755;
    font-size: 85%;
}

.single-post-wrapper .blog-title p a:hover {
    color: #00adef;
}

.single-post-wrapper .main-content {
    line-height: 1.8;
}

.single-post-wrapper .main-content h1, .single-post-wrapper .main-content h2, .single-post-wrapper .main-content h3 {
    font-weight: normal;
    line-height: 1.8;
    font-size: 15px;
    margin-top: 7px;
    margin-bottom: 7px;
}

.single-post-wrapper .main-content img {
    max-width: 100%;
    margin-top: 15px;
    margin-bottom: 20px;
}

.single-post-wrapper .main-content h4 {
    font-weight: bold;
    margin: 15px 0px;
}

.single-post-wrapper .main-content .social-share {
    margin: 30px 0px;
}

.single-post-wrapper .main-content .social-share a {
    color: #172755;
}

.single-post-wrapper .main-content .social-share a:hover {
    color: #00adef;
}

.single-post-wrapper .main-content .social-share i {
    font-size: 25px;
    margin: 0px 10px;
}

.single-post-wrapper .main-content .social-share p {
    font-weight: bold;
}

.author-wrapper {
    padding: 30px;
    overflow: hidden;
    background: #e6e6e6;
}

.author-wrapper .author-detail img {
    border-radius: 50%;
}

.author-wrapper .author-detail h4 {
    margin-bottom: 5px !important;
}

.comment-box {
    margin-top: 40px;
}

.comment-wrapper {
    overflow: hidden;
    margin: 15px 0px;
}

.comment-wrapper img {
    border-radius: 50%;
    margin: 0px !important;
}

.comment-wrapper .comment-body {
    background: #e6e6e6;
    padding: 20px;
    position: relative;
}

.comment-wrapper .comment-body:before {
    background: #e6e6e6 none repeat scroll 0 0;
    content: "";
    height: 20px;
    left: -10px;
    position: absolute;
    transform: rotate(45deg);
    width: 20px;
}

.comment-wrapper .comment-body h4 {
    margin-bottom: 5px;
    margin-top: 0px;
}

.comment-wrapper .comment-body h5 {
    margin-bottom: 0px;
    text-align: right;
}

.comment-wrapper .comment-body span {
    margin: 0 0 5px;
    display: block;
}

.comment-wrapper .comment-body i {
    margin: 0px 5px;
    font-size: 85%;
}

.comment-wrapper .comment-body p {
    margin-bottom: 0px;
}

.comment-wrapper .comment-body a {
    color: #F2676B;
}

.leave-comment {
    overflow: hidden;
    margin: 40px 0px;
    /* all form-controls except textarea */
}

.leave-comment .form-control:not(textarea) {
    height: 40px;
    border-radius: 0px;
}

.leave-comment label {
    font-weight: normal;
    margin-top: 15px;
}

.leave-comment .post-comment {
    background: #f2676b none repeat scroll 0 0;
    border: medium none;
    border-radius: 0;
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    margin-top: 20px;
    padding: 10px 50px;
}

.leave-comment .post-comment:hover {
    background: #00adef;
    color: #ffffff;
}

body.forums-site {
    background: #fff;
}

/*********************************************************
			Forum/Airport-Forum HomePage
**********************************************************/
ul.thread-list {
    overflow-y: scroll;
}

ul.thread-list li {
    overflow: auto;
    /* to prevent floats from collapsing the height */
    padding: 10px;
}

ul.thread-list li:not(:last-child) {
    border-bottom: 1px solid #ccc;
}

ul.thread-list li .thread-meta > span {
    display: block;
    float: left;
    padding-right: 4em;
}

ul.thread-list li .thread-meta label {
    font-style: italic;
    margin-right: 5px;
}

ul.thread-list li > div:first-child {
    padding-bottom: 7px;
}

ul.thread-list li div.thread-meta {
    font-size: 80%;
}

/*********************************************************
			Forum Category Page
**********************************************************/
#thread-post-container .simple-module-header .btn {
    padding: 0;
    margin-left: 18px;
    font-size: 21px;
    margin-top: -6px;
    color: #F2676B;
}

#thread-post-container .simple-module-header .btn:hover {
    color: #ef4146;
}

#thread-list-accordion.panel-group .panel + .panel {
    margin-top: 10px;
    /* vertical distance between 2 thread post */
}

#thread-list-accordion.panel-group .panel-title {
    font-size: 15px;
    font-weight: bold;
    overflow: auto;
}

#thread-list-accordion.panel-group .panel-title [data-toggle="collapse"] {
    line-height: 1.2;
    /* text in title was getting chopped off at bottom. This fixes that */
}

#thread-list-accordion.panel-group .panel-title .title--meta {
    font-size: 85%;
    color: #777;
    font-weight: normal;
    /* What are we doing here?
                We are trying to show post-date and replies-count in the accordion title button which expands and
                collapses the accordion item. But it is hard to align them to right. using bootstrap grid system
                has padding issue. So used our custom grid system ("col span_x" classes). But it floats items, so
                parent height collapses. We have "overflow: auto" on .panel-title above to fix this issue. But height
                of title is weirdly resized so we are not using "group" or "section" classes on parent of "col span_x".
                After doing all this, height issue is resolved, but chevron on the right edge now wraps down since
                cols are taking 100% space. So to prevent that, we are using only 11 cols rather than full 12. But to
                align the text towards right edge, we have to make it posited relative with -ve right value.
            */
    position: relative;
    right: -20px;
    /* xsmall is <= 360px */
    /* horizontal distance between date and replies count in accordian item title */
}

@media (max-width: 767px) {
    #thread-list-accordion.panel-group .panel-title .title--meta {
        right: -13px;
    }
}

@media (max-width: 359px) {
    #thread-list-accordion.panel-group .panel-title .title--meta {
        right: -6px;
    }
}

#thread-list-accordion.panel-group .panel-title .title--meta span + span {
    margin-left: 20px;
}

#thread-list-accordion.panel-group .panel-body {
    line-height: 1.8;
    background: #fcfcfc;
}

#thread-list-accordion.panel-group .thread-post-body {
    padding: 10px 10px 0;
}

#thread-list-accordion.panel-group .forum-post-header {
    margin-bottom: 10px;
}

#thread-list-accordion.panel-group .forum-post-header .post-author {
    font-size: 1rem;
    font-weight: bold;
}

#thread-list-accordion.panel-group .forum-post-header .post-date {
    color: #888;
    font-size: 0.8rem;
    margin-left: 1em;
}

#thread-list-accordion.panel-group .forum-post-footer {
    margin-top: 15px;
    overflow: auto;
    border-top: 1px dotted #ccc;
}

#thread-list-accordion.panel-group .forum-post-footer button {
    font-weight: bold;
    color: #888;
}

#thread-list-accordion.panel-group .thread-comments .comment-label {
    font-size: 13px;
}

#thread-list-accordion.panel-group .thread-comments .thread-comments-list {
    border-left: 1px solid #07253F;
    padding-left: 1.8em;
    padding-right: 5px;
}

#thread-list-accordion.panel-group .thread-comments .thread-comments-list .forum-comment {
    border: 1px solid #e1e4e6;
    padding: 8px 0.8em 0;
}

#thread-list-accordion.panel-group .thread-comments .thread-comments-list .forum-comment:not(:last-child) {
    margin-bottom: 10px;
}

.response-form-container {
    margin-top: 5px;
    /* following nodes are to be hidden by default */
    /* show these nodes if it is mode-question class */
}

.response-form-container h4 {
    font-weight: bold;
    background: #e1e1e1;
    margin: 0;
    padding: 10px;
    font-size: 14px;
    position: relative;
}

.response-form-container h4 #response-close-btn {
    position: absolute;
    right: 0;
    top: 0;
    font-size: 1rem;
}

.response-form-container form {
    padding: 10px 30px 30px;
    background: #f6f6f6;
}

.response-form-container form textarea.form-control {
    height: 90px;
    max-width: 100%;
}

.response-form-container #category-picker-container,
.response-form-container #airport-picker-container,
.response-form-container #title-input-container {
    display: none;
}

.response-form-container.mode-question #category-picker-container,
.response-form-container.mode-question #title-input-container {
    display: block;
}

/*********************************************************
			1. GENERAL STYLES
**********************************************************/
body, html {
    font-family: 'Open Sans', sans-serif;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    color: #07253F;
    font-size: 15px;
    height: 100%;
}

body {
    background: #f3f3f3;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

a:focus {
    outline: none;
}

a:active {
    text-decoration: underline;
}

h5 {
    font-size: 15px;
}

.breadcrumb-position {
    background-color: white;
    padding-left: 0px;
    margin-bottom: 0px;
    padding-bottom: 0px;
}

.a-tag-color {
    color: white !important;
}

.row {
    margin: 0;
    /* this is already part of .row in bootstrap. rows by definition negate the padding on parent column by stretching the
   element towards left/right. But in our original design, we made the rows to have zero margin, which leads to lose
   this negative margin. So this class brings that margin back for places where its needed */
}

.row.row-margin-reset {
    margin-right: -15px;
    margin-left: -15px;
}

.light-row {
    background: #ffffff;
}

.dark-row {
    background: #07253F;
    padding: 60px 0;
    color: #ffffff;
}

.section-title {
    margin-bottom: 60px;
}

.section-title h2 {
    font-weight: 800;
    letter-spacing: 2px;
}

.section-title h4 {
    font-weight: bold;
    position: relative;
}

.light-section-title {
    margin-bottom: 60px;
    color: #ffffff;
}

.light-section-title.no_b-mar {
    margin-bottom: 0;
}

.light-section-title h2 {
    font-weight: 800;
    letter-spacing: 2px;
}

.light-section-title h4 {
    font-weight: bold;
}

.light-section-title p {
    line-height: 2;
}

.site-wrapper {
    margin: auto;
    position: relative;
    min-height: 100%;
}

.no-padding {
    padding: 0 0 0 0 !important;
}

@media screen and (max-width: 991px) {
    .ifly-ad-wrapper {
        margin-top: 0px;
    }
}

@media screen and (max-width: 476px) {
    .reverseRow, .reverseRow > * {
        transform: scale(1, -1);
    }
}

/*********************************************************************************
				MAIN
*********************************************************************************/
#site-navigation {
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
}

.navbar-quick-links {
    font-size: 13px;
    padding: 9px 0;
    overflow: hidden;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
}

.top-nav-quick-links {
    margin: 0;
}

.top-nav-quick-links li {
    display: inline-block;
}

.top-nav-quick-links li:not(:last-child) {
    margin-right: 1.6em;
}

.top-nav-quick-links a {
    color: #07253F !important;
}

.top-nav-quick-links a:hover {
    text-decoration: underline;
}

.forum_header_title {
    font-size: 85%;
    color: #777;
    font-weight: normal;
    margin-left: 1%;
    margin-top: 0.5%;
}

.forums-post-count-num {
    display: inline-block;
    font-weight: normal;
    margin-left: 3px;
}

.forums-post-count-num:hover {
    color: inherit;
}

.forums-site #site-content .forums-post-count-num {
    font-size: 12px;
    color: #444;
}

.h4_replacement {
    color: #f9676b;
    margin-top: 0px;
    text-transform: uppercase;
    font-weight: 800;
    margin-bottom: 15px;
    letter-spacing: 1px;
    font-size: 18px;
    display: block;
}

#site-content {
    padding-bottom: 0;
}

#site-content .site-content-container {
    padding: 0;
}

@media (min-width: 768px) and (max-width: 991px) {
    #site-content .site-content-container {
        width: auto;
    }
}

#site-content .main-content {
    background: #fff;
    padding-bottom: 15px;
    -ms-flex: 1;
        flex: 1;
    max-width: calc(100% - 306px);
}

@media (min-width: 768px) and (max-width: 1199px) {
    #site-content .main-content {
        margin-left: 6px;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    #site-content .main-content.col-sm-8 {
        width: 65.8%;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    #site-content .main-content.col-md-9 {
        width: 74.3%;
    }
}

@media (max-width: 767px) {
    #site-content .main-content {
        max-width: inherit;
    }
}

.content-rows {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
}

@media (max-width: 767px) {
    .content-rows {
        -ms-flex-direction: column;
            flex-direction: column;
    }
}

#site-footer {
    width: 100%;
}

#site-footer .social-media ul {
    padding: 0px;
    list-style-type: none;
    letter-spacing: 1.8em;
}

#site-footer .social-media ul li {
    display: inline;
}

#site-footer .social-media ul li a {
    background: #f9676b none repeat scroll 0 0;
    border-radius: 50%;
    color: #fff;
    display: inline-block;
    height: 40px;
    margin: 2px 5px 0;
    padding: 10px 13px;
    width: 40px;
}

#site-footer .social-media ul li a:hover {
    background: #00adef;
}

#site-footer .social-media ul li a i {
    font-size: 16px;
}

@media (max-width: 991px) {
    .navbar-container.container {
        width: auto;
        padding: 0 15px;
    }
}

/* -------------- logo: start ----------------- */
/* the logo icon. */
.logo {
    background: url(../images/site/logo.png) 0 0 no-repeat;
    background-size: contain;
    width: 130px;
    height: 50px;
    margin-top: 10px;
    /* the logo icon in nav bar */
}

.logo#logo--nav {
    display: none;
}

.page-top-logo-container {
    padding: 0 5px;
    /* the logo icon in page-top bar */
}

.page-top-logo-container > div {
    min-height: 0;
    /* boostrap has 1px min-height on all cols. This causes 1px border above site < 992px */
}

.page-top-logo-container .logo {
    width: 162px;
    /* logo's width/height ratio is 2.6 and should be maintained */
    height: 62px;
    margin: 14px 0;
}

.page-top-logo-container #page-top-ad ins.adsbygoogle {
    margin: 5px 0;
}

/* as soon as medium (992px) hits, show the logo in nav bar, but hide the logo at top of the page */
@media (max-width: 991px) {
    #logo--nav.logo {
        display: block;
    }
    #logo--page-top {
        display: none;
    }
}

/* -------------- logo: end ----------------- */
.flight-direction-radio {
    padding-top: 45px;
}

.flight-direction-radio.book-travel-home-reduce {
    padding-top: 5px;
}

#flight.tab-pane .radio-inline + .radio-inline {
    margin-left: 22px;
}

.travel-box-height {
    height: 300px;
}

.main-footer-sub {
    padding: 1.6em 0;
    background: #0A3152;
    color: #fff;
}

.main-footer-sub label {
    margin-bottom: 10px;
    font-size: 1.6em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2em;
}

.mobile-apps-links > label {
    color: #fff;
    font-size: 90%;
    font-weight: normal;
    display: block;
}

.goog-te-menu-frame {
    max-width: 100% !important;
    height: auto !important;
}

.mobile-app-badge {
    display: inline-block;
    background-size: contain !important;
    width: 181px;
    height: 70px;
    vertical-align: middle;
}

.mobile-app-badge.badge-google-play {
    background: url(../images/badge-google-play.png) 0 0 no-repeat;
}

.mobile-app-badge.badge-appstore {
    background: url(../images/badge-appstore.svg) 0 0 no-repeat;
    background-origin: content-box;
    padding: 0 12px;
}

.mobile-app-badge.badge-amazon {
    background: url(../images/badge-amazon.png) 0 0 no-repeat;
    background-origin: content-box;
    padding: 12px;
    background-size: cover !important;
}

.sfo-ad {
    width: 720px;
    height: 90px;
    margin-left: 10%;
}

.sfo-ad.sfo-ad-contain {
    background: url(../images/SfoAd.png) 0 0 no-repeat;
}

/* blurred text: to make text unreadable if ads blocked, add this class to text container */
.b_text {
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
    /* makes text un-selectable */
    color: transparent !important;
    /* makes text invisible */
    text-shadow: rgba(0, 0, 0, 0.498039) 0px 0px 7px;
    /* makes text's outline blurred, visible, but unreadable */
}

.b_text a {
    color: #0e0e0e !important;
    /* makes links visible so user can navigate within site */
    border-bottom: 2px solid #F2676B;
}

/*********************************************************
			4. NAVIGATION TRANSPARENT MENU
**********************************************************/
.header-top {
    background: #07253F;
}

.navbar-contact {
    margin: 10px 0;
    font-size: 12px;
    overflow: hidden;
}

.navbar-contact .user-logged {
    text-align: right;
}

.navbar-contact .user-logged img {
    width: 30px;
    height: 30px;
    border-radius: 50%;
}

.navbar-contact .user-logged a {
    margin: 0 0 0 15px;
}

.navbar-contact a {
    color: #BEC4C8;
    display: inline-block;
    margin: 7px 0 0 15px;
}

.navbar-contact a i {
    color: #f9676b;
    margin-right: 5px;
}

.navbar-contact a:hover {
    transition-property: color;
    color: #f9676b;
}

.navbar-contact .form-control {
    border: medium none;
    border-radius: 0;
    box-shadow: none;
    height: 30px;
    padding: 0 5px 0 10px;
}

.navbar-contact .input-group-addon {
    background: #fff none repeat scroll 0 0;
    border: medium none;
    border-radius: 0;
    color: #f9676b;
    padding: 0 10px 0 10px;
    margin-right: 15px;
}

.transparent-menu-top {
    background: #e6e6e6 !important;
}

@media (max-width: 489px) {
    .transparent-menu-top {
        display: none !important;
    }
}

.transparent-menu {
    background: #07253F;
    /*padding: 10px 0px;*/
}

.transparent-menu i {
    margin-right: 2px;
}

.transparent-menu .navbar {
    margin: 0px;
}

.navbar-header a {
    font-size: 20px;
    color: #ffffff !important;
    letter-spacing: 1px;
    font-weight: bold;
}

/* MEGA MENU */
.nav-container {
    position: relative;
}

.nav-container .mega-menu {
    position: absolute;
    display: none;
    width: 100%;
    text-align: left !important;
    padding: 20px !important;
}

.nav-container .mega-menu .desc h4 {
    margin-top: 0px;
    color: #f9676b;
    font-weight: bold;
}

.nav-container .mega-menu .desc p {
    color: #BEC4C8;
    line-height: 2;
    font-size: 15px;
}

.nav-container .mega-menu .desc a {
    color: #fff !important;
    background: #f9676b;
    border: 2px solid transparent;
    padding: 8px 15px;
    font-weight: bold;
    text-align: center;
    font-size: 15px;
    display: inline-block;
    margin-left: 0px !important;
}

.nav-container .mega-menu .desc a:hover {
    color: #f9676b;
    border: 2px solid #f9676b;
    background: transparent;
}

.nav-container .mega-menu .links ul {
    padding: 0px;
    list-style-type: none;
}

.nav-container .mega-menu .links li {
    position: relative;
    line-height: 2;
    margin-left: 10px;
}

.nav-container .mega-menu .links h5 {
    margin-top: 0px;
    text-transform: uppercase;
    font-weight: bold;
    color: #f9676b;
}

.nav-container .mega-menu .links a {
    color: #ffffff;
}

.nav-container .mega-menu .links a:hover {
    color: #f9676b;
}

.nav-container .dropdown {
    position: relative;
}

.nav-container .mega {
    position: static !important;
}

.nav-container #site-main-nav-bar > .navbar-nav {
    /* offset the padding of menu list-item */
    margin-left: -20px;
}

.open > .mega-menu {
    display: block;
    overflow: hidden;
}

.top-margin {
    margin-top: 20px !important;
}

.mega-menu .links .img-div {
    margin-top: 20px;
    position: relative;
}

.mega-menu .links .img-div img {
    max-width: 100%;
    position: relative;
}

.mega-menu .links .img-div .overlay {
    position: absolute;
    width: 100%;
    text-align: center;
    top: 20%;
    background: rgba(10, 49, 82, 0.5);
    padding: 15px 0px;
}

.mega-menu .links .img-div .overlay h5 {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
}

.mega-menu .links .img-div .overlay p {
    color: #fff;
    font-size: 18px;
}

.mega-menu .links .img-div .overlay a {
    color: #fff;
    padding: 5px 10px;
    border: 2px solid #fff;
    display: inline-block;
    font-weight: bold;
}

/****special case ***** */
#forums-nav-mega-menu.mega-menu {
    right: 0;
}

/**********/
.transparent-menu .navbar-default {
    background: transparent;
}

.navbar-default {
    border-color: transparent;
}

.transparent-menu .navbar-nav > li > a {
    color: #ffffff;
    font-weight: bold;
    font-size: 14px;
    padding: 7px 20px;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

.transparent-menu .navbar-default .navbar-nav > li > a:hover,
.transparent-menu .navbar-default .navbar-nav > li > a:hover {
    color: #f9676b;
}

.transparent-menu .navbar-default .navbar-nav > li > a:focus {
    color: #ffffff;
}

.transparent-menu .navbar-default .navbar-nav > .active > a,
.transparent-menu .navbar-default .navbar-nav > .active > a:focus,
.transparent-menu .navbar-default .navbar-nav > .active > a:hover {
    background: transparent;
    color: #f9676b;
}

.transparent-menu .dropdown-menu li > a {
    background: transparent none repeat scroll 0 0;
    font-size: 12px;
    line-height: 2;
    position: relative;
    margin-left: 15px;
    font-weight: bold;
    color: #ffffff;
}

.transparent-menu .dropdown-menu li > a:before {
    content: "\f105";
    font-family: "FontAwesome";
    position: absolute;
    margin-left: -10px;
}

.transparent-menu .dropdown-menu > li > a:hover {
    color: #f9676b !important;
}

.transparent-menu .dropdown-menu {
    background: #07253F;
    border: none;
    font-size: 12px;
    box-shadow: none;
    padding: 15px 0px;
}

.transparent-menu .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    background: transparent;
    color: #ffffff;
    font-size: 12px;
}

@media (max-width: 991px) {
    .transparent-menu .navbar-default .navbar-nav .open .dropdown-menu > li > a {
        letter-spacing: 1px;
    }
}

.transparent-menu .navbar-default .navbar-nav > .open > a,
.transparent-menu .navbar-default .navbar-nav > .open > a:focus,
.transparent-menu .navbar-default .navbar-nav > .open > a:hover {
    background: transparent;
    color: #f9676b;
}

.transparent-menu .navbar-default .navbar-toggle {
    color: #ffffff;
    margin-left: 1em;
}

.transparent-menu .navbar-default .navbar-toggle .icon-bar {
    background: #ffffff;
}

.transparent-menu .navbar-default .navbar-toggle:focus,
.transparent-menu .navbar-default .navbar-toggle:hover {
    background: transparent;
}

@media (max-width: 991px) {
    .nav-container .mega-menu .desc {
        display: none;
    }
    .navbar-header {
        float: none;
    }
    .navbar-left, .navbar-right {
        float: none !important;
    }
    .navbar-toggle {
        display: block;
    }
    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: none;
    }
    .navbar-fixed-top {
        top: 0;
        border-width: 0 0 1px;
    }
    .navbar-collapse.collapse {
        display: none !important;
    }
    .navbar-nav {
        float: none !important;
        margin-top: 7.5px;
    }
    .navbar-nav > li {
        float: none;
    }
    .navbar-nav > li > a {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .collapse.in {
        display: block !important;
    }
    .navbar-nav .open .dropdown-menu {
        position: static;
        float: none;
        width: auto;
        margin-top: 0;
        border: 0;
        box-shadow: none;
        background: #07253F;
    }
}

@media (min-width: 991px) {
    .dropdown:hover > .dropdown-menu {
        display: block;
    }
    .dropdown:hover > .dropdown-mega {
        display: block;
    }
}

@media (max-width: 767px) {
    .transparent-menu .dropdown-menu li a {
        text-align: left;
    }
    .mega-menu .img-div {
        display: none;
    }
    .nav-container .mega-menu {
        padding: 0 0 15px !important;
    }
    .nav-container .mega-menu .links h5 {
        margin-top: 15px;
    }
    .navbar-contact .search-box {
        /* padding: 15px; */
        overflow: hidden;
    }
}

/* nav-bar's serach-box toggle button */
#search-box-toggle {
    padding: 6px;
    margin: 8px 0 0;
}

/* color etc styles for nav-toggle buttons in nav-bar */
.nav-container button.navbar-toggle[data-toggle="collapse"]:hover, .nav-container button.navbar-toggle[data-toggle="collapse"]:not(.collapsed) {
    background-color: #00ADEF;
    border-color: #00ADEF;
}

@media (min-width: 992px) {
    #nav-search-box {
        display: none;
    }
}

/*********************************************************************************
				Homepage
*********************************************************************************/
@media screen and (min-width: 992px) {
    .home-book-travel-search-button {
        position: relative;
        left: 95px;
    }
}

@media (max-width: 992px) and (min-width: 768px) {
    .home-book-travel-search-button {
        position: relative;
        left: 135px;
    }
}

@media (max-width: 768px) and (min-width: 551px) {
    .home-book-travel-search-button {
        position: relative;
        left: 118px;
    }
}

@media screen and (max-width: 550px) {
    .home-book-travel-search-button {
        position: relative;
        left: 25px;
    }
}

.custom-select-button {
    background: transparent none repeat scroll 0 0;
    border: 1px solid #BEC4C8;
    border-radius: 0;
    width: 100%;
    line-height: 34px;
    height: 40px;
}

.homepage-widget {
    background: #fff;
}

.homepage-widget.top-spaced {
    margin-top: 20px;
}

@media (min-width: 992px) {
    .homepage-widget.top-spaced {
        margin-top: 60px;
    }
}

@media (min-width: 1199px) {
    .main-widget-homepage:not(.col-xs-12) {
        width: 900px !important;
    }
}

@media (min-width: 1199px) {
    .main-widget-ad {
        width: 311px !important;
    }
}

@media (max-width: 1201px) {
    .main-widget-ad {
        display: none;
        width: 0px;
    }
}

@media (min-width: 1199px) {
    .flex-container {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: row;
            flex-direction: row;
    }
}

.main-book-travel-widget {
    background: transparent;
}

.main-book-travel-widget .nav-tabs {
    border-bottom: none;
}

.main-book-travel-widget .nav-tabs .active {
    position: relative;
}

.main-book-travel-widget .nav-tabs .active:after {
    background: #f9676b none repeat scroll 0 0;
    content: "";
    height: 20px;
    left: 40%;
    position: absolute;
    bottom: -10px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    width: 20px;
}

.main-book-travel-widget .nav-tabs > li {
    margin-bottom: 0px;
    width: 25%;
}

.main-book-travel-widget .nav-tabs > li > a {
    color: #ffffff;
    background: #3B5A74;
    letter-spacing: 1px;
    font-weight: bold;
    border-radius: 2px 2px 0 0;
    margin-right: 4px;
}

.main-book-travel-widget .nav-tabs > li > a:hover {
    color: #ffffff;
    background: #f9676b;
    border: 1px solid transparent;
}

.main-book-travel-widget .nav-tabs > li > a.book-travel-home-reduce {
    padding: 5px 15px 10px 15px;
}

.main-book-travel-widget .nav > li > a {
    padding: 15px;
    /* following rules are to keep the text in the tabs responsive */
}

@media (max-width: 434px) {
    .main-book-travel-widget .nav > li > a {
        /* reduce padding to accommodate text */
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media (max-width: 567px) {
    .main-book-travel-widget .nav > li > a span {
        /* move text to separate line */
        display: block;
    }
}

@media (max-width: 409px) {
    .main-book-travel-widget .nav > li > a span {
        /* reduce font size */
        font-size: 12px;
    }
}

@media (max-width: 369px) {
    .main-book-travel-widget .nav > li > a span {
        /* further reduce font size */
        font-size: 10px;
    }
}

@media (max-width: 314px) {
    .main-book-travel-widget .nav > li > a span {
        /* completely hide text */
        display: none;
    }
}

.main-book-travel-widget .nav > li:last-of-type > a {
    margin-right: 0;
    border-right: 0;
}

.main-book-travel-widget .tab-content {
    color: #07253F;
    background: #fff;
    padding: 30px 15px;
}

.main-book-travel-widget .tab-content.book-travel-home-reduce {
    padding: 5px 15px;
    border-radius: 4px;
}

.main-book-travel-widget .nav-tabs > li.active > a,
.main-book-travel-widget .nav-tabs > li.active > a:focus,
.main-book-travel-widget .nav-tabs > li.active > a:hover {
    color: #ffffff;
    background: #f9676b;
    border: 1px solid transparent;
}

.main-book-travel-widget label {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
}

.main-book-travel-widget .form-control {
    background-color: transparent;
    border: 1px solid #BEC4C8;
    border-radius: 0;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    color: #07253F;
    display: block;
    font-size: 15px;
    height: 40px;
    line-height: 1.42857;
    padding: 6px 12px;
    transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
    width: 100%;
}

.main-book-travel-widget .form-control::-moz-placeholder {
    color: #989DA0;
    opacity: 1;
}

.main-book-travel-widget .form-control:-ms-input-placeholder, .main-book-travel-widget .form-control::-webkit-input-placeholder, .main-book-travel-widget .form-control::-o-input-placeholder {
    color: #BEC4C8;
}

.main-book-travel-widget .input-group-addon {
    background: transparent;
    color: #BEC4C8;
    border-top: 1px solid #BEC4C8;
    border-right: 1px solid #BEC4C8;
    border-bottom: 1px solid #BEC4C8;
    border-radius: 0;
}

.main-book-travel-widget .product-search-title {
    font-size: 18px;
    display: block;
    font-weight: 800;
    text-transform: uppercase;
    color: #f9676b;
}

.main-book-travel-widget .search-col-padding {
    padding-top: 15px;
}

.main-book-travel-widget option {
    color: #07253F;
}

.overview-travelers-count {
    left: -109px;
    position: absolute;
}

.search-col-padding-overviewpage {
    padding-top: 20px;
    padding-bottom: 15px;
}

.vertical-search,
.full-width-container {
    padding: 45px 0px;
}

.full-width-container {
    background-color: #f7f7f7;
    background-size: cover;
    position: relative;
}

.full-width-container::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    background-color: rgba(0, 0, 0, 0.2);
}

.full-width-container .w_col_full {
    padding: 0 0 8px;
}

.full-width-container .w_col_1 {
    margin-top: 20px !important;
}

@media (min-width: 768px) and (max-width: 991px) {
    .full-width-container .w_col_1 {
        padding: 0;
    }
}

.full-width-container .w_col_2 {
    padding: 0 0 0 10px;
}

@media (max-width: 991px) {
    .full-width-container .w_col_2 {
        padding: 0;
    }
}

@media (max-width: 767px) {
    .full-width-container .w_col_full,
    .full-width-container .w_col_1,
    .full-width-container .w_col_2 {
        margin: auto 15px;
    }
}

.full-width-container #homepage_main_col_ad {
    width: 300px;
}

@media (max-width: 991px) {
    .full-width-container #homepage_main_col_ad {
        margin-top: 20px;
    }
}

.airport-status-body {
    padding: 3px;
    font-size: 0.8em;
}

@media (min-width: 992px) {
    .airport-status-body {
        max-height: 400px;
        overflow-y: scroll;
    }
}

/* home page book travel widget's "search" button */
.search-button {
    background: #f9676b;
    border-radius: 0;
    margin-top: 10px;
    padding: 10px 30px;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0px;
    font-weight: bold;
    color: #fff;
    transition: all 0.3s ease;
}

.search-button:hover {
    background: #00adef;
    color: #fff;
}

.airport-status-alert {
    margin-bottom: 5px;
    padding: 5px 8px;
}

.airport-status-alert ul {
    list-style: square;
    padding-left: 20px;
}

.airport-status-alert ul li span, .airport-status-alert ul li a {
    position: relative;
}

/* Airport delays */
.delay-present,
.delay-present a {
    background-color: #FCC;
    color: #F00;
}

.delay-present a:hover {
    text-decoration: underline;
}

.delay-absent {
    background-color: #A6D3ED;
}

#plan-your-travel {
    /* background: url('../images/holiday-slide2.jpg');
    background-attachment: fixed; */
}

#plan-your-travel .plan-travel-row {
    padding: 60px 0px;
    background: rgba(10, 49, 82, 0.7);
}

#plan-your-travel .plan-travel-row .plan-travel-item {
    background: #fff;
    padding: 60px 20px 45px;
    position: relative;
    margin: 60px 10px 20px;
    height: 100%;
}

#plan-your-travel .plan-travel-row .plan-travel-item h4 {
    font-weight: bold;
}

#plan-your-travel .plan-travel-row .plan-travel-item p {
    line-height: 2;
}

#plan-your-travel .plan-travel-row .plan-travel-item a {
    margin-top: 15px;
    padding: 8px 15px;
    white-space: normal;
    white-space: pre-wrap;
}

#recent-posts {
    /*background: $homepage-dark-bg-row-bg; */
    background: #ffffff;
}

#recent-posts .recent-posts-row {
    padding: 60px 0;
    color: #07253F;
}

#recent-posts .recent-posts-row .owl-controls {
    margin-top: 30px;
}

/* a single grid tile inside #recent-posts */
.blog-grid-tile {
    border: 1px solid #e6e6e6;
    box-shadow: 0px 0px 5px #e6e6e6;
}

.blog-grid-tile .blog-post-info {
    height: 180px;
    padding: 15px 15px 0px;
}

.blog-grid-tile .blog-post-info .post-desc {
    padding: 5px 0px;
}

.blog-grid-tile .blog-post-info .post-desc p {
    line-height: 2;
    font-size: 13px;
    /* credit: http://stackoverflow.com/a/5108367 */
    white-space: pre-wrap;
    /* css-3 */
    word-wrap: break-word;
    /* Internet Explorer 5.5+ */
    white-space: normal;
    /* adds hyphen when word is broken */
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

.blog-grid-tile .blog-post-info .post-title h5 {
    font-weight: bold;
    margin-top: 0;
    line-height: 19px;
    /* make the text overflow ellipsis */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blog-grid-tile .blog-post-info .post-title h5:hover {
    white-space: normal;
}

.blog-grid-tile .blog-post-info .post-title p {
    color: #f9676b;
    font-size: 12px;
}

.blog-grid-tile .blog-post-info .post-alt i {
    margin: 0px 5px;
}

.blog-grid-tile .blog-post-info .post-meta {
    overflow: hidden;
    margin: 10px -15px 0;
    border-top: 1px solid #e6e6e6;
}

.blog-grid-tile .blog-post-info .post-meta h5 {
    font-weight: bold;
    border-right: 1px solid #e6e6e6;
    width: 100%;
    padding: 4px 10px;
    margin: 0;
    line-height: 1.7;
}

.blog-grid-tile .blog-post-info .post-meta a {
    padding: 6px 10px;
    color: #ffffff;
    display: block;
    font-weight: bold;
    background: #F2676B;
    text-transform: uppercase;
    font-size: 95%;
}

.blog-grid-tile:hover {
    border: 1px solid #F19C4F;
    box-shadow: 0px 0px 2px #F19C4F;
}

.blog-grid-tile:hover .post-meta a {
    color: #ffffff;
    background: #00ADEF;
}

#what-is-ifly .info-row {
    padding: 60px 0px;
    background: rgba(10, 49, 82, 0.7);
}

#what-is-ifly .info-row .info-point {
    position: relative;
    margin-bottom: 20px;
    /* fix for line between divs breaking due to long text string */
    /* fix for line between divs breaking due to long text string */
}

#what-is-ifly .info-row .info-point .first-point,
#what-is-ifly .info-row .info-point .second-point,
#what-is-ifly .info-row .info-point .third-point {
    position: relative;
}

#what-is-ifly .info-row .info-point .first-point:after {
    content: "";
    width: 50%;
    height: 2px;
    background: #f9676b;
    position: absolute;
    right: -20%;
    top: 20%;
}

@media (min-width: 992px) and (max-width: 1199px) {
    #what-is-ifly .info-row .info-point .first-point:after {
        top: 17.5%;
    }
}

#what-is-ifly .info-row .info-point .second-point:after {
    content: "";
    width: 50%;
    height: 2px;
    background: #f9676b;
    position: absolute;
    right: -20%;
    top: 20%;
}

#what-is-ifly .info-row .info-point .second-point:before {
    content: "";
    width: 50%;
    height: 2px;
    background: #f9676b;
    position: absolute;
    left: -20%;
    top: 20%;
}

#what-is-ifly .info-row .info-point .third-point:before {
    content: "";
    width: 50%;
    height: 2px;
    background: #f9676b;
    position: absolute;
    left: -20%;
    top: 20%;
}

@media (min-width: 768px) {
    #what-is-ifly .info-row .info-point .third-point:before {
        top: 17.5%;
    }
}

#what-is-ifly .info-row .info-point i {
    border-radius: 50%;
    background: #f9676b;
    color: #fff;
    font-size: 34px;
    height: 80px;
    padding: 23px;
    width: 80px;
    position: relative;
}

#what-is-ifly .info-row .info-point h5 {
    font-weight: 800;
    margin: 30px 0px 10px;
    letter-spacing: 1px;
}

#what-is-ifly .info-row .info-point p {
    line-height: 2;
}

#what-is-ifly .info-row .info-point h5, #what-is-ifly .info-row .info-point p {
    color: #fff;
}

@media (max-width: 767px) {
    #what-is-ifly .info-row .info-point .first-point,
    #what-is-ifly .info-row .info-point .second-point,
    #what-is-ifly .info-row .info-point .third-point {
        margin-top: 30px;
    }
    #what-is-ifly .info-row .info-point .first-point:after,
    #what-is-ifly .info-row .info-point .second-point:before,
    #what-is-ifly .info-row .info-point .second-point:after,
    #what-is-ifly .info-row .info-point .third-point:before {
        display: none;
    }
}

/*********************************************************************************
				Submenus
*********************************************************************************/
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu .dropdown-submenu-toggle:after {
    content: "\f0d7";
    font-family: FontAwesome;
    margin-left: 0.4em;
    border: none;
}

.dropdown-submenu .dropdown-menu {
    display: none;
    top: 0 !important;
    right: 100% !important;
    margin-top: -1px !important;
    padding: 0;
}

.dropdown-submenu .dropdown-menu li a {
    padding-left: 10px;
}

@media (min-width: 992px) {
    .dropdown-submenu:hover > .dropdown-menu {
        display: block;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .dropdown-submenu .dropdown-menu {
        padding-left: 30px;
    }
}

@media (max-width: 767px) {
    .dropdown-submenu .dropdown-menu {
        padding-left: 12px;
    }
}

@media (max-width: 991px) {
    .dropdown-submenu > a:after {
        margin-left: 6px;
        display: inline-block;
        vertical-align: middle;
        border-top: 4px dashed;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
    }
    .dropdown-submenu.submenu-open > .dropdown-menu {
        display: block;
    }
}

/********************************************************************
			Footer
*********************************************************************/
.main-footer-sub .form-control {
    background: #07253F;
    border-radius: 0;
    height: 40px;
    color: #fff;
    border: none;
}

.main-footer-sub button {
    height: 40px;
    border: none;
    background: #f9676b;
    color: #fff;
    width: 100%;
    font-weight: bold;
}

.main-footer-sub button i {
    margin-right: 5px;
}

.main-footer-sub button:hover {
    background: #00adef;
}

.main-footer {
    padding: 60px 0 0;
    background: #07253F;
}

.main-footer .about-box {
    color: #BEC4C8;
    line-height: 2;
}

.main-footer .about-box h3 {
    font-weight: 800;
    margin-top: 0px;
    color: #f9676b;
    margin-bottom: 15px;
    letter-spacing: 1px;
}

.main-footer .about-box a {
    display: inline-block;
    padding: 2px 15px;
    color: #f9676b;
    border: 2px solid #f9676b;
    font-weight: bold;
}

.main-footer .links {
    line-height: 2;
}

.main-footer .links ul,
.we-accept ul,
.main-footer-nav ul {
    list-style-type: none;
    padding: 0px;
}

.main-footer .links h4,
.main-footer .contact-box h4,
.we-accept h4 {
    color: #f9676b;
    margin-top: 0px;
    text-transform: uppercase;
    font-weight: 800;
    margin-bottom: 15px;
    letter-spacing: 1px;
}

.main-footer .links ul li {
    position: relative;
}

.main-footer .links ul li a,
.main-footer-nav ul li a {
    color: #BEC4C8;
    margin-left: 15px;
}

.main-footer .links ul li a:hover,
.main-footer-nav ul li a:hover {
    color: #f9676b;
}

.main-footer .links ul li:before {
    content: "\f105";
    position: absolute;
    font-family: "FontAwesome";
    color: #BEC4C8;
}

.main-footer .links {
    /* travel links accordian in footer */
}

.main-footer .links li.accordian-links-container {
    /* btn that opens box which contains travel links accordions */
    /* body of wrapper accordion */
    /* Travel links accordion title */
    /* Travel links list */
}

.main-footer .links li.accordian-links-container .btn {
    font-size: inherit;
    padding: 0;
}

.main-footer .links li.accordian-links-container .accordion-body {
    color: #fff;
}

.main-footer .links li.accordian-links-container .panel {
    background: transparent;
    border: none;
}

.main-footer .links li.accordian-links-container .panel .panel-heading {
    background: inherit;
    padding: 4px 10px;
}

.main-footer .links li.accordian-links-container .panel .panel-heading .panel-title {
    font-size: 90%;
    font-weight: bold;
}

.main-footer .links li.accordian-links-container .list-group {
    border-bottom: 1px solid #ddd;
    /* each travel link */
}

.main-footer .links li.accordian-links-container .list-group .list-group-item {
    background: inherit;
    padding: 0px;
    border: none;
}

.main-footer .links li.accordian-links-container .list-group .list-group-item a {
    font-size: 90%;
}

.main-footer .contact-box p {
    color: #BEC4C8;
    line-height: 2;
}

.main-footer .contact-box p i {
    border: 2px solid #bec4c8;
    border-radius: 50%;
    color: #f9676b;
    display: inline-block;
    height: 40px;
    margin-right: 10px;
    margin-top: 10px;
    padding: 10px 11px;
    width: 40px;
}

.we-accept {
    padding: 30px 0px 0px;
}

.we-accept ul li,
.main-footer-nav ul li {
    display: inline;
    margin: 0px 5px;
}

.main-footer-nav {
    padding: 30px 0px;
    background: #0A3152;
    color: #BEC4C8;
    position: relative;
    padding-bottom: 100px;
}

.main-footer-nav .footer-disclosure {
    text-align: left;
    margin: 25px 50px 5px 50px;
    color: #BEC4C8;
    font-style: italic;
}

.main-footer-nav p,
.main-footer-nav ul {
    margin-bottom: 0px;
}

.main-footer-nav .go-up a {
    color: #BEC4C8;
    padding: 5px 8px;
}

@media (max-width: 767px) {
    .main-footer .links h4,
    .main-footer .contact-box h4,
    .we-accept h4 {
        margin-top: 45px;
    }
    .main-footer-nav ul li {
        margin: 15px 5px;
        display: inline-block;
    }
}

p.h4_replacement._lh1, p.simple-module-header._lh1 {
    line-height: 1.1;
}

p.h4_replacement._pink {
    color: #f9676b;
}

/*********************************************************************************
				Terminal Map
*********************************************************************************/
#gate-connection-module .panel-body {
    overflow: visible;
}

#gate-connection-results {
    overflow: hidden;
    display: none;
    padding: 7px;
    background: #fff;
}

#gate-connection-results .gcr-loading {
    text-align: center;
    color: #0A3152;
}

#gate-connection-results.failure .gcr-loading, #gate-connection-results.success .gcr-loading {
    display: none;
}

#gate-connection-results .gcr-failure, #gate-connection-results .gcr-result {
    display: none;
}

#gate-connection-results.failure .gcr-failure {
    display: block;
    text-align: center;
    margin-top: 20px;
}

#gate-connection-results.success .gcr-result {
    display: block;
    padding-top: 10px;
    line-height: 1.5;
}

#gate-connection-results.success .gcr-result .blockify {
    display: block;
    margin-bottom: 3px;
}

#gate-connection-results #gcr-close-btn {
    position: absolute;
    right: 0;
    top: -2px;
}

#gate-connection-results #gcr-search-details {
    font-weight: bold;
    border-bottom: 1px solid #0A3152;
    font-size: 90%;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

#gate-connection-results #gcr-search-details #gcr-term-from, #gate-connection-results #gcr-search-details #gcr-term-to {
    font-size: 90%;
}

.h2_style {
    color: #fff;
    padding: 7px;
    margin: 0;
    font-weight: bold;
    background: #3B5A74;
    font-size: 14px;
    text-align: center;
}

#terminal-map-container {
    position: relative;
    width: 100%;
}

#terminal-map-container .map-pushpin {
    position: absolute;
    width: 28px;
    height: 28px;
    background-color: #F2676B;
    background-size: contain;
    background-repeat: no-repeat;
    border: 3px solid #F2676B;
    border-radius: 6px;
}

#terminal-map-image {
    width: 100%;
    border: 2px solid #000;
}

#terminal-details {
    margin-bottom: 1em;
}

#terminal-details .tab-content {
    height: 220px;
}

#amenities-list-table tbody a:hover,
#airlines-list-table tbody a:hover {
    text-decoration: underline;
}

.amenity-detail:not(:last-child) {
    margin: 1.5em 0;
}

.amenity-detail h3 {
    margin: 0 0 5px;
    font-weight: bold;
    font-size: 21px;
}

.amenity-detail button.btn-link {
    padding: 0;
}

.amenity-detail .amenity-icon {
    width: 35px;
    height: 35px;
    background-size: contain !important;
}

.amenity-detail .amenity-location, .amenity-detail .amenity-location-link {
    font-weight: bold;
}

/* amenities selection form */
#amenities-list-form {
    /* container list */
}

#amenities-list-form .amenities-list-form--title {
    color: #fff;
    padding: 7px;
    margin: 0;
    font-weight: bold;
    background: #3B5A74;
    font-size: 14px;
    text-align: center;
}

#amenities-list-form .amenities-list-form--footer {
    text-align: center;
    border-top: 1px solid #ddd;
    padding: 5px 0;
}

#amenities-list-form > ul {
    /* the title of amenity type */
    /* nested list that contains all checkboxes */
}

#amenities-list-form > ul h4 {
    margin: 0 0 5px 0;
    font-weight: bold;
    font-size: 1em;
    /* the icon of amenity type */
    /* the show-all btn of amenities */
}

#amenities-list-form > ul h4 span {
    display: inline-block;
    width: 24px;
    height: 24px;
    vertical-align: middle;
    background-size: contain !important;
    margin-right: 3px;
}

#amenities-list-form > ul h4 a.btn {
    padding: 0;
    margin-left: 2px;
    font-size: 0.92em;
}

#amenities-list-form > ul ul {
    padding-left: 2px;
    /* amenity store name */
}

#amenities-list-form > ul ul li {
    padding: 0;
}

#amenities-list-form > ul ul label {
    display: inline;
    font-weight: normal;
    margin: 0 0 0 2px;
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
}

.amenity-icon-type--airline-lounge {
    background: url("/assets/images/icons/icon-airline-lounge.png");
}

.amenity-icon-type--atm {
    background: url("/assets/images/icons/icon-atm.png");
}

.amenity-icon-type--bar {
    background: url("/assets/images/icons/icon-bar.png");
}

.amenity-icon-type--cafe {
    background: url("/assets/images/icons/icon-cafe.png");
}

.amenity-icon-type--misc {
    background: url("/assets/images/icons/icon-misc.png");
}

.amenity-icon-type--restaurant {
    background: url("/assets/images/icons/icon-restaurant.png");
}

.amenity-icon-type--restrooms {
    background: url("/assets/images/icons/icon-restrooms.png");
}

.amenity-icon-type--store {
    background: url("/assets/images/icons/icon-store.png");
}

/*********************************************************************************
				Book Travel mini widget
*********************************************************************************/
.book-travel-widget-label {
    font-size: 13px;
    float: left;
}

.book-travel-widget .nav-tabs > li > a {
    background: #F3F3F3 none repeat scroll 0 0;
    border-radius: 0;
    color: #07253F;
    line-height: 1.42857;
    margin-right: 4px;
    padding: 10px 12px;
}

@media (min-width: 992px) and (max-width: 1199px) {
    .book-travel-widget .nav-tabs > li > a {
        padding: 5px;
    }
}

@media (max-width: 459px) {
    .book-travel-widget .nav-tabs > li > a {
        padding: 5px;
        font-size: 13px;
    }
}

.book-travel-widget .nav-tabs > li.active > a,
.book-travel-widget .nav-tabs > li.active > a:focus,
.book-travel-widget .nav-tabs > li.active > a:hover {
    color: #fff;
    background: #F2676B;
}

.book-travel-widget .tab-content {
    padding: 15px 0;
    overflow: hidden;
}

.book-travel-widget .tab-heading {
    margin-top: 0 !important;
    margin-bottom: 1.2em;
    margin-left: 15px;
    text-transform: uppercase;
    font-weight: bold;
}

.book-travel-widget .tab-pane {
    padding-left: 14px;
    padding-right: 14px;
}

.book-travel-widget label {
    font-weight: normal;
}

.book-travel-widget.mini .nav-tabs > li > a {
    padding: 5px;
    margin-right: 5px;
}

/*********************************************************************************
				Car Rental
*********************************************************************************/
#car-rental-companies-list {
    padding: 10px;
}

#car-rental-companies-list .company-name {
    font-weight: bold;
    text-transform: uppercase;
}

#car-rental-companies-list ul.company-info li {
    margin-left: 20px;
    padding: 0;
    margin-bottom: 0.5em;
}

/*********************************************************************************
				Travel Tips + Sitemap page
*********************************************************************************/
ul.links-list li {
    margin-left: 1.7em;
}

ul.links-list li small {
    margin-left: 0.5em;
    color: #777;
}

ul.links-list li:before {
    content: "\f0da";
    font-family: FontAwesome;
    /* margin-right: 0.5em; */
    margin-left: -1em;
    float: left;
}

ul.links-list.indent-list-icon li:before {
    margin-right: 0.5em;
    margin-left: 0;
}

ul.links-list.list-no-indent li {
    margin-left: 0;
}

#sitemap-links .links-list li {
    font-size: 15px !important;
    padding: 3px 0;
}

/*********************************************************************************
				Error Pages
*********************************************************************************/
.debugdetails {
    border: 1px solid #fff;
    text-align: left;
    display: inline-block;
    padding: 10px;
}

.debugdetails h5 {
    font-weight: bold;
}

.debugdetails:before {
    content: '';
    display: block;
    width: 100%;
}

.error-row {
    padding: 60px 0px;
    background: #f9676b;
    color: #fff;
}

.error-row .desc p {
    font-size: 18px;
}

.error-row .desc a {
    border: 2px solid #fff;
    color: #fff;
    display: inline-block;
    font-size: 20px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-top: 30px;
    padding: 10px 30px;
}

.error-row .desc a:hover {
    background: #07253F;
}

.error-row .desc a i {
    margin-right: 10px;
}

.error-row .large-para {
    font-weight: 800;
    font-size: 100px;
}

.error-row .large-para span {
    display: block;
}

.custom-anchor {
    border: none !important;
    font-size: 18px !important;
    letter-spacing: 0px !important;
    margin-top: 0px !important;
    padding: 0px 0px !important;
}

a.custom-anchor:hover {
    background: #FF000000 !important;
}

/*********************************************************************************
				Airline Details Page
*********************************************************************************/
.info-n-links {
    padding: 1em;
    font-size: 90%;
}

.info-n-links > span {
    display: block;
}

.info-n-links strong {
    margin-right: 4px;
}

.baggage-rule-list {
    display: table;
}

.baggage-rule-list li {
    padding: 0.5em;
}

.baggage-rule-list li:nth-child(even) {
    background-color: #F3F3F3;
}

.baggage-rule-list li:nth-child(odd) {
    background-color: #e9e9e9;
}

.baggage-rule-list span {
    display: table-cell;
    padding: 6px;
}

.baggage-rule-list span:first-child {
    max-width: 40% !important;
}

/*********************************************************************************
				LEFT SIDEBAR
*********************************************************************************/
.left-sidebar {
    -ms-flex: 0 0 300px;
        flex: 0 0 300px;
    background: #E3E6E8;
    margin: 0px;
    /* overflow: hidden;  this overflow interferes with spotlight on book-travel widget, so dont add it */
    padding: 0 1em 1em;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: center;
        align-items: center;
}

@media (max-width: 767px) {
    .left-sidebar {
        -ms-flex: auto;
            flex: auto;
    }
}

#curr-airport-selection {
    display: none;
    margin-top: 0;
    /* helps it align with items in main col */
    margin-bottom: 20px;
}

#curr-airport-selection ul.dropdown-menu {
    margin-top: -1px;
}

.side-bar-module {
    background: #fff;
    box-shadow: 0px 0px 5px #9da8af;
    margin-top: 20px;
    padding: 10px;
}

.side-bar-module .current-airport {
    text-decoration: underline;
    font-weight: bold;
    font-size: 13px;
}

.sidebar-search {
    margin-top: 10px;
    width: 100%;
    position: relative;
}

.sidebar-search .input-group-addon {
    border-radius: 0px;
    color: #ffffff;
    background: #F2676B;
    border: none;
    padding: 0 18px;
}

.sidebar-item .list-group-item {
    border: none;
}

.row > .airport-overview-slide-bar-effect > .panel-body {
    border: none;
    border-radius: 0px;
    box-shadow: 0px 0px 5px #9da8af;
}

#sidebar-quicklinks > .home-airport-color {
    background-color: #0A3152;
}

.row > .background-p-blue > .panel-heading {
    background-color: #0A3152;
    border: none;
    border-radius: 0px;
}

.simple-module > .simple-module-header > .fa-caret-down {
    float: right;
}

@media (min-width: 992px) and (max-width: 1199px) {
    #mini-book-travel .simple-module-body {
        padding-left: 8px;
        padding-right: 8px;
    }
    #mini-book-travel .nav-tabs > li > a {
        margin-right: 3px;
        padding-left: 2px;
        padding-right: 2px;
        font-size: 90%;
    }
}

@media (min-width: 767px) and (max-width: 879px) {
    #mini-book-travel .simple-module-body {
        padding-left: 8px;
        padding-right: 8px;
    }
    #mini-book-travel .nav-tabs > li > a {
        margin-right: 3px;
        padding-left: 2px;
        padding-right: 2px;
        font-size: 90%;
    }
}

#sidebar-quicklinks {
    margin-bottom: 20px;
}

#sidebar-quicklinks .panel-group {
    margin-bottom: 10px;
}

#sidebar-quicklinks .panel-group a.main-link {
    font-size: 12px;
    font-weight: bold;
}

#sidebar-quicklinks .panel-group a.main-link:hover {
    text-decoration: none;
}

#sidebar-quicklinks .panel-group > a.main-link {
    padding: 5px;
    margin-left: 14px;
    display: block;
    color: inherit;
}

#sidebar-quicklinks .panel-group > a.main-link:hover, #sidebar-quicklinks .panel-group li.list-group-item a:hover {
    text-decoration: underline;
}

#sidebar-quicklinks .panel {
    margin: 0;
    border: none;
    box-shadow: none;
}

#sidebar-quicklinks .panel-heading {
    background: none;
    padding: 5px;
}

#sidebar-quicklinks .panel-heading .panel-title a {
    /* local scoped mixin to create the ":before" rule content */
}

#sidebar-quicklinks .panel-heading .panel-title a:focus {
    text-decoration: none;
}

#sidebar-quicklinks .panel-heading .panel-title a[aria-expanded="true"]:before {
    content: "";
    font-family: FontAwesome;
    margin-right: 0.5em;
    font-size: 9px;
    /* font-awesome chevron-down */
}

#sidebar-quicklinks .panel-heading .panel-title a[aria-expanded="false"]:before {
    content: "";
    font-family: FontAwesome;
    margin-right: 0.5em;
    font-size: 9px;
    /* font-awesome chevron-right */
}

#sidebar-quicklinks .panel-collapse li.list-group-item {
    padding: 2px 15px 2px 25px;
    font-size: 13px;
    border: none;
}

#sidebar-recent-forums .simple-module-body {
    padding-top: 0;
    padding-bottom: 10px;
}

#sidebar-recent-forums ul {
    font-size: 93%;
}

#horizontal-recent-forums li, #sidebar-recent-forums li {
    padding: 8px 2px 3px;
    border-bottom: 1px solid #ccc;
}

#horizontal-recent-forums li p, #sidebar-recent-forums li p {
    margin-top: 5px;
    /* credit: http://stackoverflow.com/a/5108367 */
    white-space: pre-wrap;
    /* css-3 */
    word-wrap: break-word;
    /* Internet Explorer 5.5+ */
    white-space: normal;
    /* adds hyphen when word is broken */
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

#horizontal-recent-forums li div[data-role="footer"], #sidebar-recent-forums li div[data-role="footer"] {
    font-size: 80%;
    overflow: hidden;
}

#horizontal-recent-forums li div[data-role="footer"] span:first-child, #sidebar-recent-forums li div[data-role="footer"] span:first-child {
    float: left;
}

#horizontal-recent-forums li div[data-role="footer"] span:last-child, #sidebar-recent-forums li div[data-role="footer"] span:last-child {
    float: right;
}

@media (max-width: 399px) {
    #horizontal-recent-forums .forum-btns-container button, #sidebar-recent-forums .forum-btns-container button {
        margin-bottom: 5px;
    }
}

/*********************************************************************************
				Center content
*********************************************************************************/
.foot-message {
    display: block;
    margin-top: 1.7em;
    font-size: 90%;
}

/*********************************************************************************
				Search Page
*********************************************************************************/
.searchpage-search-box .gsc-search-box tr {
    border: 1px solid #BEC4C8;
}

.searchpage-search-box .gsc-search-box input.gsc-input {
    color: #07253F;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.075) inset;
    line-height: 1.42857;
    padding: 10px 0 10px 5px;
}

.searchpage-search-box .gsc-search-box input.gsc-search-button {
    background-color: #ccc;
    height: 100%;
}

/*********************************************************************************
				Support Page
*********************************************************************************/
.contact-form {
    padding: 0px 15px 15px;
}

.contact-form .form-control {
    height: 40px;
    border-radius: 0px;
    margin: 10px 0px;
}

.contact-form textarea {
    height: auto !important;
}

.contact-form h2 {
    font-weight: 800;
}

.contact-form h5 {
    line-height: 1.8;
}

#feedback-save-result {
    border: 1px dotted #ccc;
    border-radius: 5px;
    font-weight: bold;
    font-size: 1em;
    clear: both;
    margin-bottom: 1em;
    position: relative;
}

#feedback-save-result .close-btn-container {
    position: absolute;
    right: 15px;
    top: 12px;
    font-size: 1.3em;
    color: #bbb;
}

#feedback-save-result .close-btn-container:hover {
    color: #444;
    cursor: pointer;
}

#feedback-save-result .feedback-result {
    padding: 1em;
    display: none;
}

#feedback-save-result .feedback-result p {
    margin: 0;
}

#feedback-save-result.result-success .msg-success {
    display: block;
}

#feedback-save-result.result-error .msg-error {
    display: block;
}

#feedback-save-result .msg-success {
    color: green;
}

#feedback-save-result .msg-error {
    color: #F2676B;
}

.slide-up-hide {
    overflow: hidden;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0;
    transition-duration: 0.9s;
    transition-timing-function: cubic-bezier(0, 1, 0.5, 1);
}

.slide-down-show {
    transition-duration: 0.9s;
    transition-timing-function: ease-in;
    max-height: 1000px;
    overflow: hidden;
}

/*********************************************************************************
				Weather Page
*********************************************************************************/
.weather-icon {
    height: 50px;
    width: 50px;
    background-size: cover;
    background-repeat: no-repeat;
}

.weather-condition {
    font-weight: bold;
    font-size: large;
}

.weather-condition, .weather-icon {
    display: inline-block;
    vertical-align: middle;
    margin-top: -10px;
}

.weather-details ul li span {
    font-weight: bold;
}

/*********************************************************************************
				Press Releases Page
*********************************************************************************/
.press-release-info header {
    border-bottom: 1px solid #ccc;
    padding-bottom: 5px;
}

.press-release-info .press-release-title {
    font-weight: bolder;
    margin: 0 0 5px;
}

.press-release-info .press-release-date {
    font-size: 88%;
    padding-left: 3px;
    margin: 0;
}

.press-release-info .press-release-text {
    padding: 10px 0;
}

.press-release-info .press-release-link {
    font-size: 95%;
    margin: 0;
}

/*********************************************************************************
				Flight Tracking Page
*********************************************************************************/
@media (max-width: 1199px) {
    #tracker-widget {
        margin-bottom: 1em;
    }
}

table.table-sortable.disabled tbody {
    opacity: 0.5;
}

table.table-sortable th {
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
}

table.table-sortable th[data-sort] {
    cursor: pointer;
}

table.table-sortable th i.fa {
    margin-left: 5px;
    font-size: 13px;
}

table.table-sortable th, table.table-sortable td {
    text-align: center;
}

table.table-sortable tbody {
    font-size: small;
}

#tracker-results-module .simple-module-body {
    padding-bottom: 10px;
}

#tracker-results-module .simple-module-body #tracker-flights-list-header {
    margin-bottom: 5px;
}

#tracker-results-module .simple-module-body #tracker-flights-list-header .bootstrap-select {
    margin-bottom: 5px;
}

#tracking-results {
    display: none;
    position: relative;
    margin-bottom: 10px;
}

@media (max-width: 991px) {
    #tracking-results table {
        font-size: 80%;
        overflow-x: scroll;
    }
    #tracking-results [data-sort] span i {
        display: block;
    }
}

@media (max-width: 599px) {
    #tracking-results tr th:nth-child(3),
    #tracking-results tr td:nth-child(3) {
        display: none;
    }
}

#tracking-results th {
    border-top: 2px solid #ddd;
}

#tracking-results tbody tr:hover {
    cursor: pointer;
    background-color: #dedede;
}

#tracking-results tbody tr:hover td {
    text-decoration: underline;
}

#tracking-results tbody tr:after {
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #07253F;
    top: 50%;
    margin-top: 15px;
    right: 3px;
    display: inline-block;
    content: ' ';
    position: relative;
}

#tracking-results #time-disclaimer {
    display: block;
    margin-bottom: 6px;
}

#tracking-results #tracking-results-loading,
#tracking-results #tracking-results-error {
    display: none;
    text-align: center;
    margin-top: 10px;
    padding: 5em;
}

#flight-details {
    display: none;
    padding: 0em 1em;
    border: 1px solid #ccc;
}

#flight-details h2 {
    margin-top: 15px;
}

#flight-details .airport-code {
    font-size: 16px;
    font-weight: bold;
}

#flight-details .airport-location {
    font-size: 12px;
    font-weight: normal;
}

#flight-details #back-to-flight-list {
    margin-left: -8px;
    padding: 6px 6px 0;
    font-weight: bold;
}

#flight-details #flight-details-flightname {
    font-weight: bold;
}

#flight-details #flight-details-operatedby {
    font-size: 57%;
    display: inline-block;
    padding: 4px 0 0 4px;
}

#flight-details #flight-details-fromto {
    font-size: 95%;
    font-weight: 700;
}

#flight-details #from-to-arrow {
    margin: auto 7px;
    font-size: 1.6em;
    vertical-align: middle;
}

#flight-details .panel p {
    margin: 0;
}

#flight-details label {
    font-size: 13px;
    font-weight: normal;
}

#flight-details label span {
    display: block;
    font-size: 14px;
    font-weight: bold;
    margin-left: 1em;
}

#flight-details #flight-details-st-val {
    display: inline-block;
    margin-left: 7px;
    font-size: 22px;
}

#flight-details #flight-details-sch-status {
    margin-top: -10px;
}

#flight-details #flight-details-sch-st-val {
    display: inline-block;
    margin-left: 7px;
    font-size: 20px;
    color: #32CD32;
}

#flight-details .status-delayed {
    color: #ff1a59 !important;
}

#flight-details .status-unknown {
    color: #fff !important;
}

#flight-track-status-tiles .flight-info-card {
    background: rgba(10, 49, 82, 0.8);
    color: #fff;
    padding: 10px 15px;
    margin-bottom: 10px;
    overflow: hidden;
}

#flight-track-status-tiles .flight-status-card header {
    padding: 0 15px 10px;
    position: relative;
}

#flight-track-status-tiles .flight-status-card header .flight-details--airport {
    margin: 0;
    font-size: 22px;
    font-weight: bold;
    color: #fff;
    line-height: 1.1;
}

#flight-track-status-tiles .flight-status-card header .slant-edge {
    padding: 12px 12px 12px 45px;
    position: absolute;
    right: -16px;
    top: -10px;
    font-size: 15px;
    font-weight: bold;
}

#flight-track-status-tiles .flight-status-card p {
    margin: 0;
    font-weight: bold;
}

#flight-track-status-tiles .flight-status-card p span {
    display: block;
    font-size: 24px;
}

#flight-track-status-tiles .flight-status-card p span:last-child {
    font-size: 85%;
    font-weight: normal;
}

#flight-track-status-tiles .flight-status-card section {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    padding: 10px 0;
    overflow: hidden;
}

#flight-track-status-tiles .flight-status-card section label {
    font-size: 1.1em;
}

#flight-track-status-tiles .flight-status-card section .flight-details--status {
    color: #32CD32;
    font-size: 16px;
}

#flight-track-status-tiles .flight-status-card footer {
    padding: 10px 15px 0;
}

#flight-track-status-tiles .flight-progress-card header, #flight-track-status-tiles .flight-progress-card section, #flight-track-status-tiles .flight-progress-card footer {
    overflow: hidden;
}

#flight-track-status-tiles .flight-progress-card header > span,
#flight-track-status-tiles .flight-progress-card section > span,
#flight-track-status-tiles .flight-progress-card footer > span {
    font-weight: bold;
}

#flight-track-status-tiles .flight-progress-card section {
    padding: 20px 0;
    font-size: 18px;
}

#flight-track-status-tiles .flight-progress-card .distance-line {
    position: relative;
    display: inline-block;
    border-top: 2px solid #fff;
    width: 82%;
    height: 6px;
}

@media (min-width: 1200px) {
    #flight-track-status-tiles .flight-progress-card .distance-line {
        width: 88%;
    }
}

@media (max-width: 569px) {
    #flight-track-status-tiles .flight-progress-card .distance-line {
        width: 75%;
    }
}

#flight-track-status-tiles .flight-progress-card .flight-progress-icon {
    font-size: 2em;
    position: absolute;
    top: -18px;
    left: -1%;
    transform: rotate(45deg);
}

/*********************************************************************************
				Airport Delays Page
*********************************************************************************/
.delay-list-box {
    margin-left: 15px;
    padding-left: 15px;
    border-left: 1px solid;
}

.delay-list-box li {
    padding: 10px 10px 10px 0;
    margin-left: 10px;
}

.delay-list-box li em {
    font-style: normal;
    text-decoration: underline;
}

.delay-list-box li.delay--entry {
    border-bottom: 1px solid #eee;
}

/*********************************************************************************
				Wait Times Page
*********************************************************************************/
#wait-time-container .panel-body {
    overflow: visible;
}

#wt-current-airport {
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
    padding-bottom: 10px;
    border-bottom: 1px solid #999;
    margin-top: 0;
}

#wait-time-disclaimer {
    font-size: 85%;
}

#airport-name {
    font-weight: bold;
    text-decoration: underline;
}

/* container for loading and results-table */
#wait-times-data {
    display: none;
    margin-top: 1em;
    border-top: 2px solid #07253F;
    padding: 1em;
    /* terminal map page link */
}

#wait-times-data #wait-times-loading {
    display: none;
    height: 90px;
}

#wait-times-data #wait-times-error {
    color: #F2676B;
    display: none;
}

#wait-times-data #wait-times-legend ul {
    display: table;
    table-layout: fixed;
    /* makes all table-cells equal width */
    width: 100%;
    /*https://stackoverflow.com/questions/16398823/why-is-a-div-with-display-table-cell-not-affected-by-margin*/
    border-collapse: separate;
    border-spacing: 5px;
}

#wait-times-data #wait-times-legend li.wait-level {
    display: table-cell;
    width: 100%;
    border: 1px solid #777;
    text-align: center;
    padding: 1px;
}

#wait-times-data #wait-times-table li {
    padding: 10px;
    background-color: #c7cdd1;
}

#wait-times-data #wait-times-table li:not(:last-child) {
    margin-bottom: 5px;
}

#wait-times-data #wait-times-table div {
    padding: 5px;
    display: inline-block;
    vertical-align: middle;
}

#wait-times-data #wait-times-table div:first-child {
    width: 30%;
}

#wait-times-data #wait-times-table div:last-child {
    width: 70%;
    border-left: 1px solid #777;
    line-height: 1.6;
}

#wait-times-data #wait-times-table div span {
    padding: 0 3px;
    display: inline-block;
    font-size: 14px;
}

#wait-times-data #wait-times-table + h3 {
    font-size: 14px;
    font-weight: bold;
    text-decoration: underline;
}

#wait-times-data .wait-level-1 {
    color: green;
}

#wait-times-data .wait-level-2 {
    color: #ffff00;
}

#wait-times-data .wait-level-3 {
    color: red;
}

#wait-times-data .wait-level-1--bg {
    background: green;
}

#wait-times-data .wait-level-2--bg {
    background: #ffff00;
}

#wait-times-data .wait-level-3--bg {
    background: red;
}

/*********************************************************************************
				Closest Airports Page
*********************************************************************************/
#closest-airports {
    margin-left: 1.2em;
}

/*********************************************************************************
				Airport Overview Page
*********************************************************************************/
#delaysPanelModule #airport-delays-overview p {
    padding: 5px;
    margin-bottom: 5px;
}

#delaysPanelModule #airport-delays-overview p.delay-absent {
    padding: 12px 8px;
}

@media (min-width: 992px) {
    #delaysPanelModule #airport-delays-overview {
        font-size: 79%;
    }
}

@media (min-width: 1200px) {
    #delaysPanelModule #airport-delays-overview {
        font-size: 88%;
    }
}

.span6-half-wrapper .span_5, .span6-half-wrapper .span_6, .span6-half-wrapper .span_3, .span6-half-wrapper .span_7 {
    width: 49.5% !important;
}

.span6-half-wrapper .col {
    display: block;
    float: left;
    margin-left: 1%;
    margin-right: 0;
}

.span6-half-wrapper .col:first-child {
    margin-left: 0;
}

.span6-half-wrapper .font-nav-mobile-book-travel {
    font-size: 17px;
    padding: 5px;
}

.airport-overview-info-panel .panel-title {
    font-size: 14px;
}

.airport-overview-info-panel .panel-body {
    overflow-y: scroll !important;
}

@media (min-width: 992px) {
    .airport-overview-info-panel .panel-body {
        min-height: 241px;
        /* equal to the height of "parking & shuttle" panel module */
        max-height: 241px;
    }
}

.border-book-travel {
    border: 1px solid #07253f;
    margin-bottom: 30px;
    border-radius: 4px;
}

.airport-overview-font-book-travel {
    font-size: 14px;
}

#horizontal-recent-forums .panel-body {
    padding: 0 15px 8px;
}

#horizontal-recent-forums ul {
    margin-bottom: 3px;
}

#horizontal-recent-forums li {
    width: 25%;
    padding: 10px;
    font-size: 90%;
    position: relative;
    margin-left: -4px;
    /* compensate for display: inline-block */
    /* local mixin to make the list item full width */
    height: 145px;
    min-height: 145px;
    overflow: auto;
    /* if viewport is too small to show items side by side, wrap them into vertical stack */
}

@media (min-width: 992px) and (max-width: 1199px) {
    #horizontal-recent-forums li {
        height: 180px;
        min-height: 180px;
        overflow: auto;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    #horizontal-recent-forums li {
        height: 195px;
        min-height: 195px;
        overflow: auto;
    }
}

@media (max-width: 767px) {
    #horizontal-recent-forums li {
        height: 180px;
        min-height: 180px;
        overflow: auto;
    }
}

@media (max-width: 599px) {
    #horizontal-recent-forums li {
        height: auto;
        min-height: unset;
        width: 100%;
        border-right-width: 0 !important;
    }
}

@media (min-width: 768px) and (max-width: 869px) {
    #horizontal-recent-forums li {
        height: auto;
        min-height: unset;
        width: 100%;
        border-right-width: 0 !important;
    }
}

#horizontal-recent-forums li:not(:last-of-type) {
    border-right: 1px solid #ccc;
}

#horizontal-recent-forums li div[data-role="footer"] {
    position: absolute;
    bottom: 3px;
    width: 90%;
}

/*********************************************************************************
				Flight & Deals Page
*********************************************************************************/
.popover-trigger-btn {
    padding: 0 2px;
    outline: none !important;
    color: #07253F;
}

.popover-trigger-btn:focus, .popover-trigger-btn:hover {
    color: #F2676B;
}

/*********************************************************************************
				Parking reservaation widget
*********************************************************************************/
.popup-title-image {
    height: 8%;
    width: 34%;
    left: -12px;
    position: absolute;
    z-index: 0;
    top: 5px;
    padding-bottom: 5px;
}

.parking-reservation-suggestion-border {
    border-style: solid;
    border-width: 1px;
    color: #f9676b;
    width: 43%;
}

.parking-reservation-suggestion-icon {
    height: 37%;
    width: 15%;
    padding-top: 10px;
    z-index: 0;
}

.parking-reservation-suggestion-border {
    border-style: solid;
    border-width: 1px;
    color: #f9676b;
    background-color: #f2f5f9;
}

.parking-reservation-text {
    height: 49px;
    width: 102.35%;
    left: -16px;
    position: absolute;
    z-index: 0;
    top: 78px;
}

.parking-reservation-button-text {
    color: white;
    position: absolute;
    z-index: 0;
    top: 14px;
    left: 33%;
    font-weight: bold;
    font-size: 16px;
}

.parking-reservation-button2-text {
    color: white;
    position: absolute;
    z-index: 0;
    top: 14px;
    left: 35%;
    font-weight: bold;
    font-size: 16px;
}

.parking-reserve-button-image {
    height: 93%;
    width: 40%;
    z-index: 0;
    position: absolute;
    left: 29%;
    top: -1px;
}

.hotel-reservation-suggestion-title-text {
    color: white;
    z-index: 0;
    right: 0;
    left: 0;
    margin: auto;
    position: absolute;
    top: 32.5%;
}

.hotel-reservation-suggestion-title-image {
    z-index: 0;
    left: -15px;
    width: 102.3%;
    height: 8%;
    position: absolute;
    top: 29%;
}

.popup-title-header-text {
    position: absolute;
    top: 20px;
    left: 10px;
    color: black;
    font-weight: bold;
}

.reserve_parking_popup .parking-reservation-suggestion a[data-role="button"] {
    position: absolute;
    right: 0;
    left: 0;
    top: 78px;
}

.popup--title-message {
    font-weight: bold;
    margin-bottom: 25px;
    margin-top: 16px;
}

.reserve-parking-box-text {
    text-decoration: underline;
    color: black;
}

.reserve-parking-box {
    text-align: center;
    padding-top: 20px;
    color: black;
    position: relative;
    top: 13px;
    right: 21px;
}

.hotel-reservaion-link {
    color: white;
    text-decoration: underline;
}

a.hotel-reservaion-link:hover {
    color: white;
}

/*********************************************************************************
				Airport Parking Page
*********************************************************************************/
.parking-locations-list {
    /**background: #f7f7f7;*/
}

.parking-lot {
    /*background: #f9f9fa;*/
    padding: 15px 0;
}

.parking-lot .parking-lot--logo {
    margin-top: 5px;
    text-align: center;
}

.parking-lot .parking-lot--logo img {
    /*width: 100%;*/
    max-width: 100%;
}

.parking-lot .parking-lot--more-info {
    color: #444;
    font-size: 90%;
}

.parking-lot .parking-lot--rate-info {
    margin-bottom: 15px;
    text-align: center;
}

.parking-lot .parking-lot--rate-info .parking-lot--rate {
    margin: 10px 0;
}

.parking-lot .parking-lot--name {
    margin: 0 0 5px;
}

.parking-lot .parking-lot--address {
    font-size: 90%;
}

.parking-lot:not(:last-child) {
    border-bottom: 1px solid #ddd;
}

/*********************************************************************************
				Maps
*********************************************************************************/
[data-role="map"] {
    background: #efefef;
}

/* airport-name/directions page */
#airport-gmap {
    height: 505px;
}

.gmap-infowindow h6 {
    border-bottom: 1px solid #07253F;
}

.gmap-infowindow li {
    padding-bottom: 3px;
}

/*********************************************************************************
				Forms
*********************************************************************************/
.error-label {
    color: red;
    font-size: smaller;
    font-weight: normal;
    text-transform: lowercase !important;
    display: none;
}

.error-label:before {
    content: '*';
    display: inline;
}

[data-tip] {
    position: relative;
}

[data-tip]:before {
    content: '';
    /* hides the tooltip when not hovered */
    display: block;
    content: '';
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid #FFCC00;
    position: absolute;
    top: 30px;
    left: 35px;
    z-index: 8;
    font-size: 0;
    line-height: 0;
    width: 0;
    height: 0;
}

[data-tip]:after {
    display: block;
    content: attr(data-tip);
    position: absolute;
    top: 35px;
    left: 0px;
    padding: 5px 8px;
    background: #FFCC00;
    color: black;
    z-index: 9;
    font-size: 0.72em;
    width: 87%;
    /*height:18px;*/
    opacity: 0.8;
    filter: alpha(opacity=50);
    line-height: 18px;
    border-radius: 3px;
    /*white-space:nowrap;*/
    word-wrap: normal;
}

@media (max-width: 400px) {
    [data-tip]:after {
        display: block;
        content: attr(data-tip);
        position: absolute;
        top: 35px;
        left: 0px;
        padding: 5px 8px;
        background: #FFCC00;
        color: black;
        z-index: 9;
        font-size: 0.75em;
        width: 90%;
        /*height:18px;*/
        opacity: 0.8;
        filter: alpha(opacity=50);
        line-height: 18px;
        border-radius: 3px;
        /*white-space:nowrap;*/
        word-wrap: normal;
    }
}

/*********************************************************************************
				Iframes
*********************************************************************************/
#iframe-node {
    width: 100%;
    display: none;
}

#travel-deals-loading {
    background: rgba(10, 49, 82, 0.7);
    min-height: 800px;
    padding-top: 50px;
}

iframe {
    max-width: 100%;
}

/*-------------------------------- HELPER CLASSES -----------------------------*/
.w100 {
    width: 100%;
}

.h100 {
    height: 100%;
}

.strong {
    font-weight: bold;
}

.area100 {
    height: 100%;
    width: 100%;
}

.m0 {
    margin: 0;
}

.m-b0 {
    margin-bottom: 0;
}

.m-t0 {
    margin-top: 0;
}

.m-l0 {
    margin-left: 0;
}

.m-r0 {
    margin-right: 0;
}

.p0, .clear-padding {
    padding: 0;
}

.p-r0 {
    padding-right: 0;
}

.p-l0 {
    padding-left: 0;
}

.edge-p0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/*
  Highlights an element on page by making rest of the page faded
  credit: https://blog.hospodarets.com/highlight_element_with_page_fading
  JS plugin to do same with animation: http://jquer.in/javascript-frameworks-for-developing-rich-applications/focusable/
*/
.spotlight {
    box-shadow: 0 0 0 99999px rgba(0, 0, 0, 0.8);
    z-index: 10;
    position: relative;
    /* needed for z-index to work */
}

/*
 Hides content but keeps it accessible
 https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*/
.element-invisible {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
}

.col-centered {
    float: none;
    margin: 0 auto;
}

.blockify {
    display: block;
}

.no-display {
    display: none;
}

.noselect {
    -webkit-touch-callout: none;
    /* iOS Safari */
    -webkit-user-select: none;
    /* Chrome/Safari/Opera */
    /* Konqueror */
    -moz-user-select: none;
    /* Firefox */
    -ms-user-select: none;
    /* IE/Edge */
    user-select: none;
    /* non-prefixed version, currently not supported by any browser */
}

.captitalize {
    text-transform: capitalize;
}

.uc {
    text-transform: uppercase;
}

.vspacer-fix {
    height: 1em;
}

.vspacer-fix-custom {
    height: 0.65em !important;
}

.space {
    width: 100%;
    position: relative;
    display: inline-block;
    margin: 10px 0;
}

.space.dbl-space {
    margin: 20px 0;
}

.space.lg-space {
    margin: 15px 0;
}

.space.xlg-space {
    margin: 30px 0;
}

.top-spaced {
    margin-top: 10px;
}

.dbl-top-spaced {
    margin-top: 20px;
}

.dbl-top-spaced-custom {
    margin-top: 1.4em !important;
}

.em2-top-spaced {
    margin-top: 2em;
}

.bold {
    font-weight: bold;
}

.fs95 {
    font-size: 95%;
}

.fs90 {
    font-size: 90%;
}

.fs85 {
    font-size: 85%;
}

.fs80 {
    font-size: 80%;
}

.fs75 {
    font-size: 75%;
}

.fs70 {
    font-size: 70%;
}

.transition-effect {
    transition: all 0.5s ease;
}

.col-p0 > [class*="col-"]:first-of-type {
    padding-left: 0;
}

.col-p0 > [class*="col-"]:last-of-type {
    padding-right: 0;
}

.row-cols-no-padding > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.row-align-col-edges > [class*="col-lg"]:first-of-type {
    padding-left: 0;
}

.row-align-col-edges > [class*="col-lg"]:last-of-type {
    padding-right: 0;
}

@media (max-width: 1199px) {
    .row-align-col-edges > [class*="col-lg"] {
        padding-left: 0;
        padding-right: 0;
    }
}

.row-align-col-edges > [class*="col-md"]:first-of-type {
    padding-left: 0;
}

.row-align-col-edges > [class*="col-md"]:last-of-type {
    padding-right: 0;
}

@media (max-width: 991px) {
    .row-align-col-edges > [class*="col-md"] {
        padding-left: 0;
        padding-right: 0;
    }
}

.row-align-col-edges > [class*="col-sm"]:first-of-type {
    padding-left: 0;
}

.row-align-col-edges > [class*="col-sm"]:last-of-type {
    padding-right: 0;
}

@media (max-width: 767px) {
    .row-align-col-edges > [class*="col-sm"] {
        padding-left: 0;
        padding-right: 0;
    }
}

/* smaller column padding */
.col-p-sm {
    /* lg */
}

.col-p-sm .col-lg-1, .col-p-sm .col-lg-2, .col-p-sm .col-lg-3, .col-p-sm .col-lg-4, .col-p-sm .col-lg-5, .col-p-sm .col-lg-6,
.col-p-sm .col-lg-7, .col-p-sm .col-lg-8, .col-p-sm .col-lg-9, .col-p-sm .col-lg-10, .col-p-sm .col-lg-11, .col-p-sm .col-lg-12,
.col-p-sm .col-md-1, .col-p-sm .col-md-2, .col-p-sm .col-md-3, .col-p-sm .col-md-4, .col-p-sm .col-md-5, .col-p-sm .col-md-6,
.col-p-sm .col-md-7, .col-p-sm .col-md-8, .col-p-sm .col-md-9, .col-p-sm .col-md-10, .col-p-sm .col-md-11, .col-p-sm .col-md-12,
.col-p-sm .col-sm-1, .col-p-sm .col-sm-2, .col-p-sm .col-sm-3, .col-p-sm .col-sm-4, .col-p-sm .col-sm-5, .col-p-sm .col-sm-6,
.col-p-sm .col-sm-7, .col-p-sm .col-sm-8, .col-p-sm .col-sm-9, .col-p-sm .col-sm-10, .col-p-sm .col-sm-11, .col-p-sm .col-sm-12,
.col-p-sm .col-xs-1, .col-p-sm .col-xs-2, .col-p-sm .col-xs-3, .col-p-sm .col-xs-4, .col-p-sm .col-xs-5, .col-p-sm .col-xs-6,
.col-p-sm .col-xs-7, .col-p-sm .col-xs-8, .col-p-sm .col-xs-9 .col-xs-10, .col-p-sm .col-xs-11, .col-p-sm .col-xs-12 {
    padding-left: 5px;
    padding-right: 5px;
}

ul#mobile-main-section-nav {
    margin: auto;
    width: 91%;
}

ul#mobile-main-section-nav li {
    padding: 6px;
    padding-left: 15px;
    background: #07253F;
    font-weight: bold;
    font-size: 90%;
    cursor: pointer;
    box-shadow: inset 0 0 1px 0 rgba(0, 0, 0, 0.6);
}

ul#mobile-main-section-nav li a {
    color: #fff;
    display: block;
}

ul#mobile-main-section-nav li a:after {
    content: "\f0a9";
    font-family: FontAwesome;
    margin-right: 8px;
    float: right;
    font-size: 1.3em;
    margin-top: -2px;
}

ul#mobile-main-section-nav li:not(:last-of-type) {
    margin-bottom: 3px;
}

#mobile-nav-popup-menu {
    position: absolute;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    overflow: hidden;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--bg {
    position: absolute;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    overflow: hidden;
    background-color: #fff;
    opacity: 0.8;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content {
    padding: 0;
    color: #fff;
    z-index: 1;
    max-height: 100%;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content > div {
    max-height: 100vh;
    /* max-height is viewport height */
    overflow: scroll;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content header {
    height: 30px;
    background: #000;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content header a {
    float: right;
    color: #fff;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section {
    /* offset section top by same value as header height */
    margin-top: 30px;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .dropdown-menu h5 {
    font-weight: bold;
    border-bottom: 1px solid #777;
    padding-bottom: 3px;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .dropdown-menu li > a {
    color: #fff;
    font-weight: normal;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .dropdown-menu li > a:focus, #mobile-nav-popup-menu #mobile-nav-popup-menu--content section .dropdown-menu li > a:hover {
    background-color: inherit;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .nav.navbar-nav {
    margin: 0;
    background: #07253F;
    font-weight: bold;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .nav > li > a,
#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .nav > li > a:focus,
#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .nav > li > a:hover {
    color: #fff;
    background-color: inherit !important;
    border-color: inherit !important;
}

#mobile-nav-popup-menu #mobile-nav-popup-menu--content section .nav .dropdown-menu {
    border-top: 1px solid #fff;
}

/* overrides for css  on phones */
.devtype-phone #homepage-booking-widget-ad {
    margin-top: 10px;
}

.devtype-phone .vertical-search,
.devtype-phone .full-width-container {
    padding-top: 10px;
    padding-bottom: 10px;
}

.devtype-phone .blog-page-title {
    padding: 15px 0px !important;
}

/*-------------------------------- GLOBAL MEDIA QUERIES -----------------------------*/
@media (min-width: 768px) {
    .nav.navbar-nav .dropdown-menu {
        right: -50%;
    }
    .nav.navbar-nav .nudge-left-little {
        margin-left: -15px;
    }
    .nav.navbar-nav .nudge-left-more {
        margin-left: -25px;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .nav.navbar-nav li.dropdown:last-child {
        display: none;
    }
}

@media (min-width: 992px) {
    .nav.navbar-nav li.dropdown {
        width: 90px;
        /* "Blog" drop down item */
    }
    .nav.navbar-nav li.dropdown:nth-last-child(2) {
        width: 66px;
    }
    .nav.navbar-nav li.dropdown:nth-last-child(3) {
        width: 66px;
    }
    .nav.navbar-nav li.dropdown ul.dropdown-menu {
        left: auto;
        right: auto;
    }
    .nav.navbar-nav li.dropdown:last-child {
        width: 100px;
        margin-top: 10px;
    }
    .nav.navbar-nav li.dropdown:last-child ul.dropdown-menu {
        left: inherit;
        right: -30px;
    }
    .nav.navbar-nav li.dropdown:last-child input {
        border-top-left-radius: 4px;
        border-bottom-left-radius: 4px;
    }
    .nav.navbar-nav li.dropdown:last-child .input-group-addon {
        padding: 4px;
    }
    .nav.navbar-nav li.dropdown a.dropdown-toggle {
        font-size: 10px;
        text-align: center;
        padding: 7px 5px;
    }
}

@media (min-width: 992px) and (min-width: 992px) {
    .nav.navbar-nav li.dropdown.mega ul.mega-menu {
        width: auto;
        right: auto;
    }
}

@media (min-width: 992px) {
    .navbar .dropdown i.fa.fa-caret-down {
        display: none;
    }
}

@media (min-width: 1200px) {
    .nav.navbar-nav li.dropdown {
        width: 106px;
    }
    .nav.navbar-nav li.dropdown:last-child {
        width: 128px;
        margin-top: 10px;
    }
    .nav.navbar-nav li.dropdown:nth-last-child(2) {
        width: 76px;
    }
    .nav.navbar-nav li.dropdown input {
        border-top-left-radius: 4px;
        border-bottom-left-radius: 4px;
    }
    .nav.navbar-nav li.dropdown .input-group-addon {
        padding: 6px;
    }
    .nav.navbar-nav li.dropdown a.dropdown-toggle {
        font-size: 12.6px;
        text-align: center;
        padding: 7px 5px;
    }
}

/*# sourceMappingURL=maps/main.css.map */
