/* ==========================================================================
   Eric Meyer CSS Reset
   ========================================================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

    blockquote:before, blockquote:after,
    q:before, q:after {
        content: '';
        content: none;
    }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* - - - - - - end reset - - - - - - */

html,
button,
input,
select,
textarea {
    color: #333;
}

html, p, h1, h2, h3, h4, h5, h6, li {
    font-size: 16px;
    line-height: 1.4;
}

p {
    margin-bottom: .75em;
}

a {
    color: #005B9E;
    font-weight: normal;
    text-decoration: underline;
}

    a:hover {
        /*background: #e5f2f9; */
        color: #333;
        text-decoration: none;
    }

::-moz-selection {
    background: #f36f21;
    color: #FFF;
    text-shadow: none;
}

::selection {
    background: #f36f21;
    color: #FFF;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

a:focus {
    outline: thin dotted blue;
}

a:active,
a:hover {
    outline: 0;
}


h1, h2 {
    color: #00589E;
}

h3, h4, h5, h6 {
    color: #333;
}

h1 {
    font-size: 25px;
    font-weight: normal;
    margin: .5em 0;
}

h2 {
    font-size: 24px;
    font-weight: 700;
    margin: 0.83em 0;
}

h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: 26px;
    margin: 0 0 .25em 0;
}

h4 {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 .25em 0;
}

h5 {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 .25em 0;
}

h6 {
    font-size: 16px;
    margin: 0 0 .25em 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b, strong {
    font-weight: bold;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
Sunwing styles
========================================================================== */
body {
    font-family: 'PT Sans', sans-serif;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow-x: hidden;
    overflow-y: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.if_best_seats_selected {
    display: none;
}

.best_seats_selected.if_best_seats_selected {
    display: inherit;
}

.outliner,
.skip-nav {
    left: -9999px;
    overflow-x: hidden;
    overflow-y: hidden;
    position: absolute;
}

    .skip-nav:active, .skip-nav:focus {
        left: 0;
        top: 0;
        background: white;
        padding: 10px;
        border: 1px solid #646464;
    }

.container {
    margin: 0 auto;
    padding: 15px;
}

.wrapper {
    /*border-bottom: 1px solid #ccc;*/
    margin: 0 auto;
}

/*header {
    background-color: #ff6000;
    border-bottom-right-radius: 1.875rem;
}*/

.information {
    color: #646464;
}

.fr #homelinklogo {
    /*background: #FF6000 url(../images/sunwing-expereience-the-difference-logo-mobile-fr.png) no-repeat center center;*/
    background: #FF6000 url(../images/NewSunwingLogo-white.svg) no-repeat center center;
}

#homelinklogo {
    /*background: #FF6000 url(../images/sunwing-expereience-the-difference-logo-mobile.png) no-repeat center center; */
    background: #FF6000 url(../images/NewSunwingLogo-white.svg) no-repeat center center;
    height: 53px;
    width: 140px;
    position: absolute;
    top: 42px;
    left: 10px;
    z-index: 5px;
}

#header_logo {
    display: none;
}

/* Summary + Booking Info */

#summary {
    background: #e2edf4;
    clear: both;
    color: #007CC3;
    padding: 15px;
}

    #summary .location span {
        line-height: 1.6;
    }

.location .myvacation,
.location .country,
.location .hotel,
.dates .startsin,
.dates .datesfromto {
    color: #333;
}

.location .country,
.location .hotel,
.dates .startsin {
    font-size: 18px;
}

.dates .numberdays {
    font-size: 24px;
}

.dates .datesfromto {
    display: block;
    line-height: 1.8;
}

.dates span.startsin.empty:before {
    min-height: 24px;
    background: no-repeat center left;
    content: '';
    color: #D8FFFF;
    padding-left: 26px;
}

.dates .startsin:before {
    background: url(../images/icons/clock-dark.png) no-repeat center left;
    content: '';
    color: #D8FFFF;
    padding-left: 26px;
}

.compact .location .country,
.compact .location .hotel,
.compact .dates .datesfromto {
    position: absolute;
    left: -99999px;
    overflow: hidden;
}

.compact .location .myvacation {
    margin-bottom: -5px;
}

.compact .location .city {
    font-size: 22px;
}

.compact .dates .startsin {
    font-size: 16px;
}

.compact .dates .numberdays {
    font-size: 18px;
}

#summary.compact .location {
    float: none;
}

#summary.compact .dates {
    float: none;
}

#bookinginfo {
    border-left: 2px solid #e2edf4;
    border-bottom: 2px solid #e2edf4;
    border-right: 2px solid #e2edf4;
    padding: 10px;
    margin-bottom: 5px;
}

    #bookinginfo .booking > div {
        display: table-row;
        padding-bottom: 5px;
    }

    #bookinginfo .booking span {
        display: table-cell;
        vertical-align: top;
        line-height: 1.4;
    }

        #bookinginfo .booking span:first-of-type {
            font-weight: 700;
            padding-right: 10px;
        }

.share ul {
    margin-top: 20px;
    text-align: center;
}

.share li {
    display: inline;
    margin: 0 10px;
}

    .share li a {
        border: 2px solid #f2f1ec;
        display: inline-block;
        overflow: hidden;
        text-indent: -9999px;
        height: 36px;
        width: 36px;
    }

#print {
    background: url(../images/icons/print.png) no-repeat center center;
}

#sharelink {
    background: url(../images/icons/link.png) no-repeat center center;
}

#emailthis {
    background: url(../images/icons/mail.png) no-repeat center center;
}

#facebook {
    background: url(../images/icons/facebook.png) no-repeat center center;
}

#twitter {
    background: url(../images/icons/twitter.png) no-repeat center center;
}

    #print:hover,
    #sharelink:hover,
    #emailthis:hover,
    #facebook:hover,
    #twitter:hover {
        background-color: #e5f2f9;
    }

#mybooking,
#mybooking-seats h3 {
    display: none;
}

.breadcrumb {
    display: none;
    margin-bottom: 5px;
    list-style: none;
}

    .breadcrumb > .active {
        color: #666;
        font-weight: 700;
    }

    .breadcrumb > li {
        font-size: 14px;
        display: inline-block;
    }

        .breadcrumb > li + li:before {
            padding: 0 5px;
            color: #ccc;
            content: "/\00a0";
        }

.loading {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background-color: rgba(256,256,256,0.7);
}

    .loading img {
        width: 60px;
        height: 60px;
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -30px 0 0 -30px;
    }

.border {
    border: 2px solid #00589E;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.border2 {
    border: 2px solid #007cc3 !important;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.nobordertop {
    border-width: 0 2px 2px 2px;
}

.border-bottom {
    border-bottom: 1px solid #ccc;
}

.negmargtop {
    margin-top: -30px;
}

.leftcol,
.rightcol,
#seatselection {
    display: block;
    width: 100%;
}

    .leftcol h3, .rightcol h3 {
        border-bottom: 1px solid #FFF;
        color: #FFF;
        font-weight: 400;
        margin: 0;
        padding: 10px 15px;
    }

h3.blue {
    background: #007cc3;
}

h3.grey {
    background: #646464;
}

h3.accordion {
    border: 2px solid #007cc3;
    background-repeat: no-repeat;
    background-position: 95% center;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

    h3.accordion.open {
        background-image: url(../images/icons/angle-down-white.png);
    }

    h3.accordion.close {
        background-image: url(../images/icons/angle-up-white.png);
    }


.left-col-menu {
    margin: 0;
}

    .left-col-menu li ul {
        margin: 0;
    }

    .left-col-menu li {
        line-height: 1.8;
    }

        .left-col-menu li a {
            text-decoration: none;
            font-size: 18px;
            font-weight: 700;
            display: block;
            margin: 0;
            position: relative;
            -webkit-transition: background 0.5s ease-out;
            -moz-transition: background 0.5s ease-out;
            -o-transition: background 0.5s ease-out;
            transition: background 0.5s ease-out;
        }

        .left-col-menu li a {
            padding: 5px 15px;
        }

    .left-col-menu > li > ul li a,
    .catheader {
        text-indent: 15px;
    }

    .left-col-menu li.selected a,
    .seatselectionleftcolborder li.selected a {
        background: #396582;
        color: #FFF;
        font-weight: 400;
    }

    .left-col-menu.multiline li a {
        font-size: 13px;
        line-height: 14px;
        min-height: 55px;
    }

    .left-col-menu.multiline li {
        margin-bottom: 1px;
    }

    .left-col-menu.checkmarks li {
    }


        .left-col-menu.checkmarks li a {
            background-image: url(../images/icons/checkbox-empty2.png);
            background-repeat: no-repeat;
            background-position: 10px center;
            font-size: 14px;
            padding-top: 8px;
            padding-bottom: 8px;
            padding-left: 45px;
        }

            .left-col-menu.checkmarks li a.checked {
                background-image: url(../images/icons/checkbox-orange.png);
            }


/* Moved right arrow CSS to 768px */


.info {
    background: url(../images/icons/info.png) no-repeat top left;
    font-size: 18px;
    padding-left: 30px;
}

.show {
    cursor: pointer;
    font-size: 16px;
    /*padding-right: 26px;*/
    text-decoration: none;
    position: relative;
    white-space: nowrap;
}

    .show:after {
        background: url(../images/icons/arrow-down.png) no-repeat center right;
        content: '';
        position: absolute;
        right: -22px;
        top: -2px;
        width: 24px;
        height: 24px;
    }

    .show.up:after {
        background: url(../images/icons/arrow-up.png) no-repeat center right;
    }

.hide {
    display: none;
    margin-bottom: 30px;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

.myBookingMenuQuickButtons {
    margin-bottom: 30px;
    -webkit-transition: all 0.5s ease-out;
    -moz-transition: all 0.5s ease-out;
    -o-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

.hide.no {
    display: block;
}

.leftcol .hide h4, .rightcol .hide h4 {
    color: #333;
}

.alert {
    background: #fbedec url(../images/icons/alert-red.png) no-repeat 15px 15px;
    border: 2px solid #ba1b13;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    clear: both;
    padding: 15px 45px 8px 45px;
    margin-bottom: 40px;
}

    .alert:after {
        display: table;
        content: '';
        clear: both;
    }

    .alert.alert-error {
        background-position: 5px 10px;
        padding: 15px 15px 15px 35px;
    }

    .alert.alert-info {
        border: none;
        background: #f2f2f2 url(../images/icons/info.png) no-repeat 5px 15px;
        margin-bottom: 20px;
        padding: 15px 15px 15px 35px;
    }

        .alert.alert-info.alert-blue {
            border: 2px solid #00589E;
            background: #e4f3f8 url(../images/icons/info.png) no-repeat 5px 10px;
            margin-bottom: 20px;
            padding: 15px 15px 15px 35px;
        }

            .alert.alert-info.alert-blue p {
                margin-bottom: 0;
            }

        .alert.alert-info .alert-info--message {
            float: left;
            margin-bottom: 10px;
        }

            .alert.alert-info .alert-info--message h2,
            .alert.alert-info .alert-info--message p {
                margin: 0;
                font-size: 18px;
                color: #333;
                line-height: 22px;
            }

    .alert .btn {
        padding: 10px 15px;
    }

.flight {
    margin-bottom: 20px;
}

.flight-details {
    padding: 15px;
}

.passengers {
    border-top: 1px dashed #ccc;
    border-bottom: 1px dashed #ccc;
}

.flight-details p {
    line-height: 1.5;
    margin-bottom: 0;
}

.flighttofrom {
    font-weight: 700;
}
/*.flightnum:before { content: 'Flight: ';}*/
/*.flightdep:before { content: 'Dep: ';}*/
/*.flightarri:before { content: 'Arri: ';}*/


#seatprice {
    margin: 15px 0 0 0;
    width: 100%;
}

.th-traveller,
.td-traveller {
    text-align: left;
    width: 60%;
}

.th-seat,
.td-seat,
.th-price,
.td-price {
    text-align: center;
    width: 20%;
}

#seatprice th {
    padding: 5px 10px;
}

#seatprice td {
    padding: 10px;
}

.td-traveller {
    color: #007cc3;
    font-weight: 700;
}

    .td-traveller a {
        text-decoration: inherit;
        color: inherit;
        background: transparent;
        font-weight: inherit;
    }

.td-value:before,
/*.td-price:before { content: '$';}*/
#seatprice .selected td,
#seatprice .active td,
#seatprice .error td {
    color: #FFF;
    font-weight: 400;
}

#seatprice .selected td {
    background-color: #396582;
}
/* dark blue */
#seatprice .active td {
    background-color: #007cc3;
}
/* blue */
#seatprice .error td {
    background-color: #ba1b13;
}
/* red */

#seatprice .error .td-traveller {
    background: #ba1b13 url(../images/icons/alert-white.png) no-repeat 10px center;
    text-indent: 30px;
}

.continue {
    margin: 15px;
    position: relative;
}

    .continue .button {
        border: 2px solid #358046;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: table;
        height: 44px;
        width: 100%;
    }

        .continue .button.inactive {
            background: #ecebe6;
            color: #646464;
        }

        .continue .button a {
            background: #358046;
            color: #FFF;
            display: table-cell;
            font-size: 18px;
            font-weight: 700;
            margin: 0;
            text-align: center;
            text-decoration: none;
            vertical-align: middle;
            -webkit-transition: background 0.5s ease-out;
            -moz-transition: background 0.5s ease-out;
            -o-transition: background 0.5s ease-out;
            transition: background 0.5s ease-out;
        }

        .continue .button.inactive a {
            background: #ecebe6;
            color: #646464;
        }

        .continue .button a:hover {
            background: #FFF;
            color: #358046;
        }

.total {
    border-top: 2px solid #ccc;
    color: #333;
    padding: 15px;
}

    .total h3 {
        color: #333;
        font-weight: 700;
        padding: 0;
    }

#totalprice {
    width: 100%;
}

.th-label,
.td-value {
    padding: 10px 0;
    width: 50%;
}

.th-label {
    font-weight: 700;
    text-align: left;
}

.td-value {
    text-align: right;
}

.final {
    color: #007cc3;
    font-size: 18px;
    font-weight: 700;
}

.td-value.final {
    font-size: 24px;
}




/* Vacation Checklist 
   Flight status and alerts
*/
#flightstatusandalerts {
    padding: 20px 0 30px 0;
    background: url(../images/icons/loader-swg.gif) no-repeat center;
    background-size: 60px;
}

#vacationchecklist h1 {
    font-weight: 400;
    padding-left: 40px;
    position: relative;
    z-index: -1;
    margin: 0;
}

    #vacationchecklist h1:before {
        background: #FF6000 url(../images/icons/checkmark-white.png) no-repeat center center;
        border-radius: 50%;
        content: '';
        width: 30px;
        height: 30px;
        position: absolute;
        left: 0;
    }

#vacationchecklist h2 {
    color: #007cc3;
    font-size: 20px;
    display: table;
    white-space: nowrap;
}

    #vacationchecklist h2:after {
        content: '';
        display: table-cell;
        position: relative;
        background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mO8+x8AAr8B3gzOjaQAAAAASUVORK5CYII=) no-repeat bottom right / 95% 2px;
        width: 100%;
        top: -8px;
    }

/* Vacation Overview */
#overview:after {
    content: '';
    display: table;
    clear: both;
}

#overview h1 {
    margin-top: 0;
}

#overview h2 {
    color: #007cc3;
    font-size: 20px;
    display: table;
    white-space: nowrap;
}

    #overview h2:after {
        content: '';
        display: table-cell;
        position: relative;
        background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNkqDn8HwAEAwJAWN/q8AAAAABJRU5ErkJggg==) no-repeat bottom right / 95% 2px;
        width: 100%;
        top: -8px;
    }

#overview .show-overview-details {
    float: right;
    top: -45px;
    position: relative;
}

    #overview .show-overview-details a {
        margin-left: 20px;
        background: none;
        cursor: pointer;
    }

.vacation-overview {
    padding: 0;
    margin: 0;
    display: block;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .vacation-overview .selection-dropdown {
        margin-bottom: 20px;
    }

.vacation-overview--container {
    margin: 10px 0;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .vacation-overview--container h4 {
        font-size: 20px;
        line-height: 24px;
        font-weight: 400;
    }

        .vacation-overview--container h4.flight {
            padding-left: 35px;
        }

            .vacation-overview--container h4.flight:before {
                content: '';
                display: block;
                background: url(../images/icons/plane-grey.png) no-repeat;
                width: 25px;
                height: 25px;
                position: absolute;
                margin-left: -35px;
            }

        .vacation-overview--container h4 span {
            font-size: 16px;
            float: right;
        }

    .vacation-overview--container p {
        font-size: 14px;
        margin: 0;
    }

    .vacation-overview--container a {
        text-decoration: none;
    }

        .vacation-overview--container a.more-details {
            font-size: 14px;
            text-decoration: underline;
            background: none;
            cursor: pointer;
            padding: 5px 0;
            display: inline-block;
        }

    .vacation-overview--container table {
        margin-top: 10px;
        text-align: left;
        color: #666;
        font-size: 14px;
        width: 100%;
    }

        .vacation-overview--container table th,
        .vacation-overview--container table td {
            padding: 7px 5px;
            border-bottom: 1px solid #ccc;
            text-align: left;
        }

        .vacation-overview--container table tbody tr:last-of-type td {
            border-bottom: 0;
        }

.vacation-overview-excursions .vacation-overview--container {
    margin: 0;
    padding: 0 10px;
}

    .vacation-overview-excursions .vacation-overview--container table {
        margin: 0;
        table-layout: fixed;
        height: 100%;
    }

        .vacation-overview-excursions .vacation-overview--container table td {
            border-bottom: none;
        }

    .vacation-overview-excursions .vacation-overview--container:nth-child(n+2) table th {
        display: none;
    }

    .vacation-overview-excursions .vacation-overview--container table tbody tr:last-of-type td {
        border-bottom: 1px solid #ccc;
    }

    .vacation-overview-excursions .vacation-overview--container:nth-last-child(-n+2) table tbody tr:last-of-type td {
        border-bottom: 0;
    }

.vacation-overview-transportation .vacation-overview--container {
    margin: 0;
    padding: 0 10px;
}

.upgrade-alert {
    display: table;
    width: 100%;
    background: #f2f2f2;
    padding: 15px 25px;
    margin: 15px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.upgrade-alert-cta .btn {
    white-space: nowrap;
    vertical-align: middle;
}

.upgrade-alert-message {
    text-align: center;
}

    .upgrade-alert-message h3 {
        font-weight: 400;
        font-size: 20px;
        line-height: 1em;
    }

    .upgrade-alert-message p {
        margin: 0;
        font-size: 14px;
        line-height: 1em;
    }

    .upgrade-alert-message:after,
    .upgrade-alert-cta:after {
        content: '';
        display: table;
        clear: both;
    }

.upgrade-alert-cta {
    margin-top: 15px;
}

.checklist {
    padding-bottom: 10px;
}

.checks li {
    clear: both;
    margin-bottom: 15px;
}

    .checks li a {
        /*border: 2px solid #ecebe6;*/
        color: #333;
        display: inline-block;
        /*height: 115px;*/
        /*min-height: 115px;*/
        padding: 15px 0 20px 0;
        position: relative;
        text-decoration: none;
        width: 100%;
        /*
z-index: -1;
*/
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: background 0.5s ease-out;
        -moz-transition: background 0.5s ease-out;
        -o-transition: background 0.5s ease-out;
        transition: background 0.5s ease-out;
    }

        .checks li a:hover {
        }

    .checks li .checkbox {
        float: left;
        /*text-align: center;*/
        /*height: 100%;*/
        /*min-height: 115px;*/
        /*position: absolute;*/
        height: 35px;
        width: 16%;
        /*display: table;*/
        /*top: 0;
bottom: 0;
left: 0;
right: 0;*/
    }

.checkbox.empty {
    background-image: url(../images/icons/checkbox-empty.png);
}

.checkbox.incomplete {
    background-image: url(../images/icons/checkbox-incomplete.png);
}

.checkbox.complete {
    background-image: url(../images/icons/checkbox-complete.png);
}

.icon.bed {
    background-image: url(../images/icons/checklist-bed.png);
}

.icon.car {
    background-image: url(../images/icons/checklist-car.png);
}

.icon.document {
    background-image: url(../images/icons/checklist-document.png);
}

.icon.parking {
    background-image: url(../images/icons/checklist-parking.png);
}

.icon.photos {
    background-image: url(../images/icons/checklist-photos.png);
}

.icon.selectseat {
    background-image: url(../images/icons/checklist-seat.png);
}

.icon.shield {
    background-image: url(../images/icons/checklist-shield.png);
}

.icon.star {
    background-image: url(../images/icons/checklist-star.png);
}

.icon.suitcase {
    background-image: url(../images/icons/checklist-suitcase.png);
}

.icon.wine {
    background-image: url(../images/icons/checklist-wine.png);
}

.icon.meal {
    background-image: url(../images/icons/checklist-meal.png);
}

.icon.duty-free {
    background-image: url(../images/icons/checklist-duty-free.png);
}

.checkbox {
    background-repeat: no-repeat;
    background-position: center bottom;
}

.icon {
    background-repeat: no-repeat;
    background-position: left top;
}

.icon {
    float: left;
    height: 50px;
    margin-left: 2%;
    width: 16%;
}

.details {
    float: right;
    margin-right: 3%;
    width: 59%;
}


    .details h3 {
        margin-bottom: 0;
        color: #666;
        font-weight: 400;
    }

    .details p {
        color: #666;
    }

.sublist {
    color: #666;
    margin: -5px 0 10px 0;
}

    .sublist li {
        line-height: 1.4;
        margin: 0;
    }

        .sublist li.checked {
            background: url(../images/icons/checkmark-small.png) no-repeat center left;
            padding-left: 20px;
        }

.cta {
    clear: both;
    display: block;
    width: auto;
    margin: 0 auto;
    padding: 0 15px;
}

.calendar {
    clear: both;
    display: block;
}

.btn {
    border: 2px solid #007cc3;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: table;
    height: 50px;
    text-align: center;
    width: 100%;
}

    .btn p {
        color: #007cc3;
        display: table-cell;
        font-size: 18px;
        font-weight: 700;
        line-height: 19px;
        margin: 0;
        padding: 0;
        vertical-align: middle;
    }
    /* Green Button Used for Checklist */
    .btn.btn-green {
        border: 2px solid #358046;
        background-color: #358046;
    }

        .btn.btn-green p {
            color: #fff;
            padding: 5px;
        }

        .btn.btn-green h3 {
            color: #fff;
            padding: 5px;
        }

.calendar .date {
    background: url(../images/icons/calendar-large-grey.png) no-repeat left center;
    display: table;
    height: 50px;
    max-width: 100%;
    margin: 0 auto;
}

    .calendar .date p {
        color: #999;
        display: table-cell;
        font-size: 14px;
        font-weight: 400;
        line-height: 1.1;
        margin: 0;
        padding: 0 0 0 45px;
        vertical-align: middle;
    }

        .calendar .date p b {
            display: block;
            font-size: 14px;
            font-weight: 700;
        }

.ribbon {
    text-align: center;
}

.ribbon {
    line-height: 2em;
    margin: 5px auto 0 auto;
    padding: 0;
    text-align: center;
    background: #FF6000;
    position: relative;
    box-sizing: border-box;
    width: 90%;
    box-shadow: 0px 4px 0px rgba(201,201,201,0.6);
}

    .ribbon span {
        /*background: url(../images/icons/clock-white.png) no-repeat 5px center;*/
        color: #FFF;
        font-size: 14px;
        font-weight: 700;
        white-space: nowrap;
        overflow-x: hidden;
        text-overflow: ellipsis;
        display: block;
        /*padding: 0 8px 0 22px;*/
        padding: 0 12px;
        position: relative;
    }

        .ribbon span:before {
            background: url(../images/icons/clock-white.png) no-repeat center center;
            content: '';
            position: absolute;
            width: 24px;
            height: 24px;
            left: 2px;
            top: 4px;
        }

    .ribbon:before,
    .ribbon:after {
        position: absolute;
        box-sizing: border-box;
        top: 0;
        width: 0;
        height: 0;
        -webkit-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg);
        content: "";
        border-style: solid;
    }

    .ribbon:before {
        right: 100%;
        border-width: 1em 0 1em 0.6em;
        border-color: #FF6000 #FF6000 #FF6000 transparent;
    }

    .ribbon:after {
        left: 100%;
        border-width: 1em 0.6em 1em 0;
        border-color: #FF6000 transparent #FF6000 #FF6000;
        box-shadow: 0px 4px 0px rgba(201,201,201,0.6);
    }

/* Accordion */

#seatselection .accordion {
    border: 1px solid #ccc;
    margin-bottom: 30px;
}


.panel {
    border-bottom: 1px solid #ccc;
    display: table;
    height: 73px;
    width: 100%;
}

    .panel:last-of-type,
    .panel.eliteplusexit {
        border-bottom: none;
    }

    .panel.open {
        background: #e5f2f9;
        border-bottom: 2px solid #007cc3;
    }

.new-accordion-open .panel {
    background: #e5f2f9;
    /*
border-bottom: 2px solid #007cc3; 
*/
}

.if_new_accordion_expanded,
.new-accordion-open .if_new_accordion_collapsed {
    display: none;
}

.new-accordion-open .if_new_accordion_expanded,
.if_new_accordion_collapsed {
    display: inherit;
}

.panel h4,
.panel p {
    line-height: 1.3;
    margin: 0;
}

.panel a {
    color: #333;
    display: table-cell;
    height: 68px;
    text-decoration: none;
    vertical-align: middle;
    -webkit-transition: background 0.5s ease-out;
    -moz-transition: background 0.5s ease-out;
    -o-transition: background 0.5s ease-out;
    transition: background 0.5s ease-out;
}

.panel .seeit {
    background: url(../images/icons/angle-down-dark.png) no-repeat 99% center;
    color: #646464;
    font-weight: 700;
}

    .panel .seeit.close {
        background: url(../images/icons/angle-up-dark.png) no-repeat 99% center;
    }

.new-accordion-open .panel .seeit {
    background: url(../images/icons/angle-up-dark.png) no-repeat 99% center;
}

.elite a,
.eliteplus a,
.eliteplusexit a {
    background-position: 10px 10px;
    background-repeat: no-repeat;
    padding-left: 50px;
}

.elite a {
    background-image: url(../images/icons/elite-seats.png);
}

.eliteplus a {
    background-image: url(../images/icons/elite-plus-seats.png);
}

.eliteplusexit a {
    background-image: url(../images/icons/elite-plus-exit-row-seats.png);
}

.elite.jumbo-economy a {
    background-image: url(../images/icons/jumboseatchart-economy.png);
}

.eliteplus.jumbo-comfort a {
    background-image: url(../images/icons/jumboseatchart-comfort.png);
}

.eliteplusexit.jumbo-star a {
    background-image: url(../images/icons/jumboseatchart-star.png);
}

.panel.elite h4 {
    color: #007cc3;
}

.panel.eliteplus h4,
.panel.eliteplusexit h4 {
    color: #396582;
}

.panel-body {
    border: 1px solid #007cc3;
    padding: 15px;
}

    .panel-body:last-of-type {
        border-bottom: none;
    }

    .panel-body ul {
        list-style-type: disc;
        margin: 15px 15px 15px 20px;
    }

/* Seat Selection */
.selection-dropdown {
    display: table;
    width: 100%;
    border: 2px solid #ddd;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.selection-dropdown-bar {
    display: table-row;
}

.selection-dropdown .selection-dropdown--header {
    padding: 15px;
    font-size: 18px;
    font-weight: 700;
    display: block;
    vertical-align: middle;
    white-space: nowrap;
}

.selection-dropdown .selection-dropdown--options {
    display: block;
    vertical-align: middle;
    position: relative;
    width: 100%;
    z-index: 2;
}

    .selection-dropdown .selection-dropdown--options ul {
        background-color: #fff;
        width: 100%;
        height: 100%;
        right: -2px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .selection-dropdown .selection-dropdown--options li {
        display: none;
        background-color: #fff;
        position: relative;
        height: 100%;
        line-height: 24px;
        padding: 0 50px 0 15px;
        -webkit-transition: background 0.5s ease-out;
        -moz-transition: background 0.5s ease-out;
        -o-transition: background 0.5s ease-out;
        transition: background 0.5s ease-out;
    }

        .selection-dropdown .selection-dropdown--options li a {
            text-decoration: none;
            color: #333;
        }

            .selection-dropdown .selection-dropdown--options li a:hover,
            .selection-dropdown .selection-dropdown--options li a:focus {
                background: transparent;
            }

        .selection-dropdown .selection-dropdown--options li.active {
            display: block;
            border-left: 2px solid #ddd;
            margin-left: -2px;
        }

        .selection-dropdown .selection-dropdown--options li.multiple.active:after {
            content: '';
            position: absolute;
            background: url(../images/icons/angle-down-dark.png) no-repeat right center;
            width: 24px;
            height: 24px;
            top: 30%;
            right: 15px;
        }

    .selection-dropdown .selection-dropdown--options.open {
        vertical-align: top;
    }

        .selection-dropdown .selection-dropdown--options.open ul {
            height: auto;
        }

        .selection-dropdown .selection-dropdown--options.open li.multiple {
            display: block;
            margin-left: 0;
            border-bottom: 2px solid #ddd;
        }

            .selection-dropdown .selection-dropdown--options.open li.multiple:hover,
            .selection-dropdown .selection-dropdown--options.open li.multiple:focus,
            .selection-dropdown .selection-dropdown--options.open li.multiple.focus {
                background-color: #E4F3F8;
            }

            .selection-dropdown .selection-dropdown--options.open li.multiple.active {
                border-left: none;
                background-color: #f2f2f2;
            }

                .selection-dropdown .selection-dropdown--options.open li.multiple.active:after {
                    background: none;
                }

            .selection-dropdown .selection-dropdown--options.open li.multiple:first-child:after {
                content: '';
                position: absolute;
                background: url(../images/icons/angle-up-dark.png) no-repeat right center;
                width: 24px;
                height: 24px;
                top: 30%;
                right: 15px;
            }

.selectselection-content {
    margin-top: 15px;
}

.selectselection-content-left {
    display: none;
}

/* Passenger List */
.pax-list {
    border-bottom: 2px dotted #ddd;
}

    .pax-list > span {
        display: block;
        margin-bottom: 20px;
    }

    .pax-list ul {
        padding-bottom: 20px;
    }

    .pax-list li.pax_select {
        border: 2px solid transparent;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

        .pax-list li.pax_select a {
            padding: 15px;
            text-decoration: none;
            display: table;
            table-layout: fixed;
            width: 87%;
        }

            .pax-list li.pax_select a:hover,
            .pax-list li.pax_select a:focus {
                background: none;
                outline: none;
            }

    .pax-list.seat-selection-pax-list li.pax_select a span {
        display: table-cell;
        vertical-align: middle;
    }

    .pax-list li.pax_select a span {
        display: block;
        color: #595959;
        font-size: 20px;
    }

        .pax-list li.pax_select a span.pax_name {
            word-wrap: break-word;
        }

        .pax-list li.pax_select a span.room_name {
            display: block;
            font-weight: 700;
        }

        .pax-list li.pax_select a span.room_pax_name {
            display: block;
            font-size: 15px;
        }

        .pax-list li.pax_select a span.selectedseatnum {
            color: #333;
            font-size: 18px;
            font-weight: 700;
            width: 40px;
            text-align: right;
        }

    .pax-list li.pax_select:hover,
    .pax-list li.pax_select:focus,
    .pax-list li.pax_select.focus {
        position: relative;
        background: #cfe0e9;
    }

        .pax-list li.pax_select:hover:after,
        .pax-list li.pax_select:focus:after,
        .pax-list li.pax_select.focus:after {
            left: 100%;
            top: 50%;
            border: solid transparent;
            content: " ";
            height: 0;
            width: 0;
            position: absolute;
            pointer-events: none;
            border-color: rgba(207, 224, 233, 0);
            border-left-color: #cfe0e9;
            border-width: 15px;
            margin-top: -15px;
        }

    .pax-list li.pax_select.selected a span.pax_name,
    .pax-list li.pax_select.selected a span.room_pax_name,
    .pax-list li.pax_select.selected a span.room_name,
    .pax-list li.pax_select.selected a span.selectedseatnum {
        color: #00589E;
        font-weight: 700;
    }

    .pax-list li.pax_select.selected {
        position: relative;
        background: #ffffff;
        border: 2px solid #00589E;
    }

        .pax-list li.pax_select.selected:after, .pax-list li.pax_select.selected:before {
            left: 100%;
            top: 50%;
            border: solid transparent;
            content: " ";
            height: 0;
            width: 0;
            position: absolute;
            pointer-events: none;
        }

        .pax-list li.pax_select.selected:after {
            border-color: rgba(255, 255, 255, 0);
            border-left-color: #ffffff;
            border-width: 15px;
            margin-top: -15px;
        }

        .pax-list li.pax_select.selected:before {
            border-color: rgba(0, 88, 158, 0);
            border-left-color: #00589E;
            border-width: 18px;
            margin-top: -18px;
        }


    .pax-list.seat-selection-pax-list li.pax_select.picked a:before {
        float: none;
        display: table-cell;
    }

    .pax-list li.pax_select.picked a:before {
        content: '✓';
        float: left;
        width: 20px;
        margin-top: 2px;
        color: #358046;
    }

    .pax-list li.pax_select.picked.selected a::before {
        color: #007cc3;
    }


.departing-mobile-pax-list, .returning-mobile-pax-list,
.mobile-pax-list {
    display: block;
    border: 2px solid #ddd;
    padding: 15px;
    border-top: 0;
}

    .departing-mobile-pax-list label, .returning-mobile-pax-list label,
    .mobile-pax-list label {
        margin: 5px 0 !important;
    }

.seatchart .bs-popover {
    width: 200px;
    padding: 0;
    border: 3px solid #396582;
}

    .seatchart .bs-popover .bs-popover-title {
        background: #396582;
        color: #FFF;
        font-size: 24px;
        font-weight: 400;
        padding: 5px 0;
        border-radius: 0;
        text-align: center;
    }

    .seatchart .bs-popover .bs-popover-content {
        color: #646464;
    }

        .seatchart .bs-popover .bs-popover-content p {
            margin: 0;
        }

#seatmaplegend .panel-body {
    border: 1px solid #007cc3 !important;
}

.new-accordion-content {
    display: none;
}

.new-accordion-open .new-accordion-content {
    display: block;
}

.show-me {
    cursor: pointer;
    font-size: 16px;
    /*padding-right: 26px;*/
    text-decoration: none;
    position: relative;
    white-space: nowrap;
}

    .show-me:after {
        background: url(../images/icons/arrow-down.png) no-repeat center right;
        content: '';
        position: absolute;
        right: -22px;
        top: -2px;
        width: 24px;
        height: 24px;
    }

.new-accordion-open .show-me:after {
    background: url(../images/icons/arrow-up.png) no-repeat center right;
}

/* Collapsible Module */
.collapsible {
    border: 2px solid #00589E;
}

    .collapsible:after {
        content: '';
        display: table;
        clear: both;
    }

.collapsethis {
    text-decoration: none;
}

    .collapsethis:focus {
        text-decoration: underline;
        color: #fff;
    }

.donotcollapse:focus {
    text-decoration: underline;
    color: #727272;
}

.collapsethis:hover {
    background-color: transparent;
}

.collapsethis a {
    text-decoration: none
}

.collapsethis.open a {
    text-decoration: none
}

.collapsethis h3 {
    color: #FFF;
    padding: 10px;
    padding-right: 40px;
    margin: 10px 0 0;
    background-color: #00589E;
    background-image: url(../images/icons/angle-up-white.png);
    background-position: 95% center;
    background-repeat: no-repeat;
    cursor: pointer;
    text-decoration: none;
}

    .collapsethis h3:after {
        content: '';
        display: table;
        clear: both;
    }

    .collapsethis h3 span {
        font-size: 16px;
        font-weight: 400;
        padding-right: 15px;
        display: block;
    }

    .collapsethis h3:hover span,
    .collapsethis:focus span {
        text-decoration: underline;
    }

.collapsethis.open h3 {
    background-color: #646464;
    background-image: url(../images/icons/angle-down-white.png);
    text-decoration: none;
    -webkit-transition: background-color 0.5s ease-out;
    transition: background-color 0.5s ease-out;
}

.collapsethis.none h3 {
    background-image: none;
}

.collapsible .foo > *:last-child {
    margin-bottom: 0;
}

.collapsethis.inactive h3 {
    background-color: #ddd;
    color: #727272;
    cursor: not-allowed;
}

.collapsethis.inactive:focus {
    text-decoration: none;
}

.hide-content {
    display: none;
}

.showsome-collapsibles .hide-content {
    display: block;
}

.showsome-collapsibles .collapsethis.open h3 {
    background-color: #005B9E;
}

.showsome-collapsibles .showsome-more {
    display: block;
}

.showsome-collapsibles .hide-content .showsome-more {
    display: none;
}

.showsome {
    padding: 15px;
    border-bottom: 2px solid #00589E;
}

.showsome-more--cta {
    text-align: center;
}

    .showsome-more--cta a:focus {
        color: #333;
    }

.showsome-collapsibles .showsome-more--cta a:after {
    background: url('../images/icons/arrow-up.png');
    display: inline-block;
    content: '';
    width: 20px;
    height: 17px;
}

.showsome-collapsibles .hide-content .showsome-more--cta a:after {
    background: url('../images/icons/arrow-down.png');
}

.showsome-collapsibles .collapsible {
    border-bottom: 0;
}

@media only screen and (min-width: 768px) {
    .collapsethis h3 {
        background-position: 98% center;
    }

        .collapsethis h3 span {
            float: right;
            padding-right: 15px;
        }

    .collapsethis.open {
        background: transparent;
        border: none;
    }

    .showsome-more--cta {
        text-align: left;
    }

    .showsome-collapsibles .hide-content .showsome-more--cta {
        display: none;
        text-align: right;
    }
}

/* Footer */
footer {
    background-color: #333333;
    clear: both;
    color: #646464;
    margin-top: 30px;
    line-height: 1.6;
    text-align: left;
}

    footer > .container {
        padding-top: 0;
        max-width: 71.25rem;
        margin: 0px auto;
    }

    footer h5 {
        font-size: 22px;
        font-weight: 400;
        color: #666;
        padding-top: 15px;
        padding-bottom: 5px;
        border-bottom: 2px solid #ffffff;
    }

    footer .footer-container {
        display: table;
        width: 100%;
        padding: 0;
    }

.margin-top-55px {
    margin-top: 55px
}

footer .links-col {
    display: table-row;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

footer .form-col {
    display: table-caption;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    footer .form-col label {
        font-size: 14px;
        margin: 0;
    }

    footer .form-col .form-group {
        margin-bottom: 10px;
    }

    footer .form-col .checkboxes {
        margin-top: 5px;
    }

        footer .form-col .checkboxes label {
            line-height: 1.2;
        }

footer .links-col li {
    float: left;
    width: 100%;
    line-height: 1.6;
}

.footer-last-li {
    position: relative;
    top: -38px
}

footer .links-col li a {
    float: left;
    width: 100%;
    color: #fff;
    font-size: 16px;
    line-height: 18px;
    text-decoration: none;
    margin-bottom: 20px;
}

    footer .links-col li a:hover {
        background-color: transparent;
        text-decoration: underline;
    }

.language-links li {
    float: left;
    padding: 0px 25px;
    margin: 5px 0px;
}

    .language-links li:last-child {
        border-left: 1px solid #fff;
    }

    .language-links li a {
        font-size: 18px;
        line-height: 30px;
        color: #fff;
        text-decoration: none;
    }

        .language-links li a:hover {
            background-color: transparent;
        }

.language-link-active {
    font-weight: 900
}

footer .links-col:after {
    content: '';
    display: table;
    clear: both;
}

.links-col-2 {
    float: left;
    width: 50%;
}

.flinks-left-col {
    float: left;
    width: 40%;
}

.flinks-mid-col {
    float: left;
    width: 20%;
}

.certified li, .social-media li {
    float: right;
    margin-bottom: 6px;
}

.tico-logo {
    display: block;
    background: url("../images/logos/tico.png") !important;
    background-repeat: no-repeat !important;
    width: 75px;
    height: 38px;
}

.bbb-logo {
    display: block;
    background: url("https://www.sunwing.ca/images/logos/footer/bbb.png") !important;
    background-repeat: no-repeat !important;
    width: 96px;
    height: 50px;
    margin-left: 40px;
}

.social-icons {
    width: 42px;
    height: 36px;
    display: block;
}

.facebook-square {
    background: url("../images/logos/facebook.png") !important;
    background-repeat: no-repeat;
}

.twitter-square {
    background: url("../images/logos/twitter.png") !important;
    background-repeat: no-repeat;
}

.google-plus-square {
    background: url("../images/logos/google.png") !important;
    background-repeat: no-repeat;
}

.youtube-square {
    background: url("../images/logos/youtube.png") !important;
    background-repeat: no-repeat;
}

.pinterest-square {
    background: url("../images/logos/pinterest.png") !important;
    background-repeat: no-repeat;
}

.instagram-square {
    background: url("../images/logos/instagram.png") !important;
    background-repeat: no-repeat;
}

footer .copyright {
    color: #fff;
    text-align: center;
    font-size: 14px;
}

    footer .copyright a {
        color: #fff;
        background: none;
        text-decoration: none;
    }

        footer .copyright a:hover {
            text-decoration: underline;
        }
/* Popup alerts */
.popover_box {
    position: absolute;
    top: -85px;
    left: 25%;
    width: 50%;
}

    .popover_box.cabinrow {
        position: absolute;
        top: -40px;
        left: 1%;
        width: 98%;
    }

.popover {
    position: relative;
    background: #FFF;
    border: 2px solid #333333;
    box-shadow: 1px 2px 2px rgba(0,0,0,0.6);
    padding: 8px 10px;
}

    .popover:after,
    .popover:before {
        top: 100%;
        left: 50%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
    }

.popover_box.cabinrow .popover:after,
.popover_box.cabinrow .popover:before {
    left: 21%;
}

.popover_box.cabinrow .popover.seat-a:after,
.popover_box.cabinrow .popover.seat-a:before {
    left: 6%;
}

.popover_box.cabinrow .popover.seat-b:after,
.popover_box.cabinrow .popover.seat-b:before {
    left: 22%;
}

.popover_box.cabinrow .popover.seat-c:after,
.popover_box.cabinrow .popover.seat-c:before {
    left: 38%;
}

.popover_box.cabinrow .popover.seat-d:after,
.popover_box.cabinrow .popover.seat-d:before {
    left: 62%;
}

.popover_box.cabinrow .popover.seat-e:after,
.popover_box.cabinrow .popover.seat-e:before {
    left: 78%;
}

.popover_box.cabinrow .popover.seat-f:after,
.popover_box.cabinrow .popover.seat-f:before {
    left: 94%;
}

.popover:after {
    border-color: rgba(136, 183, 213, 0);
    border-top-color: #FFF;
    border-width: 12px;
    margin-left: -12px;
}

.popover:before {
    border-color: rgba(51, 51, 51, 0);
    border-top-color: #333333;
    border-width: 13px;
    margin-left: -13px;
}

.popover h5 {
    background: url(../images/icons/info.png) no-repeat left center;
    padding: 0 0 0 30px;
}

.popover p {
    color: #646464;
    font-size: 14px;
    margin: 0;
}

.popover .close-btn {
    background: url(../images/icons/popover-close-btn.png) no-repeat center center;
    float: right;
    height: 15px;
    width: 15px;
}

#mybookingmenu {
    margin-bottom: 2px;
    position: relative;
}

    #mybookingmenu .newmenu {
        background: #FFF;
        opacity: 0;
        position: absolute;
        top: 108%;
        left: 0;
        right: 0;
        visibility: hidden;
        -webkit-box-shadow: 3px 3px 5px 0px rgba(0,0,0,0.25);
        -moz-box-shadow: 3px 3px 5px 0px rgba(0,0,0,0.25);
        box-shadow: 3px 3px 5px 0px rgba(0,0,0,0.25);
        -webkit-transition: all .25s ease;
        -moz-transition: all .25s ease;
        -ms-transition: all .25s ease;
        -o-transition: all .25s ease;
        transition: all .25s ease;
        z-index: 3;
    }

    #mybookingmenu:hover .newmenu {
        opacity: 1;
        visibility: visible;
    }

    #mybookingmenu:hover h3 {
        background: #FFF url(../images/icons/angle-up.png) no-repeat 95% center;
        border: 2px solid #007cc3;
        color: #007cc3;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    /* Arrow box */
    #mybookingmenu .newmenu > ul {
        position: relative;
        background: #FFFFFF;
        border: 2px solid #396582;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

        #mybookingmenu .newmenu > ul:after, #mybookingmenu .newmenu > ul:before {
            bottom: 100%;
            left: 93%;
            border: solid transparent;
            content: " ";
            height: 0;
            width: 0;
            position: absolute;
            pointer-events: none;
        }

        #mybookingmenu .newmenu > ul:after {
            border-color: rgba(255, 255, 255, 0);
            border-bottom-color: #FFFFFF;
            border-width: 10px;
            margin-left: -10px;
        }

        #mybookingmenu .newmenu > ul:before {
            border-color: rgba(57, 101, 130, 0);
            border-bottom-color: #396582;
            border-width: 13px;
            margin-left: -13px;
        }

        #mybookingmenu .newmenu > ul li {
            width: 100%;
            text-indent: 0;
        }

.catheader span {
    display: block;
    margin: 6px 0;
    text-indent: 15px;
}

#mybookingmenu .newmenu > ul li a {
    display: block;
    font-weight: 700;
    padding: 12px 0;
    text-decoration: none;
    -webkit-transition: background 0.5s ease-out;
    -moz-transition: background 0.5s ease-out;
    -o-transition: background 0.5s ease-out;
    transition: background 0.5s ease-out;
}

#mybookingmenu .newmenu > ul li > ul {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
}

#mybookingmenu .newmenu > ul > li a {
    text-indent: 15px;
}

#mybookingmenu .newmenu > ul > li > ul li a {
    text-indent: 30px;
}


#mybookingportal #mybookingmenu {
    display: none;
}

#mybookingportal .summary {
    opacity: 1;
}

    #mybookingportal .summary.empty {
        opacity: 0;
    }

/* Booking Portal */
.hlist {
    margin: 0;
}

    .hlist li {
        border-right: 1px solid #ccc;
        display: inline;
        float: left;
        margin-right: 10px;
        padding-right: 10px;
    }

        .hlist li:last-child {
            border-right: none;
        }


ul.bulleted {
    display: block;
    list-style: none;
    padding: 0;
    margin: 0 0 15px 0;
    width: auto !important;
}

.bulleted li {
    /*padding: 0 !important;*/
    padding-left: 1em;
    line-height: 1.4em !important;
    text-align: left !important;
    text-indent: -.7em;
    height: auto !important;
    width: auto;
}

.multi-column li {
    display: inline;
    float: left;
    width: 31%;
}

.bulleted li:before {
    content: "• ";
    color: #f36f21;
}

.bulleted.bluedots li:before {
    color: #00589E;
}

.bulleted.darkdots li:before {
    color: #333;
}

.table {
    border-bottom: 2px solid #ccc;
    margin: 15px 0 30px 0;
    width: 100%;
}

    .table th {
        border-bottom: 2px solid #ccc;
        font-weight: 700;
        text-align: left;
        vertical-align: bottom;
    }

    .table tr {
        border-bottom: 1px solid #ccc;
    }

        .table tr:last-of-type {
            border-bottom: none;
        }

    .table td,
    .table th {
        padding: 5px;
    }

/* Login Page */

#login.container {
    position: relative;
}

#login #signin.left {
    width: 100%;
}

#login #signin2.right {
    display: none;
}

#login > h1 {
    margin-top: 0;
}

#login #signin legend {
    color: #007cc3;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
}

#login #signin #booking_number {
    font-size: 18px;
}

#login #signin form label, #login #signin form p.label {
    font-size: 16px;
    margin-bottom: 10px;
    margin-top: 15px;
}

.forgot {
    margin-top: 10px;
}

.form-two-col:after,
.form-three-col:after {
    content: "";
    display: table;
    clear: both;
}

.checkboxes .form-group label {
    font-weight: 400;
}

.form-group label {
    font-weight: 700;
}

.form-two-col .form-group.form-half {
    width: 100%;
    float: left;
}

.form-align-bottom input[type="submit"] {
    margin-top: 15px;
}

.form-terms {
    font-size: 14px;
    white-space: nowrap;
}

.print-edocs {
    display: table;
    padding: 25px 15px;
    /*margin: 25px 0px 0px 0px;*/
    background: #FFF8E6 0% 0% no-repeat padding-box;
    border-radius: 4px;
    position: relative;
    top: -25px
}

.print-edocs-cta .btn {
    width: 100%;
    white-space: nowrap;
    vertical-align: middle;
}

.print-edocs-message {
    padding-left: 0px;
    padding-bottom: 15px;
}
    /*
.print-edocs-message:before {
  content: '';
  display: block;
  background: #f2f2f2 url(../images/icons/info-large.png) no-repeat;
  width: 35px;
  height: 35px;
  position: absolute;
  margin-left: -50px;
}
*/
    .print-edocs-message h3 {
        font-size: 16px;
        line-height: 1em;
    }

    .print-edocs-message p {
        margin: 0;
        line-height: 1em;
    }

    .print-edocs-message:after,
    .print-edocs-cta:after {
        content: '';
        display: table;
        clear: both;
    }

.print-edocs-cta:nth-last-child(1) {
    margin-top: 10px;
}

#eDocsContainer {
    margin-top: 50px;
}

.edocs-frame {
    height: 0;
    width: 100%;
    padding-bottom: 100%;
    overflow: hidden;
    position: relative;
}

.loading-section.edocs-frame object {
    display: none;
}

.edocs-frame object, .edocs-frame embed {
    display: block;
    width: 100%;
    height: 90% !important;
    position: absolute;
    left: 0;
    z-index: 1 !important;
}

#eDocsContainer .error {
    background-color: #f2f2f2;
    text-align: center;
    padding: 40px 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

#eDocsContainer a {
    color: initial;
    text-decoration: initial;
}

#modalSendingDiv .form-thirds .btn_mobile_full {
    margin-top: 15px;
}

.ov {
    margin-bottom: 40px;
}

.ov-header {
    background: #00589E;
    color: #FFF;
    padding: 10px 15px;
}

    .ov-header h2,
    .ov-header h3,
    .ov-header h4,
    .ov-header h5 {
        color: #FFF;
        margin: 0;
    }

.ov-headerlist {
    margin: 5px 0;
}

    .ov-headerlist li {
        display: inline;
        margin-left: 10px;
    }

        .ov-headerlist li:first-child {
            margin-left: 0;
        }

        .ov-headerlist li a,
        .ov-headerlist li a:hover {
            background: none;
            color: #FFF;
        }

.ov-body {
    padding: 15px;
}

    .ov-body:after {
        content: '';
        display: table;
        clear: both;
    }

.ov-footer {
    padding: 10px 10px 0 10px;
}

.ov-flights {
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.ov-body h3 {
    margin: 0;
}

.ov-detail {
    color: #646464;
}

ul.ov-detail {
    margin: 0 0 15px 0;
}

    ul.ov-detail li {
        border-right: 1px solid #ccc;
        display: inline;
        margin-right: 5px;
        padding-right: 10px;
    }

        ul.ov-detail li:last-child {
            border-right: none;
        }

.ov-table h2,
.ov-table h3,
.ov-table h4,
.ov-table h5,
.ov-table h6,
.inner-table tr {
    border-bottom: 1px solid #ccc;
}

    .inner-table tr:last-of-type {
        border-bottom: none;
    }

.ov-table .roomtype {
    color: #007cc3;
}

.inner-table {
    margin-bottom: 15px;
    width: 100%;
}

    .inner-table th,
    .inner-table td {
        text-align: left;
        padding: 5px;
    }

    .inner-table th {
        color: #646464;
    }

    .inner-table a {
        text-decoration: none;
    }

.foo.borderlight .inner-table tr {
    border-bottom: none;
}

.bookinginfo-table {
    width: 100%;
}

    .bookinginfo-table th,
    .bookinginfo-table td {
        width: 30%;
        text-align: left;
        padding: 5px;
    }

/*.bookinginfo-table td:last-of-type { text-align: right; }*/


.bookinginfoinner-table {
    width: 80%;
}

.tdbold {
    font-weight: 700;
}

.ov-footer {
    border-top: 1px solid #007cc3;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .ov-footer h2,
    .ov-footer h3,
    .ov-footer h4,
    .ov-footer h5 {
        margin: 0;
    }

.ov-flights h2,
.ov-flights h3,
.ov-flights h4,
.ov-flights h5 {
    margin: 0;
}

.ov-footer button {
    height: 50px;
    line-height: 17px;
    margin: 0 auto 10px auto;
}


.cols-2 .ov-flights h3 {
    background: url(../images/icons/plane-grey.png) no-repeat left top;
}

.vacationflights.start h2 {
    background: url(../images/icons/plane-grey.png) no-repeat left center;
}

.cols-2 .ov-flights.twooftwo h3 {
    background: url(../images/icons/plane-grey-reverse.png) no-repeat left top;
}

.vacationflights.end h2 {
    background: url(../images/icons/plane-grey-reverse.png) no-repeat left center;
}


.cols-2 .ov-flights h3,
.cols-2 .ov-flights h4,
.vacationflights.start h2,
.vacationflights.end h2 {
    padding-left: 30px;
}

.ov-flights h4 {
    margin-bottom: 20px;
}

.ov-flights h4 {
    color: #646464;
}

    .ov-flights h4 span {
        font-size: .8em;
    }

        .ov-flights h4 span:before {
            content: '- ';
        }

.td-time-depart,
.td-time-arrive,
.td-seatnumber {
    width: 20%;
}

.td-seatnumber {
    font-size: 18px;
}

.ov-flights.oneoftwo {
    border-bottom: 2px solid #007cc3;
}

.ov-flights.oneoffour,
.ov-flights.twooffour,
.ov-flights.threeoffour {
    border-bottom: 2px solid #007cc3;
}

.cols-2 .ov-flights .ov-table {
    padding-left: 30px;
}

.ov-flights .ov-footer {
    border-top: none;
}

    .ov-flights .ov-footer button {
        margin: 0 auto 10px auto;
    }

.secondflight {
    border-top: 1px solid #007cc3;
    margin-top: 15px;
    padding-top: 15px;
}

.vacationflights {
    background: #e5f2f9;
    padding: 10px;
}

    .vacationflights h2 {
        margin: 0px;
    }


#detailphotolarge {
    width: 100%;
    height: auto;
}

#pricetable {
    color: #646464;
    margin: 20px 0;
    width: 100%;
}

    #pricetable td {
        padding: 5px;
    }

.td-pricelarge {
    font-size: 24px;
    font-weight: 700;
    text-align: right;
    width: 30%;
}

#selecttravelers legend,
#insurancesummary legend,
#cancellationsummary legend,
#airportservicessummary legend,
#profileupdate legend,
#makepayment legend {
    display: none;
}

#selecttravelers .checkboxes label {
    width: 100%;
}

.inputtextbtn {
}

    .inputtextbtn input[type="text"] {
        float: left;
        width: 65%;
    }

    .inputtextbtn button {
        background: #ccc;
        float: right;
        width: 30%;
    }

#selecttravelers input[type="submit"] {
    margin: 30px 0;
    width: 100%;
}

#selecttravelers input[type="button"] {
    margin: 30px 0;
    width: 100%;
}

.cart-item {
    margin-bottom: 30px;
}

    .cart-item h2 {
        border-bottom: 2px solid #00589E;
        font-size: 20px;
        padding-bottom: 10px;
    }

#confirm .cart-item.confirmation h2 {
    border: 0;
    padding: 0;
}

    #confirm .cart-item.confirmation h2 span {
        color: #333;
    }

        #confirm .cart-item.confirmation h2 span.hotel-dates {
            display: block;
            font-size: 12px;
        }

.cart-summary-sar {
    border: 2px solid #007cc3;
    padding: 15px;
}

    .cart-summary-sar h3 {
        font-size: 18px;
    }

        .cart-summary-sar h3.blue {
            background: none;
            color: #007cc3;
            margin-bottom: 0;
        }

    .cart-summary-sar h4 {
        font-size: 16px;
    }

    .cart-summary-sar .fineprint {
        color: #666;
    }

.cart-summary-mobile {
    text-align: left;
    width: 100%;
}

    .cart-summary-mobile td,
    .cart-summary-mobile th {
        padding: 5px;
    }

    .cart-summary-mobile tfoot tr:first-child {
        border-top: 1px solid #d0e2eb;
    }

    .cart-summary-mobile tfoot tr td {
        padding-top: 10px;
        font-weight: 700;
    }

    .cart-summary-mobile tbody tr:last-child td {
        padding-bottom: 15px;
    }

.cart-summary--divider td {
    border-bottom: 1px solid #d0e2eb;
}

.cart-summary--section td {
    font-weight: 700;
}

.cart-summary--section th,
.cart-summary--section td {
    padding-top: 15px;
}

.cart-summary-desktop {
    display: none;
}

    .cart-summary-desktop td, .cart-summary-desktop th {
        padding: 10px 0;
        border-bottom: 2px solid #d0e2eb;
    }

    .cart-summary-desktop th {
        font-weight: 700;
        border-bottom: 2px solid #007cc3;
        text-align: left;
    }

        .cart-summary-desktop th:last-child,
        .cart-summary-desktop td:last-child {
            width: 10%;
        }

    .cart-summary-desktop tfoot td {
        border-bottom: 0;
        font-weight: 700;
        text-align: right;
    }

    .cart-summary-desktop th:last-child,
    .cart-summary-desktop td:last-child {
        text-align: right;
    }

    /* Cart Summary Types */
    .cart-summary-desktop.cart-summary--roomupgrade th:nth-child(1) {
        width: 20%;
    }

    .cart-summary-desktop.cart-summary--roomupgrade th:nth-child(2),
    .cart-summary-desktop.cart-summary--roomupgrade th:nth-child(3) {
        width: 17%;
    }

    .cart-summary-desktop.cart-summary--ancillaries th:nth-child(1) {
        width: 20%;
    }

    .cart-summary-desktop.cart-summary--ancillaries th:nth-child(2) {
        width: 34%;
    }

    .cart-summary-desktop.cart-summary--profile th:nth-child(1) {
        width: 20%;
    }

    .cart-summary-desktop.cart-summary--profile th:nth-child(2) {
        width: 34%;
    }

    .cart-summary-desktop.cart-summary--ss th:nth-child(1) {
        width: 30%;
    }

    .cart-summary-desktop.cart-summary--ss th:nth-child(2) {
        width: 20%;
    }

    .cart-summary-desktop.cart-summary--ss th:nth-child(3) {
        width: 40%;
    }

    .cart-summary-desktop.cart-summary--ss-free {
        table-layout: fixed;
    }

        .cart-summary-desktop.cart-summary--ss-free th:nth-child(1) {
            width: 30%;
        }

        .cart-summary-desktop.cart-summary--ss-free th:last-child,
        .cart-summary-desktop.cart-summary--ss-free td:last-child {
            text-align: left;
            width: auto;
        }

    .cart-summary-desktop.cart-summary--sar {
        table-layout: fixed;
    }

        .cart-summary-desktop.cart-summary--sar th:nth-child(1) {
            width: 20%;
        }

        .cart-summary-desktop.cart-summary--sar th:nth-child(2) {
            width: 35%;
        }

        .cart-summary-desktop.cart-summary--sar td {
            border: none;
        }


        .cart-summary-desktop.cart-summary--sar tr:last-child td {
            border-bottom: 2px solid #d0e2eb;
        }

        .cart-summary-desktop.cart-summary--sar th:last-child,
        .cart-summary-desktop.cart-summary--sar td:last-child {
            text-align: left;
            width: auto;
        }

#confirm .btn_green {
    margin: 15px 0;
}

.cart-summary {
    display: table;
    width: 100%;
}

.cart-summary--header,
.cart-summary--row---total,
.cart-summary--footer---heading {
    display: none;
}

.cart-summary--row-group {
    display: table-row-group;
}

.cart-summary--header > div,
.cart-summary--row > div {
    border-bottom: 1px solid #d0e2eb;
    padding: 10px 0;
}

    .cart-summary--row > div.cart-summary--row---product {
        border-bottom: none;
    }

    .cart-summary--row > div.cart-summary--row---passenger,
    .cart-summary--row > div.cart-summary--row---price {
        padding: 10px 0 15px;
    }

.cart-summary--row---passenger-mobile {
    padding-left: 15px;
}

.cart-summary--row---passenger,
.cart-summary--row---price {
    display: inline-block;
    width: 50%;
}

.cart-summary--row---price {
    float: right;
    text-align: right;
}

    .cart-summary--row---price:before {
        content: 'x';
        float: left;
    }

.cart-summary--footer---empty {
    display: none;
}

.cart-summary--footer {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin-top: 10px;
}

.cart-summary--footer---heading .cart-summary--footer---total {
    font-size: 20px;
    font-weight: 400;
}

.cart-summary--footer---total,
.cart-summary--footer---price {
    display: table-cell;
    padding: 5px 0;
}

.cart-summary--footer---price {
    text-align: right;
}

.cart-summary--footer:last-child {
    color: #00589E;
    font-size: 20px;
}

    .cart-summary--footer:last-child .cart-summary--footer---price {
        font-size: 24px;
        vertical-align: top;
        font-weight: 700;
    }

    .cart-summary--footer:last-child .cart-summary--footer---total {
        vertical-align: top;
    }

.cart-summary--footer---price span.currency {
    font-size: 13px;
    line-height: 20px;
    display: block;
    color: #005A8F;
}

.cartsummary th,
.cartsummary td {
    padding: 10px 5px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.cartsummary th {
    vertical-align: bottom;
    font-weight: bold;
}

.td-cart-item,
.td-cart-dates,
.td-cart-price {
    width: 24%;
}

.td-priceper,
.td-yesno,
.td-cart-total {
    width: 14%;
}

.td-cart-remove {
    width: 14%;
}

.th-priceper,
.td-priceper {
    text-align: right !important;
}

.td-proddesc {
}

.td-cart-remove,
.td-numpassengers {
    text-align: center !important;
}

    .td-cart-remove a {
        text-decoration: underline;
    }

.td-grandtotal {
    text-align: right !important;
}



.td-label-total,
.td-grandtotal {
    font-weight: 700;
}

.td-grandtotal {
    width: 14%;
}

.td-label-total {
    color: #646464;
    width: 72%;
}

.td-cart-total,
.td-label-total {
    text-align: right !important;
}

    .td-label-total.balance {
        font-size: 18px;
        font-weight: 400;
        color: #007CC3;
        line-height: 22px;
    }

.td-grandtotal.balance {
    font-size: 24px;
    font-weight: 400;
    color: #0078C5;
}

    .td-grandtotal.balance span {
        display: block;
        font-size: 13px;
        line-height: 13px;
    }

.td-yesno {
    text-align: right;
    vertical-align: middle;
    position: relative;
}

    .td-yesno a {
        background: #0078C5;
        color: #FFF;
        display: block;
        height: 40px;
        line-height: 40px;
        text-align: center;
        /*width: 100px;*/
        vertical-align: middle;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 2px;
        right: 2px;
    }

.confirmprice .td-grandtotal {
    text-align: right;
}

.carttotal .td-label-total,
.carttotal .td-grandtotal {
    font-size: 24px;
}

/*.carttotal .left { margin: 10px 30px 10px 0 ; } */
.carttotal button {
    float: right;
    margin: 0 14% 30px 0;
}

#paymentform legend {
    display: none;
}

select#creditcard {
    width: 100%;
}


#cancellationsummary input[type="text"] {
    width: 100%;
}


#paymentform input[type=number]::-webkit-inner-spin-button,
#paymentform input[type=number]::-webkit-outer-spin-button,
input[type=number].no-spinner::-webkit-inner-spin-button,
input[type=number].no-spinner::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.ccexpirydate .expirymonth {
    width: 55%;
    float: left;
}

.ccexpirydate .expiryyear {
    width: 40%;
    float: right;
}

.expiryyear label {
    margin: 0px;
}

#cancellationsummary input[type="text"],
#cancellationsummary .right input[type="submit"] {
    width: 100%;
}

.summaryamount {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 5px;
}

.paymentamount {
    font-size: 20px;
    font-weight: 700;
    display: block;
}

    .paymentamount .currency {
        font-size: 16px;
        font-weight: 400;
        padding-left: 10px;
    }

#paymentform .cardtype {
    padding:8px 0;
}

#paymentform .form-half .form-three-col .cardtype {
    top: -10px;
    right: 0;
}

#paymentform .cardtype img {
    height: 25px;
    margin-left: 2px;
    opacity: 0.5;
}

    #paymentform .cardtype img.selected {
        opacity: 1;
    }

#paymentform .summaryamount #paymentamount,
#cancellationsummary .summaryamount #paymentamount {
    font-size: 24px;
}

#paymentform .fineprint {
    color: #646464;
    margin-top: 20px;
}

.buttonTolink {
    background-color: transparent;
    border: 0px;
    color: #00589E;
    line-height: 20px;
    width: auto;
    font-size: 14px;
    padding: 0px;
    font-weight: 500;
    text-decoration: underline;
}

.margin0px {
    margin: 0px
}

.ptoh2, .ptoh2 span {
    margin: 0px;
    padding: 0px;
    color: #333;
}

tr.confirmprice {
    border-bottom: none;
}

.confirmation .ccsummary * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.confirmation .ccsummary {
    display: block;
    border: 2px solid #d0e2ec;
    background: #f2f7f9;
    margin-top: 15px;
    padding: 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .confirmation .ccsummary h2 {
        border: none;
        margin: 0;
        padding: 0;
        padding-right: 25px;
    }

.confirmation .ccsummary-col span {
    width: 50%;
    float: left;
    padding: 5px 0;
    padding-right: 20px;
}

.confirmation .ccsummary tr {
    border-bottom: none;
}

.confirmation .ccsummary-row:before, .confirmation .ccsummary-row:after {
    content: " ";
    display: table;
}

.confirmation .ccsummary-row:after {
    clear: both;
}

.trip-cat {
    margin: 15px 0 30px 0;
}

    .trip-cat.top-border {
        border-top: 2px solid #646464;
        margin-top: 0;
        padding-top: 15px;
    }

    .trip-cat h4,
    .trip-cat h6,
    .trip-cat p,
    .trip-cat li {
        line-height: 1.4;
        margin-bottom: 0;
    }

    .trip-cat .room {
        border-top: 1px solid #ddd;
        margin-top: 25px;
        padding-top: 5px;
    }

    .trip-cat .seeall {
        border-top: 1px solid #ddd;
        display: block;
        margin: 30px 0 0 0;
        text-align: center;
        text-decoration: none;
    }

        .trip-cat .seeall span {
            line-height: 24px;
            padding-top: 2px;
            padding-right: 26px;
        }

        .trip-cat .seeall .closed {
            background: url(../images/icons/arrow-down.png) no-repeat top right;
        }

        .trip-cat .seeall .open {
            background: url(../images/icons/arrow-up.png) no-repeat top right;
        }

#specialrequests legend,
#specialassistancerequests legend,
#upgraderoomform legend {
    display: none;
}

#specialassistancerequests input[type="submit"],
#cancellationsummary input[type="submit"],
#mybooking-seats-flights input [type="submit"] {
    width: 100%;
    margin: 0 0 15px 0;
}

.requests a {
    background: #FFF;
    border: 2px solid #007cc3;
    border-width: 2px 2px 0 2px;
    display: inline-block;
    float: left;
    font-size: 18px;
    text-align: center;
    height: 75px;
    width: 33.33%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: table;
}

.requests.seats a {
    width: 50%;
}

.requests a:hover {
    background: #FFF;
}


.requests a h3 {
    border: none;
    color: #007cc3;
    display: table-cell;
    font-size: 18px;
    font-weight: 700;
    height: 24px;
    vertical-align: middle;
    /*position: relative;*/
}

.new-accordion-open a h3 {
    font-weight: 700;
}

.requests a h3 span {
    display: inline-block;
    width: 28px !important;
}

.requests a h3.departing span {
    background-image: url(../images/icons/plane.png) !important;
}

.requests a h3.returning span {
    background-image: url(../images/icons/plane-reverse.png) !important;
}

.requests a h3.departing span,
.requests a h3.returning span {
    background-repeat: no-repeat !important;
    background-position: left center !important;
}

#details.requests-mobile {
    border-color: #007CC3;
    border-width: 0 2px 2px 2px;
    border-style: solid;
    margin-top: -30px;
    padding: 15px;
}


.passenger-special-request,
.special-request-form {
    position: absolute;
    left: -9999px;
    max-height: 1px;
    overflow: hidden;
}

    .passenger-special-request.current,
    .special-request-form.current {
        position: inherit;
        max-height: none;
        overflow: initial;
    }

.seatselectionpage-body .passenger-special-request,
.seatselectionpage-body .special-request-form {
    display: none;
}

    .seatselectionpage-body .passenger-special-request.current,
    .seatselectionpage-body .special-request-form.current {
        display: inherit;
    }

.foo {
    padding: 15px;
}

    .foo.borderlight {
        border: 1px solid #ddd;
    }

        .foo.borderlight.lighter {
            border-color: #DDD;
        }


.dashed-border-top {
    border-top: 1px dashed #646464;
}

.row.checks {
    margin-bottom: 30px;
}

    .row.checks .radio {
        margin-top: -10px;
    }

    .row.checks .checkboxes {
        margin-top: 0;
    }



#details h3.blue {
    color: #FFF;
    padding: 10px;
    margin: 30px 0 10px 0;
}


input[type="text"]#guest-other-who,
input[type="text"]#adjoining-other,
input[type="text"]#allergy-other-specific,
select#adjoiningroomwith {
    width: 300px;
}

label[for="adjoiningroomwith"] {
    display: none;
}

input[type="text"]#guest-other-who {
    margin-top: 10px;
}

table.passenger-info {
    margin: 10px 0 20px 0;
}

    table.passenger-info th,
    table.passenger-info td {
        padding: 2px 15px 2px 0;
        text-align: left;
        width: 160px;
    }

    table.passenger-info th {
        font-weight: 700;
        vertical-align: bottom;
    }

/* Special Assitance Request Styles */
.special-assistance {
    border: 2px solid #007cc3;
}

    .special-assistance .checkboxes label {
        font-size: 16px;
    }

.special-assistance--header {
    background-color: #f2f7f9;
    padding: 15px;
}

    .special-assistance--header h3 {
        font-size: 18px;
        color: #666;
        font-weight: 400;
    }

.special-assistance--header---info span {
    line-height: 20px;
}

.special-assistance--header---split-info .special-assistance--header---info {
    display: block;
}

.special-assistance--header---hotel-desktop {
    display: none;
}

.special-assistance--header---hotel-mobile {
    display: table;
    width: 100%;
    text-align: left;
}

    .special-assistance--header---hotel-mobile th,
    .special-assistance--header---hotel-mobile td,
    .special-assistance--header---hotel-mobile--section:first-child td {
        padding: 3px 0;
    }

.special-assistance--header---hotel-mobile--section td {
    padding: 10px 0 3px;
    font-weight: 700;
}

.special-assistance--header---hotel-mobile--divider td {
    border-bottom: 1px solid #fff;
}

.special-assistance--header-text {
    padding: 15px;
    padding-bottom: 0;
}

.special-assistance--passenger-info {
    padding: 15px;
}

    .special-assistance--passenger-info .requests_pax_name {
        font-size: 18px;
        margin-top: 15px;
        margin-bottom: 0;
    }

        .special-assistance--passenger-info .requests_pax_name span {
            font-weight: 700;
        }

.special-assistance--requests .collapsible {
    border: none;
    padding: 15px;
}

.special-assistance--requests .collapsethis h3 {
    padding-left: 15px;
}

/* Special Requests Styles */
.special-requests {
    border: 2px solid #00589E;
}

    .special-requests .row.checks {
        margin-bottom: 15px;
    }

    .special-requests .checkboxes label {
        font-size: 16px;
    }

.special-requests--header {
    padding: 15px;
}

    .special-requests--header:after {
        content: '';
        display: table;
        clear: both;
    }

    .special-requests--header h3 {
        font-size: 18px;
        color: #007cc3;
    }

.special-requests--passenger-info {
    background-color: #f2f7f9;
    padding: 15px;
}

    .special-requests--passenger-info h3 {
        font-size: 18px;
        color: #666;
        font-weight: 400;
    }

.special-requests--passenger-info {
    padding: 15px;
}

    .special-requests--passenger-info .requests_pax_name {
        font-size: 18px;
        margin-top: 15px;
        margin-bottom: 0;
    }

        .special-requests--passenger-info .requests_pax_name span {
            font-weight: 700;
        }

.special-requests--requests .collapsible {
    border: none;
    padding: 15px;
}

.special-requests--requests .collapsethis h3 {
    padding-left: 15px;
}

.special-requests--header---hotel-name {
    padding: 10px;
    border-bottom: 2px solid #007CC3;
}

    .special-requests--header---hotel-name span {
        color: #00589E;
        font-weight: 700;
    }

.special-requests--header---hotel {
    background-color: #f2f7f9;
    padding: 15px;
}

.special-requests--header---hotel-desktop {
    display: none;
}

.special-requests--header---hotel-mobile {
    display: table;
    width: 100%;
    text-align: left;
}

    .special-requests--header---hotel-mobile th,
    .special-requests--header---hotel-mobile td,
    .special-requests--header---hotel-mobile--section:first-child td {
        padding: 3px 0;
    }

.special-requests--header---hotel-mobile--section td {
    padding: 10px 0 3px;
    font-weight: 700;
}

.special-requests--header---hotel-mobile--divider td {
    border-bottom: 1px solid #fff;
}

.special-requests--hotel h4 {
    padding: 10px 15px;
    background-color: #00589E;
    color: #fff;
    margin-bottom: 0;
}

.special-requests--hotel h5 {
    color: #007cc3;
    font-size: 18px;
    margin-top: 15px;
}

.special-requests-hotel--section {
    padding: 15px;
}

/* Share Your Experience */
#share-experience h1 {
    margin-top: 0;
}


#share-experience .mobile-pax-list {
    border-top: 2px solid #ddd;
    margin-bottom: 10px;
}

.share-experience--header {
    border: 2px solid #005B9E;
    border-bottom: 0;
    padding: 15px;
}

.share-experience--sections {
    border: 2px solid #005B9E;
    border-top: 0;
    padding-top: 5px;
}

    .share-experience--sections .collapsible {
        border: none;
        padding: 15px;
        padding-top: 0;
    }

    .share-experience--sections .collapsibles h3 {
        margin-top: 0;
        margin-bottom: 15px;
    }

.questionnaire {
    margin-bottom: 20px;
}

.questionnaire-header--ratings {
    display: none;
}

.questionnaire-header--subsection {
    display: block;
    margin: 10px -15px;
    padding: 15px;
    border-bottom: 2px solid #ddd;
}

.share-experience--sections .collapsibles .questionnaire-header--subsection h3 {
    font-size: 18px;
    font-weight: 700;
    margin: 0;
}

.radiobuttons {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin: 15px -15px;
}

    .radiobuttons:after {
        content: '';
        display: table;
        clear: both;
    }

    .radiobuttons li {
        display: inline-block;
        float: left;
        padding: 5px 0;
        text-align: center;
        width: 16.66%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

        .radiobuttons li:not(:last-child) {
            border-right: 1px solid #ddd;
        }

    .radiobuttons input[type="radio"] {
        float: none !important;
        position: static !important;
        opacity: 1 !important;
        text-align: center !important;
        margin: 0 auto;
        line-height: 1;
    }


    .radiobuttons label {
        font-size: 12px;
        line-height: 18px;
        margin: 5px 0 0 0;
        padding: 0;
    }

    .radiobuttons input[type="radio"] + label,
    .radiobuttons input[type="radio"] + label:hover,
    .radiobuttons input[type="radio"]:focus + label,
    .radiobuttons input[type="radio"]:checked + label {
        background-color: transparent !important;
        border: none !important;
        padding: 0 !important;
    }

/* Traveler's Information */

.changetraveler .mobile-pax-list {
    border-top: 2px solid #ddd;
    margin-bottom: 10px;
}

.traveler-information {
    padding: 15px;
    border: 2px solid #00589E;
}

    .traveler-information:after {
        content: '';
        display: table;
        clear: both;
    }

    .traveler-information.open {
        display: none;
    }

.dob.form-group {
    float: left;
}

.dob.day.form-group {
    width: 23%;
}

.dob.month.form-group {
    width: 45%;
}

.dob.year.form-group {
    width: 32%;
}

.dob.form-group select {
    width: 95%;
}

.dob.form-group label {
    display: none;
}
#paymentinfo {
    clear: both;
}
/* Make a Payment */
#paymentinfo #amounttocharge {
    width: 75%;
}

#paymentinfo .currency {
    width: 20%;
    display: inline-block;
    padding-left: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/********************************************/
/******* STAR CARD PAGE *********************/
/********************************************/

#starcardmain {
    float: right;
    width: 68%;
}

.starcard {
    border: 2px solid #00589E;
    padding: 0 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.starcard-item--info {
    padding: 15px 0 0;
}

.starcard-item--info---column p {
    font-size: 18px;
}

    .starcard-item--info---column p:first-child {
        font-weight: 700;
    }


.starcard-item:nth-child(2) .starcard-item--info {
    border-top: 2px solid #e2edf4;
}

.starcard-add {
    padding: 15px;
}

.starcard .cols-2 {
    padding: 5px;
}

.starcardmainrow {
    min-width: 280px;
    text-align: left;
    width: 60%;
}

    .starcardmainrow input[type="submit"] {
        display: inline;
        margin: 10px;
    }

    .starcardmainrow .row {
        margin: 10px;
        padding: 10px;
        line-height: 14px;
    }

@media only screen and (min-width: 786px) {

    .starcard {
        display: table;
        padding: 15px;
        width: 100%;
    }

    .starcard-item {
        display: table-cell;
        padding: 15px;
        width: 50%;
    }

        .starcard-item:nth-child(2) .starcard-item--info {
            border-top: 0;
        }

        .starcard-item:nth-child(2) {
            border-left: 2px solid #e2edf4;
        }

    .starcard-item--info {
        display: table;
        width: 100%;
    }

    .starcard-item--info---column {
        display: table-cell;
    }
}

/********************************************/
/******* END STAR CARD PAGE *****************/
/********************************************/


.enable-options {
    border-left: 1px solid #ccc;
    margin: 0 0 5px 15px;
    padding: 5px 0 30px 15px;
}

    .enable-options .row {
        margin-left: 0px;
        margin-right: 0px;
    }

.form-group.dimensions,
.form-group.weight {
    width: 100px;
}

.form-group.dimensions,
.form-group.weight {
    width: 100px;
}

.form-group.dimensions {
    float: left;
    margin-right: 20px;
}

    .form-group.dimensions input[type="text"],
    .form-group.weight input[type="text"] {
        display: inline;
        width: 65px;
    }

.form-group.battery {
    width: 300px;
}

    .form-group.battery input[type="text"] {
        width: 100%;
        margin-bottom: 30px;
    }

.enable-options .form-group span {
    display: inline;
}

.enable-options p,
.enable-options label,
.enable-options .form-group span {
    color: #ccc;
}

.enable-options.checked p,
.enable-options.checked label,
.enable-options.checked .form-group span {
    color: #333;
}

.forgot {
    clear: both;
}

.ov-moredetails {
    border-top: 2px solid #007cc3;
    padding: 15px 15px 10px 15px;
}

.showHideDetails {
    display: none;
}

.showDetails .showHideDetails {
    display: inherit;
}

.hideDetails {
    display: none;
}

.showDetails .hideDetails {
    display: inherit;
}

.showDetails .moreDetails {
    display: none;
}

/*#details.upgrades select {
display: inline-block;
margin: 15px auto;
padding: 0;
position: absolute;
right: 30px !important;
left: 30px;
width: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box; 
}*/

#details.upgrades .foo.specialselect select {
    display: inline-block;
    /*margin: 15px auto;*/
    /*padding: 0;*/
    /*position: absolute;*/
    /*right: 30px !important;*/
    /*left: 30px;*/
    /*width: 100%;*/
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.foo.specialselect {
    padding: 15px;
    margin-bottom: -75px;
}


#hotelaccordion.roomupgrade ul {
    display: none;
}

.mobile-cart > span.cart-label {
    display: none;
}

.summary {
    border: 2px solid #00589E;
    background-color: #ffffff;
    padding: 10px;
}

    .summary h3 {
        background: #00589E;
        color: #FFF;
        font-weight: 700;
        font-style: normal;
        font-size: 20px;
        margin: -10px -10px 5px;
        padding: 10px;
    }

    .summary table {
        width: 100%;
    }


        .summary table table {
            border-bottom: 2px dotted #ccc;
        }

.summary-table th {
    color: #00589E;
    font-weight: 700;
    font-style: normal;
    font-size: 18px;
    line-height: 20px;
    padding: 15px 0 10px;
    text-align: left;
}

    .summary-table th.upgrade {
        font-size: 0.9em;
        color: #333;
        padding: 0;
    }

    .summary-table th span.flightnumber {
        font-size: 0.8em;
        color: #333;
        white-space: nowrap;
    }

    .summary-table th span.hotel-dates {
        display: block;
        font-size: 12px;
        color: #333333;
    }

.summary-table td {
    padding: 3px 0;
    vertical-align: top;
    line-height: 1.1em;
}

.summary-table .sumtable-subtotal {
    padding-bottom: 15px;
}

.summary-table .sumtableprice,
.summary-table .sumtableprice-total {
    text-align: right;
}

.summary-table td.sumtable-subtotal {
    font-weight: 700;
}

.summary-table .sumtableitem {
    word-wrap: break-word;
    word-break: break-all;
    padding-right: 5px;
}

    .summary-table .sumtableitem.paxNameSeat {
        word-break: break-word;
    }

.summary-table td.remove {
    padding: 0;
    text-align: right;
}

    .summary-table td.remove a {
        display: inline-block;
        height: 16px;
        width: 16px;
        background: url('../images/icons/remove-gray.png') no-repeat center right;
    }

        .summary-table td.remove a:hover,
        .summary-table td.remove a:focus {
            background: url('../images/icons/remove-red.png') no-repeat center right;
        }

.summary-table .sumtableitem-total {
    font-size: 18px;
    font-weight: 700;
    line-height: 22px;
}

.summary-table .sumtableprice-total {
    font-size: 24px;
    color: #00589E;
    white-space: nowrap;
}

    .summary-table .sumtableprice-total .currency {
        display: block;
        font-size: 13px;
        line-height: 22px;
    }

.summary-table .td-title.border-top {
    border-top: 2px dotted #ccc;
}

.summary-table th.border-top, .summary-table td.border-top {
    border-top: 2px dotted #ccc;
    line-height: 20px;
    padding: 15px 0 10px;
}

.summary .checkboxes label {
    width: 100%;
    font-size: 16px;
}

.summary input[type="submit"] {
    width: 100%;
    margin: 15px 0 0;
}

.mobile-cart input[type="submit"] {
    width: 100%;
    margin: 0 0 15px;
}

.mobile-hidden {
    display: none;
}

.mobile-only {
}

.double-box {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .double-box * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .double-box h4 {
        color: #007cc3;
    }

.double-box--row:nth-child(2n) {
    border: 2px solid #E7F2F9;
    padding: 15px;
    margin-bottom: 15px;
}

.double-box--row p:last-child {
    margin: 0;
}

h4.service-header {
    display: inline;
}

.price-table {
    margin: 10px -15px;
}

.price-table--header {
    text-align: center;
    background-color: #ecebe6;
    padding: 5px 10px;
    line-height: 1.4;
}

.price-table--prices {
    display: table;
    table-layout: fixed;
    width: 100%;
    border-top: 2px solid #ecebe6;
    border-bottom: 2px solid #ecebe6;
}

    .price-table--prices .price {
        display: table-cell;
        vertical-align: middle;
        padding: 10px 15px;
    }

        .price-table--prices .price:nth-child(2) {
            border-left: 2px solid #ecebe6;
        }

        .price-table--prices .price .price-columns {
            display: table;
            table-layout: fixed;
            width: 100%;
        }

            .price-table--prices .price .price-columns .howmuch {
                display: table-cell;
                vertical-align: middle;
                text-align: left;
                font-weight: 700;
                font-size: 22px;
                color: #00589E;
            }

                .price-table--prices .price .price-columns .howmuch sub {
                    font-size: 70%;
                    font-weight: 400;
                    bottom: 0;
                }

            .price-table--prices .price .price-columns .perperson {
                display: table-cell;
                vertical-align: middle;
                text-align: right;
            }

            .price-table--prices .price .price-columns .age {
                font-size: 12px;
                line-height: 1.4;
            }

            .price-table--prices .price .price-columns.price-columns--padding .age {
                font-size: 1em;
            }

        .price-table--prices .price.exclusive {
            width: 100%;
            background: #ecebe6;
            color: #333;
            text-align: center;
            line-height: 1.4;
            padding-top: 3px;
        }

        .price-table--prices .price .tax {
            font-size: 12px;
            line-height: 1.4;
            padding-top: 6px;
        }

            .price-table--prices .price .tax span,
            .price-table--prices .price .child span {
                display: block;
            }

.selectitems {
    border: 2px solid #E7F2F9;
    clear: both;
    margin: 0 0 15px 0;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .selectitems li {
        line-height: 1.4;
        /*height: 54px;*/
        margin-bottom: 1px;
    }

        .selectitems li .checkboxes {
            margin-top: 5px;
        }

    .selectitems .checkboxes label:before {
        top: 15px;
    }

#edoc-group .selectitems {
    border: 0;
    padding: 0;
}

    #edoc-group .selectitems li {
        display: block;
        line-height: 1.4;
        height: auto;
        margin-bottom: 1px;
    }


/* Read more / Read less */
.morecontent span {
    display: none;
}

.morelink {
    display: inline;
    color: #007cc3;
}

.morecontent > a {
    display: inline-block;
}

.morecontent > div {
    display: none;
}

.morelink:hover {
    background-color: white !important;
}

#mobilesummary {
    background: #f2f2f2;
    margin-bottom: 15px;
    padding: 10px 15px 5px 15px;
    position: relative;
}

    #mobilesummary.no-total {
        padding-top: 40px;
    }

        #mobilesummary.no-total.open-accordion {
            padding-top: 15px;
        }

    #mobilesummary.lightblue {
        background: #E2EDF4;
        padding-bottom: 15px;
    }

    #mobilesummary h3 {
        font-size: 18px;
    }

    #mobilesummary table {
        width: 100%;
    }

    #mobilesummary.no-total .accordion-content table {
        margin-bottom: 50px !important;
    }

    #mobilesummary table td {
        padding: 10px 0;
    }

        #mobilesummary table td h3 {
            margin: 0;
            padding-top: 5px;
        }

    #mobilesummary table tr.border-top {
        border-top: 1px solid #ddd;
        margin-top: 15px;
    }

tr.border-top {
    border-top: 1px solid #ddd;
}

#mobilesummary table td ul {
    margin: 0;
    padding: 0;
}

#mobilesummary table .td-summary-price,
#mobilesummary table .td-summary-price-total {
    width: 25%;
    text-align: right;
}

#mobilesummary table .td-summary-price-total {
    font-weight: 700;
}

#mobilesummary table .td-remove {
    text-align: center;
    width: 30px;
}

#mobilesummary table .row-totals td {
    padding-top: 40px;
}




.accordion-container .accordion-content {
    display: none;
}

.accordion-container.open-accordion .accordion-content {
    display: block;
}

.accordion-container .accordion-heading a {
    display: block;
    text-decoration: none;
}

    .accordion-container .accordion-heading a:hover {
        background: none;
    }

/*.accordion-container .accordion-heading a:after {
color: #333;
content:"\f107";
font: normal normal normal 20px/1 FontAwesome;
float: right;
margin: 5px 0 0 0;
}

.accordion-container.open-accordion .accordion-heading a:after { content: '\f106'; }*/

.open-accordion .seemore a .expanded,
.seemore a .collapsed {
    display: inline;
}

.seemore a .expanded,
.open-accordion .seemore a .collapsed {
    display: none;
}


#mobilesummary .seemore {
    border-top: 1px solid #ccc;
    position: absolute;
    bottom: 110px;
    left: 15px;
    right: 15px;
    line-height: 0;
}

#mobilesummary.no-total .seemore {
    bottom: 80px;
}


#mobilesummary .seemore a span {
    background: #f2f2f2;
}

#mobilesummary .seemore a:focus {
    outline: none !important;
}

/* Upgrade Container */

.upgrade-container {
    border: 2px solid #00589E;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .upgrade-container * {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .upgrade-container .upgrade-container--header {
        padding: 10px;
        border-bottom: 2px solid #00589E;
    }

        .upgrade-container .upgrade-container--header span {
            color: #00589E;
            font-weight: 700;
        }

    .upgrade-container .upgrade-container--current {
        padding: 0 15px;
    }

        .upgrade-container .upgrade-container--current table {
            width: 100%;
        }

            .upgrade-container .upgrade-container--current table th {
                font-weight: 700;
                text-align: left;
            }

            .upgrade-container .upgrade-container--current table th,
            .upgrade-container .upgrade-container--current table td {
                padding: 10px 0;
            }

            .upgrade-container .upgrade-container--current table td {
                border-top: 1px solid #ddd;
            }

    .upgrade-container .upgrade-container--current---features {
        padding: 20px 0;
    }

        .upgrade-container .upgrade-container--current---features p {
            margin: 0;
        }

        .upgrade-container .upgrade-container--current---features ul {
            margin-bottom: 0;
        }

    .upgrade-container .upgrade-container--standard {
        padding: 15px;
        background-color: #f2f2f2;
        border-top: 2px solid #00589E;
    }

        .upgrade-container .upgrade-container--standard p {
            font-weight: 700;
        }

    .upgrade-container .upgrade-container--standard---features {
        display: block;
    }

        .upgrade-container .upgrade-container--standard---features ul {
            display: block;
            margin-bottom: 0;
        }

    .upgrade-container .upgrade-container--option {
    }

    .upgrade-container .upgrade-container--option---category {
        display: block;
        margin: 15px 0;
        border-bottom: 2px dashed #ccc;
    }

        .upgrade-container .upgrade-container--option---category:last-child {
            border-bottom: none;
        }

    .upgrade-container .upgrade-container--option---category_colleft {
        padding: 0 15px;
    }

        .upgrade-container .upgrade-container--option---category_colleft h4 {
            color: #00589E;
            margin-bottom: 15px;
            line-height: 18px;
        }

    .upgrade-container .upgrade-container--option---category_colright {
        padding: 0 15px 15px;
    }

        .upgrade-container .upgrade-container--option---category_colright input[type="submit"] {
            width: 100% !important;
            margin: 15px 0;
        }

    .upgrade-container .upgrade-container--option---category_full {
        padding: 0 15px;
    }

        .upgrade-container .upgrade-container--option---category_full .checkboxes.left {
            margin-top: 0;
        }

.collapsible .upgrade-container {
    border: 0;
}

    .collapsible .upgrade-container .upgrade-container--option---category {
        border-bottom: 0;
    }

.manulife img {
    max-width: 100%;
    display: block;
}

.manulife p {
    display: none;
    font-size: 14px;
}

.tinynav {
    display: block
}

#tinynav {
    display: none
}


.collapsible input[type="submit"]:hover {
    background: #FFF;
    color: #007cc3;
}

select::-ms-expand {
    display: none;
}

.formtop {
    border: 2px solid #007cc3;
    border-width: 2px 2px 0 2px;
    margin-bottom: -10px;
    padding: 65px 15px 15px 15px;
}

    .formtop.noborderpadding {
        border: none;
        margin-bottom: 30px;
        padding: 0 !important;
    }

.shareexperiencesform .collapsible input[type="submit"], input[type="button"] {
    width: 100%;
}


.mobileborder {
    border: 2px solid #007cc3;
}

.tab_class {
    display: none;
}


.paymentform {
    margin-bottom: 30px;
}

.paymentformheader {
    border-bottom: 2px solid #00589E;
    padding: 15px;
}

    .paymentformheader h2, .paymentformfooter h3 {
        color: #00589E;
        margin: 0;
        font-size: 18px;
        font-weight: 400;
    }

.paymentform-content {
    padding: 15px;
}

    .paymentform-content:after {
        content: '';
        display: table;
        clear: both;
    }

    .paymentform-content .mobile-only {
        padding-bottom: 15px;
        display: block;
    }

.paymentformtable {
    margin: 0 0 15px 0;
    width: 100%;
}

    .paymentformtable tr {
        border-bottom: 1px solid #F2F2F2;
    }

    .paymentformtable td {
        padding: 8px 0;
        width: 50%;
    }

    .paymentformtable.lightbluetd td {
        background-color: #E2EDF4;
        padding: 8px 10px;
    }


.paymentform-left {
    width: 100%
}

.paymentform-right {
    width: 100%
}

.form-blue-container {
    border: 2px solid #d0e2ec;
    /*background:#f2f7f9;*/
    background: #e6f2f9;
    padding: 15px;
}

    .form-blue-container .checkboxes label {
        font-weight: 400;
        font-size: 16px;
    }

    .form-blue-container p.form-label {
        font-weight: 700;
        font-size: 18px;
        margin-top: 15px;
        margin-bottom: 0;
    }

    .form-blue-container .checkboxes {
        margin-top: 15px;
    }

    .form-blue-container label {
        font-weight: 700;
    }

.paidByCC, .paidByCheque {
    margin-top: 30px;
}

.creditcardinfo {
    margin: 30px 0;
}

    .creditcardinfo .form-group.cardnum input[type="text"] {
        float: left;
        width: 50%;
    }

    .creditcardinfo .form-group.cardnum .creditcardtypes {
        float: right;
        width: 50%;
    }

        .creditcardinfo .form-group.cardnum .creditcardtypes li {
            display: inline;
            float: left;
            margin-left: 10px;
        }

    .creditcardinfo .card-info .ccdate {
        float: left;
        margin-right: 15px;
        width: 100px;
    }

        .creditcardinfo .card-info .ccdate.year {
            margin-top: -15px;
        }


    .creditcardinfo .form-group.card-info.code {
        width: 50%;
    }

        .creditcardinfo .form-group.card-info.code input[type="text"] {
            width: 100px;
            clear: both;
            float: left;
        }


    .creditcardinfo .amount,
    .creditcardinfo .totalpayment,
    .creditcardinfo .totaldue,
    .creditcardinfo .balance {
        width: 75%;
    }

        .creditcardinfo .amount input[type="text"] {
            width: 96%;
            float: right;
        }

        .creditcardinfo .amount .dollarsign {
            line-height: 40px;
            float: left;
        }

    .creditcardinfo .form-group.card-info.code label {
        float: left;
    }

.whatsthis {
    float: left;
    margin: 14px 5px 0 0;
}

.paymentformfooter {
    border-top: 2px solid #00589E;
}

.red {
    color: #D60037;
}

.contactinfoform {
    border-top: 2px solid #ddd;
}

    .contactinfoform label {
        color: #646464;
        font-size: 16px;
        font-weight: bold;
    }

.collapsibles .traveler .fineprint {
    font-size: 14px;
}

.paymentdetails {
    padding-top: 15px;
}

    .paymentdetails h4 {
        color: #007cc3;
        font-size: 16px;
    }

.paymentconfirm {
    background: #E2EDF4 url(../images/icons/info.png) no-repeat 10px 10px;
    border: 2px solid #007CC3;
    margin-top: 30px;
    padding: 15px 30px 15px 40px;
    position: relative;
    -webkit-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -moz-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .paymentconfirm p {
        margin-bottom: 0;
    }

    .paymentconfirm .closebutton {
        position: absolute;
        top: 10px;
        right: 10px;
    }

.overlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #fff;
    background-color: rgba(255,255,255,0.8);
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 99999;
}

    .overlay.open {
        display: block;
    }

    .overlay .wrapper {
        position: relative;
        height: 100%;
    }

.infobox {
    background: #FFF;
    margin: 15px;
    padding: 15px;
}

    .infobox input[type="submit"] {
        margin: 0 auto 30px auto !important;
        width: 50% !important;
    }

    .infobox .form_btn {
        background: #007cc3;
        border: 2px solid #007cc3;
        color: #FFF;
        font-weight: 700;
        height: 42px;
        line-height: 21px;
        text-decoration: none;
        box-sizing: border-box;
        font-family: 'PT Sans', sans-serif;
        font-size: 16px;
        padding: 9px;
    }

    .infobox .yesno {
        margin: 30px 0;
        text-align: center;
    }

        .infobox .yesno a {
            margin: 0 15px;
            display: block;
        }

.overlay .infobox {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 200px;
    margin: auto;
    max-width: 640px;
}

.selectseattype select {
    float: left;
    width: 82%;
}

.selectseattype input[type="submit"] {
    float: right;
    width: 15% !important;
}

.yourseats {
    border: 2px solid #ddd;
    border-width: 2px 2px 0 2px;
    padding: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .yourseats table {
        width: 100%;
    }

        .yourseats table td,
        .yourseats table th {
            padding: 5px 0 0 0;
        }

        .yourseats table tr.border-top {
            padding: 5px 0 0 0;
        }

        .yourseats table th {
            font-weight: 700;
            text-align: left;
        }

        .yourseats table td.name {
            width: 50%;
            word-wrap: break-word;
            word-break: break-all;
        }

        .yourseats table td.price,
        .yourseats table td.remove {
            text-align: right;
        }

        .yourseats table td.seatnum,
        .yourseats table td.flightdirection {
            text-align: center;
        }

        .yourseats table td.remove {
            padding-bottom: 10px;
        }

.seatlegend {
    display: table;
    width: 100%;
    vertical-align: middle;
    border-spacing: 5px;
    border-collapse: separate;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .seatlegend .seattype > a {
        display: block;
        text-decoration: none;
        position: relative;
    }

        .seatlegend .seattype > a:hover,
        .seatlegend .seattype > a:focus {
            background: none;
        }

    .seatlegend .seattype {
        display: table-cell;
        vertical-align: top;
        text-align: center;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        margin: 0 5px;
        width: 33.333333%;
    }

        .seatlegend .seattype span {
            line-height: 1.2;
            color: #565656;
        }

            .seatlegend .seattype span.price {
                display: block;
                color: #666666;
            }


            .seatlegend .seattype span.nowrap {
                white-space: pre;
            }

                .seatlegend .seattype span.nowrap img {
                    display: inline;
                    vertical-align: top;
                    float: none;
                }

        .seatlegend .seattype .seat {
            display: block;
            -webkit-border-top-left-radius: 10px;
            -webkit-border-top-right-radius: 10px;
            -moz-border-radius-topleft: 10px;
            -moz-border-radius-topright: 10px;
            border-top-left-radius: 10px;
            border-top-right-radius: 10px;
            height: 40px;
            margin: 10px auto;
            width: 40px;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box;
        }

            .seatlegend .seattype .seat.elite {
                background: #ffffff;
                border: 3px solid #1d62ab;
            }

            .seatlegend .seattype .seat.eliteplus {
                background: #FF6000;
            }

            .seatlegend .seattype .seat.eliteplusexit {
                background: #FF6000 url(../images/icons/exit-light-white.png) no-repeat center center;
            }

            .seatlegend .seattype .seat.premium {
                background: #00589E;
            }

            .seatlegend .seattype .seat.economy {
                background: #646464;
            }

            .seatlegend .seattype .seat.comfort {
                background: #007cc3;
            }

            .seatlegend .seattype .seat.star {
                background: #396582;
            }

        .seatlegend .seattype .seatlabel {
            display: block;
            vertical-align: middle;
            text-align: center;
        }

.flight-seat-info p {
    margin: 0;
    font-style: italic;
    font-size: 14px;
}

.howtoscroll {
    background: #FFF url(../images/icons/scroll.png) no-repeat 5px 5px;
    border: 2px solid #E2EDF4;
    min-height: 42px;
    padding: 10px 5px 5px 40px;
    margin: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .howtoscroll p {
        margin: 0;
        font-size: 13px;
    }

.seatselectionleftcolborder {
    border: 1px solid #888D8F;
    margin-top: -4px;
    margin-bottom: 25px;
}

    .seatselectionleftcolborder h4,
    .seatselectionleftcolborder p {
        margin: 5px 15px;
    }


    .seatselectionleftcolborder ul li a {
        display: block;
        padding: 5px 15px;
        position: relative;
        text-decoration: none;
    }

    .seatselectionleftcolborder li.selected a:after {
        content: '';
        width: 0;
        height: 0;
        border-top: 18px solid transparent;
        border-bottom: 18px solid transparent;
        border-left: 18px solid #396582;
        position: absolute;
        right: -18px;
        top: 0;
    }

.borderthinlight {
    border: 1px solid #ddd;
}

.popup-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 6476672932;
    overflow: hidden;
    -webkit-overflow-scrolling: touch;
    outline: 0;
    background-color: rgba(256,256,256,0.7);
    opacity: 0;
    -webkit-transition: all 0.5s ease-out;
    transition: all 0.5s ease-out;
}

    .popup-wrapper.open {
        opacity: 1;
    }

.popup-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    border: 2px solid #007cc3;
}

    .popup-container.popup-small {
        min-width: 80%;
    }

.popup-header {
    padding: 15px;
    background: #007cc3;
}

    .popup-header:after {
        content: '';
        clear: both;
        display: table;
    }

    .popup-header h3 {
        font-size: 20px;
        font-weight: 400;
        color: #fff;
        margin: 0;
        float: left;
    }

    .popup-header .popup-close {
        float: right;
    }

        .popup-header .popup-close a:hover, .popup-header .popup-close a:focus {
            background: none;
        }

.popup-message {
    padding: 15px;
}

    .popup-message form:after {
        content: '';
        clear: both;
        display: table;
    }


    .popup-message input.popup-input {
        margin-bottom: 15px;
    }

    .popup-message input.popup-input, .popup-message input.form_btn {
        width: 100%;
    }

/* Bootstrap Popover */
.bs-popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    min-width: 180px;
    padding: 1px;
    font-size: 16px;
    font-weight: normal;
    color: #333333;
    letter-spacing: normal;
    line-break: auto;
    line-height: 1.42857143;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    white-space: normal;
    word-break: normal;
    word-spacing: normal;
    word-wrap: normal;
    background-color: #ffffff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 2px solid #007cc3;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .5);
}

    .bs-popover a {
        color: #333333;
        text-decoration: underline;
    }

    .bs-popover.top {
        margin-top: -10px;
    }

    .bs-popover.right {
        margin-left: 10px;
    }

    .bs-popover.bottom {
        margin-top: 10px;
    }

    .bs-popover.left {
        margin-left: -10px;
    }

.bs-popover-title {
    margin: 0;
    padding: 8px 14px;
    font-size: 14px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #ebebeb;
    border-radius: 5px 5px 0 0;
}

.bs-popover-content {
    padding: 9px 14px;
}

.bs-popover > .arrow,
.bs-popover > .arrow:after {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
}

.bs-popover > .arrow {
    border-width: 11px;
}

    .bs-popover > .arrow:after {
        border-width: 10px;
        content: "";
    }

.bs-popover.top > .arrow {
    left: 50%;
    margin-left: -11px;
    border-bottom-width: 0;
    border-top-color: #007cc3;
    border-top-color: rgb(57, 101, 130);
    bottom: -13px;
}

    .bs-popover.top > .arrow:after {
        content: " ";
        bottom: 3px;
        margin-left: -10px;
        border-bottom-width: 0;
        border-top-color: #ffffff;
    }

.bs-popover.right > .arrow {
    top: 50%;
    left: -13px;
    margin-top: -11px;
    border-left-width: 0;
    border-right-color: #007cc3;
    border-right-color: rgb(57, 101, 130);
}

    .bs-popover.right > .arrow:after {
        content: " ";
        left: 3px;
        bottom: -10px;
        border-left-width: 0;
        border-right-color: #ffffff;
    }

.bs-popover.bottom > .arrow {
    left: 50%;
    margin-left: -11px;
    border-top-width: 0;
    border-bottom-color: #007cc3;
    border-bottom-color: rgb(57, 101, 130);
    top: -13px;
}

    .bs-popover.bottom > .arrow:after {
        content: " ";
        top: 3px;
        margin-left: -10px;
        border-top-width: 0;
        border-bottom-color: #396582;
    }

.bs-popover.left > .arrow {
    top: 50%;
    right: -13px;
    margin-top: -11px;
    border-right-width: 0;
    border-left-color: #007cc3;
    border-left-color: rgb(57, 101, 130);
}

    .bs-popover.left > .arrow:after {
        content: " ";
        right: 3px;
        border-right-width: 0;
        border-left-color: #ffffff;
        bottom: -10px;
    }

/* Alert - Popover */

.alert-popover.bs-popover {
    width: 300px;
    padding: 0;
    border: 2px solid #ba1b13;
}

    .alert-popover.bs-popover .bs-popover-content {
        background: #fbedec;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 15px;
    }

        .alert-popover.bs-popover .bs-popover-content:before {
            content: '';
            display: inline-block;
            position: relative;
            top: 5px;
            margin-top: -10px;
            background: #fbedec url(../images/icons/alert-red.png) no-repeat;
            width: 24px;
            height: 24px;
        }

        .alert-popover.bs-popover .bs-popover-content p {
            margin: 0;
            color: #333;
        }

    .alert-popover.bs-popover.top > .arrow {
        left: 50%;
        margin-left: -11px;
        border-bottom-width: 0;
        border-top-color: #ba1b13;
        border-top-color: rgb(186, 27, 19);
        bottom: -13px;
    }

        .alert-popover.bs-popover.top > .arrow:after {
            content: " ";
            bottom: 3px;
            margin-left: -10px;
            border-bottom-width: 0;
            border-top-color: #fbedec;
        }

    .alert-popover.bs-popover.right > .arrow {
        top: 50%;
        left: -13px;
        margin-top: -11px;
        border-left-width: 0;
        border-right-color: #ba1b13;
        border-right-color: rgb(186, 27, 19);
    }

        .alert-popover.bs-popover.right > .arrow:after {
            content: " ";
            left: 3px;
            bottom: -10px;
            border-left-width: 0;
            border-right-color: #fbedec;
        }

    .alert-popover.bs-popover.bottom > .arrow {
        left: 50%;
        margin-left: -11px;
        border-top-width: 0;
        border-bottom-color: #ba1b13;
        border-bottom-color: rgb(186, 27, 19);
        top: -13px;
    }

        .alert-popover.bs-popover.bottom > .arrow:after {
            content: " ";
            top: 3px;
            margin-left: -10px;
            border-top-width: 0;
            border-bottom-color: #fbedec;
        }

    .alert-popover.bs-popover.left > .arrow {
        top: 50%;
        right: -13px;
        margin-top: -11px;
        border-right-width: 0;
        border-left-color: #ba1b13;
        border-left-color: rgb(186, 27, 19);
    }

        .alert-popover.bs-popover.left > .arrow:after {
            content: " ";
            right: 3px;
            border-right-width: 0;
            border-left-color: #fbedec;
            bottom: -10px;
        }


/* Loading Popup - eDocs */

.loading-wrapper {
    position: relative;
    z-index: 2;
}

.loading-container {
    position: absolute;
    width: 80%;
    left: 50%;
    transform: translate(-50%, 0%);
    background-color: #fff;
    border: 2px solid #007cc3;
    text-align: center;
}

.lt-ie9 .loading-container,
.lt-ie10 .loading-container {
    position: absolute;
    width: 100%;
    left: auto;
    top: 50px;
}

.loading-container img {
    margin-top: 15px;
}

.loading-message {
    padding: 15px;
}

.loading-cta {
    padding: 0 15px;
    padding-bottom: 30px;
}

    .loading-cta button {
        width: 100%;
        display: block;
        padding: 10px 20px;
        height: auto;
    }

    .loading-cta .btn + .btn {
        margin-left: 0;
        margin-top: 15px;
    }

    .loading-cta a {
        margin: auto 15px;
        margin-bottom: 15px;
    }

.loading-section {
    opacity: 0;
    padding-bottom: 35%;
}

/* royce */

/* ==========================================================================
   Media Queries 
   ========================================================================== */
@media only screen and (max-width: 640px) {
    .selection-dropdown .selection-dropdown--header {
        height: 100% !important;
        border-bottom: 2px solid #ddd;
        padding: 10px 15px;
    }

    .payment-fail {
        height: 75px !important;
    }

    .formerror {
        z-index: 999999999999;
    }

    .col-lg-4 {
        width: 49% !important
    }

    .col-lg-6 {
        width: 100% !important;
    }

    .col-lg-3 {
        width: 50% !important;
    }

    .form-payment-five-inline-width14 {
        width: 48% !important;
    }

    .form-payment-inline-width10 {
        width: 48% !important;
    }

    .form-payment-inline {
        display: block;
        float: left;
        width: 100% !important;
        height: 100px;
    }

    .payment-voucherbtn {
        margin-bottom: 10px !important;
    }

    .form-payment-inline-width30 {
        display: block;
        float: left;
        width: 100% !important;
        height: 100px;
    }

    .success-paymentconfirm-paymentpage {
        min-height: 50px !important;
    }

    .row {
        width: fit-content;
    }

    .form-payment-five-inline {
        display: block;
        float: left;
        width: 100% !important;
        height: 100px;
    }

    .form-payment-five-inline_mobile {
        display: block;
        float: left;
        width: 45% !important;
        height: 100px;
        margin-right: 10px;
    }

    .form-payment-five-inline-width10 {
        display: block;
        float: left;
        width: 100% !important;
        height: 100px;
    }

    .payment-passengername {
        width: 40%;
        padding-left: 0px !important;
        margin-bottom: 30px;
    }

    .right {
        float: right;
    }

    /* Booking Summary Side Bar */
    #mybookingportal.right {
        z-index: 3;
        display: block;
        position: absolute;
        top: 55px !important;
        margin-left: -16px;
        width: 100% !important;
    }

        #mybookingportal.right .summary {
            position: absolute !important;
            border: none;
            display: none;
            border-bottom: 3px solid #666;
            padding: 10px 20px 20px;
            min-width: 100% !important;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box;
            -webkit-overflow-scrolling: touch;
            transform: translateZ(0);
            -webkit-transform: translateZ(0);
        }

        #mybookingportal.right h3 {
            display: none;
        }

    #mybookingportal .mobile-cart {
        display: block;
        z-index: 6476672932;
        text-decoration: none;
        width: 50px;
        height: 55px;
        position: absolute;
        top: 50px!important;
        right: 80px;
        background: url('../images/icons/cart.png') no-repeat center center;
        border-left: 1px solid #ffffff;
        border-right: 1px solid #ffffff;
        margin-right: 20px;
    }
    .Header_module_headerImage__2c1d44cd img {
        max-width: 75%!important;
        max-height: 50px;
    }

        #mybookingportal .mobile-cart > span.badge {
            display: inline-block;
            min-width: 10px;
            padding: 3px 5px;
            font-size: 13px;
            line-height: 1;
            color: #fff;
            text-align: center;
            white-space: nowrap;
            vertical-align: middle;
            background-color: #00589E;
            border-radius: 50%;
            position: relative;
            top: 30px;
            left: 25px;
            border: 1px solid #fff;
        }

    /* Opened */
    #mybookingportal.right .summary {
        z-index: auto;
        position: fixed !important;
        top: auto !important;
        bottom: auto !important;
        overflow-x: hidden;
    }

    /* Scrolled View */
    #mybookingportal.scrolled-sticky .mobile-cart {
        position: fixed;
        width: 100%;
        height: 55px;
        top: 0;
        right: auto;
        background-color: #f36f21;
        background-position: 30px center;
    }

        #mybookingportal.scrolled-sticky .mobile-cart > span.badge {
            top: 30px;
            left: 55px;
        }

        #mybookingportal.scrolled-sticky .mobile-cart > span.cart-label {
            color: #fff;
            text-decoration: none;
            margin: 0 auto;
            display: block;
            text-align: center;
            font-size: 18px;
        }

        #mybookingportal.scrolled-sticky .mobile-cart > span.cart-toggle {
            background: url('../images/icons/angle-down-white.png') no-repeat center center;
            width: 24px;
            height: 24px;
            display: block;
            position: absolute;
            top: 17px;
            right: 30px;
        }

        #mybookingportal.scrolled-sticky .mobile-cart.mobile-cart--open > span.cart-toggle {
            background: url('../images/icons/angle-up-white.png') no-repeat center center;
        }

    footer {
        padding: 20px 0px;
    }

    .footer-last-li {
        top: 0px
    }

    .margin-top-55px {
        margin-top: 35px
    }
}


@media only screen and (min-width: 640px) {

    .popup-container.popup-small {
        max-width: 600px;
        min-width: 0;
    }

    .payment-voucherbtn {
        margin-bottom: 10px;
    }

    .popup-message input.popup-input {
        margin-bottom: 0;
        float: left;
        width: 70%;
    }

    .popup-message input.form_btn {
        float: right;
        width: 25%;
    }

    .container,
    .wrapper {
        margin: 0 15px;
        padding: 0;
    }

    .full-container {
        padding: 0 15px;
    }

    header {
        height: 90px;
        margin-bottom: 5px;
        z-index: 100;
        position: relative;
        /*        padding-left: 10px;
        padding-right: 10px;*/
    }

    .left, .centre {
        float: left;
    }

    .right {
        float: right;
    }

    #homelinklogo {
        background: none;
        height: auto;
        width: auto;
        position: static;
        float: left;
    }

    .fr #homelinklogo {
        background: none;
    }

    #header_logo {
        display: inline;
        margin: 20px 0px 0px 0px;
        width: 208px;
        height: 56px;
    }

    .form-align-bottom {
        font-size: 0;
    }

        .form-align-bottom > div {
            display: inline-block !important;
            float: none !important;
            vertical-align: bottom !important;
        }

    .form-two-col .form-group.form-half {
        width: 48%;
    }

    .loginRightFormItem .form-group.form-half {
        width: 100%;
    }

    #paymentform.payment-page .form-two-col > .form-group.form-half {
        width: 75%;
    }

    #paymentinfo .form-two-col .form-half:first-of-type {
        margin-right: 0%;
    }


    .form-two-col .form-half:first-of-type {
        margin-right: 4%;
    }

    .form-align-bottom .form-three-col > div {
        margin-bottom: 0;
    }

    .form-align-bottom .form-three-col .form-group {
        display: inline-block !important;
        float: none !important;
        vertical-align: bottom !important;
    }

    .form-three-col {
        margin-right: -15px;
        margin-left: -15px;
    }

        .form-three-col .form-thirds {
            width: 33.33333%;
            float: left;
            padding-right: 15px;
            padding-left: 15px;
            margin-bottom: 15px;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box;
        }

        .form-three-col .form-two-thirds {
            width: 66.66666%;
            float: left;
            padding-right: 15px;
            padding-left: 15px;
            margin-bottom: 15px;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box;
        }

        .form-three-col button {
            width: 100%;
        }

        .form-three-col .form-fill {
            float: left;
            padding-right: 15px;
            padding-left: 15px;
            margin-bottom: 15px;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box;
        }

        .form-three-col .form-two-thirds span {
            margin-bottom: 10px;
        }

    .form-blue-container p.form-label {
        padding: 0 15px;
        margin-top: 0;
    }

    #summary .dates {
        line-height: 1.5;
        margin-top: 0;
    }


    .location .city,
    .compact .location .city {
        font-size: 25px;
    }

    .location .country,
    .location .hotel {
        font-size: 18px;
        font-weight: bold;
        white-space: nowrap;
    }

    .dates .numberdays,
    .compact .dates .numberdays {
        font-size: 26px;
    }

    .compact .dates .startsin {
        font-size: 18px;
    }

    .dates .datesfromto {
        line-height: 1.5;
    }

    .dates {
        text-align: right;
    }

    #summary.compact .location {
        float: left;
        max-width: 65%;
    }

    #summary.compact .dates {
        float: right;
        max-width: 35%;
    }

    #bookinginfo .booking > div {
        display: table-cell;
        width: 50%;
        float: left;
    }

        #bookinginfo .booking > div:nth-child(1),
        #bookinginfo .booking > div:nth-child(2) {
            margin-bottom: 10px;
        }

        #bookinginfo .booking > div:nth-child(3) {
            clear: left;
        }

    #bookinginfo .booking span {
        display: inline-block;
    }

        #bookinginfo .booking span:first-of-type {
            display: inline-block;
            white-space: nowrap;
        }

    .breadcrumb {
        display: list-item;
        padding: 8px 15px;
    }

    #vacationchecklist,
    #details,
    #confirm,
    #payment {
        float: none;
    }

    .checks li > a {
        min-height: 115px;
        padding: 0;
        /*display: table;*/
    }

    .checks li .checkbox {
        /*background-color: pink;*/
        /*float: left;*/
        /*text-align: center;*/
        height: 100%;
        position: absolute;
        /*height: 30px;*/
        width: 10%;
        /*display: table;*/
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
    }

    .checkbox {
        background-position: center center;
    }

    .icon {
        /*background-color: yellow;*/
        background-position: center center;
        float: none;
        height: 100%;
        margin-left: 0;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 10%;
        right: 0;
        width: 12%;
    }

    .details {
        float: left;
        height: 111px;
        margin-left: 24%;
        width: 45%;
        display: table;
    }

    .cta, .calendar {
        clear: none;
        float: right;
        height: 111px;
        margin-left: 0;
        margin-right: 2%;
        width: 26%;
        padding: 0;
        display: table;
    }

    .valign {
        display: table-cell;
        vertical-align: middle;
    }

    .print-edocs {
        table-layout: fixed;
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .print-edocs-message {
        display: table-caption;
        background-color: #FFF8E6;
        padding: 15px;
        padding-bottom: 0;
        padding-left: 70px;
        border-radius: 4px
    }

    .print-edocs-cta {
        display: table-cell;
        width: 50%;
        padding: 5px;
    }

        .print-edocs-cta:nth-last-child(1) {
            margin-top: 0;
            padding-left: 15px;
        }

    .edocs-frame {
        margin-top: -50px;
    }

    /* Seat Selection */

    .selection-dropdown .selection-dropdown--header,
    .selection-dropdown .selection-dropdown--options {
        display: table-cell;
    }

        .selection-dropdown .selection-dropdown--options li.active {
            margin-left: 2px;
        }

        .selection-dropdown .selection-dropdown--options.open li.active {
            margin-left: 0px;
            border-left: 2px solid #ddd;
        }

        .selection-dropdown .selection-dropdown--options.open ul {
            position: absolute;
            height: auto;
            margin-left: -2px;
        }

        .selection-dropdown .selection-dropdown--options.open li {
            border-left: 2px solid #ddd;
            border-right: 2px solid #ddd;
        }

    .cart-summary {
        display: table;
        width: 100%;
    }

    .cart-summary--header,
    .cart-summary--row,
    .cart-summary--footer---heading,
    .cart-summary--footer {
        display: table-row;
    }

    .cart-summary--header {
        font-weight: 700;
    }

        .cart-summary--header > div,
        .cart-summary--row > div {
            display: table-cell;
            vertical-align: middle;
        }

    .cart-summary--footer---heading > div,
    .cart-summary--footer > div {
        display: table-cell;
        padding: 10px 0;
        vertical-align: middle;
    }

    .cart-summary--header---price,
    .cart-summary--header---total,
    .cart-summary--row---price,
    .cart-summary--row---total,
    .cart-summary--footer---price {
        text-align: right;
    }

    .cart-summary--header---product,
    .cart-summary--row---product {
        width: 55%;
    }

    .cart-summary--row > div.cart-summary--row---product {
        border-bottom: 1px solid #d0e2eb;
    }

    .cart-summary--row > div.cart-summary--row---passenger,
    .cart-summary--row > div.cart-summary--row---price {
        padding: 10px 0;
    }

    .cart-summary--row---passenger-mobile {
        display: none;
    }

    .cart-summary--row---passenger,
    .cart-summary--row---price {
        display: table-cell;
        width: auto;
    }

    .cart-summary--header---passenger {
        width: 15%;
    }

    .cart-summary--header---passenger,
    .cart-summary--row---passenger {
        text-align: center;
    }

    .cart-summary--row---price {
        float: none;
    }

        .cart-summary--row---price:before {
            content: none;
            float: none;
        }

    .cart-summary--footer---heading .cart-summary--footer---total {
        padding-top: 20px;
    }

    .cart-summary--footer---total {
        font-weight: 700;
    }

    #details.requests-mobile {
        margin-top: 115px;
    }

    /* Loading Popup - eDocs */
    .loading-container {
        transform: translate(-50%, 50%);
    }

    .loading-cta button {
        margin: 0 auto;
        width: auto;
        display: inline-block;
        padding: 10px 20px;
        height: auto;
    }

    .loading-cta .btn + .btn {
        margin-left: 15px;
        margin-top: 0;
    }

    /* Special Sssistance Request Styles */
    .special-requests-hotel--section br {
        display: none;
    }

    .special-requests-hotel--section select {
        margin-bottom: 15px;
    }

    .special-assistance--header---info span {
        font-weight: 700;
        line-height: 30px;
    }

    .special-assistance--header---split-info {
        display: table;
        table-layout: fixed;
        width: 100%;
    }

        .special-assistance--header---split-info .special-assistance--header---info {
            display: table-cell;
        }

    .special-assistance--header---hotel-mobile {
        display: none;
    }

    .special-assistance--header---hotel-desktop {
        display: table;
        width: 100%;
        text-align: left;
    }


        .special-assistance--header---hotel-desktop th,
        .special-assistance--header---hotel-desktop td {
            padding: 8px 0;
        }


        .special-assistance--header---hotel-desktop th {
            font-weight: 700;
            padding-top: 0;
        }

        .special-assistance--header---hotel-desktop tr {
            border-bottom: 1px solid #fff;
        }

        .special-assistance--header---hotel-desktop tbody tr:last-child {
            border-bottom: 0;
        }

    /* Special Requests Styles */
    .special-requests--header---hotel-mobile {
        display: none;
    }

    .special-requests--header---hotel-desktop {
        display: table;
        width: 100%;
        text-align: left;
    }


        .special-requests--header---hotel-desktop th,
        .special-requests--header---hotel-desktop td {
            padding: 8px 0;
        }


        .special-requests--header---hotel-desktop th {
            font-weight: 700;
            padding-top: 0;
        }

        .special-requests--header---hotel-desktop tr {
            border-bottom: 1px solid #fff;
        }

        .special-requests--header---hotel-desktop tbody tr:last-child {
            border-bottom: 0;
        }

    #paymentform .form-align-bottom .form-group {
        vertical-align: top !important;
    }

        #paymentform .form-align-bottom .form-group.form-btn-bottom {
            vertical-align: bottom !important;
        }

    #paymentform .form-align-bottom .form-three-col .form-group {
        margin-top: 16px;
    }

    #paymentform .form-half .form-three-col .cardtype {
        top: 10px;
        right: 15px;
    }

    .paymentform-left {
        width: 48%;
        float: left;
    }

    .paymentform-left-width {
        width: 31% !important;
    }

    .paymentform-right {
        width: 48%;
        float: right;
    }

    /* Vacation Overview */

    .upgrade-alert {
        display: table;
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    .upgrade-alert-message,
    .upgrade-alert-cta {
        display: table-cell;
        vertical-align: middle;
        text-align: left;
    }

        .upgrade-alert-cta .btn {
            min-width: 200px;
        }

    .vacation-overview {
        width: 100%;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-box-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-flow: row wrap;
        -webkit-box-flex-flow: flex-start;
        -moz-flex-flow: flex-start;
        -ms-flex-pack: start;
        -webkit-flex-flow: flex-start;
        justify-content: flex-start;
        -webkit-box-align-items: stretch;
        -moz-align-items: stretch;
        -ms-flex-align: stretch;
        -webkit-align-items: stretch;
        align-items: stretch;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
    }


    .vacation-overview--container {
        min-width: 50%;
        width: 50%; /* For old syntax, otherwise collapses. */
    }

        .vacation-overview--container h4 span {
            display: block;
            float: none;
        }

    .vacation-overview-transportation .vacation-overview--container {
        min-width: 100%;
        -webkit-box-flex: 1; /* OLD - iOS 6-, Safari 3.1-6 */
        -moz-box-flex: 1; /* OLD - Firefox 19- */
        width: 100%; /* For old syntax, otherwise collapses. */
        -webkit-flex: 1; /* Chrome */
        -ms-flex: 1; /* IE 10 */
        flex: 1; /* NEW, Spec - Opera 12.1, Firefox 20+ */
    }

    .lt-ie10 .vacation-overview {
        display: block;
    }

    .lt-ie10 .vacation-overview--container {
        display: inline-block;
        min-width: 49.5%;
        width: 49.5%;
    }

    .lt-ie10 .vacation-overview-transportation .vacation-overview--container {
        min-width: 100%;
        width: 100%;
    }

    .vacation-overview-excursions .vacation-overview--container:nth-child(n+2) table th {
        display: table-cell;
    }

    .vacation-overview-excursions .vacation-overview--container:nth-child(n+3) table th {
        display: none;
    }

    footer .links-col {
        display: table-cell;
        width: 33.33333%;
        padding: 15px;
    }

    footer .form-col {
        display: table-caption;
        width: 100%;
        padding: 0 15px 15px;
    }

    footer .copyright {
        padding: 15px 0;
    }
}
/* end min-width: 640px */


@media only screen and (min-width: 640px) and (max-width: 767px) {
    /* Mobile Cart - Booking Summary */


    /* Booking Summary Side Bar */
    #mybookingportal.right {
        z-index: 110;
        display: block;
        position: absolute;
        top: 100px !important;
        margin-left: -16px;
        width: 100% !important;
    }

        #mybookingportal.right .summary {
            z-index: auto;
            position: fixed !important;
            top: 90px !important;
            bottom: auto !important;
            overflow-x: hidden;
            border: none;
            display: none;
            border-bottom: 3px solid #666;
            padding: 10px 20px 20px;
            min-width: 100% !important;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            -ms-box-sizing: border-box;
            box-sizing: border-box;
            -webkit-overflow-scrolling: touch;
            transform: translateZ(0);
            -webkit-transform: translateZ(0);
        }

        #mybookingportal.right h3 {
            display: none;
        }

    #mybookingportal .mobile-cart {
        display: block;
        /*z-index:6476672932;*/
        z-index: 999;
        text-decoration: none;
        width: 100px;
        height: 90px;
        position: absolute;
        top: -100px;
        right: 80px;
        background: url('../images/icons/cart.png') no-repeat center center;
        border-left: 1px solid #ffffff;
        border-right: 1px solid #ffffff;
    }

        #mybookingportal .mobile-cart > span.badge {
            display: inline-block;
            min-width: 10px;
            padding: 3px 5px;
            font-size: 13px;
            line-height: 1;
            color: #fff;
            text-align: center;
            white-space: nowrap;
            vertical-align: middle;
            background-color: #00589E;
            border-radius: 50%;
            position: relative;
            top: 60px;
            left: 60px;
            border: 1px solid #fff;
        }

    /* Opened */

    #mybookingportal.scrolled-sticky {
        top: 55px !important;
    }


        /* Scrolled View */
        #mybookingportal.scrolled-sticky .mobile-cart {
            position: fixed;
            width: 100%;
            height: 55px;
            top: 0;
            right: auto;
            background-color: #f36f21;
            background-position: 30px center;
        }

            #mybookingportal.scrolled-sticky .mobile-cart > span.badge {
                top: 30px;
                left: 55px;
            }

            #mybookingportal.scrolled-sticky .mobile-cart > span.cart-label {
                color: #fff;
                text-decoration: none;
                margin: 0 auto;
                display: block;
                text-align: center;
                font-size: 18px;
            }

            #mybookingportal.scrolled-sticky .mobile-cart > span.cart-toggle {
                background: url('../images/icons/angle-down-white.png') no-repeat center center;
                width: 24px;
                height: 24px;
                display: block;
                position: absolute;
                top: 17px;
                right: 30px;
            }

            #mybookingportal.scrolled-sticky .mobile-cart.mobile-cart--open > span.cart-toggle {
                background: url('../images/icons/angle-up-white.png') no-repeat center center;
            }
}

@media only screen and (min-width: 768px) {

    /* Sticky Menu */
    .sticky-container {
        position: relative;
    }

    #login.container {
        margin-top: 30px;
        position: relative;
    }

    .infobox .yesno a {
        display: inline;
    }

    .overlay .infobox {
        height: 156px;
    }

    .leftcol, .rightcol {
        display: block;
        width: 40%;
    }

    #mybooking-seats.leftcol,
    #mybooking-seats-flights.leftcol {
        width: 283px !important;
        float: left;
    }

    #mybooking-seats.rightcol,
    #mybooking-seats-flights.rightcol {
        width: 283px !important;
        float: right;
    }

    #seatselection.right {
        float: none;
        margin-left: 360px;
        /*margin-left: 45%;*/
        width: auto !important;
    }

    .seatlegend .seattype {
        width: 48%;
        vertical-align: middle;
        float: left;
    }

        .seatlegend .seattype > a:after {
            position: absolute;
            width: 24px;
            bottom: 10px;
            right: 10px;
        }

        .seatlegend .seattype .seatlabel {
            display: table-cell;
            vertical-align: middle;
            text-align: left;
        }

    #seatprice .selected .td-price,
    #seatprice .active .td-price,
    #seatprice .error .td-price {
        position: relative;
        color: #000
    }

        /* add arrow right to tr */
        #seatprice .selected .td-price:after,
        #seatprice .active .td-price:after,
        #seatprice .error .td-price:after {
            content: '';
            width: 0;
            height: 0;
            border-top: 18px solid transparent;
            border-bottom: 18px solid transparent;
            position: absolute;
            right: -17px;
            top: 0;
        }
        /* arrow right colors */
        #seatprice .selected .td-price:after {
            border-left: 18px solid #396582;
        }

        #seatprice .active .td-price:after {
            border-left: 18px solid #007cc3;
        }

        #seatprice .error .td-price:after {
            border-left: 18px solid #ba1b13;
        }

    .cols-2,
    .cols-4 {
        overflow: hidden;
        width: 100%;
    }

    .cols-4 {
        padding-top: 50px;
        position: relative;
    }


        .cols-2 .ov-flights,
        .cols-4 .ov-flights {
            padding-bottom: 500em;
            margin-bottom: -500em;
        }

    .ov-flights.oneoftwo,
    .ov-flights.oneoffour,
    .ov-flights.twooffour,
    .ov-flights.threeoffour {
        border-top: none;
        border-right: 2px solid #007cc3;
    }

    .cols-2 .ov-flights {
        width: 50%;
        float: left;
    }

    .cols-4 .ov-flights {
        width: 25%;
        float: left;
    }

        .cols-4 .ov-flights .ov-footer button {
            width: 100%;
        }

    .vacationflights {
        border-bottom: 2px solid #007cc3;
        padding: 0;
        position: absolute;
        top: 0;
        height: 50px;
    }

        .vacationflights.start {
            /*background: yellow;*/
            border-right: 2px solid #007cc3;
            left: 0;
            right: 50%;
        }

        .vacationflights.end {
            /*background: pink;*/
            right: 0;
            left: 50%;
        }

        .vacationflights h2 {
            margin: 10px;
        }

    #mybookingportal {
        display: block;
        width: 25%;
    }

    #details {
        float: left;
        width: 72%;
        margin-left: 15px;
        margin-top: 0;
    }

    #mybookingportal #mybookingmenu {
        display: block;
    }



    /* triangular arrow right */
    .left-col-menu li.selected a:after {
        content: '';
        width: 0;
        height: 0;
        border-top: 21px solid transparent;
        border-bottom: 21px solid transparent;
        border-left: 21px solid #396582;
        position: absolute;
        right: -21px;
        top: 0;
    }

    /*triangular arrow right */
    .left-col-menu.multiline li.selected a:after {
        content: '';
        width: 0;
        height: 0;
        border-top: 32px solid transparent;
        border-bottom: 32px solid transparent;
        border-left: 32px solid #396582;
        position: absolute;
        right: -32px;
        top: 0;
    }

    .row.checks .left {
        width: 49%;
    }

    .left {
        margin-bottom: 5px
    }

    #details.upgrades .foo.specialselect select {
        display: none;
    }

    .foo.specialselect {
        margin-bottom: -50px;
    }

    #hotelaccordion.roomupgrade ul {
        display: block;
    }

    .mobile-hidden {
        display: block;
    }

    .selectitems li {
        display: inline;
        float: left;
        width: 45%;
        margin-right: 5%;
    }


    .edocs-frame {
        background: url(../images/icons/loader-swg.gif) no-repeat center;
        background-size: 60px;
    }

    #edoc-group .selectitems li:first-child, #edoc-group .selectitems.select-2-col li:first-child {
        display: inline;
        float: left;
        width: 100%;
        margin-right: 0%;
    }

    #edoc-group .selectitems li:nth-child(3n+2) {
        clear: both;
    }

    #edoc-group .selectitems li {
        display: inline;
        float: left;
        width: 31%;
        margin-right: 2%;
    }

    #edoc-group .selectitems.select-2-col li {
        display: inline;
        float: left;
        width: 47%;
        margin-right: 2%;
    }

        #edoc-group .selectitems.select-2-col li:nth-child(3n+2) {
            clear: none;
        }

        #edoc-group .selectitems.select-2-col li:not(:first-child) .checkboxes label {
            width: auto;
        }

    #modalSendingDiv .form-thirds .btn_mobile_full {
        margin-top: 0;
    }

    #details.left.services .collapsible .tabs .tabbuttons {
        display: none;
    }

    #details.left.services .collapsible .tabs .tab-content {
        display: block !important;
    }

        #details.left.services .collapsible .tabs .tab-content.border-top {
            border: 1px dotted #e6e6e6;
            margin-top: 15px;
            padding-top: 15px;
        }

        #details.left.services .collapsible .tabs .tab-content h4 {
            display: block;
        }

    .mobile-only {
        display: none;
    }

    #details.left.insurance .collapsibles .collapsible.border .foo {
        position: relative;
    }


    .tinynav {
        display: none
    }

    .compact .location .country,
    .compact .location .hotel,
    .compact .dates .datesfromto {
        position: static;
        left: auto;
        overflow: hidden;
    }

    .compact .location .myvacation {
        margin-bottom: 0;
    }

    #summary .location span.country {
        border-right: 2px solid #333;
        margin-right: 15px;
        padding-right: 15px;
    }

    #bookinginfo .booking {
        display: table;
        width: 100%;
    }

        #bookinginfo .booking > div {
            vertical-align: top;
            width: auto;
            float: none;
        }

            #bookinginfo .booking > div:nth-child(1),
            #bookinginfo .booking > div:nth-child(2) {
                margin-bottom: 0;
            }

            #bookinginfo .booking > div:nth-child(3) {
                clear: none;
            }

        #bookinginfo .booking span:first-of-type {
            display: block;
            white-space: nowrap;
            vertical-align: top;
            padding-right: 0;
        }

    #cancellationsummary .right input[type="submit"] {
        margin: 30px 0;
        width: 220px;
    }

    .formtop,
    .formtop.noborderpadding {
        border: 1px solid #666;
        border-width: 1px;
        margin-top: 40px;
        margin-bottom: 15px;
        padding: 0 15px 0px 15px !important;
        position: relative;
    }

        .formtop h3 {
            background-color: #FFF;
            clear: both;
            display: inline-block;
            float: left;
            margin-top: -20px;
            margin-bottom: 0;
            padding: 10px;
        }

        /*.formtop h3:before,
    .formtop h3:after {
    content: " ";
    display: table;
    }

    .formtop h3:after {
    clear: both;
    }
*/

        .formtop .form-group {
            /*border: 1px dashed red;*/
            float: left;
            margin-top: 15px;
            margin-right: 5%;
            width: 45%;
        }

            .formtop .form-group.block {
                float: none;
                display: block;
            }

            .formtop .form-group:first-of-type {
                clear: left;
            }

            .formtop .form-group input[type="text"]:disabled {
                background: #FFF;
                border-color: #FFF;
                color: #333;
                padding: 10px 0;
                text-indent: 0;
            }

            .formtop .form-group.onefield-lastrow {
                width: 100%;
                /*margin-top: -15px;*/
                bottom: 15px;
            }

                .formtop .form-group.onefield-lastrow input[type="text"] {
                    width: 45%;
                }

                .formtop .form-group.onefield-lastrow.longfield input[type="text"] {
                    width: 75%;
                    bottom: 15px;
                }

        .formtop .bookinginfo {
            float: right;
            margin-top: 30px;
            width: 45%;
        }

        .formtop input[type="submit"] {
            width: 20% !important;
            margin: 0;
            position: absolute;
            /*bottom: 15px;*/
            right: 0;
        }

    .traveler .subtext {
        font-size: 14px;
        position: absolute;
        top: -20px;
        right: 0;
    }


    .traveler input[type="submit"] {
        margin-top: 0 !important;
    }


    .traveler .float,
    .traveler .form-group.title {
        float: left;
        margin-right: 4%;
        width: 46%;
    }

    .traveler input[type="submit"] {
        /*float: none !important;*/
        margin: 38px 30px 0 0 !important;
    }

    .mobileborder {
        border: none;
    }

    .tab_class {
        display: block;
    }


    .creditcardinfo {
        clear: both;
        margin: 30px 0;
        padding-top: 30px;
    }

        .creditcardinfo .form-group.cardnum {
            width: 60%;
            float: left;
        }

        .creditcardinfo .card-info.expiry {
            margin-top: -15px;
            width: 40%;
            float: right;
        }

        .creditcardinfo .form-group.card-info.expiry {
            margin-top: -15px;
            width: 40%;
            float: right;
        }

        .creditcardinfo .form-group.card-info.name {
            width: 30%;
            float: left;
        }

        .creditcardinfo .form-group.card-info.code {
            float: left;
            margin-left: 20px;
        }

        .creditcardinfo .form-group.card-info.cardnumber {
            width: 30%;
            float: left;
        }

        .creditcardinfo .form-group.card-info.cardtype {
            width: 30%;
            float: left;
        }

            .creditcardinfo .form-group.card-info.cardtype select {
                width: 90%;
                clear: both;
                float: left;
            }

        .creditcardinfo .amount {
            float: right;
            width: 40%;
            margin-bottom: 20px;
        }

        .creditcardinfo .totalpayment,
        .creditcardinfo .totaldue,
        .creditcardinfo .balance {
            clear: both;
            width: 100%;
            margin: 15px 0;
        }

            .creditcardinfo .totalpayment label,
            .creditcardinfo .totaldue label,
            .creditcardinfo .balance label {
                display: inline;
                float: left;
                width: 16%;
                margin-left: 42%;
                text-align: right;
            }

            .creditcardinfo .totalpayment input[type="text"],
            .creditcardinfo .totaldue input[type="text"],
            .creditcardinfo .balance input[type="text"] {
                float: right;
                width: 40%;
            }

        .creditcardinfo .form-group.card-info.code {
            width: 25%;
        }

        .creditcardinfo .form-group.card-info.cardnumber input[type="text"] {
            width: 90%;
            clear: both;
            float: left;
        }


    .requests a,
    .requests.seats a {
        background: transparent;
        border: none;
        display: block;
        float: none;
        height: auto;
        text-align: left;
        margin-bottom: 2px;
        width: 100%;
        word-wrap: break-word;
        word-break: break-all;
    }

        .requests a h3 {
            height: auto;
            display: block;
            vertical-align: none;
        }

    #details.requests-mobile {
        border: none;
        margin-top: 0;
        padding: 0;
    }

    .requests-mobile .flightdetails {
        border: 1px solid #ddd;
        margin-bottom: 15px;
        padding: 15px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

    /*.special-request-form #selecttraveler { margin: 30px 0 !important; }*/

    #requests-hotel input[type="submit"], input[type="button"] {
        float: right;
        width: 200px;
    }

    .contactinfoform .form-group {
        float: left;
        width: 45%;
    }

        .contactinfoform .form-group:last-of-type {
            float: right;
        }



    input[type="submit"].gonextsection {
        float: right;
        width: 200px !important;
    }

    .roomarrangements .left,
    .roomarrangements .right {
        width: 48%;
    }

    .mobile-cart {
        display: none;
    }


    #mybookingportal.right .summary {
        display: block !important;
    }

    .requests a h3.departing span,
    .requests a h3.returning span {
        display: none !important;
    }


    .seatselectionleftcolborder li a .selectedseatnum {
        color: #646464;
        /*
  float: right;
  margin-right: -4px;
  margin-left: 10px;
  */
        font-size: 15px;
        font-weight: 700;
        line-height: 1.8;
        position: absolute;
        right: 14px;
        top: 6px;
    }

    .seatselectionleftcolborder li.selected a .selectedseatnum {
        color: #FFF;
    }

    .cart-submit {
        text-align: right;
    }

        .cart-submit > p,
        .cart-submit > input {
            display: inline-block !important;
        }

        .cart-submit > p {
            margin-right: 50px;
        }

    .cart-summary-mobile {
        display: none;
    }

    .cart-summary-desktop {
        display: table;
        text-align: left;
        width: 100%;
    }

    .alert.alert-info {
        background-image: url(../images/icons/info-large.png);
        background-position: 15px 15px;
        padding: 15px 15px 15px 75px;
    }

    .double-box {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        overflow: hidden;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .double-box--row {
        width: 49%;
    }

        .double-box--row:nth-child(2n) {
            order: 2;
        }


    /* Share Your Experience */

    .questionnaire {
        display: table;
        width: 100%;
        margin-bottom: 30px;
    }

    .questionnaire-header, .questionnaire-question {
        display: table-row;
    }

    .questionnaire-header--empty, .questionnaire-header--ratings,
    .questionnaire-question--statement, .questionnaire-question--ratings {
        display: table-cell;
        vertical-align: middle;
    }

    .questionnaire-header--empty,
    .questionnaire-question--statement {
        width: 38%;
    }

    .questionnaire-header--ratings li {
        font-weight: 700;
        font-size: 14px;
    }

    .questionnaire-question--ratings label {
        display: none;
    }

    .questionnaire-header--subsection {
        display: table-row;
        margin: 0;
        padding: 0;
        border: none;
    }

    .share-experience--sections .collapsibles .questionnaire-header--subsection h3 {
        padding: 15px 0;
        margin: 0;
    }

    .questionnaire-question--statement, .questionnaire-question--ratings {
        border-bottom: 1px solid #ddd;
        padding: 10px 0;
    }

    .questionnaire-question:last-child .questionnaire-question--statement,
    .questionnaire-question:last-child .questionnaire-question--ratings {
        border-bottom: 0;
    }

    .radiobuttons {
        border: 0;
        margin: 0;
    }

        .radiobuttons li:not(:last-child) {
            border: 0;
        }

    /* Vacation Overview */
    .vacation-overview--container {
        min-width: 33.3333%;
        width: 33.3333%;
    }

    .vacation-overview-hotel .vacation-overview--container,
    .vacation-overview-excursions .vacation-overview--container {
        min-width: 50%;
        width: 50%;
    }

    .lt-ie10 .vacation-overview--container {
        min-width: 32%;
        width: 32%;
    }

    .lt-ie10 .vacation-overview-hotel .vacation-overview--container,
    .lt-ie10 .vacation-overview-excursions .vacation-overview--container {
        min-width: 49.5%;
        width: 49.5%;
    }
}
/* 768 */

/* IE 10 Flexbox Fallback */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .double-box {
        display: block;
    }

    .double-box--row {
        width: 100%;
    }
}

/* IE 9 Flexbox Fallback */
.double-box {
    display: block \0/;
}

.double-box--row {
    width: 100% \0/;
}

@media only screen and (min-width: 860px) {
    .share ul {
        border-left: 1px solid #f2f1ec;
        margin-top: 0;
        padding: 10px 0 7px 10px;
        text-align: left;
    }

    .share li {
        margin: 0 2px;
    }

        .share li:last-child {
            margin-right: 0;
        }

    .price-table-small .price-table {
        width: auto;
        margin: 0;
    }

    .price-table {
        margin: 0;
        width: 30%;
        float: right;
        margin-left: 15px;
        margin-bottom: 15px;
    }

    .price-table--prices {
        border: 2px solid #ecebe6;
    }

        .price-table--prices .price {
            display: table-row;
            padding: 0;
        }

            .price-table--prices .price:nth-child(2) {
                border: 0;
            }

            .price-table--prices .price .price-columns {
                padding: 10px 15px;
                -webkit-box-sizing: border-box;
                -moz-box-sizing: border-box;
                -ms-box-sizing: border-box;
                box-sizing: border-box;
            }

                .price-table--prices .price .price-columns.price-columns--padding .age {
                    font-size: 12px;
                }

                .price-table--prices .price .price-columns.price-columns--padding {
                    padding: 10px 5px;
                }

            .price-table--prices .price:nth-child(2) .price-columns {
                border-top: 2px solid #ecebe6;
            }


    .upgrade-container .upgrade-container--header {
        margin-bottom: 5px;
    }


        .upgrade-container .upgrade-container--header span {
            margin-left: 15px;
            font-size: 20px;
        }

    .upgrade-container .upgrade-container--current---features ul {
        float: left;
    }

        .upgrade-container .upgrade-container--current---features ul:not(:first-of-type) {
            margin-left: 40px;
        }

    .upgrade-container .upgrade-container--standard---features {
        display: table;
        table-layout: fixed;
        width: 100%;
    }

        .upgrade-container .upgrade-container--standard---features ul {
            display: table-cell;
        }

    .upgrade-container .upgrade-container--option---category_colleft {
        width: 60%;
        float: left;
    }

    .upgrade-container .upgrade-container--option---category_colright {
        width: 38%;
        float: right;
        padding: 0 15px 0 0;
    }

    .upgrade-container .upgrade-container--option---category_colleft.price-table-small {
        width: 68%;
    }

    .upgrade-container .upgrade-container--option---category_colright.price-table-small {
        width: 30%;
    }

    .manulife p {
        display: block;
    }

    .upgrade-container .upgrade-container--option---category_colright .price-table {
        margin-left: 0;
        margin-right: 0;
        margin-bottom: 0;
        width: auto;
    }
}
/* end min-width: 860px    */


@media only screen and (min-width: 960px) {

    #login #signin.left {
        width: 70%;
    }

    #login #signin2.right {
        display: block;
        width: 28%;
        text-align: right;
        margin-top: 25px;
    }
}

@media only screen and (max-width:1024px) {
    .seatlegend .seattype .bs-popover {
        display: table !important;
        width: 100%;
        left: 0 !important;
    }

    #paymentform .form-two-col .form-group.form-half {
        width: 100%;
        margin-right: 0;
    }
}

@media only screen and (min-width: 1024px) {

    .selectselection-content {
        margin-top: 20px;
    }

    .selectselection-content-left {
        width: 28%;
        float: left;
        display: block;
    }

    .selectselection-content-right {
        width: 70%;
        float: right;
    }

    .departing-mobile-pax-list, .returning-mobile-pax-list,
    .mobile-pax-list {
        display: none;
    }

    #bookinginfo .booking > div {
        min-width: 25%;
    }

    #bookinginfo .booking span:first-of-type {
        display: inline-block;
    }

    #bookinginfo .booking span {
        padding-right: 10px;
    }

    #mybooking {
        display: block;
        width: 25%;
    }

    #mybooking-seats h3 {
        display: block;
    }


    #vacationchecklist {
        float: right;
        /*width: 68%;*/
        width: 72%;
    }

    .panel {
        height: 50px;
    }

        .panel a {
            height: 35px;
        }

        .panel h4,
        .panel p {
            display: inline;
            float: left;
            line-height: 18px;
        }

        .panel h4 {
            margin-right: 5px;
        }

        .panel .seeit {
            background: url(../images/icons/angle-down-dark.png) no-repeat right center;
            float: right;
            margin-right: 15px;
            padding-right: 26px;
        }

    #summary .location span.country,
    #summary .location span.hotel {
        display: inline;
    }


    #mybooking-seats.leftcol,
    #mybooking-seats-flights.leftcol,
    #mybooking-seats.rightcol,
    #mybooking-seats-flights.rightcol {
        width: 293px !important;
    }
    /*#seatselection { width: 54%; }*/

    #seatselection.right {
        margin-left: 440px;
    }

    .shareexperiencesform .collapsible .form-group {
        border-bottom: 1px solid #ccc;
        padding-top: 10px;
    }

        .shareexperiencesform .collapsible .form-group:last-of-type {
            border-bottom: none;
        }

    .shareexperiencesform .form-group h4 {
        font-weight: 400;
        float: left;
        width: 48%;
    }

    .shareexperiencesform .radiobuttons label {
        display: none !important;
    }

    .shareexperiencesform .radiobuttons {
        float: right;
        width: 50%;
    }

    .radiobuttons {
        border-top: none;
        border-bottom: none;
    }

        .radiobuttons li {
            border-left: none;
        }

            .radiobuttons li:last-child {
                border-right: none;
            }

    .confirmation .ccsummary {
        display: table;
        width: 100%;
        padding: 30px 15px;
    }

    .confirmation .ccsummary-col {
        display: table-cell;
        vertical-align: top;
    }

    .confirmation .ccsummary-row {
        display: table-row;
    }

        .confirmation .ccsummary-row span {
            display: table-cell;
            width: auto;
            float: none;
        }

    .confirmation .ccsummary-col span:first-child {
        font-weight: 700;
    }

    #paymentform .form-half .form-three-col .cardtype {
        right: 0px;
    }

    .form-half .form-three-col .form-group {
        padding-right: 0;
    }


    .print-edocs {
        table-layout: auto;
    }

    .print-edocs-message {
        display: table-cell;
        vertical-align: top;
        padding: 0;
        padding-left: 0px;
        padding-right: 15px;
    }

    .print-edocs-cta {
        display: table-cell;
        vertical-align: middle;
        width: auto;
    }

        .print-edocs-cta:nth-last-child(1) {
            margin-top: 0;
            padding-left: 15px;
        }

    /* Vacation Overview */
    .vacation-overview--container {
        min-width: 25%;
        width: 25%; /* For old syntax, otherwise collapses. */
    }

    .vacation-overview-5-6 .vacation-overview--container {
        min-width: 33.3333%;
        width: 33.3333%; /* For old syntax, otherwise collapses. */
    }

    .vacation-overview-hotel .vacation-overview--container {
        min-width: 50%;
        width: 50%; /* For old syntax, otherwise collapses. */
    }


    .lt-ie10 .vacation-overview--container {
        min-width: 24%;
        width: 24%;
    }

    .lt-ie10 .vacation-overview-5-6 .vacation-overview--container {
        min-width: 32%;
        width: 32%; /* For old syntax, otherwise collapses. */
    }

    .lt-ie10 .vacation-overview-hotel .vacation-overview--container {
        min-width: 49.5%;
        width: 49.5%; /* For old syntax, otherwise collapses. */
    }


    footer .links-col {
        display: table-cell;
        width: 25%;
        padding: 15px;
        padding-top: 20px;
    }

    footer .form-col {
        display: table-cell;
        width: 40%;
        padding: 15px;
    }
    /* royce3 */

}

@media only screen and (min-width: 1190px) {

    #details.right.upgrades .collapsible .bulleted.two-col {
        width: 500px !important;
    }

    #details.right.upgrades .collapsible .two-col li {
        display: inline;
        float: left;
        width: 225px;
    }

    /*#details.right.upgrades .collapsible .two-col li:nth-child(even) {
    margin-right: 30px;
    }*/
}




@media only screen and (min-width: 1200px) {

    .container,
    .wrapper {
        margin: 0 auto;
        width: 1170px;
    }

    .share ul {
        padding: 10px 0 7px 24px;
    }

    .share li {
        margin: 0 8px;
    }

    /*.selectitems li { 
    width: 30%;
    margin-right: 3%;
    }*/
}


@media print, (-o-min-device-pixel-ratio: 5/4), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

    .ir:before {
        content: "";
        display: block;
        width: 0;
        height: 150%;
    }

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

    .visuallyhidden.focusable:active,
    .visuallyhidden.focusable:focus {
        clip: auto;
        height: auto;
        margin: 0;
        overflow: visible;
        position: static;
        width: auto;
    }

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

.clear {
    clear: both;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        /*background: transparent !important;
        color: #000 !important;*/
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

        a[href]:after {
            content: " (" attr(href) ")";
        }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


/* ==========================================================================
   Excursion
   ========================================================================== */
.excursion-option:after {
    content: '';
    display: table;
    clear: both;
}

.excursion-option--info h4 {
    display: none;
}

.excursion-option--info {
    margin-top: 10px;
}

.excursion-option--colleft {
    padding-top: 15px;
}

    .excursion-option--colleft img {
        width: 100%;
    }

.excursion-option--colright input[type="button"] {
    width: 100% !important;
    margin: 15px 0 0 0;
}

.excursion-gallery {
    margin-bottom: 20px;
    margin-top: -15px;
    margin-left: -15px;
    margin-right: -15px;
}

    .excursion-gallery:after {
        content: '';
        display: table;
        clear: both;
    }

.excursion-details .price-table {
    margin-bottom: 15px;
}

.excursion-details h3 {
    color: #007cc3;
    font-weight: 400;
}

.excursion-more {
    margin-bottom: 15px;
}

.excursion-info h4 {
    color: #00589E;
    font-weight: 400;
}

.excursion-info {
    width: 100%;
}

.excursion-info--point {
    display: block;
}

@media screen and (min-width: 640px) {

    .excursion.border {
        border: 2px solid #d3e9f2;
    }

    .excursion-details h3 {
        display: none;
    }

    .excursion-info {
        column-count: 2;
    }

    .excursion-info--point {
        display: inline-block;
        width: 100%;
    }

    .excursion-gallery {
        margin: 0 0 20px;
    }
}

@media screen and (min-width:860px) {

    .excursion-option--header {
        display: none;
    }

    .excursion-option--info {
        width: 40%;
        float: left;
        margin-top: 0;
        padding-bottom: 0;
        padding-left: 20px;
        padding-bottom: 15px;
    }

        .excursion-option--info h4 {
            display: block;
        }

    .excursion-option--colleft {
        width: 25%;
        float: left;
        padding-top: 0;
        padding-bottom: 0;
    }

    .excursion-option--colright {
        width: 30%;
        float: right;
        margin-left: 0;
        margin-right: 0;
    }

        .excursion-option--colright .price-table {
            margin-left: 0;
            margin-right: 0;
            margin-bottom: 0;
            width: auto;
        }

        .excursion-option--colright.excursion-option-submit {
            clear: right;
        }
}


/* ==========================================================================
   Parking
   ========================================================================== */
#airport-parking .ov h2 {
    font-size: 20px;
}

.parking-description > .left {
    text-align: center;
    margin-bottom: 15px;
}

    .parking-description > .left img {
        max-width: 100%;
    }

.parking-description .bottom {
    clear: both;
    line-height: 1.5;
}

    .parking-description .bottom .left, .parking-description .bottom .right {
        padding: 10px 0;
    }

#airport-parking .ov-footer {
    border-top: 2px solid #00589E;
}

    #airport-parking .ov-footer .ov-select {
        text-align: center;
    }

    #airport-parking .ov-footer label {
        font-size: 16px;
        display: inline;
    }

    #airport-parking .ov-footer select {
        margin-top: 10px;
        margin-bottom: 10px;
        max-width: 200px;
        display: inline;
    }

@media only screen and (min-width: 640px) {
    #airport-parking .ov-footer {
        border-top: 0;
    }

        #airport-parking .ov-footer .ov-select {
            text-align: left;
            float: left;
            width: 60%;
        }

        #airport-parking .ov-footer select {
            margin-left: 10px;
        }

    .parking-description > .right {
        width: 70%;
        float: left;
    }

    .parking-description > .left {
        width: 25%;
        float: right;
    }

    .parking-description .bottom .left, .parking-description .bottom .right {
        width: 49%;
    }
}

.csq.subsection {
    font-weight: bold;
    font-size: 150%;
    margin-top: 25pt;
    border-bottom: 1px solid black;
}

/**
 * bxSlider v4.2.5
 * Copyright 2013-2015 Steven Wanderski
 * Written while drinking Belgian ales and listening to jazz
 * Licensed under MIT (http://opensource.org/licenses/MIT)
 */

/** VARIABLES 
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
    position: relative;
    padding: 0;
    width: 100%;
    float: left;
    *zoom: 1;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .bx-wrapper img {
        width: 100%;
        max-width: 100%;
        display: block;
    }

.bxslider {
    margin: 0;
    padding: 0;
}

ul.bxslider {
    list-style: none;
}

    ul.bxslider img {
        width: 100%;
    }

.bx-viewport {
    /*fix other elements on the page moving (on Chrome)*/
    -webkit-transform: translatez(0);
}

.bx-pager {
    display: none;
    width: 30%;
    float: right;
    overflow-y: auto;
}

    .bx-pager a {
        width: 50%;
        float: left;
        padding-left: 10px;
        padding-bottom: 10px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
    }

        .bx-pager a:focus,
        .bx-pager a:hover {
            background: none;
            outline: 0;
        }

            .bx-pager a:focus img {
                outline: thin dotted blue;
            }

        .bx-pager a:nth-last-child(1) {
            padding-bottom: 0;
        }

    .bx-pager img {
        width: 100%;
        max-width: 100%;
    }
/** THEME
===================================*/
.bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: -30px;
    width: 100%;
}
/* LOADER */
.bx-wrapper .bx-loading {
    min-height: 50px;
    background: url('../images/icons/loading.png') center center no-repeat #ffffff;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2000;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
    background: #000;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
    left: 10px;
    background: url('../images/icons/angle-left-white.png') no-repeat;
}

.bx-wrapper .bx-next {
    right: 10px;
    background: url('../images/icons/angle-right-white.png') no-repeat;
}

.bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 50%;
    margin-top: -16px;
    outline: 0;
    width: 32px;
    height: 32px;
    text-indent: -9999px;
    z-index: 9999;
}

    .bx-wrapper .bx-controls-direction a.disabled {
        display: none;
    }
/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
    text-align: center;
}

    .bx-wrapper .bx-controls-auto .bx-start {
        display: block;
        text-indent: -9999px;
        width: 10px;
        height: 11px;
        outline: 0;
        background: url('images/controls.png') -86px -11px no-repeat;
        margin: 0 3px;
    }

        .bx-wrapper .bx-controls-auto .bx-start:hover,
        .bx-wrapper .bx-controls-auto .bx-start.active,
        .bx-wrapper .bx-controls-auto .bx-start:focus {
            background-position: -86px 0;
        }

    .bx-wrapper .bx-controls-auto .bx-stop {
        display: block;
        text-indent: -9999px;
        width: 9px;
        height: 11px;
        outline: 0;
        background: url('images/controls.png') -86px -44px no-repeat;
        margin: 0 3px;
    }

        .bx-wrapper .bx-controls-auto .bx-stop:hover,
        .bx-wrapper .bx-controls-auto .bx-stop.active,
        .bx-wrapper .bx-controls-auto .bx-stop:focus {
            background-position: -86px -33px;
        }

@media only screen and (min-width: 768px) {
    .bx-wrapper {
        width: 70%;
        padding-right: 5px;
    }

    .bx-pager {
        display: block;
    }
}

/* Bootstrap Elements */
.fade {
    opacity: 0;
    -webkit-transition: opacity 0.15s linear;
    -o-transition: opacity 0.15s linear;
    transition: opacity 0.15s linear;
}

    .fade.in {
        opacity: 1;
    }

.collapse {
    display: none;
}

    .collapse.in {
        display: block;
    }

tr.collapse.in {
    display: table-row;
}

tbody.collapse.in {
    display: table-row-group;
}

.collapsing {
    position: relative;
    height: 0;
    overflow: hidden;
    -webkit-transition-property: height, visibility;
    -o-transition-property: height, visibility;
    transition-property: height, visibility;
    -webkit-transition-duration: 0.35s;
    -o-transition-duration: 0.35s;
    transition-duration: 0.35s;
    -webkit-transition-timing-function: ease;
    -o-transition-timing-function: ease;
    transition-timing-function: ease;
}

.modal-open {
    overflow: hidden;
}

.modal {
    display: none;
    overflow: hidden;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1050;
    -webkit-overflow-scrolling: touch;
    outline: 0;
}

    .modal.fade .modal-dialog {
        -webkit-transform: translate(0, -25%);
        -ms-transform: translate(0, -25%);
        -o-transform: translate(0, -25%);
        transform: translate(0, -25%);
        -webkit-transition: -webkit-transform 0.3s ease-out;
        -o-transition: -o-transform 0.3s ease-out;
        transition: transform 0.3s ease-out;
    }

    .modal.in .modal-dialog {
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -o-transform: translate(0, 0);
        transform: translate(0, 0);
    }

.modal-open .modal {
    overflow-x: hidden;
    overflow-y: auto;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: 10px;
}

.modal-content {
    position: relative;
    background-color: #ffffff;
    border: 2px solid #007cc3;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    outline: 0;
}

.modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: #ffffff;
}

    .modal-backdrop.fade {
        opacity: 0;
        filter: alpha(opacity=0);
    }

    .modal-backdrop.in {
        opacity: 0.8;
        filter: alpha(opacity=80);
    }

.modal-header {
    padding: 15px;
    background-color: #00589E;
    border-bottom: 1px solid #e5e5e5;
}

    .modal-header .close {
        margin-top: -2px;
    }

.modal-title {
    margin: 0;
    font-size: 20px;
    color: #fff;
    line-height: 1.42857143;
}

.modal-body {
    position: relative;
    padding: 15px;
}

.modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5;
}

    .modal-footer .btn + .btn {
        margin-left: 5px;
        margin-bottom: 0;
    }

    .modal-footer .btn-group .btn + .btn {
        margin-left: -1px;
    }

    .modal-footer .btn-block + .btn-block {
        margin-left: 0;
    }

.modal-scrollbar-measure {
    position: absolute;
    top: -9999px;
    width: 50px;
    height: 50px;
    overflow: scroll;
}

.modal-header .close {
    float: right;
    background: url('../images/icons/close-circle-white.png') no-repeat;
    background-size: contain;
    -webkit-appearance: none;
    width: 25px;
    height: 25px;
    padding: 0;
    cursor: pointer;
    border: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .modal-dialog {
        width: 600px;
        margin: 30px auto;
    }

    .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    }

    .modal-sm {
        width: 300px;
    }
}

@media (min-width: 992px) {
    .modal-lg {
        width: 900px;
    }
}

.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after {
    content: " ";
    display: table;
}

.modal-header:after,
.modal-footer:after {
    clear: both;
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.pull-right {
    float: right !important;
}

.pull-left {
    float: left !important;
}

.show {
    display: block !important;
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0;
}

.affix {
    position: fixed;
}

/* Modal Alert */
.alert-modal .modal-content {
    border: 2px solid #007cc3;
    border-radius: 0;
    padding: 15px;
}

.alert-modal .modal-header {
    background: none;
    border-bottom: 0;
    padding: 0;
}

    .alert-modal .modal-header .close {
        background: url('../images/icons/close-circle.png') no-repeat;
        width: 18px;
        height: 18px;
        z-index: 2;
    }

.alert-modal .modal-body h1 {
    text-align: center;
}

.alert-modal p {
    margin: 0;
    text-align: center;
}

.alert-modal .modal-footer {
    border: none;
    text-align: center;
}

    .alert-modal .modal-footer button {
        width: 100%;
        display: block;
        padding: 10px 20px;
        height: auto;
    }

    .alert-modal .modal-footer .btn + .btn {
        margin-left: 0;
        margin-top: 15px;
    }

@media (min-width: 768px) {
    .alert-modal .modal-footer button,
    .modal-two-btns button {
        margin: 0 auto;
        width: auto;
        display: inline-block;
        padding: 10px 20px;
        height: auto;
    }

    .alert-modal .modal-footer .btn + .btn,
    .modal-two-btns .btn + .btn {
        margin-left: 15px;
        margin-top: 0;
    }

    .modal-two-btns {
        text-align: center;
    }

        .modal-two-btns button {
            width: 40%;
        }
}

/* Modal Info */
.info-modal .modal-body:before {
    content: '';
    display: inline-block;
    position: relative;
    height: 24px;
    width: 24px;
    margin-top: -5px;
    top: 5px;
    background: url(../images/icons/info.png) no-repeat;
}

.info-modal .modal-body {
    line-height: 20px;
}

.info-modal button + button,
.modal-two-btns button + button {
    margin-left: 0;
    margin-top: 15px;
}


@media (min-width: 768px) {
    .modal-btn {
        text-align: center;
    }

    .info-modal button {
        margin: 0 auto;
        width: auto;
        display: inline-block;
        padding: 10px 20px;
        height: auto;
    }

        .info-modal button + button {
            margin-left: 15px;
            margin-top: 0;
        }

    .expand-box {
        width: 100%;
        padding: 0;
        border: 0 solid #BBB;
        margin: 7px 0 0 0;
    }

    .expand-box-header {
        background-color: rgba(0, 124, 195, 1);
        margin: 0;
        color: #FFF;
        padding: 0 0 3px 2px;
        height: 50px;
    }

    #chkSplitPayment {
        position: relative;
        opacity: initial;
    }
}

.bulleteddiv.remove {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}

.bulleted1 label {
    display: block;
    font-size: 1em;
    margin: 0 10px 0 5px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
}

.bulleted1 div.remove a {
    display: block;
    height: 16px;
    width: 16px;
    background: url('../images/icons/remove-gray.png') no-repeat center right;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16px;
    flex: 0 0 16px;
}

.bulleteddiv.remove {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
}



.bulleted1 div.remove a {
    display: block;
    height: 16px;
    width: 16px;
    background: url('../images/icons/remove-gray.png') no-repeat center right;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16px;
    flex: 0 0 16px;
    margin-top: 3px
}



.bulleted1 label {
    display: block;
    font-size: 1em;
    margin: 0 10px 0 5px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    word-wrap: break-word;
}



/* Pre-order Meals Page */
.preorder-meals,
.preorder-meals * {
    box-sizing: border-box;
}

.wordwrapMeals {
    word-break: break-word !important;
    word-break: break-all;
}

.preorder-meals {
    width: 100%;
}

.preorder-meals__row::after {
    content: '';
    display: table;
    clear: both;
}

.preorder-meals__item {
    width: 100%;
    padding: 15px;
    border-bottom: 2px solid #00589E;
}

.preorder-meals__item-image > img {
    display: block;
    max-width: 100%;
    height: auto;
    border: 0;
    vertical-align: middle;
}

.preorder-meals__item-image > div {
    display: block;
    max-width: 100%;
    height: 100%;
    border: 0;
    vertical-align: middle;
}

.preorder-meals__row > .preorder-meals__item:only-of-type {
    border: 0;
}

/* Meal - Name, Price and Description */
.preorder-meals__item-menu {
    display: table;
    width: 100%;
}

.preorder-meals__item-menu-name,
.preorder-meals__item-menu-price {
    display: table-cell;
}

    .preorder-meals__item-menu-name h4 {
        font-weight: bold;
    }

.preorder-meals__item-menu-price {
    text-align: right;
    padding-left: 15px;
}

    .preorder-meals__item-menu-price h4 {
        white-space: nowrap;
    }

.preorder-meals__item-menu-description {
    display: table-caption;
    caption-side: bottom;
}

/* Meal - Add to Cart
// Passenger, Quantity, Add to Cart
*/
.preorder-meals__item-cart {
    display: table;
    width: 100%;
}

.preorder-meals__item-cart-field {
    display: table-cell;
    vertical-align: bottom;
}

    .preorder-meals__item-cart-field > label {
        font-size: 14px !important;
    }

.preorder-meals__item-cart-field--pax {
    width: 60%;
}

.preorder-meals__item-cart-field--quantity {
    width: 40%;
}

/* Meal - Add to Cart - Quantity Selector */
.preorder-meals__item-cart-field--quantity-btn-group {
    display: table;
    width: 100%;
}

.preorder-meals__item-cart-field--quantity-input,
.preorder-meals__item-cart-field--quantity-btn {
    display: table-cell;
    vertical-align: bottom;
    height: 42px;
    padding: 0;
}

.preorder-meals__item-cart-field--quantity-btn {
    width: 30%;
}

.preorder-meals__item-cart-field--quantity-input {
    width: 40%;
}

.preorder-meals__item-cart-field--quantity-btn > button {
    width: 100%;
    height: 42px;
    padding: 0;
    border-radius: 0;
    border: 0;
    background: #f2f2f2;
    color: #333;
    font-weight: bold;
    font-size: 20px;
}

.preorder-meals__item-cart-field--quantity-btn > .preorder-meals__item-cart-field--quantity-btn-add {
    background-image: url(../images/icons/add-black.png);
    background-repeat: no-repeat;
    background-position: center center;
}

.preorder-meals__item-cart-field--quantity-btn > .preorder-meals__item-cart-field--quantity-btn-minus {
    background-image: url(../images/icons/minus-black.png);
    background-repeat: no-repeat;
    background-position: center center;
}

.preorder-meals__item-cart-field--add {
    display: table-caption;
    caption-side: bottom;
    padding-top: 15px;
}

    .preorder-meals__item-cart-field--add > button {
        width: 100%;
        line-height: 14px;
        font-size: 14px;
    }

@media screen and (min-width: 640px) {
    .preorder-meals {
        padding: 16px 8px 0;
    }

    .preorder-meals__row {
        padding-bottom: 16px;
    }

    .preorder-meals__item {
        border: 0;
        padding: 0 8px;
        width: 50%;
        float: left;
    }
}

@media screen and (min-width: 1200px) {
    .preorder-meals__item-cart-field--pax {
        width: 50%;
    }

    .preorder-meals__item-cart-field--quantity {
        width: 25%;
    }

    .preorder-meals__item-cart-field--add {
        display: table-cell;
        width: 25%;
    }
}

.pandemic_Background {
    width: 1168px;
    height: 140px;
    background: #EBF2ED 0% 0% no-repeat padding-box;
    opacity: 1;
}

.pandemic_Header {
    margin-top: 20px;
    margin-left: 20px;
    text-align: left;
    font: Bold 24px/32px PT Sans;
    letter-spacing: 0px;
    color: #358046;
    opacity: 1;
}

.pandemic_Content {
    margin-top: 20px;
    margin-left: 20px;
    text-align: left;
    color: #333333;
    opacity: 1;
    font: normal 16px/32px PT Sans;
    line-height: normal;
}

.viewbag_ErrorMessage {
    width: 40% !important;
    word-wrap: break-word !important;
}
/* ==========================================================================
    Start Sunwing  New Style
   ========================================================================== */
body.js-enabled #noscript {
    display: none;
}

@font-face {
    font-family: 'MullerNarrowExtraBold';
    font-style: normal;
    font-weight: normal;
    /*src: url('../../fonts/muller-narrow-cufonfonts-webfont/Fontfabric  MullerNarrowExtraBold.woff'), 
        url('Fontfabric  MullerNarrowExtraBold.woff') format('woff'); */
    src: url('MullerNarrowExtraBold.woff');
}

@font-face {
    font-family: 'MullerNarrowMedium';
    font-style: normal;
    font-weight: normal;
    /*src: url('../../fonts/muller-narrow-cufonfonts-webfont/Fontfabric  MullerNarrowMedium.woff'), url('Fontfabric  MullerNarrowMedium.woff') format('woff');*/
    src: url('MullerNarrowMedium.woff');
}

.innerWrapper {
    max-width: 71.25rem;
    margin-right: auto;
    margin-left: auto;
    z-index: 10;
}

.logo {
    width: 208px;
    height: 56px;
}

.loginArea {
    float: left;
    width: 100%;
    margin-top: 25px;
}

.loginLeft {
    float: left;
    width: 50%
}

    .loginLeft h2 {
        padding: 0px;
        margin: 0px;
        font-size: 46px;
        font-weight: 900;
        text-transform: uppercase;
        color: #595959;
        font-family: MullerNarrowExtraBold;
        margin-bottom: 10px;
    }

    .loginLeft img {
        float: left;
        width: 100%;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        border-bottom-left-radius: 10px;
        border-bottom-right-radius: 4rem;
        margin-bottom: 25px
    }

    .loginLeft ul {
        float: left;
        width: 100%;
        margin-top: 25px;
    }

        .loginLeft ul li {
            padding-left: 40px;
            margin-bottom: 20px;
            font-size: 20px;
            line-height: 24px;
            background-image: url('../images/tick.png');
            background-repeat: no-repeat;
            background-size: 24px 24px;
        }

.loginRight {
    float: left;
    width: 50%;
}

.loginRightForm {
    width: 70%;
    margin: 0px auto;
    margin-top: 20px;
    margin-bottom: 25px;
    -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
    -moz-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
    box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.3);
}

.logForm {
    width: 70%;
    margin: 0px auto;
    margin-top: 20px;
}

.loginRightFormIn {
    padding: 30px 40px 20px 40px;
    min-height: 400px;
}

.loginRightFormItem {
    width: 100%;
    margin-bottom: 15px;
}

    .loginRightFormItem label {
        font-size: 18px;
        line-height: 24px;
        padding: 0px;
        margin: 0px;
        margin-bottom: 8px;
    }

.emailItem {
    margin-top: 20px;
    float: left;
    margin-bottom: 0px;
}

.loginRightFormItem input {
    width: 100%;
    clear: both;
    display: block;
    width: 100%;
    height: 40px;
    padding: 5px 10px;
    line-height: 20px;
    font-size: 20px;
    color: #666;
    border-radius: 3px !important;
    border: 1px solid #999999;
    box-shadow: 0 1px 0 rgba(24, 24, 24, 0.1);
    box-sizing: border-box;
}

.loginRightFormItem .submitBtn {
    width: 100%;
    clear: both;
    display: block;
    width: 100%;
    height: 40px;
    padding: 5px 10px;
    font-size: 16px;
    font-weight: 400 !important;
    border-radius: 5px;
    background: #00589E;
    box-shadow: 0 1px 0 rgba(24, 24, 24, 0.1);
    box-sizing: border-box;
    margin-top: 25px;
}

.loginRightFormItem .loginRightFormItemBtn {
    float: left;
    text-align: left;
    color: #00589E;
    text-decoration: none;
    margin-top: 5px;
    font-size: 18px;
    font-weight: 500;
    line-height: 60px;
    padding: 0px;
    margin: 0px;
    background-color: transparent;
    border: 0px !important;
    box-shadow: 0 0px 0 rgba(24, 24, 24, 0.1);
}

.next_btn {
    margin-top: 20px;
}

.forgot {
    float: left;
    width: 100%;
    margin-top: 15px;
}

    .forgot a {
        text-decoration: none;
    }

        .forgot a:hover {
            background-color: #fff;
            color: #005B9E;
            text-decoration: underline;
        }

.loginRightFormLabel {
    margin-bottom: 25px;
}

.group-email {
    margin-top: 15px
}

.loginRightFormItem .loginRightFormItemBtn:hover {
    text-decoration: underline;
}

.login-left-text {
    float: left;
    font-size: 18px;
    font-weight: 600;
    line-height: 40px;
    color: #595959;
}

.login-right-link {
    float: right;
    border: 2px solid #00589E;
    color: #00589E;
    border-radius: 5px;
    font-size: 15px;
    font-weight: 600;
    line-height: 40px;
    padding: 0px 25px;
    text-decoration: none;
}

    .login-right-link:hover {
        background-color: #00589e;
        color: #fff;
        text-decoration: underline;
    }

.flightASbtn {
    border: 0px;
    background-color: transparent;
    color: #00589E;
    text-decoration: none;
    padding: 0px;
    margin: 0px;
    float: left;
    line-height: 20px;
    height: 20px;
    width: 85px;
    position: relative;
    top: -2px;
}
/* start side menu style */
.sidenav {
    height: 100%;
    width: 0px;
    position: fixed;
    z-index: 3;
    top: 0;
    right: -16px;
    background-color: #fff;
    overflow-x: hidden;
    transition: 0.5s;
    padding-top: 60px;
    -webkit-box-shadow: -5px 0px 25px -10px rgba(0,0,0,0.29);
    -moz-box-shadow: -5px 0px 25px -10px rgba(0,0,0,0.29);
    box-shadow: -5px 0px 25px -10px rgba(0,0,0,0.29);
    /*padding-left:16px;*/
    /* z-index:9999 !important */
}

.menuTitle {
    position: absolute;
    top: 0px;
    float: left;
    width: 100%;
    font-size: 1.5rem;
    text-align: left;
    text-transform: uppercase;
    margin: 0;
    color: #595959;
    font-family: MullerNarrowExtraBold;
    /*box-sizing: border-box; */
    padding: 20px 40px 20px 25px;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
}

.sidenav a {
    padding: 8px 0px 8px 25px;
    text-decoration: none;
    font-size: 18px;
    color: #333333;
    display: block;
    transition: 0.3s;
    color: #000;
    margin-right: 25px;
    line-height: 22px;
}

    .sidenav a:hover {
        color: #ff6000;
        background-color: #fff;
    }

.closebtn {
    position: absolute;
    top: 20px;
    right: 85px;
    font-size: 40px;
    margin-left: 0px;
    z-index: 9999;
    font-weight: 500;
    color: #333;
    text-decoration: none;
    padding: 5px !important;
}

    .closebtn:hover {
        background-color: #fff;
    }

.langualgeLinks {
    float: left;
    width: 100%;
    padding: 0px 0px 0px 0px !important;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    box-sizing: border-box;
    margin-top: 10px;
}

    .langualgeLinks a {
        float: left;
        text-align: center;
        margin: 10px 0px 10px 0px !important;
        color: #000 !important;
        line-height: 20px;
    }

.englink {
    float: left !important;
    padding-right: 25px !important;
    border-right: 1px solid #ccc;
}

.languageActive {
    color: #000 !important;
    font-weight: 600
}

    .langualgeLinks a:hover, .languageActive:hover {
        color: #ff6000 !important;
    }

.signout {
    float: left;
    margin-top: 10px;
    padding-bottom: 100px
}

#bodyblock {
    position: fixed;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(255,255,255,.001);
    display: none;
    z-index: 92;
    border: 0px
}
/* end side menu style */

/* start overview page style */
.innerWrapperIn {
    width: 100%;
    padding: 0px 10px;
    box-sizing: border-box;
}

.headerDown {
    border-bottom-right-radius: 1.875rem;
    -webkit-box-shadow: 0px 5px 25px -1px rgba(0,0,0,0.26);
    -moz-box-shadow: 0px 5px 25px -1px rgba(0,0,0,0.26);
    box-shadow: 0px 5px 25px -1px rgba(0,0,0,0.26);
    padding-top: 50px;
    position: relative;
    top: -55px;
    float: left;
    z-index: 90;
    width: 100%;
    background-color: #fff;
}

.headerDownArea {
    float: left;
    width: 100%;
}

.headerDownAdd {
    position: relative;
    top: -50px;
}

.header-imgArea {
    float: left;
    width: 275px;
    height: 130px;
    background-color: #eee;
    margin: 20px 0px;
    border-radius: 4px;
    position: relative;
}

.header-imgAreaIn {
    float: left;
    width: 100%;
    height: 100%;
    border-radius: 4px;
    background-color: #eee;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
}

    .header-imgAreaIn img {
        position: absolute;
        max-width: 100%;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        transform: translate( -50%, -50%);
    }

.header-imgArea-Icon {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    background-color: #fff;
}

.header-imgArea-imgIcon {
    position: absolute;
    left: 8px;
    bottom: 8px;
}

    .header-imgArea-imgIcon span {
        float: left;
        margin: 5px 2px;
    }

.header-imgArea-videoIcon {
    position: absolute;
    left: 39px;
    bottom: 8px;
}

    .header-imgArea-videoIcon span {
        float: left;
        margin: 5px 2px;
    }

.header-imgArea-mapIcon {
    position: absolute;
    left: 71px;
    bottom: 8px;
}

    .header-imgArea-mapIcon span {
        float: left;
        margin: 5px 4px;
    }

.header-middle-title {
    font-size: 34px;
    color: #FF6000;
    font-family: MullerNarrowExtraBold;
    text-transform: uppercase;
    margin: 0px;
    padding: 0px;
}

    .header-middle-title span {
        font-size: 16px;
        font-weight: 300 !important;
        color: #333;
        text-transform: lowercase;
        font-family: 'PT Sans', sans-serif;
    }

.header-middle-subtitle {
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
    color: #333333;
    margin: 0px;
    padding: 0px;
}

.header-middle-p {
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    color: #333333;
    margin: 0px;
    padding: 0px;
}

.header-middle-div {
    float: left;
    margin-top: 10px;
    width: 100%
}

    .header-middle-div div {
        float: left;
        margin-right: 20px
    }

        .header-middle-div div span {
            float: left;
            position: relative;
        }

.header-middle-divDate {
    width: 300px
}

.header-middle {
    float: left;
    width: 560px;
    margin: 20px 0px 20px 20px;
}

.header-right {
    float: left;
    width: 265px;
    margin: 20px 0px;
    text-align: right;
}

    .header-right p {
        float: right;
        font-size: 16px;
        line-height: 24px;
        padding: 0px;
        margin: 0px;
    }

.agentLink {
    color: #00589E;
    text-decoration: none !important;
}

    .agentLink:hover {
        color: #00589E;
        text-decoration: underline;
        background-color: #fff;
    }

.eDoc-Btn {
    float: right;
    background: #00589E;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    color: #fff;
    padding: 0px 30px;
    border-radius: 4px;
    text-decoration: none;
    margin-bottom: 10px;
    position: relative;
}

    .eDoc-Btn.eDoc-Btn-Fr {
        line-height: 25px;
        height: auto;
    }

    .eDoc-Btn:hover {
        background-color: #00589E;
        color: #fff
    }

.new-breadcrumbs {
    position: relative;
    top: -45px;
    font-size: 16px;
}

    .new-breadcrumbs ul li {
        float: left
    }

        .new-breadcrumbs ul li:first-child {
            margin-right: 5px
        }

.covid-alert {
    position: relative;
    top: -25px;
}

.covid-alert-checklist {
    top: -45px;
}

.covid-alert-in {
    background: var(--background-warning) 0% 0% no-repeat padding-box;
    background: #FFF8E6 0% 0% no-repeat padding-box;
    border-radius: 4px;
    padding: 15px;
    position: relative;
    float: left;
    width: 100%;
    box-sizing: border-box;
}

    .covid-alert-in p {
        float: left;
        font-size: 16px;
        color: #333333;
        font-weight: 600;
        width: 100%;
        line-height: 20px;
        margin-bottom: 5px;
    }

    .covid-alert-in .alert-data {
        float: left;
        font-size: 16px;
        color: #333333;
        margin-bottom: 20px;
        width: 100%
    }

    .covid-alert-in a {
        float: right;
        position: relative;
        top: 30px;
        background: #00589E 0% 0% no-repeat padding-box;
        border-radius: 4px;
        font-size: 12px;
        font-weight: 600;
        color: #fff;
        padding: 0px 15px;
        line-height: 40px;
        text-decoration: none;
    }

.covid-alert-in-btn {
    border-radius: 5px;
    background: #00589E !important;
    border: 0px !important;
    padding: 5px 20px 0px 20px !important;
    min-height: 40px !important;
    line-height: 28px;
    font-weight: 300 !important;
}

.covid-alert-in-btn-pdf {
    height: 30px;
}

    .covid-alert-in-btn-pdf span {
        position: relative;
        top: -1px
    }

    .covid-alert-in-btn-pdf font {
        position: relative;
        top: -3px
    }

.flight-links {
    background-color: #fff;
    border: 0px;
    width: 100%;
    color: #333;
    text-align: left
}

.sar-tab-button {
    background-color: #e4e4e4;
    width: 100%;
    border: 0px;
    font-size: 20px;
    font-weight: 100;
    color: #fff;
}

    .sar-tab-button:hover {
        background: transparent;
        color: #5e5e5e;
    }

.overview-text {
    float: left;
    width: 100%;
    margin-top: 5px;
}

.overview-text-h2 {
    float: left;
    width: 100%;
    font-size: 44px;
    color: #595959;
    font-family: MullerNarrowExtraBold;
    font-weight: 700;
    text-transform: uppercase;
    margin: 0px;
    margin-top: 20px;
    padding: 0px;
}

.overview-text-p {
    float: left;
    width: 100%;
    font-size: 16px;
    color: #333;
    margin: 0px;
    padding: 0px;
    margin-top: 16px;
    margin-bottom: 48px;
}

.hotel-area {
    float: left;
    width: 100%;
}

.hotel-area-h2 {
    background: var(--onyx-background) 0% 0% no-repeat padding-box;
    background: #F2F2F2 0% 0% no-repeat padding-box;
    border-radius: 4px;
    width: 100%;
    font-size: 34px;
    color: #595959;
    box-sizing: border-box;
    padding: 10px 20px;
    margin: 0px;
    margin-bottom: 32px;
}

.hotel-area-row {
    width: 100%;
    float: left;
    box-sizing: border-box;
    margin-bottom: 16px
}

.hotel-area-row-left {
    float: left;
    width: 35%;
    height: 210px;
    border-radius: 4px;
    background-color: #eee;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
}

    .hotel-area-row-left img {
        position: absolute;
        max-width: 100%;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        transform: translate( -50%, -50%);
    }

.hotel-area-row-right {
    float: left;
    width: 65%;
    box-sizing: border-box;
    padding-left: 20px
}

    .hotel-area-row-right h3, .hotel-area-row-right h4 {
        font-size: 24px;
        color: #595959;
        line-height: 30px;
        padding: 0px;
        margin: 0px;
        float: left;
        width: 100%;
    }

    .hotel-area-row-right h6 {
        font-size: 16px;
        color: #595959;
        line-height: 30px;
        padding: 0px;
        margin: 0px;
        float: left;
        width: 100%;
        font-weight: 600;
    }

    .hotel-area-row-right span {
        font-size: 16px;
        color: #333333;
        margin-bottom: 30px;
        float: left;
        width: 100%;
    }

    .hotel-area-row-right p {
        font-size: 16px;
        color: #333333;
        float: left;
        width: 100%;
        margin-bottom: 5px
    }

.flight-area {
    margin-top: 25px !important;
}

.hotel-area-row-50 {
    float: left;
    width: 50%;
    box-sizing: border-box;
    padding-right: 15px;
}

    .hotel-area-row-50 .slogo {
        width: 95px;
    }

    .hotel-area-row-50 .flight-info {
        float: left;
        width: 100%;
        font-size: 16px;
        color: #333;
        margin-bottom: 5px;
    }

    .hotel-area-row-50 .flight-addinfo {
        float: left;
        font-size: 16px;
        color: #005B9E;
        text-decoration: none;
        font-weight: 500;
        background-color: transparent;
        border: 0px;
        width: auto;
        height: auto;
        padding: 0px
    }

        .hotel-area-row-50 .flight-addinfo:hover {
            text-decoration: underline;
            background-color: #fff;
        }

.link-to-button {
    font-size: 16px;
    color: #005B9E;
    text-decoration: none;
    font-weight: 500;
    background-color: transparent;
    border: 0px;
    width: auto;
    height: auto;
    padding: 0px;
    display: inline-block;
    margin-top: 5px
}

    .link-to-button:hover {
        text-decoration: underline;
        background-color: #fff;
    }

.link-to-button-blue {
    position: absolute;
    font-size: 16px;
    color: #333333;
    background-color: #00589E;
    color: #fff;
    line-height: 40px;
    padding: 0px 20px;
    top: 110px;
    right: 20px;
    border-radius: 4px;
    text-decoration: none;
    width: auto
}

    .link-to-button-blue:hover {
    }

.hotel-area-row-50 .flight-destinations {
    float: left;
    width: 100%;
    margin-top: 32px;
}

    .hotel-area-row-50 .flight-destinations .fd-left, .hotel-area-row-50 .flight-destinations .fd-right {
        float: left;
        font-size: 24px;
        color: #595959;
        font-weight: 700;
        margin-bottom: 8px;
    }

    .hotel-area-row-50 .flight-destinations .fd-mid {
        float: left;
        margin: 8px 10px;
    }

.hotel-area-row-50 .flight-times {
    float: left;
    width: 100%;
    font-size: 16px;
    color: #333333;
    margin-bottom: 8px;
}

.hotel-area-row-50-table {
    float: left;
    width: 100%;
    margin-top: 32px;
}

.hotel-area-row-50-tablerow {
    float: left;
    width: 100%;
}

    .hotel-area-row-50-tablerow p {
        float: left;
        width: 50%;
        font-size: 16px;
        text-align: left;
        margin-bottom: 5px;
    }

.hotel-area-row-box {
    float: left;
    width: 100%;
    box-sizing: border-box;
    height: 200px;
    border: 1px solid #CCCCCC;
    border-radius: 4px;
    margin-top: 32px;
    position: relative;
}
/*.hotel-area-row-box-img{
    float:left;
    width:175px;
    margin-right:20px
}*/
.hotel-area-row-box-img {
    float: left;
    width: 35%;
    height: 100%;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    background-color: #eee;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    margin-right: 15px;
}

    .hotel-area-row-box-img img {
        position: absolute;
        max-width: 100%;
        width: auto;
        height: 100%;
        top: 50%;
        left: 50%;
        transform: translate( -50%, -50%);
    }

.hotel-area-row-box h6 {
    font-size: 16px;
    font-weight: 600;
    color: #333333;
    margin-top: 20px;
}

.hotel-area-row-box h4 {
    font-size: 16px;
    font-weight: 600;
    color: #333333;
    margin-top: 20px;
}

.hotel-area-row-box p {
    font-size: 16px;
    color: #333333;
    margin-right: 10px;
}

.hotel-area-row-box a {
    position: absolute;
    font-size: 16px;
    color: #333333;
    background-color: #00589E;
    color: #fff;
    line-height: 40px;
    padding: 0px 20px;
    top: 140px;
    right: 20px;
    border-radius: 4px;
    text-decoration: none;
}

.hotel-area-row-33 {
    float: left;
    width: 33.3%;
    box-sizing: border-box;
    padding-right: 15px;
    /*position:relative;*/
}

    .hotel-area-row-33 .imgArea {
        float: left;
        width: 100%;
        height: 210px;
        border-radius: 4px;
        background: #eee;
        margin-bottom: 15px;
        overflow: hidden;
    }

    .hotel-area-row-33 h3, .hotel-area-row-33 h6 {
        font-size: 24px;
        font-weight: 600;
        text-align: left;
        color: #595959;
        margin-bottom: 0px;
    }

    .hotel-area-row-33 a {
        font-size: 16px;
        text-align: left;
        color: #005B9E;
        text-decoration: none
    }

    .hotel-area-row-33 p {
        font-size: 16px;
        text-align: left;
        font-weight: 600;
        color: #333333;
        text-decoration: none;
        margin-top: 20px
    }

    .hotel-area-row-33 span {
        width: 100%;
        font-size: 16px;
        text-align: left;
        color: #333333;
        text-decoration: none;
        margin-bottom: 5px;
        display: block
    }

.excursionsImg {
    border-bottom-right-radius: 1.875rem !important;
    height: 165px !important;
    position: absolute;
    top: 0px;
    z-index: 10
}

.excursionsImgIn {
    float: left;
    width: 100%;
    height: 165px;
    border-radius: 4px;
    background-color: #eee;
    position: relative;
    box-sizing: border-box;
    border-bottom-right-radius: 1.875rem !important;
    border-bottom-left-radius: 0.30rem !important;
    overflow: hidden;
}

    .excursionsImgIn img {
        position: absolute;
        max-width: 100%;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        transform: translate( -50%, -50%);
    }

.excursionsImgTitle {
    float: left;
    width: 100%;
    border-bottom-right-radius: 1.875rem !important;
    height: 45px !important;
    position: absolute;
    top: 0px;
    z-index: 1;
    padding-top: 165px;
    background-color: #2A3F64 !important;
    font-size: 20px;
    color: #fff;
    font-family: MullerNarrowExtraBold;
    line-height: 45px;
    text-transform: uppercase;
}

.excursionsImgTitleText {
    padding-left: 15px;
}

.excursionsImgTitleIcon {
    position: absolute;
    right: 30px;
    top: 180px;
}

.transportation-image {
    float: left;
    width: 100%;
    height: 200px;
    border-radius: 4px;
    background-color: #eee;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
}

    .transportation-image img {
        position: absolute;
        max-width: 100%;
        width: 100%;
        height: auto;
        top: 50%;
        left: 50%;
        transform: translate( -50%, -50%);
    }

.newBtn {
    float: left;
    background: #00589E;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    color: #fff !important;
    padding: 0px 30px;
    border-radius: 4px;
    text-decoration: none;
    margin-bottom: 10px;
}

    .newBtn:hover {
        background: #00589E;
        color: #fff;
    }

.transportationBtn {
    margin-top: 20px;
    margin-right: 20px;
}

.font-weight-600 {
    font-weight: 600
}

.padding-top-10 {
    padding-top: 10px
}

.padding-right-0 {
    padding-right: 0px
}

.margin-bottom-30 {
    margin-bottom: 30px !important
}

.margin-bottom-20 {
    margin-bottom: 20px !important
}

.margin-bottom-10 {
    margin-bottom: 10px !important
}

.margin-top-10 {
    margin-top: 10px !important
}
/* end overview page style */
/* start checklist page style */
.headDownMenu {
    top: -75px;
    background: #F2F2F2;
    padding: 15px;
    padding-top: 40px;
    position: relative !important;
    float: left;
    width: 100%;
    box-sizing: border-box;
    border-bottom-right-radius: 1.875rem;
    z-index: 89 !important;
}

.headDownMenuIn {
    height: 65px;
}

    .headDownMenuIn ul {
        float: left;
        margin: 0px;
        padding: 0px;
        width: 100%
    }

        .headDownMenuIn ul li {
            float: left;
            margin: 0px;
            padding: 0px;
            width: 19.5%;
            text-align: center;
            font-size: 20px;
            color: #000;
            font-family: MullerNarrowMedium;
            border-right: 1px solid #CCCCCC
        }

            .headDownMenuIn ul li:last-child {
                border-right: 0px;
            }

            .headDownMenuIn ul li span {
                display: block;
                margin: 5px auto;
                font-size: 24px
            }

            .headDownMenuIn ul li a:link, .headDownMenuIn ul li a:visited {
                color: #595959;
                text-decoration: none
            }

            .headDownMenuIn ul li a:hover, .headDownMenuIn ul li a:active {
                text-decoration: underline
            }

.checklist-tabs {
    float: left;
    width: 100%;
    position: relative;
    top: -45px;
}

    .checklist-tabs h2 {
        font-size: 34px;
        color: #595959;
        margin-bottom: 15px;
    }

    .checklist-tabs p {
        font-size: 16px;
        color: #595959;
    }

.clist-tabs {
    display: flex;
    list-style-type: none;
    border-bottom: 1px solid #ccc;
    overflow-x: auto;
    margin-top: 25px;
}

.tab-button {
    width: 20%
}

.clist-tabs a {
    display: block;
    padding: 10px;
    text-decoration: none;
    text-transform: capitalize;
    border-bottom: 2px solid transparent;
    position: relative;
    margin-bottom: 0;
    font-family: MullerNarrowMedium;
    text-align: center;
    text-transform: uppercase;
    color: #595959;
}

    .clist-tabs a.active {
        font-family: MullerNarrowExtraBold;
    }

        .clist-tabs a.active::after {
            content: '';
            width: 100%;
            height: 3px;
            background-color: #595959;
            position: absolute;
            bottom: -2px;
            left: 0;
            border-radius: 4px;
        }

    .clist-tabs a:hover {
        background-color: #fff;
        color: #FF6000;
    }

        .clist-tabs a:hover::after {
            background-color: #FF6000;
        }

.tab-panel {
    display: none;
    font-size: 14px;
    margin-top: 15px;
}

.tab-boxes {
    float: left;
    width: 49.2%;
    border: 1px solid #CCCCCC;
    border-radius: 4px;
    position: relative;
    box-sizing: border-box;
    margin-bottom: 20px;
    margin-right: 10px;
    height: auto;
    height: 225px
}

    .tab-boxes.tab-boxes-insurance-large {
        height: 240px;
    }

.tab-panel > .tab-boxes:nth-of-type(even) {
    margin-right: 0px;
    float: right;
}

.tab-boxesImg {
    float: left;
    width: 30%;
    height: 100%;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px;
    background-color: #eee;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    margin-right: 15px
}

    .tab-boxesImg img {
        position: absolute;
        /*max-width: 100%;*/
        width: auto;
        height: 100%;
        top: 50%;
        left: 50%;
        transform: translate( -50%, -50%);
    }

.bg-light-gray {
    background-color: #F2F2F2
}
/*.tab-boxes img {
    float: left;
    width: 170px;
    height: 180px;
    margin-right: 15px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}*/
.tab-boxes h4 {
    font-size: 16px;
    color: ##333333;
    margin-top: 15px;
    display: block;
}

.tab-boxes p {
    font-size: 16px;
    color: #333333;
    margin-top: 15px;
    display: block;
    margin-top: 0px;
    display: block;
    padding-right: 10px
}

.tab-boxes span {
    /*font-size: 14px;
    color: #B10000;
    margin-top: 15px;
    display: block;
    margin-top: 10px;*/
}

    .tab-boxes span .icon {
        left: 34%;
    }

.tab-boxes p .icon {
    left: 34%;
}

.tab-boxes span.success {
    color: #046239 !important;
    /*position:absolute;left:0px;top:-10px*/
}

.success {
    position: absolute;
    left: 200px;
    bottom: 25px
}

.success-paymentpage {
    position: absolute;
    padding: 10px;
}

.success span {
    position: absolute;
    left: -20px;
    top: 0px
}

.tab-boxes span img {
    position: relative;
    width: 16px;
    height: 16px;
    margin-right: 5px
}

.tab-boxes .tab-btn {
    position: absolute;
    right: 20px;
    bottom: 20px;
    background: var(--ocean-blue) 0% 0% no-repeat padding-box;
    background: #00589E 0% 0% no-repeat padding-box;
    border-radius: 4px;
    font-size: 18px;
    color: #fff;
    padding: 0px 25px;
    line-height: 40px;
    text-decoration: none;
    font-family: 'MullerNarrowMedium';
    font-weight: 100 !important
}

.tab-boxes .tab-btn-line {
    border: 1px solid #00589E;
    background-color: #fff;
    color: #00589E;
    padding: 0px 15px;
}

.tab-panel.active {
    display: block;
}

.footer-area {
    background-color: #333 !important;
    padding: 25px 0px
}

.footer-links-area {
    float: left;
    width: 16.6%
}

.footer-top {
    float: left;
    width: 100%;
    margin-bottom: 40px;
}

.footer-links-area ul {
    float: left;
    margin: 0px;
    padding: 0px
}

    .footer-links-area ul li {
        float: left;
        margin: 0px;
        padding: 0px
    }

        .footer-links-area ul li a {
            color: #fff;
            text-decoration: none;
            font-size: 1rem;
            line-height: 28px;
            font-weight: 300 !important;
        }

            .footer-links-area ul li a:hover {
                background-color: transparent;
                text-decoration: underline
            }

.footer-mid {
    float: left;
    width: 100%;
}

.footer-bottom {
    float: left;
    width: 100%;
    color: #fff;
    margin-top: 10px;
    font-size: 0.8750em;
    text-align: center
}

    .footer-bottom a {
        color: #fff;
        text-decoration: none
    }

        .footer-bottom a:hover {
            background-color: transparent;
            text-decoration: underline
        }

.backBtn {
    text-align: left;
    font: normal normal normal 16px/20px PT Sans;
    letter-spacing: 0px;
    color: #333333;
    line-height: 40px;
    text-decoration: none;
    font-weight: 500
}

    .backBtn span {
        position: relative;
        left: -5px;
        float: left;
        width: 15px;
        height: 40px
    }

.our-countries {
    float: right
}

    .our-countries span {
        float: left;
        color: #fff;
        font-size: 18px;
        font-weight: 600;
        margin-left: 20px;
        margin-right: 10px;
        line-height: 40px
    }

    .our-countries img {
        float: left;
        width: 50px;
        margin-right: 5px;
        margin-top: 8px
    }

.redirectbth {
    width: 210px;
    margin: 50px auto 200px auto;
    display: flex;
    align-items: center !important;
    position: relative;
    z-index: 10;
}

    .redirectbth .btn {
        padding-left: 30px !important;
    }

    .redirectbth .icon {
        left: 0px !important;
        top: 18px !important;
        padding-left: 5px !important;
        padding-right: 15px !important;
    }

.cardForm {
    margin: 25px 20px 125px 20px
}

    .cardForm label {
        margin-bottom: 15px;
    }

        .cardForm label a.btn_blue, button.btn_blue, input[type="submit"].btn_blue {
            line-height: 0.25em !important;
        }

.riuCard .starcard-item--info---column {
    width: 25%
}






















/* start agent popup*/
.agentPopup {
    position: fixed;
    top: 0px;
    left: 0px;
    background: rgba(0,0,0,0.50);
    width: 100%;
    height: 100%;
    display: none;
    z-index: 999
}

.agentPopupContent {
    width: 500px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 40px;
    margin-top: 100px;
    box-shadow: 0px 2px 6px rgb(0 0 0);
    border-radius: 3px;
    background: #fff;
    position: relative
}

.agentPopupContentBig {
    width: 800px;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 40px;
    margin-top: 100px;
    box-shadow: 0px 2px 6px rgb(0 0 0);
    border-radius: 3px;
    background: #fff;
    position: relative
}

.agentPopupContentIn {
    width: 100%;
}

    .agentPopupContentIn h2 {
        margin-top: 0px
    }

.agentCloseButton {
    width: 36px;
    height: 36px;
    position: absolute;
    top: -20px;
    right: -20px;
    border-radius: 20px;
    background: #FF0000;
    font-size: 24px;
    text-align: center;
    color: #fff;
    text-decoration: none;
    line-height: 10px;
}

    .agentCloseButton:hover {
        background: #ff0000;
    }

.close-icon {
    position: relative;
    top: 2px;
    left: -1px
}

.aPC {
    width: 100%;
    margin-bottom: 15px
}

.aPCLeft {
    float: left;
    width: 25%;
    font-weight: 600;
    padding: 0px;
    margin: 0px
}

.aPCRight {
    width: 75%;
    padding-left: 25%;
}
/* end agent popup*/
.icon-credit-card {
    font-size: 30px !important;
    position: relative !important;
    margin: 0px !important;
    top: 2px !important;
}

.icon-special-assistance {
    font-size: 30px !important;
    position: relative !important;
    margin: 0px !important;
    top: 2px !important;
}

.color-orange {
    color: #FF6000 !important;
}

.color-white {
    color: #FFF !important;
}

.color-black {
    color: #000 !important;
}

.color-gray {
    color: #58595B !important;
}

.color-red {
    color: #ff0000 !important;
}

.color-yellow {
    color: #F4AE11 !important;
}

.MBPIcon-alert-small {
    width: 16px !important;
    margin-right: 5px !important;
    margin-bottom: 0px !important;
}

.MBPIcon-my-bookings-small {
    width: 16px !important;
    margin-right: 5px !important;
    margin-bottom: 0px !important;
}

.MBPIcon-getyourdoc-small {
    left: -10px
}

.icon-my-bookings {
    position: relative;
    top: 2px
}

.icon-duration {
    width: 25px
}

.icon-calendar {
    position: relative;
    left: 15px
}

.MBPIcon-calenda-small {
    width: 16px !important;
    float: left !important;
    left: 0px;
    top: 2px;
    margin-right: 10px;
    margin-bottom: 0px !important;
}

.MBPIcon-flight-big {
    float: left;
    width: 50px
}

.MBPIcon-flight-small-rotate90 {
    float: left;
    width: 20px;
    margin: 5px 12px 0px 12px;
    transform: rotate(90deg); /* Equal to rotateZ(90deg) */
}

.width-100 {
    width: 100% !important;
}

.width-70 {
    width: 70% !important;
}

.margin-0px-top {
    margin-top: 0px !important
}

.margin-15px-top {
    margin-top: 15px;
}

.margin-25px-top {
    margin-top: 25px;
}

.margin-0px-bottom {
    margin-bottom: 0px !important
}

.margin-50px-bottom {
    margin-bottom: 50px !important
}

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.position-relative {
    position: relative
}

.top-0px {
    top: 0px
}

.min-height-200px {
    min-height: 200px
}

.min-height-450px {
    min-height: 450px
}
/* end checklist page style */
@media only screen and (min-width: 991px) and (max-width: 1024px) {
    .innerWrapperIn {
        padding: 0px 10px;
        box-sizing: border-box;
    }

    .header-middle {
        width: 430px;
    }

    .hotel-area-row-box-img {
        width: 35%;
    }

        .hotel-area-row-box-img img {
            width: auto;
            height: 100%;
        }

    .tab-boxes {
        width: 48%
    }

        .tab-boxes img {
            height: 200px;
            border-bottom-left-radius: 4px;
            border-top-left-radius: 4px
        }

        .tab-boxes p {
            font-size: 14px
        }

    .sub-nav-group {
        margin-bottom: 200px
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .innerWrapper {
        max-width: 100%;
        margin-right: 15px;
        margin-left: 15px;
        box-sizing: border-box;
    }

    .innerWrapperIn {
        padding: 0px 10px;
        box-sizing: border-box;
    }

    .loginLeft, .loginRight {
        width: 70%;
        margin: 0% 15%;
    }

    .header-imgArea {
        width: 200px;
    }

    .header-middle {
        width: 380px;
    }

    .header-middle-divDate {
        position: relative;
        top: 10px;
        left: -10px
    }

    .header-right {
        width: 190px;
    }

    .hotel-area-row-box {
        height: 200px;
    }

    .hotel-area-row-box-img {
        width: 45%;
    }

        .hotel-area-row-box-img img {
            width: auto;
            height: 100%;
        }

    .hotel-area-row-box a {
        top: 140px
    }

    .tab-boxes {
        width: 48%
    }

        .tab-boxes img {
            height: 220px;
            border-bottom-left-radius: 4px;
            border-top-left-radius: 4px
        }

        .tab-boxes p {
            font-size: 14px
        }

        .tab-boxes .tab-btn {
            font-size: 10px;
            line-height: 30px
        }

    .sub-nav-group {
        margin-bottom: 200px
    }
}

@media only screen and (min-width: 640px) and (max-width: 768px) {
    .innerWrapperIn {
        padding: 0px 10px;
        box-sizing: border-box;
    }

    .loginLeft, .loginRight {
        width: 100%
    }

    .loginRightForm {
        width: 90%;
    }

    .loginRightFormIn {
        padding: 30px 30px 20px 30px;
    }

    #mybookingportal .mobile-cart {
        display: block;
    }

    .header-imgArea {
        width: 100%;
        height: 200px;
    }

    .header-middle {
        width: 70%;
        margin-left: 0px
    }

    .header-middle-divDate {
        position: relative;
        top: 0px;
        left: -10px
    }

    .header-right {
        width: 30%;
    }

    .hotel-area-row-box-img {
        width: 35%;
    }

        .hotel-area-row-box-img img {
            width: auto;
            height: 100%;
        }

    .hotel-area-row-box p {
        font-size: 14px
    }

    .hotel-area-row-box a {
        top: 115px
    }

    .hotel-area-row-left img {
        width: auto;
        height: 100%;
    }

    .headDownMenuIn ul li {
        width: 33.3%
    }

    .tab-boxes {
        width: 100%
    }

    .tab-button a {
        font-size: 14px
    }

    .sub-nav-group {
        margin-bottom: 200px
    }
}

@media only screen and (min-width: 450px) and (max-width: 640px) {
    .innerWrapperIn {
        padding: 0px 5px;
        box-sizing: border-box;
    }

    .loginLeft, .loginRight {
        width: 100%
    }

    .loginRightForm {
        width: 100%;
    }

    .loginRightFormIn {
        padding: 30px 30px 20px 30px;
    }

    .riuCard .starcard-item--info---column {
        width: 50%;
    }

    #bodyblock {
        width: 95% !important;
    }

    .headerDown {
        background-color: transparent
    }

    .header-imgArea {
        width: 100%;
        height: 150px;
        margin-bottom: 0px;
    }

    .header-middle {
        width: 65%;
        margin-left: 0px
    }

    .header-middle-divDate {
        position: relative;
        top: 10px;
        left: -10px
    }

    .header-middle-div div {
        width: 100%;
        margin-right: 0px
    }

        .header-middle-div div .icon-duration {
            left: 0px;
        }

    .icon-duration, .icon-calendar {
        height: 20px;
    }

    .header-middle-divDate .icon-calendar {
        left: 10px;
        width: 35px
    }

    .header-right {
        width: 35%;
    }

    .eDoc-Btn {
        width: 75%
    }

    .agentPopupContent {
        width: 90%;
        margin-top: 20px;
        padding: 20px
    }

    .close-icon {
        top: 8px;
        left: -2px;
    }

    .hotel-area-row-50 .flight-destinations .fd-left, .hotel-area-row-50 .flight-destinations .fd-right {
        font-size: 20px
    }

    .hotel-area-row-box {
        height: 200px
    }

    .hotel-area-row-box-img {
        width: 35%;
    }

        .hotel-area-row-box-img img {
            width: auto;
            height: 100%;
        }

    .hotel-area-row-box p {
        font-size: 12px
    }

    .hotel-area-row-box a {
        top: 150px;
        font-size: 10px;
        line-height: 30px
    }

    .hotel-area-row-left img {
        width: auto;
        height: 100%;
    }

    .hotel-area-row-33 {
        width: 50%
    }

    .transportation-image img {
        width: auto;
        height: 100%;
    }

    .headDownMenuIn ul li {
        width: 50%
    }

    .tab-boxes {
        width: 100%
    }

    .tab-button a {
        font-size: 14px
    }

    .sub-nav-group {
        margin-bottom: 200px
    }

    .headerDown {
        top: -85px;
        z-index: 2;
        box-shadow: 0px 5px 25px -15px rgb(0 0 0 / 26%);
    }
}

@media only screen and (min-width: 320px) and (max-width: 450px) {
    .innerWrapperIn {
        padding: 0px 5px;
        box-sizing: border-box;
    }

    #addpayment_CheckBalanceVoucher, #addpayment_RedeemVoucher, #addpayment_trigger {
        width: 400px;
    }

    .loginLeft, .loginRight {
        width: 100%
    }

    .loginRightForm {
        width: 100%;
    }

    .loginRightFormIn {
        padding: 30px 30px 20px 30px;
    }

    .riuCard .starcard-item--info---column {
        width: 100%;
    }

    .links-col-2 {
        float: left;
        width: 100%;
    }

    .bbb-logo {
        margin-left: 75px;
    }

    .tico-logo {
        margin-left: 50px
    }

    .certified {
        width: 100%;
    }

        .certified li, .social-media li {
            width: 50%;
            float: left
        }

    .language-links li {
        width: 48%;
        padding: 0px;
        text-align: center;
    }

    #bodyblock {
        width: 95% !important;
    }

    .headerDown {
        background-color: transparent
    }

    .header-imgArea {
        width: 100%;
        height: 125px;
        margin-bottom: 0px;
    }

    .header-middle {
        width: 100%;
        margin-left: 0px;
        margin-top: 5px
    }

    .header-middle-divDate {
        position: relative;
        top: 10px;
        left: -10px
    }

    .header-middle-div div {
        width: 100%;
        margin-right: 0px
    }

    .icon-duration, .icon-calendar {
        height: 20px;
    }

    .header-middle-divDate .icon-calendar {
        left: 10px;
        width: 35px
    }

    .header-right {
        width: 100%;
        text-align: left
    }

        .header-right p {
            float: left;
            width: 100%
        }

    .eDoc-Btn {
        float: left;
        width: 35%;
    }

    .agentPopupContent {
        width: 90%;
        margin-top: 20px;
        padding: 20px
    }

    .close-icon {
        top: 10px;
        left: -2px;
    }

    .agentPopupContentIn h2 {
        font-size: 14px
    }

    .aPC {
        font-size: 12px;
        margin-bottom: 10px
    }

    .hotel-area-row-50 {
        width: 100%
    }

    .hotel-area-row-50 {
        margin-bottom: 25px
    }

    .hotel-area-row-box {
        height: 140px;
    }

    .hotel-area-row-box-img {
        width: 35%;
    }

        .hotel-area-row-box-img img {
            width: auto;
            height: 100%;
        }

    .hotel-area-row-box p {
        font-size: 12px
    }

    .hotel-area-row-box a {
        top: 90px;
        font-size: 10px;
        line-height: 30px
    }

    .hotel-area-row-left {
        width: 100%;
        height: 125px
    }

    .hotel-area-row-right {
        width: 100%;
        padding-left: 0px
    }

    .hotel-area-row-33 {
        width: 100%
    }

    .transportation-image img {
        width: auto;
        height: 100%;
    }

    .headDownMenuIn ul li {
        width: 50%
    }

    .tab-boxes {
        width: 100%
    }

        .tab-boxes .tab-btn {
            font-size: 10px;
            line-height: 30px
        }

    .tab-button a {
        font-size: 10px
    }

    .sub-nav-group {
        margin-bottom: 200px
    }

    .headerDown {
        top: -85px;
        z-index: 2;
        box-shadow: 0px 5px 25px -15px rgb(0 0 0 / 26%);
    }
}

@media only screen and (min-width: 240px) and (max-width: 320px) {
    #redeemVouchererrorpopup_message {
        margin-left: 0px !important;
    }

    .innerWrapperIn {
        padding: 0px 5px;
        box-sizing: border-box;
    }

    .loginLeft, .loginRight {
        width: 100%
    }

    .loginRightForm {
        width: 100%;
    }

    .loginRightFormIn {
        padding: 30px 30px 20px 30px;
    }

    .footer-container .links-col-2 {
        width: 100%;
    }

    .
    bbb-logo {
        margin-left: 25px;
    }

    .tico-logo {
        margin-left: 25px
    }

    .certified {
        width: 100%;
    }

        .certified li, .social-media li {
            width: 50%;
            float: left
        }

    .language-links li {
        width: 48%;
        padding: 0px;
        text-align: center;
    }

    #bodyblock {
        width: 95% !important;
    }

    .price-table--prices .price .price-columns .howmuch {
        font-size: 16px;
    }

    .eDoc-Btn {
        float: left;
        width: 45%;
    }

    .agentPopupContent {
        width: 94%;
        margin-top: 20px;
        padding: 10px
    }

    .close-icon {
        top: 10px;
        left: -2px;
    }

    .agentPopupContentIn h2 {
        font-size: 12px
    }

    .aPC {
        font-size: 10px;
        margin-bottom: 5px
    }

    .agentCloseButton {
        right: -10px
    }

    .hotel-area-row-50 .flight-destinations .fd-left, .hotel-area-row-50 .flight-destinations .fd-right {
        font-size: 20px
    }

    .hotel-area-row-box h4 {
        margin-top: 10px
    }

    .excursionsImg, .excursionsImgIn {
        height: 125px !important;
    }

    .excursionsImgTitle {
        padding-top: 125px
    }

    .transportation-image img {
        width: auto;
        height: 100%;
    }

    .headDownMenuIn ul li {
        width: 100%
    }

    .tab-boxes {
        width: 100%
    }

        .tab-boxes .tab-btn {
            font-size: 10px;
            line-height: 20px;
            padding: 0px 10px;
        }

        .tab-boxes h4 {
            font-size: 12px
        }

        .tab-boxes p {
            font-size: 10px
        }

        .tab-boxes span {
            margin-top: 10px;
            font-size: 10px
        }

    .tab-button a {
        font-size: 8px
    }
}

.summary-table-th {
    color: #00589E !important;
    font-weight: 700 !important;
    font-style: normal;
    font-size: 18px !important;
    line-height: 20px !important;
    padding: 15px 0 10px !important;
    text-align: left;
}

.summary-table-th-50 {
    float: left;
    width: 50%
}

.summary-table-th-100 {
    float: left;
    width: 100%
}

.popup_blue-btn {
    padding: 18px 20px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

.popup_blue-btn-line {
    padding-top: 0px;
    padding-bottom: 0px;
    line-height: 21px;
    font-size: 16px !important;
    font-weight: 700 !important;
}
/* ==========================================================================
End Sunwing  New Style
========================================================================== */
/* start payment spnnier */
.loadingPayment {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background-color: rgba(256,256,256,0.7);
}

.loadingPasswordPopup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background-color: rgba(256,256,256,0.7);
}


.loadingPaymentIn {
    width: 600px;
    margin: 0px auto;
    margin-top: 215px;
    height: 232px;
    background-color: #fff;
    padding: 10px 12px 10px 10px;
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.35);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.35);
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.35);
}

.loadingPaymentBorder {
    width: 100%;
    height: 230px;
    text-align: center;
    border: 1px solid #ccc;
    position: relative;
}

.loadingPaymentImgDiv {
    float: left;
    width: 100%;
    align-content: center;
    margin-top: 35px;
}

.loadingPaymentImg {
    width: 50px;
}

.loadingPaymentH4 {
    color: #ff6000;
    font-weight: 700;
    margin-bottom: 5px;
    font-size: 24px;
    margin-top: 110px
}

.loadingPaymentP {
    color: #666
}

@media only screen and (min-width: 320px) and (max-width: 1024px) {
    .loadingPayment {
        width: 100%;
        box-sizing: border-box;
        margin-left: 10px;
        padding-right: 40px;
    }

    .loadingPaymentIn {
        width: 100%;
        margin: 0px auto;
        margin-top: 150px;
        height: 202px;
        padding: 10px 12px 10px 10px;
    }

    .loadingPaymentBorder {
        width: 100%;
        height: 200px;
    }

    .loadingPaymentImgDiv {
        float: left;
        width: 100%;
        align-content: center;
        margin-top: 30px;
        margin-bottom: 25px
    }

    .loadingPaymentImg {
        width: 40px;
    }

    .loadingPaymentH4 {
        font-weight: 600;
        font-size: 18px;
        margin-top: 25px
    }

    .loadingPaymentP {
        font-size: 12px;
        margin: 0px 25px;
    }

    .loadingNoMessage {
        width: 100%;
        box-sizing: border-box;
        margin-left: 10px;
        padding-right: 40px;
    }

    .loadingNoMessageIn {
        width: 100%;
        margin: 0px auto;
        margin-top: 150px;
        height: 100%;
        padding: 10px 12px 10px 10px;
    }

    .loadingNoMessageBorder {
        width: 100%;
        height: 100%;
    }
}
/* end payment spnnier */
.payment-table-left {
    width: 30%
}

.payment-table-right {
    width: 68%
}

.padding-right-15px {
    padding-right: 15px !important
}

.margin-right-15px {
    margin-right: 15px
}

.margin-bottom-15px {
    margin-bottom: 15px
}

.margin-top-5px {
    margin-top: 5px
}

.new-payment-label {
    font-size: 15px;
    color: #00589E
}

.new-payment-label-dummy {
    float: left;
    width: 100%;
    line-height: 30px;
}

.new-payment-btn {
    float: left;
    padding-right: 20px !important;
    padding-left: 20px !important;
}

.text-align-right {
    text-align: right;
}

.error-color {
    color: #B10000
}

.alert-text-color {
    color: #00589e
}

.form-payment-inline {
    display: block;
    float: left;
    width: 33%;
    height: 100px;
}

.form-payment-inline-width30 {
    display: block;
    float: left;
    width: 30%;
    height: 100px;
}

.form-payment-inline-width10 {
    display: block;
    float: left;
    width: 15%;
    height: 100px;
}

.form-payment-five-inline {
    display: block;
    float: left;
    width: 19%;
    height: 100px;
}

.form-payment-five-inline_mobile {
    display: block;
    float: left;
    width: 20%;
    height: 100px;
}

.form-payment-five-inline-width10 {
    display: block;
    float: left;
    width: 10%;
    height: 100px;
}

.form-payment-five-inline-width14 {
    display: block;
    float: left;
    width: 14%;
    height: 100px;
}

.success-alert-message {
    color: #046239
}

.success-alert-icon {
    top: 566px;
    left: 90px;
    width: 18px;
    height: 18px;
    background: #046239 0% 0% no-repeat padding-box;
    opacity: 1;
}

.fail-alert-crossmark {
    top: 566px;
    left: 88px;
    width: 18px;
    height: 18px;
    background: #B10000 0% 0% no-repeat padding-box;
    opacity: 1;
}

.new-fail-paymentconfirm {
    background: #FFF2F2 url(../images/icons/remove-red.png) no-repeat 10px 10px;
    /*border: 2px solid #007CC3;*/
    margin-top: 220px;
    padding: 0px 30px 15px 40px;
    position: relative;
    -webkit-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -moz-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

    .new-fail-paymentconfirm .closebutton {
        position: absolute;
        top: 10px;
        right: 10px;
    }

.form-group form-fourth {
    min-width: 100% !important;
}

.requiredfield-no-voucher-new {
    margin-top: 1px;
}

.requiredfield-no-voucher-dropdown {
    margin-top: -3px;
}

.new-success-paymentconfirm {
    background: #EBF2ED;
    /*border: 2px solid #007CC3;*/
    margin-top: 220px;
    padding: 0px 30px 15px 40px;
    position: relative;
    -webkit-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -moz-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.payment-accordian {
    background-color: #e6f2f9 !important;
    color: #333 !important;
    padding: 0px !important;
    background: url(../images/icons/angle-down-dark.png) no-repeat 99% center !important;
}

.payment-passengername {
    width: 40%;
    padding-left: 10px;
}

.span_green {
    color: green;
    font-weight: bold;
}

.col-lg-1 {
    width: 8.333333333333332%;
}

.col-lg-2 {
    width: 16.666666666666664%;
}

.col-lg-3 {
    width: 25%;
}

.col-lg-4 {
    width: 33.33333333333333%;
}

.col-lg-5 {
    width: 41.66666666666667%;
}

.col-lg-6 {
    width: 50%;
}

.col-lg-7 {
    width: 58.333333333333336%;
}

.col-lg-8 {
    width: 66.66666666666666%;
}

.col-lg-9 {
    width: 75%;
}

.col-lg-10 {
    width: 83.33333333333334%;
}

.col-lg-11 {
    width: 91.66666666666666%;
}

.col-lg-12 {
    width: 100%;
}

.text-align-left {
    text-align: left;
}

.line-space {
    line-height: 2;
}

.row {
    margin-right: -15px;
    margin-left: -15px;
}

    .row:before,
    .row:after {
        display: table;
        content: " ";
    }

    .row:after {
        clear: both;
    }

    .row:before,
    .row:after {
        display: table;
        content: " ";
    }

    .row:after {
        clear: both;
    }

.paragraph-payment-alert {
    vertical-align: middle;
    padding: 7px;
    margin-left: 0px;
}

.payment-fail {
    margin: 9px;
    height: 38px;
    clear: both;
}

.payment-fail-shopingcart {
    margin: 9px;
    clear: both;
}

.success-paymentconfirm-paymentpage {
    background: #EBF2ED;
    /*border: 2px solid #007CC3;*/
    position: relative;
    -webkit-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -moz-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    clear: both;
    min-height: 40px;
}

.fail-paymentconfirm-paymentpage {
    background: #FFF2F2 url(../images/icons/remove-red.png) no-repeat 10px 10px;
    /*border: 2px solid #007CC3;*/
    padding: 0px 30px 15px 40px;
    position: relative;
    -webkit-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -moz-box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    box-shadow: 0px 3px 3px 0px rgba(102,102,102,0.75);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.payment-voucherbtn {
    width: 49%;
    float: left;
}

.btn-new-style {
    float: left;
    /*min-width: 250px;*/
    min-width: fit-content;
}

.remove-crossmark {
    display: inline-block;
    height: 16px;
    width: 16px;
    background: url('../images/icons/remove-gray.png') no-repeat center right;
}

.formerror {
    z-index: 999999999999;
}

#main {
    display: flex;
}

#ssrdropdown {
    padding: 0 35px 0 15px
}

.loadingNoMessage {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    background-color: rgba(256,256,256,0.7);
}

.loadingNoMessageIn {
    width: 130px;
    margin: 0px auto;
    margin-top: 215px;
    height: 100%;
    padding: 10px 12px 10px 10px;
}

.loadingNoMessageBorder {
    width: 100%;
    height: 100%;
    text-align: center;
    position: relative;
}

.summary-table .sumtableprice-total.comp-seat {
    white-space: normal;
}


#infopanel .panel .open {
    border: none !important;
}

.WestJetBtn {
    padding-right: 25px !important;
    
}

.WestJetFAQBtn {
    padding-right: 105px !important;
    
}

.change-summary a {
    display: inline-block;
    height: 16px;
    width: 16px;
    background: url('../images/icons/remove-gray.png') no-repeat center right;
}

.grid-view-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

    .grid-view-table th,
    .grid-view-table td {
        border: 1px solid #ddd;
        padding: 8px;
        text-align: left;
    }

    .grid-view-table th {
        background-color: #f2f2f2;
        font-weight: bold;
    }

    .grid-view-table input {
        width: 100%;
        box-sizing: border-box;
    }

    .grid-view-table .dob-cell {
        white-space: nowrap;
    }

        .grid-view-table .dob-cell select {
            width: 32%;
            margin-right: 1%;
        }

        select.dob-select.dob-month {
            width: 45%;
        }

            .grid-view-table .dob-cell select:last-child {
                margin-right: 0;
            }

    .view-toggle-container {
        display: flex;
        justify-content: flex-end;
        margin: 20px 0;
        padding-right: 20px; /* Adjust this value as needed */
    }

    .view-toggle-icons {
        display: flex;
        gap: 10px; /* Space between icons */
        align-items: center;
    }

    /* Keep your existing icon styles */
    .grid-view-icon {
        display: inline-block;
        height: 35px;
        width: 35px;
        background: url(../images/icons/itineraries.svg) no-repeat center right;
    }

    .normal-view-icon {
        display: inline-block;
        height: 35px;
        width: 35px;
        background: url(../images/icons/squares.svg) no-repeat center right;
    }

    .upload-page-icon {
        display: inline-block;
        height: 35px;
        width: 35px;
        background: url(../images/icons/upload.svg) no-repeat center right;
    }

        /* Add hover effect and active state if desired */
        .grid-view-icon:hover,
        .normal-view-icon:hover,
        .upload-page-icon:hover {
            opacity: 0.8;
        }

    .grid-view-icon.active,
    .normal-view-icon.active {
        opacity: 1;
        /* Add any additional active state styling */
    }


.revert-changes-icon {
    display: inline-block;
    height: 16px;
    width: 16px;
    background: url(../images/icons/remove-gray.png) no-repeat center right;
}


@media only screen and (min-width: 768px) {
        #details.grid-view-active {
            width: 100%;
            margin-left: 0;
        }
}

.action-cell {
    min-width: 80px;
}

.action-buttons {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.action-button {
    display: inline-block;
    height: 24px;
    width: 24px;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

    .action-button:hover {
        opacity: 0.8;
    }

.refresh-icon {
    background: url(../images/icons/refresh--o.svg) no-repeat center center;
    background-size: 20px 20px;
}

.information-icon {
    background: url(../images/icons/information.svg) no-repeat center center;
    background-size: 20px 20px;
}

.th-with-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.apply-all-link {
    font-size: 12px;
    color: #666666;
    text-decoration: none;
    white-space: nowrap;
}

    .apply-all-link:hover {
        text-decoration: underline;
        color: #0056b3;
    }


.dob-cell {
    min-width: 280px; /* Minimum width to ensure DOB fits */
}

.dob-select-container {
    display: flex;
    gap: 5px;
    width: 100%;
}

.dob-select {
    padding: 4px 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    height: 32px;
}

.dob-day {
    width: 70px;
}

.dob-month {
    width: 100px;
}

.dob-year {
    width: 80px;
}

/* Error state */
.dob-select.error {
    border-color: #dc3545;
}
.title-cell {
    min-width: 120px;
}

.title-select-container {
    width: 100%;
}

.title-select {
    width: 100%;
    padding: 4px 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    height: 32px;
}

    .title-select.error {
        border-color: #dc3545;
    }

/* Match the height with other inputs */
.title-select, .dob-select {
    height: 32px;
}


@media screen and (max-width: 1200px) {
    .dob-select-container {
        flex-direction: column;
        gap: 2px;
    }

    .dob-select {
        width: 100%;
    }

    .view-toggle-icons {
        display: none !important;
    }

    .grid-view {
        width: 100%;
        overflow-x: auto;
    }

    .grid-view-table {
        min-width: 100%;
        max-width: 100%;
    }
}

/* Action buttons styling */
.action-cell {
    min-width: 80px;
}

.action-buttons {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.action-button {
    display: inline-block;
    height: 24px;
    width: 24px;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

    .action-button:hover {
        opacity: 0.8;
    }

.refresh-icon {
    background: url(../images/icons/refresh--o.svg) no-repeat center center;
    background-size: 20px 20px;
}

.information-icon {
    background: url(../images/icons/information.svg) no-repeat center center;
    background-size: 20px 20px;
}

/* Slide-out panel styling */
.slide-out-panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    width: 400px;
    height: 100%;
    background-color: #fff;
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.1);
    transform: translateX(100%);
    transition: transform 0.3s ease-in-out;
    visibility: hidden;
    overflow-y: auto;
}

    .slide-out-panel.open {
        transform: translateX(0);
        visibility: visible;
    }

.slide-out-container {
    height: 100%;
    overflow-y: auto;
}

.slide-out-header {
    position: sticky;
    top: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    border-bottom: 1px solid #eee;
    z-index: 1;
}

.slide-out-title {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
}

.slide-out-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    text-decoration: none;
}

    .slide-out-close:hover {
        opacity: 0.8;
    }

.close-icon {
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url('../images/icons/close-n.svg') no-repeat center center;
    background-size: 20px 20px;
}

.passenger-header {
    flex: 1;
}

.slide-out-title {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #333;
}

.passenger-subheading {
    margin: 4px 0 0 0;
    font-size: 14px;
    color: #666;
    font-style: italic;
}

.slide-out-header {
    position: sticky;
    top: 0;
    background: #fff;
    display: flex;
    align-items: flex-start; /* Changed from center to allow for two lines of text */
    justify-content: space-between;
    padding: 20px;
    border-bottom: 1px solid #eee;
    z-index: 1;
}

.MBPIcon-hotel-small {
    float: left;
    width: 20px;
    margin: 5px 12px 0px 12px;
}